From ab6d079f0265f903630aac9287e93d9e7cfb6fcf Mon Sep 17 00:00:00 2001 From: Lior Goldberg Date: Mon, 12 Feb 2024 17:43:22 +0200 Subject: [PATCH] Cairo v0.13.1a0 (pre). --- LICENSE.txt | 235 +- README.md | 4 +- WORKSPACE | 2 +- bazel_utils/solidity.bzl | 5 +- src/demo/amm_demo/demo.py | 2 +- src/services/config/BUILD | 15 + src/services/config/general_config.py | 8 + src/services/everest/definitions/BUILD | 2 +- src/services/everest/definitions/fields.py | 2 + .../everest/definitions/general_config.py | 4 +- src/services/external_api/BUILD | 1 - src/services/external_api/client.py | 14 +- src/starkware/cairo/bootloaders/BUILD | 5 +- .../bootloaders/bootloader/bootloader.cairo | 18 +- .../cairo/bootloaders/fact_topology.py | 9 + .../cairo/bootloaders/generate_fact.py | 2 +- .../cairo/bootloaders/hash_program.py | 14 +- .../bootloaders/program_hash_test_utils.py | 2 +- .../simple_bootloader/execute_task.cairo | 7 +- .../run_simple_bootloader.cairo | 24 +- .../simple_bootloader/simple_bootloader.cairo | 7 +- src/starkware/cairo/builtin_selection/BUILD | 11 +- .../validate_builtins_test.py | 1 + .../layouts/all_cairo/cairo_verifier.cairo | 9 +- .../layouts/all_cairo/program_hash.json | 2 +- src/starkware/cairo/common/BUILD | 4 +- .../common/builtin_poseidon/poseidon.cairo | 43 +- .../cairo/common/cairo_function_runner.py | 10 +- .../cairo/common/cairo_secp/bigint.cairo | 23 +- src/starkware/cairo/common/hash_state.py | 8 + src/starkware/cairo/common/poseidon_utils.py | 64 +- src/starkware/cairo/lang/BUILD | 1 + src/starkware/cairo/lang/VERSION | 2 +- src/starkware/cairo/lang/builtins/BUILD | 1 + .../cairo/lang/builtins/all_builtins.py | 5 +- .../builtins/builtin_runner_test_utils.py | 5 +- .../cairo/lang/builtins/modulo/BUILD | 5 - .../cairo/lang/builtins/modulo/__init__.py | 0 .../lang/builtins/modulo/instance_def.py | 34 - .../range_check/range_check_builtin_runner.py | 11 +- .../cairo/lang/compiler/instruction.py | 4 +- .../cairo/lang/compiler/instruction_test.py | 2 +- .../preprocessor/auxiliary_info_collector.py | 10 +- .../compiler/preprocessor/preprocessor.py | 23 +- .../cairo/lang/ide/vscode-cairo/package.json | 2 +- src/starkware/cairo/lang/instances.py | 54 +- .../cairo/lang/package_test/run_test.sh | 3 +- src/starkware/cairo/lang/setup.py | 8 +- src/starkware/cairo/lang/vm/BUILD | 12 +- src/starkware/cairo/lang/vm/builtin_runner.py | 8 +- src/starkware/cairo/lang/vm/cairo_pie.py | 63 +- src/starkware/cairo/lang/vm/cairo_pie_test.py | 66 +- src/starkware/cairo/lang/vm/cairo_run.py | 5 +- src/starkware/cairo/lang/vm/cairo_runner.py | 19 +- src/starkware/cairo/lang/vm/memory_dict.py | 11 +- .../cairo/lang/vm/memory_dict_test.py | 11 + src/starkware/cairo/lang/vm/vm_core.py | 5 +- src/starkware/cairo/lang/vm/vm_test.py | 20 +- src/starkware/cairo/sharp/BUILD | 6 +- src/starkware/cairo/sharp/sharp_client.py | 2 +- .../cairo/sharp/sharp_client_test.py | 2 +- src/starkware/cairo/stark_verifier/air/BUILD | 29 + .../air/dynamic_layout_proof.json | 2230 +-- .../stark_verifier/air/example_expected.json | 15 + .../stark_verifier/air/example_proof.json | 7736 +++++---- .../cairo/stark_verifier/air/layouts/BUILD | 1 + .../air/layouts/all_cairo/autogenerated.cairo | 13200 ++++++++-------- .../air/layouts/all_cairo/composition.cairo | 1 + .../air/layouts/all_cairo/global_values.cairo | 1 + .../air/layouts/all_cairo/public_verify.cairo | 16 +- .../air/layouts/dex/autogenerated.cairo | 1 + .../air/layouts/dynamic/autogenerated.cairo | 1 + .../air/layouts/recursive/autogenerated.cairo | 1 + .../air/layouts/recursive_with_poseidon/BUILD | 23 + .../autogenerated.cairo | 2076 +++ .../recursive_with_poseidon/composition.cairo | 156 + .../global_values.cairo | 71 + .../periodic_columns.cairo | 1736 ++ .../public_verify.cairo | 137 + .../recursive_with_poseidon/verify.cairo | 81 + .../air/layouts/small/autogenerated.cairo | 1 + .../air/layouts/starknet/autogenerated.cairo | 1 + .../starknet_with_keccak/autogenerated.cairo | 1 + .../cairo/stark_verifier/air/parser.py | 6 +- .../stark_verifier/air/public_input.cairo | 20 +- .../stark_verifier/air/public_input_test.py | 158 + .../cairo/stark_verifier/air/traces.cairo | 4 +- src/starkware/cairo/stark_verifier/core/BUILD | 8 + .../stark_verifier/core/air_interface.cairo | 7 +- .../cairo/stark_verifier/core/channel.cairo | 178 +- .../stark_verifier/core/channel_test.cairo | 35 +- .../cairo/stark_verifier/core/fri/fri.cairo | 10 +- .../stark_verifier/core/proof_of_work.cairo | 12 +- .../cairo/stark_verifier/core/queries.cairo | 41 +- .../cairo/stark_verifier/core/stark.cairo | 5 +- .../core/supported_proof_params.py | 24 + .../core/table_commitment.cairo | 11 +- .../core/vector_commitment.cairo | 16 +- src/starkware/python/BUILD | 1 + src/starkware/python/math_utils.py | 45 +- src/starkware/python/math_utils_test.py | 47 + .../components/OnchainDataFactTreeEncoder.sol | 9 +- src/starkware/starknet/business_logic/BUILD | 1 + .../starknet/business_logic/execution/BUILD | 26 +- .../execution/deprecated_objects.py | 442 + .../execution/execute_entry_point.py | 12 +- .../execution/execute_entry_point_base.py | 2 +- .../business_logic/execution/objects.py | 540 +- .../execution/os_resources.json | 237 - .../business_logic/execution/os_usage.py | 44 +- .../business_logic/fact_state/state.py | 34 +- .../business_logic/state/state_api.py | 54 +- .../business_logic/state/state_api_objects.py | 108 +- .../starknet/business_logic/transaction/BUILD | 8 +- .../transaction/deprecated_objects.py | 81 +- .../business_logic/transaction/fee.py | 2 +- .../internal_account_transaction.py | 30 +- .../business_logic/transaction/objects.py | 35 +- .../transaction/state_objects.py | 12 +- .../starknet/business_logic/utils.py | 2 +- src/starkware/starknet/cli/BUILD | 24 +- src/starkware/starknet/compiler/v1/compile.py | 26 +- .../compiler/v1/mainnet_libfuncs.json | 8 + .../compiler/v1/testnet_libfuncs.json | 8 + src/starkware/starknet/core/aggregator/BUILD | 19 + .../core/aggregator/aggregator_test.py | 171 + .../starknet/core/aggregator/output_parser.py | 145 + src/starkware/starknet/core/os/BUILD | 155 +- .../starknet/core/os/block_context.cairo | 21 +- .../starknet/core/os/block_hash/BUILD | 2 +- .../starknet/core/os/block_hash/block_hash.py | 126 +- .../starknet/core/os/constants.cairo | 42 +- .../starknet/core/os/contract_class/BUILD | 10 + .../os/contract_class/compiled_class.cairo | 173 +- .../os/contract_class/compiled_class_hash.py | 110 +- .../compiled_class_hash_objects.py | 99 + .../compiled_class_hash_test.py | 85 +- .../compiled_class_hash_utils.py | 10 +- .../starknet/core/os/data_availability/BUILD | 60 + .../core/os/data_availability/bls_field.cairo | 195 + .../os/data_availability/bls_field_test.py | 186 + .../core/os/data_availability/bls_utils.py | 36 + .../os/data_availability/commitment.cairo | 85 + .../core/os/deprecated_syscall_handler.py | 69 +- .../deprecated_execute_syscalls.cairo | 36 +- .../os/execution/execute_entry_point.cairo | 2 +- .../core/os/execution/execute_syscalls.cairo | 41 +- .../os/execution/execute_transactions.cairo | 31 +- src/starkware/starknet/core/os/os.cairo | 52 +- src/starkware/starknet/core/os/os_input.py | 3 +- src/starkware/starknet/core/os/os_logger.py | 364 + src/starkware/starknet/core/os/os_program.py | 2 +- src/starkware/starknet/core/os/os_utils.py | 30 +- src/starkware/starknet/core/os/output.cairo | 149 +- .../starknet/core/os/program_hash.json | 2 +- src/starkware/starknet/core/os/state.cairo | 530 - src/starkware/starknet/core/os/state/BUILD | 15 + .../starknet/core/os/state/commitment.cairo | 307 + .../starknet/core/os/state/output.cairo | 186 + .../starknet/core/os/state/squash.cairo | 102 + .../starknet/core/os/state/state.cairo | 100 + .../starknet/core/os/syscall_handler.py | 107 +- .../starknet/core/os/syscall_utils.py | 7 + .../transaction_hash/transaction_hash.cairo | 1 - .../starknet/core/test_contract/BUILD | 11 +- .../starknet/core/test_contract/test_utils.py | 5 +- src/starkware/starknet/definitions/BUILD | 9 +- .../starknet/definitions/constants.py | 59 +- .../starknet/definitions/error_codes.py | 9 +- src/starkware/starknet/definitions/fields.py | 131 +- .../starknet/definitions/general_config.py | 153 +- .../starknet/definitions/general_config.yml | 26 +- .../starknet/definitions/l1_da_mode.py | 10 + src/starkware/starknet/definitions/types.py | 9 + .../definitions/versioned_constants.json | 471 + src/starkware/starknet/scripts/BUILD | 1 + .../scripts/starknet-compiled-class-hash | 10 + .../services/api/contract_class/BUILD | 4 +- .../api/contract_class/contract_class.py | 33 +- .../contract_class/contract_class_utils.py | 4 + .../api/feeder_gateway/response_objects.py | 101 +- .../starknet/services/api/gateway/BUILD | 1 + .../services/api/gateway/transaction_utils.py | 8 +- src/starkware/starknet/services/utils/BUILD | 1 + .../services/utils/sequencer_api_utils.py | 9 +- src/starkware/starknet/solidity/BUILD | 1 + .../starknet/solidity/BlobHashGetter.sol | 65 + src/starkware/starknet/solidity/Output.sol | 10 +- src/starkware/starknet/solidity/Starknet.sol | 187 +- src/starkware/starknet/testing/state.py | 5 +- src/starkware/starknet/wallets/signer.py | 33 +- .../starkware_utils/field_validators.py | 5 + .../marshmallow_dataclass_fields.py | 9 +- .../starkware_utils/validated_dataclass.py | 12 + src/starkware/storage/dict_storage.py | 8 + src/third_party/pip/BUILD | 7 +- 196 files changed, 21765 insertions(+), 14353 deletions(-) create mode 100644 src/services/config/BUILD create mode 100644 src/services/config/general_config.py delete mode 100644 src/starkware/cairo/lang/builtins/modulo/BUILD delete mode 100644 src/starkware/cairo/lang/builtins/modulo/__init__.py delete mode 100644 src/starkware/cairo/lang/builtins/modulo/instance_def.py create mode 100644 src/starkware/cairo/stark_verifier/air/example_expected.json create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/BUILD create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/autogenerated.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/composition.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/global_values.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/periodic_columns.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/public_verify.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/verify.cairo create mode 100644 src/starkware/cairo/stark_verifier/air/public_input_test.py create mode 100644 src/starkware/cairo/stark_verifier/core/supported_proof_params.py create mode 100644 src/starkware/starknet/business_logic/execution/deprecated_objects.py delete mode 100644 src/starkware/starknet/business_logic/execution/os_resources.json create mode 100644 src/starkware/starknet/core/aggregator/BUILD create mode 100644 src/starkware/starknet/core/aggregator/aggregator_test.py create mode 100644 src/starkware/starknet/core/aggregator/output_parser.py create mode 100644 src/starkware/starknet/core/os/contract_class/compiled_class_hash_objects.py create mode 100644 src/starkware/starknet/core/os/data_availability/BUILD create mode 100644 src/starkware/starknet/core/os/data_availability/bls_field.cairo create mode 100644 src/starkware/starknet/core/os/data_availability/bls_field_test.py create mode 100644 src/starkware/starknet/core/os/data_availability/bls_utils.py create mode 100644 src/starkware/starknet/core/os/data_availability/commitment.cairo create mode 100644 src/starkware/starknet/core/os/os_logger.py delete mode 100644 src/starkware/starknet/core/os/state.cairo create mode 100644 src/starkware/starknet/core/os/state/BUILD create mode 100644 src/starkware/starknet/core/os/state/commitment.cairo create mode 100644 src/starkware/starknet/core/os/state/output.cairo create mode 100644 src/starkware/starknet/core/os/state/squash.cairo create mode 100644 src/starkware/starknet/core/os/state/state.cairo create mode 100644 src/starkware/starknet/definitions/l1_da_mode.py create mode 100644 src/starkware/starknet/definitions/types.py create mode 100644 src/starkware/starknet/definitions/versioned_constants.json create mode 100755 src/starkware/starknet/scripts/starknet-compiled-class-hash create mode 100644 src/starkware/starknet/solidity/BlobHashGetter.sol diff --git a/LICENSE.txt b/LICENSE.txt index b4daf1ea..a3ef74e0 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,34 +1,201 @@ -Cairo Toolchain License (Source Available) - -Version 1.1 dated January 18, 2022 - -This license contains the terms and conditions under which StarkWare -Industries, Ltd ("StarkWare") makes available its Cairo Toolchain -("Toolchain"). Your use of the Toolchain is subject to these terms and -conditions. - -StarkWare grants you ("Licensee") a license to use the Toolchain, only -for the purpose of developing and compiling Cairo programs. Licensee's other -use of the Toolchain is limited to non-commercial use, which means academic, -scientific, or research use, or evaluating the Cairo language and Toolchain. - -StarkWare grants Licensee a license to modify the Toolchain, only as -necessary to fix errors. Licensee may, but is not obligated to, provide -any of Licensee's modifications to StarkWare. This license grants Licensee no -right to distribute the Toolchain or make copies of the Toolchain available -to others. - -These terms do not allow Licensee to sublicense or transfer any of Licensee's -rights to anyone else. These terms do not imply any other licenses not -expressly granted in this license. - -If Licensee violates any of these terms, or uses the Toolchain in a way not -authorized under this license, the license granted to Licensee ends immediately. -If Licensee makes, or authorizes any other person to make, any written claim -that the Toolchain infringes or contributes to infringement of any patent, all -rights granted to Licensee under this license end immediately. - -As far as the law allows, the Toolchain is provided AS IS, without any warranty -or condition, and StarkWare will not be liable to Licensee for any damages -arising out of these terms or the use or nature of the Toolchain, under any kind -of legal claim. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2024 StarkWare Industries Ltd. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md index 5cc200c6..c572f7fd 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ We recommend starting from [Setting up the environment](https://cairo-lang.org/d # Installation instructions You should be able to download the python package zip file directly from -[github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.13.0) +[github](https://github.com/starkware-libs/cairo-lang/releases/tag/v0.13.1) and install it using ``pip``. See [Setting up the environment](https://cairo-lang.org/docs/quickstart.html). @@ -54,7 +54,7 @@ Once the docker image is built, you can fetch the python package zip file using: ```bash > container_id=$(docker create cairo) -> docker cp ${container_id}:/app/cairo-lang-0.13.0.zip . +> docker cp ${container_id}:/app/cairo-lang-0.13.1.zip . > docker rm -v ${container_id} ``` diff --git a/WORKSPACE b/WORKSPACE index fe297dc6..b50429b2 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -52,7 +52,7 @@ http_archive( "//src/starkware/starknet/compiler/v1:BUILD." + CAIRO_COMPILER_ARCHIVE, ), strip_prefix = "cairo", - url = "https://github.com/starkware-libs/cairo/releases/download/v2.4.0/release-x86_64-unknown-linux-musl.tar.gz", + url = "https://github.com/starkware-libs/cairo/releases/download/v2.6.0-rc.0/release-x86_64-unknown-linux-musl.tar.gz", ) http_archive( diff --git a/bazel_utils/solidity.bzl b/bazel_utils/solidity.bzl index b4f2f71f..6613dfb4 100644 --- a/bazel_utils/solidity.bzl +++ b/bazel_utils/solidity.bzl @@ -48,13 +48,15 @@ def _sol_contract_impl(ctx): inputs = srcs_list + ctx.files.solc_exe, outputs = [combined_json], ) - else: # solc-0.8.16 + else: # solc-0.8.x ctx.actions.run( executable = ctx.executable.solc_exe, arguments = [ "--optimize", "--optimize-runs", str(ctx.attr.optimize_runs), + "--evm-version", + ctx.attr.evm_version, "--combined-json", "abi,bin", "--base-path", @@ -97,6 +99,7 @@ sol_contract = rule( "deps": attr.label_list(), "contracts": attr.string_list(mandatory = True, allow_empty = False), "optimize_runs": attr.int(default = 200), + "evm_version": attr.string(default = "london"), "include_path": attr.string(default = "src"), "solc_exe": attr.label( default = Label("//bazel_utils:solc-0.6.12"), diff --git a/src/demo/amm_demo/demo.py b/src/demo/amm_demo/demo.py index a5d4b973..3f2b8bba 100644 --- a/src/demo/amm_demo/demo.py +++ b/src/demo/amm_demo/demo.py @@ -65,7 +65,7 @@ def deploy_contract(batch_prover: BatchProver, w3: Web3, operator: BaseAccount) account_tree_root = get_merkle_root(batch_prover.accounts) amount_token_a = batch_prover.balance.a amount_token_b = batch_prover.balance.b - program_hash = compute_program_hash_chain(batch_prover.program) + program_hash = compute_program_hash_chain(program=batch_prover.program, use_pedersen=False) cairo_verifier = batch_prover.sharp_client.contract_client.contract.address # Compile the smart contract. diff --git a/src/services/config/BUILD b/src/services/config/BUILD new file mode 100644 index 00000000..4e3c9afc --- /dev/null +++ b/src/services/config/BUILD @@ -0,0 +1,15 @@ +load("//bazel_utils/python:defs.bzl", "requirement") + +package(default_visibility = ["//visibility:public"]) + +py_library( + name = "base_general_config_lib", + srcs = [ + "general_config.py", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/starkware_utils:starkware_config_utils_lib", + requirement("marshmallow_dataclass"), + ], +) diff --git a/src/services/config/general_config.py b/src/services/config/general_config.py new file mode 100644 index 00000000..a2367337 --- /dev/null +++ b/src/services/config/general_config.py @@ -0,0 +1,8 @@ +import marshmallow_dataclass + +from starkware.starkware_utils.config_base import Config + + +@marshmallow_dataclass.dataclass(frozen=True) +class GeneralConfigBase(Config): + pass diff --git a/src/services/everest/definitions/BUILD b/src/services/everest/definitions/BUILD index 38378187..916a1208 100644 --- a/src/services/everest/definitions/BUILD +++ b/src/services/everest/definitions/BUILD @@ -28,7 +28,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ - "//src/starkware/starkware_utils:starkware_config_utils_lib", + "//src/services/config:base_general_config_lib", requirement("marshmallow_dataclass"), ], ) diff --git a/src/services/everest/definitions/fields.py b/src/services/everest/definitions/fields.py index dede8fae..794b2646 100644 --- a/src/services/everest/definitions/fields.py +++ b/src/services/everest/definitions/fields.py @@ -82,6 +82,8 @@ def convert_valid_to_checksum(self, value: str) -> ChecksumAddress: formatter=hex, ) +felt_as_hex_list_metadata = dict(marshmallow_field=mfields.List(FeltField.get_marshmallow_field())) + def get_bounded_int_range_validator( lower_bound: int = 0, upper_bound: int = FIELD_PRIME diff --git a/src/services/everest/definitions/general_config.py b/src/services/everest/definitions/general_config.py index b396ba0b..f64ba7f7 100644 --- a/src/services/everest/definitions/general_config.py +++ b/src/services/everest/definitions/general_config.py @@ -1,8 +1,8 @@ import marshmallow_dataclass -from starkware.starkware_utils.config_base import Config +from services.config.general_config import GeneralConfigBase @marshmallow_dataclass.dataclass(frozen=True) -class EverestGeneralConfig(Config): +class EverestGeneralConfig(GeneralConfigBase): pass diff --git a/src/services/external_api/BUILD b/src/services/external_api/BUILD index a6412fe6..cadd92d5 100644 --- a/src/services/external_api/BUILD +++ b/src/services/external_api/BUILD @@ -13,7 +13,6 @@ py_library( "utils.py", ], visibility = ["//visibility:public"], - deps = [], ) py_library( diff --git a/src/services/external_api/client.py b/src/services/external_api/client.py index f070f163..25a1c111 100644 --- a/src/services/external_api/client.py +++ b/src/services/external_api/client.py @@ -210,27 +210,23 @@ async def _send_request( except BadRequest as exception: error_message = f"Got {type(exception).__name__} while trying to access {url}." - if limited_retries and ( - n_retries_left == 0 - or exception.status_code not in self.retry_config.retry_codes + if (limited_retries and n_retries_left == 0) or ( + exception.status_code not in self.retry_config.retry_codes ): full_error_message = ( f"{error_message} " f"Status code: {exception.status_code}; text: {exception.text}." ) if self.log_errors: - logger.error(full_error_message, exc_info=True) + logger.error(msg=full_error_message, exc_info=True) raise - - logger.debug(f"{error_message}, retrying...") + logger.debug(msg=f"{error_message}, retrying...") except Exception as exception: error_message = f"Got {type(exception).__name__} while trying to access {url}." - if limited_retries and n_retries_left == 0: if self.log_errors: - logger.error(error_message, exc_info=True) + logger.error(msg=error_message, exc_info=True) raise - logger.debug(f"{error_message}, retrying...") await asyncio.sleep(5) diff --git a/src/starkware/cairo/bootloaders/BUILD b/src/starkware/cairo/bootloaders/BUILD index a7ddb0cd..613910e2 100644 --- a/src/starkware/cairo/bootloaders/BUILD +++ b/src/starkware/cairo/bootloaders/BUILD @@ -58,12 +58,11 @@ py_library( ], visibility = ["//visibility:public"], deps = [ - "cairo_bootloader_fact_topology_lib", - "cairo_hash_program_lib", + ":cairo_bootloader_fact_topology_lib", + ":cairo_hash_program_lib", "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", "//src/starkware/python:starkware_python_utils_lib", requirement("eth_hash"), - requirement("pycryptodome"), ], ) diff --git a/src/starkware/cairo/bootloaders/bootloader/bootloader.cairo b/src/starkware/cairo/bootloaders/bootloader/bootloader.cairo index 608f0e2e..cb9c781e 100644 --- a/src/starkware/cairo/bootloaders/bootloader/bootloader.cairo +++ b/src/starkware/cairo/bootloaders/bootloader/bootloader.cairo @@ -1,10 +1,11 @@ -%builtins output pedersen range_check ecdsa bitwise ec_op keccak poseidon +%builtins output pedersen range_check ecdsa bitwise ec_op keccak poseidon range_check96 from starkware.cairo.bootloaders.simple_bootloader.run_simple_bootloader import ( run_simple_bootloader, ) from starkware.cairo.cairo_verifier.objects import CairoVerifierOutput -from starkware.cairo.common.cairo_builtins import HashBuiltin +from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash_many +from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin from starkware.cairo.common.find_element import find_element from starkware.cairo.common.hash_state import hash_felts from starkware.cairo.common.memcpy import memcpy @@ -34,7 +35,8 @@ func main{ bitwise_ptr, ec_op_ptr, keccak_ptr, - poseidon_ptr, + poseidon_ptr: PoseidonBuiltin*, + range_check96_ptr, }() { ap += SIZEOF_LOCALS; @@ -63,7 +65,8 @@ func main{ local bitwise_ptr = bitwise_ptr; local ec_op_ptr = ec_op_ptr; local keccak_ptr = keccak_ptr; - local poseidon_ptr = poseidon_ptr; + local poseidon_ptr: PoseidonBuiltin* = poseidon_ptr; + local range_check96_ptr = range_check96_ptr; local simple_bootloader_output_end: felt* = simple_bootloader_output_ptr; %{ @@ -165,6 +168,7 @@ func main{ func parse_tasks{ output_ptr: felt*, pedersen_ptr: HashBuiltin*, + poseidon_ptr: PoseidonBuiltin*, range_check_ptr, n_total_tasks: felt, subtasks_output: felt*, @@ -255,6 +259,7 @@ func parse_task_header{task_output: felt*}() -> (task_header: TaskOutputHeader*) func unpack_composite_packed_task{ output_ptr: felt*, pedersen_ptr: HashBuiltin*, + poseidon_ptr: PoseidonBuiltin*, range_check_ptr, n_total_tasks: felt, task_output: felt*, @@ -271,8 +276,8 @@ func unpack_composite_packed_task{ %} // Compute the hash of nested_subtasks_output. - let (subtasks_output_hash) = hash_felts{hash_ptr=pedersen_ptr}( - data=nested_subtasks_output, length=nested_subtasks_output_len + let (subtasks_output_hash: felt) = poseidon_hash_many( + n=nested_subtasks_output_len, elements=nested_subtasks_output ); // Verify task output header. @@ -323,6 +328,7 @@ func unpack_composite_packed_task{ func unpack_plain_packed_task{ output_ptr: felt*, pedersen_ptr: HashBuiltin*, + poseidon_ptr: PoseidonBuiltin*, range_check_ptr, n_total_tasks: felt, task_output: felt*, diff --git a/src/starkware/cairo/bootloaders/fact_topology.py b/src/starkware/cairo/bootloaders/fact_topology.py index c3e4c37d..e6344b14 100644 --- a/src/starkware/cairo/bootloaders/fact_topology.py +++ b/src/starkware/cairo/bootloaders/fact_topology.py @@ -6,6 +6,7 @@ import marshmallow_dataclass GPS_FACT_TOPOLOGY = "gps_fact_topology" +MAX_PAGE_SIZE = 3800 @dataclasses.dataclass(frozen=True) @@ -14,6 +15,14 @@ class FactTopology: # List of page sizes, in words. page_sizes: List[int] + @classmethod + def trivial(cls, page0_size: int) -> "FactTopology": + """ + Creates a fact topology with a single page. + """ + assert page0_size <= MAX_PAGE_SIZE, "Page size exceeded the maximum." + return cls(tree_structure=[1, 0], page_sizes=[page0_size]) + @marshmallow_dataclass.dataclass(frozen=True) class FactTopologiesFile: diff --git a/src/starkware/cairo/bootloaders/generate_fact.py b/src/starkware/cairo/bootloaders/generate_fact.py index 66c8b15d..0428b268 100644 --- a/src/starkware/cairo/bootloaders/generate_fact.py +++ b/src/starkware/cairo/bootloaders/generate_fact.py @@ -45,4 +45,4 @@ def get_cairo_pie_fact_info(cairo_pie: CairoPie, program_hash: Optional[int] = N def get_program_hash(cairo_pie: CairoPie) -> int: - return compute_program_hash_chain(cairo_pie.metadata.program) + return compute_program_hash_chain(program=cairo_pie.metadata.program, use_poseidon=False) diff --git a/src/starkware/cairo/bootloaders/hash_program.py b/src/starkware/cairo/bootloaders/hash_program.py index 6f6f0df7..de595195 100644 --- a/src/starkware/cairo/bootloaders/hash_program.py +++ b/src/starkware/cairo/bootloaders/hash_program.py @@ -4,11 +4,11 @@ from starkware.cairo.common.hash_chain import compute_hash_chain from starkware.cairo.lang.compiler.program import Program, ProgramBase from starkware.cairo.lang.version import __version__ -from starkware.cairo.lang.vm.crypto import get_crypto_lib_context_manager +from starkware.cairo.lang.vm.crypto import get_crypto_lib_context_manager, poseidon_hash_many from starkware.python.utils import from_bytes -def compute_program_hash_chain(program: ProgramBase, bootloader_version=0): +def compute_program_hash_chain(program: ProgramBase, use_poseidon: bool, bootloader_version=0): """ Computes a hash chain over a program, including the length of the data chain. """ @@ -17,6 +17,8 @@ def compute_program_hash_chain(program: ProgramBase, bootloader_version=0): program_header = [bootloader_version, program.main, len(program.builtins)] + builtin_list data_chain = program_header + program.data + if use_poseidon: + return poseidon_hash_many(data_chain) return compute_hash_chain([len(data_chain)] + data_chain) @@ -36,11 +38,17 @@ def main(): choices=["Debug", "Release", "RelWithDebInfo"], help="Build flavor", ) + parser.add_argument( + "--use_poseidon", + type=bool, + default=False, + help="Use Poseidon hash.", + ) args = parser.parse_args() with get_crypto_lib_context_manager(args.flavor): program = Program.Schema().load(json.load(args.program)) - print(hex(compute_program_hash_chain(program))) + print(hex(compute_program_hash_chain(program=program, use_poseidon=args.use_poseidon))) if __name__ == "__main__": diff --git a/src/starkware/cairo/bootloaders/program_hash_test_utils.py b/src/starkware/cairo/bootloaders/program_hash_test_utils.py index 80e3de9b..1b29a161 100644 --- a/src/starkware/cairo/bootloaders/program_hash_test_utils.py +++ b/src/starkware/cairo/bootloaders/program_hash_test_utils.py @@ -6,7 +6,7 @@ def run_generate_hash_test(fix: bool, program_path: str, hash_path: str, command: str): compiled_program = Program.Schema().load(json.load(open(program_path))) - program_hash = hex(compute_program_hash_chain(program=compiled_program)) + program_hash = hex(compute_program_hash_chain(program=compiled_program, use_poseidon=False)) program_hash_key = "program_hash" if fix: diff --git a/src/starkware/cairo/bootloaders/simple_bootloader/execute_task.cairo b/src/starkware/cairo/bootloaders/simple_bootloader/execute_task.cairo index b4c815ba..7a5724d6 100644 --- a/src/starkware/cairo/bootloaders/simple_bootloader/execute_task.cairo +++ b/src/starkware/cairo/bootloaders/simple_bootloader/execute_task.cairo @@ -33,6 +33,7 @@ struct BuiltinData { ec_op: felt, keccak: felt, poseidon: felt, + range_check96: felt, } // Computes the hash of a program. @@ -107,8 +108,9 @@ func execute_task{builtin_ptrs: BuiltinData*, self_range_check_ptr}( # Validate hash. from starkware.cairo.bootloaders.hash_program import compute_program_hash_chain - assert memory[ids.output_ptr + 1] == compute_program_hash_chain(task.get_program()), \ - 'Computed hash does not match input.' + assert memory[ids.output_ptr + 1] == compute_program_hash_chain( + program=task.get_program(), + use_poseidon=bool(ids.use_poseidon)), 'Computed hash does not match input.' %} // Set the program entry point, so the bootloader can later run the program. @@ -134,6 +136,7 @@ func execute_task{builtin_ptrs: BuiltinData*, self_range_check_ptr}( ec_op=input_builtin_ptrs.ec_op, keccak=input_builtin_ptrs.keccak, poseidon=cast(poseidon_ptr, felt), + range_check96=input_builtin_ptrs.range_check96, ); // Call select_input_builtins to get the relevant input builtin pointers for the task. diff --git a/src/starkware/cairo/bootloaders/simple_bootloader/run_simple_bootloader.cairo b/src/starkware/cairo/bootloaders/simple_bootloader/run_simple_bootloader.cairo index c6084e8c..cde33e2e 100644 --- a/src/starkware/cairo/bootloaders/simple_bootloader/run_simple_bootloader.cairo +++ b/src/starkware/cairo/bootloaders/simple_bootloader/run_simple_bootloader.cairo @@ -1,5 +1,5 @@ from starkware.cairo.bootloaders.simple_bootloader.execute_task import BuiltinData, execute_task -from starkware.cairo.common.cairo_builtins import HashBuiltin +from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin from starkware.cairo.common.registers import get_fp_and_pc // Loads the programs and executes them. @@ -18,7 +18,8 @@ func run_simple_bootloader{ bitwise_ptr, ec_op_ptr, keccak_ptr, - poseidon_ptr, + poseidon_ptr: PoseidonBuiltin*, + range_check96_ptr, }() { alloc_locals; local task_range_check_ptr; @@ -48,7 +49,8 @@ func run_simple_bootloader{ bitwise=bitwise_ptr, ec_op=ec_op_ptr, keccak=keccak_ptr, - poseidon=poseidon_ptr, + poseidon=cast(poseidon_ptr, felt), + range_check96=range_check96_ptr, ); // A struct containing the encoding of each builtin. @@ -61,10 +63,19 @@ func run_simple_bootloader{ ec_op='ec_op', keccak='keccak', poseidon='poseidon', + range_check96='range_check96', ); local builtin_instance_sizes: BuiltinData = BuiltinData( - output=1, pedersen=3, range_check=1, ecdsa=2, bitwise=5, ec_op=7, keccak=16, poseidon=6 + output=1, + pedersen=3, + range_check=1, + ecdsa=2, + bitwise=5, + ec_op=7, + keccak=16, + poseidon=6, + range_check96=1, ); // Call execute_tasks. @@ -93,7 +104,8 @@ func run_simple_bootloader{ let bitwise_ptr = builtin_ptrs.bitwise; let ec_op_ptr = builtin_ptrs.ec_op; let keccak_ptr = builtin_ptrs.keccak; - let poseidon_ptr = builtin_ptrs.poseidon; + let poseidon_ptr = cast(builtin_ptrs.poseidon, PoseidonBuiltin*); + let range_check96_ptr = builtin_ptrs.range_check96; // 'execute_tasks' runs untrusted code and uses the range_check builtin to verify that // the builtin pointers were advanced correctly by said code. @@ -152,7 +164,7 @@ func execute_tasks{builtin_ptrs: BuiltinData*, self_range_check_ptr}( task_id = len(simple_bootloader_input.tasks) - ids.n_tasks task = simple_bootloader_input.tasks[task_id].load_task() %} - tempvar use_poseidon = nondet %{ 0 %}; + tempvar use_poseidon = nondet %{ 1 if task.use_poseidon else 0 %}; // Call execute_task to execute the current task. execute_task( builtin_encodings=builtin_encodings, diff --git a/src/starkware/cairo/bootloaders/simple_bootloader/simple_bootloader.cairo b/src/starkware/cairo/bootloaders/simple_bootloader/simple_bootloader.cairo index 5adb9f57..915d7dbe 100644 --- a/src/starkware/cairo/bootloaders/simple_bootloader/simple_bootloader.cairo +++ b/src/starkware/cairo/bootloaders/simple_bootloader/simple_bootloader.cairo @@ -1,9 +1,9 @@ -%builtins output pedersen range_check ecdsa bitwise ec_op keccak poseidon +%builtins output pedersen range_check ecdsa bitwise ec_op keccak poseidon range_check96 from starkware.cairo.bootloaders.simple_bootloader.run_simple_bootloader import ( run_simple_bootloader, ) -from starkware.cairo.common.cairo_builtins import HashBuiltin +from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin from starkware.cairo.common.registers import get_fp_and_pc func main{ @@ -14,7 +14,8 @@ func main{ bitwise_ptr, ec_op_ptr, keccak_ptr, - poseidon_ptr, + poseidon_ptr: PoseidonBuiltin*, + range_check96_ptr, }() { %{ from starkware.cairo.bootloaders.simple_bootloader.objects import SimpleBootloaderInput diff --git a/src/starkware/cairo/builtin_selection/BUILD b/src/starkware/cairo/builtin_selection/BUILD index 0573227e..da69986b 100644 --- a/src/starkware/cairo/builtin_selection/BUILD +++ b/src/starkware/cairo/builtin_selection/BUILD @@ -33,14 +33,17 @@ pytest_test( "select_input_builtins_test.py", "validate_builtins_test.py", ], + data = [ + ":cairo_builtin_selection_cairo_lib", + ], visibility = ["//visibility:public"], deps = [ - "cairo_builtin_selection_lib", - "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/common:cairo_function_runner_lib", - "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/cairo/lang:cairo_constants_lib", + "//src/starkware/cairo/lang:cairo_instances_lib", + "//src/starkware/cairo/lang/builtins:cairo_all_builtins_lib", + "//src/starkware/cairo/lang/builtins:cairo_run_builtins_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", - "//src/starkware/crypto:starkware_crypto_lib", "//src/starkware/python:starkware_python_test_utils_lib", "//src/starkware/python:starkware_python_utils_lib", ], diff --git a/src/starkware/cairo/builtin_selection/validate_builtins_test.py b/src/starkware/cairo/builtin_selection/validate_builtins_test.py index e9e6dad8..8445a041 100644 --- a/src/starkware/cairo/builtin_selection/validate_builtins_test.py +++ b/src/starkware/cairo/builtin_selection/validate_builtins_test.py @@ -36,6 +36,7 @@ def test_validate_builtins(old_builtins, new_builtins, builtin_instance_sizes, e assert len(runner.program.hints) == 0, "Expecting validator to have no hints." range_check_builtin = RangeCheckBuiltinRunner( + name="range_check", included=True, ratio=None, inner_rc_bound=2**16, diff --git a/src/starkware/cairo/cairo_verifier/layouts/all_cairo/cairo_verifier.cairo b/src/starkware/cairo/cairo_verifier/layouts/all_cairo/cairo_verifier.cairo index 13b32418..499260a4 100644 --- a/src/starkware/cairo/cairo_verifier/layouts/all_cairo/cairo_verifier.cairo +++ b/src/starkware/cairo/cairo_verifier/layouts/all_cairo/cairo_verifier.cairo @@ -2,8 +2,8 @@ from starkware.cairo.cairo_verifier.objects import CairoVerifierOutput from starkware.cairo.common.alloc import alloc +from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash_many from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, HashBuiltin, PoseidonBuiltin -from starkware.cairo.common.hash_state import hash_felts from starkware.cairo.common.math import assert_nn_le from starkware.cairo.common.registers import get_label_location from starkware.cairo.stark_verifier.air.layouts.all_cairo.public_verify import ( @@ -25,7 +25,7 @@ const INITIAL_PC = 1; // See verify_stack() for more detail. func get_program_builtins() -> (n_builtins: felt, builtins: felt*) { let (builtins_address) = get_label_location(data); - let n_builtins = 8; + let n_builtins = 9; assert builtins_address[n_builtins] = 0; return (n_builtins=n_builtins, builtins=builtins_address); @@ -38,6 +38,7 @@ func get_program_builtins() -> (n_builtins: felt, builtins: felt*) { dw 'ec_op'; dw 'keccak'; dw 'poseidon'; + dw 'range_check96'; dw 0; } @@ -101,7 +102,7 @@ func _verify_public_input{ assert program[4] = 0x10780017fff7fff; // Instruction: jmp rel 0. assert program[5] = 0x0; // Program hash. - let (program_hash) = hash_felts{hash_ptr=pedersen_ptr}(data=program, length=program_len); + let (program_hash: felt) = poseidon_hash_many(n=program_len, elements=program); // 2. Execution segment. // 2.1. initial_fp, initial_pc. @@ -130,7 +131,7 @@ func _verify_public_input{ let (output: felt*) = alloc(); local output_len = output_stop - output_start; extract_range(addr=output_start, length=output_len, output=output); - let (output_hash) = hash_felts{hash_ptr=pedersen_ptr}(data=output, length=output_len); + let (output_hash: felt) = poseidon_hash_many(n=output_len, elements=output); } // Make sure main_page_len is correct. diff --git a/src/starkware/cairo/cairo_verifier/layouts/all_cairo/program_hash.json b/src/starkware/cairo/cairo_verifier/layouts/all_cairo/program_hash.json index 7a5351aa..4cefde11 100644 --- a/src/starkware/cairo/cairo_verifier/layouts/all_cairo/program_hash.json +++ b/src/starkware/cairo/cairo_verifier/layouts/all_cairo/program_hash.json @@ -1,3 +1,3 @@ { - "program_hash": "0x64e3b2bfcf9bfce67a8971ce1d292aa16fc0b18ec214ceeac2de0fd8f95000e" + "program_hash": "0x10b7f3f384982a69463a1c792cc943351d93b60d11b7fdb4a1b8e9b49753666" } diff --git a/src/starkware/cairo/common/BUILD b/src/starkware/cairo/common/BUILD index c44eb2b6..9350b19d 100644 --- a/src/starkware/cairo/common/BUILD +++ b/src/starkware/cairo/common/BUILD @@ -130,12 +130,14 @@ py_library( ], visibility = ["//visibility:public"], deps = [ - "cairo_common_lib", + ":cairo_common_lib", "//src/starkware/cairo/lang/builtins:cairo_run_builtins_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/cairo/lang/tracer:cairo_tracer_lib", + "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", "//src/starkware/cairo/lang/vm:cairo_run_lib", "//src/starkware/cairo/lang/vm:cairo_vm_crypto_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/python:starkware_python_utils_lib", ], ) diff --git a/src/starkware/cairo/common/builtin_poseidon/poseidon.cairo b/src/starkware/cairo/common/builtin_poseidon/poseidon.cairo index 38640ff6..54b3b995 100644 --- a/src/starkware/cairo/common/builtin_poseidon/poseidon.cairo +++ b/src/starkware/cairo/common/builtin_poseidon/poseidon.cairo @@ -26,25 +26,17 @@ func poseidon_hash_single{poseidon_ptr: PoseidonBuiltin*}(x: felt) -> (res: felt // Hashes n elements and retrieves a single field element output. func poseidon_hash_many{poseidon_ptr: PoseidonBuiltin*}(n: felt, elements: felt*) -> (res: felt) { + let elements_end = &elements[n]; // Apply the sponge construction to digest many elements. // To distinguish between the use cases the capacity element is initialized to 0. // To distinguish between different input sizes always pad with 1 and possibly with another 0 to // complete to an even sized input. - let state = PoseidonBuiltinState(s0=0, s1=0, s2=0); - _poseidon_hash_many_inner(state, n, elements); - let res = poseidon_ptr.output.s0; - let poseidon_ptr = poseidon_ptr + PoseidonBuiltin.SIZE; - return (res=res); -} + tempvar state = PoseidonBuiltinState(s0=0, s1=0, s2=0); + tempvar elements = elements; + tempvar poseidon_ptr = poseidon_ptr; -// An inner function of the sponge construction. Recursively adds the new elements to the previous -// state and applies the permutation until all elements and the padding are digested. -// At the end of this function poseidon_ptr points to an instance of PoseidonBuiltin with the output -// ready to be used. The caller function must advance poseidon_ptr. -func _poseidon_hash_many_inner{poseidon_ptr: PoseidonBuiltin*}( - state: PoseidonBuiltinState, n: felt, elements: felt* -) { - if (nondet %{ ids.n >= 10 %} != 0) { + loop: + if (nondet %{ ids.elements_end - ids.elements >= 10 %} != 0) { assert poseidon_ptr.input = PoseidonBuiltinState( s0=state.s0 + elements[0], s1=state.s1 + elements[1], s2=state.s2 ); @@ -75,22 +67,33 @@ func _poseidon_hash_many_inner{poseidon_ptr: PoseidonBuiltin*}( let state = poseidon_ptr.output; let poseidon_ptr = poseidon_ptr + PoseidonBuiltin.SIZE; - return _poseidon_hash_many_inner(state, n - 10, &elements[10]); + tempvar state = state; + tempvar elements = &elements[10]; + tempvar poseidon_ptr = poseidon_ptr; + jmp loop; } - if (nondet %{ ids.n >= 2 %} != 0) { + if (nondet %{ ids.elements_end - ids.elements >= 2 %} != 0) { assert poseidon_ptr.input = PoseidonBuiltinState( s0=state.s0 + elements[0], s1=state.s1 + elements[1], s2=state.s2 ); let state = poseidon_ptr.output; let poseidon_ptr = poseidon_ptr + PoseidonBuiltin.SIZE; - return _poseidon_hash_many_inner(state, n - 2, &elements[2]); + + tempvar state = state; + tempvar elements = &elements[2]; + tempvar poseidon_ptr = poseidon_ptr; + jmp loop; } + tempvar n = elements_end - elements; + if (n == 0) { // Pad input with [1, 0]. assert poseidon_ptr.input = PoseidonBuiltinState(s0=state.s0 + 1, s1=state.s1, s2=state.s2); - return (); + let res = poseidon_ptr.output.s0; + let poseidon_ptr = poseidon_ptr + PoseidonBuiltin.SIZE; + return (res=res); } assert n = 1; @@ -98,5 +101,7 @@ func _poseidon_hash_many_inner{poseidon_ptr: PoseidonBuiltin*}( assert poseidon_ptr.input = PoseidonBuiltinState( s0=state.s0 + elements[0], s1=state.s1 + 1, s2=state.s2 ); - return (); + let res = poseidon_ptr.output.s0; + let poseidon_ptr = poseidon_ptr + PoseidonBuiltin.SIZE; + return (res=res); } diff --git a/src/starkware/cairo/common/cairo_function_runner.py b/src/starkware/cairo/common/cairo_function_runner.py index 2a60a2de..a9a745ee 100644 --- a/src/starkware/cairo/common/cairo_function_runner.py +++ b/src/starkware/cairo/common/cairo_function_runner.py @@ -37,7 +37,7 @@ def __init__(self, *args, **kwargs): ) self.builtin_runners["pedersen_builtin"] = pedersen_builtin range_check_builtin = RangeCheckBuiltinRunner( - included=True, ratio=1, inner_rc_bound=2**16, n_parts=8 + name="range_check", included=True, ratio=1, inner_rc_bound=2**16, n_parts=8 ) self.builtin_runners["range_check_builtin"] = range_check_builtin output_builtin = OutputBuiltinRunner(included=True) @@ -81,6 +81,10 @@ def __init__(self, *args, **kwargs): ), ) self.builtin_runners["poseidon_builtin"] = poseidon_builtin + range_check96_builtin = RangeCheckBuiltinRunner( + name="range_check96", included=True, ratio=1, inner_rc_bound=2**16, n_parts=6 + ) + self.builtin_runners["range_check96_builtin"] = range_check96_builtin self.initialize_segments() @@ -116,6 +120,10 @@ def keccak_builtin(self) -> KeccakBuiltinRunner: def poseidon_builtin(self) -> PoseidonBuiltinRunner: return cast(PoseidonBuiltinRunner, self.builtin_runners["poseidon_builtin"]) + @property + def range_check96_builtin(self) -> RangeCheckBuiltinRunner: + return cast(RangeCheckBuiltinRunner, self.builtin_runners["range_check96_builtin"]) + def assert_eq(self, arg: MaybeRelocatable, expected_value, apply_modulo: bool = True): """ Asserts that arg is the Cairo representation of expected_value. diff --git a/src/starkware/cairo/common/cairo_secp/bigint.cairo b/src/starkware/cairo/common/cairo_secp/bigint.cairo index f1a3bd9b..40dba334 100644 --- a/src/starkware/cairo/common/cairo_secp/bigint.cairo +++ b/src/starkware/cairo/common/cairo_secp/bigint.cairo @@ -77,17 +77,20 @@ func nondet_bigint3{range_check_ptr}() -> (res: BigInt3) { func bigint_to_uint256{range_check_ptr}(x: BigInt3) -> (res: Uint256) { let low = [range_check_ptr]; let high = [range_check_ptr + 1]; - let range_check_ptr = range_check_ptr + 2; + + // Guess the low part of the result. This is done by taking the 128 LSB of x. %{ ids.low = (ids.x.d0 + ids.x.d1 * ids.BASE) & ((1 << 128) - 1) %} - // Because PRIME is at least 174 bits, the numerator doesn't overflow. - tempvar a = ((x.d0 + x.d1 * BASE) - low) / RC_BOUND; - const D2_SHIFT = BASE * BASE / RC_BOUND; - const A_BOUND = 4 * D2_SHIFT; - // We'll check that the division in `a` doesn't cause an overflow. This means that the 128 LSB - // of (x.d0 + x.d1 * BASE) and low are identical, which ensures that low is correct. - assert_nn_le(a, A_BOUND - 1); - // high * RC_BOUND = a * RC_BOUND + x.d2 * BASE ** 2 = - // = x.d0 + x.d1 * BASE + x.d2 * BASE ** 2 - low = num - low. + + // Verify that low is indeed the 128 LSB of (x.d0 + x.d1 * BASE). This is done by + // checking that the following division doesn't overflow. + tempvar a = ((x.d0 + x.d1 * BASE) - low) / 2 ** 128; + + // 'a' should be in the range [0, 2 ** 46), since (x.d0 + x.d1 * BASE) < 2 ** 174. + assert [range_check_ptr + 2] = a; + assert [range_check_ptr + 3] = a + 2 ** 128 - 2 ** 46; + let range_check_ptr = range_check_ptr + 4; + + const D2_SHIFT = BASE * BASE / 2 ** 128; with_attr error_message("x out of range") { assert high = a + x.d2 * D2_SHIFT; } diff --git a/src/starkware/cairo/common/hash_state.py b/src/starkware/cairo/common/hash_state.py index c22b8c75..6d798933 100644 --- a/src/starkware/cairo/common/hash_state.py +++ b/src/starkware/cairo/common/hash_state.py @@ -13,3 +13,11 @@ def compute_hash_on_elements(data, hash_func=pedersen_hash): H([x,y,z]) = h(h(x,y),z) = H([w, z]) where w = h(x,y). """ return functools.reduce(lambda x, y: hash_func(x, y), [*data, len(data)], 0) + + +def compute_hash_on_elements_without_length(data, hash_func=pedersen_hash): + """ + Similar to `compute_hash_on_elements` but without appending the length. + May be used for hashing a prefix of a hash chain. + """ + return functools.reduce(lambda x, y: hash_func(x, y), data, 0) diff --git a/src/starkware/cairo/common/poseidon_utils.py b/src/starkware/cairo/common/poseidon_utils.py index 03ad8aac..5579cd62 100644 --- a/src/starkware/cairo/common/poseidon_utils.py +++ b/src/starkware/cairo/common/poseidon_utils.py @@ -9,7 +9,7 @@ import numpy as np from starkware.cairo.lang.cairo_constants import DEFAULT_PRIME -from starkware.python.math_utils import pow_mod, safe_div +from starkware.python.math_utils import safe_div def generate_round_constant(fn_name: str, field_prime: int, idx: int) -> int: @@ -23,6 +23,48 @@ def generate_round_constant(fn_name: str, field_prime: int, idx: int) -> int: return val % field_prime +class MdsMatrix(np.ndarray): + # When subclassing np.ndarray, it is recommended to use __new__. + # See https://numpy.org/doc/stable/user/basics.subclassing.html . + + def __new__(cls, coefficients: Iterable[Iterable[int]]): + obj = np.asarray(coefficients).view(cls) + return obj + + def dot_mod(self, vector: List[int], modulus: int): + return list(self.dot(vector) % modulus) + + +class SmallMds(MdsMatrix): + """ + An optimized implementation for the MDS matrix we usually use. + """ + + COEFFICIENTS = [[3, 1, 1], [1, -1, 1], [1, 1, -2]] + + def __new__(cls): + obj = np.asarray(cls.COEFFICIENTS, dtype=object).view(cls) + + # SmallMds assumes that nobody changes the coefficients + obj.setflags(write=False) + + return obj + + def dot_mod(self, vector: List[int], modulus: int): + """ + Multiplies a vector by the SmallMds matrix and returns the result modulo . + [3, 1, 1] [r0] [3* r0 + r1 + r2 ] + [1, -1, 1] * [r1] = [r0 - r1 + r2 ] + [1, 1, -2] [r2] [r0 + r1 - 2 * r2] + """ + + return [ + (3 * vector[0] + vector[1] + vector[2]) % modulus, + (vector[0] - vector[1] + vector[2]) % modulus, + (vector[0] + vector[1] - 2 * vector[2]) % modulus, + ] + + class PoseidonParams: """ Poseidon is a family of cryptographic primitives, a special case of Hades when the field is a @@ -62,13 +104,16 @@ def __init__( ) # The MDS matrix for the MixLayer phase. - self.mds = np.array(mds, dtype=object) + if np.array_equal(mds, SmallMds.COEFFICIENTS): + self.mds: MdsMatrix = SmallMds() + else: + self.mds = MdsMatrix(mds) @classmethod def get_default_poseidon_params(cls: Type["PoseidonParams"]): if cls.poseidon_small_params is None: cls.poseidon_small_params = cls( - field_prime=DEFAULT_PRIME, r=2, c=1, r_f=8, r_p=83, mds=SmallMds + field_prime=DEFAULT_PRIME, r=2, c=1, r_f=8, r_p=83, mds=SmallMds.COEFFICIENTS ) return cls.poseidon_small_params @@ -76,16 +121,15 @@ def get_default_poseidon_params(cls: Type["PoseidonParams"]): def hades_round(values, params: PoseidonParams, is_full_round: bool, round_idx: int): # Add-Round Key. - values = (values + params.ark[round_idx]) % params.field_prime - + values = [(val + ark) % params.field_prime for val, ark in zip(values, params.ark[round_idx])] # SubWords. if is_full_round: - values = pow_mod(values, 3, params.field_prime) + values = [pow(val, 3, params.field_prime) for val in values] else: - values[-1:] = pow_mod(values[-1:], 3, params.field_prime) + values[-1] = pow(values[-1], 3, params.field_prime) # MixLayer. - values = params.mds.dot(values) % params.field_prime + values = params.mds.dot_mod(values, params.field_prime) return values @@ -107,7 +151,3 @@ def hades_permutation(values: List[int], params: PoseidonParams) -> List[int]: round_idx += 1 assert round_idx == params.n_rounds return list(values) - - -# The actual config to be in use, with extremely small MDS coefficients. -SmallMds = [[3, 1, 1], [1, -1, 1], [1, 1, -2]] diff --git a/src/starkware/cairo/lang/BUILD b/src/starkware/cairo/lang/BUILD index 76badf1e..651111ed 100644 --- a/src/starkware/cairo/lang/BUILD +++ b/src/starkware/cairo/lang/BUILD @@ -74,6 +74,7 @@ py_library( deps = [ "//src/starkware/cairo/lang/builtins:cairo_all_builtins_lib", "//src/starkware/cairo/lang/builtins:cairo_run_builtins_lib", + "//src/starkware/cairo/lang/builtins:instance_def_lib", "//src/starkware/python:starkware_python_utils_lib", ], ) diff --git a/src/starkware/cairo/lang/VERSION b/src/starkware/cairo/lang/VERSION index 54d1a4f2..77661707 100644 --- a/src/starkware/cairo/lang/VERSION +++ b/src/starkware/cairo/lang/VERSION @@ -1 +1 @@ -0.13.0 +0.13.1a0 diff --git a/src/starkware/cairo/lang/builtins/BUILD b/src/starkware/cairo/lang/builtins/BUILD index 3357de23..c2960651 100644 --- a/src/starkware/cairo/lang/builtins/BUILD +++ b/src/starkware/cairo/lang/builtins/BUILD @@ -53,6 +53,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + "//src/starkware/cairo/lang:cairo_instances_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/cairo/lang/vm:cairo_run_lib", ], diff --git a/src/starkware/cairo/lang/builtins/all_builtins.py b/src/starkware/cairo/lang/builtins/all_builtins.py index 25074934..aefe9bc7 100644 --- a/src/starkware/cairo/lang/builtins/all_builtins.py +++ b/src/starkware/cairo/lang/builtins/all_builtins.py @@ -13,6 +13,7 @@ EC_OP_BUILTIN = "ec_op" KECCAK_BUILTIN = "keccak" POSEIDON_BUILTIN = "poseidon" +RANGE_CHECK96_BUILTIN = "range_check96" BUILTIN_NAME_SUFFIX = "_builtin" @@ -57,8 +58,8 @@ def with_suffix(self): EC_OP_BUILTIN, KECCAK_BUILTIN, POSEIDON_BUILTIN, + RANGE_CHECK96_BUILTIN, ] ) - -SUPPORTED_DYNAMIC_BUILTINS = ALL_BUILTINS +SUPPORTED_DYNAMIC_BUILTINS = ALL_BUILTINS.except_for(RANGE_CHECK96_BUILTIN) diff --git a/src/starkware/cairo/lang/builtins/builtin_runner_test_utils.py b/src/starkware/cairo/lang/builtins/builtin_runner_test_utils.py index 964049e5..3b9d5323 100644 --- a/src/starkware/cairo/lang/builtins/builtin_runner_test_utils.py +++ b/src/starkware/cairo/lang/builtins/builtin_runner_test_utils.py @@ -1,10 +1,13 @@ +from typing import Union + from starkware.cairo.lang.compiler.cairo_compile import compile_cairo +from starkware.cairo.lang.instances import CairoLayout from starkware.cairo.lang.vm.cairo_runner import CairoRunner PRIME = 2**251 + 17 * 2**192 + 1 -def compile_and_run(code: str, layout: str = "small"): +def compile_and_run(code: str, layout: Union[str, CairoLayout] = "small"): """ Compiles the given code and runs it in the VM. """ diff --git a/src/starkware/cairo/lang/builtins/modulo/BUILD b/src/starkware/cairo/lang/builtins/modulo/BUILD deleted file mode 100644 index b8704f55..00000000 --- a/src/starkware/cairo/lang/builtins/modulo/BUILD +++ /dev/null @@ -1,5 +0,0 @@ -package(default_visibility = ["//visibility:public"]) - -exports_files([ - "instance_def.py", -]) diff --git a/src/starkware/cairo/lang/builtins/modulo/__init__.py b/src/starkware/cairo/lang/builtins/modulo/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/src/starkware/cairo/lang/builtins/modulo/instance_def.py b/src/starkware/cairo/lang/builtins/modulo/instance_def.py deleted file mode 100644 index 123f0453..00000000 --- a/src/starkware/cairo/lang/builtins/modulo/instance_def.py +++ /dev/null @@ -1,34 +0,0 @@ -import dataclasses - -from starkware.cairo.lang.builtins.instance_def import BuiltinInstanceDef - -HEIGHT = 1 - - -@dataclasses.dataclass -class AddModInstanceDef(BuiltinInstanceDef): - # The parameters of the presentation of large integers in felts. Each number is composed of - # n_words felts, each containing a value in [0, 2**word_bit_len), to represent - # n_words * word_bit_len bit-long integers. - # E.g., for 384-bit numbers, use word_bit_len = 96 and n_words = 4. - word_bit_len: int - n_words: int - - @property - def memory_cells_per_instance(self) -> int: - # The user-facing memory has n_words + 3 memory cells per instance (p, n and two pointers), - # and the additional memory contains 3*(n_words + 1) memory cells, for offsets and values - # of each of a, b, and c. - return 4 * self.n_words + 6 - - @property - def range_check_units_per_builtin(self) -> int: - # No range check units in the builtin itself. The range check is done externally. - return 0 - - @property - def invocation_height(self) -> int: - return HEIGHT - - def get_diluted_units_per_builtin(self, diluted_spacing: int, diluted_n_bits: int) -> int: - return 0 diff --git a/src/starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py b/src/starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py index cbdfee0f..b9fdb22c 100644 --- a/src/starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py +++ b/src/starkware/cairo/lang/builtins/range_check/range_check_builtin_runner.py @@ -7,9 +7,9 @@ class RangeCheckBuiltinRunner(SimpleBuiltinRunner): - def __init__(self, included: bool, ratio, inner_rc_bound, n_parts): + def __init__(self, name: str, included: bool, ratio, inner_rc_bound, n_parts): super().__init__( - name="range_check", + name=name, included=included, ratio=ratio, cells_per_instance=1, @@ -54,7 +54,7 @@ def air_private_input(self, runner) -> Dict[str, Any]: assert isinstance(val, int) res[idx] = {"index": idx, "value": hex(val)} - return {"range_check": sorted(res.values(), key=lambda item: item["index"])} + return {self.name: sorted(res.values(), key=lambda item: item["index"])} def get_range_check_usage(self, runner) -> Optional[Tuple[int, int]]: assert self.base is not None, "Uninitialized self.base." @@ -88,7 +88,8 @@ def get_used_perm_range_check_units(self, runner) -> int: class RangeCheckBuiltinVerifier(BuiltinVerifier): - def __init__(self, included: bool, ratio): + def __init__(self, name: str, included: bool, ratio): + self.name = name self.included = included self.ratio = ratio @@ -96,7 +97,7 @@ def expected_stack(self, public_input): if not self.included: return [], [] - addresses = public_input.memory_segments["range_check"] + addresses = public_input.memory_segments[self.name] max_size = safe_div(public_input.n_steps, self.ratio) assert ( 0 diff --git a/src/starkware/cairo/lang/compiler/instruction.py b/src/starkware/cairo/lang/compiler/instruction.py index 2fb72323..e1521f22 100644 --- a/src/starkware/cairo/lang/compiler/instruction.py +++ b/src/starkware/cairo/lang/compiler/instruction.py @@ -118,7 +118,9 @@ def decode_instruction_values(encoded_instruction): """ Returns a tuple (flags, off0, off1, off2) according to the given encoded instruction. """ - assert 0 <= encoded_instruction < 2 ** (3 * OFFSET_BITS + N_FLAGS), "Unsupported instruction." + assert ( + 0 <= encoded_instruction < 2 ** (3 * OFFSET_BITS + N_FLAGS) + ), f"Unsupported instruction: {hex(encoded_instruction)}." off0 = encoded_instruction & (2**OFFSET_BITS - 1) off1 = (encoded_instruction >> OFFSET_BITS) & (2**OFFSET_BITS - 1) off2 = (encoded_instruction >> (2 * OFFSET_BITS)) & (2**OFFSET_BITS - 1) diff --git a/src/starkware/cairo/lang/compiler/instruction_test.py b/src/starkware/cairo/lang/compiler/instruction_test.py index 84eea0c9..f567e5ad 100644 --- a/src/starkware/cairo/lang/compiler/instruction_test.py +++ b/src/starkware/cairo/lang/compiler/instruction_test.py @@ -19,5 +19,5 @@ def test_decode(): def test_unsupported_instruction(): - with pytest.raises(AssertionError, match="Unsupported instruction."): + with pytest.raises(AssertionError, match="Unsupported instruction: 0x8000000000000000."): decode_instruction_values(1 << (3 * OFFSET_BITS + N_FLAGS)) diff --git a/src/starkware/cairo/lang/compiler/preprocessor/auxiliary_info_collector.py b/src/starkware/cairo/lang/compiler/preprocessor/auxiliary_info_collector.py index 6785105f..b957855d 100644 --- a/src/starkware/cairo/lang/compiler/preprocessor/auxiliary_info_collector.py +++ b/src/starkware/cairo/lang/compiler/preprocessor/auxiliary_info_collector.py @@ -29,7 +29,7 @@ def start_function_info( start_pc: int, implicit_args_struct: StructDefinition, args_struct: StructDefinition, - ret_types: Optional[CairoType], + ret_type: Optional[CairoType], ): pass @@ -96,6 +96,10 @@ def finish_tail_call(self): def add_func_ret_vars(self, ret_vars: List[str]): pass + @abstractmethod + def add_func_ret_types(self, ret_types: List[CairoType]): + pass + @abstractmethod def start_return(self): pass @@ -133,3 +137,7 @@ def add_add_ap(self, expr: Expression): @abstractmethod def add_const(self, name: ScopedName, expr: Expression, val: int): pass + + @abstractmethod + def set_flow_tracking_after_instr(self): + pass diff --git a/src/starkware/cairo/lang/compiler/preprocessor/preprocessor.py b/src/starkware/cairo/lang/compiler/preprocessor/preprocessor.py index cfa134ad..90e84080 100644 --- a/src/starkware/cairo/lang/compiler/preprocessor/preprocessor.py +++ b/src/starkware/cairo/lang/compiler/preprocessor/preprocessor.py @@ -1866,10 +1866,12 @@ def visit_CodeElementReturnValueReference(self, elm: CodeElementReturnValueRefer # Visit call_elm to advance pc. self.visit(call_elm) + cairo_type = self.resolve_type(expr_type) + if self.auxiliary_info is not None: self.auxiliary_info.add_func_ret_vars([elm.typed_identifier.name]) + self.auxiliary_info.add_func_ret_types([cairo_type]) - cairo_type = self.resolve_type(expr_type) struct_size = self.get_size(cairo_type) self.add_simple_reference( name=self.current_scope + elm.typed_identifier.identifier.name, @@ -1974,6 +1976,9 @@ def visit_CodeElementUnpackBinding(self, elm: CodeElementUnpackBinding): else: cairo_type = member.typ + if self.auxiliary_info is not None: + self.auxiliary_info.add_func_ret_types([cairo_type]) + if not check_cast( src_type=member.typ, dest_type=cairo_type, @@ -2087,13 +2092,19 @@ def visit_InstructionAst(self, instruction: InstructionAst): for label, change in flows.jumps.items(): self.flow_tracking.add_flow_to_label(label, change + added_ap) + if self.auxiliary_info is not None: + self.auxiliary_info.set_flow_tracking_after_instr() + # Add flow to next instruction if needed. if flows.next_inst is not None: # There is a flow to the next instruction. Add ap change. self.flow_tracking.add_ap(flows.next_inst + added_ap) + if self.auxiliary_info is not None: + self.auxiliary_info.set_flow_tracking_after_instr() else: # There is no flow to the next instruction. Revoke. self.flow_tracking.revoke() + return res def visit_AssertEqInstruction(self, instruction: AssertEqInstruction): @@ -2125,9 +2136,6 @@ def visit_JumpToLabelInstruction(self, instruction: JumpToLabelInstruction): res_instruction: InstructionBody if label_pc is None: condition = instruction.condition - if condition is not None: - condition = self.simplify_expr_as_felt(condition) - res_instruction = dataclasses.replace(instruction, condition=condition) if self.auxiliary_info is not None: self.auxiliary_info.record_jump_to_labeled_instruction( label_name=label_full_name, @@ -2135,6 +2143,9 @@ def visit_JumpToLabelInstruction(self, instruction: JumpToLabelInstruction): current_pc=self.current_pc, pc_dest=None, ) + if condition is not None: + condition = self.simplify_expr_as_felt(condition) + res_instruction = dataclasses.replace(instruction, condition=condition) else: jump_offset = ExprConst( val=label_pc - self.current_pc, location=instruction.label.location @@ -2154,9 +2165,7 @@ def visit_JumpToLabelInstruction(self, instruction: JumpToLabelInstruction): if self.auxiliary_info is not None: self.auxiliary_info.record_jump_to_labeled_instruction( label_name=label_full_name, - condition=self.simplify_expr_as_felt(instruction.condition) - if instruction.condition is not None - else None, + condition=instruction.condition, current_pc=self.current_pc, pc_dest=label_pc, ) diff --git a/src/starkware/cairo/lang/ide/vscode-cairo/package.json b/src/starkware/cairo/lang/ide/vscode-cairo/package.json index 01d32708..25b61aff 100644 --- a/src/starkware/cairo/lang/ide/vscode-cairo/package.json +++ b/src/starkware/cairo/lang/ide/vscode-cairo/package.json @@ -2,7 +2,7 @@ "name": "cairo", "displayName": "Cairo", "description": "Support Cairo syntax", - "version": "0.13.0", + "version": "0.13.1", "engines": { "vscode": "^1.30.0" }, diff --git a/src/starkware/cairo/lang/instances.py b/src/starkware/cairo/lang/instances.py index f18aa042..842f1cad 100644 --- a/src/starkware/cairo/lang/instances.py +++ b/src/starkware/cairo/lang/instances.py @@ -338,7 +338,7 @@ def build_dynamic_layout( n_trace_columns=15, ) -# A layout for a Cairo verification proof. +# Layouts for a Cairo verification proof. recursive_instance = CairoLayout( layout_name="recursive", rc_units=4, @@ -370,6 +370,41 @@ def build_dynamic_layout( n_trace_columns=10, ) +recursive_with_poseidon_instance = CairoLayout( + layout_name="recursive_with_poseidon", + rc_units=4, + public_memory_fraction=8, + diluted_pool_instance_def=DilutedPoolInstanceDef( + log_units_per_step=3, + spacing=4, + n_bits=16, + ), + builtins=dict( + output=True, + pedersen=PedersenInstanceDef( + ratio=256, + repetitions=1, + element_height=256, + element_bits=252, + n_inputs=2, + hash_limit=PRIME, + ), + range_check=RangeCheckInstanceDef( + ratio=16, + n_parts=8, + ), + bitwise=BitwiseInstanceDef( + ratio=16, + total_n_bits=251, + ), + poseidon=PoseidonInstanceDef( + ratio=64, + partial_rounds_partition=[64, 22], + ), + ), + n_trace_columns=8, +) + # A layout with a lot of bitwise and pedersen instances (e.g., for Cairo stark verification # with long output). recursive_large_output_instance = CairoLayout( @@ -384,7 +419,7 @@ def build_dynamic_layout( builtins=dict( output=True, pedersen=PedersenInstanceDef( - ratio=32, + ratio=128, repetitions=1, element_height=256, element_bits=252, @@ -399,14 +434,18 @@ def build_dynamic_layout( ratio=8, total_n_bits=251, ), + poseidon=PoseidonInstanceDef( + ratio=8, + partial_rounds_partition=[64, 22], + ), ), - n_trace_columns=13, + n_trace_columns=12, ) # A layout optimized for a cairo verifier program that is being verified by a cairo verifier. all_cairo_instance = CairoLayout( layout_name="all_cairo", - rc_units=4, + rc_units=8, public_memory_fraction=8, diluted_pool_instance_def=DilutedPoolInstanceDef( log_units_per_step=4, @@ -452,8 +491,12 @@ def build_dynamic_layout( ratio=256, partial_rounds_partition=[64, 22], ), + range_check96=RangeCheckInstanceDef( + ratio=8, + n_parts=6, + ), ), - n_trace_columns=11, + n_trace_columns=12, ) all_solidity_instance = CairoLayout( @@ -509,4 +552,5 @@ def build_dynamic_layout( "all_solidity": all_solidity_instance, "starknet_with_keccak": starknet_with_keccak_instance, "dynamic": build_dynamic_layout(), + "recursive_with_poseidon": recursive_with_poseidon_instance, } diff --git a/src/starkware/cairo/lang/package_test/run_test.sh b/src/starkware/cairo/lang/package_test/run_test.sh index e2c149ca..cb3f450e 100755 --- a/src/starkware/cairo/lang/package_test/run_test.sh +++ b/src/starkware/cairo/lang/package_test/run_test.sh @@ -41,5 +41,6 @@ starknet-compile-deprecated ${root_dir}/src/starkware/starknet/apps/amm_sample/a # Test StarkNet CLI. starknet --help > /dev/null -# Test starknet-class-hash. +# Test starknet-class-hash and starknet-compiled-class-hash. starknet-class-hash --help > /dev/null +starknet-compiled-class-hash --help > /dev/null diff --git a/src/starkware/cairo/lang/setup.py b/src/starkware/cairo/lang/setup.py index bcbc437a..16b862b2 100644 --- a/src/starkware/cairo/lang/setup.py +++ b/src/starkware/cairo/lang/setup.py @@ -28,8 +28,11 @@ "starkware.cairo.lang": ["VERSION"], "starkware.cairo.sharp": ["config.json"], "starkware.crypto.signature": ["pedersen_params.json"], - "starkware.starknet": ["common/*.cairo", "definitions/*.yml"], - "starkware.starknet.business_logic.execution": ["os_resources.json"], + "starkware.starknet": [ + "common/*.cairo", + "definitions/*.yml", + "definitions/versioned_constants.json", + ], "starkware.starknet.compiler.v1": [ "*.json", "sierra-compiler-major-*/corelib/*.cairo", @@ -53,6 +56,7 @@ "starkware/cairo/lang/scripts/cairo-run", "starkware/cairo/lang/scripts/cairo-sharp", "starkware/starknet/scripts/starknet-class-hash", + "starkware/starknet/scripts/starknet-compiled-class-hash", "starkware/starknet/scripts/starknet-compile-deprecated", "starkware/starknet/scripts/starknet", ], diff --git a/src/starkware/cairo/lang/vm/BUILD b/src/starkware/cairo/lang/vm/BUILD index fed5eae0..02d9e58c 100644 --- a/src/starkware/cairo/lang/vm/BUILD +++ b/src/starkware/cairo/lang/vm/BUILD @@ -150,16 +150,18 @@ pytest_test( ], visibility = ["//visibility:public"], deps = [ - "cairo_run_lib", - "cairo_vm_lib", - "cairo_vm_test_utils_lib", - "cairo_vm_utils_lib", + ":cairo_relocatable_lib", + ":cairo_run_lib", + ":cairo_vm_crypto_lib", + ":cairo_vm_lib", + ":cairo_vm_test_utils_lib", + ":cairo_vm_utils_lib", "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/lang:cairo_constants_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/python:starkware_python_test_utils_lib", "//src/starkware/python:starkware_python_utils_lib", - "//src/starkware/starkware_utils:starkware_dataclasses_field_utils_lib", + "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", requirement("marshmallow_dataclass"), ], ) diff --git a/src/starkware/cairo/lang/vm/builtin_runner.py b/src/starkware/cairo/lang/vm/builtin_runner.py index 765234f9..35e5239b 100644 --- a/src/starkware/cairo/lang/vm/builtin_runner.py +++ b/src/starkware/cairo/lang/vm/builtin_runner.py @@ -182,6 +182,7 @@ def __init__( cells_per_instance: int, n_input_cells: int, instances_per_component: int = 1, + additional_memory_units_per_instance: int = 0, ): """ Constructs a SimpleBuiltinRunner. @@ -199,6 +200,7 @@ def __init__( self.stop_ptr: Optional[RelocatableValue] = None self.cells_per_instance = cells_per_instance self.n_input_cells = n_input_cells + self.additional_memory_units_per_instance = additional_memory_units_per_instance def get_instance_def(self) -> Optional[BuiltinInstanceDef]: """ @@ -256,11 +258,13 @@ def get_allocated_instances(self, runner): return safe_div(runner.vm.current_step, self.ratio) def get_allocated_memory_units(self, runner): - return self.cells_per_instance * self.get_allocated_instances(runner) + return ( + self.cells_per_instance + self.additional_memory_units_per_instance + ) * self.get_allocated_instances(runner) def get_used_cells_and_allocated_size(self, runner): used = self.get_used_cells(runner) - size = self.get_allocated_memory_units(runner) + size = self.cells_per_instance * self.get_allocated_instances(runner) if used > size: raise InsufficientAllocatedCells( f"The {self.name} builtin used {used} cells but the capacity is {size}." diff --git a/src/starkware/cairo/lang/vm/cairo_pie.py b/src/starkware/cairo/lang/vm/cairo_pie.py index eec48145..26e381b4 100644 --- a/src/starkware/cairo/lang/vm/cairo_pie.py +++ b/src/starkware/cairo/lang/vm/cairo_pie.py @@ -2,6 +2,7 @@ A CairoPie represents a position independent execution of a Cairo program. """ +import contextlib import copy import dataclasses import functools @@ -26,6 +27,8 @@ DEFAULT_CAIRO_PIE_VERSION = "1.0" CURRENT_CAIRO_PIE_VERSION = "1.1" +MAX_N_STEPS = 2**30 + @dataclasses.dataclass class SegmentInfo: @@ -136,7 +139,7 @@ class ExecutionResources: def run_validity_checks(self): assert ( - isinstance(self.n_steps, int) and 1 <= self.n_steps < 2**30 + isinstance(self.n_steps, int) and 1 <= self.n_steps < MAX_N_STEPS ), f"Invalid n_steps: {self.n_steps}." assert ( isinstance(self.n_memory_holes, int) and 0 <= self.n_memory_holes < 2**30 @@ -241,7 +244,7 @@ class CairoPie: ADDITIONAL_DATA_FILENAME, EXECUTION_RESOURCES_FILENAME, ] + OPTIONAL_FILES - MAX_SIZE = 1024**3 + MAX_SIZE = 5 * 1024**3 @classmethod def from_file(cls, fileobj) -> "CairoPie": @@ -333,7 +336,7 @@ def to_file(self, file, merge_extra_segments: bool = False): with zipfile.ZipFile(file, mode="w", compression=zipfile.ZIP_DEFLATED) as zf: with zf.open(self.METADATA_FILENAME, "w") as fp: fp.write(json.dumps(CairoPieMetadata.Schema().dump(metadata)).encode("ascii")) - with zf.open(self.MEMORY_FILENAME, "w") as fp: + with zf.open(self.MEMORY_FILENAME, "w", force_zip64=True) as fp: fp.write( self.memory.serialize( field_bytes=self.metadata.field_bytes, @@ -439,6 +442,39 @@ def get_segment(self, segment_info: SegmentInfo): RelocatableValue(segment_index=segment_info.index, offset=0), size=segment_info.size ) + def is_compatible_with(self, other: "CairoPie") -> bool: + """ + Checks equality between two CairoPies. Ignores .additional_data["pedersen_builtin"] + to avoid an issue where a stricter run checks more Pedersen addresses and results + in a different address list. + """ + with ignore_pedersen_data(self): + with ignore_pedersen_data(other): + return self == other + + def diff(self, other: "CairoPie") -> str: + """ + Returns a short description of the diff between two CairoPies. + """ + res = ["CairoPie diff:"] + if self.metadata != other.metadata: + res.append(f" * metadata mismatch.") + if self.memory != other.memory: + res.append(f" * memory mismatch.") + if self.additional_data != other.additional_data: + res.append(f" * additional_data mismatch:") + for key in sorted(self.additional_data.keys() | other.additional_data.keys()): + if self.additional_data.get(key) != other.additional_data.get(key): + res.append(f" * {key} mismatch.") + if self.execution_resources != other.execution_resources: + res.append( + " * execution_resources mismatch: " + f"{self.execution_resources} != {other.execution_resources}." + ) + if self.version != other.version: + res.append(f" * version mismatch: {self.version} != {other.version}.") + return "\n".join(res) + def verify_zip_file_prefix(fileobj): """ @@ -447,3 +483,24 @@ def verify_zip_file_prefix(fileobj): fileobj.seek(0) # Make sure this is a zip file. assert fileobj.read(2) in ["PK", b"PK"], "Invalid prefix for zip file." + + +@contextlib.contextmanager +def ignore_pedersen_data(pie: CairoPie): + """ + Context manager under which pie.additional_data["pedersen_builtin"] is set to None and + reverted to its original value (or removed if it didn't exist before) when the context + terminates. + """ + should_pop = "pedersen_builtin" not in pie.additional_data + original_pedersen_data, pie.additional_data["pedersen_builtin"] = ( + pie.additional_data.get("pedersen_builtin"), + None, + ) + try: + yield + finally: + if should_pop: + pie.additional_data.pop("pedersen_builtin") + else: + pie.additional_data["pedersen_builtin"] = original_pedersen_data diff --git a/src/starkware/cairo/lang/vm/cairo_pie_test.py b/src/starkware/cairo/lang/vm/cairo_pie_test.py index f253651a..f5497e8f 100644 --- a/src/starkware/cairo/lang/vm/cairo_pie_test.py +++ b/src/starkware/cairo/lang/vm/cairo_pie_test.py @@ -1,6 +1,7 @@ +import copy import io import random -from typing import Dict, Mapping +from typing import Dict, Mapping, no_type_check import pytest @@ -238,3 +239,66 @@ def test_cairo_pie_merge_extra_segments(cairo_pie: CairoPie): RelocatableValue(8, 13): RelocatableValue(8, 17), } assert actual_cairo_pie.memory == MemoryDict(expected_memory_initializer) + + +@pytest.mark.parametrize( + "has_pedersen1,has_pedersen2,are_compatible", + [ + (True, True, True), + (True, True, False), + (True, False, True), + (True, False, False), + (False, False, True), + (False, False, False), + ], +) +def test_cairo_pie_is_compatible_with( + cairo_pie: CairoPie, + has_pedersen1: bool, + has_pedersen2: bool, + are_compatible: bool, +): + """ + Tests CairoPie.is_compatible_with(). + """ + cairo_pie.additional_data = {} + another_cairo_pie = copy.deepcopy(cairo_pie) + if has_pedersen1: + cairo_pie.additional_data["pedersen_builtin"] = 1 + if has_pedersen2: + another_cairo_pie.additional_data["pedersen_builtin"] = 2 + if not are_compatible: + cairo_pie.additional_data["test"] = 1 + another_cairo_pie.additional_data["test"] = 2 + assert cairo_pie.is_compatible_with(another_cairo_pie) == are_compatible + assert another_cairo_pie.is_compatible_with(cairo_pie) == are_compatible + + +@no_type_check +def test_cairo_pie_diff(): + cairo_pie = CairoPie( + metadata=1, + memory=1, + additional_data={"a": 1, "b": 2, "c": 3}, + execution_resources=1, + version=1, + ) + another_cairo_pie = CairoPie( + metadata=2, + memory=2, + additional_data={"b": 2, "c": 4, "d": 5}, + execution_resources=2, + version=2, + ) + assert ( + cairo_pie.diff(another_cairo_pie) + == """CairoPie diff: + * metadata mismatch. + * memory mismatch. + * additional_data mismatch: + * a mismatch. + * c mismatch. + * d mismatch. + * execution_resources mismatch: 1 != 2. + * version mismatch: 1 != 2.""" + ) diff --git a/src/starkware/cairo/lang/vm/cairo_run.py b/src/starkware/cairo/lang/vm/cairo_run.py index ca7d49a0..be3fab42 100644 --- a/src/starkware/cairo/lang/vm/cairo_run.py +++ b/src/starkware/cairo/lang/vm/cairo_run.py @@ -378,9 +378,10 @@ def cairo_run(args): cairo_pie_input.execution_resources.n_memory_holes ) runner_cairo_pie.version = cairo_pie_input.version - assert cairo_pie_input == runner_cairo_pie, ( + assert cairo_pie_input.is_compatible_with(runner_cairo_pie), ( "The Cairo PIE input is not identical to the resulting Cairo PIE. " - "This may indicate that the Cairo PIE was not generated by cairo_run." + "This may indicate that the Cairo PIE was not generated by cairo_run.\n" + + cairo_pie_input.diff(runner_cairo_pie) ) if args.cairo_pie_output: diff --git a/src/starkware/cairo/lang/vm/cairo_runner.py b/src/starkware/cairo/lang/vm/cairo_runner.py index f25a034d..9e8cfe03 100644 --- a/src/starkware/cairo/lang/vm/cairo_runner.py +++ b/src/starkware/cairo/lang/vm/cairo_runner.py @@ -120,6 +120,7 @@ def __init__( instance_def=self.layout.builtins["pedersen"], ), range_check=lambda name, included: RangeCheckBuiltinRunner( + name="range_check", included=included, ratio=self.layout.builtins["range_check"].ratio, inner_rc_bound=2**16, @@ -145,6 +146,13 @@ def __init__( poseidon=lambda name, included: PoseidonBuiltinRunner( included=included, instance_def=self.layout.builtins["poseidon"] ), + range_check96=lambda name, included: RangeCheckBuiltinRunner( + name="range_check96", + included=included, + ratio=self.layout.builtins["range_check96"].ratio, + inner_rc_bound=2**16, + n_parts=self.layout.builtins["range_check96"].n_parts, + ), **additional_builtin_factories, ) @@ -870,12 +878,19 @@ def get_runner_from_code( return get_main_runner(program=program, hint_locals={}, layout=layout) -def get_main_runner(program: Program, hint_locals: Dict[str, Any], layout: str) -> CairoRunner: +def get_main_runner( + program: Program, + hint_locals: Dict[str, Any], + layout: str, + allow_missing_builtins: Optional[bool] = None, +) -> CairoRunner: """ Creates a Cairo runner and runs its main-entrypoint. Returns the runner. """ - runner = CairoRunner(program=program, layout=layout) + runner = CairoRunner( + program=program, layout=layout, allow_missing_builtins=allow_missing_builtins + ) run_main_entrypoint(runner=runner, hint_locals=hint_locals) return runner diff --git a/src/starkware/cairo/lang/vm/memory_dict.py b/src/starkware/cairo/lang/vm/memory_dict.py index 8c881d25..43f9b82f 100644 --- a/src/starkware/cairo/lang/vm/memory_dict.py +++ b/src/starkware/cairo/lang/vm/memory_dict.py @@ -172,9 +172,14 @@ def relocate_memory(self): if len(self.relocation_rules) == 0: return - self.data = { - self.relocate_value(addr): self.relocate_value(value) for addr, value in self.items() - } + relocated_memory: Dict[MaybeRelocatable, MaybeRelocatable] = {} + for addr, value in self.items(): + relocated_addr = self.relocate_value(addr) + relocated_value = self.relocate_value(value) + current = relocated_memory.setdefault(relocated_addr, relocated_value) + self.verify_same_value(addr=relocated_addr, current=current, value=relocated_value) + + self.data = relocated_memory self.relocation_rules = {} def __getitem__(self, addr: MaybeRelocatable) -> MaybeRelocatable: diff --git a/src/starkware/cairo/lang/vm/memory_dict_test.py b/src/starkware/cairo/lang/vm/memory_dict_test.py index b45c6a01..0fa76ecc 100644 --- a/src/starkware/cairo/lang/vm/memory_dict_test.py +++ b/src/starkware/cairo/lang/vm/memory_dict_test.py @@ -161,3 +161,14 @@ def test_segment_relocation_failures(): memory.add_relocation_rule( src_ptr=RelocatableValue(segment_index=-3, offset=0), dest_ptr=relocation_target ) + + relocation_target = RelocatableValue(segment_index=100, offset=0) + src_ptr = RelocatableValue(segment_index=-6, offset=0) + memory[src_ptr] = 1 + memory.add_relocation_rule(src_ptr=src_ptr, dest_ptr=relocation_target) + memory[relocation_target] = 2 + with pytest.raises( + InconsistentMemoryError, + match=f"Inconsistent memory assignment at address {relocation_target}. 1 != 2.", + ): + memory.relocate_memory() diff --git a/src/starkware/cairo/lang/vm/vm_core.py b/src/starkware/cairo/lang/vm/vm_core.py index 28eef80f..c8235c36 100644 --- a/src/starkware/cairo/lang/vm/vm_core.py +++ b/src/starkware/cairo/lang/vm/vm_core.py @@ -206,8 +206,11 @@ def deduce_op0( (instruction.res is Instruction.Res.MUL) and isinstance(dst, int) and isinstance(op1, int) - and op1 != 0 ): + assert ( + op1 != 0 + ), f"Cannot deduce operand in '0 = ? * {dst}' (possibly due to division by 0)." + return div_mod(dst, op1, self.prime), dst return None, None diff --git a/src/starkware/cairo/lang/vm/vm_test.py b/src/starkware/cairo/lang/vm/vm_test.py index 35863310..9e642693 100644 --- a/src/starkware/cairo/lang/vm/vm_test.py +++ b/src/starkware/cairo/lang/vm/vm_test.py @@ -685,13 +685,31 @@ def test_invalid_instruction(): assert str(exc_info.value) == ( """\ :2:1: Error at pc=0:10: -Unsupported instruction. +Unsupported instruction: 0x1000000000000000c. dw -1; ^***^\ """ ) +def test_div_by_zero(): + code = """ +tempvar zero = 0; +tempvar res = zero / zero; +""" + with pytest.raises(VmException) as exc_info: + run_single(code, 2) + + assert str(exc_info.value) == ( + """\ +:3:15: Error at pc=0:12: +Cannot deduce operand in '0 = ? * 0' (possibly due to division by 0). +tempvar res = zero / zero; + ^*********^\ +""" + ) + + def test_call_wrong_operands(): code = """ call rel 0; diff --git a/src/starkware/cairo/sharp/BUILD b/src/starkware/cairo/sharp/BUILD index 9941bdef..f59a3b53 100644 --- a/src/starkware/cairo/sharp/BUILD +++ b/src/starkware/cairo/sharp/BUILD @@ -13,7 +13,11 @@ pytest_test( ], visibility = ["//visibility:public"], deps = [ - "sharp_client_lib", + ":sharp_client_lib", + "//src/starkware/cairo/bootloaders:cairo_bootloader_fact_topology_lib", + "//src/starkware/cairo/bootloaders:cairo_bootloader_generate_fact_lib", + "//src/starkware/python:starkware_python_utils_lib", + requirement("urllib3"), ], ) diff --git a/src/starkware/cairo/sharp/sharp_client.py b/src/starkware/cairo/sharp/sharp_client.py index 3c4708f9..4f356516 100755 --- a/src/starkware/cairo/sharp/sharp_client.py +++ b/src/starkware/cairo/sharp/sharp_client.py @@ -95,7 +95,7 @@ def get_fact(self, cairo_pie: CairoPie) -> str: The verification is trust worthy when this fact is registered on the Verifier Fact-Registry. """ - program_hash = compute_program_hash_chain(cairo_pie.program) + program_hash = compute_program_hash_chain(program=cairo_pie.program, use_poseidon=False) return get_cairo_pie_fact_info(cairo_pie, program_hash).fact def fact_registered(self, fact: str) -> bool: diff --git a/src/starkware/cairo/sharp/sharp_client_test.py b/src/starkware/cairo/sharp/sharp_client_test.py index 8d90c28a..d5badf1c 100644 --- a/src/starkware/cairo/sharp/sharp_client_test.py +++ b/src/starkware/cairo/sharp/sharp_client_test.py @@ -68,7 +68,7 @@ def __init__(self, program: str, output: str): ) monkeypatch.setattr( - sharp_client, "compute_program_hash_chain", lambda program: f"hash({program})" + sharp_client, "compute_program_hash_chain", lambda program, use_poseidon: f"hash({program})" ) monkeypatch.setattr( diff --git a/src/starkware/cairo/stark_verifier/air/BUILD b/src/starkware/cairo/stark_verifier/air/BUILD index 90251c89..22ccfa32 100644 --- a/src/starkware/cairo/stark_verifier/air/BUILD +++ b/src/starkware/cairo/stark_verifier/air/BUILD @@ -1,6 +1,34 @@ load("//bazel_utils:python.bzl", "pytest_test") load("//src/starkware/cairo/lang:cairo_rules.bzl", "cairo_library") +pytest_test( + name = "starkware_cairo_stark_verifier_air_public_input_test", + srcs = [ + "public_input_test.py", + ], + data = [ + "example_expected.json", + "example_proof.json", + "//src/starkware/cairo/stark_verifier/air:dynamic_layout_proof.json", + "//src/starkware/cairo/stark_verifier/core:air_interface.cairo", + "//src/starkware/cairo/stark_verifier/core:channel.cairo", + "//src/starkware/cairo/stark_verifier/core:domains.cairo", + "//src/starkware/cairo/stark_verifier/core:table_commitment.cairo", + "//src/starkware/cairo/stark_verifier/core:vector_commitment.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + ":python", + "//src/starkware/cairo/common:cairo_common_lib", + "//src/starkware/cairo/common:cairo_common_validate_utils_lib", + "//src/starkware/cairo/common:cairo_function_runner_lib", + "//src/starkware/cairo/lang:cairo_constants_lib", + "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/python:starkware_python_utils_lib", + ], +) + py_library( name = "starkware_cairo_stark_verifier_air_test_base_lib", srcs = [ @@ -61,6 +89,7 @@ py_library( "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/cairo/stark_verifier/core:supported_proof_params", "//src/starkware/python:starkware_python_utils_lib", ], ) diff --git a/src/starkware/cairo/stark_verifier/air/dynamic_layout_proof.json b/src/starkware/cairo/stark_verifier/air/dynamic_layout_proof.json index 3616e920..63f070f8 100644 --- a/src/starkware/cairo/stark_verifier/air/dynamic_layout_proof.json +++ b/src/starkware/cairo/stark_verifier/air/dynamic_layout_proof.json @@ -2,1100 +2,345 @@ "annotations": [ "title cpu air Proof Protocol", "", - "P->V[0:32]: /cpu air/STARK/Original/Commit on Trace: Commitment: Hash(0x105b4d645a8a6d013e42be28f028a9366930d6d1780c7a1a0542a97c545eb15)", - "V->P: /cpu air/STARK/Interaction: Interaction element #0: Field Element(0x141e9a4948f4de216dd16ee3e63542aea20eb90ce9acc7ac03cd49eb4b30ac2)", - "V->P: /cpu air/STARK/Interaction: Interaction element #1: Field Element(0x49cece47810506a074cc5bc7ae391574b4f639d095192df851b7415f673ccf8)", - "V->P: /cpu air/STARK/Interaction: Interaction element #2: Field Element(0x6f51121d087f265c6544f3dc24e41b2a7ad4baf0beb1a4ac2a35b5c54880402)", - "V->P: /cpu air/STARK/Interaction: Interaction element #3: Field Element(0xa02ad59a5e4fc325b81151a338abfb6c154f14ed4cb8fe53324c2fdf768500)", - "V->P: /cpu air/STARK/Interaction: Interaction element #4: Field Element(0x506862b9d95668e5533828419a5fcf660fbec5a9f62298bf2ced35113cde481)", - "V->P: /cpu air/STARK/Interaction: Interaction element #5: Field Element(0x3d4413cf925ffd3619a8c71939d1ee3a5d8e0a13312981e57276ed0cefe3c20)", - "P->V[32:64]: /cpu air/STARK/Interaction/Commit on Trace: Commitment: Hash(0x2b1c30457e63e7340dccd91199f104f3e32eb540284340db1a767cbb0be179c)", - "V->P: /cpu air/STARK/Original: Constraint polynomial random element: Field Element(0x42d8a82e6956099de4913382ff7d3f9f3d62aa0023d654a7e3b54c4813a2de)", - "P->V[64:96]: /cpu air/STARK/Out Of Domain Sampling/Commit on Trace: Commitment: Hash(0x424fb96aac353a3a61417b62aa50b57f22f78b37c7befbf069173842fbc3c2c)", - "V->P: /cpu air/STARK/Out Of Domain Sampling/OODS values: Evaluation point: Field Element(0xfda59c91c91da530640d8ac3d98d4732918f0a242addebc67d851a64b1f582)", - "P->V[96:128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 0: Field Element(0x5b024167725850fb86809edd5c91a2d7f80e9861f7db86f2103e758d717d634)", - "P->V[128:160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 1: Field Element(0x6398bb108c161283a725b84cf0239d2f7872c824acc9bb0e2d136840b564c63)", - "P->V[160:192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 2: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[192:224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 3: Field Element(0x357d07010e1f94e0584b0ec6a553072b1e587c45e70356fa1c0aed07529b400)", - "P->V[224:256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 4: Field Element(0x1d7ed12d6f47ae422edaa207e3b6f1dfb4844b10d9c853d3587823a0458d534)", - "P->V[256:288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 5: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[288:320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 6: Field Element(0x304dde606d5fc1623da301c756ea5d0d54db0f94f88f9cec9023e2e66fd69dc)", - "P->V[320:352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 7: Field Element(0x24e21fe8839958c5c131c0e09713b21fba040c2c5c73f46a7a4afc26389b4ef)", - "P->V[352:384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 8: Field Element(0xfb5a455962fc796afd84179803f89157b6e92d2d5c94d330410c7892742264)", - "P->V[384:416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 9: Field Element(0x2831c153b9e66105a5af694d27bc305e03e9af5dfbc1e011483011f37db5cac)", - "P->V[416:448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 10: Field Element(0x24e21fe8839958c5c131c0e09713b21fba040c2c5c73f46a7a4afc26389b4ef)", - "P->V[448:480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 11: Field Element(0xfb5a455962fc796afd84179803f89157b6e92d2d5c94d330410c7892742264)", - "P->V[480:512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 12: Field Element(0x2831c153b9e66105a5af694d27bc305e03e9af5dfbc1e011483011f37db5cac)", - "P->V[512:544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 13: Field Element(0x7499aaeabc114c24f601dafa959775936a072db9d6422e6a0fe698e6899974b)", - "P->V[544:576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 14: Field Element(0x7499aaeabc114c24f601dafa959775936a072db9d6422e6a0fe698e6899974b)", - "P->V[576:608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 15: Field Element(0x53a33174bff7aa3f3434eebcb649cb730bd45cb50acd7bbc907f44024dd2370)", - "P->V[608:640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 16: Field Element(0x206f32fc0ce1c6e2015ff0fbd5803b0f9ef598291bb3e8ed93bc2ad4849835e)", - "P->V[640:672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 17: Field Element(0x18180e6eabb81ec0d971061f5dbea05faae0c794c4d9a77072da2d4e9c2c84c)", - "P->V[672:704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 18: Field Element(0x53a33174bff7aa3f3434eebcb649cb730bd45cb50acd7bbc907f44024dd2370)", - "P->V[704:736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 19: Field Element(0x3858b2cd3962a2bc596abe3000608a4f3bd471acaee0a25c82e137d689fea6e)", - "P->V[736:768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 20: Field Element(0x3858b2cd3962a2bc596abe3000608a4f3bd471acaee0a25c82e137d689fea6e)", - "P->V[768:800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 21: Field Element(0x206f32fc0ce1c6e2015ff0fbd5803b0f9ef598291bb3e8ed93bc2ad4849835e)", - "P->V[800:832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 22: Field Element(0x1e9d3d92961acb097303118bfe20ef54e3407bb1a26cc8f01ed65a3a3d51ef7)", - "P->V[832:864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 23: Field Element(0x168c62e5ab20e683a849cee320d70a97ef3a45018c90d6672684de34e32152c)", - "P->V[864:896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 24: Field Element(0x168c62e5ab20e683a849cee320d70a97ef3a45018c90d6672684de34e32152c)", - "P->V[896:928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 25: Field Element(0x4203251b3a6765d59fa3fb1998170643a28088c6f86bde4217e09c2822d5458)", - "P->V[928:960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 26: Field Element(0x746aaf1d3d624f92f94e0afc0f6b8a20462ede7582d80c923202dcacef22baa)", - "P->V[960:992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 27: Field Element(0x3e46b9274ec98734e24b66651e33c43139207c98c13334d80986cf3e9a73120)", - "P->V[992:1024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 28: Field Element(0x79a15396cc3e1183793e0967148c44d7eeb56ce944db6550e6a7c273ccce455)", - "P->V[1024:1056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 29: Field Element(0x69655964ff3c3d3ee20fe3a99409650406ff722caecf409a1d5cc52561a1058)", - "P->V[1056:1088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 30: Field Element(0x304dde606d5fc1623da301c756ea5d0d54db0f94f88f9cec9023e2e66fd69dc)", - "P->V[1088:1120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 31: Field Element(0x35ea26bd5f8506ba38788b01c1b5a561e2f8f261b089762f7b711f7be415b7f)", - "P->V[1120:1152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 32: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[1152:1184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 33: Field Element(0x7f7770273b73287f5324c9a4f5cd25991a6f3275a9e6f362fa83c3cd166effc)", - "P->V[1184:1216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 34: Field Element(0x49c49556807d4783b7766535b8556676d3ec8be10a8da32c9b3ff0924bc615e)", - "P->V[1216:1248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 35: Field Element(0x3d837078e97eed19f8b6e7ed88c396fedf8b9387b4d7ca3ab3f3dd97f63850e)", - "P->V[1248:1280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 36: Field Element(0x4f09a5e94477f7243a744ffd7c55118096035cd2db5929b292bab9c09dce7c4)", - "P->V[1280:1312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 37: Field Element(0x7dfa79c19e28902420781b311c1a2a20458127514c0f4f7e13b06e26d61c416)", - "P->V[1312:1344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 38: Field Element(0x46020723892473af9ade4bb9e3902faab89f0a474c1dfe7d5a0d34537caa38)", - "P->V[1344:1376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 39: Field Element(0x543914170a9fa33336a3b093d8b237a70c158e21bc78d718e61922b379dec4b)", - "P->V[1376:1408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 40: Field Element(0x776ddbd6d566672dd2a3e57cc5d9de54b8fd84b8cae6851dab0d12ad113cf09)", - "P->V[1408:1440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 41: Field Element(0x3eafccdf41398fb077d3d9a4e63ef94ec4dacaa8e0f038573ea3eba72af5b)", - "P->V[1440:1472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 42: Field Element(0x18180e6eabb81ec0d971061f5dbea05faae0c794c4d9a77072da2d4e9c2c84c)", - "P->V[1472:1504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 43: Field Element(0x3ecf9b5e2a073d26c03e99927c17a537af5fcd940e5c3c521d836459df78bd4)", - "P->V[1504:1536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 44: Field Element(0x3ecf9b5e2a073d26c03e99927c17a537af5fcd940e5c3c521d836459df78bd4)", - "P->V[1536:1568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 45: Field Element(0x1e9d3d92961acb097303118bfe20ef54e3407bb1a26cc8f01ed65a3a3d51ef7)", - "P->V[1568:1600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 46: Field Element(0xaf903ffd159cd4d81aeee8c0e64faab15289d5ed0aa49ba3699be209e9d176)", - "P->V[1600:1632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 47: Field Element(0x4203251b3a6765d59fa3fb1998170643a28088c6f86bde4217e09c2822d5458)", - "P->V[1632:1664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 48: Field Element(0x41fdb69ab601326eebbf379427297b2ac5c19f32ca9ac0909f0fd92ea5c5e4f)", - "P->V[1664:1696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 49: Field Element(0x15b89bd7d39c6750b41c637ff93df284000f21418bdc4cf717d5a4901b1d6be)", - "P->V[1696:1728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 50: Field Element(0x4257bd3e6a91398f02f2552262cb907470fa991f304ce2cdf37651d83dab7d)", - "P->V[1728:1760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 51: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[1760:1792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 52: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[1792:1824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 53: Field Element(0x31f8e8c31f2329062797c13363cdd31d400cd4409b49763b598ad477cf6e1b5)", - "P->V[1824:1856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 54: Field Element(0x7f1f23c94da6e0753fd56aaa42fbe9f2f255d5445d34369107f8f8aa707028d)", - "P->V[1856:1888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 55: Field Element(0x5ba0ffce5e6aec90bf72135ddb7f2e2fc81ea194e6515062ef754476a38a56)", - "P->V[1888:1920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 56: Field Element(0x784f3239d6e7365a1c66db5fede1f2a7854682ba3cb092b75e6d9f2ab47cba0)", - "P->V[1920:1952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 57: Field Element(0x5ba0ffce5e6aec90bf72135ddb7f2e2fc81ea194e6515062ef754476a38a56)", - "P->V[1952:1984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 58: Field Element(0x784f3239d6e7365a1c66db5fede1f2a7854682ba3cb092b75e6d9f2ab47cba0)", - "P->V[1984:2016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 59: Field Element(0x13ab6309e9f05a2c668eb07da2141b467dc1a4e850b7b2dca8bd065f4daaba9)", - "P->V[2016:2048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 60: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[2048:2080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 61: Field Element(0x11e3e7c4538cf8fffb0e7d10ab9d83aa4df5d2d08433a987b00e1b250dca0a8)", - "P->V[2080:2112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 62: Field Element(0x66f48462a4459a6f204ae015baedecaacc4509170745356be1f8dd0198f871f)", - "P->V[2112:2144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 63: Field Element(0x310066cec92d622c25a6e0688deb89ec26689b085fabad9bba48080e68e3a13)", - "P->V[2144:2176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 64: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[2176:2208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 65: Field Element(0x5428d7fcc2bbb9cfc05a460e22d601eeb90389ff95f54b57730a98aaebe3867)", - "P->V[2208:2240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 66: Field Element(0x5a7b2cc1a8aa345dd46c1d5fc722b6d3dff35485f135e92ea8908cc1337a71)", - "P->V[2240:2272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 67: Field Element(0x3e0523796101541cfb8f0081330b1e3de010c357cdf1a707e5a8bb823ab4923)", - "P->V[2272:2304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 68: Field Element(0x285cdf1108f5b4e718b990410d77e2a08893cd164ee8e74bc8aa5f0b939ee28)", - "P->V[2304:2336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 69: Field Element(0x2db9ce1ab60ac92e48ed188632aace48c6536c4fc77b9bd5b2594afc726553f)", - "P->V[2336:2368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 70: Field Element(0x3897d8b7953d57a729d4380e42c2736c140fe2e92a8615413cd5bb40fe8d12)", - "P->V[2368:2400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 71: Field Element(0x2eb48566466d59150abfbca8168d73227ec6e67d76dc2a786b914ccc0bcca35)", - "P->V[2400:2432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 72: Field Element(0xe33bf1ec5b4a4f06de6dc079588de88c060e970327745fdb93b5b019dddbef)", - "P->V[2432:2464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 73: Field Element(0x4031e40ab233d9c2782b15f16483ee5dc281192476664997fdca7856023c664)", - "P->V[2464:2496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 74: Field Element(0x213425ad9955c4fa9ee407602352d7c93cbfb48e8fea1f60cbdcfaf3cabdc92)", - "P->V[2496:2528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 75: Field Element(0x2fc72831d4e727737f0c6582c2b95fdc1536e90c9d5be040e792ff02082ef6e)", - "P->V[2528:2560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 76: Field Element(0x1759472f7f87c00f22b99772d231c4fdc62e374fa06f14fedae2a9d47ffede0)", - "P->V[2560:2592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 77: Field Element(0x1749d2790fb25edda8122d904252934cad99f538c71407369228fdc07bb5a66)", - "P->V[2592:2624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 78: Field Element(0x6234ef9b1ffc6c036a61b3fa13a71c553c68eb5fe2745f9945fd48e1d3af248)", - "P->V[2624:2656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 79: Field Element(0x3e59f653b013f2229aaa356dfd3634a90ea2f90fe3502895e2031eb903a58be)", - "P->V[2656:2688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 80: Field Element(0x53800e29efbd448b3fb9b224e532bc5dc5633321f4ae24e5e4ba7f198014d1f)", - "P->V[2688:2720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 81: Field Element(0x15bcd9483b216415dec76a352911fe94c2af59233af5b4074cf0863d88e4679)", - "P->V[2720:2752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 82: Field Element(0x36a578e7fb86d4fa0f4656136f1e25a956f352557a2281a382925219c0cb389)", - "P->V[2752:2784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 83: Field Element(0x1b22c1c3e0124fc765bd8798e9de6d8010c49700162a81668e89bdad5f00562)", - "P->V[2784:2816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 84: Field Element(0x1976ae9ddf97bf2e9ac7d1db980668c2d35304c1c16990151a7c72dc22c2ca4)", - "P->V[2816:2848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 85: Field Element(0x568c5e3246136555db0365b72b02319c5ef92f8b379050680830fb79ee58c8)", - "P->V[2848:2880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 86: Field Element(0x332a25baa815c12cc86f00df02e0dcca6040f21807475456460cafb83512fb9)", - "P->V[2880:2912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 87: Field Element(0x229c2f933f4e92ba0576b70a65bc8231514481d5dc7bc66199f36776c8fd113)", - "P->V[2912:2944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 88: Field Element(0x6b4879301dd95dabf09faebd10a17e6605798e5673a3217a296161390c2f8b8)", - "P->V[2944:2976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 89: Field Element(0x6d0e6fdf9c294802c9db8d0fb3a35801c9a0f8fc285c2929386f4ffddd08aee)", - "P->V[2976:3008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 90: Field Element(0x4ce76a3343b6d194433d94bcb384ea376db836a1b95a37e886bdb0cdca7e56d)", - "P->V[3008:3040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 91: Field Element(0x263115a592500dea7c03ed60918306c43e89b0686fd51c21c6f31f1ab9a4d07)", - "P->V[3040:3072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 92: Field Element(0x3bfe4205d27dd6f1f71cce9ccdfaeeb59d1c45489913ed436326aaa888767e)", - "P->V[3072:3104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 93: Field Element(0x1644bb93350147300ac8c42640ad1d00c41d92e4d5de1415de7853da56d3081)", - "P->V[3104:3136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 94: Field Element(0x38047ee9d2b95f2e39d791f251c9aeead59d0e64a57482d6bf24c8a709d4d96)", - "P->V[3136:3168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 95: Field Element(0x4d5affa15b51c326c17cff2f8460e552f1528c7b5082332e30774a357561687)", - "P->V[3168:3200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 96: Field Element(0x7138855fbd57cdc82beadff3688e0a201ea4968420649f31085b2474874cdd0)", - "P->V[3200:3232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 97: Field Element(0x583de54e3616881e0fe69ba3627369fc7ee3fb6b5142d97d777d0ee445c5686)", - "P->V[3232:3264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 98: Field Element(0x22225c9b63c87eecf90ac485379e43355fb7de35f9157913d15ab0adf38c9c2)", - "P->V[3264:3296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 99: Field Element(0x5871d032c6fc364fb3ff055e12eaa35d71bf0241c3e104811189933517fa2af)", - "P->V[3296:3328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 100: Field Element(0x18277a528910ba38b2b7271be0308bf03ca5b0950fde382e5be3618dd756dd5)", - "P->V[3328:3360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 101: Field Element(0x20db445b35fa469f2ced963a7492ad71467078c2262bdfd915595bb2b99c8d9)", - "P->V[3360:3392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 102: Field Element(0x7f86c3cc6a08ad3798d21b76df4b63b204593ed6bb935e6ac1d9e23fa72e70c)", - "P->V[3392:3424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 103: Field Element(0x62bde69d6376b8c7355be5fbb5d7411490e88e55afba923647272f65173d4f1)", - "P->V[3424:3456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 104: Field Element(0x5569990ebda96a278b4b4235d2f3a4fb5b3f58b876e88568e14350ed6801d4b)", - "P->V[3456:3488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 105: Field Element(0x18a6c161012b4d1055f6d26e38934c196f5c77732ec949418b2f511b502bfd7)", - "P->V[3488:3520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 106: Field Element(0x318fb59ba247742ee44ba581784973204ac63fa57aa2ab4f90bdb11a85c19e1)", - "P->V[3520:3552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 107: Field Element(0x6744a8ae463114900b1c64ecfefee967537ae10103f0f0a908ee81e4e76247e)", - "P->V[3552:3584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 108: Field Element(0x5f5c8014c6d6b49607bee006c3589443544669f72cc3f0ed79d3d2ce9d68235)", - "P->V[3584:3616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 109: Field Element(0x7868cee5cd09499dbc8089625368f1ff022a95697fe8aa4bb2949d13093c442)", - "P->V[3616:3648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 110: Field Element(0x57450cfa6e16b38909221f76ff4099ff58ee49e54c05e7cff3569b28332cf4c)", - "P->V[3648:3680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 111: Field Element(0x30efe99a2478e49a75b8e5beeeee9a686de355bc1d48ff62154331e9ec162f5)", - "P->V[3680:3712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 112: Field Element(0x622263284dd5558f6024b02648d7dcb2806b45babd41c75832714b56e36c031)", - "P->V[3712:3744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 113: Field Element(0x73261417c6cd0e8691290a55ac6020f9e7c2b3755e4f7df4bc871ba7dd8c936)", - "P->V[3744:3776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 114: Field Element(0x5cd97e396d810572ff31a887d897bd0768a51204a4b3a09381bc2e6e15070ea)", - "P->V[3776:3808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 115: Field Element(0x7c1081c5fa27b12ff690ea870ee8dcfd75ca3c3480df52b106a8a8f9d40d8fa)", - "P->V[3808:3840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 116: Field Element(0x642cd731a2158fc12627d29ab3515f3b53676700a76b18fa776c4e89e1aa5d9)", - "P->V[3840:3872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 117: Field Element(0x500d5595f0413ce8b768bbae80eb84a35b02452e652f508f891018ac12fac7)", - "P->V[3872:3904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 118: Field Element(0x443114fcff4ddc6d12e6568b7a7d372d02fa9d86f622ed5bf7f609b20d22c5e)", - "P->V[3904:3936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 119: Field Element(0x61e67ee827f1796906bf1b3a648b8715ab4b17c3718285231621e5855453ce)", - "P->V[3936:3968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 120: Field Element(0x1053a1db9676b6d4f50b28fe8ef0b4e00ca2cc3a55628027aaa1880d012298)", - "P->V[3968:4000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 121: Field Element(0x679dea179357ed96cca61114f7c6d07eac04356b7433555ca5a5992e1bb90df)", - "P->V[4000:4032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 122: Field Element(0x385903c7f46d1b5489856c107240e9debb2810bad3eb6d9167fbc992e6551ab)", - "P->V[4032:4064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 123: Field Element(0x28497f84df3dc60692329f0a0e1297459209cae5a5f90c381c77fa3b34fd5b2)", - "P->V[4064:4096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 124: Field Element(0x6ebd5730825754553ef5ba2e22dbc7c8828ca7fea198934cf7bb70efcc53882)", - "P->V[4096:4128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 125: Field Element(0x49f626992d2f9f6fb75c0fcdd56db3066ebd1edc1b49214e507b59e45a809d1)", - "P->V[4128:4160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 126: Field Element(0x3556db9a994890e11537b57ce8ac417762afb94b3cbd3bf29d814e5038a0685)", - "P->V[4160:4192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 127: Field Element(0x61eae1eb1cae61e7c41d0914fc3b5850f86da135163dc4b44a98d7168e7b6e9)", - "P->V[4192:4224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 128: Field Element(0x57132b6d360b8429805ce7e7367fa1d852aa6548a74acd2b84fbd2173e69cb1)", - "P->V[4224:4256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 129: Field Element(0x1c2bd6aa680f0ff1ad8b8b5066557f95886b709d61c9879efa2d9f594bf0e4)", - "P->V[4256:4288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 130: Field Element(0x314f194aee345d366701de62c46e74b5e8c33e48ac5587cb942dc8286fb939d)", - "P->V[4288:4320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 131: Field Element(0x2e0c9aea4a4a6a47ac2fa9111562675084aa8df24def47161c71385caf906b8)", - "P->V[4320:4352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 132: Field Element(0x33d8c17ccde37c115863a7d9adb3db2b5abbfe19bc81256d53e8248646a7a5f)", - "P->V[4352:4384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 133: Field Element(0x7431ce56180be0d3494d93407147b11990f4af67a0ad31b12e58b7b22d2274c)", - "P->V[4384:4416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 134: Field Element(0x3c8c96cdcfb3bcdffe6ac1d544b0ba8e6b2dd8e14a695157086509daeb36bb)", - "P->V[4416:4448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 135: Field Element(0x776759c1aece3b4458952a3848d2fe3d9bcb62ef31587edce593f5fa147cf5c)", - "P->V[4448:4480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 136: Field Element(0x53e9100003581d7c6c51bb992dfb7c3e7d6e9ba6623eefed0408dbfb676b69e)", - "P->V[4480:4512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 137: Field Element(0xe9b89464e40eddd4c28a1cd7b6b2c4115e9fb1974d6406b3f47f94cd6bcbb4)", - "P->V[4512:4544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 138: Field Element(0x7b06a84982b112515bded65ef2e068230b466d58f08ccd326b3f9c16cd59185)", - "P->V[4544:4576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 139: Field Element(0x11807dc0c2a84d773f9e8b5ca36644448287062f668a9117f90725b29d4744f)", - "P->V[4576:4608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 140: Field Element(0x3cc514f1df5994f3a57aec27964360071d3de0b6bd13afb8847e759a4b34f39)", - "P->V[4608:4640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 141: Field Element(0x2a14dba537d2b127661e51ef2e511b9d90636bbac682c114fc315fd20971ef)", - "P->V[4640:4672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 142: Field Element(0x7f4b2480acd0155da423913c3186fe71f0f483ce5efc56ab3a50c660a3625a9)", - "P->V[4672:4704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 143: Field Element(0x4be603f3470d409cddf825a134e3c019f547dc829bc4b0bdef7f0b240ffee39)", - "P->V[4704:4736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 144: Field Element(0x7f4b2480acd0155da423913c3186fe71f0f483ce5efc56ab3a50c660a3625a9)", - "P->V[4736:4768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 145: Field Element(0x24f290f369a78e2792fb2d73b477c6ea739e851861831eb3813d9a465704a91)", - "P->V[4768:4800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 146: Field Element(0x52ff6a82a31001884dbe583137a7e5d523de95ff8e6855e6cda9a4752675dad)", - "P->V[4800:4832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 147: Field Element(0x2b235bfe24fddb799c06dceeb9790d04b4174661986f93140381091f6dbc273)", - "P->V[4832:4864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 148: Field Element(0x10be5274910b664533900e74a6781ea47f4b092e70a65fbdad5176418ea2acf)", - "P->V[4864:4896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 149: Field Element(0x552c89a5124316794ab1a9357e7253970fea6dd57eb455e96088c8fd5195fbe)", - "P->V[4896:4928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 150: Field Element(0x3d22b25a5e7c635ffcb0680e2e51b8537aac290e21323fab3c4d8c2a10f072b)", - "P->V[4928:4960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 151: Field Element(0x198bee346ee50c1cb8a99d07ae31695a11267d444f862bf5a820fbe41bcba79)", - "P->V[4960:4992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 152: Field Element(0x33ca332dc9326e4b90ea3fe2b3dd1de7d9acbcb39ba13abe5ae3082f9b37e1b)", - "P->V[4992:5024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 153: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[5024:5056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 154: Field Element(0x164599dc8431a003b65243f5e16794bcfd452be5fe6102d7cc92ca3510300a4)", - "P->V[5056:5088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 155: Field Element(0x4af1c9f6e47baef5cf77639197f128dbd083f5b391f4416931fe79ac6b92dfd)", - "P->V[5088:5120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 156: Field Element(0x720121dbfd68dd7acccefc8d1cc864f04180c331b623069bcb61687fbb78f94)", - "P->V[5120:5152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 157: Field Element(0x2e730a14d737b6f1a64d48075518a2c3aa93ccda5b742eef4eb98da916bd94f)", - "P->V[5152:5184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 158: Field Element(0xf951ab4973dce3aad6219f698c5556b4165ad18d9122745b2b2f3f2b0d47d6)", - "P->V[5184:5216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 159: Field Element(0x69b3f5064af84f9c6c0e8fe7dfad4e62b885fa42daa84de6c7c19cd50f92373)", - "P->V[5216:5248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 160: Field Element(0x69245edcdb5d669e25644f09912092102359bcfc61613f62c96832e6fc1537a)", - "P->V[5248:5280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 161: Field Element(0x7479b440a8a50b439267f69eeea6ba185e4df4d6e8def05c88d919ab25abfc4)", - "P->V[5280:5312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 162: Field Element(0x32db7ed9540e8e4ae69c30a7e9852ffccfdeff0b3e944ec674f70ecabae5919)", - "P->V[5312:5344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 163: Field Element(0x39108b73ba4ce5c035332947f96ec79e32fd38fe1a24fbe083a6b61698c875c)", - "P->V[5344:5376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 164: Field Element(0xb2001ec2126a564fae5dc6ece8fca04ccdbe7d01dc2a47b9e69bb70aad8057)", - "P->V[5376:5408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 165: Field Element(0xae1b4c6910cc14ead69f4d4c4b80600f8fb55804339b98190d2540b40ec806)", - "P->V[5408:5440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 166: Field Element(0x2081146fc57ae7b9b112d0c88f3272a6c8bee722c43a5a48605b726a6dcd80b)", - "P->V[5440:5472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 167: Field Element(0x1bd08581f6bcae12c17126f4ce8395d3c3a0608b9e96388a70ceeb12f5abf91)", - "P->V[5472:5504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 168: Field Element(0x6dcd314e5bdd2f882d98f5cd9144a28590fab7605885d4c2dd51d00b343edc4)", - "P->V[5504:5536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 169: Field Element(0x4fd89255739593ac72c098a03eb143712c88d7b192bfbc24d6f3a49a1531772)", - "P->V[5536:5568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 170: Field Element(0x7301dc2d456413d4e1adc6654e78ebd2ad291cca01afcc37e3eb203a33f5025)", - "P->V[5568:5600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 171: Field Element(0x14963e68007482a5054db48cabcb747e976ab9bd58a07f5219d74e6f5e39de)", - "P->V[5600:5632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 172: Field Element(0x16ffa7a57970ef6888197605cfefd0bce9d57f5a876cc509820e74797b449fb)", - "P->V[5632:5664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 173: Field Element(0x7e3b1a411f0fe336e5a0010e81901811103f3c77f73ca1f3046126997dc668d)", - "P->V[5664:5696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 174: Field Element(0x1f2b01c2d91879c1e5f317056cdcb57110bb79fc36d22effa4b77df4ec153b)", - "P->V[5696:5728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 175: Field Element(0x6736946b1dae36fa215b3ff18e257b6495afbe41b0c68c1cf74dcc793cda512)", - "P->V[5728:5760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 176: Field Element(0x68f388d639281a0a46615993701e217e7856fa20d03898f93e8bcd5069e6bda)", - "P->V[5760:5792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 177: Field Element(0x7d719b92296aa05376f76c69ca5a336966f511c43de792bf0a6f52a73b20b7a)", - "P->V[5792:5824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 178: Field Element(0x308d9957ecd183600fe5003dcf4197f5ca6cb32215f59a852107e43c0a0cf26)", - "P->V[5824:5856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 179: Field Element(0xbbc455f722decfb5354dad3ca910b22c4f3dbcd0a8eac42840b58ea7bf3aaa)", - "P->V[5856:5888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 180: Field Element(0x57f0eb53779dad4604d5af08aa875547a04c7749660672d27cbdc6c6e09608b)", - "P->V[5888:5920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 181: Field Element(0x70b6d5c039f094f9e701bd9092b31bc0ba9c31e10bc7b4db431ca19e59f9c7b)", - "P->V[5920:5952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 182: Field Element(0xdf956916d2006b496fc793a2b3c9becc1c1535f137faca9ce797d2240e1ee5)", - "P->V[5952:5984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 183: Field Element(0x2e97891cf9b2a154a07b2fcc3b40ff78a56e1dca93ffcbd7c1b231d22f528a8)", - "P->V[5984:6016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 184: Field Element(0x4b8f01493373c6b118bd9f955cd915c23a1bc2ecd51a792ed98d454048deb9d)", - "P->V[6016:6048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 185: Field Element(0x4e6afc27691532ce4b222c4c1a8f02f72e364276d3a10cc1d00df844b62a089)", - "P->V[6048:6080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 186: Field Element(0x31707eaaa28a2cc74bdbaa1713f363e07fcc301383eec743dfda776fa1a9201)", - "P->V[6080:6112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 187: Field Element(0x4acecd5c261ecf2cdeb7ab03beac81a3321af204d31e5f1d907d3f8130a0ffc)", - "P->V[6112:6144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 188: Field Element(0x4acecd5c261ecf2cdeb7ab03beac81a3321af204d31e5f1d907d3f8130a0ffc)", - "P->V[6144:6176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 189: Field Element(0x715f0747cf8912dc6e18caeb844371f8c5c0ce6057325db965b55c630112b57)", - "P->V[6176:6208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 190: Field Element(0x5176fd5e83b69f73d3d3c16a3e8a801fc4675a32480ef2da8a47fa4f7d713b6)", - "P->V[6208:6240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 191: Field Element(0x187ea6c99a83dce227659aa3739cd5f158430212f9f4e21755ae37ebdd2331b)", - "P->V[6240:6272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 192: Field Element(0x43a72181ebef1aba2d8adf11992071760e794aa96b975c57b24e58f60d814e6)", - "P->V[6272:6304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 193: Field Element(0x215d666ad5ee1d65e8eccf1d5e591ca046b8e8c144dac9c7cdf2ebcf04b1bb0)", - "P->V[6304:6336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 194: Field Element(0x2e8a388fb68309d283a7cbebecc0bb91b292c00a2ad3c86be7afed94290eba3)", - "P->V[6336:6368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 195: Field Element(0x3fcb317ce1804ea2e54619b1c8c0a911f0b97f6c3edb6df4f873ca1c22c7611)", - "P->V[6368:6400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 196: Field Element(0x5589498bad5ae1c2f53a86ac355e70e234e5a628a2bc401c92f30d1907ac0e0)", - "P->V[6400:6432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 197: Field Element(0x2bc52c30fbad5e14064d7716225581c5515091226a9eb1350502caabc998c98)", - "P->V[6432:6464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 198: Field Element(0x9b74b641d3e7eb9bc080106a2a335a3e8c9882578b989f24ca82085ee95721)", - "P->V[6464:6496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 199: Field Element(0x37198c1a5c0948bb4cfa21f56f42e84883e8b2ef164c343f4fcd4d4eacd84eb)", - "P->V[6496:6528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 200: Field Element(0x3ae0ace58d6bf0b9b69153708de66ab2f330e736b02a3c25d5f25d486bde3bb)", - "P->V[6528:6560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 201: Field Element(0x1ccb4e8ba0920e166c928147cb89c6516ac8018a7f9ba6bf4b7156106f35ef0)", - "P->V[6560:6592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 202: Field Element(0x143476d2a25b694d84a475bb58ac288fd0fd6712f6685c8ecadad131655500b)", - "P->V[6592:6624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 203: Field Element(0x164596bce690ca4a878e566e699405cf7750058ae91a559169ec549ac3fc1d1)", - "P->V[6624:6656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 204: Field Element(0x94c334032202ee6343d7caaf541efbcafea5ee90983ac17201915706de2e5d)", - "P->V[6656:6688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 205: Field Element(0x5d34beb3477ecd463a4c213ae98da12025e52ab948b5a743fff697a389e3fcb)", - "P->V[6688:6720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 206: Field Element(0x573e04996f2c2b561c2f1a2ee69b2a14254ef0f414e82bf236e3ec973505b7e)", - "P->V[6720:6752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 207: Field Element(0x1604ebe6f23cc8ce23a9c5a8f7abb9d12b5741b3fc31f47fb2219101ac93020)", - "P->V[6752:6784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 208: Field Element(0x402feff524cb00a5ac87d32ea537d079a13c8be222a079e14a0390821f23338)", - "P->V[6784:6816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 209: Field Element(0x5a4fcdcb1797ef521f6c03e15bf00cd720a69d58931264dc0f4d5c22621bc53)", - "P->V[6816:6848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 210: Field Element(0x5f100f789db5e76b016e8780a56f05d95b39697ab372ed2b9edca09a37941b9)", - "P->V[6848:6880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 211: Field Element(0x716df58f4c0dd6f3ac9be382a8272a0e35f2cae2a48a09e0f38e6233c291701)", - "P->V[6880:6912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 212: Field Element(0xffcc3978af372e015cad212166fc73eef89e5d2b9523fa6f65bdad97d8669)", - "P->V[6912:6944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 213: Field Element(0x725ec8e90485b39152abc96742c59b14105df427a8c29d64a9321df5b4f6963)", - "P->V[6944:6976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 214: Field Element(0x35000bfadd9806fd528df0433bb06ddd396f92aeae7cb8b7e635e2aed9e2efe)", - "P->V[6976:7008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 215: Field Element(0x15255623b3fb0212da321247f11f09cd4f74b8d8ea3b2358b7c03e8900069b2)", - "P->V[7008:7040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 216: Field Element(0x1ec7c3d0a4bb58ddb99d2890ffe64a4b0057f232c54c5509e0b0ddba81c40af)", - "P->V[7040:7072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 217: Field Element(0x3ea3f9dad7807cb0effb2577d25d7341a02db998d0ee63672b6442cbe6c26e)", - "P->V[7072:7104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 218: Field Element(0x6368932ee3f3f3f3f4d482a404c00788ef9100f93793b05385e22cbd1495c5d)", - "P->V[7104:7136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 219: Field Element(0x8900ee6f7740a1c269e94d4918eb12198f34639d1be47daf61acaffb4e12c3)", - "P->V[7136:7168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 220: Field Element(0x6f2d66db01d7c0dad063feec25c90c3d002894d850cf6dd700ab6b91e638801)", - "P->V[7168:7200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 221: Field Element(0x3d7905dc601b31fcd5b1f0541a8e652ab68fbcaa5a2a125fe14bf4e65c91d2d)", - "P->V[7200:7232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 222: Field Element(0x5966f9fe8ffaaadefede2ae240770f14c184c38bb2622b0d80eeb9d22d1392d)", - "P->V[7232:7264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 223: Field Element(0x4563b1a5b6679756f3e6862efb22144d6b04ae19043c25ec17a31003c9bdf3)", - "P->V[7264:7296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 224: Field Element(0x37338e94abd4e9767912e1be7f7e08c8e8c64b7bf9e31844293ca66ebf3afdb)", - "P->V[7296:7328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 225: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[7328:7360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 226: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[7360:7392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 227: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7392:7424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 228: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7424:7456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 229: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7456:7488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 230: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7488:7520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 231: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7520:7552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 232: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7552:7584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 233: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7584:7616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 234: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7616:7648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 235: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7648:7680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 236: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7680:7712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 237: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7712:7744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 238: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7744:7776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 239: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7776:7808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 240: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7808:7840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 241: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7840:7872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 242: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7872:7904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 243: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7904:7936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 244: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[7936:7968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 245: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[7968:8000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 246: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8000:8032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 247: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8032:8064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 248: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8064:8096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 249: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8096:8128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 250: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8128:8160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 251: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8160:8192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 252: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8192:8224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 253: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8224:8256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 254: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8256:8288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 255: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8288:8320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 256: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8320:8352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 257: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8352:8384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 258: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[8384:8416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 259: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8416:8448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 260: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8448:8480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 261: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8480:8512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 262: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8512:8544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 263: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8544:8576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 264: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8576:8608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 265: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8608:8640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 266: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8640:8672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 267: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8672:8704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 268: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8704:8736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 269: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8736:8768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 270: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8768:8800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 271: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8800:8832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 272: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8832:8864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 273: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8864:8896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 274: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8896:8928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 275: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8928:8960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 276: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8960:8992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 277: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[8992:9024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 278: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9024:9056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 279: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9056:9088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 280: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9088:9120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 281: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9120:9152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 282: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9152:9184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 283: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9184:9216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 284: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9216:9248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 285: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9248:9280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 286: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9280:9312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 287: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9312:9344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 288: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9344:9376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 289: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9376:9408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 290: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9408:9440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 291: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9440:9472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 292: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9472:9504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 293: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9504:9536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 294: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9536:9568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 295: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9568:9600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 296: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9600:9632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 297: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9632:9664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 298: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9664:9696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 299: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9696:9728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 300: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9728:9760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 301: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9760:9792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 302: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9792:9824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 303: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9824:9856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 304: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9856:9888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 305: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9888:9920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 306: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9920:9952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 307: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9952:9984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 308: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[9984:10016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 309: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10016:10048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 310: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10048:10080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 311: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10080:10112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 312: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10112:10144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 313: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10144:10176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 314: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10176:10208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 315: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10208:10240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 316: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10240:10272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 317: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10272:10304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 318: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10304:10336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 319: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10336:10368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 320: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10368:10400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 321: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10400:10432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 322: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10432:10464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 323: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10464:10496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 324: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10496:10528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 325: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10528:10560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 326: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[10560:10592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 327: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10592:10624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 328: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10624:10656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 329: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[10656:10688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 330: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10688:10720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 331: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10720:10752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 332: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10752:10784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 333: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10784:10816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 334: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[10816:10848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 335: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10848:10880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 336: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10880:10912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 337: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[10912:10944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 338: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10944:10976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 339: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[10976:11008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 340: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11008:11040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 341: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11040:11072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 342: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11072:11104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 343: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11104:11136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 344: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11136:11168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 345: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11168:11200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 346: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11200:11232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 347: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11232:11264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 348: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11264:11296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 349: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11296:11328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 350: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11328:11360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 351: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11360:11392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 352: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11392:11424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 353: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11424:11456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 354: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11456:11488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 355: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11488:11520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 356: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11520:11552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 357: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11552:11584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 358: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11584:11616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 359: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11616:11648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 360: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11648:11680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 361: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11680:11712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 362: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11712:11744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 363: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11744:11776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 364: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11776:11808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 365: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11808:11840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 366: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11840:11872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 367: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11872:11904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 368: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11904:11936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 369: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11936:11968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 370: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[11968:12000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 371: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12000:12032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 372: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12032:12064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 373: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12064:12096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 374: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12096:12128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 375: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12128:12160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 376: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12160:12192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 377: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12192:12224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 378: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12224:12256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 379: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12256:12288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 380: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12288:12320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 381: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12320:12352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 382: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12352:12384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 383: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12384:12416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 384: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12416:12448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 385: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12448:12480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 386: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12480:12512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 387: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12512:12544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 388: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12544:12576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 389: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12576:12608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 390: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12608:12640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 391: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12640:12672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 392: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12672:12704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 393: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12704:12736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 394: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12736:12768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 395: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12768:12800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 396: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12800:12832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 397: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12832:12864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 398: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12864:12896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 399: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[12896:12928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 400: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12928:12960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 401: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12960:12992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 402: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[12992:13024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 403: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13024:13056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 404: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13056:13088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 405: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13088:13120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 406: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[13120:13152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 407: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13152:13184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 408: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13184:13216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 409: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13216:13248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 410: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13248:13280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 411: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13280:13312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 412: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13312:13344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 413: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[13344:13376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 414: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13376:13408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 415: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13408:13440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 416: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13440:13472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 417: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13472:13504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 418: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13504:13536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 419: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13536:13568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 420: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[13568:13600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 421: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13600:13632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 422: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13632:13664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 423: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13664:13696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 424: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13696:13728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 425: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13728:13760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 426: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13760:13792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 427: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[13792:13824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 428: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13824:13856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 429: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13856:13888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 430: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13888:13920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 431: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13920:13952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 432: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13952:13984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 433: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[13984:14016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 434: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14016:14048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 435: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14048:14080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 436: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14080:14112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 437: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14112:14144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 438: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14144:14176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 439: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14176:14208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 440: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14208:14240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 441: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14240:14272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 442: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14272:14304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 443: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14304:14336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 444: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14336:14368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 445: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14368:14400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 446: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14400:14432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 447: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14432:14464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 448: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14464:14496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 449: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14496:14528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 450: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14528:14560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 451: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14560:14592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 452: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14592:14624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 453: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14624:14656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 454: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14656:14688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 455: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14688:14720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 456: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14720:14752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 457: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14752:14784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 458: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14784:14816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 459: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14816:14848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 460: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14848:14880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 461: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14880:14912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 462: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14912:14944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 463: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[14944:14976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 464: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[14976:15008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 465: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15008:15040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 466: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15040:15072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 467: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15072:15104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 468: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[15104:15136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 469: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15136:15168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 470: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15168:15200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 471: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15200:15232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 472: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15232:15264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 473: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15264:15296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 474: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15296:15328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 475: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[15328:15360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 476: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15360:15392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 477: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15392:15424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 478: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15424:15456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 479: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15456:15488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 480: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15488:15520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 481: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15520:15552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 482: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[15552:15584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 483: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15584:15616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 484: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15616:15648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 485: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15648:15680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 486: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15680:15712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 487: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15712:15744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 488: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15744:15776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 489: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[15776:15808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 490: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15808:15840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 491: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15840:15872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 492: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15872:15904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 493: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15904:15936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 494: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15936:15968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 495: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[15968:16000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 496: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16000:16032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 497: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16032:16064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 498: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16064:16096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 499: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16096:16128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 500: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16128:16160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 501: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16160:16192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 502: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16192:16224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 503: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16224:16256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 504: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16256:16288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 505: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16288:16320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 506: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16320:16352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 507: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16352:16384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 508: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16384:16416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 509: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16416:16448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 510: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16448:16480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 511: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16480:16512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 512: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16512:16544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 513: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16544:16576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 514: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16576:16608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 515: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16608:16640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 516: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16640:16672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 517: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16672:16704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 518: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16704:16736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 519: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16736:16768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 520: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16768:16800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 521: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16800:16832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 522: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16832:16864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 523: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16864:16896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 524: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16896:16928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 525: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[16928:16960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 526: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16960:16992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 527: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[16992:17024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 528: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17024:17056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 529: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17056:17088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 530: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17088:17120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 531: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17120:17152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 532: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17152:17184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 533: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17184:17216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 534: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17216:17248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 535: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17248:17280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 536: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17280:17312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 537: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17312:17344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 538: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17344:17376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 539: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17376:17408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 540: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17408:17440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 541: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17440:17472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 542: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17472:17504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 543: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17504:17536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 544: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17536:17568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 545: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17568:17600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 546: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17600:17632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 547: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17632:17664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 548: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17664:17696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 549: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17696:17728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 550: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17728:17760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 551: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17760:17792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 552: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17792:17824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 553: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17824:17856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 554: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17856:17888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 555: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17888:17920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 556: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17920:17952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 557: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[17952:17984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 558: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[17984:18016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 559: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18016:18048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 560: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18048:18080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 561: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18080:18112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 562: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18112:18144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 563: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18144:18176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 564: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[18176:18208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 565: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18208:18240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 566: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18240:18272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 567: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18272:18304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 568: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18304:18336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 569: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18336:18368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 570: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18368:18400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 571: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[18400:18432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 572: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18432:18464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 573: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18464:18496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 574: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18496:18528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 575: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18528:18560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 576: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18560:18592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 577: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18592:18624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 578: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[18624:18656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 579: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18656:18688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 580: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18688:18720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 581: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18720:18752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 582: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18752:18784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 583: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18784:18816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 584: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18816:18848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 585: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[18848:18880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 586: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18880:18912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 587: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18912:18944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 588: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18944:18976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 589: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[18976:19008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 590: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19008:19040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 591: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19040:19072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 592: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19072:19104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 593: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19104:19136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 594: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19136:19168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 595: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19168:19200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 596: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19200:19232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 597: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19232:19264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 598: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19264:19296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 599: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19296:19328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 600: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19328:19360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 601: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19360:19392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 602: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19392:19424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 603: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19424:19456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 604: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19456:19488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 605: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19488:19520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 606: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19520:19552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 607: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19552:19584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 608: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19584:19616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 609: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19616:19648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 610: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19648:19680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 611: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19680:19712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 612: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19712:19744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 613: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19744:19776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 614: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19776:19808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 615: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19808:19840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 616: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19840:19872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 617: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19872:19904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 618: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19904:19936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 619: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[19936:19968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 620: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[19968:20000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 621: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20000:20032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 622: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20032:20064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 623: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20064:20096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 624: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20096:20128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 625: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20128:20160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 626: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[20160:20192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 627: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20192:20224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 628: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20224:20256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 629: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20256:20288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 630: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20288:20320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 631: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20320:20352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 632: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20352:20384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 633: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[20384:20416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 634: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20416:20448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 635: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20448:20480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 636: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20480:20512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 637: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20512:20544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 638: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20544:20576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 639: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20576:20608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 640: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[20608:20640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 641: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20640:20672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 642: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20672:20704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 643: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20704:20736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 644: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20736:20768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 645: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20768:20800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 646: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20800:20832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 647: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20832:20864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 648: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20864:20896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 649: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20896:20928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 650: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20928:20960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 651: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20960:20992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 652: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[20992:21024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 653: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21024:21056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 654: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21056:21088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 655: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21088:21120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 656: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21120:21152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 657: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21152:21184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 658: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21184:21216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 659: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21216:21248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 660: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21248:21280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 661: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21280:21312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 662: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21312:21344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 663: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21344:21376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 664: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21376:21408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 665: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21408:21440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 666: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21440:21472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 667: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21472:21504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 668: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21504:21536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 669: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21536:21568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 670: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21568:21600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 671: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21600:21632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 672: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21632:21664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 673: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21664:21696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 674: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21696:21728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 675: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21728:21760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 676: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21760:21792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 677: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21792:21824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 678: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21824:21856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 679: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21856:21888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 680: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21888:21920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 681: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21920:21952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 682: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21952:21984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 683: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[21984:22016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 684: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[22016:22048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 685: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[22048:22080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 686: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[22080:22112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 687: Field Element(0x403ebe8cedcaaa09ca037a96807b46c6b9f384f37b1e22bc5e42985694e993f)", - "P->V[22112:22144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 688: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22144:22176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 689: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22176:22208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 690: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22208:22240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 691: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22240:22272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 692: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22272:22304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 693: Field Element(0x62a7eba9b169642e9a7fe0621c872258a3a37013e0daa7750e8656857c1b3ee)", - "P->V[22304:22336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 694: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22336:22368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 695: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22368:22400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 696: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22400:22432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 697: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22432:22464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 698: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22464:22496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 699: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22496:22528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 700: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22528:22560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 701: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22560:22592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 702: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22592:22624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 703: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22624:22656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 704: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[22656:22688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 705: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[22688:22720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 706: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[22720:22752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 707: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22752:22784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 708: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22784:22816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 709: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22816:22848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 710: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[22848:22880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 711: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22880:22912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 712: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22912:22944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 713: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22944:22976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 714: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[22976:23008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 715: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23008:23040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 716: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23040:23072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 717: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[23072:23104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 718: Field Element(0x565fa9f180e34f8d202479046bd2e37b020de14dfa55f94f6c0ef51bf5b243c)", - "P->V[23104:23136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 719: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23136:23168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 720: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23168:23200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 721: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23200:23232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 722: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23232:23264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 723: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23264:23296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 724: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23296:23328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 725: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23328:23360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 726: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23360:23392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 727: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23392:23424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 728: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23424:23456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 729: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23456:23488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 730: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23488:23520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 731: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23520:23552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 732: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23552:23584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 733: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23584:23616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 734: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23616:23648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 735: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23648:23680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 736: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23680:23712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 737: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23712:23744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 738: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23744:23776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 739: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23776:23808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 740: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23808:23840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 741: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23840:23872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 742: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23872:23904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 743: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23904:23936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 744: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23936:23968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 745: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[23968:24000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 746: Field Element(0x5be191fb33b3fce299439b60be2c4d510c201b2c1d9a429d2987a09b515d456)", - "P->V[24000:24032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 747: Field Element(0x2efdd5ac4cfbefc79e2c24575f1708ffa5ea269a74e73d6c401f29290015244)", - "P->V[24032:24064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 748: Field Element(0x7351a9b7c9704d4edee8228b4b7d7529c376f276cf379098d72eabacb47a9ea)", - "P->V[24064:24096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 749: Field Element(0x4a615d5dcc82d76b3e5536e5e335e15e822466e6daab98961dfe96faeb9e343)", - "P->V[24096:24128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 750: Field Element(0x790a32b75e8dd799d035d047882c0f142239bdd32492b3f4e26b84fe233ff6a)", - "P->V[24128:24160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 751: Field Element(0x66131663bccb21332a469961810ea9102f0a2d295724d718666989fe211a1b1)", - "P->V[24160:24192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 752: Field Element(0x64c422385ca08def0bc0827e43a1488b8904f382f0c14e2d9fdf6679fedbd3f)", - "P->V[24192:24224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 753: Field Element(0x17d15b54d5663de78871e4a24bb5b61d711dc2a0c72321957ad0a2c523c0837)", - "P->V[24224:24256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 754: Field Element(0x1d49dd192e04dcef23b1b385d88a325768d3374379335e065933b35e95b4e68)", - "P->V[24256:24288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 755: Field Element(0x7b569a536e14a120103f183d59847b59dee4bf8b8a953ca88842113ca7cc565)", - "P->V[24288:24320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 756: Field Element(0x273e7b80ecc61ed126f818597b31c8636f92cdef88324979973af4c08c3e80c)", - "V->P: /cpu air/STARK/Out Of Domain Sampling: Constraint polynomial random element: Field Element(0xac65ad24895e663612281863d40ea714e67436a7807299fc28a4127e1c2a7e)", - "P->V[24320:24352]: /cpu air/STARK/FRI/Commitment/Layer 1: Commitment: Hash(0x31cd184c44e4e35ee20aa9d3a0077ae303635642568998cce0fb275459386fe)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 2: Evaluation point: Field Element(0x10112e1a13306a45652f52971004a4b25b93d9783156514f768966ce5791742)", - "P->V[24352:24384]: /cpu air/STARK/FRI/Commitment/Layer 2: Commitment: Hash(0x2b0956c889314a436ef1f52a586c6b6c0e50bf088f23f5c79b3cf1d07a4527)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 3: Evaluation point: Field Element(0x4330c744bd7d0e2d7172a3a1d82ca30de9a75058426e37055049f71df614fdb)", - "P->V[24384:24416]: /cpu air/STARK/FRI/Commitment/Layer 3: Commitment: Hash(0x7a22309f75eedd70453c09b3214985ca6711b8895d633f29d8a40f62f1408e3)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 4: Evaluation point: Field Element(0x334d5665518848cdf1af55267b11d04ed168126b1530296df959d764bf302dd)", - "P->V[24416:24448]: /cpu air/STARK/FRI/Commitment/Layer 4: Commitment: Hash(0x6b57dc7c761859c37544171eac5ba4953ad83ac4bf01e426eb2385d981f4fe)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 5: Evaluation point: Field Element(0x64f5d0144c13699011448d353929d0ed3b0d064de41d33ce6562e89dfa35f47)", - "P->V[24448:26496]: /cpu air/STARK/FRI/Commitment/Last Layer: Coefficients: Field Elements(0x2d58719f1dfd505ebf8f5324f34a09af6e23fbbda4e65b5963d78399c944d26, 0x75b40d0090c494d3c488bd61d40b21f30fa99aec7c1ec1e46a9550abcbe6a73, 0x66145cd4e02b72acd598e3e41f39fcbe8c5a0d213c6856b95f73115378c73a4, 0x7e3589cb631dff2863e1ce1cd53c0e81e1d23f92328b7809e6faca9ced57e9, 0x284217dc768f04a8f9959ad98c9fe067dbb537991e6b54b46b66cd2dedf120f, 0x7da83a3644daa1094c76d5d7f7497df277b133f7fa15bf25e41add5b4928eee, 0x36b80bceeeb75add3edba78987273030f5c9e6253f917946c3344e239238bb, 0x3a7aa0e8e52c38d98e8354308f1db71a69d801e49739f146e0bfbe2ae139b08, 0x6d4cf3647dfea62da3286bab76d73c106881cfc157f8f830ab5f5873365e0f, 0x7168ab9fe9af0c3107a5d032b6e948200adde4f2000cde780f007f256318984, 0x28dd0db3ae90c90d9829b58b7d6384b2ef03e433638f3692e3713aaab820c91, 0x60254d9e879b134ecb4399de35a83b570677c6e17ffc350138b983bdc740a92, 0x431a5c2422332b722148616c3e8274ba8bedfdddeab24a49771d20d4d8140da, 0x868709122bda8ca1e08a1f2fcec94e5ac6cb893a136ff6927696e42ceddcf1, 0x362fc39aa09a7cabd69f267833825ac49482195333a7ca510f176eecbfe7850, 0x36ddcb6d31e691e1b716067e6c032904c3527f217d15400cbee44ccea48e9f2, 0x2eae6fdf59ba70cb5c8794a2531597d21f7da237729556d27b58178d2af4081, 0x5dbf70dba52fbe592e5cefd164ff483c73418a2141f23e73b4c4de0d6f709b8, 0xb194cb371b48a2b3d50d1b34636fe12e560c003f0b7a5a57effb911da2e91d, 0x56a0c47a2f3b12fe410a3fd81f388f102f95cdeed3e102c1146cc62eb7b01ca, 0x691008c752467f5518230da63287fb9a3512d9f3273898fcc99e1bf5dad6b7, 0x20a6b68378a8116aee7781ba9bb0e89e134b0b5f7a7d966356ad98c3754e635, 0x1e9b06dacbea37ea5eb9d4fb9d13732d493964ba747cd15fe8da4e62024bc22, 0xd4f7bf77f34a4dec116904b16021a19ab903ad815c1ef43e1005cc6853b431, 0x6c99fedbdadfadb793457c9dfac7702ce82cb2bb9bd6a5824e24303927160e7, 0x3f69ca45777064d4d7b14b2d112a08b0f1b04ad91eeebf9fc77063dafea844c, 0x293515f86a412c2b82472104183510070d64fc51d50107e08c70b29ae9dfec, 0x7e059b21081874d2a553f4a57255875f16b1ef94b060bf5c1287f0f05b4c01e, 0x5feb6237576facf46cdd86bb7d7b45e6bb6be2bccdb558a139aee41cfcc1bbf, 0x7244961a160aa8e0ac561e34d5b783492d33728bb484580a037aaac9693b5ac, 0x2e400e01d91876605d783484f05356bb5dd958c41d361ef3c0b056973d58f32, 0x1e90f5c312c0c09bf5e9b7199f6a55c9461ce6391e1818cae33318a7d9296d8, 0x1e9186a4f4a45b791a7106c03aae85648d916fad3a4272f0044165bd6ca9ab1, 0x7fc27d4e14aad9fd223364cb8d952ac345db004bd81521ad960c9fd96e712a, 0x754c71874f3837636dcb28026256ac12f52630d1e3a543054944d66d2a503a0, 0x1acec7b2c16f699afa85907d3c25c6c354d0568e3721eaa53b34ed63b63d5d7, 0x19846aeeac3c861a66c3b3153b3f2251864412ac402027d2597dea51a769717, 0x6b8d9ccf9f3b59a577b75b13f91c23963941365c56078fdb50b519b1b2be90e, 0x98864bc90be9d6ba1805ba6c80f51450f3b871eb706d198097495cde3b8e37, 0x2116f23909699d69660f42dfd11ee4a0b2a26e961a7cbc2f86474ef746641f8, 0x478e9325571e3f15b392b961bfe9b22b25df7b72f7bb7972fb38c1a2b2993ad, 0x3c664b373f2d817faf2d4ecf821366c434ee11ea163176d41ba8dee304846dd, 0x16902d3d631cf1d49148eb284873ff7436bd7e676724a92b295e90841159499, 0x552769df4f5aa3419990e39e83e0cb56ccee099bd2811b05d566b1b51a96106, 0xbbfa213c41988d874ae9bfe4b58d7820ca0794b9436323ada6200bfbb85e0e, 0x434446b2f2281d9ed30d3544fb20aaeee27bca77806e0a456b4f94be414cb86, 0x7f22a62e5a19da99d8a7813c6a9586e4e46037b0521e732920b45cc20ec0830, 0x61e5f62df9f260051eda8a55e076e231d68261b23d59ee1fe6a40c9120d1275, 0x50c23689231ab6c9121d3d73c2851431f981ce65ccdf4c31d36a7f2aacec6bd, 0x68538342122fcac5b92408878db26136cb1a53e912ff1a3ad7db9ccfe5f842b, 0x61eb084fb36ebb03831d65491e74e77f031b30e3bd6ccef5e0998cdc2514255, 0x513b508bfd0853831672e994c8a8af61d459f926ca9c834160c530b867a9f76, 0x303a8f788d6c2913e0e8ffcd60c043b1cdbb1c5a0212058a5e751fef937e8c5, 0x68ef089b2369c394ef493b9f64d2450c316ef7bc710efbad616e60f4dc388fa, 0x744a8c5e5827926712cec41727c2f05fd9a5e9476351b3b9b7945b02f810056, 0x5ea9dd335f664d8ede5023ab0ba212fffc0800deeeb1aff3af57e106596448b, 0x10981cf41f36c165047d207faa43d5e4f4c739d8cb9ab887273d881bb044e69, 0x5f1ba9a283ae1cf1a2d4f7901dbf036d77b54f1beb6b7dd6cf5fc651afb9703, 0x6ee220f787b24d67f3797d77064b3b3b018743b2e87962c9d0715d97f7d7fe0, 0x30c056404e5b279b441199515791398a8d749bd70398542d04300f3420efe63, 0x2cb9938fa62e7aba2c74bfb229f939b4279c944d2afcafe0a5282f135cfbcb5, 0x54397411a4e5e064fdab492d8a7584e520af92b1e3d54ba6d7cb6adcc7be8b8, 0x398b5dd47f4e56cccc3c1fc18f234f807c6fee2d0941ecdeae80971812e6123, 0x6ac403678d08e10e7c26e79eae64e41d45dba00cdb34db8695d9ef38838a661)", - "P->V[26496:26504]: /cpu air/STARK/FRI/Proof of Work: POW: Data(0x1c63d028)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 0: Number(1864991)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 1: Number(966917)", - "P->V[26504:26536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 0: Field Element(0x44888bb68bc37796835a66bd24725d128d2018ef608b863128133196598acbb)", - "P->V[26536:26568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 1: Field Element(0x426cada7d9317cdc4ab84dc5e627968d6b2e025ca94e601912bfcc5d81bcbce)", - "P->V[26568:26600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 2: Field Element(0x5889274eb1942375a57955b1e75f3f3c34dc1924a47fb387285f26077146462)", - "P->V[26600:26632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 3: Field Element(0x186ac594a0c55b1a540d5283c3e1706498568abfb4dcfe186d1845a8ecffb17)", - "P->V[26632:26664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 4: Field Element(0x7847d87b95935d793be1c6ec7a9ad79cf238762ffc2858de7ea76fcedeedc11)", - "P->V[26664:26696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 5: Field Element(0x312c9f05e6a8958a6b6c6ce8a8319276faad04ffea816d8027b2770b08dfd4)", - "P->V[26696:26728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 6: Field Element(0x37d86256332299a7b8c22192b2374f91f8c7b2d28652b6d99149b149b8ac6dd)", - "P->V[26728:26760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 966917, Column 7: Field Element(0x48148ddb769a94a69f5ec7284e10bd3cf9df8a4b001a988cff37dc69d2ca3ff)", - "P->V[26760:26792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 0: Field Element(0x38843e0babe0417edb95800224f48ce6bcf75736f96a154735f55f24615c7fe)", - "P->V[26792:26824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 1: Field Element(0x1a18b915c1ac6e3688a08197b0460bf05832304e54d56d9f9b313f2dcfd3178)", - "P->V[26824:26856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 2: Field Element(0x52c13f8c142edc65410d9cbbff1194312bdc91338272dd309747cb27925d185)", - "P->V[26856:26888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 3: Field Element(0x77c11e41b17eb9758b46a36f0c4cd070423089cf053dad1f35de8354153eaab)", - "P->V[26888:26920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 4: Field Element(0x141f2b6d26e306dc12c4215ece72e5c416df1bfe0efe39e13fde5af5b4e6ae)", - "P->V[26920:26952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 5: Field Element(0x64a1d5ff6e894851cd8b2b77e6de483d140e4176bd6e473a72cb6f639b3d598)", - "P->V[26952:26984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 6: Field Element(0xf988576a9f9907249a666ce3221e64dd9be714aeeba96a41673699aff3539a)", - "P->V[26984:27016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1864991, Column 7: Field Element(0x780c85fdf3cf1ed5e1b2c09209006f99b0798fc0f25e1f04112e23bd40aa769)", - "P->V[27016:27048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3064068: Hash(0x000000000000000000000000e1a8b998ba36cacaeac26fd3d378da232860cfc4)", - "P->V[27048:27080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3962142: Hash(0x0000000000000000000000002d6b4a203bee4ad85b1fa8a790837c94b007981e)", - "P->V[27080:27112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1532035: Hash(0x00000000000000000000000027816a19812c58f287a4ea48490c5338398a6623)", - "P->V[27112:27144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1981070: Hash(0x0000000000000000000000006f9442593162424cf1286cf1dc3e45e2446e7148)", - "P->V[27144:27176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 766016: Hash(0x00000000000000000000000074b35e31babe4281eec35370be4f95a01053d991)", - "P->V[27176:27208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 990534: Hash(0x0000000000000000000000003efe1cfe206a0f9613ab245de4e827f60b1816d3)", - "P->V[27208:27240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 383009: Hash(0x000000000000000000000000a50283ccde781f483d8f6af7fa2ee672e71145a2)", - "P->V[27240:27272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 495266: Hash(0x00000000000000000000000060d23fbbfdcd7c56522e3ee3f39ff132787a2952)", - "P->V[27272:27304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 191505: Hash(0x0000000000000000000000001a5b3e9d7b1894b6156660556f950bc0d98abd15)", - "P->V[27304:27336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 247632: Hash(0x000000000000000000000000e5037865f1d752944e225f441228a681de5dc77b)", - "P->V[27336:27368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 95753: Hash(0x00000000000000000000000028f8ec47bae03049dbed7d6cad207129b00dda1d)", - "P->V[27368:27400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 123817: Hash(0x000000000000000000000000499179c87c5859693fdbd22dccb271b29e0a582a)", - "P->V[27400:27432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47877: Hash(0x00000000000000000000000040e0ea9d9cb1ef0838353d705e305652fa7e7dde)", - "P->V[27432:27464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 61909: Hash(0x0000000000000000000000000b653edd50812fc4e34761738eb0319fa6d6f0a0)", - "P->V[27464:27496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23939: Hash(0x000000000000000000000000598e92ea610f2c891410eaf43b2be89d05a115f1)", - "P->V[27496:27528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30955: Hash(0x000000000000000000000000403d3fe65c52f0cff6a004b04904a722788a0f06)", - "P->V[27528:27560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11968: Hash(0x0000000000000000000000001ba9075d1e910942c8cf5f6e047b35ee9c7d192c)", - "P->V[27560:27592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15476: Hash(0x0000000000000000000000003ada14696952116ea9717e602b6782ec7ac5ee9e)", - "P->V[27592:27624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5985: Hash(0x0000000000000000000000000efbf9d31de5d1f11fc7676868cef305ad4173fa)", - "P->V[27624:27656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7739: Hash(0x0000000000000000000000000b14edd950845c044562c5b55e70af84b7995894)", - "P->V[27656:27688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2993: Hash(0x000000000000000000000000b788525fe1084ab6e7474a3a0b6508039a2a5558)", - "P->V[27688:27720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3868: Hash(0x0000000000000000000000005199283a5176ed10f16b11be95354be18a9be088)", - "P->V[27720:27752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1497: Hash(0x00000000000000000000000029daf55351a2245ac3fd2a18ffebfad23c5468a8)", - "P->V[27752:27784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1935: Hash(0x0000000000000000000000007bf291614e4e7d82580cb64df742ad99514bab51)", - "P->V[27784:27816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 749: Hash(0x924cf1b6291f6600f34b53f96b217451ddf37e20)", - "P->V[27816:27848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 966: Hash(0x2078748429bd9e14ace5115ef8d3899a2769ca08)", - "P->V[27848:27880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 375: Hash(0x69af6cf036c666b53608b2ab32091ab2cfd235915459899a2bcd1bb6024b28d)", - "P->V[27880:27912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 482: Hash(0x783b7a0cdb6ed7f764e898c42b21cfe6c7107919ffba85625b49e30f86147d6)", - "P->V[27912:27944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 186: Hash(0x507e346e4b88a01a34b25af5f1de80d3ad6d3d7355778a9ea21d40a7e5262ac)", - "P->V[27944:27976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 240: Hash(0x75e249a91579205b4145ced2bab79c0590d6fe17704bf8f2cffb56d28477e97)", - "P->V[27976:28008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 92: Hash(0x2cafddb75ce4a493ce99ceed67ef0b958e96c0937cadc6f3deb38d938552190)", - "P->V[28008:28040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 121: Hash(0x39d974a8695201cfb1d979a65cbc478e2e42558e18804c7e041a8bdd679553d)", - "P->V[28040:28072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47: Hash(0x56e0bfd05e9e4aa1d097ae42599e17c1d3e1608f4ae1a8433007c5120d8d922)", - "P->V[28072:28104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 61: Hash(0xf175a8e4c76c310e557e4dc210a797c7985e97685d56b8a8280e22fd320078)", - "P->V[28104:28136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22: Hash(0x38fab9d335df2566c3da4ebeb07896903d47aab921f1e2f9eb159dc24d62837)", - "P->V[28136:28168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31: Hash(0x65ed2939f2683fe405abea668b4513771ab28166f44ab278c01d3db8501f4c8)", - "P->V[28168:28200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10: Hash(0x57419145940c358f0586c13601e2c9998448d08d1dc1b8829d358e44a197ce6)", - "P->V[28200:28232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14: Hash(0x1cda2527559fdefb2403c113bf2bc611192c75491a6a30b7d2693f07175e8)", - "P->V[28232:28264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4: Hash(0x7df5c4f1c3d418f150ae366731fbd17287fca68201900cf017d2588d2a0e301)", - "P->V[28264:28296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6: Hash(0x1291a19c5fda10a61f1c2e3e9889bd8dabb3da6306c7dd43f7fbf3f2fe081c)", - "P->V[28296:28328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 966917, Column 0: Field Element(0x644563a3a3cad705dfc02c0f4003c3cb62a01c3aa735925bb51033ed9365d72)", - "P->V[28328:28360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 966917, Column 1: Field Element(0x33d3918eac045f948479a10af776aa216a4a42c9e6fc3e3b4630df10b41ffae)", - "P->V[28360:28392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 966917, Column 2: Field Element(0x57056be282456bb205ef15d1b9a0ca16cdae32f7be01b49e63f9ea5180a387b)", - "P->V[28392:28424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 966917, Column 3: Field Element(0x358974c73ccfdfbaae234b6e975a023eacaff54fb07c7ab25540daa25a09e8b)", - "P->V[28424:28456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1864991, Column 0: Field Element(0x1e5e9d6b2fc16ab6189ba65fe7f8539f8289031441e2c6f45045e9ed4899a2d)", - "P->V[28456:28488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1864991, Column 1: Field Element(0x2b22834f36eb22544be25f5a485198c555955d8b056ea24a979695c8a1b9cb)", - "P->V[28488:28520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1864991, Column 2: Field Element(0x5e8b18994f5bb75329e8dc143bc5ca056606e0172a59b0eaa42f2cbc4130b7d)", - "P->V[28520:28552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1864991, Column 3: Field Element(0x1e1214749a6301621f37ee7ad9313c512b93b850fc3d03d1a264b485ea32ef8)", - "P->V[28552:28584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3064068: Hash(0x00000000000000000000000044668c06a4c4457750f8c7d30500c89fa74fc33d)", - "P->V[28584:28616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3962142: Hash(0x000000000000000000000000788ba58c128f5f38ffb40cc9f85a8e46962a5d35)", - "P->V[28616:28648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1532035: Hash(0x000000000000000000000000c348ca5d8ffb51c10b38673884d1fe37e7b74fc4)", - "P->V[28648:28680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1981070: Hash(0x0000000000000000000000000cb31e968ae442a7aa5854f050551ac54153b5f1)", - "P->V[28680:28712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 766016: Hash(0x000000000000000000000000dc4c25ad41efbac299ef5bffba29d38335528cc9)", - "P->V[28712:28744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 990534: Hash(0x00000000000000000000000097fa99f99300d089810c26a9b8f227c5a4d6b5f4)", - "P->V[28744:28776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 383009: Hash(0x000000000000000000000000c5f90792439ec325e427faaa510b9108e8bddc55)", - "P->V[28776:28808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 495266: Hash(0x00000000000000000000000077ae36624f8cb209b8d7d75ee2b888e953cfcb37)", - "P->V[28808:28840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 191505: Hash(0x00000000000000000000000092b97d6443134ec23ae96a26a56aa2ceab311c1a)", - "P->V[28840:28872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 247632: Hash(0x00000000000000000000000011441a52c2f64f06d38824f94741d11546f868a8)", - "P->V[28872:28904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 95753: Hash(0x000000000000000000000000a53356df7991620fc76eb53bcdd099abef9f44cc)", - "P->V[28904:28936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 123817: Hash(0x0000000000000000000000001b30216f28858a51623b885e0467160be23cea87)", - "P->V[28936:28968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47877: Hash(0x000000000000000000000000e077fb3c7129016f4b00dc37c19138d50b2860f3)", - "P->V[28968:29000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 61909: Hash(0x0000000000000000000000009a121b4b95d6a642e7ef2905bc329a6d7b724065)", - "P->V[29000:29032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23939: Hash(0x000000000000000000000000e0201d7b0118170e718e8986cf048fbd10fcd308)", - "P->V[29032:29064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30955: Hash(0x000000000000000000000000d6991a71aad1ec6f3dccbd0d34e0dcf754f22017)", - "P->V[29064:29096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11968: Hash(0x000000000000000000000000a7aa156a9763538c16f16de2f110090591717c03)", - "P->V[29096:29128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15476: Hash(0x000000000000000000000000bf3e9cd549b757860bbdca2abb977c2a33760fbb)", - "P->V[29128:29160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5985: Hash(0x0000000000000000000000004492d0e2b26e4b06e2ffec226d16d10f6bfe6c47)", - "P->V[29160:29192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7739: Hash(0x000000000000000000000000a575546bd3796a7b97a31eef43351862db70bfc2)", - "P->V[29192:29224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2993: Hash(0x000000000000000000000000b1e3d15dbc28d0ff27c76e4fe9dfa73c9629ad25)", - "P->V[29224:29256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3868: Hash(0x000000000000000000000000979688b7eed1a3938c8f4d40a0a6a1c3378e239b)", - "P->V[29256:29288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1497: Hash(0x000000000000000000000000a4eb6d1855e159c17e236116d02f252e5ae37ec3)", - "P->V[29288:29320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1935: Hash(0x0000000000000000000000000a406c5bf5c6ab8d812dba01aacdef1b543f2e50)", - "P->V[29320:29352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 749: Hash(0x88bc9ad82c2e9562650e9090ff8c8e99a9777f24)", - "P->V[29352:29384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 966: Hash(0xecbecd1183cd963661247a92b96db75ff41bc011)", - "P->V[29384:29416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 375: Hash(0xb7d9254d9e01cfc97aefdfc09d7a6b4de35b8fd67f36b816b624a716bcd29e)", - "P->V[29416:29448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 482: Hash(0x6b9709f90fb898f5df925fd3063ae790bf5918acafa7ec7e052e98d374a4d10)", - "P->V[29448:29480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 186: Hash(0x124137a31dfbc8a67650a13dc929e0fc25cf25e033412fdda06839694f4ae0c)", - "P->V[29480:29512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 240: Hash(0x4afdcb0b7c537dd310d2b0355abbd996617f01d2bb3cec64f8fd9778d072aca)", - "P->V[29512:29544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 92: Hash(0xffcdb3eece933b1857aa46743c5b8805e648cb430c23bdc41793e72e54035e)", - "P->V[29544:29576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 121: Hash(0x1e38fe60ed46a29969c9cbd88228b8444aa1c0c5a0425dcb8d1ad4c763ada33)", - "P->V[29576:29608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47: Hash(0x6f62407c7923fdc54a154faf8105584fd3315d1aea88ebd7e4999a389e57c27)", - "P->V[29608:29640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 61: Hash(0x4708cf15c10a8cd0d5dc288546d26397bc69a95b226f44634c5df28405e54f4)", - "P->V[29640:29672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22: Hash(0x5b40f9f4408594918c58200305dd8ffa4ccb54cb1accbfe1bbffd6ca9f4fa20)", - "P->V[29672:29704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31: Hash(0x43f3a3e0f843a776b61663d9ad90cefb507730e531e9e677b684d8c12b6908c)", - "P->V[29704:29736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10: Hash(0x113b7f874447a3651f11a8774a109a0fad4f144899bf672cfa39689f4ab175)", - "P->V[29736:29768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14: Hash(0x6d810eba22041259160b8e2fb58e52f843507d5980e7e07ab20a03f17fe32cf)", - "P->V[29768:29800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4: Hash(0x15dffd9ff1eaeae6249e10378ba3dda3fc86efdf2775ffcf4de41160ebe7b82)", - "P->V[29800:29832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6: Hash(0x1ffb7851fb6d05755dda806b629bcb6c1e81152cebe397418ba252147571a42)", - "P->V[29832:29864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 966917, Column 0: Field Element(0x3391c2642084ce0fb46ff2ead6bf53878117c920c0477a81f1d328413f55661)", - "P->V[29864:29896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 966917, Column 1: Field Element(0x10ceec6a8aaed417645aa09ea4597cd61943f3e86122c6f7dc80af2240e492b)", - "P->V[29896:29928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1864991, Column 0: Field Element(0x5bd4da51058cd0f838bda09e08d783bb61aac901e82180c73a191422f84510c)", - "P->V[29928:29960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1864991, Column 1: Field Element(0x1d5041c02e76909ca008eb83b3d9be05f66f1753a53eb6dd7b4dd85be1bcd36)", - "P->V[29960:29992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3064068: Hash(0x0000000000000000000000000ae96b73af784ab23e827a7234d9e382843adcf6)", - "P->V[29992:30024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3962142: Hash(0x00000000000000000000000041ce04997f25dc312344ce7bc46c21e4d1e4875a)", - "P->V[30024:30056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1532035: Hash(0x0000000000000000000000000f8748e07e281fec29a219cf0abca16197813d8f)", - "P->V[30056:30088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1981070: Hash(0x000000000000000000000000062b5e8899f94a4d5ddc4aa1442df68b31619f4e)", - "P->V[30088:30120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 766016: Hash(0x000000000000000000000000f95af954c08095cf1a89a644bb6b09497ceb4ced)", - "P->V[30120:30152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 990534: Hash(0x000000000000000000000000a90ecbf1e3ba6cf6634af3de9084dffae8cdae29)", - "P->V[30152:30184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 383009: Hash(0x000000000000000000000000ef11101dc2cbea6c8d08bfeca3a5204af170070d)", - "P->V[30184:30216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 495266: Hash(0x000000000000000000000000f2fc11fb1b2a7444ce5df5d90fdc22c75b361d10)", - "P->V[30216:30248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 191505: Hash(0x000000000000000000000000c443f7be7c4fe069a076a1d80db517323af2a49c)", - "P->V[30248:30280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 247632: Hash(0x000000000000000000000000009d9a17a6af552024083f9fe3b28f2c468f35e5)", - "P->V[30280:30312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 95753: Hash(0x000000000000000000000000aa60201b34b5a41dc4d4a5087e39dfcf1dc08d28)", - "P->V[30312:30344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 123817: Hash(0x000000000000000000000000c3b46cc7bcc2e959d786a32521c50e45f7c3a6c4)", - "P->V[30344:30376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47877: Hash(0x000000000000000000000000727c88de83069dc26822879214311c8eb4267c54)", - "P->V[30376:30408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 61909: Hash(0x0000000000000000000000009f18aca33a03ea5ef20f96c3bca10afee2afab45)", - "P->V[30408:30440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23939: Hash(0x000000000000000000000000ead0bf0d53ee004eff47dbbafa89451f4d3b4247)", - "P->V[30440:30472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30955: Hash(0x000000000000000000000000819f0a454d8e946274a886e6f88a1a6fb4dd896a)", - "P->V[30472:30504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11968: Hash(0x000000000000000000000000901582dc09f9cf821e9c319b11d6cbc8d10c48d8)", - "P->V[30504:30536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15476: Hash(0x0000000000000000000000004eaa7a6dd50fe434cd887ee2d64c5d19ce57597a)", - "P->V[30536:30568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5985: Hash(0x000000000000000000000000248ac1668954253400c4d23dc4585c0564c318bd)", - "P->V[30568:30600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7739: Hash(0x000000000000000000000000c50ccac08d9fb1d8d0827449cae0aa997fc2e148)", - "P->V[30600:30632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2993: Hash(0x00000000000000000000000045d983667b8d37415bd8b41c4f77304785c1065d)", - "P->V[30632:30664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3868: Hash(0x0000000000000000000000007cef06fdb4fd88328018829b4b1f60e543f205bb)", - "P->V[30664:30696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1497: Hash(0x0000000000000000000000009ea2307c8ee49b2d33c4ea71ee968755e311628b)", - "P->V[30696:30728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1935: Hash(0x000000000000000000000000d313bbe04eb0d0a169f96da39f8de240a6b921e6)", - "P->V[30728:30760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 749: Hash(0x2036f209a1a51ff7998e15a7a5f2668950b77704)", - "P->V[30760:30792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 966: Hash(0xf9ec967f86d5aa9a32ce4b04f7f4e7a80e4f54e5)", - "P->V[30792:30824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 375: Hash(0x731dd5e31492c451b8ba44fe5cef4f9d904df232384bd30cc26ed20fe320f35)", - "P->V[30824:30856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 482: Hash(0x32ff3c8cd93f989df20779a2ce2970679ba296c89d63be59e5358fdff5e296e)", - "P->V[30856:30888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 186: Hash(0xbcc8c1cf3b0c6af82d65b0b660d9f57d2687d72c24df4900ecde58a5509508)", - "P->V[30888:30920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 240: Hash(0x193b7befb4f33694e0dab1157a9fe239c5699dd464fd9891b41f54cb8238851)", - "P->V[30920:30952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 92: Hash(0x62da44a1df466fe870fc636e03f038b274c1898a85c1eddda7ff633077b4f4d)", - "P->V[30952:30984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 121: Hash(0x4d5d978884564d77b5312f16acb5adca3afdce42f69218b53d49af970e4b02a)", - "P->V[30984:31016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47: Hash(0x49220d20f584aa6af1a3bd2933d1f41dbafdb4f27e4a3e17c341c966f135dd3)", - "P->V[31016:31048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 61: Hash(0x4aef5cd849cb0c64fd8b4b11a310317921909d8f6bff3cb3eb88adb0b7c506b)", - "P->V[31048:31080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22: Hash(0xbe4aaf1a6cbea169b40dedb89aa5d862c3f13613f2c710db351dc2dae013fb)", - "P->V[31080:31112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31: Hash(0x499e1c8e475b26cd5757300960a8a6441a2cd55db6cfc21cd5630aec4ded9dd)", - "P->V[31112:31144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10: Hash(0x7c48ef24a2ac5ffdc72adf4573e78c17ba06a8ff95f655e4ef7d9dace6bf908)", - "P->V[31144:31176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14: Hash(0x77a7de74e6e7b1e019f9666e67a4d102e1544d713b3e8d16ff2a92eb5152e05)", - "P->V[31176:31208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4: Hash(0x70678549604d7007948228ad10818c802f7ddf8ab5a2b0f0765c07b792a34d5)", - "P->V[31208:31240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6: Hash(0x1a737736b48a908a34f77a0f09c5e656ab9a89cc9e3e3f12d44491f1cf5b931)", - "P->V[31240:31272]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 0: Field Element(0x47d4141b0f35e2e645615ea7b43b55fabc8c352d7ef2b00298990e3f2bfb7f8)", - "P->V[31272:31304]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 1: Field Element(0x6cee1b43f2424d0e4c4b8ae538e4ad50dbd178131853bdad031f5b622f9295f)", - "P->V[31304:31336]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 2: Field Element(0x757d2f8970fb39feb55149d5e0452b81cebd6e0d3a5e7f7e9ec3152ec4a8ec1)", - "P->V[31336:31368]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 3: Field Element(0x294db4b18fee7577663fc37d3afe2698d890f5c4b0c4d160bd245b0e95ee080)", - "P->V[31368:31400]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 4: Field Element(0x2e2fc826e612e3ded32cd9480d2c21c58351f594701ca616c6e375004155268)", - "P->V[31400:31432]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 6: Field Element(0x4776cdf3015e4eb34374334d1c3f1d8e2251a4aa3cadf32f41320d52b694090)", - "P->V[31432:31464]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 7: Field Element(0x67c3da6192e723a4ec3b0414c19956be9b4f8de8b864098a9ffbd300cecaadd)", - "P->V[31464:31496]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 0: Field Element(0x11b6b3a61209ffb3caf727bd9582a38603d265fdcdb2306f2b0cd3ccce62fe3)", - "P->V[31496:31528]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 1: Field Element(0x1c1a05994361ad76c31ed08d5d284c509fd5e77b805754c5aac3a09e86cfa58)", - "P->V[31528:31560]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 2: Field Element(0x7bd59c33edb93bce4a9ad1c410c70390593298a9fa2cac966390ba49801e427)", - "P->V[31560:31592]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 3: Field Element(0x3318504bf2321724ddf7d3b637fecf2d91b72e6b51c271e3b4f101c175876d1)", - "P->V[31592:31624]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 4: Field Element(0x5773e32e73955c18e376a315e98d21462517b5e6f40a8dac357ab3805251a71)", - "P->V[31624:31656]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 5: Field Element(0x47db2b11b1840991dbc36fabcfcf7d1c5b1cbb4f107e0be8af18374d6a2895)", - "P->V[31656:31688]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 6: Field Element(0x7c20a33c323f483b3697d5b9e33dff81b5bf61497e9b77d335a553ca4ec5ca5)", - "P->V[31688:31720]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 383009: Hash(0x000000000000000000000000e48f3018231c77c6be3d3c1c7f09141e84190779)", - "P->V[31720:31752]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 495266: Hash(0x0000000000000000000000005bc9f0b75f7202e781c3047d67df3dfad715fa53)", - "P->V[31752:31784]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 191505: Hash(0x0000000000000000000000003042ec3d85ae9885540b2766e4a6db5e05b2d3fb)", - "P->V[31784:31816]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 247632: Hash(0x000000000000000000000000f2f0376ed47bc1173f188c7713afc1ca4080de90)", - "P->V[31816:31848]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 95753: Hash(0x000000000000000000000000ecdea52a4fa1f09fd5d1b2a33e26492347839b19)", - "P->V[31848:31880]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 123817: Hash(0x0000000000000000000000006ec3b258c80eba110049acb4d01384f806ac4829)", - "P->V[31880:31912]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47877: Hash(0x00000000000000000000000095393fea961ee244fbb4970a62637af9ea638b74)", - "P->V[31912:31944]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 61909: Hash(0x000000000000000000000000eaa65f667a729d2fbae5470e35e38fc5c5a3ce09)", - "P->V[31944:31976]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 23939: Hash(0x000000000000000000000000a26a558c3a4d0656038c786bfd81ab03eb1ab1c2)", - "P->V[31976:32008]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 30955: Hash(0x000000000000000000000000a1c68cb73fb708bccfab4ff4b801d8e64fe8e2fc)", - "P->V[32008:32040]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11968: Hash(0x00000000000000000000000089873a392f9707c1aad6c0a95b271e9c27b2b994)", - "P->V[32040:32072]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15476: Hash(0x000000000000000000000000eb74ef6fe2e1be79a52d9c12198b2126ed1b5791)", - "P->V[32072:32104]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5985: Hash(0x000000000000000000000000818eb6097fb210b5dca004ffaf7f7fa8873a1687)", - "P->V[32104:32136]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7739: Hash(0x000000000000000000000000b7c6a02f7db21423b13e30566045784aad44e81b)", - "P->V[32136:32168]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2993: Hash(0x000000000000000000000000b8ff5c9b59895a7835b7a61e5b1047b63c3fcbc4)", - "P->V[32168:32200]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3868: Hash(0x00000000000000000000000091b6a939307f340d73a4b26da09b8e5fbd327722)", - "P->V[32200:32232]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1497: Hash(0x000000000000000000000000ee831b2aef6b2e929a0eeef34a39d9b285456f0c)", - "P->V[32232:32264]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1935: Hash(0x000000000000000000000000f516aa3b25c990653b8c1b9f5a6b6f4aaa806399)", - "P->V[32264:32296]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 749: Hash(0xbcfdd3f995886a772f9954153d27324d6f2a8d58)", - "P->V[32296:32328]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 966: Hash(0xb7f6b952e0da68651a3afdac3f514efde9229895)", - "P->V[32328:32360]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 375: Hash(0x713f09c18946e907fda5f95b5193c13ec95768d1de6ec8687197d6b9a45ac87)", - "P->V[32360:32392]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 482: Hash(0x680a1f94eab8e4e8f1073c6a3e6dbca880f26100782f6b5f8ec19bc1419aa04)", - "P->V[32392:32424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 186: Hash(0x55412b776e4794628024c7bcb97de150959b69b9a352b2b1e26d371e8e4256b)", - "P->V[32424:32456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 240: Hash(0x3a106bdad177dfdd46e1f1db01ce9f95c78f7141dbe2377ebc5db7dae566be4)", - "P->V[32456:32488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 92: Hash(0x55b86f210672518c58fa2fedc7db414e489704bbaac18d227eaffa03307ceb3)", - "P->V[32488:32520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 121: Hash(0x32a28b75d86e4ec04894c999a21aa8bddd4c902506a594781a0c86169285d7a)", - "P->V[32520:32552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47: Hash(0x49d0c616edf9b6963b1d4930e69e6bb582eca68d5489e0b0f7771df83c94644)", - "P->V[32552:32584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 61: Hash(0x1b3f83b7859771481b008189fa73fb32b24f648cd5a11b0f09e231d4c707983)", - "P->V[32584:32616]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22: Hash(0x4b6f41af845502e792a13037ac5d7b249def262b8f11f5f9a7c502fd2e8f1b2)", - "P->V[32616:32648]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 31: Hash(0x33ace9f18fdb693fbc36ae553a24dc48638c524525e0f9755cce16516cb0ff6)", - "P->V[32648:32680]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 10: Hash(0x35ea6ac49b1730b33b6f4c0f6ef5390060991e1b292ba334fe4621a879faabe)", - "P->V[32680:32712]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 14: Hash(0x24d5c6ff9788dcedad989da3405733810915cc25bac929a7d5f3d9bb52ed86f)", - "P->V[32712:32744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4: Hash(0x1a0f2a6b778c7b4ded7383116153a9c4828102103ab2bd0f28176b6ea2529b6)", - "P->V[32744:32776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6: Hash(0x236dfdb1830364563e148df696991e50981b39df6d0f614cb34db9e9be7f6e7)", - "P->V[32776:32808]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 1: Field Element(0x75b5f2bd946713733d7b4304223b7a90d2afaf49d6a87f7e71dfae2daf85219)", - "P->V[32808:32840]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 2: Field Element(0x4503e0d8e5b2903e164a0e9d851d1ac946c554c36dc9d04fc85920403a8b119)", - "P->V[32840:32872]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 3: Field Element(0x6b289f012ec843e6ab67929dee4c9fa54698f3785d98a2f4dcbf523c567d93b)", - "P->V[32872:32904]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 4: Field Element(0x42fd7fea179e09242d4a55073fc504add5376d12055c7a420409660aac77f09)", - "P->V[32904:32936]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 5: Field Element(0x2e5c31056ab3b21a5408f6d0f76351bbb8e1b049fe5b03a9b098b7c6539fe86)", - "P->V[32936:32968]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 6: Field Element(0xb440d2fd41bc2cfc5f91a530662c33b94b1adb2396d58b70c3dcaca7e9256)", - "P->V[32968:33000]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 7: Field Element(0x3e6f138e4388464653e19ba8000839909793eeac561f64147da3a5608a206a0)", - "P->V[33000:33032]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 0: Field Element(0x7214b9a44f7f9ed200c9ae623b3fdce79a8ed4c3f332554d28ef12320d94ca7)", - "P->V[33032:33064]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 1: Field Element(0x41b5825fa0a851b0ae3ebd063874107c3d43c51b456321d2567b55e204f2a42)", - "P->V[33064:33096]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 2: Field Element(0x1da976ddef4ca2a700acb470e6a545b6094a9d056401b13dcc569ed1d78daa9)", - "P->V[33096:33128]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 4: Field Element(0x79d521cc7021a5eb1e812bd3cf29b49cd3086da37770633065fe14e2bb763dc)", - "P->V[33128:33160]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 5: Field Element(0x647a8f3d41f2511e789e1e57492adfee6ca22f7f93ea5034749cdd35a4c2d26)", - "P->V[33160:33192]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 6: Field Element(0x7abfc1997debd1fa81be156b47cbb9450c44925d5feb0305eb050011a628e52)", - "P->V[33192:33224]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 7: Field Element(0x43fa27c2231df72941a654a46122c40c5b2a2e9da8bafa51ad340717600b980)", - "P->V[33224:33256]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47877: Hash(0x0000000000000000000000000df48fff4a10b1889b940714afc56fac4c77cc80)", - "P->V[33256:33288]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 61909: Hash(0x0000000000000000000000006c8d91f3e926989d39fc83f8a7dd21f0cc55a30f)", - "P->V[33288:33320]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 23939: Hash(0x00000000000000000000000013700cc04ed3d6fa5a1d4e6a4d13cd826d06dcb9)", - "P->V[33320:33352]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 30955: Hash(0x0000000000000000000000004f87425054c90f6851cc37163c90c92a02ac1986)", - "P->V[33352:33384]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11968: Hash(0x000000000000000000000000c89e86b075fd35e3a6b60a2627d5f0b252e7afbe)", - "P->V[33384:33416]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15476: Hash(0x00000000000000000000000022320ce4d0bef19a4d3d285591ed9c89a474ad73)", - "P->V[33416:33448]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5985: Hash(0x000000000000000000000000ce5377d68608f074b46636a21cd517d50177ec3f)", - "P->V[33448:33480]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7739: Hash(0x000000000000000000000000d13b879c9f5cc2318cd1362b32f70e8f9a3ea655)", - "P->V[33480:33512]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2993: Hash(0x000000000000000000000000727e2e8a85d9f92cfab8aa20e5ee7420c4a29119)", - "P->V[33512:33544]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3868: Hash(0x0000000000000000000000006595671c3e6cfe5cb68de9564df910482f815d3c)", - "P->V[33544:33576]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1497: Hash(0x000000000000000000000000c20f2fdce5aa9e16be03a15d3c9175f86c706214)", - "P->V[33576:33608]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1935: Hash(0x000000000000000000000000e1dab734857a5bac50295997dc0124b9f807d5a2)", - "P->V[33608:33640]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 749: Hash(0x2e624f2288a4c4ecd59178898eb9a5e5f921b770)", - "P->V[33640:33672]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 966: Hash(0x80238a0cb86c05b3d19d58060b92c10bb6b35ebe)", - "P->V[33672:33704]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 375: Hash(0x18160b3e5de336715639054e55cc0c37474c610cc8cf50ad857a6863f895d37)", - "P->V[33704:33736]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 482: Hash(0x193c30ac8f1780e0d91d04e702de7575ebcd94116a10efabe60614de06bb77f)", - "P->V[33736:33768]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 186: Hash(0x720e9b953b58935bc43574e0e4d4c0539c989bde0e13b8896cc5f29a9da0ab6)", - "P->V[33768:33800]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 240: Hash(0x42242a13adced298d9a55adcc3d600420abf6f4d78fe2d57f730fc0bf05a191)", - "P->V[33800:33832]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 92: Hash(0x7fbafcac4754b42cfe6488c77af5efd5af51b891c401c5d2cdc120af19748e6)", - "P->V[33832:33864]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 121: Hash(0x334184a0830266212ed61c66aea8bae264f11de14623a14326a7609b39ef358)", - "P->V[33864:33896]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47: Hash(0x64d6399bcf90ee9e9a1838e213dccec21a07518262ca5bf75d87a1ee9d5987b)", - "P->V[33896:33928]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 61: Hash(0x65a092cc5dc228c11948c1d1b90c104ecb64bcd5d3eed854ab09c35b96a527b)", - "P->V[33928:33960]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22: Hash(0x7e022edf093329b7d12a09d6e46a63b97929474c767fe3fff5d62b40b156b47)", - "P->V[33960:33992]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 31: Hash(0x78037dbf5a1cd97f3dbc02041fb9884c03f8408bac3c69d1e97d727a6c6430f)", - "P->V[33992:34024]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 10: Hash(0x606b1216d72471e67ea147a4558e7d38c1f2c380caad944219cef580862b3fb)", - "P->V[34024:34056]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 14: Hash(0x75d17c3866e713593a5cad2234101a78023c5f011c9aebd6630549d5212bdda)", - "P->V[34056:34088]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4: Hash(0x6baf0de1eb753b91def6e236c791e47e72e35d84e6f59c7692f0b1c247e2e4e)", - "P->V[34088:34120]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6: Hash(0x6fe55093a13b7cff6a42f5ed832d8de3ebee7dc78ae2cee5087ee05dfc6fef)", - "P->V[34120:34152]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 0: Field Element(0x12cb252858eeb1ce85c314cf79106b3e6245a968dd492f170553e16da9cef55)", - "P->V[34152:34184]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 1: Field Element(0x62f75cb1c9c451b7b16254c4211fa47152f3b130c087eaf5d9f175d3536cf87)", - "P->V[34184:34216]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 2: Field Element(0x19c75a35829bb083c0c1673a2363667e30c14490f2add0d02fb4f70dbfc3296)", - "P->V[34216:34248]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 3: Field Element(0x79c79b20c0e12d693147d617df8bdff4585be80a1dd1a9da8a2268a3b0d3261)", - "P->V[34248:34280]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 5: Field Element(0xcfc2fc8d7dd6fd93a598b2b30d562235da5a771600df53d5e9297c82e3a5b3)", - "P->V[34280:34312]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 6: Field Element(0x626662e52e151cd688a3120e2b7dea5d1c2bcc79db3f96914285ca2444bfa44)", - "P->V[34312:34344]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 7: Field Element(0x7e8875314f92e9e0d7dc169d3d0864e1ecba52b364a0ac663cbbfdcfb78c22)", - "P->V[34344:34376]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 0: Field Element(0x567dccaef1562e167dd0c25553c4fc196475bd746034471035aff981966c04f)", - "P->V[34376:34408]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 1: Field Element(0x69987ad36d533079ff6a49368616dcfaac0b01b8206038e8e8264867d6cb724)", - "P->V[34408:34440]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 2: Field Element(0x54b9509d01fdaec580a8223ced18e4d4e3db64169b24609c1ffdae0d87bf6b4)", - "P->V[34440:34472]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 3: Field Element(0xfcb40541057d70332599e011a549e92e76611321edddb398d95a9545535531)", - "P->V[34472:34504]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 5: Field Element(0xe96d30fefdcfb6f654dcc1402058c343c4e96c9fc82c91dc42441c1d632776)", - "P->V[34504:34536]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 6: Field Element(0x7d2f7a26e643d4c4aece67e8c0b13a7783263671ac79c7c915980556684cedd)", - "P->V[34536:34568]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 7: Field Element(0x31dc0d1e1ec3980e7de6886a81aa4166c0427cd17b8a63dda44c2144661c260)", - "P->V[34568:34600]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5985: Hash(0x00000000000000000000000004e308702252578be6a63d04456be4af959057ca)", - "P->V[34600:34632]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7739: Hash(0x00000000000000000000000003c244882fa9c894dc3b57f2754e8da7bdc7aa5c)", - "P->V[34632:34664]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2993: Hash(0x000000000000000000000000cd90a5de6439d82dbd9c0a16dbbb3a7f7196ad8f)", - "P->V[34664:34696]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3868: Hash(0x000000000000000000000000a012caed441166fe4c33bade6109514ac5ef38c1)", - "P->V[34696:34728]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1497: Hash(0x000000000000000000000000d0747d4e27692469087d217a664cd30b7de53414)", - "P->V[34728:34760]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1935: Hash(0x00000000000000000000000098d3ae50be58c2969886085a8a93fc740e9b715c)", - "P->V[34760:34792]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 749: Hash(0xd93710c6c52ce4e91903c62d57278e8633e13ae9)", - "P->V[34792:34824]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 966: Hash(0xc974761f49be10e480291008be3aae80221186a0)", - "P->V[34824:34856]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 375: Hash(0x11415c2cc32425eddff0efab42816462e160e8dced38ee7f279d216f8aca4af)", - "P->V[34856:34888]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 482: Hash(0x47ef7de9a71b9ce24350f3689855597624da2635e13e048ceac82aa5407e799)", - "P->V[34888:34920]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 186: Hash(0x7948bb8061fed177e181777b0cf858d98b15cf301ca33cde7602694b37fb2b6)", - "P->V[34920:34952]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 240: Hash(0x4662d925559117c02637c438b12b227f32b85826d763f4aa73064e38ddafa99)", - "P->V[34952:34984]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 92: Hash(0x7515179a234d00ae955a19771cd0d9cb3f0d4d43d2a8ed551ee1d4866f2b65f)", - "P->V[34984:35016]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 121: Hash(0xf6bba9669b04562f50110a5d81b3f401c561648ecebf456e540eb192d1d689)", - "P->V[35016:35048]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 47: Hash(0x31cfee53da3fff10ef19f5e97bc840938cdfb41623f272cd79851cd96a3f992)", - "P->V[35048:35080]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 61: Hash(0x7e5d8350d78263346315a09ba7db537142a1bf663839864c7ebb10937bd1178)", - "P->V[35080:35112]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 22: Hash(0x22e1f2d0beea45bb853edd0ef5e8b211bf3f772c2eeadaccb95a29090ab12d8)", - "P->V[35112:35144]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 31: Hash(0x2fc9020c8aec8440f0ee11d6af8b27a42a482863f45f11f0b9cb718e4b1739e)", - "P->V[35144:35176]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 10: Hash(0x2472c23f91a3907f6f42064216c51324eb1ec66f0220f4e1f98d89a3485831)", - "P->V[35176:35208]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 14: Hash(0x45a08300c3284e7e5ad986da5097840b4fef095682846c1e38f5419a34f03c3)", - "P->V[35208:35240]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4: Hash(0x8415b790cb2ce6434c04aa02f79d707efb34b52d2c68868b4efc2a48a8cfd4)", - "P->V[35240:35272]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6: Hash(0x6bcb7f81a03d79c6b7ccd4e906ce019d0e442446b0a0835f44971bc47acf68e)", - "P->V[35272:35304]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 472, Column 1: Field Element(0x17f71f04974ff790975008b36e7e32e457932a1d74fc82baf0e4816f527a99e)", - "P->V[35304:35336]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 472, Column 2: Field Element(0x716b68099e0e522618af235a9a63c1b210dd3e10a93108eecb787084b22fdc2)", - "P->V[35336:35368]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 472, Column 3: Field Element(0x71a357564476b776f4040246c9355eb98b4f2ab1874d6d97878160a4803d57b)", - "P->V[35368:35400]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 910, Column 0: Field Element(0x52a672b7805aaab37cdf494a9630f4038bdae24813d3a796d19ae2a91910ebb)", - "P->V[35400:35432]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 910, Column 1: Field Element(0x54a5479cf3887c14a0f1a4c0b4956aa2eaf8a6af7f169d1d294ea43751f2146)", - "P->V[35432:35464]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 910, Column 3: Field Element(0x267b7483086847aa3ed8386c822e569e309e89fb88327784a9cad28fee162a4)", - "P->V[35464:35496]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1497: Hash(0x0000000000000000000000002039a2ef02e910233495cc23a386d0607d34d5ab)", - "P->V[35496:35528]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1935: Hash(0x000000000000000000000000e31c913538d0dd9529f362b884acd1d88a939530)", - "P->V[35528:35560]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 749: Hash(0x91e83548b7941a93e72bfe18be9620ee2b297331)", - "P->V[35560:35592]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 966: Hash(0xdd5eab8bb320292bd001a190387a48d37fa41c88)", - "P->V[35592:35624]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 375: Hash(0x354b444ee501791b91c5262f1391e1d94021cc7a68e7c43242ff1e1af7ca595)", - "P->V[35624:35656]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 482: Hash(0x2330f02d4b1f88ae9b9d2d41f0c5bb2b29f34c7f29aab4c132aae12bb91020e)", - "P->V[35656:35688]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 186: Hash(0x4914f8e8ae130df1bf310fd4dd2b216c2700f3d04ccc5c2b5e7bccfd19bcd01)", - "P->V[35688:35720]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 240: Hash(0x4b787a3503f4e24b8c52af5dfbb13da8a94cf42254fb91637d9404f9eb6b803)", - "P->V[35720:35752]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 92: Hash(0x768e0d6a974c2a29c8ad16a7a9371079750bb39973980e4eb4a56ae9e331d95)", - "P->V[35752:35784]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 121: Hash(0x57cac4dd4a1ad34a391202ab3f59eb719404f16d6dd7aa4a0870444ecc906e6)", - "P->V[35784:35816]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 47: Hash(0x3f71dbdb438af76b770df4b29bb7fa5292b8b0287ebe76ee3b47ce2f7f7edb7)", - "P->V[35816:35848]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 61: Hash(0x13ac7c1823ba02d87ce4a9cd64ffb655c51ecb35f60f97e2b3903156a84b6a5)", - "P->V[35848:35880]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 22: Hash(0x28bf28213476cd85dcc544ae0fa1d2a18741377bc16269220e9c2886fa92bdd)", - "P->V[35880:35912]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 31: Hash(0x21d03b9ade99684e9dcf6ba55b7771ddcebba0f8cba4139d28436928602e853)", - "P->V[35912:35944]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 10: Hash(0x48c0af0c7e59366e931e4de158921e02220ea8138edf889dddda02d63d638d5)", - "P->V[35944:35976]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 14: Hash(0x353fa86099724bb731b7159c9154ebc454987a4b3c47d16c8d701663903fa94)", - "P->V[35976:36008]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 4: Hash(0x3d7d10869b8fdb5818d28772ae69fdc398d638754a17ef70be561d053524d90)", - "P->V[36008:36040]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 6: Hash(0x4fb068c910bfc540392ef8b1813c2c949fc5dc4bf9f76f7398e0f6c90d2288a)", + "P->V[0:32]: /cpu air/STARK/Original/Commit on Trace: Commitment: Hash(0x381616c366cf760d4574dcbef86b7614b8154be974adc6f0c60992b030ff84d)", + "V->P: /cpu air/STARK/Interaction: Interaction element #0: Field Element(0x6ec71c0e73c0db6191e2163d352e07de108e004609d0b8acd4dbdb1b30c4f5a)", + "V->P: /cpu air/STARK/Interaction: Interaction element #1: Field Element(0x10b60fe137d970a27319d486aabb868df0a7ae3ae87a4df6ba24755a76882ba)", + "V->P: /cpu air/STARK/Interaction: Interaction element #2: Field Element(0x32c9519e11807839ff8fe8b710552813a334d5b684e6de5824f053dcff96c34)", + "V->P: /cpu air/STARK/Interaction: Interaction element #3: Field Element(0x74cfdb297c12835c8c451abda6d31dfb4d3ec450ff72f135c079ca8a1986d97)", + "V->P: /cpu air/STARK/Interaction: Interaction element #4: Field Element(0x417a7b0a6f8478d6896665cec1076aa71437a22a3b7e03db41ce47e7bde3026)", + "V->P: /cpu air/STARK/Interaction: Interaction element #5: Field Element(0x2247431766262ab71e528c70e156bc205fabd51733ddbaa4439a28a527cbccf)", + "P->V[32:64]: /cpu air/STARK/Interaction/Commit on Trace: Commitment: Hash(0x77f42dc791f94a825a3acee9a4c1091a02d3e206947fcc5fc8a9f89b9c588ec)", + "V->P: /cpu air/STARK/Original: Constraint polynomial random element: Field Element(0x271bee9f77d72924ae16ee6f4962b02a08bd24f382d5f50beaa3808f13e4b57)", + "P->V[64:96]: /cpu air/STARK/Out Of Domain Sampling/Commit on Trace: Commitment: Hash(0x3086d3e12deccef3cc624f11f58c2153e7038e4f9b73e5f3f1f219409043147)", + "V->P: /cpu air/STARK/Out Of Domain Sampling/OODS values: Evaluation point: Field Element(0x58c26381e26ecca15dc77968aa1d5241305815b97d2bee4dfe75dc1623d2baa)", + "P->V[96:24320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: : Field Elements(0x5f3714ee77d06ab0310dd70409adf70bf7f619770221c2a7d2493dbf8b792ad, 0x2d5dc06ddd9cff9d774b02d0cd9565a369e09eeafdc36853ac707e8d5c3af52, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x1d5c2c373e7317fe8f6e36fe10df87905f5fc11b2528a8653e5b0cdee901211, 0x5edf8d8cc190796eb248558dcd9d9824f757f4992cb29f0aae354af98631e7e, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0xf2382c14f5079036401e1f22d8174e6a3df39718220ee0f4eddb98c703c0ca, 0x4bc6aee20fe837b9c6893713d44fe4398dc34e311d2be79c4d1857381be357e, 0x5564b59dac44f3a7e0c43ae95d090b9bba30f44162f441febe955cede7b3657, 0x4510830a22076caf59c6fa5c65a5de7e608a8d8b5e6e9c9bb73cf5bd412f473, 0x4bc6aee20fe837b9c6893713d44fe4398dc34e311d2be79c4d1857381be357e, 0x5564b59dac44f3a7e0c43ae95d090b9bba30f44162f441febe955cede7b3657, 0x4510830a22076caf59c6fa5c65a5de7e608a8d8b5e6e9c9bb73cf5bd412f473, 0x6426debeafa13c7d7d94af28152fd6ac4dc55fd8f7959fb1834a374ff6ce6c2, 0x6426debeafa13c7d7d94af28152fd6ac4dc55fd8f7959fb1834a374ff6ce6c2, 0x77cba3600682fe74e1993047b66f596d10c3e45ed310cc77c23ffad8ab9a578, 0x6cf43212184a6ce924f7a2efb34520241f80fdfed24e39484880d28b61b3ec0, 0x1afb1f50c7c3bff94e1b84fd09c3d5b1f3a8fed92ee0df53d9462bb6f5208a3, 0x77cba3600682fe74e1993047b66f596d10c3e45ed310cc77c23ffad8ab9a578, 0x26417525878f0314aa2032bda46f3b555f3e51d2899e666bc639239eb3a2f48, 0x26417525878f0314aa2032bda46f3b555f3e51d2899e666bc639239eb3a2f48, 0x6cf43212184a6ce924f7a2efb34520241f80fdfed24e39484880d28b61b3ec0, 0x489607ebb0f82d9ae18ee141083c464202bb430945214713dcf8cae04add5e9, 0x55b5f7d81559357b15020b3c57a74ad3baf0a381b789d8d3c40712fa2dfaba9, 0x55b5f7d81559357b15020b3c57a74ad3baf0a381b789d8d3c40712fa2dfaba9, 0x15fdec9df495ccaef4203bdd177cd280e9376f4158b42181fc422cdc729b4c7, 0x7604a142186fb01ed964fa17c918327d0791094fe3e9fd12d236fdcbb33e151, 0x265fc7830c9aa5a05214f3ab7c81d20c354a89f29c5770fd7a4b7fdd6c8712b, 0x74913d5ec4cc3a2c108bbd9d74b49dc0998fda277089f8fec5b129f03e6ee65, 0x4ecb4a9e8ee02e943e8b81f1469d014a9c5baeac8e40bc78ab8114f251d4337, 0xf2382c14f5079036401e1f22d8174e6a3df39718220ee0f4eddb98c703c0ca, 0x323ac2c9df83b57ae43a33dfc74c55055633127bcb36f5069138c160a8cea6f, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5898259e3014da1adcb49fb1be2339aec3bf24e04323585670a3f96c6917b71, 0x55d5a23a828430785a0cdebf49903ae4486d52475414713960ca6410a25e4fb, 0x5dc632619bb73dee103aadaca7c9c5091f12c188aca470a5ae046a4ec3e9942, 0x50aa8a58bc746418a6f6ac3966a8028a5b78e0175b0caf264c979e8159e1a72, 0x39c29c650c4780f185764fe967bd67f0a9cf0a5af7dd549e5197b21b36e82e1, 0x3991857f42b1f0eba0b3f73aac84da0e7e1ebea5ff00aeeea20fb71c2b16b20, 0x6881cccc29ff6c83486ed6a9952328f096e016a1945c63837cc786d4333fdca, 0x8ffc38e6c16bfa2348a1605c9393b3a159f4d63c46496ca1d9d30722ab47ff, 0x6d74ec59e3c09f3d3fa48320076191539efb3f348e2a8f8d73a1d7fc9b7dac3, 0x1afb1f50c7c3bff94e1b84fd09c3d5b1f3a8fed92ee0df53d9462bb6f5208a3, 0x33369bd783424356fb576591d0be518d300ef03b41a15a8424c753319071b7d, 0x33369bd783424356fb576591d0be518d300ef03b41a15a8424c753319071b7d, 0x489607ebb0f82d9ae18ee141083c464202bb430945214713dcf8cae04add5e9, 0x1593ec661b5c032ce9be2ce5876119dda1c220cc7a76ed7b6a2ea405353facd, 0x15fdec9df495ccaef4203bdd177cd280e9376f4158b42181fc422cdc729b4c7, 0x78bbca345ea6024f57586c6af400f50f68a31337d49cbf071d6b884261e5f82, 0x574ee118a75059b97ccdb84ca73ff132218365a6a4c924a2020a2d3013c7cd4, 0x17a9f6e5fdbe3e61d743cbf3dafb9f8cbadd7ae877beb1d3fa64cdf63b3b2e2, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x52862e089c018df1e7625cd6299aa86c6ed2ff92239366d573bc5d2151d0053, 0x70512b4450df595f8b24e7e958603166503e8a05d6cdc048aae05e51542dac9, 0xcec82f5a2c0d63f56fe5a37d061deb2fd9b10667a4c3390f770e9518048a2b, 0x501004577c67b4c4fb95a0954c034ed461e6a56182215ae975fd7ff821108eb, 0xcec82f5a2c0d63f56fe5a37d061deb2fd9b10667a4c3390f770e9518048a2b, 0x501004577c67b4c4fb95a0954c034ed461e6a56182215ae975fd7ff821108eb, 0x77347139bb14607ba386e76d8caac960454c86a13e837ce0b42743a6522b772, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x62ed08c03b9c8fa1809179b4dbc6f29399293eb80c90d254e819eefd555b417, 0x6ed58adb12e64d30324df62b283f516ef2acbf2c422c313ecf928d83e5bfcd, 0x1d73b460b086387927f22e6d3594945624d97dfa40a5d4f38ad1edd71c08526, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x15de2a7139762d7fe7367430ca73b9ac0f64bf4283ffd40bae1a8f6eacf35ef, 0x1cfbf3d9dc3c6f9af0dcd5bd7b02e3ab7fac2a899c756e4c0ecb4b06c079db5, 0x10b7f3c01f6173539a1cc6a9bd5d6682caddbc93238a8a473e04e31f8adc552, 0x783f2a47b6130718d351b7e7de25bcc272daccfb604df23b482945e400da5ac, 0x597884c58b5fdd21097aca245260af03a366c356c58534f65110fa98b95ba07, 0x17e87932ef6d1a8252c7933576eca8afda5bf9e024c8256840c54b1c1aa3652, 0x74872cd9af308db3bd8a834f34f6056c243ac12557767cd046b103efea897f4, 0x623461443fa1a6b4e9ef8f4814111b8608d599546c673f3e9b48ee437da18e2, 0x373110f1d14a4876ba86480cdfea5529935b133ae0b7920be4d5922ba937e5a, 0x49eaf1f2a9aafff9075d0083a8680b3913e7b4f4abfc49909ac35001d32efa1, 0x460c5eb682794c18f895d85efd8ba7d3aebda51eec6b552eaf288c775d6607f, 0x3e3d895f75b07ff82b90838c99e7cb4578e94bdaac5caf6a2222bc3c864afd0, 0x1e145204c7cb7b7e3919966994bc3dee5ee90b4cebc47b03fe4f77554ac9f29, 0x4a18ba654190e9420f052c0e58880fcd2f80798e3a439d1400a9e2b7fcd33df, 0x2376eddb3c5edd39bd94ab99d4f5490a2b6430e24b4eeb832cd446c9021cf25, 0x346bfd404f064deb2847bdcdc4373e26fc399ea371b131e5a2dbab69d41bd79, 0x71b02899d99cac3a1b0a0d1fdc0e29740034681c9ebe40f62e6c9a1c590649a, 0x6f2f17ccac8a8e7b02a03bd44cc46434f1575f99b23b0ba331ce81f7090e631, 0x5f3811574beeca97944cb7c481143693e50f092fe4321f734f497e7ad247923, 0x65cf5eb94a6588df72fa54e28d8ab390843dcb6cd187f86e7092ba9f99e1115, 0x72b71601ea2e9b187ff31692f7890fa7d015ffb5d7d18009e1fdf1be4d8cccb, 0x66a6b416b30652501fb3b2159154f525639a56e6a0749de5334b46b5ce3c976, 0x26326d5b1bc364aa00faed7a18ea3acb6f3de18d46438dd8def16e9cb7f91a4, 0x2d1b63cf6408b48aeb6a371131cb4401d3d020662a938c4340f5167267e49bc, 0x1919cfa07e951f212e7578dc2ccc0aa83e11a5ef761e36d0d93cbbefb20fb20, 0x5104d55a5e657c2f6d5062c2ccb75414b770c3810750bb22f7e2d36eb2a1c1, 0x58f3aa068b1182400c4ac403c8bd1531c9f39f4505a1acc8d78acf874dfba39, 0x54d439b31d02756033efa1bba8bd5eb8c65bf3132ce04e668e37ef0d02d6eb1, 0x1a8f09af6671055126595ca3af0bf56db3033901dc031f48a70dd4b1b3f84a8, 0x7c1b2263a3d00cfb4dad8e26b9108ae43bb5d6948a9e3b63debaaf842d52243, 0x33714901c7d4906dc263214732bbeeed57ff09d39112f401cbe167776c2f62c, 0x134ba413e4f5a78c91f9c1362e6bc3831c978eb2d56307a5183ebe1e977db20, 0x77c29ab55ae06fcecfa12cff4925a22f55dd0cb662b03787186dcf407d0cab0, 0x20bf3b795d1ced32341f85f689e6b2f0723ef3f49d15926f7ffae348516cedc, 0x530ff336fa88dce2c188cb36a92b0d4a9d8b345fc3b5dd8c1ac237e64f20e8d, 0x6dbf1a2f121ff3eed873d3df0c955f05ca528811cde4e536e64e0e65f232d1a, 0x79400c566f39456f2d7ed8e5745a49ed06c93d4368eb56362955706cf19ea04, 0x6402e80773813cdd0f0c8771e01bd18e046c101b683931b3fa308198865e7b1, 0x53c2fc7f702c383584fa4731a128ca0c132db6a7856c538788fb9df33a43cf3, 0x18916a9bd6bc339b63f6779f72675859b27d6a5730779e00fefb549a70ec30c, 0x752eaa68b09f2c986db80bca76077d714852f1badc8dea6a3bca1bd77e3edc8, 0x16a4ff5a1f6df7f8f035dbdcf12faa2cd2bf31b0fff6d6af0a54a7e580317a8, 0x10f2baf9f0c3aa470e1f95eefd901cb9297c1f4fc4a5dde9a9d8b5e73d3d09c, 0x454a5c31b05a6f72e836a3638a3e913d9b36fe5bdd7dcd77be40f3f283d465b, 0x8ae09082dc0e09fe995ae87e0a796d258e33bd2de683aeaf4f8364ac20e6c6, 0x390d96ac800168909c331f8f481df499d530d8aaa1ee9716b8a931d865f3157, 0x69ce4715d10a569ddf441a2f60f9c2e586ae3282a837d4dd767d7bc66970e10, 0x2492651ccf17c2c2e4e61c7110a07eb504a61403b5e9119f1468805121a694c, 0x48471a4f60f8d3db4b1e0a91259a7c3c63ce3637a01eec2c0d6302505a4419c, 0x347def9811fbb49060c6f3dfa775e3957cd4dc83b9af10f7bcf98fc34a1ec94, 0x55d93b1371353f133f01ab3f7ad471305e469d59785a5fc1474d2781be04d65, 0x65d114b564d804e5a01f280f3da8458d8c89a837d678c07c80bf536128160a1, 0x42f32ceadb67d08a2e0f3beb77e4b5d122994db3ee5ddf21c39e96785eaca85, 0x4d871a28f56b37dfebfe82a37eef15b190d2ef494e4c403b9c0b594b0b80206, 0x2286ae794727927d85809ed2da553a56891a9c3cc1008c154bbd30ea2434710, 0x7e6b2e42ec981b5b73e1e9ae91ea5e10c756a0dfc86c3afcfbe33426b4ec1e7, 0x4f460e75831f9ef37374f3bddc46c9f438041b80f12c35e0841235cf32afbad, 0x61ee5ac67ed3a546f3f1f5839782625ebece69426d6c56c34d7176d44f08290, 0x4fecedf9470ed0f9fdbfe9c15cc84daaa7080a94b0564e42d3b2bdeae121865, 0x7102e757e2501627621005fbd886e992257f08a62f4a2e92dc3f546bf3ae519, 0x4dc56ed1cffe71073ccf3f2205c04bf7b81b371aef2859be100e55d0ae77424, 0x54112382b533997efce50cd3b50de29e23a46dbd4cafce9dba138bd66ea8012, 0x233dc0eb97a27a272b3e702b5d0b660334f5f40913d6b2350d5c1fd6f663c22, 0x1533924824eb0feba546d3faba01492fa941304e0dc5e1f94b039a43bd3f769, 0xc7abd528ee9d94f654e7e9da85111efb250d0be8f933e5c1f38500469f2ad7, 0x1b2f17249a7670c8ff121fda886db71e353689e2c782f23c2d1abf8fb5e08a1, 0x40256033f938590262ba0d751107b8df453e095c551bc06cdac1e7948c9cdba, 0x61483d061b77488b154684ea61e3244e847508e5947f3a1b9f8ba5c2aa23c75, 0x33009a38ff498017ccd778ea7e34dc4266d43940a9c2e508cbfee1481d42bb3, 0x5d7bca3bdbff51d3fba87a5df47707b9f2a3ff4a3fbb29afd713cb1f23cf7fd, 0x798cf77e5a25c41e0a6031396de29ae841bb8f87bc660daa6c69bd90f64874d, 0x706454c5be9fe792443aa0bd9ded950cd0ffbe49c9f1b82e0dfb1940e13e9e7, 0x14a0bc19c1d8c8616f259d574abbb2d5e38d55208d476a68a839afe756d9c85, 0x486ede9a03b6654f96b00797bf430b3b36e31f7946b1c72d7052b35d4452452, 0x2a6b1035d6dc3a5980e048073844eaaddff9c78d889f0e903ff3899155e8bea, 0x378a889ac4aba18ee1b2f48340a1fab908bc9801958afb30f6062a3c8e2fb29, 0x5f38e7e112948862190152b98d808765e8768ced687a8913feb79e98aec1470, 0x1d96a38cf77aacc6c4da791340407812b4c431220005754212cf5cc006ae1a9, 0x5ecbdbec25d81c9fca0d6d8ffefa00937408d868c2ab09afe351af320dad2de, 0x1d96a38cf77aacc6c4da791340407812b4c431220005754212cf5cc006ae1a9, 0x2e5d52bbe194bcfbd44dffbf5ef3fce7496aa00ddad77cfa6e0b22e624b059d, 0x6d635c30f27e5f78a6ad04008452bd4f6ded487610722616be536fb8b389c20, 0x280f9ade544c58f1dba839969b909b5ec7b017e663fcd03bd101f7d33354e82, 0x5ddfd14db4516e79007778861c82eed33f65fc3c9eb4e8a42ec3b8a352116d3, 0x22c2edb3ef140336a9a076e2666a5bc377b579de2d67ef1f27e5840782d24c4, 0x50a5642e1a4347380cab823c7062af390af6e63ef6ee73fa2ee8c097c162c6, 0x48062f7ff4d224109104c390e91c87b0c4e8fd1a9a77a7307b51008b590823e, 0x248a6ed3816369bf19ef0c952026f6912b18de674f3848a86b8dab0c02fc739, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x108b044a9b2f0ef93717758509b9f2b2e80bc20f5e64439ee1d8bb865bb74c0, 0x48e98d89f301400beefcd1010d546edddbc1cba9b7b757eebff255bbf1bbdc1, 0x9a8e6e2ac47927f0fa85b9a2c948caf8b18804f758bdb015258b00797d58c9, 0x1d8f523b60430d731a76640d08924b117e9aba92dcee01b607129ec897a8004, 0x33adf89a8c532942196a10946e6d250365b8265d36bcec79f7264f62244c2d3, 0x1b3d5d32b6fe7ccb9300b3c1adcdc1a792f5eadd9366cfee448d9d6717df160, 0x4b0ed66087f5abde13ea2b4b157674cf39818e35a1b814f5eadbd164cf5849f, 0x14578675a4be03e4ac975bfea2668594a195df3e66e06c077673090f4168482, 0x386b76681b8c4f812f530e8fbea18c1790ab9cc062dbaa016bd8c0b40e114b9, 0x54422eda3878847971edb70f3431bfc6ef2365a3fd1d9b5dc82099615447f3c, 0x80b1a9da499de54cf06d60b28f66866391510f670d1d734c17dec69c64ddef, 0x2fd2d2d729aac7c10e066f595941a23db39706bc41b43363feeb88336d6aac9, 0x568a5048a7081847f1901371ce9cb9a2e7e8908e4d9641730f53692292c8c65, 0x3b6ab048e228b7421ea1b5d7b13749bfe1223571adafae07c024b88cf9bf3d5, 0x111e9c812916b688ce047e18889f54b32cb136c1d2221123500e75d4c666922, 0x1d002d5bcebe58a8f52dc2376268e394fc98bb128977676328ce3e035ef7900, 0x56b22dd3576fdecaa6f1cb7f25051afdcf8175f689ec61e639ec00f4da4078c, 0x622097480871513859cdc3b5c2f6556e0d9415d65b7513339b913828f35f705, 0x2256dbc46ddacb071aba73c930bae64722124fcfd20f72febd9129e69021690, 0x2ea3b2f56891ab766567e5a23c44d857a23ada74cdd61ecdaafa0967f1075f1, 0x1246e3d3175f352bb13f4681823223985064bb4f0dccbbb5d4cbecb4c43f68, 0x3c1e4cf80bc8b4a38dfa75c3925d177e83fb0ac8191c68634be45df6da37578, 0x1f399109e0208afbacf3170d1a3d09e4071ca39317f951273d785058552b0c7, 0x1574bfbfda31445d7cd695964662a4351622844f3c5eedd3e02a2b91981b600, 0x65818bc775aedce7ec51065cf031b13c89cc3cb5f3308f22401c866a3fc299b, 0x5e5b5e197c7a50da77c89c589d0e0d3314f408f53e8657fcb12e6b48b4e2287, 0x72eef34516e9a08b13db2c940638da180c6e43aa07e3c3cc2865e8bb0455f34, 0x7f7c8ac31d30dd494beef045a72857500a25e58949676aee26f9e415a074744, 0x2a59103de3959f891260bf39104cb1dbd63cff52da8c5628e1418aece137588, 0x7e8853fbb9d16419fabba0872fc4770e6f5a74078b5b6e6dea829cea374443f, 0xef736152b1b13524e921da08688bf5501f96782a3de6e4a01d1ce697905e7, 0x38693bbd35056a5d27191c41c0cde290938280580a9723ff347d5b682b02f7a, 0x2166a45d4cedbe90203f93f01230b2003512a3864a657253074567481f94e51, 0x711b0ba12190e15de0ec4d49454987b6a66041eb5b65b844a271069b6b3f5f2, 0x711b0ba12190e15de0ec4d49454987b6a66041eb5b65b844a271069b6b3f5f2, 0x78a0cf447d9e2a0c38bdcc99c824bc43da28f015a2050b792bf14d60eb7b5c7, 0x576bb3f3f27ac0aaa7a8503f1e8f1902eda5c07543460b09dc830290824645d, 0x4f5e83a4c9d349abc364f0b57b98b45ad752a6ee1a3e9be22c84a533a23778e, 0x74f33aad947e6f12e290d97a96201024dc9151d0a694d8d425d706fce55d5f7, 0x65ab548666e01fb90451ceb2e0d4c0018eed1e9d55f405c58a2b42b1b873c2, 0x3f2ca9627c6d669307ba5e1310e2ba337ed14b901b512de2ece1bd6eaf6f7f1, 0x98cb0cd84eb9911fb9b33594777141da4c263adbc5a79a994c1b5bb5a2903b, 0x4bf97677aedaa70144025459fd20835efd1f0bd13da1f5cea0a80144e2c8bb1, 0x7d4319314a5b5c4bb3c6e317cf3c32eb3b7966cfbeb4dccbba94eac5d40a11c, 0x269f829e0665726bbf505a6a8559cd3f5eb25bf9c977f03527980703339b161, 0x4f2bd6ff19dd26749e862d43fb849928daf0f194e7a426e30e96265e4c88f57, 0xf0a499b8c656452d7bd8d4c11a2f6b380e70a5746b11b1e8ad58037acd9b0e, 0x2b821ab5487ffb349d9fef93fd342467dbf99c85625f2ed7173b973b063c7b2, 0x6e416e73eb247a47fbd682a605b0cd4f2ff9a62d32ea54921bd65353a8e19a8, 0x60a46f5ddfb46dd2472dd45942027aec477cae82a976d09450e4dda6d4a1547, 0x5fa9b034cb44c00441d78e728542d93b689ee2cd91f0b93e6d987d4d18d56b7, 0x1fa597b87a42688f75002d0b70353fad7162e7eb9d6683768b4b6c62b1eaef1, 0x72d9bbe50f431c281b0fded9f337c4febae1a7354b17489c3b63683265748da, 0x7268f548aac1c638284fe1f1c29b8739335bdf0213154862c6356449505478, 0x3f566f21f1ec83d4757cf09fd8650a18b2ff3415700332bcf02a0db9f2a4fba, 0x4df7bc19ece589c95db3a2b7e2b857af1bea703c1b344ed916ad9f8142289eb, 0x4b65f8ad9474177e98e61b7925d38bff716f10c809079fc747b0f8f10c5d9cd, 0x4943fac4b74083a30df302f217f66d43b7bf7b9d49af0d2995f53fb467d4068, 0x363d2b28b0cf8ca2ac2751b8a1b9db330e1d8f77504605fc8a6138f08ce5d87, 0x34e8bc4a2a2469bd119f38e21b3f5bfa415a60f469b5e1839aded41eaac9742, 0x6cc1552cbec09d4717409aa561681ce3cf2552c96fd562c3cd9ab3e031beebb, 0x79dd1682c7aff46dba1821db74592dcc1c72569a52bb0441ac1117f58046bd3, 0x76c9982732e631f647e0a6a91eb4674f86b33da4d504fc93df96e49e45ca275, 0x75ba83cab7347c1d8c70a911e8c10650db850aeabba499bc9842e9d7be9af94, 0x16bb4155a1bcf3724f7ecd968a2447fdf9df7da277f5d66587384b3dc8bdf78, 0x70f1bdad6cfc80191d2404d9d0c586e2d526bbfd9ac1b9ab11079b9a7821aba, 0x16062ab351712b674bfceff957fd70f308e0ccef5c2340a4d742541cf39f603, 0x27c4f2af02dfe2efb148411227280d168bafb53109305c3a93aabd16628dd8b, 0x68e162b96a3a4c900534dd37f870d02dac639cd35c70ab96bce382820a56c68, 0x5920cf064a62db8c7cfe155148a3203daa2cf36810222e662cb43a1f832dd0c, 0x5f5ae3e5af1184b2c9333701b76d476ea5a612f9857ca2b37daee44426db0cb, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x1a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x5d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x2832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x20bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b, 0x66d5cb03db92d03fbbfb6e29bdd2733de49bb9fcd32e2140b8213bb317a3e5e, 0x467d6e50646c1664f443e26418c00c11943a8f6c778fbcccae343ecb02aa3c8, 0x16c419f0a0d18f4d9f4c57bb0f50b18733ee12e568f88e96f851e8280a81dce, 0x18ff566cc8fc01d79a2dc44498097a9afb7c8f174b6d878f197de287c009fed, 0xef784a5df3d7bf1552e03c9f95349aacefb37ae4614bcee0f776abb1ccbe91, 0x2454e6d292f7077599204e49556d9b7b974bd197e62284a69f5c17e92f1d967, 0x6237653110d1250a5bfd623436b0e19f26262c75547ea0f2ffdf2afd17f366e, 0x4d30b5976870da7c0ed9d72cddb06bcf1e60fb490aabe0f9921e9b07ed19b2c, 0x1eb68eb929a931566720bc64ec37fbafbd7b3e5e7cb57fc3528e8746e7ea501, 0x94b9f1ee0d1e2ca7dad2d2bef85d829ce9e1f85bea5dbc9ebd9baa93436afb)", + "V->P: /cpu air/STARK/Out Of Domain Sampling: Constraint polynomial random element: Field Element(0x7c1e0e8ecc34708fde57b0ff5234fb3d03e16b8f57037d18f68454e6d1107ea)", + "P->V[24320:24352]: /cpu air/STARK/FRI/Commitment/Layer 1: Commitment: Hash(0x2ae16d916da4070b2b1553f4278ad33a36a7ccc166547ef23a3bedb5d4b1c98)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 2: Evaluation point: Field Element(0x5c7efc0dad1368e81960db1df2db19a815024a3f2acd1ec1a1eed26fea71cef)", + "P->V[24352:24384]: /cpu air/STARK/FRI/Commitment/Layer 2: Commitment: Hash(0x19f451cdb4d718afb5b2f87e513fd451b5c942758c4b958f9d230f9c18dcf1e)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 3: Evaluation point: Field Element(0x1ff4d21101ed5aab13fdcadf5a1d72427862bb0cfbaf080dab23238e7f73c7)", + "P->V[24384:24416]: /cpu air/STARK/FRI/Commitment/Layer 3: Commitment: Hash(0x15f7469bbf1ca8cf2e8d69098f041582fd1d520dd021900d367fa09c29ffbc7)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 4: Evaluation point: Field Element(0x79141e0f08bd6e2f4b3f9048c895f616ab3f1164ee4b7cfa19206d5c4373933)", + "P->V[24416:24448]: /cpu air/STARK/FRI/Commitment/Layer 4: Commitment: Hash(0x42febe0b20aeee6539ecad38b6fc21427a46b81e76c8da6356caeb5f05812c6)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 5: Evaluation point: Field Element(0x4b54b7ee805fcdbe6c05a4ff570b89e93af449d0de3dee367a3d2caa24063b5)", + "P->V[24448:26496]: /cpu air/STARK/FRI/Commitment/Last Layer: Coefficients: Field Elements(0x6e17143addce12acb3b7243701a04d8a8427784b5403d5fea40c93975adf063, 0x16c23924e0b8aedcd6619dda21f8a49c987f19d6808b024b8578eeda1e29bc7, 0x72b2f384b747247dc0bdf3fc6e177dda02341213eb8f27b888623e3e438f697, 0x41af5c2214272a8e656d758d9a8d93d0e92c17959630b38af4d406e5f478df4, 0x79b7027fff75be46a3e0814ea345409ec2bcabf5fbc1459cf3e819169aa2731, 0x31056277729f6cf92b9ac811f18607020cd380d0ff21bafaac8a9a46ee9749a, 0x2f4a6ac7df05a4edf3e050aa1a4431512786bf9edf7fdfdc0527164b8c7c747, 0x53a59a598e4febc80be91241836c1b39305b1de4a739fe78b0facd2fc8d857f, 0x42daf598044a7752818ecf8c575b903b1cb883441843e0c8b9be021daadcb44, 0xbac8fb853394c6a902eca8399f65e702d9870bd8dcf1a2bc0dd2f44482305d, 0x185ba55f94dd3e77160f600b1beeab4ee7f5707c245b01bc978e11ff0cfb5cb, 0x7a9c855bb6ba96708c7c1ed31d8bc024f664f85a7f3ab4067fdef2763651c6e, 0x847bbd097c23f8c5c7e2204d9e31962e691b40195b5792563ad7eba00ca30d, 0x5b1171e8bdbb51d10f7bf55aa6443a57db04b6d9de57c04987d0330516057dc, 0x39ba3cd52840994791f13976682b9cd5aa5f755ad2ced109593036217ad4c53, 0x17477020656503a51b5f59300d7e99afb585419231e941406ac136bd01f1821, 0x46f52fcf0690c84d10958d22d58c894d5f8f8947fd15336e729af02eac54a99, 0x1b1bbe533ec8e1b848b3a6bd77618d67cf1226ac7faa9e77fb0060b37e26e3a, 0x444a9a206a210ea0b591864fb60ff42bedaccaaeef4c71641b4df5a186ff540, 0x61bd47926c8afb6356d8863a536fffe90c5cc56d530329db510df7289a49163, 0x7fa01761a5e4c5525b3e46db99f54ba4a029989015348a3d146a504241c0114, 0x7ece11385590c1432e7bed8716fcdcc533f911536001baea28d4b0ebd06aa97, 0xbb3bf755c9d5ef69d5ab00557a812a675a0ee5bc9d0bf3609d5237d1a84c06, 0xb903eb3e8312d77e087fdba8791fab83fa2bf8c5b8d02a9fe4d1959838fb5c, 0x2b74efc66ab2e403eb5d448ce754fe1cbc334ccdefbc22f1a7c9295e14c6255, 0x7ebaa83ad5e0a49e149ee90c9c90b2077ec1bbcc4687c5b0fbb8f50b6bdbb52, 0x6577eab80a64b003e33b73b657cadb09eaaf5e94235509a2058f850133dd9f9, 0x46de25da6ed931c53b421e31f41b76f63bfd32ade1555775fbd881fba231497, 0x487860ffe5df946c9fb9c77979c20dd6272f25b5174bb7e9eaf9a84a1796555, 0x24d86fe4189603919ca5543a140fb0815215985ee1570eec800447cac12513a, 0x5f64b83cb9115da6fc4dab0a72c852f05e1d5ba2c48bfd7a64979eb6b2fc683, 0xc840a6396db24a66e1ef60aa2b782cc87431ef4d0c4bbf266a240decd2e5ae, 0x6fabc000c6c114f39fc35404b1499411982742aefbd9c626717423a01f476a3, 0x24e79aa6671c3f8a9b6aaf283258da19ba2f0d05be5b32c06953baf97d497ee, 0x61e0d32c83ad59047a39a70d70aaa8a45724275809b9ad36545756efd867827, 0x49715a3c5ec31422ec02b1ef36f8063d136f0b82a95a0f598e53f19e4eb465e, 0x2fdd22d24f7d456a977f0c62da376f69d31f9e62d6d079c6594f19fbfabeea7, 0x307de993079abcf54f6b8d9bd11620da11425a021e0afea968dc8b6ffc3c436, 0x66f3b8126496af9945890381a8c6a150154e010de8a2eb8ffcdf97430612cb9, 0x39322b35d2cd742f765e5432f76eeac090df8a7e9528c3f3559469f27c91ad3, 0x4cb76bafda2110da64cd247bae883efbf49d09d5e81fd4524061dc58a2fcdd1, 0x4a5776892893b9d75e5b7888968f1170272171a0841017422f5f7980ca06054, 0x37c62b8adbd3a0eca8c73da2487a205c1b61cc881f02aa37aa153fba8ff2a6, 0x7d0680d05de136838756f66c60d3d74af3d31257574fbd5a96d45f8d2fd73eb, 0x539c174f205d559fa23f588b9aac8113c417cfecb072613c6d5400af5269bbd, 0x54088c93914617d446a2968a7c229ceddb12c475f273864a23000119048e822, 0x452a35ccd6bde9291000e86c09c904f93da2613888036dc7866222defc7aaf6, 0x740e397d6ab602b89bc8f73743febf09fd0d17982c3d39ae970cc12ef956d69, 0x53ce6d2d1ec66b6726aa8c40ca72719bb4aceef31981f38e572f6e7570ef91a, 0x72ef7361e733766a364aa143fc8d300be9a1dbe060a653db65ad558956d96d, 0x8a973959494776dc38b3ff7259370b1d82e174a996e33e667ffff9d647b978, 0x27c5f55f319d3f9bda929346f24af98a4437d89e07ae83270bffc734e341b38, 0x6301dc31f5ea218019ca9cc82cd680c1b8155f0b97494cf61a8cf98f4864cbb, 0x76132f4b26768457f15b4b72bcac5cb5fc35f6969bcb8f3ccdff90ac3f3d0a, 0x22b823f09255df70dea7e3ee57811b5cf8abbfba0d363151ee136a7534270f6, 0x5d239e2d25ade54cd08b8bc6235404e7e951e2eba99c822b5233389394145db, 0x318b6eee1f3eea71adc62ad33eb948f20abbf54ca7bc6e6aca2f99db2e2bf1b, 0x69d77f4de06ec16b18de7710e2609874d492c3b7d132448d8d86526ea7b2471, 0x22331f5bebe0924a6c597cb85f3ffe64bd9a280e134201124a1ce4ba0abac1, 0x3931bb7d40414314bd1312c42544a27280e887c07794661155027d88c28f3ea, 0x635d886de37962aeafcccc46950579694b18bacddaeb29e0ae94b57bdd2d751, 0x7c0ea75921a1d5161224a94b0cde22c65bb7588fea63cfabd9f9cb523916b3, 0x47b68d625bdca79d8ae0d714dbfcbdbff7ebc5fa69ff2824ef332e1ee20924b, 0x12cd173528795abb597fa446a2ff694ef3d8276512987a0ddf2a99321467978)", + "P->V[26496:26528]: /cpu air/STARK/FRI/Proof of Work: POW: Data(0x4791c135)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 0: Number(1774411)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 1: Number(825216)", + "P->V[26528:26560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 0: Field Element(0x534f768286250f161022b98a53458b9547842688b5fcdcf2eda33b2a65b8acb)", + "P->V[26560:26592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 1: Field Element(0x30f9015b18ebe7e3b9a8868fae66a396f7a8f8c73c6efa91b4869682639397b)", + "P->V[26592:26624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 2: Field Element(0x4bbdfed3b62ff6c50218640f0ae98fe2ca704cd493300fbd6fed6f845e028bc)", + "P->V[26624:26656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 3: Field Element(0x6821ef1021aeba5c0caea60452c7153af3c8da5817720a1ecbd5b4df5141fd)", + "P->V[26656:26688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 4: Field Element(0x2c0000d186a507d891f36686900d0c8c591229c5ea4843ecfbe1ca90568a7d5)", + "P->V[26688:26720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 5: Field Element(0x151a2a6871ba8ab21db821fc1fd7752e0a1caf36ae5c97a1d256a6856250d5d)", + "P->V[26720:26752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 6: Field Element(0x109c4f353ce6e8ba8a019fba3776590abb45dc0b691f5f93b71bb6c0cb4340c)", + "P->V[26752:26784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 825216, Column 7: Field Element(0x272ce998ee0be710486c8e241dfc6cbd7daff9941cf0502b017e1d14581e0aa)", + "P->V[26784:26816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 0: Field Element(0x2f2f288815c310318fce88d5df4d11d0a5607de2a581c7b65e67980cc851c59)", + "P->V[26816:26848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 1: Field Element(0xf734d09a72de920a065246d50793ec8677051ab07177c470094cb63bc94432)", + "P->V[26848:26880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 2: Field Element(0x6948ca2c89bcca46ef31c22e2dc9f99cbade6bfad555b0cec1a79452b94d365)", + "P->V[26880:26912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 3: Field Element(0x32a087e970548d4d7751fa95a32d2ec5ba3330f10822860363137f32d544abf)", + "P->V[26912:26944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 4: Field Element(0x6b1d3b1e66c2f5749faef66d3eba3b2d0fc0ae77851239e4a89207ae1bfe6fd)", + "P->V[26944:26976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 5: Field Element(0x3347dc62a246c0943b17a44a26524ecdc7cfba0428a83535194bc45c300b9de)", + "P->V[26976:27008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 6: Field Element(0x5b8d4e7ab410b2c6e424bac6379812a133f3ebcb7085801f0812b1cf7aec599)", + "P->V[27008:27040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1774411, Column 7: Field Element(0x290ae55e327ac119a605b11eda5a441c78a37adcb3f70fbb4eefcf50d44ccd0)", + "P->V[27040:27072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2922369: Hash(0x00000000000000000000000095bb8275fe5b8a9bca662f410ae46a8a6869ae81)", + "P->V[27072:27104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3871562: Hash(0x0000000000000000000000004584706fbd8f2e44f3d1b29819288a553bd7c9a5)", + "P->V[27104:27136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1461185: Hash(0x00000000000000000000000070af2ac23b55621e9ae830b6b2e2554b4cf1c5a0)", + "P->V[27136:27168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1935780: Hash(0x000000000000000000000000fa41816966169b22381738bee6a28e433c59b04c)", + "P->V[27168:27200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 730593: Hash(0x0000000000000000000000002421bc5350e9fcca34f5d6a5fa2af275319ee3ca)", + "P->V[27200:27232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 967891: Hash(0x00000000000000000000000041d39466c1518c4595d555ffa02eefb0b81c3db3)", + "P->V[27232:27264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 365297: Hash(0x000000000000000000000000e1312b4e7e4305c380debc34725cd3175e2b9562)", + "P->V[27264:27296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 483944: Hash(0x000000000000000000000000a1942f0f245700a76afdb1cbd800c424f4d8d52e)", + "P->V[27296:27328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 182649: Hash(0x000000000000000000000000c4b2ced9898d4ec0ef8e0bec636757d4600c2b84)", + "P->V[27328:27360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 241973: Hash(0x000000000000000000000000c4257f30069e8eab16b8ccf405bb2d7da5039b46)", + "P->V[27360:27392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 91325: Hash(0x0000000000000000000000006bbbb0cad04076eb51aaaf42ef130ecd47447c48)", + "P->V[27392:27424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 120987: Hash(0x000000000000000000000000b6d6ae759d8a85fd227a8b6e54422fd1ce2c127c)", + "P->V[27424:27456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 45663: Hash(0x000000000000000000000000ff64b00e075067f8a29605ad5fe2005856de4f7b)", + "P->V[27456:27488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 60492: Hash(0x000000000000000000000000623d807a76c99ec524b182ef696872c22d0e9e1e)", + "P->V[27488:27520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22830: Hash(0x000000000000000000000000b688e19f91c1390887b232fd8400542b33bcc267)", + "P->V[27520:27552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30247: Hash(0x0000000000000000000000004383ccbbc75b80e6bc1d6738c2eaf42738a489e9)", + "P->V[27552:27584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11414: Hash(0x0000000000000000000000003119d47b2836309af194b8c1bea8feb0b5333fc8)", + "P->V[27584:27616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15122: Hash(0x000000000000000000000000cb52cf039508473ce66ef226ece0c69f675e52a0)", + "P->V[27616:27648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5706: Hash(0x0000000000000000000000004eba73700b30f78eebaffb33b8a6e0cdf5b4defd)", + "P->V[27648:27680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7560: Hash(0x0000000000000000000000002caba1929688d107ca51be96d8ddee5f08b37b82)", + "P->V[27680:27712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2852: Hash(0x000000000000000000000000e56fe09b1f2f723a0d12835d0c35b040777580f1)", + "P->V[27712:27744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3781: Hash(0x00000000000000000000000069c8c069df7a3fb13c43c82d053c41f707f3f857)", + "P->V[27744:27776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1427: Hash(0x000000000000000000000000a655dd7608d89e1806017c7ac7f5df0399eb8eba)", + "P->V[27776:27808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1891: Hash(0x000000000000000000000000fd3f7483f081882b190ba183f990e4915e046601)", + "P->V[27808:27840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 712: Hash(0x49f1c962ad2b0386fced8f02201dc95fce786be0)", + "P->V[27840:27872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 944: Hash(0xad39a818b65441e2a8650fb02615e6084b2ca518)", + "P->V[27872:27904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 357: Hash(0x6b69971eb68f9d8041881f5c5ab3037beec8b3f85ba5df471f816eb6314bba9)", + "P->V[27904:27936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 473: Hash(0x5584defe09beb22bf89ed5c2881404da183797977fca417b042342e10ac855a)", + "P->V[27936:27968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 179: Hash(0x7cbabd560ade2dcda6caeb2129cc572013ae267d17de0771a7244560734f084)", + "P->V[27968:28000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 237: Hash(0x52b33a8138bb6ab0f4d5aa6f48c0261b3e1381083d08e64f9a4190883125e45)", + "P->V[28000:28032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 88: Hash(0x276c251a887d0de8c3553cce5ceb659253ca1b8c21e568c237d70e009f18f02)", + "P->V[28032:28064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 119: Hash(0x6c7d7dd6b62aa4674b2233968be588ab919a49dd3d3b8e412fe9388aa289466)", + "P->V[28064:28096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 45: Hash(0x3388a91ba1bfa49f6434a1aa1fb509bc717ffa14bd0e22500a6d9b92cee879a)", + "P->V[28096:28128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 58: Hash(0x7d1ca88b8cf517a7bbb623ba61fefcbbebd7bd9648fbafc331d7d4e8cd4776b)", + "P->V[28128:28160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23: Hash(0x9e2c17ef91194bdfec19cb030546915ec5e86c67a5c13178feb67fc9c761a)", + "P->V[28160:28192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28: Hash(0x240b19b69fbab14049acbe6472fa23304ce194392d6018b3595482737faad8a)", + "P->V[28192:28224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10: Hash(0x3adf7e6df7772b73e2863cf869810ce58bb19474246b6c6d87f6e23909cbc2d)", + "P->V[28224:28256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15: Hash(0x1443b5c3e6565475e01d0240afdfa37651b0388caeb73d434cf8deab88f78e)", + "P->V[28256:28288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4: Hash(0x347c33bf1572210ae7fda2c0479889852e4cbe092d3d5086b945b2d6303be5a)", + "P->V[28288:28320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6: Hash(0x7798ff102e4431087ae9f6cd9bbd4030b9047d7154325a3b7e7b08469cd7e8c)", + "P->V[28320:28352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 825216, Column 0: Field Element(0x3e53ca7aa7704ca1c8a9f76a4e83d0a6fbf31be14e7b603c936509b1ccfd963)", + "P->V[28352:28384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 825216, Column 1: Field Element(0x5734f204547148067d715ca29d3acf5ae5505d1b700b9b8223ee6626a383746)", + "P->V[28384:28416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 825216, Column 2: Field Element(0x3b40cde937eccba8d93d8e13ac91fb32b01bba919f55a61d99d125f728c3c8e)", + "P->V[28416:28448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 825216, Column 3: Field Element(0x755b4b6029e2cd94d148d76b1f07993a803d5e7500737ed540c0cd838388e40)", + "P->V[28448:28480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1774411, Column 0: Field Element(0x6c16e9a01ce0b71a48232666e8e7eff6fee4f8d05f38fbccbe05d6c3bff952)", + "P->V[28480:28512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1774411, Column 1: Field Element(0x5475f9d11642d906ba150e5fecb6bb764285fda5648ca8200c730effa2ff8f7)", + "P->V[28512:28544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1774411, Column 2: Field Element(0x4d27115849fa939d2b1d783f88ed7d1e635f9d9d1daa3311f9e0d4e64785af2)", + "P->V[28544:28576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1774411, Column 3: Field Element(0x71c3985f404db30779700b893b50dd5a0cf37703a4bcc5a340722e90065ea86)", + "P->V[28576:28608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2922369: Hash(0x000000000000000000000000a1d2d57d84dbc3fde1b95c71b02657f9769e8df6)", + "P->V[28608:28640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3871562: Hash(0x00000000000000000000000074711f2b7ac28c085854e0ec5baff0d018e776a3)", + "P->V[28640:28672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1461185: Hash(0x00000000000000000000000050bdaa8e2840f198eeb99bd1f3264bcb21f99551)", + "P->V[28672:28704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1935780: Hash(0x000000000000000000000000c316dcec981a25556d168d95324269929fe95e6f)", + "P->V[28704:28736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 730593: Hash(0x0000000000000000000000003e225c8d21b6635ea5d3bfb9c595f70c6573f438)", + "P->V[28736:28768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 967891: Hash(0x000000000000000000000000ef0a35a7c3cafcaa7b412a4140739634aae9c8b0)", + "P->V[28768:28800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 365297: Hash(0x00000000000000000000000066349c6711c7295a46cc25d2a1b01a9f6cc5cb95)", + "P->V[28800:28832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 483944: Hash(0x000000000000000000000000371165d5174790287923ffde856790610ac3ad49)", + "P->V[28832:28864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 182649: Hash(0x0000000000000000000000003acdf3b5197870d7ecfbbfe64f440a03b3807f69)", + "P->V[28864:28896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 241973: Hash(0x00000000000000000000000053734411b9f3ad4e47414b60d987aaa47705b1a5)", + "P->V[28896:28928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 91325: Hash(0x000000000000000000000000b15b9a526c015b627c56d4933b53c37b85eb709b)", + "P->V[28928:28960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 120987: Hash(0x000000000000000000000000d924747dfaaa07edb0478ffa772a1700d9471d1c)", + "P->V[28960:28992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 45663: Hash(0x000000000000000000000000fbd6348b7ebc57ce0c612552b3cbcc3fddf3948e)", + "P->V[28992:29024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 60492: Hash(0x000000000000000000000000817b54135128a756635025ab5e8709f57d768195)", + "P->V[29024:29056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22830: Hash(0x0000000000000000000000005721eda1de3b6064356dd2547da080c888370bd5)", + "P->V[29056:29088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30247: Hash(0x0000000000000000000000001f85fc8583def62d844d7517fe92de49196947d1)", + "P->V[29088:29120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11414: Hash(0x0000000000000000000000002bc6dd4abad3e395a58922ec85841ba749944fae)", + "P->V[29120:29152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15122: Hash(0x000000000000000000000000072ac9446655e020a5b38478f54c1747f8de4c25)", + "P->V[29152:29184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5706: Hash(0x000000000000000000000000689869de7377361952dec98f912e158e2b7163c2)", + "P->V[29184:29216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7560: Hash(0x00000000000000000000000030621a23fc27ecb75f48fc69671f23773f9a89cc)", + "P->V[29216:29248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2852: Hash(0x00000000000000000000000026a840a14e11cab8dbbb988e79a16e58cfbacc5d)", + "P->V[29248:29280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3781: Hash(0x000000000000000000000000393d0457ba6c1a5deb38acdce981e1c3f4a38107)", + "P->V[29280:29312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1427: Hash(0x00000000000000000000000036d5beef71f768a6b64a1877f8c985f733e06f47)", + "P->V[29312:29344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1891: Hash(0x0000000000000000000000008510a5b2f015248b0c0d41b0237b4192c8b2ddc3)", + "P->V[29344:29376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 712: Hash(0x1ed26a8f472ea50d17d9e65da690828cc7fa68c0)", + "P->V[29376:29408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 944: Hash(0x4d4464e356cbc8c1034c866f158235d139b944fb)", + "P->V[29408:29440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 357: Hash(0x8d15107398ed24538ee072d407574d39b33e7a680692254493165b20a80404)", + "P->V[29440:29472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 473: Hash(0x650774008b975843f10c0af0e2d6b83eaafd6e7cb95a1915cd3a4a490e038be)", + "P->V[29472:29504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 179: Hash(0xbc53951418ac19cb1abaaa9fa1c2ff3b19c967e246422c6193ffd47b076006)", + "P->V[29504:29536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 237: Hash(0x1eb61ca1701b760ad000fcb53a7bf0c41fbd4d48dad992d7dd210286ab4f444)", + "P->V[29536:29568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 88: Hash(0x38a5cebdafe69d9123cdf0dd4b2acef39f9f936ad3ac6c30f098fba1a36e725)", + "P->V[29568:29600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 119: Hash(0x1225454c850bdcc74a639bc319fdad99a88b1691c8062fb57ee9e871eaa3756)", + "P->V[29600:29632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 45: Hash(0xf6141c3f9cb78df555d220a4be6928c895911c3162a340ad22b9473e637c28)", + "P->V[29632:29664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 58: Hash(0x63a41929463cfab396d8b1183fb8f7cc3a25974d07fe70eaeb96da33cd39e46)", + "P->V[29664:29696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23: Hash(0x46f3ace02b2e1098efb25b794dd830a0b9222e847bc8168dc3ddc2236b4a04f)", + "P->V[29696:29728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28: Hash(0x78385b8968f521434efd8b4c5b6c6b97fb97706903421e87e4a3f3ac3e358e8)", + "P->V[29728:29760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10: Hash(0x208d4788e40f3f7d04d01d2eb268790b9fc04a8b6919b44304cdf48df799262)", + "P->V[29760:29792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15: Hash(0x78b29ac1a4e46f5afc5c698571641c52a5a92cd6ababb7fb2c3d1371c19a77d)", + "P->V[29792:29824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4: Hash(0x5069ece34c6ad0247fc7554eba695d785ae0e26e459c6f668c24a6343339553)", + "P->V[29824:29856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6: Hash(0x4550850957ec189db221c612e4e98d312589b0456d3f3546e351ca0f9c5ccee)", + "P->V[29856:29888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 825216, Column 0: Field Element(0x6a6121fb9dfd164b96bd83ceb0ba3f89c7ea66f8c570f9ca40d9d3ebd06231)", + "P->V[29888:29920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 825216, Column 1: Field Element(0x4eece204cebad7896ed58cc013e4b4004c1308425910eda53a8fc4e66c489cf)", + "P->V[29920:29952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1774411, Column 0: Field Element(0x5904df025c2a1ac2be6e5375339e045eb8c9c6e57182013f7e349d9011a45aa)", + "P->V[29952:29984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1774411, Column 1: Field Element(0x639fd267c6ccc25afacb79f0c9b97d156ccc5592869a83372fe8147a1375f05)", + "P->V[29984:30016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2922369: Hash(0x000000000000000000000000da36b26a7cf5024879f11ae2ea058978649f184c)", + "P->V[30016:30048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3871562: Hash(0x00000000000000000000000066631aea1e1951651ca8fb32e620f912382206f8)", + "P->V[30048:30080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1461185: Hash(0x000000000000000000000000b1cdc223572a170f01b7c380f853d978a80cff60)", + "P->V[30080:30112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1935780: Hash(0x000000000000000000000000c0ce57b6dd0ee63e9b7b54c9f07a8b6a5e2d6cc6)", + "P->V[30112:30144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 730593: Hash(0x00000000000000000000000068497b0ebf8866f28560bbfad229a115f9fbafbc)", + "P->V[30144:30176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 967891: Hash(0x0000000000000000000000001b423cdf21936a7ad756fa25bd5636f74df54f14)", + "P->V[30176:30208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 365297: Hash(0x000000000000000000000000cf2055d71d7d00b3a295d919b7b9329c3b515139)", + "P->V[30208:30240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 483944: Hash(0x000000000000000000000000b27a1d7146d1a02ed2935a86484587caa335894d)", + "P->V[30240:30272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 182649: Hash(0x0000000000000000000000002def1efe7a8541055423a088ee9055a3c756d29c)", + "P->V[30272:30304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 241973: Hash(0x0000000000000000000000007741250a6d8aa9d7fa10ab697c066156a00dca60)", + "P->V[30304:30336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 91325: Hash(0x000000000000000000000000b83a3cc08ed341743b9593e88a58dd5de3f66f98)", + "P->V[30336:30368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 120987: Hash(0x0000000000000000000000008d30acf69a970fe5b046b90cc07e18085f14485d)", + "P->V[30368:30400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 45663: Hash(0x000000000000000000000000e3275cbcb00ba6f302ca28457e9cf5c7928b21c9)", + "P->V[30400:30432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 60492: Hash(0x0000000000000000000000004ec72c75f7485734f10a08733526568cf1ac26d8)", + "P->V[30432:30464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22830: Hash(0x0000000000000000000000006cb3a9b8f9b59e240244182380c3db3164ee7138)", + "P->V[30464:30496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30247: Hash(0x000000000000000000000000fc533907c0d6bc1277e8fc0e8da7dedc98b4f002)", + "P->V[30496:30528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11414: Hash(0x000000000000000000000000a57499cd17159f992b1679f9cbb8dcc83a843f31)", + "P->V[30528:30560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15122: Hash(0x000000000000000000000000dac21b9f6850db4ce72410fa43628d2d2d0f87d6)", + "P->V[30560:30592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5706: Hash(0x0000000000000000000000001ea4c22b9302bc92f1fba9157992ae7ddbfd20b4)", + "P->V[30592:30624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7560: Hash(0x0000000000000000000000007f86dbe8828ae4671ec5fa8fc9099e08fd27c243)", + "P->V[30624:30656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2852: Hash(0x0000000000000000000000009c2da7ea113861d992e853ae0e2e8b50ebeba120)", + "P->V[30656:30688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3781: Hash(0x0000000000000000000000004e7638fac36b53816c66b05033900ee9944a650c)", + "P->V[30688:30720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1427: Hash(0x0000000000000000000000007fa22ee326c250f44b70757580bd345a2a93a675)", + "P->V[30720:30752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1891: Hash(0x0000000000000000000000007174cbca5841cd189395c19965a746ea0546bd4d)", + "P->V[30752:30784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 712: Hash(0xf1cef85802268a9a648ae677a59fde807332622c)", + "P->V[30784:30816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 944: Hash(0xca692f7b98591666b129d7d87a7ccd9a06c0d5ae)", + "P->V[30816:30848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 357: Hash(0x2e7c8b76569f69a2da66fbbc4d5de3e4e565387a0dd203f52b6f07efb583d50)", + "P->V[30848:30880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 473: Hash(0x748a664487d58f4f24fc0cba0a7fc8786e96ea626c9c0cf5bd615799d155a7a)", + "P->V[30880:30912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 179: Hash(0x71a542ae9c5c86289d7da82ee904902453b28685ef92808ebc2e90e53c1b98b)", + "P->V[30912:30944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 237: Hash(0x3770c17e2e1fbf95d010d5bc64cc102e431fc826df4cf83806dc93bd9db5a8c)", + "P->V[30944:30976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 88: Hash(0x52f67c4e6c4fa27137ba9e81c95d136d24d1e1117b31bf3442aca69969ef4c9)", + "P->V[30976:31008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 119: Hash(0x7dfb32d481c476a94f582374ace16f8e5d3f58281962b2bad4c697be45d6757)", + "P->V[31008:31040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 45: Hash(0x743b0c41c55758f3013924d65061882efa8b05ca69cbf3a4b5129214affbd58)", + "P->V[31040:31072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 58: Hash(0x6c0e726ebd2f934f7e3d7f10eb20b054671215eb56cc341f89c5cb70d9bf949)", + "P->V[31072:31104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23: Hash(0x6d6c64fd68c414178fcb2406fb6e828debeff448125cff10f74107286fd9e02)", + "P->V[31104:31136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28: Hash(0x27194e579d225815fd76171fb78778b1d585237f0a46fbe071dc736bb59a1b3)", + "P->V[31136:31168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10: Hash(0x103b8bf58b270da268b1ac1b699e4188a9125de8f3484c78a4ddb01a74c8807)", + "P->V[31168:31200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15: Hash(0x5cde8a1aa2f1b047fac1a0d17840c59f1f714ac23e8ec744d3afcb39fe49dce)", + "P->V[31200:31232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4: Hash(0x24435c1369ae9b2a34cedb7b466a015d2216ebe7d515eb1936dd82f2b22f78f)", + "P->V[31232:31264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6: Hash(0x5346e93611795a255feff8ce12a230495a52ca30306824eed6d006d075a6d29)", + "P->V[31264:31296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 1: Field Element(0x734d961951c9734da135e084c84d56667b67f309d5d1b2bfcce0188c523b5d9)", + "P->V[31296:31328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 2: Field Element(0x4baaa3e446f123e63357621fd994f6cf5730fab4a0433edce6cb7576d38a847)", + "P->V[31328:31360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 3: Field Element(0x58d5289a44376667d81ffd0c9632114680e3854ea94128c2d8f45c041785c8f)", + "P->V[31360:31392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 4: Field Element(0x13701b70cc8ad1d13f77925a6f26b667a26513349d7c95ee3ae330143f40e31)", + "P->V[31392:31424]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 5: Field Element(0x42732b198f4687fc7321666f50bc5cd42983fcae04c2cc17b5eaa13e6edb3d6)", + "P->V[31424:31456]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 6: Field Element(0x7cf8572828986b17646911d4eed20bccb07488eb3ae2d0dd73bc743dc830bb3)", + "P->V[31456:31488]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 7: Field Element(0x61f40c39c75e75497044548e2ae6106927352da42d518044a6eb6f2c96fc1a5)", + "P->V[31488:31520]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 0: Field Element(0x1a275edae24c2183f52183d515d834cc3427f4dd2c68d69f4f2aff6c790b45a)", + "P->V[31520:31552]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 1: Field Element(0x513e40d63701a11af063ad58689b2a4e511b2ee85f99c29f7748fa3ab2db8dc)", + "P->V[31552:31584]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 2: Field Element(0x3ac401188e6f2abca698420f02e1819163d6f8901223f67d5fe8e73af5d20cf)", + "P->V[31584:31616]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 4: Field Element(0x66cbf177f694cfac90f8aba667d901e05da499cc2157eac1d343ceea79015f7)", + "P->V[31616:31648]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 5: Field Element(0x4f806bef4994f9cedceb4aa0405fc10c84409dac9d52e33d5af9e0b56265035)", + "P->V[31648:31680]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 6: Field Element(0x738cbf7e144bdc2fce324929decaba3ec60cfbb91711f42c6efa1899aa258eb)", + "P->V[31680:31712]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 7: Field Element(0x12b588bfd0b3ad27f48c4942454b90425e2079dc4bee3c7745e17ba4a33b9bc)", + "P->V[31712:31744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 365297: Hash(0x000000000000000000000000ac4672bc4ccb0982c8f01251660911778e54a7f1)", + "P->V[31744:31776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 483944: Hash(0x000000000000000000000000b634e6e41d847041a448514df9bb1f55317125e3)", + "P->V[31776:31808]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 182649: Hash(0x00000000000000000000000067c11cf21bd56e0d6fe7646d6dc6f10e58c5a28a)", + "P->V[31808:31840]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 241973: Hash(0x00000000000000000000000012bf22a2324521bdbca958c9dbdd26091e3d9941)", + "P->V[31840:31872]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 91325: Hash(0x000000000000000000000000e9ad4cd08adcfa781ac3877e730e394b1c1fcf34)", + "P->V[31872:31904]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 120987: Hash(0x00000000000000000000000025f64d61b34bb8a1241a9a9aaeb46dd4012d8457)", + "P->V[31904:31936]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 45663: Hash(0x00000000000000000000000051afa1f04c1810622cb155afc55e0a94111c2c1e)", + "P->V[31936:31968]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 60492: Hash(0x000000000000000000000000edc1e9232a6a138eb9b91d2f1f48debe1eff1797)", + "P->V[31968:32000]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22830: Hash(0x00000000000000000000000047642d27d37573ed48ccc4c8932b022f09468f8b)", + "P->V[32000:32032]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 30247: Hash(0x00000000000000000000000074ab7bfbc24e52ec7a541f1815938c10293bd8df)", + "P->V[32032:32064]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11414: Hash(0x000000000000000000000000e8fb7119a091c68e9d8fe82614a97edfde1126ef)", + "P->V[32064:32096]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15122: Hash(0x000000000000000000000000d673c720d8f76f940076ab8e228771a9afb413d3)", + "P->V[32096:32128]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5706: Hash(0x000000000000000000000000ae23edcaa87657952519b71c791f89f48a47e2bb)", + "P->V[32128:32160]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7560: Hash(0x0000000000000000000000007c8f5697376b9dab5aa8917d48e6d7169c9ecbef)", + "P->V[32160:32192]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2852: Hash(0x00000000000000000000000099659eacb3c7142a409d5ad2f7cabe0a28dab085)", + "P->V[32192:32224]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3781: Hash(0x000000000000000000000000654b827cbed6306a56814fa6941ab1a04bf425b2)", + "P->V[32224:32256]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1427: Hash(0x00000000000000000000000031e14f1f0844f5fd5ad4ad7a8d740898e47072f0)", + "P->V[32256:32288]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1891: Hash(0x0000000000000000000000006bd1e1829336e5454250af567af0e133415210d4)", + "P->V[32288:32320]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 712: Hash(0xb80d08f3927b6074258cc5bcfe6e47b63c8a6cb2)", + "P->V[32320:32352]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 944: Hash(0x4feae4d0816988f47ee54f2d2053539f170d664a)", + "P->V[32352:32384]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 357: Hash(0x7fef81550085bc4135b02e3bfad4ed42f687d00e46c5693c09aee630ecaec69)", + "P->V[32384:32416]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 473: Hash(0x6b6f6ca59072c21ac4c4b167986f9d371ee38f9d5b07f40f2b82ce79b3346a)", + "P->V[32416:32448]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 179: Hash(0x5d2c05b9dadbaaa2bf3242b45fb30bd0270ac55bc2d6730af432cc4789c8aa5)", + "P->V[32448:32480]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 237: Hash(0x55b7705d08a2f0ec39724d15d8913b29061c3a4e7663ba60ca366bdd80ef911)", + "P->V[32480:32512]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 88: Hash(0x374c4c194e4cd129b36baae50ab00b758f469753c7a5cb85ef6783ee8e18bde)", + "P->V[32512:32544]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 119: Hash(0x6ba1a34f77b2c8aa1bac3cd98a80363cb0f910f430ee8885da83c819d1bbb23)", + "P->V[32544:32576]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 45: Hash(0x57860c69a39485546365d92aee79a8f49a03a60ec7b5cefcd81280f4c231ac4)", + "P->V[32576:32608]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 58: Hash(0x41ddd36cb6e60e0a0009e9be291b2ed544ca7ab9232fd6768c844c0433d4820)", + "P->V[32608:32640]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 23: Hash(0x5ac8adb0bcccad4afda283e2a9d4d9a935a6e7cf48114b2990064cad553175c)", + "P->V[32640:32672]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 28: Hash(0x671b395043a71d3d5cae84712af6af3d22a961ad28c30247a7da61f3bf2cef8)", + "P->V[32672:32704]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 10: Hash(0x7353af04177478c236fb6b49a00668c16c8c099a204ce45a85e55e6b2a653f4)", + "P->V[32704:32736]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15: Hash(0x1a6c8c65674bc7721f0cf20a8c6af191ec9f4b6b41b0b135dc83d545d72e3b6)", + "P->V[32736:32768]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4: Hash(0x73cb00cc3829cdd173655864752da187cdf0139e685f64ef996304e92087b29)", + "P->V[32768:32800]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6: Hash(0x31c41dd95a027b74563249b80c211d6d96c4488137fbb8b5ba2a555d62904e0)", + "P->V[32800:32832]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 1: Field Element(0x33ef799b4c46b524e63fcd805742a21dccf57e772627607071ca72a8ef882d8)", + "P->V[32832:32864]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 2: Field Element(0x7bfd88390d61aebb75d16271f7524340e843cf50b5fbc99d35270ef1bd60c25)", + "P->V[32864:32896]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 3: Field Element(0x13fb14bcd445a06b2b0218829686f3152a0dbaa8a14682204d40b404eb1002c)", + "P->V[32896:32928]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 4: Field Element(0x5c5efd6029079a451e18d5524c91cf5b6bbbc2ebead71de50a0b9f7089bc162)", + "P->V[32928:32960]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 5: Field Element(0x6463c3f479534a2205f8dba04849849aa4afb06ee2f0825e1fd2a83e83e6714)", + "P->V[32960:32992]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 6: Field Element(0x5a8982b73fb12f593b8a8ec994a4947ff372d78688a0c4f548563fe2b49925a)", + "P->V[32992:33024]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 7: Field Element(0x12ed738397284dc85f4e18c906bcfcc7cd80e3bfa7fca0e17063e9a236201ef)", + "P->V[33024:33056]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 0: Field Element(0x5a443a88b0f4f0747d6cf5712999514e27da3717175f9b3b31ba951ad5f8300)", + "P->V[33056:33088]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 2: Field Element(0x322bd626a1a54a69bd003902654b527ac32dd2381c140b5b18fea5cd0e4b0dc)", + "P->V[33088:33120]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 3: Field Element(0x4bcfe3230ffabb9c80d22293a9d4f93c189f45f653854c9bb369d1869619a90)", + "P->V[33120:33152]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 4: Field Element(0x7526a87d6bb2bbed420dc6ef57d450b0e9a432eef30d67b0e1230eeafcc0420)", + "P->V[33152:33184]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 5: Field Element(0x149bf4ccfc9c5c49db06d9eb2147db0396767f72843e6c53a24267bf3fd98a2)", + "P->V[33184:33216]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 6: Field Element(0xadd6ac3533a515ee6820761a0d138b6685d8c98f0f7f691a65621d0378e89b)", + "P->V[33216:33248]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 7: Field Element(0x27df267548f2343037e5e4c623a7d3ee1513beaf2a1ae118607d0d427608fdc)", + "P->V[33248:33280]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 45663: Hash(0x000000000000000000000000fe9c22349e57c30ec37d70362c2f3418ad6e6944)", + "P->V[33280:33312]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 60492: Hash(0x000000000000000000000000cc791cfbdabd21bec3c71fc2cdac5f305636bd03)", + "P->V[33312:33344]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22830: Hash(0x0000000000000000000000006c7a2ff668e908568723df191e59bc983d1a6b92)", + "P->V[33344:33376]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 30247: Hash(0x0000000000000000000000003f638e3967db5b5b97809e48a3b28805d99c4159)", + "P->V[33376:33408]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11414: Hash(0x000000000000000000000000f4a96570089518605b440bd5fec02b85ac3af550)", + "P->V[33408:33440]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15122: Hash(0x000000000000000000000000e07f4b740afcd4ded0def92d91e52e80ecf63579)", + "P->V[33440:33472]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5706: Hash(0x00000000000000000000000001cfb290c2b4b211ef2552c0fc59cfbb7093739b)", + "P->V[33472:33504]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7560: Hash(0x0000000000000000000000009c7c1bcc8d7cd866c990b33e6b7af9c5abff8020)", + "P->V[33504:33536]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2852: Hash(0x000000000000000000000000291030cb456dc798b4565a15755ed90242011f82)", + "P->V[33536:33568]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3781: Hash(0x000000000000000000000000af1dd288b9913fb7c968326c3c90ef5ae191faa7)", + "P->V[33568:33600]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1427: Hash(0x0000000000000000000000003e531dde76dab3bc6c6f6dedc368a4c4d7663d6a)", + "P->V[33600:33632]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1891: Hash(0x0000000000000000000000001c0ee7b478c813b02654033a4712ea7f3d1f8ba7)", + "P->V[33632:33664]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 712: Hash(0x5712d06b56a3829d48034fd59152af147b6b9aa5)", + "P->V[33664:33696]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 944: Hash(0x906b8d793c034265f3da070e8dc7404b610a3803)", + "P->V[33696:33728]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 357: Hash(0x61acbe160af01638fd3027f7fc18503b72b69bbee4d6a61c7efb09fa0663f48)", + "P->V[33728:33760]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 473: Hash(0x530a9faadcc6770777951f95a7acab67322c40cb63336d32c15333ef048e379)", + "P->V[33760:33792]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 179: Hash(0x7fd80328e78e14fd7767bcf14d79b33ae5975a011ddb14867af5312334631d5)", + "P->V[33792:33824]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 237: Hash(0x20d0e7d51a149a19492ea5474fcb01cb6c136842bd09e4c2e151c1645fd172e)", + "P->V[33824:33856]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 88: Hash(0x4936f56cfbcc45dfde590c1a84c6ff43c73231eeb529e5f41814d9a41c020d9)", + "P->V[33856:33888]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 119: Hash(0x650bf04996e7cd08db741d5501538aa8b86e3262b43b270bbbfa5111a8cf31c)", + "P->V[33888:33920]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 45: Hash(0x11012c269c4455a49edc959ea6718442994125e7a141ad9055aa1aef431bd68)", + "P->V[33920:33952]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 58: Hash(0x5ac6606ef4acfa2509be7cf6f5d6033e29012c0c050a9a58a688c5ac647d58e)", + "P->V[33952:33984]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 23: Hash(0x2529cc60aa63ca033a556e4bbbd10584927313565321b2a4748e9221fa4afc0)", + "P->V[33984:34016]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 28: Hash(0x12972c5551bbb27bc1a801e355bf800833c63a22d4a328c2cd2b20d3f0b7b03)", + "P->V[34016:34048]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 10: Hash(0x424e9d8ceeeb0651f6ff6456df2586f80c8cfacd9090d3b2922f9486bf12c66)", + "P->V[34048:34080]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15: Hash(0x53eb0b4cf72c51e228df0b1f3cb756a3ec642e973dd496a436a7bbe75ea8425)", + "P->V[34080:34112]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4: Hash(0x528daf988989f897b5d2d807a9ca3f702c6dd26201ad869a24e31be110e0c55)", + "P->V[34112:34144]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6: Hash(0x4182aa10d80f185948b827552171496f4233afb1cb2dad3704455f516d30994)", + "P->V[34144:34176]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 0: Field Element(0x14234804643b4277ff24fee210318d7ce406ad0f189eaf990ec33bf86f38b23)", + "P->V[34176:34208]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 1: Field Element(0x5fe5a90b8e571fefe4cb2c081ffd40db35e826ec882f239a828309c64fe1d7d)", + "P->V[34208:34240]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 2: Field Element(0x4f2fa95331894555c09b46d3e220fe3f6a27e483f5a461f1b11dd87c8bbf215)", + "P->V[34240:34272]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 3: Field Element(0x1a0ae2e1b86ede99accbe26ae4c3547636a0ac230b09587e394bd295d41d8db)", + "P->V[34272:34304]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 4: Field Element(0x1fd4e070ff9717e338e9c05689c30036a86ce105e80dc25fdfc3337b8a586b7)", + "P->V[34304:34336]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 5: Field Element(0x560749061239f6157ed3aaa9e5fd82613ef28f04f7c56d1bd0ce9a21c0ad60b)", + "P->V[34336:34368]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 7: Field Element(0x74b6222d51f364871e1ee07c37002b9363c9be53861ee45f72b313bf3749b8c)", + "P->V[34368:34400]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 0: Field Element(0x2bca2cc9149ac21830dab56ff7c4a35143d6399fb83d9dbcece0830f055f258)", + "P->V[34400:34432]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 1: Field Element(0x1c1152284dedca92fd63f6667ecfddcc87f6a012b7f237326deccec56d96da1)", + "P->V[34432:34464]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 2: Field Element(0x66fe89c49c47e157ab100b4c9b3e102eaa808410aa3e9665d1078601796e604)", + "P->V[34464:34496]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 3: Field Element(0x2c0a9fc29aea67163b4dafd78713217f03e265ae20bb198ac9d50e5b524ac40)", + "P->V[34496:34528]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 4: Field Element(0x17ef7c060fd83bec43541843ad6029aa2e59fd3e1346b1c19c18dbe80314962)", + "P->V[34528:34560]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 6: Field Element(0x5d9331e4b11453c08740cbb7b481f2621cce407cb925c67f85714b178b067b)", + "P->V[34560:34592]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 7: Field Element(0x7ac36c10872a0278a8b0352d0b271cb9d2e3872df0cf1e0921104b8e6b6a6c1)", + "P->V[34592:34624]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5706: Hash(0x000000000000000000000000adb626ebed3ff30bf05cb56acc4dc1273d44c9e3)", + "P->V[34624:34656]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7560: Hash(0x000000000000000000000000098b0757bb962adb5810ef96763b42bdc977a819)", + "P->V[34656:34688]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2852: Hash(0x0000000000000000000000007db5aa505fd993e346549a840e57aa133f29d963)", + "P->V[34688:34720]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3781: Hash(0x00000000000000000000000017277e58d4f9f802d0c7fe51d3d2feb855037bbc)", + "P->V[34720:34752]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1427: Hash(0x000000000000000000000000013e41177bdaf69fd2a803fb8af21c07120124e0)", + "P->V[34752:34784]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1891: Hash(0x000000000000000000000000843ca2ec57c3aada9c471595e7bc919df714fbe7)", + "P->V[34784:34816]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 712: Hash(0xbe210ad4d8c6d2012b09788905d1af52b7615501)", + "P->V[34816:34848]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 944: Hash(0x4ac838b34aa761825b0f2649f90edf3231db3f88)", + "P->V[34848:34880]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 357: Hash(0x2cc75bcd673b335492ea8a6fe69eea7fd59f43f5aaa872aac7da08fe252e2f5)", + "P->V[34880:34912]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 473: Hash(0x5d1b8cfe06fbe98dd9bac4495277b9bc74d18e0dc63225b4ee4d8e056f09aef)", + "P->V[34912:34944]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 179: Hash(0x5dd073d52386c092408f55173be07703d17cee5115854557556537ef449b13d)", + "P->V[34944:34976]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 237: Hash(0x7167efaa0e2f1096f04d050325fda5e4101d1aa4cf90bbf9ec8ffd8f60dd98d)", + "P->V[34976:35008]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 88: Hash(0x4453adae8e2b3ebdd3489d266d4a7e69a3976ef6c07ef8b2666cf15192f5970)", + "P->V[35008:35040]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 119: Hash(0x5100dfde48a3a0e25098bf00899734d24b43660cfbd3038762c6089321a9ade)", + "P->V[35040:35072]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 45: Hash(0x189686937396bc9ec422e681944b96e6ce6a4c5f3e00d99a63d3ae06b6a94e0)", + "P->V[35072:35104]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 58: Hash(0x275aa89e68e8907936896935a1687657b5d825d8bfa5a33d9dca17762495520)", + "P->V[35104:35136]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 23: Hash(0x2e7ddf02a61d4c8e2e378a78794f8eb0b704b6a9bf90cc92aee4c118d56737)", + "P->V[35136:35168]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 28: Hash(0x68df7ab60fa100c4b161d84b07cdb27c4840fe90d774d5ca961308ffd6293ec)", + "P->V[35168:35200]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 10: Hash(0x4e40c69b73264b7e3b7f4d6529d01f5a4bcb693674cfeb27987ea9034db1458)", + "P->V[35200:35232]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15: Hash(0x6b19f305aaf9905e9c58410626e2849cb720f0e2b4839f5c6772a96358bee4e)", + "P->V[35232:35264]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4: Hash(0x5bcd94662f08eefa22896bfe0e823ce558100baa65390232e5d992b01b16e7f)", + "P->V[35264:35296]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6: Hash(0x15bb85022f212b00a0416087a96053b666abcab6a1a60bb2bc7a425e2364dd0)", + "P->V[35296:35328]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 402, Column 0: Field Element(0x6a5ab2ff662b916d9895d4230b89dd558326877ae28218658c2fed88ba20b03)", + "P->V[35328:35360]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 402, Column 1: Field Element(0x2274693ac0fc50a3cc2bd2b242eab296bdce45ea57fc0c30ec048e3536b45f1)", + "P->V[35360:35392]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 402, Column 2: Field Element(0x5fc7a218b0d98bd18cda20b2f43c63fb839c6da8d97493d479b932357429cf2)", + "P->V[35392:35424]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 866, Column 0: Field Element(0x248c543ca28470d0fe4eb52a16bbc75394103f16994c49f339683f96409ebc4)", + "P->V[35424:35456]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 866, Column 2: Field Element(0x570963e471cd8df605c6780042a01270c91c206f83d3c46c7777fd35d8330eb)", + "P->V[35456:35488]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 866, Column 3: Field Element(0x3f8cde84c441e313096e926d46e2321e482d56096c8ae131c5d481117ad2c4)", + "P->V[35488:35520]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1427: Hash(0x0000000000000000000000004538d992a07181f0d631598d6988357101f9a337)", + "P->V[35520:35552]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1891: Hash(0x000000000000000000000000bf4ea552ad48df8a107811adbed52cf090329524)", + "P->V[35552:35584]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 712: Hash(0xa81e1f22338be9d019fa9bf0245b2947b8541ccb)", + "P->V[35584:35616]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 944: Hash(0x8fd5c066a71427ffb1464c8f30a2d7de1722ca5c)", + "P->V[35616:35648]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 357: Hash(0x137b993fd72e4552412cf1483660425352702378a996de63066f339ba846c3b)", + "P->V[35648:35680]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 473: Hash(0x5b9d02db29682c4a330155e0cb13bf65b9a5a832a61b41490156fbb145b434a)", + "P->V[35680:35712]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 179: Hash(0x48028624e6fd33d085d300f559b5b092345ce0c0a3c0984b97137afd7d59e9a)", + "P->V[35712:35744]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 237: Hash(0x7bd5b9fb495ed6f163842918cd4f7d9c965ac64fdcd6dd4dc72af389da25fe4)", + "P->V[35744:35776]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 88: Hash(0x591e130e5470d3a8a6fd5f519c4a0e0f94b9a6f0cd9cba0eec366e4d05f3c2a)", + "P->V[35776:35808]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 119: Hash(0x129662ee7bcbf3f458a213757acc706b40bcaeab05a446b68913013ecb2f2fa)", + "P->V[35808:35840]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 45: Hash(0x1bea28d2cc18b50812e90e68fd3afc26e16aa6d40f321f2be892d6be813f234)", + "P->V[35840:35872]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 58: Hash(0x50ae327b58987a41468b3f5020861f408879b86201714917666f0086cf5a560)", + "P->V[35872:35904]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 23: Hash(0x81308b1db7c5792e72754627d06360331aa67ff213c8590a249520c58024e)", + "P->V[35904:35936]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 28: Hash(0x6b07556e7856d02450dcfbed2cf4898f6c832324c69a8ce71649525f2ccf97b)", + "P->V[35936:35968]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 10: Hash(0x3576d0ba59aeaf54ef4245f317a58a08759a7a72df87a38347bffe189b964b2)", + "P->V[35968:36000]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 15: Hash(0x297467f2ee828fcba5e90d0d219c2a3032beb256f7f6d040fdc9e5a99f6117a)", + "P->V[36000:36032]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 4: Hash(0x7d6aca6d5e6a92c272188760754ff09c5c0328d71bbda35c8839e440dc5a14)", + "P->V[36032:36064]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 6: Hash(0x5de7ca6b92bdeed4602c812614e09fb80673ab829556c15a1939a13ad09111c)", "", "Proof Statistics:", "", - "Byte count: 36040", + "Byte count: 36064", "Hash count: 229", "Commitment count: 7", "Field element count: 897", "Data count: 1" ], - "proof_hex": "0x0105b4d645a8a6d013e42be28f028a9366930d6d1780c7a1a0542a97c545eb1502b1c30457e63e7340dccd91199f104f3e32eb540284340db1a767cbb0be179c0424fb96aac353a3a61417b62aa50b57f22f78b37c7befbf069173842fbc3c2c006018fa7197e3e1bc94b9eb3e31b15f53d7bb57e6b00789b514fa1ae6f534f602ea524f839a93dffacf95b97d83f1ac15fc458bee0afc34edc56624bdde8340009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de5140753a80dda4f99dba2c7a6eebb90c80fdb0c4c259e50305a4dc85600f062c02906b0634e94c3f84efd43bd092935ab266705b666ba63a6be62ec1e73612304f601270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00674c89d180a36accfab1642291f732c0aba943eac0c0890133d350586c0926401a2ddc2bdbde8ee3ea41a6e1d90971b6f3fbda873d6fcdea3f701bd65f0090d05dffffa042489866449e8cb4a90a05fec142a5be11899c44d046daf5d34f26102e8375968c19b938816d13bc3a28c42c7b002444f1231f5199b0af0fdea41b401a2ddc2bdbde8ee3ea41a6e1d90971b6f3fbda873d6fcdea3f701bd65f0090d05dffffa042489866449e8cb4a90a05fec142a5be11899c44d046daf5d34f26102e8375968c19b938816d13bc3a28c42c7b002444f1231f5199b0af0fdea41b405d34d66546ed3e7a112afaa1e5094e2e43c5b0be83f4106dff154e56662e82205d34d66546ed3e7a112afaa1e5094e2e43c5b0be83f4106dff154e56662e822047999ef12054f9d0d2852b66ffd025df2a782e7f0c000e33b0b4b1bcc59af380433e90fdb855a9ad5d8cd3f148ba57a5560a9a21fd88a2f6b1f31d34aa9ef8503effb2d5d8bc5d8b35b4a1b130499438840f74e0c87019d903e1f8828c387b4047999ef12054f9d0d2852b66ffd025df2a782e7f0c000e33b0b4b1bcc59af3807ef9f0abfaa42dfc6226bd3e2708efc7f31fa65730ee2b8b00978be6c60e9d907ef9f0abfaa42dfc6226bd3e2708efc7f31fa65730ee2b8b00978be6c60e9d90433e90fdb855a9ad5d8cd3f148ba57a5560a9a21fd88a2f6b1f31d34aa9ef850497658e07149f66363f8be5f59bf502f275bff2cfbdc7dc881b679212136c8707d075cbec91bc558410b2510a24ceb77e1089c758a70d45cfd17bf9d6c1262d07d075cbec91bc558410b2510a24ceb77e1089c758a70d45cfd17bf9d6c1262d075720be817fd43e4e15bd8507406b32cccc33c2a64477889e50ca0e68d772c1012ea394a4c9077dd2cc264cc2f700ff81d0dff6ad6dc7e7c01e5a759871be650330019bd647455fe7fc1a449c14e5f096073502d130f7111da1bb86430cd7b104393526efae0b74fb272e15dead9a9a6f5337b44560ad31a1da1c04f8f36c07053c2d7ede06257d2a9c25e997edc95d66308b43c91598529e1e85a9eeda458b0674c89d180a36accfab1642291f732c0aba943eac0c0890133d350586c0926401608871410c5236b2338ed271ef65c18c7e9c0a8234d8567c122ab38788d86601655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e068305edc10c2e1015531372bdcd52c07a98474157e2403587610d8b12598ee100299840ea1e2492148de536a3c288a6aa9fd421ed82577c35dd56c2b379ec6002d6ba9ee98165c17d30320549e654d83a7e8db38cdc200e4b2b2744bfcb3ff0047fb8739b246bda74187f68052d6d281fea894f48c5b7570826c404203d6ea304ba090001724c9f2795407df42bd38b57d4a5b68abfd8e934beffcb7c1a8dd00173818a226de400a52e1bf9313c8d2ba6f0ad2e75d0436d954e56bb35db702400ca2f42762755c5854e00c5750e31b6a2134023c8e4adb5cae56e8e2651546601ed01691953b63ded9e8611677e8f7d9d2811927d420ad6b4c0835bb12f16be01a31ee98390a69aa97b7f018b6822853c08672270f4c46fbfa78ef8a988a72903effb2d5d8bc5d8b35b4a1b130499438840f74e0c87019d903e1f8828c387b402fe655efd58416771d71d0da69262feb822a7d5ec352a147b5490b650151a0a02fe655efd58416771d71d0da69262feb822a7d5ec352a147b5490b650151a0a0497658e07149f66363f8be5f59bf502f275bff2cfbdc7dc881b679212136c87002a3b3002e113ce9ef32221a0de30f811063dcc86835d6765893120eb9f558b075720be817fd43e4e15bd8507406b32cccc33c2a64477889e50ca0e68d772c105136f826e0391a09ec9a25d36c10d190803bb86108ea9adb9f1d0bf854ba506043fa082ffaf6051e85d8e43663a6dca39136e43ac1e1858870a671209d16c2704917617f431b9a2beeff9f00239b27bb3ed8ed75f5b1cc7e8c1ac1a56ad679301655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de514035cecff17ca804e12adbadd8dd0f09dceb940b16d6dc4320340de07d7e2df2602b3f8cfd4ab9702c4ad42357f3da2582b27a3c8e29e97823bd203c98e1db9c103285447211d216b3ed5b06558f6bcf480e5547056e44e61babde8b88668259502b163bcdbd4ca4117c7bf117adedb1e6cfcf5666d0d39e9a99b4802daeb7b9603285447211d216b3ed5b06558f6bcf480e5547056e44e61babde8b88668259502b163bcdbd4ca4117c7bf117adedb1e6cfcf5666d0d39e9a99b4802daeb7b9602ecce92e3495560cb478926f95654830c79435d871d03cc2cd6cc824702790601270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c004ef3e3c7980d1bc127c0841bfe697041c82cea72d97c43409eca67501eafc70010e708fbe972df14e9ce30eb1f0dd235a136e97d19faa08d2c3435f5ac5c97a072bbf5394a224f6f6672e05e5086d3c17ecfd688ec08515b3d571b3d51def8f0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0376966199e486802ce1661f5826b7032effe96581d0828d3a1ad6f64d23871a0508d6d8f586826e4e2a5fc4d4515eff69f6132c14ef6419000530bb5cdbfcc2048b86a9382fd67c9eb8c2d9df8d0e92f7406a55585db9a2cbcc939fc36c61bf007fbc9f54fc94a45940e7e3f94fa46144eba16198f0e2b5f9f45283d8e07857036053c22e813dfec3d1c079487fcb2e55a025a6617905dea6fd6877fa08df09006934619f2a46d9231b09c1dbf2da07e40947af769fec9344acf3bbcc57a4cf03d005167e00c4dd69b7795b239e0d5a5c905159626b4b0a76308876c467433104c02c4d877f5ff5801e8ab914aac07e3e5763d3b03867c013d528264c6809fa06c8bc7336ef6ed4e3b3019293535a009e9a763e02142b7efc2fcb8f90aac5b902ea945ef7c41c8cdfd8130b65de4db1db581eaa67c6a74c4d04dffbe460eba506e332f05cb15344105208c350f33ba5273f8edac069808ac9ca71230f70eb6005b0bcd1fd1169bdf5fb5af85c8be379bd82419c15de734f956f40a8874d3ae902bdc7f03b29a4ada99a2762316d351e3d3864e569c71150c3d79cfe418fe7a6056c38be155b2cac8c36eb53c9795eeb927a1734192d8c3630941f86d7d7c3f200071182ee74b02bc90278d05a5676a2bd79532041a395019a291e027d1844e800a9a5f7543c8bd960c8cdf119fae4f6ca83f964e17d29c5de190b6dd5dd97bd05ee69c7e20b27a6a50c9e90fbc49b77bfd059a2884a3979cb607a23507d0e16051f9a4eaa02c99e20b52dc61ecaede7d11816539c81701ca7abea1feb5b520a06b3457a355d4cad883c71467a153f5e5e061c3c668454ab15f0844b68cb683903b98e7d980d612702d67b3f14dece945194107023b5e4a870642bfbd7f485980678f61bd2298bc841e898a3b7c673c065dc7e281357fd1a8a6dcb67a73b0e9c0100d5309e50ee62e242578c56b176aa72841197b8552d201b413e27e0da24b306a54c45333e27500cdcc3b8427559a2085714c70da9faeb130d0a1564d0aa210053092bcce3089012c3af04ba87550c1538f946b925035e942b874478f9c02004b02de68d6bd7a8e9a45c38482782ebef7a166e5b517850abb1b58238cef6ef01de4a837212b2125108306661ee2b24f328b92c732fe1aa3bfb1fefa543c8b405e6ffc026530b2d589424ecb133be1b481e28369261cdc332044dd37ce1206007b7ad7695d19314b0a5efb84fad9891ebbf0fad9bf94c429d99d9bf7d2f22b302ff9721a0afe8e48e8ba954c413890f8efd0615aac096c469626a4079198e8604bf3660d2f06b429f6c3ddaf03f2cb78ec271f82ed7f44324843f4e616f3ea100e2e454527870ac3fc46f6512b8df729bee30419620c61844eae0360f983ba105e8fda0f96bfa3dd86116fde40a7ff3f465f77328e6db36969be26006d4721d03050d99a40dd048e741551f1ad88edb97632710514aba635e52df8ab5a91c2e02a72f467efb9d6e1ff40b5da4ddb47159f81c95b6b59cf92e0de07fd6f9364701704c10fe6f96c97bb6cd118a0e6d3e380e36371995d2c6beb9a47f71abc3e103a4764370e26a8a4259908ec6b57ef288616f6f9e95cc41792c6fb353003a4507a6c55ce0e3d1f94a0757307e85a0e02385c76ed7b2640259057d1031b25fec0749e32417ca9471cb1bedd4e644e52c5bf41de9367244e7158cabecfed0b393067d9f577ab36a023c5c50ef4cdf50b69a02e6d145ff578c2b87248112eb581d07f25685ca0c6388ea33fa3a6a18dab79b0d926d9d5e2f04c0a23536c7d86c9d00940b59872ecb3b18c8376886e00e9877d152fb064e697e4cd1085bf907d8c3020308e48b5d68c3da2c8a6ebf19216fcbcd555ef5539bcfca2f3401a2d1aa5f0229fb5689b1d42dcd941ad05295ecbc7e51434e79870e218173f573f23d692701fa9088d32d741539a2983f89caf7deddefa50cd729648d6f199f198d3a0cec02cf57d2ac879bb0446e3de2c0a2baf091675353a6616c339f45b4185e818a2c054157aa67568290d332e965e1f6be4081f373b53b9fe74bf3fce890e5da95300590dcbf6140b9d3102f039d23eca1acc051a69b6e96722327f791e1282116b80300b96ef6e7808151dc0afe38f871ad0b921851758ae19704a9bc387208990f01691bb463bfb3673f8350618eb96a05396fc9c5f95fb8fc796503fe597dc0db04f32460d5cd0b2e9df52301b324682185cb785a093b779cac27e3d03793b5ea0179c1f434a689235905b4590adaf167e84c4a5fed005dd05090a234b71d863403c01321c4322af47242edbb74fcadb68af803a61838aa23c21fa1f8c441b8fd06bcdb810d5f2d6c2c9da45e0136900cc5a26f979f67faca15b0dab7c0abb9b405e98e2e50331cb2aacc862615ebf95b076db4037e4843d846f5652f8c2a48bb04c99f658284ba46e061d2434f9297c07ab7cdfe7a4d3656d6a6068b71620dba07479d8272426111b795993425aa70bde08617a8ab241c7dedb98892b31f216807dc8e912c85befec5d6c2084620781e3f9b4394129a14ff8ac532fc412145340660e7a76d772b19674539adeb3056a716954cf6917101cd32c4e0e52331f6a30686ad0903d70e5513f8b6a0aa63018a6b6854caa1aaa16b895bdcf20b6e454706dae3671007829c26c719cdad6af29c93cfdaf2398b4cabf6d7db661f56027005ac9692305a8fc7e76beb645f8798c75d318cfcc94915bd55bdb30b8fb0939d039346d403c3eb5686b5e611a30d57f2f817a7ef0a2aa3cb92b88769f4231ed6057759254c1905bb9e06150feca5f40e4237fbbef2ddd84ab3d75c0ecb9d843b04a87e5835e4225310bec05743ef5a4bc5527bfe54ca84a5a6c0df5d54d289f407cd94e0612ccb6845f393d997357c58a958638b021e92a444e6c4b0558a466f01d285c96a6e1775c227c1aed5ad807799fdefe896a3f2419c06a16f042ac101027db4ee680d79ea5d331199917d4218ea257dc639f4fce237724a0b7845c856068be813199c4750a86f02b7ab65bf235ea23d804ec789fc3f6d064c0aab7c27051246d23cc3b61e4111c7654fe80662984ee9e6f1980b19fb9d85da42a37f6706b425cf8330de79158ab6708327f2006bd695cd21d094eff6f50adcc75caab506ed36bbd18595edc61322b65ad1af9fdfbf76a09fb9ce8abdfbfeb86c2f2dcb007b9024553b9c91c5e088dbda83627e87fff582e450d344f80491e4056839c60514611698998e587cb627319d1c1014d118c05f3ab152ed2cd7430999b6518502526020126f00a0248d8bad8ac8b26c3caa5487346b3f9a3f8d28830166a7b806f7c3bb31da2753e2d95c82047c1434ed0d5f57ab3fed5851871a4edd991a78070dbd2b66d55a6afaa32ba61030269d2ac77db01f8692940f17fe886b9e9e50052febfe74ec5b7840c68da4ee2cd342a806940e87eeba38527f3524e3860a72037da32bd206a12bb71400661148537713961f7e8855f59fec5b865d0291572a053a036666373145d5a07eab8e886d0620631a6be68ef17f4e69c46df0410a6d037da32bd206a12bb71400661148537713961f7e8855f59fec5b865d0291572a050960fec9940167e0f1af999f2b4cad172dcf5d00f6d2c7bc2c25d14576c57a05dc1296332441db2207fad294b3ca0d674dd484e521f7b6df491caecae5e5db02ca1ab84ceb11a21e393e3fc3f125365e2d2bbc6eb1c64fd900fd55eac247fe03f0e3667f6945adc1be527f2381d19b4cfa9f77aad5d68110ca3531dc52d3e10249cf5338cccf7567e5ab22a037db15181f7ac08be5c759fc0994dc148c691e0787669cc446bc72da152ff53400bf299da1c4d53c05483a8fa2a28c52e59e3f00e5dbfa4f870bd7216124c7f10fc0a4ef44dc971f7a49983d694714e48c4d6402ee92ffb3edc2def98502d1ae98b19e12008905c4441a9d0916c35fb8d7aefa0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a04e005c0d092ab283b29614610181d284d86f351d00004aba8155dbbdf95fec104248cad10492fdae4ab9227ddc29e2272617fe19e8773fa8cd34d364903cc080732585f976e377eeb31eddac4187a6bb2e508bbdfb5cdec428a9fc526b8779003bb9261db7d3a761c504884029699fc803e4dc5c9106990de27a0628fa48254057273abb4f2b446deed4b95952141cfc4f407f1672fd7f21409371f58ac22da00cbffc4938c2d4a64b43aeedff401648ff6cfde642c6e8084030dc10270c0a2002e8acb9b3888388fca8c912aaf466e2ae1d18c88c7d71f4d524f8f5f2c6e5605bcc29347311bebe06e258ee01e4f12595446b5edda18491b378a1045346c4400f9137d38d1cafd57a2ba556ad0930c26760c66879ee8a15b37888a5886860b06be5abf988169941bea5947d3f0de484807d5616bddaea5e80d24cd975bf40203b8e33b9103763d523c72af471ef4a7a5d47be8a2b2d2c85fa53ac4ee500b58031557b9bcfced58e46c623eecc52018a7b88f4856a85898762ade31586abb4802a7ba994bf1abc4c27139762bf2ca553de8169d139d564bb2190d61760d9dce015594e7a58e4416b3551a6f04dba8db63e712fe700cbcb6d359cd2bf99709660538e237a470a20e4cdfa16b497cde1182d38d43259c714443d03139ab11968c02db1579472c5fde72ecb9eabe4e44e96fe33dc8742e17a88f356cd4f3aacba4010c5961e8f99164048c339c4c5e6270fbc01a49b40f37793ff1e2ecf7c019d506025dc87a1c5090d73edd0e897939a6c77ce9e433516dadd3541145072fb2e006c3cecd96f22028ae55933880190b13b67c293abbeeec09340b7a3dadc12d18054f7fb9ba0e8173afef92a7006105280269e42f435bc714d638ce5de16c2239076ee089d8066a780aae14e0fce4af3b2bfc32a713315c62937d6d38999907280057d370075f4e5f6540475b081b0c1fac08e20b64f924787e840ed6f4ddddcd0618aa12e86cc3137e42db4c0a2eb4d6c1400a28bc4e85b2dad2cecf055668ca009f989f0e81e4d834e6545c70708efcc8a2980895010157919e4874e79bb6ca033b15b5e922da9e3a01b532dbe971d927858da88402dd81c223316f65cf6790059c295c23939cdc397d1ffdae0cabe04c344d540ff56ad908c4fb891e959d9104eddd42b1ee39f2b63cc4ab090ea4cd7e4525f9f4d4e5aeb393bf49fa6bdb79015338aac8db98773b08f5d5190ef4a117bd3768a8a8bff707b0fe5ce57483cc076b08e5c100542735b6f79b71a2c97457af2ef05f148f720ec946f1728b510500efb21c0b3ed9bec3105b8cc0aa03f0326139516eb809e56e01cf505a45e38207f1c995a80cd4f6ee4a37eff2579ac12e119c435ba233206779665cb595e798065f7676ac89850cb06b4ee664f7229abf8bd17bcb945da556c6e865f864ef9c04d4b258ad530fc886630104a355c8c16e0575fde1d7d66e74b055a0d20615350167c92a97d844b33179719a8594d7d079b8b39a7d78a6c23687d8b2fe5ba3df0167c92a97d844b33179719a8594d7d079b8b39a7d78a6c23687d8b2fe5ba3df065f70f2b8442c35f7ad5b5afe054500241c41e38668a440788943bc5f7d8c3d0431a519bdfbc89a920d4edb4b0dcc4a1ae9b99bf28ffcd1bac59ffd93244ba80552587e57db04a3cb79a389c930380cecfe770e859f2059b7e6914c5394de000205c236712fb4ff2b38aa0785ee51580aa41ab08e646c39feaa96e54f97681401aafa83e2fa7380fb19a7d277498a89dc098f3ffa04077ccfc9c06eae0ca0cf02d3401c6f12bfbcc420caefd366a33bd52b424a703d900334b346a92b1084dc023649464a904bde55061f5acfcaa207718a602df3b0d444c90c0a21e2ae2bc5078c04618fbefe539d038448577f964deebb99f4cb681a2b8b72bd9db370478e007d186869ae73e9f960e2015c2346436f7e9ad75fcd4e4908f160fcd88811d8030ff2f311fef169d2f0676f0453d257ef9123cbdc6df13e5243adbfb93477740333ebafb9ad08d8929f2c1c48ed59d765f0de06db08adc8c08d96d133de18150317340b79df8b0ccdbc28b7eef02c24e9c7aab6e14db9438bd080d06319d9260322447d16bfb55286e8cedad5a74e9e7bb86be4fd41a1ba81380d44f61c75b505967eee4256d798d5b013bb532681da47db43c9615b5709b85a51ae533d09fe054d34d5b2ac0d9598a3f5f71432e7fcb4f547df419e5bdca2ee9c5f0784910c06165498fecee6771b5ed77f1e431eec76a1540d9e56f155a8fb382eab795e5c06d8e78afdacaebcab92377a07c9de731d7fc73ce19bfcd9508b6f5980beb8ed015628da6d8337588f3557baae7ec5e76407b16508cb1c6701df301ee658357206eb119adc95a9db4d970a3392fd3198c85bceffad92b256d8a4feabcf1f037a04a8d4a26e1c559e72ac2b7f1450db790faa7a308eecaafc21b537cc0ace414905df336d4a61578d945297618dd5d3b68f31160173795257991684a5d9f97b92072de55bac52d2b10164b19cfa36208a5393bf76e614ffb7284fe222a43863c30445863f47330968ba1bd9fdea7f371818eb2ea86896d909252015ba3a4fec8e02af367f07906b623c6a99fea5dc8197bf8786253442559421377595c359581a03f948c21d39119b6d7e4b84b2abea8f32e39db5012854ea89eca372205e6158010d11597932c8fe9b1709a74ebafa3bfc2c571b55b2cf18555b208c30420c9806e54122b36d29072a49f32d0889fd8b83f1ce9c064ef0d62ea87760983302a30298479c16306f8a5dc5e59a1c6c03c2bac8341e0fdf581f552f84a941dca793075828250c1c6db9858ef97243d54d3bfc2835fcc09e141b4520be8d333cf84f016dcdb6c9b82e2792c88200c3493bf636c9bc6e95393424878b3b88bd45a6d905896b518daa094917022bf28a0d480be97c1027004a56f9ec28171ff844d48d064722ae5b6fb942e02d24ef895d9d699fc0594b7772a3de85eb687e5ff2c720075cfc5466beb2c896f507f03e757d09ca2fa826920226729822c43d024aa6ed02a895151234ffe1f7ea241f6864ee27ab69b62ac4c19598bd7f71798a7af5e405bb13927c1507268ffe5f3e941fc964561505421bec860b90607184302b690f0221e1200c11e329a8f8345d49e233671f0422cb0b8c9455c4bcc3a9f6cece6c01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a0075b5467b9cb70776a2e1c59c59d7d671f9322ccad912d511f03023c8e4d36a01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01655b87218b07a414a9d06dc6d80662cfde3691b33d1f1c2abf5d5825e7667e01270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de514009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de514009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c0009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de514009ec616229598a8d649505aee6944c2a0197c296ba1efccf1ba3dc35c7de51401270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c001270104c57884814c2534da4096ea9c18af79de8418ef11380dc5f0a84970c00288143bdb19da1a7a73d398708b55fc7e0a0edbee1acc9baa621a5406e2ecc201acf043fa9f39ec5d410801864993664ee117d50537a566b35003fb80cb48a000287e018d11edcca12260d965a5254c92a9643a4bb98c1c1c0dd6293e79dbf701080680622f505bcaebeac2ca77ea688639a66b780879f900a751a4a77ce1bd061016c398c3d6247c91f51f5d2c2d76ebc2c30753d5b51a354e7c7197aaf24904004ced807952542a106a8d231518cf8b13ad0f91a8aa9d367171f67bddca2600aa7512ee6d33ff28e05f465b1ad4ae40fa053cd8b5ca8af7139929363091d9028898d64efab14d328843f7e3958b25ccc922b56fd193a0222ed7b5373c7ebf036dc2891782282f0f91b219249f77ab2c9c0b7b17f73af023e377f3c30a15330123a08a64ba41957b9cb33b539e05b273dd860f3fcf51d69acd36174ef51681031cd184c44e4e35ee20aa9d3a0077ae303635642568998cce0fb275459386fe002b0956c889314a436ef1f52a586c6b6c0e50bf088f23f5c79b3cf1d07a452707a22309f75eedd70453c09b3214985ca6711b8895d633f29d8a40f62f1408e3006b57dc7c761859c37544171eac5ba4953ad83ac4bf01e426eb2385d981f4fe06d210cf2f9dbc1e38c43df58dffe5c882b45eb6f66aff377907b400ca18056b0427d018f74ef365b425c7a39b5e191b10648e7cdfcd22b45526954cd448f28903dffe498ebb12c32b58c0f07a2fcb26cab1e6b9e19fa01e870f92599b3d4abb044d8a05e6a5c8df79bc6042b94ffdad13792a43efb3813561a6d64f04e27173007122938c632ea625ba3344c692a1c01ce89ea7cb919e59bae141138ead3f7d07d13ebd7f2ef5467209baf4b294fcc8bbf050148f3b5724d92019990f94f41301226ce5086ce721e107ae0637cf1ddbb0f4f604bfee5dff1f0eac23b3312a7f01556b614a1b2a1d6c25356cddb41e455d3e74dfb2cbca0c19c8284e4c7f4558077e7d156e04068e540b993c08c8feeb5a4a267529e32cda0d025bf89674eec701400d7a02b0a261ed8dc73bba1d3fe71cfcd73081be77f248b5baa1850fecc2047f4209de386e547b26d08eec8dff546f7d07e28b22ff6d4f6cc942e55fa5a20356d3d26ea7ac740802ae03e7be33e0ed5ea9f08bd958052563d95b43a3a2e90619c75e6d798c1fed76d6b8dc715d924b9bbb6fb9b4948c66d770ebb01c3a77011b3b7dd2af33527fcd24edac33e545133815cacf4ace64d9fed481e34dcb9302aa55d19922a1a49dc1043a298b3b679cd2d1c150d22f30a1d3675ac18caeb60796fab7b21cf26ac07483173be3bdbd81c4705dc1e24d32c0c89f26b5feb5f505f7750838648e52ac4c4bf8b2328b0d9ee34b166f6dd56966504138e0b26ff3022aa5a9bf9895a710e5c5db40e71be3313879d39100404ffe73625100961f1b02d7816afcfe8a4eb0e4573cb2dcd76250051efc094703caf71eb64894bacd1604c08a04ef986923a92e87987c9c8c181df440198b94473e301e3d59f58862b003eb0426e91cca6f453df33d146897d995b8c2f63cd63e823e2df13ffd60545e072f746694fd18d8e798ab4b92e70e57b4fde8a8e00658d8b716679d07e66ce4022ca5eded8ec8f9556977eb6945a94fed6e624b62fe9367a3ba83099e6f3f8c043c7d120eb6143f0fa1bb4673b8064b71319499ed6ec127b4a37f5a6a2f0584055ba7dd33f0071967f02d26410f97095146a93e8731c12ead8ffaae6819600b013c2f6182f5f63cd23910e17b563a7f635b8b27aae6320d4e9783fed9851a4902d3987a2e7ce60381d0f1dbb649024b42516d926a3aff170169128ae565f19e009d7862645416854d2b63178340fe5dd6698edfb521f9e03aa082be6134ffe305708806525b731fcea65dbc9fa520bb67a109b325afc081566d9b15f103756101517114c72790064ad1b27401daac4ea7fde464a64928c6fd85548bd212a3c204f4c12116e10c4ad54b1ed0c74eca6404abd2d03e25ad8e917f584d753d4ad706e1c194489d703bfc410edc745cd73569869f167e867ce9fb87bee36fe3b3d200e44ba921c90daab59a2f8f4526a3d4fd381032995ef585e05ac8ff3ce2ed6b055944081094f3a14b62dc240baef9c76530d35db12a9413457d44ec57b731cf05188777487d08e6a94c2f0bea39eb1253cfa50a7da1f30354379cdab33b250b00e40f6050f86ca3f9c596bba1345306927f042d028bbcbe3bad45932a9430e8079e460d0286d1c1a53f10318abac51dcd757160b2dcd106b3733de09bf0eeea06996efda2dcb6302a6bbc3cca00ecb9688d921a11f9d64b31bf5536679b7e92052b0da9ce2b145340ab6a1999fe10cc75477b5b560eaa56b530b24d596440e2073c7b0ccd84bec0d566eca85e9e0bd920043d0abb2d5a3cea6fab43b2d7ff97017456267d82cd32b6cbebeec0b631a542ebadc08d5f8debd4bd438e2fbff54e02ec224e8c14599754650d2d7d3d6fa43f67db81b10fd5510bfbcea1b551d83600097516b5a71ac0c22e6e94aa1afcbaefda0747b85da06bfdf366901658876a025b55f637333a89b4602dd439713f1319c289ce4a57c15d97cdc637d058f873069b65756edee93105139c04d5d37ed11d13832276261f2c81c5554577f1ffb00211c0969519fe4c3c120dfb343a2da294aab5420382f1f93e9faa3c07245dac003be4a57d1ebaeea1f3428618b183de125233aae28ae1c6cfe97b5a7b5f33a605a34ba9c08fdee0d3a12eba8526dd3a9c77f04092b60733b3d95da5fb8e639b05881726c40ba0b9152d4bedac7bd4cf0cbb0a25df1d2fa14bb571308821f1b403c073d8b01a9422f0a5c7be2fb557b30982e40878a76f161a24345fd0436bc3008b0487f33e344020a8882859ad8b9c93a84879f45db55a7932e3206eb6553701aafa48a48c82e40f307fc9d20eb0bc103c80d40b8f69dabde3dbf69feb208102ccc0476d266aa8370fc0be4a2c5987631032ee5d9db538c0a98599e9e1ced30370b9c01f4c937419521c17b7d6fb31cea65e20750c3ece1b9b391d8d896ae00700eb4572325590173708c858a43b0ef7c183b4dc5f18be159f69a5c5cb61700499fa50d5d86cc7954bd2ff5b822242c6cf9f9fae13d232281d0aa16318c42306e233e2b15125567d80cc85542dabab64bef0fb87bdc2bb9bc4d9482c38643a07f0c72baf5183efefe7038f6879a12745add10a26b290de4fe43dca6519474f06e5115ba784ef1a5a192112a92e99ea878b30f2ac06280c57554122833ae9e300242a16f7223347a94b5eaa5444288324ed9e5ee7f940f77eaf57eacc7625bf05d8050d6614167bbbc9a31df1958fe8a44c37c44c34d1e193b920b755ca6a12010f4286c2b7804df8d6b8a1bc0baac4f65882ec9f8a8626d452f3736a25d69200521dad130e129bf7d68799eea83fb05f3ffc8ac7f4cf783b062ae6f1fafc3101736a539d12f9c4c8c0a8da08eef11adae1f0934dd5efe1b42ce889924d745c000000001c63d0280521041572236c583d9cfa57b5d51a97f82bd3beda1070ae52b7a743e9faf6420373a0fcc652b38cb8716dcf4601233d389aa2d1eaf85db591e66931acbf647b04a72bd0440725bafbf4630ee6d515f02ef54e0c3231fa8de5fbda06733f064e017be1443bff2a8a1dad12a3beff7297bf8b4e8ab77281581dc88de852adc1e707663af9ddbb2f57b9947f62bd1355bbc00061ce3e991f4b01e14a1d3cc1fe9b05fee4c283e1ae6ac26caff42fc16ab3f9b4787a87ad13dd5b89acbe4f19cf1f033c3313565b49e8e61dab33ee9c71530f64cbffe6e9c1cc273b1da1ddeb529b06112d5150409cf6189d566774d3beb1bde94f91bdd5953271c73178f48e7501034b21ece83339d67adcb1962f2b42ed7117f26dd13d9ce14132185a9a59a1a4040d1688872b9177d7d19947bc476434b235e6f33ea034c61712bcbf4be9ac160794c9e3338a4f4a3332d9ddc9029a90dc37e64dd591d1cadaa7044b056800650659172f86b960dade33505441f659274e943955ca07323a9949230a8637ee39036b842110ebd438d5ef04d27a7f6a60e139dd3bef5e2ae53d0e1544a148031f008e8020a2c9209214b726a5f9b33e59d2b15c5fe83ef2ab6184d56b43c1a0ea04afc99d4387cf8cb4ea6ab600618c43da605aa95340c287c65884f917f82c3f02f81ad3b8e9658471d3f6281e3df19abca1cb3dd7a2592705d3d51b45ada012000000000000000000000000e1a8b998ba36cacaeac26fd3d378da232860cfc40000000000000000000000002d6b4a203bee4ad85b1fa8a790837c94b007981e00000000000000000000000027816a19812c58f287a4ea48490c5338398a66230000000000000000000000006f9442593162424cf1286cf1dc3e45e2446e714800000000000000000000000074b35e31babe4281eec35370be4f95a01053d9910000000000000000000000003efe1cfe206a0f9613ab245de4e827f60b1816d3000000000000000000000000a50283ccde781f483d8f6af7fa2ee672e71145a200000000000000000000000060d23fbbfdcd7c56522e3ee3f39ff132787a29520000000000000000000000001a5b3e9d7b1894b6156660556f950bc0d98abd15000000000000000000000000e5037865f1d752944e225f441228a681de5dc77b00000000000000000000000028f8ec47bae03049dbed7d6cad207129b00dda1d000000000000000000000000499179c87c5859693fdbd22dccb271b29e0a582a00000000000000000000000040e0ea9d9cb1ef0838353d705e305652fa7e7dde0000000000000000000000000b653edd50812fc4e34761738eb0319fa6d6f0a0000000000000000000000000598e92ea610f2c891410eaf43b2be89d05a115f1000000000000000000000000403d3fe65c52f0cff6a004b04904a722788a0f060000000000000000000000001ba9075d1e910942c8cf5f6e047b35ee9c7d192c0000000000000000000000003ada14696952116ea9717e602b6782ec7ac5ee9e0000000000000000000000000efbf9d31de5d1f11fc7676868cef305ad4173fa0000000000000000000000000b14edd950845c044562c5b55e70af84b7995894000000000000000000000000b788525fe1084ab6e7474a3a0b6508039a2a55580000000000000000000000005199283a5176ed10f16b11be95354be18a9be08800000000000000000000000029daf55351a2245ac3fd2a18ffebfad23c5468a80000000000000000000000007bf291614e4e7d82580cb64df742ad99514bab51000000000000000000000000924cf1b6291f6600f34b53f96b217451ddf37e200000000000000000000000002078748429bd9e14ace5115ef8d3899a2769ca08069af6cf036c666b53608b2ab32091ab2cfd235915459899a2bcd1bb6024b28d0783b7a0cdb6ed7f764e898c42b21cfe6c7107919ffba85625b49e30f86147d60507e346e4b88a01a34b25af5f1de80d3ad6d3d7355778a9ea21d40a7e5262ac075e249a91579205b4145ced2bab79c0590d6fe17704bf8f2cffb56d28477e9702cafddb75ce4a493ce99ceed67ef0b958e96c0937cadc6f3deb38d938552190039d974a8695201cfb1d979a65cbc478e2e42558e18804c7e041a8bdd679553d056e0bfd05e9e4aa1d097ae42599e17c1d3e1608f4ae1a8433007c5120d8d92200f175a8e4c76c310e557e4dc210a797c7985e97685d56b8a8280e22fd320078038fab9d335df2566c3da4ebeb07896903d47aab921f1e2f9eb159dc24d62837065ed2939f2683fe405abea668b4513771ab28166f44ab278c01d3db8501f4c8057419145940c358f0586c13601e2c9998448d08d1dc1b8829d358e44a197ce60001cda2527559fdefb2403c113bf2bc611192c75491a6a30b7d2693f07175e807df5c4f1c3d418f150ae366731fbd17287fca68201900cf017d2588d2a0e301001291a19c5fda10a61f1c2e3e9889bd8dabb3da6306c7dd43f7fbf3f2fe081c05e167dc856d5d4b67671f599e06c7cd7f9d291ae32c469967e83f021b1e4bdd02603cffbe9bc0c33a375c4523a70ee175c767806f07e46f2be250f2a6fa9e10051e92eb0edc48f6cb2c570633c50e82a66aace2813dc121955cca0a5b7e89590427bc5c15974b602be9b7e544c0f16555f94e2e85061344a3b827e09f033cd2046b024612a16b51e0e5bacb2613cc6312c10a2692281f8f853e9a2ed989a96d066d0c0cb28d00f5ebae951f4d6ad2f2825071ca1c51e861c21b5fcabdbaf6e5025ddf4722041a477b56d368ce3c378f1b71011b6b568e10677f4c4365b0ad9c0358ed439240b9f98e67129a726258cf0dd1072af689405f5f075ba847f1565e00000000000000000000000044668c06a4c4457750f8c7d30500c89fa74fc33d000000000000000000000000788ba58c128f5f38ffb40cc9f85a8e46962a5d35000000000000000000000000c348ca5d8ffb51c10b38673884d1fe37e7b74fc40000000000000000000000000cb31e968ae442a7aa5854f050551ac54153b5f1000000000000000000000000dc4c25ad41efbac299ef5bffba29d38335528cc900000000000000000000000097fa99f99300d089810c26a9b8f227c5a4d6b5f4000000000000000000000000c5f90792439ec325e427faaa510b9108e8bddc5500000000000000000000000077ae36624f8cb209b8d7d75ee2b888e953cfcb3700000000000000000000000092b97d6443134ec23ae96a26a56aa2ceab311c1a00000000000000000000000011441a52c2f64f06d38824f94741d11546f868a8000000000000000000000000a53356df7991620fc76eb53bcdd099abef9f44cc0000000000000000000000001b30216f28858a51623b885e0467160be23cea87000000000000000000000000e077fb3c7129016f4b00dc37c19138d50b2860f30000000000000000000000009a121b4b95d6a642e7ef2905bc329a6d7b724065000000000000000000000000e0201d7b0118170e718e8986cf048fbd10fcd308000000000000000000000000d6991a71aad1ec6f3dccbd0d34e0dcf754f22017000000000000000000000000a7aa156a9763538c16f16de2f110090591717c03000000000000000000000000bf3e9cd549b757860bbdca2abb977c2a33760fbb0000000000000000000000004492d0e2b26e4b06e2ffec226d16d10f6bfe6c47000000000000000000000000a575546bd3796a7b97a31eef43351862db70bfc2000000000000000000000000b1e3d15dbc28d0ff27c76e4fe9dfa73c9629ad25000000000000000000000000979688b7eed1a3938c8f4d40a0a6a1c3378e239b000000000000000000000000a4eb6d1855e159c17e236116d02f252e5ae37ec30000000000000000000000000a406c5bf5c6ab8d812dba01aacdef1b543f2e5000000000000000000000000088bc9ad82c2e9562650e9090ff8c8e99a9777f24000000000000000000000000ecbecd1183cd963661247a92b96db75ff41bc01100b7d9254d9e01cfc97aefdfc09d7a6b4de35b8fd67f36b816b624a716bcd29e06b9709f90fb898f5df925fd3063ae790bf5918acafa7ec7e052e98d374a4d100124137a31dfbc8a67650a13dc929e0fc25cf25e033412fdda06839694f4ae0c04afdcb0b7c537dd310d2b0355abbd996617f01d2bb3cec64f8fd9778d072aca00ffcdb3eece933b1857aa46743c5b8805e648cb430c23bdc41793e72e54035e01e38fe60ed46a29969c9cbd88228b8444aa1c0c5a0425dcb8d1ad4c763ada3306f62407c7923fdc54a154faf8105584fd3315d1aea88ebd7e4999a389e57c2704708cf15c10a8cd0d5dc288546d26397bc69a95b226f44634c5df28405e54f405b40f9f4408594918c58200305dd8ffa4ccb54cb1accbfe1bbffd6ca9f4fa20043f3a3e0f843a776b61663d9ad90cefb507730e531e9e677b684d8c12b6908c00113b7f874447a3651f11a8774a109a0fad4f144899bf672cfa39689f4ab17506d810eba22041259160b8e2fb58e52f843507d5980e7e07ab20a03f17fe32cf015dffd9ff1eaeae6249e10378ba3dda3fc86efdf2775ffcf4de41160ebe7b8201ffb7851fb6d05755dda806b629bcb6c1e81152cebe397418ba252147571a4206c2e5f79ad77287c29a43b486eb49f376008e1fcb73e5a15b2babed2b0d3d0c02649189555f76e6a6b783901e51d1f1878085eecfdc50d055e20641ca0b1fee0418e4e0acd75a79d724971b84c5da200ee953820b4d7a51dbfc63620ad1f0a405806ef325687fae550599be103214df673b1d764b163789abc5b3e8ad5054bb0000000000000000000000000ae96b73af784ab23e827a7234d9e382843adcf600000000000000000000000041ce04997f25dc312344ce7bc46c21e4d1e4875a0000000000000000000000000f8748e07e281fec29a219cf0abca16197813d8f000000000000000000000000062b5e8899f94a4d5ddc4aa1442df68b31619f4e000000000000000000000000f95af954c08095cf1a89a644bb6b09497ceb4ced000000000000000000000000a90ecbf1e3ba6cf6634af3de9084dffae8cdae29000000000000000000000000ef11101dc2cbea6c8d08bfeca3a5204af170070d000000000000000000000000f2fc11fb1b2a7444ce5df5d90fdc22c75b361d10000000000000000000000000c443f7be7c4fe069a076a1d80db517323af2a49c000000000000000000000000009d9a17a6af552024083f9fe3b28f2c468f35e5000000000000000000000000aa60201b34b5a41dc4d4a5087e39dfcf1dc08d28000000000000000000000000c3b46cc7bcc2e959d786a32521c50e45f7c3a6c4000000000000000000000000727c88de83069dc26822879214311c8eb4267c540000000000000000000000009f18aca33a03ea5ef20f96c3bca10afee2afab45000000000000000000000000ead0bf0d53ee004eff47dbbafa89451f4d3b4247000000000000000000000000819f0a454d8e946274a886e6f88a1a6fb4dd896a000000000000000000000000901582dc09f9cf821e9c319b11d6cbc8d10c48d80000000000000000000000004eaa7a6dd50fe434cd887ee2d64c5d19ce57597a000000000000000000000000248ac1668954253400c4d23dc4585c0564c318bd000000000000000000000000c50ccac08d9fb1d8d0827449cae0aa997fc2e14800000000000000000000000045d983667b8d37415bd8b41c4f77304785c1065d0000000000000000000000007cef06fdb4fd88328018829b4b1f60e543f205bb0000000000000000000000009ea2307c8ee49b2d33c4ea71ee968755e311628b000000000000000000000000d313bbe04eb0d0a169f96da39f8de240a6b921e60000000000000000000000002036f209a1a51ff7998e15a7a5f2668950b77704000000000000000000000000f9ec967f86d5aa9a32ce4b04f7f4e7a80e4f54e50731dd5e31492c451b8ba44fe5cef4f9d904df232384bd30cc26ed20fe320f35032ff3c8cd93f989df20779a2ce2970679ba296c89d63be59e5358fdff5e296e00bcc8c1cf3b0c6af82d65b0b660d9f57d2687d72c24df4900ecde58a55095080193b7befb4f33694e0dab1157a9fe239c5699dd464fd9891b41f54cb8238851062da44a1df466fe870fc636e03f038b274c1898a85c1eddda7ff633077b4f4d04d5d978884564d77b5312f16acb5adca3afdce42f69218b53d49af970e4b02a049220d20f584aa6af1a3bd2933d1f41dbafdb4f27e4a3e17c341c966f135dd304aef5cd849cb0c64fd8b4b11a310317921909d8f6bff3cb3eb88adb0b7c506b00be4aaf1a6cbea169b40dedb89aa5d862c3f13613f2c710db351dc2dae013fb0499e1c8e475b26cd5757300960a8a6441a2cd55db6cfc21cd5630aec4ded9dd07c48ef24a2ac5ffdc72adf4573e78c17ba06a8ff95f655e4ef7d9dace6bf908077a7de74e6e7b1e019f9666e67a4d102e1544d713b3e8d16ff2a92eb5152e05070678549604d7007948228ad10818c802f7ddf8ab5a2b0f0765c07b792a34d501a737736b48a908a34f77a0f09c5e656ab9a89cc9e3e3f12d44491f1cf5b93101bfb62172bd0be4ba92b5b13c8b1dfe0f257d045a7ae41a9f243a4162e44880001532f5209490455b5ccafb27fa4a5c232dba24db7a80db3895bae93c8902630524fe5a520f2c4ee96774746b27fe6c66adac81d6465aa8916b41bb212d81c90099ad0670f956a8bdc06ba93f75793b15f94ccfc4d4bfafd3f41060900c9a6806585c6a8334f4aea4b8f2c1b5ee8e56f058393484d83b13b6bf866531d829280540426c5df394c43202e22b984db959753c1a07e17a3b885de4949b6f196c4b06191aa85f71539e27ea1686d321264df7f105ade8c6873bdfdc486fbc8b453f00df9645c36211f9b28d32517f78d5188c5046d583d6caf77f4fd2ae3acab5b604d5f28b5fa7b060e85a2a43a4cfa25100ba614ac6186a531e69ffddfe7ec46702fd0fb6e65b32a1b6a2392a31abc73b34e155027e9f4902da09e61fed48553005faf026e360baf26b659b58e4e2f0e0a4a78642fa3b3edab220ae29570b9533072222d385d1efc2e5983f3f67aa116bd24a2d75ce85df88b769fea87ee1af71071791e87a8d0cd1dabf02bdad18728b9eb6958649fcd5d1a61f3bb919748fe107a05c9a77ceca8e1d861461c6729b9dd795eda74f3e60ef761c54e2fde66ea5000000000000000000000000e48f3018231c77c6be3d3c1c7f09141e841907790000000000000000000000005bc9f0b75f7202e781c3047d67df3dfad715fa530000000000000000000000003042ec3d85ae9885540b2766e4a6db5e05b2d3fb000000000000000000000000f2f0376ed47bc1173f188c7713afc1ca4080de90000000000000000000000000ecdea52a4fa1f09fd5d1b2a33e26492347839b190000000000000000000000006ec3b258c80eba110049acb4d01384f806ac482900000000000000000000000095393fea961ee244fbb4970a62637af9ea638b74000000000000000000000000eaa65f667a729d2fbae5470e35e38fc5c5a3ce09000000000000000000000000a26a558c3a4d0656038c786bfd81ab03eb1ab1c2000000000000000000000000a1c68cb73fb708bccfab4ff4b801d8e64fe8e2fc00000000000000000000000089873a392f9707c1aad6c0a95b271e9c27b2b994000000000000000000000000eb74ef6fe2e1be79a52d9c12198b2126ed1b5791000000000000000000000000818eb6097fb210b5dca004ffaf7f7fa8873a1687000000000000000000000000b7c6a02f7db21423b13e30566045784aad44e81b000000000000000000000000b8ff5c9b59895a7835b7a61e5b1047b63c3fcbc400000000000000000000000091b6a939307f340d73a4b26da09b8e5fbd327722000000000000000000000000ee831b2aef6b2e929a0eeef34a39d9b285456f0c000000000000000000000000f516aa3b25c990653b8c1b9f5a6b6f4aaa806399000000000000000000000000bcfdd3f995886a772f9954153d27324d6f2a8d58000000000000000000000000b7f6b952e0da68651a3afdac3f514efde92298950713f09c18946e907fda5f95b5193c13ec95768d1de6ec8687197d6b9a45ac870680a1f94eab8e4e8f1073c6a3e6dbca880f26100782f6b5f8ec19bc1419aa04055412b776e4794628024c7bcb97de150959b69b9a352b2b1e26d371e8e4256b03a106bdad177dfdd46e1f1db01ce9f95c78f7141dbe2377ebc5db7dae566be4055b86f210672518c58fa2fedc7db414e489704bbaac18d227eaffa03307ceb3032a28b75d86e4ec04894c999a21aa8bddd4c902506a594781a0c86169285d7a049d0c616edf9b6963b1d4930e69e6bb582eca68d5489e0b0f7771df83c9464401b3f83b7859771481b008189fa73fb32b24f648cd5a11b0f09e231d4c70798304b6f41af845502e792a13037ac5d7b249def262b8f11f5f9a7c502fd2e8f1b2033ace9f18fdb693fbc36ae553a24dc48638c524525e0f9755cce16516cb0ff6035ea6ac49b1730b33b6f4c0f6ef5390060991e1b292ba334fe4621a879faabe024d5c6ff9788dcedad989da3405733810915cc25bac929a7d5f3d9bb52ed86f01a0f2a6b778c7b4ded7383116153a9c4828102103ab2bd0f28176b6ea2529b60236dfdb1830364563e148df696991e50981b39df6d0f614cb34db9e9be7f6e70622d73ea4c2262cca511fae71978d906e3d4ebaf0a22e18d9f956654853c82f02f995b0f351644123e77c952ca86301268c997a3e99fcee84879bba83b062180595222f2302539315d49fcaf6838d470efa89c36d428316721c9c3f25ae490903501032c43193e15acaf8d5e01a736366405f5fbd11d842af228878e124913d033e25ced53cc6d25fbe69638ceca9bd199cabe08c6146d631e153490a09a82201e2dcc0808b0e8005545d69f693606d3a23491dbfa56ccd937ce76f70a6806702876edf088980eab04fe54f031803e82710dac0c0b8ea8400e7dba562ccd38e063d8941613abde1d6819d8d67df3c68f77389fb5f3af657d89ca571878af091044f9c47961e18d7e6ec9c5e5a70bc7cceac2d4945a9332425291887ee8e0b0205bc45d626f5244c0edfc6573867ae7451e54c9d5ba9e656600ff3f987db335c045c534f30a965288ccd4d34f0a971bb25ab1439a90d8bef2878dbb34c4a2869065c79292860e4e717a487a9b37f7630e91b5863695037a7bcaa7254ec0416e903f9b2d9f6d48014ab7aa1809aa0a18982dfa9fcaad2b5be0eacc6f1b3ec020004986f804d0d702f63dc4fcc7d1281531582103ae7373acef13574a5ea8bd8510000000000000000000000000df48fff4a10b1889b940714afc56fac4c77cc800000000000000000000000006c8d91f3e926989d39fc83f8a7dd21f0cc55a30f00000000000000000000000013700cc04ed3d6fa5a1d4e6a4d13cd826d06dcb90000000000000000000000004f87425054c90f6851cc37163c90c92a02ac1986000000000000000000000000c89e86b075fd35e3a6b60a2627d5f0b252e7afbe00000000000000000000000022320ce4d0bef19a4d3d285591ed9c89a474ad73000000000000000000000000ce5377d68608f074b46636a21cd517d50177ec3f000000000000000000000000d13b879c9f5cc2318cd1362b32f70e8f9a3ea655000000000000000000000000727e2e8a85d9f92cfab8aa20e5ee7420c4a291190000000000000000000000006595671c3e6cfe5cb68de9564df910482f815d3c000000000000000000000000c20f2fdce5aa9e16be03a15d3c9175f86c706214000000000000000000000000e1dab734857a5bac50295997dc0124b9f807d5a20000000000000000000000002e624f2288a4c4ecd59178898eb9a5e5f921b77000000000000000000000000080238a0cb86c05b3d19d58060b92c10bb6b35ebe018160b3e5de336715639054e55cc0c37474c610cc8cf50ad857a6863f895d370193c30ac8f1780e0d91d04e702de7575ebcd94116a10efabe60614de06bb77f0720e9b953b58935bc43574e0e4d4c0539c989bde0e13b8896cc5f29a9da0ab6042242a13adced298d9a55adcc3d600420abf6f4d78fe2d57f730fc0bf05a19107fbafcac4754b42cfe6488c77af5efd5af51b891c401c5d2cdc120af19748e60334184a0830266212ed61c66aea8bae264f11de14623a14326a7609b39ef358064d6399bcf90ee9e9a1838e213dccec21a07518262ca5bf75d87a1ee9d5987b065a092cc5dc228c11948c1d1b90c104ecb64bcd5d3eed854ab09c35b96a527b07e022edf093329b7d12a09d6e46a63b97929474c767fe3fff5d62b40b156b47078037dbf5a1cd97f3dbc02041fb9884c03f8408bac3c69d1e97d727a6c6430f0606b1216d72471e67ea147a4558e7d38c1f2c380caad944219cef580862b3fb075d17c3866e713593a5cad2234101a78023c5f011c9aebd6630549d5212bdda06baf0de1eb753b91def6e236c791e47e72e35d84e6f59c7692f0b1c247e2e4e006fe55093a13b7cff6a42f5ed832d8de3ebee7dc78ae2cee5087ee05dfc6fef03c6954715582281d3d7c1db04522d8110f8bbc516ccef8de4c93a5438e507df0095df3c4438f0f238854a11401886053edb38f64ad35eeeba4408fa57fc53ed0554c713c9f9e3e30dbc94f6cee67a266dc0ea6670e0ccb666a3f834a2c6a9ad070a2d46f63d0d302dc39f03fde4f3560f9647703dd79569cc636035343c332d0534e13ff5bbcc85bb17ff3f0b7021abb1b64b24f19c88ab9f7b21ee36e8dcf102b3d5344749e99c21de29e782bb425dcf8f5b167b93cb846a52dbf0dc703e37024abc787a13798881439e457b64cbb112b862035d3b122b7098391feb87df7307dffaffaf46514f9b0462d706b6da43cdc27c28fb07a1ca575835e762f0283d076139884111a1f8c9357023955c92df165bb0f25a87741eacdb6c2ff2925a6c01a81d806bdb9471124656ce9bf2008f62d0c0c767760e15c46afc2915a33b54007216bbd575fc0dbb1e294340a801cc911c2eb25d4076d888f172512c98cdc1022f986608e80f1c36656b936720fd43efde3930e0e03d66bf7df49e771896ed0419f1b4162c960bac2a55811ee164631fbde0bb08171dca615267e1fe46d671059868ed8125c4bfeb6aaf2dbbeff87e3cc6c52daafb2c039104bc6bde0a2c7900000000000000000000000004e308702252578be6a63d04456be4af959057ca00000000000000000000000003c244882fa9c894dc3b57f2754e8da7bdc7aa5c000000000000000000000000cd90a5de6439d82dbd9c0a16dbbb3a7f7196ad8f000000000000000000000000a012caed441166fe4c33bade6109514ac5ef38c1000000000000000000000000d0747d4e27692469087d217a664cd30b7de5341400000000000000000000000098d3ae50be58c2969886085a8a93fc740e9b715c000000000000000000000000d93710c6c52ce4e91903c62d57278e8633e13ae9000000000000000000000000c974761f49be10e480291008be3aae80221186a0011415c2cc32425eddff0efab42816462e160e8dced38ee7f279d216f8aca4af047ef7de9a71b9ce24350f3689855597624da2635e13e048ceac82aa5407e79907948bb8061fed177e181777b0cf858d98b15cf301ca33cde7602694b37fb2b604662d925559117c02637c438b12b227f32b85826d763f4aa73064e38ddafa9907515179a234d00ae955a19771cd0d9cb3f0d4d43d2a8ed551ee1d4866f2b65f00f6bba9669b04562f50110a5d81b3f401c561648ecebf456e540eb192d1d689031cfee53da3fff10ef19f5e97bc840938cdfb41623f272cd79851cd96a3f99207e5d8350d78263346315a09ba7db537142a1bf663839864c7ebb10937bd1178022e1f2d0beea45bb853edd0ef5e8b211bf3f772c2eeadaccb95a29090ab12d802fc9020c8aec8440f0ee11d6af8b27a42a482863f45f11f0b9cb718e4b1739e002472c23f91a3907f6f42064216c51324eb1ec66f0220f4e1f98d89a3485831045a08300c3284e7e5ad986da5097840b4fef095682846c1e38f5419a34f03c3008415b790cb2ce6434c04aa02f79d707efb34b52d2c68868b4efc2a48a8cfd406bcb7f81a03d79c6b7ccd4e906ce019d0e442446b0a0835f44971bc47acf68e035945a1c0fa3011aba3c21c36dee84a94dd2fd07c595c0dc83162191d272efd05b76775a47e4af5d71be22a88119e32c304e97d882dc243fe9ef4353a63776007e9c8b261c256ee0e2b2a15661cf9cecda83d23f3d24d5beb7b5250e0a0ed690405802e636b47db49a8f94c54f0a85c6138793b58f2ec83c4c89c90c9a790b30595fe93c6de33577c8d11899ae185f17e496e37e2962499515880cfdd0e118907b0d786f2d454c80efebc0ab6d28ac3c1735544703430fb97552971b4eb94e90000000000000000000000002039a2ef02e910233495cc23a386d0607d34d5ab000000000000000000000000e31c913538d0dd9529f362b884acd1d88a93953000000000000000000000000091e83548b7941a93e72bfe18be9620ee2b297331000000000000000000000000dd5eab8bb320292bd001a190387a48d37fa41c880354b444ee501791b91c5262f1391e1d94021cc7a68e7c43242ff1e1af7ca59502330f02d4b1f88ae9b9d2d41f0c5bb2b29f34c7f29aab4c132aae12bb91020e04914f8e8ae130df1bf310fd4dd2b216c2700f3d04ccc5c2b5e7bccfd19bcd0104b787a3503f4e24b8c52af5dfbb13da8a94cf42254fb91637d9404f9eb6b8030768e0d6a974c2a29c8ad16a7a9371079750bb39973980e4eb4a56ae9e331d95057cac4dd4a1ad34a391202ab3f59eb719404f16d6dd7aa4a0870444ecc906e603f71dbdb438af76b770df4b29bb7fa5292b8b0287ebe76ee3b47ce2f7f7edb7013ac7c1823ba02d87ce4a9cd64ffb655c51ecb35f60f97e2b3903156a84b6a5028bf28213476cd85dcc544ae0fa1d2a18741377bc16269220e9c2886fa92bdd021d03b9ade99684e9dcf6ba55b7771ddcebba0f8cba4139d28436928602e853048c0af0c7e59366e931e4de158921e02220ea8138edf889dddda02d63d638d50353fa86099724bb731b7159c9154ebc454987a4b3c47d16c8d701663903fa9403d7d10869b8fdb5818d28772ae69fdc398d638754a17ef70be561d053524d9004fb068c910bfc540392ef8b1813c2c949fc5dc4bf9f76f7398e0f6c90d2288a", + "proof_hex": "0x0381616c366cf760d4574dcbef86b7614b8154be974adc6f0c60992b030ff84d077f42dc791f94a825a3acee9a4c1091a02d3e206947fcc5fc8a9f89b9c588ec03086d3e12deccef3cc624f11f58c2153e7038e4f9b73e5f3f1f21940904314705f3714ee77d06ab0310dd70409adf70bf7f619770221c2a7d2493dbf8b792ad02d5dc06ddd9cff9d774b02d0cd9565a369e09eeafdc36853ac707e8d5c3af5202832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f01d5c2c373e7317fe8f6e36fe10df87905f5fc11b2528a8653e5b0cdee90121105edf8d8cc190796eb248558dcd9d9824f757f4992cb29f0aae354af98631e7e020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b00f2382c14f5079036401e1f22d8174e6a3df39718220ee0f4eddb98c703c0ca04bc6aee20fe837b9c6893713d44fe4398dc34e311d2be79c4d1857381be357e05564b59dac44f3a7e0c43ae95d090b9bba30f44162f441febe955cede7b365704510830a22076caf59c6fa5c65a5de7e608a8d8b5e6e9c9bb73cf5bd412f47304bc6aee20fe837b9c6893713d44fe4398dc34e311d2be79c4d1857381be357e05564b59dac44f3a7e0c43ae95d090b9bba30f44162f441febe955cede7b365704510830a22076caf59c6fa5c65a5de7e608a8d8b5e6e9c9bb73cf5bd412f47306426debeafa13c7d7d94af28152fd6ac4dc55fd8f7959fb1834a374ff6ce6c206426debeafa13c7d7d94af28152fd6ac4dc55fd8f7959fb1834a374ff6ce6c2077cba3600682fe74e1993047b66f596d10c3e45ed310cc77c23ffad8ab9a57806cf43212184a6ce924f7a2efb34520241f80fdfed24e39484880d28b61b3ec001afb1f50c7c3bff94e1b84fd09c3d5b1f3a8fed92ee0df53d9462bb6f5208a3077cba3600682fe74e1993047b66f596d10c3e45ed310cc77c23ffad8ab9a578026417525878f0314aa2032bda46f3b555f3e51d2899e666bc639239eb3a2f48026417525878f0314aa2032bda46f3b555f3e51d2899e666bc639239eb3a2f4806cf43212184a6ce924f7a2efb34520241f80fdfed24e39484880d28b61b3ec00489607ebb0f82d9ae18ee141083c464202bb430945214713dcf8cae04add5e9055b5f7d81559357b15020b3c57a74ad3baf0a381b789d8d3c40712fa2dfaba9055b5f7d81559357b15020b3c57a74ad3baf0a381b789d8d3c40712fa2dfaba9015fdec9df495ccaef4203bdd177cd280e9376f4158b42181fc422cdc729b4c707604a142186fb01ed964fa17c918327d0791094fe3e9fd12d236fdcbb33e1510265fc7830c9aa5a05214f3ab7c81d20c354a89f29c5770fd7a4b7fdd6c8712b074913d5ec4cc3a2c108bbd9d74b49dc0998fda277089f8fec5b129f03e6ee6504ecb4a9e8ee02e943e8b81f1469d014a9c5baeac8e40bc78ab8114f251d433700f2382c14f5079036401e1f22d8174e6a3df39718220ee0f4eddb98c703c0ca0323ac2c9df83b57ae43a33dfc74c55055633127bcb36f5069138c160a8cea6f005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd89705898259e3014da1adcb49fb1be2339aec3bf24e04323585670a3f96c6917b71055d5a23a828430785a0cdebf49903ae4486d52475414713960ca6410a25e4fb05dc632619bb73dee103aadaca7c9c5091f12c188aca470a5ae046a4ec3e9942050aa8a58bc746418a6f6ac3966a8028a5b78e0175b0caf264c979e8159e1a72039c29c650c4780f185764fe967bd67f0a9cf0a5af7dd549e5197b21b36e82e103991857f42b1f0eba0b3f73aac84da0e7e1ebea5ff00aeeea20fb71c2b16b2006881cccc29ff6c83486ed6a9952328f096e016a1945c63837cc786d4333fdca008ffc38e6c16bfa2348a1605c9393b3a159f4d63c46496ca1d9d30722ab47ff06d74ec59e3c09f3d3fa48320076191539efb3f348e2a8f8d73a1d7fc9b7dac301afb1f50c7c3bff94e1b84fd09c3d5b1f3a8fed92ee0df53d9462bb6f5208a3033369bd783424356fb576591d0be518d300ef03b41a15a8424c753319071b7d033369bd783424356fb576591d0be518d300ef03b41a15a8424c753319071b7d0489607ebb0f82d9ae18ee141083c464202bb430945214713dcf8cae04add5e901593ec661b5c032ce9be2ce5876119dda1c220cc7a76ed7b6a2ea405353facd015fdec9df495ccaef4203bdd177cd280e9376f4158b42181fc422cdc729b4c7078bbca345ea6024f57586c6af400f50f68a31337d49cbf071d6b884261e5f820574ee118a75059b97ccdb84ca73ff132218365a6a4c924a2020a2d3013c7cd4017a9f6e5fdbe3e61d743cbf3dafb9f8cbadd7ae877beb1d3fa64cdf63b3b2e2005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd89702832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f052862e089c018df1e7625cd6299aa86c6ed2ff92239366d573bc5d2151d0053070512b4450df595f8b24e7e958603166503e8a05d6cdc048aae05e51542dac900cec82f5a2c0d63f56fe5a37d061deb2fd9b10667a4c3390f770e9518048a2b0501004577c67b4c4fb95a0954c034ed461e6a56182215ae975fd7ff821108eb00cec82f5a2c0d63f56fe5a37d061deb2fd9b10667a4c3390f770e9518048a2b0501004577c67b4c4fb95a0954c034ed461e6a56182215ae975fd7ff821108eb077347139bb14607ba386e76d8caac960454c86a13e837ce0b42743a6522b772020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b062ed08c03b9c8fa1809179b4dbc6f29399293eb80c90d254e819eefd555b417006ed58adb12e64d30324df62b283f516ef2acbf2c422c313ecf928d83e5bfcd01d73b460b086387927f22e6d3594945624d97dfa40a5d4f38ad1edd71c0852601a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae015de2a7139762d7fe7367430ca73b9ac0f64bf4283ffd40bae1a8f6eacf35ef01cfbf3d9dc3c6f9af0dcd5bd7b02e3ab7fac2a899c756e4c0ecb4b06c079db5010b7f3c01f6173539a1cc6a9bd5d6682caddbc93238a8a473e04e31f8adc5520783f2a47b6130718d351b7e7de25bcc272daccfb604df23b482945e400da5ac0597884c58b5fdd21097aca245260af03a366c356c58534f65110fa98b95ba07017e87932ef6d1a8252c7933576eca8afda5bf9e024c8256840c54b1c1aa3652074872cd9af308db3bd8a834f34f6056c243ac12557767cd046b103efea897f40623461443fa1a6b4e9ef8f4814111b8608d599546c673f3e9b48ee437da18e20373110f1d14a4876ba86480cdfea5529935b133ae0b7920be4d5922ba937e5a049eaf1f2a9aafff9075d0083a8680b3913e7b4f4abfc49909ac35001d32efa10460c5eb682794c18f895d85efd8ba7d3aebda51eec6b552eaf288c775d6607f03e3d895f75b07ff82b90838c99e7cb4578e94bdaac5caf6a2222bc3c864afd001e145204c7cb7b7e3919966994bc3dee5ee90b4cebc47b03fe4f77554ac9f2904a18ba654190e9420f052c0e58880fcd2f80798e3a439d1400a9e2b7fcd33df02376eddb3c5edd39bd94ab99d4f5490a2b6430e24b4eeb832cd446c9021cf250346bfd404f064deb2847bdcdc4373e26fc399ea371b131e5a2dbab69d41bd79071b02899d99cac3a1b0a0d1fdc0e29740034681c9ebe40f62e6c9a1c590649a06f2f17ccac8a8e7b02a03bd44cc46434f1575f99b23b0ba331ce81f7090e63105f3811574beeca97944cb7c481143693e50f092fe4321f734f497e7ad247923065cf5eb94a6588df72fa54e28d8ab390843dcb6cd187f86e7092ba9f99e1115072b71601ea2e9b187ff31692f7890fa7d015ffb5d7d18009e1fdf1be4d8cccb066a6b416b30652501fb3b2159154f525639a56e6a0749de5334b46b5ce3c976026326d5b1bc364aa00faed7a18ea3acb6f3de18d46438dd8def16e9cb7f91a402d1b63cf6408b48aeb6a371131cb4401d3d020662a938c4340f5167267e49bc01919cfa07e951f212e7578dc2ccc0aa83e11a5ef761e36d0d93cbbefb20fb20005104d55a5e657c2f6d5062c2ccb75414b770c3810750bb22f7e2d36eb2a1c1058f3aa068b1182400c4ac403c8bd1531c9f39f4505a1acc8d78acf874dfba39054d439b31d02756033efa1bba8bd5eb8c65bf3132ce04e668e37ef0d02d6eb101a8f09af6671055126595ca3af0bf56db3033901dc031f48a70dd4b1b3f84a807c1b2263a3d00cfb4dad8e26b9108ae43bb5d6948a9e3b63debaaf842d52243033714901c7d4906dc263214732bbeeed57ff09d39112f401cbe167776c2f62c0134ba413e4f5a78c91f9c1362e6bc3831c978eb2d56307a5183ebe1e977db20077c29ab55ae06fcecfa12cff4925a22f55dd0cb662b03787186dcf407d0cab0020bf3b795d1ced32341f85f689e6b2f0723ef3f49d15926f7ffae348516cedc0530ff336fa88dce2c188cb36a92b0d4a9d8b345fc3b5dd8c1ac237e64f20e8d06dbf1a2f121ff3eed873d3df0c955f05ca528811cde4e536e64e0e65f232d1a079400c566f39456f2d7ed8e5745a49ed06c93d4368eb56362955706cf19ea0406402e80773813cdd0f0c8771e01bd18e046c101b683931b3fa308198865e7b1053c2fc7f702c383584fa4731a128ca0c132db6a7856c538788fb9df33a43cf3018916a9bd6bc339b63f6779f72675859b27d6a5730779e00fefb549a70ec30c0752eaa68b09f2c986db80bca76077d714852f1badc8dea6a3bca1bd77e3edc8016a4ff5a1f6df7f8f035dbdcf12faa2cd2bf31b0fff6d6af0a54a7e580317a8010f2baf9f0c3aa470e1f95eefd901cb9297c1f4fc4a5dde9a9d8b5e73d3d09c0454a5c31b05a6f72e836a3638a3e913d9b36fe5bdd7dcd77be40f3f283d465b008ae09082dc0e09fe995ae87e0a796d258e33bd2de683aeaf4f8364ac20e6c60390d96ac800168909c331f8f481df499d530d8aaa1ee9716b8a931d865f3157069ce4715d10a569ddf441a2f60f9c2e586ae3282a837d4dd767d7bc66970e1002492651ccf17c2c2e4e61c7110a07eb504a61403b5e9119f1468805121a694c048471a4f60f8d3db4b1e0a91259a7c3c63ce3637a01eec2c0d6302505a4419c0347def9811fbb49060c6f3dfa775e3957cd4dc83b9af10f7bcf98fc34a1ec94055d93b1371353f133f01ab3f7ad471305e469d59785a5fc1474d2781be04d65065d114b564d804e5a01f280f3da8458d8c89a837d678c07c80bf536128160a1042f32ceadb67d08a2e0f3beb77e4b5d122994db3ee5ddf21c39e96785eaca8504d871a28f56b37dfebfe82a37eef15b190d2ef494e4c403b9c0b594b0b8020602286ae794727927d85809ed2da553a56891a9c3cc1008c154bbd30ea243471007e6b2e42ec981b5b73e1e9ae91ea5e10c756a0dfc86c3afcfbe33426b4ec1e704f460e75831f9ef37374f3bddc46c9f438041b80f12c35e0841235cf32afbad061ee5ac67ed3a546f3f1f5839782625ebece69426d6c56c34d7176d44f0829004fecedf9470ed0f9fdbfe9c15cc84daaa7080a94b0564e42d3b2bdeae12186507102e757e2501627621005fbd886e992257f08a62f4a2e92dc3f546bf3ae51904dc56ed1cffe71073ccf3f2205c04bf7b81b371aef2859be100e55d0ae77424054112382b533997efce50cd3b50de29e23a46dbd4cafce9dba138bd66ea80120233dc0eb97a27a272b3e702b5d0b660334f5f40913d6b2350d5c1fd6f663c2201533924824eb0feba546d3faba01492fa941304e0dc5e1f94b039a43bd3f76900c7abd528ee9d94f654e7e9da85111efb250d0be8f933e5c1f38500469f2ad701b2f17249a7670c8ff121fda886db71e353689e2c782f23c2d1abf8fb5e08a1040256033f938590262ba0d751107b8df453e095c551bc06cdac1e7948c9cdba061483d061b77488b154684ea61e3244e847508e5947f3a1b9f8ba5c2aa23c75033009a38ff498017ccd778ea7e34dc4266d43940a9c2e508cbfee1481d42bb305d7bca3bdbff51d3fba87a5df47707b9f2a3ff4a3fbb29afd713cb1f23cf7fd0798cf77e5a25c41e0a6031396de29ae841bb8f87bc660daa6c69bd90f64874d0706454c5be9fe792443aa0bd9ded950cd0ffbe49c9f1b82e0dfb1940e13e9e7014a0bc19c1d8c8616f259d574abbb2d5e38d55208d476a68a839afe756d9c850486ede9a03b6654f96b00797bf430b3b36e31f7946b1c72d7052b35d445245202a6b1035d6dc3a5980e048073844eaaddff9c78d889f0e903ff3899155e8bea0378a889ac4aba18ee1b2f48340a1fab908bc9801958afb30f6062a3c8e2fb2905f38e7e112948862190152b98d808765e8768ced687a8913feb79e98aec147001d96a38cf77aacc6c4da791340407812b4c431220005754212cf5cc006ae1a905ecbdbec25d81c9fca0d6d8ffefa00937408d868c2ab09afe351af320dad2de01d96a38cf77aacc6c4da791340407812b4c431220005754212cf5cc006ae1a902e5d52bbe194bcfbd44dffbf5ef3fce7496aa00ddad77cfa6e0b22e624b059d06d635c30f27e5f78a6ad04008452bd4f6ded487610722616be536fb8b389c200280f9ade544c58f1dba839969b909b5ec7b017e663fcd03bd101f7d33354e8205ddfd14db4516e79007778861c82eed33f65fc3c9eb4e8a42ec3b8a352116d3022c2edb3ef140336a9a076e2666a5bc377b579de2d67ef1f27e5840782d24c40050a5642e1a4347380cab823c7062af390af6e63ef6ee73fa2ee8c097c162c6048062f7ff4d224109104c390e91c87b0c4e8fd1a9a77a7307b51008b590823e0248a6ed3816369bf19ef0c952026f6912b18de674f3848a86b8dab0c02fc73901a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae0108b044a9b2f0ef93717758509b9f2b2e80bc20f5e64439ee1d8bb865bb74c0048e98d89f301400beefcd1010d546edddbc1cba9b7b757eebff255bbf1bbdc1009a8e6e2ac47927f0fa85b9a2c948caf8b18804f758bdb015258b00797d58c901d8f523b60430d731a76640d08924b117e9aba92dcee01b607129ec897a8004033adf89a8c532942196a10946e6d250365b8265d36bcec79f7264f62244c2d301b3d5d32b6fe7ccb9300b3c1adcdc1a792f5eadd9366cfee448d9d6717df16004b0ed66087f5abde13ea2b4b157674cf39818e35a1b814f5eadbd164cf5849f014578675a4be03e4ac975bfea2668594a195df3e66e06c077673090f41684820386b76681b8c4f812f530e8fbea18c1790ab9cc062dbaa016bd8c0b40e114b9054422eda3878847971edb70f3431bfc6ef2365a3fd1d9b5dc82099615447f3c0080b1a9da499de54cf06d60b28f66866391510f670d1d734c17dec69c64ddef02fd2d2d729aac7c10e066f595941a23db39706bc41b43363feeb88336d6aac90568a5048a7081847f1901371ce9cb9a2e7e8908e4d9641730f53692292c8c6503b6ab048e228b7421ea1b5d7b13749bfe1223571adafae07c024b88cf9bf3d50111e9c812916b688ce047e18889f54b32cb136c1d2221123500e75d4c66692201d002d5bcebe58a8f52dc2376268e394fc98bb128977676328ce3e035ef7900056b22dd3576fdecaa6f1cb7f25051afdcf8175f689ec61e639ec00f4da4078c0622097480871513859cdc3b5c2f6556e0d9415d65b7513339b913828f35f70502256dbc46ddacb071aba73c930bae64722124fcfd20f72febd9129e6902169002ea3b2f56891ab766567e5a23c44d857a23ada74cdd61ecdaafa0967f1075f1001246e3d3175f352bb13f4681823223985064bb4f0dccbbb5d4cbecb4c43f6803c1e4cf80bc8b4a38dfa75c3925d177e83fb0ac8191c68634be45df6da3757801f399109e0208afbacf3170d1a3d09e4071ca39317f951273d785058552b0c701574bfbfda31445d7cd695964662a4351622844f3c5eedd3e02a2b91981b600065818bc775aedce7ec51065cf031b13c89cc3cb5f3308f22401c866a3fc299b05e5b5e197c7a50da77c89c589d0e0d3314f408f53e8657fcb12e6b48b4e2287072eef34516e9a08b13db2c940638da180c6e43aa07e3c3cc2865e8bb0455f3407f7c8ac31d30dd494beef045a72857500a25e58949676aee26f9e415a07474402a59103de3959f891260bf39104cb1dbd63cff52da8c5628e1418aece13758807e8853fbb9d16419fabba0872fc4770e6f5a74078b5b6e6dea829cea374443f000ef736152b1b13524e921da08688bf5501f96782a3de6e4a01d1ce697905e7038693bbd35056a5d27191c41c0cde290938280580a9723ff347d5b682b02f7a02166a45d4cedbe90203f93f01230b2003512a3864a657253074567481f94e510711b0ba12190e15de0ec4d49454987b6a66041eb5b65b844a271069b6b3f5f20711b0ba12190e15de0ec4d49454987b6a66041eb5b65b844a271069b6b3f5f2078a0cf447d9e2a0c38bdcc99c824bc43da28f015a2050b792bf14d60eb7b5c70576bb3f3f27ac0aaa7a8503f1e8f1902eda5c07543460b09dc830290824645d04f5e83a4c9d349abc364f0b57b98b45ad752a6ee1a3e9be22c84a533a23778e074f33aad947e6f12e290d97a96201024dc9151d0a694d8d425d706fce55d5f70065ab548666e01fb90451ceb2e0d4c0018eed1e9d55f405c58a2b42b1b873c203f2ca9627c6d669307ba5e1310e2ba337ed14b901b512de2ece1bd6eaf6f7f10098cb0cd84eb9911fb9b33594777141da4c263adbc5a79a994c1b5bb5a2903b04bf97677aedaa70144025459fd20835efd1f0bd13da1f5cea0a80144e2c8bb107d4319314a5b5c4bb3c6e317cf3c32eb3b7966cfbeb4dccbba94eac5d40a11c0269f829e0665726bbf505a6a8559cd3f5eb25bf9c977f03527980703339b16104f2bd6ff19dd26749e862d43fb849928daf0f194e7a426e30e96265e4c88f5700f0a499b8c656452d7bd8d4c11a2f6b380e70a5746b11b1e8ad58037acd9b0e02b821ab5487ffb349d9fef93fd342467dbf99c85625f2ed7173b973b063c7b206e416e73eb247a47fbd682a605b0cd4f2ff9a62d32ea54921bd65353a8e19a8060a46f5ddfb46dd2472dd45942027aec477cae82a976d09450e4dda6d4a154705fa9b034cb44c00441d78e728542d93b689ee2cd91f0b93e6d987d4d18d56b701fa597b87a42688f75002d0b70353fad7162e7eb9d6683768b4b6c62b1eaef1072d9bbe50f431c281b0fded9f337c4febae1a7354b17489c3b63683265748da007268f548aac1c638284fe1f1c29b8739335bdf0213154862c635644950547803f566f21f1ec83d4757cf09fd8650a18b2ff3415700332bcf02a0db9f2a4fba04df7bc19ece589c95db3a2b7e2b857af1bea703c1b344ed916ad9f8142289eb04b65f8ad9474177e98e61b7925d38bff716f10c809079fc747b0f8f10c5d9cd04943fac4b74083a30df302f217f66d43b7bf7b9d49af0d2995f53fb467d40680363d2b28b0cf8ca2ac2751b8a1b9db330e1d8f77504605fc8a6138f08ce5d87034e8bc4a2a2469bd119f38e21b3f5bfa415a60f469b5e1839aded41eaac974206cc1552cbec09d4717409aa561681ce3cf2552c96fd562c3cd9ab3e031beebb079dd1682c7aff46dba1821db74592dcc1c72569a52bb0441ac1117f58046bd3076c9982732e631f647e0a6a91eb4674f86b33da4d504fc93df96e49e45ca275075ba83cab7347c1d8c70a911e8c10650db850aeabba499bc9842e9d7be9af94016bb4155a1bcf3724f7ecd968a2447fdf9df7da277f5d66587384b3dc8bdf78070f1bdad6cfc80191d2404d9d0c586e2d526bbfd9ac1b9ab11079b9a7821aba016062ab351712b674bfceff957fd70f308e0ccef5c2340a4d742541cf39f603027c4f2af02dfe2efb148411227280d168bafb53109305c3a93aabd16628dd8b068e162b96a3a4c900534dd37f870d02dac639cd35c70ab96bce382820a56c6805920cf064a62db8c7cfe155148a3203daa2cf36810222e662cb43a1f832dd0c05f5ae3e5af1184b2c9333701b76d476ea5a612f9857ca2b37daee44426db0cb005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae01a9f2b0ae0216bcfabb3da344872fba862420eb530e8357588c096f77e466ae005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897005d693c90aa3523cc2218083b832222c7e5c9f60582e4c88b98b468492fd897020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f02832d0f6dfc0bdcebc4bf9d0585751bc3f1716c7bb22e2e448fd6967c42181f020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b020bc84d952749ac72bfc09ea01b06ac23eea4bab90becb3bf84404024c8b34b066d5cb03db92d03fbbfb6e29bdd2733de49bb9fcd32e2140b8213bb317a3e5e0467d6e50646c1664f443e26418c00c11943a8f6c778fbcccae343ecb02aa3c8016c419f0a0d18f4d9f4c57bb0f50b18733ee12e568f88e96f851e8280a81dce018ff566cc8fc01d79a2dc44498097a9afb7c8f174b6d878f197de287c009fed00ef784a5df3d7bf1552e03c9f95349aacefb37ae4614bcee0f776abb1ccbe9102454e6d292f7077599204e49556d9b7b974bd197e62284a69f5c17e92f1d96706237653110d1250a5bfd623436b0e19f26262c75547ea0f2ffdf2afd17f366e04d30b5976870da7c0ed9d72cddb06bcf1e60fb490aabe0f9921e9b07ed19b2c01eb68eb929a931566720bc64ec37fbafbd7b3e5e7cb57fc3528e8746e7ea5010094b9f1ee0d1e2ca7dad2d2bef85d829ce9e1f85bea5dbc9ebd9baa93436afb02ae16d916da4070b2b1553f4278ad33a36a7ccc166547ef23a3bedb5d4b1c98019f451cdb4d718afb5b2f87e513fd451b5c942758c4b958f9d230f9c18dcf1e015f7469bbf1ca8cf2e8d69098f041582fd1d520dd021900d367fa09c29ffbc7042febe0b20aeee6539ecad38b6fc21427a46b81e76c8da6356caeb5f05812c606e17143addce12acb3b7243701a04d8a8427784b5403d5fea40c93975adf063016c23924e0b8aedcd6619dda21f8a49c987f19d6808b024b8578eeda1e29bc7072b2f384b747247dc0bdf3fc6e177dda02341213eb8f27b888623e3e438f697041af5c2214272a8e656d758d9a8d93d0e92c17959630b38af4d406e5f478df4079b7027fff75be46a3e0814ea345409ec2bcabf5fbc1459cf3e819169aa2731031056277729f6cf92b9ac811f18607020cd380d0ff21bafaac8a9a46ee9749a02f4a6ac7df05a4edf3e050aa1a4431512786bf9edf7fdfdc0527164b8c7c747053a59a598e4febc80be91241836c1b39305b1de4a739fe78b0facd2fc8d857f042daf598044a7752818ecf8c575b903b1cb883441843e0c8b9be021daadcb4400bac8fb853394c6a902eca8399f65e702d9870bd8dcf1a2bc0dd2f44482305d0185ba55f94dd3e77160f600b1beeab4ee7f5707c245b01bc978e11ff0cfb5cb07a9c855bb6ba96708c7c1ed31d8bc024f664f85a7f3ab4067fdef2763651c6e00847bbd097c23f8c5c7e2204d9e31962e691b40195b5792563ad7eba00ca30d05b1171e8bdbb51d10f7bf55aa6443a57db04b6d9de57c04987d0330516057dc039ba3cd52840994791f13976682b9cd5aa5f755ad2ced109593036217ad4c53017477020656503a51b5f59300d7e99afb585419231e941406ac136bd01f1821046f52fcf0690c84d10958d22d58c894d5f8f8947fd15336e729af02eac54a9901b1bbe533ec8e1b848b3a6bd77618d67cf1226ac7faa9e77fb0060b37e26e3a0444a9a206a210ea0b591864fb60ff42bedaccaaeef4c71641b4df5a186ff540061bd47926c8afb6356d8863a536fffe90c5cc56d530329db510df7289a4916307fa01761a5e4c5525b3e46db99f54ba4a029989015348a3d146a504241c011407ece11385590c1432e7bed8716fcdcc533f911536001baea28d4b0ebd06aa9700bb3bf755c9d5ef69d5ab00557a812a675a0ee5bc9d0bf3609d5237d1a84c0600b903eb3e8312d77e087fdba8791fab83fa2bf8c5b8d02a9fe4d1959838fb5c02b74efc66ab2e403eb5d448ce754fe1cbc334ccdefbc22f1a7c9295e14c625507ebaa83ad5e0a49e149ee90c9c90b2077ec1bbcc4687c5b0fbb8f50b6bdbb5206577eab80a64b003e33b73b657cadb09eaaf5e94235509a2058f850133dd9f9046de25da6ed931c53b421e31f41b76f63bfd32ade1555775fbd881fba2314970487860ffe5df946c9fb9c77979c20dd6272f25b5174bb7e9eaf9a84a1796555024d86fe4189603919ca5543a140fb0815215985ee1570eec800447cac12513a05f64b83cb9115da6fc4dab0a72c852f05e1d5ba2c48bfd7a64979eb6b2fc68300c840a6396db24a66e1ef60aa2b782cc87431ef4d0c4bbf266a240decd2e5ae06fabc000c6c114f39fc35404b1499411982742aefbd9c626717423a01f476a3024e79aa6671c3f8a9b6aaf283258da19ba2f0d05be5b32c06953baf97d497ee061e0d32c83ad59047a39a70d70aaa8a45724275809b9ad36545756efd867827049715a3c5ec31422ec02b1ef36f8063d136f0b82a95a0f598e53f19e4eb465e02fdd22d24f7d456a977f0c62da376f69d31f9e62d6d079c6594f19fbfabeea70307de993079abcf54f6b8d9bd11620da11425a021e0afea968dc8b6ffc3c436066f3b8126496af9945890381a8c6a150154e010de8a2eb8ffcdf97430612cb9039322b35d2cd742f765e5432f76eeac090df8a7e9528c3f3559469f27c91ad304cb76bafda2110da64cd247bae883efbf49d09d5e81fd4524061dc58a2fcdd104a5776892893b9d75e5b7888968f1170272171a0841017422f5f7980ca060540037c62b8adbd3a0eca8c73da2487a205c1b61cc881f02aa37aa153fba8ff2a607d0680d05de136838756f66c60d3d74af3d31257574fbd5a96d45f8d2fd73eb0539c174f205d559fa23f588b9aac8113c417cfecb072613c6d5400af5269bbd054088c93914617d446a2968a7c229ceddb12c475f273864a23000119048e8220452a35ccd6bde9291000e86c09c904f93da2613888036dc7866222defc7aaf60740e397d6ab602b89bc8f73743febf09fd0d17982c3d39ae970cc12ef956d69053ce6d2d1ec66b6726aa8c40ca72719bb4aceef31981f38e572f6e7570ef91a0072ef7361e733766a364aa143fc8d300be9a1dbe060a653db65ad558956d96d008a973959494776dc38b3ff7259370b1d82e174a996e33e667ffff9d647b978027c5f55f319d3f9bda929346f24af98a4437d89e07ae83270bffc734e341b3806301dc31f5ea218019ca9cc82cd680c1b8155f0b97494cf61a8cf98f4864cbb0076132f4b26768457f15b4b72bcac5cb5fc35f6969bcb8f3ccdff90ac3f3d0a022b823f09255df70dea7e3ee57811b5cf8abbfba0d363151ee136a7534270f605d239e2d25ade54cd08b8bc6235404e7e951e2eba99c822b5233389394145db0318b6eee1f3eea71adc62ad33eb948f20abbf54ca7bc6e6aca2f99db2e2bf1b069d77f4de06ec16b18de7710e2609874d492c3b7d132448d8d86526ea7b24710022331f5bebe0924a6c597cb85f3ffe64bd9a280e134201124a1ce4ba0abac103931bb7d40414314bd1312c42544a27280e887c07794661155027d88c28f3ea0635d886de37962aeafcccc46950579694b18bacddaeb29e0ae94b57bdd2d751007c0ea75921a1d5161224a94b0cde22c65bb7588fea63cfabd9f9cb523916b3047b68d625bdca79d8ae0d714dbfcbdbff7ebc5fa69ff2824ef332e1ee20924b012cd173528795abb597fa446a2ff694ef3d8276512987a0ddf2a99321467978000000000000000000000000000000000000000000000000000000004791c135054d4ba5ff16986cf17237a576f216345e417351d19716d1d9a47bcdd37e28c702e66775d9a36e29aef4b60a8dca865e48ab380438c482822b1bca0297437c110047038abe2ea4bee34a3ba83602f9776d60a0e4134dc2bcb2cf3c4e3ebd179704a2ec173f539c79276dab8868106304d87a62d7da3f547022733eb44f4452190612f5aa8a0a7009dc1cad6f1d45b1f390eb2055f75552921497b431bd9b8f000258304113f6779173c3f7eb191dcc0deb57cdfd43f5332840bcf8c4d2519edc015fc405326ed40e844d62ce666fd0b16502514f8025c7e1ecdbc98e1930be6d00f4da547af6889aee07adab769bc9eb344f007bbb124bdad522bee9c8e2b9c501268d68f475736068cf30b0be6904dffcf78ca615d21499b525eef810f0ae4b020ba594fd96bd1d693d202be22bc18f8f3aff6954d5b661a177a96440b3ea4d0319bebed4393b1896f7b8ed06c40365bbda305bf4cd66334d0a13f258ec6677037b3e2700ea3d113b9daaf220fc6275dc8e5b97d769b9848b565ef094cc6e8506fd944252f82651fcdd545a3f1af1ec8a2b634adc99759112a8f18f01e94c3405b8e091c8945e747b395a9d600c093e967ffd8b951bf095fd6daeaac4898593007a6380c0a4c0ac504413f0d7c46d33076dc89e9d8cf35226904b523ea23e650527b501c461dfc722436e18d4feb21e3f6f1581fad760429612ad294db9d88c00000000000000000000000095bb8275fe5b8a9bca662f410ae46a8a6869ae810000000000000000000000004584706fbd8f2e44f3d1b29819288a553bd7c9a500000000000000000000000070af2ac23b55621e9ae830b6b2e2554b4cf1c5a0000000000000000000000000fa41816966169b22381738bee6a28e433c59b04c0000000000000000000000002421bc5350e9fcca34f5d6a5fa2af275319ee3ca00000000000000000000000041d39466c1518c4595d555ffa02eefb0b81c3db3000000000000000000000000e1312b4e7e4305c380debc34725cd3175e2b9562000000000000000000000000a1942f0f245700a76afdb1cbd800c424f4d8d52e000000000000000000000000c4b2ced9898d4ec0ef8e0bec636757d4600c2b84000000000000000000000000c4257f30069e8eab16b8ccf405bb2d7da5039b460000000000000000000000006bbbb0cad04076eb51aaaf42ef130ecd47447c48000000000000000000000000b6d6ae759d8a85fd227a8b6e54422fd1ce2c127c000000000000000000000000ff64b00e075067f8a29605ad5fe2005856de4f7b000000000000000000000000623d807a76c99ec524b182ef696872c22d0e9e1e000000000000000000000000b688e19f91c1390887b232fd8400542b33bcc2670000000000000000000000004383ccbbc75b80e6bc1d6738c2eaf42738a489e90000000000000000000000003119d47b2836309af194b8c1bea8feb0b5333fc8000000000000000000000000cb52cf039508473ce66ef226ece0c69f675e52a00000000000000000000000004eba73700b30f78eebaffb33b8a6e0cdf5b4defd0000000000000000000000002caba1929688d107ca51be96d8ddee5f08b37b82000000000000000000000000e56fe09b1f2f723a0d12835d0c35b040777580f100000000000000000000000069c8c069df7a3fb13c43c82d053c41f707f3f857000000000000000000000000a655dd7608d89e1806017c7ac7f5df0399eb8eba000000000000000000000000fd3f7483f081882b190ba183f990e4915e04660100000000000000000000000049f1c962ad2b0386fced8f02201dc95fce786be0000000000000000000000000ad39a818b65441e2a8650fb02615e6084b2ca51806b69971eb68f9d8041881f5c5ab3037beec8b3f85ba5df471f816eb6314bba905584defe09beb22bf89ed5c2881404da183797977fca417b042342e10ac855a07cbabd560ade2dcda6caeb2129cc572013ae267d17de0771a7244560734f084052b33a8138bb6ab0f4d5aa6f48c0261b3e1381083d08e64f9a4190883125e450276c251a887d0de8c3553cce5ceb659253ca1b8c21e568c237d70e009f18f0206c7d7dd6b62aa4674b2233968be588ab919a49dd3d3b8e412fe9388aa28946603388a91ba1bfa49f6434a1aa1fb509bc717ffa14bd0e22500a6d9b92cee879a07d1ca88b8cf517a7bbb623ba61fefcbbebd7bd9648fbafc331d7d4e8cd4776b0009e2c17ef91194bdfec19cb030546915ec5e86c67a5c13178feb67fc9c761a0240b19b69fbab14049acbe6472fa23304ce194392d6018b3595482737faad8a03adf7e6df7772b73e2863cf869810ce58bb19474246b6c6d87f6e23909cbc2d001443b5c3e6565475e01d0240afdfa37651b0388caeb73d434cf8deab88f78e0347c33bf1572210ae7fda2c0479889852e4cbe092d3d5086b945b2d6303be5a07798ff102e4431087ae9f6cd9bbd4030b9047d7154325a3b7e7b08469cd7e8c04ef95c6be72881e52c89a73003bdb621dd193dce3d70f077bdbb7383d04e3c9026edf171ca0fd5aa621d921a6f969492d71de464de90d7b262ade4d29bc71a50751197da677691820f00306553b8014a1c21d67a2e487ed0fdf37d788d7968e04e1a2461267e2cb216ea9dbc5d66223f45c5011978875ee3a543f96f6f39de2020ca145bb64f2f06d11a9bace9367f95a9ab3eefadbeea5df80e95274a5b547021a5386b291ddac813b9bdec2a9eae0dc48cb578dd391ebcc69c7f3586acc2301d67773f24878a58fcec6bb5715a8f1a1da76acb6a498641c02272f5330cd18049251098f4e475a8c677dbed39321a18a2ddc771ddefd73dda725c079681926000000000000000000000000a1d2d57d84dbc3fde1b95c71b02657f9769e8df600000000000000000000000074711f2b7ac28c085854e0ec5baff0d018e776a300000000000000000000000050bdaa8e2840f198eeb99bd1f3264bcb21f99551000000000000000000000000c316dcec981a25556d168d95324269929fe95e6f0000000000000000000000003e225c8d21b6635ea5d3bfb9c595f70c6573f438000000000000000000000000ef0a35a7c3cafcaa7b412a4140739634aae9c8b000000000000000000000000066349c6711c7295a46cc25d2a1b01a9f6cc5cb95000000000000000000000000371165d5174790287923ffde856790610ac3ad490000000000000000000000003acdf3b5197870d7ecfbbfe64f440a03b3807f6900000000000000000000000053734411b9f3ad4e47414b60d987aaa47705b1a5000000000000000000000000b15b9a526c015b627c56d4933b53c37b85eb709b000000000000000000000000d924747dfaaa07edb0478ffa772a1700d9471d1c000000000000000000000000fbd6348b7ebc57ce0c612552b3cbcc3fddf3948e000000000000000000000000817b54135128a756635025ab5e8709f57d7681950000000000000000000000005721eda1de3b6064356dd2547da080c888370bd50000000000000000000000001f85fc8583def62d844d7517fe92de49196947d10000000000000000000000002bc6dd4abad3e395a58922ec85841ba749944fae000000000000000000000000072ac9446655e020a5b38478f54c1747f8de4c25000000000000000000000000689869de7377361952dec98f912e158e2b7163c200000000000000000000000030621a23fc27ecb75f48fc69671f23773f9a89cc00000000000000000000000026a840a14e11cab8dbbb988e79a16e58cfbacc5d000000000000000000000000393d0457ba6c1a5deb38acdce981e1c3f4a3810700000000000000000000000036d5beef71f768a6b64a1877f8c985f733e06f470000000000000000000000008510a5b2f015248b0c0d41b0237b4192c8b2ddc30000000000000000000000001ed26a8f472ea50d17d9e65da690828cc7fa68c00000000000000000000000004d4464e356cbc8c1034c866f158235d139b944fb008d15107398ed24538ee072d407574d39b33e7a680692254493165b20a804040650774008b975843f10c0af0e2d6b83eaafd6e7cb95a1915cd3a4a490e038be00bc53951418ac19cb1abaaa9fa1c2ff3b19c967e246422c6193ffd47b07600601eb61ca1701b760ad000fcb53a7bf0c41fbd4d48dad992d7dd210286ab4f444038a5cebdafe69d9123cdf0dd4b2acef39f9f936ad3ac6c30f098fba1a36e72501225454c850bdcc74a639bc319fdad99a88b1691c8062fb57ee9e871eaa375600f6141c3f9cb78df555d220a4be6928c895911c3162a340ad22b9473e637c28063a41929463cfab396d8b1183fb8f7cc3a25974d07fe70eaeb96da33cd39e46046f3ace02b2e1098efb25b794dd830a0b9222e847bc8168dc3ddc2236b4a04f078385b8968f521434efd8b4c5b6c6b97fb97706903421e87e4a3f3ac3e358e80208d4788e40f3f7d04d01d2eb268790b9fc04a8b6919b44304cdf48df799262078b29ac1a4e46f5afc5c698571641c52a5a92cd6ababb7fb2c3d1371c19a77d05069ece34c6ad0247fc7554eba695d785ae0e26e459c6f668c24a634333955304550850957ec189db221c612e4e98d312589b0456d3f3546e351ca0f9c5ccee00d6545c421c93a6cef5565c21226816fdab2f5a7e34afebac20253655fde514030b4bd1f318a52f91157aee7247d74b1a34b4c87534a51ddae04c3a178fe6c300f07d1907bfcaa0d7d7231d4bb28ef7e541d3f4418c2eb9d7b45dd492d3ffec00e5fae013ff108d71a7452b52c384c3a2f458cb1350d9d758f32782cd4535dc000000000000000000000000da36b26a7cf5024879f11ae2ea058978649f184c00000000000000000000000066631aea1e1951651ca8fb32e620f912382206f8000000000000000000000000b1cdc223572a170f01b7c380f853d978a80cff60000000000000000000000000c0ce57b6dd0ee63e9b7b54c9f07a8b6a5e2d6cc600000000000000000000000068497b0ebf8866f28560bbfad229a115f9fbafbc0000000000000000000000001b423cdf21936a7ad756fa25bd5636f74df54f14000000000000000000000000cf2055d71d7d00b3a295d919b7b9329c3b515139000000000000000000000000b27a1d7146d1a02ed2935a86484587caa335894d0000000000000000000000002def1efe7a8541055423a088ee9055a3c756d29c0000000000000000000000007741250a6d8aa9d7fa10ab697c066156a00dca60000000000000000000000000b83a3cc08ed341743b9593e88a58dd5de3f66f980000000000000000000000008d30acf69a970fe5b046b90cc07e18085f14485d000000000000000000000000e3275cbcb00ba6f302ca28457e9cf5c7928b21c90000000000000000000000004ec72c75f7485734f10a08733526568cf1ac26d80000000000000000000000006cb3a9b8f9b59e240244182380c3db3164ee7138000000000000000000000000fc533907c0d6bc1277e8fc0e8da7dedc98b4f002000000000000000000000000a57499cd17159f992b1679f9cbb8dcc83a843f31000000000000000000000000dac21b9f6850db4ce72410fa43628d2d2d0f87d60000000000000000000000001ea4c22b9302bc92f1fba9157992ae7ddbfd20b40000000000000000000000007f86dbe8828ae4671ec5fa8fc9099e08fd27c2430000000000000000000000009c2da7ea113861d992e853ae0e2e8b50ebeba1200000000000000000000000004e7638fac36b53816c66b05033900ee9944a650c0000000000000000000000007fa22ee326c250f44b70757580bd345a2a93a6750000000000000000000000007174cbca5841cd189395c19965a746ea0546bd4d000000000000000000000000f1cef85802268a9a648ae677a59fde807332622c000000000000000000000000ca692f7b98591666b129d7d87a7ccd9a06c0d5ae02e7c8b76569f69a2da66fbbc4d5de3e4e565387a0dd203f52b6f07efb583d500748a664487d58f4f24fc0cba0a7fc8786e96ea626c9c0cf5bd615799d155a7a071a542ae9c5c86289d7da82ee904902453b28685ef92808ebc2e90e53c1b98b03770c17e2e1fbf95d010d5bc64cc102e431fc826df4cf83806dc93bd9db5a8c052f67c4e6c4fa27137ba9e81c95d136d24d1e1117b31bf3442aca69969ef4c907dfb32d481c476a94f582374ace16f8e5d3f58281962b2bad4c697be45d67570743b0c41c55758f3013924d65061882efa8b05ca69cbf3a4b5129214affbd5806c0e726ebd2f934f7e3d7f10eb20b054671215eb56cc341f89c5cb70d9bf94906d6c64fd68c414178fcb2406fb6e828debeff448125cff10f74107286fd9e02027194e579d225815fd76171fb78778b1d585237f0a46fbe071dc736bb59a1b30103b8bf58b270da268b1ac1b699e4188a9125de8f3484c78a4ddb01a74c880705cde8a1aa2f1b047fac1a0d17840c59f1f714ac23e8ec744d3afcb39fe49dce024435c1369ae9b2a34cedb7b466a015d2216ebe7d515eb1936dd82f2b22f78f05346e93611795a255feff8ce12a230495a52ca30306824eed6d006d075a6d2905eb22e405ad7ffec7522a92078b4bcb7a95a39c4c5b8a1be84422c51903c9b00289b930072a97e32e89c5edcdabf95e6cd97141b207999ee458697808c4858e03565356ba1401f2d9ac9588bf0bf4846f7b32ccb416150d684b54f92207b1b903ef3cebed9dd7cb1d857ab06fad9cf1ff9122a9741951e475cff7c0cbb0346b00ff2a42a305758683345fc24a46df20ddac89c61fe041f98585f87f65bd531505d4d0318289919a56a04702aa1ea32e8a800880091f9b5ec87507710c746056039f766ea34551286cab4c72fba2e2a6c5933060eb3b5d12d96253b2f3e2036b0033e7940ce6cb9e3d101a9797dd1b05d5779422f154e65bc38f36e6397ff1c70451e4ea6fa3a7bf67cc33b8f5b38026cbdbb925235c284fde849c9f76733adc07bcf8d1974426f473d4243f52b08be715850850248ec7f7857c873c64f2f83401a1219fc026c4a4c0d0e68b28bcf94588cce4b12bbe76b9a61269ae1940f6b90659101d4e34794327f423b838635f1210b2dd2ef2303321cdf63ad294c9519f01b19447e85f0e2379c9458284ce431fa83253339b8d7461b71b01221f1d931801f91c047eaada529a6c9cb2710820531cf2111736ded673f1d8b76220011223000000000000000000000000ac4672bc4ccb0982c8f01251660911778e54a7f1000000000000000000000000b634e6e41d847041a448514df9bb1f55317125e300000000000000000000000067c11cf21bd56e0d6fe7646d6dc6f10e58c5a28a00000000000000000000000012bf22a2324521bdbca958c9dbdd26091e3d9941000000000000000000000000e9ad4cd08adcfa781ac3877e730e394b1c1fcf3400000000000000000000000025f64d61b34bb8a1241a9a9aaeb46dd4012d845700000000000000000000000051afa1f04c1810622cb155afc55e0a94111c2c1e000000000000000000000000edc1e9232a6a138eb9b91d2f1f48debe1eff179700000000000000000000000047642d27d37573ed48ccc4c8932b022f09468f8b00000000000000000000000074ab7bfbc24e52ec7a541f1815938c10293bd8df000000000000000000000000e8fb7119a091c68e9d8fe82614a97edfde1126ef000000000000000000000000d673c720d8f76f940076ab8e228771a9afb413d3000000000000000000000000ae23edcaa87657952519b71c791f89f48a47e2bb0000000000000000000000007c8f5697376b9dab5aa8917d48e6d7169c9ecbef00000000000000000000000099659eacb3c7142a409d5ad2f7cabe0a28dab085000000000000000000000000654b827cbed6306a56814fa6941ab1a04bf425b200000000000000000000000031e14f1f0844f5fd5ad4ad7a8d740898e47072f00000000000000000000000006bd1e1829336e5454250af567af0e133415210d4000000000000000000000000b80d08f3927b6074258cc5bcfe6e47b63c8a6cb20000000000000000000000004feae4d0816988f47ee54f2d2053539f170d664a07fef81550085bc4135b02e3bfad4ed42f687d00e46c5693c09aee630ecaec69006b6f6ca59072c21ac4c4b167986f9d371ee38f9d5b07f40f2b82ce79b3346a05d2c05b9dadbaaa2bf3242b45fb30bd0270ac55bc2d6730af432cc4789c8aa5055b7705d08a2f0ec39724d15d8913b29061c3a4e7663ba60ca366bdd80ef9110374c4c194e4cd129b36baae50ab00b758f469753c7a5cb85ef6783ee8e18bde06ba1a34f77b2c8aa1bac3cd98a80363cb0f910f430ee8885da83c819d1bbb23057860c69a39485546365d92aee79a8f49a03a60ec7b5cefcd81280f4c231ac4041ddd36cb6e60e0a0009e9be291b2ed544ca7ab9232fd6768c844c0433d482005ac8adb0bcccad4afda283e2a9d4d9a935a6e7cf48114b2990064cad553175c0671b395043a71d3d5cae84712af6af3d22a961ad28c30247a7da61f3bf2cef807353af04177478c236fb6b49a00668c16c8c099a204ce45a85e55e6b2a653f401a6c8c65674bc7721f0cf20a8c6af191ec9f4b6b41b0b135dc83d545d72e3b6073cb00cc3829cdd173655864752da187cdf0139e685f64ef996304e92087b29031c41dd95a027b74563249b80c211d6d96c4488137fbb8b5ba2a555d62904e000df05c43faac25ced4539037dfac38c32fbdba5fed1b532c53859f0a34e992a0734e84174ed2c7009e02d94f07db669331784df88e4cd3903b787199f0a625804913e846446ffd19513f180fadb2cd8e1835899abb3aee02e6251694c0c5e2301a089ea3d572b7557832e09c728c4cf31c6a560f3af8bec25c95319177e7e0706e3ee7be1c674919c0f17c311647cbf168e209d4495e533d255615139ac0f7b021a16842b850ac051566d3b87bce093417232727d613d2a5ca84cf0282bbad206bdca24db17e41bb28ebdb05dcfef14f5ab21b9562ab1b3139082e47906259c01c2de6cd43f040aa71eda0dbdc81d408ebc349e8802a05a4c9b04e94e7ae034015a5bc1dc17cec6c04db22a33e3d751d489c1e183ae5b662946b52e10e7ab750572912fd541444831e10fdc95f0b9fdd07fbf54b96a2b6d89b5c8e8d230654f06adf1cfb0c538266030872b07f1ecf1c5985eb137cdaeda59f0a993716bec1f03ddd433c3fcb4c2e0c2b35b55f7c9bb3555df0448f6798765014766748aac0f041241a9fee9253e6001af5e7636ffc72bb03e12e9308b9fdccfd43009ba38ee04ee412db1de4ceb0497a8e9be0cbcfa139191edd0b8aa65a9afcc1f8b83ec82000000000000000000000000fe9c22349e57c30ec37d70362c2f3418ad6e6944000000000000000000000000cc791cfbdabd21bec3c71fc2cdac5f305636bd030000000000000000000000006c7a2ff668e908568723df191e59bc983d1a6b920000000000000000000000003f638e3967db5b5b97809e48a3b28805d99c4159000000000000000000000000f4a96570089518605b440bd5fec02b85ac3af550000000000000000000000000e07f4b740afcd4ded0def92d91e52e80ecf6357900000000000000000000000001cfb290c2b4b211ef2552c0fc59cfbb7093739b0000000000000000000000009c7c1bcc8d7cd866c990b33e6b7af9c5abff8020000000000000000000000000291030cb456dc798b4565a15755ed90242011f82000000000000000000000000af1dd288b9913fb7c968326c3c90ef5ae191faa70000000000000000000000003e531dde76dab3bc6c6f6dedc368a4c4d7663d6a0000000000000000000000001c0ee7b478c813b02654033a4712ea7f3d1f8ba70000000000000000000000005712d06b56a3829d48034fd59152af147b6b9aa5000000000000000000000000906b8d793c034265f3da070e8dc7404b610a3803061acbe160af01638fd3027f7fc18503b72b69bbee4d6a61c7efb09fa0663f480530a9faadcc6770777951f95a7acab67322c40cb63336d32c15333ef048e37907fd80328e78e14fd7767bcf14d79b33ae5975a011ddb14867af5312334631d5020d0e7d51a149a19492ea5474fcb01cb6c136842bd09e4c2e151c1645fd172e04936f56cfbcc45dfde590c1a84c6ff43c73231eeb529e5f41814d9a41c020d90650bf04996e7cd08db741d5501538aa8b86e3262b43b270bbbfa5111a8cf31c011012c269c4455a49edc959ea6718442994125e7a141ad9055aa1aef431bd6805ac6606ef4acfa2509be7cf6f5d6033e29012c0c050a9a58a688c5ac647d58e02529cc60aa63ca033a556e4bbbd10584927313565321b2a4748e9221fa4afc0012972c5551bbb27bc1a801e355bf800833c63a22d4a328c2cd2b20d3f0b7b030424e9d8ceeeb0651f6ff6456df2586f80c8cfacd9090d3b2922f9486bf12c66053eb0b4cf72c51e228df0b1f3cb756a3ec642e973dd496a436a7bbe75ea84250528daf988989f897b5d2d807a9ca3f702c6dd26201ad869a24e31be110e0c5504182aa10d80f185948b827552171496f4233afb1cb2dad3704455f516d3099400601eed7e4c5c8097a814e5db76ad23f2c63d6f7292b469fd36fb3ba9cf3a6b02bc496e2c749e75c678190cb249d7c3d4fa772c12b738a666bcaecb9ae3eede02d9d658924ff7de095913eac321e4cd4e65e4196cb107d6053f98fff05116a9026ea74636f78d0d54ac7a7a0daa78ffa43a645cdfac2fc69153157909df5eb20330522b011771b0d6e65f912e9e65ca059b29711f4c2df456c188a6696d81f000e9d4e203834636a14f0479aa57cda6ba315f6c15e0237cb578060e0259d5b40521121c9dd9e746c9d37fa3dc66c90c56fd47249956fd084062aabbb892dd15075a5007f0f92123b988ebb7a22e14b3355ea687ed98c7b4bd1d1909109954fa0267895290193db64ed53e7e34fc379f6aedf3a9f8255ed7ea809945d568c115076e8fdf1a787bbe63a96cfefafdf20ee2f75a094fe073921051a033502da9380346d738b224b9beb68b9b63560e4dbe0f91018ce0249909583297ed0da5443002ed677570e79bad3326e93bfc3d809ef09c660bd6c14abd7b756f079f1801200790d349b3069b96ca31274812d5cc0613f2bec86289ba45ab7c6ccba9f35c96055c0d620055d0aa6d2adbe45c37f2a45f25ac60277e26a38dd11c8f3d190c72000000000000000000000000adb626ebed3ff30bf05cb56acc4dc1273d44c9e3000000000000000000000000098b0757bb962adb5810ef96763b42bdc977a8190000000000000000000000007db5aa505fd993e346549a840e57aa133f29d96300000000000000000000000017277e58d4f9f802d0c7fe51d3d2feb855037bbc000000000000000000000000013e41177bdaf69fd2a803fb8af21c07120124e0000000000000000000000000843ca2ec57c3aada9c471595e7bc919df714fbe7000000000000000000000000be210ad4d8c6d2012b09788905d1af52b76155010000000000000000000000004ac838b34aa761825b0f2649f90edf3231db3f8802cc75bcd673b335492ea8a6fe69eea7fd59f43f5aaa872aac7da08fe252e2f505d1b8cfe06fbe98dd9bac4495277b9bc74d18e0dc63225b4ee4d8e056f09aef05dd073d52386c092408f55173be07703d17cee5115854557556537ef449b13d07167efaa0e2f1096f04d050325fda5e4101d1aa4cf90bbf9ec8ffd8f60dd98d04453adae8e2b3ebdd3489d266d4a7e69a3976ef6c07ef8b2666cf15192f597005100dfde48a3a0e25098bf00899734d24b43660cfbd3038762c6089321a9ade0189686937396bc9ec422e681944b96e6ce6a4c5f3e00d99a63d3ae06b6a94e00275aa89e68e8907936896935a1687657b5d825d8bfa5a33d9dca17762495520002e7ddf02a61d4c8e2e378a78794f8eb0b704b6a9bf90cc92aee4c118d56737068df7ab60fa100c4b161d84b07cdb27c4840fe90d774d5ca961308ffd6293ec04e40c69b73264b7e3b7f4d6529d01f5a4bcb693674cfeb27987ea9034db145806b19f305aaf9905e9c58410626e2849cb720f0e2b4839f5c6772a96358bee4e05bcd94662f08eefa22896bfe0e823ce558100baa65390232e5d992b01b16e7f015bb85022f212b00a0416087a96053b666abcab6a1a60bb2bc7a425e2364dd001f963e0a3d3cd29d04d152c2212969a55e5f341d37bc73e5efb390d24b73b3106eb4a607207ddb5d667944faa801bcae8484ae0ffccd8708e57c575ff4b52bb00f1dc827775e89ef6bca789b416119ca7e3200f9e316b7249e97a64eea80efb00d0feefd95cc25357c8975e85669f7e4d9dd8f753547fb49dc273426b3327ba0229c2017bcba66ddc5b9ae324581eaa2b1e9c73bd174d8b70038fa27e151a68056bd97e705ee738803d48f678a3e6ebb4bf497e7623eef9b0c94322c449d4ea0000000000000000000000004538d992a07181f0d631598d6988357101f9a337000000000000000000000000bf4ea552ad48df8a107811adbed52cf090329524000000000000000000000000a81e1f22338be9d019fa9bf0245b2947b8541ccb0000000000000000000000008fd5c066a71427ffb1464c8f30a2d7de1722ca5c0137b993fd72e4552412cf1483660425352702378a996de63066f339ba846c3b05b9d02db29682c4a330155e0cb13bf65b9a5a832a61b41490156fbb145b434a048028624e6fd33d085d300f559b5b092345ce0c0a3c0984b97137afd7d59e9a07bd5b9fb495ed6f163842918cd4f7d9c965ac64fdcd6dd4dc72af389da25fe40591e130e5470d3a8a6fd5f519c4a0e0f94b9a6f0cd9cba0eec366e4d05f3c2a0129662ee7bcbf3f458a213757acc706b40bcaeab05a446b68913013ecb2f2fa01bea28d2cc18b50812e90e68fd3afc26e16aa6d40f321f2be892d6be813f234050ae327b58987a41468b3f5020861f408879b86201714917666f0086cf5a56000081308b1db7c5792e72754627d06360331aa67ff213c8590a249520c58024e06b07556e7856d02450dcfbed2cf4898f6c832324c69a8ce71649525f2ccf97b03576d0ba59aeaf54ef4245f317a58a08759a7a72df87a38347bffe189b964b20297467f2ee828fcba5e90d0d219c2a3032beb256f7f6d040fdc9e5a99f6117a007d6aca6d5e6a92c272188760754ff09c5c0328d71bbda35c8839e440dc5a1405de7ca6b92bdeed4602c812614e09fb80673ab829556c15a1939a13ad09111c", "proof_parameters": { - "channel_hash": "blake256", + "channel_hash": "poseidon3", "commitment_hash": "blake256_masked160_lsb", "field": "PrimeField0", "n_verifier_friendly_commitment_layers": 9, + "pow_hash": "blake256", "stark": { "fri": { "fri_step_list": [ @@ -1336,44 +581,44 @@ "layout": "dynamic", "memory_segments": { "bitwise": { - "begin_addr": 2373, - "stop_ptr": 2383 + "begin_addr": 2417, + "stop_ptr": 2427 }, "ec_op": { - "begin_addr": 2383, - "stop_ptr": 2390 + "begin_addr": 2427, + "stop_ptr": 2434 }, "ecdsa": { - "begin_addr": 2371, - "stop_ptr": 2373 + "begin_addr": 2415, + "stop_ptr": 2417 }, "execution": { - "begin_addr": 437, - "stop_ptr": 1963 + "begin_addr": 438, + "stop_ptr": 2007 }, "keccak": { - "begin_addr": 2390, - "stop_ptr": 2390 + "begin_addr": 2434, + "stop_ptr": 2434 }, "output": { - "begin_addr": 1963, - "stop_ptr": 1971 + "begin_addr": 2007, + "stop_ptr": 2015 }, "pedersen": { - "begin_addr": 1971, - "stop_ptr": 2319 + "begin_addr": 2015, + "stop_ptr": 2363 }, "poseidon": { - "begin_addr": 2390, - "stop_ptr": 2390 + "begin_addr": 2434, + "stop_ptr": 2434 }, "program": { "begin_addr": 1, "stop_ptr": 5 }, "range_check": { - "begin_addr": 2355, - "stop_ptr": 2364 + "begin_addr": 2399, + "stop_ptr": 2409 } }, "n_steps": 4096, @@ -1386,7 +631,7 @@ { "address": 2, "page": 0, - "value": "0x8" + "value": "0x9" }, { "address": 3, @@ -1786,522 +1031,522 @@ { "address": 82, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480680017fff8000" }, { "address": 83, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 84, "page": 0, - "value": "0x0" + "value": "0x480680017fff8000" }, { "address": 85, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 86, "page": 0, - "value": "0x0" + "value": "0x480680017fff8000" }, { "address": 87, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 88, "page": 0, - "value": "0x0" + "value": "0x480a7ffd7fff8000" }, { "address": 89, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 90, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x40780017fff7fff" }, { "address": 91, "page": 0, - "value": "0x1104800180018000" + "value": "0x1" }, { "address": 92, "page": 0, - "value": "0x6" + "value": "0x20680017fff7fff" }, { "address": 93, "page": 0, - "value": "0x482480017fff8000" + "value": "0x4" }, { "address": 94, "page": 0, - "value": "0x6" + "value": "0x10780017fff7fff" }, { "address": 95, "page": 0, - "value": "0x480080037ffe8000" + "value": "0x3a" }, { "address": 96, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480080007ffd8000" }, { "address": 97, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x48307fff7ff98000" }, { "address": 98, "page": 0, - "value": "0x1" + "value": "0x400080007ffc7fff" }, { "address": 99, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x480080017ffb8000" }, { "address": 100, "page": 0, - "value": "0x4" + "value": "0x48307fff7ff88000" }, { "address": 101, "page": 0, - "value": "0x10780017fff7fff" + "value": "0x400080017ffa7fff" }, { "address": 102, "page": 0, - "value": "0x3d" + "value": "0x400080027ffa7ff8" }, { "address": 103, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x480080037ffa8000" }, { "address": 104, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x480080027ff88000" }, { "address": 105, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 106, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x400080067ff77fff" }, { "address": 107, "page": 0, - "value": "0x48327fff7ffa8000" + "value": "0x480080047ff78000" }, { "address": 108, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x480080037ff58000" }, { "address": 109, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x48307fff7ffe8000" }, { "address": 110, "page": 0, - "value": "0x480280037ff88000" + "value": "0x400080077ff47fff" }, { "address": 111, "page": 0, - "value": "0x480280027ffd8000" + "value": "0x480080057ff48000" }, { "address": 112, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080087ff37fff" }, { "address": 113, "page": 0, - "value": "0x400280067ff87fff" + "value": "0x480080097ff38000" }, { "address": 114, "page": 0, - "value": "0x480280047ff88000" + "value": "0x480080047ff18000" }, { "address": 115, "page": 0, - "value": "0x480280037ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 116, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000800c7ff07fff" }, { "address": 117, "page": 0, - "value": "0x400280077ff87fff" + "value": "0x4800800a7ff08000" }, { "address": 118, "page": 0, - "value": "0x480280057ff88000" + "value": "0x480080057fee8000" }, { "address": 119, "page": 0, - "value": "0x400280087ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 120, "page": 0, - "value": "0x480280097ff88000" + "value": "0x4000800d7fed7fff" }, { "address": 121, "page": 0, - "value": "0x480280047ffd8000" + "value": "0x4800800b7fed8000" }, { "address": 122, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000800e7fec7fff" }, { "address": 123, "page": 0, - "value": "0x4002800c7ff87fff" + "value": "0x4800800f7fec8000" }, { "address": 124, "page": 0, - "value": "0x4802800a7ff88000" + "value": "0x480080067fea8000" }, { "address": 125, "page": 0, - "value": "0x480280057ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 126, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080127fe97fff" }, { "address": 127, "page": 0, - "value": "0x4002800d7ff87fff" + "value": "0x480080107fe98000" }, { "address": 128, "page": 0, - "value": "0x4802800b7ff88000" + "value": "0x480080077fe78000" }, { "address": 129, "page": 0, - "value": "0x4002800e7ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 130, "page": 0, - "value": "0x4802800f7ff88000" + "value": "0x400080137fe67fff" }, { "address": 131, "page": 0, - "value": "0x480280067ffd8000" + "value": "0x480080117fe68000" }, { "address": 132, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080147fe57fff" }, { "address": 133, "page": 0, - "value": "0x400280127ff87fff" + "value": "0x480080157fe58000" }, { "address": 134, "page": 0, - "value": "0x480280107ff88000" + "value": "0x480080087fe38000" }, { "address": 135, "page": 0, - "value": "0x480280077ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 136, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080187fe27fff" }, { "address": 137, "page": 0, - "value": "0x400280137ff87fff" + "value": "0x480080167fe28000" }, { "address": 138, "page": 0, - "value": "0x480280117ff88000" + "value": "0x480080097fe08000" }, { "address": 139, "page": 0, - "value": "0x400280147ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 140, "page": 0, - "value": "0x480280157ff88000" + "value": "0x400080197fdf7fff" }, { "address": 141, "page": 0, - "value": "0x480280087ffd8000" + "value": "0x480080177fdf8000" }, { "address": 142, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000801a7fde7fff" }, { "address": 143, "page": 0, - "value": "0x400280187ff87fff" + "value": "0x4800801b7fde8000" }, { "address": 144, "page": 0, - "value": "0x480280167ff88000" + "value": "0x4800801c7fdd8000" }, { "address": 145, "page": 0, - "value": "0x480280097ffd8000" + "value": "0x4800801d7fdc8000" }, { "address": 146, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x482480017fda8000" }, { "address": 147, "page": 0, - "value": "0x400280197ff87fff" + "value": "0xa" }, { "address": 148, "page": 0, - "value": "0x480280177ff88000" + "value": "0x482480017fda8000" }, { "address": 149, "page": 0, - "value": "0x4002801a7ff87fff" + "value": "0x1e" }, { "address": 150, "page": 0, - "value": "0x482680017ff88000" + "value": "0x10780017fff7fff" }, { "address": 151, "page": 0, - "value": "0x1e" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc5" }, { "address": 152, "page": 0, - "value": "0x4802801b7ff88000" + "value": "0x40780017fff7fff" }, { "address": 153, "page": 0, - "value": "0x4802801c7ff88000" + "value": "0x1" }, { "address": 154, "page": 0, - "value": "0x4802801d7ff88000" + "value": "0x20680017fff7fff" }, { "address": 155, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x4" }, { "address": 156, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff7" + "value": "0x10780017fff7fff" }, { "address": 157, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x12" }, { "address": 158, "page": 0, - "value": "0xa" + "value": "0x480080007ffc8000" }, { "address": 159, "page": 0, - "value": "0x1104800180018000" + "value": "0x48307fff7ff88000" }, { "address": 160, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc3" + "value": "0x400080007ffb7fff" }, { "address": 161, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480080017ffa8000" }, { "address": 162, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x48307fff7ff78000" }, { "address": 163, "page": 0, - "value": "0x1" + "value": "0x400080017ff97fff" }, { "address": 164, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x400080027ff97ff7" }, { "address": 165, "page": 0, - "value": "0x4" + "value": "0x480080037ff98000" }, { "address": 166, "page": 0, - "value": "0x10780017fff7fff" + "value": "0x480080047ff88000" }, { "address": 167, "page": 0, - "value": "0x15" + "value": "0x480080057ff78000" }, { "address": 168, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x482480017ff58000" }, { "address": 169, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x2" }, { "address": 170, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x482480017ff58000" }, { "address": 171, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x6" }, { "address": 172, "page": 0, - "value": "0x48327fff7ffa8000" + "value": "0x10780017fff7fff" }, { "address": 173, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffaf" }, { "address": 174, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x482a7ffc7ffd8000" }, { "address": 175, "page": 0, - "value": "0x482680017ff88000" + "value": "0x48307ffb80007fff" }, { "address": 176, "page": 0, - "value": "0x6" + "value": "0x20680017fff7fff" }, { "address": 177, "page": 0, - "value": "0x480280037ff88000" + "value": "0xb" }, { "address": 178, "page": 0, - "value": "0x480280047ff88000" + "value": "0x482480017ff78000" }, { "address": 179, "page": 0, - "value": "0x480280057ff88000" + "value": "0x1" }, { "address": 180, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x400080007ffa7fff" }, { "address": 181, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffff" + "value": "0x400080017ffa7ff7" }, { "address": 182, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x400080027ffa7ff8" }, { "address": 183, "page": 0, - "value": "0x2" + "value": "0x482480017ffa8000" }, { "address": 184, "page": 0, - "value": "0x1104800180018000" + "value": "0x6" }, { "address": 185, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffaa" + "value": "0x480080037ff98000" }, { "address": 186, @@ -2311,997 +1556,997 @@ { "address": 187, "page": 0, - "value": "0x20780017fff7ffc" + "value": "0x400680017fff7fff" }, { "address": 188, "page": 0, - "value": "0x9" + "value": "0x1" }, { "address": 189, "page": 0, - "value": "0x482680017ff98000" + "value": "0x480080007ffa8000" }, { "address": 190, "page": 0, - "value": "0x1" + "value": "0x48307fff7ff68000" }, { "address": 191, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x400080007ff97fff" }, { "address": 192, "page": 0, - "value": "0x400380017ff87ffa" + "value": "0x482480017ff68000" }, { "address": 193, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x1" }, { "address": 194, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x400080017ff87fff" }, { "address": 195, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400080027ff87ff6" }, { "address": 196, "page": 0, - "value": "0x400780017fff7ffc" + "value": "0x482480017ff88000" }, { "address": 197, "page": 0, - "value": "0x1" + "value": "0x6" }, { "address": 198, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x480080037ff78000" }, { "address": 199, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x208b7fff7fff7ffe" }, { "address": 200, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x480280007ffd8000" }, { "address": 201, "page": 0, - "value": "0x482680017ffa8000" + "value": "0x48327fff7ffd8000" }, { "address": 202, "page": 0, - "value": "0x1" + "value": "0x480a7ffc7fff8000" }, { "address": 203, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x480080007ffe8000" }, { "address": 204, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x48007fff7ffd8000" }, { "address": 205, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x480080007ffd7fff" }, { "address": 206, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400080017ffc7ffd" }, { "address": 207, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x482480017ffb8000" }, { "address": 208, "page": 0, - "value": "0x48327fff7ffd8000" + "value": "0x800000000000011000000000000000000000000000000000000000000000000" }, { "address": 209, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x482480017ffb8000" }, { "address": 210, "page": 0, - "value": "0x480080007ffe8000" + "value": "0x3" }, { "address": 211, "page": 0, - "value": "0x48007fff7ffd8000" + "value": "0x480080027ffa8000" }, { "address": 212, "page": 0, - "value": "0x480080007ffd7fff" + "value": "0x40287ffd7ffc7ffd" }, { "address": 213, "page": 0, - "value": "0x400080017ffc7ffd" + "value": "0x20680017fff7ffc" }, { "address": 214, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff8" }, { "address": 215, "page": 0, - "value": "0x800000000000011000000000000000000000000000000000000000000000000" + "value": "0x208b7fff7fff7ffe" }, { "address": 216, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x482680017ffd8000" }, { "address": 217, "page": 0, - "value": "0x3" + "value": "0x800000000000011000000000000000000000000000000000000000000000000" }, { "address": 218, "page": 0, - "value": "0x480080027ffa8000" + "value": "0x20680017fff7fff" }, { "address": 219, "page": 0, - "value": "0x40287ffd7ffc7ffd" + "value": "0xc" }, { "address": 220, "page": 0, - "value": "0x20680017fff7ffc" + "value": "0x480a7ffb7fff8000" }, { "address": 221, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff8" + "value": "0x480280007ffc8000" }, { "address": 222, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x482680017ffc8000" }, { "address": 223, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x1" }, { "address": 224, "page": 0, - "value": "0x800000000000011000000000000000000000000000000000000000000000000" + "value": "0x1104800180018000" }, { "address": 225, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff73" }, { "address": 226, "page": 0, - "value": "0xc" + "value": "0x480a7ffa7fff8000" }, { "address": 227, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x48127ffd7fff8000" }, { "address": 228, "page": 0, - "value": "0x480280007ffc8000" + "value": "0x48127ffd7fff8000" }, { "address": 229, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 230, "page": 0, - "value": "0x1" + "value": "0x480a7ffa7fff8000" }, { "address": 231, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffc7fff8000" }, { "address": 232, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff6c" + "value": "0x1104800180018000" }, { "address": 233, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe1" }, { "address": 234, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x48127ffe7fff8000" }, { "address": 235, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 236, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x48127ffd7fff8000" }, { "address": 237, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 238, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x40780017fff7fff" }, { "address": 239, "page": 0, - "value": "0x1104800180018000" + "value": "0x1a" }, { "address": 240, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe1" + "value": "0x1104800180018000" }, { "address": 241, "page": 0, - "value": "0x48127ffe7fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff18" }, { "address": 242, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x40137ffe7fff8000" }, { "address": 243, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x400380007ff98002" }, { "address": 244, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480680017fff8000" }, { "address": 245, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x0" }, { "address": 246, "page": 0, - "value": "0x18" + "value": "0x4002800180017fff" }, { "address": 247, "page": 0, - "value": "0x1104800180018000" + "value": "0x480280017ff98000" }, { "address": 248, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff11" + "value": "0x480280077ff98000" }, { "address": 249, "page": 0, - "value": "0x40137ffe7fff8000" + "value": "0x480a80017fff8000" }, { "address": 250, "page": 0, - "value": "0x400380007ff98002" + "value": "0x480a7ffd7fff8000" }, { "address": 251, "page": 0, - "value": "0x480680017fff8000" + "value": "0x1104800180018000" }, { "address": 252, "page": 0, - "value": "0x0" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde" }, { "address": 253, "page": 0, - "value": "0x4002800180017fff" + "value": "0x4002800180027fff" }, { "address": 254, "page": 0, - "value": "0x480280017ff98000" + "value": "0x4027800180018003" }, { "address": 255, "page": 0, - "value": "0x480280077ff98000" + "value": "0x4" }, { "address": 256, "page": 0, - "value": "0x480a80017fff8000" + "value": "0x4003800380018004" }, { "address": 257, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x482a800480038000" }, { "address": 258, "page": 0, - "value": "0x1104800180018000" + "value": "0x4802800280018000" }, { "address": 259, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde" + "value": "0x40317fff7ffe8005" }, { "address": 260, "page": 0, - "value": "0x4002800180027fff" + "value": "0x4027800180028006" }, { "address": 261, "page": 0, - "value": "0x4027800180018003" + "value": "0x2" }, { "address": 262, "page": 0, - "value": "0x4" + "value": "0x40137ffb7fff8007" }, { "address": 263, "page": 0, - "value": "0x4003800380018004" + "value": "0x400380027ff98008" }, { "address": 264, "page": 0, - "value": "0x482a800480038000" + "value": "0x400380037ff98009" }, { "address": 265, "page": 0, - "value": "0x4802800280018000" + "value": "0x400380047ff9800a" }, { "address": 266, "page": 0, - "value": "0x40317fff7ffe8005" + "value": "0x400380057ff9800b" }, { "address": 267, "page": 0, - "value": "0x4027800180028006" + "value": "0x400380067ff9800c" }, { "address": 268, "page": 0, - "value": "0x2" + "value": "0x40137ffc7fff800d" }, { "address": 269, "page": 0, - "value": "0x40137ffb7fff8007" + "value": "0x400380087ff9800e" }, { "address": 270, "page": 0, - "value": "0x400380027ff98008" + "value": "0x480a7ffb7fff8000" }, { "address": 271, "page": 0, - "value": "0x400380037ff98009" + "value": "0x4826800180008000" }, { "address": 272, "page": 0, - "value": "0x400380047ff9800a" + "value": "0x6" }, { "address": 273, "page": 0, - "value": "0x400380057ff9800b" + "value": "0x480680017fff8000" }, { "address": 274, "page": 0, - "value": "0x400380067ff9800c" + "value": "0x9" }, { "address": 275, "page": 0, - "value": "0x40137ffc7fff800d" + "value": "0x480a80037fff8000" }, { "address": 276, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480a80047fff8000" }, { "address": 277, "page": 0, - "value": "0x4826800180008000" + "value": "0x1104800180018000" }, { "address": 278, "page": 0, - "value": "0x6" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff13" }, { "address": 279, "page": 0, - "value": "0x480680017fff8000" + "value": "0x1088800580018000" }, { "address": 280, "page": 0, - "value": "0x8" + "value": "0x1104800180018000" }, { "address": 281, "page": 0, - "value": "0x480a80037fff8000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef1" }, { "address": 282, "page": 0, - "value": "0x480a80047fff8000" + "value": "0x402a8004800f7fff" }, { "address": 283, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffb7fff8000" }, { "address": 284, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0d" + "value": "0x4826800180008000" }, { "address": 285, "page": 0, - "value": "0x1088800580018000" + "value": "0x10" }, { "address": 286, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a80037fff8000" }, { "address": 287, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeeb" + "value": "0x480a800f7fff8000" }, { "address": 288, "page": 0, - "value": "0x402a8004800e7fff" + "value": "0x480680017fff8000" }, { "address": 289, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x9" }, { "address": 290, "page": 0, - "value": "0x4826800180008000" + "value": "0x1104800180018000" }, { "address": 291, "page": 0, - "value": "0xf" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeec" }, { "address": 292, "page": 0, - "value": "0x480a80037fff8000" + "value": "0x402a800380047fff" }, { "address": 293, "page": 0, - "value": "0x480a800e7fff8000" + "value": "0x480a7ffa7fff8000" }, { "address": 294, "page": 0, - "value": "0x480680017fff8000" + "value": "0x4826800180008000" }, { "address": 295, "page": 0, - "value": "0x8" + "value": "0x6" }, { "address": 296, "page": 0, - "value": "0x1104800180018000" + "value": "0x4826800180008000" }, { "address": 297, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffee6" + "value": "0x10" }, { "address": 298, "page": 0, - "value": "0x402a800380047fff" + "value": "0x480a7ffc7fff8000" }, { "address": 299, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x480680017fff8000" }, { "address": 300, "page": 0, - "value": "0x4826800180008000" + "value": "0x9" }, { "address": 301, "page": 0, - "value": "0x6" + "value": "0x1104800180018000" }, { "address": 302, "page": 0, - "value": "0x4826800180008000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff11" }, { "address": 303, "page": 0, - "value": "0xf" + "value": "0x402b800280198010" }, { "address": 304, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x4003800080028019" }, { "address": 305, "page": 0, - "value": "0x480680017fff8000" + "value": "0x4826800180008000" }, { "address": 306, "page": 0, - "value": "0x8" + "value": "0x10" }, { "address": 307, "page": 0, - "value": "0x1104800180018000" + "value": "0x48127ffe7fff8000" }, { "address": 308, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0b" + "value": "0x208b7fff7fff7ffe" }, { "address": 309, "page": 0, - "value": "0x402b80028017800f" + "value": "0x40780017fff7fff" }, { "address": 310, "page": 0, - "value": "0x4003800080028017" + "value": "0x1d" }, { "address": 311, "page": 0, - "value": "0x4826800180008000" + "value": "0x402780017ff58001" }, { "address": 312, "page": 0, - "value": "0xf" + "value": "0x1" }, { "address": 313, "page": 0, - "value": "0x48127ffe7fff8000" + "value": "0x400b7ff67fff8002" }, { "address": 314, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400b80007fff8003" }, { "address": 315, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x400b7ff87fff8004" }, { "address": 316, "page": 0, - "value": "0x1a" + "value": "0x400b7ff97fff8005" }, { "address": 317, "page": 0, - "value": "0x402780017ff68001" + "value": "0x400b7ffa7fff8006" }, { "address": 318, "page": 0, - "value": "0x1" + "value": "0x400b7ffb7fff8007" }, { "address": 319, "page": 0, - "value": "0x400b7ff77fff8002" + "value": "0x400b7ffc7fff8008" }, { "address": 320, "page": 0, - "value": "0x400b80007fff8003" + "value": "0x400b7ffd7fff8009" }, { "address": 321, "page": 0, - "value": "0x400b7ff97fff8004" + "value": "0x400780017fff800a" }, { "address": 322, "page": 0, - "value": "0x400b7ffa7fff8005" + "value": "0x6f7574707574" }, { "address": 323, "page": 0, - "value": "0x400b7ffb7fff8006" + "value": "0x400780017fff800b" }, { "address": 324, "page": 0, - "value": "0x400b7ffc7fff8007" + "value": "0x706564657273656e" }, { "address": 325, "page": 0, - "value": "0x400b7ffd7fff8008" + "value": "0x400780017fff800c" }, { "address": 326, "page": 0, - "value": "0x400780017fff8009" + "value": "0x72616e67655f636865636b" }, { "address": 327, "page": 0, - "value": "0x6f7574707574" + "value": "0x400780017fff800d" }, { "address": 328, "page": 0, - "value": "0x400780017fff800a" + "value": "0x6563647361" }, { "address": 329, "page": 0, - "value": "0x706564657273656e" + "value": "0x400780017fff800e" }, { "address": 330, "page": 0, - "value": "0x400780017fff800b" + "value": "0x62697477697365" }, { "address": 331, "page": 0, - "value": "0x72616e67655f636865636b" + "value": "0x400780017fff800f" }, { "address": 332, "page": 0, - "value": "0x400780017fff800c" + "value": "0x65635f6f70" }, { "address": 333, "page": 0, - "value": "0x6563647361" + "value": "0x400780017fff8010" }, { "address": 334, "page": 0, - "value": "0x400780017fff800d" + "value": "0x6b656363616b" }, { "address": 335, "page": 0, - "value": "0x62697477697365" + "value": "0x400780017fff8011" }, { "address": 336, "page": 0, - "value": "0x400780017fff800e" + "value": "0x706f736569646f6e" }, { "address": 337, "page": 0, - "value": "0x65635f6f70" + "value": "0x400780017fff8012" }, { "address": 338, "page": 0, - "value": "0x400780017fff800f" + "value": "0x72616e67655f636865636b3936" }, { "address": 339, "page": 0, - "value": "0x6b656363616b" + "value": "0x400780017fff8013" }, { "address": 340, "page": 0, - "value": "0x400780017fff8010" + "value": "0x1" }, { "address": 341, "page": 0, - "value": "0x706f736569646f6e" + "value": "0x400780017fff8014" }, { "address": 342, "page": 0, - "value": "0x400780017fff8011" + "value": "0x3" }, { "address": 343, "page": 0, - "value": "0x1" + "value": "0x400780017fff8015" }, { "address": 344, "page": 0, - "value": "0x400780017fff8012" + "value": "0x1" }, { "address": 345, "page": 0, - "value": "0x3" + "value": "0x400780017fff8016" }, { "address": 346, "page": 0, - "value": "0x400780017fff8013" + "value": "0x2" }, { "address": 347, "page": 0, - "value": "0x1" + "value": "0x400780017fff8017" }, { "address": 348, "page": 0, - "value": "0x400780017fff8014" + "value": "0x5" }, { "address": 349, "page": 0, - "value": "0x2" + "value": "0x400780017fff8018" }, { "address": 350, "page": 0, - "value": "0x400780017fff8015" + "value": "0x7" }, { "address": 351, "page": 0, - "value": "0x5" + "value": "0x400780017fff8019" }, { "address": 352, "page": 0, - "value": "0x400780017fff8016" + "value": "0x10" }, { "address": 353, "page": 0, - "value": "0x7" + "value": "0x400780017fff801a" }, { "address": 354, "page": 0, - "value": "0x400780017fff8017" + "value": "0x6" }, { "address": 355, "page": 0, - "value": "0x10" + "value": "0x400780017fff801b" }, { "address": 356, "page": 0, - "value": "0x400780017fff8018" + "value": "0x1" }, { "address": 357, "page": 0, - "value": "0x6" + "value": "0x1104800180018000" }, { "address": 358, "page": 0, - "value": "0x1104800180018000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea3" }, { "address": 359, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea2" + "value": "0x482480017ffe8000" }, { "address": 360, "page": 0, - "value": "0x482480017ffe8000" + "value": "0x1" }, { "address": 361, "page": 0, - "value": "0x1" + "value": "0x480a7ff77fff8000" }, { "address": 362, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x482480017ffc8000" }, { "address": 363, "page": 0, - "value": "0x482480017ffc8000" + "value": "0xa" }, { "address": 364, "page": 0, - "value": "0x9" + "value": "0x482480017ffb8000" }, { "address": 365, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x13" }, { "address": 366, "page": 0, - "value": "0x11" + "value": "0x480280007ff58000" }, { "address": 367, "page": 0, - "value": "0x480280007ff68000" + "value": "0x1104800180018000" }, { "address": 368, "page": 0, - "value": "0x1104800180018000" + "value": "0x24" }, { "address": 369, "page": 0, - "value": "0x23" + "value": "0x400a80007fff7fff" }, { "address": 370, "page": 0, - "value": "0x400a80007fff7fff" + "value": "0x40137ffe7fff801c" }, { "address": 371, "page": 0, - "value": "0x40137ffe7fff8019" + "value": "0x48028002801c8000" }, { "address": 372, "page": 0, - "value": "0x4802800280198000" + "value": "0x48307ffe80007fff" }, { "address": 373, "page": 0, - "value": "0x48307ffe80007fff" + "value": "0x480680017fff8000" }, { "address": 374, "page": 0, - "value": "0x480680017fff8000" + "value": "0x40" }, { "address": 375, "page": 0, - "value": "0x40" + "value": "0x1104800180018000" }, { "address": 376, "page": 0, - "value": "0x1104800180018000" + "value": "0xc" }, { "address": 377, "page": 0, - "value": "0xb" + "value": "0x48028000801c8000" }, { "address": 378, "page": 0, - "value": "0x4802800080198000" + "value": "0x48028001801c8000" }, { "address": 379, "page": 0, - "value": "0x4802800180198000" + "value": "0x48028002801c8000" }, { "address": 380, "page": 0, - "value": "0x4802800280198000" + "value": "0x48028003801c8000" }, { "address": 381, "page": 0, - "value": "0x4802800380198000" + "value": "0x48028004801c8000" }, { "address": 382, "page": 0, - "value": "0x4802800480198000" + "value": "0x48028005801c8000" }, { "address": 383, "page": 0, - "value": "0x4802800580198000" + "value": "0x48028006801c8000" }, { "address": 384, "page": 0, - "value": "0x4802800680198000" + "value": "0x48028007801c8000" }, { "address": 385, "page": 0, - "value": "0x4802800780198000" + "value": "0x48028008801c8000" }, { "address": 386, @@ -3456,7 +2701,7 @@ { "address": 416, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff57" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff50" }, { "address": 417, @@ -3496,190 +2741,205 @@ { "address": 424, "page": 0, - "value": "0x480a7ff67fff8000" + "value": "0x480a7ff57fff8000" }, { "address": 425, "page": 0, - "value": "0x480a7ff77fff8000" + "value": "0x480a7ff67fff8000" }, { "address": 426, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x480a7ff77fff8000" }, { "address": 427, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x480a7ff87fff8000" }, { "address": 428, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x480a7ff97fff8000" }, { "address": 429, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480a7ffa7fff8000" }, { "address": 430, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 431, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x480a7ffc7fff8000" }, { "address": 432, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffd7fff8000" }, { "address": 433, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff8c" + "value": "0x1104800180018000" }, { "address": 434, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff85" }, { "address": 435, "page": 0, - "value": "0x1b5" + "value": "0x208b7fff7fff7ffe" }, { "address": 436, "page": 0, - "value": "0x0" + "value": "0x1b6" }, { "address": 437, "page": 0, - "value": "0x7ab" + "value": "0x0" }, { "address": 438, "page": 0, - "value": "0x7b3" + "value": "0x7d7" }, { "address": 439, "page": 0, - "value": "0x933" + "value": "0x7df" }, { "address": 440, "page": 0, - "value": "0x943" + "value": "0x95f" }, { "address": 441, "page": 0, - "value": "0x945" + "value": "0x96f" }, { "address": 442, "page": 0, - "value": "0x94f" + "value": "0x971" }, { "address": 443, "page": 0, - "value": "0x956" + "value": "0x97b" }, { "address": 444, "page": 0, - "value": "0x956" + "value": "0x982" }, { - "address": 1955, + "address": 445, "page": 0, - "value": "0x7b3" + "value": "0x982" }, { - "address": 1956, + "address": 446, "page": 0, - "value": "0x90f" + "value": "0x0" }, { - "address": 1957, + "address": 1998, "page": 0, - "value": "0x93c" + "value": "0x7df" }, { - "address": 1958, + "address": 1999, "page": 0, - "value": "0x945" + "value": "0x93b" }, { - "address": 1959, + "address": 2000, "page": 0, - "value": "0x94f" + "value": "0x969" }, { - "address": 1960, + "address": 2001, "page": 0, - "value": "0x956" + "value": "0x971" }, { - "address": 1961, + "address": 2002, "page": 0, - "value": "0x956" + "value": "0x97b" }, { - "address": 1962, + "address": 2003, "page": 0, - "value": "0x956" + "value": "0x982" + }, + { + "address": 2004, + "page": 0, + "value": "0x982" + }, + { + "address": 2005, + "page": 0, + "value": "0x982" + }, + { + "address": 2006, + "page": 0, + "value": "0x0" }, { - "address": 1963, + "address": 2007, "page": 0, "value": "0x1" }, { - "address": 1964, + "address": 2008, "page": 0, "value": "0x7" }, { - "address": 1965, + "address": 2009, "page": 0, "value": "0xeee90e36ac1c9ef2f7860d775e92114ede713759d948df425f966e4feea3d2" }, { - "address": 1966, + "address": 2010, "page": 0, "value": "0x5c9d88a1de4e8a88f3a14ee67d10cc244cf6eb630751faf26a6c83a86205e0" }, { - "address": 1967, + "address": 2011, "page": 0, "value": "0x4d2" }, { - "address": 1968, + "address": 2012, "page": 0, "value": "0x10e1" }, { - "address": 1969, + "address": 2013, "page": 0, "value": "0x3e8" }, { - "address": 1970, + "address": 2014, "page": 0, "value": "0x7d0" } ], - "rc_max": 32793, + "rc_max": 32796, "rc_min": 0 }, "version": { @@ -3687,39 +2947,39 @@ "statement_name": "INVALID_NAME" }, "extra_annotations": [ - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3064069: Hash(0x000000000000000000000000f8b41351d911906de3b24701b6803fd8c5246edd)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3962143: Hash(0x00000000000000000000000089f91298fa32716ce39dacad03ccd07755d35ef5)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3064069: Hash(0x000000000000000000000000389c258ae116ed92cb7241ccbaf319deb980adf0)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3962143: Hash(0x000000000000000000000000c88c5c851d7ec86ad4ed7bdb33480976fef7bdb9)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3064069: Hash(0x0000000000000000000000001e2ebd342d8b454d8f905f53865a64ba71a79e73)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3962143: Hash(0x000000000000000000000000b361f9195bc47e883e9827fb307d26b4796f2547)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 120864, Column 5: Field Element(0x687145ea7543f63eabecda94cb04bb80cf1ffb5bf4612355bfc2af5c6d55bd)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 966917: Field Element(0x5b7047322ff90b3412784777e9f71396229126c325b5797a0f2be14a0649282)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 233123, Column 7: Field Element(0x55111deebcf1208d980e5e42e995421779dbafa1e36416d53d6a1e97e8e2a5a)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 1864991: Field Element(0x299e176db75ff6d56e70ab18cc10952f63a1d3f5506203638f04ae0ca99ea09)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 383008: Hash(0x000000000000000000000000b164517a21c6116eb13c0f18ad26bea675626450)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 495267: Hash(0x000000000000000000000000b22de7af10b366651d5f3d8e54111fb54eefad53)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 15108, Column 0: Field Element(0x39b84c14d67540d42945310d1fb3ee79613980b8846ea5427f1d36a3c47b7ff)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 120864: Field Element(0x3ff728aa72ec1f5e9f16fa61fef03e1546a9bcdf60f6b10ef15336003e7e3c6)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 29140, Column 3: Field Element(0x5847946633fd5adf05489f4cbf6c8736267aa45f9f6cdf4a4cee39160bf47c7)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 233123: Field Element(0x14b093db9ab4f1d80e0e72a47893b07e5bbb461f266e509ace10634713fef08)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 47876: Hash(0x0000000000000000000000008b037fa4b086a7f189749c1d5352fba9d9d5a23f)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 61908: Hash(0x00000000000000000000000007fd8dc874447e36c1be1fe9587652d41212cd91)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 1888, Column 4: Field Element(0x4b99eed459a5a7521cc471d6fcaf9252e4c747ae00cca9466f6fd4acde761b9)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 15108: Field Element(0x2716ef69c9ebaafe64ccc4ae0d2b488704b0fa5e9d610bfe5c6b4a808a35e69)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 3642, Column 4: Field Element(0x39d38ad0130c62ea8371d07f714fc095dcc9daeb5b864cbf0436510bda308ca)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 29140: Field Element(0x385fee3d23b2ec5f2686c8f3794636c3550a198425cb0d41a09f5329fd1fc2f)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 5984: Hash(0x0000000000000000000000002418e440f81aeb14d99dcb7b22b70d6158d248d8)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 7738: Hash(0x0000000000000000000000005598a64450f469ed1028f3812e26cf39321c21a9)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 472, Column 0: Field Element(0x54185331316cb3ad383fee9f90521cfcc18d6482e71bb76b7f6c26d99e0f335)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 1888: Field Element(0x765e60fa149e631762f98a960733abf9948b385a6bbc14e7caa824d9bb03aba)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 910, Column 2: Field Element(0x3c280689628f7670ff52339d625ba692c95bdd829758d9288e96fb2875217c6)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 3642: Field Element(0x63447ec115034179e474346a73f820334d7ce13209ea2e0609ab033a56dc304)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 1496: Hash(0x000000000000000000000000d3771c8f0078e40609b41c8532ee1bc9d90cf813)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 1934: Hash(0x00000000000000000000000020a05c46c692f50948b01766fe1202265d0b0fc1)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 472, Column 0: Field Element(0x2f409ba46565206233e07007d3123b2a5f8e8169dfe0a217416abe47f4dce45)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 472: Field Element(0x689ba373b909793374eeff3789b0d15f59c9baaa1c2d457ea932af54e753190)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 910, Column 0: Field Element(0xcdd12c4295a5269eccbd7ae196c9aff922bf86f650b3b81b5dd4a1487bd3ae)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 910: Field Element(0x2d99ee7e0f171256367d706137c68bc55b337b01fd4083585c0cc87336ae7e1)" + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2922368: Hash(0x000000000000000000000000ec785d3f074c0dd3aaf7a368a7d8e06de6cc9c51)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3871563: Hash(0x000000000000000000000000d90aaea440ac8413310ba7db880270a3ad704a37)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2922368: Hash(0x000000000000000000000000700036e5f75651ca92ce7da26e1f5caccb880c3d)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3871563: Hash(0x000000000000000000000000ba6b912920e5f1265fd65d8df9b23a39a1f5a43c)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2922368: Hash(0x0000000000000000000000007692e3c254ca5d70a3556c6127078fbaefdf4992)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3871563: Hash(0x00000000000000000000000038f0c96e4e68a913ca72b1015e944b3a4dbc318a)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 103152, Column 0: Field Element(0x7b907ed43761dd0d090956940b22caf2c2847c1f80e051658682c81d7de9964)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 825216: Field Element(0x74283f259ad97b2cdbf0981d3595175f2fb70ac9c1ddda2721233442e256156)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 221801, Column 3: Field Element(0x738576b682c5953bbdc4be9e274f29f3cd24374c478116a55135f420ba827c4)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 1774411: Field Element(0x15ef2760984b90d3802530b57716be9af9c342dd749345338d6a4ce630cc655)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 365296: Hash(0x000000000000000000000000d7a2d8ed6635e108b502799a53b084f0704fac64)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 483945: Hash(0x00000000000000000000000089ce3859c88d6300175341d3188a94c991402d46)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 12894, Column 0: Field Element(0x51939c7309e5a21aa97fec8aa4bd5bac59b1df298d7e4666cbe2149c282b3c2)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 103152: Field Element(0x4a2d48fcdf9b3243dc4480d71193451972dd4041abb3c6ba66ca2004517321a)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 27725, Column 1: Field Element(0x6164aa6fc2f2e7902e0ad5b1522a0946303a8095da18c584b052786e9a5cc93)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 221801: Field Element(0x4dd6b3dbc130405363384bfcca8a2bb3b1e0d8301f2b2f3b93ce71755d282e6)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 45662: Hash(0x0000000000000000000000007b18e7ca474dd509b46c4a33b86554e1d8ecd966)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 60493: Hash(0x000000000000000000000000f5531b1e146f6a5560c0ed52afecd7a6aae41f1e)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 1611, Column 6: Field Element(0x62fcdee46a1878770fd4dd1df5b131ca5dc33f4fd2984f93ad8be09dc3a3eba)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 12894: Field Element(0x683065eff9fae5553ab388649fd19de9215196ac1b1c2dc2bc3d52168452ceb)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 3465, Column 5: Field Element(0x2259e57294ebee65e5cbb55d89b9b326e6072f2f6b50af6dcd57f893c4f8c94)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 27725: Field Element(0x5d1307c6336ac5c2c97536df88f47dd641fe7cc2df3916f70ed7ee877ceee5f)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 5707: Hash(0x000000000000000000000000fa53ee573b00a38f0be56c21150c1da8acb51052)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 7561: Hash(0x00000000000000000000000009e558d1ba920b231b765640794eff159ab93351)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 402, Column 3: Field Element(0x78d5aee7ceed298ef5eff459f71b60875f6bdcb52955976c88864f13c2fb3)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 1611: Field Element(0x40f02001432b7fb2531ea727b1069083d748f883f8fb6030fea52dcb540103b)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 866, Column 1: Field Element(0x4b737ab722df62b4da52339f5362fb3a72cc3cf1a2d29141649bf82ad9a4772)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 3465: Field Element(0x1f692818f4697ec42b134162530cbb59f3949eaa466f114eb55c38bccc9fbc2)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 1426: Hash(0x000000000000000000000000865744ef6a92a39cc902eef6ef0242cfa99eedf7)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 1890: Hash(0x0000000000000000000000004c4b1d1e004ce488046e1912546866d3e6390ed7)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 402, Column 0: Field Element(0x68c752fbaa88336dd855b452d006baf33195e8d8eab1be2608b46aeed3676c5)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 402: Field Element(0x3a49502e633a835d08ef53721671f77e2f90855d5fcf32d0b8842f8b48d295)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 866, Column 0: Field Element(0x5cf743dc68fed03d04a3982d98cab005936bfd25f7edc26796f04e37b2466a1)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 866: Field Element(0x7dcd4eea8fe36df7975e97b05e93aad2808dfac55f4bd24c13f89d0afb6c60e)" ] } diff --git a/src/starkware/cairo/stark_verifier/air/example_expected.json b/src/starkware/cairo/stark_verifier/air/example_expected.json new file mode 100644 index 00000000..eac456ae --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/example_expected.json @@ -0,0 +1,15 @@ +{ + "public_input_test": { + "initial_hash_chain_seed": "0x02aad846ecc75d17563de31718138ea5e019166bb8a81b8494b061dc5ac3eca4" + }, + "dynamic_layout_public_input_test": { + "initial_hash_chain_seed": "0x01490306a65f798b9ac1a4601e09cb14f5a3ea16998ccb6a8c64f1455c2796a8" + }, + "diluted_test": { + "spacing": 4, + "n_bits": 16, + "z": "0x12345678", + "alpha": "0x87654321", + "res": "0x3f070f6a2364e6900cc19fa78f05596c776f474786d6769a7b91410352ba644" + } +} diff --git a/src/starkware/cairo/stark_verifier/air/example_proof.json b/src/starkware/cairo/stark_verifier/air/example_proof.json index 37bdfc7f..79e72ad6 100644 --- a/src/starkware/cairo/stark_verifier/air/example_proof.json +++ b/src/starkware/cairo/stark_verifier/air/example_proof.json @@ -2,3387 +2,2681 @@ "annotations": [ "title cpu air Proof Protocol", "", - "P->V[0:32]: /cpu air/STARK/Original/Commit on Trace: Commitment: Hash(0x3f8c1f01eaa15626ac65a0e278dd73a690d8ba7562262cc5817c5a398dca9d1)", - "V->P: /cpu air/STARK/Interaction: Interaction element #0: Field Element(0x509830a710ce6f71543e1c2cb83c8e4a74e2d9a273f968ad9e8650faf8146e)", - "V->P: /cpu air/STARK/Interaction: Interaction element #1: Field Element(0x788e0933caf7af2704eec677a2db2db9d1ce4cbeb39d1c7d602c14e87746130)", - "V->P: /cpu air/STARK/Interaction: Interaction element #2: Field Element(0x1ae7464530ce6fbe9097b2fda4e3466ca40d23c3c2efcbfb84b9f1a71b48560)", - "V->P: /cpu air/STARK/Interaction: Interaction element #3: Field Element(0x7c0510b8800fa3091f86817485b785e6a6c8153223cc6f61f823ca2099697b2)", - "V->P: /cpu air/STARK/Interaction: Interaction element #4: Field Element(0x4fe69d8d50e6e883cfe4f5a6fce473159c87f572bdc54594c454bb062c03e74)", - "V->P: /cpu air/STARK/Interaction: Interaction element #5: Field Element(0x61b02a8e946d5843c7c32c0a62e50a54fcd3f260ef8ebc0e3bb1c44c6f4e5a6)", - "P->V[32:64]: /cpu air/STARK/Interaction/Commit on Trace: Commitment: Hash(0x1f9cba6da84b10f30d94719b76ae3b60c68302967886dc195c5aaedc65403b2)", - "V->P: /cpu air/STARK/Original: Constraint polynomial random element: Field Element(0x5655402ceee0c6b01eb0cd13975a3cee9d518944aef63b7030b827956affe13)", - "P->V[64:96]: /cpu air/STARK/Out Of Domain Sampling/Commit on Trace: Commitment: Hash(0x3b0d974288f444596bacbbbf0c5482e479a1eebc532b7099944cd1c152b1544)", - "V->P: /cpu air/STARK/Out Of Domain Sampling/OODS values: Evaluation point: Field Element(0x67e199d22edb0c7629ae422145c4b7e1efacb0c7f3047b1b4411d6c3d03c97f)", - "P->V[96:128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 0: Field Element(0x109e8909bf53c8c464a05bc10e66108d7dc9bfd0fd3a6dc02cf600924b05f40)", - "P->V[128:160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 1: Field Element(0x146411f05af72d929dba1a33b5ff550c28c8840d973c5b21679d6b04c7956b0)", - "P->V[160:192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 2: Field Element(0x75c9382f418b5b3fd1a1fc6115e31f74f308170373180c560ae0f5f06ca284)", - "P->V[192:224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 3: Field Element(0x5c46d66d34ea33e58372cbbdf3487010ec4ac6c2b8671ddf555da5bacc3ba7)", - "P->V[224:256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 4: Field Element(0x35cccece9d94abb5acd90b52d57b9b051a187e108203610f5387db0b4194e3c)", - "P->V[256:288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 5: Field Element(0x1662ece0ed410e07b2f8cc697c86b6aafa261d0e5ea6e971d074eb71e5d94f2)", - "P->V[288:320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 6: Field Element(0x1c13795b8671d213ac57980f47f35edce191c5f4f01b5e4764b08f4c925a0bf)", - "P->V[320:352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 7: Field Element(0x10bc4dbd30a342d6a7ba0851ace34dbe90ca36f3e15ac7bde4f1d46ceaaa3fc)", - "P->V[352:384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 8: Field Element(0x11e3c55a847da690f5d9ddd769a457f010896c34bc65f7bc49a3b2c79f56ce4)", - "P->V[384:416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 9: Field Element(0x153aad2ff191cde86f364fbaf6079e8cb5c22fa4d4039cf55cee4ecb2d56193)", - "P->V[416:448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 10: Field Element(0x1556ce8c4c223e5c9d2d7ec752fe8a361719b8a08d0da286dd9f57ddbcda4c9)", - "P->V[448:480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 11: Field Element(0x40cc809224ec2d8fde53d7cebc0f9071d396a399d92321a65c1e59a7fa22f36)", - "P->V[480:512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 12: Field Element(0x2473ab6510dc6be07c3e69ffb3bc9faa5650059b3cb8356bfd3c3da90a156d6)", - "P->V[512:544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 13: Field Element(0x5d283207c23e7362b66982630ad37b3824dfd474431564a5d9e63cc334cb3ae)", - "P->V[544:576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 14: Field Element(0x19a5a6b48327c1e8863f30c58e0167a0828091d78d3d9bf277d58e350162c73)", - "P->V[576:608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 15: Field Element(0x41febe7f350d639a8c90c26303cb684f6ad3ab5070747cf8dabad0a0e18c07)", - "P->V[608:640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 16: Field Element(0x60e685f02a9e30df36e5a80141bb796c525bd916a932682b2c6e90472dd79d6)", - "P->V[640:672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 17: Field Element(0x64ea4da235ee0dfb618ef445b67fd53fcde9605bf4873fdc0d6b1e3eccae132)", - "P->V[672:704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 18: Field Element(0x7723b05a5be94763bc47376d318079c4fd6d33b552a2b9757630a89fc1b2bae)", - "P->V[704:736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 19: Field Element(0x534ccfdd1299025174e103aaa8f69d72836e03fe43ae03e4571d54793d860e9)", - "P->V[736:768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 20: Field Element(0x78cc6cde7a4895762bbf6528a4cfe7b166e680aea036e705e5ba3bc4f812a7a)", - "P->V[768:800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 21: Field Element(0x234c899de6c1c751db6ae0cb43ca3bebb7301a3544e63a40f08a32a61725c89)", - "P->V[800:832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 22: Field Element(0x7cd76cfcb12834d185150f35f2d19a338c9e1be625b9c67d94304f24a1a022d)", - "P->V[832:864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 23: Field Element(0x5a6faa8f85c6183e171192ac874f9c352c3dae0e8ce2729349812fecdc650e0)", - "P->V[864:896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 24: Field Element(0x14ba3ddcda1620603d304efe74f6f372fef165a0d24b3e22cad632a9966a25d)", - "P->V[896:928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 25: Field Element(0x307b5d495b2f440db3d1e09f109bba3d1e607bee9cb4d57c91e8e60b1275a09)", - "P->V[928:960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 26: Field Element(0x3536109e9b4908475ccf26a9f16c1389c1c05ba975aa0cc35953ea54794591e)", - "P->V[960:992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 27: Field Element(0x795b0b5de37694b858e03a9ff9769af25dee4de2087c4dce0a1b73b7592872c)", - "P->V[992:1024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 28: Field Element(0x5e4416b2d1c8049d9f80f62b75da130786baf9e34119500a7c3d1942c5af08e)", - "P->V[1024:1056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 29: Field Element(0x37780ac8cf69574ed965fc3fa3d728313fb87f9c4ff68629f2f8da1afed3396)", - "P->V[1056:1088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 30: Field Element(0x172a187d1efc79feeb1c79538ce91788c25a0e834e1ebad54afb6c647f5cfd3)", - "P->V[1088:1120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 31: Field Element(0x2c21551b5e4a08a2b1d8746196bb2d5b7b4fa4054e5bbe078ab319f50b194f1)", - "P->V[1120:1152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 32: Field Element(0x5d1615a82afefc1206e0d9c3d07a6cfc99ab2e8ddad0cf0765445099553f558)", - "P->V[1152:1184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 33: Field Element(0x2ca312cacc794321284d677c0ffe96853146fdfebf601f32ffe7497f72e360a)", - "P->V[1184:1216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 34: Field Element(0x6c8957856c6f869f8198d73ca4fb6404a76296ca98b3a55173d55644e784099)", - "P->V[1216:1248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 35: Field Element(0x303a9c6332ccba7e26367a4af45d4beae9ed382a2a52dc224d1fe75df3a66b2)", - "P->V[1248:1280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 36: Field Element(0x689a6df29905c919f3e41812ee93c251f567d404406f60d84d1474bcc7622a6)", - "P->V[1280:1312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 37: Field Element(0x26942f0d43b462c3d0cf5ae701f2b7726a1b67b750ed7010958aad2d2e9f34f)", - "P->V[1312:1344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 38: Field Element(0x1aea1728508911a0ff7f313f12685277e68b25a7924eca2b4f84d6c0d594cba)", - "P->V[1344:1376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 39: Field Element(0xa8e89b6535cc609633ab1d7fdd9f7b4ab0430c0eb67f48adee91c2d4046fe6)", - "P->V[1376:1408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 40: Field Element(0x326c8939dd2872a352248717bf64fd010dbc24f56c554923b4fb295355ea83d)", - "P->V[1408:1440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 41: Field Element(0x490590b33927d41f7df61bbd9a694050c8c0dc01d0f72d2f53dbe3090f3f6ad)", - "P->V[1440:1472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 42: Field Element(0xd17cb9315ecb28dc6533e3e8f42aef83ca310a151a3813bf879285b2681538)", - "P->V[1472:1504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 43: Field Element(0x78e46f3b44ee1bcbbe419968033531b1710c98c5dcd22f39e705555339f5041)", - "P->V[1504:1536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 44: Field Element(0x5ce9055b418da8bc95c5125e1d0da76e18bff5072a786a571123af863b918bb)", - "P->V[1536:1568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 45: Field Element(0x6a249657e637aacae888435830abb6be9d5015cb0e1b31040d42d51842f9091)", - "P->V[1568:1600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 46: Field Element(0x5bf303ce68e7cc8c836527b5a922fce459e5ed1456e6f16e0b0863797d75bc1)", - "P->V[1600:1632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 47: Field Element(0x7d07f7e6489bf1f13dea0c526d35667a402a7dba17dc98b5e70cf2c3ef18a2c)", - "P->V[1632:1664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 48: Field Element(0x3559cb9f5c7b6615a09d2c097e8254dcc249bd502e63b398e4c842e894a4402)", - "P->V[1664:1696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 49: Field Element(0x419d501ce6b7e51e177eec537f26f01532905208ed23dc66bd049f5c62281ff)", - "P->V[1696:1728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 50: Field Element(0x1ad0187accb33b738d2eb6d0a480f21b908a014b5db1840d0639eddd6d337f4)", - "P->V[1728:1760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 51: Field Element(0x7daed38a34f16971bf7554e367be8c3510edb57c024dc861751ff66b28fdcfc)", - "P->V[1760:1792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 52: Field Element(0x3166236d8362e1b94ac003166a4467b683f66fc8c3e294eb08962981fc760d3)", - "P->V[1792:1824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 53: Field Element(0x4ecb4d2d08d06ea15a601530967ac1be35e1850401221e22e5a847f5d9e1cb6)", - "P->V[1824:1856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 54: Field Element(0x50908ea9b67132a0d1eadce1a32a1fd1278d27d87c83de2bf9e8cdb7d4abf0)", - "P->V[1856:1888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 55: Field Element(0x4818478b9163e5dfad3200d0f9be49ca485ab4811500b8dc5c7535f7dabd49a)", - "P->V[1888:1920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 56: Field Element(0x60149e22a53db68cdb4443a3aa654b47b373999ebafb4b809941a2551d7420f)", - "P->V[1920:1952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 57: Field Element(0x6de0c26a00c64c2c61faaa14601aef70f65b00fdf101eb218efb6250381fd2f)", - "P->V[1952:1984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 58: Field Element(0x343da1d77b14a0b58e1aac78f7ffc0ad3fee1d06bae0bb6e660a0128da0bad6)", - "P->V[1984:2016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 59: Field Element(0x2eaaa39da1ea2445885c3f3e655f7f083c1bcd65f784988ed1b3a27eacfe666)", - "P->V[2016:2048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 60: Field Element(0x32eb2cc80ab9ce8db33e900ae2b2e70f4038ef02b9197dc03d8b63ec71e6e9f)", - "P->V[2048:2080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 61: Field Element(0x42a02060c3da5929c319f6e6afc488e90cb9f0676cead989d565ef593c1fbcc)", - "P->V[2080:2112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 62: Field Element(0x199ed7b9acd1d778a4b819ba2b3b25b1d2bce65078c9dfe4ab7412f17e5f6c)", - "P->V[2112:2144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 63: Field Element(0x5ed1c8f557d429e005dbfd339df336fbcaf053dcddf83605dfee1acf4870ff7)", - "P->V[2144:2176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 64: Field Element(0x1b9883a3f4c73bb1f7e84bb272e0686619b79201b22ad5d69bc39bb8959e0bf)", - "P->V[2176:2208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 65: Field Element(0x33e2583fb5c833f63ee2a217a8ba56eb022b2f223c7a1e7f6264ad63cd2d260)", - "P->V[2208:2240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 66: Field Element(0x4bbad169e9f4020d5d7f7eeaa9516a24249e487b29d9f7f37c2093a06aca9a8)", - "P->V[2240:2272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 67: Field Element(0x42a419c33e6d54c6e369b60b9b7b414a1e5ac599e384a5dad15d10dc16ed073)", - "P->V[2272:2304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 68: Field Element(0x10be6b037cffbd33eb1daaf8cf2226b500be152eccb1b2cb3ad762b9f510a6f)", - "P->V[2304:2336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 69: Field Element(0x76e9efb4a91090f73b7888c5a127d22f91f36bedd81a83e8bff77df444beaeb)", - "P->V[2336:2368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 70: Field Element(0x79c09b88cdceb4d99fac40b8c08c7f6d9383d42fe5d509355d405d763677074)", - "P->V[2368:2400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 71: Field Element(0x4e97f5a547ae860b7178fc2cdae37fbfc51d1b7b123dbbbb5ba3313e1ec9ace)", - "P->V[2400:2432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 72: Field Element(0x710b4cb318d9427c8b95a6a689b892aa2c77917aa7be549d8baaa1d76ecf5c3)", - "P->V[2432:2464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 73: Field Element(0x3e0c53754bccffefaba4f07d16127622bd08c8b9b179a730289e6391e2ccb2d)", - "P->V[2464:2496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 74: Field Element(0x5b1914f8adf83d2189242e776a1d2e92bf13fa0315535c555f08faab23b25c4)", - "P->V[2496:2528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 75: Field Element(0x10a0345c02dd7901e8855a168d897bbb48f051aa4a2006bf5399619ec65eb58)", - "P->V[2528:2560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 76: Field Element(0x23606d3855f157cb192bb8694af9351e84e14b726237a21f7bce96775d092f3)", - "P->V[2560:2592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 77: Field Element(0x1f34ed6f6dae53cdcf8892ae0367740c07f8348fc302acd11a327093e9a59e2)", - "P->V[2592:2624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 78: Field Element(0x36d92cbbf69740204754726904fae0f0040365b36e7f2641049a13839dbb415)", - "P->V[2624:2656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 79: Field Element(0x2db8c70c5ef304af4e879d556ea82bd1bf3ca1b31934282ef9a7776c866e244)", - "P->V[2656:2688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 80: Field Element(0x7bbfb778fd7a1d1d741f7e4e9a54dba921d0ecaa3e8d912930816be2f1fe2c0)", - "P->V[2688:2720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 81: Field Element(0x3384b2096e586a7c18555a9825a838d42fb13f249ffc41f993b5b94bf64dfc9)", - "P->V[2720:2752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 82: Field Element(0x569ee0010c806334332e9478f780992d1c18f94240a64c5ad69176ade07bed2)", - "P->V[2752:2784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 83: Field Element(0x5c6ca1df5fa675e0f541a3ac447c624ff157b0f968436f952787b7ee072952c)", - "P->V[2784:2816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 84: Field Element(0x5398a44e78c93d568ff78ba02391ea4e9cdaa2f148e1552de019b0f4114979e)", - "P->V[2816:2848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 85: Field Element(0x5e480cbc5b795821170107d3e0a3a614830c6a61dc9728447b22f3d1f70ac16)", - "P->V[2848:2880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 86: Field Element(0xb0fad04ca8173916e1607ba72e6b43d36ea6215999fecc6d61f5624ed4913c)", - "P->V[2880:2912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 87: Field Element(0xafe733c999432259b31cc10267147d5ac72ea09728b630fcd4adc5b765ef68)", - "P->V[2912:2944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 88: Field Element(0x4f36ee3a1e9b41d1ba2c3363e650902cb0d20cbc6f21d78135af815cb80d7e3)", - "P->V[2944:2976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 89: Field Element(0x7b3e7718e8e87064460574397624773acf7634c6b59cfb6c0bdbe1278ac4ecc)", - "P->V[2976:3008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 90: Field Element(0x318a4a3613c431709d17e58d70b0f23191baa750bc89dc89e551cfdcbffd536)", - "P->V[3008:3040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 91: Field Element(0x58ba7490b251813e4595c4749f2759a87e8097878da67b43a7b2d3fba0bea67)", - "P->V[3040:3072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 92: Field Element(0x34bd63e2aaa08bc02b033900a9709ca6475c05b65d8d99526fcd85f219b3e6b)", - "P->V[3072:3104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 93: Field Element(0x5cc3cb00c7be0c220a83d86f1ac7ccefb4b609b6ca9e21e70cb3946ca450e8a)", - "P->V[3104:3136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 94: Field Element(0x4829f1df77cdab66bc09eba699c1e7ed1dc78737a571907e0132350fd7f745e)", - "P->V[3136:3168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 95: Field Element(0x750e326525685cba8a27dd937d92a87e5dff91e14d419f7f5d046861e75ebf8)", - "P->V[3168:3200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 96: Field Element(0x38421c28566dec17c5875fa6019592f564ee2a983080b39ef39018ae030f34c)", - "P->V[3200:3232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 97: Field Element(0x570af830db9c3a4492b3a3640fd2fe7e3bf1363084dae318a884787b5d7f9e1)", - "P->V[3232:3264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 98: Field Element(0x53b091ecda0ad195f6582e04c7cfdeda99708e986eb09b8f79be31da67bf0e7)", - "P->V[3264:3296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 99: Field Element(0x1b3c7de2c7b71bd6218963a7903f238a95516da905a899cc4d006718c0407df)", - "P->V[3296:3328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 100: Field Element(0x2c5bbf0fcc5cece4f9318d75813ff4bb4fb3463141c4836f637901c4cd26386)", - "P->V[3328:3360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 101: Field Element(0x6175c103748c3d2774bcfd6e07e21bba2709915268f103d59965d25741727dd)", - "P->V[3360:3392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 102: Field Element(0x37379d1a0ad1acba5526fc5748080f9ba8e3ddd8870dfecf7b3207dd61568ba)", - "P->V[3392:3424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 103: Field Element(0x6b6457e874b63f7f5671c77c02bf7210b1299bc0dbd61ad31eefda9902c7b55)", - "P->V[3424:3456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 104: Field Element(0x46c2ea4853423eb2d0c1d8343be251b5e29fb39ac4e907fa7919b4f72a5308e)", - "P->V[3456:3488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 105: Field Element(0x4bdb39c84440a3edb4fde423dc65c3a9326d416e6d15f4ccd126a268a8924f7)", - "P->V[3488:3520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 106: Field Element(0x7453dab14cbbf3e4e8073a48257f29b9a91ab55adde11377c8c01916042c55e)", - "P->V[3520:3552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 107: Field Element(0x5fdbb060e620d9abbbfba14b9526cec723cc69d19e92ed1b0a04e80b7549b5)", - "P->V[3552:3584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 108: Field Element(0x1d8133ea170614d400a1e3535b1ef59a539d6769ec5022bf092da57ef922d8d)", - "P->V[3584:3616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 109: Field Element(0x3c50d8e043a4eb8508b7345a3ced0c0db99d47f0670cbd3c3822413254276c7)", - "P->V[3616:3648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 110: Field Element(0x6693599552d246712b7ead4d4752fbfc66174f4a2539aa31df1db6a3a93e248)", - "P->V[3648:3680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 111: Field Element(0x6adc6507241c9fead673bf559de66cdd8bdff16d3a9102ada14761f02e511cd)", - "P->V[3680:3712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 112: Field Element(0x4e641ac887f9fa365f8a7d5d5a83eab4937ec9642bc39e842964b859e5e5a2e)", - "P->V[3712:3744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 113: Field Element(0x331ba87c137f648554e16481108f587b64653dc4ee2ff71c3b34b12f41b6857)", - "P->V[3744:3776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 114: Field Element(0x4584309b93e6b2e409fb53fefb2031ef5877fd09b3b5840dcd63458f936ceaa)", - "P->V[3776:3808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 115: Field Element(0x271c5f0a390db57ff58427db576aa9120c484ed3c7bec719ab7e8791d563545)", - "P->V[3808:3840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 116: Field Element(0x564a31cfc11b855c7ec8c1d4e486e35bb19c8317238b0e47a4e82d569fd7fab)", - "P->V[3840:3872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 117: Field Element(0x71efc5d67dbf449dda403675db66956772e5d52cf4517bc2405aa7017feb69e)", - "P->V[3872:3904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 118: Field Element(0x62fa265cbd71c865437a2193f1c5682b7c95bf515f21f532774f58cf30611c1)", - "P->V[3904:3936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 119: Field Element(0x6818629e16461fc4b3d56364c2e684330e3cc9cf49a0e4cd04c44f388131754)", - "P->V[3936:3968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 120: Field Element(0x13e213b6284c409347c13e7b37ba78824c52f02ee0ef8a788d2bfdb487ba367)", - "P->V[3968:4000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 121: Field Element(0x1900e548d567e5c3aa6410ae2be0a0e8bdf3f22d4be29fadde3c9e1576b7ab7)", - "P->V[4000:4032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 122: Field Element(0x187b8317d12a81e1a51a9ede5057321969444a173c54b6750ad0be4df714a8e)", - "P->V[4032:4064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 123: Field Element(0x6c3cba37143d0db0c58cf9dde0b5b6d3900d6ec29d67252c9412e902c07fe52)", - "P->V[4064:4096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 124: Field Element(0x7eeb0096dfd0cd568f4c194af8f8cdc98afd07723e0d4cbee341acb389763f0)", - "P->V[4096:4128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 125: Field Element(0x428049e72d0886c0afa6db58f485ce3ee615a1d38e7b9c730d93068d27a0227)", - "P->V[4128:4160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 126: Field Element(0xf8341d6c961f970c5c1d0d99a1344386e93b88731e6859e63b3267f7085a2e)", - "P->V[4160:4192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 127: Field Element(0x4cb872048d5074f8730504ec138a548fe7a16a51544f2e1ee68076cf262ef7a)", - "P->V[4192:4224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 128: Field Element(0xd74fc0ad0ca03ddd3be515a2207d987c65c46396090329fd096b2283612a05)", - "P->V[4224:4256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 129: Field Element(0x6b937173b74f7a7a347165c67b55593ba3c9f03da2782bbec0b5ad434cdeb66)", - "P->V[4256:4288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 130: Field Element(0x64c4f611bd9b0c3ff405d905a7af0d784c015d3d713290f1c7a77ef6b25cbf7)", - "P->V[4288:4320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 131: Field Element(0x7cf3c68561a342724f4fb0e42e3071c3a8702031e35b6a325e0d7babfde8589)", - "P->V[4320:4352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 132: Field Element(0x1f51645634d44f954c3e78b78c78ecdc13a24f07d10100eba060431c898781d)", - "P->V[4352:4384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 133: Field Element(0x3803b16a65eaed5887d8dfe7d53b55e7bb06f410b0f010cfdebfe47c12e318f)", - "P->V[4384:4416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 134: Field Element(0x370ce6a69fb8cee7070d08573609c35dc64193caaddd50f6b063acdd40bb134)", - "P->V[4416:4448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 135: Field Element(0x74938306500cf83e8133ddf8ca3042b4ee5484c8b9576475142a339e90fabe1)", - "P->V[4448:4480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 136: Field Element(0x2efcc013647c265a188c4129c05d073383a730990794f0ae1fde0465b25e95)", - "P->V[4480:4512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 137: Field Element(0xe582f5c365c73296bf5d8d455ee1eac7f9a4700b4c377ee769e7ec146604f3)", - "P->V[4512:4544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 138: Field Element(0x78b0fd660be37b9d495f4a148b1f8b4b1cd7dbe85da148900930cf381bdbe1a)", - "P->V[4544:4576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 139: Field Element(0x733de73a1966425d5bc652aa96e340665655986452c423a97c74da4acba1869)", - "P->V[4576:4608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 140: Field Element(0x5d9503618a9581a5414017a66da941dc35799178c98620f71ada56a0aaa8f2e)", - "P->V[4608:4640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 141: Field Element(0x81be718cdf316b63c3995fb852338d7c4506ec3074c6690bffcb726cb02168)", - "P->V[4640:4672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 142: Field Element(0x2053dacc44e2fda2e68fafca047666c8424efebe106587a43f5639f99b22963)", - "P->V[4672:4704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 143: Field Element(0x4843907c964b4c51178e2b145214116768b6f79bab3fc8df606337879cc1bb2)", - "P->V[4704:4736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 144: Field Element(0x1bd76887c3877f5a1a3b7d916028cfdcac089a2d26911a14efb40389d689f90)", - "P->V[4736:4768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 145: Field Element(0x31c96cae4c1ab701c56f34d3a19d27408a6f3e3dc1cce82e704c8d687c2b5c9)", - "P->V[4768:4800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 146: Field Element(0x618f2bb662de54a09e67094155c92c3c7822a2fa5fea4fc865f142b7c04937d)", - "P->V[4800:4832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 147: Field Element(0x241672412b8eb9c16d68cb5878adb622b952fb743cc52b9007228166ed38db9)", - "P->V[4832:4864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 148: Field Element(0x42adb2f36ebb34ba55eba680f0328a3d9b9f26c52fb4a31f22b3ad29afe5128)", - "P->V[4864:4896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 149: Field Element(0x786e6823bbd8f0e30f26e29093fd84921a3fc307ddb57a7a7a22a06f0814d9d)", - "P->V[4896:4928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 150: Field Element(0xf9a7cbf2b93ff44cc6cd230909d0c184b821f97a2db526f650dc6ab229600c)", - "P->V[4928:4960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 151: Field Element(0x493a4bfe7f5b900ab79c016c0a0dd4d3110fdddc02c7ebc00b8e4d2cfde7642)", - "P->V[4960:4992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 152: Field Element(0x15c1de3a18695102dd4963dfa550a29d5ad195befc0837cd7f6e1174fd9715d)", - "P->V[4992:5024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 153: Field Element(0x54a277913bd4be55a44ff67905c831a5178a7196c65b0be96aeaa802bb347d5)", - "P->V[5024:5056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 154: Field Element(0x74eaa3bfb9794ed709a310cbac841822c75648222f96a51483806771292384b)", - "P->V[5056:5088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 155: Field Element(0x332e208aa390235bd2b4c102b26a29c0892fb638c4e9ea6f06a559c56dcf4d6)", - "P->V[5088:5120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 156: Field Element(0x64b828b39122dd968858f45f513e74f68adc1165364fed5cf2de08e0dc54dc)", - "P->V[5120:5152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 157: Field Element(0x1b7a6ed4909538418d77c4593c3f401f9b9d3a4529be5c85854e87846d93ded)", - "P->V[5152:5184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 158: Field Element(0x3b5702d2cc7923067e023b2b9260513bb45822492744e1bf8e1c44976fda464)", - "P->V[5184:5216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 159: Field Element(0xed1827cb39dd2fbbe672524520a78714974b55cda24fb39f3dba6322980bd7)", - "P->V[5216:5248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 160: Field Element(0xb4ab1cc676ac05e8e5c342e8bd7bbd531f496f6b6b51b94a1f9159a82421cc)", - "P->V[5248:5280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 161: Field Element(0x302123caaf9b2fbd5d98ff4fb2d0f75e05616c5b645e0685e037f3d1ae6b256)", - "P->V[5280:5312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 162: Field Element(0x1effd3d19c503315c1e2cef1a881b392bf3f62a5522c0c256bca12684dbc6d1)", - "P->V[5312:5344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 163: Field Element(0x737a4eddfbb2fc8fbbe198091acef0185e62fc66bc124f17777ba473d9de6d9)", - "P->V[5344:5376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 164: Field Element(0x62802b8be8c02411f98256e35677aad06799314a9359fae017feab3e0cc1b0c)", - "P->V[5376:5408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 165: Field Element(0xce08588d2b1bc43948d45535b1a489a56e8a34cb4f2e778ef44367e84db28e)", - "P->V[5408:5440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 166: Field Element(0x74661f0647f12d8a544869bde59f771debf8687b8a12e4d27ad86ffe62365bf)", - "P->V[5440:5472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 167: Field Element(0x1e53646283f128036208559c6f65ba499e0b9cf5f87f195b85743fe8f3071ad)", - "P->V[5472:5504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 168: Field Element(0x23bd7324cb4f09d1342e3db4b0dcc415c6a7d429d08b83fdf7f030a118176b4)", - "P->V[5504:5536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 169: Field Element(0x5e9fcf9af41807fe45d5874f96f483fab8763b1f141536520168d5bf0760bb9)", - "P->V[5536:5568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 170: Field Element(0x2d4b3fc28163f433fa2c38dc0c465fd35ca30b568b15883c26acff8e4e54a3e)", - "P->V[5568:5600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 171: Field Element(0x2207ae5527510d2f9d2ff3966b99047cc85d1a478b3c5563084001c45858f9f)", - "P->V[5600:5632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 172: Field Element(0x4bb41ecbba6371d502507118c9dae58df81bfe8dfafc1bb1cb5a79b90d2c5c3)", - "P->V[5632:5664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 173: Field Element(0x7fe10892b40305fd69839bc9d77309ae2958c0ac420a98618305c3503e15f85)", - "P->V[5664:5696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 174: Field Element(0x178fb290024fc006255afd1febfccd0243d8cfcbb79e3cc7b0ef13dc12c9239)", - "P->V[5696:5728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 175: Field Element(0x3ab533fd2d19653a8dd8121637adddb0aeb9c0669c8650213002a57fa166056)", - "P->V[5728:5760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 176: Field Element(0x2e8b2031a7ac4cce97fd176240d4565ce2369bda59fd185cbb139a445d2e901)", - "P->V[5760:5792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 177: Field Element(0x617f2543ef4e4bc5d449ce0a93f560a3c27c0744a494895ec2ca06fe33a8457)", - "P->V[5792:5824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 178: Field Element(0x591107ebd69ebf5bcd9469ab03914d6775ec4f52be033c78a1986783161070a)", - "P->V[5824:5856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 179: Field Element(0x1f0e9d4a7029b858bdb879df436f33771b2a9bb5c9a6ab83149949cd962c423)", - "P->V[5856:5888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 180: Field Element(0x6eb0c11738d96b10315ab05a7ee0536107e3f33bbc84dec9df4fb19731a3cc9)", - "P->V[5888:5920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 181: Field Element(0xaff969b2ac0ab8698b2d0d7bed92ecce630fad38a6227e81537ed4d412984a)", - "P->V[5920:5952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 182: Field Element(0x600065c5452ec7846da8910f34992146ff94de2f5e1ce063d999994b46fb770)", - "P->V[5952:5984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 183: Field Element(0x46eb74f556f6906a8293721cf8f95e134dda1d951cbc3281b5135c6a57879e6)", - "P->V[5984:6016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 184: Field Element(0x3ea3b136f613a6a902972da96731bc35c3a43779ad8f4efb3e6b285cf5fec0e)", - "P->V[6016:6048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 185: Field Element(0x5e2a9e9a5d381a3ff44757dcb1743ba9f4ecc647e566f8dda6ed7fbda8d182)", - "P->V[6048:6080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 186: Field Element(0x3bce8676d6782d8f595696808c4fa8424167be38cde2c8072f3c1003d67f682)", - "P->V[6080:6112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 187: Field Element(0x2d53d2368de0b9f9437a53b5455d0b75497187827f20314547e4212a3b9ca93)", - "P->V[6112:6144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 188: Field Element(0x7f617b5332d6b4aa8ddda1aeed672decd1156d880563f9beab55d7a4d37a400)", - "P->V[6144:6176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 189: Field Element(0x2003c083637982deaec064631d2b2e841cbb3cfdc0321040123e95d37881f96)", - "P->V[6176:6208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 190: Field Element(0x1691dc90bc2ae9f27c997c9b245b476d34d46265d6e0fc54fdd339517482385)", - "P->V[6208:6240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 191: Field Element(0x5f637239fbd9d04cfaadeae850df6f0a722a0c06cad0475c735227cb095338f)", - "P->V[6240:6272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 192: Field Element(0x429f9f3de486d519591fec11dff96b384f259c4f7cc71c02b2e4acb82fd483a)", - "P->V[6272:6304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 193: Field Element(0x1bfa72f53c665c2280cc8b516255a692b0b8f2819cc42bcc8e8ccff2d77277e)", - "P->V[6304:6336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 194: Field Element(0x45d30a36a8a8a886af3a58fecdc2542818e6370be5219576d60b5dbf94a22eb)", - "P->V[6336:6368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 195: Field Element(0x3c4a790c2618efd6c2e78d387fe6dd74c13a10c75d622aaf77341668866dd05)", - "P->V[6368:6400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 196: Field Element(0x420bb1a95f19f60fac5c9ed00124f3b113ee056a64dc73575ff482aa29b4c3a)", - "P->V[6400:6432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 197: Field Element(0x2b9f733c24757a568b4b8d0ca27dcc94d169da74b03df80eb1e4fc68cd82180)", - "P->V[6432:6464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 198: Field Element(0x6f194b549e37e08754e062d311a9042cf79ea1e2d6c6327b3f01e541f89a070)", - "P->V[6464:6496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 199: Field Element(0xab6e22b41b43a9226cb079b7200fe95c91a60232bf1f5841a79570c418a4a0)", - "P->V[6496:6528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 200: Field Element(0x9992dd3dea18d6536abf98b4a235dbf7cf474e081cb24173f63d70d1ee14fb)", - "P->V[6528:6560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 201: Field Element(0xc938f292560f92b0389dbca6724af4346de48b41adb4ae9724db9e88789373)", - "P->V[6560:6592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 202: Field Element(0x69d9dba54d600be08d31f5fedd0cc1a49e72bf57b6d3d3a12a7160bad173973)", - "P->V[6592:6624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 203: Field Element(0x1584f2241891680da5b4c96879d7872cd3de28d25b28a2ca671df425de62412)", - "P->V[6624:6656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 204: Field Element(0x1be69bee2cd7f33fa3e38bed70097d90ea943f843827f2a694d35c5f4c419fc)", - "P->V[6656:6688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 205: Field Element(0x7b11dbd378e84184f0c49e7a11cedbc08b6780b885a68e5d0105959b01cda27)", - "P->V[6688:6720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 206: Field Element(0x311c9146d6fbd5d3b0d0497cc09eee4d0454242250dfd3c8861c3fe0dd9b72b)", - "P->V[6720:6752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 207: Field Element(0x256cf7ebe368074f9dbef8a09c10015fdae2be5ea4a5b0fd004d5810ee0e021)", - "P->V[6752:6784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 208: Field Element(0x7cadc3190e57c0cabd441e283dee63dfa19d429486fef76b13265d7fd37c0fd)", - "P->V[6784:6816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 209: Field Element(0x73d80dc050ecab2e6055cc220f2bfe9d8b4b0b4b998e74d091fdf4a1709d599)", - "P->V[6816:6848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 210: Field Element(0x29421a1841a0356954421151b94ddd830f1bc6e56e038f5539195bb9c7caed5)", - "P->V[6848:6880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 211: Field Element(0x782a10c64d6832c3f6d09d0a6053c5aee8feebcdfd0c72c9739bede9a0366dd)", - "P->V[6880:6912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 212: Field Element(0x14314fb5190be7db696ff12884b0f508733ee4eaee414fa7a46a2786ca3e835)", - "P->V[6912:6944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 213: Field Element(0x4027799b4a684f4e29fdd14fd91bac5899cd68a9da5c8fefb0439d0d9f06f3f)", - "P->V[6944:6976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 214: Field Element(0x19ce28a598ac9cb4e437945d1314424f9a6ff8205d9f957d32b94889b84bedb)", - "P->V[6976:7008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 215: Field Element(0x64e6e62610351ae2760033783987b111460cc378eb584c9e7392a5208ea2271)", - "P->V[7008:7040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 216: Field Element(0x8ae4962851a76c3c109abb3556d7ea279ed9b807111f335abf31909fff162)", - "P->V[7040:7072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 217: Field Element(0x32b28d7183391d973603f28f438b3e4d72211fb86e04b9d3ce57341e6faa366)", - "P->V[7072:7104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 218: Field Element(0x7225b4ede5e0691b92f41db3769b07119b699d14e09608cb73dd5c20d03460f)", - "P->V[7104:7136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 219: Field Element(0x2155e59e3871f2a87e04001168a168b898b48265fc17e9262027b0fda595645)", - "P->V[7136:7168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 220: Field Element(0x7726db2901ed09a0c6b4919ae590c223d0c6b0582f19c824398327c19919733)", - "P->V[7168:7200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 221: Field Element(0x67bbf5440c03d0487105f71eb31750fd9323c594f9f31e7d51f13dc61b50974)", - "P->V[7200:7232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 222: Field Element(0x7bc7720161a9c61a323c394abad8ac1432c12d697770849386a5a6d7960aaf5)", - "P->V[7232:7264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 223: Field Element(0x3452ec7a3c3db6a08353a7e50dfe9c5d9856be31d42ba9c71e6d3b475741d25)", - "P->V[7264:7296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 224: Field Element(0x593e862de74190e22c722684a23b7295096636f552cd87e9742028618db8afa)", - "P->V[7296:7328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 225: Field Element(0x2e0dd2a41cc2c808ebd9e368515aed477d061f8cc5fd9d04457fa0fcd75b61e)", - "P->V[7328:7360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 226: Field Element(0x2ede899e90e49ddae3a5ae01bd77e39ae2364d7c3dcd3a497fc695f398d8949)", - "P->V[7360:7392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 227: Field Element(0x528ae7dd867b86ca80498be5cbebabdadb6c1f9787fa62f064b6abadf5a6a01)", - "P->V[7392:7424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 228: Field Element(0x70f66f0d5a99fa7092b515bab451c14998c95d9966aec8f9f9847cf1caa5cf9)", - "P->V[7424:7456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 229: Field Element(0x11e1df86856942b39d5ca0c3333877d35da7ad5cdd75212229e916ab78c9aca)", - "P->V[7456:7488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 230: Field Element(0x612142624c8a9e1dbd603417824324e21cee7ce6f99b5dfec49bc97c787198e)", - "P->V[7488:7520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 231: Field Element(0x38aff0001773df07a671536e9320c9c54049cf2ae790c7bfb4ed0708c36d6e2)", - "P->V[7520:7552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 232: Field Element(0x1b4b344131832139540c11a3dd435f663d78b4777f46d013dfc9cd1a8bb61bb)", - "P->V[7552:7584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 233: Field Element(0x39fbe1af03705570ea5861cacc26fa9a6b4045e64e6b8ff804e7ac60471b20f)", - "P->V[7584:7616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 234: Field Element(0x698cfb6563563b67d027dc1e903408f2bf3f7f779082ccaf3e452ccf3e2553e)", - "P->V[7616:7648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 235: Field Element(0xc1fcb31455202c49dd4070e38648fcb4c6024d74b7940954d4eaf00fd059ee)", - "P->V[7648:7680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 236: Field Element(0x1fc4ef96615386096ff3ec59542660cad2b77922ca01a09f4328802229d9cec)", - "P->V[7680:7712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 237: Field Element(0x2263936cbb26125d98d1c6c9fe056a1d453b8e2abcba4625a5fa131b003f514)", - "P->V[7712:7744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 238: Field Element(0x3ee5fdb0e63f0deade264446647352cd62dc04613435488d49fa7656c9c6063)", - "P->V[7744:7776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 239: Field Element(0x6a70353ee50173eeff62386490d137382692638790163b294f8de4db60b78ca)", - "P->V[7776:7808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 240: Field Element(0x2ea4bda7a8eacecd40c258d73fe5b709e0cd50c45dd8aa18c2d2d351bb2e834)", - "P->V[7808:7840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 241: Field Element(0x2c40ce45bde96d8904bd1127e41ae63485e4671108d7b4e560bd8ea838ce5ac)", - "P->V[7840:7872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 242: Field Element(0x5c2972164665dcf2e3c960a46a0e587e41e9c886fe79148701e8eef59c25a97)", - "P->V[7872:7904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 243: Field Element(0x50aa333fb8899cdf0a8e0a556a73a37b1f5f19f90c70ee7a71f688d8007777)", - "P->V[7904:7936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 244: Field Element(0x1125da322f6de8be8285ed3b1f4fc5dd7b93b6f1629746e5ad6abf454d98465)", - "P->V[7936:7968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 245: Field Element(0xe9dcdfe832bce53819479ea4d8a77409d0a289634e6dda70810f3ffcf3d555)", - "P->V[7968:8000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 246: Field Element(0x81c5486f5eb51114ed3f59cacafbe484182bcdf1b4a07c3b7abb5b7d7aa9ae)", - "P->V[8000:8032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 247: Field Element(0x31cb0ac36d68c56f62a56afd54561c99d53648f7c6d40079f05ec67e9d31941)", - "P->V[8032:8064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 248: Field Element(0x4111eb312fc2d5cc831ab397ef73c7d1fae91fa778d1143aad2d13a4900342e)", - "P->V[8064:8096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 249: Field Element(0x7efcc95f349c917263baaf15da326ba876f3ae6d8d0d7943f35fbc1a0016d5f)", - "P->V[8096:8128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 250: Field Element(0x5d1743e96442653ff9c9552ab7f4c4d659214dc997654fe83944ba702ecae64)", - "P->V[8128:8160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 251: Field Element(0x21ba3e7116f79616e15a717bb33cc04309993bb9f6a1ace18a5c44f71c86567)", - "P->V[8160:8192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 252: Field Element(0x2c1de02efddddcaad507eafc8c75a1abd9e6107d02dc343dbd240cca97c8638)", - "P->V[8192:8224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 253: Field Element(0x6f58901ddc00965a389320bc4b88a8131fd10ed311acea35af86a19caef6fc7)", - "P->V[8224:8256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 254: Field Element(0x311ca8dbfe905f4b84b8e3933de975ff0d03984b2c02f5aaace522eb640b4b8)", - "P->V[8256:8288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 255: Field Element(0x732c5880cc26fd101c4be05b398581b2d943edcbbf4483bbd1ae57ce354e202)", - "P->V[8288:8320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 256: Field Element(0x131a55b1e8d8d256371a51791bb648fd643a3ee17ffbc8a1daf12975e170a41)", - "P->V[8320:8352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 257: Field Element(0xa7c0d8c27413d524c126163dbcb3b323b5df9e33c8d6c5b7fdadcce58abb0f)", - "P->V[8352:8384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 258: Field Element(0x63f3f8a933d3203cfb8da971a6ecb1b8c87e9daf80a249173236df67601000e)", - "P->V[8384:8416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 259: Field Element(0x552dca57ae8f8ab059633aaa4609d10db28676bdbd8c8e0d8436338d1507026)", - "P->V[8416:8448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 260: Field Element(0x519cd79eadc719d42dd15dba129d25865da223346af1264f7075623664cfb59)", - "P->V[8448:8480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 261: Field Element(0x20c868eb379e8be6bfb1905d8c512fd2acf9e3320910dc99507df23eb84b23a)", - "P->V[8480:8512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 262: Field Element(0x3a3081bdc707813a5b042bfc610baf166022cfba48387ea6cb4448a787622cb)", - "P->V[8512:8544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 263: Field Element(0x41798dfc340bdca16f2867da57b036d13c5211477e0e3cb0c4699f1e73594d5)", - "P->V[8544:8576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 264: Field Element(0xcd39dbabc8c8d7f1ab8c261ab2dc69007c270928eb47c3fbdd3dfca00a3773)", - "P->V[8576:8608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 265: Field Element(0x688044a84b08e09adc47e43254e227cfcf2b49d26410ffc5eaf18720ba3089a)", - "P->V[8608:8640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 266: Field Element(0x3ef370b4cf4d0ed91c70a3562ebb1cb1b16170cd3f7b4cdacf9ffd6eec3f76e)", - "P->V[8640:8672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 267: Field Element(0x20c9dad0cdec8d43d7a242d99fea964935c39c8ef2a4c45303cdd12faefd807)", - "P->V[8672:8704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 268: Field Element(0x3e75f6b0bc2120022ad395693260c7a32806f91436f310bc8b0a2be54773726)", - "P->V[8704:8736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 269: Field Element(0x7b6ce031b494d9977e58b06de2c0b5e7bfb45231363f22b3dd834b089519520)", - "P->V[8736:8768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 270: Field Element(0xa8964936539fba0707bdbab81c8a9359c642bb8638ce8a8b6fbe06e6595ad4)", - "P->V[8768:8800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 271: Field Element(0x4ca882a93543d8174ab7a98aa324fb7442dee7f9735e0583908cf73e0c4a573)", - "P->V[8800:8832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 272: Field Element(0x65086574699d1e2404f49fb5e100731279ba9c30db74a5e377e579a09d4a086)", - "P->V[8832:8864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 273: Field Element(0x35e6bc437c9c22909eb3b02e8b636bb26f345988d3fbbe5875a3628f138fa20)", - "P->V[8864:8896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 274: Field Element(0xb5fdc6979b0eb055c7f70d462db1963d9979f5ab2afd018b444974242bce85)", - "P->V[8896:8928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 275: Field Element(0x45ee5610001c2f74addfe55ea52a4a5650ceb911dc970aacfa15c93d36058fc)", - "P->V[8928:8960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 276: Field Element(0x2b1698810999c50c6d79ae2150e982c797e24eb75ef8800b3b89e0b9b945199)", - "P->V[8960:8992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 277: Field Element(0x4133330f1d6259c08d036ae920bf2a3405e27ea51e084aa3accaf658bb8f17d)", - "P->V[8992:9024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 278: Field Element(0x782d8b97d8200a6a8b937c03fa7f754d4ef1967d84f6889fafbc1dd31595aee)", - "P->V[9024:9056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 279: Field Element(0x1249abcde731af3edd5916e955be48da460d4d7a319ac598a19ede7bfecd19a)", - "P->V[9056:9088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 280: Field Element(0x413f13e9e3e725ed5a4b829399f8748544570c0ed67d2e030b9f6971bfea69)", - "P->V[9088:9120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 281: Field Element(0x67b2dd391d3b66c6778da7e0f4e7fa69a499eeda45fb674caf06e0c4580fb9e)", - "P->V[9120:9152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 282: Field Element(0xc49ef1a4e71fce86e4faca50a7ee494abb610c4579cc114d88fe0be13d68ed)", - "P->V[9152:9184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 283: Field Element(0x5b81bd82ee7045cb5759cd14faaa68f56f26dc6e127fb980209f877e30b54f4)", - "P->V[9184:9216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 284: Field Element(0x17ac3450ad8cc01fcb2068618a27705791878c495d11c128c9790d43ca48fbe)", - "P->V[9216:9248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 285: Field Element(0x3d12593f7246928c8202c0dd2d641a4fc89646d3c7cffbeb1d40d00b55fb8c9)", - "P->V[9248:9280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 286: Field Element(0x51c50b98852efc40f89260ee17ac264270c7fbed7edcb16482e1ca519ed4cf4)", - "P->V[9280:9312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 287: Field Element(0x2fd66ab499ba8182cb47da1bb68e5c2b334e66d77f79ebdcc510c452cb9eca2)", - "P->V[9312:9344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 288: Field Element(0x1aaad1326950f030ae21bde34c0cb2a1ca0cf1b3d5dfedc110e22e82bedc37d)", - "P->V[9344:9376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 289: Field Element(0x5b9422071a5ea86f5a93d04beccf7e9c351926b3dac8c981bb30b5cc7bb7b68)", - "P->V[9376:9408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 290: Field Element(0x660f1659646ccd0c62b8c2bf4e3dc5124fb163c89517dba710854abca1a490e)", - "P->V[9408:9440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 291: Field Element(0x4f342921a40ed61801474b3688fe3f63aea793648a32447f5d6945011b49289)", - "P->V[9440:9472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 292: Field Element(0x42e2020ff0727ece81b53434c6bd1038fb767fa8d9d698026f815c57b80b661)", - "P->V[9472:9504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 293: Field Element(0x3029c13f3005f04a67e0abe5548254d8ad6614d1535bd7e054c1bf031dff9ce)", - "P->V[9504:9536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 294: Field Element(0x2cd1a1ec3aa5d59a2bc137054979394accff146366a8544072332baaecfe03)", - "P->V[9536:9568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 295: Field Element(0x2dfbd7577bddf56e6cb4f137f014b56efa5884b3b27d0ad26690f5940573936)", - "P->V[9568:9600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 296: Field Element(0x189a5ca63220c10acd44c2974a33a44ef4b51de6ff45a21a2bf3c0d137d90fa)", - "P->V[9600:9632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 297: Field Element(0x8bc3901201c0e2b94158c9f07c2ea7401965c05c3b0eaa81aca47e52ca933)", - "P->V[9632:9664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 298: Field Element(0x5c21346ddbdaefe760fa578efedeed594eb3bb2b8fa51c1ee52676cbfd6b675)", - "P->V[9664:9696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 299: Field Element(0x5f61a198cfb663072fc3a3cdc8e291db297bc0bc713b52dc4a6cc9860fde7)", - "P->V[9696:9728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 300: Field Element(0x52d18d10f08595a96b2c33d8e6b43941bc039f9268390096c33bfad15178c63)", - "P->V[9728:9760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 301: Field Element(0x14023c0c1797d8d4ff3cb51a18a2caf26fd1d03df0d51d14c22a9f3e7c7a642)", - "P->V[9760:9792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 302: Field Element(0x655a974a2664728e4843d87c76acfa440325507b5f52c441469dbf162191cee)", - "P->V[9792:9824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 303: Field Element(0x46bbc6f381dcb5a73ff8f69da57b8d4cfb40dab5303d49b9a4d9bb57d2d362b)", - "P->V[9824:9856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 304: Field Element(0x76bc6582764c470656c1b590e896ab5981fd407870b24968f6bb5f1574dfeeb)", - "P->V[9856:9888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 305: Field Element(0x465f62196f1c37baf4dc54c76e65d4bffb720e536ce7de7c94b97e349ab1bc6)", - "P->V[9888:9920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 306: Field Element(0x3429f3c1f8ae03d348c1dc1bb36122b5ca2470f55b75bde00d34b1e028e769e)", - "P->V[9920:9952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 307: Field Element(0x7b0fd1679084cdd55a022ba487e1ca5f25b0e1cbe5e6375d0706393c892ff1f)", - "P->V[9952:9984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 308: Field Element(0x68c2dbdbd0932fd7f5cc4650611979914226812e69fc0791994947930cd675d)", - "P->V[9984:10016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 309: Field Element(0x34db97c75d12cc2163aeab4315bb388d41a133f8b458b9fcbe6ffbe60697b6)", - "P->V[10016:10048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 310: Field Element(0x18a9a35238893ef0082fbdc593903c41076cba8f53f4082446a57b6a87faa7c)", - "P->V[10048:10080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 311: Field Element(0x6d3bb26e2d3cb8fe4bdf2476f3a3d5365d75d11a46a79a52535e248d68bbccd)", - "P->V[10080:10112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 312: Field Element(0x13c2210d370f50bac5c7c53ef4a1421fa443fb29d6a5b12bad3a31049a0cd80)", - "P->V[10112:10144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 313: Field Element(0xb0247cff0b5cd7cb29b7e6dc49fe056ebba1a1645945420b09fbdc46fc9d74)", - "P->V[10144:10176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 314: Field Element(0x603a3a10de56991a1f88262ef1a5855e871dfbf8226d616ac34834dd97a95e1)", - "P->V[10176:10208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 315: Field Element(0x20334998c8fcfee123358bf254a00cc3bd4f8cbfe6200d9c49cc95782e27486)", - "P->V[10208:10240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 316: Field Element(0x6263d48e9ad905b90648f3bb4427da518795b93545da67299fcb3e36dcca0f)", - "P->V[10240:10272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 317: Field Element(0x7292f98894842cdd7f60d0a1abe38d0b945bba1158d35632179fa187065e969)", - "P->V[10272:10304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 318: Field Element(0x27075eebae1cebbb169e41fe2b78c8a01fc35584bd66bfa364c5099da93e5f9)", - "P->V[10304:10336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 319: Field Element(0x2c3ff6021cb0b50976ddfc57e6baef33006b78122240e5856fc7540847afdd5)", - "P->V[10336:10368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 320: Field Element(0x41f987d1da11803964637cc63288b608b2baa37032e4fad616024b683d31738)", - "P->V[10368:10400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 321: Field Element(0x723b000e9e7bb2c6dba3fe4a299a48e6f53e77312f6101cca67b52065f565b3)", - "P->V[10400:10432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 322: Field Element(0x5509ea11baf5820c972bd32db90bce94c8d8d1f62cbfb3e9ac60144612e8e95)", - "P->V[10432:10464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 323: Field Element(0x1e0e0cd0706bb624ac7bf84723090c119714f5b41ac1f9e2ea0a55f01c7659b)", - "P->V[10464:10496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 324: Field Element(0x3c6d2286bc72801c2228ca4a4836d7076634a8deb00b054e38e258585154673)", - "P->V[10496:10528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 325: Field Element(0x2a611f57ff8541ec12dc9029d13ab1a5d7d86fd8af89dd31a2a135c58b0f950)", - "P->V[10528:10560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 326: Field Element(0x6b84b6d8e5a5fbfeef53ef02bcd1090d667ccfbb2e261cae9fb8ca15c3cf0b)", - "P->V[10560:10592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 327: Field Element(0x2125ea8cdffe0fbd28455968e27198711aceb4f32cb4461a18bb1cd28596d85)", - "P->V[10592:10624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 328: Field Element(0x225eb2d6930ab7c5e7f785e2243bc61d2e363b0ee0e1e40cf64dc8050f87e7c)", - "P->V[10624:10656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 329: Field Element(0xefe502835028a0ba75ea313d7fe03fde9df58e593669473b301a266a2c61aa)", - "P->V[10656:10688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 330: Field Element(0x28808f991ceac1a49d8397488f223da747abb0ec1cc13fb16585156ed0316a2)", - "P->V[10688:10720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 331: Field Element(0x14663f97824ea76b792eec6f669821801b053096af804288b6cf5b0614aad40)", - "P->V[10720:10752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 332: Field Element(0x34b1e8d3235e2afc7430e80c0a96283602128d7c513525bc98a12d1c1b86fa9)", - "P->V[10752:10784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 333: Field Element(0x3567f6581be250ad47474abda54be552e238601b867627a6873a26f2c63b58e)", - "P->V[10784:10816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 334: Field Element(0x61b912abfd2c384517fdaa54c8a55a3dd3a60be1f463583fb7a847c4aef4a62)", - "P->V[10816:10848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 335: Field Element(0x5a7f4728ba948e26959dd5cf686ec63f6aa396291e6b4d99c96e969d3d13973)", - "P->V[10848:10880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 336: Field Element(0x2d373a9d7df6e11b4c25c5d657e34fe985805fa423f691d502f9e27cdbae4c4)", - "P->V[10880:10912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 337: Field Element(0x5ed729a904c52a80320c283cdee8bc5d09b58aa9558dd3726d3dfd2d42b5b10)", - "P->V[10912:10944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 338: Field Element(0x4d5b736efd2d787bf073b92c08ceddc714e3caac04bae1e6a87240ff34902fd)", - "P->V[10944:10976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 339: Field Element(0x2b77cf002efab56b00fad50b026982bf0a14b62f1b96d203152ebeb98301bca)", - "P->V[10976:11008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 340: Field Element(0x50f5b1d670f7e668008ecfaa769e38ae07d82a110448b8052f24bf067c51c91)", - "P->V[11008:11040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 341: Field Element(0x5baf66546a78d421e697c5e011666939a1f6c2d3f9ba030e66bc1d9a82d6cc7)", - "P->V[11040:11072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 342: Field Element(0x364f1e9708755325af857a22edad1f4f33de92f789d299ea979482b7e3d88ca)", - "P->V[11072:11104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 343: Field Element(0x51e5dcce86317028d2e1c51bba011871fb91d047e92d52a2687e63feeb6da4f)", - "P->V[11104:11136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 344: Field Element(0x728049d2c33891e556411872daf1b3ffb61b6f38c1ba1105175c4d71a50a466)", - "P->V[11136:11168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 345: Field Element(0x54b7886e2cef29d8ef47a3961db132e8e9a2072836600a420c0d66e1b66eea2)", - "P->V[11168:11200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 346: Field Element(0x67d62f8d9211de180b37704062a10b10d9a32bf28825af1047ddd8f9fee28a4)", - "P->V[11200:11232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 347: Field Element(0x59d91491d2714122fa5936cd506bf4d8a5fdbd288fa1a318c5618ea32f05a27)", - "P->V[11232:11264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 348: Field Element(0x6b2f6b924464650004fa812a76525201a71ecbd9b23f98003f58217a5b9ee9c)", - "P->V[11264:11296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 349: Field Element(0x4bf35444ff016c873bec8a168e8c183582ca7f04205a8b3e0d3f76b45f257a8)", - "P->V[11296:11328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 350: Field Element(0x3460292e07ae793967e15cb9f2ed30a41b0e059766fd67aa44a960a12a5aca8)", - "P->V[11328:11360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 351: Field Element(0x1a8213d13aead480f726364f80abe9f47913d84636af67c12b212ecffff193a)", - "P->V[11360:11392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 352: Field Element(0x90031e9b6d2e1246e044ae1973176e61b50cc75b1ce8d6d4601030ea35308f)", - "P->V[11392:11424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 353: Field Element(0x6e4e5042d98ca2bce7c2f636ecfc483d7dc999b0ad6411985822e353645ef74)", - "P->V[11424:11456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 354: Field Element(0x3450bb3664650a58404f327ce874c548a26379ff79cb32b40fd6928f42c1387)", - "P->V[11456:11488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 355: Field Element(0x49cae3199a01f9843206f46e62cd40f53dd997b1365e4c966c643371a88baf2)", - "P->V[11488:11520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 356: Field Element(0x3779efcb7b74e46815d4981321a7d89c0a1b2fcb7e3130942c2837e6ea0a5ae)", - "P->V[11520:11552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 357: Field Element(0xddbd7d6d2a5ebe7570ee905fa2f27b1131bad533e72e3554720885680959a4)", - "P->V[11552:11584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 358: Field Element(0x9d1d93bdc55a7fa24f9b2dbbbd8db5cbf0d0a0f2c670419dad20ee787e43f6)", - "P->V[11584:11616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 359: Field Element(0x407949c5fab6c81e75f1e5736e72494dcd36a503db78af5422d0a5ea49abe26)", - "P->V[11616:11648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 360: Field Element(0x2b6313bb13412351f2c8f1102ad0a63bdf875f3245aee36667f906469b7848e)", - "P->V[11648:11680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 361: Field Element(0x16092dbc2ea29c8ca84940278d3b6556732a00c3368659683c44a70abee1388)", - "P->V[11680:11712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 362: Field Element(0x5d0b0fc3ea4288a18e3fd5373346333e40faa9f39d8093df5b6319a35cba616)", - "P->V[11712:11744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 363: Field Element(0x272e0e2fc7ddec436467951ad4df037c366b7a564acce6ffb006cbfeaa73ee3)", - "P->V[11744:11776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 364: Field Element(0x28af1fd74ef55dcd9995f8c82f2cf31283c4085ca54dc273311860d1d026b81)", - "P->V[11776:11808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 365: Field Element(0x62e1cecb1b33f9940b24ec51919ec491384e1eb9c81f4ae6e9479e65c79079d)", - "P->V[11808:11840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 366: Field Element(0x735b7e9a07da973bc119c0f41f9a43568060b12e47ea62b8a7942b505e22f19)", - "P->V[11840:11872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 367: Field Element(0x58fb4b222350b1564b50479be66817fe8d5d45b0c7e5d3f57657921f9c961eb)", - "P->V[11872:11904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 368: Field Element(0x7f038635c03423e17de43f2a4f4e8605be76adca5f6857fa9f41e7b17a67c47)", - "P->V[11904:11936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 369: Field Element(0x32cef041ad5205a47ab58b702b5179bba4513f4166a9edc5347921ee9afd1e)", - "P->V[11936:11968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 370: Field Element(0x19de1aa5a5487641ddccceb892ca8e49c69053276a267bfdc78cf6074fbeb6a)", - "P->V[11968:12000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 371: Field Element(0x3e0a5a367d9e5fadead2f268e5d18408b1063119e0ac78d3383e4a3fb3158a7)", - "P->V[12000:12032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 372: Field Element(0x413fe260671a24c1a71c1ddfd2f0a2cce2c5b38eb87b9ce8321a0c159bcc8e7)", - "P->V[12032:12064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 373: Field Element(0x3d5a1b79f91b2caafd33eb5734493f2f808b39c2ed42f756bc9c55e7b855ec1)", - "P->V[12064:12096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 374: Field Element(0x56460a101345b988d5c0841ffd225e7bf88bf3e0ba5938b76f5be46d6880772)", - "P->V[12096:12128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 375: Field Element(0x11a7462e507089669ab7b679e39c75eb0658747435788ae7ee3a62d1542d41d)", - "P->V[12128:12160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 376: Field Element(0x29662ee014a8b3474736baa1a719101d28385d40fe70759fafba74c758d43d2)", - "P->V[12160:12192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 377: Field Element(0x478df93147a05ed9a363085ebaf8e4d2a15295b42df70cae2683d617bbc0e1d)", - "P->V[12192:12224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 378: Field Element(0x7119d51b2fa280075ee2f49a8a5837f22f7580c58cdcdbf1923c743e9934942)", - "P->V[12224:12256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 379: Field Element(0x25a21b61e53edd1a451a8a9a9e4fda05889f54196c3b12a4dce23f44a8d3856)", - "P->V[12256:12288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 380: Field Element(0x54b29c12bf83c7ef8b321425ad1cfc6b9552b529be3e91dec4b19c1128a4f86)", - "P->V[12288:12320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 381: Field Element(0x14547b5d4ad54b974949cc903adf539f92249106f62b493fee05fcea467c077)", - "P->V[12320:12352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 382: Field Element(0x65ab43e555af4b22b841bd8f8d16629401eedf861ecfce812370971bf300d66)", - "P->V[12352:12384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 383: Field Element(0x114f55b5e6405b4d82db7b13606dfae07727781a862bc0c12f5af50bf64de4b)", - "P->V[12384:12416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 384: Field Element(0x2e349f888df6f9df8bc8c9c0b7fb51481fcf3710b5ff5d8ed49e803f8e7e337)", - "P->V[12416:12448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 385: Field Element(0x4afee1db80c795045864ba8f30dc9176338228db7b4cfa1305af8191c1a4e02)", - "P->V[12448:12480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 386: Field Element(0x47476c1922d8c87a4c8e16ae21fbe24fb7181d3861a49a1f9ad1a2c2fdf76b1)", - "P->V[12480:12512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 387: Field Element(0x25f2b0cb58f67157cf5786b5728fafc5cdf78d95816c51f5bbc40e15a4e8e29)", - "P->V[12512:12544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 388: Field Element(0x7e37d05d319fddb8880ceca3e3db9e1760fa31660dabdeadd061d167b2a4cde)", - "P->V[12544:12576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 389: Field Element(0x106b6352955ea58d5a066e8f7592d10643d47f31273d8fe7ced563d0610be95)", - "P->V[12576:12608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 390: Field Element(0x6c36050e1c8a36bea30b6124bea0e91002220cbdbb01a5ba36aef466fe7f6f)", - "P->V[12608:12640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 391: Field Element(0x2a24f343cf8ccee8fc16679a8992296a2e4114e3940e258845703b0b0fe7262)", - "P->V[12640:12672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 392: Field Element(0x5bd8e16b6bdada4380727cf0cd60892146fbb2640657dc0c3fdec8d1717daf1)", - "P->V[12672:12704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 393: Field Element(0x42377e46416300de157d36af6a23427ee8c51fbd9b230629857de0fe7f34616)", - "P->V[12704:12736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 394: Field Element(0x730c562dbfbc529e735e530737ccee40ef617d509964151a00d3f512501a1ba)", - "P->V[12736:12768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 395: Field Element(0x519da37d975d40421d0701fe29e43711ab791d7f0df7e5e704113a3bc2b77e6)", - "P->V[12768:12800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 396: Field Element(0xba3e0c33ebcbf70ad885bc750e72ebe543efed405fffd3e11ff32db3d74e47)", - "P->V[12800:12832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 397: Field Element(0x7cad7d103623ff9d35cd57a3cb6fa4ff64d3e31dfc39f467529e8bf2a10a969)", - "P->V[12832:12864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 398: Field Element(0x3b233bff4db9c285c1c80a3eeb9baaf16461472506a214b8e83c145999a97ec)", - "P->V[12864:12896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 399: Field Element(0x778b1931d53f42ed77940b959e4b1f64c7a56aa4168a17636507a58cdd5e5bf)", - "P->V[12896:12928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 400: Field Element(0x232c21fe5d9b2b1df99af2b4bb453c29e31fd3c8b46f1880a42e9b1e4667d1f)", - "P->V[12928:12960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 401: Field Element(0x60d11b8e70ffc080b5e077ebf1f9a727642aa982abcf165488442c3b1b4c9a2)", - "P->V[12960:12992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 402: Field Element(0x4561dd7d977262389c42fd09acbaa074329428d8f6fd13576428bc8e9f0bf60)", - "P->V[12992:13024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 403: Field Element(0x5d0a3398f7c0a4a2ddb21c31dc82cf997c7bf802b76526c6b17447c11c5498b)", - "P->V[13024:13056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 404: Field Element(0xf11b4b123fbb011e951ce999e4903f7f6e31e42bf8ecd0885337f674031aa5)", - "P->V[13056:13088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 405: Field Element(0x5ec656ad2029084f16d3c0391d191f30f4542d4efe273b9d9c2dfad9b9e3215)", - "P->V[13088:13120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 406: Field Element(0x3c78ff0d0f8e8a6bb6a3f8ce319803c86d7c23f4e1eaafa9079456aa30aacae)", - "P->V[13120:13152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 407: Field Element(0x244af1c43c8e108ab55a14afd313fdaae641bb5ff8fd3a326a2c985875b4ba6)", - "P->V[13152:13184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 408: Field Element(0x464151b94c64f347fc5bd525f655a3af6d5386c0669b4e68625039f91686bb)", - "P->V[13184:13216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 409: Field Element(0x5d907859c1bbb107a367bea719e99b6e0f1d964fc54ceadc8e63c28525a87b4)", - "P->V[13216:13248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 410: Field Element(0xf77f7b6e41db729ae8abd7d99276a7f6f218676e736457109b84852320a1ad)", - "P->V[13248:13280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 411: Field Element(0x6eae02338e4727e4b2be21bdcc4fc4071ece54e52f8d49ed44f40ad84396a07)", - "P->V[13280:13312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 412: Field Element(0x76c1234ca081c9eba243bc4cd65df5c75c4af337ac9d8352b6bb0fe9750bc24)", - "P->V[13312:13344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 413: Field Element(0x4e566c81ccf4d40275aba33b2713ebc219000e23285b293b7515e2b4d74b4d2)", - "P->V[13344:13376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 414: Field Element(0x33c32d8605ed13024747448c5d75a7e49ef3857e73d83177470455233f72312)", - "P->V[13376:13408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 415: Field Element(0x5a3e50eadd36f317f35def5cc4325943c6a9be10a72ebf94a752708650587e0)", - "P->V[13408:13440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 416: Field Element(0x56836de97d11c1f499702417450168762ee4c5830eeed6bb693bc8e0a355bd9)", - "P->V[13440:13472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 417: Field Element(0x71c24dcee2e585bd80afd15ce14d7f8d2b57ef5194d6ce4a80f691ec72da595)", - "P->V[13472:13504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 418: Field Element(0x1976c460a6aed4147cc632cce9775024dea5650b600a0de5c08d0178b967254)", - "P->V[13504:13536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 419: Field Element(0x2421822f2b88f7f055423a52d3dacb98fc81bdc3c2e8340e204cc8edcd65e34)", - "P->V[13536:13568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 420: Field Element(0x2f19e2caa30bdb70cd19b6438efec2c59a2d844bf762712a43a373d77dc378f)", - "P->V[13568:13600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 421: Field Element(0x3472907c2efd3ecd74d4bcf2487ab867cafa82282d7625a594509e2942c46e3)", - "P->V[13600:13632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 422: Field Element(0x60fb46754ca74d6a4deb274b39f55e569477d8efb56173f7d836d14570570dc)", - "P->V[13632:13664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 423: Field Element(0x749960e05089344a3db7914f2053e49870f9a09e36a05943b9c4690aab089a6)", - "P->V[13664:13696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 424: Field Element(0x1d9ea2ae355715589a5d4c57cc4fba7c614107543e59069b13fd0153d703c3e)", - "P->V[13696:13728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 425: Field Element(0x4d191a98bdc2d8e4ddaa5345a367e86f1841fb54c8b71e0f3ed406050ff6a30)", - "P->V[13728:13760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 426: Field Element(0x69842314338c62da55ed2a9082bec86ac6520f5447caab958a619b48e081672)", - "P->V[13760:13792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 427: Field Element(0x3ea31b405ce9320aeab21f795701744e6a05c21682c78f24efe9dcac09b21f8)", - "P->V[13792:13824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 428: Field Element(0x7a829c4a6d1783d45ddd081758e6c4f96d4a7fa12f1c55dfd364e860b8d454d)", - "P->V[13824:13856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 429: Field Element(0x59a66c2cf7e1f603d554f3f1382ba388e17bab336f24be6311aec4453130e0e)", - "P->V[13856:13888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 430: Field Element(0x234b8c9520858a4cc4f8169877533703576b9d6a5c0b65bcd1a400827349c1e)", - "P->V[13888:13920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 431: Field Element(0x27dc5b3fcd5ae946bae8b77d5e346eb7c7d7e7201f441385febbf3bbc54bb46)", - "P->V[13920:13952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 432: Field Element(0x3311baebdc21b046e4aa08b6d958ac5452053b3c6e0491742d2b99b42fc0b95)", - "P->V[13952:13984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 433: Field Element(0x7b62200e97012d049176ff501a1fd1cf4a64a4793820ee01483208dd6d91847)", - "P->V[13984:14016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 434: Field Element(0x38839e953f8f67b620026f23c03f38ebe4cb47c257a075e772afa0a1eb0fe4e)", - "P->V[14016:14048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 435: Field Element(0x159a7c2dbb4146a91a27ab41aaf9dd539d4883e5463e0c0132b9f0f6b4925c3)", - "P->V[14048:14080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 436: Field Element(0x183cb945750465ee1aa24066c5e1e14b0d88d6a8d08b36954fa1ba54cd9fc9d)", - "P->V[14080:14112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 437: Field Element(0xa375cd42b6359d38c2ffc44508ddc9f7006b37f59ef1a68bfc1e80d87e9715)", - "P->V[14112:14144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 438: Field Element(0x11589f8f9e3ef183bb1a56a8c472ecfcbca408a2b2a3806a30ac93c4d4f23d3)", - "P->V[14144:14176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 439: Field Element(0x77e1704b8115335939090528853136248c95664eb824b7298fe0b6c500b07cf)", - "P->V[14176:14208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 440: Field Element(0x68803b1610f5479c2f5f2df13e5108bec9bd228d24b5c5f5ab16b5f38b87ed5)", - "P->V[14208:14240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 441: Field Element(0x31739dc708c91b116f14b1730d2616ec99291e47c5d2ba37971aa329afe936d)", - "P->V[14240:14272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 442: Field Element(0x3047c1341e0d2852d323c08c9cb77b238703f1cd27630f92151b8530330600b)", - "P->V[14272:14304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 443: Field Element(0x7e37e8c3afc374653fd69e7849ddfaf6281f51929503b1a124083a8c5bcd8f9)", - "P->V[14304:14336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 444: Field Element(0x6caa19c0f8d1d93ce8b8d4db288b657bf9765405c119beea2afa51a6254535b)", - "P->V[14336:14368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 445: Field Element(0x3ab366c10bc39d799474c58c393b4ccec9bf9171986114169425e275884c9e9)", - "P->V[14368:14400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 446: Field Element(0x5b55a483be84686f6dd51727728d0ee50094372f754dc45f9207d9741da7bbb)", - "P->V[14400:14432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 447: Field Element(0x525625768fe7c68ca680dfc7906b9be38977b353ff21c16fbe640123c42cb6c)", - "P->V[14432:14464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 448: Field Element(0x5cb99ab23140f64d0ec61a1b769a6373b0412d81f9ae1fb139d4d8a880d0446)", - "P->V[14464:14496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 449: Field Element(0x71a6148e41ff4593fc25da17bcaf20bdda955e0065b9b916c5fb1e8effc67aa)", - "P->V[14496:14528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 450: Field Element(0x3288cc46540a7fef7b226fa2b43c6d049ec5b725e7dea3da8ffdd3b7b02cf66)", - "P->V[14528:14560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 451: Field Element(0x31ddf6bca504d0dfa66c90da313b4f4738582d17e7f0838e0c1c5e21a840976)", - "P->V[14560:14592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 452: Field Element(0x1a6504fe8749e006aace8bcac43fb3839b1e6a368a7e6811f4911f5ef34e44d)", - "P->V[14592:14624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 453: Field Element(0x41038432af0da15baebef8c39a868d2ae54a35a9ea04f3473b7d3535840b65f)", - "P->V[14624:14656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 454: Field Element(0x606a4871ee7c34fe911181e51265c420fdf99f35628f7aa0c7f9d30bf2d816b)", - "P->V[14656:14688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 455: Field Element(0x54a3e41045f676f0cd07a5a69c5a9ecd010eb126b0959611d71fa6f28f7ca75)", - "P->V[14688:14720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 456: Field Element(0x16a65bac7e4daee923c2b246d7ade265df813bf702925b56999161bea728360)", - "P->V[14720:14752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 457: Field Element(0x651141412faa4be06c34cced9b90d8551a95ed283b423bfcbdb5b82b55e0970)", - "P->V[14752:14784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 458: Field Element(0x443ad7d10b6ac0f962c599e761b9ea841dac12b61f5433cabb3f4453094d9ba)", - "P->V[14784:14816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 459: Field Element(0xd15fef781c22b49bdba0134ca9147ce45c490f7d07ae372e756fa248cd3731)", - "P->V[14816:14848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 460: Field Element(0x1a32f1bb9ee88a53a7d8b836e84204d40c3dd11143115bc69bb0f6480b117fb)", - "P->V[14848:14880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 461: Field Element(0x7439e803c8203b4a62eb2310f4963a82b0d911ebb664bcd348014e5092e8eb5)", - "P->V[14880:14912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 462: Field Element(0x180737152033f27ea44333f973f675e271b317b3f67a798d52ce31d1b7ce5)", - "P->V[14912:14944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 463: Field Element(0x354a6346c23fa1f4d3c4ab4cc535fb5cfe9cfc8a8f3ccbb1a49240a03e02729)", - "P->V[14944:14976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 464: Field Element(0x874365ceb1adb8e5aa9c953418f9a28b7b12ea28bc8b85accdddc6edc608e2)", - "P->V[14976:15008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 465: Field Element(0x5cd8e1acc6c3d67c5e60d45c1dc113fb828d314ddee59afb4032f29f25f4745)", - "P->V[15008:15040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 466: Field Element(0x69887de7649864fe481e9d57ac2ec1c10ca81339ca143f386a37ca538445b83)", - "P->V[15040:15072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 467: Field Element(0xf7e668cf92b675e5dfed3e819c80074ae40675b61fccf537152798949b5f79)", - "P->V[15072:15104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 468: Field Element(0x2f5fdce48894eaaeb33f18d593f850ed0a67ff90d4b7e04770baa3ce635f02c)", - "P->V[15104:15136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 469: Field Element(0x3b280c59d32050ec3a70ac99750c03daf517d43f49fb94ce9c95d82bc5c692)", - "P->V[15136:15168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 470: Field Element(0x7e85192044fc62af9f173c4b453054adbd70533839266e062c682e40e71f050)", - "P->V[15168:15200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 471: Field Element(0x1220a92aa61bfd3b4b7c6b9fd2aab82edfd4b557c4cb68312c1951d74e9528a)", - "P->V[15200:15232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 472: Field Element(0x28b4dcf4f66457ab897bdbfce7f0ce5f92cfc669c9508329d024c26a181abf0)", - "P->V[15232:15264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 473: Field Element(0x3af5eac21eb3226baee78c8a14d17827886acdc79d29a19b5d1e2083347838)", - "P->V[15264:15296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 474: Field Element(0x422400e053ecd102004dbb658446327614634dad5392c89edcf7f584ff59fcf)", - "P->V[15296:15328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 475: Field Element(0x6439d3645ba95dc304cc0580398cf8c98ce4c9703bbd0dcce847cb181bcf7ec)", - "P->V[15328:15360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 476: Field Element(0x629ebed569589ca820fb279cffca7f02bb5ee5fc607b3b6a70e659247bb318f)", - "P->V[15360:15392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 477: Field Element(0x7cc65b3cdee2763f4ee43b6026a9ac90044a42075c77140ad1ad3c6e06ff78d)", - "P->V[15392:15424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 478: Field Element(0x5f323dcd1c014295d26ccbf8c93819d251315adcdf84d4edbc3179fce517e2d)", - "P->V[15424:15456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 479: Field Element(0x2cef34facd798632471ab778465ca72980a025ef83c8a942a16d77be2affbfd)", - "P->V[15456:15488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 480: Field Element(0x79283c850c8ce9832c111e43a1ec8a7abb678f9a6a448e832da2257f80ca8f1)", - "P->V[15488:15520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 481: Field Element(0x6bbafc9b2e23f2bb37dac50e01551e8cd1d2f690896e366847b4d1acf181106)", - "P->V[15520:15552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 482: Field Element(0xe42089a6c510893015916ac0fc1226fa709fe93d3ccd47ed4923b3fc2a28e6)", - "P->V[15552:15584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 483: Field Element(0x7b76a4a87b8bca6342ed5bbb573b7fa1bc3f760796d38b6f7848b427088d702)", - "P->V[15584:15616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 484: Field Element(0x60b2fccef859f68eb168269674a277854dfe3ab0bbdd6fa3eb171f20291c53f)", - "P->V[15616:15648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 485: Field Element(0x7d4f9af36daeb441ef676bc8294459dcd5c3355b235e200852dbfa4c7416b18)", - "P->V[15648:15680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 486: Field Element(0x469783a91329cc4992463dcade85b5423afa11ef652a88a98843cd099b94c)", - "P->V[15680:15712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 487: Field Element(0x32c7386041c3ce0802d81000906b94cdedb6c2363f3081f5a377b2ade4f696)", - "P->V[15712:15744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 488: Field Element(0xb20c9f2e280cb82ebdbb3b9f6310c0c4bae039c0bc8226a465408f52802741)", - "P->V[15744:15776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 489: Field Element(0x165f27e67bc8707030e10fe01d16138460ca10f520e016974b80cf1dd9aea02)", - "P->V[15776:15808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 490: Field Element(0x761c52085ff85fe064f0a4eab8b48274439cac0d6d21fb7f85e2e1d2327555e)", - "P->V[15808:15840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 491: Field Element(0x4b3ec7dfdd40bb6cb5a8dfb06b0d38305f4053884fb29a2637e6bb11a830ec8)", - "P->V[15840:15872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 492: Field Element(0x21c76801c9a182fd181df892a2dbb268a372df957f4afe0f8a1eca6117a1a91)", - "P->V[15872:15904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 493: Field Element(0x594ed3bf35d8c1e25c6b006e7b23ad85f4635c0b2cf1d936e318ae87b8fcce8)", - "P->V[15904:15936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 494: Field Element(0x20f4debcd7cd14182db04decfa23fcde202886b2dd76857cb7e0671a7ca4940)", - "P->V[15936:15968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 495: Field Element(0x7f7d87acbe7569979b5dd4f164d4686f6f671fd999399b4b3c7f5beb57f327e)", - "P->V[15968:16000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 496: Field Element(0x68039c648fe6812d192a9d3bf250ba1d1a53b865794df26436d8baa4b5ba070)", - "P->V[16000:16032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 497: Field Element(0xb3aed2edd525b7e235e53d6fcfb564c71c10e18f1899e61cffed1846e0fcb2)", - "P->V[16032:16064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 498: Field Element(0x5fb1264069f1b01b83b3c754a1d60e9e1d383e9c8d985bc2d8dcac584bfd735)", - "P->V[16064:16096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 499: Field Element(0x3979d29eae13ab083cbb56635136f00827c64a44901f27ce05745b6adf2bb80)", - "P->V[16096:16128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 500: Field Element(0x18dc5defc4be69cdd035925e8b57bd7f4646f2fe4f8e08b9e17f0c647699755)", - "P->V[16128:16160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 501: Field Element(0x7635ea6a2396905f767119069cecc757b7c0cfe7ec07593b3ac6f1af6a65841)", - "P->V[16160:16192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 502: Field Element(0x48a507eaaa0929fb3b88dc85989a8c68f332017c8105c8bf3f534cb03c1aae4)", - "P->V[16192:16224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 503: Field Element(0x7c7238a46c80aaf90f9e9c78333c4d32bb363137420d245a00da7a77ea61c1e)", - "P->V[16224:16256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 504: Field Element(0x47372b41d8929359a0de4697ea9fb038c01dff2ccfb0f1d06fbca7f7e090df1)", - "P->V[16256:16288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 505: Field Element(0x4ccca3ca2a8b5113d1c30c36026627b496b6202f6d5dfc3699c0f4193e291a6)", - "P->V[16288:16320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 506: Field Element(0x65be657b0128f5d8f9506c0558d8293dd220778097148ade72310b8a83cdc7b)", - "P->V[16320:16352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 507: Field Element(0x972ddcae3f81a21b51431dd868225474813e1c5530e3067a0cab75cc614c54)", - "P->V[16352:16384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 508: Field Element(0x6085d612c81156ceefb0ac6895acc650422c5372ff9fa6dfb44cd484243e21a)", - "P->V[16384:16416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 509: Field Element(0x552e529df52320f2378c9dd38e77c11f98fc4ca44adf029682fc339398ad3b)", - "P->V[16416:16448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 510: Field Element(0x387e48653ec47ce22e6362bb3a8aa9708186a95d8b52b8d321ad067033f1d1e)", - "P->V[16448:16480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 511: Field Element(0x5461b0899be13b6cf6f9f1f3194031a8eccb088a0c7e4218bebca457905c046)", - "P->V[16480:16512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 512: Field Element(0x487d4b8e2b614752d67fc0884ea516baaa5f5cf0abc23cf242aba169f3ad373)", - "P->V[16512:16544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 513: Field Element(0x6357ef76b77129f26899e8ca7c01156fc5c4850ce47d01522a22194c137f76b)", - "P->V[16544:16576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 514: Field Element(0x3935737cf72cea328ddd2a1a1cc64e4cddc9f5dcece0990366dd58dd1c8e5d3)", - "P->V[16576:16608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 515: Field Element(0x5e72d42c0496a71d7ebdc6986c18757e3bd8b7bc2038d1f98a9446d077da3c9)", - "P->V[16608:16640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 516: Field Element(0x71153adf421cc35dac8a958d0f0eafc135cec22a37c89befa2fd3e68bd31211)", - "P->V[16640:16672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 517: Field Element(0x19af7f19ac6793e4bc68ecd0b4693e5ad04e716af6310745fd7056178d5436c)", - "P->V[16672:16704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 518: Field Element(0x570b826b18a6887486e558222af5bbc647d117ecedbcb028782276e3f93792c)", - "P->V[16704:16736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 519: Field Element(0x6b173d08dce8f9b9e204bac15a37d517e1345b7d63d06612a457debfee8432b)", - "P->V[16736:16768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 520: Field Element(0x41c1b9f52c4bb3116070b09bb7bf2f3ed67dc230450fc870ac7ffe5ed6e25c4)", - "P->V[16768:16800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 521: Field Element(0x5d1121130b8cec2d287a9630537ebab56664e5cbd56e9c053ad6317a7077f2d)", - "P->V[16800:16832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 522: Field Element(0x70a79ea62a45b31841fa71c9db9ad7b281b3767c4ec297e589044d6c4b9baad)", - "P->V[16832:16864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 523: Field Element(0x3204e792e452a672cdeb8a982f72662afe7bf594c4e5789dd202af372043609)", - "P->V[16864:16896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 524: Field Element(0x36379bb5aae32af4a53b4e68a85ee27869004ad035aeaf0086f215759092923)", - "P->V[16896:16928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 525: Field Element(0x79abb1fb3b359066fa98b4c79de49bf0bf87cbf7c9def91e31e39a846dc9b49)", - "P->V[16928:16960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 526: Field Element(0x5788f9f493e61f05d2b30b979bd56dcf9933ecba3516378c489f03d066fcf22)", - "P->V[16960:16992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 527: Field Element(0x296e972283eeb02e2c79727c812e59a6579b31c6e2af20bd0cfe52961b63924)", - "P->V[16992:17024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 528: Field Element(0x1d725916ede0e07f42c6005772d90215175e8ba85122f923f5a97d431b34356)", - "P->V[17024:17056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 529: Field Element(0x1f2ac26846e2128876c31e657dbe0c75ee4378e6a85f2d54185b42f81e5e787)", - "P->V[17056:17088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 530: Field Element(0x3c16d7fc8c6b1490c2603e66e3d5689f4cb3b61136cdd8223d6304f71e7851f)", - "P->V[17088:17120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 531: Field Element(0x72d9cd4240d28e8958bf0c918c5a08e42169b2973d9556f92fc4c340cf3304b)", - "P->V[17120:17152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 532: Field Element(0x5e84d2342cdb8b43d9d18ab699a228858324bf9f9aa60cb50a430f16d4e9173)", - "P->V[17152:17184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 533: Field Element(0x6a7be3fea06fc3f52ee435bbd9d1c5c11d7157eeef5bec97e6874feaa9ec65f)", - "P->V[17184:17216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 534: Field Element(0x2c8bb12af668b8545be94bb48acbf583bd13e9699f2dfac88503f8e447dc359)", - "P->V[17216:17248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 535: Field Element(0x5812a49f9d8466c073fb21555a37ece9eee88fa08f2e8c1acef072bd0b03c1b)", - "P->V[17248:17280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 536: Field Element(0x5f00d6ebcd486011dffd0306ecf1fe4d083d7f582b4919669651dd8d2e8f0b8)", - "P->V[17280:17312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 537: Field Element(0x1739efde884b96999684b250184cc006174d92e138487b44644c72925f5401d)", - "P->V[17312:17344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 538: Field Element(0x1b19372483b688fc0d5ba24bbf62052c026de4623e043225cb187d14128dd58)", - "P->V[17344:17376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 539: Field Element(0x20740b9e23eb44ab716f6131083a9a8b5285b613e192ca5c75aaabc7cc75191)", - "P->V[17376:17408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 540: Field Element(0x386b43a24410893b8ba9cdbea8bfcc69cf0d52a0fbf11cd589696008888720e)", - "P->V[17408:17440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 541: Field Element(0x4c3277360dc5a894327f6ffb51175fb1412f50bda4ea410d34d1fa2cee22e2e)", - "P->V[17440:17472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 542: Field Element(0x533b2531e18ee2b1c6a7f31588f8c861a5a330be16202b9bb37eed571bcf859)", - "P->V[17472:17504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 543: Field Element(0x100c0a8293b7489bc220967c15d00693c88f6fa7d1639c24ebf362bb66ef5cd)", - "P->V[17504:17536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 544: Field Element(0x4850dfe67ea40d35de991f26aafd9d0174f6cc948032ca9254f0b1b2ea6d75a)", - "P->V[17536:17568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 545: Field Element(0x2a8ed83b227c1e944228addd836f4ca6a074018c02861e30c28c7c1937d1346)", - "P->V[17568:17600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 546: Field Element(0x2d5039d8de6b5a249457fc1d7e7e04979123a228a7cfa6129c57b46ba236ce4)", - "P->V[17600:17632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 547: Field Element(0x2f0392401cbb7cb9a99fce17e51f2d9e41bb260c16de3e827627da44fa1cef2)", - "P->V[17632:17664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 548: Field Element(0x58e7e29a5af0cf4f2e9ed9dd16e169082d73f95b41c82aba5dac21ac45996b6)", - "P->V[17664:17696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 549: Field Element(0x1a1ee89c7c2b44fce42d8979ccbebea130c34c4401743746fe4f8a4cc5ccdcd)", - "P->V[17696:17728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 550: Field Element(0x550ecf6102d98e248189983c0b1f5b9815e637e454ebff8b5b6fd4b3c9ee970)", - "P->V[17728:17760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 551: Field Element(0x63112253b7fd9fafa37c2815b09256002751237187fda6bde2dd2d089933a9a)", - "P->V[17760:17792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 552: Field Element(0x39e80f9908efc12404233ff72bb9552de5e678e69dcc55b7e426981e148ee0a)", - "P->V[17792:17824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 553: Field Element(0x3c585b9f12690f753b9f5c8e7c65f90edcb438e64d0245e5bce7a12d524e43f)", - "P->V[17824:17856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 554: Field Element(0x2f999331d9a2cfaa37382f014b590cdd220c2fd29f146b709ce9d8e6140c4ac)", - "P->V[17856:17888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 555: Field Element(0x1c0354e79f4fd8c0eae6253bdc87886da2772fffa1afd6895c748fc86b713f9)", - "P->V[17888:17920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 556: Field Element(0x6fa489b910f4a09e37a3923c9692bf580fdf105a192b378cca61012b934e8d3)", - "P->V[17920:17952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 557: Field Element(0x36c28e03a26354b260f8d6b9d443c9859e21b08e8511a5cbf8b90336fc9588a)", - "P->V[17952:17984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 558: Field Element(0x251aaa13dc08c53573709e6a1c16a3c6e8af21f5a263bc27120c4a9af4dc80e)", - "P->V[17984:18016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 559: Field Element(0x13a0fdadf62a8d713191ef1884607f02b3de6b083d22ee096206a46aa15d299)", - "P->V[18016:18048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 560: Field Element(0x629956f38ce7e6099c88dfa6b92fc8b5d1779ca5bba99aaac1c91667e10408)", - "P->V[18048:18080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 561: Field Element(0x6f4da438ef27997fabc4daaa12ae979a22e4b6b5441ba9d1dd7ae59d6e39a78)", - "P->V[18080:18112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 562: Field Element(0x589a63bc53c83197c8fb512db013ac77dadbc2eb028678510bc18f092af5128)", - "P->V[18112:18144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 563: Field Element(0xbc87f4b56c6e3034f84c079cf2feac05c4c876665a0116e5a8c8bb3dae552a)", - "P->V[18144:18176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 564: Field Element(0xa51f449cb3d6c9a7672438be65f3d3d447a790c0b2453c8ae26b361a1eab1b)", - "P->V[18176:18208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 565: Field Element(0x221ec1a9bb0e6f0b1e1f4433a37db05e501a97250fb13149b915a25a65db93)", - "P->V[18208:18240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 566: Field Element(0x7b451e57dd6821d51812f886705fb2b8f798e3a73ddf86a9619bd6a797e2091)", - "P->V[18240:18272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 567: Field Element(0x6c32a6e1f916df9da790e50b281a15a9c6f0e3febc28f2a2ba947d5e863d770)", - "P->V[18272:18304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 568: Field Element(0x76bd135dbc7d427f6a10cbd4df9d6aba0bd27256b1b3fe97fa88b87dd2a48bf)", - "P->V[18304:18336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 569: Field Element(0x1e1a7954940dcd844ea14238c7c727d759199978f0fd0b0ac70c054e78963b)", - "P->V[18336:18368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 570: Field Element(0x783d92082608427dce152d114dbe1900dbec6a792fc20ce300d8bb784cea048)", - "P->V[18368:18400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 571: Field Element(0x197dcf77a768e2c54a757c32e4933212945311bf12d674692433e43f9b31448)", - "P->V[18400:18432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 572: Field Element(0x54dad12f7ea8f37e7d303b86fd96e499a85f68f543483aa8a628cd7e5c8b1f7)", - "P->V[18432:18464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 573: Field Element(0x20494c0542680369ad90fd5e02582045e7650a893150c1a7c2e6ba2d3509552)", - "P->V[18464:18496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 574: Field Element(0x5d035a7b7a456b5ac6a8221a0aa36bdd92aca395a77c89397a753b0b65350a5)", - "P->V[18496:18528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 575: Field Element(0x1978b7b5ba7842fea0c80211cb5fb6ef0d5d5f24b48f89bfc7b85156b25dc5a)", - "P->V[18528:18560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 576: Field Element(0x79569537fd2c67dfebf483dde25b7c54f54b35340e0a3d40272f85783a0e994)", - "P->V[18560:18592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 577: Field Element(0x7f725e21f75995980cc4b590ca16f2000865081e7ca75f613313b9812ae444b)", - "P->V[18592:18624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 578: Field Element(0x26c993c7a169ae8c458261a17a7a89f98d47ec3a27be6a3ed8bb4d0814ef850)", - "P->V[18624:18656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 579: Field Element(0x13d9bce1ac7b80c73409976f16f538b572a9362361e50bcc0b73bb04d9a8304)", - "P->V[18656:18688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 580: Field Element(0x4f0dedc9e0c53408e5e196c6c8bb5024ab55603d0d4d3ec0ac87190b0e08be3)", - "P->V[18688:18720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 581: Field Element(0x2ea0606c2e2f39d63770953d943e9a57bf18c88c87d1ab506fbcf7fea6f82e8)", - "P->V[18720:18752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 582: Field Element(0x18fe1829a3bf88b934b5e643d6837dff29c2615cb6524161261ec8a49eb25f5)", - "P->V[18752:18784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 583: Field Element(0x17aa59191dbebea6f15b4b65b9dfdeb1ed892170a4d383f45e8341257e479f8)", - "P->V[18784:18816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 584: Field Element(0x7314e2d89e095b629f7d29a43027f79e622abd526eddac1f084159b1ceb0ddd)", - "P->V[18816:18848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 585: Field Element(0x1274560aedfcaef9f0887186806729ee6a0f7647471cac9ff82572c0154990)", - "P->V[18848:18880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 586: Field Element(0x4915614cae4eebe1e858da0bcdb51fec6794e785d862ddfa5cd64535a1a1b0d)", - "P->V[18880:18912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 587: Field Element(0xa119e9e2065923b44a2180adc0806da6bd6356d0af3e315aa4bb3e9566860a)", - "P->V[18912:18944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 588: Field Element(0x37d52e4df8e0d71b406a182308e0e8766ccde6b96d582cc0fcb592c5b8ab632)", - "P->V[18944:18976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 589: Field Element(0x1400bddb889fe6bddd930d0ba054b5e89965df089c968b878c48c39fd82a95b)", - "P->V[18976:19008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 590: Field Element(0x176742b9f652c4e41149fe1bf93db1e63eb6ecd62cc0491f7dedd203f445dd1)", - "P->V[19008:19040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 591: Field Element(0x4d7830260f3a268608b32660b195e50c1e4f3d74b86c2043cdba48f9bcf9c5)", - "P->V[19040:19072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 592: Field Element(0x70f02f2dd483b228a3177c44e4334bfb3101f90d5cd6e1075ae84a55acf8f39)", - "P->V[19072:19104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 593: Field Element(0x418fb5bf8c2272474ce7871ac0fd4d34db66088db2fa1e2631048367c1f95bf)", - "P->V[19104:19136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 594: Field Element(0x763ab1bfc9d48451de1e02eac8f56077b94d441417e7e459551370fd68726d8)", - "P->V[19136:19168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 595: Field Element(0x40b097325accc9329d4abd8d40fbe197989bcc93e2759d4e76447312ab643bd)", - "P->V[19168:19200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 596: Field Element(0x455b16528df1fae42819a597724ce0bd5ff7054901251bc2039218d55081ea3)", - "P->V[19200:19232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 597: Field Element(0x4c33f1a30a0dcc5ed819c5d0a6a154a613574966e42a26c88b0242f1beb1c70)", - "P->V[19232:19264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 598: Field Element(0x78cc9360851f721400821fd1d429d2f3b20c0b8cab0083c6fc728028d286ed)", - "P->V[19264:19296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 599: Field Element(0x3ffb0134ca6b34e8f3aa49cdcf26c594a79b081ec9849a1e87c5a0b2fc74943)", - "P->V[19296:19328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 600: Field Element(0x7ebe652f07749021d75a17b8b8f372772ce0b887aa1e81e427738d9a7c3dc3b)", - "P->V[19328:19360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 601: Field Element(0x65333989e8921547e88b5187959f29db14f8045f5f2bf6977285fd2fe13a7e2)", - "P->V[19360:19392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 602: Field Element(0x1af9d35505f524ffc9fa9aeead16637cd44d44cbe0f3da97301b92b8fb0c550)", - "P->V[19392:19424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 603: Field Element(0x6c1f333c088dba18f0de4146fe7692380cb9d38b67aa2109d28e5dfc31b650a)", - "P->V[19424:19456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 604: Field Element(0x7b47a71e517c8b7c256a422b4330a642dd2c84451a76b13b6bb00210acce95d)", - "P->V[19456:19488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 605: Field Element(0x5fcdb76447ac6b437221ee65ec0b9d277a245bc1971d8d28666fa8a950376fa)", - "P->V[19488:19520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 606: Field Element(0x57937c9c0f0db6bd1fbcf1da3fa847ccb204ffcb37d176592d87edcfb3673c8)", - "P->V[19520:19552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 607: Field Element(0x4110bd46db186346b2c7dbfbf5c9626e4f1c7d084b74a6c247a7e17b342d555)", - "P->V[19552:19584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 608: Field Element(0x3a2a3d8ea7b6ab217537ff4112e72c813574c24071a813ccd80ff3558d2ac3b)", - "P->V[19584:19616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 609: Field Element(0x4715d59aed954f120723d33c8b7da60a409ef90b5ebdacad36c5af516df8c0c)", - "P->V[19616:19648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 610: Field Element(0x6735b1a73075ee54319b9555cf6fd62c00ff4a0d844cb8f77d8d266fe439a0)", - "P->V[19648:19680]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 611: Field Element(0x4f138ae8d012d51d0299c8c4b6940d608d2b4dd3c9e8a7697f0eb0bfa2684ed)", - "P->V[19680:19712]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 612: Field Element(0x3157077646af4fe90cc6d1895098be1c23aaf71a67773733f260c0fc8e9a1c4)", - "P->V[19712:19744]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 613: Field Element(0x4573e83a725f9771782a1424a8925e359c16a6976c92eeebbe725c873dd5f13)", - "P->V[19744:19776]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 614: Field Element(0x37eeab69839b3e21f58aabdc0d0a189d41175edcf22887e7586ef143aaac8c3)", - "P->V[19776:19808]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 615: Field Element(0xeef25000b9c6c8a31a8d68dbd0289f15fc03d0cbaab929993219b68fcbc4dc)", - "P->V[19808:19840]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 616: Field Element(0x7fbe6db86047b7e629c52a6d15c92afa47f48b6c0b82d6fc61541dc526d3019)", - "P->V[19840:19872]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 617: Field Element(0x232d9602f79842a41c376bcb807e13aed0956c7a2a809c913104b509e5c1a77)", - "P->V[19872:19904]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 618: Field Element(0x69a26973e9b5a69b3852ea8f86bfa33e358721173404e28cd7612326da012c5)", - "P->V[19904:19936]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 619: Field Element(0x5248657bf88d3321f8efe71e63bb93d9e5e4127a043da2301fdbc415f111396)", - "P->V[19936:19968]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 620: Field Element(0x6bef44180181b664999a2cbff9bb69580541f56941796d836db12f9737656c5)", - "P->V[19968:20000]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 621: Field Element(0x7d049f985023141e0afb4fd10ce31f23ee0d9d1605540781653953ad1f9ee7e)", - "P->V[20000:20032]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 622: Field Element(0x1e35cfa8677b92f59152016c2b7c4aa36b8fa7caea15e3b1b2c03dfd30eeff7)", - "P->V[20032:20064]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 623: Field Element(0x54c07bf8a71f3edbc4ac248fb7430f4914223cceae2687ac65392402c7d764b)", - "P->V[20064:20096]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 624: Field Element(0x6a83f313bacfe0fb9d394c3a7b9938d0a26919ad5daba1c71b00ebb02dc663)", - "P->V[20096:20128]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 625: Field Element(0x33d140a1347fb1114c535c9b8fc35852087d8452ec24f33a629386b9ec32b89)", - "P->V[20128:20160]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 626: Field Element(0x5bd9b9c726499be184436315ec1828b774654d7bb196173b7845cc7d6e09ca4)", - "P->V[20160:20192]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 627: Field Element(0x6c4c9789c03b1737c88b4a17f59e229189f219cfe45d33045a25cf9d022d06f)", - "P->V[20192:20224]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 628: Field Element(0x1cfb8670c2f2aa8822c2e525b2d2860e43c34f36739f870317cb9cde5434cf7)", - "P->V[20224:20256]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 629: Field Element(0x1e94110f2112664668ead0baa032fbb62bab9087774fedc4f97a2e66f10f2f0)", - "P->V[20256:20288]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 630: Field Element(0x596d3557849852378ad62acedfbb091d53d92d451f78d8f02a979d1972fa9c7)", - "P->V[20288:20320]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 631: Field Element(0x1cf35e0d934110c587d699eb101d0350ecae5ff020a1f6409d1554158b0783a)", - "P->V[20320:20352]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 632: Field Element(0x42e505aac67337a7996ffac618eb381bbbb7910759b989d7748eb751244871a)", - "P->V[20352:20384]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 633: Field Element(0x3f162058edbd49cef48058c64befc7a1a962e205860fb39cb1fb398cf122744)", - "P->V[20384:20416]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 634: Field Element(0x67a260db2e12ad9de2142b91f90fd718aa561dc25cb36bdccfebeebb24821d)", - "P->V[20416:20448]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 635: Field Element(0x484f3a53d818e64fed810dfb3e2caae19c61d8f718410d7d0613dbdf5c75cfb)", - "P->V[20448:20480]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 636: Field Element(0x61b2d1df95502c5799b6067745b315f3abf8b5eac6a46942ebf64927259afb9)", - "P->V[20480:20512]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 637: Field Element(0x318c9ebca7d3a52b572c1e4643fe43d60882d85ffaf27cc918fe75fe8d79ca7)", - "P->V[20512:20544]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 638: Field Element(0x3f1b3ca055428510e0a47b95461c3f91c524f86e2392bb92e968cf19cd8d07f)", - "P->V[20544:20576]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 639: Field Element(0x6120278dd39721b92fc19d55b2d86fe9636e2a69b3034429070a2ff03fa8c8f)", - "P->V[20576:20608]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 640: Field Element(0x76dbdbfc7cc7b074639d8e3604eb0f5e6c937a4a74ffca9184f78cda4fd335f)", - "P->V[20608:20640]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 641: Field Element(0x76d8002a0774c8e325203a4b37b2c279cc51d2473a806d59d3e93166f6e4a7b)", - "P->V[20640:20672]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 642: Field Element(0x1cb823d1554be4c35dc58fbf091142ec2df4ef23c90f28245e59e9ccd50ac50)", - "P->V[20672:20704]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 643: Field Element(0x1012da731588d227c301fa37fc41f2141516400450a48e6af4bdb49910a360c)", - "P->V[20704:20736]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 644: Field Element(0x2861a027ef88cf41349018acb6d21640ba3bd0185df96bbee70c968fe2f7d1c)", - "P->V[20736:20768]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 645: Field Element(0x32c6fb3e89d54556e0d3fafb3a23137d799d092e1c5bdc175b2a0e296517911)", - "P->V[20768:20800]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 646: Field Element(0x2bdc9eb200cceba420be95feac1c3984ac96de6c54a767e715deaea4233c2ac)", - "P->V[20800:20832]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 647: Field Element(0x1d2c240a7f8c13fcf8ad68f7f274f13e43850d48a7f0d32e2f6f4cdb901eb60)", - "P->V[20832:20864]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 648: Field Element(0x3f463be9e5e0a72b484329be633a542da610fd1726d4c086dfb3d0d25efc366)", - "P->V[20864:20896]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 649: Field Element(0x6e05372891d3d9f7f9dce8a171f1b2f59605e574fd6a2632c8cc7924a2b55a5)", - "P->V[20896:20928]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 650: Field Element(0x48e6009f47310f8a24093c2c6e44354a916bf12b370b99b6bd41fe5711c8581)", - "P->V[20928:20960]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 651: Field Element(0x469a028f4969a0b226ec7bb8d6bbc923b0ff135ea1687477b0046b4db2ea020)", - "P->V[20960:20992]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 652: Field Element(0x4d4c88562a031b57e9fe6ebf8101c3c03b12df3378c81570d8817a6abb17d33)", - "P->V[20992:21024]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 653: Field Element(0x26e76d750d19a58ad0a7eba044ab6edf15b957dcd2f866f74ad3ff04be87f6d)", - "P->V[21024:21056]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 654: Field Element(0x50c7c25196746f77502728bf40c81bf85eb3911360be07746d5fbab69d427be)", - "P->V[21056:21088]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 655: Field Element(0x537f8fce185af8928f840b35d2cdf44949d02cbbf9c4add07c476109e87d6fe)", - "P->V[21088:21120]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 656: Field Element(0x2febcb5625058ed982b06849108b62f56193f839980c50908e90423532b8c80)", - "P->V[21120:21152]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 657: Field Element(0xfcfc19cbbdf44737a58db4bf3230e54e160249fc7d0d25f245156857c82f81)", - "P->V[21152:21184]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 658: Field Element(0x785d931682dfb941739830e7f65fe61e8d333223198cdce2c9a237570b55f72)", - "P->V[21184:21216]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 659: Field Element(0x6f35f2d3c217da2d6c00396f1641191d35d4c12a90b122952f808e82f5602df)", - "P->V[21216:21248]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 660: Field Element(0x415ba0812c26461f2a08e237de19ab2bba86fea300b648516d7f08766f997d6)", - "P->V[21248:21280]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 661: Field Element(0x9d5245259cfec002e8c647eb9ddaa6734907d207feb4c19c8e9ddde42e7ef7)", - "P->V[21280:21312]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 662: Field Element(0x5c64f3fdd8b877ce45f3b7016f8b8b581854bc8da39fb0ec6c83275b042405b)", - "P->V[21312:21344]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 663: Field Element(0x3e080ad7f6042cec7b2ecb33233697640440a15a14000feaabd59798505a47a)", - "P->V[21344:21376]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 664: Field Element(0x7cb1c5fec838d57e5a83a9f6f4657116a081af422958cd43622ea01aead341d)", - "P->V[21376:21408]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 665: Field Element(0x2d776c0809826cf8ead2ed8c3af407a9a3190992b54e9120a3da43e98368bf4)", - "P->V[21408:21440]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 666: Field Element(0x5a8865b2038ffeda98ff8fa7f9dedddc4fbd3878a70d312c6422e92be9e62b0)", - "P->V[21440:21472]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 667: Field Element(0x56c5ff55405185c3d33a3d9edc59488132532406591bce1fc3e86305920a234)", - "P->V[21472:21504]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 668: Field Element(0x62e411bb3726371ef0da245c2ba5ef0526ee45888a2ae7b3114cc5de21fa93a)", - "P->V[21504:21536]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 669: Field Element(0x6a1f9cd80fbdbd123576fdaa1273bf02203dfcfa26e513a69a162e968d55915)", - "P->V[21536:21568]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 670: Field Element(0x709c66fec60be94b371b7e6b2a250b48d6459f51dc812cd9d35f4a05be301a2)", - "P->V[21568:21600]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 671: Field Element(0xcd756c6389cac687474a5298f9b3d8484895797d17e430240a738353d6e7c1)", - "P->V[21600:21632]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 672: Field Element(0x1b2b1878fdd06361612ca79d63c9e50e90af5d8ecba44ae80504ddd76a87f92)", - "P->V[21632:21664]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 673: Field Element(0x1749c4c5a7add896c7e5f8e2aee7731386b6b89372fa92a21a8ad312408c0bb)", - "P->V[21664:21696]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 674: Field Element(0x2441d9748a0c8272b5c645e9a5a0bf96568678dddf77b741ff4fcb3dcd2d7a9)", - "P->V[21696:21728]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 675: Field Element(0x6acc35e7822b22ce50fa390da1385c81dda52e1dbefe1f8bd1ea26a07b21a4f)", - "P->V[21728:21760]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 676: Field Element(0x621e5b859b56e7ee270f78159e519c221ce16976b336386feda85fb1906f4c)", - "P->V[21760:21792]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 677: Field Element(0x20de87debe59ae8673099e24e9e1b9a05ca1eb54cb74afb8bef4cc0c258ccce)", - "P->V[21792:21824]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 678: Field Element(0x55de34799c0c208c14165c4b3d3c57c5ea2086383d21b0f592bddde39bd73cd)", - "P->V[21824:21856]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 679: Field Element(0x5383aa3b997aaa9fa4753d9f2166490c60891169c4dd8a74a1d8ba560a5093f)", - "P->V[21856:21888]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 680: Field Element(0x199d259bd1692c7a60c7fad30c9817462de4755a37a67f210af6257b0131396)", - "P->V[21888:21920]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 681: Field Element(0x74dfa430b9b262197ccaae12c24cf63742b7c3f0ab55dfbc287ec3be32f1f75)", - "P->V[21920:21952]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 682: Field Element(0x543b2f5a0ea50be3e5033b6457e0d8512332cba112cf9d17f8e93fbc4e18eba)", - "P->V[21952:21984]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 683: Field Element(0x59f0e3f3b290314388f303190fa5c38663297bb72c38b9c7d53faf6aea1b292)", - "P->V[21984:22016]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 684: Field Element(0xb738b5262fd9e6e01039c7bfd3722cb5453cc5c551d44e3713973fb89d31f8)", - "P->V[22016:22048]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 685: Field Element(0x1a9d1b594c0c0d7b4fe62e5983948306096a7c187af0efbc75f01b909b63362)", - "P->V[22048:22080]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 686: Field Element(0x2a0f93ceabe8005b3694f34cfc9f9b7d1e61250b83670bc6f46df24a517403a)", - "P->V[22080:22112]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 687: Field Element(0x148c0bd0da1e86d3a6dd874a6bd73c4d46eb25a3c1bf55023ad3c194bb4b6d9)", - "P->V[22112:22144]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 688: Field Element(0x1b429063dd08d495d18b315eac65fb0f4587acbfec12fe0c596ca506bc30c16)", - "P->V[22144:22176]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 689: Field Element(0x5ae41316598603cf7d59b53668650e5904d4f439beaee9c8517f159524f16a1)", - "P->V[22176:22208]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 690: Field Element(0x78520ab8f716b7a8ef2b1612aeb4bce14deaee175163562eaea7d03dd7157d4)", - "P->V[22208:22240]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 691: Field Element(0x34caae0ab07aad9f01533b37154ddb9f89b2d807ed1ff9fb04a9c79afdc5dc6)", - "P->V[22240:22272]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 692: Field Element(0x6bcc0a9734705195a2a5f7f4c7b53d8e4297022d711430c02d2c66261ec068c)", - "P->V[22272:22304]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 693: Field Element(0x170cb906a83bc735f1f17af9ac429ee0be030974c3f0c9647f6c9e9fdd6ea42)", - "P->V[22304:22336]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 694: Field Element(0x4d0782747dd32944347d8d040f394f022dc45022ad39dcc7777cc1d1002439b)", - "P->V[22336:22368]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 695: Field Element(0x2aabaa7dde52edb1b40ff63f49e0b76fb83a77f065b4ba0da9040275144b60f)", - "P->V[22368:22400]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 696: Field Element(0x5ed21b3eaebcc08b765e84ddaa5c2b22fdf2381631427dd3d5f25aab49ef3f9)", - "P->V[22400:22432]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 697: Field Element(0x7e02a9dbf0c0ad029130095d9445ba81598b2d381e96c5cb1faf19dceace068)", - "P->V[22432:22464]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 698: Field Element(0x7ce69ec89a779b5e3463172a4c9497e90e5d834c2b73f96ebfa28bb1f945ba6)", - "P->V[22464:22496]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 699: Field Element(0x4f34241ce88661bf7aadb58298e93357e9679c41214d2fd29906c8beb0123c8)", - "P->V[22496:22528]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 700: Field Element(0x2e395b4445816a5cc61739315004afe6a6f0e1297f98c57754f0ee7b883c69f)", - "P->V[22528:22560]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 701: Field Element(0x369143c01b5835b37f4c0ac9b6d70ffacf303042036b858adc6485778148bb2)", - "P->V[22560:22592]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 702: Field Element(0x373580692c980d1a48e1da282b4918c0eb072d83b35b06fca5d7fa74e84f72e)", - "P->V[22592:22624]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 703: Field Element(0x3ac119eae112a023515ad40d1eb7f55e97c806be23fbf44fb259473e7b35b58)", - "P->V[22624:22656]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 704: Field Element(0x7566cbe7dd6a25a3041c243be7c533f090b8eb2954ff631413d72c59759f2a3)", - "P->V[22656:22688]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 705: Field Element(0x777dc7d0735ae084c8dd7fa330466238e6354d0246164a5e2b557e5fa043943)", - "P->V[22688:22720]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 706: Field Element(0xf6aecb6001884b6146d6bce13ce71886504d5055fac04763b4c6fac3871038)", - "P->V[22720:22752]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 707: Field Element(0x4611ff5192fb6ccc2bdcd8a739a8273f3268d312b3f6ec4624a335c6d695db5)", - "P->V[22752:22784]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 708: Field Element(0x2f843288cfdf66a08621c03e53bdd407967fdb26133b876a86bc10c8d9831f9)", - "P->V[22784:22816]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 709: Field Element(0x5be68301094a30b9901446fc2cbcb4dc31a61effb09f78a7f589250c1e78d02)", - "P->V[22816:22848]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 710: Field Element(0x3ade5f5b487433c9b971f0c59584c1d38b0139b0fa2301b36ea314b47a57b18)", - "P->V[22848:22880]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 711: Field Element(0x6d7b7d3c9ef637ee5e7873e45b43303a3a06d5bcd94de4e79736c98f5da2829)", - "P->V[22880:22912]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 712: Field Element(0x4aff337cc3b73bc4c59bcf303a3f47d090b15819d7575e34b55c6cf5293037c)", - "P->V[22912:22944]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 713: Field Element(0x5b87a118b5cd2215c30e5fc120ddf5b445d857b38ea770c41b09509212c4bdd)", - "P->V[22944:22976]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 714: Field Element(0xb2d811c9b0cb7a355dd8b750ae602ef70f8b50ce03e9888dcf161347947485)", - "P->V[22976:23008]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 715: Field Element(0x5880e50ba1fa0f1fc4b76ebfdf43f99047c13e1a62ea546ebc618f9081933ff)", - "P->V[23008:23040]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 716: Field Element(0x616ac14c5ef3c2358a65809de87d1aa37d0d6fcc9a4ded4df5b0c8cf08a31e0)", - "P->V[23040:23072]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 717: Field Element(0x69558b11c8a91541e03d5065ed470683a30a85a301f70ec56842b7e3b78d50e)", - "P->V[23072:23104]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 718: Field Element(0x6dfa08822166de0220a7c4f94f9211bd35763b1a73edc44fe6732d30141e7a3)", - "P->V[23104:23136]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 719: Field Element(0x424510378c7471739a3b551bbdd72b696ca9d6828f8b16c9db4e9ade78d270b)", - "P->V[23136:23168]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 720: Field Element(0x24dd211349853ea71a0f419915e5592e85bced15c214c96233815f0843c5775)", - "P->V[23168:23200]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 721: Field Element(0x9b459a8bbf169e06f1f0a4e62be506151aa252f03620c4f16134449569fc79)", - "P->V[23200:23232]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 722: Field Element(0x67ffc3cb4dfd354b351e893a23d23bf7241c60082b20c226d8c68980847dd6a)", - "P->V[23232:23264]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 723: Field Element(0x57f6f6fc5108a3ee1b6f1c6ed2b6bd45df8eb6a3ad09ec46bd2a4924c5d745d)", - "P->V[23264:23296]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 724: Field Element(0x9641a73b6c03b501a96a638012628fe487bb57979e83c86d6d1dd40ed7bdc8)", - "P->V[23296:23328]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 725: Field Element(0x50b92d4083eae94b8b632088d0e42a3335d5a60213e1051db7b68e601e1d854)", - "P->V[23328:23360]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 726: Field Element(0x3a16a1d7e4b1b764750e11f7aeb0c9b79ed4c1a9e2d83b14306b3807f65b6a)", - "P->V[23360:23392]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 727: Field Element(0x2944f9b8afd6e4d0503d0bfba5cce82ac646933db276bd73bd3eb9b85a6e45a)", - "P->V[23392:23424]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 728: Field Element(0x4ea1ed56a360ab10e4fc25d1beb0de5e37f83aa87430d4c92f69701d7e59654)", - "P->V[23424:23456]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 729: Field Element(0x157f279c83ef4878ddaa441150950c2857155fd5aa4844864d712d0b6e659d)", - "P->V[23456:23488]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 730: Field Element(0x68a79c6bad18a337a9ab96d160541843b29e1fb2960246dea5793e0c88d7a98)", - "P->V[23488:23520]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 731: Field Element(0x2785ec05c225493fdb735e56a7c96df1bc192c613e8192b0da883d418094dbd)", - "P->V[23520:23552]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 732: Field Element(0x21e7eb009ac7744920904bc1bf8e7165a6fd6bb3fc457a7041b9b0938c7d324)", - "P->V[23552:23584]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 733: Field Element(0x2d0d173c66e0030127b4c3a76e20a1d83f5721e6aaa4759344abfdc04b031b2)", - "P->V[23584:23616]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 734: Field Element(0x6f26ef17c3583c78faeae669040bdf0725e3f77795d232134f334ba63edbe5c)", - "P->V[23616:23648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: 735: Field Element(0x6e39152cf86cad0d31598aa8bfd2b850fe07a02013f5ff2c2b99a2509e1a02a)", - "V->P: /cpu air/STARK/Out Of Domain Sampling: Constraint polynomial random element: Field Element(0x7d9f76db30764e5bdd1f9f724c91754a62e1ec82fd981df038281f1e71f193a)", - "P->V[23648:23680]: /cpu air/STARK/FRI/Commitment/Layer 1: Commitment: Hash(0x6f19c11618f517a8db6a9285e2059af5dd9f6e3695fc78363aaaca98aabf4c)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 2: Evaluation point: Field Element(0x6a10fe777e755db04429b3e5a233e26e9afd711bcb3ae663c585a5a3749ea11)", - "P->V[23680:23712]: /cpu air/STARK/FRI/Commitment/Layer 2: Commitment: Hash(0x4d2e588c56d943eadb40a36a8c9c0bc0ea6d391551cd95cb50505a937b3addb)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 3: Evaluation point: Field Element(0x73f3da31e2493febe30a0838febc757f1bb0c667b3263f231eb8c3d13c64574)", - "P->V[23712:23744]: /cpu air/STARK/FRI/Commitment/Layer 3: Commitment: Hash(0x72c979145dfff534c106fcb1e8061c8ece372ed2c01e4682c1accdd34139261)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 4: Evaluation point: Field Element(0x409365c7239a27f4f2f839da2d19666017f051465f47d9c6886f077f8d3b129)", - "P->V[23744:23776]: /cpu air/STARK/FRI/Commitment/Layer 4: Commitment: Hash(0x3f90cf574ed0e6a428e1aa4cf555da6cc6788e20387e87002018abf620ce34a)", - "V->P: /cpu air/STARK/FRI/Commitment/Layer 5: Evaluation point: Field Element(0xb6ac826223d84873d37926babe2be74bfd21f2fc170789b4870dc3f586b67c)", - "P->V[23776:27872]: /cpu air/STARK/FRI/Commitment/Last Layer: Coefficients: Field Elements(0x520a7b8e0d342a59d484fb1dd92218f65f23dfedb19edd85fa4bde3224a61c9, 0x77e066f6df96154bbc1d177ed0e7dd5e878a9ecaba3a94ec1b2f9babde90751, 0xb2a44d336032dbe46e42fa6be6bc0fbf0a0b4b6e90fa10b4e632823e2557b5, 0x29c79b3b0b175e3675984847ff86c31fdfdfcee3c09a3e0d0fac09cfa2ff83, 0x5601e5a56cd3dd801073d85fcf1ff8f21c04d73ce89b897f849925b06aa69c7, 0x2df7d418cc4f1047d10492510b8676bf1c2db28a017379c405994436ffc2535, 0x70d7211b6f0c52fe1a31bfb34e30018378ced01e1f11ac52c096be037e6b302, 0x48da85198b3605ccef0d3a578f13106dc7abae41b89a6ab1eb77e9ba1330630, 0xf57e82d29cb15cabbde2e1e32b812d0d99aa08b4e73406a4b124d0f581e75, 0x4ae1076f08935f0378274ec37b50b37e6d437973ee0dd4bb23eaca7ee560558, 0x480a632bc6dd0d2661a3160c864f674d888e3ce7100661480c2a3c5f9a5425d, 0x4be8ee02052d6e9eecc0e1403054d4de191178818f6de5e3a141c7fda613dc6, 0x4f6faf836205b4d0e7074cccd0b0f4d40bb0aa724db3c1be5a62f6b3fd864ca, 0x4fdbec3500858dc863263b26e2bef2faef9b6ec7c09e4c748250eb2d6a30f4d, 0x156cd036e591c7bb9d1fc10ebe22533c774b0f4162cb53854c18bd0edd6b6ef, 0x1fdc4cc67e450ea1782d08dadb3c9202325292dfbca77bc518b426f75c5d4dc, 0x1d80a5735afa8a64f130d1a4d23d9be3ebaa0e9757b8868c064db1170e84067, 0x25085e0d71823fbf9a55abccbb7091c7a06e39edc63d599f9b5eb75be2ebee7, 0x2e190b6bb48ed7414557209e52d8b78d3a7421a5ec493494150793d79814647, 0x22f7ec963ba9c4b80aa7d58300dfb058194ccb3c2dba096c9a9765fb5ec2182, 0x6e1d73cf25711cfe89d0dbb62d2494df45b929cd179cd6be7230b58351e2656, 0x451cf9500e8cba4a02a5e69f851f0fe09c6a135b6d2a51c9a444ed4979013bc, 0x1689c4060f8a8dfc98eaaafddf0b513753f63a440a98f16187cc48bfe4208fe, 0x2e727abf23365177d03388732e40033e8780bcd86103c270914ba5fc0afde66, 0x649608e2c397b8bdbfbe50a4d30c0275b1c390cc77a1307175ff39b76518a32, 0x1dbce921640addc0a19ee2737dde55278514cbf9b91ae83a7bd65c6a17699a8, 0x233cf91bd1f8183f44e3600291f99934c7192aafa8a65df023f6597239a5da7, 0xf6275ff7f8a641c8bca3940c8cbc693226701d22df991a21ad0a8b3355e7ee, 0x26a13cde5c3e3940afc57ab604fd13c89a5af6755ff60351607ae338733ee7e, 0x1efe85c4d93bac9c9a69d9937afb3c09240012426aae05d30db2e08ac57f0e4, 0x470c8f636154bdfddb95ada0d23894d44abc92f48e05a171993084af4f7f9fc, 0x58b8e7cfc9fa2ca6b10d1e479963df28b7a320b462f100f064300cf1e379736, 0x663d9cc77f50620be6225afb1ff2a31ded41b26bc130330048f99e4daa3ec7b, 0x42d77101b735e150ceaadca46a63d61cc1c43c326a019780ed6c7e92796d200, 0x5af4e5007b4e8d0da8afa3f12040d25f2049cae027460411d215ec01009584d, 0x46151f166823b33d6b941d648c676a8bd99b965979471ee0339aae92ae7727c, 0x50692cf40df123a41889c94c00cf789c71b86962e72ed2ac49b63b05ed7bbc0, 0x59c15478611dbaa84c757d3e9d2b3cf0fb66887daa02a62f7df5e65e86bf5bd, 0x6279bae3390e4f81ec41d3b09d289f50398fc591a005885949de367c8ee4d75, 0xf6763c56e503c8c12ab38d87ae92760a01f7341232cc32fbf9734b49cc084d, 0x65b1b5f7dd442854ae9f070b11323c02d4c4345209dd0dc8e9199bf2d5f3d7f, 0x297c42c4d23408a29ae6e8bb1abf9f2111dcace714477e5e26f4d2f17942002, 0x704db935288cf5e026e985a85af6450c765b656e41c6060decc2ab15fbf6160, 0x1af14014307270615b572a73748d52ba9673d572830ef17786ba3621ebc12cc, 0x29700dbfb109ccb1c8583e03b251693221aff7496e07973ed0459f7582823bb, 0x3ba8f33393d86256f40cbe7cd0cc3d9542a5851a2ac7636ffeaab8c13a6684a, 0x226586f9968b53405f270a7ae17894f927878556df998f2df75a05eb18fe885, 0xd9bfb7069869f84ade11286d66b6b9240683a378eb891fc5dd90f5bee1287f, 0x5e5b24828e9483f60f17b0923a9dec6789ad71164eccb003cc8ff9889515ed1, 0x629f97c4447e3e283cd51ccfae5e6de46f45f470af89d54d7eda3e36da2ac13, 0x47e70aaae6139f90b2e5d5c43b0d6ab6436d70be3f1fe759e639652464824aa, 0x1026a098979b6fcfabb8e032d4b772817c42b2e47fdc41a86a59645c6d806bf, 0x49c40f59b06713e8b331e16806f130bf77eb46b6b7e489ab39fdb864713ab88, 0x1fba87c6e539aca588bc3abcb02abadfd9cf36c8bc90ea6f9fdccad500d04bd, 0x1e6479abb1cc36b5f975a96561c2ec5e8f67ea96fd0083ef01de161200f8355, 0x74e9b1ef58e0531a5ff945eb69f403a5628c17dda6ae2cb7eacd4d38e889957, 0x208e5bc7f4b5d8e04c1b3f8f8644d5f68907e3c17132d88064e9fcdac6c32f0, 0x415812bbcf23e8c334e23e5e41b54dc75218ee51ecee911786ef5049fbd880b, 0x3ad59e3366732f6590b48a844c465956690c7c2d4cacb4b2c9de5d362d139a3, 0x11f474cb863961453ee7c132e3cff78aa3d35f5a0660265fe1351e068246e82, 0x28a2f643657f476ec359d1d9d5e3729a37ed654aea838bf2f090301ea7f04fc, 0x62b61e86c7d8651398de330f238aaf31891a3b55cb20281e6fc823c42d674d0, 0x15a9a06090da20a8ae98e8cf5bd30ad4df50ca9fbfd3a216de130b50a4fcff0, 0x1e679be954cb8983a3f5cb4d453373c9b42e46eab8c1657129d5b94d4e4f6a, 0x68402b290968441ed73c0abd07cf2aff3e69989fc4ead6ee0d6d1307cb61aa5, 0x47a796d47693f33ed04352b3a870e17aae27d480bf81977f425bdfc8959e7e8, 0x4332529e7e4d6f522f71f984925ee85e91188bcd116e290bce3bbd3105b565a, 0x5d290328e83b1425c94fe46eacd9102f0a5c9d26e52c9980c00b02b65d1448c, 0x4e2e9c8a38c8a5e1a0ace4fdf9c7446b0613ff6d40ebb5ca2baffd8330a1161, 0x2336810b93702dc1d5b48dbaa3012f8a7ae9bff48dbd850bb39c4ff75a6a26a, 0x601b100b64bf7de50952b3d36f955c17d1554ac4bf72a1d6baf2461457c858f, 0x7a223d6ab132c78b8c0d8bc8b8dd410844315f8bba5883d597a5b21e66d9c74, 0x79eb337119a2aa77e05b44678dcb421e684e139fd58c619db1946520944cc64, 0x802ee281216d79ac564854aaa924731242179c3c3d3171b97d1023c46de55a, 0xed93530a7c3f39204553567eff1583469e28a828671120758294be271c4b21, 0x66d432839ef7cd9c35e57e593b741fc610ff449e70f4f6fd8532252a799f53d, 0x40e919c1c782beecbf953b799d09f2e6a819304c6fad870de446ebc60f8f315, 0x7a46c71644c774f91aa4e8b06ac4fbc07fde246e8af3465752a7ad21d197531, 0x1b58fe37d6b5ebd3cbed91b3f01a08815b0702a49cb47bdea2f4f8e7cca8a0e, 0x781a4827ea2c3bacb93bdab0e3f58444eb887eed5ac5f574729bca4994ae78c, 0x3abde116d54b02fc3ac5cba90778d28fe9c472ea6f4bb420492e430562b54d6, 0x1df2dd34ee8b97518296bb158c0e563d641644342c0af830ed4493238f7db4, 0x2f2dbfa195ca4908d6605fc51aff0c47ee3a15cf905b6b1b4729d9c52dbb0ea, 0x541a70cd50ba1f9ea1b1cdb893e57115e1a58c5ae54ad634110c618f8082bc7, 0x757de32feb3c799db25feb4f050f1d9153dc1d02a138f61aa10457377532519, 0x18d8f816e271c21db7b432564e66f3955a0744f5dbb0c83060974d1e1eaea2a, 0x22f85928213fee3f25c0d15fdfc9d3579b22a8bda0af66aee713a1d22df5341, 0x488cc46c7ec761f7483f627225ea916951a2b1d665f2255e35aac596d5d0abb, 0x38a15e1e631f714613ae086fcd7bee8a6f0a284bf0734b708c217544d0ff3e7, 0x16ff3e828e6606e44decbc1f984f6195b7fe0ecec0ca9ac78f68b5eb9a75ff9, 0x7da0421dd74789c4735e527aa4fe88b0ef22eebdf1a252c1cd401f8e08a8fe8, 0x2c45f6c1d38251bb22a16536982a854d2ad0fef25819e052e1073cfc5c5436f, 0x6187a6e084ca2ba65c786bd250c47bdb866986bf702e55fd6e5a6060da9b490, 0x85833c310ab9660200fc86b25ac32fbd6959fb7c610041ab1d6a7aa8df60ac, 0x79520940e90751a9489410662a023d48823438f4b9c7e8ef3cba259a594b2f5, 0x388373bd75a2e03512996e8f336e02ba13f2201865e347bff11f4a8bfb0732c, 0x677eddd93e42b332664a7c40d16e2b48dfe7f7ff2b31cebb54ef8b4eacc82d0, 0x2ee85a5be6572cee1f7d6fdfcc68f2b705f80839e12b8800a994e7b15b3e7da, 0x2c3a7c7e6923a171206889202406d74743e26ea5279a83234b56c74064d309, 0x757c122b08ae8700f8c48a26b124c6d14ce17abc1db7f9db6e391c57502263a, 0x784aa9cf92f7f231d1c8f308b241619ac27904887deb8b9240ef76385f2f337, 0x4bb25a45c6832b5481be34b891856bdc5c35277a1e36431ae52d15275ccc23b, 0x56266c2d31f8b31a0eb8172a998bb4dd5e8769e0c861c2978c6edc03c09a020, 0x2ee53578fd661994edce673213944b4db7a5419db7d95a625fb895f8141eb1a, 0x5ea120460690dba26a86a29351639f8d6f43f5f51dcfb424243d22e3857aaeb, 0x7f218d890f132c664fbef1650520322b5ec88a8b2eb5e04d95b5f9bab8a7dd, 0x344268c006adcc6dbefab83d95161ecf01f48c5d7794cc8098a482b77e0083d, 0x6370754faf4641c9226207158a789218ad4d6643282bcc7e08b5ba3d140eb2c, 0x2cbffef884890d0137db2b5b670d341ba1bd8f72a8cdc503ad0bf3cc3f570e9, 0x590186ea40ab43c5dc0e4e61e94a7ca782a30c3d201fb9fb32f194308715f1e, 0x136b7aea93bbdb412e8aba3ab66ed502a48ac042600e5d8448ae1bb1c848c5e, 0x75150b5098c265a1705afa1140f634247cca8e1906310615decc8ffa19895da, 0x79246ec20d7ff4f7eadb84e0cbb95815342d475c2974300e451efeff794de79, 0x58dfffc9a54cc2ae39035a7a2ae5e3c3f22d67345ac7c2c98694cc8d2a472c6, 0x61e6a079f969a86a7d9940348e2951b6bf1a789299992a1cb99f686254d0cd4, 0x4b24cf329753fb19304c830f95dcc800edbab93d4030a37ee1348696805d389, 0xb4c3605cabcf9c32dc924ab20e85758ad38b04197e3b4ac59accb85473afa7, 0x45c71d8224122cef7d1b4ae16bba103bced5a87e17b369fb5eb4b22eee48d26, 0x18873c340598a9817524c87d66ab73def08064f0ce082e69641ed1c6fbd0c83, 0x145125328e8e0fcf02d09e4f241db37baee1166b5ddb5879ce1f04254af365, 0x1dae2e57ff3af26dc7ef125ffd5c1f99700824e262f673eb1d6f209a6ab653e, 0x17280e594af409916607b0b2a0725016111e6b2cc616e08030586cd79994033, 0x1848f840b1178239596b768f2c56c0c9a8b56a8e6dcbb96091d9a71480a528f, 0x2aa987771f04f84e69ed6b77e04ffe0fed4e06617914a3f0e9b641600bbb1a0, 0x791ca73846991a154d2e9d8d1ced93ee543fe804809a5e6a892007203a1ed3f, 0x4fe0a744e883f3bb48c54bfa13ad177c6c9d5673b86d7cd0db2f5ad8fe4558, 0x319b1eb8bec1aa56ae01db2a3b06846a3203f4e3ba4eed16d372fc264c2054b, 0x2ac2d9c28adf94c1fde3c45bbc53719674852e7394cd2c2451dc67df3f18706)", - "P->V[27872:27880]: /cpu air/STARK/FRI/Proof of Work: POW: Data(0x1101f20a)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 0: Number(7569508)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 1: Number(1125007)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 2: Number(11440447)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 3: Number(7561509)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 4: Number(5529085)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 5: Number(14392746)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 6: Number(2377986)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 7: Number(4806682)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 8: Number(8924319)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 9: Number(2756313)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 10: Number(2602857)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 11: Number(11092498)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 12: Number(11781671)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 13: Number(15197135)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 14: Number(5013749)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 15: Number(8035930)", - "V->P: /cpu air/STARK/FRI/QueryIndices: 16: Number(15393204)", - "P->V[27880:27912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 0: Field Element(0xb985fbf2f377cbd1450f9977cf04155dbf5eb0f86ad24f066d1195ed449558)", - "P->V[27912:27944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 1: Field Element(0x70e7ab0bafdeb191f54bcffb5e2c0858491926b270874c1ee054f394efcca0c)", - "P->V[27944:27976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 2: Field Element(0xc49b0a1ff52a03f8129cf0e03430759a101819768ea6faebee5ca877c39f4a)", - "P->V[27976:28008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 3: Field Element(0x5d58d588b0c68a20cad3c5c13ba2ec0f0938a7db569e52575d8047b10d7c059)", - "P->V[28008:28040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 4: Field Element(0x5bb3cb7e2f1483139e09adbc7f886563c16d9f74f348802a71c184cbdb3dba3)", - "P->V[28040:28072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 5: Field Element(0x59672be86a5649f6d6acc343dfd0a32b606a37ad60918becd52e0c86266a98)", - "P->V[28072:28104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 6: Field Element(0x4d501eaeb146b028f324ed8f830bd0758d810aaf9210bf9af1326be2eeafcc4)", - "P->V[28104:28136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 7: Field Element(0x62116d41aaa64ce2a7000014f71ecbb084abdf8a31a004e302e4c3400657b4c)", - "P->V[28136:28168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 8: Field Element(0x272bd9c1c8249555ade5219b07053d4af69c78696d473da034f7b063ba5f6f5)", - "P->V[28168:28200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 9: Field Element(0x65baac096f545e000dc11392c700b1d0da5521ef4c1039ef1265ffe17a1fa6a)", - "P->V[28200:28232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 10: Field Element(0x2f6cf8dcacc47033a3c9ff0b39e03191bb23c904b5d512aa24e1c415debe9c3)", - "P->V[28232:28264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1125007, Column 11: Field Element(0x141061d597943836de7f8285bf34b79711b0c0a1abe17229c475750c14d1990)", - "P->V[28264:28296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 0: Field Element(0x42654a8286bcc1fc8663aa535f0dbb753182810ca96101b5ae47c4e981a312)", - "P->V[28296:28328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 1: Field Element(0x43e2136f18554e3701fbb764347c5ddc801e8302e8f09983c0a3cbf9d17be2e)", - "P->V[28328:28360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 2: Field Element(0x7abfda07217fdec55adbdebe8deca5f1f2783540173324a0138a8991994fa77)", - "P->V[28360:28392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 3: Field Element(0x4a1c165b96a838bd12f1c872aa2d484783c283809edf04789b35b3468908355)", - "P->V[28392:28424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 4: Field Element(0x4c88c3c69693120b964999fa1d22cc02102c2c5fbab29cbd5756fe3d64442e9)", - "P->V[28424:28456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 5: Field Element(0x38d79d8145157b5a597cc5424a7ebd3b431a0b37cfaa4fba46f70fcc60291a4)", - "P->V[28456:28488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 6: Field Element(0x29ffd17ba67cb41ce281422b6700349e591ccdf8681d83d0a471366720870d8)", - "P->V[28488:28520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 7: Field Element(0x3e063eafa1590bbd0394c9a1615c3100f751ecccf97d21d8b9503e62311880a)", - "P->V[28520:28552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 8: Field Element(0x74493fef4077aa2f3bf9851634790d3076da2591f7e1b673ca0b0f8372160fb)", - "P->V[28552:28584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 9: Field Element(0x6e5c848291ac254a408f817b672bf2a20a1e42435efdca2067703f7862f0a0d)", - "P->V[28584:28616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 10: Field Element(0x33dc4fc3d74c775227b742cb122069909d3d26e9d2b650e7c4368e0a9acc195)", - "P->V[28616:28648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2377986, Column 11: Field Element(0x7b5cc71068595995481646dbec94611a0f21c48d400f131a268bce0b095f6d9)", - "P->V[28648:28680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 0: Field Element(0x56be0f75f46fbd9d1b61d147861f441d283074c123757479d0e7e4ac20c047)", - "P->V[28680:28712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 1: Field Element(0x1f2bdd61a7f78ee43ff3744121138853069265ada8dcaeb2011283cd0106950)", - "P->V[28712:28744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 2: Field Element(0x6506343a7543cdc186436b45fe7d22e853a90a60cf3f24808e46f7e1dbddd31)", - "P->V[28744:28776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 3: Field Element(0x679b939948a36b9d72dc5b79ffdd6a18a592b331da6ab845ad1411bf50d7e67)", - "P->V[28776:28808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 4: Field Element(0x27257e8402cecd2c610384e07108bf96fac1125ee0e61bdd2bbf06fae37e95d)", - "P->V[28808:28840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 5: Field Element(0x7a3b1e87092a160b66a05f2bf175aacfa96ee53962404ccc0c430b2f819a027)", - "P->V[28840:28872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 6: Field Element(0x154e18e224e17ccc8494fd6228691d13d0390a57341de6a3b2a330381a6776d)", - "P->V[28872:28904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 7: Field Element(0x86b071f5de9ca4ba543425e1df545b68f8d4a6355620ddaabf8aa5191b0cf1)", - "P->V[28904:28936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 8: Field Element(0x44727a9396e1af3181aae70c318a5409725bb1e1c61ea7ffa3d7ab364cf396b)", - "P->V[28936:28968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 9: Field Element(0x1c108227acab7681d90c1d58e6827e78ddf1c798f160278dec92cdf04338bcc)", - "P->V[28968:29000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 10: Field Element(0x42fce8a44e343407c539e36571ef5ebe3bee9a0ed512c309d1876ec70c7d3e6)", - "P->V[29000:29032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2602857, Column 11: Field Element(0x593393cd03b8fab9b0cf211183c6e3b351aa3ef11b702d524b9d21569cb7099)", - "P->V[29032:29064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 0: Field Element(0x5aae1bcda906f6d14fb0e130d9ebdd60296155c286cc9fc050c4d0e7a575703)", - "P->V[29064:29096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 1: Field Element(0x39af9e1f7af96bca3ef3b7fe48add18f0e459ec2f0baa4e1ae737d0218f0597)", - "P->V[29096:29128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 2: Field Element(0x71346d8639a852df2d42c41e53280b369f99f43e764387e574e8e9f4ad518cf)", - "P->V[29128:29160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 3: Field Element(0x2e8b6da0942cdae3d6d7ca6bc3699258bee8b07536728766c00c44ecc4b3270)", - "P->V[29160:29192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 4: Field Element(0x279365cad1f5d5f68d73e473987c74f46457179b2e20e1ba348920a04eb9eab)", - "P->V[29192:29224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 5: Field Element(0x26dca6b5a04b5872e1cbc53ed4e743fe19589e6ae49882b96b8204d1ad657d0)", - "P->V[29224:29256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 6: Field Element(0x20216575f1beecdbf321d47978e4a1da8f836e08bf97c60f2a92d42c8e68eca)", - "P->V[29256:29288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 7: Field Element(0x79698cf39d9938a3e6ecf6f0aebd1daa3183d189574c48131a7af5962fc145)", - "P->V[29288:29320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 8: Field Element(0x142b4efc8ba5361a2ab9f1b7e0808e6083d2ab3d342093f62c4c8e33845afb0)", - "P->V[29320:29352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 9: Field Element(0x68775b2dc9d0cdc67f64ca87c08a6d3106d192af4b5a6b0793a4e6bd91a9dcf)", - "P->V[29352:29384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 10: Field Element(0x2325b67c7bd5c8f435a356496852621ef6496b7503e78899884c83249e4b716)", - "P->V[29384:29416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2756313, Column 11: Field Element(0x46c0b3450a9707eca23ab41babc19b17c1a6fa9e1a8bdd6ed40a232e08197af)", - "P->V[29416:29448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 0: Field Element(0x5a13d8fa2cb771c126538f01e11ea0a02c74c6e4fc14c8a53c2915d2d6f3ed0)", - "P->V[29448:29480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 1: Field Element(0x348adbaf6b4331e195928cd6a20f883ae4de54bdaed08cb9fa6d3b9affb64d3)", - "P->V[29480:29512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 2: Field Element(0x57f130cc6f803326fb939467e2d7d833c55bfb6277d5cbcf40efc5218f07756)", - "P->V[29512:29544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 3: Field Element(0x69faa29569442e65c14b162f24725e9ffaa4b3fad7a83b592340badd4931923)", - "P->V[29544:29576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 4: Field Element(0x4a6f1368d14bcc2fa5d63994c93003475ef05ea61f4426f6892a8cafcdacb5d)", - "P->V[29576:29608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 5: Field Element(0x104ee3489917f8edd9f3a392ea156033f4c9468b84afae1b0f3238a34b51a04)", - "P->V[29608:29640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 6: Field Element(0x6dc8b639436ec2fe25ed80962010a0592059049b8bec4196c78c52c1f8c570c)", - "P->V[29640:29672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 7: Field Element(0x52dd742b2d3097d226cecc9c8420d44f0181a23e13cf892721b20d074d39c8d)", - "P->V[29672:29704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 8: Field Element(0x1b1eaf028dfc336b9d15daafab0efcde68455770d9fe9d83e5d38761a4d9c4)", - "P->V[29704:29736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 9: Field Element(0x1fa4dd0ff2191decba8a176f55172a32cdef257deec66d0b3dcb291554a14c9)", - "P->V[29736:29768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 10: Field Element(0x1435464dcba0cee2a438b3c0443b77e954f89860b4144a8bf14989e0a27ecd5)", - "P->V[29768:29800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 4806682, Column 11: Field Element(0x1dff0d141dc7acee4c2010303742a7a45c199d0cb2ca654414ff5db0da3d92)", - "P->V[29800:29832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 0: Field Element(0x5c5a8df2b528f924730da2b27c13475964ccb8766980f92305ca388e75954f5)", - "P->V[29832:29864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 1: Field Element(0x54eaec41b2082bcd359ebd0b06ee2665467ee0de036faffb125709dcec4cd09)", - "P->V[29864:29896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 2: Field Element(0x747224f9fff60401ebddb6cdcf99fbabc34fff2b8d69dc6c1d687e2c8cab139)", - "P->V[29896:29928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 3: Field Element(0x4cd859abd5a4f7f3d686c9cbf91f828cd62ee64cf9263da6744b09ea96b5d72)", - "P->V[29928:29960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 4: Field Element(0x311c079927ba3e49a58ca21b9ea7217937b1bcb661da876827eef45516c15a7)", - "P->V[29960:29992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 5: Field Element(0x6a3fd84b121e203c109d75a207af7b1f1ff16e3b23470e8b17a2fa64e2d414f)", - "P->V[29992:30024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 6: Field Element(0x739641504532aa31128652db7cd8bf59defd9b7d2f538d0588f871999f749f8)", - "P->V[30024:30056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 7: Field Element(0x4a1bb8994f25ac8d300d366c0b90937e250ce92823caff793e55b6001c1b604)", - "P->V[30056:30088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 8: Field Element(0x5a4bb8d3fc68957b167822d722201af3f5920bb2f0577d4b23e286e298cfdce)", - "P->V[30088:30120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 9: Field Element(0x1e4e7caad2d7bfd9222aed63ef351e90fe2c36f73cb5e4d895cf50dbf9cc7f7)", - "P->V[30120:30152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 10: Field Element(0x59345a6f858b69a6a5f7101acca6c6653f54ac8e973ab7a78aa8be058e83852)", - "P->V[30152:30184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5013749, Column 11: Field Element(0x2aa86965452a5de56c386f0ad343e90b4cc10d6df62aa1b38e5fe247bae1e70)", - "P->V[30184:30216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 0: Field Element(0x551e7ab9645a6cd0b36cfcd4a30d00311e4b23b1895f941ab846e8ebd492f27)", - "P->V[30216:30248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 1: Field Element(0x3cce36a4426323f55b6181d038889eea73d92d4f76e98ea0f2cb8b860828a7d)", - "P->V[30248:30280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 2: Field Element(0x532fffb55d1962257686879b562d43091930f92fd00b551aec0507d5564f742)", - "P->V[30280:30312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 3: Field Element(0x212e25d431d84edc07b5207a091405f3ebb2dda48de837b03a507b98e290889)", - "P->V[30312:30344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 4: Field Element(0x1885d12bcc6265690c7af085417471a8333ec7e736b56aedfeadf7f6db95879)", - "P->V[30344:30376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 5: Field Element(0x212fb9a449624a6a0b8c85b20225cbbf2d172cac5a264da8e1675214ab94b0)", - "P->V[30376:30408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 6: Field Element(0x23697514052e99612fb1b1581eb0e32b6d2cc4b7a2bad03db6a3eeead279698)", - "P->V[30408:30440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 7: Field Element(0x1748b9b9bc8dde1da830a38c65ec8396c89b7f665b8c0f852b3b1259f488998)", - "P->V[30440:30472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 8: Field Element(0x5eb119bac3b9389362ef2a4b00525901b88e65549a6489f21fb11ca6416d981)", - "P->V[30472:30504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 9: Field Element(0xdea2bf799dbd68b5d1b52ac9a755f8050923b78cb811e58b5bc86776f41c50)", - "P->V[30504:30536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 10: Field Element(0xa6b9147f283fdbd0bb5a897e2cc6ed2233391c13e9a06d5e471926e44fa436)", - "P->V[30536:30568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 5529085, Column 11: Field Element(0x6552357d146b351a86a164f47504f842c041de4aec9d6699148ca81eb7eb046)", - "P->V[30568:30600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 0: Field Element(0x5593d35581364f2a5af389e5a74a6be0a4d4ca78d922f786d0cfdbd4b2f8371)", - "P->V[30600:30632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 1: Field Element(0xd92458d0930ff0460e098f33a05c89ff7354d695e49540b05ba866cdb9209)", - "P->V[30632:30664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 2: Field Element(0x7c071f30c73b6ec7d3617b4ce928123845f2a012ec3adc238f95a91c3382827)", - "P->V[30664:30696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 3: Field Element(0x6496f95873badcfcc8104811b276d3e2224863680b89fea803e695fc6a4b19)", - "P->V[30696:30728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 4: Field Element(0x198ffeddc82daf7e9ebc67e1cfe3065c0dc9efa938e8b70531c7060b13998dc)", - "P->V[30728:30760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 5: Field Element(0x20395cd7fddf4619ff8a10317e84574799b57430fd9feeec631a76eb663ec46)", - "P->V[30760:30792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 6: Field Element(0x1987b63216536588911f9f237227c289db969bfe7b5661ecf14495e2e603a55)", - "P->V[30792:30824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 7: Field Element(0x72b33ee2ba045791b891973ffb013cf204b64da8611d1407f35fb665cd7413)", - "P->V[30824:30856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 8: Field Element(0x1286730f02f3d04ec3713081e4b4308207f216b75762b5f73f6695956bba8f0)", - "P->V[30856:30888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 9: Field Element(0x39ad419931151ac6c81daba6b2562f73d06b894f13d50502b5c612c4f5a1c51)", - "P->V[30888:30920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 10: Field Element(0x1f2f30f467cac848f54765a70eccfc8b087967e4324f8b298d757f9107bed2a)", - "P->V[30920:30952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7561509, Column 11: Field Element(0x33839b17488d2f7665d4fe1e42e5cbf6124f26f9cc3403699f2bc9ed0cf79b1)", - "P->V[30952:30984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 0: Field Element(0x79cf20b144b25e99e6493d72300e772ae8ff014212d6c884ae561aa9496f3e6)", - "P->V[30984:31016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 1: Field Element(0x2bcd18c943bf60f466c68df557f710a8dc4c75240f269891ca1998872e23a4a)", - "P->V[31016:31048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 2: Field Element(0x6dadc9797c3c9b1581cae5fc57988cf41a4ecceb5771431399ecedb26425b7c)", - "P->V[31048:31080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 3: Field Element(0x42f6dd5300703923738839d0340cc050350c266a3cb9c94a543b6acb5bfbd0e)", - "P->V[31080:31112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 4: Field Element(0x3221a366dcdec082622002dcdcc629f4170c46cc8c4356479fc23ca69121ba5)", - "P->V[31112:31144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 5: Field Element(0x7ab45b0e3e5d342d5b2861e0a18139acbe6f01d7cf13791706bdbe466fb9cdb)", - "P->V[31144:31176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 6: Field Element(0x27c760d47b7a7e0bed756fd277dea5aa5e1cd6bcaef4b86afbc3a279c53ca08)", - "P->V[31176:31208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 7: Field Element(0x2e0958539e511a6827c5cdc90f9a9d4aa11b65c155cb60a29a926855f1e1ac)", - "P->V[31208:31240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 8: Field Element(0xe222f03d27ca8a956b238b8a7dd0f8cd5d49300b343952cf0b3a743eca8f69)", - "P->V[31240:31272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 9: Field Element(0x283d205b671e027e67ad74f9d51a27f350b3603b00572bd93b82b2d3605fe8)", - "P->V[31272:31304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 10: Field Element(0x7dd63962951e201f4e99bcacdd69c428e569ff46c0a5354c60ccd5d3bbb6f3c)", - "P->V[31304:31336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7569508, Column 11: Field Element(0x57184ad16c70ad55939fa65fb1e6f52bc85ba6fd3673638273c62580ff804d5)", - "P->V[31336:31368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 0: Field Element(0x72ec89bedb6e5adc7339226e54fd84f441ded369fab853aa86a85729b6d7307)", - "P->V[31368:31400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 1: Field Element(0x6d6c88379f26adbe81a7aec6b3e02eb69f8452b55911edb7561b440b0a1ced7)", - "P->V[31400:31432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 2: Field Element(0x40f357106423fc5e8ab4e480f1f4d42efcaf2b3be62a657530f2620e99f523)", - "P->V[31432:31464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 3: Field Element(0x61bd4f319239b7af8e31e19834545cb7e53f5d297be70da31ac577e058975ec)", - "P->V[31464:31496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 4: Field Element(0x4022428325c4b2ab89b1c344c34eac70157afcdcb636409180fc37465e69fbb)", - "P->V[31496:31528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 5: Field Element(0x2c224d71667fd313c2c564ac010963f1f4a3c55fb9bbae15bb9ac5a0abd8368)", - "P->V[31528:31560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 6: Field Element(0x4e680bf2e58d48c9b2961aa757ca16d8c367c6b5bd6d57a8c99bb1b94ae990d)", - "P->V[31560:31592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 7: Field Element(0x7cb0def0310385f9ed6b6310ee828e21e58b85e32d2c762d1f6c606417acef1)", - "P->V[31592:31624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 8: Field Element(0x2b680e24db5b2ee2ea41c4288d70c076e773ea27758728c501b0737445fb257)", - "P->V[31624:31656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 9: Field Element(0x250e321e5de4dacbf9724b809b08aa7b8f8a2f7f59ea6492c9a007b8ee60775)", - "P->V[31656:31688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 10: Field Element(0x6fbc28c9b9435354b518b7e97779cb16b727dc5ca05a4b2b9c259a8afa8e7b)", - "P->V[31688:31720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8035930, Column 11: Field Element(0x2e6aeab86542e087b368941a5e05c21a33f28144545c56698a6a3fe19cad4a7)", - "P->V[31720:31752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 0: Field Element(0x3635bd4adfd4324496389f8dd1e0c09d2fed4dc2c993168550b1ad90b1b3986)", - "P->V[31752:31784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 1: Field Element(0x324387827b046aaa96ccca8c9ff3e42ef725572547e5fdd8ff2c37291818314)", - "P->V[31784:31816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 2: Field Element(0x7b7740ace7660d87f2e57f1dabb17b9f7f1b1b4586eb14b34414a884aec98a8)", - "P->V[31816:31848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 3: Field Element(0x62d79572287cd470db0fcda121e9473757ffc81798a463718fd9a34b408273d)", - "P->V[31848:31880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 4: Field Element(0x6ea5bb3384bc3c42c71607e4362b22e1eae1126c132d6a6d7efa27447bfd2b0)", - "P->V[31880:31912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 5: Field Element(0x5fad51658e69cfc8b5d053890062e4d182678a88fb9048081cc1157513036e4)", - "P->V[31912:31944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 6: Field Element(0x326efe7ff5ac4152001fcff3f4fc01245d4eaef6abec7df2af0a3c20e52d2b5)", - "P->V[31944:31976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 7: Field Element(0x7113ce66fa9e4d0c092371d829f0d719c9f016fea1e9566ce5ab12f72ad3f46)", - "P->V[31976:32008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 8: Field Element(0x51946a85bfa736204bdc2580aa079eea23a43dfa54b47611663195ca2c09351)", - "P->V[32008:32040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 9: Field Element(0x6a68d46d3d0f4bb56fe4234226b402937bf10230541df258c0727d724ef748b)", - "P->V[32040:32072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 10: Field Element(0x7f304ac719dc27dd92e8558c8584b308aa89490977d08b5c683687324932b67)", - "P->V[32072:32104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 8924319, Column 11: Field Element(0x659d7360113197eaa63e87e11cbadabb490f043a5e98d8422ef479664841a7b)", - "P->V[32104:32136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 0: Field Element(0x55e54841c5f2a70667122c95bc9ee40be00211a2141d7c7078021ded7d1260c)", - "P->V[32136:32168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 1: Field Element(0x45562c4254821a306ec6f2c472bb0b5032f477ee88e4a943eea63b3aee90e4b)", - "P->V[32168:32200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 2: Field Element(0x4c87fce16b3347867ba6fd31b4af100ac4c07b4429d6bf554528b9dc71b9a45)", - "P->V[32200:32232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 3: Field Element(0x4ebc1ea46c633f14b3a50882ea40070efd026b75a8c98732cdbd57d1aa70ab)", - "P->V[32232:32264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 4: Field Element(0x57f72a20d3a8166b9af4dc5dfdab1c670ab7189f194c3e44c58afd8cb1be2ab)", - "P->V[32264:32296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 5: Field Element(0xc4f0536668374d66e1894e077ca0caad5614ea2c7475daa98d8b750a36ef48)", - "P->V[32296:32328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 6: Field Element(0x4fe0a3bf24079f85fa03ac75213e33c46bdc108a5bb075a3d5a51f36802aeb2)", - "P->V[32328:32360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 7: Field Element(0x3b1636a20dca43a61fbba15ecdd6d80caf455e321d1ee20e8e15e029d76e0d7)", - "P->V[32360:32392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 8: Field Element(0x66b5d2b73bb880c416c6989098d01d3515cc50fdc3295180ec336d8d0f636a5)", - "P->V[32392:32424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 9: Field Element(0x5afa0cb9a8c9b37087af2a35cfff4596c97664851755143a1ac53c330ac8bc6)", - "P->V[32424:32456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 10: Field Element(0x2d2e398ab0e489c318862a1d4330b14c87ef3c2fe558b561b17099a1da126ce)", - "P->V[32456:32488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11092498, Column 11: Field Element(0x57fc2ed230428675c5e56b474496938842c7bc67b5b306f845433423ee33ef6)", - "P->V[32488:32520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 0: Field Element(0x13026a2200c56184c8f5478c45d2bdfd52bb872a6d1da33ae97a68660f9c899)", - "P->V[32520:32552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 1: Field Element(0x2459272eb3c1f1cd2830c3d4f9e7482e9a18934c773403109aef118c080207a)", - "P->V[32552:32584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 2: Field Element(0x7d050b3bcf17a7c3a316e9d7040f5a5e6d2ac24f4c5386374d268f8e12627ce)", - "P->V[32584:32616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 3: Field Element(0x32663486cade2b5da511b8570f8a3417973a852a89a8de733680a7a54dcee9a)", - "P->V[32616:32648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 4: Field Element(0x447b1c87d0b6dea8fd4f3723cf0adba910b93f5e6e48bfc5416ce2bf608ff88)", - "P->V[32648:32680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 5: Field Element(0x5aa5d68969d74aaff1d2aa9fb189f7913fa0eb3c448909cee6ce6d2907831fc)", - "P->V[32680:32712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 6: Field Element(0x16763909cdfbae375b79c4328d014f9a56f10dfa5113735dcf9e778440409d8)", - "P->V[32712:32744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 7: Field Element(0x1936f6e074a2210c170ceea717851aea0d94f4c6f06326109a9f91bae828290)", - "P->V[32744:32776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 8: Field Element(0x393211ab628f74cb6a790e5d7fb5e8d4e6ec1763be80d95533b1243c7c8cfa7)", - "P->V[32776:32808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 9: Field Element(0x183d0c3998693964d6797616b9b832f967c018efb7dbc68c2c228ccd113bc70)", - "P->V[32808:32840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 10: Field Element(0x7e72b2f606098fa6605d92cd13c610ceb95f4f1c44fed533f04609583448fef)", - "P->V[32840:32872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11440447, Column 11: Field Element(0x2c6e323acc3ec5424a75057d316498a960f5da7fccb85b8b9b016b06df2270e)", - "P->V[32872:32904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 0: Field Element(0x369865dde376e7761d7fe8cd0a1739a8be7e482caa608722fef21974b9a870c)", - "P->V[32904:32936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 1: Field Element(0x7bc465c4cb01abb44a4b963f1be0cd13fe5a801da84e6cc2fa70a564f1fb2d3)", - "P->V[32936:32968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 2: Field Element(0x29130d123f72acdafce38a97cc59df483ccb0e7b163fe1aed0ccb0ca5d970ef)", - "P->V[32968:33000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 3: Field Element(0x264620283658c1111e8a53316a80c56dc9cd88dfb2473f4e4189edcdfabbf8f)", - "P->V[33000:33032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 4: Field Element(0x6cbdf0d91678cccc1113f6524c95b7adc9e92420493a095a3ddb12c36010c3c)", - "P->V[33032:33064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 5: Field Element(0x3d4e47d8ab7bc32193041fb102148a5d5261d7134223d3297a2c67f3a4d029f)", - "P->V[33064:33096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 6: Field Element(0x52bc0d06521d73535edb1f563f907f3c834fd02dd191529143585a903714d70)", - "P->V[33096:33128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 7: Field Element(0x5cd6f46512ad13286d421a96519d866144f3d695e982f1a9585baede331ba51)", - "P->V[33128:33160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 8: Field Element(0x23e8e1955a4ef4491347b4dec07ecffa60f175de4747130a6e77b1d5a203d4b)", - "P->V[33160:33192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 9: Field Element(0x9a9669b8faa7bd08b4d9c9514c5359e6ac613fcc0e3a29b4816522c6d9efed)", - "P->V[33192:33224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 10: Field Element(0x438a90594c090d677951a900bf1c7f8951c0edfcc69ea2b1c3c27422437430)", - "P->V[33224:33256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11781671, Column 11: Field Element(0x210370de8f2c7b0b57a995bd04623a2d52222443b5345c6836985cfa8647193)", - "P->V[33256:33288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 0: Field Element(0x1a25d78edffdb20c582b118329a1bc379933047171d5d3e10d32fecedcf6cf0)", - "P->V[33288:33320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 1: Field Element(0x555de2cf19d945d2d483d12e8bd1cf08e1acefe444075f2776b21f39f247b3b)", - "P->V[33320:33352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 2: Field Element(0x550099fc66fbff1ce3239fdcc07fee527633bf9b7dbdfe701d9040976bbb889)", - "P->V[33352:33384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 3: Field Element(0x3f42e951c784f6646e858621e977584397c9fa60e8036509ee709df2fb66fe1)", - "P->V[33384:33416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 4: Field Element(0x6e7513073b65a44beedb0c9e6cbbeb2a775c5ab578b3064afa0b30106d633e0)", - "P->V[33416:33448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 5: Field Element(0x541be11fa1ce52d5257986ccfbf86121bb75947b7443556d1a6459216c7c664)", - "P->V[33448:33480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 6: Field Element(0x4cf2f2a6b28b912e31010aa723800ce2ed027985baa900dbeed72fc1d224e6a)", - "P->V[33480:33512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 7: Field Element(0x7c10b700b089159bb0c205e6fa901063ebf1d0e6a41873a3ab15071ebe4d940)", - "P->V[33512:33544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 8: Field Element(0x7e9767eaf6846b21229a234f2ce420191e49fde623d8375214478f1f7b425c8)", - "P->V[33544:33576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 9: Field Element(0x51e2b7a6ceb5b2fdfc98beabdf2cd3b26e89921c8d7de06eb882e708927af93)", - "P->V[33576:33608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 10: Field Element(0x7060d466a71a58a9a0668a0f558dc60702f0965304d57dd6651487e1e2edcc6)", - "P->V[33608:33640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14392746, Column 11: Field Element(0x65298b6af858420ca212e0c5ef437af69a845f44d713b56ff99902f6e98de9f)", - "P->V[33640:33672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 0: Field Element(0x577563bf46e41b6ffe44b6225621406bcf5dd570d7c745fa1ad021e685fc713)", - "P->V[33672:33704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 1: Field Element(0x7c1cc8822b11951ed0c0cf224c471f7f90464bcc1ee88cb4446954cccc3d97c)", - "P->V[33704:33736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 2: Field Element(0x3086d0e3f5e41ebfd6d27ccb88991eeafc6f3da690dad57b25415e101f38e2c)", - "P->V[33736:33768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 3: Field Element(0x54ec40be983795394b955b33edd24cd61d7b2176f8e803726eba3f5163d8751)", - "P->V[33768:33800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 4: Field Element(0x6315180a71b93641c9c1c9a06648f012017a19b8278e16a76cbe1eb05fe5ba)", - "P->V[33800:33832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 5: Field Element(0xd5ec57f325a73e58e12808715a599f42c77421b9a45329db4c0b7ddeab980b)", - "P->V[33832:33864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 6: Field Element(0x54c17c4a0cb6afcff3e5883a841de03c1d84e8ec3110ebb104cb0cb969f8c66)", - "P->V[33864:33896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 7: Field Element(0x47d78760c5025bf76c9ace8af5b9e674b4a7a0b2fa0bfdb9ecc433d19590eb2)", - "P->V[33896:33928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 8: Field Element(0x3c49ad20b6d00aa9f104a048ffbca0c53ca89286ad577e7cf66327d7666d846)", - "P->V[33928:33960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 9: Field Element(0x42fd908e3938096842475e46bce4b8ef31f01728616d009b2be0c3190ad6e10)", - "P->V[33960:33992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 10: Field Element(0x4965d5454a366eeae83e1564af169037d158322c932ce032b7ce201a48b659f)", - "P->V[33992:34024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15197135, Column 11: Field Element(0x38b9b8563fe182d58ec26fbaed12298ac5e77d167a021649bb7e34c0f60b4f2)", - "P->V[34024:34056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 0: Field Element(0x26e46773bf4cd2ad88a232a8578bfbfd19562ba500668514849b03a58e623b)", - "P->V[34056:34088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 1: Field Element(0x677d8d7b1319973d548ed652270594f7ad2b9030008b59179d301d37fca184b)", - "P->V[34088:34120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 2: Field Element(0x4dd04b0dc30fa34599807fcd76e76d816de34dcea66c17ca7e855da8121f2ed)", - "P->V[34120:34152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 3: Field Element(0x11c514b21f97a71be908b23f9a9c47023f5cb5378baadd6a37106d46358ef70)", - "P->V[34152:34184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 4: Field Element(0x5dc247d95bbb872500467347f990d7c9c543315b8e1da9c10f25cc8e12031c6)", - "P->V[34184:34216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 5: Field Element(0x5f3ba7b1f5b8070ec53719cba34d4ab837043cbddd951f0d6e791d196d1ca00)", - "P->V[34216:34248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 6: Field Element(0x5baba994fb04fcb2469a6ca24e6c404efbb7591f7b829f556dcfabde866568e)", - "P->V[34248:34280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 7: Field Element(0x9f7a85253a9f32ce3ee856b7d98a16f5a3878225a93f199b70a64b9426d505)", - "P->V[34280:34312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 8: Field Element(0x5e2fcb894bfb3e35d3c36ba17f3cc30fc5c3c623d2f4ea288ffd621b2cac340)", - "P->V[34312:34344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 9: Field Element(0x35326482f6e495eed2c547ddbc4575b465c6137f2bd745ab39cc7e44a0adf23)", - "P->V[34344:34376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 10: Field Element(0x24de024de0a9b4b688c5f0a0283f43720655a973a2d77dbe281c54e131e5f3d)", - "P->V[34376:34408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 15393204, Column 11: Field Element(0x453019b208b64bfd2eab9133ebec7140794cdba9db52a2535dc864fc31512fe)", - "P->V[34408:34440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17902222: Hash(0x000000000000000000000000847110e8e38a9181a5f99e962ad905e625602890)", - "P->V[34440:34472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19155203: Hash(0x0000000000000000000000007b359ce31dd7925625da32ea8217a260834a5242)", - "P->V[34472:34504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19380072: Hash(0x0000000000000000000000009e8359ec697780673a0f1e6cd95a61db556f0032)", - "P->V[34504:34536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19533528: Hash(0x0000000000000000000000008b3ceef0da2f837be1e8af2c30e37fe8a03c4a49)", - "P->V[34536:34568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21583899: Hash(0x000000000000000000000000909e5e8461184585a6e72666e7ca83532b3ce286)", - "P->V[34568:34600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21790964: Hash(0x00000000000000000000000069229eac17ddb6eaf52b7977703875e25563b3f7)", - "P->V[34600:34632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22306300: Hash(0x0000000000000000000000001649361ab8a38b4b60018ada4458e593a228cb00)", - "P->V[34632:34664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24338724: Hash(0x00000000000000000000000027138b34b342cdd143c4c8cbf244be6b5486a7a3)", - "P->V[34664:34696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24346725: Hash(0x00000000000000000000000079bb98a0e03f74117979ed6d8165f8e19d6ebd25)", - "P->V[34696:34728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24813147: Hash(0x0000000000000000000000008bb83c1a46ae44ac893ce4637b762968e545819b)", - "P->V[34728:34760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 25701534: Hash(0x000000000000000000000000b554ff4013de6122251afefe78a7a946fbdb511e)", - "P->V[34760:34792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27869715: Hash(0x000000000000000000000000006fbd4cd2880490451d3dceef10257ea0d9a20e)", - "P->V[34792:34824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28217662: Hash(0x000000000000000000000000ce26dc7833db178869ddaa016e36d8c4cb13c485)", - "P->V[34824:34856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28558886: Hash(0x0000000000000000000000004955ff374d959b58bd6daf1113dabcc4e34839cb)", - "P->V[34856:34888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31169963: Hash(0x00000000000000000000000078e0d0db1dbe97f497d9baa6ff73f1e7589b51c9)", - "P->V[34888:34920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31974350: Hash(0x000000000000000000000000b9bebda1f1a534a89888c54db7993c2d8950dd09)", - "P->V[34920:34952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 32170421: Hash(0x0000000000000000000000001371fe924297285f5e3bdac28fa420976a9f295e)", - "P->V[34952:34984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8951110: Hash(0x000000000000000000000000dbabb6979e141fbf064ff8a3ad6a779d2fe05a87)", - "P->V[34984:35016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9577600: Hash(0x000000000000000000000000fe065a6119872b4a183671c1ca58df8de3252a02)", - "P->V[35016:35048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9690037: Hash(0x000000000000000000000000e987ec6a4689bb555f7407230aac63eaa15df7ce)", - "P->V[35048:35080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9766765: Hash(0x000000000000000000000000ef3c9471c36da1dd8be3cbb5f449985194b13064)", - "P->V[35080:35112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10791948: Hash(0x000000000000000000000000d1020cd605b54d8ebd1565515c4f288dfc5dac6b)", - "P->V[35112:35144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10895483: Hash(0x00000000000000000000000083c0641608e68f53b8fd82335c2db07dda8a391d)", - "P->V[35144:35176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11153151: Hash(0x0000000000000000000000002eb49fce02e1486f2c7b28c3b2d5188873b4a2ab)", - "P->V[35176:35208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12169363: Hash(0x00000000000000000000000019fdcaa63345a317313ae946fe351232afd335f7)", - "P->V[35208:35240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12173363: Hash(0x000000000000000000000000203834b79d200481fc67937cf39d1b35b8cf0084)", - "P->V[35240:35272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12406572: Hash(0x0000000000000000000000003ecc1cb25a4ef2d36189abe87421dc596e482e49)", - "P->V[35272:35304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12850766: Hash(0x0000000000000000000000007b44b74bc1566242acc85541ecd6acba83d4a9e6)", - "P->V[35304:35336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13934856: Hash(0x0000000000000000000000002b671cadbeb8f6ed595230ba5e1a54d91c6c85d6)", - "P->V[35336:35368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14108830: Hash(0x000000000000000000000000437a8cd4a2f2c1c1a277d93035b5889636bd7904)", - "P->V[35368:35400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14279442: Hash(0x000000000000000000000000c80af24ad9011aae16d49fbd444a94122ede53b6)", - "P->V[35400:35432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15584980: Hash(0x000000000000000000000000a0609c6825f62ed566e94a255c6eb5a2102b4fab)", - "P->V[35432:35464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15987174: Hash(0x000000000000000000000000fb1f5043f5e10abd620dc7341a4570b94613bd2c)", - "P->V[35464:35496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16085211: Hash(0x000000000000000000000000057ad1a0720cfc9ee6360d641206d8da3099fddb)", - "P->V[35496:35528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4475554: Hash(0x000000000000000000000000a8f60a53c02610e84ef6bf5251cc0e8e67120609)", - "P->V[35528:35560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4788801: Hash(0x000000000000000000000000bda56b3a8a20bed9227eaf88530afdbae1a088e7)", - "P->V[35560:35592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4845019: Hash(0x000000000000000000000000abc61a1278cebbf835e2a9eaa02ae72a1f9a4ca5)", - "P->V[35592:35624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4883383: Hash(0x000000000000000000000000ed6c0ac1a291ab66e5eec1017ddc8df2e19000a7)", - "P->V[35624:35656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5395975: Hash(0x000000000000000000000000a7063f9bbdb59696cb3cfbd9acdb3cdf9cabab65)", - "P->V[35656:35688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5447740: Hash(0x000000000000000000000000513cb8f557ef4612aaec9854b92c261668258e71)", - "P->V[35688:35720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5576574: Hash(0x00000000000000000000000000996345285cac6eef527c616968294817d30cbc)", - "P->V[35720:35752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6084680: Hash(0x00000000000000000000000090c29eac4d7234d838c0380fbb174d38cb4f0da1)", - "P->V[35752:35784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6086680: Hash(0x0000000000000000000000006aa58fe137ced4d6ec1bcc8c4f18fb6530c409d0)", - "P->V[35784:35816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6203287: Hash(0x000000000000000000000000e6c795852e1cbbde27e97093570cbc0c72820985)", - "P->V[35816:35848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6425382: Hash(0x000000000000000000000000b4003d5ada8aaf4ae73b72bdd09739df41f88d66)", - "P->V[35848:35880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6967429: Hash(0x0000000000000000000000007c89410fe60ddce230d8e5e936af342c44a2c2da)", - "P->V[35880:35912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7054414: Hash(0x0000000000000000000000002bcf5634e3eb7888cd17350495096dcfefeac1f3)", - "P->V[35912:35944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7139720: Hash(0x0000000000000000000000006dd11dca709047f34680fd4d35f29190e9cc6da7)", - "P->V[35944:35976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7792491: Hash(0x000000000000000000000000571e2d86670945ec1e341c53da731c36eef5dfb0)", - "P->V[35976:36008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7993586: Hash(0x00000000000000000000000034bf1408ed1c0ca67aca2d6623d9dffda11f0d06)", - "P->V[36008:36040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8042604: Hash(0x000000000000000000000000e8c06278e7f20dabe4046c5c2cccd1dadea748bc)", - "P->V[36040:36072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2237776: Hash(0x0000000000000000000000004cc16ca68aa0bb19f619016beb208d2cf01d7804)", - "P->V[36072:36104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2394401: Hash(0x00000000000000000000000069ba3f8f09f588ea83805cea23d73e1ebfc5fcc4)", - "P->V[36104:36136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2422508: Hash(0x00000000000000000000000071783bbf42de9aba2b30389d39fafdd5d5a57dbf)", - "P->V[36136:36168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2441690: Hash(0x0000000000000000000000001999475e51e1597aa30bb21cce91947de99cfc77)", - "P->V[36168:36200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2697986: Hash(0x00000000000000000000000079d4d334c45e472d0af49b4b2fe1e27d20ec8d2a)", - "P->V[36200:36232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2723871: Hash(0x00000000000000000000000087457c2900d52a4494406b4c2b685dee2c55dc28)", - "P->V[36232:36264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2788286: Hash(0x0000000000000000000000003be64fb292d52a9a2850ac3273db23da3b224a1d)", - "P->V[36264:36296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3042341: Hash(0x000000000000000000000000dbc37a8905b931648a7e3c1ac08d9824cf3330e8)", - "P->V[36296:36328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3043341: Hash(0x00000000000000000000000053d23a6d1e874d3079e4b262c88c8076bb6901e8)", - "P->V[36328:36360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3101642: Hash(0x0000000000000000000000006a8536bf8babce2a31fa3e0522f28235acc379fc)", - "P->V[36360:36392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3212690: Hash(0x000000000000000000000000791f84239a5f6aa5dd52a2365be7902aa5fb4f7c)", - "P->V[36392:36424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3483715: Hash(0x000000000000000000000000601dca709fb4a45be804085818733fab227ea591)", - "P->V[36424:36456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3527206: Hash(0x00000000000000000000000025afd1d3acecfdb3fa5455f766ed53d8036731ff)", - "P->V[36456:36488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3569861: Hash(0x000000000000000000000000fb22c3ccce93fbf79d733646c19d999f4434390a)", - "P->V[36488:36520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3896244: Hash(0x0000000000000000000000003ec012915a40e4ef86660578df8689863f4d40e8)", - "P->V[36520:36552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3996792: Hash(0x0000000000000000000000000bd97a172a6d4a145e0ff82057cecb5a73b09a4a)", - "P->V[36552:36584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4021303: Hash(0x000000000000000000000000e7c026d76272535dc9f422d3cb61fe85eddfbaae)", - "P->V[36584:36616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1118889: Hash(0x000000000000000000000000c9a259a8f2d27ea42b920a99ccdba0e4679930d6)", - "P->V[36616:36648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1197201: Hash(0x000000000000000000000000f46108e7c626d9d56973e0ef22d6ff02814f54c6)", - "P->V[36648:36680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1211255: Hash(0x000000000000000000000000d1e0498fc055b2dcb6af9e657a72f2234f46f469)", - "P->V[36680:36712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1220844: Hash(0x000000000000000000000000319c84b03133e6382fba32075fc486d3b7ef1aac)", - "P->V[36712:36744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1348992: Hash(0x00000000000000000000000044067cfecaca13cd8a4aec1b486ad2706e90cdb6)", - "P->V[36744:36776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1361934: Hash(0x0000000000000000000000009fe6f2f7f2a7cc2590536056bf27221dc3b39338)", - "P->V[36776:36808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1394142: Hash(0x00000000000000000000000023d5380e74380a29686860b5cee821601966db28)", - "P->V[36808:36840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1521171: Hash(0x0000000000000000000000007e69ad17862a5c5486efbeeb3ac020ed0fee30ba)", - "P->V[36840:36872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1521671: Hash(0x000000000000000000000000bc5a71d2028aa4546ecfedd8a276fd77c2bc37dd)", - "P->V[36872:36904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1550820: Hash(0x0000000000000000000000002da53b47c06e562feccc10b929e43acaa8ac60e8)", - "P->V[36904:36936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1606344: Hash(0x000000000000000000000000b1e2558adff29c1694946d4acff05e9d6052de6f)", - "P->V[36936:36968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1741856: Hash(0x0000000000000000000000005eb24df373406f8559c55356722b0779de9b9287)", - "P->V[36968:37000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1763602: Hash(0x000000000000000000000000fde37385fbfc1f855f92e6ce0a5e2f8d3a101361)", - "P->V[37000:37032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1784931: Hash(0x0000000000000000000000006380ce262ee771f7a6938c4bd9f2e262c8dd314c)", - "P->V[37032:37064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1948123: Hash(0x0000000000000000000000008fbb470c5892ae95576b23bf3118ce5b5e200146)", - "P->V[37064:37096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1998397: Hash(0x00000000000000000000000098573b5430333c6a3d20e6eb589ddb1795fa3718)", - "P->V[37096:37128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2010650: Hash(0x000000000000000000000000de085471baf479b176c8e5b1a0755f3f34e58780)", - "P->V[37128:37160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 559445: Hash(0x0000000000000000000000009029051c0b365bf5fd63c476d0771d9a0e6adc84)", - "P->V[37160:37192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 598601: Hash(0x00000000000000000000000012bd543811a394537328fd2335276cc683ac0f62)", - "P->V[37192:37224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 605626: Hash(0x000000000000000000000000b88c33e28472c5f2c673c161706febde1c1201ac)", - "P->V[37224:37256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 610423: Hash(0x000000000000000000000000dc68bca6527eb9b8b571c9bd5c3bbb7d6b1d0965)", - "P->V[37256:37288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 674497: Hash(0x0000000000000000000000008afb06ad7007645aaa842bac5fa5e4c00201edce)", - "P->V[37288:37320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 680966: Hash(0x000000000000000000000000e307f9bcd1477c42d2a222de1894793a5c665330)", - "P->V[37320:37352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 697070: Hash(0x00000000000000000000000051ef85dea4bcd8a488a9e3ac628c1cb00a545fed)", - "P->V[37352:37384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 760584: Hash(0x000000000000000000000000450aa3616ae4472b075b5feb81d0a34355d954f4)", - "P->V[37384:37416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 760834: Hash(0x000000000000000000000000898bd0242cd853df358980cfaaec388d353cd4f3)", - "P->V[37416:37448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 775411: Hash(0x00000000000000000000000047142ad368fc7263f4cbb7ea6912e01776dc9992)", - "P->V[37448:37480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 803173: Hash(0x0000000000000000000000008902a33ca9bbdbafed13501eadd05678df0d5a1b)", - "P->V[37480:37512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 870929: Hash(0x0000000000000000000000000bfa47dd95051d9d30344f8a77a1adc22f02c017)", - "P->V[37512:37544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 881800: Hash(0x000000000000000000000000b2bef0e3558c4c2fb25e94f42d09e9e2e0e108fa)", - "P->V[37544:37576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 892464: Hash(0x00000000000000000000000098c2e744b92496f826e0cc3bf25739bedd0daf68)", - "P->V[37576:37608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 974060: Hash(0x0000000000000000000000000d003fc699af36f86f95ca4eea5b8ad535388403)", - "P->V[37608:37640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 999199: Hash(0x00000000000000000000000006115b4f5e4f2d3bc5a650fd7849f79deb4f373c)", - "P->V[37640:37672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1005324: Hash(0x00000000000000000000000086f170ade0415af46f26ff24f36989f6c5c240fe)", - "P->V[37672:37704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 279723: Hash(0x000000000000000000000000dd316320c2b7a10ad44ae858b7d2ded7f329a2f3)", - "P->V[37704:37736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 299301: Hash(0x00000000000000000000000053efa8dcba32436f025b60fceeab0ab2c8683735)", - "P->V[37736:37768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 302812: Hash(0x00000000000000000000000060ff87384f15ffd7127817736aa64428784073d0)", - "P->V[37768:37800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 305210: Hash(0x0000000000000000000000003daf05bd13bfab3f8876696e633df08e2693b7ba)", - "P->V[37800:37832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 337249: Hash(0x00000000000000000000000026cb4de21583e2ea23049cdfd9949faead7fb274)", - "P->V[37832:37864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 340482: Hash(0x0000000000000000000000008292df7e31e894f3f61fd7ac60680a441874e8a9)", - "P->V[37864:37896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 348534: Hash(0x000000000000000000000000042a3e56a48f0353b85002f5d63b0c766513417f)", - "P->V[37896:37928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 380293: Hash(0x0000000000000000000000009af623a283d79b1632bc6853c3a92d2b4dcc91fc)", - "P->V[37928:37960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 380416: Hash(0x0000000000000000000000007f2ed7fbabd33f71f34eabe805fbc0f15b629017)", - "P->V[37960:37992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 387704: Hash(0x0000000000000000000000002b8fefe1203504e06a47b731246dc750e5269ced)", - "P->V[37992:38024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 401587: Hash(0x0000000000000000000000005e2b5bfdd72bbe4e7569f794af21d8d8b33c61fa)", - "P->V[38024:38056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 435465: Hash(0x0000000000000000000000008a90896c7c33d67d3cdf30b040344c6a801a85e0)", - "P->V[38056:38088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 440901: Hash(0x000000000000000000000000eb3229512a46dbb9dad1c2b4704e3c6eb56aa90d)", - "P->V[38088:38120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 446233: Hash(0x0000000000000000000000007f6b0faf5cccb4754a4b8377e974f3664d44204b)", - "P->V[38120:38152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 487031: Hash(0x000000000000000000000000af1ff0689df797854972e5f7bea47bfaf5985522)", - "P->V[38152:38184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 499598: Hash(0x0000000000000000000000008e3f8af9fc287a1aa055d4f1c3846b48a9ac604e)", - "P->V[38184:38216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 502663: Hash(0x0000000000000000000000003bd6cbf02d7b02e9f4bcfc20743b8d48a4ed491d)", - "P->V[38216:38248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 139860: Hash(0x0000000000000000000000006371dc57714abfc532a37e28df39e69819219564)", - "P->V[38248:38280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 149651: Hash(0x0000000000000000000000000ad3e98979559f15c60e474ba92b59fe91a3ad8f)", - "P->V[38280:38312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 151407: Hash(0x000000000000000000000000d78baa6123b4d442ac614850c5836920480c8810)", - "P->V[38312:38344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 152604: Hash(0x0000000000000000000000007667d852fd50d953940e34af703e07df2362a4d5)", - "P->V[38344:38376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 168625: Hash(0x0000000000000000000000006de713ede19af050036cd55151d94242b29c3114)", - "P->V[38376:38408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 170240: Hash(0x0000000000000000000000002443c027f25451b313b8da106791fca8c24176e5)", - "P->V[38408:38440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 174266: Hash(0x0000000000000000000000006f5a4270a3597dbe0dff54323bfef53cda1f2529)", - "P->V[38440:38472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 190147: Hash(0x0000000000000000000000008a361e35f5dfe7866e7b7b8be2e6a8be51478fa8)", - "P->V[38472:38504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 190209: Hash(0x000000000000000000000000781748849fc769b3019604b4e64c11a5e0490600)", - "P->V[38504:38536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 193853: Hash(0x000000000000000000000000aa1aa30f60a287df7717fac71edb23bfd566fec2)", - "P->V[38536:38568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 200792: Hash(0x00000000000000000000000099b9c9f46080d97a73e390303f12387540726285)", - "P->V[38568:38600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 217733: Hash(0x000000000000000000000000f3aa1107b7064ce66582a251eeb428212b72c748)", - "P->V[38600:38632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 220451: Hash(0x0000000000000000000000007b290397a0583ce7d0c3678c5e211dec4d8134e8)", - "P->V[38632:38664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 223117: Hash(0x000000000000000000000000e2a37af4bf16b21bd5e4e04d3583e94fd77d5030)", - "P->V[38664:38696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 243514: Hash(0x00000000000000000000000001d0bee9b43528c2756c280104de2568d87d68f7)", - "P->V[38696:38728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 249798: Hash(0x000000000000000000000000a59d8471523c7fce9fb1bd23d08b210425b66312)", - "P->V[38728:38760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 251330: Hash(0x00000000000000000000000004474342ce9edc4468315b5eaf78eebcae5b691b)", - "P->V[38760:38792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 69931: Hash(0x000000000000000000000000cc57fe55d30ea413bd27b61a183daafe99b4c5a4)", - "P->V[38792:38824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 74824: Hash(0x000000000000000000000000b28e048b3707a9db91b771867d8c602d106c8762)", - "P->V[38824:38856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 75702: Hash(0x00000000000000000000000041d686ec6cbd8d32ab26a69ac96393441f2cccc5)", - "P->V[38856:38888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 76303: Hash(0x000000000000000000000000acc307d0f47b72952e4b73b40ad26acca2b68e40)", - "P->V[38888:38920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 84313: Hash(0x00000000000000000000000060c3399cf4a346f9f16c58b641e40bd925591296)", - "P->V[38920:38952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 85121: Hash(0x0000000000000000000000008cb4ffd702b0dc279a2567154603cdade3492aba)", - "P->V[38952:38984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 87132: Hash(0x0000000000000000000000008642ba803447ac4dbddfcbc634fcf112b7e673e4)", - "P->V[38984:39016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 95072: Hash(0x0000000000000000000000007ff9f452c541269b06516134a858e5516573a04c)", - "P->V[39016:39048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 95105: Hash(0x000000000000000000000000f943f1412df9a4a832e7282b48ed7c130559fb82)", - "P->V[39048:39080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 96927: Hash(0x000000000000000000000000317cf74841a544c5be67fe00ad9a08a3d9f71e6f)", - "P->V[39080:39112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 100397: Hash(0x0000000000000000000000007cf3200e4429617a2cb2a7314bc7da90921c78e0)", - "P->V[39112:39144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 108867: Hash(0x000000000000000000000000241a3eb50396a7d4313505c39180884bfa4930d7)", - "P->V[39144:39176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 110224: Hash(0x000000000000000000000000d206426b4683453ad966fa60ee0554359bf79311)", - "P->V[39176:39208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 111559: Hash(0x00000000000000000000000053e4f906103e0e29e4fd2514382949bfdfd304ba)", - "P->V[39208:39240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 121756: Hash(0x0000000000000000000000009981ed1fafe361d1f7048fa24a997345b0de5bbb)", - "P->V[39240:39272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 124898: Hash(0x0000000000000000000000005123ca51ca03e067236d1472315efe532412d9b3)", - "P->V[39272:39304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 125664: Hash(0x000000000000000000000000af047b04eb58f6e1123c6a235e4eb46482e7b525)", - "P->V[39304:39336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 34964: Hash(0x000000000000000000000000ae55bf4a4086fa878035655c17f17e14a93df07f)", - "P->V[39336:39368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 37413: Hash(0x0000000000000000000000009a69f13202bf1df2f600e3405c114ff8a501369d)", - "P->V[39368:39400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 37850: Hash(0x000000000000000000000000a03ba0d1493d842dd7b92cf928517bfd860a9324)", - "P->V[39400:39432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 38150: Hash(0x00000000000000000000000026d35c4d3ceb0e0253fac362395c1e2c12282fe0)", - "P->V[39432:39464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 42157: Hash(0x00000000000000000000000019e84a5d5b6d329b94a54f245b2b5581bc51f5e3)", - "P->V[39464:39496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 42561: Hash(0x000000000000000000000000d7734484a201ca70133885c424b2872aa87edec2)", - "P->V[39496:39528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 43567: Hash(0x000000000000000000000000555d9a574b6042635b4ba319c1ff30d2dd453cf7)", - "P->V[39528:39560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47537: Hash(0x000000000000000000000000bda0c1f49dae4d5eb205217a898868c86ea38389)", - "P->V[39560:39592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47553: Hash(0x000000000000000000000000c3cc4599c416aa61f21302502ebc4dee8b1eea4b)", - "P->V[39592:39624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 48462: Hash(0x000000000000000000000000bdfb9bf5f24f19821b538ba4a65e931e5d0843c3)", - "P->V[39624:39656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 50199: Hash(0x00000000000000000000000075a89044236ac1d160856a04e336e498faa30cf8)", - "P->V[39656:39688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 54432: Hash(0x000000000000000000000000a1e6bc0d9fc1e1b3ef6cc233e044244434dea7ef)", - "P->V[39688:39720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 55113: Hash(0x0000000000000000000000004293efd48c6e76eef28bce11050de00ad792da18)", - "P->V[39720:39752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 55778: Hash(0x000000000000000000000000b5386c09ef2183693c4f95c5c17fc9e05bed34b3)", - "P->V[39752:39784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 60879: Hash(0x0000000000000000000000001f7430814053d2250397285175032dec71bcce25)", - "P->V[39784:39816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 62448: Hash(0x000000000000000000000000e153aaa4ebf797317b095b46002ec7ad8462209e)", - "P->V[39816:39848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 62833: Hash(0x000000000000000000000000e5d995d6789a232237597aa8adc6eda1e35e6d85)", - "P->V[39848:39880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17483: Hash(0x00000000000000000000000021d13ba059dc806b37f2d985ba1ad801e122d1d8)", - "P->V[39880:39912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 18707: Hash(0x00000000000000000000000020d5b11d8c3a86e31f2d213a3ba29b5c77f1f01e)", - "P->V[39912:39944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 18924: Hash(0x00000000000000000000000092b58ddee2031a94c063c02663e61b1465e8c9cf)", - "P->V[39944:39976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19074: Hash(0x00000000000000000000000094d09e9d911e900992d426fa20749a8f1b8abf19)", - "P->V[39976:40008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21079: Hash(0x000000000000000000000000c55a9f7c880935e018502f358c52b42886bad3e7)", - "P->V[40008:40040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21281: Hash(0x00000000000000000000000024ec709e9e43ee9baf98d96099e21918364e8cff)", - "P->V[40040:40072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21782: Hash(0x0000000000000000000000007ce3c957d019a62308b79c23670c364104df576d)", - "P->V[40072:40104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23769: Hash(0x000000000000000000000000e80e38600b8c0b851b59897d6d4303f8dad78d7b)", - "P->V[40104:40136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23777: Hash(0x000000000000000000000000227350c9e1183f79846542ce9cff56ff61699447)", - "P->V[40136:40168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24230: Hash(0x000000000000000000000000946b2584d6fddfcf32ef00ba39389133deab6eab)", - "P->V[40168:40200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 25098: Hash(0x0000000000000000000000002773a5fb07f146e1fc7b227c52c7aef2ccd3caf8)", - "P->V[40200:40232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27217: Hash(0x0000000000000000000000007f317ba14ab74f6af8f2c8d96029169753b252a6)", - "P->V[40232:40264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27557: Hash(0x0000000000000000000000000a50f3c6c24dc3cb3bee2c0d109fd8508b7e0852)", - "P->V[40264:40296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27888: Hash(0x000000000000000000000000627766fc3e3e5cfd9bc5689bbbb60f7691ececc2)", - "P->V[40296:40328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30438: Hash(0x0000000000000000000000005d2099b2bfdf014223e93a8a411672089142b1ac)", - "P->V[40328:40360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31225: Hash(0x000000000000000000000000ed4f2eed2248c74d888f5d986ec57f6b85543145)", - "P->V[40360:40392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31417: Hash(0x0000000000000000000000004a703ae697e317eee5d4a06ef281bc9a679b580a)", - "P->V[40392:40424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8740: Hash(0x000000000000000000000000eaf362ad266116ba1cc62a41254f9db540314c37)", - "P->V[40424:40456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9352: Hash(0x000000000000000000000000285924a39fcf0ee78aee5bbafe647894536bcaec)", - "P->V[40456:40488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9463: Hash(0x00000000000000000000000083c4f2982bd41461e76d13e67dad07fc1f1dff03)", - "P->V[40488:40520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9536: Hash(0x0000000000000000000000008493bb4bd11983d7afa7388afa54dd05b3a88895)", - "P->V[40520:40552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10538: Hash(0x00000000000000000000000053f658bd34b4e0b260e31ccb124afca8cb07e506)", - "P->V[40552:40584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10641: Hash(0x000000000000000000000000b8545e6599639af238ba597a3d2fea2ec9b76797)", - "P->V[40584:40616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 10890: Hash(0x000000000000000000000000411d85b23dfb53224bcf09f790531c888b972aad)", - "P->V[40616:40648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11885: Hash(0x0000000000000000000000008bf550837dd82afd9950ddce505bb2c4ffc29ce7)", - "P->V[40648:40680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11889: Hash(0x0000000000000000000000009398c019217a3c47e4955e35d8ae11f488ae6729)", - "P->V[40680:40712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12114: Hash(0x0000000000000000000000001fde7dcab9a70efa7bc5f3698a81e67336cef139)", - "P->V[40712:40744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12548: Hash(0x0000000000000000000000008dde94fe27aa801480a70b3a3067e923b2653fc4)", - "P->V[40744:40776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13609: Hash(0x000000000000000000000000f498d33703d031eb5aad9240c66ea6d0722df73a)", - "P->V[40776:40808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13779: Hash(0x0000000000000000000000008f025cb9e65aa0c5ba428aa1749f431b66d67e25)", - "P->V[40808:40840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13945: Hash(0x000000000000000000000000ce0f130896ca67acb09a6f589b4c38f013cc0cae)", - "P->V[40840:40872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15218: Hash(0x00000000000000000000000014c3abc7afded2e355bb5c1eef23bc0531dbfce9)", - "P->V[40872:40904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15613: Hash(0x00000000000000000000000012b5760b62dbb8e9489492023809cac806409487)", - "P->V[40904:40936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15709: Hash(0x000000000000000000000000b46a9cac3d168054ad84cb1935273ff1cd154a3b)", - "P->V[40936:40968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4371: Hash(0x0000000000000000000000005af846791d06e05a1c4c31e3b96437ffc20d08f6)", - "P->V[40968:41000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4677: Hash(0x000000000000000000000000d94490048dcf8e3fbc2b5e6330b5625b7cf5b13f)", - "P->V[41000:41032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4730: Hash(0x000000000000000000000000f0a4ce7c626c22f84da354998328256a5b383a70)", - "P->V[41032:41064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4769: Hash(0x000000000000000000000000512181640a382b248d0a1b22f369f24907b31746)", - "P->V[41064:41096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5268: Hash(0x000000000000000000000000f6825a3ffe92a7cf0b40c560ad9e855f84c8e525)", - "P->V[41096:41128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5321: Hash(0x00000000000000000000000098dcf7d61db42d6c399274849721c7b7e93e6952)", - "P->V[41128:41160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5444: Hash(0x000000000000000000000000953df0776c815d5541af0da4f10fa86936f03ca2)", - "P->V[41160:41192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5943: Hash(0x00000000000000000000000067ad8a673fea393cefa23401f4578b940ac6fb7c)", - "P->V[41192:41224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5945: Hash(0x000000000000000000000000471b4c448193be14e3b245606cbcb89776b9483a)", - "P->V[41224:41256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6056: Hash(0x000000000000000000000000a84f382b004baa8fdef5eb3efd9077972b0792c2)", - "P->V[41256:41288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6275: Hash(0x00000000000000000000000021ce7952a8ca1f1dc0778cf908c69eca2eaa8d63)", - "P->V[41288:41320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6805: Hash(0x000000000000000000000000b92e2d36e1e7046ddcd7d0d1b0257bc9eed64526)", - "P->V[41320:41352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6888: Hash(0x00000000000000000000000011a5d1277c68a9f889de7b5a3173f93724588c15)", - "P->V[41352:41384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6973: Hash(0x000000000000000000000000b6cf113d85c770007bbf0dad4056becbbacaa3fb)", - "P->V[41384:41416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7608: Hash(0x0000000000000000000000007044d2e84d796d4decdbc6c102c3b88ceb52748a)", - "P->V[41416:41448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7807: Hash(0x000000000000000000000000a15affed2e871489f241088fcefd6e3928093be2)", - "P->V[41448:41480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7855: Hash(0x000000000000000000000000fdd6c78efc0a696469494a8603fa3be95600b97e)", - "P->V[41480:41512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2184: Hash(0x000000000000000000000000610d843352e8418a573dd503f93b5c72c1eb8e18)", - "P->V[41512:41544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2339: Hash(0x000000000000000000000000bb016c55f9a8d437c9fd853d6bc954af089cbf56)", - "P->V[41544:41576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2364: Hash(0x000000000000000000000000d6637729fce2573f9a3f41825bf72ff5ef4eef4b)", - "P->V[41576:41608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2385: Hash(0x00000000000000000000000071c3bd57a1ac4ad7bd8c7997ded5b14ef444b05d)", - "P->V[41608:41640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2635: Hash(0x00000000000000000000000078b400385c43defdc8759db0d23bc168e32dd3a0)", - "P->V[41640:41672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2661: Hash(0x0000000000000000000000004ff42ddad48f41e944e6fcba15195933487e0fe9)", - "P->V[41672:41704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2723: Hash(0x00000000000000000000000074b85070d18e27ba10337a4605c81b46d0c1456b)", - "P->V[41704:41736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2970: Hash(0x000000000000000000000000c1fde47db8e2fa8d742984ef0166fc0b62dc1b84)", - "P->V[41736:41768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2973: Hash(0x00000000000000000000000069b7ec74b514097a9915908b1d291af5c54427fc)", - "P->V[41768:41800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3029: Hash(0x000000000000000000000000114196a72be53f17856c2e0756cbbc8e43affda7)", - "P->V[41800:41832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3136: Hash(0x000000000000000000000000132e6c5cc808ec595b2cd90485b21a4a3d3c7c99)", - "P->V[41832:41864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3403: Hash(0x000000000000000000000000cb1bbdd027bc44aa9706031abf030bcbcce17ecc)", - "P->V[41864:41896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3445: Hash(0x000000000000000000000000bad802ddc433db252b666ef510941fe7e1d5ddd7)", - "P->V[41896:41928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3487: Hash(0x000000000000000000000000b5caee4eea3a180db118b1f7af518febf70145e5)", - "P->V[41928:41960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3805: Hash(0x00000000000000000000000054699df8776845e3fde1174ce3453474ec408dba)", - "P->V[41960:41992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3902: Hash(0x000000000000000000000000e8d3eaeb65d304885a6ab1640156a3565b019c31)", - "P->V[41992:42024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3926: Hash(0x0000000000000000000000001662c329060cf553662dd4a6d0d71670b891891d)", - "P->V[42024:42056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1093: Hash(0x000000000000000000000000f6ed7761508c760eaf9c2295fcd8e11561fe59be)", - "P->V[42056:42088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1168: Hash(0x0000000000000000000000006cfbccbaea09de55ce1c0f6f5c9be065064f1ffc)", - "P->V[42088:42120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1183: Hash(0x000000000000000000000000af5799f1d822ccacb17239c0b610c50a17976b5f)", - "P->V[42120:42152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1193: Hash(0x000000000000000000000000171410b414a10a45ce9ff7125bbb2da7185e8de0)", - "P->V[42152:42184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1316: Hash(0x00000000000000000000000047b95dae40928f302072c38eb12c6278d1e4fd9f)", - "P->V[42184:42216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1331: Hash(0x000000000000000000000000c5478e18aaafcee4a26bd7721b1265ed82849776)", - "P->V[42216:42248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1360: Hash(0x000000000000000000000000b9171a1e7d71d815533c0f317c58de42a55089c5)", - "P->V[42248:42280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1484: Hash(0x000000000000000000000000749a09b764a76b3d2bdb83abb12e592a3009a479)", - "P->V[42280:42312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1487: Hash(0x0000000000000000000000005d74218442bb912c742d14763fd538d950d4f1fd)", - "P->V[42312:42344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1515: Hash(0x000000000000000000000000aa09f8caeaba75a60849cfa4e22b042f8e173cfe)", - "P->V[42344:42376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1569: Hash(0x0000000000000000000000004027d0909fd726b066b502c29b733c2fd25a8f3c)", - "P->V[42376:42408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1700: Hash(0x0000000000000000000000000055241d6a83156e9c964fe9bffabadf190954ef)", - "P->V[42408:42440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1723: Hash(0x000000000000000000000000e4c176c4dcabe555eb5d02da9c929a41f98dd72e)", - "P->V[42440:42472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1742: Hash(0x000000000000000000000000f4875d2fa9ca22396b02506b43792bd3c753291a)", - "P->V[42472:42504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1903: Hash(0x0000000000000000000000009af4117ad423d695669755f7d3042f8f29cc9025)", - "P->V[42504:42536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1950: Hash(0x0000000000000000000000001fd1d301572c8b549cf26be267e0c43c53a43bcb)", - "P->V[42536:42568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1962: Hash(0x000000000000000000000000e7ab49c9e19c5cc7dd1f7aa4ce12f27a636b6c7b)", - "P->V[42568:42600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 547: Hash(0x34e20cce79c99d0d063b86b4189c4561be45671f)", - "P->V[42600:42632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 585: Hash(0x8108a1e9509deec3205e4c3459834fb4a8067f07)", - "P->V[42632:42664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 590: Hash(0x33800446dbcfc2920473cd7cb0a2c190245e78e0)", - "P->V[42664:42696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 597: Hash(0xb5fdaf49579943f3f020b84fce91d64689b97351)", - "P->V[42696:42728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 659: Hash(0xee0bc8d6b6e41bb6958f72885fd207274a0425d3)", - "P->V[42728:42760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 664: Hash(0x5feb32b6b1cd730fcf4285329cd2e7d26557043e)", - "P->V[42760:42792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 681: Hash(0xb031c6737a7dfc80119119e87294d3912294ec1a)", - "P->V[42792:42824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 756: Hash(0x82e9fb56ea45ccdd7ab2f035902d105e467632a0)", - "P->V[42824:42856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 785: Hash(0x45ff171b4c9a4de8e5be44214d222aab66dd47dd)", - "P->V[42856:42888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 851: Hash(0xa4f31d101cd3cd639d146d2d3dc9c459b6f312e7)", - "P->V[42888:42920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 860: Hash(0x40ff4ed3483170c9ca81fce3c0ca05c4f3f3ecc0)", - "P->V[42920:42952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 870: Hash(0x3b2393cd08a30f932eb92570658eba6006ee2e68)", - "P->V[42952:42984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 950: Hash(0x40d80ab35de818d91cacfe9ad9281f91bfbbf6c1)", - "P->V[42984:43016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 974: Hash(0x40546ba1f1fe8ef428497d403a3ce5785a04be9d)", - "P->V[43016:43048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 980: Hash(0x873e4fe3afe17efa924cccb7ba7e43d7f413df11)", - "P->V[43048:43080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 272: Hash(0x58483465ecf6f258b373e2a367644c43289efc13c612ee6797e01b3583d2d5e)", - "P->V[43080:43112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 293: Hash(0x576f36238acfe25c069a78c49d180c586fbe2401bbdcaa9400ad653066994f8)", - "P->V[43112:43144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 294: Hash(0x5eaa491476956d6a1f58643ec184c7a23c654f5903173cdb6c9ac77a9db15b5)", - "P->V[43144:43176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 299: Hash(0x16c042ca7e9d479562f5924371880b673937785700ff8ef0b27f2749a8408e5)", - "P->V[43176:43208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 328: Hash(0x13a9e70ff5ff9b13f6629ab63033e99d254c8d9b6eb744d22f2332647bf3442)", - "P->V[43208:43240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 333: Hash(0x2aba804cf09fa042b403ccfaad1251dc90e9b101f3136d5e28743fe77e6c859)", - "P->V[43240:43272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 341: Hash(0x163bd85db8a612493be226fa8d2f1b359a9620304c5d596b8752912aa5daaea)", - "P->V[43272:43304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 370: Hash(0x1de0eef6fca8a0178537ef21f003a5b9ba0301e606d60c5b6b65d36d34a5d6d)", - "P->V[43304:43336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 379: Hash(0x4465c1aba24302bc8c7ae9955b3b2f6b7caeba9a936e8a87f2049ac92196550)", - "P->V[43336:43368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 393: Hash(0x67262802ba50a63cbbf7fb35324fd49f0a74ba18d45c20c7bfd1c81ee444824)", - "P->V[43368:43400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 424: Hash(0x3099f9eec837594f766bbd438bc2167a206dc8134f04c50ec41a0e328fb3e23)", - "P->V[43400:43432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 431: Hash(0x5a8ab3811a3e0ddaa2bf625524962edb0fbbbd26f8cb54e2e3dd5efb23c457a)", - "P->V[43432:43464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 434: Hash(0x6891b0a04fabee33dba9bb49ab447dbb3ad884bef59cc1f16bdc232d1b5900)", - "P->V[43464:43496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 474: Hash(0x1f63ad3274007c9edfd6096c22b5da154e2b4413ddc487e99c95201a5695a67)", - "P->V[43496:43528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 486: Hash(0x504c2be264b4fd5f263aeb1ca7f0e256daefeb797ae182602044eb93e3fd200)", - "P->V[43528:43560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 491: Hash(0x961d2083dc0676bba5384ea211f3b542c3847a91aeb24bfcbeebe852f58e1b)", - "P->V[43560:43592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 137: Hash(0x38c29afb7cffcf9b346e893d3ddeda8157c869e2d150805ca302761e1a88311)", - "P->V[43592:43624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 148: Hash(0x7a677f090b9d635864b9fffadfaf72826a74e4524424e91b1729de383903f4d)", - "P->V[43624:43656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 165: Hash(0x745a36e0e9206e47b9c2cfc4d2ef1486a81a6a516f3d6d17464e84a512e905a)", - "P->V[43656:43688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 167: Hash(0x31188bf917019d9b9e5fb3ea967260fb6df5a7cbbf443c25d1c90bf62ac8a71)", - "P->V[43688:43720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 171: Hash(0x13c710d540970f8b99fb6983b0ab7fa37794990df122b8e03c61681b3104ad2)", - "P->V[43720:43752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 184: Hash(0x4ccab094f55502dbbef81923300126fabec59f244e43fb0f01e417f8ba2c29a)", - "P->V[43752:43784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 188: Hash(0x47e0b07bf955631464a053a0f5b0a04f86140d8082499f31f8f56434d6ba017)", - "P->V[43784:43816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 197: Hash(0x473d5815144711717e678781d5ac5a4a174d9fddb2b2dc63a3d12a2cec9bcbf)", - "P->V[43816:43848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 213: Hash(0x57ea4a43480b9cd736a814749707aa1fee95b0d6e7c9de93d88120219eb78b2)", - "P->V[43848:43880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 214: Hash(0x37e5125553dde6f7032cd6b4d01d92071dc6dcd8f2f66245f94c568f37fa8b8)", - "P->V[43880:43912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 216: Hash(0x4f052fdbad8eb76e7389686f81646df185cf05d864b3b149de2d56f2478b136)", - "P->V[43912:43944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 236: Hash(0x496fe48a162da0e378784f2fe88aac9b31c04978cec53cb8b7d2b658eafdc38)", - "P->V[43944:43976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 242: Hash(0x2cc60d04ab3b021a115b5f0be26877f83a69f42fc4c2dc7dbd92702e84f1e5e)", - "P->V[43976:44008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 244: Hash(0x57aab55203514f5ebf8caf8683950e335aa75470381d815cfef18204e3bd404)", - "P->V[44008:44040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 69: Hash(0x5c94fdcc869ccbe91ebcbe5336f567eda9203e43f8233bc63f3526224120ffc)", - "P->V[44040:44072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 72: Hash(0x323ecc763f661fc4dfed946c34d3587b663e9f5226cfe1ce4fc9048aa14af5b)", - "P->V[44072:44104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 75: Hash(0x3dd5c766f508705b781148bbe3c68201988845f5eb3cb9701f86d736f683572)", - "P->V[44104:44136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 84: Hash(0x21c2433d4436bae7ae495ce0b38bda3d69e20c2be3384cf103880b21018ba4f)", - "P->V[44136:44168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 93: Hash(0x6fdd900785558f6ed3b46a982f9006d0ad3cc65a07743db0fdc210beb34e9eb)", - "P->V[44168:44200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 95: Hash(0x6d01943ec1bb567ccf1c98ec531118e8a5cbc11f5aaf31d1cb379639ef57c49)", - "P->V[44200:44232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 99: Hash(0x435d98af5f6c220f72b6a47c87dad0c956d6cbbd99bf9fc86a0650077cf513b)", - "P->V[44232:44264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 109: Hash(0x12e3318d09c4b3e185f9c1b698a0093fa0b7b0fd848f6523b3b5c79076076a9)", - "P->V[44264:44296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 119: Hash(0x28893041dc7060db575cbedf5d1e55fd15da78394bd6f69cff318044fff3399)", - "P->V[44296:44328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 120: Hash(0x4684cae0ce9882f0b10825e317f34e9135d06a68278bc34c8fa5b42abd399b)", - "P->V[44328:44360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 123: Hash(0x1345eef513037b95c1a549dfe491f11788df3ea340288bb05703c16a2035d7e)", - "P->V[44360:44392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 35: Hash(0x108bca569fc475c4a62e0d2010bce1ac12d46c337345bbf540a5d342a8509c7)", - "P->V[44392:44424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 40: Hash(0x663f148674457bd7dce145399580e8c6dea5966f8e0c72cdaee077c0326c195)", - "P->V[44424:44456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 43: Hash(0x505e3e60b8ec14a56177804f71b6debef15d61a662517749f6efcdd4431cd1b)", - "P->V[44456:44488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 48: Hash(0x5c26d206825c3e2d4f6c01a4484450a438e9605f70fcda42915c9d9f0753575)", - "P->V[44488:44520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 52: Hash(0x3c1fa36fb80c0014b6ea67ebef94da5a24d67d633a1671f4e1829dda5d2426d)", - "P->V[44520:44552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 55: Hash(0x6457b60b1a3edaa60ae34f1eaa67405ba6296571ead7d7cdcf0125792565050)", - "P->V[44552:44584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 58: Hash(0x6b3e313c7f75976fc0624ec41577a5d3166572a7ab84215074a77a477ea446b)", - "P->V[44584:44616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16: Hash(0x7918dd5e09d0dc51dcc4158f15097aa36473ba4ffce93bb2a25a4dd765aabc8)", - "P->V[44616:44648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19: Hash(0x5b215b3e3a2131fa33d8bc6ec7cb6863ec3dc0886468cbd5b4dd6d5f7ad35d7)", - "P->V[44648:44680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22: Hash(0x49e26e607ca707793fd4c11124e92222b69729636f9502c5d836a3bf2701712)", - "P->V[44680:44712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 25: Hash(0x55a5406cca1699b7a81c8f2a39d1508b24888500bf575ae9075d0da2f0665bd)", - "P->V[44712:44744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28: Hash(0x264b8456ba436ff298eaf2028690d9310d50ec65abf6cedd95e20b70eb6cd67)", - "P->V[44744:44776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31: Hash(0x193d14ebe77b8b786483117b2b705cbf951992cd17ecab0ffdcd40559405a2d)", - "P->V[44776:44808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1125007, Column 0: Field Element(0x4feebe2ac3fc4b017d3f5c30d14a325abb1a400a729bf6f6ebc3b6b007805b9)", - "P->V[44808:44840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1125007, Column 1: Field Element(0x1181e2d4c55dec8b66cd05e53ce1c13ba21cb05fd03989e9ba1c0e6a7840411)", - "P->V[44840:44872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1125007, Column 2: Field Element(0x2fa554c73d1fc61acfc41642380881de9faa9f654dd2717b7b4b2a9ea6b0fcd)", - "P->V[44872:44904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2377986, Column 0: Field Element(0x5e17205ec93422e0d7a21faa4dfa6e1c6346c57bcf50053411757d1f5d26737)", - "P->V[44904:44936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2377986, Column 1: Field Element(0x4c85c58edde773941543751a847eb188049f7a49be63190d383b63590b3ed05)", - "P->V[44936:44968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2377986, Column 2: Field Element(0x66eeb1b387ab205254859d73eaa2a78cdea5dab09ed8ee5cd0f952bc4657eae)", - "P->V[44968:45000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2602857, Column 0: Field Element(0x558404bf0963be89a9994616180a3b9125689c571ec4e195eda5834eee47527)", - "P->V[45000:45032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2602857, Column 1: Field Element(0x5eba1f46ade8bd093286d9c74e247af0382ba620987676d241d503ee4dc22c0)", - "P->V[45032:45064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2602857, Column 2: Field Element(0x44c5b190ccfaf1d6854f05e3f1e1a3f278067a0b794396e3fcfc0dba25e3e35)", - "P->V[45064:45096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2756313, Column 0: Field Element(0x28ecb0f087fc4955c013cb44053d2f2fbbccac8d2097e81d777fe173dde372)", - "P->V[45096:45128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2756313, Column 1: Field Element(0x28c4063ae8ae080a5085dd975f1a90ccf94a7b0d99b7ede8869a0453bafe05)", - "P->V[45128:45160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2756313, Column 2: Field Element(0x1c191b2c7762f45d079e862ae494a63d05c144d5221e58c6da32cf487c25ef4)", - "P->V[45160:45192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 4806682, Column 0: Field Element(0x73c2d3da5240ad247bb2690224d48e4c49fc3c8ecbb16de70fe48317a1cb5bc)", - "P->V[45192:45224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 4806682, Column 1: Field Element(0x3afb91c121378df3ead22051d39255c4d90f9307e2b01578e39b472d7f22a4c)", - "P->V[45224:45256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 4806682, Column 2: Field Element(0x4b1fb83206aa5b878908b2e36fe0c9f62d35ae778795a7e1c272e7c7518a044)", - "P->V[45256:45288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5013749, Column 0: Field Element(0x40c81c563c26ef9d494b763bc99898cde35b8023a30c7555be3ed9fae44b5a4)", - "P->V[45288:45320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5013749, Column 1: Field Element(0x42225bd25638dfa23d431a009c4c984543fb51263f68ffecfd0f4b9c83eb98a)", - "P->V[45320:45352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5013749, Column 2: Field Element(0x13e809815a695be5033b3207f67b5e9243b5e95570288d4dbe1e4d7ab2b1ee6)", - "P->V[45352:45384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5529085, Column 0: Field Element(0x61bb65385a3e62b8c2d893d85a0b01ca27c83323d5f88cffb10212d407b18ac)", - "P->V[45384:45416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5529085, Column 1: Field Element(0x4cbd407d06c16e27663ad650d3bb433d8dae41a46752470255889ddd43db049)", - "P->V[45416:45448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 5529085, Column 2: Field Element(0x1095540ded89ae739a94a9c0e4a7f2fb1e081664e8b4a8d9af1c677c20acc05)", - "P->V[45448:45480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7561509, Column 0: Field Element(0x370787290ce10b1c9bcdf49196efe1606a519e0e4cf48a1807e4f354a7042a8)", - "P->V[45480:45512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7561509, Column 1: Field Element(0x38201e8ced05717fbd355ec2f4e30bda082a41d820eaed2f983e39fd4ee0551)", - "P->V[45512:45544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7561509, Column 2: Field Element(0x68d72fbc49067de7cc3a7f87c19dc96b26a6ba4709748e858348a46df10a600)", - "P->V[45544:45576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7569508, Column 0: Field Element(0x1b087c70d30d0d71d2eda7e60870f9ea0d5bb1015c2ddc24afe045cd9ee30d8)", - "P->V[45576:45608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7569508, Column 1: Field Element(0x5e701a765ce5181cfe06db7b4825a54f9470dccebd5d1dc064a615005849283)", - "P->V[45608:45640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7569508, Column 2: Field Element(0x7161c6a6dae9ddfc4da95221a1b0cbe835dd0972b660d513f471c2a5689f160)", - "P->V[45640:45672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8035930, Column 0: Field Element(0x7f0a3eaf4b457fbd9f69ab310975e0535ef22cedb174f29ea5a8beaed42fafd)", - "P->V[45672:45704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8035930, Column 1: Field Element(0x5fbfa22ea4a22b5f41c171b5bf347c947ffe5be628fca9576c41bba0785585b)", - "P->V[45704:45736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8035930, Column 2: Field Element(0x545640e8f3120e3e53b490545d61ddbfb72de4459f948bf5cf9e7adb4a70924)", - "P->V[45736:45768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8924319, Column 0: Field Element(0xf426b1a163d09248d8715b66bb803d42009540c1986eacd9a36d381f142f28)", - "P->V[45768:45800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8924319, Column 1: Field Element(0x169ebc26a2949a5b6968e022d6957350c4255f0a5fec61e89fde780b6a051cb)", - "P->V[45800:45832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 8924319, Column 2: Field Element(0x18a7ce7b63a76e692d5628974379af2bfca94d2919a15a8a5a5e06f1014cc67)", - "P->V[45832:45864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11092498, Column 0: Field Element(0x40bfcc2a36e8745eaee69ffd4949119873580535a657bd875fb6e87053cc8ed)", - "P->V[45864:45896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11092498, Column 1: Field Element(0x38410ce1a1b53a17d66348707439a47290ecd857e545768d174f87ef5ec9fd9)", - "P->V[45896:45928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11092498, Column 2: Field Element(0x4cc71e9e6bfe360afea5b590bd8e55d5539b582c296ee8b0c31a22fc6825d98)", - "P->V[45928:45960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11440447, Column 0: Field Element(0x65091faf902ccb629057adc8d3e1e48fe89323bc3b70470796c765fd664480a)", - "P->V[45960:45992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11440447, Column 1: Field Element(0x2fb81fc347cb82d36bb0a2d97c4afa7b715ba2f1691fa5b43229b316099d1f)", - "P->V[45992:46024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11440447, Column 2: Field Element(0x5bf1364885561b300955604a20c20345f285610aa37ba54687f125c05d757a9)", - "P->V[46024:46056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11781671, Column 0: Field Element(0x55ba6413e409822b4fabeb4789d717dec60782631b802907b1a6937d813ef70)", - "P->V[46056:46088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11781671, Column 1: Field Element(0x4cf2d1ce9efe7c0493675b02c9ef84b2aec185e8292c66c597135ac44604d93)", - "P->V[46088:46120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11781671, Column 2: Field Element(0x28d841ea073d008e9ce9c3da8af81d3d62992fe17f80fae1e7cc981de390509)", - "P->V[46120:46152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14392746, Column 0: Field Element(0x480e1795dc3a082d7ca5ba5a74e458248a4a2facf1b32a81d58ac081f14a816)", - "P->V[46152:46184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14392746, Column 1: Field Element(0xb539f134fb10b94fd907712e25ae5c6409d9161013c85d01344654603e8312)", - "P->V[46184:46216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14392746, Column 2: Field Element(0x6b97f4a806e7d739278cef91a4174390982d37d9791b5403835b9e1284ab3ca)", - "P->V[46216:46248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15197135, Column 0: Field Element(0x42c9d6bbee2d99660e133ba7ccfe59486ab764b918de446d74c139f2058d1b5)", - "P->V[46248:46280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15197135, Column 1: Field Element(0x11502f5b6ceaa61570b16afba589c07d4b8f596edfd2aea97deac8b8e6c0bac)", - "P->V[46280:46312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15197135, Column 2: Field Element(0x3e8f34428de95519516eb8f56c68b46091a9fc47c51e8ef7c6b06fc7a2e5584)", - "P->V[46312:46344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15393204, Column 0: Field Element(0x3fa4fab1e1d50fb792efd41f10cf6052c10b9c3a84de567eefafc6754b12776)", - "P->V[46344:46376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15393204, Column 1: Field Element(0x56a6e33d422af186a43733dc110dec6c83e9b9cebcbb369fbda85b356333737)", - "P->V[46376:46408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 15393204, Column 2: Field Element(0x5ff01b1df8ca36db08be4feb7b59e3a4e8c86c914c5f1c45c4cad796d66be60)", - "P->V[46408:46440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17902222: Hash(0x000000000000000000000000c3bf393ce71b499cac90fff9fa9c678e184e23d2)", - "P->V[46440:46472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19155203: Hash(0x00000000000000000000000053a7d6f2a695e443ef36b474f2f8d2074f0a6c5b)", - "P->V[46472:46504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19380072: Hash(0x00000000000000000000000036c737771c57e3b9f9d102b3a1bd6867ecc77d4f)", - "P->V[46504:46536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19533528: Hash(0x000000000000000000000000e721eb059e3c7b15a80b82c1c5f4c97ea559d8cc)", - "P->V[46536:46568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21583899: Hash(0x000000000000000000000000b856415d18d6a8d1e158e5b173fd0718b8b08ef5)", - "P->V[46568:46600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21790964: Hash(0x000000000000000000000000a2c3e4953b972b1eadb99e3a67aa93bb4e7cb69c)", - "P->V[46600:46632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22306300: Hash(0x0000000000000000000000001deaf8ce8e7e91981a08320dac4db96bd3a93386)", - "P->V[46632:46664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24338724: Hash(0x000000000000000000000000c536af5c52fe9b8031091ed303416f902d711b73)", - "P->V[46664:46696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24346725: Hash(0x0000000000000000000000006af56d85c051baa0a628f61ad0406f3dbe14c617)", - "P->V[46696:46728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24813147: Hash(0x000000000000000000000000827e0b165b323c34a5c6873e135064127c0afdf4)", - "P->V[46728:46760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 25701534: Hash(0x000000000000000000000000ce7f022685ba1b8282756e272186f52371386e89)", - "P->V[46760:46792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27869715: Hash(0x000000000000000000000000d53a8f13bd6b57124f25ac6d87f70628b84c0d2f)", - "P->V[46792:46824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28217662: Hash(0x0000000000000000000000006e84623d5fc0dc696be477fd530881d26f2971e1)", - "P->V[46824:46856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28558886: Hash(0x00000000000000000000000044dd68f1441b7a1dd83fe40314e5cac4c6ea7d67)", - "P->V[46856:46888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31169963: Hash(0x0000000000000000000000002765870f9017fdb0a283a9bed6685ed00fd0b9ad)", - "P->V[46888:46920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31974350: Hash(0x000000000000000000000000293248ec88b8bb6c8873d0824a5e95a904a1d113)", - "P->V[46920:46952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 32170421: Hash(0x0000000000000000000000008c1ed50fde0dad7d2cb62bbe85acd4e299e306df)", - "P->V[46952:46984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8951110: Hash(0x00000000000000000000000055811922619963b6c7502fde2f5f6bbd576bdde1)", - "P->V[46984:47016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9577600: Hash(0x000000000000000000000000988c95b9f3ebba3496a78fc85f6fea02f2b3103a)", - "P->V[47016:47048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9690037: Hash(0x00000000000000000000000023e19cd1cc8942f81f4bb8247c9be08626c927af)", - "P->V[47048:47080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9766765: Hash(0x000000000000000000000000ba9a20976d0ff64558616e524c576fec9d7d9c86)", - "P->V[47080:47112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10791948: Hash(0x0000000000000000000000002f6dc42ed6fd3eac66b23fff977906ece16c2281)", - "P->V[47112:47144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10895483: Hash(0x000000000000000000000000a384cc3b3c6011cf40b34955a250df46c4ab55ea)", - "P->V[47144:47176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11153151: Hash(0x000000000000000000000000ca8192e358c7d43c6dec12cccb1f47ceb7a57b1a)", - "P->V[47176:47208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12169363: Hash(0x0000000000000000000000003c3fe9a101f79765466143a0f478c6c451e1bc50)", - "P->V[47208:47240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12173363: Hash(0x000000000000000000000000a372cfd6b6364b958ae09335d082ef491f4aaeb7)", - "P->V[47240:47272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12406572: Hash(0x000000000000000000000000b70b8f1d4cb3a698f428775ee0395cef77bce938)", - "P->V[47272:47304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12850766: Hash(0x000000000000000000000000a1d519953679609cd051fa99b7fb3e2d3ef6857b)", - "P->V[47304:47336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13934856: Hash(0x000000000000000000000000d9bffe0ff96691c0f22f8a708de282bccfc3eb77)", - "P->V[47336:47368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14108830: Hash(0x00000000000000000000000045e67ef76407e001f75a8035a41b8c8af4f95530)", - "P->V[47368:47400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14279442: Hash(0x000000000000000000000000aecfa3e09e62f62a928b7ed3037d192d6acc874a)", - "P->V[47400:47432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15584980: Hash(0x000000000000000000000000459367fcabd8b47d3fe2cb53d577ba6e61a56d68)", - "P->V[47432:47464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15987174: Hash(0x000000000000000000000000ae9cb1fb9f2870c04fe16d6ff9ec781281dc6757)", - "P->V[47464:47496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16085211: Hash(0x000000000000000000000000ede565f9692cd3db7f8cd9bff69ea564f2e25f41)", - "P->V[47496:47528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4475554: Hash(0x0000000000000000000000008529cb0a6914eaf6b7772f0a591a69ae4b1507fd)", - "P->V[47528:47560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4788801: Hash(0x00000000000000000000000023aa75724785397762c21e7c7e624221a06318ba)", - "P->V[47560:47592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4845019: Hash(0x00000000000000000000000089ee4a73d541f35cd27ec14a4d77ecda5f218704)", - "P->V[47592:47624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4883383: Hash(0x0000000000000000000000001feb6cbc9ce8884e650605e26166bacac69ab7bd)", - "P->V[47624:47656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5395975: Hash(0x00000000000000000000000018ac7ce15c38983fc1d3585de247a30f12e53a02)", - "P->V[47656:47688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5447740: Hash(0x00000000000000000000000021cdfbe376e56a4ecc7bcef8f2851a802efb097f)", - "P->V[47688:47720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5576574: Hash(0x0000000000000000000000004e9401e6ec1fe2536d30bf112067fcfd5c804cdb)", - "P->V[47720:47752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6084680: Hash(0x000000000000000000000000e69fda26d478a4e65e80c7f6a7db1023eeaaa882)", - "P->V[47752:47784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6086680: Hash(0x000000000000000000000000e5695b7517cc160ec5d5de0a8d6d0587456351ed)", - "P->V[47784:47816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6203287: Hash(0x0000000000000000000000009035da113f47df3d047ddacd5df79eb0cd4ee4c8)", - "P->V[47816:47848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6425382: Hash(0x00000000000000000000000090186a7be87781c2ebe21d4416bac11fa6737e7f)", - "P->V[47848:47880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6967429: Hash(0x000000000000000000000000c495d3e29f037417024884fb8854ff7d46f78e34)", - "P->V[47880:47912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7054414: Hash(0x0000000000000000000000002d6eec7c201a8f5b1805b0510d18b863caa26c60)", - "P->V[47912:47944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7139720: Hash(0x0000000000000000000000001e49e9afb7515d65f1845c0c219c588a6f38a7ad)", - "P->V[47944:47976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7792491: Hash(0x000000000000000000000000559e1c5c6f8794b925297678b175dfeb51bd256e)", - "P->V[47976:48008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7993586: Hash(0x00000000000000000000000060dd09b1a8d497eb4a4a1972a07656266376a43f)", - "P->V[48008:48040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8042604: Hash(0x000000000000000000000000e451a91e7a5e3c2bbbb0ebef452e228cc7c0c9b4)", - "P->V[48040:48072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2237776: Hash(0x000000000000000000000000bc613e4bddcafa92c1f69855520121decdd0e568)", - "P->V[48072:48104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2394401: Hash(0x000000000000000000000000d5e1936cdf5d696c303ce2dea2bd973a4ef70b46)", - "P->V[48104:48136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2422508: Hash(0x0000000000000000000000008e95f8ee97fe54f424d7eda14ece33f9b36afdfd)", - "P->V[48136:48168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2441690: Hash(0x0000000000000000000000008b0f4bede3f52739609384c2fe225f9948002279)", - "P->V[48168:48200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2697986: Hash(0x0000000000000000000000001a9b0c06f024f99c6545f234f21a9274c8087fa3)", - "P->V[48200:48232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2723871: Hash(0x0000000000000000000000003ccda77bb5b768e8a2c434a1d702395748df932e)", - "P->V[48232:48264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2788286: Hash(0x00000000000000000000000027a4835e4200937728c1f64fb9b05760ae54ab0f)", - "P->V[48264:48296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3042341: Hash(0x00000000000000000000000081e07cbf43bed9c1875cc2d6291cad5905b1c0f9)", - "P->V[48296:48328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3043341: Hash(0x0000000000000000000000006d9b287f29c750d3334f4eead51d2d4abb8c9790)", - "P->V[48328:48360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3101642: Hash(0x00000000000000000000000087060db6952608fe75ea9fa89e603d601e1b9c67)", - "P->V[48360:48392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3212690: Hash(0x000000000000000000000000895eb665e745b1c1635a9340288917b5e8ffff97)", - "P->V[48392:48424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3483715: Hash(0x0000000000000000000000001a77df7c79bd775624f92623c71c28abd34edbb1)", - "P->V[48424:48456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3527206: Hash(0x0000000000000000000000004d8abd8017802cbb2155a4645ebf7aacfbdf8000)", - "P->V[48456:48488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3569861: Hash(0x000000000000000000000000666cba748dcb64dda5af669959e9c5adc2302559)", - "P->V[48488:48520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3896244: Hash(0x0000000000000000000000009d8fdf3e7917bbd4f400e711ce896ca79f194f9e)", - "P->V[48520:48552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3996792: Hash(0x000000000000000000000000287265d4fb81c7dc75c35a6b5c425070c600e264)", - "P->V[48552:48584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4021303: Hash(0x000000000000000000000000e2f11cc43ab2e6f73276198355cb19b59daa4ef3)", - "P->V[48584:48616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1118889: Hash(0x0000000000000000000000001abe15a1c0ae4b3847490a5d2d6aff1dd251efb0)", - "P->V[48616:48648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1197201: Hash(0x00000000000000000000000053200e5d55c36a4cf07be506a9b731c593da5ba2)", - "P->V[48648:48680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1211255: Hash(0x0000000000000000000000003bf21a8509fb68e275461f891f791c43258a5518)", - "P->V[48680:48712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1220844: Hash(0x0000000000000000000000006aff2422a3bcd9194fa14cead90505a69f8131a7)", - "P->V[48712:48744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1348992: Hash(0x000000000000000000000000904ba5c6bde3662c3db55f53940edaf3d7adfd14)", - "P->V[48744:48776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1361934: Hash(0x00000000000000000000000032613ab014f60b0362f767d863a8cfabad1ae8d1)", - "P->V[48776:48808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1394142: Hash(0x000000000000000000000000d4bae291b39ec7798dbbb6eb561ed8e76ba23c5d)", - "P->V[48808:48840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1521171: Hash(0x000000000000000000000000d68719fab0d2e884525b819e29e0cb02cea5d83b)", - "P->V[48840:48872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1521671: Hash(0x000000000000000000000000bedc69ec7f09baba702075b985ce7490f4a698cf)", - "P->V[48872:48904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1550820: Hash(0x0000000000000000000000007cbe5c1a0b190c398993a2432cd68923bcb238df)", - "P->V[48904:48936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1606344: Hash(0x00000000000000000000000020ac7e02cc1148423210873c6624c2d3846bbcbd)", - "P->V[48936:48968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1741856: Hash(0x00000000000000000000000011dc4d566ab156ae61fc347f4a6cc51909be58b1)", - "P->V[48968:49000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1763602: Hash(0x00000000000000000000000095f9717c9ee9cfb751e06167dea32cc9c56ebdbd)", - "P->V[49000:49032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1784931: Hash(0x000000000000000000000000f6c856388f9505da67dcdbb447ee175eea8a7e40)", - "P->V[49032:49064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1948123: Hash(0x000000000000000000000000cabde505003300b768f9aa1667585cc919b0210b)", - "P->V[49064:49096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1998397: Hash(0x0000000000000000000000008b0a8d2daa3ecace4d13588f7f2db967c77a73bf)", - "P->V[49096:49128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2010650: Hash(0x000000000000000000000000564c13045725674ac2dcdf8b94fd422b70814b90)", - "P->V[49128:49160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 559445: Hash(0x0000000000000000000000006515f36b08f955d6b1cfbe76de1fcf4506c9c9d8)", - "P->V[49160:49192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 598601: Hash(0x000000000000000000000000dc37f350eb546ef12fc487cf26580e29d25bbd29)", - "P->V[49192:49224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 605626: Hash(0x000000000000000000000000f5cf1a260378aee451fc21dfbe08abd245af62f3)", - "P->V[49224:49256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 610423: Hash(0x0000000000000000000000006fd77e62c9e407e9a2920124ec4589406d150093)", - "P->V[49256:49288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 674497: Hash(0x000000000000000000000000e2eafda35fae3091c16a8ffec54a87fc2891afa0)", - "P->V[49288:49320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 680966: Hash(0x000000000000000000000000403868f2ce618ec91bb5ec6526763d3997d41801)", - "P->V[49320:49352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 697070: Hash(0x000000000000000000000000f782ff6f575cdda6adb2a5d27601b07fcb1d1e25)", - "P->V[49352:49384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 760584: Hash(0x000000000000000000000000ab6daf989c55f56afaf9bb3499650d50c1755f6a)", - "P->V[49384:49416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 760834: Hash(0x0000000000000000000000007beb4e6c5ae29bce44c384fbbc8ed75d01e9db5f)", - "P->V[49416:49448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 775411: Hash(0x0000000000000000000000008c83ba7f6ec9dba8948591be253e2211ba24164f)", - "P->V[49448:49480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 803173: Hash(0x00000000000000000000000041a8c11f9ef52d95837acdc3a6b3f63b2033eb96)", - "P->V[49480:49512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 870929: Hash(0x000000000000000000000000faec28119c869dbfe2f198764c1d7763a0cb18ce)", - "P->V[49512:49544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 881800: Hash(0x0000000000000000000000002ebd384120c131e7f213b23dfa3690cc1846c108)", - "P->V[49544:49576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 892464: Hash(0x000000000000000000000000536ea65fef54f04d2adf0acfa62000d0deb47ea0)", - "P->V[49576:49608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 974060: Hash(0x0000000000000000000000006a54374a24c0e5f57cfede5835937a58805ae823)", - "P->V[49608:49640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 999199: Hash(0x0000000000000000000000001de26537b41d5e5ecb5892aa457916f2ecbff1f9)", - "P->V[49640:49672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1005324: Hash(0x000000000000000000000000f4e2181727f7efbf2113bd8b4ae5cf6cf33986d2)", - "P->V[49672:49704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 279723: Hash(0x000000000000000000000000f6a433c1cf189deb49b5ad35648bfe67bf97e23e)", - "P->V[49704:49736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 299301: Hash(0x00000000000000000000000058bd978d04e31ff3c3d9c09f28bc8a41f9036cbe)", - "P->V[49736:49768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 302812: Hash(0x0000000000000000000000000e0660bac0d6467f760271a438f5e4df4f6eced1)", - "P->V[49768:49800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 305210: Hash(0x000000000000000000000000eb10bfe0b632a540204e61da7eb7e2c16272b037)", - "P->V[49800:49832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 337249: Hash(0x000000000000000000000000767a380380c0fe46494b091b817027f95b717129)", - "P->V[49832:49864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 340482: Hash(0x000000000000000000000000c533d0bf09aac80ce86a1fb9618506a9fa873dc8)", - "P->V[49864:49896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 348534: Hash(0x000000000000000000000000f9db293f16cafe0a235cd19607f3f2f86c0f66cd)", - "P->V[49896:49928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 380293: Hash(0x0000000000000000000000002ef833fe9baa6a2fd50a7fd1cefa5b964142cd24)", - "P->V[49928:49960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 380416: Hash(0x00000000000000000000000099f80d353985246007960161282f3d676b305a70)", - "P->V[49960:49992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 387704: Hash(0x000000000000000000000000f862fe2b64d2323c97753396f38248e693d8b5c4)", - "P->V[49992:50024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 401587: Hash(0x00000000000000000000000015e09070cd043817afa58d8a78e2c5fca0240a9d)", - "P->V[50024:50056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 435465: Hash(0x0000000000000000000000004b9b66eaf5eaa617f71c9687447aee0d02095fa7)", - "P->V[50056:50088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 440901: Hash(0x000000000000000000000000fa9021b71c1130611d9b4374cef0b4cb55df971f)", - "P->V[50088:50120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 446233: Hash(0x0000000000000000000000004678b53d932b94110f18fd3b8c5dc5d3ec2433f0)", - "P->V[50120:50152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 487031: Hash(0x000000000000000000000000f215da14c9cbdb0c8a5849bfffe08963d78ad2ce)", - "P->V[50152:50184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 499598: Hash(0x000000000000000000000000b31ffbabd407849b05329355fa88d3494d8f855d)", - "P->V[50184:50216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 502663: Hash(0x00000000000000000000000049c910894e33eb8ed3124e54e69e26051a175f56)", - "P->V[50216:50248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 139860: Hash(0x00000000000000000000000070f82620d8cddd06df4b665c07a1cc8bb84cc7f9)", - "P->V[50248:50280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 149651: Hash(0x000000000000000000000000f5351c6bc6c6d81b78706a816be6fbdf6ef8beba)", - "P->V[50280:50312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 151407: Hash(0x000000000000000000000000d223699ee2214ff2a3a3ff20f83c9d4a7c7fbdfe)", - "P->V[50312:50344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 152604: Hash(0x0000000000000000000000005812d1e52470ff1226fce30d3ad1238264d78a8f)", - "P->V[50344:50376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 168625: Hash(0x000000000000000000000000329761ed7d3b55c0b1fcafc23626f37975151d27)", - "P->V[50376:50408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 170240: Hash(0x00000000000000000000000077a746831d4fff0631cb417224c979776905e141)", - "P->V[50408:50440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 174266: Hash(0x000000000000000000000000bbae1bb4a19e1a04d83a393a391e6c2e8797d5f3)", - "P->V[50440:50472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 190147: Hash(0x0000000000000000000000004c0e68074698db4f458b4e60a874cd13d872b54d)", - "P->V[50472:50504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 190209: Hash(0x000000000000000000000000a19e23036eba5714a487362a04b9e392b9574ec6)", - "P->V[50504:50536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 193853: Hash(0x000000000000000000000000ba84b718f418004a4b22758175ae810aace179cc)", - "P->V[50536:50568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 200792: Hash(0x00000000000000000000000058579443214a0b04fcc34c7d3bcf047afac2d6a3)", - "P->V[50568:50600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 217733: Hash(0x000000000000000000000000af429eb467a000fc7b7e3df9ad123809a1ecc29e)", - "P->V[50600:50632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 220451: Hash(0x0000000000000000000000003718f3b8e73a3447857158a8c5e5a9d4253e4f6c)", - "P->V[50632:50664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 223117: Hash(0x000000000000000000000000992751bb87000f824b36b6bcf77186be5cdb5f2b)", - "P->V[50664:50696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 243514: Hash(0x000000000000000000000000cac9bad91492450cb24f20f484ea562962218767)", - "P->V[50696:50728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 249798: Hash(0x000000000000000000000000bf51e53224495dba197cdf5a97304e147cc2d9a1)", - "P->V[50728:50760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 251330: Hash(0x00000000000000000000000013bbacb0d42405d2d7bf7f431dd33a3ad7f22a4a)", - "P->V[50760:50792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 69931: Hash(0x000000000000000000000000fc09c7463eb59b930f17d48cd171a696d49bfe64)", - "P->V[50792:50824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 74824: Hash(0x0000000000000000000000006b1fa5ee7cd7e55928ce58e08e12ac79c775ef51)", - "P->V[50824:50856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 75702: Hash(0x000000000000000000000000d2f60a9f9511f3b05e03d05e0635287da7a5b070)", - "P->V[50856:50888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 76303: Hash(0x0000000000000000000000003552cc480c68bc823da3273c83c35c9c2ab22f8c)", - "P->V[50888:50920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 84313: Hash(0x000000000000000000000000027e6525ed64317c1d82c79b82f7b5b38565d594)", - "P->V[50920:50952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 85121: Hash(0x000000000000000000000000dd60ab1191210be4c857b1265714a7689cf12317)", - "P->V[50952:50984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 87132: Hash(0x0000000000000000000000007776b467381c69477c01201fddee52122caa7485)", - "P->V[50984:51016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 95072: Hash(0x000000000000000000000000dfad8a04b886b465eb79daae3a52ad62258fd6a4)", - "P->V[51016:51048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 95105: Hash(0x000000000000000000000000795d21a4cbe11af146e30cb0d612b74651c93308)", - "P->V[51048:51080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 96927: Hash(0x000000000000000000000000f9fcefeb589e0b69b95d469f89aedff51beb6198)", - "P->V[51080:51112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 100397: Hash(0x000000000000000000000000fe021b2f177cfdcdaa79990b38c2fb6fef682e97)", - "P->V[51112:51144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 108867: Hash(0x00000000000000000000000079f72600770f1b4e98bd1513a8f0f95ae924e644)", - "P->V[51144:51176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 110224: Hash(0x0000000000000000000000003fc4dff353d05e33bb9bd9175e3756cc72459964)", - "P->V[51176:51208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 111559: Hash(0x000000000000000000000000e6533064248817f8a41ceb2d54a3e4a2bd6b0f38)", - "P->V[51208:51240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 121756: Hash(0x00000000000000000000000038938468dcfb609ada4a0882687ba2a7cf370b29)", - "P->V[51240:51272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 124898: Hash(0x000000000000000000000000dc9473e638d0c07e79e6bc1b325ca9b1b974f5f8)", - "P->V[51272:51304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 125664: Hash(0x0000000000000000000000000ebae176b7da93ea2650955372f120b17b63ebb9)", - "P->V[51304:51336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 34964: Hash(0x000000000000000000000000ef561a489538509b6061be117a3f513e6d2b685c)", - "P->V[51336:51368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 37413: Hash(0x00000000000000000000000090291c12eecde0bd6fd7f67e118af1ec76331c4c)", - "P->V[51368:51400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 37850: Hash(0x0000000000000000000000000e581a8ccc3563f91922b40a653be8b18af1a8ae)", - "P->V[51400:51432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 38150: Hash(0x000000000000000000000000c6e12b6dddedec87ee8898f7bc030fbe86e9b77f)", - "P->V[51432:51464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 42157: Hash(0x0000000000000000000000002084244119da174b06e3c278be77bf40985c622c)", - "P->V[51464:51496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 42561: Hash(0x000000000000000000000000aba68e4a4ac9a82f2d5ec02512b09e96b5b70247)", - "P->V[51496:51528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 43567: Hash(0x0000000000000000000000001f23d5aa51fa6d6896da902e1e342915bf4f1ad0)", - "P->V[51528:51560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47537: Hash(0x000000000000000000000000c51e02fd01e8c60ddde2a424159a506e6bb7d0c5)", - "P->V[51560:51592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47553: Hash(0x000000000000000000000000563a93c50a98d3d7674b25fd0f39e42f5119f9ad)", - "P->V[51592:51624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 48462: Hash(0x00000000000000000000000019fe93f23929d1874389b911f62d8ac3d45faac6)", - "P->V[51624:51656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 50199: Hash(0x000000000000000000000000dc8682bad32b0024f974021f66584b9b2b5eeb95)", - "P->V[51656:51688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 54432: Hash(0x000000000000000000000000d5719dae57bb97cd73d398cebe7acd64538a4bf7)", - "P->V[51688:51720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 55113: Hash(0x000000000000000000000000e29d1fb5e44b91939e4419672ec1cbbb37a3d211)", - "P->V[51720:51752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 55778: Hash(0x00000000000000000000000024844301e1a48c5f52d240479b2ecf2167fccb0e)", - "P->V[51752:51784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 60879: Hash(0x000000000000000000000000e13441a187100d1acb4201fbcbab3885c7932444)", - "P->V[51784:51816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 62448: Hash(0x000000000000000000000000e00091f9ad205b7ce02b8650b0db9b02a840d45e)", - "P->V[51816:51848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 62833: Hash(0x0000000000000000000000005dd93dc4175cf1cafc088e909056c692732edcd5)", - "P->V[51848:51880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17483: Hash(0x000000000000000000000000f0006ff1414e75708ee8bc94a70608e58ba20f3d)", - "P->V[51880:51912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 18707: Hash(0x0000000000000000000000008fb7a1722d239c5062eb31125388acf24f2aa035)", - "P->V[51912:51944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 18924: Hash(0x0000000000000000000000003ab5bf45f501709664f4d0c1c3a79d95a7af65f4)", - "P->V[51944:51976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19074: Hash(0x000000000000000000000000f9a88cc04eb80dfea6791b9879d45ddc69dc38c0)", - "P->V[51976:52008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21079: Hash(0x000000000000000000000000d6991521524e908268ebcae8786a01f866ca08f2)", - "P->V[52008:52040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21281: Hash(0x000000000000000000000000dd3baa49e701a59a286a6af6d16add679af103ad)", - "P->V[52040:52072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21782: Hash(0x00000000000000000000000030eda1b545d8f33fdf923d3e94560d894699d63d)", - "P->V[52072:52104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23769: Hash(0x0000000000000000000000008a66d418ba3f5b281de7ea14472949437e9b4c57)", - "P->V[52104:52136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23777: Hash(0x00000000000000000000000014d7e439f891f4642ca06dc7d91fa7f37ac06e49)", - "P->V[52136:52168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24230: Hash(0x000000000000000000000000118131380f4e9d2262166e402845bf84bf6cbb0f)", - "P->V[52168:52200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 25098: Hash(0x0000000000000000000000004a51efef70f80874705d6656fd49aaee1a220c93)", - "P->V[52200:52232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27217: Hash(0x00000000000000000000000056983e534656e3db00d8623f676ed1e8995f5278)", - "P->V[52232:52264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27557: Hash(0x0000000000000000000000001513d7417075a312c9a63ceaf20e4cc3739d3250)", - "P->V[52264:52296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27888: Hash(0x0000000000000000000000000a9124780f2f41f244dcccdc25fea7277d679c58)", - "P->V[52296:52328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30438: Hash(0x000000000000000000000000c0fa64c29a3449660c7d09caf6ecfac1cd9f6fe5)", - "P->V[52328:52360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31225: Hash(0x0000000000000000000000005fd8a718f287e9ed4717d34f201162e7cc3f738e)", - "P->V[52360:52392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31417: Hash(0x000000000000000000000000911d0e09c47befc1b0a49a1e774b4a7a6958b4c0)", - "P->V[52392:52424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8740: Hash(0x000000000000000000000000d323cfb830513eca0307e9dc4ed23e457fc13f7f)", - "P->V[52424:52456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9352: Hash(0x00000000000000000000000098179c2d6b555d07230c4c6f9fb901ea62cd9ac9)", - "P->V[52456:52488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9463: Hash(0x00000000000000000000000069c1133db2672778540604109f912e9e0f50f072)", - "P->V[52488:52520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9536: Hash(0x000000000000000000000000a2a2009335e6aaa7a8ea72152d462aef6153af59)", - "P->V[52520:52552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10538: Hash(0x000000000000000000000000a7226f9cff42812cf6ea72b726f0d18163e62750)", - "P->V[52552:52584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10641: Hash(0x000000000000000000000000f2dc2d7186c210dfd133140234f2e5eb0acb0d46)", - "P->V[52584:52616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 10890: Hash(0x00000000000000000000000066bbb25ef50d8852b7457159ea62dcb8df0121c2)", - "P->V[52616:52648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11885: Hash(0x0000000000000000000000004ae4b704c0ed5156b1c8f2dac59ea4035224a18d)", - "P->V[52648:52680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11889: Hash(0x0000000000000000000000006c526830711405d96b2ea9a876b939b88b14c008)", - "P->V[52680:52712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12114: Hash(0x0000000000000000000000005b94036181733967519617f6b8a9a86683a45931)", - "P->V[52712:52744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12548: Hash(0x000000000000000000000000c84a096a09ef3cb765f7818e3fe16320328de038)", - "P->V[52744:52776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13609: Hash(0x000000000000000000000000af839a31967843fd6e44ec3df54b2123045d81ce)", - "P->V[52776:52808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13779: Hash(0x00000000000000000000000089ed1975a5633abf962ce3f2d9a2ae63736d5479)", - "P->V[52808:52840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13945: Hash(0x0000000000000000000000007451c41f327f38438cdd8dc6d4ca08d50e4279e5)", - "P->V[52840:52872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15218: Hash(0x0000000000000000000000006cf5d8e6d164896d3f0484bc6bf030dd926a5f99)", - "P->V[52872:52904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15613: Hash(0x000000000000000000000000c527765ea665a8bd6a8132df165a929f5575717d)", - "P->V[52904:52936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15709: Hash(0x00000000000000000000000051cb218de992e90e1fac537fdfc8022086ba6369)", - "P->V[52936:52968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4371: Hash(0x0000000000000000000000008c17dad92d94c40d58dabb9cb2c102a9e526c237)", - "P->V[52968:53000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4677: Hash(0x000000000000000000000000f4f0e7793c1c083cf955e73f439c9d9ff3bf63c7)", - "P->V[53000:53032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4730: Hash(0x000000000000000000000000be038fad9f92f9278e8346e28f0c78eee5a084d9)", - "P->V[53032:53064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4769: Hash(0x000000000000000000000000833058470c895f82833bc980485ad95a1b6f1867)", - "P->V[53064:53096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5268: Hash(0x000000000000000000000000ab51c7993da4b4ba635760fd69c8189b70306122)", - "P->V[53096:53128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5321: Hash(0x000000000000000000000000b41b0d78b201fa171acd4db77ea56ed17485c62b)", - "P->V[53128:53160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5444: Hash(0x00000000000000000000000066ea94bedd545d63dd2b1fc830546c54262a3e80)", - "P->V[53160:53192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5943: Hash(0x000000000000000000000000a56ee9039b467bc1319dd5d7a5865d9c977cac29)", - "P->V[53192:53224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5945: Hash(0x000000000000000000000000668550203f525584c6c012e2ae536bf7adf91baa)", - "P->V[53224:53256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6056: Hash(0x000000000000000000000000a87fce6fce558bb9ddd9359bac577d6e648787d7)", - "P->V[53256:53288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6275: Hash(0x000000000000000000000000691836c5c685846bac8c12f895aa742af03f6048)", - "P->V[53288:53320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6805: Hash(0x000000000000000000000000ec2eb9ea942754fcf7d59d0ecbc944cd90b92294)", - "P->V[53320:53352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6888: Hash(0x00000000000000000000000014457d7ee8cc8c3bed7d7a4a1c524880b932cb76)", - "P->V[53352:53384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6973: Hash(0x000000000000000000000000b781293a98de0451138062c1c9959f747309b1e3)", - "P->V[53384:53416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7608: Hash(0x00000000000000000000000002f54bd56a0cf6ead798e4c5142afc2c15ca8529)", - "P->V[53416:53448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7807: Hash(0x000000000000000000000000c60f2f3f35394b1519f0fd2b08c71b7710fb7f0a)", - "P->V[53448:53480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7855: Hash(0x000000000000000000000000367019fb8dce356bd59ffe83acaaa59b48bc2cca)", - "P->V[53480:53512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2184: Hash(0x000000000000000000000000eab5d20135ee85b10ba68c8bdf67a9d7625a502e)", - "P->V[53512:53544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2339: Hash(0x00000000000000000000000093cf8a4393ff8d88aeef2b6f18e2b8034bf78fda)", - "P->V[53544:53576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2364: Hash(0x0000000000000000000000000cfba7b82f0c3e87fb255104ad850fb32f31326d)", - "P->V[53576:53608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2385: Hash(0x00000000000000000000000019d2b03f67f103ec38d8772169557483101c4376)", - "P->V[53608:53640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2635: Hash(0x000000000000000000000000a096f4b2101f09091f13f7df408ae3fd52e4f14f)", - "P->V[53640:53672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2661: Hash(0x000000000000000000000000fba81138def583c795b15ee501811bd38bc4702f)", - "P->V[53672:53704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2723: Hash(0x00000000000000000000000039b32980ef4ccb28dca99d1c953b683ac321f8e2)", - "P->V[53704:53736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2970: Hash(0x00000000000000000000000014a450a84f7c9302f8a63f76a14b0c9e08c5a69f)", - "P->V[53736:53768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2973: Hash(0x000000000000000000000000eb9b9de21e836661007b76a60ce6369fe6d94c7c)", - "P->V[53768:53800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3029: Hash(0x000000000000000000000000461066f5033c4ea8e6227a40014fc47819cc707e)", - "P->V[53800:53832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3136: Hash(0x000000000000000000000000334f0b3ce004c122612eee90a8a2eb9291274c57)", - "P->V[53832:53864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3403: Hash(0x000000000000000000000000a863f236b1540c5f876856a8722480ad3def7b6e)", - "P->V[53864:53896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3445: Hash(0x0000000000000000000000001fae6b1a77746dc40ac602b7260feeb08f95a726)", - "P->V[53896:53928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3487: Hash(0x00000000000000000000000030d882447236826311728f290aec2f4ea43eec6d)", - "P->V[53928:53960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3805: Hash(0x0000000000000000000000008642fc7462e47d9dcdd49fdc71ee2042ef7e7538)", - "P->V[53960:53992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3902: Hash(0x00000000000000000000000089d4480b9974949d4482969cebc086f27f512119)", - "P->V[53992:54024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3926: Hash(0x000000000000000000000000197566482c7f069518fa21c20e5c9cdf2f4736a1)", - "P->V[54024:54056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1093: Hash(0x0000000000000000000000006768a749fa16e25cadbff01f599da24a9597f230)", - "P->V[54056:54088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1168: Hash(0x0000000000000000000000000780130340b49f45eb1661eac8048c5b6ac51e87)", - "P->V[54088:54120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1183: Hash(0x000000000000000000000000f397c93c50da287e215281211294511a34b75d4b)", - "P->V[54120:54152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1193: Hash(0x00000000000000000000000063346a8544ac7cdc0ae208f6f4a449b973c74d9b)", - "P->V[54152:54184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1316: Hash(0x0000000000000000000000002fdb78565802eac66a9744a6f3362779b066508d)", - "P->V[54184:54216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1331: Hash(0x000000000000000000000000633c60bde604f2f288a449b6d7b59592a3fef3b3)", - "P->V[54216:54248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1360: Hash(0x0000000000000000000000006ef67f525ce0b76672b69b5a03aecce3d06538db)", - "P->V[54248:54280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1484: Hash(0x000000000000000000000000775609fc335d2cec003bea265c97bade22bda5d5)", - "P->V[54280:54312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1487: Hash(0x0000000000000000000000002ed8a1a51d7f0e27f3a253475a0077b48ae132b0)", - "P->V[54312:54344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1515: Hash(0x000000000000000000000000cd1b79db025c527c18204d8959d773f950ac59eb)", - "P->V[54344:54376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1569: Hash(0x000000000000000000000000275096f7971873dfb583511d42fdb5e8e67a40b6)", - "P->V[54376:54408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1700: Hash(0x00000000000000000000000060bc4ddc2fdd2ef276de5fda70da2ded7bd0e291)", - "P->V[54408:54440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1723: Hash(0x000000000000000000000000dd5a5315b10e2ab631abc080f0f729393c0edeec)", - "P->V[54440:54472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1742: Hash(0x00000000000000000000000010fcaa4fe3003420f18ca129d9f36abfce8c1be3)", - "P->V[54472:54504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1903: Hash(0x000000000000000000000000ba3d639a37f84df6f5f3caf5655008c09968a13c)", - "P->V[54504:54536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1950: Hash(0x000000000000000000000000ab9388ff92eb6ad412b3cfe0855ce8b3a27c5ab8)", - "P->V[54536:54568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1962: Hash(0x000000000000000000000000c1a3bb3708d49788c81aacf0fda02e7eba0311fb)", - "P->V[54568:54600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 547: Hash(0xa8e09b9d395ef5e23575a43be5f64ac34da4ad21)", - "P->V[54600:54632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 585: Hash(0x1b6701f28266ce3221dd9adae819e7bfcfcbbd64)", - "P->V[54632:54664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 590: Hash(0xf4ac0a3c381690b6c182cc69eefbb4b0acaf7a21)", - "P->V[54664:54696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 597: Hash(0x55d3b7968b3ac8423f97c168707ba8e2560fd105)", - "P->V[54696:54728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 659: Hash(0x22db8557d2257269debdf7fe833245a619e04ab2)", - "P->V[54728:54760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 664: Hash(0x909c41e11d03542279c6d7cdd692ce0b17508dd8)", - "P->V[54760:54792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 681: Hash(0x854fbe94dabbc9ae68bac2326bda53504a20ba90)", - "P->V[54792:54824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 756: Hash(0x151b2d90912d57d1877135c39a1cfeafde2019ec)", - "P->V[54824:54856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 785: Hash(0x1df5a5372d7d96c478c77a8d240e7e9611e75830)", - "P->V[54856:54888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 851: Hash(0xeeac3a49cbd1d3bab6cbd741896743facd4fa524)", - "P->V[54888:54920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 860: Hash(0x3730ff65316d9d47c66b95558c09b16b8adc8f5b)", - "P->V[54920:54952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 870: Hash(0x8b523211537b7dec9190423eb0bd9b5b458fa656)", - "P->V[54952:54984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 950: Hash(0x63c7aa60be7bf70a05234c271925ad509a9a177f)", - "P->V[54984:55016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 974: Hash(0xe906b7de36a1db24ee4da60acb476d72a38c665a)", - "P->V[55016:55048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 980: Hash(0x51cc716699cd161f1c05a9ba021e342b218812fe)", - "P->V[55048:55080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 272: Hash(0x656cab77c4262d444c10db68b10dd98e92cb26f485409fa81dd2398bb025609)", - "P->V[55080:55112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 293: Hash(0x37379a52816ff46c0a2874518c404b8fc2ce23f57be82ed035d0b204f213bf4)", - "P->V[55112:55144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 294: Hash(0x71edf4dd8f17470dba6b7255b35e1295e58b40b06471eb309f1115518794b8a)", - "P->V[55144:55176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 299: Hash(0x232d5e3a7494883b29a9b6797fe8520c796a26a7c6eb3b397ef5ab0f9ee0654)", - "P->V[55176:55208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 328: Hash(0x2f99ac30dbb2a149f3296d18b7b1344b2ca32b9159c90ac77078a2d25f5b4cc)", - "P->V[55208:55240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 333: Hash(0x77a510266fe367e4bf6c2e5cd36e941151cf2c36a46f29deb92e251546e7cd4)", - "P->V[55240:55272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 341: Hash(0x46f0f3e871357c8273f987792b70ef8830b6765d24f0fce363ab8ff16d579a6)", - "P->V[55272:55304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 370: Hash(0x4a91627691030dd50342a127621bea136cc3d88d936e1d6d1eb213292898684)", - "P->V[55304:55336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 379: Hash(0x6d9a61db7f58d9fc82c4f4d86a271824c3da15ff107d84d54fe6fc6bcffb661)", - "P->V[55336:55368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 393: Hash(0x7d6efb5065e426a1683f17db7f890028f3d4d2abefc73d512fa59bb6d8ccc57)", - "P->V[55368:55400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 424: Hash(0x2d4179d003478df022146e09897cd83dc102c85a0fddabd33b6d3b1c454fe60)", - "P->V[55400:55432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 431: Hash(0x72ad251d568d1226ff1a7a87e511dab927ea8e66aa0da1ed1883eb07eedc9a9)", - "P->V[55432:55464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 434: Hash(0xf2f39f0bedcbffdbc104394c30761de9d6b4ef50e1b5ca17774f27e402b1e1)", - "P->V[55464:55496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 474: Hash(0x487ef4c9ad3d667eb49b2de809110e669884c7f757618ee06618b3e050f5373)", - "P->V[55496:55528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 486: Hash(0x745272ff7183cae9c39220f2d769993845a35a6f0da677456538a13bb0aed27)", - "P->V[55528:55560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 491: Hash(0x2ed2cd60e6e8078eca0922138b40792c2d39380f0a0cbc89a76ca9ec1d940b1)", - "P->V[55560:55592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 137: Hash(0x7dff206d76387ee77cac595a62d7320f48ba6fc9250c8ad21b10259219a068e)", - "P->V[55592:55624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 148: Hash(0x3ecc6b30b41de8359d2eb6bb6949e9bfebc5770d47d6f8794f4d9c9f1599c79)", - "P->V[55624:55656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 165: Hash(0x3a1cb2aee3770953a44d85f8fdf67a5993881735566bdcfd81697b1b88b22e)", - "P->V[55656:55688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 167: Hash(0x509f049798d6f34ef662c7e5023b01740ec3870b32e895863a0dbba981a4b6)", - "P->V[55688:55720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 171: Hash(0x39528385d8d78b59c4b985aeeb187592c88bac6d5ae50ff0e0b3514597a3b50)", - "P->V[55720:55752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 184: Hash(0x5f0a1360fb381887475c3f0b393f35a3050e0efbfd7c2e16000e0c633cf51ab)", - "P->V[55752:55784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 188: Hash(0x3b026650287b8d0dbaf763ba559e954ab93b937836f66bc09e75314a1b157c5)", - "P->V[55784:55816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 197: Hash(0x7fb783766880293cd8a927df62a9f51d9f8f9e191d9741fe76f26db966ced6a)", - "P->V[55816:55848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 213: Hash(0x2afc7b8091bbbceae259747637b459480f7a1aac6da63a4726d92fa4e469b43)", - "P->V[55848:55880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 214: Hash(0x2757e0a4b0ff33820cb19b6c30a3e1008e5fc413bab5ebc88ce8d7d4b50ff30)", - "P->V[55880:55912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 216: Hash(0x5828cb3d3e08e5eadc9f8a4eb50bdad7d8018e0635058ae2b5b153abebe49f4)", - "P->V[55912:55944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 236: Hash(0x13056f90f28822593bc24dfd994f041c53d2fb8b72930115354c976ec803586)", - "P->V[55944:55976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 242: Hash(0x6372d1ea9db6a713701a5f72456e6c16696c0eac32b7a4e4ecbca480c32de70)", - "P->V[55976:56008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 244: Hash(0x671b7c964d6231f67b89b08eb8b4513786f6385d0cd474229b2170fb1d00143)", - "P->V[56008:56040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 69: Hash(0x5b4892b12bd7884d06c2ab283a6807e18dde214bf838bf701618d39d49b8d6e)", - "P->V[56040:56072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 72: Hash(0x30a9fa0021c2ad1571e48c9f895bd8b8920b0555ce9e8090ec8696d08f826c3)", - "P->V[56072:56104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 75: Hash(0x6e4a4a2e8eb76df63a4d62cd43d72eefb3ebe050d489a3830d122dc7b34c40c)", - "P->V[56104:56136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 84: Hash(0x5a59485f1ecd9a3fcb5130968e6984c1c2d1d6333310cff00ff66c95ecf5e69)", - "P->V[56136:56168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 93: Hash(0x4a44d53935a7d7c514e28c544517a9afb4a1edc0af9985f3b7ab864c327c688)", - "P->V[56168:56200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 95: Hash(0x75b7be1ec2934ff3f6382e5eb9663ca5f1588086b20c2c999be0d8b250097cd)", - "P->V[56200:56232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 99: Hash(0x77a7f96e27e12cf6333f5889e9145461a38b08cb367262b4677ccd327dabf79)", - "P->V[56232:56264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 109: Hash(0xfbf6ca71470357a588a249dca6062a9ed5fedee03b04fce3b44b3fbf675fe6)", - "P->V[56264:56296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 119: Hash(0x482510c4350041c9f79bb1152e6f4b9cc14e96b239a352d2261f851af923b4a)", - "P->V[56296:56328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 120: Hash(0x796f3682745ce7926d2c681d9284f89ad36a1a183967cbec6e86f938afca07e)", - "P->V[56328:56360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 123: Hash(0x57265030da9a40438e1d33f2757890d0ae65e3565a9de398aaee49b5b9e3054)", - "P->V[56360:56392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 35: Hash(0x714b72fbf52c6ad6805afcbcd7efcdfc696b13a60e36dbfe90515f66941976a)", - "P->V[56392:56424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 40: Hash(0x5c7677129775dd743628e1f8fe2325b6d75d3ef8a589acb43734a84f94a1be6)", - "P->V[56424:56456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 43: Hash(0x5e65fb292527a2a614ec2814b55b246b1c79660d0ece4f0b9a5fb69b9ba10fe)", - "P->V[56456:56488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 48: Hash(0x128d64f3d75201c62dd9887273a01e7f5c7b30a3460a5830aa67df0b6b75475)", - "P->V[56488:56520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 52: Hash(0x4f5ed89e232e955fae51988423e32181e98e0fbc805993952e6aab6c5df37ba)", - "P->V[56520:56552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 55: Hash(0x3d5b9e99649d91dcd86e8d19523fd68fe10d49114e26dd5a8a9b4ed879d39f3)", - "P->V[56552:56584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 58: Hash(0x460146e260231f867861d9b5582037d872244f1c38a75f516ef4e812e3f75c4)", - "P->V[56584:56616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16: Hash(0x3032817288c7817825c0fd0e5a4c5c1c59bbbf87852ba70ed00ed2e64ebb54f)", - "P->V[56616:56648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19: Hash(0x5e2a04a2085ec8bf9c56ec88e4d115242fab3da4ef5ca006d949657ed6b724f)", - "P->V[56648:56680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22: Hash(0xf27ee476ba1b0aad3476b3596d7f3d218a8d1343c78f757e4507aec8b85753)", - "P->V[56680:56712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 25: Hash(0x27010f502e11d0d9b6887eb8e02c9d84f6a5599e9b0f42c9c50795ef83dfb2e)", - "P->V[56712:56744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28: Hash(0x51dd4e0bed06528e7ffb413137f706e0a4649300fce8ed72e0284987dd39c39)", - "P->V[56744:56776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31: Hash(0x3e2cec9f32b18ef3139573190a3198d03335e467bd3afe0eefdf13888feaa54)", - "P->V[56776:56808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1125007, Column 0: Field Element(0x1f848386a7ee1583b7f2a56115553d369b1ae1e86651e422da939664d7e57f2)", - "P->V[56808:56840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1125007, Column 1: Field Element(0x3756159d2701af3b41230cf512fbe6bcfe985c27dcd4013f64da118f0e0a3b0)", - "P->V[56840:56872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2377986, Column 0: Field Element(0x43c8ec1d53eb797f6fff04b68fb3a29fda1730148ae095369cd9771e4d15568)", - "P->V[56872:56904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2377986, Column 1: Field Element(0x2e20e46c902809f2076ff22efed9ed20c2c53042f84b7debf13b8464e417355)", - "P->V[56904:56936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2602857, Column 0: Field Element(0x2b49b251c0810c6aa3ec3555825636bbda9ac7ab6d77ddde7fdb4b49b0d591b)", - "P->V[56936:56968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2602857, Column 1: Field Element(0x6cd2c3136437db3a74de71882f47877d5563f5e3f007acfaab5c22066692d02)", - "P->V[56968:57000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2756313, Column 0: Field Element(0x7284df8be0be229cbc4ea63620b10b4fe12fa5037013f709ed3270570c0d633)", - "P->V[57000:57032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2756313, Column 1: Field Element(0x4fc4bd413ee16bc2d360c7377ff0a1399f612ce7568b3406bf4012502dadee2)", - "P->V[57032:57064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 4806682, Column 0: Field Element(0x7edcc6d127925dde5314ec11608bbce21b0d8d3c7711a7d94c5ab6515f8a1f3)", - "P->V[57064:57096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 4806682, Column 1: Field Element(0x2044b3d2b45851e7f0e0794cf0fb229a52fbee121da768f4bd1f47cf28423bd)", - "P->V[57096:57128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 5013749, Column 0: Field Element(0xe3bbeaf55e6a037a791c28a3d401d20522929ec72ea42d4fe529a3aac1482b)", - "P->V[57128:57160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 5013749, Column 1: Field Element(0x1a66a4534d2bc4fca7dbafd902667b2e0065d5d3d4d2538da95429d3170814c)", - "P->V[57160:57192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 5529085, Column 0: Field Element(0x25e46e8985801a012c8777d54599457663f39fa041ac0da7c69b6948d225b9e)", - "P->V[57192:57224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 5529085, Column 1: Field Element(0x18906c5447c40154c87360423779ced7dd3e64182aa73967273d93807c1845)", - "P->V[57224:57256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7561509, Column 0: Field Element(0x30f3c6fc38a70fe48423d9835e7eade77b47061149aca0d9bb8f347db793152)", - "P->V[57256:57288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7561509, Column 1: Field Element(0x76e679f6127fafed1cfd69be2094e4364ba6e5eb184118b8774e0311b22cd08)", - "P->V[57288:57320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7569508, Column 0: Field Element(0x51a1ce067333937e00354bd4970ba2b998522588786006bdedcc44eacaff4c)", - "P->V[57320:57352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7569508, Column 1: Field Element(0x7a4c9b9b08d21037a9aa78a6bd674ae59633f89902bda0edcaa7676d8a4fa3c)", - "P->V[57352:57384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 8035930, Column 0: Field Element(0x1e074752979fada923520948f5167f108d460191b509ab0ae9469dd9f6d3785)", - "P->V[57384:57416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 8035930, Column 1: Field Element(0x34c25aedfbfceba84ee9a72b9cd512e50b47b5a0d5f16729d7291d44f945d93)", - "P->V[57416:57448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 8924319, Column 0: Field Element(0x779b8ddcf381cd2b26df19a51171032d72698a84139cd9cd02627d36e149848)", - "P->V[57448:57480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 8924319, Column 1: Field Element(0x304417861f59e8011a91fe499d271d3055a5e65f5566223ad14c06c5ed1672d)", - "P->V[57480:57512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11092498, Column 0: Field Element(0x55ad676b5d7f85bb5d27c85d355861774261935e955d4781f8a36f456d7e8fa)", - "P->V[57512:57544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11092498, Column 1: Field Element(0x3cdb0a756f9211139f255caed479d2fb0bc1f611e4ccb877b33019f3f959aa6)", - "P->V[57544:57576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11440447, Column 0: Field Element(0x6f69cf7521e248dd04bd083adbdd6b7191bc4b75977bd916c7f4c78ee18495d)", - "P->V[57576:57608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11440447, Column 1: Field Element(0x4a4292c31d986979e7e2cf644f7943b18d020302cf10e378c327438908191b5)", - "P->V[57608:57640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11781671, Column 0: Field Element(0x4c5fdba6617ccbe3e0dfee0f4443740f751cd0c2111ccf19604ecda8e1eaa14)", - "P->V[57640:57672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11781671, Column 1: Field Element(0x49532a4ddd6b9f4c27fea84eb7bada2ce84f43c3f3bb77ccb7b631019783ab2)", - "P->V[57672:57704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 14392746, Column 0: Field Element(0x74a3e6dff2a97e97c9f635637f742dcb75e852c6c2dbbcc239eefd45601fb71)", - "P->V[57704:57736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 14392746, Column 1: Field Element(0x3bc0d917bea8941702ad13466b9cc31e22b75fa2a39521e218e8f3922e24aa3)", - "P->V[57736:57768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 15197135, Column 0: Field Element(0x7f54d5be05aa7d861ca1f83d123d90da84aae26a9c97aaf2dc8869fe2b41d28)", - "P->V[57768:57800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 15197135, Column 1: Field Element(0x667cab1e74aa3534833d63ce1169cb1ddea64ab0e6f9c5cee223946e451769a)", - "P->V[57800:57832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 15393204, Column 0: Field Element(0x9e6270468879290c9ef72a172470822f329952574af8742ca38a21fc3e2a16)", - "P->V[57832:57864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 15393204, Column 1: Field Element(0x7aecec6c678a371190c16bcd73371045816b83f2610fc3477b43a7e32d2778)", - "P->V[57864:57896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17902222: Hash(0x000000000000000000000000ce9f34492f9c9a29803bd12e4b74bc2475935d35)", - "P->V[57896:57928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19155203: Hash(0x000000000000000000000000877ad80c45f7a33c542e92217d57238e61afa47e)", - "P->V[57928:57960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19380072: Hash(0x000000000000000000000000a2b87c4be8c41fdedd10125b401644066c4eff01)", - "P->V[57960:57992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19533528: Hash(0x0000000000000000000000004fdcc0046edeea9f11fbbdc2152e4b87deb514e6)", - "P->V[57992:58024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21583899: Hash(0x0000000000000000000000002c5e0b1abfa15e8f0469a1c1e217c62317e602e5)", - "P->V[58024:58056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21790964: Hash(0x00000000000000000000000003db81894e6307bdb3bd2d7f313c117b46f65936)", - "P->V[58056:58088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22306300: Hash(0x000000000000000000000000292aca54f40f399f410c0c6b79d278a9af686400)", - "P->V[58088:58120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24338724: Hash(0x0000000000000000000000000e80930c995db57ed70ca396fde3a41296e63cd0)", - "P->V[58120:58152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24346725: Hash(0x0000000000000000000000005d3447d982a31b70f3c48d5778fe849610b4e9ed)", - "P->V[58152:58184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24813147: Hash(0x0000000000000000000000007a431d7380613e33512cd557a9df102f36029f80)", - "P->V[58184:58216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 25701534: Hash(0x0000000000000000000000007ae237db33d21c67001a6373c07a91c1ba669f47)", - "P->V[58216:58248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27869715: Hash(0x000000000000000000000000551523cdccecf890c61b2d2887f86c8dac0b1168)", - "P->V[58248:58280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28217662: Hash(0x000000000000000000000000f959b595cd9f2dfbfcc3b0ec9413b0d176cb63c8)", - "P->V[58280:58312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28558886: Hash(0x00000000000000000000000038b47f175bf5ad12020e2d559c662bb271d06339)", - "P->V[58312:58344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31169963: Hash(0x00000000000000000000000004a269b535aa89d7324df567a79a35683b345845)", - "P->V[58344:58376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31974350: Hash(0x0000000000000000000000004fd8e9e1ec25911c513c5924a6dfaffe01ac7d48)", - "P->V[58376:58408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 32170421: Hash(0x00000000000000000000000085d1784f20fa44d015426c670aab5c12f0e1048c)", - "P->V[58408:58440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8951110: Hash(0x0000000000000000000000001f6d91d6ad058eeefbf904af6d10ce0af24a02c7)", - "P->V[58440:58472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9577600: Hash(0x000000000000000000000000f8eedd6eee5ed917404a996824365e4d24ea0dc3)", - "P->V[58472:58504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9690037: Hash(0x0000000000000000000000001e7e28dfaf65ac933e4a820fb4718418eab53b34)", - "P->V[58504:58536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9766765: Hash(0x0000000000000000000000002ac80bc8e5d473742db96259f8a407836782e902)", - "P->V[58536:58568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10791948: Hash(0x000000000000000000000000b48460715caa40e7f202e995bc9c4a9c8f4e6566)", - "P->V[58568:58600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10895483: Hash(0x000000000000000000000000b7670fff2e36428f59ee625921be1970ee06ec04)", - "P->V[58600:58632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11153151: Hash(0x0000000000000000000000002ea22b3606a827176e6a2e91f8427ae8d1b47434)", - "P->V[58632:58664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12169363: Hash(0x0000000000000000000000003dfe227fa9df6240ed42552ee2155c25224289e7)", - "P->V[58664:58696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12173363: Hash(0x000000000000000000000000f8ce1f57899be2d7f61a515dde700626e6bbe1ae)", - "P->V[58696:58728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12406572: Hash(0x000000000000000000000000752f260a3c77018a18d426d162080c10678c5b8c)", - "P->V[58728:58760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12850766: Hash(0x0000000000000000000000003fe1431299c60449822a5f2d85bbadd4b3f61718)", - "P->V[58760:58792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13934856: Hash(0x0000000000000000000000000c4be3bc6173518f04df8f5503268a20b8f83039)", - "P->V[58792:58824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14108830: Hash(0x00000000000000000000000072495a75705ae8aa58c3862a7ea3a0d424d4f383)", - "P->V[58824:58856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14279442: Hash(0x000000000000000000000000a72a8a12b078bd4086cd5ea58b3c3b0a071a68ae)", - "P->V[58856:58888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15584980: Hash(0x000000000000000000000000b2dba9c880ef832a7b2b0efa64ad5e797e765c70)", - "P->V[58888:58920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15987174: Hash(0x000000000000000000000000cafda87459f75389c68a725c08ca37547d73cc8e)", - "P->V[58920:58952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16085211: Hash(0x000000000000000000000000caff3bc45eb0d6fec2b1e03eb20d9acad726a55d)", - "P->V[58952:58984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4475554: Hash(0x000000000000000000000000923192d50916f098f6d46f96ddeebd03842533f5)", - "P->V[58984:59016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4788801: Hash(0x000000000000000000000000e7fbcbd2eaab0b7225fabdc5108f8c9f7dd429a1)", - "P->V[59016:59048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4845019: Hash(0x000000000000000000000000b113d607c549ea1a42f62665fd1ff77a5c4b296d)", - "P->V[59048:59080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4883383: Hash(0x00000000000000000000000063423af3fba4aa8443f52683c425e16c1bae2909)", - "P->V[59080:59112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5395975: Hash(0x000000000000000000000000c4b00f8420bc2efece3683b4d3a27c2497c6793e)", - "P->V[59112:59144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5447740: Hash(0x00000000000000000000000069c4de6a3b1d827bc0d6000b861729fa31f657d5)", - "P->V[59144:59176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5576574: Hash(0x00000000000000000000000077f5c6d863728d6d409970a6cecb542682ebef4e)", - "P->V[59176:59208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6084680: Hash(0x000000000000000000000000156f908911705c3c1098fca1611bb3c739b206f1)", - "P->V[59208:59240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6086680: Hash(0x00000000000000000000000075d263feb41197150c7e1d9cf98b534a6819fab8)", - "P->V[59240:59272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6203287: Hash(0x0000000000000000000000002d05d6011bdbdcc460e5c19d33e9338b29d764e1)", - "P->V[59272:59304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6425382: Hash(0x00000000000000000000000044530c85d713950bacf106c017ba7947874d591a)", - "P->V[59304:59336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6967429: Hash(0x0000000000000000000000006fc2aeefca0a90b768cad4b5f1abf415b70a4be8)", - "P->V[59336:59368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7054414: Hash(0x0000000000000000000000001d2c1467b199ee3dcf1a559d72d34b43960e4661)", - "P->V[59368:59400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7139720: Hash(0x000000000000000000000000e1083eca48f153e5d87fe095a5e487994d2746b0)", - "P->V[59400:59432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7792491: Hash(0x000000000000000000000000c2a73a4558f7c710f88f6a0efa23555dcd1b1d84)", - "P->V[59432:59464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7993586: Hash(0x000000000000000000000000f675666332617631a4de9c9702e2ad6462d775f2)", - "P->V[59464:59496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8042604: Hash(0x000000000000000000000000b64684f7ebf084e566415acf594eb49854a7e026)", - "P->V[59496:59528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2237776: Hash(0x0000000000000000000000001bd6677094915e5cd3a7ee9ce4402f7c41dea8be)", - "P->V[59528:59560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2394401: Hash(0x000000000000000000000000b9fcd5150df2a807b321aafb94ac895832cf3481)", - "P->V[59560:59592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2422508: Hash(0x000000000000000000000000b143e86224448805aea896e860a7a57d68555846)", - "P->V[59592:59624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2441690: Hash(0x00000000000000000000000019be4f78f4fd9671845db034c96f39303cad05f7)", - "P->V[59624:59656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2697986: Hash(0x000000000000000000000000c85ab97865137834cce78d894c636e2e35ddeb05)", - "P->V[59656:59688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2723871: Hash(0x0000000000000000000000004ad39c3b3b45a864db2180c4b22e1c4beb5d8c4d)", - "P->V[59688:59720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2788286: Hash(0x0000000000000000000000002bb9d44f1a3d8e12e754808f99e3760206eae9cf)", - "P->V[59720:59752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3042341: Hash(0x000000000000000000000000452f659b4a3497ecdc50107ae56a667a400bcf74)", - "P->V[59752:59784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3043341: Hash(0x0000000000000000000000009b9b5c318bffd91ed06dfd55509980599f85e2de)", - "P->V[59784:59816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3101642: Hash(0x0000000000000000000000003259c5f620ad3d6b78342eb77d387294dd911064)", - "P->V[59816:59848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3212690: Hash(0x00000000000000000000000060442e37a88c0c2ccd1f766d5bc4674fbaf715a2)", - "P->V[59848:59880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3483715: Hash(0x000000000000000000000000de91996d03c42ef3d718f44acdfb91beea76d592)", - "P->V[59880:59912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3527206: Hash(0x0000000000000000000000005107c67aaa7a2cafac731c552dc55e46abc12699)", - "P->V[59912:59944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3569861: Hash(0x000000000000000000000000634ddeb3fc045da1b64334cb70814c2e599bddac)", - "P->V[59944:59976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3896244: Hash(0x000000000000000000000000dce37dfd40ee8b90c671f579d37c854ab4e9adc7)", - "P->V[59976:60008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3996792: Hash(0x0000000000000000000000000c83d33c80f2939bfc3e7c2d720aaa66d29cb163)", - "P->V[60008:60040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4021303: Hash(0x000000000000000000000000124adbb326e4582a36734f06732d0a2fb9275a51)", - "P->V[60040:60072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1118889: Hash(0x000000000000000000000000cd8bc5378bdd6958f4a0cb2589e418fcadc67298)", - "P->V[60072:60104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1197201: Hash(0x00000000000000000000000040557309f0ade7dfd05ef37d6bc4f533a0eda7bd)", - "P->V[60104:60136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1211255: Hash(0x00000000000000000000000013c011861369d5118e90919d160005ecdafe5584)", - "P->V[60136:60168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1220844: Hash(0x00000000000000000000000072cbc506cdeaf1da555adfd8574f5070934e92f9)", - "P->V[60168:60200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1348992: Hash(0x000000000000000000000000649c7d74d18e8f6920554dd5a0cdd9d8fe7c750b)", - "P->V[60200:60232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1361934: Hash(0x0000000000000000000000006fe5f7993d48a05c1d99c59a1b4c7dce3c4fa0f5)", - "P->V[60232:60264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1394142: Hash(0x0000000000000000000000005432a12e7e2090856f96487a46425f2ea695b6e4)", - "P->V[60264:60296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1521171: Hash(0x000000000000000000000000d7b978d02e0657c0ea6785b2a9fa0a00586baeef)", - "P->V[60296:60328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1521671: Hash(0x00000000000000000000000084a52eeac6fad8079e166d9880241a32fb9d9673)", - "P->V[60328:60360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1550820: Hash(0x000000000000000000000000831c85d0d1486726ba5569d79e2808c0d68a8bbb)", - "P->V[60360:60392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1606344: Hash(0x00000000000000000000000058416d2732ba8c8c7ce3b90199ab0840028033bd)", - "P->V[60392:60424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1741856: Hash(0x000000000000000000000000bf0c7134a194cc9b2f0c49ac2495097bb8745f07)", - "P->V[60424:60456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1763602: Hash(0x0000000000000000000000005e18d675c90205e2201d38b04cb5649dfec0a9f9)", - "P->V[60456:60488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1784931: Hash(0x0000000000000000000000006696822155e77df16d4753742b40756876904c47)", - "P->V[60488:60520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1948123: Hash(0x00000000000000000000000069b551687985fca99cd82918c30de21019164f6f)", - "P->V[60520:60552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1998397: Hash(0x0000000000000000000000003018fe7ac062186aeb6e0742c4f4fce79d677970)", - "P->V[60552:60584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2010650: Hash(0x000000000000000000000000eefa1ba09609f5bf3885994da467136b4222ef4f)", - "P->V[60584:60616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 559445: Hash(0x000000000000000000000000bc7ec687fbe756d5068634f8446df7ce4c8d9ce9)", - "P->V[60616:60648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 598601: Hash(0x000000000000000000000000e71184bc4944efb31435cd7eebe8ac37e396a982)", - "P->V[60648:60680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 605626: Hash(0x000000000000000000000000ac39a91721bddc8ae8e09f7a9d2be979d59a9fc3)", - "P->V[60680:60712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 610423: Hash(0x000000000000000000000000be7052d02ff4ca5b5b46407afb7fbfc47147cde6)", - "P->V[60712:60744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 674497: Hash(0x00000000000000000000000044f87968edff32e42b2258e077a4697c0b50761d)", - "P->V[60744:60776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 680966: Hash(0x00000000000000000000000079481e7bbb407b8f7cca26f0b3516188b77af69b)", - "P->V[60776:60808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 697070: Hash(0x000000000000000000000000fce17b288250739749f0fb6f63d9c78491a2b19a)", - "P->V[60808:60840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 760584: Hash(0x00000000000000000000000075a4c97ff8778763498e73b4a061daf2690d8416)", - "P->V[60840:60872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 760834: Hash(0x0000000000000000000000008067c74cfe6ae1e83fdfc840b2afd0118ae2146d)", - "P->V[60872:60904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 775411: Hash(0x00000000000000000000000062429b5ec310a16e8a0f8787abebc5e8faf61f93)", - "P->V[60904:60936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 803173: Hash(0x0000000000000000000000005975c7c3af19dbde57eae0137691548f8c579eef)", - "P->V[60936:60968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 870929: Hash(0x00000000000000000000000027dd00e1d9ae58586464184a9394014779d7147f)", - "P->V[60968:61000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 881800: Hash(0x0000000000000000000000009e7f23e65413606e7837512fae33403ede3cd1c5)", - "P->V[61000:61032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 892464: Hash(0x000000000000000000000000de43503b3cee19347905a257538d974ea899f3fd)", - "P->V[61032:61064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 974060: Hash(0x0000000000000000000000005a0382d564356af1d1c2f88765a9c3d204463ebe)", - "P->V[61064:61096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 999199: Hash(0x000000000000000000000000bf96b460f663da3e639f890abe58184aec8b0533)", - "P->V[61096:61128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1005324: Hash(0x000000000000000000000000c3eed7771095347273dacfb80f99311d7ce5685a)", - "P->V[61128:61160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 279723: Hash(0x000000000000000000000000386d5b4f295ac21cfb566a1aeedde71dbe1ea07b)", - "P->V[61160:61192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 299301: Hash(0x000000000000000000000000772ffb468e409bd8373ace46f15beecda3cf9e22)", - "P->V[61192:61224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 302812: Hash(0x0000000000000000000000005011c0b5e8e30ce5cdea47f2dc6ab2f79607bc4b)", - "P->V[61224:61256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 305210: Hash(0x00000000000000000000000094d48d3a38f649b15bcb445834d327e9a69b84f1)", - "P->V[61256:61288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 337249: Hash(0x000000000000000000000000b0891011a179728f118ebb8cc50b55df894f768c)", - "P->V[61288:61320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 340482: Hash(0x000000000000000000000000b4fac985f0dc5af6f550991ab09de9bb3b2fff0f)", - "P->V[61320:61352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 348534: Hash(0x000000000000000000000000c6792f19caf7a826602a347f307d680a0cb78f18)", - "P->V[61352:61384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 380293: Hash(0x000000000000000000000000d439a2d5e7ff7c260f2e4bef31774e779a605f82)", - "P->V[61384:61416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 380416: Hash(0x0000000000000000000000009068af5e942efc3fb9ebbfb6016e23d9ae33c5a7)", - "P->V[61416:61448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 387704: Hash(0x000000000000000000000000d8e5b1be167ae84e21f3f5f51576b3e2d78dd907)", - "P->V[61448:61480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 401587: Hash(0x000000000000000000000000a234ef84b625ecce000cfbdc0f9f99130ca73fd8)", - "P->V[61480:61512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 435465: Hash(0x000000000000000000000000479811462f61a9516785d999e5ffe146c01995d5)", - "P->V[61512:61544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 440901: Hash(0x0000000000000000000000000440defab45248c7a8d80674b8f8d5ca2fd8e3de)", - "P->V[61544:61576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 446233: Hash(0x000000000000000000000000eabbcef78c9277d48594b105a3541e08bc9a8236)", - "P->V[61576:61608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 487031: Hash(0x0000000000000000000000004c993c9c42a433b16cc4063b89baa6d3018502c5)", - "P->V[61608:61640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 499598: Hash(0x000000000000000000000000d8600c177e077570946d6642600f67229c23ea5b)", - "P->V[61640:61672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 502663: Hash(0x000000000000000000000000c3caea859cbd6dfc55ba8a6e488d9728a93ec122)", - "P->V[61672:61704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 139860: Hash(0x000000000000000000000000722f4b88735897f6614778d665df0d0ce2b4b786)", - "P->V[61704:61736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 149651: Hash(0x00000000000000000000000025e3a5fa0ea59e414d417de57bad68a6b28d2ea1)", - "P->V[61736:61768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 151407: Hash(0x0000000000000000000000009e8b58037cfdf63ab52567c45cea4ac05d1d768c)", - "P->V[61768:61800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 152604: Hash(0x00000000000000000000000013cb38bc83787ba15cf872f4a6e66fbdbcc77420)", - "P->V[61800:61832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 168625: Hash(0x0000000000000000000000004c7d1a3034051685406dc60cdc52b8bd61d566b0)", - "P->V[61832:61864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 170240: Hash(0x0000000000000000000000001436fc0975c509a46e9917091434cdb54cf7ed6a)", - "P->V[61864:61896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 174266: Hash(0x00000000000000000000000073c5a7586d52b659a884f920f320fda3f0e14315)", - "P->V[61896:61928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 190147: Hash(0x0000000000000000000000007c5efdb14f9c9e84f0deb99e1e79802903bbb6e3)", - "P->V[61928:61960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 190209: Hash(0x000000000000000000000000c2958dd6a6d97c5525582ce58af998d004676e6e)", - "P->V[61960:61992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 193853: Hash(0x000000000000000000000000ff08e7589f579e3efb9212a9ab074a3a76c05e81)", - "P->V[61992:62024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 200792: Hash(0x00000000000000000000000059524d9618166381955cfa0d6f61c71d201b066c)", - "P->V[62024:62056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 217733: Hash(0x0000000000000000000000006e93c3b6a211fc66dd1c83d3512600c2270ce604)", - "P->V[62056:62088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 220451: Hash(0x00000000000000000000000041e13f0499db30f116338bed0cc3ea4f75544118)", - "P->V[62088:62120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 223117: Hash(0x000000000000000000000000f5cba06f0abe595f0aa110e0dde225bef04863a0)", - "P->V[62120:62152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 243514: Hash(0x00000000000000000000000097298a209c2780124263ad007d9c195ee3b19262)", - "P->V[62152:62184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 249798: Hash(0x0000000000000000000000008a2473db7cadb55c0ba18150e0cb28b5d9d26573)", - "P->V[62184:62216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 251330: Hash(0x00000000000000000000000088e03c4e90f0d6837d4ca71538d1c64415671975)", - "P->V[62216:62248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 69931: Hash(0x000000000000000000000000400cadd08cf7fa1b8dcc2bec46d752866b4f6a0d)", - "P->V[62248:62280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 74824: Hash(0x00000000000000000000000036663d5fc5ab37fde1218f3b5a428af0eac353d5)", - "P->V[62280:62312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 75702: Hash(0x00000000000000000000000094e7c67a07b78be28a8328d3621b06b3c23a8515)", - "P->V[62312:62344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 76303: Hash(0x000000000000000000000000f3350966f44e10241e61ffd5d63feeb252346e9d)", - "P->V[62344:62376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 84313: Hash(0x00000000000000000000000022087a2100402c52385ea9ddf6fcc409cbd87ebe)", - "P->V[62376:62408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 85121: Hash(0x0000000000000000000000006bdff1d3f93abf85ac1c9b865cfd90e8b053194e)", - "P->V[62408:62440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 87132: Hash(0x000000000000000000000000b77c89f5fbf637fefbf15848fdf1b3f12e583c1b)", - "P->V[62440:62472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 95072: Hash(0x000000000000000000000000f4f2a68e9b9c1fe7b172d61c4b51f43b6071edd3)", - "P->V[62472:62504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 95105: Hash(0x000000000000000000000000b25a5de10a65993bcfbc450e153ec8226b66af67)", - "P->V[62504:62536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 96927: Hash(0x000000000000000000000000a8c8332ea643d16276c8adb551f195eaedc28e84)", - "P->V[62536:62568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 100397: Hash(0x0000000000000000000000007ff3dcc069a784832967acdc3144746ea986de5d)", - "P->V[62568:62600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 108867: Hash(0x00000000000000000000000014a4f7b96ead651aa53adc56ab7e98c49d07ae0b)", - "P->V[62600:62632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 110224: Hash(0x00000000000000000000000070383748b528611c31947caed46b7a7f24898b49)", - "P->V[62632:62664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 111559: Hash(0x00000000000000000000000044cf7e93d393eefd072f4a7fcd3b440a39ca6c1c)", - "P->V[62664:62696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 121756: Hash(0x0000000000000000000000004e6494d32de826a8952bd2f3e61a7b6fe68c7c1e)", - "P->V[62696:62728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 124898: Hash(0x000000000000000000000000e45856f1dd0fbe8f69edf69720df96e2e9138fff)", - "P->V[62728:62760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 125664: Hash(0x0000000000000000000000005f19f6b7d53efeb03d4755182e6018b02440c522)", - "P->V[62760:62792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 34964: Hash(0x000000000000000000000000fb11ed5a06457cf4329a8749b98deab71d8fa4e4)", - "P->V[62792:62824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 37413: Hash(0x000000000000000000000000abe77a2982972031877562ce1e0126ff86cfcc29)", - "P->V[62824:62856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 37850: Hash(0x000000000000000000000000e9f925e3c9e32b134f5049db38c341619eafde8e)", - "P->V[62856:62888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 38150: Hash(0x00000000000000000000000083e075a2019db6014b3627e8cd25b15b1d4fde2a)", - "P->V[62888:62920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 42157: Hash(0x0000000000000000000000002007a23a511142c07de4ee757ae3458b13827283)", - "P->V[62920:62952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 42561: Hash(0x0000000000000000000000006db58a124d2de1667227725e6ae71d84d2b1324e)", - "P->V[62952:62984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 43567: Hash(0x0000000000000000000000006a1bd5a22d6b23b2e2ec43d805ba1f43566c015c)", - "P->V[62984:63016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47537: Hash(0x00000000000000000000000033e16d6be600939704396a8138d20833746adfa1)", - "P->V[63016:63048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47553: Hash(0x0000000000000000000000006ac2d0e5265a6f9dc8d435c616ed9f8a195eae7c)", - "P->V[63048:63080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 48462: Hash(0x0000000000000000000000000ae2b878a7499369bd96fb307a47790a3f3383ce)", - "P->V[63080:63112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 50199: Hash(0x0000000000000000000000008d5513d180657c26b548f1b24b7ad172afdaf48e)", - "P->V[63112:63144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 54432: Hash(0x0000000000000000000000007ff5498c6a6cb51a504a129fc5639e9ace2f4486)", - "P->V[63144:63176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 55113: Hash(0x0000000000000000000000008ea058611905b91d6cef43308a84bb4168a22c45)", - "P->V[63176:63208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 55778: Hash(0x000000000000000000000000166848a35c36b7f5c2d3cf690dc2902091900f1f)", - "P->V[63208:63240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 60879: Hash(0x0000000000000000000000004ea0b590028e416f23c1cc379b4d121a0a71ce00)", - "P->V[63240:63272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 62448: Hash(0x00000000000000000000000073caba0ad2e614745451c8225c6b76a9ca436d9a)", - "P->V[63272:63304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 62833: Hash(0x000000000000000000000000fbe7c154aa0fd8d8056b2d27ab789e0dc5fb0ad6)", - "P->V[63304:63336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17483: Hash(0x000000000000000000000000d895cf87dc5ffa54ee5032cb73147b9d11f81a5e)", - "P->V[63336:63368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 18707: Hash(0x00000000000000000000000016eed44ab87d1215422f1373ad798bf3d2a50eea)", - "P->V[63368:63400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 18924: Hash(0x000000000000000000000000e07a1f73254ad5e749eb97ad885443445137a870)", - "P->V[63400:63432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19074: Hash(0x000000000000000000000000de5b7653309aadcd6bcbc6f05d26a9f30c32a340)", - "P->V[63432:63464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21079: Hash(0x000000000000000000000000ce68fd4c610864d21356ae5d1ec7ce00f089e41d)", - "P->V[63464:63496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21281: Hash(0x00000000000000000000000099bf5478230249dabdde6763dce26ebbfa3a73d0)", - "P->V[63496:63528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21782: Hash(0x0000000000000000000000004556db31cbafd244ce86356da0374dadd9e15761)", - "P->V[63528:63560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23769: Hash(0x0000000000000000000000007f5886d87cd78dcbf0b770e5d8a6c7358418b82d)", - "P->V[63560:63592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23777: Hash(0x0000000000000000000000006f7d59151575906bfeae27757d7443c09822eee7)", - "P->V[63592:63624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24230: Hash(0x000000000000000000000000afee1afa0469f420466b10c6948fdb41df064bfc)", - "P->V[63624:63656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 25098: Hash(0x000000000000000000000000baa5a4fcdd897cd065313ea39328543c1e6947e8)", - "P->V[63656:63688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27217: Hash(0x000000000000000000000000207b88d6decb0643696ca0fa5b2f661f2d748fec)", - "P->V[63688:63720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27557: Hash(0x0000000000000000000000004907917341098c0072374e71403238b9240e98e8)", - "P->V[63720:63752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27888: Hash(0x0000000000000000000000002f6091d8b841f262391fca85d1af24dcde5167d5)", - "P->V[63752:63784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30438: Hash(0x0000000000000000000000002f6a4b134635518995830b56706ddc1bee35e169)", - "P->V[63784:63816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31225: Hash(0x000000000000000000000000d47e81922583d8a5d4f073f62199b02b1eb3e5ff)", - "P->V[63816:63848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31417: Hash(0x000000000000000000000000424b6046747d1a64444bf98f8f1240940ab4ca73)", - "P->V[63848:63880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8740: Hash(0x000000000000000000000000811d05371373db4f70b6d92caf6deb21a0c757d4)", - "P->V[63880:63912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9352: Hash(0x000000000000000000000000b297a07e3ffda56392cc847779ee34639a0475e9)", - "P->V[63912:63944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9463: Hash(0x000000000000000000000000b53145ed16ab8f722d305e2a3a06add496ebe492)", - "P->V[63944:63976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9536: Hash(0x0000000000000000000000008d985a5adcee660ff0fa9f6bd7fface75a56b49c)", - "P->V[63976:64008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10538: Hash(0x000000000000000000000000be6cea1f9af81c2e273ad10cac3c7b315761e23d)", - "P->V[64008:64040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10641: Hash(0x000000000000000000000000ffb744c82384e17a112fbb18168021ae356f6057)", - "P->V[64040:64072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 10890: Hash(0x000000000000000000000000d448b81998331abae98e637b631201a29b3a8173)", - "P->V[64072:64104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11885: Hash(0x000000000000000000000000ebb7d8ff312ea25002c8ddc4900b8493d97126f3)", - "P->V[64104:64136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11889: Hash(0x000000000000000000000000bbc8934c3d4f30bd0996d334f879b945eb35516a)", - "P->V[64136:64168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12114: Hash(0x000000000000000000000000df4ebed7926a569118341ecb36025b5850e0f6d3)", - "P->V[64168:64200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12548: Hash(0x000000000000000000000000aeca61e2c3af6e5235556b17223ac73a9a6e5eab)", - "P->V[64200:64232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13609: Hash(0x00000000000000000000000005c3ccb359d254795896ddf1d727f3cfc31f9d6f)", - "P->V[64232:64264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13779: Hash(0x0000000000000000000000000f1463beb9e77fc868ff016b806978fe826e6c36)", - "P->V[64264:64296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13945: Hash(0x000000000000000000000000f900e25ab8dca1b9689aee62b89f2a7cdc627298)", - "P->V[64296:64328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15218: Hash(0x0000000000000000000000004d5925b518e180a016b6fa42b2a226330f2d3941)", - "P->V[64328:64360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15613: Hash(0x00000000000000000000000013b2173fd25bd70a8d262cccc1bce1401b33310d)", - "P->V[64360:64392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15709: Hash(0x0000000000000000000000009a6456447016ccb371c026d5674cb66a5b89fde8)", - "P->V[64392:64424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4371: Hash(0x000000000000000000000000014972b5907b931ada31b02b94bb0d6a721c5196)", - "P->V[64424:64456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4677: Hash(0x0000000000000000000000007542498658912adef19df0ad644e3358945cb43b)", - "P->V[64456:64488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4730: Hash(0x000000000000000000000000ed8beae6ef0cd3d3f9134ba6b01fff76c67cfc5a)", - "P->V[64488:64520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4769: Hash(0x000000000000000000000000336bd1c389b59a83e5b387c6487b71cd39b3f6e1)", - "P->V[64520:64552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5268: Hash(0x00000000000000000000000070fb56bf437c3e45697ad801252e121307780dd5)", - "P->V[64552:64584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5321: Hash(0x0000000000000000000000006a33c6b8d7e7b6d715a0a1785b6765f55a3d0e13)", - "P->V[64584:64616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5444: Hash(0x000000000000000000000000866125ca9846cf4cb258d878b256e66a42ceef3a)", - "P->V[64616:64648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5943: Hash(0x0000000000000000000000000a0ad397a32598260a1f2abc45be9b42a6238b1d)", - "P->V[64648:64680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5945: Hash(0x000000000000000000000000e6b97377aa9ca250c2f5db241d87b67317facc34)", - "P->V[64680:64712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6056: Hash(0x000000000000000000000000ccba28f148c811c9bac40fefcb817f6f2e1270a6)", - "P->V[64712:64744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6275: Hash(0x000000000000000000000000c18dfca22ffecf59328fd3697d09e11c182df5fb)", - "P->V[64744:64776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6805: Hash(0x000000000000000000000000456db49aefdecca027dfe8526f78832342ca7d0f)", - "P->V[64776:64808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6888: Hash(0x00000000000000000000000052b0e7b160c41cce130d608f51558314ad0bd1c8)", - "P->V[64808:64840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6973: Hash(0x0000000000000000000000006777f33982cc878e4a2b16817a7f4eb604a757e4)", - "P->V[64840:64872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7608: Hash(0x00000000000000000000000075b75f299e8babe5445a782f8408a9c30c981999)", - "P->V[64872:64904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7807: Hash(0x0000000000000000000000007676820120f44f45af891e719e460daf19f899e0)", - "P->V[64904:64936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7855: Hash(0x000000000000000000000000beb8667849b71c1824d050a6923519862801fcb7)", - "P->V[64936:64968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2184: Hash(0x000000000000000000000000f5a007e3b9487e28ab44e02c93071c3599e8ae6a)", - "P->V[64968:65000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2339: Hash(0x000000000000000000000000ce5d1bff768245ac5b5f9e00a368515bb5c71f1e)", - "P->V[65000:65032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2364: Hash(0x0000000000000000000000009f0860d17dd9b70f2fcc1a1e0d6186e259102068)", - "P->V[65032:65064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2385: Hash(0x00000000000000000000000092410dd74dbcf8196521d2ec662e9d4deec6d2bb)", - "P->V[65064:65096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2635: Hash(0x000000000000000000000000dc0ece91a91fe1d7ffb689a053e262959c9f775a)", - "P->V[65096:65128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2661: Hash(0x000000000000000000000000623a750f745023d937166b054579e60d017d5549)", - "P->V[65128:65160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2723: Hash(0x00000000000000000000000065bb0a0dd0c5e0e1dda70654dfa346698c1e2c37)", - "P->V[65160:65192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2970: Hash(0x000000000000000000000000be07e17b9e9f501cdbbdd0d38097606e02b173ff)", - "P->V[65192:65224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2973: Hash(0x000000000000000000000000381a7998dcb28eb864087529a3d3041cad546446)", - "P->V[65224:65256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3029: Hash(0x00000000000000000000000010c00b5ca5a9677a3053b42d6dbf73d79b0798c4)", - "P->V[65256:65288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3136: Hash(0x0000000000000000000000009987254e8960684a144a896f5b257794768b75ac)", - "P->V[65288:65320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3403: Hash(0x000000000000000000000000483c869b254eb5edd9b90ed9fd4f231cd5c3a51c)", - "P->V[65320:65352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3445: Hash(0x000000000000000000000000e1f24279d5632c7c82f9e53b0a8a5a83fe365b94)", - "P->V[65352:65384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3487: Hash(0x0000000000000000000000002429dc453df0ae4fb892b651c7e1162f1b57156f)", - "P->V[65384:65416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3805: Hash(0x000000000000000000000000164e0b5c53633996168038fc81646912cb5aa69b)", - "P->V[65416:65448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3902: Hash(0x000000000000000000000000d9c98ab57de1ade5398c8997302c337cb0b2799b)", - "P->V[65448:65480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3926: Hash(0x0000000000000000000000006c3fd348ec79931c16dd39cf502b17184f591eec)", - "P->V[65480:65512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1093: Hash(0x000000000000000000000000bbef26075bff3c4057ef453868ac0dcfc522ff03)", - "P->V[65512:65544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1168: Hash(0x000000000000000000000000884f0491b4b14d662e6a3d652e7c3e4ef0508e9b)", - "P->V[65544:65576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1183: Hash(0x000000000000000000000000e8ce2c6e2cd265f9d736ae8d75579561cfcefdb3)", - "P->V[65576:65608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1193: Hash(0x00000000000000000000000001df8459717f1b051f76dcd7826f221a8f727640)", - "P->V[65608:65640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1316: Hash(0x000000000000000000000000b2ff804fb92abae966be013eb665be1872c979e0)", - "P->V[65640:65672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1331: Hash(0x0000000000000000000000000c60137a19bd8ec88f25a83ba762d7b1c674e30c)", - "P->V[65672:65704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1360: Hash(0x000000000000000000000000caf47b0672eaa7874ff42bfbd2a4a2f1eb26348e)", - "P->V[65704:65736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1484: Hash(0x00000000000000000000000083b370b299109ef16d2c376be743ee6419a3b082)", - "P->V[65736:65768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1487: Hash(0x000000000000000000000000b478043f5b5552dcc4c808ef06bbae63de806553)", - "P->V[65768:65800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1515: Hash(0x00000000000000000000000029496492b80b79da498cc910d34870fb3138e5cd)", - "P->V[65800:65832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1569: Hash(0x0000000000000000000000006bec6d19438d01d5da9fc44434aeff486478b4fa)", - "P->V[65832:65864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1700: Hash(0x0000000000000000000000007df11cb856cbb4f619f8c8806f704f56c2bc41be)", - "P->V[65864:65896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1723: Hash(0x000000000000000000000000b72e5be03b73f84218f0a6843cbaac6c5e0c93ff)", - "P->V[65896:65928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1742: Hash(0x000000000000000000000000457e2400f45aa6a5527ee66e1e74aebb391a90c7)", - "P->V[65928:65960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1903: Hash(0x000000000000000000000000edf30906c69130302db3625a2d500d8ded6aca5a)", - "P->V[65960:65992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1950: Hash(0x0000000000000000000000000552b4683d71d8d1629d31aca63f58de72e9ff13)", - "P->V[65992:66024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1962: Hash(0x000000000000000000000000fb81561aab2ca93e4a5b728909b5270eaccd05aa)", - "P->V[66024:66056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 547: Hash(0xeb95b2b176a103fa61c76eb8e92daa1c378b18ad)", - "P->V[66056:66088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 585: Hash(0x75e7e71d6a585b0ebc2ea7b6c437a35b7493fd78)", - "P->V[66088:66120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 590: Hash(0xf1edb9d87ee4e45f4c059b811ba920d270af8847)", - "P->V[66120:66152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 597: Hash(0xd2e0e1c7450c3f0e7d27e77e6dc0c2746daeae94)", - "P->V[66152:66184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 659: Hash(0x225e9bdc530f0ffda0701693439fdb72bed822f0)", - "P->V[66184:66216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 664: Hash(0xa35d30860dfb6166c31c3cfcaf2634ee7c433e26)", - "P->V[66216:66248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 681: Hash(0x2573490c117fd3a16414d7fd30a7e14c7b436f03)", - "P->V[66248:66280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 756: Hash(0xee77bf955f39242c55cb2f9202bcbe3694c27ff0)", - "P->V[66280:66312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 785: Hash(0x5384eee015fa0d3ac8097d58f6e5fcf366a606e)", - "P->V[66312:66344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 851: Hash(0x1c0ece173b14f50281f18657d5645d95d202e0bd)", - "P->V[66344:66376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 860: Hash(0xc76d46065c922da231a9359ce55f0ede66b34cc8)", - "P->V[66376:66408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 870: Hash(0xa6f8d9c30ecdf332928f1e66cf882819514f1df6)", - "P->V[66408:66440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 950: Hash(0x83e4921c0fa517572e54c70c578851633bcc324e)", - "P->V[66440:66472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 974: Hash(0x7df17769c2962916e8facb3a823842efcd782707)", - "P->V[66472:66504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 980: Hash(0x42166001493c4a17845268bb33c431b96b7e8b50)", - "P->V[66504:66536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 272: Hash(0x34c7e0f363b4f6d5f12abfd78c6bb0f5783f55165b09e7ec311688744cf83c2)", - "P->V[66536:66568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 293: Hash(0x5b804d9333c3286b679f35f0c489ecb5e5197025c5815de339b7001da0464bc)", - "P->V[66568:66600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 294: Hash(0x152064a10ea8972df03f5a2678af1878c62bb59bbd96bd6bf841cdad72d48d1)", - "P->V[66600:66632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 299: Hash(0x4180f6332447c483bc661e91f62876a0431fcc4824a8a2d0337118059bd7a21)", - "P->V[66632:66664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 328: Hash(0x24342164d1813103979bb175487784407019b2236b2658f4c6f8084201056e0)", - "P->V[66664:66696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 333: Hash(0x4d83e5f3fe7afea46b4334c53044822f09299b7bec593184562721c4dea5b03)", - "P->V[66696:66728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 341: Hash(0x61cc444600c21aa5c1fe2395e0fd581c931bf980d7785380c22ce19251e417)", - "P->V[66728:66760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 370: Hash(0x93d5b536501852806b02207e4e7e095b1a6ac01b2504b261d572146c11c365)", - "P->V[66760:66792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 379: Hash(0x2edac1e0b1d08ca31eeb5dd04c9d65b6af0e79a5c37a70e0da0223d455afe9c)", - "P->V[66792:66824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 393: Hash(0x29337bd92a9cede67c74c95f87d624793dbc5894570535cb2b1f5166674a7d7)", - "P->V[66824:66856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 424: Hash(0x682a3b0e5f05bf1f0f4bff065ec80a7f1951c9831863742ae46ced572d25c51)", - "P->V[66856:66888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 431: Hash(0x91125e17ef316e0e3e295ca131a7454a1812b4a9bb9e7b376a5fe829c2dcbf)", - "P->V[66888:66920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 434: Hash(0x110de40018be73c99366439312dda392c9204c0c50d82f530612be018a7ba2)", - "P->V[66920:66952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 474: Hash(0xf97131ca934db2bc00b3838eb54bc5b4773936d6be5ad7a22bcba53ec5ad2a)", - "P->V[66952:66984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 486: Hash(0x1ee101a4045159b2f2e0b31202a719b5a788f933e8b7c51709cebcde82f4e23)", - "P->V[66984:67016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 491: Hash(0x275aaf10a9478f0b9aac5566595d29b10a22733183742162346f2e715baefce)", - "P->V[67016:67048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 137: Hash(0xddd2a0a1e49060daa09d729320507f901af0a2e639b6fa65191e7de7d9595e)", - "P->V[67048:67080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 148: Hash(0x671ebe4d0f674124b78df8aa59dc5d2affe06ed01f1a294d481751dee091f0b)", - "P->V[67080:67112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 165: Hash(0x3d30418254321861816cf4874d3772f9b4f8453870f529dc75d1a0bb75de18b)", - "P->V[67112:67144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 167: Hash(0x211d898a1535ad60d8cdb2a00f84428ac4bd338cb5a3eb5002f16f8ae4a27df)", - "P->V[67144:67176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 171: Hash(0x355bdec173aaa184f1dbab19d781e39f9e2ffb9d96b7d5647e9c3095cd79efe)", - "P->V[67176:67208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 184: Hash(0x214cc71dbd01f3a00382045d082f6d47dfaee0afa5f0024c1506b16344a9c92)", - "P->V[67208:67240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 188: Hash(0x4db9968721be48e56abde5b73d77e8714d5ccf59e3ede7ba5116c8ff67d05f9)", - "P->V[67240:67272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 197: Hash(0x609f26527cde5765fd07f62805f98bee6b2f83821470910113317ae96c2f3db)", - "P->V[67272:67304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 213: Hash(0x75761bd79811bd57d36e59865cac86ce79555ca85d89544c280f6cc64256ddd)", - "P->V[67304:67336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 214: Hash(0x5a36bc94167db1b648b1512e0f9c6ec9253432253475a24be7b48c9b0a4ebba)", - "P->V[67336:67368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 216: Hash(0x59b212b49a14b6f6c392a9cfd536dedbea66c74bf4ced7ede67cc46c152ac47)", - "P->V[67368:67400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 236: Hash(0x1066305896de5d8330acfe0293b79264413c3e7730d011bbd02c3c44272bc55)", - "P->V[67400:67432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 242: Hash(0x3f8b92c5c428872d5023d9e16e606bf48e97faff0da1f9b0117c18ef0fecd4)", - "P->V[67432:67464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 244: Hash(0x503aa1de15404c0a1cd031829eda6e5b2e4d122c551c4154e569a91749de9d8)", - "P->V[67464:67496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 69: Hash(0x285641f7ca8e4268a09ca4f408e98368bb25ab37042c263f03d9bb2c95cff5e)", - "P->V[67496:67528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 72: Hash(0x10c936d76978d8af5d8d7ddb78ce751dd8c3f1778d107a41e677e8743ffb097)", - "P->V[67528:67560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 75: Hash(0x379930eb2d0c87ced3e1e5f955080c2a6e83d8bfacff40826b8855d01fba87c)", - "P->V[67560:67592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 84: Hash(0x27881e495c7a79f5c00dcae99a0526023db769f2dfef90ad45dba6ae8c83170)", - "P->V[67592:67624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 93: Hash(0x3f18e453fc164e5904b9d34dab71ec1beb96113b24250c7db8293f597a76398)", - "P->V[67624:67656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 95: Hash(0x693077baf7ba06ad982594ef4119057793e1aeb48b75ec7d63605cc666dc6da)", - "P->V[67656:67688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 99: Hash(0x63ffa843c802295eeb272a124930c538b994e46b37f5962b4b53292dd6dd276)", - "P->V[67688:67720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 109: Hash(0x3cf537efd2be09d161e624b8762a295f4c3c7a59082b7ac918ac9387556a22)", - "P->V[67720:67752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 119: Hash(0x6853d0aefea02e52a11ca11ed941f980af3e5cd173475dc9d5e099f9ba35efa)", - "P->V[67752:67784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 120: Hash(0x42d65a576353a2b7cbdbdd2b6328680d9bffd084a29a6d45455b0792e4436f4)", - "P->V[67784:67816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 123: Hash(0x4fd98086d7b0a1414e42f276ef1aa6de2ba8aa239060dd0cac0fbdc0e625bb7)", - "P->V[67816:67848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 35: Hash(0x4dc186cd2f9d3715b9a3d4f5697c263e9b71327bba0d66d5480fe98db1e10b7)", - "P->V[67848:67880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 40: Hash(0x3f9379e87268d7f0c269a5b6e7d38d81e6d14489c8b8f7422e02e52a4356f21)", - "P->V[67880:67912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 43: Hash(0x6014eb00372deec516f8079990f2042796224b6dc8dc98b0a2fde7574cba257)", - "P->V[67912:67944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 48: Hash(0x48661ad3a58fc2c1a607d86051a1fe1a2ff3ae76628de4ac2a6dfc79efe9a)", - "P->V[67944:67976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 52: Hash(0x3ffc32e046ab9dadf761792b5792664f801a78b6577c4ff902e223b10c16a22)", - "P->V[67976:68008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 55: Hash(0x1f3ab83eeeb46758df082af0cde544944c1180a949cf2097e6fa7e7fb6cccad)", - "P->V[68008:68040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 58: Hash(0x4b0a7da5ee2ab6a44f23164ed60e288aa1f13cf884e683489a9c0cd93a7a09d)", - "P->V[68040:68072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16: Hash(0x3375394c45a8c175ae4a4c0f81684f7da44a435cedf75d0092546cac77e5963)", - "P->V[68072:68104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19: Hash(0x3397b54b687061c93b7eaa0c30b6ebee15e345f90b8ee2436d1d8e6f2fee703)", - "P->V[68104:68136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22: Hash(0x5628cf3713456b3a71cf34700bd3b448e61d54b62a752f670ec3bf366e2af3e)", - "P->V[68136:68168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 25: Hash(0x52685ebba05bec2d46ecc27a920c80274300a5c3e264eddb03f2a301830d53f)", - "P->V[68168:68200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28: Hash(0x5dbad0778267e585b400aec4e888255f14eff7be57898015d9c1f96cd9777ec)", - "P->V[68200:68232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31: Hash(0xca9f063ff859532476a0153cb988d0a58ad4020889530a17eb4d95a8505a7a)", - "P->V[68232:68264]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 0: Field Element(0x741029a65e265b056b3aef82843551eb39746cf609e24cb74c08d1c89b4b590)", - "P->V[68264:68296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 1: Field Element(0x1223f22a394e6fa047f4fc1aa2a7d8de25cbe03a606d9599c7806cd1f4231f)", - "P->V[68296:68328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 2: Field Element(0x5d9776a7c5955654f70a6bf85fe3d1f3505c80f784a168e478e17597975fb76)", - "P->V[68328:68360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 3: Field Element(0x1d2f8d3f68879f0102a27430b49dcb7dda82c09160ec336c1554594c856ea99)", - "P->V[68360:68392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 4: Field Element(0x586864f5334a2d4fc45f40d4beee618f24c8c656905ec2d8983c70c69c47d9c)", - "P->V[68392:68424]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 5: Field Element(0x553c53a94d404d7afc1f886be5237048e9d82bc0615ffb811555c407d65d369)", - "P->V[68424:68456]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 6: Field Element(0x7b12650555a80d965c98fa94e354973f8037c87a871a1bdb8c3a0d4d8b05297)", - "P->V[68456:68488]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 7: Field Element(0x6f84fbbd707d3d681bcd852a824134b01f625bbf02e3bdeefee38412503df31)", - "P->V[68488:68520]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 8: Field Element(0x7f01974855b46110ad5a09431f9bfbf8d5db901b657c30245e62eb1c51ca03)", - "P->V[68520:68552]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 9: Field Element(0x73efea15b48bc4e7d2981c867ac0ba2ca501287ac3631651a886e511bf9b6b1)", - "P->V[68552:68584]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 10: Field Element(0x5e6ac0111fde791ab71ab720cb9cf3bc9dec366862f07c98ea8a6307f3f579d)", - "P->V[68584:68616]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 11: Field Element(0x641c39c6101e1826158c69dcd6fde599018c538366f0ea04d1f851835641606)", - "P->V[68616:68648]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 12: Field Element(0x344d9ae65f1c09a6c741507ed5397d3ad1dd6fe6c372b48f9f038d5532068e3)", - "P->V[68648:68680]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 13: Field Element(0x7c1f67c7a7269deeb55aab75eeaa462b15d2eca49f974170dce318b4fc556e)", - "P->V[68680:68712]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 14: Field Element(0x528503cbd12d0ba6f3b247f6da5fedc6f50c317e1720e91e71367bb0bd74b9a)", - "P->V[68712:68744]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 0: Field Element(0x79d9e01d8b7a1b21ac55936e772fede1d687fe029716e6710446db7e2ca355c)", - "P->V[68744:68776]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 1: Field Element(0x6a6224eb301a24b6f5b9396af51ad2f22a5a449827a1aa0ef7a2aeed411b09e)", - "P->V[68776:68808]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 3: Field Element(0x557ab7c86f9c22c4e87684a34bb2c3a647a10ba6312731dba6250e97f66a0cc)", - "P->V[68808:68840]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 4: Field Element(0x40da2ed7c730cf3da80135e7b62ff83f0f68b67482f6bd44c0fe1696deac42e)", - "P->V[68840:68872]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 5: Field Element(0x4354fcd93c07a2067a78dfbc1f2ada4155420e2263dee4e9b164dd15389a0a3)", - "P->V[68872:68904]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 6: Field Element(0x3df5cfb7159cec1defd87a7f8f2ecce1fbe4c5a76c6b6274316ff6d074908d6)", - "P->V[68904:68936]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 7: Field Element(0x74caf5886286aca19ab29ef2061904a7d8edfef996840d0c14e9a49eb2aaed0)", - "P->V[68936:68968]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 8: Field Element(0x599660209271a6378d512edc0ce841a7356e877f5974e2551b6d6a882b1bb8d)", - "P->V[68968:69000]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 9: Field Element(0x745d525ac67a4d88d4eb7c70b48ea0ff5ba587dcc23d1ba34f10b0596105a67)", - "P->V[69000:69032]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 10: Field Element(0x6345af01a60dc5ae8107ad087a1847a4af749e6b8a9f091f1a52066be6034e5)", - "P->V[69032:69064]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 11: Field Element(0x1e072390609deccd9997a3d62a3f16f53619e4a781624bed0b5a05a455dd47)", - "P->V[69064:69096]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 12: Field Element(0x7c78ce527fda3bc02cc617f0a97024b73d7cf16779be76622ee0d0591d370ea)", - "P->V[69096:69128]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 13: Field Element(0x74042e6414d3db444405549c4affc72d0c33c52db605762542647153b014d3d)", - "P->V[69128:69160]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 14: Field Element(0x3a8761c366cc88ef354a873376473ebe9a06b3a03e3ab210dc5a08b7d0c6d74)", - "P->V[69160:69192]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 15: Field Element(0x1975ef656433553b43c22b313b4870969e853dd13d75113862743497ead006a)", - "P->V[69192:69224]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 0: Field Element(0x68b362c2e446b588c289a7b2a104315738bdcbb7ccf6ae249d05b9172a41e6e)", - "P->V[69224:69256]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 1: Field Element(0x6319ea8864a3bf74be69dbdf7b586f7f94192b533c8ad7d197cae9e3496ecac)", - "P->V[69256:69288]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 2: Field Element(0x6dd3e05fcb93036bd3a096940c144be187f09773f7035afe27fc0e783d5cbde)", - "P->V[69288:69320]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 3: Field Element(0x7c4c3ba1218cd22034d9fd93d8a3629c89bc4a8a43835c12ffb8315d91663ff)", - "P->V[69320:69352]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 4: Field Element(0x365d382e363079b33ca08d2fcd3f5302c33db5884b8b6dd084ef4a0bef5a5c2)", - "P->V[69352:69384]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 5: Field Element(0xc1a3d19409baecc6fecc93d0c36dc3761f96e7d77790f7a66c35903a52af39)", - "P->V[69384:69416]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 6: Field Element(0x19bbf23047c19056bf12bd276e4937d3474cee39ee353673f1e488015126556)", - "P->V[69416:69448]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 7: Field Element(0x3f3c85753cfb4641d625e365a5c465f4025489a8df7dc044662377e74d4a997)", - "P->V[69448:69480]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 8: Field Element(0x29cd20249df5720f8131027a1e32ac567302ca794c6037cd51a97015e4f15ae)", - "P->V[69480:69512]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 10: Field Element(0x66634e4ce142b0c168e5edcfd41f51c2bbd540ae1b1abda3805cea8400095b2)", - "P->V[69512:69544]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 11: Field Element(0x523171562ddf700c1e168f32cc7f84ea71efaa20b2165df340c804bddd669c)", - "P->V[69544:69576]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 12: Field Element(0x22d9128853d95b6ba14e1f3651385ad8ed0a0370a96aeadb1d1084b51af53ee)", - "P->V[69576:69608]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 13: Field Element(0x6064cfc19164e28de64faee7e73bc240dacc523054c569cddf5a491f5463ff9)", - "P->V[69608:69640]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 14: Field Element(0x48186ea46c57a0161026056901beaececf370eec2869ca9bad9878c013f1f75)", - "P->V[69640:69672]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 15: Field Element(0x6a4a040827e584d67ee64077f848e696cfb550dbe5ef7ada79a1e68ca2373c4)", - "P->V[69672:69704]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 0: Field Element(0x5be3709554084fae56135f3fd5c8dbb07eedd1cfcc12e1c7d686752a4882342)", - "P->V[69704:69736]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 1: Field Element(0x4f2497629d97b30a2a7f836f384e10201ca43f0eb964bfe838fcffbf2ae25c6)", - "P->V[69736:69768]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 2: Field Element(0x445300fa7ca0b1de0cd7bd2d0ddad0d840e46f73cfa0c5d6864d675cd8f1375)", - "P->V[69768:69800]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 3: Field Element(0x4f70d7f0f08bcd674280338065c22f398682482a5882fb9119b74c5561fec17)", - "P->V[69800:69832]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 4: Field Element(0xe82c6e8c3cdef51859ef5cf4e66cac2ae8b921b1ea835d5bc0fddba3a26f4f)", - "P->V[69832:69864]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 5: Field Element(0x337b793e8b82971e015607c284486d3955bce73be40e8fb32419bc077ddf703)", - "P->V[69864:69896]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 6: Field Element(0x3e763e7ba92e8e9733255a4070c2ff468c5d2618c3a6ca7445144314be51113)", - "P->V[69896:69928]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 7: Field Element(0xcf1d9a6517338509d3a4ec85253e0f8fc7af39803d16ec6323caa3465fc3f8)", - "P->V[69928:69960]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 8: Field Element(0x54431d0b7dda1c3dfad1b74f23a3d86348995f4c82614391c7ce6701b57bd77)", - "P->V[69960:69992]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 10: Field Element(0x7dc5db2314c29dca5ace745f12a4b57ec0e4daf91169944f3d1b44cdf7718fd)", - "P->V[69992:70024]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 11: Field Element(0x1119303fecc9ec456c6fd1f6b650cc9ea5521efc810cf821de6c27a0e00cc98)", - "P->V[70024:70056]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 12: Field Element(0x1d4a8ad2944798335d39332daa9449dc25adff3ff13d4bd988a6d34d73f16ab)", - "P->V[70056:70088]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 13: Field Element(0x6f54039ca01baeead8e9a1f278e41c1ec81b43c0d1e15ad96cb818eaf9a1fb2)", - "P->V[70088:70120]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 14: Field Element(0x463b3521cbc61fa64778c770e27cf31e3c9010833253045d3a297e1d28237b9)", - "P->V[70120:70152]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 15: Field Element(0x54eb398e670501a634b966cc1909cd9831e0cc66389339c3da05bfda7c6a281)", - "P->V[70152:70184]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 0: Field Element(0x48df3b7a77fa5690682aadd3f93b14b41ec955c744ac2a1d1cb8315501777bb)", - "P->V[70184:70216]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 1: Field Element(0x2777b0636a25800507449737e2c62ac534805730a83fc43d4fcb38ffd4a4a4c)", - "P->V[70216:70248]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 2: Field Element(0x79ed699da6cdb9e614ce453404913e346c7dc385e0914e1a58f099ef1523701)", - "P->V[70248:70280]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 3: Field Element(0x46b0cf4e5fcaae5c8a83c3b4df4b7134170aa71202ce6fd2d13159ec57f8c34)", - "P->V[70280:70312]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 4: Field Element(0x35bab5e88bed9ff3d44efaeedc9fdfaa2cb4e64a7ea339cf313b8f3578a3e28)", - "P->V[70312:70344]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 5: Field Element(0x3f02c1e8f3af71c1f6ca84eceb1dc38907ec0469a76c1460e547b44b950ed6e)", - "P->V[70344:70376]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 6: Field Element(0xd5c242ee383480db059da2e5048607b9bd0c62c58d74f71d1b3d5dfb7f6182)", - "P->V[70376:70408]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 7: Field Element(0x7695100673368ec59a2a205460cba40a6380fb46040201fe014e5b898cd164f)", - "P->V[70408:70440]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 8: Field Element(0x5f2773a6167908a76449bfaf5f5e4b9208d4cfce8c46c6ef169a8d572b02b4d)", - "P->V[70440:70472]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 9: Field Element(0x118ca089b8dd7824464620e2f9a877d209f5a8858ce4aed9d2e325f4204848e)", - "P->V[70472:70504]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 11: Field Element(0x785d79a9e86dea411372c32d658e191b9e6d0538c2bc1f53dbe83fb306859a)", - "P->V[70504:70536]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 12: Field Element(0x5c7fcea86adf8409afde8d509497e3654e8f2721afa5c63b3306e3039751fb)", - "P->V[70536:70568]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 13: Field Element(0x52f9afbdcc9cb4f3c480620a7c8b49b7afedde0be3047e44cb47a00aabd0e0a)", - "P->V[70568:70600]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 14: Field Element(0x64c659a91146a92f0a585255962e6616a9187f9f901e41bf98321e1dfe1671c)", - "P->V[70600:70632]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 15: Field Element(0x2ed370201d090541d2d97839bce38410e46ffd5099cfc0b4eff4ea6e4a97076)", - "P->V[70632:70664]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 0: Field Element(0x1e8941f494ec4a6b1b0393bd96200e44e653b963ab1603ce8b8ab3dd49b53c4)", - "P->V[70664:70696]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 1: Field Element(0x37cc3e4af3aeb2a85ea37baf5426ac2620b8de4108cf59041b3b37c03cd1e19)", - "P->V[70696:70728]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 2: Field Element(0x335329e0143b07b2659ab62e6ef5d5c565c64a147e7a534d2887e276d989c80)", - "P->V[70728:70760]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 3: Field Element(0x5c7ad27df7794e09eba0e7b55cb361bfdb8b90572a32c1e267a1afc39a2cd81)", - "P->V[70760:70792]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 4: Field Element(0x5ff15ac7fc3171ca7899398ec1c2ee1a2b0f121cd6e5d20b4593bcb88107fae)", - "P->V[70792:70824]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 6: Field Element(0x1a03044e1ed26b6486c4cbaf439f8da7f43471d375345a6a3765b8b8c5efba1)", - "P->V[70824:70856]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 7: Field Element(0x26dc285cd03efa3d8cbdac52079537e12e07250c9e7f011aadc16ab47240a4c)", - "P->V[70856:70888]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 8: Field Element(0x39287bd4c09e529cedb86d83f46b1b136b1664a3e4df0b1b67a0e9e4656a633)", - "P->V[70888:70920]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 9: Field Element(0x5ff1ea51f5475620a378ce8c2ecea45dbd39959bc2c40ffe71517dba7a6da32)", - "P->V[70920:70952]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 10: Field Element(0x2e8dfe2cef996bd7958644549648c6d6ed91e171901c8534d4c5a3ef433d2f9)", - "P->V[70952:70984]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 11: Field Element(0x2923332ea179c033f3f67b4362d0f3cbf24a64a594db6915d92103fd4079cf0)", - "P->V[70984:71016]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 12: Field Element(0x428143189a85e8ee066ac016581d813edd72468c66eee4cc6ad1b1195107c63)", - "P->V[71016:71048]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 13: Field Element(0x5077fc960639073a1273e108390b471d25227ffe236a993305090c3fc5aa19e)", - "P->V[71048:71080]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 14: Field Element(0x6adf10e4f1f5921fe72700da959407b2afba0af81f4505362c68b53c0b72e1b)", - "P->V[71080:71112]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 15: Field Element(0x65583898169694658b42364454b24455a8229a59497dc08ffdd4020c3f6d6c6)", - "P->V[71112:71144]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 0: Field Element(0x56e940d29e33e90b542962c6ac579e9db4c7a0c4f00a436e56d1d9cac767a01)", - "P->V[71144:71176]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 1: Field Element(0x48974d5f7d96d25631bf5baa08b03fbaba34e682b7e0836d35b6317ad9c16e6)", - "P->V[71176:71208]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 2: Field Element(0x59657bfdaf71389c29b1644e8424f3fa79718e594b2023ed033b66028edc035)", - "P->V[71208:71240]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 3: Field Element(0x71b9d7eb9a62266267af7e275a08a5f2998d14975e92b64148272e7e4681775)", - "P->V[71240:71272]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 4: Field Element(0x218f2b81bf389e513bcb2aefb76d03437dda07b12355a27c6303f0d01b1764e)", - "P->V[71272:71304]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 5: Field Element(0x2c2373d1af92f178e23b3be254c836b367a5d7b3299a1913ed3b65e53746651)", - "P->V[71304:71336]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 6: Field Element(0x16c03101bbbdb695542cc96f1d3537bc353de0c78675954888c18888f87e50e)", - "P->V[71336:71368]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 7: Field Element(0x302371aafe55c087d151a8482e72f8c9561aa470935b8294968f9e8da54c519)", - "P->V[71368:71400]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 8: Field Element(0x765f689077b732b95d7653da7bf655d604be9e359fc105eebb7f5861fe5237d)", - "P->V[71400:71432]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 9: Field Element(0xb66191471130e35a1f7c34d353debc6c49f1afe1d6019126a4cdd2cb3c5fa2)", - "P->V[71432:71464]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 10: Field Element(0x41b0d35382e052dcbf0f7e61de3f3c527249095bad0b1034d54d390bd3a2092)", - "P->V[71464:71496]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 11: Field Element(0xf77a619c6a904b5f3907b96fa9fb146a7ba2040be602a3e014a7918b35a9c2)", - "P->V[71496:71528]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 12: Field Element(0x6ac3ce98eeed7d6c172dea4ac740929606842d3d55050e8ab86433589cbfa53)", - "P->V[71528:71560]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 14: Field Element(0x24cab1d6162de87e3506b90c105078c6350b9fcc90d3301f3860b1d3ad5805c)", - "P->V[71560:71592]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 15: Field Element(0x58a032f0653ce47ceb0cd0f8d7300cd58e2e7928de63a9d5c29579a81509a63)", - "P->V[71592:71624]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 0: Field Element(0x6c17bdb36ab607995a2b7fd1c1cd1b9ac5eadf77c52cef94f4a83bf33ae2794)", - "P->V[71624:71656]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 1: Field Element(0x670a27f84c62d345bdbb6dfe58759fb9089f90d8d847ff02c32f7fe8844a238)", - "P->V[71656:71688]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 2: Field Element(0x758443c46746ef6787bb022329129ea7474eab8b7de33c02887db9d4e67febd)", - "P->V[71688:71720]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 3: Field Element(0x67c80eca3b53bee8648650e5bf9f2869cf2a47db768b8f88181006100b40ffc)", - "P->V[71720:71752]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 4: Field Element(0x2b6944bf2f30059276a4d788f5a3ee8ee000ee56cf79f518f41fbe6fc0adf35)", - "P->V[71752:71784]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 6: Field Element(0x22857d26483ed466bbfc32239637e741b476990711f0d508f1ba074a40039cb)", - "P->V[71784:71816]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 7: Field Element(0x656420233450c2eef41845d0f115d7293268b10e779c2947794401d7b78306)", - "P->V[71816:71848]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 8: Field Element(0x6e285bd2f3faff2d665588881aa3019155a3118931aaae399469ff2f49393a7)", - "P->V[71848:71880]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 9: Field Element(0x17320173016025279a5140e3ebea3aa80e1838fe775db687485c18823c01710)", - "P->V[71880:71912]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 10: Field Element(0x15f5f79e135d17304ca793d9ead8b1dfcb831c18d24907e774b2b6587607a64)", - "P->V[71912:71944]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 11: Field Element(0x654ad19561a3d14f18d4946a0bb18d2e0e6c93997cfc13c0211cfe3c6653a9f)", - "P->V[71944:71976]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 12: Field Element(0x4cac6b6b8e09430b29627f14e2e666d8cd2e5ce581421cffe07638b4841525f)", - "P->V[71976:72008]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 13: Field Element(0x5165f96fc37669bb52a105b5459bb5e9951f28cdb503ae75515a7f642da3d13)", - "P->V[72008:72040]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 14: Field Element(0x392698b31c004863133bc3a6417d981134aa78c3743d1dbd54dedb80529307c)", - "P->V[72040:72072]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 15: Field Element(0x241b6fd2688ec0d21155a0fbea4840f0f4708ccb98da242f451fb7c2381a02b)", - "P->V[72072:72104]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 0: Field Element(0x60b50910d0e85013c79e5a71f392bee4d8e09635398b5d3b7506ff6f8da875b)", - "P->V[72104:72136]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 1: Field Element(0x113ee8dd73913a61249359bdf3cc76b46cd0d625f9cb7f34f4dfb46ad00241d)", - "P->V[72136:72168]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 2: Field Element(0xb005528abd85c1ffe7fd20086051df28653d4716d02aba05bafa69367ca5fa)", - "P->V[72168:72200]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 3: Field Element(0x36ca8400187d9ccf96e6a33bf31a79302369f512652f725146104f5fd8530c6)", - "P->V[72200:72232]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 5: Field Element(0x966be803a6a9d3d89187084823e29f73f5f8fd3a19bf0bba57d080476cc11a)", - "P->V[72232:72264]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 6: Field Element(0x5ab913f7b2ebd1ff945ad28704446a5929728acc3a15c0aa79d318863aeb007)", - "P->V[72264:72296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 7: Field Element(0x3a8d4177cc8fff5e10e1dc798529dcbbc6c57cca795c9b7d2946a69251caba7)", - "P->V[72296:72328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 8: Field Element(0x1f7ec7ab862dc9c37c78679fe928b00e889cb32dd9f8fc34b9a205940b8352)", - "P->V[72328:72360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 9: Field Element(0xdd454ab5ac0f76fd14eb3d20927c360c4202fd995ad50bc55b43570d5e16d4)", - "P->V[72360:72392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 10: Field Element(0x607f39761cddd154f5dd44445ae5897dece0e1ef6354bfc4517bc682d8f69bd)", - "P->V[72392:72424]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 11: Field Element(0x5d5e4555c5a81173c66bfe3b74421fab2b8e960bad77eb9a580c29521ec7b9d)", - "P->V[72424:72456]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 12: Field Element(0x10227d2de2aaa4f041937a913f6331fb7f06b560edbd9bc151a56c6c6396970)", - "P->V[72456:72488]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 13: Field Element(0x44a89b823e063569d7d3b502915910126d04024071279b7ab2d3e2a6ed739ba)", - "P->V[72488:72520]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 14: Field Element(0x79e8dbcce046769099aa1a138efbc7e3fe603abc8f0642edb6978d1e118318)", - "P->V[72520:72552]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 15: Field Element(0x7043407ed26829a9e83ba537abe9ddb1de436cbe58365caa436867a909a1a6)", - "P->V[72552:72584]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 0: Field Element(0x74124d6e36f21b7e91569803946c8658b414cb0a2d64e28bd8afa6c960c7c56)", - "P->V[72584:72616]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 1: Field Element(0x34084d7274daeff218a12fd4593b3ae0f5cdc3631b89aa8f42476875f8e6649)", - "P->V[72616:72648]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 2: Field Element(0x6219875a4a7432b9feb762b018a44cfca9807fd264d6b09fc5befb3fae7ef80)", - "P->V[72648:72680]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 3: Field Element(0xfc42f7804afe7e67a39b4f414245498835c96fdeb7f9c68e67eb6e21f75762)", - "P->V[72680:72712]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 4: Field Element(0x342a9aef8b3f31b880d29762510a4438381238f4e28a7316ecf3f2334a63bbe)", - "P->V[72712:72744]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 5: Field Element(0x38a9585f08b461a32239f615960516330d6e967e4e26794728ff5a6d5e37278)", - "P->V[72744:72776]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 6: Field Element(0x238be9ee1d1b0d1ca2d9186e3974e083e04d7ca7d26f7ae37107c16ff37279a)", - "P->V[72776:72808]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 7: Field Element(0x7a347f1e92d853653b42adab32d95f45aaeb0cf96f3381decd15add0f46e59c)", - "P->V[72808:72840]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 8: Field Element(0x21d8bec5c1b07beab812647f4db118f40f69163b8dbfd30110e344159710026)", - "P->V[72840:72872]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 9: Field Element(0x6d3faeceb54cab090db7ef2d8060d1583444fd6320dea331040fa0fd9d2ceea)", - "P->V[72872:72904]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 11: Field Element(0x5984eff0fc31cbf39deb761429529f8defb9e3a026f5d205d5b71a07b00fc6c)", - "P->V[72904:72936]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 12: Field Element(0x3740208635c0e071acd854b172750a65b243f17924e6564c54f9c55ee91e254)", - "P->V[72936:72968]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 13: Field Element(0x4c59dae602442b9dcf1c73d80519a5597d365b052bcc1bd72dc4d584c27eb6c)", - "P->V[72968:73000]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 14: Field Element(0x4adf1c11bff95ff3ad3348d7137b27824c04401fa628603707ae5272ff3eff5)", - "P->V[73000:73032]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 15: Field Element(0xc3639bdd9d1a791ce566987ef5911c0aa14520822388d1a64150ef72dbde72)", - "P->V[73032:73064]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 0: Field Element(0x7d5ff85597baca96ec63b3bbd58553d0a1d15578cbdaa8fcbc30731e9e25ef5)", - "P->V[73064:73096]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 1: Field Element(0x1eb68ae07c2219319a8c719d3ebeb6423f9b0759d5baf2f96f732eba8879e6d)", - "P->V[73096:73128]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 2: Field Element(0x4b5d33ece4bb1887c2a73dd2af9e12cc4ce99dd9fbfc31303c0184b8b417377)", - "P->V[73128:73160]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 3: Field Element(0x3b2de7ffb239ba763a23a072b1674a566b81ba042c4f502bc2455fcbc925e5e)", - "P->V[73160:73192]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 4: Field Element(0x783f64736258ad196c060d619c420668d4924169cdb08089385d77b95a1e6bb)", - "P->V[73192:73224]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 5: Field Element(0x8c2f0f5b9f585aff475990728731e2de119ac3933760a9d79cb93e6c596a72)", - "P->V[73224:73256]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 6: Field Element(0x29d674c44d19b259ac60fdbece92066a3540b9ca2665414bb86e5a2c6511fdb)", - "P->V[73256:73288]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 7: Field Element(0x7d720759b177dd5c0dcfc0dc00876d939152c924ded5c21e2f25263b891c218)", - "P->V[73288:73320]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 8: Field Element(0x2540d82736531c2bc8c6df74888b6fa1151bf3b4a32637576332bc8e5ead86b)", - "P->V[73320:73352]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 9: Field Element(0x456cfb08d662d5e9aabf02051dc48a3685c4a355eb2acae55729ae21ed7d426)", - "P->V[73352:73384]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 10: Field Element(0x56a2b79bb89ba83a27a477d2eb63b132c1565b2e2d641f2d59250f3e1a82269)", - "P->V[73384:73416]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 11: Field Element(0x2b22e8ebe2fa1cfa2032d3577c1324d0b5160369eaf35b98e065a53363b411f)", - "P->V[73416:73448]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 12: Field Element(0x22472430dc0c6ec040b0336df6e6e8405b33077c838ff8cc84420c48f32fbee)", - "P->V[73448:73480]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 13: Field Element(0x694569224c61c1155d56658b98bce00442477f9a2ab5eb4e662d1651302c0b6)", - "P->V[73480:73512]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 14: Field Element(0x6c9509f456a9a40b166b6084f051aa13967c64ab23227975be818e8535ef688)", - "P->V[73512:73544]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 0: Field Element(0x497f62768820da8520464757c9e92f46d78081064a68db2e02d82bb0bebf897)", - "P->V[73544:73576]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 1: Field Element(0x542ac10b217fd24682beead7832469436ccabe6e66cbe84ed52ef1bdb483edc)", - "P->V[73576:73608]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 3: Field Element(0x3e0b3f03e870d0b715a24130b3d2f53fd1e40d7613ac1d954c0035fbd52dc09)", - "P->V[73608:73640]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 4: Field Element(0x6e60543b9dcbe5229ad8efce6492b7c0847e02f7bf5063d691ddf3e6080f56b)", - "P->V[73640:73672]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 5: Field Element(0x5bbc2872df2951a9c9599ed21e3fa97586b7f4b51e0143198e80f7d3ab4400f)", - "P->V[73672:73704]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 6: Field Element(0x3fc8a18f8af43abe304cab5ca6a00d13e9085807285e7874d02fb77fa01ab29)", - "P->V[73704:73736]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 7: Field Element(0x2120a331e1e0b83b4f261cf41c21b699f4074dede1d9e916ed160ebfa08eeb)", - "P->V[73736:73768]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 8: Field Element(0x5a68e8d105c4e673dbb0dfb3d5c31b337bd9dd5c2567656be666580ae4bf562)", - "P->V[73768:73800]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 9: Field Element(0x58e9235511ae1e303348d5c54a28a7a73e78810d68ea0d6c41e43d531f84e15)", - "P->V[73800:73832]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 10: Field Element(0x1542a17d124bcdc5f8f646db02a5e9db9547bebc31b68d0a78668f151f63db8)", - "P->V[73832:73864]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 11: Field Element(0x5b47f6abb528ff5e1d3a1d65fddeec49d9d7276b4f32dbb6f396952a128a820)", - "P->V[73864:73896]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 12: Field Element(0x7fb3c0cbc814fdb827a56d714bb168613130d2ece826947bf3139da91b1af01)", - "P->V[73896:73928]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 13: Field Element(0x355e87c4241a4b9b5c7ecd389f5a28a0cafbc5fe6fcd8fd5ac6f552ef85b4ae)", - "P->V[73928:73960]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 14: Field Element(0xf65e397082e4a11895fb00ac04ede29100f09922ddfb2f872e95026ce19eb8)", - "P->V[73960:73992]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 15: Field Element(0x51a1ae523f4bb0d330d84ef0c66ddb24bdb144a885e5c3c3c3d1404b999b95)", - "P->V[73992:74024]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 0: Field Element(0x2d30a5df99d63b8090a08d2c94cbef54c2147b7eef6a27440df61eca1b4a574)", - "P->V[74024:74056]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 1: Field Element(0x1b0dfd34b59d8409486d3a4aee0fcac464e859422bad79cea699111d6e22acf)", - "P->V[74056:74088]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 2: Field Element(0x25c602f09a5c464108a12fd962c142ffd0745af8033e3c836fbb054d9d22b34)", - "P->V[74088:74120]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 3: Field Element(0x5ece31e3b950c5c649ad38a4fb509a9266ec134c874feb29663061709f080ae)", - "P->V[74120:74152]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 4: Field Element(0x271b129824fe5bd2d009c413cb2e159206ef35cdba0d0abb982ba8e9c07abb2)", - "P->V[74152:74184]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 5: Field Element(0x4eb199ab596832cbfc580cc134074aeed59ca6da07a3449f58880179e136f77)", - "P->V[74184:74216]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 6: Field Element(0x21d0785e6099b94998375aefb58881f13fc22ea35198dd367c0cef64a653c24)", - "P->V[74216:74248]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 7: Field Element(0x52e4727404921931fd01c926a98b5de065f136ab5b3e552024adf87a3d67a6b)", - "P->V[74248:74280]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 8: Field Element(0x4171c0dbcabd3ade8fde61fef55e623c5718f6ef9538baf8f792d0ea574629e)", - "P->V[74280:74312]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 9: Field Element(0x69279a89d9f72e37a1cedc9922eb3d1d4497ae58658df3170230e6f1342d092)", - "P->V[74312:74344]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 10: Field Element(0x4cce8fc8c6ab4bceaa085bf85a2875eba0a17c4a53b04b2972c0683e6adfb89)", - "P->V[74344:74376]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 11: Field Element(0x481146e914c5fc7461b21e8d7e50d985f118ceb1d4f312b548db80b24717391)", - "P->V[74376:74408]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 12: Field Element(0x1a3a1463cda61d70482b174953ae984c194845590861dacc7a03601d9ed232b)", - "P->V[74408:74440]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 13: Field Element(0x78323137560f9a776a21563b86d7f02d40c1bb8780111c9ebfc9f9d3b3ea07b)", - "P->V[74440:74472]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 14: Field Element(0x53f4033e1fdc414e2e22672d6d1aea148944d6d7b22904a28645012992b49fe)", - "P->V[74472:74504]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 0: Field Element(0x669c356bccee411c4b3c974d63986c45e2f272491852279fa9d183e64b2c523)", - "P->V[74504:74536]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 1: Field Element(0x5f9b13c244857ab78e5c77b6aa4980b01e04da65baf70e7f8803e91a1778e2f)", - "P->V[74536:74568]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 2: Field Element(0x676c7791abce38418fd1004c6b419bb56c2bb2dc9c1a15c635caae8cad01cec)", - "P->V[74568:74600]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 3: Field Element(0x63596427fa771e4d9bf98f49b85771ef2672fcb59492a15b5bd3b9c1b38c587)", - "P->V[74600:74632]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 4: Field Element(0x34af9b7c5e1faf8bac8cb8fefe8baca90f7588e35e7fa60c661464d6a78faf2)", - "P->V[74632:74664]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 5: Field Element(0xb29eb0c91bf9fdcaf3c51c7ae06281387156c8dc03843a74c31b911c3efc87)", - "P->V[74664:74696]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 6: Field Element(0x53c5c11f7f20b4c8ace411a7debb55214158541988520939396befbcdacd926)", - "P->V[74696:74728]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 8: Field Element(0x19841d0855fa9413defcf49fc3bd577d81ceb26f386b600eb8f945be2105138)", - "P->V[74728:74760]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 9: Field Element(0x6cf132812314288e6a2e13d6d3c1008916a9fec08a59cdc2e299e8df19e85ab)", - "P->V[74760:74792]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 10: Field Element(0x804df53c4868f1f690b839259370cd5ca91a4ec34862e0b61a8dcb88f217e7)", - "P->V[74792:74824]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 11: Field Element(0x67e0d65404417457fca5689abb869042230123c83625393ac91b564b3361227)", - "P->V[74824:74856]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 12: Field Element(0x3f5b60d3813c39f50fa7ec903d9b40065ee99637ef1df568758331e2453669b)", - "P->V[74856:74888]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 13: Field Element(0x17b09c248f05221b2f1d68d830dba93b30a2eaefc8db4b892bf9e8260ff7cf9)", - "P->V[74888:74920]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 14: Field Element(0x23d609e157ef49acf48b3aafd272f5e236badd8e966c995e1847febc3349f8b)", - "P->V[74920:74952]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 15: Field Element(0x7bf445fa7d660584858f1b81021947b0eaa554d67c5e8d82e6cab37e28adf11)", - "P->V[74952:74984]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 0: Field Element(0x1e9195421088f1bf6f73c0e06c30d8d063d240268622591cdb08d6adf95dbaa)", - "P->V[74984:75016]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 1: Field Element(0x5a11578755e7d4178ccb36caab23f35e68febd644a427b422837b21faea734d)", - "P->V[75016:75048]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 2: Field Element(0x1726e8ca09bf78068640cdcfbd90f7231c062c82c85f90b0686d853dfad384)", - "P->V[75048:75080]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 3: Field Element(0x7af6a0c158c6b53f7f08e31c5c182aadaedfdd05e1611f6fd1ae13a44b93333)", - "P->V[75080:75112]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 4: Field Element(0x764bb11b11ae446fd2d09b31b1752be9321d262a3a158a5107756f689fa8611)", - "P->V[75112:75144]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 5: Field Element(0xeee0d34d3e65e18fdf9a3d4b677fafeda45056c62b1ccaf91d18d42eeb4778)", - "P->V[75144:75176]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 6: Field Element(0x54536b62f108bcc4b70487c88d35cc321d0293f1e4daf65ad31661e32d79b5a)", - "P->V[75176:75208]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 7: Field Element(0x6591efaa8cc2fde6b9491bd4a71233f72808b31b83db316184f0aa8a4eaa5ca)", - "P->V[75208:75240]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 8: Field Element(0x621bd7058abaad407d5e35ef89139f553e923d3462725d1578010083f44365f)", - "P->V[75240:75272]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 9: Field Element(0x43b4e823afb8bff38626e48d61356985beea704a0c3db6aaa936ef43879f426)", - "P->V[75272:75304]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 11: Field Element(0x704beb51c7563d12ebdef84044301a8bc057e0e1fc51ce5c5f9666aaee9c97e)", - "P->V[75304:75336]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 12: Field Element(0x5ee6aff11c54f85eb3cd2065a5b4d6271245200b8d69c6d422f2f0aa1ffa18d)", - "P->V[75336:75368]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 13: Field Element(0x215e65fcfbb57454592798d80c3ce39a0d05f983e2c6deef5eca0c1070f7de1)", - "P->V[75368:75400]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 14: Field Element(0x1b583110aaeae954be16c8fe995d1fde027de39823fe40a86eae4828b9d6c8)", - "P->V[75400:75432]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 15: Field Element(0x3f8cc4d5f1f454520073bee12fcdd00f729809420997b9961d80e0748a35781)", - "P->V[75432:75464]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 0: Field Element(0x15ad8480b9f2bad2ccad6c31002b168be8ec5aa0599fb2a675bce154a6f0e63)", - "P->V[75464:75496]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 1: Field Element(0x593dbcc8d1f897e0007f4d576107f74e61bdb4dd0dda7be9126db3742de4557)", - "P->V[75496:75528]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 2: Field Element(0x64285162e0029031b0085da7c536e557b1ef00a3e9d299c6d6f52089b3ab15e)", - "P->V[75528:75560]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 3: Field Element(0x339b6219a3156d3281a1f40d9a8c2ae5d8903d8f0fd508baf4415815fe99019)", - "P->V[75560:75592]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 4: Field Element(0x52dbe347abd59407a98818f7dfeb05e8790c9d0380f97e1ba6d7fe8c1d05e10)", - "P->V[75592:75624]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 5: Field Element(0x1a3a983816ec0bd898ceabf39fd88f6de21affe37a6c02553f4e247b8fce690)", - "P->V[75624:75656]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 6: Field Element(0x5deca9c2d550f4b40fc282608549a190df463478c39c7affd2f152c4292f86c)", - "P->V[75656:75688]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 7: Field Element(0x764dce0b840fda45307f41a4f84ecd500794cebfb9b5d9232ab945c19311077)", - "P->V[75688:75720]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 8: Field Element(0xbbe1b384309ca22fa541aad761d41f77a5d3c7e06f39e927b65e172f2b3705)", - "P->V[75720:75752]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 9: Field Element(0x6006b1fec26f09f8dd6b7059b11f26f4bb6d700a02dff9a0274778f39c8092)", - "P->V[75752:75784]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 10: Field Element(0x45acad4b1e159345b35e85bc5ba08c1619f1343213482c1c4238dc63175db4c)", - "P->V[75784:75816]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 11: Field Element(0x5cc487aa271571e67a1f59188c53ea494c84532ae8c3d621926b46cd42a41b6)", - "P->V[75816:75848]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 12: Field Element(0x3c7c82ffef278febe9b81ce279b725c2ce0778a5bb362d40dc7ab20c6762eed)", - "P->V[75848:75880]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 13: Field Element(0x2e086939badb28dfdc795b0105454e9cbe9ded7e5b989caffdcf4741b200bb7)", - "P->V[75880:75912]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 14: Field Element(0x7c9351fccc3527f904e1641a695f1bc5a5f8e20a8da1d37bdafe97d36fc7a1d)", - "P->V[75912:75944]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 0: Field Element(0x42b8b441c0fb24597a200703ef4bbbc36d9fdb15494e359e137d8148ddac459)", - "P->V[75944:75976]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 1: Field Element(0x1e2e913b4decaa94805fbecb0e2db4efbc2e493cef150a6f65f639046f7c61)", - "P->V[75976:76008]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 2: Field Element(0x3449d8a360ea09232762f17857801f243b8649af16c808d7cde25019e34f13)", - "P->V[76008:76040]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 3: Field Element(0x5c62f325fbf562457fd9694343eb503a5c9910c329a4eebe9385940c8309053)", - "P->V[76040:76072]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 5: Field Element(0x22bcbf8cbb7588c50fd3521370919d6cec2195e9e911528919ea2ddf8e906c6)", - "P->V[76072:76104]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 6: Field Element(0x6cb23196d9a91cd78b662934bcc69a9ba54375841a8a5a308d984cc7346bbe7)", - "P->V[76104:76136]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 7: Field Element(0x28874d64244fcefb9b5a431bd5750183ee35e49c84efd3879fcb7bd506bd473)", - "P->V[76136:76168]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 8: Field Element(0x314800989d53bec05abe706cfea7752c0a20a9deac934bdf136fb61336fc0c0)", - "P->V[76168:76200]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 9: Field Element(0x399748dd9e4beba5296c1e25ec29b03896e2efbf8cbc27651dbfd883bcd1db2)", - "P->V[76200:76232]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 10: Field Element(0x279800218628d02ef3c8dc0ef2a8a5e20d7dd3f3d8fcd757554ba85a3cf27af)", - "P->V[76232:76264]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 11: Field Element(0x3fceb37a47c31f20822b68cd38fec4bb102e4d467a53f9719c18049373759ec)", - "P->V[76264:76296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 12: Field Element(0x40897b20bdbca095f5f562047af4617f30eb524e1de19a65ac22c7f6a91d1ae)", - "P->V[76296:76328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 13: Field Element(0x79408d653db88c0524c48ee138c89629a0f07cf190645f98348591c6b1c69be)", - "P->V[76328:76360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 14: Field Element(0x49c442fb9bdd70d7eda10d0cd802ad3fe09fe611ca303ef872b615eff0f0b0)", - "P->V[76360:76392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 15: Field Element(0x7fce6a9a361523a1196b07fc3358e3f00ffb7e6fcaac85b73035d845ea2eae0)", - "P->V[76392:76424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1118889: Hash(0x00000000000000000000000044e1691fa7aff7b5b1744dc4a2a10373aa3899d1)", - "P->V[76424:76456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1197201: Hash(0x00000000000000000000000092b6180cf0c602f1a18564a6de11f7ded0234965)", - "P->V[76456:76488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1211255: Hash(0x000000000000000000000000f6194e420d23ec9dcd72166f22069908cb35c145)", - "P->V[76488:76520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1220844: Hash(0x000000000000000000000000f54cf004fd19738924e2143e35a43ec77ce5ef80)", - "P->V[76520:76552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1348992: Hash(0x0000000000000000000000005948c90d217e555ce74174faa71d09efcb80f96c)", - "P->V[76552:76584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1361934: Hash(0x0000000000000000000000009e96edd830669e2342009db9d33a488af8b13b53)", - "P->V[76584:76616]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1394142: Hash(0x0000000000000000000000008076f772a7585ddb41c5af9d0d68e13810915a12)", - "P->V[76616:76648]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1521171: Hash(0x000000000000000000000000a6e66e0f97303daa421ff36b596dc85eeaf18be7)", - "P->V[76648:76680]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1521671: Hash(0x000000000000000000000000a4d53074453d28eaf1e6363c77446dc62331ff5e)", - "P->V[76680:76712]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1550820: Hash(0x000000000000000000000000e97b6adfbce956813da756978b195f7a82bb8a7a)", - "P->V[76712:76744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1606344: Hash(0x000000000000000000000000d3473ca900e8f70b99ef30fbb69ac326dc6d4442)", - "P->V[76744:76776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1741856: Hash(0x000000000000000000000000c8664f2232e60e8d10796bc2b76538e2b49ba041)", - "P->V[76776:76808]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1763602: Hash(0x0000000000000000000000007c211cb7f5667c4bd8b567386ca5bf63cf0a3484)", - "P->V[76808:76840]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1784931: Hash(0x000000000000000000000000ad6f41cf3f6404e723f20e63feb289ac8510d0bb)", - "P->V[76840:76872]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1948123: Hash(0x000000000000000000000000dd62699f7706fd93f4ad21a00dec57636e4c9fb7)", - "P->V[76872:76904]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1998397: Hash(0x000000000000000000000000626a8510333e4b7543df9bb824d8e1641c5b6d0e)", - "P->V[76904:76936]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2010650: Hash(0x0000000000000000000000007938db4372a68b5a3891173f3dfcd9273e597a5b)", - "P->V[76936:76968]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 559445: Hash(0x0000000000000000000000005a2cc1f25e66a4f1a55325c2269afc442dd02d47)", - "P->V[76968:77000]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 598601: Hash(0x0000000000000000000000000c45f417d876346268390b757245671aa570fc8d)", - "P->V[77000:77032]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 605626: Hash(0x0000000000000000000000007d4e832c8f07426c8484bb1d10fbe95b1dd07200)", - "P->V[77032:77064]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 610423: Hash(0x0000000000000000000000005e65bc99d5649d1f8418b3c69db491ce55a8d35a)", - "P->V[77064:77096]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 674497: Hash(0x0000000000000000000000001b4c8290f8b1d3406d749941b3e2506d7e68efab)", - "P->V[77096:77128]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 680966: Hash(0x000000000000000000000000ee84885d731d661dee515d8b91dc4be060e39a98)", - "P->V[77128:77160]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 697070: Hash(0x000000000000000000000000eff0b61e1a290ad9ba602989ba99502106c44ec7)", - "P->V[77160:77192]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 760584: Hash(0x0000000000000000000000004dd8d866c965aadc305d4abc3e9bad7715c0d79c)", - "P->V[77192:77224]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 760834: Hash(0x00000000000000000000000038cab62e8a6b775088fd249cdf77361286d8949f)", - "P->V[77224:77256]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 775411: Hash(0x000000000000000000000000f169724d0dec2bd93f967984538cf910d184cf5f)", - "P->V[77256:77288]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 803173: Hash(0x00000000000000000000000031a79bb69d7ce2f4cf72fe98ea437794eccf5036)", - "P->V[77288:77320]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 870929: Hash(0x00000000000000000000000033d1e802f3e8b066b2606859ff2b4ce9e6cef21f)", - "P->V[77320:77352]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 881800: Hash(0x00000000000000000000000029acbf7f7bfa653e7814ad81dbddcc5253eb8cc0)", - "P->V[77352:77384]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 892464: Hash(0x00000000000000000000000089de6e15705be7ecf6a92febb998f8b63708960d)", - "P->V[77384:77416]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 974060: Hash(0x00000000000000000000000023594d43a009efcc3bea635c67ef971be4eb6bb1)", - "P->V[77416:77448]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 999199: Hash(0x0000000000000000000000007872ea26558e6b2d601da42bd7c190bc095fabb8)", - "P->V[77448:77480]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1005324: Hash(0x0000000000000000000000001942577a58ce6d3ff7f57bf3873af6bc374b3734)", - "P->V[77480:77512]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 279723: Hash(0x000000000000000000000000b28c5899c7f295e9fcbb5e9b836ac746e7aefd6b)", - "P->V[77512:77544]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 299301: Hash(0x0000000000000000000000004e39a6e1c42a2d66c4c8db6e362d7511ede2a515)", - "P->V[77544:77576]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 302812: Hash(0x000000000000000000000000bdc07370cc1ea0e138bf7b734a128e2e94c67518)", - "P->V[77576:77608]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 305210: Hash(0x000000000000000000000000d954da2411011670524e77c7c0d903a294fc9619)", - "P->V[77608:77640]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 337249: Hash(0x0000000000000000000000008788f81a9b9937804ed0f65c7900e45461a46aef)", - "P->V[77640:77672]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 340482: Hash(0x000000000000000000000000e16da7d812bbc0bb1b2640330d755a0f10a423d2)", - "P->V[77672:77704]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 348534: Hash(0x000000000000000000000000701e5ccde172fb2dc55e76f3b00171c0687ed097)", - "P->V[77704:77736]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 380293: Hash(0x00000000000000000000000038a5406bea830edfafeacd5e5337675d8b524ba8)", - "P->V[77736:77768]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 380416: Hash(0x000000000000000000000000769315599b17b92033feb080b989c6e220ca7666)", - "P->V[77768:77800]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 387704: Hash(0x000000000000000000000000c26bcbb46d8e5293e0ea7e0f4a8ee10e4744c736)", - "P->V[77800:77832]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 401587: Hash(0x0000000000000000000000007238230bffbf5f4584a85cd470c9600f7db41f88)", - "P->V[77832:77864]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 435465: Hash(0x00000000000000000000000052fa938fc66a53a1bb5582132abf0e45eba83705)", - "P->V[77864:77896]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 440901: Hash(0x000000000000000000000000ebbe83565ade367c37b278789a2da1efcd33ffb5)", - "P->V[77896:77928]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 446233: Hash(0x000000000000000000000000da02d009e35b7af3d449bd43c59ead3975d6aed4)", - "P->V[77928:77960]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 487031: Hash(0x00000000000000000000000060f5e969416161d0b0c8498974df9086c6cc0287)", - "P->V[77960:77992]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 499598: Hash(0x0000000000000000000000008082d214b09560ef846b0c4ad24d33ace365ab6e)", - "P->V[77992:78024]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 502663: Hash(0x000000000000000000000000b1e6aeac364a369106316ac9f57a23725c16b3fe)", - "P->V[78024:78056]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 139860: Hash(0x000000000000000000000000b8580835e32101c2d9558e0927acd61bc6619e11)", - "P->V[78056:78088]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 149651: Hash(0x0000000000000000000000003e24784d2a8ee7f9499c13cf5f62cb1c7892e1c2)", - "P->V[78088:78120]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 151407: Hash(0x00000000000000000000000037ae29fc11bbde89533516f0f27c46fcf3c83c36)", - "P->V[78120:78152]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 152604: Hash(0x0000000000000000000000001f2d09104f93f3c0715a644d69f4737f974b444d)", - "P->V[78152:78184]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 168625: Hash(0x000000000000000000000000a23727561b6653b14b508b7938917779a5fbf37b)", - "P->V[78184:78216]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 170240: Hash(0x0000000000000000000000004332af4ca238895573de85206eb1b07522d85e52)", - "P->V[78216:78248]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 174266: Hash(0x000000000000000000000000c0a820b9e164b1402d540aaa478b19013cb741c5)", - "P->V[78248:78280]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 190147: Hash(0x00000000000000000000000053053ff2ce0550098638cadb27c7c97858d0150c)", - "P->V[78280:78312]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 190209: Hash(0x000000000000000000000000de8728058085cad7e0838779cb79330116eb9226)", - "P->V[78312:78344]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 193853: Hash(0x0000000000000000000000002c04f1b86a28c7f4c87563a4ace404b8f86b7a01)", - "P->V[78344:78376]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 200792: Hash(0x000000000000000000000000cb43ad296d54e51b653e02d4585eb0a129f3c4e3)", - "P->V[78376:78408]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 217733: Hash(0x00000000000000000000000046a75efd73b46be1282fc8009ab848725ff855c6)", - "P->V[78408:78440]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 220451: Hash(0x000000000000000000000000cad82b745e34cfe8a6146e3d7ddb714a2d3deeb6)", - "P->V[78440:78472]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 223117: Hash(0x000000000000000000000000b41921542bce14f98cca52d295fa0004dc532f85)", - "P->V[78472:78504]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 243514: Hash(0x00000000000000000000000054461bfbeb0045ebc9e785ca0bbdb85a02c30634)", - "P->V[78504:78536]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 249798: Hash(0x000000000000000000000000a6f0a0d4296b6617507d2b51165182bde2d9d353)", - "P->V[78536:78568]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 251330: Hash(0x0000000000000000000000002ccf3eacd57e8a51452afec6017df6ffc8727d28)", - "P->V[78568:78600]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 69931: Hash(0x0000000000000000000000009e689371aa12d85ad9cdb769698c274f98f167ed)", - "P->V[78600:78632]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 74824: Hash(0x0000000000000000000000009a5b6d29b550b40bd0abd0e402ea06866165a046)", - "P->V[78632:78664]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 75702: Hash(0x000000000000000000000000a7ab30a4795f3aee3d3986389a73d8c0f1b6c697)", - "P->V[78664:78696]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 76303: Hash(0x0000000000000000000000000d74e2baea29540ca95183f3631037aefc465f74)", - "P->V[78696:78728]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 84313: Hash(0x0000000000000000000000009a3676a9d5efc9510b3a5a8d873397305cd2b8f5)", - "P->V[78728:78760]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 85121: Hash(0x000000000000000000000000c5bb356b07f25728e67ecc10bbfd894ec72676e0)", - "P->V[78760:78792]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 87132: Hash(0x000000000000000000000000b34ca6bf09b69a4fcaf34d0d830ac9ea626a5f37)", - "P->V[78792:78824]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 95072: Hash(0x0000000000000000000000003337d27fcde297840f9735d2be7d43cb9da61bb9)", - "P->V[78824:78856]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 95105: Hash(0x000000000000000000000000917cab752ed5626667fa740365962b2695d8beab)", - "P->V[78856:78888]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 96927: Hash(0x000000000000000000000000c06683385b7df00f26e0a9ff6b3b14a016194de2)", - "P->V[78888:78920]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 100397: Hash(0x000000000000000000000000cd0d53b051148794b15f5f0f7cba0d75d8f008c3)", - "P->V[78920:78952]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 108867: Hash(0x000000000000000000000000dc4cc5bb76e6ba114d82a132aee725ec28264eab)", - "P->V[78952:78984]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 110224: Hash(0x000000000000000000000000f6226eb517c4a1b1110a1e59dc7aec7b58ebbb46)", - "P->V[78984:79016]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 111559: Hash(0x0000000000000000000000005923c0b07668aaf8d1d3cc31d7dc8165d416e96f)", - "P->V[79016:79048]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 121756: Hash(0x000000000000000000000000c7364de4d910ba35180012579e44bd26aa19ccb1)", - "P->V[79048:79080]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 124898: Hash(0x000000000000000000000000c384fd2d96883ad9292040d8073b5d0580595f6e)", - "P->V[79080:79112]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 125664: Hash(0x000000000000000000000000fa81ce74852d5d40af92eec87c50c46acd7c7efd)", - "P->V[79112:79144]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 34964: Hash(0x00000000000000000000000016a2946276a85028d9b8b1604a456dc88c147c0c)", - "P->V[79144:79176]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 37413: Hash(0x000000000000000000000000019a1b0cb8681ea7bc282e18cf31169c74d72d1c)", - "P->V[79176:79208]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 37850: Hash(0x000000000000000000000000126751d6602034734134cd3015391a15df8d4919)", - "P->V[79208:79240]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 38150: Hash(0x00000000000000000000000054c915b07e6db1d97124621cdc994dba992d598f)", - "P->V[79240:79272]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 42157: Hash(0x00000000000000000000000016ed6a1664a38b397ad8535eb1dbedf3ad97dd54)", - "P->V[79272:79304]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 42561: Hash(0x000000000000000000000000431a64c15462ae8da47236fc71e04ec85f327617)", - "P->V[79304:79336]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 43567: Hash(0x000000000000000000000000cf2b0e97e81260f242c278a647b2c4e549fe2736)", - "P->V[79336:79368]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47537: Hash(0x000000000000000000000000a6e9260f1ef3a03ed8427067412c1cb7b673f4e5)", - "P->V[79368:79400]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47553: Hash(0x000000000000000000000000b882994144c7a1f3e0bfa1cbd6f6521eb5d08d51)", - "P->V[79400:79432]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 48462: Hash(0x00000000000000000000000068023a14c2f58c41e45c57f0a49aebe521c14b3f)", - "P->V[79432:79464]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 50199: Hash(0x000000000000000000000000e65931e7cba2970b09822cc67d9d3b37f0e0207e)", - "P->V[79464:79496]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 54432: Hash(0x0000000000000000000000003a598dfc75081ec63fefd33ccddbe9c88d16b791)", - "P->V[79496:79528]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 55113: Hash(0x0000000000000000000000008d70fb9196f0da4f74f7a54195ac3587f1065d0b)", - "P->V[79528:79560]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 55778: Hash(0x000000000000000000000000061775edfcae67f37d4ea2ae63e4073603debae5)", - "P->V[79560:79592]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 60879: Hash(0x000000000000000000000000e7b27ed39f95495a1fd6ae37f2ed97d05d3847c3)", - "P->V[79592:79624]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 62448: Hash(0x0000000000000000000000004b8cdd30112f3cd6e970fd1a6a1407b5d53d21ff)", - "P->V[79624:79656]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 62833: Hash(0x00000000000000000000000058f3b166d20bf8c2be0ae1c2ee24490781dec8f3)", - "P->V[79656:79688]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 17483: Hash(0x0000000000000000000000005fd08ef52c91f0053ef393bf2191a55389efb549)", - "P->V[79688:79720]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 18707: Hash(0x000000000000000000000000131767db59b0650b1b829b0377ad1775af5f906d)", - "P->V[79720:79752]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 18924: Hash(0x0000000000000000000000006ed6989e05c3d0b17d9723f3fa377a537fecfc08)", - "P->V[79752:79784]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 19074: Hash(0x000000000000000000000000bd46a3e5e923962a5df9b9f91da59b1b3705dd59)", - "P->V[79784:79816]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 21079: Hash(0x00000000000000000000000061b3bbfe548c56e3283d40754c5183c6a41e4e91)", - "P->V[79816:79848]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 21281: Hash(0x000000000000000000000000fc67364ff6a99a5c1f1b123725ce1d3a14bed28b)", - "P->V[79848:79880]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 21782: Hash(0x0000000000000000000000004556cebde573724e5e863593b342c637d0e893cb)", - "P->V[79880:79912]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 23769: Hash(0x0000000000000000000000002192700be38cb4037f4644523b4aec9043df999b)", - "P->V[79912:79944]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 23777: Hash(0x00000000000000000000000029e0c5b78c8f156a8e7075ee8e7d0bb3155565a0)", - "P->V[79944:79976]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 24230: Hash(0x0000000000000000000000008a344bc1eeba6059f9219af47518cee150005ee6)", - "P->V[79976:80008]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 25098: Hash(0x000000000000000000000000c9d4f73e05d421b2da2cb26d6443e8cf91ade7cd)", - "P->V[80008:80040]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 27217: Hash(0x0000000000000000000000004322f9b8af0fee9b60fd55b4e6c6ccbed01459a2)", - "P->V[80040:80072]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 27557: Hash(0x000000000000000000000000f1843ecf4069c457ca4cbf965d6c7c5646b81865)", - "P->V[80072:80104]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 27888: Hash(0x000000000000000000000000e93a76173e1f3b70d53322115af8ae4fdd017e23)", - "P->V[80104:80136]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 30438: Hash(0x000000000000000000000000180e82d3767e39e9ca0a0fde32b0bd801c469e3d)", - "P->V[80136:80168]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 31225: Hash(0x0000000000000000000000007fdf77c35bca6a586eeb5cd807df69b3fba2d28a)", - "P->V[80168:80200]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 31417: Hash(0x0000000000000000000000000d4d7ebe5b1bbb02d96f90d79b5f6f794b092e3d)", - "P->V[80200:80232]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 8740: Hash(0x000000000000000000000000d9aa2c0578cf48792d2547915978347541cb88ca)", - "P->V[80232:80264]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 9352: Hash(0x00000000000000000000000060ccdbc2b52cddb38a48bfd6b0613cf86b197a85)", - "P->V[80264:80296]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 9463: Hash(0x00000000000000000000000095ce5b002b53d8c54f8114c8b05ce328a7cd8b47)", - "P->V[80296:80328]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 9536: Hash(0x00000000000000000000000019614a542844cf4993a6b30e50037607b37e6beb)", - "P->V[80328:80360]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 10538: Hash(0x000000000000000000000000258be60b86980846dabd50c0338bc9910e6b2d01)", - "P->V[80360:80392]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 10641: Hash(0x000000000000000000000000cbfd5da5c42b790e1a8ed19f433131cbaf7213a6)", - "P->V[80392:80424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 10890: Hash(0x000000000000000000000000b62273d5e10af559b1c99e3467912caff417a00c)", - "P->V[80424:80456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11885: Hash(0x0000000000000000000000003b5b757a23d64e60bb550d286482c2355b8d9d4a)", - "P->V[80456:80488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11889: Hash(0x000000000000000000000000f9c1a3a9cc55f9454f8aa4d7016aff8278ac0573)", - "P->V[80488:80520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 12114: Hash(0x0000000000000000000000000183de751f2f8c9730b56d8d35beee09fe942ff5)", - "P->V[80520:80552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 12548: Hash(0x000000000000000000000000210adbf9b1d1a1a6bf9477ae65bd0fbb52862cee)", - "P->V[80552:80584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13609: Hash(0x000000000000000000000000fdbafaade8320b02e65af012c476742e75330760)", - "P->V[80584:80616]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13779: Hash(0x000000000000000000000000c0f2ced3608761e01fe3432ef41db10f31a390e8)", - "P->V[80616:80648]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13945: Hash(0x000000000000000000000000bc1a4fec0b1c6b42972fb0f244357bb82f49119b)", - "P->V[80648:80680]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15218: Hash(0x0000000000000000000000002d803955c89380995c9903b406cd1d2cec698344)", - "P->V[80680:80712]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15613: Hash(0x000000000000000000000000b55dc6f674a61772aa478bafeaddd9427fb7189b)", - "P->V[80712:80744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15709: Hash(0x000000000000000000000000e878597e276acd0ba5934be77f4e59a08d57f5c0)", - "P->V[80744:80776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4371: Hash(0x000000000000000000000000d606b042be8828a82caac117e1c85a6d1ad6dfc4)", - "P->V[80776:80808]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4677: Hash(0x00000000000000000000000023fb75c2cd52acbcb03432f6037860daf182c108)", - "P->V[80808:80840]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4730: Hash(0x000000000000000000000000951e184201c7b56f9431c2d24cfce997d17108da)", - "P->V[80840:80872]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4769: Hash(0x000000000000000000000000e0cefb725dd1a2b952f74b74b0b561a560a302fe)", - "P->V[80872:80904]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5268: Hash(0x00000000000000000000000014122254d1396b7af19c58c34d70c2eb90dfeff0)", - "P->V[80904:80936]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5321: Hash(0x000000000000000000000000ec638eb59eb19810ccd37ef64a35cd8206cba3bb)", - "P->V[80936:80968]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5444: Hash(0x0000000000000000000000001b50ea6be808b9a22b1d21c0912794fb0e5bd718)", - "P->V[80968:81000]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5943: Hash(0x00000000000000000000000061820e8d4e5d58cf36b807dfed2dcac08dd18915)", - "P->V[81000:81032]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5945: Hash(0x00000000000000000000000009988fda39f37683f6e52e80644fddd3016f9bad)", - "P->V[81032:81064]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6056: Hash(0x000000000000000000000000280fdfc5f09550ca0263f2f48414cb274574b3c3)", - "P->V[81064:81096]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6275: Hash(0x00000000000000000000000063ecf52cb75633b442a4c1c18e6ca045af6df7f2)", - "P->V[81096:81128]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6805: Hash(0x0000000000000000000000002d0f6cf22651d6e3d5f47fd1fe9b9702b29064e9)", - "P->V[81128:81160]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6888: Hash(0x0000000000000000000000006b5d041d0c3179c4ff073b9bd7aac4d002457dac)", - "P->V[81160:81192]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6973: Hash(0x00000000000000000000000071fb71ea470b8d0d9508a2011b6af5e3683166a1)", - "P->V[81192:81224]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7608: Hash(0x00000000000000000000000078cdeca10d13272c32c1dfc54d79c0f521c6609f)", - "P->V[81224:81256]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7807: Hash(0x000000000000000000000000101b52a2d2cabec5d61cea6769f8539a0d8303d0)", - "P->V[81256:81288]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7855: Hash(0x000000000000000000000000354fa76818ae487242124c673c3ae057b2b617b7)", - "P->V[81288:81320]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2184: Hash(0x000000000000000000000000df5882f2d118b67b2a73a0710f3091990bcaaa4a)", - "P->V[81320:81352]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2339: Hash(0x0000000000000000000000001111b68f05020c40a18d1af84056c364ddd70c3e)", - "P->V[81352:81384]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2364: Hash(0x000000000000000000000000082ec91c64161791ab1f01bc9290e9b9bd070eb4)", - "P->V[81384:81416]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2385: Hash(0x000000000000000000000000c0800542ea1f74c9d852440b316ec3b09f37413d)", - "P->V[81416:81448]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2635: Hash(0x000000000000000000000000abdd1bb0430711bfc40c960cf35fa5e9310dd577)", - "P->V[81448:81480]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2661: Hash(0x000000000000000000000000abd374a312ef097d7ea1066b46aeeee87aa5eaae)", - "P->V[81480:81512]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2723: Hash(0x000000000000000000000000551c69bc65ef017c114c50ca3939c309d799db44)", - "P->V[81512:81544]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2970: Hash(0x00000000000000000000000085e78e1f86f3423515475c4ec12723747dd2fcfb)", - "P->V[81544:81576]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2973: Hash(0x000000000000000000000000fb810e2c18ea496daa6415e2c1a244e7529c58d9)", - "P->V[81576:81608]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3029: Hash(0x0000000000000000000000007fe9ec71c5a827b580b0529ce9606009e83698d0)", - "P->V[81608:81640]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3136: Hash(0x000000000000000000000000988bd1c88ef552d05f734f29d2d3d77521fa99e1)", - "P->V[81640:81672]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3403: Hash(0x000000000000000000000000d8d846de717d07758afd91713eca5492a975f9fd)", - "P->V[81672:81704]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3445: Hash(0x00000000000000000000000095a967a596d5de4cf166851c494e2c2c372e80bf)", - "P->V[81704:81736]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3487: Hash(0x000000000000000000000000c709b2af4ae607c110dc9845bbc1ccfc576f552e)", - "P->V[81736:81768]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3805: Hash(0x0000000000000000000000000ad477ec220fb0df04ad1aeef26b8c97b150c567)", - "P->V[81768:81800]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3902: Hash(0x00000000000000000000000078a14ce90f58ff8018d20463ddf3d5b2324307ed)", - "P->V[81800:81832]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3926: Hash(0x000000000000000000000000b2fcba2ba866e6256dea65801ec8392744b7226d)", - "P->V[81832:81864]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1093: Hash(0x00000000000000000000000080613211aaa8c4d92c3c7fe4ea7d8eb858bcf4e2)", - "P->V[81864:81896]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1168: Hash(0x000000000000000000000000b92f7daf4425454134a79af6db817e7a3dd50491)", - "P->V[81896:81928]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1183: Hash(0x0000000000000000000000006d0315319ce9fb2ce41be692d5d01d6da72e3cab)", - "P->V[81928:81960]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1193: Hash(0x000000000000000000000000e56917f372fbde09a769a208c3f8785355480e9a)", - "P->V[81960:81992]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1316: Hash(0x000000000000000000000000d667469a40804bb376bf7a2fb88c627ada8733db)", - "P->V[81992:82024]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1331: Hash(0x000000000000000000000000dcc29417fe89927585dce68fe2e359c437305155)", - "P->V[82024:82056]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1360: Hash(0x000000000000000000000000691facc4a212f74e29cf38bcb7eea384ea3a9595)", - "P->V[82056:82088]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1484: Hash(0x000000000000000000000000dbebfeccf6e0224893d50695d639391f46e556af)", - "P->V[82088:82120]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1487: Hash(0x0000000000000000000000004884f7b319f84b5517725845fdbb388eaec17f4f)", - "P->V[82120:82152]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1515: Hash(0x0000000000000000000000006b6fccb259e7aa55e44e0eab17c6f77cb8d2103a)", - "P->V[82152:82184]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1569: Hash(0x000000000000000000000000503a2630ed81f05600c4e816ed08186052d1df86)", - "P->V[82184:82216]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1700: Hash(0x0000000000000000000000003e58b6ece3d53368780a67e8f6645681aa43d4da)", - "P->V[82216:82248]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1723: Hash(0x000000000000000000000000246bf7267d29c77f75adcddf79bf415f78f41612)", - "P->V[82248:82280]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1742: Hash(0x000000000000000000000000a6ccb8ca87b0a12b8743a3814ef3d3f4fcf69fec)", - "P->V[82280:82312]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1903: Hash(0x0000000000000000000000002ea4c5650fa31b3abd28b67de783923c6ddc2651)", - "P->V[82312:82344]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1950: Hash(0x0000000000000000000000002d7eaa2a99859dd7302115496bdf6e8ce910ea1f)", - "P->V[82344:82376]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1962: Hash(0x000000000000000000000000fab7a8a579ee69d23b8e23647f2a4070fdb981c8)", - "P->V[82376:82408]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 547: Hash(0xcd280f4656192003fc631d96cb91e6c4075081aa)", - "P->V[82408:82440]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 585: Hash(0x8197292b44faab8392d4ed18a7341ebff9a70a26)", - "P->V[82440:82472]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 590: Hash(0x7a73d06336d20b1aec4bff35c8bf84031cb9aca8)", - "P->V[82472:82504]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 597: Hash(0x572177763ebb763db48b04a1a7bca04e405923cf)", - "P->V[82504:82536]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 659: Hash(0x5b5eeb6d092668480e7aa71d72aee21774d2e628)", - "P->V[82536:82568]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 664: Hash(0x377a607b181500450dcd4e59c2263b2d67e7e7c0)", - "P->V[82568:82600]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 681: Hash(0x5d07685c2f20de1640845c6562fc097145e9e11)", - "P->V[82600:82632]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 756: Hash(0xbba4065c363e7de33d8827f3da02babcef77059c)", - "P->V[82632:82664]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 785: Hash(0x2c72dbf8a4ed7478101a55967ec749b62d6483f3)", - "P->V[82664:82696]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 851: Hash(0x1241f2e776034f402a44a55c5f657a7b7f5eec92)", - "P->V[82696:82728]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 860: Hash(0x31831a990c78592c8ad82ca0d13e9d540f610881)", - "P->V[82728:82760]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 870: Hash(0x1b66ef842cf6d6fb3c69d97944b2672da98de29a)", - "P->V[82760:82792]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 950: Hash(0x489c486aed6a8b831d535d901b95620ef52c490)", - "P->V[82792:82824]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 974: Hash(0xed795c7d92404241ce67f6a3e866616a51c9fe56)", - "P->V[82824:82856]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 980: Hash(0x91afe637463d587e5206c28f3ab8ceb0c4d7090a)", - "P->V[82856:82888]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 272: Hash(0x5dc74fa6b4a694d1a01fa239b89a39386e8e828208975ce78af085027ef2132)", - "P->V[82888:82920]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 293: Hash(0x705b28517a356bcd431adb58fb2ca0b0795602a27ee0abd8ec7b3d445fd42e8)", - "P->V[82920:82952]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 294: Hash(0x339bfa82955e0b555b95672daa38bf5ddcf122af2b626441a5afbcb50de5ec1)", - "P->V[82952:82984]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 299: Hash(0x4986153ea7d1377837a3a5f8eebaecec17f5346d5088bcae19e9730c4e08bcc)", - "P->V[82984:83016]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 328: Hash(0x648a9adb38e0ba16bd4c69bf6992a81d08eaa248268f3ac7a5bd8bb8c1df7be)", - "P->V[83016:83048]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 333: Hash(0x2a58367b2f9eec07be0485f4dcc661dab36c94c9fb5b597e6d1948bd254a216)", - "P->V[83048:83080]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 341: Hash(0x1a7caa1936e0cd387035a94274e9bd8bd2229291f514e7a4a34931e844cf49a)", - "P->V[83080:83112]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 370: Hash(0x23c9b88268ce645704129be637e045c70066eeaa02dcbb383e41cca77ff55c9)", - "P->V[83112:83144]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 379: Hash(0x9fe4039780472f51cb1878cee47b3abc6618df16b5942a225f9032c7381259)", - "P->V[83144:83176]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 393: Hash(0x36c95e7d2bd5876d11c955459e0c7938ed444766e3b7790ed87308219af100e)", - "P->V[83176:83208]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 424: Hash(0x423a1fb47179586002dbfdbfb27e7c9dd3d9a2e737ca7edd707f456b7342f21)", - "P->V[83208:83240]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 431: Hash(0x57e8ff85ebafc212c13bd4f2647c1f7699a1373377465cc32c5837719b308e9)", - "P->V[83240:83272]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 434: Hash(0x4b994d89ea6b8fdc2a4831763ba88ca5e56c562b41fac05dd8e8f369a3bb01e)", - "P->V[83272:83304]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 474: Hash(0x374186f966f8e5587837f7ab56eed087f438ae7b3fc027e7294b349bafd8590)", - "P->V[83304:83336]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 486: Hash(0x2886db2d80082d7c7ab6edc8d16fbab0284aad8c0597d49261e2052461d9dbf)", - "P->V[83336:83368]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 491: Hash(0x7adb00e525bc126450d98ad7ea748d61d5ae4452df0d7f308b312408d314aaf)", - "P->V[83368:83400]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 137: Hash(0x445fe80e9f4ce09c8f7573627ee9f0807e69aff41cd456b685e697bc61aba87)", - "P->V[83400:83432]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 148: Hash(0x44ba6d61ad37e0bfa63521784e13cf4492ceabdf3df7eef7f0ca120d9019d4c)", - "P->V[83432:83464]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 165: Hash(0x74f8150410f4296698d4803a48e46b15d1c5adbc16970d6849c11d03e579c7e)", - "P->V[83464:83496]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 167: Hash(0x4ef23407debd51acfd5018daca91ef14e5b6ec94ca6208cbfd947db17822308)", - "P->V[83496:83528]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 171: Hash(0x42b443b6488907995f7e344c2e14bdba7351c852b0d4e6ce23ae0077a8df9ae)", - "P->V[83528:83560]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 184: Hash(0x790175419d467aed008edda6d55c2b4ccc37321132d46e329f248ebddcd6cf6)", - "P->V[83560:83592]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 188: Hash(0x43478891d71acce2f4e67a47c12316c75533490af62b4c9a7ba8418aa54012)", - "P->V[83592:83624]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 197: Hash(0x2febaef7ead4776a6daf268166bd637ee7300026ba5568e3897d6d86d215324)", - "P->V[83624:83656]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 213: Hash(0x2867231744bd544056355124aefa4ba1cec892a22260a61d0d41dfcd86e8947)", - "P->V[83656:83688]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 214: Hash(0x347ff320d9e824453fec060b94e6ce7b017cac7befe9f00229f1a1883e0e7a)", - "P->V[83688:83720]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 216: Hash(0x3f8d5f5c2d5f2ac5b53191de1e390aba307511d6dda4d7a3ce82859ad20f12)", - "P->V[83720:83752]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 236: Hash(0x68f85201e06ba991b0ad5ad77196cf3cc06aeb13293b17b5f9187ce2c9051e9)", - "P->V[83752:83784]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 242: Hash(0x4806c2d580eaa1360d88735573fda6dfd8969184e36ebb0433471cdc67f4e19)", - "P->V[83784:83816]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 244: Hash(0x627d1672e636c9057b07173ca0b35b7100d6b9145dc89de4ef7885f01ab117)", - "P->V[83816:83848]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 69: Hash(0x1b7bb46ccaaedb62207cefaa707b29dfc4e17dabd5a7b353d8ba6b1a342e657)", - "P->V[83848:83880]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 72: Hash(0x624c71a82a325011ae5ee3cdf8f97a68b0f9260ded5e7e9fa9e7dade918e299)", - "P->V[83880:83912]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 75: Hash(0x3131b8400e7473c2d66b17347bcbe9925e41e967580a3dfb49825f62b778b0d)", - "P->V[83912:83944]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 84: Hash(0x30dc6810b3801164fae54438129d2fe784780a328a20f952aa7ddc3fe20a4cb)", - "P->V[83944:83976]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 93: Hash(0x6131397dc25bad0ee0e705e5e564567184755943a4ac0493e91a674c21f0861)", - "P->V[83976:84008]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 95: Hash(0x67ba8f45e966d2b33ca8b24b73bf349a794041ca3420cf2da9dc2f8bcac5ae6)", - "P->V[84008:84040]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 99: Hash(0x723446b2149e973c580b20301caee568dd71ee132939031a42ae3a10728db56)", - "P->V[84040:84072]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 109: Hash(0x656cc7ec836ae6f3de94b8c3038a5d0a5a11fa8c60e11c0bfd6ea07c0769621)", - "P->V[84072:84104]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 119: Hash(0x54657e80b8c366e9e562d00862627b097c9655a5e35dc64df0ba779a19d4264)", - "P->V[84104:84136]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 120: Hash(0x327f8b313220ac722704198645179554cb724adf70397bde868029c6938ee)", - "P->V[84136:84168]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 123: Hash(0x6ac93b5ab058e317b865c980f384bb83e53a211510505bbd2ecac5e16e8355d)", - "P->V[84168:84200]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 35: Hash(0x2ca1a56175397abc22ed7d7eeaba7817adb0d00f314af4ba5528c2bf47d7327)", - "P->V[84200:84232]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 40: Hash(0xa541ec1a11f9285358d7c3f2d40524f4b65ab87bf9a9e68158dabcb110bb8b)", - "P->V[84232:84264]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 43: Hash(0x171edebfc2e03c0ee111eafd3c9345bbf1e8054cab44e5f375df1eae0f3b1b9)", - "P->V[84264:84296]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 48: Hash(0x2277f735a6c8e00cad988fb7322ca3aafb6d1432dcc256f242f610ae37e11d9)", - "P->V[84296:84328]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 52: Hash(0x719da93f0d89f2b81645e19acab68866501633c574b2bf1725eae5288ed2aee)", - "P->V[84328:84360]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 55: Hash(0x5e312be557badd7425fc5d3ecda5877352ed9931aa21030e24a828750ba1793)", - "P->V[84360:84392]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 58: Hash(0x379ced4bdcd17914ac8de8a63ee9d742bb20b54e038b9f3e128cfd01e236ee3)", - "P->V[84392:84424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 16: Hash(0x496160c9b0946892103792d6b7d5382f733c0458149df24135e59a587b15d20)", - "P->V[84424:84456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 19: Hash(0x3f4323acba417a4499b72cb45efcf78c753ecb00e84670de2d0a81a102e9e4c)", - "P->V[84456:84488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22: Hash(0x4c7fbc14e9d6e29b1f6f462a0afd33e9c5e7b6c204b6cd66485c326cde4d28a)", - "P->V[84488:84520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 25: Hash(0x633286a35f8c261ee77b535c76c255a0c549b97256bd1005b0f38e63eb50394)", - "P->V[84520:84552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 28: Hash(0x22f035e11a8abf1daa5e63164372e7862b1f82e94e40a4cb3b7fc0b2b6b920e)", - "P->V[84552:84584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 31: Hash(0x61931095f14801493944df481e1e0cf9749755659a0c726453c9bc0dd4fce0c)", - "P->V[84584:84616]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 1: Field Element(0x318e871303eb2af97d275b7014a80a1c32d0540a1fc5ccb338fb77d7be9d5d8)", - "P->V[84616:84648]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 2: Field Element(0xaafbd6fb2208f1751938e3f936aebac61b9f2692cf068c89a8be73ec0deb9d)", - "P->V[84648:84680]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 3: Field Element(0x255ae1f9ad7e686933f4a1ee29bb31856b7752752795c847ba0370f94a487c9)", - "P->V[84680:84712]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 4: Field Element(0x3baadfd569e0cbd643f4a18177ebcaf4fb289f20e317f02ffc9685b70186d7a)", - "P->V[84712:84744]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 5: Field Element(0x6c7c66317dd05d6e8b30c1294ff57d3b4f563b2ea0d2638fedb2ea1acd3e692)", - "P->V[84744:84776]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 6: Field Element(0x473c261e9ffa2790a799e38caa8bc64e004a2707e0c945545ddcc17ddff4996)", - "P->V[84776:84808]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 7: Field Element(0xfed4d5152e755d3da0d45a385448d2e0550f83f733813de0bdb0eb343d732f)", - "P->V[84808:84840]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 1: Field Element(0x2a8b72377dfd6c755d043debf62103596db9c32ceca4c7c6db784beb7a15ed)", - "P->V[84840:84872]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 2: Field Element(0x33e5784adc3c90351689e3988e1160ff2115846662e49f733de6a18f93a9808)", - "P->V[84872:84904]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 3: Field Element(0x73aae750df37f26c2683cef17242daa6e023ffa2c213f22791e1878f8716da)", - "P->V[84904:84936]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 4: Field Element(0x17bccd335ac390d96c4dd2512fe38a6872b6098245a53c9076c65f2d02d39f1)", - "P->V[84936:84968]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 5: Field Element(0x399ec2dbb0f754d9eddda05962634ab7756d88cd638d23f9477dc818b5db7c1)", - "P->V[84968:85000]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 6: Field Element(0x154ae23d1e06dffa328e86ff82f4f4fc12b767944ab39b0ec8ab29be23bf46b)", - "P->V[85000:85032]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 7: Field Element(0x4bc660c80e716596bc850e1ed92170b55e0697425f9152543221f01d15d844)", - "P->V[85032:85064]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 0: Field Element(0x229f584a82b79323e916f8812171f77e1d2e74abceb33fc381a1b90d709f1a3)", - "P->V[85064:85096]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 1: Field Element(0x64b6edf4efef23cbac4113fe135549fa93a5956930ec70c73b981c28e13dcbf)", - "P->V[85096:85128]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 2: Field Element(0x39315bba644bf64200d60f62132b711ab823cd9c0a5f71ef2e05c3ae0623738)", - "P->V[85128:85160]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 3: Field Element(0x7ef602a05e9fc9a3c817d88c98f1a49b7752d06c907b0e1ae739d1cedf10566)", - "P->V[85160:85192]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 4: Field Element(0x10a8773c19761fc7471cc16eba632f408dbbd031a3bd4633946ca223d78082b)", - "P->V[85192:85224]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 5: Field Element(0x2fa17725af2c5dae1e617257b193e41aeed3c1803d5af378bab7e9023446a0b)", - "P->V[85224:85256]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 7: Field Element(0x56acbb5773cde329e7581ce013bf8e6295db2c8b074761305e699a02811ceba)", - "P->V[85256:85288]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 0: Field Element(0x5e69cb1087b8e7315fbfd7d4bfadd3f359c78cc4726aed3f15683e1bd8c7b86)", - "P->V[85288:85320]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 1: Field Element(0x57425f2a7d4bc7e62acf785a8e94eb0d4b480d689bda60a6f254b00d5317580)", - "P->V[85320:85352]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 2: Field Element(0x35db36466d1f6b2c9a61a44925a94fd3293b8d0b62c75dcc17e371cf5058303)", - "P->V[85352:85384]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 3: Field Element(0x62b9cbbeb633f80b101bd6a99843d32c84e5a7395fe130f694eabca4afbe598)", - "P->V[85384:85416]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 4: Field Element(0x2809d62d15d5930edb4c636deb5fa9b90e426035ffddcd69a824faad66af803)", - "P->V[85416:85448]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 6: Field Element(0x257190161df4f474c6a8b42a20c66f8d5c42266af9f6f9f66057bbe36788e4d)", - "P->V[85448:85480]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 7: Field Element(0x1ff37a6675d64915d596facfc0a609cc75b72aad1106bcc47133c40ae70b0c3)", - "P->V[85480:85512]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 0: Field Element(0x44faaaefda8a51d92bd17c62fba4dac93323f5fee7493c3720a13886e1c645)", - "P->V[85512:85544]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 2: Field Element(0x61b817079f3406c1d18a73ae88aeebdfc6bd02fd0f14fc7535e2bbd1815d0cc)", - "P->V[85544:85576]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 3: Field Element(0x2eb946cf2ee6b1877107ef312cb9c215838b61384815b046b5ae189a2acae91)", - "P->V[85576:85608]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 4: Field Element(0x7c0d631a731180d9783932d58d6a379258b8dd6c706f9565edae5b4c9a5f24a)", - "P->V[85608:85640]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 5: Field Element(0x6891748d5910fad4d245968adccaf121b3411c2f3dea04e2fe51c99171fe008)", - "P->V[85640:85672]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 6: Field Element(0x278ba05461ea7e1f1aa0a4c76e261205875dd3838e8fd6d7412e12a66a3d185)", - "P->V[85672:85704]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 7: Field Element(0x589f076861c4b05add7a5bfaabe71ebbd8038ae17cab3be2ae5021d43117044)", - "P->V[85704:85736]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 0: Field Element(0x475274fb2f165802bc892b0c36a5d9ef973a4c46bc4b6a6dee3e535c0106a7d)", - "P->V[85736:85768]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 1: Field Element(0x1b620267c1aa55c08c6b4cb758a465041e4c10b22c3ba815303bfa4ba508c1f)", - "P->V[85768:85800]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 2: Field Element(0x556b2e800dd93390b363fb95a01726031a7768b1156f05dec9f9b759f49080a)", - "P->V[85800:85832]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 3: Field Element(0x6d902cfdcaebc846248f76144747facb4608f1387cb9e2a5394a103858889ab)", - "P->V[85832:85864]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 4: Field Element(0x5135d4e034922ec06fa32ab7a1825e5d346bdbab3fba515c87cf655f7eb1d66)", - "P->V[85864:85896]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 5: Field Element(0x21cf936f62d93f1e6fc450c16075d27a259d957d88c105ec4c59de11c7a68c5)", - "P->V[85896:85928]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 6: Field Element(0x535e45d02d70ee35f2cadf3a400250ab562eb029e295b417d894afa62283953)", - "P->V[85928:85960]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 0: Field Element(0x3ef0e29f34e559cf60aff8199b40ca31ae5e8ab43f8158c755210278a4c8b1c)", - "P->V[85960:85992]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 1: Field Element(0x2ccb41e27398599c7a6ad5ffebaf6212404a1ceb421f645ffdba37be54064a1)", - "P->V[85992:86024]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 2: Field Element(0x756fca4291b9f2e6a9f5d991d95e67b6414684a88b6babeb3a3575729c41a11)", - "P->V[86024:86056]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 3: Field Element(0x24e3ae4b71ccb66a2dfa3372e905a60c6f81eb2bfa367dc8bf0248035eefc97)", - "P->V[86056:86088]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 4: Field Element(0x10a06ecca5bff7bb3b7edd762f912ef6c81cbfed2f92d694ecd72b371bb96b8)", - "P->V[86088:86120]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 5: Field Element(0x4eda973c9b4a2cf4951bcaef77622bb216197914862757dae88368bbc0f7964)", - "P->V[86120:86152]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 6: Field Element(0x40b1d88909b997a35a3cfebf3a5c96b0efcfe8aed17cf42a59f898788a4c532)", - "P->V[86152:86184]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 0: Field Element(0x5c9cd2f5e9339cfb5c420e89652b58afbbac15929caf252f443c9511dd072df)", - "P->V[86184:86216]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 1: Field Element(0x8d34a01f6ac7bc7507c5513fa347430e30e7053cc97b286b8559a822e2a37c)", - "P->V[86216:86248]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 3: Field Element(0x40706ee33fa2208d7491b1100c2f33185511d0a88a1b53471161e9a01736ee6)", - "P->V[86248:86280]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 4: Field Element(0x74abf080f47da68deea0be4a8856b24dd361ae3006b12990871ad82f6e2ed50)", - "P->V[86280:86312]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 5: Field Element(0x25de927dd501d28d626175d510dd0e2d8d5e270226d5b19756f7be08e70cb0c)", - "P->V[86312:86344]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 6: Field Element(0x7424c5e672c199a9c9717d4b936c5b4db8c19b94d56656ac78807c32a2b651b)", - "P->V[86344:86376]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 7: Field Element(0x360d7f552e5c0df0960a78ac8251d2a4b2d1a574dcba2bd2d45e8e8a3b6650c)", - "P->V[86376:86408]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 0: Field Element(0x2dc2724f8b3b5622e8cec41be7e815585e2e666ab58236e824d9020da635aa)", - "P->V[86408:86440]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 1: Field Element(0x646c7a2f2c3c616b2f3a7ab51b687bc74be7c5221f68b36a7909b3d51469f76)", - "P->V[86440:86472]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 2: Field Element(0x4d4e3dd00d10540ad65251be6adceab129b893e9be7321c53389b4baf1e9f0b)", - "P->V[86472:86504]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 3: Field Element(0x21ac705377c559f6b60b568a75faaf1c5733703e63a41451d3af5809db91bc1)", - "P->V[86504:86536]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 4: Field Element(0x2927762ded4b242366c7df403061f8da5040d3ca43450f80cdfbe47c4138bfd)", - "P->V[86536:86568]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 5: Field Element(0x1f99411c492d4556e78e3695f692f91374b2dca63b4e1412d3745d6071ec637)", - "P->V[86568:86600]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 7: Field Element(0x2ea48159e15cae86214cd1f81118d7878ed9f67cd981e4f809fb8d4dacc2bbc)", - "P->V[86600:86632]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 0: Field Element(0x4d8390b65936487ed6c92e82ca0228a8e1bf11908fb4e11950cbd17af736b08)", - "P->V[86632:86664]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 1: Field Element(0x38e8fac4195973f98a2313bb7ec94f759b0d1834438538eff90a7131d606826)", - "P->V[86664:86696]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 2: Field Element(0x5e5181eddee3084d607dcad4b4d9575947729445246841ef9f9f755edc2bd86)", - "P->V[86696:86728]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 3: Field Element(0x2f4a766abacdc75b5d82ef4eeb1525d3a543c25e92ec5d13b57ca7cd23e9282)", - "P->V[86728:86760]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 4: Field Element(0x703201ffb048b46a6a63be2c87c93a6d73f90c2537a16bcf27c1f5e1a83b9e0)", - "P->V[86760:86792]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 6: Field Element(0x112a473a9ca05ea03994061b0b3dbca5e85f21a007dc569d701a1a7a6ec5b04)", - "P->V[86792:86824]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 7: Field Element(0x39ad4f34d9d64a743b4b3f69be15b98b7d2488145da71340a55676083c6722)", - "P->V[86824:86856]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 0: Field Element(0x5b882389c108f5e64bad69ce9ecdc59ed2527d8e3933f93666cc1887891ae99)", - "P->V[86856:86888]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 2: Field Element(0x249069cb9799b1a15cdc951205d5cc98636a19b2449f477ed9b9f266e00adb)", - "P->V[86888:86920]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 3: Field Element(0x6ea657f206fdf556af2cf6cb9ce7dba1b2d586b4dc898e839b1ddd9fea1e67e)", - "P->V[86920:86952]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 4: Field Element(0x6a2694d05000fc2b4795b406857c8b5e69bf345c53eb17be77a5d561627222)", - "P->V[86952:86984]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 5: Field Element(0x5e7e2d0779d4a02e3eb9faa2749250fbb5abe8529d2685f54fa12d26d9ecf72)", - "P->V[86984:87016]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 6: Field Element(0x19fb5baa7916e9b98c1ac926419caa4f4a96832191073681eed42f2e5d1112c)", - "P->V[87016:87048]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 7: Field Element(0x4dd01f122cdb81da103c82e16d32f8fb01b8654fdc954df4f27c25861c67bff)", - "P->V[87048:87080]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 0: Field Element(0x4b41eae53a4852447c527cb6c7766fcf378138aa848119feaaf3516388ec16f)", - "P->V[87080:87112]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 2: Field Element(0x6d135efef443b75e438b40a2c629d46bc72250a0fd09205bcc21064b981515)", - "P->V[87112:87144]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 3: Field Element(0x3f8cdca8127eebad45ee71527b0263d47438a172b2aef97cc95a86f616f7e98)", - "P->V[87144:87176]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 4: Field Element(0x7bc9274c6eeabe8fd1337820bcd041ca47ef9c91e38a4267ebb1e502d33f8a9)", - "P->V[87176:87208]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 5: Field Element(0x5dacc038c1be26606ba2304d0de322b0a3ba2f8c94872f923928925704b368d)", - "P->V[87208:87240]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 6: Field Element(0x533c782d2b328e21466da0f38e175c43bd4a45b91f3dca2646b8f6bb0c4a742)", - "P->V[87240:87272]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 7: Field Element(0x1a750c76259897589eb0908620d2444c2e095eb5185e35f5b9cf1baec6784ad)", - "P->V[87272:87304]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 0: Field Element(0x1a967f0e81fd2b94458fe370afd3c15c24cefa735817e423059323e7b629cfd)", - "P->V[87304:87336]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 1: Field Element(0x76c37fa266f85ebf745d0b5ada3c1f922d1df463976430ab26b111316cb26f7)", - "P->V[87336:87368]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 2: Field Element(0x4edd8a44f46a6f7c57b59ef5a39780665592b6da6b9d37ff55faea0ffb609af)", - "P->V[87368:87400]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 4: Field Element(0x76082ba794f3c20c6623a0c2d2e131fa11f070f4c85e6aa5ac90bba159f9820)", - "P->V[87400:87432]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 5: Field Element(0x64fd97a06cc3478057922e7ceaa049bed5ddbf57b5b3eb37dd1efed628869f)", - "P->V[87432:87464]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 6: Field Element(0x1646beda57d361d861d834882df723cb71ee680cef9391305ee2f393ed346ff)", - "P->V[87464:87496]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 7: Field Element(0x535fddb62a970bec25a670ad20d026272ff71bb18f0858b1316962bcad47918)", - "P->V[87496:87528]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 0: Field Element(0x125a3685112aea9012304aa28d2d5c64919d81def3a1f0082ea7e39de0188a3)", - "P->V[87528:87560]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 1: Field Element(0x438e69b630730a1a65e9caf92c20be13364dc9d6cbd90e429fffdb694fde13f)", - "P->V[87560:87592]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 3: Field Element(0x52cbc2e913840957d274f8c6ea76af824191e01fbfc2ef67f078b31c2a88a66)", - "P->V[87592:87624]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 4: Field Element(0x2e7fc96f7e1e0f45bb1ca8942ca41af6cae6943f7b1f6179f171c7f36b50920)", - "P->V[87624:87656]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 5: Field Element(0x64180a1548549dfd09294dea819393af7d41aebb16786f669bd633648f2674)", - "P->V[87656:87688]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 6: Field Element(0x624565b80c6c3b57ea4e421892d76b57ecc2db95ef262d5a53f6eea72dd0841)", - "P->V[87688:87720]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 7: Field Element(0x7bdc2350b04aa7ff3b3ae2df4574f93fc18e44f1b84674725edbda5ba5ef001)", - "P->V[87720:87752]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 0: Field Element(0x6146e2516164792b345168849f5d526f2b803ef77406c8d63a3c96ca0ccc13d)", - "P->V[87752:87784]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 1: Field Element(0x2c996d9e873790c3f4ad9c48a6063636f84f80ff1dd481180fb6fea799dfbbd)", - "P->V[87784:87816]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 3: Field Element(0x6b1b889d7d4531518fe44342e81683dde9ebf56668e07e8bb31531a8f494628)", - "P->V[87816:87848]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 4: Field Element(0x7210eaf03aa81e0e914af75704872aec9ef36bc21a005ef8cb108def3522b24)", - "P->V[87848:87880]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 5: Field Element(0x1ec482d2d1a5042e89ebad0827a790c8ab26c711c98202cf0e619376d320b2)", - "P->V[87880:87912]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 6: Field Element(0x55371c50a9c3f8dadb54f9691a4aad7625dcc4c3534eba5df97878238ac8553)", - "P->V[87912:87944]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 7: Field Element(0x35f5421569763930f53e4ec5ed1db397985131095130112568ae9232fb49ec2)", - "P->V[87944:87976]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 0: Field Element(0x7d6686dd3738c8eec94736e89d9e1d6d0551a61325e1b5892b769c3cb4d8b62)", - "P->V[87976:88008]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 1: Field Element(0x6231bacc6f4b9ec0eeea470e49b3ddca417084903a6a771f5eaf516203721ba)", - "P->V[88008:88040]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 2: Field Element(0x498521e5fa0d8174845c93a4b94ac4b7915e6013f607d5b2cd7599d2b2ced63)", - "P->V[88040:88072]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 3: Field Element(0x207f94e13ba1d27a403b618fac4e6883450a9f7f915b7c0f1dd90d06bdf2ab7)", - "P->V[88072:88104]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 5: Field Element(0x18b82c7a8b6c4a667473f60f5241bd51782fc38aeb47bf8ea016926ece00f5d)", - "P->V[88104:88136]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 6: Field Element(0x2fd4dad4885a79eff3ff4db0720fa5e844accb6ea17d7f7cbbe413f9a6fc05c)", - "P->V[88136:88168]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 7: Field Element(0x7f6a0c451f60607ec3cea092adf0ca8cde06d0b243bf56e208b55b52c060d28)", - "P->V[88168:88200]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 0: Field Element(0x6657ba0a69dbd822f88fdff9b00c40ff321a6bfe0eccd6bad2ddc77cff5f076)", - "P->V[88200:88232]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 1: Field Element(0x7dbe2663ad7489929d056bcb1597a5fbe112367f031ea7da9e643571a87b842)", - "P->V[88232:88264]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 2: Field Element(0x203f8549faac900b3a274dee9bd3f851aa54e5799731ca14b99033f9749cb61)", - "P->V[88264:88296]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 4: Field Element(0x5970eb111027dce3ae156dc4e506857ee9528f5a6c3ec626018ee39942865e3)", - "P->V[88296:88328]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 5: Field Element(0x3c8466aebb270d5db7762a9b283824b0a1cf9d9c278c678494a83cc1947dc0d)", - "P->V[88328:88360]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 6: Field Element(0x50f46134c455ddb2fed530ce78b6ba5595a7609fdd7870bb98258e64b0479c4)", - "P->V[88360:88392]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 7: Field Element(0xd9dac7e5bd0ee7f17c47d24fc9e3d05a73b2311cf06c50faa623050eb3a421)", - "P->V[88392:88424]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 139860: Hash(0x0000000000000000000000007f858d73b3d2d9ef949f826ff0997d3d7462eaf3)", - "P->V[88424:88456]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 149651: Hash(0x000000000000000000000000d5ced5ce3709c2a7bd189f98ba23eec434144196)", - "P->V[88456:88488]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 151407: Hash(0x00000000000000000000000007e46ac04d06b2f5e68a4b32f4f85972a55e6247)", - "P->V[88488:88520]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 152604: Hash(0x000000000000000000000000581712a94399a90c70e47fa60fb58d74d2c2620b)", - "P->V[88520:88552]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 168625: Hash(0x00000000000000000000000002285f385db4fa1f61731e69e0b1c087a7347064)", - "P->V[88552:88584]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 170240: Hash(0x000000000000000000000000aefabb055a668d8f85623c41ffcb61312267cf0b)", - "P->V[88584:88616]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 174266: Hash(0x00000000000000000000000079da58010da5463a81969fe37fe796248256a266)", - "P->V[88616:88648]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 190147: Hash(0x00000000000000000000000042d431ee351594acbb1b74ca5909b5944b65a1e4)", - "P->V[88648:88680]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 190209: Hash(0x000000000000000000000000ee48c407cffe51fb202c1bf00ffb196570050ea9)", - "P->V[88680:88712]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 193853: Hash(0x0000000000000000000000009d34217fe6936ee881cf1be9de112c8b9c8966e2)", - "P->V[88712:88744]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 200792: Hash(0x000000000000000000000000d1275a0ba14d83f8662636eeab66f790a216482b)", - "P->V[88744:88776]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 217733: Hash(0x000000000000000000000000fafc4dc0254c21b9b84f83864acce69e2039bbc0)", - "P->V[88776:88808]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 220451: Hash(0x000000000000000000000000d975aa2324814b9cb0b347a4b528accf6a4ed925)", - "P->V[88808:88840]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 223117: Hash(0x000000000000000000000000866b07fe31dd8455d3cb762b03429b7c631696e3)", - "P->V[88840:88872]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 243514: Hash(0x000000000000000000000000e33be0a73350f050a8486408e23b2ec325c07909)", - "P->V[88872:88904]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 249798: Hash(0x0000000000000000000000002ae7d6f56e6e3fc26ae93086776742252a30ea27)", - "P->V[88904:88936]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 251330: Hash(0x0000000000000000000000006bf3b16de96009de49294f3e4d8797e8362e7b31)", - "P->V[88936:88968]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 69931: Hash(0x000000000000000000000000b37a9fd3959d85ef0fdec3a96165721c5b277603)", - "P->V[88968:89000]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 74824: Hash(0x00000000000000000000000069a155d8feb4e7276be74220f4bc9e8717388530)", - "P->V[89000:89032]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 75702: Hash(0x0000000000000000000000003edb6528ebf3b49ba1a59289713aa4e33302a2b0)", - "P->V[89032:89064]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 76303: Hash(0x000000000000000000000000bd24a9a542078ec7607d380060ea261bc80560e9)", - "P->V[89064:89096]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 84313: Hash(0x0000000000000000000000004c97f8d9e3a5d2990e75b22c0b6774b36759d979)", - "P->V[89096:89128]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 85121: Hash(0x0000000000000000000000002c46547e6a2a60660b77b9d3e6e451df9d736dc3)", - "P->V[89128:89160]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 87132: Hash(0x000000000000000000000000eb2225876b52aa7dc610e92c7673d8cd6aea138b)", - "P->V[89160:89192]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 95072: Hash(0x0000000000000000000000006438afa42c58eb29e9caad72cb363dfc6f753ed8)", - "P->V[89192:89224]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 95105: Hash(0x000000000000000000000000019e63c4603960d23506c3e4fbe9a274beaf1133)", - "P->V[89224:89256]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 96927: Hash(0x000000000000000000000000d899163f8a710fa24603bc0b840d5092358cd611)", - "P->V[89256:89288]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 100397: Hash(0x0000000000000000000000005f7d8023c14ce5ae19ebd3a7475ae2b63851cbc8)", - "P->V[89288:89320]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 108867: Hash(0x00000000000000000000000025470c355ee809eb3064acdcfcd10be5d3498e77)", - "P->V[89320:89352]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 110224: Hash(0x0000000000000000000000009db9bac03080fba3c4b3a7c480a28d467aa458cd)", - "P->V[89352:89384]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 111559: Hash(0x0000000000000000000000000a062a3316e22e9879bcbdcacd5956099ad307c2)", - "P->V[89384:89416]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 121756: Hash(0x000000000000000000000000aaa473c389ea3e0d6d51ea5c3179c17ce54b91d4)", - "P->V[89416:89448]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 124898: Hash(0x0000000000000000000000003d93d1589dd1869c16eec43340043697676f13f2)", - "P->V[89448:89480]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 125664: Hash(0x000000000000000000000000db96a36414cd51dfaad04cda3af82ed41a348580)", - "P->V[89480:89512]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 34964: Hash(0x0000000000000000000000002969deb406aec79c12fde1b742826944e8a4f9bc)", - "P->V[89512:89544]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 37413: Hash(0x00000000000000000000000043c438909aad7104890f95c74ea54615bb7d554b)", - "P->V[89544:89576]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 37850: Hash(0x0000000000000000000000001cb480308ae5a191b52567468c34adacf25ff8df)", - "P->V[89576:89608]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 38150: Hash(0x00000000000000000000000037e9b5136b093fed32a0205cb0830097202f2319)", - "P->V[89608:89640]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 42157: Hash(0x000000000000000000000000d16811071409043f52b96e8db2763d668d269502)", - "P->V[89640:89672]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 42561: Hash(0x0000000000000000000000008d4929289c6a1d2a14ff02c21b043c1346b4f0df)", - "P->V[89672:89704]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 43567: Hash(0x000000000000000000000000d4d9f159ca79a6dc8ba5bc2e782dbf709f364842)", - "P->V[89704:89736]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47537: Hash(0x000000000000000000000000db2451f84c817144d8243a5102a37ea9bf0981e5)", - "P->V[89736:89768]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47553: Hash(0x000000000000000000000000b712e9df6fb9f15e163f613c27cb7f0219953c44)", - "P->V[89768:89800]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 48462: Hash(0x000000000000000000000000916f7f53fd5a6ab6df5f90612ca84b5ebe22348a)", - "P->V[89800:89832]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 50199: Hash(0x000000000000000000000000a4a76500e9d6c575a5f8bf6f02e6be6d5ecbd82a)", - "P->V[89832:89864]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 54432: Hash(0x0000000000000000000000002ba79df41d96408c5f484c4393cd66b1540dd057)", - "P->V[89864:89896]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 55113: Hash(0x00000000000000000000000067a30c1736d05d8bc258621311280aee772b1832)", - "P->V[89896:89928]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 55778: Hash(0x0000000000000000000000000b176a7a0d9c6cf9cab07429715c719d791f0ca0)", - "P->V[89928:89960]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 60879: Hash(0x0000000000000000000000005e49d664cf5082468ec37a57ab99040a24cfe425)", - "P->V[89960:89992]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 62448: Hash(0x000000000000000000000000a988062a03fbee6222b7880ed2bb3b62a922198d)", - "P->V[89992:90024]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 62833: Hash(0x000000000000000000000000f6a1308ae46bfc160df296667275f2fdb0ea0e58)", - "P->V[90024:90056]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 17483: Hash(0x000000000000000000000000008aab0dae255dc8bfc3ce10573bec759a400442)", - "P->V[90056:90088]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 18707: Hash(0x00000000000000000000000029c427875974a8adb946330919a77459b95e3490)", - "P->V[90088:90120]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 18924: Hash(0x0000000000000000000000005941736b17884675a4a158a5bdac6e31f1bcaed7)", - "P->V[90120:90152]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 19074: Hash(0x000000000000000000000000bb86c71bf5899c7e2350091409a1209babc6e9bd)", - "P->V[90152:90184]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 21079: Hash(0x000000000000000000000000c54f54bec11587c19e2c8bcac0b709a74457cdb9)", - "P->V[90184:90216]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 21281: Hash(0x000000000000000000000000235b9cfe436680bd4a0cfdb14152ba20c5906320)", - "P->V[90216:90248]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 21782: Hash(0x000000000000000000000000b8f6b32ed20ffea8c6c49c2f383dd9463c2e4f1c)", - "P->V[90248:90280]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 23769: Hash(0x000000000000000000000000daaccdc4ae7ec94e3dd73e1f06505397aff8fb78)", - "P->V[90280:90312]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 23777: Hash(0x0000000000000000000000003823831c5158aab9125d816afbee170e9b27ac2f)", - "P->V[90312:90344]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 24230: Hash(0x000000000000000000000000c742690293face5c12bcf403937c2cf21827e39b)", - "P->V[90344:90376]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 25098: Hash(0x00000000000000000000000036f21c0d26343e0d91cb3141f94cf7fb38bd5df4)", - "P->V[90376:90408]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 27217: Hash(0x0000000000000000000000004f7bbcc014a1b0ebc8147bb783bfabc604d4fbf2)", - "P->V[90408:90440]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 27557: Hash(0x000000000000000000000000a8bcb303a9632f0e9709342eff15b82f004d6d7f)", - "P->V[90440:90472]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 27888: Hash(0x00000000000000000000000047ebc3fdcb2f758993ce43e168a65a10deafce75)", - "P->V[90472:90504]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 30438: Hash(0x0000000000000000000000003863475a03f563fed2ce3a20fa30e6530298ce83)", - "P->V[90504:90536]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 31225: Hash(0x000000000000000000000000ce9579ef01eaf415ea28651db363ba82b7cb5cf8)", - "P->V[90536:90568]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 31417: Hash(0x0000000000000000000000005533c90e28d00bcc222e09a6427550e720f98021)", - "P->V[90568:90600]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 8740: Hash(0x0000000000000000000000008e6dc9332f26e08686079aa0c452e1c816b813fc)", - "P->V[90600:90632]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 9352: Hash(0x0000000000000000000000008f140a073641d6424bd01bda459d52f1565067c6)", - "P->V[90632:90664]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 9463: Hash(0x00000000000000000000000026a191c66bf5d7ffc312b6d1bebd1cd7881d1696)", - "P->V[90664:90696]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 9536: Hash(0x0000000000000000000000005288d55f48bea6c9c7b41c2898e0fdbe59bd865d)", - "P->V[90696:90728]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 10538: Hash(0x000000000000000000000000dcab31f985b05493738832aed70e8c86eee528ff)", - "P->V[90728:90760]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 10641: Hash(0x000000000000000000000000ef22461503bb3687cdc310cc68868f3e39a7e1c6)", - "P->V[90760:90792]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 10890: Hash(0x000000000000000000000000485a678c2a1aa3db00368abecd69f9f1a60fed2f)", - "P->V[90792:90824]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11885: Hash(0x00000000000000000000000046c86d01a8580989a8e8abe5f7a791399d2d124d)", - "P->V[90824:90856]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11889: Hash(0x000000000000000000000000548e9a0793e5c4824e2f7bf346131cf5642019e9)", - "P->V[90856:90888]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 12114: Hash(0x000000000000000000000000b4e9b708c26b6ffbbfd439670f2ddeb356aadb19)", - "P->V[90888:90920]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 12548: Hash(0x000000000000000000000000c8774551fb9a4b3cf26f992fa8b6f89b6078daec)", - "P->V[90920:90952]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13609: Hash(0x00000000000000000000000025395db4cddf4601f234d730014fbb1b5d4f3129)", - "P->V[90952:90984]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13779: Hash(0x000000000000000000000000cc13ef3d11ef7ef7df1560a08a06487886701488)", - "P->V[90984:91016]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13945: Hash(0x0000000000000000000000002c051dbef6eca13dfdaf0b489464497b38868d99)", - "P->V[91016:91048]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15218: Hash(0x0000000000000000000000008238a0f72514cac426f6e38d35cf8fba9d26de1d)", - "P->V[91048:91080]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15613: Hash(0x00000000000000000000000022cef5fea010c0383189386b864a9d0d7c01f674)", - "P->V[91080:91112]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15709: Hash(0x000000000000000000000000b2fb6e650730f602da9b0824e1838ea1055f7744)", - "P->V[91112:91144]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4371: Hash(0x000000000000000000000000a5e917fbfd7008cc0c608d7d74be1831edf9dc67)", - "P->V[91144:91176]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4677: Hash(0x000000000000000000000000e14c25f3cf03dbaeb1dbe450c7b7e5b14f79c85e)", - "P->V[91176:91208]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4730: Hash(0x00000000000000000000000022e7e3b0311bca57fe788605f0df74510661652c)", - "P->V[91208:91240]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4769: Hash(0x000000000000000000000000e4638f042963705543494e857e79d0a3e5e43bee)", - "P->V[91240:91272]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5268: Hash(0x00000000000000000000000040bd11b57e7eda7667d2d4f0d7e72bc5c6c6f7b1)", - "P->V[91272:91304]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5321: Hash(0x00000000000000000000000070bbc62f094f5eafaee026acae9f21ab3983cfba)", - "P->V[91304:91336]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5444: Hash(0x0000000000000000000000000731783b998c18f7ac927b4405a5cf1936cd2178)", - "P->V[91336:91368]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5943: Hash(0x0000000000000000000000007b78416f1d145949962bb680686c7d27ae75aa4d)", - "P->V[91368:91400]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5945: Hash(0x000000000000000000000000b22f869a9f041731b1548ea09616e981dc43a1be)", - "P->V[91400:91432]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6056: Hash(0x000000000000000000000000676cc4043b04e2c2c9e67674ae0b33eea4a9e332)", - "P->V[91432:91464]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6275: Hash(0x000000000000000000000000fb7f59d077b1840142773bd094dd49c69c45d3fe)", - "P->V[91464:91496]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6805: Hash(0x000000000000000000000000ff6295b512a0fbc74e24fd214e0433e6aecee440)", - "P->V[91496:91528]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6888: Hash(0x0000000000000000000000003475ef8fdefcc44e7a4bb17a7abd1ac3d2d54492)", - "P->V[91528:91560]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6973: Hash(0x00000000000000000000000009cc0a1a8a34594d5d0f9cd02e90b17d57b7b1c0)", - "P->V[91560:91592]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7608: Hash(0x0000000000000000000000005a9461d0bdcdc9f35b15cd8720542ea7d6a105d7)", - "P->V[91592:91624]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7807: Hash(0x0000000000000000000000002adecfbea9f6b96d54d60e92a4127c11990100fc)", - "P->V[91624:91656]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7855: Hash(0x0000000000000000000000004f7f8354c102c8074acd401e7d7159fd33354459)", - "P->V[91656:91688]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2184: Hash(0x000000000000000000000000fe17707d00eb75a734924f2c1187d356de4e21e1)", - "P->V[91688:91720]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2339: Hash(0x000000000000000000000000ce9e94af0182bcfa967dc60be651626f20d647d3)", - "P->V[91720:91752]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2364: Hash(0x000000000000000000000000fd756393d93fb261e48b4395060d2a39253aa48d)", - "P->V[91752:91784]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2385: Hash(0x000000000000000000000000707890a277eff0ce26b0bc4722f18075033e351f)", - "P->V[91784:91816]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2635: Hash(0x0000000000000000000000008a706a96c8fc606a76847cf88106b74aac3ea96b)", - "P->V[91816:91848]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2661: Hash(0x000000000000000000000000b103c09f1d6fa4edfe48e25f8ec266ca1d9186d9)", - "P->V[91848:91880]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2723: Hash(0x000000000000000000000000f37517d00626b10cb39130bae80440a640513d13)", - "P->V[91880:91912]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2970: Hash(0x000000000000000000000000c080caf54b9f745963771f21f1bdb04ac5cbbb2a)", - "P->V[91912:91944]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2973: Hash(0x000000000000000000000000f40078f09e491e5c27e3feebbbf8ba94611168b3)", - "P->V[91944:91976]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3029: Hash(0x0000000000000000000000007465a3c5be6d3a641f6ffb58a0d36a9143663d48)", - "P->V[91976:92008]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3136: Hash(0x000000000000000000000000737be90c84e24c98392ce4eee7c8bdb4f585db71)", - "P->V[92008:92040]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3403: Hash(0x00000000000000000000000054b23615e3945e0b8a59838e7b0c484374598956)", - "P->V[92040:92072]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3445: Hash(0x000000000000000000000000363fbade11b931121d609f979907f0b9701284ed)", - "P->V[92072:92104]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3487: Hash(0x0000000000000000000000007cdc28a357b86c8d7fac21aeb2c8056e276f7010)", - "P->V[92104:92136]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3805: Hash(0x000000000000000000000000c8805719fe1a29cabe718058b9639d4693e75ddf)", - "P->V[92136:92168]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3902: Hash(0x0000000000000000000000003b1fc604c174f72c0730a5036c052040e26ca956)", - "P->V[92168:92200]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3926: Hash(0x00000000000000000000000065c2f94c735012febd9dbbf486181f91fffaf2fd)", - "P->V[92200:92232]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1093: Hash(0x000000000000000000000000640990a4ba6057e3f660c908ffa796b8f5898884)", - "P->V[92232:92264]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1168: Hash(0x0000000000000000000000000d03a76513b86d72b1d2f6c2353dc8d12e329c50)", - "P->V[92264:92296]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1183: Hash(0x0000000000000000000000001bf493108f698073b2ba314c68ec516692cebbf2)", - "P->V[92296:92328]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1193: Hash(0x0000000000000000000000003593c2744d49a0a34aa44006a60367debcca57f9)", - "P->V[92328:92360]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1316: Hash(0x0000000000000000000000004258a82ec1744ba69d44d84546e7d6ca1468afa7)", - "P->V[92360:92392]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1331: Hash(0x00000000000000000000000031ad99ed4dd27f690e522a4a03ec10cae027fba1)", - "P->V[92392:92424]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1360: Hash(0x000000000000000000000000a5c2dcaf4544829722096674e7f9437a3649af79)", - "P->V[92424:92456]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1484: Hash(0x000000000000000000000000a47bcae37aa66066fa76a7a69c108a9f54207039)", - "P->V[92456:92488]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1487: Hash(0x000000000000000000000000adfc9711d1645fc560ffac13babed17fbbdfbf7f)", - "P->V[92488:92520]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1515: Hash(0x000000000000000000000000a20196902d22803729332a39ca86de16f917b626)", - "P->V[92520:92552]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1569: Hash(0x000000000000000000000000c07d6d43f90993d6214e41f1b71d2ee5a16c2609)", - "P->V[92552:92584]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1700: Hash(0x00000000000000000000000036e6ded5e46848a19f867b8ac185746873312492)", - "P->V[92584:92616]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1723: Hash(0x0000000000000000000000006a976d700d8c6bd00b96f9522cdd59c3c1f83871)", - "P->V[92616:92648]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1742: Hash(0x000000000000000000000000d7310099b2b5fb49c84d15b0bd178b6a5e44f9c8)", - "P->V[92648:92680]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1903: Hash(0x00000000000000000000000063ba24c4534e360c68f0d2d0cb0cd9ba47eb6ea0)", - "P->V[92680:92712]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1950: Hash(0x0000000000000000000000001b539dd9dce26d23f1e3584b039ce99d8b6d4c66)", - "P->V[92712:92744]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1962: Hash(0x0000000000000000000000008e254c462732ace5188e052f57e725e205c38dee)", - "P->V[92744:92776]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 547: Hash(0x3cd4af90f16627cfbf56493fa87e513007af34c5)", - "P->V[92776:92808]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 585: Hash(0x95a992ae5cae5e7f41c481c396dd3321957869f7)", - "P->V[92808:92840]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 590: Hash(0x7266253a9a95609a6b147c92fba17c383e2de0d3)", - "P->V[92840:92872]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 597: Hash(0x7c4eafd384893afbd6e0645c37631bbafea804dd)", - "P->V[92872:92904]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 659: Hash(0x80f7c8282acd2719998d182dc68690c556a73c36)", - "P->V[92904:92936]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 664: Hash(0xf7855e300698f4e9d9c4c5370466a1f50acdfdb7)", - "P->V[92936:92968]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 681: Hash(0x39a20e9861528f22243784b01beb217482c34e54)", - "P->V[92968:93000]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 756: Hash(0xba9964d3e59526c8613720e3ea4c1a967efa18e3)", - "P->V[93000:93032]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 785: Hash(0x5af1bade7b65b6bf15d01700323affa2a085a448)", - "P->V[93032:93064]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 851: Hash(0x80540037722e4c23a4558fbc33981cb921ed2a2d)", - "P->V[93064:93096]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 860: Hash(0xb9d10948a40af6e8cee6da15a0f97fafa8c3b22f)", - "P->V[93096:93128]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 870: Hash(0x359664a3307f9d85eb31665c4c7fa7ac259f00cf)", - "P->V[93128:93160]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 950: Hash(0xce3c1cf5a29432ed64198d4c919a76c3dc3f086a)", - "P->V[93160:93192]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 974: Hash(0xda2c4a948570241d8c23b47ec318c811502c918f)", - "P->V[93192:93224]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 980: Hash(0xa8d09b759ae97d6635f625dc4ba490961e94ea25)", - "P->V[93224:93256]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 272: Hash(0x63763d587baffd3ed8bdaaa1f342729c79a5800516309246586f29320ab5c57)", - "P->V[93256:93288]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 293: Hash(0x2f11ddc991402f91ce04f15c41dc2b1cd981177350b2e5354f02d49fe2f0579)", - "P->V[93288:93320]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 294: Hash(0x3a8b2ee9e5cb2bd1081554382d9f1a428e757ba3e1aa6e8dac4a746da216172)", - "P->V[93320:93352]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 299: Hash(0x45a0d0ae54bb58d9ff5fb0246e4536a8d68d9055bd634f71391ebb595984691)", - "P->V[93352:93384]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 328: Hash(0x124c882427662e3602cc68a65bbe5368e3e0a3822e3d98f01648c8bfaba0100)", - "P->V[93384:93416]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 333: Hash(0x4aaaa1ecdd624c35c0d4868fac96fa49b4aebc8f1fafb2326be1ffbc53a7a4a)", - "P->V[93416:93448]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 341: Hash(0x56979de1ab8159be2a775b7e957ae1cc003b1a2369a09c16b28461913ae0a0e)", - "P->V[93448:93480]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 370: Hash(0x67dce3a0b9f064ba84779bc4ee5bc46c33b084c27c62517bccb7a0d7c7e06d8)", - "P->V[93480:93512]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 379: Hash(0x54305f9f0fa46ba6c838ebdaf9948666456318b1ce6ad854b2e8a17c5bdfb6)", - "P->V[93512:93544]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 393: Hash(0x53f441ebdb7ecf999ff3ca38771f9f5e8520535b312c793ae44b7d0cf96bf97)", - "P->V[93544:93576]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 424: Hash(0x7988e30425fd397684cacd099af387e44584c6d7ead73114fe5836dee78543d)", - "P->V[93576:93608]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 431: Hash(0x26fd8ff94fc645930fee6c5d00f42b5c64beb03882d78421d52b93b775a4b14)", - "P->V[93608:93640]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 434: Hash(0x2454e33ae07d26a4658cdff22f7bb1c9754038f666abaa07de1a36de970ef21)", - "P->V[93640:93672]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 474: Hash(0x1fbac7036393ec9ec8a65d3275ea695953851f7cb2a311689c24b6cf633ddaa)", - "P->V[93672:93704]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 486: Hash(0x6e77980bbb6ba4057a76554f3f91ba042e6b0cd757e1c2a0a04335497818a6d)", - "P->V[93704:93736]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 491: Hash(0x3ca1362e646cfd5d3d0a8df61ce5f33d57462934db5188f418bf54ee90ce9a3)", - "P->V[93736:93768]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 137: Hash(0x6870a8c08da1d08a2f92780f19b22a827f5f8b3315089608e3ca2d1461d4356)", - "P->V[93768:93800]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 148: Hash(0x5c44776d1cd7173f14e1b23e0ef7615ce57f8779e43134841af5d58aeec2a1f)", - "P->V[93800:93832]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 165: Hash(0x2649d2a704cbe861eb3914f4fac0f8a3c3d1e25c79d769dfe179cfd5e720739)", - "P->V[93832:93864]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 167: Hash(0x56d9793a902bc7f1b8a591040518c05183c2cda4fb4ad9cc9b1e5b2958e5f6e)", - "P->V[93864:93896]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 171: Hash(0x6038bdf88d9b5a4a4df63fbeac2e0d53c9e58622bff4101b65092dce2af3c7e)", - "P->V[93896:93928]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 184: Hash(0x58e77ebca8fa19c9d0c065a87b16607f1aef19fe94ab9c4ff633d9b1680cbaa)", - "P->V[93928:93960]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 188: Hash(0x27195e6268570aefa47c8b0771773e51794bee2bf389fcb644d698bf44acf41)", - "P->V[93960:93992]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 197: Hash(0x15eae205790086fdc1c5a691694a739abc6f3122a84f64be2eb4af93f1a46b2)", - "P->V[93992:94024]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 213: Hash(0x184fd41d7d4b4be10fef9dc85cdd353cf440c10a238d0a3e6a3c9fd82a95c4f)", - "P->V[94024:94056]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 214: Hash(0x6ee020278b2b46d811a6f9b8a02d9ce9d3de0413cede9cc8904fb6f76d8b2c)", - "P->V[94056:94088]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 216: Hash(0xc3bc4ed819bd625a47eb7abe898fc352d54f866c432ce6f7ff561dafa03bb2)", - "P->V[94088:94120]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 236: Hash(0x133a4929a79f1d84c054b9ce9710d611e22c32550859f883ae663e1bbcb80da)", - "P->V[94120:94152]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 242: Hash(0x37424ce231ec776e80913c3dd3589f7cf7620fc0a80e77082c75727b8d703de)", - "P->V[94152:94184]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 244: Hash(0x7137d6a4bfec09bb83edda079dc5739f280ac6cb6bf1e28721cc74df779fb01)", - "P->V[94184:94216]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 69: Hash(0x14198ce36c15200e2289e76c12d80a212d4edd436244868fac761b32ad061f7)", - "P->V[94216:94248]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 72: Hash(0x3cd67e8e77c502dae9f243c74b2f46e319b4eeec3f12b4817d5b792fa9f2aa3)", - "P->V[94248:94280]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 75: Hash(0x905c5d24fe5e898ecb13c5d249cb0a4c63d011c4aca7b5236ce76333262ba4)", - "P->V[94280:94312]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 84: Hash(0x7cb6f21a62a41e028a6cd43c6c7d429bde91d15e666b333393f54ff570826e)", - "P->V[94312:94344]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 93: Hash(0x7c988f28b315a0da3f402504cee163c00e9a8e057ac585341f1a0de1c07f974)", - "P->V[94344:94376]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 95: Hash(0x1ab70501d46e77abf5ab16d5b33bd173078d6eb46c5370083d138f0420a96b7)", - "P->V[94376:94408]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 99: Hash(0x6f074d2b3f8059823200c7585ee16f9085a52735ba13b832720095b74eea484)", - "P->V[94408:94440]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 109: Hash(0x50c5df4dd70e879dd755f34c5f4a0e06b785705f63c0312aef60670b7f0e74e)", - "P->V[94440:94472]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 119: Hash(0x79c8c55e86eb49b84ab20e0ac946c5523e4213ad2505c94308b9ed9bf96075d)", - "P->V[94472:94504]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 120: Hash(0x3d52a88a7bd86c65c943b9d9e743fb3b03749946d731d88f0ae5cf1975ff2a7)", - "P->V[94504:94536]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 123: Hash(0x170704cb71704bf855834a4f4658ab405e710c6c86cbab81cba5a493caeac0c)", - "P->V[94536:94568]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 35: Hash(0x550230d2b3bc696a6a10c5a61e1059c95da9204ac63a95d02bf5c534fe12d5a)", - "P->V[94568:94600]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 40: Hash(0x230c8f22ad537ed8442e66fd21064f518d4c57ed4e5ca9c3883e79713c27980)", - "P->V[94600:94632]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 43: Hash(0x780cfe783df180257e0c4966c32730c8f1174a80fc152d29fe8b539c567a9f1)", - "P->V[94632:94664]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 48: Hash(0x6aa5692dbda2e0e95dcf474639297ee46d967bb9ee8539e5720b364a6035055)", - "P->V[94664:94696]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 52: Hash(0x678a80dca37624c32b47e393fca47c1078bb34ede096f68d94a516e67eb1fe1)", - "P->V[94696:94728]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 55: Hash(0x4e1758925d61a62fdff3adbda606e4033b876e9d28e310813f73b848fb3d4c5)", - "P->V[94728:94760]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 58: Hash(0x1dec2b1cce66c19bbc796ac489d29d74cb3293c21f4eda90543d35c7a325c34)", - "P->V[94760:94792]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 16: Hash(0xf502cfcc6aebb768321eccc2768fc6d1e3a2a0a210047bccf804977ea4c7b2)", - "P->V[94792:94824]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 19: Hash(0x29d007028252482148f598a273ec3ebaf92c1cb5c133d09b1b5897dc9b50e36)", - "P->V[94824:94856]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22: Hash(0x575c21db25057779d4a7260f627104eec0005cbe72bf434a8a3cd775c083e93)", - "P->V[94856:94888]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 25: Hash(0x7816ae70f3fb7e7fd2be0214f22e625ab3fbe6c94dafa747cac56fb594718a4)", - "P->V[94888:94920]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 28: Hash(0x67fcc77aeac59818b145fd42647ba09a4bef4362ba447fcac8b2d6c4b1287ea)", - "P->V[94920:94952]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 31: Hash(0x52354738def083bcb45186a1676779d7cd4171f0a846a21922cea6bbc06974)", - "P->V[94952:94984]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 0: Field Element(0x6eda441687142ed93e9f19503db80d933a6d7e1a748aa4837bdda2fdc782ce2)", - "P->V[94984:95016]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 1: Field Element(0x28a74995c9fe497ed67e646aae2989e88b612ddb78526d8ced1cdc00743168c)", - "P->V[95016:95048]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 2: Field Element(0x27b90aef5b42b3531722b748000d24face6190385288b03e298359d3d9da3f5)", - "P->V[95048:95080]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 3: Field Element(0x333ff5d3635785a695ef0041d81073958327ea29d58a95594e5d5329ffe572e)", - "P->V[95080:95112]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 4: Field Element(0x143eb7343d374bb315342dafdf544854f2be8aae7fb5f92722c8aa2ad3f676e)", - "P->V[95112:95144]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 6: Field Element(0x612106680e219b7b8895df9b097a7ac5b75133fb2572efdb955b64b43a5a838)", - "P->V[95144:95176]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 7: Field Element(0x23b618494e049bbbcfa633deb8593f3f406b9189b7bddf704720c29a68095fc)", - "P->V[95176:95208]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 0: Field Element(0x316f150dba861ee63acdb7fd19116f6c26bdcb8d0068a609d9449bd060e9c8e)", - "P->V[95208:95240]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 1: Field Element(0x580f81cbb6a4176f5ef79d2c891b6e7bf5e165f71aff7efa018862a3de7e32b)", - "P->V[95240:95272]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 3: Field Element(0x1f05e95e72f9fb043aade4d779b5db9b5a3131c2a76e22fb5cc82fdd1bde7a7)", - "P->V[95272:95304]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 4: Field Element(0x63c14db4a81c6124e232bc3921c4b982a5a5f2541c9b33594dcf968f130f4ef)", - "P->V[95304:95336]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 5: Field Element(0x2bc61843ebf250a4db63aebc4099acc2d18abae6486697b7388c10de959bfcb)", - "P->V[95336:95368]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 6: Field Element(0x32baccfe978775ce235316793fcb3f136546c3a14348bb51497f0c6c10abe87)", - "P->V[95368:95400]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 7: Field Element(0x66964ac6ae4facff087d6addef5bd891d4f1e4cffd440eca560e36ef533e11d)", - "P->V[95400:95432]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 0: Field Element(0x7156a5a909416434423c446eaab7d207b7083e4406a418605524f9ef7949c41)", - "P->V[95432:95464]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 1: Field Element(0x168e4e43e50e85825f11e66efe4d5a22b62fbafeb622f5d9cacd52810f1313d)", - "P->V[95464:95496]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 2: Field Element(0x21d1c164354618883624c3e4bb05322566b27e212ab6f63034ec5e870dd86f)", - "P->V[95496:95528]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 3: Field Element(0x1595a83391d7d234fc17f299dc6a5e5b37dff63abb2a56dc7bd74f4a53f88b9)", - "P->V[95528:95560]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 4: Field Element(0x5ef0630b2ec4f82f288ebd06abcf2593bfee0207f916658dc82bfba77e93579)", - "P->V[95560:95592]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 5: Field Element(0x172dbed56868f634154bdcc2c5dc3ad992ac62612d2d2a040c911897fdd8ac6)", - "P->V[95592:95624]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 7: Field Element(0x67500ac4f9a0c185c03b39d66be7b8ee7b62b099d13dfd009d1136b29b86af0)", - "P->V[95624:95656]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 0: Field Element(0x35da51fbfcf15ca7739e8439bb951695ce28d0d6ef1ca65a9db43af3e5ec54)", - "P->V[95656:95688]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 1: Field Element(0x5c8d623bbb417945b2a73424d977d89f799d59dc93de702a9512c089ff0863b)", - "P->V[95688:95720]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 2: Field Element(0x198bfe4d797ed4bcdc082ffcb1cbbea987506933d8c09ff4e34c5d23daf0953)", - "P->V[95720:95752]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 3: Field Element(0x664af3af38a0062f80c57a79d94a7d8c8d7a7afdcf1e6835d6d7ccae253bc30)", - "P->V[95752:95784]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 4: Field Element(0x3e807c76f1c17b6cf6790f070aa35db21ab5a21ca7d3e2da34bf0992d4e42c6)", - "P->V[95784:95816]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 6: Field Element(0x6ef27b09027f8680269983f4724c02c2564e5f1ff1217285a5a80f6acf41e61)", - "P->V[95816:95848]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 7: Field Element(0x6677a69e618ace961025d0e11cdd61d0db17399d96f0e01b7f1518794eddc5a)", - "P->V[95848:95880]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 1: Field Element(0x7f322b32a53f853eb92b91ed4161c3006aaf13af64fa3e45af742f9dfcb1749)", - "P->V[95880:95912]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 2: Field Element(0x5a4a74278be0e12d2a1fe853c797e2ef628fc8318c3608efdbd8b182f911b65)", - "P->V[95912:95944]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 3: Field Element(0x1693497bdd62419bb66fd82d7f3325cbb1e74cbb263eca42c82465fb1f80465)", - "P->V[95944:95976]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 4: Field Element(0x47a7544352e114f514b11e2ee3690a6189add35cede89d56f969aa43c892360)", - "P->V[95976:96008]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 5: Field Element(0xd3a015c8531ed1135b3237e1b5b56242693df522ed22c80b1401e08615c5ea)", - "P->V[96008:96040]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 6: Field Element(0x252b3de13e09c4f69dcb2387862a2f03b36a3697c3ce534307f2f73fd91d16c)", - "P->V[96040:96072]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 7: Field Element(0x288c8928308d35f97f09b916cdce63a37e1a78f5cf8545557d86980d42568d9)", - "P->V[96072:96104]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 0: Field Element(0x5528b798cc4d64a4358010115967c46bc5eac6b687dea0ca924271d5754e38b)", - "P->V[96104:96136]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 2: Field Element(0x70c3381ad550651462eb6389103150ddebfd59027f3f53c01e9ab47d5b826ab)", - "P->V[96136:96168]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 3: Field Element(0x5bb8f580a1cd08adf63c42544af1e14e7b268d963328d88d0b217f313ed5d18)", - "P->V[96168:96200]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 4: Field Element(0x1087dfefab8249046524fbf75db32218c526dca599b4f5061dab60a5a5fcf91)", - "P->V[96200:96232]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 5: Field Element(0x707541923c91cc9cda8692570685a1316f21e2a4a1c21f4f394e9bf0793932b)", - "P->V[96232:96264]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 6: Field Element(0x222b177c3f6d13742053ccca2e620ca8563c7a99e26bae17da8685eb6770e75)", - "P->V[96264:96296]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 7: Field Element(0x21c1724d5065b8827a0ea25cb27c1df7f54eb3e01863b958aeb312cad3b1d58)", - "P->V[96296:96328]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 0: Field Element(0x1ef7ef6f1b76903c01efae2bb3e95fa9fcf65da625ec3971f15fd1859e0991b)", - "P->V[96328:96360]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 1: Field Element(0x528a8cc045e26682e8e82a711a9e13203ee4e04e45aca56d8de5044a9633097)", - "P->V[96360:96392]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 2: Field Element(0x6b8bc244abe799323e4b0d60b0cb7ef438eadecf8b072f1c253d1a7a363b88a)", - "P->V[96392:96424]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 4: Field Element(0x625524d94dc21877adedc0df06fb7c98b9a63f4d22b85302b9ed6a17ec0a2cc)", - "P->V[96424:96456]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 5: Field Element(0x47b6a1500fa9d2e6e41ea8ed79c30bb1adfb802a79de019277cf96b07106429)", - "P->V[96456:96488]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 6: Field Element(0x6d7b9d513a630c92a8c901e9f13b27f7d7f2980740d123e2edece2f9e545686)", - "P->V[96488:96520]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 7: Field Element(0x7221c1dc8d1cd18c11433577cd8dfff0a1265a09c903e90e1aa03cbce80100e)", - "P->V[96520:96552]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 0: Field Element(0xb4b0d26074bd9a1d3c30af0b5cac4ba26e320ce72a2e491099c645a01eb76)", - "P->V[96552:96584]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 1: Field Element(0x2ec8a494c8a3fc90a680e0e463e6a8b4ab975481effbcf3c28362412a0cd8b3)", - "P->V[96584:96616]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 3: Field Element(0x3b6b318a3cde30b5e1d21068c39b27275b9f19773b7f9a5c9768d5c87836682)", - "P->V[96616:96648]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 4: Field Element(0x1fed21afc42dd6781d80a33882ea929243698bb226a70c0bb2373a40d94e27b)", - "P->V[96648:96680]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 5: Field Element(0x3c8274c6b89c57d93b27a38c80606f221e4487ac0279469bdbd4ef44d8e8d92)", - "P->V[96680:96712]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 6: Field Element(0x3afce57d83adc44165a85397126cc1826c6c225db571cda31bd6b02685ceecb)", - "P->V[96712:96744]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 7: Field Element(0x3157226351e31c9a2e9587bd1c71f0d6c49ceadef4c596f7ecc1a96b0e23415)", - "P->V[96744:96776]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 1: Field Element(0x775cfa998ea59397640ee89970cd072ecb13eeaaee8cd0bfc948083ae6cdfd7)", - "P->V[96776:96808]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 2: Field Element(0x4aabb2105946403265dc99292b66bc80fbc289d46e05920f550093e09ad9939)", - "P->V[96808:96840]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 3: Field Element(0x4daec686b79b5b9b1f849934e6ae7691a6b8453157381648acb36278314799)", - "P->V[96840:96872]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 4: Field Element(0x55d9aae301e0f79e4d34f06ea6a5ae5a51bbee869c8178233e9540afcda2b6f)", - "P->V[96872:96904]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 5: Field Element(0x2c0f9ebc7082e6c255a8f273c1bf90ace4badb74fabd998551da238d861bf0a)", - "P->V[96904:96936]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 6: Field Element(0x34296b00c3b3ffe0272e23915ec9d07b65bd66d012877c3adfb4166d3773858)", - "P->V[96936:96968]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 7: Field Element(0x5861193b5372be039d3a14b80de26783e5db87e6dcf9d8957d2394a29a28124)", - "P->V[96968:97000]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 0: Field Element(0x3688c5356aa6ecbca45461e3a432503fa2b916906f80897d3569ae6ac4b1aa8)", - "P->V[97000:97032]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 1: Field Element(0x362a3ec8cab2a6d9dcd8a86d67d32298260c9d17258762e05a6d6221298e07a)", - "P->V[97032:97064]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 2: Field Element(0x47e4b99fab23239ff17f684601d22142d972b3a0187cc0951c94ceaafd76365)", - "P->V[97064:97096]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 3: Field Element(0x297c29931bcee664029d6390a46f0788acb6626caaf9cd494709535149e8304)", - "P->V[97096:97128]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 5: Field Element(0x123b38e8244feb69fadf4797d875feb8537bbf68abe658affb96a50e60f5b3b)", - "P->V[97128:97160]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 6: Field Element(0x6d18804e9b1aa201cbbe97b5c9e0b8252da9840bc21887d4c947687de1e27bd)", - "P->V[97160:97192]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 7: Field Element(0x2e5589a7454f4794f433ffc4c6afc66e31a5d0284ae30ba7445fa67f1656669)", - "P->V[97192:97224]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 0: Field Element(0x100e0ed978614c2d30aed900c0ff2cddd6b59f1aad5a74c4b9d508e76ece089)", - "P->V[97224:97256]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 2: Field Element(0x272e6c651c185c753369ffaf68a2d8010bb29d044bcffb7aed86a778e8c6308)", - "P->V[97256:97288]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 3: Field Element(0x3cfeb9cf3afe96ead6b5fe0dd630c4c316a09ed3e1f78c18fba3727400b74c)", - "P->V[97288:97320]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 4: Field Element(0xccc0f3812d2cb1fe25465bfb03dde92d02dfa815a2b023279095d66f55b48f)", - "P->V[97320:97352]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 5: Field Element(0x3cddca0ecc9366b5d437a5d778f48113410c212223047b455d11cd41265ea83)", - "P->V[97352:97384]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 6: Field Element(0x9ef953fbfe0ade11b67a0b8dd5a549830a52816965b845578a1ec4a6a1c0a3)", - "P->V[97384:97416]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 7: Field Element(0x7edc481348dc3ee3562d02f0b7d03ef87ac8afe74a6fcfa1d304a21f6c9c158)", - "P->V[97416:97448]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 0: Field Element(0x368d79f4649184d10432be277cb61f24f852e764a8855277ac481a159e3df78)", - "P->V[97448:97480]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 1: Field Element(0x4fb900755029e7ae2a815ab01c627b6d74767d0c363ef0e19e72dd809f8905)", - "P->V[97480:97512]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 2: Field Element(0x677f7577e1b6cee58ee914cb553b58bc562f36830e04bec10104021571aa9e6)", - "P->V[97512:97544]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 3: Field Element(0x2436cfe6bed762d55269127d60fb56bcd368e6f1cea4b8fa29bf7a5a5bc5a64)", - "P->V[97544:97576]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 5: Field Element(0x39d8f2784efb8aa68aa1df39c315ff626ea24bd15c843e9299d8285887c1f6a)", - "P->V[97576:97608]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 6: Field Element(0x57d511a97053d1e473c24e3e98603a638d28106e857ee1fdddad35c987926c9)", - "P->V[97608:97640]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 7: Field Element(0xb99e61e2bef74224cd7b4a730d2bb5cafef4e13656fe6d65b74524c644a2b3)", - "P->V[97640:97672]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 0: Field Element(0x509f03b062efa3b9f9920399820c82a74a6690921cf35f36de20c0004bb139)", - "P->V[97672:97704]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 1: Field Element(0x141f3f14e869db3071711a247551cd6f54d66cbdb694cdaed1ab89ede6e3ccc)", - "P->V[97704:97736]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 3: Field Element(0x4b30474f5f40b38cbeec8c357db7bf9349d9d5adc638a1caf5c17411a379d3b)", - "P->V[97736:97768]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 4: Field Element(0x1bad5c14f5b3ee4920389e722862c4d9becab3fc2e903bbfb52165a1889c817)", - "P->V[97768:97800]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 5: Field Element(0x4ab81726fbe99c98fd7d0258c3adc522c885387991804db5b6982644a1099fd)", - "P->V[97800:97832]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 6: Field Element(0x5279a434d669a1e5e648eee74b67a12a9b10a5670a5ed6a2559449b959d997b)", - "P->V[97832:97864]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 7: Field Element(0x5ef6e9f64de1a788a5be5f0ad6b6dac15a87d6a7e23bbaaf03e2910d61244dc)", - "P->V[97864:97896]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 0: Field Element(0x3519ad17197f25ce95d5306a91178dd262e9411803615f89c533623bb15cf72)", - "P->V[97896:97928]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 1: Field Element(0x17e7c07236378220388da5d451450cec615641db3dcfbd499329bc75d0b6982)", - "P->V[97928:97960]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 2: Field Element(0x36924507081a885bcb1f60e058634e3f90f79b984fbcad70d2bba463236d810)", - "P->V[97960:97992]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 3: Field Element(0x6f9a1495da3632fd97aac302eb159487cbe39c1c19deabca3d8053197dbda81)", - "P->V[97992:98024]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 5: Field Element(0x65de105273d60b01be45661422515cbbbc2a3c1c79b254bb970e81923b334bc)", - "P->V[98024:98056]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 6: Field Element(0x6ac9e67d92da67589eaf68eea24b4de5f45fde8b75c44b0878fff3d33fd1c40)", - "P->V[98056:98088]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 7: Field Element(0x574adf72afda29f7b844b0dbca535ce9435caa4c01e04ad31d3f2b8b4b44dc)", - "P->V[98088:98120]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 0: Field Element(0x44aa416ecda2d62849848bde9f43a8c7997159c18059f5065196ad9c39a763b)", - "P->V[98120:98152]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 1: Field Element(0x3dae46d59f8f47bc3497fca769f0ad66b53b830bc2f0c6ff397605a8b60446d)", - "P->V[98152:98184]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 2: Field Element(0x10586d49d9b989a8ff9da6a0462da14af68b67ef9114b75444729fcc02af91f)", - "P->V[98184:98216]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 4: Field Element(0xef981fb24b2168fe7c992f97465f7b161316272730907d4f5dcb46886bf57f)", - "P->V[98216:98248]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 5: Field Element(0x12b4c0046b7bdc652c3269761ad0a3821be0d24949fe4ffdfb06922b23e8519)", - "P->V[98248:98280]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 6: Field Element(0x731282d9bf0dc3238e7b04e9c0ca7fd49c09dcd5ee5ee639722a0d71ff73f84)", - "P->V[98280:98312]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 7: Field Element(0x203fb72d2a2e65717854f28d35c039eb2fb8624a9a9547d61c47b3aadcfef67)", - "P->V[98312:98344]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 0: Field Element(0x2b3583487b274b3c8ad1357a071c0f9e6e51faf6c87d1710724bd89ce63c936)", - "P->V[98344:98376]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 1: Field Element(0x771e101096f58c290b7a03101777b861c8b395080642c526a3ee83e60f08b86)", - "P->V[98376:98408]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 2: Field Element(0x32b0222b8797e2e74b0d177d7a4d9919a08ad89137a3cdca89d1f564ebfeee2)", - "P->V[98408:98440]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 3: Field Element(0x18be033deefeaa28f130648251fadff63c68445464e2e12f954b620dab3d777)", - "P->V[98440:98472]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 4: Field Element(0x3fe7467e523cd0d9b494b47be5b7115d4f729f151b2534dc2331d421357cf41)", - "P->V[98472:98504]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 5: Field Element(0x1380c2a52d8e537fa09785056cd64ad3be51bbcb6830f298c1c48cd0f561d79)", - "P->V[98504:98536]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 6: Field Element(0x44264b98a1685bc67ace50487371c52867cf645c59d44c729b9d9db98643936)", - "P->V[98536:98568]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 0: Field Element(0x707784e24b8548e0a435e5b977507cce7afbf86905adbf6e2fe7bbe5786bbc)", - "P->V[98568:98600]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 1: Field Element(0x6cecc16ba10670545bae4218468c67434c3652a0e241ea10256f00fc04dff31)", - "P->V[98600:98632]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 2: Field Element(0x35edff287222db75df1c0595537ff275406883c443ba78603605bba94a02588)", - "P->V[98632:98664]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 4: Field Element(0x16b678ef7dc5aec5ab27aec8c883864eb84c265d706dc8865178445e285dd8e)", - "P->V[98664:98696]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 5: Field Element(0x444aa3b3526a7373dd561101dbe9338752854fb60f1da27e36f68556fdce59)", - "P->V[98696:98728]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 6: Field Element(0x340871421121d964c9ca804bb1bd9af030933f6ac7af5a9f4cf43b5e13d1aa0)", - "P->V[98728:98760]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 7: Field Element(0x12164efabab307101d465274849de00b1fc197100a5200864d8fd2b63c08b17)", - "P->V[98760:98792]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 17483: Hash(0x0000000000000000000000005c4c0fbe178c80f8919f982e332365e5ebb63109)", - "P->V[98792:98824]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 18707: Hash(0x0000000000000000000000000e29961b998e402915bf12aa5407688f6593c11d)", - "P->V[98824:98856]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 18924: Hash(0x000000000000000000000000d89bbfa0048bf196ed59955211665e562d101144)", - "P->V[98856:98888]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 19074: Hash(0x000000000000000000000000e6063a37b3d53585807d8a8aa0bec5f4b6a7eb16)", - "P->V[98888:98920]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 21079: Hash(0x00000000000000000000000068af4e8d61e11b1d6d47211cd7668a6f91ed8876)", - "P->V[98920:98952]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 21281: Hash(0x0000000000000000000000006ab615d626fdb3efcde54d337ba4dd25db7a2511)", - "P->V[98952:98984]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 21782: Hash(0x000000000000000000000000877c623d85492a907494ac26d1ba0ecb1039bdb6)", - "P->V[98984:99016]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 23769: Hash(0x0000000000000000000000000557826c7c0fb2e63a889671471dd3a1422e93b9)", - "P->V[99016:99048]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 23777: Hash(0x0000000000000000000000005fcb2470edbaeffeea916ab382537c79bf2217b7)", - "P->V[99048:99080]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 24230: Hash(0x000000000000000000000000ab000e5907f8cd2cdd07dfa0227dda13727b18ed)", - "P->V[99080:99112]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 25098: Hash(0x0000000000000000000000007dc09f99f148fa311c58cf7ad0372605769ca73e)", - "P->V[99112:99144]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 27217: Hash(0x000000000000000000000000914e2b31b3acfd17cb88c06ddb178212f710c858)", - "P->V[99144:99176]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 27557: Hash(0x00000000000000000000000070ac83cc341c5d9bc977265104dcf50a59367efe)", - "P->V[99176:99208]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 27888: Hash(0x000000000000000000000000bf6118c9bd29dd5a02728eb484a45471c5b096e7)", - "P->V[99208:99240]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 30438: Hash(0x0000000000000000000000001a605f27b446dc7c769fba1c391bb8b3f0a9116b)", - "P->V[99240:99272]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 31225: Hash(0x000000000000000000000000b6c49b3d890af624f425e01def122fcbf4401831)", - "P->V[99272:99304]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 31417: Hash(0x00000000000000000000000074b3221a0ce6ec2ea8f31c3de6d7f0e8398c8d1e)", - "P->V[99304:99336]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 8740: Hash(0x0000000000000000000000007f4b4b836c9e671bf89e87de1f24c481006282a0)", - "P->V[99336:99368]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 9352: Hash(0x000000000000000000000000c0efa90d5a3a4db35ec2b7a5326686f4db3d7234)", - "P->V[99368:99400]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 9463: Hash(0x00000000000000000000000022c2b71a2343c39d9573ff74a71d62770c22f9f7)", - "P->V[99400:99432]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 9536: Hash(0x0000000000000000000000003a3aeed85bfbd0491c14e344bb960c5fa66bc8ca)", - "P->V[99432:99464]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 10538: Hash(0x0000000000000000000000007f2bf00d574737ce3c2cc26ff34d857bc6926196)", - "P->V[99464:99496]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 10641: Hash(0x00000000000000000000000012a56212fa431b5c40746ccb1c9e116cfc10b690)", - "P->V[99496:99528]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 10890: Hash(0x0000000000000000000000005fd71ffcc12bbd8a8c2a084b498a942f689e5d2a)", - "P->V[99528:99560]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11885: Hash(0x0000000000000000000000005a4f5a9036194466464749fcba9382d758240b0a)", - "P->V[99560:99592]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11889: Hash(0x000000000000000000000000b72a9ea2d58ea4287c7cc6b6d3b20759a3eccef8)", - "P->V[99592:99624]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 12114: Hash(0x00000000000000000000000070967d2364a048dcaac704e4f802d6d6ec22927a)", - "P->V[99624:99656]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 12548: Hash(0x000000000000000000000000efef36dc7a59ed4868dd801c2d29e4e4df861681)", - "P->V[99656:99688]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13609: Hash(0x0000000000000000000000001ee7d3ee42b83ced94d6d71c40ec15a000d9be01)", - "P->V[99688:99720]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13779: Hash(0x000000000000000000000000197957d52fd5a571274684fabf5424bd8bb6fb0f)", - "P->V[99720:99752]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13945: Hash(0x000000000000000000000000ba5e64ad41aeb282c83bdd6901e90b0bd17c7e59)", - "P->V[99752:99784]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15218: Hash(0x0000000000000000000000005e7395e7017508739bdd3ea54e622d89d29d29de)", - "P->V[99784:99816]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15613: Hash(0x00000000000000000000000017443b5d98fc3a1efa44c9828441dd7ecd73e89e)", - "P->V[99816:99848]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15709: Hash(0x00000000000000000000000080b92cdc8c402594f830d861995e75b44cb7c6b7)", - "P->V[99848:99880]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4371: Hash(0x000000000000000000000000eed593bfef0dec0f5a41c737076590abd9e12b41)", - "P->V[99880:99912]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4677: Hash(0x0000000000000000000000008d484a0d544457445b5a55f627fb4ea00da28896)", - "P->V[99912:99944]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4730: Hash(0x00000000000000000000000058b52dcc7aed4b5953012c76b57d6610f62cf845)", - "P->V[99944:99976]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4769: Hash(0x0000000000000000000000003c1b2cc788cc0f0a2930a03bb28ff08288dfc4c6)", - "P->V[99976:100008]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5268: Hash(0x000000000000000000000000d8717ec474e78adac1e896d13df023c61456285e)", - "P->V[100008:100040]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5321: Hash(0x000000000000000000000000f60cd11c5052aa452e49ca9415aa97d531b96d1f)", - "P->V[100040:100072]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5444: Hash(0x000000000000000000000000548e4e70ed91008dc8bfc2e837ae543f69498e62)", - "P->V[100072:100104]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5943: Hash(0x0000000000000000000000005e1ee83042b23bdf7e14542280aaed334f62bd19)", - "P->V[100104:100136]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5945: Hash(0x0000000000000000000000007ed3bb52bd1d5a153a462fe83340541850f6b049)", - "P->V[100136:100168]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6056: Hash(0x00000000000000000000000075b753b5708c6ebd06dfa9c8238293ef406baa3d)", - "P->V[100168:100200]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6275: Hash(0x000000000000000000000000a07e8ef7a71cab21c96e1f04973c70427429307b)", - "P->V[100200:100232]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6805: Hash(0x0000000000000000000000000dc4f59d922645b74e52616268628e04d5dee09b)", - "P->V[100232:100264]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6888: Hash(0x0000000000000000000000002fd151f09619c839bc9aef34b44149fd4bd48cf0)", - "P->V[100264:100296]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6973: Hash(0x0000000000000000000000009250a3b3fd4591f62ece142ce1157df41009576e)", - "P->V[100296:100328]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7608: Hash(0x000000000000000000000000a6327ed6651b26f5ccd39f2f791f2738e1ec4b7c)", - "P->V[100328:100360]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7807: Hash(0x000000000000000000000000a294aa3e31b82e264df6d07a2fcab96a49d44ff5)", - "P->V[100360:100392]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7855: Hash(0x0000000000000000000000003732d52e4a089d3c38de33c1697f808b48b0e601)", - "P->V[100392:100424]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2184: Hash(0x000000000000000000000000e219e61e206bae72c152c09a6e3f45c03e90503a)", - "P->V[100424:100456]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2339: Hash(0x00000000000000000000000002d88d30791de3488f7f5c5108b1f93738594235)", - "P->V[100456:100488]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2364: Hash(0x000000000000000000000000ca381802ab4d2bca1efb05161bfd7af41172d75f)", - "P->V[100488:100520]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2385: Hash(0x00000000000000000000000055795435caca787363665d3b8bfdb8f73ab2ab1c)", - "P->V[100520:100552]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2635: Hash(0x0000000000000000000000001447ddb36203745393cb0ceb5654d9db9deb68c8)", - "P->V[100552:100584]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2661: Hash(0x000000000000000000000000e80c34ca72dc1470f602c6cf9fe92083aa13bb4d)", - "P->V[100584:100616]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2723: Hash(0x000000000000000000000000dcd77ab1bea18976905f5e791acb99a5252f335e)", - "P->V[100616:100648]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2970: Hash(0x0000000000000000000000000c3f597fcb399cbdf27fe7b8950a50f1cf8f0263)", - "P->V[100648:100680]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2973: Hash(0x0000000000000000000000005a1c3e3a074cd88023231eb1bd4abf94211aafdb)", - "P->V[100680:100712]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3029: Hash(0x0000000000000000000000006c24523eeaf940e93a932026aa1c5292db1eaf62)", - "P->V[100712:100744]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3136: Hash(0x0000000000000000000000004c1df3df81ac224b71d0f9ef575d25bae9174e15)", - "P->V[100744:100776]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3403: Hash(0x000000000000000000000000dd6effdf7ea07799795aa18913d57a0561071a9c)", - "P->V[100776:100808]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3445: Hash(0x000000000000000000000000bca05403d973287a0571a41fdfa8cd671acac664)", - "P->V[100808:100840]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3487: Hash(0x000000000000000000000000b09fb22991a68ae3f96339846f32df906e508b0a)", - "P->V[100840:100872]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3805: Hash(0x000000000000000000000000e4815caed1d8af82e39c8b719f461828a2f2bba0)", - "P->V[100872:100904]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3902: Hash(0x000000000000000000000000c91e2e3ead4365ddf898905725705e199f501268)", - "P->V[100904:100936]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3926: Hash(0x00000000000000000000000000d15bdc2308f99d472cdd1e5903ca2cdcb24a73)", - "P->V[100936:100968]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1093: Hash(0x000000000000000000000000a0fd6de5889078b1ddf7a37b8189611d3864b428)", - "P->V[100968:101000]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1168: Hash(0x000000000000000000000000d3c8fae8c947175e663efb1f884363fffcd032e1)", - "P->V[101000:101032]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1183: Hash(0x000000000000000000000000546f779e838b9a4d1580c941dbea3b85c9b62df2)", - "P->V[101032:101064]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1193: Hash(0x00000000000000000000000051042b209e4d0426a35d3fb115112c6ebf847a21)", - "P->V[101064:101096]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1316: Hash(0x0000000000000000000000002872e265846936f800bf7e2cbaccb05fa1ce266a)", - "P->V[101096:101128]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1331: Hash(0x0000000000000000000000005769630a1313aebf1bfe3f8a0470ef970a1161f3)", - "P->V[101128:101160]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1360: Hash(0x000000000000000000000000d31f5dc59af96b88292aaefddc6185821499f745)", - "P->V[101160:101192]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1484: Hash(0x0000000000000000000000007fb2deb4ee9c0b299274255d3edc836c3558725e)", - "P->V[101192:101224]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1487: Hash(0x000000000000000000000000a4b9fbbea3251fb35d37344617274cec9076562f)", - "P->V[101224:101256]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1515: Hash(0x000000000000000000000000d6a7c30ff048c841bea291a9f75ec92e14ac3752)", - "P->V[101256:101288]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1569: Hash(0x000000000000000000000000100c35e61f0749a99c6ef124fdb6f3e7c3d819ad)", - "P->V[101288:101320]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1700: Hash(0x0000000000000000000000001dd4e8952d3a165f2d2d4e02f4de3ca53777dcfd)", - "P->V[101320:101352]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1723: Hash(0x000000000000000000000000f4743673a23b220cd92f5dcf839997177c002ac7)", - "P->V[101352:101384]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1742: Hash(0x0000000000000000000000004a50e339a2ec20f0a346a8e935dc7df312f1ec08)", - "P->V[101384:101416]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1903: Hash(0x0000000000000000000000006e41c3af5d7c9862b795675dda40ab7faaf80265)", - "P->V[101416:101448]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1950: Hash(0x000000000000000000000000501c8c07610b22d987e07aed5d660ad387a9ce02)", - "P->V[101448:101480]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1962: Hash(0x0000000000000000000000004b85236d6e9e685f4d8172f7c060dc4dd1a73aba)", - "P->V[101480:101512]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 547: Hash(0xa710e9981b8847e196db67c9d65f3e6bd6f223c3)", - "P->V[101512:101544]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 585: Hash(0x9c6895c6924342a1b495bb2d0b8d72b6da1af5ba)", - "P->V[101544:101576]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 590: Hash(0x91ed2fbd8ea6aedba08babaa219693c99719b93e)", - "P->V[101576:101608]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 597: Hash(0xef7d039fb93850c7d19a1f7c0d7e53d569326a4)", - "P->V[101608:101640]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 659: Hash(0xedef789e0233e6b0c383a3e57e2eec9e450e3838)", - "P->V[101640:101672]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 664: Hash(0xf21a905dfd39808b879d9965788c6e612c0492df)", - "P->V[101672:101704]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 681: Hash(0xf260cb2d0b4a7158e20c4daf1adb794223c8b074)", - "P->V[101704:101736]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 756: Hash(0x67d2d5608d8927ea1af99fa6e179abc1363d31cd)", - "P->V[101736:101768]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 785: Hash(0xca76674925605a61605a967b30b8af953472fe8e)", - "P->V[101768:101800]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 851: Hash(0x635eb4b6af73663f61de783ee9fa64029a4ef992)", - "P->V[101800:101832]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 860: Hash(0x33432be799e99c83571b57dc027e71170a94a510)", - "P->V[101832:101864]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 870: Hash(0xe2b8df4b9a802dcf9eeba7d0e65d9ae269023be7)", - "P->V[101864:101896]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 950: Hash(0x940e7c85305bb6cc17200ddd9bce37e904935cf6)", - "P->V[101896:101928]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 974: Hash(0xfe43e40a39f02986a2fa2976ad8608e00662b432)", - "P->V[101928:101960]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 980: Hash(0xaf33a275709bd8951a4f24c38c8ab2199a9eb5bd)", - "P->V[101960:101992]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 272: Hash(0x611f305e09d8b8fe50e3aa396681876b4ec5c98bd0890e2089e7761e57410d3)", - "P->V[101992:102024]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 293: Hash(0x601595c365e5140fbec28007a83b6ee6a528b1e7598d03d1f9a2046533e8f53)", - "P->V[102024:102056]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 294: Hash(0x7245e1f033d6a134753c47096abf40ce38efd7bedbcc4050ad8a4fd182f992b)", - "P->V[102056:102088]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 299: Hash(0x79c26b6c43e36c3fb1381682e1233c46d3b4d03cae7a06f144d22e17a603808)", - "P->V[102088:102120]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 328: Hash(0x622084cecdc3869d661b461965a0bf98c9efcaa02c2e2e7f62024b8feec252)", - "P->V[102120:102152]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 333: Hash(0x58f6e6394d11cff915da9e671a6f2bf2d9f8de7325afe79f690ce595821f630)", - "P->V[102152:102184]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 341: Hash(0x6896c87a37419edea588ae1aaa10dba2ac858af79c9840149c94c46e262e682)", - "P->V[102184:102216]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 370: Hash(0x4da33c55893c6559550d7e3eb5765789dd575ec927de1651014769998b4c09b)", - "P->V[102216:102248]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 379: Hash(0x23dd798e8b5d69156302d1f3f69728abafa45e3e3be9b5c328ecb2e07f0d031)", - "P->V[102248:102280]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 393: Hash(0x14a0f895f30c3ce95256dd5becbcd465cebf05ccdaf2228be0b88bf9df9925)", - "P->V[102280:102312]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 424: Hash(0x635f13010b18a2c42d765c651b68750246fa597e6476825cd79e6c2e869fb59)", - "P->V[102312:102344]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 431: Hash(0x5dfd2545235b9ff7d0597c99d3d7059771c9ad51a98ad9fd12393ba2555545f)", - "P->V[102344:102376]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 434: Hash(0x3d64a5989c2a6216fe9a016183e5033c76091ef9e11e736a8eb1e219ea75ac1)", - "P->V[102376:102408]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 474: Hash(0x77c335bf37efa7ee62c1df9db6eb840aa1ea9fd368728fcbf570a1ccbdd25f5)", - "P->V[102408:102440]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 486: Hash(0x777367b9f8c436fd4587257f817e8c7bda3516d8bc2dacc5df03a38093e4909)", - "P->V[102440:102472]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 491: Hash(0x445c0fc94c596f93a8227b91bcf57a22f445847f97515c0c9fb5f8e0798bc9b)", - "P->V[102472:102504]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 137: Hash(0x3f7ddf10e20acb595faba29d7aa4b5d678e41f1e66edef84b5c137585f6ca2)", - "P->V[102504:102536]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 148: Hash(0x5fc2de33d00f7aac433e0f5c69dbc445a0dd0c267cdb1d860243da991d0e620)", - "P->V[102536:102568]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 165: Hash(0x3d06492755db149eedcc1c944c72cb6805a0a20f2ecc27fc2821689d3d34ba8)", - "P->V[102568:102600]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 167: Hash(0x5073c11a54ae906e98cfc20dc6d1e81c5e0e249ffd94783db8d1493235901f6)", - "P->V[102600:102632]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 171: Hash(0x6f8601617a07c1a337ccb2106ab83c0ab63b4f18ae18f08c4db01fdd7c6216a)", - "P->V[102632:102664]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 184: Hash(0x3289ad97034270d36439de83da7aff7019444cf2ae6a71d672701919946197c)", - "P->V[102664:102696]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 188: Hash(0x2a5c6189ade4b3765a692c1248241c1a8a77f736dfaae3c96261543f4ed9e4f)", - "P->V[102696:102728]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 197: Hash(0x3861cb10eb36c93d2524ef11cbd6f31539f17c05735da6261346252a269dc33)", - "P->V[102728:102760]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 213: Hash(0x2ff428ec184b560775bf0adb88a6cba525df775f163539b128e8681cdaacbf8)", - "P->V[102760:102792]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 214: Hash(0x7af216e2f0cf188140ca26d420f54251d44b9ceaf77a6123e6d73f5b96d9693)", - "P->V[102792:102824]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 216: Hash(0x5aa0e8bf7519a3f3e8310b4e774a6894f904c42be17d93e15fa7900b6d6e38d)", - "P->V[102824:102856]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 236: Hash(0x32fe31a899defb9d8e92eb0e26fd5eca70a5e98867c1e9dfd826a5dddc04ca1)", - "P->V[102856:102888]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 242: Hash(0x716a64f320d5510aab97b4520a28ec811ee25686cd92326262913a876535984)", - "P->V[102888:102920]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 244: Hash(0x2654427416bac2d1c7cd023e175f54297c2e5dfac346c6f56b49c1e1f41fde7)", - "P->V[102920:102952]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 69: Hash(0x4d6634df7942deae9772388597a6f83d51f27658e6eea9211d163035867e5f2)", - "P->V[102952:102984]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 72: Hash(0x38817f2628589e760db624efd50a0ac08a41408b4854ee46088db7f2d417797)", - "P->V[102984:103016]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 75: Hash(0xc0665f9edd07abc6f40ba84015527c315e8f94d121297b2edcd6102d9ca1e3)", - "P->V[103016:103048]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 84: Hash(0x2d14cf3d122365619a7e41f2327756cd931861dc99c0a3c3f49f447088d6638)", - "P->V[103048:103080]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 93: Hash(0x5a8511647141a612faf10b52d301854309682e40f9af4ff841aa9f0bffa31ab)", - "P->V[103080:103112]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 95: Hash(0x4570ea2cf11895c97e9e15426a9a1d4275b3182ef4650fe6f3bffd1a7cbf868)", - "P->V[103112:103144]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 99: Hash(0x2813ff4be799a059f7a1278bc7ea7ae422d6d1cdad6ab0eb537e76b37f74160)", - "P->V[103144:103176]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 109: Hash(0x604e0086e877e1199948561630eaa79931e46531e7b9ecc59d6162dcce86613)", - "P->V[103176:103208]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 119: Hash(0x37e1c9e6127679ba2f3eb1a3f1da41e065ffcfebffa743c12448c06859d684c)", - "P->V[103208:103240]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 120: Hash(0x5e17d61979448f56a83977a3cccc9c3fedb81d04756f29f42c66f289b5d79f1)", - "P->V[103240:103272]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 123: Hash(0x13878c20d092a187b24fa174836283f890c0ae5a29a4ca3488dffcf059056e8)", - "P->V[103272:103304]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 35: Hash(0x368257e1410d031a9ea9068d8c6ebbe7a72dcd8343bf2a296da92abf442b34b)", - "P->V[103304:103336]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 40: Hash(0x1e342f4e0f37737409e134054a37e3e23fe15270bd6756b6d01edfe574160f4)", - "P->V[103336:103368]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 43: Hash(0x66650d99616c7e452afad08bea371699b01f6c6eb4cc7f858b84264b97bb74b)", - "P->V[103368:103400]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 48: Hash(0x9afb8775666a303e440bad1a4cdc575ab80c533a76566d85e87c98ee18e2c8)", - "P->V[103400:103432]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 52: Hash(0x35f0b7291e3115182da7c20a443e3689b962f990dba70a61f4c930fdb4123b4)", - "P->V[103432:103464]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 55: Hash(0x7542475bf44d141d85bae55698bc4d99a11312c4c311e5f1bc6274b0146b38a)", - "P->V[103464:103496]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 58: Hash(0x355efb470acaee39e500415fb80c4a77595a46b8d56360ff242ebf8fc6067f0)", - "P->V[103496:103528]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 16: Hash(0x15b2b4e5c5201283eef0dbc25f241a38f15f56a12abeeb3ed91836be549a008)", - "P->V[103528:103560]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 19: Hash(0x66ad7c2ed0e59ceb23452507f2030da5f964b757188bbf1a3cd66ca0d9a79be)", - "P->V[103560:103592]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 22: Hash(0x6ab39ff8c9e52ded412f03295329cf6651dac591697f2a07aa185b03c534699)", - "P->V[103592:103624]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 25: Hash(0x11573950254e40608602905f24423253b32b601f6de746c955f1a952146bb30)", - "P->V[103624:103656]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 28: Hash(0x39781aa966835aa9bda4d017144d7034b0aa37e9d398547b45d52af25e1a484)", - "P->V[103656:103688]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 31: Hash(0x13e2b5223ced032505afcfcd7bcef901f9974d7fe89767c30c049e9b27e4f2)", - "P->V[103688:103720]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 0: Field Element(0x775e9cdf55f953f1d844a3f5f1a4e2eaf18dc5317b501affb8325bbbf844119)", - "P->V[103720:103752]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 1: Field Element(0x30cb8fc3a8e137e78da2e286cb033285f662048bfa9178e8ab5641eb1e92ed7)", - "P->V[103752:103784]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 3: Field Element(0x5a1e61c4e5edfe5fcfbb24fb6f94af61a63f032c658d3b8898b17b3ebaa8b99)", - "P->V[103784:103816]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 4: Field Element(0x4c849474aeeb3e621ac1360a79f9313c080712363c9b291983c651fb3397226)", - "P->V[103816:103848]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 5: Field Element(0x66094e72ea8de437f30898dbdda870cacce9bc322a2323831105da3d9613fe2)", - "P->V[103848:103880]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 6: Field Element(0x78c9eeebde23cefb2afb4a4684b1ec8895c6538137b9d0da6fbaeeae53ec795)", - "P->V[103880:103912]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 7: Field Element(0x36eca82e0665605f930afa9fde6503ad17cb5f3dcf1f371c81c52315aa39b6c)", - "P->V[103912:103944]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 0: Field Element(0x5d099a47b136b9b4f5dc1f5b08334bdf7c629edc482bf08bb15213d5adb5834)", - "P->V[103944:103976]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 1: Field Element(0x46b1300fa53b2b76f45a4f81c4cf82ad084afafe9ba75bdeccccf61b4f4a367)", - "P->V[103976:104008]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 3: Field Element(0x155cf593f8d706639450b201cc56ec6f38a437926cb88ffe751ed4964ef9ad5)", - "P->V[104008:104040]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 4: Field Element(0x6956e2d807574996f92f50f31fdcd72ed77b98f94f4f41c7818590082a22ca)", - "P->V[104040:104072]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 5: Field Element(0x24357480d82af88f7709e264f71d6fac170a0deff29d9008caf85f1404362e0)", - "P->V[104072:104104]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 6: Field Element(0x2eee57859075e36ad956220680ee41dd16e7d18f8217cc8e003c0b7dc2be375)", - "P->V[104104:104136]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 7: Field Element(0x66ab06bc395b94ac7c5f4d3de73de4526310e32591f6280a0ed6d3ca7aaa1dc)", - "P->V[104136:104168]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 0: Field Element(0x11fb92793bb8cf877962078d50d91e711c723d0b1bcfb822a254a41d9c3100b)", - "P->V[104168:104200]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 1: Field Element(0x3e4daff0a47642dbaee07e87bf12a5daf17c93e10846d281e2342544168c929)", - "P->V[104200:104232]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 2: Field Element(0x2f4c2434e2a258462d4a1e5cbd02e72d8748205a7e9defa08339ba4795dadeb)", - "P->V[104232:104264]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 3: Field Element(0x18ce6ef4a973e0097434435c877e3847ab20a9b148c3cb7e482c46e8dd76118)", - "P->V[104264:104296]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 4: Field Element(0x7c9500179e9fdaf9cc598a3627e97f359fd2fed77f7ba947938415e10bfafd8)", - "P->V[104296:104328]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 6: Field Element(0x3fc44d1306db9dc974775ddf2be803a37f959655ccc1ecb6257698f79103a23)", - "P->V[104328:104360]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 7: Field Element(0x5c8d455f8f1f94e118763bc50de067a819b38ffaee76f48168b10b1a7c7613e)", - "P->V[104360:104392]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 0: Field Element(0x42f7973ae3ff6ec50349b98b26d00a1dafc64aaf18d111069a4f1bbe4cb8736)", - "P->V[104392:104424]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 1: Field Element(0x25def7c7deac4a86247cb323ef88483d370a01fa9e7dc5d712e7dcd1df42d12)", - "P->V[104424:104456]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 2: Field Element(0x3f2704d87575e38b1a70e9f964e1a6de74767baaf1c7baa118f9d1b824aa60a)", - "P->V[104456:104488]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 4: Field Element(0x628f802d5bf2f205b8c08c507afb102ae84a34a5fa441e393f2efd45ac2f365)", - "P->V[104488:104520]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 5: Field Element(0x757d0498f7525b0ae023ac13508f41adf7534b9870d4bd2b452752b6fa12a0c)", - "P->V[104520:104552]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 6: Field Element(0x2eef02cc2082addd2b755746dbc4df0ac6e163841a42751f67a3e9a5423b47c)", - "P->V[104552:104584]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 7: Field Element(0x37385f70be6c4629fd06dd86915b1ae26e358df30ccfabf82ea705203952dfb)", - "P->V[104584:104616]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 0: Field Element(0x219205b2a0a12bb775531b94f5eb2453a17a6445581b24769ed343542ec5442)", - "P->V[104616:104648]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 1: Field Element(0x61192308fe2dfc16e44046eb5a305b540a4287af68fbe4290dda529e85d599b)", - "P->V[104648:104680]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 2: Field Element(0x8fbde69f498e6998a70b35d9925b2da371647b35155a26ce9e4df97d896335)", - "P->V[104680:104712]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 3: Field Element(0x608683fc59348fb28dad28f434cac7a12cf05ae04a1332fdafd95559fd47b45)", - "P->V[104712:104744]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 4: Field Element(0x19c016def27e225634b79cc67f298456fe67945d1dc7e568e41278966d5d6d3)", - "P->V[104744:104776]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 5: Field Element(0x592ee653e77ad8e74063da3d1c8f2c2dbd77492b40f17b2641bfcc52560d5d8)", - "P->V[104776:104808]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 7: Field Element(0x6c2c292098404b35da7a0400bd598fe3fa975bd7ca4dd73237bfe1c2859384a)", - "P->V[104808:104840]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 1: Field Element(0x61d92e1e4c3e64e48c8b0eac315ff67ecb4d2fd713fa1c491e93b79c65cad62)", - "P->V[104840:104872]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 2: Field Element(0x2ee156e3db09bb249aaa4f6ba071806fcd38cccbf15086e53cc209c44b5d18f)", - "P->V[104872:104904]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 3: Field Element(0x4610ff38a1ab826e613b0c54c56eae90f16b1722d8258274641ab229609da)", - "P->V[104904:104936]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 4: Field Element(0x225ec5af71c3e839a9f7c0d2ebfa5bf0d113daf4d6517b0329fb5bc5712cde8)", - "P->V[104936:104968]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 5: Field Element(0x251da4dc1997ce0ab8e521772d342dbf3356fcd682c95ca642b605dbe4d7c29)", - "P->V[104968:105000]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 6: Field Element(0x1822a2d1a6ac415f7967f63da6a4566d14fba5255555e79641b98d3aa8f0674)", - "P->V[105000:105032]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 7: Field Element(0x3818816b819debd27a5d8fe736f1197698d53db986260652e1de2c9512b7853)", - "P->V[105032:105064]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 0: Field Element(0x7210a20aa4b4bc7e6e8837b6afbc67bdbe9d860ed3d71fe969da414fb6a7f75)", - "P->V[105064:105096]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 1: Field Element(0x1d558512fd4df0a3721a992d88df6a211ce7358b3f065542b32beb4c0e0f2f6)", - "P->V[105096:105128]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 2: Field Element(0x1935ddceaaa6885fb266bf13b5112a246cf64de618bc480b8274509934ec0a4)", - "P->V[105128:105160]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 3: Field Element(0x3aa7f25ec3876c8adc3413779a0fc607e6c93e3e2ee18e0fdbf343bc91ddce0)", - "P->V[105160:105192]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 4: Field Element(0xe179654727a88fe4311333e762d94887adef54942e3bd7d030ce93306955e4)", - "P->V[105192:105224]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 5: Field Element(0x50aac083a2a508bf590b51035630a3f12f0171f18a29d67076dbeb810d1dad4)", - "P->V[105224:105256]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 6: Field Element(0x65a01f5ed6f9be8151c30d1d7021f21833d9d23c943d801cc1292ba6edf076)", - "P->V[105256:105288]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 1: Field Element(0x4eff3f8d2db3966a6afa85d53b00f1bba4edbf7857d1e6210e1c231c88830e7)", - "P->V[105288:105320]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 2: Field Element(0x2d482003d852d50d5486894896773ae71f70a2a2ca82240d2c42434de5b16af)", - "P->V[105320:105352]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 3: Field Element(0x768a3e39cb4043bb138ff4666d81705269c7d64d51c956d16a7d18930d029cc)", - "P->V[105352:105384]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 4: Field Element(0x16a3ff53bcc453246699afa8dc032d3051c987f431b47812b7aa78a8595eb91)", - "P->V[105384:105416]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 5: Field Element(0x2de7a597cab29e3e7bea7d5fc4114874e1b5daffde4a8632cb95f939a4a0b5a)", - "P->V[105416:105448]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 6: Field Element(0x10f1287f38b3fc49ff265264f67a5913259396431302228274b7acc448c3bb3)", - "P->V[105448:105480]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 7: Field Element(0x1f424b7dc74cf102ebe36b5dea161c27766b27c9956a04a0098d82c47bdb97a)", - "P->V[105480:105512]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 1: Field Element(0x5e99ecef5b3daed02d735027f14f3f3c24f7c8908e3272593a2d90c429aa9f2)", - "P->V[105512:105544]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 2: Field Element(0x3acfd86dde9aa0c80950778defe530364b450ef154b8088bb72c47b018ba617)", - "P->V[105544:105576]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 3: Field Element(0x55a19e98da59a659968eed49b6617e8e81c1c0381b36e0c61569401e4941379)", - "P->V[105576:105608]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 4: Field Element(0x44b2fce09ccb35a4bed5a2c7a8c724e1d0bb4185d1e402666fb9f2dd7557849)", - "P->V[105608:105640]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 5: Field Element(0x7119d37b80156e6a31b9ee7061aedabb51efb209d086ed772ec0b442041835b)", - "P->V[105640:105672]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 6: Field Element(0x12794d3b48c8341c710d13e4a4759d6bad89d5c4ad95695b07ff86245ac31fe)", - "P->V[105672:105704]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 7: Field Element(0x2535d88cc7d7239cacf4d1aa746099fb8bf3b6adbb819df4a93e3b71c310ea6)", - "P->V[105704:105736]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 0: Field Element(0xcca88336405eab8a7e2f6428daede69309eeebfe251c599ae82e2662a1df9d)", - "P->V[105736:105768]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 1: Field Element(0x1fcfec559d342e3405bd884b9e323b5292ffc1ca52ba09d748de76dbf46821a)", - "P->V[105768:105800]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 2: Field Element(0x3d7aa8f7652df8158d9c3e82c757742555dd45358867a97cd2a4b26bc77979)", - "P->V[105800:105832]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 3: Field Element(0x7544b75507a3bbd2acc96a44f2dbca6a39485699cfb349b3c6a4255aec3f80c)", - "P->V[105832:105864]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 4: Field Element(0x732423ae98e033bd681c0281ae771f5c6bc107fe6b20af889e76c9541f69129)", - "P->V[105864:105896]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 5: Field Element(0x720a2e943ec67f2caae5767d88961a1a254a0b0400ec846ab1c864d0d16049b)", - "P->V[105896:105928]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 6: Field Element(0x40dec0d31de257610370a6afa0d8cbf51a955ad656dfd1e97b5bd1c8b53f0cf)", - "P->V[105928:105960]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 0: Field Element(0x719f923bcab26a9154e545b57d0f8a71bb5aaf022d522a314be8ca49a06469)", - "P->V[105960:105992]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 1: Field Element(0x519bbd2d89916e8ca453bd11f67e83e01d182e19e0580480a183ec31e70f2f7)", - "P->V[105992:106024]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 2: Field Element(0xd508c5918b9aa69c1c00e5fd9dd25abeda494eeee248c6397efefda1b8c8a4)", - "P->V[106024:106056]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 4: Field Element(0x3ce8663a2b3afdb17bd55c6e0464859424a801265316640381c56ca4dbbd555)", - "P->V[106056:106088]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 5: Field Element(0x5a965c345cfd774b497f37bf110ad449edeb333685cf116a2c34eb357de1cbc)", - "P->V[106088:106120]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 6: Field Element(0x53019ae8710e6bb8f82fe316bd6376fa3d1b0b441bfa4d6be56834f8cb8524d)", - "P->V[106120:106152]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 7: Field Element(0x6dfa6605850baa1555b049a131c0eb59f22657e021a27ce2162d006abfeb367)", - "P->V[106152:106184]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 1: Field Element(0x7ae612a7e24217dde5de42b1cb13c2d11a0ac538215ef518e3a25503e2423a5)", - "P->V[106184:106216]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 2: Field Element(0x7e3d9bc9d58cb680171d084f93f121b1fd2cadf489a1104137ba3926cd2c57e)", - "P->V[106216:106248]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 3: Field Element(0x5de0594a9bc607f1ed6e369b7d16e0dfc06d247ecc5fa1bca12571eb0c13bac)", - "P->V[106248:106280]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 4: Field Element(0x68ced71e7d00e2bf40ceaacdbb2f61b49cbcae1090c0a1dd23e320456070fc5)", - "P->V[106280:106312]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 5: Field Element(0x5388856101e6da1e346ddc19ab5daf4588483e178dd18699e6a53f9835d0efc)", - "P->V[106312:106344]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 6: Field Element(0x3248083571d44fb2a55da179ccb367ce2c2793b65233def9815699a21b50f4a)", - "P->V[106344:106376]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 7: Field Element(0x47c002ebc088b751b74f160b3a8a0aa66084168b7fdad99976598053d501e9b)", - "P->V[106376:106408]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 0: Field Element(0x376a9928576607cd403fc11efb4a20c9b470cc550a617b0b6a707986fd3ce26)", - "P->V[106408:106440]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 1: Field Element(0x613b198fe253806d1f13f2faf4d6305c58cd742bbc8b6f3f23ed3c79ca2d48a)", - "P->V[106440:106472]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 2: Field Element(0x5ea6e39815d335fe684f25f845d345ad0247c7797399b1bdee6a80b0240017d)", - "P->V[106472:106504]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 3: Field Element(0x123eb6b3a43186c6f9fca3dd9993c6c7918a586ec21ced4667a8c743644acc4)", - "P->V[106504:106536]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 5: Field Element(0x69cdfd4c8fe19b934d1e6baa66ab6c0ad8e7b91ed54b65473b0d82a8cae409)", - "P->V[106536:106568]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 6: Field Element(0x61cc976d7d3d6c1fdc124ea68bf5496acbabef2c1e532291a287d3a0a664b4f)", - "P->V[106568:106600]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 7: Field Element(0x37e4d9a4bae053d895157532f72fea60abba2d449bc67f63c5aff03846b4fc1)", - "P->V[106600:106632]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 0: Field Element(0x32a19e5d07fe517210529c1c0a17f704610fd01dc41b773a28cd6aeb977bf60)", - "P->V[106632:106664]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 2: Field Element(0x71d9d74d538bbe647b6921c01c73731d3b2b50866a2d5e21139fb46e98cd019)", - "P->V[106664:106696]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 3: Field Element(0x633d02bd725031e638ea1a5cce471c2a3eb2673a210d8e821524d71f37061d6)", - "P->V[106696:106728]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 4: Field Element(0x3db5d0701b76adabdfcff8cd532a2d8f728b5253e43c81cabd16454f2ff34c)", - "P->V[106728:106760]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 5: Field Element(0x4fb81e6e1c48d672a34767ad93752b6a4b56d1903169c02b09f91a65355c2d3)", - "P->V[106760:106792]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 6: Field Element(0x3734cb5ff0382e446f3164be13f71e3ef8a69efb52f47d6167de40cdc434182)", - "P->V[106792:106824]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 7: Field Element(0xdc28a7fc0e5e9c26cf8905b1758145a3a01f76926f7cbbec9606506648eb24)", - "P->V[106824:106856]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 0: Field Element(0x4878bb4874418dacc79f0a11ab2d45c7b34cecf38d4e2e2604e4956c679597e)", - "P->V[106856:106888]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 1: Field Element(0x43a5fadce6134f8890939b75e6413d9fc4f99d3c2e0f835a8a2df62778a4197)", - "P->V[106888:106920]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 2: Field Element(0x7ea1f654379f426aa2e92572bc2ed3e817f836c3fb429e71de3a9b1a8b73433)", - "P->V[106920:106952]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 3: Field Element(0x349279c812ad2430ce8c92e63b62bd59d2c2b71d7464f19c9bb7d307f3f6df)", - "P->V[106952:106984]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 4: Field Element(0x4d2cfb1d65a7c941f7aeae765e58540667d764b3035db9a02cf9e8cdcdece09)", - "P->V[106984:107016]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 5: Field Element(0x2abc878bb75508f84a372a9beb9dd73b2897ed09c72f88cd4b99dba11034b3c)", - "P->V[107016:107048]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 6: Field Element(0x7ee6d2df23a0a1111191e21b4db4f588a9cd107fbe4d432e865ab80d0cbe196)", - "P->V[107048:107080]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 1: Field Element(0x4317bd0a54524e179277544a7eeca05ad89c635388d394425403218cde98262)", - "P->V[107080:107112]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 2: Field Element(0x190abb9c59bd231087450615d3233bc3f5be1d0b4fc9fdec4a8560ca98b61a9)", - "P->V[107112:107144]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 3: Field Element(0x40bb72256ca4f53df9ffbfad3cb7b908873f6c5f1bb08dacb8c8ec7dd104904)", - "P->V[107144:107176]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 4: Field Element(0x5927eb699531b54a4515ecf843f89096c274c73ca29e1e2f36a7099231ebfb7)", - "P->V[107176:107208]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 5: Field Element(0x7d56664ce97fd7492128a123b3c4107d26c101214705510eac04090c4d4896)", - "P->V[107208:107240]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 6: Field Element(0x6223d18a26063a9d5e90515d785fdad652d12b642e9501e45570840ef80d0a8)", - "P->V[107240:107272]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 7: Field Element(0x63e514205bbb8959474b4fe697b09d8a5a2f11d5edb4bac891ff720cde4459e)", - "P->V[107272:107304]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 1: Field Element(0x35111933b96045d90ef5e3bf9b0d1eee1bb598c73cb80c87af7bb583782f2ca)", - "P->V[107304:107336]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 2: Field Element(0x7dd42a6fd65f31adbf862c1faffbc7525513d82fa2c743d0c05a02b9dccce2a)", - "P->V[107336:107368]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 3: Field Element(0x2cc52632d8539fcf639e6071df4949bd2d7039b3c1e792bf8c976645032a91a)", - "P->V[107368:107400]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 4: Field Element(0x30d463a3c391c1f1153341e173cfe92d2a10620898749b43a8d736b419faf92)", - "P->V[107400:107432]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 5: Field Element(0x45bc4ef5cda7b9cc1f1de271d925b71341beda1725cc6f1e3f44c4daec6049d)", - "P->V[107432:107464]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 6: Field Element(0x1f2a517798a148098d91743435ab5193543aa11571095b18749d38b84ba8bc4)", - "P->V[107464:107496]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 7: Field Element(0x15b1fc040c8e3ffede3f27061d3ede34ad335af2581f702e04de1700eb06923)", - "P->V[107496:107528]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2184: Hash(0x000000000000000000000000f3de974b5bde77d80655421a9f30aee45480fe32)", - "P->V[107528:107560]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2339: Hash(0x000000000000000000000000c8877790d958a7af049e2c328fe4d8dad8baeb93)", - "P->V[107560:107592]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2364: Hash(0x000000000000000000000000452654bab042058d82a607d57830c8bf9d4d5c72)", - "P->V[107592:107624]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2385: Hash(0x0000000000000000000000008b4911239bd06bbca9f502274330763fa1abd551)", - "P->V[107624:107656]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2635: Hash(0x00000000000000000000000036af761d6ecf717eabf73a5bf5b20fe95ef54042)", - "P->V[107656:107688]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2661: Hash(0x000000000000000000000000fbd2a2f6cb7dc81dd2a44f414dba459c6da350a0)", - "P->V[107688:107720]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2723: Hash(0x000000000000000000000000351bfa55d8b97966e8546307cca5e121b479283e)", - "P->V[107720:107752]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2970: Hash(0x0000000000000000000000007c81025a7eca46b2890d0bffa531e2538b8c082f)", - "P->V[107752:107784]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2973: Hash(0x00000000000000000000000023b4ca2602244f8d567768fb8e638ad68719295b)", - "P->V[107784:107816]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3029: Hash(0x000000000000000000000000a5dae812f0451f9d90ea8b0364d2cda0ee9308c5)", - "P->V[107816:107848]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3136: Hash(0x000000000000000000000000edb54d15a851171df08661e9c4ea393e7355e71b)", - "P->V[107848:107880]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3403: Hash(0x0000000000000000000000004573e5f8ce4cd450482dca6113d5a0ce41c034f3)", - "P->V[107880:107912]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3445: Hash(0x000000000000000000000000c3b93d061dc7126649f7a53f6c64e835f67764ae)", - "P->V[107912:107944]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3487: Hash(0x000000000000000000000000a88b4d327ac40ea0302df4b918c522c650a4e69d)", - "P->V[107944:107976]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3805: Hash(0x000000000000000000000000bc75902cf9a464ae912cc5406a009f0ca27d47d0)", - "P->V[107976:108008]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3902: Hash(0x000000000000000000000000fd9e19fea10e89c3c165eea3e30f31413dd35db8)", - "P->V[108008:108040]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3926: Hash(0x000000000000000000000000b94826a32daa88969b3d405745f09754e5135788)", - "P->V[108040:108072]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1093: Hash(0x0000000000000000000000000ab1a8cf9044a0af8ab56dd3d64233199e385642)", - "P->V[108072:108104]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1168: Hash(0x000000000000000000000000d8c099e285b0d532d8dc389e8dfb83db605c6362)", - "P->V[108104:108136]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1183: Hash(0x000000000000000000000000f12eca2623cc56b1108aaef512fc4b89f8f44137)", - "P->V[108136:108168]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1193: Hash(0x000000000000000000000000e14a83f4df1bc30bdc2c9f95bfd249b1904b0e6d)", - "P->V[108168:108200]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1316: Hash(0x00000000000000000000000045c11f151427375c12210f53070bce45a098cfde)", - "P->V[108200:108232]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1331: Hash(0x0000000000000000000000003e6f1152e31c5c666be64df3087ca629526e9d8a)", - "P->V[108232:108264]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1360: Hash(0x000000000000000000000000d48f2824e682d0a2ab0439f6d980e9345bd0f8fe)", - "P->V[108264:108296]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1484: Hash(0x00000000000000000000000003dca555f058d59adb993e521cf92d48b0053d67)", - "P->V[108296:108328]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1487: Hash(0x000000000000000000000000cfd61f9bfcf216440bf5dfe44d5555a6d47e1b1f)", - "P->V[108328:108360]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1515: Hash(0x0000000000000000000000004f76bfcd354cb259105ffbce41ea63bdbb24f24a)", - "P->V[108360:108392]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1569: Hash(0x000000000000000000000000817ebc426e6b0a5918cfe5cb8afc8998c9e83cb7)", - "P->V[108392:108424]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1700: Hash(0x000000000000000000000000eba6f1d9e9c6c2e06dfcb89156d7733d16bf72b2)", - "P->V[108424:108456]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1723: Hash(0x000000000000000000000000cd9873e764906443f0818bc795888675f4f02171)", - "P->V[108456:108488]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1742: Hash(0x000000000000000000000000e782ab5d91d6fa43ebf46de4ba759f0c2d106a74)", - "P->V[108488:108520]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1903: Hash(0x0000000000000000000000001a6f83d024dddc29409ce2029bccd4de9ccf0599)", - "P->V[108520:108552]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1950: Hash(0x000000000000000000000000230ec4b711c20be31da10514a5e2b0d5aa8e005c)", - "P->V[108552:108584]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1962: Hash(0x000000000000000000000000e4db99e576084fc7baa57f92410af6c41e72fc69)", - "P->V[108584:108616]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 547: Hash(0x2f0be041edc768e27722740c9bc4c5533b6d2762)", - "P->V[108616:108648]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 585: Hash(0xe4d19c8e984002ce2a83ecb1bc35cb63f64da72e)", - "P->V[108648:108680]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 590: Hash(0x4f8df04e40d638d6ca1348b846820debcf4d62d2)", - "P->V[108680:108712]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 597: Hash(0xb1a6edad512e84f1d30ea6e47f71c55efffa1745)", - "P->V[108712:108744]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 659: Hash(0x87e2cc700efdbe234b68babcacd1a194a1db891b)", - "P->V[108744:108776]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 664: Hash(0xe24c9709ae4794109f532d6e96c74490fce8b1f3)", - "P->V[108776:108808]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 681: Hash(0x9d4b847c7d7b4fd45db17059396e704b3757414e)", - "P->V[108808:108840]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 756: Hash(0x3c37c2d761dd4d61ab24ef9e6d68cb19575b85d6)", - "P->V[108840:108872]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 785: Hash(0x659ff94fb2c3b9809e39c5f545aeb54d4c09b775)", - "P->V[108872:108904]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 851: Hash(0xb13f37eaa93192c49db0ed6eb72cca225f726e2f)", - "P->V[108904:108936]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 860: Hash(0x3bae10a557e1fb43da58525538cf6732222d6401)", - "P->V[108936:108968]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 870: Hash(0xfc4ba7cabb3e89bba3836c16cc960bf4a98716)", - "P->V[108968:109000]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 950: Hash(0x329d9dc9fd6f4026d6c4a37936f4a61311c9e1ac)", - "P->V[109000:109032]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 974: Hash(0xb42b5da29c839d6379741524a231014a8c6629ab)", - "P->V[109032:109064]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 980: Hash(0x423674e2fce5f59c0e0ffa883d945f12d87c878b)", - "P->V[109064:109096]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 272: Hash(0x5cf3d5ae5ebeac4d5e6a978f817c11f7b15685ea76636b37acff3d1fd33c684)", - "P->V[109096:109128]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 293: Hash(0x75ece9d69ed78fe0d77ede63aa6614dedfb1a9d73c76fa5db47fcc380e7dca6)", - "P->V[109128:109160]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 294: Hash(0x78613782543a2d913c190fbd50f9c9baf920d06f4fc07228f77560106b5a291)", - "P->V[109160:109192]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 299: Hash(0x30df06d84f17b789cfa993737a82a0707aa338885466de69bcd4729e0a54901)", - "P->V[109192:109224]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 328: Hash(0x1ae6524156543a7e80092ca86433710a46f66a7cf8e5118219f8dea788abd2e)", - "P->V[109224:109256]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 333: Hash(0x1ab4715591f0194a083306643e20d2518924b038879d4f690861263824268e6)", - "P->V[109256:109288]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 341: Hash(0x7271046cd16d1886baee846491098cc408be83c15cc31f4e527122e9a01f75b)", - "P->V[109288:109320]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 370: Hash(0x4e1bcfd7e6ad5ffd77abd7b24c24699fa54242162948571d56aeb786e1de8b6)", - "P->V[109320:109352]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 379: Hash(0x2c7e69e1bbb89365c2f1859f50b84eb477c3f36a5eb96f316d36beefa1f5c16)", - "P->V[109352:109384]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 393: Hash(0x5183b8b8a6ea5041af32f426d2254807fcd397c7a430a49b0a781dc221a9c42)", - "P->V[109384:109416]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 424: Hash(0x3993e6374c0c366533077f578dc4b679b6f84ba41aafae6ab38a4f1b1bda7b4)", - "P->V[109416:109448]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 431: Hash(0x544e7e52f65bf37e4e0f16889c5f21210f8069c45c6944abe6f1f3f7c7f36ef)", - "P->V[109448:109480]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 434: Hash(0x26838e4dedb5a5a05572fac88eed118c2baa287e05eb5037f4a8a84548243d3)", - "P->V[109480:109512]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 474: Hash(0x5ed5c1432788e46b3727811b7016e4d7a411be3bd7a22cbf4bdd94e044790df)", - "P->V[109512:109544]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 486: Hash(0x5d858962ea3aac1960c7b4cfaf44886fd970d5bf758beff895805c8bd5cbd43)", - "P->V[109544:109576]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 491: Hash(0x6c898d48eb518c79aee60d36f2603a9a4c11514d89427acbefe9238e785026f)", - "P->V[109576:109608]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 137: Hash(0x27d98db006ae98d0e6f4cd57f4d3e380fa4609da0533ab2969b054b1b3824f6)", - "P->V[109608:109640]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 148: Hash(0x36b22531e2be55cea5847180c55617e4f7af49b824d1bd997f17fa7a2235f84)", - "P->V[109640:109672]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 165: Hash(0x30a9a9a36162f56612f68330f06030c60ec29d63357edd96e3cc855cb383522)", - "P->V[109672:109704]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 167: Hash(0x3fa6cb840d6ae837dac7711d8c3118db02482b74157843e1188e0b7195093b)", - "P->V[109704:109736]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 171: Hash(0x2b89b1abc95745711d71d58714eb31801f45e5bee293ba8ae4b677b2879ea3e)", - "P->V[109736:109768]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 184: Hash(0x77789730f21cf429fd33d02552d59517f3db37f4771a3f418cdc881faeb9599)", - "P->V[109768:109800]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 188: Hash(0x7e3662a6809a99bd75b49277e56d90c7712dd074a8c14c1fcdf240818627c9b)", - "P->V[109800:109832]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 197: Hash(0x60e857ebb1c53b28d4d80c80c3ed62aa8562c0141decd57cdd007664b33c0ef)", - "P->V[109832:109864]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 213: Hash(0x5ef4993f1e7379a182233bed350c12d455390b6261c6226bc26dca2f033909b)", - "P->V[109864:109896]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 214: Hash(0x19f94f236cd0d4a6b18691b5bf5e966417c7694e065280fe2c9ab5dd1c1f68c)", - "P->V[109896:109928]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 216: Hash(0x18a0233014f8d0b2932a0cafab119c7f0abceb03b17afa255bacb5ec61cf788)", - "P->V[109928:109960]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 236: Hash(0x3b5653e210e721b6a52e04a4efbb97b3ac8a2351731943d005cdc1670b9d6ff)", - "P->V[109960:109992]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 242: Hash(0x240bc1f77c9e72d4785f9cd7f5b72214240020da2f205996c55fdb500e07c56)", - "P->V[109992:110024]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 244: Hash(0x59ed0f03654b790eddc9951d1d91ff7f36d59f19bde6fdda4b4fc1feaaa179)", - "P->V[110024:110056]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 69: Hash(0x504cf00fce1161638e957f0795e7abc7743652a586b640df1b14ca1ed63ff91)", - "P->V[110056:110088]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 72: Hash(0x66a391580155a13721ecfe31969c6ee37a891ed07b06d16976fe5afbcaa6901)", - "P->V[110088:110120]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 75: Hash(0x7a5c20e0bcf825fdc4b88076b8c0300e3c244b24ed6405533310bf8dd603869)", - "P->V[110120:110152]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 84: Hash(0x298f956467c446a972ed2c41810601e3e94e551165f7f28098c5b4daa27d15e)", - "P->V[110152:110184]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 93: Hash(0x32d522474cc901e8f96c4cffbe39f2cd085a9d8c2ba4591b4ef10af6890fef)", - "P->V[110184:110216]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 95: Hash(0xd3bbb78be25b9a6034a1a5aaf24935595d408af98b4dd38948c6977bedc9d4)", - "P->V[110216:110248]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 99: Hash(0x76e5075d7fa11f567885d84968ffcc5cc072bc90ea701ddf932e64aff19e3eb)", - "P->V[110248:110280]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 109: Hash(0x59fd3c6d391cb597d198f52436ee8336783d9fc164fa59f2343153fdbc3f407)", - "P->V[110280:110312]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 119: Hash(0x540c2f3bf6ab497a6d92b72aecf68cd3900f0bfb260954707c10ea6b5b2155)", - "P->V[110312:110344]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 120: Hash(0x4352374791506782388f8a871da7be9a5a8df9819885d2a28c1a86683fb56eb)", - "P->V[110344:110376]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 123: Hash(0x4e87d875063429dda97bdef04baada0363b8d1358c2c5366e4a1afebf931d00)", - "P->V[110376:110408]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 35: Hash(0x2a046dbd910e809ca37254a45ac134e5263105fbf3cd0de481ed730041a097d)", - "P->V[110408:110440]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 40: Hash(0x3748806ca24825c187187635efa1d41d936e12ed4fb837b88a018080ec70ebb)", - "P->V[110440:110472]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 43: Hash(0x249e60196bd15c9422c4859655fe20ae19dff3daa4d4b556afc0ccbafae57be)", - "P->V[110472:110504]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 48: Hash(0x580bdf74ce4b9d563119936568bbb2304978ee43ada27d9465cf244830766cb)", - "P->V[110504:110536]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 52: Hash(0x76796930d235a438f61d28d1fdfe6b866292ed5b3bed7ad28d24feb5ad7409b)", - "P->V[110536:110568]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 55: Hash(0x597469a34b8f646efe7acb3bb4a0cb17d4aaff7373de2298255c57c0c04c318)", - "P->V[110568:110600]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 58: Hash(0x50e75cb1122fc729e133abce1fe7eecc814d83384e7a1098c1c1448b81aa1c7)", - "P->V[110600:110632]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 16: Hash(0x532005bfd11e501ee737d5f7a34d2565ac61a3d89d1f407d6a1c67d31e62b4f)", - "P->V[110632:110664]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 19: Hash(0x598fd45cfab833c8d5b69f9d70d72b4182773226fac6e8016f6528a10c02d09)", - "P->V[110664:110696]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 22: Hash(0x78d73fc40ed947ca3f0b064d1aa4e6343f0e67c980ed94b232c7210afa8e58a)", - "P->V[110696:110728]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 25: Hash(0x5853f113011aca25831f23ee4c29d6974163e7c62bbd023931867c04e6b6abd)", - "P->V[110728:110760]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 28: Hash(0x2eea9b9fc916047843aec25e25d084a60848ea1aad65db2dea34279cf31aaf)", - "P->V[110760:110792]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 31: Hash(0x4348a9a8f8cbdca232e198cf5061bd0654ef1825606f617b887781a475cd146)", + "P->V[0:32]: /cpu air/STARK/Original/Commit on Trace: Commitment: Hash(0x66547ce9773eee6efb6d3f47ad4a3e5f95976bf3824243c1d17a248621a666d)", + "V->P: /cpu air/STARK/Interaction: Interaction element #0: Field Element(0x3d34416b0c46bbd79b365eb5f9747f3c8193802a0d0209294c8e7ed897b255a)", + "V->P: /cpu air/STARK/Interaction: Interaction element #1: Field Element(0x5aa94b7173fc78e10f8bd6294eeeb6fd488040edeebad3e3387f3db83dd6324)", + "V->P: /cpu air/STARK/Interaction: Interaction element #2: Field Element(0x63908eb614a71ab578eefab7f9ed5827c1eaec0575d5050eae9c189303831fa)", + "V->P: /cpu air/STARK/Interaction: Interaction element #3: Field Element(0xf1c479f641b4b16c50694aafba35739c2970cc8e740edae9d4cb45b5b7a307)", + "V->P: /cpu air/STARK/Interaction: Interaction element #4: Field Element(0x463a62ef406393dc020179e3151e6ced2346f34548aab77ca8000049a06ed80)", + "V->P: /cpu air/STARK/Interaction: Interaction element #5: Field Element(0x30c146268ec7eb9abd5e4a6a56dff7479d6cc027478a67621b47e1036c7feca)", + "P->V[32:64]: /cpu air/STARK/Interaction/Commit on Trace: Commitment: Hash(0x75b10b3318a9ca3eafccc5add9395a38a128062b3b626b8004e7b68357fa5d2)", + "V->P: /cpu air/STARK/Original: Constraint polynomial random element: Field Element(0x258073882e6ff7c9e3382f6bceac7675e087316d632afc41c93a46d3a0c12ed)", + "P->V[64:96]: /cpu air/STARK/Out Of Domain Sampling/Commit on Trace: Commitment: Hash(0x77b3bb251327133283b4da2c542034abb1c5f2c545dd835f540889f39ab6ec7)", + "V->P: /cpu air/STARK/Out Of Domain Sampling/OODS values: Evaluation point: Field Element(0x38a0969404536d26a7fb3f0956043f6f866685e632b918905fb31c64b2044dc)", + "P->V[96:23648]: /cpu air/STARK/Out Of Domain Sampling/OODS values: : Field Elements(0x30172f3a1efe9042aa06847ae6d416c0f4b1e72236835b2d0a4eada0ca135a8, 0x30624debff25da9d46456360706f4023fb1ca50044fdfdb556fdacfb0b6c5c2, 0x4f011fb800dfd7e3bc42ffb660212d5179bdcafb70a0decf2a9982c41566eda, 0x5b99bce6ee0a11f2e411e9c86d25a3cb4085e9634c1d95560dc6aad873d2ece, 0x7cf922c16655f5cd3e88de5bb4ba804a514c5f8f71b869dab9fa47fc21ca0fb, 0x40ad55e9bede5e5773f6b792e6afed4e92e585a6e735e42d093a5d5833fb54, 0x5bc3f7de4681558e6732b47a7c2495fa256cd3c9f507ec2f2a461c63f595e95, 0xafa67842dd4b2de8d4533807cf17a4b4c02de0f17f36ca0042f4d69bd593e8, 0x3518204d0962bdc48db8e340068aa9a6776dc85ed8d1e18c59f3e0a9f38768d, 0x282678db5971bdf9325a824e828474cdd01dfbaff14794acf72198f2e379955, 0x3e9afc351f16095635121c6e4e2f8835184e73e14b99fb4d6c139c1ff34db12, 0x5de72234e11922103c6f316e0f60fe43b9c8a6f06378640cf5777efff71b4f4, 0x6aaf81d809f657dae61b9cb153f1dcde9342ea028b71beeaf0eb7e2fb16d402, 0x625f1da07e0585f04fcc7ecf550f68d6c43c590a9cf270a603653f650186858, 0x79a9405be5d2f7b4b92aa73f6ca49f26ab7b5a7d50820d7aa04964a2aec006d, 0x10116d91550c6612eeceec1540e1a6e3198b3675e246023d33335432eb89cf8, 0x2b4ee4bcfeea221615f48a70030d82209fdc3010c82a546145bbdc1b07eacd5, 0x3a6560c6a4252313c480da67fd19e180bbe66e1178f7c447b2b6e2c788a0715, 0x2b6d531b0c19c1588a5d30da90b7b5bee8b2204917de0f404308e6a5afdf7f8, 0x77875f73882eb9d961edbc641dfce1718465f86578519b94b2761f6c9d4f890, 0x60d4b620ff9c74a22e4cac57d173f167f867044d5cb410dd842d30b9df80ace, 0x2a517499eda9a0502c66529c95b8d86e4e0d26da31bcb7e1c247299129c38b, 0x53b5cc80dbb3ee75773b573c51d50a62737778504bc1bb092ae21a2940f3dcf, 0x5ff8c4a6595e23f0705d7ddb9f1e7747ddc0a57261f3feb92276cce415ebd9f, 0x73b5da4f4c3ac784cce6192a80f0c1d4cc2785eed0b25a5d01bb13d77a8ab40, 0x3547286229907bd04929c1d81f41077eb68e1619a53eb7bbdf803e7d732635b, 0xa9039144c4f5c95e7e1b95eac0e3812bdd985730e1969fbea1deb29c018815, 0x454c144595108c8d08ad5dbc6fafa204ae0e9cc537406a822cafcc5e4a9270, 0x31b14e8467cd0e053bf81e6ce2ab5e86e2f68ff98b3c8d71a136fe991fa44cd, 0xe1269ea1eeb8ace9200e82618a2f71fbd5a233184e4d70b7f7590c6e3036ba, 0xdba42c112dcdabc0eacb5a221d5a0087bc3c7a033f9bebb1073bceba59d6af, 0x3bd5a5623a1e54d8f012d99bfa9467989cd9af6e94692eca40cf63abfaa1ec9, 0x38a28cc813c95aa6897439b8b4e6dfd154c617b3521be9dfdbd58cb472b8673, 0x450d9c907242e91abb31ae83a280a9701229a16765571099a9f362c964cdb73, 0x49266080fea5560ac5d5c2de3b0115c5f55230f72667aeb3c7832d25e622442, 0x3b3272973fe320654bca581853529c5b5972657c98f7abb9ef90a47bb36785d, 0x116d8405c6a322280514afb4120e1ddf52f7c6b4128c327669f371c5d75639a, 0x7ba912a06a9b02ce1e4069fa0e72f91ac1299608c1ddba43a15a94beb610674, 0x65c3d3314f94b35c0332f7941c3743dbf9edd75becfd3c9cb945963628fbd20, 0x37155735a26c181a0320455ca3ff5078fa9c0be03a46a79b8d8abb2791c2a19, 0x56d4ac6195d5ab570f4dea4918037645fd5b8cff5a6107740bd1e119fb4bee, 0x20b21372a7624f1332b0266252b7f5b78d9581da71655e4f512083ba93b1509, 0x46da99bbd5c85f48fd3cbc3622b6c1055bf62cd0d98320d5330b8dabf4112fd, 0x5583998f8bbf7389a4856ba3d8e79912f2a2177051a707698d7e96e5bdb6ab4, 0x513c1da22c65f472dda7be467f1366f84761991eafb66e2a187d7954c5118d3, 0x6f52aa43f5af8dd2fc4a2888f5e92ebcba052b09d937abbc679a4153d15275a, 0x1ffaf6153da600e70c1e1e8af30b24710894335ba9f54e8425a5c7ace7bf980, 0x4378567099dd18482d8834f7bf90ac7322739a3251c77135098dc1ba5cc898a, 0x2d597f01e4c27fa309fbb2900d6f84c7086b68a0b10e24d84faf9f9f12dd8f9, 0x4ebf1b880754d6aa43c026246413d61bae6f398121da5879abac68d16c76e3c, 0x4ff14db3c87c3f93fe9703ba470359ee98eb5605087fe3906464bef5ce702d2, 0x3a6b541b4f3d132684ec0d4816508f0290b2fd1770e6a99768438148f08fcb6, 0x2e5181242d97ac1d5287dd981d4cdf513c821d6b66df584b557607982016c2e, 0x1cb85a15e69a4636893f9cf12b80f026adf8b4336ffdf41fa80b874da39bb08, 0xa8d70e3024c5f387d4aa720048edd1542852a6c1505ad62c13af403c8ef02b, 0x2d8d77248ddc23d0939921b9fdf734a68acba63ec1772d92b82ab1ba44afb8c, 0xa413ac6a76c1c75a87791661c163fffa05986f92f5411c7175228c7c7a9ba6, 0x2d841797de90b6b358f0c649e14010facdf7e68e162c253a84d488d34f2c34b, 0x1aa1fd0a15e6727559fd79a003550fbfe6ae8d0b2dd6d9fc7a9c84a3c7cfb75, 0x34576050c85d94094eedad33485b593f0b6a456e6582eec3acc8d653fdb97a, 0x3db3884c15a01254371987ee20ecd06389f23e45d27d7329685d58866ebd33c, 0x56c62af3298a3dc085d9487867676dd63fb9c422a3e07f46dbc21c0f479894, 0x5f2716679449e74b3839b55e1fb91c810efd0fd710e0486dbf531fb1a9fa0fc, 0x6d5f25c948b5f7f11d0d52617f50993227d01f6315482f10bcbd8d4013f23b0, 0x695e2ca744056925dc3c7c08fe6c295e15a7d4f1f9fd49b0235253fb3fedc54, 0x49fafdd9c52f2741efea04320279c2144a6c0a925ffa98eb837241a9bb7c1a9, 0x5ed600658df161880f7bc2b3a7a15e22e77ff4eedaae438f93a57ff63b197d6, 0xb7efddcbc335821b43f109fba4b1337482b9211f764c780b076f1016df0d11, 0x267a83e5e603726ac34d0579e1962bad0a951724118d74a00027f42262b2, 0x2235b4c376e039b82342d32229bcf3202761a10b614d2ce4418ab446dfba3c, 0x7cc2b4a54c84e076cb8c897dd5fc9571fe57bd0faa06d43e9e5928228fa4d0, 0xd6a3d61546f0203126945ee7cc3a3c79e05d59fbc201c95d9c091b1636956, 0x59f0045eb8ee6b1dfdeb826d4e04922a9998b64400f62cbf526b6c20aa8ad3b, 0x7d4ef71c1c8efd0ad9aa2b4da81903b1ce3ad14b280c5648b2654e60e5ca28, 0x6118d9319e2eed8cd0a490f0c9af0fe6f07d1e29938b29057160e01f613f5c5, 0x65535c29d24f884de99911504663eeff49451db389a6b6256e10c408b77d677, 0x3ed39fd9ab5f4001d71e06533cc03b4de848076d902e3b74d3a5f0672082367, 0x6f8d95b909d0fa19e836722fdadbc861e8067234b77a7ae65350dc34e5cc426, 0x3a7f7913867db01be5c86a575e9fa7238603922b5df1d12b438c445798fc1ec, 0x729bdd79ad3c96a620e2206be37ee08e174b778a834862882b8751bd7963b3f, 0x3f1c4ab1bb08da5c93b1b4d82837cda738ea6e7b154a288f395fc0d8a3a9488, 0x343de479f58a87c517441d083389c02e169047b2db908d6ff738a5e5626ee02, 0x5381fa19cad27f3e6f4f23802a14bfc737b98e88c2b2de80234e30d8ca40abb, 0x5bb890e2f916dd6abc1c65f2654c79b7ee4d7f73b5b86ef87e57f83be8cad08, 0x65b8d45f5d5c1b1fe95d3fee3902106b333f5fc110a91c705f403de9b66c690, 0xfc786c54cbe671b6afdf2d61bc324d0ea182dc77fda0d4ad435dc10c378437, 0x423beecb747c8fc2950cf71cb04bfc7334fb0559cb1010a7ef8a85b828c5198, 0x403247ee267d13e5a28a3eb80db994208680a570bd88d8239376e35cfd5787c, 0x322179733def603fb401d04e9d870822237d9e210ac3ef30e9a82bf64014a21, 0x17f47fe503c2c25593b920c20fde93093584bdd526002b8f929f865f2cd6412, 0x173288acedb7d34409b37f56d69fbd8e63aabd9a24bee9189dde46a75b47a2a, 0x6555d9cb6e7a6dd840e36524382b6fc312ae3588632379c625aabb210f325b4, 0x23b4dc4b7d40f5ee832a24522644360c76b0bd18d2500e1c05987c5f800806d, 0x30e76e57581424d0afc8b24656a3220c3a04e580f8eeda9370c4feccbd5ac7b, 0x6760b817fb0a4d74c23c1219563c9b6252ec9c969184d4704b601f8c83a52d4, 0x47cc06eeefe1fda9d25aada065168f147f0775988296033deb215676f4b8803, 0x726c2eac6eb40d1dd26b7a15f0dcda11b737219b14e345646467aba24ea9ac8, 0x6b4bcd918d1ab266d98b3fa2a739d7ba47bb1dc53c6da4a38446cf17deeeaff, 0x4c2d257368a3379bdf01c4999304c9ccdcd485d4c84da300fa3d37998b573d8, 0x2abd9a3d1d0bcdd33e4b4673fe1d544101158efb96bd7d17e67acbe6d09dd8, 0x5761dfbf603d8adce3e11916a3d03869e68fe1b25506514a14880b71ed13b49, 0x435c157ad04fd57d6d5cf0c5645801663afee371554d46501fc2a19333c99d0, 0x1f5e27edb5eeaf74ea5ec5d0581ed182b425f4ca16fa9973f81d7e057f75445, 0x390bf7fd95544e943f08cda5398a04f5bbb3e0c2f030e5fb47b89d61d878233, 0x505107242bd5639d6ebdba4a05f2908c5ca1142911f31898d876e1504164a55, 0x5c71e14a6f29f765639e3a357fb66710fa1f90a33f08df88c4e06ff54dcd8d6, 0x7d190002e7e6a45c0292cb48d4af6005bc25a302a55e4fb464e7ddb9c4dedb9, 0x5335ae4551d1a2130591c9162008ba91cdc7d8ec1e85cc619b4fb14cfa2a373, 0x471631af7dfe495b6ad8c01c833cfebacee66c295f3311dea338ee83bce1714, 0x4ed40cf2c7d4652f4466226cad55a1f07ca0ad53d753d3b956ee730a070098e, 0x36a669b41ba56fb697790dc6dd506ed11c265999ccfd240e81f7b20fddbc712, 0x2c4dcd4a7c641177b8b516682da87d24364b6e96b1173c564bfb418d5a33094, 0x59533a1181c437538d2ae72a7279b1f4a676d23fb197340b564fddd4c7c7903, 0x1afb649d7d141f1fa31b7f657c10fc145943bfbb898206711b44c42c2f64c64, 0x614c5d5bd25e039d07ada3066dd5bd944193aee7a01666a45aad11998a0c713, 0x75e307dce09b673c412d23da2ef3dad3ef56559a5398feb58c3057f5c3d64dc, 0x5d56a5381c9f196eaf76253fc8ffbbb1d2ae2478735195db9a558a48ec9117a, 0x7714ca7dee6bdaa6ff93fbe58d7e449f39df6cecab9255adb5632b840fc2bab, 0x4bf979626464b0f8ef1bc4ddf32492773d1972a73bfd7d13bd5b67082e97fe1, 0x64ccc153a7dc414a188cde28c5bc0d22b1ed80f47723b8f70b5c097c43fe3b6, 0x615ce2672ff40e5266cbc3a27a6e94a573602df71a75ee5547bd3e6cb5640a9, 0x40d782c3c861072cbb6479aeb2220781f43beefd3aac955aca41bd9eb0bcf8e, 0x10f28c14e958c17479b9b02a5c53e0ccea4953e6bc3d97d262a2f89c874bc6d, 0x7a6c4fb63a5c779c4ed3033f2b1c6196b679f12a4a2e4ae4349226146be85a8, 0x6a30e81c93d8adc15a72d64b295c9f5fae0b1fef4af60bc66023381ad8f4cd4, 0x7a388082dcb542cf3c446121f29a0b5cbbcf378c5f6c49b1385dfc852fc5ec3, 0x4a0aa8f403a71c4f17b71bee54e5bc9a73c95e9ebafaaf3c9aa3422a95936b0, 0x39eb2d5335fe2f76c0c8f8859888d433ccf11a867bf40db5286204ac39b58d8, 0x6d837449be8fefee2abb0de414a2fbfac406d977b7f659d75f43bb68afa466a, 0x5444a4312367d9dd739248d627cb15baff908817e559bded73b101b04e99ddf, 0x1c3bba43e4f3c676ef43a883e259dffd5981531e5a9c21d9dc3b4c6095c7b15, 0x7792c4b70b79b0ec0fad1b9fae26f0a3ce1fb96c88cceb9391fa2bbe66fa91f, 0x47be80ce76ce2b6d3fe763f13a20a5a9aa4599cdebb20f8f681a2945ae23135, 0x60d30101e89332db49b8149b0c97beeef85df04179fdaf778291cf29668c093, 0xf3de4a2d18666c60863113212ed3af9a8dc23bae8acb38bac8cc807103e794, 0xec0890ece1e0e24c35af928f0de2abacd65a8bb12c837e8289dec39410b7bd, 0x5a9808938be0c3d420f368ecfd78067b095fd75c179fb1708a7dc909ec1930d, 0x390c9e18add51c6171b5540c85acacdcdd1abde044fb04a351df6dc3076ace7, 0x30ecde7624f2e5cd6d1a46929d0dc087ae57bdca72ec20bc0f2b6a2a41ee892, 0x44c2e5faa944a71b1c4a9ce11a4f74ac2626d6497c420c27d16a88284e972fe, 0x49f1669c8e6aee10cb288a0ccb9c7b93a32f80c25f465130bfc1b444b93831f, 0x141163e327f3062ab2bb1809d7c474a9b1d1b997c25966f9c26995853ed4d6e, 0x6896dc043f88fc89f9a01767e0c214898dc9743b74eb355a3f5efcd7917b5ba, 0x68e7df9e1fe376207133a0eabb2c5ebc720ab1c61acc96c0dd9d9420a3322d8, 0x622b6662abf5f614a176d90402a8931abbc7cc5252c1bc68330970ab4407c36, 0xb83571cc9d04b49370bf25427f0edf3767f85d847f6ae215589dd6c760bbc, 0x450b42e6f248879fd262c70f273b9b5c9db6c9bbf0e7d43d9de9d7b6ffd7bfe, 0x1903061c561bf2e1d49f088aa110a0948480ab636970640cda437aee045c346, 0x4560fe54ccf1b2cf794490c5fb87c442b7766b75872ad647ede59c02a3f862e, 0x407f321d3defc2e875f29abdbdd3470d750f26b10481a8dbc982d2c3b88c802, 0x2d2dd3776bb2224cef314be21e73bb383f7cfbe848e2f42d99c10e064bb281b, 0x1479f1346b27c42b383535cdc92d1637a5dfdb1594eb472e6c03fa51309cc80, 0x14ed4529696707eb21ce521875b0406681bf6f6a98bd6d68744943d166f13d3, 0x6d6f8f43c597e88cf92e353385ed766f325418396809c2358904ce093a5e3e1, 0x74973781c09f45f2fbf37c3bb7687475155411dbfb9471179335a2bfa7035e8, 0x1dac33e0ed066de0b2a41b2f4783392e1afaaec2b77906c5c9e2d0f753e1a3b, 0x6767280c550be06bc1586d6d40b152b0c41295d406739dfb3e87efccaccfb17, 0x4fecb55bbd2bee92b5f80cb615a284d27813b3a6d99d70e1fd35f2222d653be, 0x2eabfe796c9c65c494efae2862373fc414a30d6318be7c54df8c9cb35b30a62, 0x56bae3c1e48157f3360bd64a8dc274741c37d050571c1feafd7fdebbd937313, 0x268898acffb74a0a1ed22834057eb7a110106f526fec08a0e7aaf52a53098e6, 0x609895558d1722c94cd86714a15fd8a7def5a645265645932e290a6a215b685, 0x7038b1f68e77e1e66fb561e46f9e60df15598d35387881f30f1f6a76f9cdd2e, 0x2b0ddca69f4f80c95c72c4ad0d5576a3a2d2a96274da5b9512936424ff66550, 0x52dbc300c4e1c69d565bf1b9d761c7213be2f64fa8b19fa4b25c00dc0a31c5f, 0x480d9e13a8b672d90fe65a7c10dc5e42b4ae5890129e289a3e4b3c28063bd0e, 0x23acd1a0dc12402af2127e5520e570796065280a2ed96ade9678ef06e644c41, 0x1c76d19cdc1005af5d3fe1e4a8f5b26bf9cc61bc1a948571ec99ad3f7e994b, 0x5447d5ce22b2eb812f5c426c0251ef28b1b91a291ef7e9beba0b8edc93db8d7, 0x2f0e5f2f3c0504d74adc97a36d34dfefaed1c198267b061f789f20d51c3c68b, 0x3ff485efd5de4200614cd78700627bb23aaf2a365facdb9049ebc22af5d5dc4, 0x7b65d0e66e1a78a8e3356d8b509456301ae1c0f4a6e8bbcf631a13d37bea59b, 0x603688946d29d4f59e9e0f559408723eb610dd740033938b10ee5a45ddc928f, 0x1291b98df5d59b7654a3abeaea56a68bf30e99ebfe30ba74f71f646d73ebf93, 0x76574bc3b1d25fb16b21682d53d6ca9eca758ed01db467eb1be799e0969e421, 0x481934ab198827310aa873fac1bf3b47119d4c0c5d24f356fd7cf6033c618fe, 0x6b4ebe1e686a871aaa55040d6cc7339d41f17e898bda283dbf58cada9353e3c, 0x6efe19eb77cc042f4d7b7acb4d7b4968b184ee115328454397e772cff4aa888, 0xc7691e176e294e06c679bbcd18108765fbbea53c0572f34c9d3dcd13878ba6, 0x68f285f9b6fff872e80a932baefddbf48d42fce7db64489d2b99c8387eb0022, 0x5d5d6f6a551f7aa08cd9a84534e369282fb632e68e84cd25bee19e84261df49, 0x51f725953cf9877bf8919bca03dd401e565b7b3df0672ade66d47dd58f5dfe, 0x73b362fe76f1b77cbe9e4701e19a97452ec713c48ffe452c510b2b9977edaf6, 0x2c4128fd623b6ed5e71210d7773c8b59033380cd9d843f8f662ee24d405202, 0x694734badc20b0b31e7128265c4549a00aae28508a60f769b7c815785c0f9ab, 0x22dfa8121874be15f8b67ff650ce7fad406def58c6a04b6d766151ac5278a4c, 0x7ed36f459425cddb420e14e1991ca45ccdbedc1b8ec7e6fff16f4ed8349244f, 0x32327fe73f1c3f586d61eaeccffd6f883c9923a903a91d8c00bb90d474947a7, 0x46400e281f2455df91faa047eef937dc1b0c5350d9894bd117cf2a3324a46bc, 0x259f54c292da410234848432a5ab02cdc0ccb3f6fbcd055706a5ddfcab46fae, 0x3ab0cbd36c3aaea6a14ed773c415b740c653a79648b6e795ff506708b57e913, 0x31f26aee50bb73cbaac31e45facfd6308a2f90495b24510c94bd9706e6fc31, 0x5ab816ef22777d39493eb1a8f02153fc7ff1925015de4326aba966a72e031e5, 0x3eca1edab5dacca0466d6948084c8689be463ae95cbffd906ee0b610991e8bd, 0x2f5d79eb14184028c9940e9123d31611b176c42784e2c35fd331b731270171b, 0x58622a205dd674c2a6b22a0a8aaf2145c457d688d2366870eae4ea6adb69524, 0x482be1b589b46536bc4f85f8b9099f6108263b763526b2df4fe4335786ebdaa, 0x5742f7543426877e224429c20a960f13d892970a94b99982710282efc6cd057, 0x7bd18332bcd8606dc37c0b9d226aa328e9d9cff739d7125d4c1cc9198f2cd5b, 0x5b2f9eeeeda9605083f37e2d554d5204e9f261f15104c143a55f75770ebc6ea, 0x1f35b989c56698aedd27783f6688eabf8feb4dfd667b9e63afbbd0a4bff11bf, 0x396e2bc1a6bda29e25ecc0845c5cfe75ecd78167322c6a175110119d18d402f, 0x3b447b43c69ea2a75efdade8a9010e2cee14be2d195e24e791517822d1cf4d4, 0x4744a9ba65c20c5830e5215a4cab7c0e3e714d564160eb3a0e79e72cd094b2d, 0x152ee06b15f7a840dd232f8fba80a7d72bc411727baafcf4c3778a146543420, 0x400070ab1cd679e9af0ee3f57083a608833cdaf8dd6b9e436809e71fa82b01a, 0x7f315205efd9e7cab1b6918598bff62510d67a2f31630e81d59a5b3a33a56f0, 0x3ad622d2fee42da8ada863aea3e20697ab1dc27d8c58b0ad745af9119825f00, 0x48282d01aba96d029d8c131c34e6f249155aa575b96e7c2dd8e4802119fa6a2, 0xc7b20d80c3d9a02d3142953d7faeb756667dbc980f046eff616982ffc117db, 0x767a21b198ae6bb8bcb09b4afb9821a4db79ece95fb09e9b7c9ba569fdf525a, 0xf0160f0c4e87013dcbc3325bd58140894a5bafed2f7e23d0cb7565183bdf15, 0x413f5e508c8d576c0680fbd450f575b5d5c92f9d1998ed9da0783fc4da6ef0e, 0x447f5b28bf180aee45621145b4be4e9fa0fdb223ecaa6544658e6933304bd04, 0x2242afd011295ecd3803edf1ca6d5d67e839de4a1076521181dc2cbd273d831, 0x5e5d8a78bfd3ab64168301473c006b9cfafa46269afc95164f2cbf85984d42f, 0x49cae3decb66eeaafcd04019dd3c1dba2f2e62f4039848c3aa239bbb0a61bc3, 0x140d4d91be692b38b6f4626dfc936baf9ee26552cdca0481c4b138bdaee3367, 0x3dd6d22507a9ecfd175932527b42ff2b4fdb0433fe92bf2f1e8b6e0aa14bc04, 0x2df248083fb4d6fbf862290f88bcafc2541897d79b019782933df1f9d65835b, 0x68483a043ae286e8b3b97059990ace918340a3c49f3edf36b0c32396b0fd7f2, 0x7fcb36f3774f13a0264c4ea0e98cea8dbcfb267a18f50f1c643f2708c2a7a3c, 0x120a2282d79aa03a8a7bfed8d9553b08e0a8efbeec2269ef798a29cc362aa3a, 0x4e936f4d6691f6fc9393bbf972cde917fc0503ec94e53c1e78c98c7bb398173, 0x1f84442eae0741fecd99c0b3f728b0f82419076a83a727db46842d6e05bac7e, 0x754835ad19581adcc2897742e94df0083108446db8ab37e7e6661e8ee2210f8, 0x3dea853bcb3b7843c1ae9c97a696998552f07f89dfeb84075d7a3f30f5b446e, 0x60a8459ae2f2f08c0927e85b188a2b54e5eb9f2876db0670f5fd0fd26898cdd, 0x2d0d8b6365f383090aa2c2be4a25113daf8019a814483620cb46958d07fe362, 0x1baf7b1d2824359c0e7de9a9a84eca31eec6f5321014df7e68a80a226ac49fb, 0x6cbb4e06b169d85bab08632135fec65f14d9f7754c29114035f9ad2e0c95c6f, 0x1db9946fda2455443832fdf3ef7fa781aa9153c0085ed39ba500e86dab8a9d7, 0x17321a0dfebb7af366ed1eeb08668d4bc1f9fa9e9f5ccab84bc14ffd49afa71, 0x508670f9a962a8df0d43a579d1152d97fa710cedbed774520e4dc5c648cc077, 0x6de5ada5162b861d4be2dc35b73faf23b8a114640ea57131662a0a6e36b0589, 0x47eaa3a3c2bbd6439bb5faf0ee5eb143daf5b476b2a20d25a39a94e33b06798, 0x20f8f1584b3826efb9d92c684eea759a7ec70a2453cce16f15e8f5e45ae7253, 0x68c22c0487befe8a81dc2fb1d340d85e279e3849c6b57a2c52e6b0cf5f2064c, 0x36983a6e498dc6a9fbaee1a2b06ad8dd23bd521c3e3a463df913868c051d788, 0x26bf5bf4bddcb359b755363b11850021a0e26ffe40455ecbc7ca856ac2b27b7, 0x6f20e70a1ed2225f5f82a4e029a4a38096e1da4434ba5f411030d999c637067, 0x3ffdb810d07e701af9d04cde95556ce82862b4927198bd387871ecd3c6c0d7d, 0x1c7d13f26cf05895c9fa388d7e50357f4a739438582ead0b1639b9b387909b9, 0x6879a498daad257e11066bdf92466e57c0e8860db67433d22ea2e08e031d2fe, 0x27362dad21cc1d75ded7a1931ce8074127c4f196c903061f41b8f5041d7cf66, 0x650f3e26a485a649e5a4f2d54e5a961b3101887f953f1fb6fc6335dd0c0fae7, 0x63a945222fd8da08296859ad5adb71d6fdeb74b72c9274a069e2dd80ecffcb1, 0x6c94f13645800ce71d3194d641e6552c0059f4d3743fe9178d08833efbd7573, 0x3b9b1d5ebdca7b53e8008e146476b1d79ea7de18863357058e921cb72d3138b, 0xdd2658a7e61407e8e872a26771065315fa7aced945343075b8fce0d360557c, 0x3f60e15a5adc5ed274b0c1dc693464aec377667ddc3f580ed50e09e6b4ae692, 0x5c169ba8fe33697a7324564dd11cb50079cfdf1a7894558f94a86a2bba02573, 0x26cee4c51efdcbc600f6d010ec1fb44c9df6a7447443ed1704f006daeed0a0a, 0x1bdcb77c9fec8f1184e340dcba5abf23da1a462c6f8ea46c338aea2e214802d, 0x69ad59c4a846a670c4414e9d8b2d775fc30eeada5a5202b03b303c6cc044240, 0xbfbfd92bf07fb49c8f6d8f3d32423e252cef6cbfc3d8f5e8389e69f7f1d501, 0x4e0a4b42d15fa97d71c444c173910879f7053bdf8f621e8097c3bb29533de17, 0x3e88871bd27b9690a6180dcf8aadf7a2e2f2312873366836e32166c0683ea12, 0x4e425eafce8b95f7990c33c856099416fb0adaa40e0f46ecd4afa0126c640e0, 0x309c0ca65626387c9289ce9b75f7b3255bb4fee19669ac946a3ef281550174, 0x3713c51c17182ae0cb3769bd09a849c85c0c862150fe537a3d2b6e9d656f90c, 0x3a1a91584f61f2dc68d33b960b21247d6165a086ab451c9529e9bd3a96d758c, 0x5afba54f924971098ef29c938979cda11ec0bebdb361f87d3329028a10ac7d, 0x1067271c9f42d00acb12dc947f265806c953ba4b5f89a2e322d1c50fd9484c, 0x157470d316ef066fa85f76740204256397cd90d64493cdfec970afa46f62d23, 0x2f4052cee1653fffa866a58ddb299c1eaeb15f45e3be177da9ed95d7f0d5eea, 0x50f2ebcb1aeae91c7f0c7c453cf79ac804ca46235cfa417d0bb6ed86d586964, 0x392704361c8aff6eef41c148c15bec467f3db60963074cc8f94cdb58d82c9f7, 0x470f313b45d61d8195f187a1cf80182071ac91876c50de51e64db91e0f16754, 0x75ed0e177e3f95a86c8131d17f4dda7ae7bed12ea8c12d767bbf32da54dabfa, 0x6dc88a2f73640c7bde156751230bdb209c0a1ee21da664ede044a79f57ad984, 0x10f31b95fa47f507ffc6da893b4b88ce5b16ff679186fd6e71770cddbcf414f, 0x4a7fecbdc9980a5f84e245aabaca6bf39523b1e2b253ee4eca214c7621f964d, 0xb132be2e17bc05b25dd1ed5c256d6933efa0074953b820446fdb48c90d8f18, 0xb7bdbbb7c52d50814818fec3269b73cbd01638db07ad4a250721c533653b15, 0x71c8fdbea64afcfea4530f16d71283ab35b7f3b18bcfa33173e050ef56be7a5, 0x4107450187c0f764c082929c806dad7e8f50795d51cf8ac2b1e36c8c377b, 0x724a9879726e420d6405c5885d92e192165e4d8697f7bab1f46b2d404f9d4c8, 0x428147582a817137c97be2bbb578b6b3dba79c01419107121641180f13d46c2, 0x2973f737a9d56c2a3ba571c4fb90b1cadaa2d5efb4903e3f62c79f68147055, 0x505bb45a037c6d4470149b79c1e3177bd1d862908b4c3f35c737042d88c0aed, 0x390959ded4d0300a92c691ced47366258bfb5983264dcbefe25be42f7f37bb1, 0x16f374c8bf39a4e1146cf36eb030a13f8cc1d9604fbc08c6f71ec5dd1384243, 0x18e771a2a417485d732e4f05b1bb4f907a2c338b8dc59e18ac252dd66c0a90, 0x7b7efbbca68cf4db91ef48354dbc6f1c7f0b5ea78aa26be155bc3e500590b2b, 0x241a18631cf5d655a8c8013a5f6d5026fdb4f25296e68e07799a8fdd1c1bba6, 0x2d4bcf495e36346a1c4ed666cc62bf75e0155bf715ed6bd355a372504f54368, 0x1b2e4ba3c1e22c0b6cfd112bcff33e8aa9adf7688495b167e7eb756bf932fda, 0x13a1272fb90062eaa84cb3a95450847c96bc5dad5dc9e622ae4fd912a2b60ad, 0x3bdda4dce9e2449ce4c60fd13819cb51623ef034c65e868f4212c8a5b65bf6f, 0x75d939cfcac2c4e56387ff2b1f0811d0c8602af6cb71400bb6826ed7c66a616, 0x7a6ae1ad15e923315137fe6d8ed837938d61c3e26c2680db34289710a2c19ef, 0x2acda10818c8cc253a4b331337894e7c21d8709e48fa36184e1836a308d4f54, 0x3d4af5cd6ec56986765ade7823e433d6a2bfbffddc4c6aba228cdb6a4c54b33, 0x5ffeb0d8ff2adedf9960d714d3c2993fcb368d157164afa5ee1443f52bbc4df, 0xa4fc9f2f33db04b1f97aff0d01ea1b70dacc839a481a08202b0c62cf733762, 0x138846f72b4b586d5f11d1f667b3e0c8fa0ee80975bf534f654790ebdb95bfb, 0x535a4894b90eb6226a096563d770a2168b6a3e482e1934500488611edcde6af, 0x481f6be46397648d62f23af4d3bf336103d6a9ae614597f98d664df665648cf, 0x20445f134c210170bbb7ca7772d41fdd07c962f3b28e36701d9c838b819c767, 0x1ade6b44999368d9099b11c685975a38f13486b87ba08ec0b11e85d42290afe, 0x29cc8078e35c5a4794bb9566dd1cb2abf4ae7e735acc25e54af40416f6f6f98, 0x70d955b9a28abdb1fb77dd95b68d91d539de938b2d8c43b8f0302a120515c16, 0xe222e8fd5361d183321b8af98647195f14e842df3f74c7314c615342dc26e9, 0x7be464d69ec603ff0b6c72a5a9836fdf2184d4e775340896169f0244ce542a2, 0x77ab15fc41e30ef7a2480509f545f102f6d163e29966b8239b46bb6d2b46bcf, 0x2ffb23622eb7053252953e94cfd8cf51ea8b5b935c753c112e2f378badd0509, 0x126be728fff0b7d2ef2ff70c2c6e73da657f9cd37b2d4b88c253c1aa85b7ae7, 0x31de1beec59b2384e419ff18e617c3239ad9cc74ec5bc0ce680964c5fd1c224, 0x5a06db9cf91110741d698f4d0f0a2c34817c1264be63fef01525877939ad6c6, 0x68f11f7a76e45e99cdfd3fad6dc5332f75899150d0879951f9ce9a9455e5b08, 0x20f660f3cb789e76a38caa8c9cb9c4cf7b0a909c3998c152d5f1388410ca297, 0x495dcc9e384b53c84a306e46e6ae8b97d94b100fe0196801bda5a3ec015362e, 0x415a725cb0d1d35460aea7cbdc9204c6951ebb8998db963127a94acf2d91b9b, 0x14592ae1ac43286e09f6dcb80716083c51d09f2a127fe64dbdc4258b41075df, 0x3f5b23745bd70f99a4b09f5ded83a30599b6c5016a22a7372946f92acc26e2a, 0x401156eb4e82d782c1f7b751993649064c1453f2a5004e414234dfe8d72fe66, 0x6f3336f42f72177d01eb593c217e11414d7550722d93073844840a263f9149a, 0x54b3c223f9dd2702f9ee1465cea873d125ee8d472d7927f2acea1dc5c8b1aeb, 0x79b7594c901513f4427be77de50dc2f9076b9c4f32f22c414495a1d88492d81, 0x4f2469455f585cbe669791396ac3452943cf696b702409e060e4e57f5386afe, 0x14846acf6507580478695195c2b9f849623e0ea3e5e3b079fd84a949220dd1f, 0x2b74016280b186b4d477eec72d007b66fbebe69973fbbafa3da1d2f11bfa58, 0x490086a7e34b66c4e325faf2afb1a0b4b21db8a151c477b0d6a52671c5bf6b, 0x65df4eaaafb13bd401ec7c72eb62c05ef5cc3669cfcac0b3a8e6f7644a51a11, 0x622e4b58039600a559bf12f018b28f0d919cba43ef2e17dd60728c59dc93208, 0x75539df43863258fd161dcf67404fbd28dabf2a5ff481d5f4cd7fa79ac2a8d5, 0x51d377cdfa6c387fed5bc44350f8103586a41d4b3ba742650dc20d34c04a79d, 0x2a60ecd216d449be907839800ac9ea1371c153cc1df3d4bd7886b04082af8eb, 0x7578307a63bba0b54bfcd3656ca8e969f7c752364019faec7af5a12d4aa54ad, 0x9f9772834db66be257500cc803c31747b3619e1348fba2c5414176b8a8d7c, 0x15f86b09c96bafdf6ee0348cacd2d18da8875d31ff95d1e6e50cbda0aaf324f, 0x325afc698face3a2707b930b68e7d2522db97f2b2d4d992848d80028a2c7f96, 0x514f24470f93fcd0750a11775c4d80bddc944623203608bbfd1ef3d67e9551b, 0x7adcc6f4f4ade3075e339660f02d91c4b2fff905f36aa57a433e13bef3cb224, 0x46cd083f56495ac7568105d489380ff0596219cf973b7be14eab4420e8641c3, 0x291f4184cd413395a9f2ec0ff9583b3e981652654456cdc03d59f42738371fe, 0x1677ecfc19379cc1d8357314c37a2f6af502b81e9c87f5186392e87700d93c4, 0x3d465f368a6de99bf6710d9580d83439fef8c0f2d551ad17f89678762a94c53, 0x5b3e23d5be2d703ebe1399c9aec92eccd3f6e6aa741823de4f84b53c78fb9b0, 0x58e3181061a2ab8f9ba6726d78592ec800c3ef173d3864724af40373859e8ff, 0x554676467317f1efeb23ffae3380e5492f80ff925f60875953b07235424ba69, 0x51b3a1b668e61fecc2dbf2919a355ace19bb99fa5d042f616c76e221b7fe8c7, 0x3e5e0bd03536e388b4638e33c23e38a8790aec223aa42f5d39b215f2e74cfaf, 0x7d5a319e1e1d79b0cb755e3f102f8390cf0c4f64fbfe90a685c62bf4a7b8675, 0x185d3426c06fdb9dc0117e9455d778ef9d528ef54d05afdc401197ae2544829, 0x606b953a0b0836117a48ea8e8db4da15b38d17515ff0fb500011c26e8bc75df, 0x5254893713cb2c484d1287c812502995ed2ee8b762a1000e0de746f29b0fa16, 0x67a8cbe2cb539e385a5bcdbdba4ef44aa3332049147c9a87387dec51c33b7bc, 0x70c55d5aaff116903fc18a3e4c9979f715d00a35214901335fad6f6bde8b2ae, 0x12165f8576f436ac9ededc66cebb0982e4a0ec8703c934bdd2ace2a0c4aca76, 0x70659c620a7e5e2f78a0805440f5cdca2613b84b7dc2dc583990b7db5931be, 0x55a483681e5c4d144dcbf2c28b63232c0388875c265df098259cc1ca1f9018e, 0x65dc01633e92d66571f05f071864c6e77cfe2d8622cf37f5e8e3942c4b51149, 0x6e06fd6a9bfb8b73abec8af9ab979c13f03f1bb163f47333717b7586db6b55a, 0x5a15967bade5caef673b1380e3aed251259c1a3ac1e325d12545d55aaa96893, 0xb6b1d745b41c726314a445865fcbbd0f4785c5389c6ea5f068d8d40789677e, 0x45735387f01c22309cd760b5484245467528a589da1337c7d1beddb172d7a34, 0x17e1fbd30a2e5f09086d3049fece441b92d080f25c84c9660107837880abb28, 0x235ebf8e8dee4239bbc890517e8343d2bedd1f2e96b52e16c0ede825879239, 0x423ce18c318dc93fe20dac3b5e47b7ee167a0614ac4ea3a2ec2a1a22745a4b9, 0x3b427630f20d315e9a3e6d99719c5e8013f5cd64dfa1032db10cbec91b2b8f1, 0x19fb85b60acda026cd94bb51f7af5640dfc1cc3581869627b28a07a207ac4fd, 0x1cdc1ba831c0540ff75b1df070da879f68551c01acb051441a3c57e46e16dd8, 0x787b24a3c27311e86f72dbd4d92b133f30a74607487d898a337fa8a7728de92, 0x485bd62a0cc36ff60af5bf65f929593c5df048ade479ee55a05756dfe34ce38, 0x4466a24ba19e8bc132db0bca0bb22563fa4efae4ded51c60647ff595aa3bf26, 0x61defdf0c2aedf109621b68f0862188177be0cd4ae5c23d8e4cab4475fb58a, 0x3bce2ed8beed936d847791b9358ad8536dd6947c30d14855ed1ab0a2a0657bb, 0x284663a5b7f382fa3502d9371b6586760d40875c01004d0bacbd2a35cde8b6f, 0x7e3d48e95e68593116ef665b14479206f77c9f2b2b9fa629b425496fdbb0068, 0x8ae18c1192fc2592adbad7dc75f3901965435d8c30b57d1462561790ac49c9, 0x228a5ad4cc5bffbb69bf1bf745c05816966cb8b2eccdb20817e54a1e325d904, 0x7c9b075605f902d5000b28f08757fe8fd7d42dca2e56af4d9c8025a05bd3267, 0x14c8be82fe1cdad14033991f444751fbdc678212ab2010abe933c9a4296de4e, 0x7c76c4adbfea2f8f34d4204cb88b58adf2ce5ee1f55ba75cc4f53c1c7741366, 0x23e86a3adf75cf6f2c20fa24f429723d008cd0b0da22480c2e81f1121129404, 0x756d274ac2fba5790fd8b097438ee70a3ad1f4d48b8e5a13de9a18a8e9edd88, 0x710f25b9896d5bba10a1fe6c1c0e47f8dddb00c569da6b8c26ef9ff2fc90256, 0x4465a9531b2f43f8a0e93d73e5fff1f58f856ed90b0cab9e59b0887ac3f98ea, 0x3ff55f76f3ceeb661bd96e49426e33f11837222f50412cccb13be3feb1ede0e, 0x6a1874f15d098ece4c5b5b1ac1570c55425c2f9d467d7625861e4bfb71b4158, 0x74a8e0522adda3d608905a68443d02b0f0a2d8330465902292130ec63f8d152, 0x4277ffcee62e22f0d80b0e90a71f35f12d68b930df5f360af91f361f12718b7, 0x732fc3e6b6a63e1eb162a459f8fce9fd086905b44b905f99b1345e173c88f6e, 0x3c2d5db13e6eae8ecb2c9afb333a3b47f633592dfe3cd6bd3552f18a5ea7da, 0x23b42311eacdea110749d0c47e8e8c8d1a07f24ec54591ea8d11acc95741222, 0x5451357a8d8b8e1cf597b8779f91bc1f04b98238b45f4c6b8748beea6fac077, 0x612fe4866f96be460cedb44a7303a35a8db6e5bba7483763875ef3aa9bf2fb3, 0x370bfb92ae5259c78faf2b84b992baa5b7704f2ac47187407b91d864183054e, 0x7ba58ae6e74293b49a72097a4b8ec9d192dbeafcf86038824201403ed60dd74, 0x1912c295a463cbcc6ecb4f508dc3c3a178a77d3b6fa2fdac08621997ee6960, 0x6f92b1eb9a082871764bc4bdd123cc3179ee06c65e4e01edb8de71521559f15, 0x6eb8cedc7ae3e296158639026224908b0e1c701c81e751f4cc178c503bc7a23, 0x2390e7821673181e29c9ec2f6cc3460c5d9698a5f787d13ee522b7858a874f3, 0x408defd137ca9b430662a84bb16ed9cbb345fa9de774b3bbc70762dd8c70ca9, 0x1e1bd8b576eb4586267ffdd1fb2d2fcfe024b25bcaeb8d755ebc9f53431b18, 0x4dec65e3d6cb81c671d134bea9a7df202eee4b0c32618e003c7e43391da0751, 0x4401fabdf08241eb08fc18c737a0ed8a393f1aab9911a6260198b88d8668bb1, 0x6dd6d2829886d7aeeeab1eeb6e6b96ee3c9263757135a76e79e593baaf8e483, 0x3635d3fb833084a6c1d09381a916bdfc783502177997d3506b0fec6024d89b2, 0x7e293fe37b451d1c5a20a4111685dd8a89b8325a559c25e228f38acdcc2b4a, 0x23ac96ea6811234c74dc1d9415268b414c970a0137af72e10cd74bed568ed9, 0x2d8500bb11312dcd1ee145bbe8687b3438632a076bd31e3f00cf5f1a3abec25, 0x1f5e673177bb3a1de6442dc16ae241fe08b43d4cfcf300cfe87038fd214513a, 0x5580868a3775573061d34d45ef8877e88758a0a91238385ebcf969d090aa736, 0x4a343f5275db72c9948326aa8ae0638a784cb93df69ac36d63673209c6f223e, 0x2a48c52e6933279e81050ba3bc165b803a5e64cd80bcd9fd2e15ad72c540076, 0x2b3339ac3aa7cbda10e3a3bb433330224ed263b15434f1cce2926a38c668937, 0x558013db872bb2cd1d9d00b4606d7c72567d7973272a3576410f10abef72ff4, 0x5a78b25256b1def90bdedaebb27c1b58398a393cdb871c46d33bdcc48e128de, 0x288d33460018443e3cea35687496bf6a8b8ca47344e6c1dfc9a5a0c5352bd74, 0x4f00741d64cec95488ea894cecc6414bb1fe2a6eeac37a7206262ae4b5fcf87, 0x1ace83c44cec1c3a5ca19d3029afee7123e0ff19d869d68c5d91f04ee927ade, 0x629844f27800d5cea67f18e5b3317e1cd66cbd9c17e4fb28117fe3adf2aa3e3, 0x357f3d0f78958588f63354b1193007814a73f5768b7808d72fc0854515d9841, 0x791aaeacd4ba84539978f8ac15d982ff15e7344fd0da496f0084f392f20dcc4, 0x1e9b1ff49c3fc11d0077b0647b61c19e5f4e225edc83f3fcd796efdc43e0edd, 0x18d7daace059e681eef4cf32da3689dabc2f64009c392d81bb60c9a5a4a37c, 0x79f331dc3c00e1d49e33ba0bb42eb768d3f37ec77f03c5e469e9c2da861f971, 0x2d12f37b369fa655ce6bd9f487d5896e81cd75461b2951a5c9e2ab912eb38d2, 0x4f6c119c3b2ccb52548784f0b5272116b9bd7c66b619391109a4f4fafd32ff0, 0x1dd2d4f6694d7e3e9bdd8f657344e3e0555c11a74c36b3ff609cbb8075d983f, 0x1724c7c595d63450b179c9852669adc2dcf8d1c4337df64575855e24cd50093, 0x449a402b73014ed69ae09c084c827821a88ed3aa7251744f0f111f735fad5f6, 0x77f000729476f6ecc862976a687ab8874279145a29805d4b6d3bc3f869f9742, 0x5e6dc13c4b9d8ae55edb40cc7b2117cb791eda1871724f4d1954d7cf57c2ad6, 0x11c2fc543f2848b09888b689a4c0c64860a9ae0dbae74e0d9a966e17427342e, 0x1b2fb57cb81b652ab123a2ee60a33e4ad73c997214d0989b8b70cafd76f00c0, 0x62f03ecafd8ac1fdcc5e85f773ec56aef207eb3ded186412532c5b331f36444, 0x1bc0d49bacccd110996f1c26b453b98a698c116d29691ba388f86809731cfdd, 0x3d985261e46d329e894f34804729a1ec5e06e231ed9aa46167c961e6dc7e08f, 0x355880c17950743a769d383f5e83d1847605dc7f99a8a68786f971b63bf493e, 0xfd602dd1c0c73d48a1997285d1fe1bfadbcf0815620a5634ea1fa33ad5d31c, 0x599eb7837e627e555fba67c8c7e0912baa8d02718d9349e51856007fc3d353e, 0x2c16fe28b18cb40cd15316af86e778cee482d763161a4c547e6bde923d3ee6a, 0x27e15c5ffcb5a864e9006e723031328992d7be05ca0e7370a038f846b165f1b, 0x68b26c77a221f59296284dcdc35dd7c66bff4d9bdb6f529eef1450de0689423, 0x55903db1aae29c995d9bbe861061dde7cef79ce56fbaeb0bf961c2ce3f9383a, 0x32ba39d3c461e09dbbf6ed9c577737828b4ef3080d7a716d2c27628e427d112, 0x1bcf6b29b0ca04bd523ea5d433828833df3f7b41c8409a53998df31abe36691, 0x3905f1d3fe46e97534dddde1b35a98b26e52d49561917aedc51c1835cdc3f85, 0x12a10c77dabd7bc0d6909295270c08ee6c77e37b114a6591c8121e9008926de, 0x2275a935c75a3a4054f3280a43f528ea22a9fd9561628188787ced0fe792ddd, 0x707c4907ac55ede7f01788f70f4a546b80ede6980b72200a141023833708472, 0x5c7f9e4e9a3a1c21347b6453b3a32f3f778c1ac0343a19986898e211f7ab8c6, 0x1a7736be1db9fd906a4689d0f6de9a84417353ef5a67c6906de7dd94af1ea14, 0x70fdc7872492862650b7125ed8fde1126e0a7e95848dce5d2d0989db57c612b, 0x68dc8b2cdbc188d2709b5ab388442e74e4cbcf8af3a6ba5b7c4aae030ded89a, 0x767a44f23c646f2456763e5ac8da080a86744d269a4a1b71dfbfb9860ca1761, 0x3b29ae72eae86247407acdace12f78407a088933787dc9be89b8bcedc6fc4b5, 0x417d4ba870e3f582f8f2b57915707a835cf2b6a36d6ea9adc9ff048a1de90b1, 0x602ec80832f85f5661b7da22e5b36e84d04e095d0f0aafa624aa3134473672d, 0x5add28768f1b905ce0e8dc7557079f7cdc545dfe6bd902ddbf24b8938cb9e5e, 0x563ce62204e649dcd5173f209633fc03ae80e50424088225daed972645c730c, 0x1525359e2cabad5d0b84633baa7a492fd6d6fe632e6866e7adf4eb79e3d538, 0x6268522b257e5e9dd6778c2e036b6f791accd304ab423253634692646457b81, 0x2a6a41dfe6b6e5e0bf349f42ecdaf74ecd875d90bebc9cf57161725c274d454, 0xd38896482b6905f9605b2b749212e098266fbabb2f893526861c168362cf73, 0x7635289ec96cba0f1c312b33eb601b42506cb3e3653a53ac7bdb00606625e4c, 0x3cbc8198d98a8874cf8a653914fb07ee65331d5b764fd2b8f5f23b633955e97, 0x48dacd3341bd03339c9a42d0fedf08bcdf5dbcb66c35a8b5365f38734f52e75, 0x2c4cd7afa3618453956e71f9a69815736f23c7b50b550644f2e3292fce0d331, 0x29d6ec3251f53e09c3f8e6aa9861ca3bade6180b40d2023c64dc2d4bb77199e, 0x6cd3dd93e35455d514bab2c53bd707b2880a30f0dccd5873aae79ba8c23fc64, 0x71e9dda0b6dfe9317c777ceaef5d95b5e151d0bbb606079fecb22e80d54ea33, 0x246142c6eea0df97e01ed9002fc2a93fcd204b4ae6fab3dc358bf3995d3b2b8, 0x27611c0c0dcc71740c5f00821f0546a6ee87f253d65deb88affda3c86c9da3, 0x558e97ca0c790cf4f89b4e54b38875d541a482aa1681b2b438eae47d21e0b7f, 0x6c6c15f8f440b3b57b11304f497387d74d6ce8bd620f12db8fa559567248e40, 0x55dbf8433c459f36999c9f181943bb67057c692b5dedac163f3eb625f45e11a, 0x40676a97599adba557133325bcee62f256a1c8b121aad2adf5d090a65ad579a, 0x3e846c56db52545241011e4ad855faca2d5d4fac71a3600814005094867e9a3, 0x5d875940172c637a04e636dead5398d7148f913be226c379abe8a2f64e3b8ec, 0x292b7c7cbfe2e86f8e11ab20810b7ed55cd32ac492b68e9c1b3f46b1ba5b00b, 0x53beb7c027c8a4faadb4a3bb65b1716607088f77e694aa27c6dfbc232405214, 0x54e367c308bb6eb5f6582badd6da91e982c7c8acc7cffc0613ab759603b1975, 0x1f83851598b45e1084265ed47c98e0f9541777b3a8ee910ecf3f655debfd8f7, 0x47775f59e50c9910ef8bdd253292fbfcceb92a3815a099f56509e5125d400a9, 0x1d819b814d7edb47785e03201768eb09b5c9550a576bbd1c94947f9b327ddd9, 0x530cb9153f90479583d5ca74bfe90711dcb1ac5b417fbff58f13f9ab13d185a, 0x57760ef847dedcbf7b1cc7d686a51197144b05b125b5ee7a08f0cad52416bb1, 0x25505080489772f2bad4c90ed0e9fa8bbe601861d6c69011a12287fad5f18d8, 0x7bef46aa97f4420fa7304dbd635649d3049b3c684d49c97eefb2d5e841a1172, 0x4690c4e681f2f7fc28b862081cf8f3478af6f323794d56e7c8a1099a3aca6c3, 0x48adfdfae587ba1b7b3755e77aa984096e870548fc8bc4442eb68388c72e2bc, 0x4639890ab2309e15c2491ae1bb759fc5de98b3c07d0942b4cc23bf0e7a2dbc4, 0x3a2243145b8cdc592977a9549615fcf5c01cb749016dee2e60ddea3baa0f6de, 0x7bf7efd198033903c7818002a17ce13694e5bead354b9433001031c7ce56f4d, 0x560b63d890b3426b01b097f568b2153ef5b4806f8d284083e06930e5e415b4b, 0x6a01fdcb66fecaba91cb581d2bc24bd871055b3a73e414ce3e08f623e6779e6, 0x2ad5cbfd8edaefd12fac43530582cb1626c22f2ba7aeec2d737853fd51feff4, 0x3943e2e6a5d8b6bb2ca912b2a62ae40bc9e3d7789b6c28013c947fe44e48dee, 0x6eb7a273f6a95a2c85ffad16d28ef0b72714fefa6fd3de5767c4ef3eec38feb, 0x16239ea4731510a79fd12efdeb978da34d2db617fbe77344f915f6dc528c59b, 0xa5f277883b61da7ad0f510c9c04e48d2eb9363e4de0a0a72e49deefee08fc0, 0x6d8086c46afb441e492840d64bdd9142c2317b144a93a38fd495cc091695e59, 0x7b56412375696d96e4945a2851aecd1aa315c2d01670f6dcb5f278c91f5c8f7, 0x5112dc610a5d322934e438a94573d5812de78976868a3e2459ed6d3b2f183ca, 0xfb46c968f2f0cdb94f3008d4612b73eeba6bb785b6ec5ca22f615aed886003, 0x5b7f3854651b488fbfbab33c9263de339528e07a223a975dcc79319955d55c6, 0x253cc9193db3536ef004c54e244da6e1aaf0ab67ec9721641316b6fe59c6f5d, 0x705b9ec9313b1f626bee0ba671dd8ed1fd73552f526384401d2f65dac7eca20, 0x621776e926dc5f153b2638ee253bc056f9658f90c578e7eedfdd44d492fc234, 0x7939d6175cc015a9f24ae79d74f108e4957cedfd0b71627ca2c969e60128b8a, 0x678646fba26d1f3cbacf1e6c0ba1190120f4960b5ae959337d2700cdc4a7aad, 0x3a1c49e04e187349848ed764de173093deebceaf138bdf89d2d1f15db61b310, 0x6c94621eb111b2a14b4e96b3fe6aaf78f9a0b13357a4d168721dd27f177ec39, 0x4e7f6574cb25bd209944c2d79737ac5fc50426ac5ca5253056772e25c71fcc3, 0x688265b470acd697cdbd8c2e89ce3116d4d89c4d6d4555c4b0c83598628b6ee, 0x1746187ad60ba115e58f1fee41823d687038844202c95ac4e2bc89ab73e1ff6, 0x344bb79895ce09729bfacc9948902a09b148e8e33270d064d19b934497c8652, 0x13ef8329d975181a0ce3291708ffcd49bbb16e04de2748f505422bdaa9c5ab9, 0x28efc555b48fecd4d9c4af8f79f74510349d0a612ebcdcdc9034df304b95c11, 0x324a5b92b2e6a3829a099197651957916cb32eea629fb4206e3a1e2d6d4faf2, 0x3d5a702fcb7cf2af54bbafbc2ef0b85dba763fd1dbb3ae30b4942041fdc8013, 0xd63fde4dbe8dfc68011025fd40669c796bca22c91d32a3f4ef036427c448c2, 0x1f4c080a1f01ad8a4d831e3c0a2e89ef0e8885a40eaa525137efc496a9e8e38, 0x5ee8caee347eb6d8cb07712ea7ce534fbdcf4301b39859b66a3078d75476681, 0x7b55fdcd3f3352c1552a2e6fa750076313a87b9171eaeb8ed21177241c329a1, 0x7e6d3a1fc64552dfc8c62502005a63c3fa69b4a7a180326f140c9d29a3b7ce7, 0x3e14bc69ed2c47d6c6a17c95679d2eba953f3d496148b06e6b22c0291459cb4, 0x6f47640dba1e2a4188b0e18925d8af34ded50fe56bca27f20df807bd20688cc, 0x11a9da2a75bcc1afb704303f6ebf263a588fb372e85212e854e813c18b57674, 0x2074c5e76f81e2e4dd52d81c6cf5fc34e86a0c331ac2e2e8ee3bc060bc947ba, 0x5ffa33bad59f4e3e4b1226abfb52e536872c29277bbb56eaed8d6b95b4f0cbb, 0x4bb097a9730fd47d86b84dbe3a28f96fbd61de5a17927a0c9e5d0eb43fb17ff, 0x670d4e43a7ed042f21c4f9e705058f9ac7260081272853f10f17255c83d4f4d, 0x73c27a6aab32cc92516b73f8a9762c661645aec5e4c75dbd97d13a079c09ae2, 0x75c390d3530deaa883141798ec778c4035683998936541e5f2619d5690794bd, 0x6ec047654e7fb23309d7786aee8171299efd5a818f9da27fe442932bc31108, 0x3b85d306fdcea3e93d95af08f52a4fde89a03d713145f3c2794dc49f00bbb3a, 0x738f860dbd651d3ba6c61365c8fa13a623f9452adac5b81b78c10d5ad02cf1d, 0x5c737d7e34b6133bccafa332df7d636afd88f13d552272c06481d83a613444d, 0x2598970809082d7ab774c1d8e43724ad4595d7398ab5fc9cd2c4e774c77609d, 0xd7bac0ddf6ec33da8d02b7d4a95c491093396f7f737aa8c4b869c8e5c0b9f, 0x33dfe2ee270f91331dbcb8829bacb90af15b9cae6cef0e9c0e8768ba6e3ab53, 0x7e3e24f45f1e308c6deddcb9cfd84b69ff9089407cd58ae75a19419f2270d1, 0x23de6539e99ec5538bbccbaaead78566d800af6eecf0cbba95698f1abc79657, 0x3cf93efa5c412153a85dc26021e7aba56458b46ce70533bed103c22a4912957, 0x3b4a8c326de72502f3912cb1a127b0f5444179c9df9d42ff2ccc9daade5c05c, 0x6d2261ac202c26b47da52197625f148fd1d4d6c12bbbea6e0820bbb482151c6, 0x586e9502fc442472f0aa1836c2a4c021dfaa2f3d20dd15a41635c781d736979, 0x1feda038787da476a266d13018acc36947b4a816aee72deb4236fa0c9e9e981, 0x1063e2d9e0628848d7fdfd38768146d5b7de2688b2aac17c13687e6295f1ab5, 0x3586c453af5205141eebb022a8ac50b558c97f290d8fbe9ba4e21011b572fd9, 0x3793f1d8223a08a7c291a66a35136d5ca6fd07259a688ec0ceba6c1f596433b, 0xb1d9b65e16adeaf5035387fc4ea949a5657a3773dc3c2d3d7d42783eea9be3, 0x35c5720265f9743e7273860b8abe3bdf512e7db250585df0f880530e4dbffbb, 0x648a023658726fe2de27842a9cdbeff62a0689b49130a56d580cde711e6c8e1, 0xcbccaf9eeed1533a67951d8899d49915b7c90a4ee214a19058974f5b4736c8, 0x2a181783e26a2f55a54336a90af4675bc771817a6d8d14f405daa8cb7683ed, 0x8fec2dc10af806bac8dae0fbcbae521695a7fb14c4e515ccc896775853e161, 0x10b8bb64a7aeb887ba2ea8aab7a57d9cc5fc9f5d4f969a1b33ce3206df54eab, 0x12651920bae5cd8270fa139f88fcb252f5249dcdbe1d8d5d1e926b3c006226f, 0x6bd6099046d947c9a6af2a84ea318eeef9034593e611844e1c72713f6146503, 0x2c0b218754aee9bba9f0f54820f0fc9f8eb4bc0273dcebb3fa7b576407122b5, 0x706d1c06c2d868f14cb143c868e0f33ca9d3b7de00d0100c42870c959ed3a43, 0x72a073ac2e3f6fd9331f8cef7979ec693d273a4302bbf4230346ec26a568524, 0x3af6eb8afcbab06b7b0973fb2da05f234a8f71c678c4f1fc8cd98f25556b02e, 0x39c1dbcb76838b53de8b876bd4756faa04180397b05eb161f22224da4a05b20, 0x614a8c3d481b7ff6b6897562009120a329a23ec7d8405c2c7a8c6c49db034ed, 0x38fbab87f494d98bcec7a3d8345fdb9254cc30c1f4bfdf58d67698105a35d80, 0x7eb9ad7d1b70766a6c9192e89bed5d6a638d88133c49bad5b7fcb3d132b1b45, 0x7938efc5c83d2f212e309c4e9e0ee97517e64527c96c8e7dba95833a25542dd, 0x4c5c368c14eb3701f6264bc7352f6b6c077b76eedbc8d9296c0c708338fc5f2, 0x564c9232ca2be9aad37388bb357d72280336db89e0a364175bba11b16f58185, 0x650574758b667444a60a8b19266ca81b4cfe0022f3bc40883f220aae807ac79, 0x104cacff83f6e7ae5017a6f75ce99c22a4fedd57a2a70956d35c20ea4fd343e, 0x16b44c8bc287f67405c54b51e79c93369be43a1c6115f768e7db4572ecabc67, 0x89088ad8259b1eab3b473bb396808979ccf46fbd09ca2f9397f57df7fbddf1, 0x5828d75e78a2171f3302d1c6a887d157d38788080fb4b07f144ba880210b3ac, 0x145a17ad810ce1ad3a97196619eaa49516288e31abce0cb7d89a078a9f00092, 0x1a87d0cf8187ad3cf26c089c69eba697771abe93b0003d01103b84609c11544, 0x5ed3a5bbac6f34f4997d135edb909a889975551246a2fb380eacb78a8aed5f6, 0x59cd1c1d8fa1c04c77dc1f9f3e1ccbedce54ef05d193f859168b1b88cae4621, 0x33bb09010e42192934a28081ee84c72ba8ea7f104f77f1f944ad4888798a7f1, 0xe85faa7ab673ab54b0146ff5fbadce567dba864616a3322c41dd5790579b5b, 0x1ffa85972140f9c950119ad9acd1e687e480d1a6f29b033a1c0da15588d844d, 0x78139ab216c6483c8d6086eabf475ee811ddbf95d2b6707556afc5411a095bc, 0x4cf240de67626982be9a0f156f32c992c160b1d7bd70c064da83aae8b5304ea, 0x1cd3113d91508d1dd9c9b626ee2437ded91908e991a5f9cd82365ec42df9b2, 0x5f542c2012c33d323e12b153b8c86fe11b74348f8b8a0def312b7ac3f3bba13, 0x7eab888dd501dabdd0ec8ad842cfc47cad8cbcd3eff79c3d47743416b1fcd6c, 0x442c43c1a8ee57e5bf4283e977bf614af12aefd49bab3e0c4ece71c439ed78, 0x4aabdaa80d3c577fe0c8e5e2e3943440e0054d08b7d045044315abe7f14abc5, 0x660223f8fb0500d5ee3e32308f230c2cdfc2efb8b84df860f0ebc9c1c8cbc58, 0x455cd41f1cbda323f46030cd1037a3d6df7be09ad7a2a1efd165ef5232e7082, 0x1375deb04156b449154812b3e7e82262e4df3402b4d9e58d175cc79f40b83e2, 0x3e6e04fd85b7e14322a37b5255b884cb596b22ac1c0c09b678262767f239009, 0x53b728fd84518a2107ae356f01398a2bcecbb9fc563db16357f7698159540ad, 0x589830147db793e459c8fac8384fccf141ef43c1e73bc58d3aebe99f7a583ac, 0x6c5d1293554249d5f6430010bb84b1d1953c06fdfed7d365972e752b6096f3c, 0x10bff3799eb36e715a02ccd309e27a1849eb8d7c7c4fde0579c0bb96d6c1d1e, 0x448e3242a1f685fa2f820f9195796ba97bcc659c7c23562d8bd38e2f9c55703, 0x1ddac0b15ea6ac155623824a16fc43579aba2b3951027c92cfc009134058d51, 0x4cd75d61d7f358a5ffde5fac0b9af064ec642cff70edf81f138a4d6a3fcd153, 0x542538624c64616fe129361393ff76d415929a93f382f02f7f3d62748d03557, 0x39d86f4c3d0b1d44228f3d5706e82cce70b8ddf6787de5eb794e626fb4483d6, 0x2ad25f43185140e9628a29cb123777594a61823a89d4be4eedf9d22b5fde3c9, 0x76249ff743a78c5696b88259e9927042a1e35cc40d616bde8981b15ce4687cc, 0x22f9fba11d3be98215543f3a98c4c449f31f30919882ed429620b07b8e2fe2, 0x53857af7413314464d9051f35d3f3e8eb1ba326e5d4ccfa7cd1bc1138eb4a7e, 0x187c8521eab38eae77d778661b94d7a98363187b22cb9a2383553ca65d215ee, 0x35379d46573f20008275c27a56179c089e35a9804f94c4f723cec7e2b7d37ee, 0x7a4e58f8f245088a9f8265ac9d70dd909e064be6795263cc53eaac4c108121b, 0x299e57a343101dfc9c65c2c05abcb722403104d877120c921b50e85f46e52da, 0x6e7e3573c36adb63c62a51e31a7f344a57aea565e343e71b183688294240559, 0x63fd87d8213e614a5c35f0dab6900e3ad06e119206f7d2508af6f41b0f8bd0f, 0x310be858470cab581e9a8b1895926a38245f3c0f5aacb6f7bb9e7fd393b31f7, 0x39ddb1c21d423de60c23ea317644128c5f40f4a3c3740664b359c129bcda256, 0x2cd983e642449c7417e6e5a5639c72c42fba3c9e09627f5a919afe509acd278, 0x4a427ff7fdbe511154797cd6f32c1907ab703ee1658905d2b87eb3658b99fcd, 0x4e15508db4ea4fb501b53878da06c11f0e317083be34d20f8cf9bce4940abcf, 0x33d5e0de780947e050bf93a5e18cd6fdb66b01da6fc577c4927b711bffba902, 0x2432d96cd4c7a9cf6439f9b0f910162cd0b2f6454b7cc538c99d207e2caf056, 0x63acd5c566e867e647dac5cee47254a65d81609ec0b32f9ab58d832e9506f61, 0x6d8048102ec843075e3d63d4a8bc8c9ea9d0b3e45a0bfc6cda8267a25c9af7b, 0x68b9f132d4b974276daf3fb7a402d07ca3ab47a545804c281fe8209ec44c659, 0x71fb0c7a4a8bde2405b024a15888b253280434016cc09c4aea3bab3ef26b0e4, 0x27f1005a62b05420cbaaba8f73acd1073746a1855114c4f1c2a16ab382d47eb, 0x755f86795f5be3d3b7965f8e39a468a3108f0b7613710c07ab672e2248c0b3, 0x7b272d342542e871cddea52849359a127ac676768b496447a2dd10977d9e0fd, 0xcbcac8d724a40511dee1fd2071f2f7f4b0ed1c4ddbc662048660a24c269ea0, 0x5d80dcc5b6c5c4c603b6006ae59f565364eb843e10dc37a8769b67d951743b, 0x29fabbed6359097bf369e4f32552d0d971069f4ffa3a36de6a1a1a8214a7f2a, 0x587740be8bc0ef0911d4a906b48b2f8c9fe084c0b04d1c87ef4c964ecb39c2e, 0x3370893f6f9e6d39fdbbda8d4f48e99d6ac5794d43b69c2336ca9c41c579462, 0x22063c24cf4217112180c146a2ef0f213aa06df89afa58e47a5af7388ea2ae4, 0x37b11f2db7b2e278f3584b0ba9f117ff9b297439227a62083c1f562e655169c, 0xb328ce661bc60fbaf5210f434a1abf8cb3f1b38bd3f5b5e02aff5a50d2c126, 0x3ff13865de96bf3c5d3392c88ff438f2370bb83bd102918e514adac5ea95608, 0x1914339d1751e4d42f7673888604384065825abd201b3bb8c1d9900b6d728bd, 0x4e0794464b35a9da70f78fed0f0b8724bfdef70a5224c89b004573a1cccfc67, 0x727e3862225eb782525342a0e417723dcee290d66ef2f4c69b6c3402b44520d, 0x3f3e8d98548fa55ccb57c4b80b3434c3a79277ff24edf285fcadbebcade96cc, 0x56764031f48605219759b2184ecf59d144776dd95b86dc8de2e5d262ed74037, 0x12bef8d76c8b98f46df8c2c4eb5e23466c274d6de39fd8046a5dd02e91b53e9, 0x2bee1ce02cbafac08d448c1e82b41a74032ce07a70cd639422f1674070ccc03, 0x1e26faad3da931ea8c85eb733197c8e0cd62d3e94d1c10353d87c48948d80c0, 0x2a1b80d7d133816147f6ff2a1a84bb02bfda80482618444dca667395f5cf0b4, 0x433e7287a861d0bf9e3db0044a3833acc8fde07699fff56b9e07b1c2e67c0e9, 0x28827e9aaf4206a5a59904ac35adfed3f084f57fb78d1b26b01da3d205d1fe0, 0x5cbffcf3dd3c8de2c8766c652efeed527f9835fcadba6fb8c880de501541b0, 0x611c325a35a611bafbf37c919abdb5c0f90eb52b98f3da7b0272b49e85f6f22, 0x13f7f61f58a9a74f5d5fd983b293a25ea58b14ccd0e997fc2f884878fa6deed, 0x419781294916c2e422e839b3e1f49c61b1b327c81f7ce0e25fbd377f6617fb6, 0x3a85d6431c86b1e8b7eb2a0cebe0e92b6a11ca60561270cb82bfda9ecd95cff, 0x713b665e48c9d8b1d68a822ec19701cd54400e069cb62801eac59f1ffd7e35, 0x6979a539da7743aa60b8b86493ad559537bb69121a09d01f843b456e096b794, 0x6c283f8f1884b01dac416664612a21e20ae085961bd39263db7b060254d534b, 0xfd0d53d06fdff4a4a75963f69ac878b32ef7eeb21d0807736cc3282f7d6cd5, 0xe049eee0fbe191f9eb9afd33f19c62ded1faf9d1d0c696bcdd8803d4ea686a, 0x770312a57172b0b5f62a89a1d175dee35d9c4080ad3c0549cd880fe755d6d4e, 0xaa9416e22bb3d575d26b1e0d59ab0b1ce89bd13b479cb5fe6d377c93b39262, 0x434592edd096d07713233ac3b9343fb6a6c19f3ee7d3f7593140ddb6f3b3c0b, 0x43910b52180967d3d27e57634bfa0c4de1d2e6f66ca4ec4ba5e0508528aab09, 0x1cd6e20ad4fafcff341b33514e4e7140f7841590dedc09dbc6616da313fa364, 0x15bf505ac6dbd55bff73c034179fb07d0181721c728c2b0e02bbfc439b6109e, 0x1b9b05ca5c89cfb491b371b77f377be905f12f5d80d7f142232c26935354876, 0x647ea18773e4997ea423636f30de4d6e2f6d01ccc41279c44235af54aef2e82, 0x5fe6eb0fd007799df097494dc9c17040ac8bc63bd0be0a16ca03264466ff952, 0x793025b783e26bcc842ba80003989b3277553c2843799904ccd68cdd002caa2, 0x634fd1e2c85b04cbc48ad0fe13346eeebf73aef69197f6c9b00f992df88b2fb, 0x330297d52317008a810c3f95ea6f76de8ea428c4236e3dcd3f6740f98ee47aa, 0x6db744459ba97b46fa941b3778899d9a4d1d00f9068c74e42837f3fde2a21a7, 0x16690c70a7e5faf4259d146090df75d6c972f7c19fa31b1a5af7f59af16196, 0x3c1747d7cb68dad178773c4f7b194c1bbb46e9927112b5f870baaf58ee2082a, 0x7a4820b38f1a936443de848ccc5a74afaf682841f33426fc8ad89f90081c049, 0x643a4981e9fb9773556db34c48254321a2143aa9135490c8372b79197f1b7b8, 0x612dad37f7605c27de1961592359ae3ec5a99adb74009817452c8c10eff324a, 0x6af45793b3e5a7056944f52e940555e6aa69e0afa142ad301c718370e2a6ec0, 0x1a1c9c442b832d2c59b35e3c06bedc8ca20cd6783f81f749cb84d97937cca11, 0x7cecb9f8b06ddd1b53cffeea95c9ab241c720deb4b69e404c35986c4d41f7b0, 0x3dd75735426ad8ba44120acb0d55a24f58f99e03a6e10d2647150ceeaa7bff, 0x4384ae15879853666d90c865f383e59ab4c0309429ca6a6ead30a0d51054756, 0x75ec5082b86d17798a46b149a36e5c7a5cd4ee5be8033aa8f205f18d7f708bc, 0x4bb96a3062f1f5d8d8365b514f17c1e979e683d267103067d1e2953c4b04e5a, 0x68c668e2791e4cd646bb0624ecab733b503e29ad81697b35e2ecf221eb71730, 0x2da1c2e549ab770b6b9ad4dab453bf9be5b993a4f71398623ed5cecd0f3fc83, 0x40939693800fbbff84722ba55be4be19fd4146ced97ec175ce5fed18a4afc4, 0x270e0b7c7f8cb5c4725e3442974b0937e9d68c9c9aaba21d6c0b40af367ca1f, 0x63aeaffe7daad8c2cbb0ad51fa6b03bcbb8e75dfa5db44c59837b9c1b5b7f49, 0x721013a9b22947361b7b2af7e73a1834fc25e409777703cea069f6c587388d, 0x48f67d42db046812ec2d2050c63d9a043f4c5c7d5f19fdbdc32d78cefda5c1c, 0x9ad202f0c1cfc5017281386029105f33463a7aaf9737bb8d5d24ac0c7a501c, 0xfffc9a1f64658d590588ea5414715d1c35d8ff953e425bf34233721b4d794e, 0xe4f9dd2128624a761a9fa5f7c9f0f3dd2610d70c1e38cef7657a9b2bd97194, 0x6e121e4aa3a427c38123713b870689fd1f370b30da55085cecdec65621089bc, 0x1d810346b0efab2c09a99cb943199d5fbc0724dcdd428bf14adee6b0034aa7d, 0xa5b8af24837ea844ee48b3fcd5ff0a7eead1705752fd2aac15820f8e19a821, 0x41804410f6a7cce01e090638b68500a9ac4250427ab28d9bfb9f18d1850f2f1, 0x23525f92469ef077e509b2af662a94457d080b03afa8c3409061600521446c0, 0x48b27d8f681aaa073df74acd9012088456c57902e15efee5c974484e506c87f, 0x2ae65189e5e81c297a16c28e3e5bed79649df32f01a2325aac14e5d0486aad2, 0x6f0c51a03cdf9662477be4cf697e44cd4d8dc3e319f61453e69363daed70244, 0x6137d8c765d172e69f68d42de94d4e248a8af14a15ab713a57f620d5091159f, 0x5a3b6fcdbcc80de888e08b3c7a0d4adb0b5283fda79ba00623f404d2a0c1be3, 0x5ea34f3cfb629742e4aa62f7767deb6445842e1078377a16c32c23d4210f510, 0x7052d8f3eff8713eacab0818853b4860c9449d465e253a09e73c70a2234636b, 0x43ce31f76e20150d80e5444b719ced252d2056340ac30e2f4c86e09ea5ede6b, 0x5101916c456f6d5542a8596bbc5e400f47b5e99c1a426d04259d823091a9a6c, 0x33eb6194d01fdc0a7b244590146cafc8b2d361001e4b525157aea8e791b9070, 0x5c484fa3af005f0857ac0ce5b637dd5e5ceb5d103a2a9a7d9690e75d664f589, 0x2f2c186b150e1302b9a79292cd89887a56d88eb944bc6100ad07dca0b39bd4a, 0x50e9f683ebd2cfa0a320e9e303f16765c0e50211a22bdd8b4b7d5c1b7d4625a, 0x51855b66f304456b2a786bb95681f1de3fe269091893bb2160be84ceaaefb96, 0x4083efa938754015dfeaa4d7be57b3a7b2feb86bfbf3b2f1513c86164df7a99, 0x57b8e5346c68ff2eb3f995c6afe69eb595bfc86365b4b3c80f7a41f84237210, 0x28c9590563ffa74a6d7efde8ccc5275995971b5def667ae18e9a977b2bffc6b, 0x15687c160418e1f79776d2e5f0bb9b1b028e1c393d321405e93fd2057693431, 0x263a57833ef20f4e55faa03e1e53235c31353c4183495bd1d2ac03619471e8d, 0x7b88cbe189d763028ce643cfd66a4197a217de1849e67bc3f7c9fec649f7f26, 0x7716dcc073073b0e20981cca8a1df79fc507b65a0cdc0f5cc51fefc50d34fbc, 0x6b351c2600175801daa396ba75b7dbcb4065aab32f238cdc4159fba57a9f95c, 0x3a6777ec2cfa98cb253d4008a69a27df87d943689570fa2dc9fe125d26f779f, 0x5aafff18870ca68f011079146242329e177e1852e37f3616165fc0fae0c32a9, 0x1fc99af2640a39744cbc56b7ff3a31d435376d9e094d00d79be0cfe268d013, 0x16a865b9a45535bc708b6e1f2b2848ec84b087cee7cd378f4bf658acd9d5360, 0x598497384951620b3f3390a046273b210cde9f78123ee6bf8dd192a0ac0711b, 0x1cc4bea48d0fbadf897bf160c16374b16794c25700cd3d98cba7d5e418522ea, 0x4fa1a264f85eb21a830282aaeeb99ca537bcdd5ea2dd84b338cde6c4788de3a, 0x58147515b656305f120b479c7b7f72be974c1b6c8bb74dfc798e77beba098be, 0x67d50e74cc621f81b6f7f449cdfac33bf548e7adbddf432cb397a3b4234800a, 0x64692e40ac72c30d528feff50d18bfc25b71ce34efa8bfae6c1460665d738de, 0x5500d03bccc101045e69a9bfa34494675095f53be81da544c02ae994205df86, 0x32fbafd118aa3dd84be91967ee7e06dbb908ace11a23067d73ab0d6a05fc29, 0x6b750c2e2f67f8db8d7827675e781a96abad7c323fd3bbaaa8288614d6feeb8, 0x49d6db84d52b4dc469e7d570edb78006ba4d3ad3162dbe75b0f9644cc5d4f8a, 0x53d2703a1da3402f1607fed4522725390bc9ad767dd103f91cc331f8816233c, 0x3064d45a0532d22132e02b6e685f8c112866200a38366413f14bba02d5cf57c, 0x5174f2824654773f78699a7ef7dc1c971ea76fad024bfcab1ba58ef64e311bd, 0x7670cf0fc23ead1f18c9b4e84a81c90637e7fffc219c838295dc32e7e612379, 0x68179c3cd7b9486cae3a3d747fbf2b6b0d0cce599a678196cc799867c26bb89, 0x58a2be0f0c791dcf7fc8411318433868504bc16ca368e5d8ba49bf38d28794b, 0x69b7135f946359548f09d15d87e90dd1184c0807d99bcf8701c49877ef06be3)", + "V->P: /cpu air/STARK/Out Of Domain Sampling: Constraint polynomial random element: Field Element(0xae7fdeba2666bacee4f422d2ef310122f68b475f8ea51639fc3dea55a9ec49)", + "P->V[23648:23680]: /cpu air/STARK/FRI/Commitment/Layer 1: Commitment: Hash(0x20e67b8def7a5fb38ad7257ab3b7329981edc56329853f64a02122d92446a56)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 2: Evaluation point: Field Element(0x4ecc8cb64d7cfc9da01012202ae3f0fe8677d745baa89284d6b877a84b5eeb4)", + "P->V[23680:23712]: /cpu air/STARK/FRI/Commitment/Layer 2: Commitment: Hash(0x1d36901546c43245724233a5a16d0a876a56865a6d977862282cc52216566f8)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 3: Evaluation point: Field Element(0x202df265964716a6af8789d8295f2c82f83596cceb79303e2761a6ec5f7d3eb)", + "P->V[23712:23744]: /cpu air/STARK/FRI/Commitment/Layer 3: Commitment: Hash(0x5288f2e82688686730dd446be79e1f8dc435931f58e9b61935b4591a8080d32)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 4: Evaluation point: Field Element(0x1f29a7347af2283f37d8b61be5459d74e30f054f82cc40b1472c5cc0948e50e)", + "P->V[23744:23776]: /cpu air/STARK/FRI/Commitment/Layer 4: Commitment: Hash(0x6b9d8a88de265de7b38f442e61da3f9f00b2ad8d8ad5f77e4ebc9be8eb7df7c)", + "V->P: /cpu air/STARK/FRI/Commitment/Layer 5: Evaluation point: Field Element(0x265c8818abd08c813db0e8c75d416c3c43ed3850309d1bad1d7193cc7033f07)", + "P->V[23776:27872]: /cpu air/STARK/FRI/Commitment/Last Layer: Coefficients: Field Elements(0x21d638fe794d5646e3ca6d7eef6b54365d01ca161d18bcd39ac01dac8e57aea, 0x1130ab1cd3ea3b18c374ab2cf3aff0770805b87983ef16b913ecc6896aed8d7, 0x39a4b8cf1df6fb2f68f6b5951f819ffd1f1b7c17cf88e96a3582ce4698dda92, 0x7a10ec4f4584df1dabb860326aabdcbcc7a5072ab12b36e17e238c0cafbc276, 0x4f21ee17d97fb7137e9de239603aaac4f35542166094132d255c52279b9faa0, 0x26906d44727205938c467b5d9ff8393a3b52470578fc3033bc7a9733c871cbd, 0xba3f4164558b5faeb95f73c5afd92b5aaebb66effb64b5d22d6154b71a5b69, 0x2773c66126348bd017fd8862b2ce07b2b9a4a02ddd926389904785a6fa25da0, 0x24daef64ef3013b8f71373142d02072e143e334da201500dbceaed66e02d7af, 0xc4ed6e1b5d5f6ea6eac3fef88d4915ec869f72198d0ea528ea3f6741e3746a, 0x68f2231842a2101c6b47b5f5e19660723e105dd44b918b677516a65726962d, 0x2682d56eb02128da5ec9fb547c4306d7639abcf7f7005f051f5609fac303db8, 0x2ce1a66d4e224476bac69a66b78ea0c1c4aa1061ae26257361dc87373d2bee5, 0x60790f8955dcf2e39b0264c38dcb091b8085d140fbb03c6ef91b42967d33ab7, 0x5549fccc7eebf28f909ebf113187ea7776b2c5dedfe063dc3edee99c877223b, 0x4e269cc617f3ab99e6c38d54d72c887c10baa2baed2f136142eb00ca6b27fad, 0x765f9668f07498afb30ba14cb3836f6d4af7380a9f15ef795125da70e6fbee1, 0x9a11c9c641cbd26e6189bf8084c586327929d09e14a26dc28704779300944, 0xaaaa96f782ff29866f30507e211d2c6819eb88015f42d2f34fb21718a3679, 0x80f18493dfb7f8cb674d7a34145edab05009742ccb76eed418deb59067ab12, 0xe3065e2c167525dbbf5b6e241c1ff0e83af7b5e8e13ade079a863d63838ac6, 0x2e4640a89b317c9244b6e9ff81a4c9956dda45eca750835903ae1a717d590da, 0x1db676f7d293fef177fcbc794da7af0a9556ef39c4a337a45e139151af2e5d6, 0x416564d20daf2b2f7d3189b8c57500295d2ebd71319c2edeb8d7b8f1077f153, 0x23c0d003983c6c6432afc04bfbcf68e81023e067faab5ed69cf8bb71cc0ef92, 0x6436e737e82ac0b1f850a2909ff0f2bb6aecc3e3ec279e7d02d56b8a1cdeebc, 0x2f76172dcf2646e763657094f335efcb1e64464324e50b732b02301e088b288, 0x560e3f363aede6ca959d22a13f5c5e27af543d7e2404d7f1678bcf481d5e9e9, 0x5a1504e14bd57c79da85eb542469d08e0238c2b4e2bf9ae7e3fa1fbd932701c, 0xcf23cb38c0e8c6154638e539e46be087b621f23a50ba610380ac456f9fe245, 0x5e7540ce6affb64c33e67ca5baf11f38b248c40ffc6938e1e4b4b29c0ecb28c, 0x69124ba3317d95f8f5de5c3e1f8c5fc64ae8dd4d8b81386626e23d3ea4a7e94, 0x7b3f5d2531153827b65be3cb2183c8c4d9c1ef00571f910224c9df30f18930d, 0x1c13e851517c48ade3d7977a57a6403b178b1f6c62b7ef08d18b7768e140c8, 0x1b8fae3dc1eddf6234f9d6bb5cab956caa0f368bc715a60f659e58a1993df70, 0x706294f1a0866481b55b05175fa64302e35f8ac5a9cce019cafab6e3b99ac15, 0x1c123fe788e7403904274d8adeb641ab088cec7236e4c35416a3055409e637b, 0x28531feb17bcb8622cd564482cee5a622a4c68c66d10c5d5d4220192399bd8a, 0x5b6df952cbc7f1a84f878db890a32d511431d3a70f05784a2128f845bae9227, 0x3ea43ebdbf0225963cb61a9dd3c60efe52b82f38be0b591c498ac3e92d8f24d, 0x102fa10af0d37760e355ebe4084b8c46bce35032f050ed45577ef70948ec0ac, 0x740eef6dad91b542b3e296ce2572e93c160965a01cdcba6da1cd14a80d274cc, 0x13eb2c8f7867162aec21a4b766261ff4d0e57d654017702d6177bf07e1aec71, 0x1d3050d0e4a8d0f62bb726c00aad65c1aa97c7a7266821a64dcbbaad69f62b7, 0x387f72d22d8c3af98132bae5c155bb8e4d9a0e77e24f95c8d412fb426efcf7b, 0x5f392a789522146f7f60cc4b644977183cb747a739d1d87c6aaa7ccf3633748, 0x40140ce33b25b900eeaaa9e94f7d83917f27f1e43f5f7acecd70aa607be10f0, 0x1fcc8866809479f6309618e66101c74ffe393ea35de4b7537fdbe7d4a24df29, 0x9d5a87bc68a145f08f5216c05a78f21e04f82f79dc389e476ed09d02e4e44a, 0x7768b7f3cf42e250b33583c0ad0e222458bbbe882f96f5f4638adc6c02cc72e, 0x10e21076359596a32a02ba8df6b171128895f53321e59acdc6f0b250d42526e, 0x1cdf06c0a120ec5331d7e944c64d5b51f0624a73822614459e3a011a0365368, 0x6a9c8a8022944bb19aa91f18b45097f4cf09e15783fd0b4bcc00b13638e01b1, 0x2cf8c7608f5da737adb547142d27c97300779daac8d3887df76a0743d592ec, 0x735e34f0ade63be31f881b1e379ce31294861ec322511342dc35d958e13c743, 0x3de8c4bf9920e29a57f3416971e93ce178d55e8fb455020fca7f022e0ad7aa3, 0x5f3284aa1309a2539f14ea0cea11a7f8a4f2b5c34f717fbcccbed4f29bba50d, 0x77c185c2f828839d28201c380d4854f28e67f3b1465c514c67508a3abad3e3b, 0x21de8341f23d96836aba2e4f2c6aa78a959c6a900ed43d8e980804c3fd5dd0b, 0x719bb4db64fb3674457348b43fd6fe4a9a62085c77d984d3b5ee01b728ccdcd, 0x2c8ea597bb01e3ca75f66bf3c67138ee1544f13d6886be25615766e0fc22eaa, 0x7e052b1b3829a2606e8ca0f90f6fa47295d7c454af892c1bc38d8a4d4e7ae19, 0x75bc9a173a315477939cfd432b536b2fab087ea3620315e1a57e82c45d56bc0, 0xba9f77bc59437831f93c4fada1b247d0f98c20c2de27c78d0d93381af70932, 0x7f2ce738fe4b0039f19981ae843a98009b9092aa76e5a9ffe5a2a3f16f7c0ec, 0x30744d1eba4721b67f9507b79a1f739362981a2d3a2ef69d85d0fa207dd26e4, 0x558e77727a423b9827425b61022b51ac081144b90222a5f57d42f3265720d9a, 0x50e1ee6a70982e4554f6f6a61c20ec0745dd09b3524d907ab2d897b1a775eb6, 0x1b2811e0c54c495d47c6c430ffa3798af706ec0ae12e1f30ffee073ef3f1d1, 0x1e759481add7e9d8c9a498893f6f24fc5ee70fbe46061423cefe72c65dcf060, 0x4fea92ffde69ddadd18de94adc6cdc02b9a826ae6b3eb68af110570580daa87, 0x752bcd5585bc38e1238a0080685c09a0eb962669f978add4ed747d2642b7f80, 0x63af7424dbfe7debbf41041a5ec0d52554bbd0df0eafa38bb6150358e31ee9c, 0x1eb6482e61bfcac8c61d9ddeeedb9a3c62ef5d96aaa5ab78419ae6924688b53, 0xc4fa861a890e761bf919f2d1072ad21a478bc3ff1cc9d99e6a4c43b79a76f2, 0x5a671ef245303b4939ed1017a5eb3508573041af2050f9985d3e5ed7dc4b1e1, 0x2d5ab06888e19398de24ee9fe27b19912375e915e3e7a181bd825420ef62526, 0x5eba48485eaec0e0ac361347552c3efc8f94aff5140001868559ff0048e615a, 0x367874a2e7bddeae568b1ecffdce457387ffa7ebc2bd158bca440e019d678fa, 0x3ce83d43b94cdcc89e90ca48d5fa38749bddd01799b75087898181fb303865e, 0x3f77c273dfb193bd9b697dbcf732051c752e38eae5312f0581399c8d87f1024, 0x2a19c7a47d335965ddd091c6d971094057c77ea87d05d106d744da225c93362, 0x1beb2a5949f72e544109655c4a2fff79aa89136cb1f2c07ac6dacd2d00bff53, 0x16c4c3b05c816f27be8c814709408314e0aef365b1829e77befa8c560dafdb4, 0x7988461ecf5805a387086bcd4e520b59a957a24dfca457479444db23df4bbd2, 0x60dd807d2de67540ae7ad7b70618be564fc0cfd4330bbab7d30f682baecb3ea, 0x493afc1da0b86e8d604ae071437142f09d2f7fd5106828836061f9ddd1c5754, 0x1e486d9ab5a70f3e69fb5cf3d6c6b830997d6ddb80c2ba1d0d5e74a07cd5ef1, 0x7592215f59df703ca4e0a265e888245d887ebed5967a542c177d31bb3697f1c, 0xd292a09c7c7542c990b8d0de09d92eeb8b83484c519d99f968f80cb38db5fc, 0x1d6882d0786cbf7a6c7e1576d5034909c1b8e60a8507247ae0adced475a5d85, 0x5dadbde15742f8bf1b0a0b7e3ecefe59120ff86127a0490ce7a835f7e6876bb, 0x26ac48fde95c4d56384c7196eecbc19dbaf613cb5352a821474a2fe08aa434, 0x265c2f0b08191356d0d1019df33862dad73eed9282a10b5f5c2f59a6dde3dd, 0x7994beb9c53c4be1e7cb59b2f9c70fa75ee1354bab40d910b19f5cff5babfc8, 0x4bc3f1ebfdb91346d367d24e82f83d8131592990221329cc5e09eff05bfc4ec, 0x608d9483352912dd65d6d3b498d39aa5fe63bc7f19107da8fd7e1b68d7822ec, 0x7d8626a905f65dea4fe5b8460d3ef491514b504886bbd46701a7f44edd487e4, 0x64c591bd4e9b13de2c545c4769b82d9897b1619ff2c849cccf058612f82309, 0x5fff5591add16c4c7e461378a50dc312b926792daf5ad4d8b039b5f2fc1e1be, 0x7b9677b93e2fdae1af091dbddad704d7d68110264a96c2b183179d96e701744, 0x7e1cb90f3f52ea64785c6de930f98f2db4b286f38e342fecc487edda211b0a2, 0x6303ad4f1804d53f9a135e7112f876bb7281ee21ac0c24c917da6389c925df2, 0x41751d9cda317b2f8c35f2fdbb10a6d9ccab43389931e5552e303a46de1daf5, 0x3c54155f617a8c75ca442f015703edbb2e2d56ad597ea86d88369bc6c709904, 0x52a1841335abc9fffcd8774cf8930d50f173d966e00a8ddf9339c22c9867452, 0x50012b0ab16d744d60aab00be57755b6cf9a61ffa213b48847c658134225682, 0x76070a5065ccf5720230243c8fea1c90d343f86fa038f86776911ad7643be33, 0x1a7d2dca75d9556fafd3293170a84a2d4f2055123ec7a76d5953ad4c98f3165, 0x753c70e696af64ff457ae5fb6eae229bb911334fda6b41ac171683041ac6cc7, 0x43b437078d6a27effdb2f73fe9b3c5e29a15361084eee5bd184ff7e6658eb5b, 0x2f8abf90663db196cfecac21458f7582d0cd98cc2f6dff94b202e3acfb6e42e, 0x6d018a9a64699f034303c18eb9de1055b40d7b372f3fcf3ce44780f8e5bb7ea, 0x29a41ece0ed7c3057d2bb7a50378ca09f706e0647bb3e8f9490d422c7806576, 0x2fc15df0799a383f892b94cbb038c7c892ea8da6602b41bb6b0964cef736a31, 0x1c27830fbe88935591744bc78bea107542a2edcece75deebf1197f7358ac97c, 0xa5e3f12b7cc63b7956f2bb449a9a66b082c009ad5ccc1d5720209ff47384bd, 0x4abea3bc7dc88bac0228bb992023aaae6e9662de2e874297e6e8ac526e3d9a3, 0x51036fa8af57fec7e4f5e580624f976b6cc687c2660963e65af6ad31db193be, 0x2282dd7e02b57d94d3fdaac8f593c9338d7c479b6c0836c9d17a27c3bd957c4, 0xf1da2450507732409446c138878ccd92e255c1623946c041163c3ad8074426, 0x77469654308be5bf8e8eda05bf6809d78e8658dfc711c1c3727f7d974f3d016, 0x8f14bd7d80ba37592a9f2c0014ae6ada5c1ddd08f9b93a28f6f5b4ef034ae5, 0x5ce3400853eb00e19994c70a0423d507501f198816ad874f4020c058463d963, 0x706abf1ea1a2d38f25aa0d40fe17f919e87c5cc3c63e15937391782f27b42e5, 0x60e30f9ec8762113a4cf88a01b3b0cc10c58b821f5ea98c311821a58836d323, 0x5367e8854ee893e31550ad86929ea19d6be1fff6f92defa5ab933dacd003abc, 0x6cb1751cf1665f0957db9b9d6c32b1c7b2d5962f4d02e3c0c6b537557a27c9d)", + "P->V[27872:27904]: /cpu air/STARK/FRI/Proof of Work: POW: Data(0x5014c66b)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 0: Number(156174)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 1: Number(6093790)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 2: Number(2236203)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 3: Number(6626439)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 4: Number(1357)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 5: Number(10212545)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 6: Number(327432)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 7: Number(13746199)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 8: Number(13596798)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 9: Number(7351021)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 10: Number(13995388)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 11: Number(6322211)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 12: Number(11067383)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 13: Number(11713076)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 14: Number(9579215)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 15: Number(14748098)", + "V->P: /cpu air/STARK/FRI/QueryIndices: 16: Number(12075111)", + "P->V[27904:27936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 0: Field Element(0x7b8bab92792b7b88d2fb8a5d7824f9f202a5126250fefbc8ed8d31352a30f74)", + "P->V[27936:27968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 1: Field Element(0x41675965b5625e622442b536dde1f01a6375019bf295bf44a3cee6d3716f762)", + "P->V[27968:28000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 2: Field Element(0x494d5352789de001f845d867da84ac080ac96c89b9362b708b8cf941b540a56)", + "P->V[28000:28032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 3: Field Element(0x6d6d98be3b7f1ce095978e1fa49840142b182c52758cdc663fc80c05e5fa33f)", + "P->V[28032:28064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 4: Field Element(0x2244af3166d330d0d003625c22b6f83daa3925cb8a7ca4281b789b8df338ed2)", + "P->V[28064:28096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 5: Field Element(0x6d1f9f28e244b68438edadba7c3fb76d1b84eeedfacc2935af825afa1d61229)", + "P->V[28096:28128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 6: Field Element(0x3a2688da771f64173d88538c0a6cb175057dbc3c6d47e0bbbdb4e8d264ecfe0)", + "P->V[28128:28160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 7: Field Element(0x2dc8fa9ffa12bae10d4d92eda9af1f22382ecf415df7d6d20fcd3c7811bd60b)", + "P->V[28160:28192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 8: Field Element(0x1dc7facc2f6f22a4c71750b7d9a9be834135a98219372bb5be2a9248f538dd7)", + "P->V[28192:28224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 9: Field Element(0x318f233b808a745355acf31a98a93a3ee1edd490877b039516df4173b192a3e)", + "P->V[28224:28256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 10: Field Element(0x44c5779acd4e08f5f10e76385d24e3d1ae1e579ca861f463742e2f9558f551e)", + "P->V[28256:28288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 1357, Column 11: Field Element(0x710a24a7ee0f09c82c953415e41dd8a395501715269d570b33a784068d3dc8e)", + "P->V[28288:28320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 0: Field Element(0x4f4620a9c8d30528cd015e88d085d3682c82f75284af648a18711a4cf640eab)", + "P->V[28320:28352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 1: Field Element(0x1fc1321453288d7367f629a0d52fe2e2e79cb44080bcef8d662ef99de6eea0d)", + "P->V[28352:28384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 2: Field Element(0x55dc485625490be73b54398ed8f68dd639f5cb16ffd8bcccb6258d4c2a0e5c5)", + "P->V[28384:28416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 3: Field Element(0x685afb553b9bb86c238b4f240e130f5aad2639ff0e45aea6d2f244a655f3c2d)", + "P->V[28416:28448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 4: Field Element(0x32c8be1014e9ed5ccc5785036fe8828d04c09bf427b838ec35ea42e8e1ff45a)", + "P->V[28448:28480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 5: Field Element(0x46420e64d2af8d77baf19b1149b8d3ebb237912c145b5a3f03807ed67363b90)", + "P->V[28480:28512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 6: Field Element(0x309d9a1ed0ad345113acf5d549db59ce65755964b44963986536539d664db82)", + "P->V[28512:28544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 7: Field Element(0x75a00f30a209e73fd2f96c356a121e9cfc820e16c8cbd667b225e0d28df7af9)", + "P->V[28544:28576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 8: Field Element(0x688676a3c6e9a82797e9dbab683e143c5b6275e15204dc92f0e9f40c3a3a2e0)", + "P->V[28576:28608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 9: Field Element(0x16e9bf523862984e45a9c678bf4adde97afacb55af2c1edf8e7a5bc0640dd5)", + "P->V[28608:28640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 10: Field Element(0x5cc3aacfa694ffe02a18f27ad2cbe4be9fe2691e244d3cca425dab56157d4ef)", + "P->V[28640:28672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 156174, Column 11: Field Element(0x414344c3c185e7c52e3a8d4c74ef5db74a7e719c967c72cb227fcf726ffd9)", + "P->V[28672:28704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 0: Field Element(0x7d176ebd37865017c3b6ee08265737bbdcb4866a6ddd2bbd85ea4166481ca8a)", + "P->V[28704:28736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 1: Field Element(0x4ff083e5e6d14df405d040cb7c5c6e928731045b96c3c805744de1594b93687)", + "P->V[28736:28768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 2: Field Element(0x9cc9a7678286f84e9927d11138a7fc68b9c4e1047ece3fcd872bc954018d4a)", + "P->V[28768:28800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 3: Field Element(0x3465c86c9d4d897c569075b352ad769d005c7a12b28c2de0a696cf5b40ed22e)", + "P->V[28800:28832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 4: Field Element(0x7201fe5e689dfa3bd1ecc4f7a935463a41dfd1ff2373337e71f70255d420a4b)", + "P->V[28832:28864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 5: Field Element(0x7abb35b9ad7e0047a2bb2f8569fdffe0f9b4d5784a50ae336fb3e3ceeea7f46)", + "P->V[28864:28896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 6: Field Element(0xae3cbc35e6039514fdda8eec1b3b63ad2133bc899f9abc4ce10cbfd81df2c0)", + "P->V[28896:28928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 7: Field Element(0x58ae025e8f38e531a784c2c334bf31c4616120917f252a7389690a56bff6ae1)", + "P->V[28928:28960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 8: Field Element(0x5acaf4ba229ccb51665c749fb4bd09f584dadacb79d64bc78adda2c001f117d)", + "P->V[28960:28992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 9: Field Element(0xebfb864d45e8088f2e6a3729a90c5ec38bd14b56dca1700c0c3594783567b5)", + "P->V[28992:29024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 10: Field Element(0x4c1a6708696ebd6081209fda14973894ece8a64652feea2ed7aed60a9cd7f7)", + "P->V[29024:29056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 327432, Column 11: Field Element(0x25b59ac80faab3ec6ef813281eb5bcb53ad0ce41518b8e2d2fcab5dd1080358)", + "P->V[29056:29088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 0: Field Element(0x4df7b029e7d3320ff26be47c03bb11ccb15c6b12a54dd7fb70ff25143318ad0)", + "P->V[29088:29120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 1: Field Element(0x711c897305032cbe1ead7468129f05c4d4fde182b857919a7a3e4c312e6d989)", + "P->V[29120:29152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 2: Field Element(0x5e8913cc583b4e28e4ce29185f5477425b63b7f3d5f39554d53057bbf9f8d75)", + "P->V[29152:29184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 3: Field Element(0x7ba2257c2c663adad9d8f341a8e2da8f7a82ed6af0f261808580ba8e98061ed)", + "P->V[29184:29216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 4: Field Element(0x156de0d9bff21e6380f08fa2990c34a0beb1fe5e5ea031f362164baff367712)", + "P->V[29216:29248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 5: Field Element(0x54fd7ca992e2c06b2054b65245c0e53a5c951f3e06cedb7bf8b0be81f960744)", + "P->V[29248:29280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 6: Field Element(0x745ba26edea34444d933441ca872dff7e80b81b720eef86f55f77108f27afe5)", + "P->V[29280:29312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 7: Field Element(0x7ddc6c08c41136fe82adb5e243a7581faf7f03e7f6793285bf74cdc204902ac)", + "P->V[29312:29344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 8: Field Element(0x32cf5d83fed6d47a00539ec59b3fa33191b4cf1feadd6689dd9d1a01938fc3)", + "P->V[29344:29376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 9: Field Element(0x42b1563ac6e0e8a986bcc8705dfcfe88555195fe254d076378fedabf32634)", + "P->V[29376:29408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 10: Field Element(0x56f4e2b20fc9611856e8f160526e32b31246fc7061420a69f135069b512d629)", + "P->V[29408:29440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 2236203, Column 11: Field Element(0x26e321ea2ea412e485e865e0b9ddb6c355888c02343a815f8b30e1df6505ba7)", + "P->V[29440:29472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 0: Field Element(0x66bb5bd9d83db7ab73c251c328439ccedb3e82559f1f21ad3cea675e1fb3390)", + "P->V[29472:29504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 1: Field Element(0x3d9b481dc7d2bfcd2568dd344337e2e51efd88d1e6ff35e200fa7c7a7003e06)", + "P->V[29504:29536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 2: Field Element(0x39634649547cc919b93e78739ab3318d92837ce1224c0ec0535f9b7bdb2ba97)", + "P->V[29536:29568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 3: Field Element(0x7b98d76eb9a3582c802c20c4525d4c3a678823fca462ba4909fe3a260a3eec2)", + "P->V[29568:29600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 4: Field Element(0x54493929c16a1a0f0a16d12d222aeafb923cf05a9aacd4ed5263e794160c46a)", + "P->V[29600:29632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 5: Field Element(0x60649872db80fad568911f9805869f10bd0237ba5a90fbe40a374ccbac8bcca)", + "P->V[29632:29664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 6: Field Element(0x6d0ffaf97ed3d2ec83adb2a45b421f0776351f91f31425ebcfbef4e39db2192)", + "P->V[29664:29696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 7: Field Element(0x5c663273af9c71b7e0bbf8bc71d3d971d620b4324d9e77db0de4a91122d2a76)", + "P->V[29696:29728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 8: Field Element(0x4e3c374e1a5f546f6504b1478dbb780a9b04d5ae073d753be8d4cdfa0a05ca2)", + "P->V[29728:29760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 9: Field Element(0x3665767a0184cda0ffedd7ee3ef31db39923b67782d8c9344cb3db5462a41c)", + "P->V[29760:29792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 10: Field Element(0x6b4511749627f3bac7a84b8bbdd8d4741d70cb28828f80901ab960c56c1abe1)", + "P->V[29792:29824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6093790, Column 11: Field Element(0x15747160c61805d131659fdb0523c21377ff6e8221c0562bceea93e3ffb7469)", + "P->V[29824:29856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 0: Field Element(0x4b4b2fb4525ab9704d14b6eed665676af126d7c09c83f8b5ad391f397b05c83)", + "P->V[29856:29888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 1: Field Element(0x2e358e1eebb3b50948ebcde8bbef941636b831d8893f6cf6b704d1d9608e279)", + "P->V[29888:29920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 2: Field Element(0x3d866b7b5abf50924cb8cd75548f94feaaf8f051c0af6b571609aafb97a3d8b)", + "P->V[29920:29952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 3: Field Element(0x71962e20eef7b7d0d6507481ec5829d8e1cb255cca33fb2df2af1d1e6f9a957)", + "P->V[29952:29984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 4: Field Element(0x7b30d5d82306e8e785bf96a9644b443db69e7e312a19bddaba87ecc6c9f1a66)", + "P->V[29984:30016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 5: Field Element(0x32a7064433aff4cbe3c4b027e5095bbe42f9773e397725af6ef12736c3eaba)", + "P->V[30016:30048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 6: Field Element(0x15a9bd7eb16459fbf936f9a46568a0dfe4ab2bdb93c49cebaed7ac813944ffa)", + "P->V[30048:30080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 7: Field Element(0x2fce37d67fd164184d4343e2d08afb86c1bfaee6421cc9bdae18abdfb957038)", + "P->V[30080:30112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 8: Field Element(0x4396ad390ea65ebdd02444227040154687ca9e15b0bc19a61566c3850b1825)", + "P->V[30112:30144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 9: Field Element(0x4ab568aac9a92491481876443aad7e76f7dd3c7b32d17ab8f29bb9c434c6d9e)", + "P->V[30144:30176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 10: Field Element(0x44065ff9cba16749d8ea9683773b8d89574fffd953925207a745ffa0a8a7c56)", + "P->V[30176:30208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6322211, Column 11: Field Element(0x7dac2c0885ddb3e5ef51ac0802ce2f46f962c00b7a95a23941dc87ef1e813c2)", + "P->V[30208:30240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 0: Field Element(0x7822e041190396d449ab01eb2d481ed9b0f071b28487a3482c0e224caf84e07)", + "P->V[30240:30272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 1: Field Element(0x1f0108028279aa541000714d8a20053754fbbc74d226f01f3175f49359fcfaa)", + "P->V[30272:30304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 2: Field Element(0x19859a076ee2b50562d4f1d510c5021a28aa985a71eaa7e65fe1ca9fb43a8ee)", + "P->V[30304:30336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 3: Field Element(0x7aec28f3242a902c55524a7e152a9088775b9825130902d077dd19fea2ab18c)", + "P->V[30336:30368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 4: Field Element(0x3f2b1c795e2bae9d5ebec5c5aebe4a1ec56251f34fb732271c4cdf8add0f67d)", + "P->V[30368:30400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 5: Field Element(0x5052cb605fcdf8264dad5c994f49744ba524ebc5b1cefa5f26e17014f4da8f2)", + "P->V[30400:30432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 6: Field Element(0x649aab1b2c1f112cb43ef8f6fd9c1ec75a8340852107fc7a29df288b28326c)", + "P->V[30432:30464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 7: Field Element(0x4596f7ef219944357d63691bf1e389ed613b08494b9a82ff6e710d7db1cbc0d)", + "P->V[30464:30496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 8: Field Element(0x25c9270f2c987481f643391ac48614b9851e55f318903174850cf08b471958a)", + "P->V[30496:30528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 9: Field Element(0x265e448d1d3af4dff42c58264d6461b9f81d60846608507f22c5e9348276f0f)", + "P->V[30528:30560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 10: Field Element(0x2969b2227c247c527f7e47984c06408763979ff4326b88667008bff41e271c4)", + "P->V[30560:30592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 6626439, Column 11: Field Element(0x488aa32eff5cc7ca35472f15252d562aab6fd45c294605850c57da853776d73)", + "P->V[30592:30624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 0: Field Element(0x2f94fb692d4ee33969179119ada2310bf4b9ed13f2567cdc30065f6f89485de)", + "P->V[30624:30656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 1: Field Element(0x8899603e8a69357748461ab07a190427b1c47712520c344a376eb7b8a9fab9)", + "P->V[30656:30688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 2: Field Element(0x4d1153749d2eba9c143def173acb902d885e6d7d1ba4053438072b2ec1b6df)", + "P->V[30688:30720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 3: Field Element(0x7d67eea785194d2b01e168af1491c888efd6536e608bd1573212c2de9191f6)", + "P->V[30720:30752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 4: Field Element(0x7ad8078050da43f706b4e2bad62a5e9af4d605c13d9c7435afc8ab7e0dab693)", + "P->V[30752:30784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 5: Field Element(0x1369c68a44e834c84ac900b021d637968f80b7635adf145a682c977722fd369)", + "P->V[30784:30816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 6: Field Element(0x6291a6c5b3c2d8e68894eb281a58c4a6608bd44be34a486d8129bdee60434aa)", + "P->V[30816:30848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 7: Field Element(0x1785a905bdc9baf3fc7e1d1c159bfa17faf509eb8b8cb427b82418b3f1e1da2)", + "P->V[30848:30880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 8: Field Element(0x9ff10854aa88069d75f7c4092b55ab58d0c19e3c69535da09ddf9926bde5a2)", + "P->V[30880:30912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 9: Field Element(0x1515d8dd2fc36af96189004c4b646fa1817812cb028fdd86cbf477537a444c0)", + "P->V[30912:30944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 10: Field Element(0x2da6fbcaee2b2d4059fad8568d81ef1f83d94f6a1a0e4925165a1a56fc85b89)", + "P->V[30944:30976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 7351021, Column 11: Field Element(0x4ea27309b5d5b3270cb647f1898475d3bb237c8565e9a3479ca07a0f98e1582)", + "P->V[30976:31008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 0: Field Element(0x7c8ced3933d123941581076d49bd0eed545b89c21f32f59ab83bf806ac8c120)", + "P->V[31008:31040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 1: Field Element(0x40ecafde98b0c93e55310a92af5c035aa125dea737176c1c733ff7dd07fd744)", + "P->V[31040:31072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 2: Field Element(0x1a5422442a11675e36a5e82b85bcca32d317c6a586ccd686fb478afe316d7e9)", + "P->V[31072:31104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 3: Field Element(0x3b0e91a5e214b5d8c9d4180492d89537d80ef4416e57e44d382a0e5a0f495ce)", + "P->V[31104:31136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 4: Field Element(0x50cf96fca1fdde873f32ba14e5a7306cb13cd4acfaaab8a3727e1d7375c5dae)", + "P->V[31136:31168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 5: Field Element(0xae846c642a8dd58da10a7f30ca2bb3880563483c2af80d551895e0e3438229)", + "P->V[31168:31200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 6: Field Element(0x3ebddb51b48d27a933effe40351e94ad245084e950d07ce13f13304526c6166)", + "P->V[31200:31232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 7: Field Element(0x25c670dd473b5a750f54eac6fbbb38f508836e113203f0a0ae7eb0d2950fbd4)", + "P->V[31232:31264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 8: Field Element(0x14dae9a780765ead362c93446e5a4fb22f25f1aaa020ac231b21707e03f55b5)", + "P->V[31264:31296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 9: Field Element(0x60a82eb75c674698cf7256822e08ce496850060cf288e5cf7f91c4a641c566)", + "P->V[31296:31328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 10: Field Element(0x1f9c9f2421565f9e89e424cc34b8b39737b35b3400dc0955588e3ceba9fb637)", + "P->V[31328:31360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 9579215, Column 11: Field Element(0x775bb23df601aee4c97e6bd2e8c4761d83c13b9858fb8e3c916a7f8a1b7c3be)", + "P->V[31360:31392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 0: Field Element(0x6c3b4d619ef0de0c217b50b72ad7704c8d5cf22f26d565386cfadc430aa6f37)", + "P->V[31392:31424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 1: Field Element(0x37b1ad3733c85ce927bb0ae5b42c9087a068e66878acac1b81ed885685503a9)", + "P->V[31424:31456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 2: Field Element(0x7e67ec249203f3c50bf10c74255c3f1794708fa91bb0bc1d99ef2bd8144c5c)", + "P->V[31456:31488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 3: Field Element(0x3b6bbca581b4bd0b40e0be02052e7b8237af10b564bace0f632e7980b591d25)", + "P->V[31488:31520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 4: Field Element(0x4faebb7e47b1cc57d06df375155a16aac088ad7b7df753e43086f72809ad543)", + "P->V[31520:31552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 5: Field Element(0xabe7a346ba06bf16c5f337fb7ab62788f17122360e45586b74fcc816cbc522)", + "P->V[31552:31584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 6: Field Element(0x6c5afba0b4a5a611ab926d37dce3123b048650fef2d450fe4aca984e0dcbf82)", + "P->V[31584:31616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 7: Field Element(0x45abba59fb800d3bb26f39080bec757ef48190fa97cec775dfd8f153fb672da)", + "P->V[31616:31648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 8: Field Element(0x43fba3d479b96027309afb5d6734183381578bdf30b27606fabf3ca51cd745d)", + "P->V[31648:31680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 9: Field Element(0x4b3184ac1989cd6b110acecb18801536e8d1fcdd2dcce7fed48d615cf2eef1b)", + "P->V[31680:31712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 10: Field Element(0x51ab6448aeaefa63ef44a3110c146238eef85638823fd31666708787ab5a2cd)", + "P->V[31712:31744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 10212545, Column 11: Field Element(0x1c380f1ebf2df2d138b6d1d851826606a82966fbfa292008301c83bb9529817)", + "P->V[31744:31776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 0: Field Element(0x24eae474559f3ba7f5ca2de4a06353f48f64ccb8775fb56351525317ab686f5)", + "P->V[31776:31808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 1: Field Element(0xe395e36a5b7493e147afbad6cae8e5cef693727f12e243c92e25a02612eef3)", + "P->V[31808:31840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 2: Field Element(0x727e34a7c621c74a2aec225eea89c299f75fce0473b8922b7f0019cd8ca7a0d)", + "P->V[31840:31872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 3: Field Element(0x19f4391c487eb3591cd7e4da0fd4aba125e42bbdbaef317e43bb8b4bdba4d6b)", + "P->V[31872:31904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 4: Field Element(0x6175a45f6c2ff223b20fd557585232c0bbf4a408f9084376cd8b0fe8d123f47)", + "P->V[31904:31936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 5: Field Element(0x6006b1d9f5111423fea69338bf2f4c3c59e8ec3c7aded725f1f582c76a07cb7)", + "P->V[31936:31968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 6: Field Element(0x18c2e16c8e7a8af94a8529df022e1efbc6ffa25046d157af34e67127b5db30a)", + "P->V[31968:32000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 7: Field Element(0x6d1ec3e935e3967f8c028141a7838f0ddf261f1d6631b9c72a6f87cb7becb59)", + "P->V[32000:32032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 8: Field Element(0x12062bfdd5fef86ea867c75f1783aac4c4f15e8cd8d1529185d685e39cf52c4)", + "P->V[32032:32064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 9: Field Element(0xcfdc22e8dad7201b0c218fcf8bd6cbfd494214a31fd4151a4cdfb1a3f5e980)", + "P->V[32064:32096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 10: Field Element(0x7935bb07e38a3f2580b0279a10f1f6805dfac51e91efa1bd68e335d0abb28bb)", + "P->V[32096:32128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11067383, Column 11: Field Element(0x7125f026c82d119fcdda44674e7a6c52f6d14e3b704d97c5a1cf5ba4aa0d0d6)", + "P->V[32128:32160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 0: Field Element(0x504ccd061e1ddedfc8c4512d5f2e9d833ca565362983ee3144b554a32810618)", + "P->V[32160:32192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 1: Field Element(0x67d225e0c1fab14f8dad29780878eab146d16216ef990877d2b858a95363993)", + "P->V[32192:32224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 2: Field Element(0x67c7198796c69bc720bc859baecb5492cc7caeefbee0ce93769ecde6d2c9955)", + "P->V[32224:32256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 3: Field Element(0x5d7c11454de31c9ce27be1b69309ec3f789301518f573cf1d915d95c9b9b253)", + "P->V[32256:32288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 4: Field Element(0x1f848bdded4ad1d73182a1116044e31dd62270b993a8d1c84861d9f21323ba3)", + "P->V[32288:32320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 5: Field Element(0x2458b95195ac34c4d8f8cb9dc5e86459504264b32c03770e628669f4dfb0a06)", + "P->V[32320:32352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 6: Field Element(0x257a0b8c3fe94b5fdd29d64d5d92026b1cd9ea89b0e9b90e1676575821af1c6)", + "P->V[32352:32384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 7: Field Element(0x6276a90a08098f98ee0cf766c7c2553bc9a2a2f66dc711b2074c82cc9c89dbc)", + "P->V[32384:32416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 8: Field Element(0xe0fb1731bef4a5b7161c9329895dadda35228f54897c4b8bf7225a9894914e)", + "P->V[32416:32448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 9: Field Element(0x1c7228a0bc8df0322092e1533ad65e10a6b0495c2a6968eb949510034c2aa66)", + "P->V[32448:32480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 10: Field Element(0x1212ed0de9cad2166c4d5b0d7fc7db4a07fb60c363ad07c1a2044a74a3b015c)", + "P->V[32480:32512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 11713076, Column 11: Field Element(0x282766ac43249323582a89a428faebb3b920c5db4606e2a669e1724b47b51ff)", + "P->V[32512:32544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 0: Field Element(0x365355d2a01d686a98a8a0e893569a352b024d80ae3c8f06f383280b508c120)", + "P->V[32544:32576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 1: Field Element(0x2e970101f8d05778b5569efbbb440998dac914947e90eca4eb63962916f94f1)", + "P->V[32576:32608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 2: Field Element(0x1d206285519085f2fd0935220806b8db3d803865a09fe43b0b7f97d0b24b709)", + "P->V[32608:32640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 3: Field Element(0x76dd17f4fb3c7cd5fd429bbd2cd6a971900e05ef45fd7e2eb0ec2e39936edd1)", + "P->V[32640:32672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 4: Field Element(0x509c10989493b0e171656fef2ad16f403649fc7eff7d451ca9a5580edf33ae4)", + "P->V[32672:32704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 5: Field Element(0x13a1f6db4b215019e4c86039d018a01792433f76e8fce0ef61cf71919342a03)", + "P->V[32704:32736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 6: Field Element(0x3902fa076a63ca0e5e1c6c7557670043973b6500d9a838fdcda11fdb3c442e1)", + "P->V[32736:32768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 7: Field Element(0x625f37b9ef6ddd6baa49aa4aae0914fe3eb267c2fbe24c2da269d900989d59a)", + "P->V[32768:32800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 8: Field Element(0x158477d8ff4a83da7224c6ebf74b1a851abbd2b0145c4e0948bb1fdb1db618f)", + "P->V[32800:32832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 9: Field Element(0x6a6b5c9260c3119c920fb934919bfb66c7403da3ce92bf2cc7b9e33374bc766)", + "P->V[32832:32864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 10: Field Element(0x548ce2bccb788c984c417c4ce345f3855c55f2aea0ba97b2474dcd07b901d70)", + "P->V[32864:32896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 12075111, Column 11: Field Element(0x28e58e381675a9a9bc9a723df3c54c92b5781d94b8d139cf525d3fc0fbf3ca3)", + "P->V[32896:32928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 0: Field Element(0x557b046d1fc9baf90fe81686313f04c4abcec8bdd6a51ffefce9ea71ad5cde5)", + "P->V[32928:32960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 1: Field Element(0x7a36a8e46fc5e87780629e47e48b82325b38082a38fce51edbfa0daf841c8bc)", + "P->V[32960:32992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 2: Field Element(0x41a9d55880e857d2f2ba38c6c2f52c05a674be09ac757330b68ab4cf27e377c)", + "P->V[32992:33024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 3: Field Element(0x2d95bd52a290813269a2417e64c67b3051f1b82a629a51b05e8a6a9e1cf4f4b)", + "P->V[33024:33056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 4: Field Element(0x72ffa13e8f98f680eb9309770667ce616298448400840af61b80c0abd58ee77)", + "P->V[33056:33088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 5: Field Element(0x7440429f978a6ceaaa4a0d1b30190132ca24b0b6a3f21a16364b9073478d80e)", + "P->V[33088:33120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 6: Field Element(0x1af0226f57a98e50b7171fcbf1b658ce7c4eba33bd8e8de49245ecb83178d97)", + "P->V[33120:33152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 7: Field Element(0x32b9a01a03675d5e1e40f0ee36b5e9c0fda788012731ddbf75d8b00c6e65ede)", + "P->V[33152:33184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 8: Field Element(0x2d748cc8740944f642f4a13eb1fd53d43cb0bfb9fedf6e2be115dd88519f7ec)", + "P->V[33184:33216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 9: Field Element(0x20cdb3f9d5ab71dcded89881202db96c887a04533cb1cfe0464e714b224fbc1)", + "P->V[33216:33248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 10: Field Element(0x39c10d657e9b8e12c94fde967427e71c937c0b306cf722a25b3f4c058e340d6)", + "P->V[33248:33280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13596798, Column 11: Field Element(0x17eaef23b64a7ca95f298230f0e384073d29c1564c35b629679427b45e10813)", + "P->V[33280:33312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 0: Field Element(0x56862c55f14b5294e1889453f5a1285179f60fb2244aa83012cf68303e04e77)", + "P->V[33312:33344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 1: Field Element(0x4b950d99a27e0b0cc4030d26707bbb84c24eb9aafe264042500ee8bfc9f2bce)", + "P->V[33344:33376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 2: Field Element(0x62e273269a9e1da2042c8d1e848a69b5c91c23c176c5726ed248b54bea5c7d0)", + "P->V[33376:33408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 3: Field Element(0x5ecdf6e43c414a853d52f89fcae91ea05a66fda44f21c385d22e6fbcb0aac3)", + "P->V[33408:33440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 4: Field Element(0x364af708c5ec0da3e7fe59f1be8c3c1c4d10b5f2a970a93fdca622731d7c8d)", + "P->V[33440:33472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 5: Field Element(0x40f9a8caf79f49e6a7cc92400742e1d5fe669ca4bffc4e54d598bd7926b5db6)", + "P->V[33472:33504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 6: Field Element(0x3fdbac83c5dec12397a75886371bedefef5d41ec402fb5929753b46864c867)", + "P->V[33504:33536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 7: Field Element(0x53ecb13bd66788f69e4fe25b49e44680f0d00a01fef3f1a81b2719122cda9db)", + "P->V[33536:33568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 8: Field Element(0x49df1a96d9b6210bca92b46764f51e737ed1b5d0c417fd962250e373168194b)", + "P->V[33568:33600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 9: Field Element(0x49a9c0fd9f6f2cd47767c448646ee1c9c05c490065f59e2a7e7912812c3e50e)", + "P->V[33600:33632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 10: Field Element(0x349dff086fb47c9750274d520104d6dcc1c466c2d840ecb6340d65a1458285d)", + "P->V[33632:33664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13746199, Column 11: Field Element(0x34a88f68855a0828163cf185754cf652add40f9ab6d86ad479ef4fc3fe9ebbf)", + "P->V[33664:33696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 0: Field Element(0x75b5573f01ef71aac351a7d38832aa5d1aea1bd25a1ee9a1586d06022f1483e)", + "P->V[33696:33728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 1: Field Element(0x75f8a46229ae43f9ae031711a73387feadce2ec93d49d19c3928036019163d8)", + "P->V[33728:33760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 2: Field Element(0x450062e613658239dd964d24f573c9d860ae0704ec76d768d2732277a0785d0)", + "P->V[33760:33792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 3: Field Element(0x6344c3f36b62bf7cca7f2a701a806f5c5dd28d9248e3e1c22f0e261e131feef)", + "P->V[33792:33824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 4: Field Element(0x28705cb5ed382f5533c94ff1bdd93a9e4b444d6b4ea988f759e9fd713e02953)", + "P->V[33824:33856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 5: Field Element(0x42153a5e9a500b962a39651a898b57eb8f3dd5790f83a5dfc1402a04c9cec04)", + "P->V[33856:33888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 6: Field Element(0x36c05dcf6a8da6e80a0c88f7b6ef4e25a972f0d18e4a9269d21eb6d0650636a)", + "P->V[33888:33920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 7: Field Element(0x4def3ba4dda7819941779f6ddf1ef1a42e66562a44278d9b33a2b068432eec5)", + "P->V[33920:33952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 8: Field Element(0x345c8ac04b76db0ff51a224441ded3f348118da4bdc52f14330c84fd400070)", + "P->V[33952:33984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 9: Field Element(0x34106e397af0dd44f56e5a309931824f5ab2a7f8590aa3503dad5d6c6ccd2e)", + "P->V[33984:34016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 10: Field Element(0xa80ae17580037f63b2eb4e2806e109e3dd74fad46d8a9a6faaa7fc2bf4f0e9)", + "P->V[34016:34048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 13995388, Column 11: Field Element(0x3c627dc9a0c96fdbdaca3bd1dd2a0feadd2399ab2b7d2a23fec2cef912b7647)", + "P->V[34048:34080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 0: Field Element(0x1eecddbda3d87c120f9401aa8d092ee8d86c4822ce50177bc4bf15caad993e7)", + "P->V[34080:34112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 1: Field Element(0x6bbc6eb48bf72910b39db95e5842eadd0aa57260df5042cc58f4ca5e49e1663)", + "P->V[34112:34144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 2: Field Element(0x6d20dab2eea3c6071d70bcb9481d71c9f61900626aa426c69489e334ac7191c)", + "P->V[34144:34176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 3: Field Element(0x65efe7f0afbc5229efb3b7975e4d2a7d3a17111925785e7bc8bba9e0a29af98)", + "P->V[34176:34208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 4: Field Element(0x7316a0c7b8363b88fd426b3c9e0354b875d131609aacfd24afdb7a18704aa54)", + "P->V[34208:34240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 5: Field Element(0x2487a5843bdcb8c7678af921fa45f072ca8ca0e7b2fe26bbc3a87efe6a0f6d2)", + "P->V[34240:34272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 6: Field Element(0x7739a67ab53fcc76dd0310ced5268acd18e55407af94e6cd97088992587949b)", + "P->V[34272:34304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 7: Field Element(0x41aacf2bee8d7eb9b8fa5e45c951e78ac00a92148891910203f53874a1ec6d9)", + "P->V[34304:34336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 8: Field Element(0x27e7549c1731b4044d5c043c3b2eb5cef1de19b1a31fb9ed5e12611122462f2)", + "P->V[34336:34368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 9: Field Element(0x4f3d24090854a8a4996168b687bd1a47e87bb4e9db4c3aa454ce4b12de9fd7e)", + "P->V[34368:34400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 10: Field Element(0x49522ff60e0ec1b6909a63d8e51c7285fc22c5dad6e95148d91c455574cbec)", + "P->V[34400:34432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: Row 14748098, Column 11: Field Element(0x7a77876d3b63f808d760b410859280de7675d14babadbac6775f0478ba3db45)", + "P->V[34432:34464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16778572: Hash(0x000000000000000000000000686cf0502fc860240e48474fc809a839f384d4a2)", + "P->V[34464:34496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16933391: Hash(0x000000000000000000000000908ed86a116959f486fd94bc2b657cb28bbf6c5c)", + "P->V[34496:34528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17104649: Hash(0x000000000000000000000000592f258efa1953149e92416e2c998ae4d1c36898)", + "P->V[34528:34560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19013418: Hash(0x0000000000000000000000008f26742353ec80acf6275995d9590d8a569f593b)", + "P->V[34560:34592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22871007: Hash(0x0000000000000000000000005f9a17e4007b4fda447effd13b9c7fdc623b65b0)", + "P->V[34592:34624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23099426: Hash(0x0000000000000000000000006d50c254df90c54908cd62c4054f1bade328edad)", + "P->V[34624:34656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23403654: Hash(0x0000000000000000000000004c215e17fd00169a52e4607076766f574081cb3f)", + "P->V[34656:34688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24128236: Hash(0x0000000000000000000000002e6a88168eb4767734a222bec25aaba1ec0f1db5)", + "P->V[34688:34720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 26356430: Hash(0x0000000000000000000000005f6475e1e4cb5b15475156f941ffda1a23b10398)", + "P->V[34720:34752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 26989760: Hash(0x000000000000000000000000eaac0553c7a4d3c9b875f5df6e1cacc072b5fb8b)", + "P->V[34752:34784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27844598: Hash(0x0000000000000000000000008bc40ffb07503ec08c3dea1669c9dfaf283787fe)", + "P->V[34784:34816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28490293: Hash(0x000000000000000000000000f486f1ab6e561ffffc42374473a70578e4dcc8b8)", + "P->V[34816:34848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28852326: Hash(0x000000000000000000000000e45711bb966c3241c0dfebf35d39e2807b8a23f0)", + "P->V[34848:34880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30374015: Hash(0x000000000000000000000000266e00a81b69769427a725c407baa4520d2c65e1)", + "P->V[34880:34912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30523414: Hash(0x000000000000000000000000131407a01f7ecc477d48f539dbd14fd4f7232f5a)", + "P->V[34912:34944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30772605: Hash(0x00000000000000000000000052ca3fb3e78e3e50bbcc13bbaf80639406f8d8d5)", + "P->V[34944:34976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31525315: Hash(0x0000000000000000000000002816b2d5d8dbc416cd853de9fd2194c9607b6c3f)", + "P->V[34976:35008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8389287: Hash(0x0000000000000000000000003dd76b6bf8dea309b0c849832193bf61e89d6c73)", + "P->V[35008:35040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8466694: Hash(0x000000000000000000000000d53e43201ff8d4f310ce1df2c5235467b2509ba0)", + "P->V[35040:35072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8552325: Hash(0x000000000000000000000000e6c93b3c997a2e6478ebef6a094a1ee7c3ad5a11)", + "P->V[35072:35104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9506708: Hash(0x000000000000000000000000c6873c2007d27d1c6296872daeafd22acf5bc9af)", + "P->V[35104:35136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11435502: Hash(0x00000000000000000000000048e6027ee42b95895042a13e55210486a66564d7)", + "P->V[35136:35168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11549712: Hash(0x0000000000000000000000008aec6112ba21cf32a9c9ec5f213458bf3e119a54)", + "P->V[35168:35200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11701826: Hash(0x0000000000000000000000001e1b9f33c47887e52cf99ee051d2824f5aab6f57)", + "P->V[35200:35232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12064119: Hash(0x0000000000000000000000003c29ff532e01de232d3b95e1f1e19e6074e29a97)", + "P->V[35232:35264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13178214: Hash(0x0000000000000000000000003a2662469af325ecd22f1fd48bc8c08a7979097b)", + "P->V[35264:35296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13494881: Hash(0x000000000000000000000000cd95209e46f30c56ac5f683704fbe90ac8045388)", + "P->V[35296:35328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13922298: Hash(0x000000000000000000000000b2f41e663ace02a85c1ee1e544d51716cb947da4)", + "P->V[35328:35360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14245147: Hash(0x0000000000000000000000001f997029a4d06cce90b1b3526605a679d5700f01)", + "P->V[35360:35392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14426162: Hash(0x00000000000000000000000065505358feb2446d5dcb2e1887df1478fcc909d1)", + "P->V[35392:35424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15187006: Hash(0x0000000000000000000000009062f5a1087a7fee7cf67db2fb26b3eb227c665e)", + "P->V[35424:35456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15261706: Hash(0x0000000000000000000000004c203d57eb1b6b7a1d239011ee9bb2e948be2c47)", + "P->V[35456:35488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15386303: Hash(0x0000000000000000000000005dff7c9809accbbb468fa863f816e95d25a6cd49)", + "P->V[35488:35520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15762656: Hash(0x0000000000000000000000004df05c9d636ca82feb9a563ba884fdd32ca39766)", + "P->V[35520:35552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4194642: Hash(0x0000000000000000000000007fea5a80e017d396c5e8917c3133aaa54db3b690)", + "P->V[35552:35584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4233346: Hash(0x00000000000000000000000031a7ae366ce07a70ad1f619b456533682333d76b)", + "P->V[35584:35616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4276163: Hash(0x0000000000000000000000000522b36c2bc1db70b96b7d310961adb653e51730)", + "P->V[35616:35648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4753355: Hash(0x000000000000000000000000c70ad8643303002cd3ddbfd20360ac4b3022a71e)", + "P->V[35648:35680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5717750: Hash(0x0000000000000000000000005bf46ae8f4ac5fd7eba359804415c88da2792ebe)", + "P->V[35680:35712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5774857: Hash(0x0000000000000000000000009cbd9452154688a84bec971fa8478085b8c7f182)", + "P->V[35712:35744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5850912: Hash(0x000000000000000000000000c4290c12a6fe5091b6d464ece9dc78eb58c67c91)", + "P->V[35744:35776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6032058: Hash(0x00000000000000000000000044d9bb5e97a2fd309a84248cc5f5fdeca45d612c)", + "P->V[35776:35808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6589106: Hash(0x00000000000000000000000083927f79d95b4ada498197198395a841063b5809)", + "P->V[35808:35840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6747441: Hash(0x000000000000000000000000f62af635cbbf67f8d36655a046265e94c303a8ba)", + "P->V[35840:35872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6961148: Hash(0x0000000000000000000000005b4f69904f8152244f491f5847670b83d056ba97)", + "P->V[35872:35904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7122572: Hash(0x000000000000000000000000db66885ff9e10f68e039894888d9c231e3b93f76)", + "P->V[35904:35936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7213080: Hash(0x0000000000000000000000008e7929fe7a364695662143d3cf6675c5a565816c)", + "P->V[35936:35968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7593502: Hash(0x000000000000000000000000945533b955ebe0279f369e9d47fe1fa7f5b2db75)", + "P->V[35968:36000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7630852: Hash(0x0000000000000000000000006df9d9e2226d8c0a29eb8e10c03fcde02dee2974)", + "P->V[36000:36032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7693150: Hash(0x000000000000000000000000078aa195e0158449b05b8895bfbd16dc2332a3c0)", + "P->V[36032:36064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7881329: Hash(0x000000000000000000000000316503f41d0a4662b3d437708a1b081782ee44c3)", + "P->V[36064:36096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2097320: Hash(0x000000000000000000000000422f850b2ff44c5c46faca020e6fbea41baa0d60)", + "P->V[36096:36128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2116672: Hash(0x00000000000000000000000044d44cf701cd1801109ab013a0aebf3395da123e)", + "P->V[36128:36160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2138080: Hash(0x000000000000000000000000bee62883de6b8c1782c13a6c52ec74f678b1d631)", + "P->V[36160:36192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2376676: Hash(0x0000000000000000000000005d13050fdc00574eac46f4218d1ae57029ce8cca)", + "P->V[36192:36224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2858874: Hash(0x0000000000000000000000002f83e3cdace8d293c39e62188d6ed08571c409cf)", + "P->V[36224:36256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2887429: Hash(0x000000000000000000000000a6af81c57b74846bd6c4c18006f4f1c22108da69)", + "P->V[36256:36288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2925457: Hash(0x0000000000000000000000007ec0ad5d38eae49ce67a9da99b73f5567453ccbd)", + "P->V[36288:36320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3016028: Hash(0x0000000000000000000000002d1a674a7960938d18fef13724b743ad7fd4cd1c)", + "P->V[36320:36352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3294552: Hash(0x0000000000000000000000006029c2fc2f56765294458ae15f6032ab2b49a6b7)", + "P->V[36352:36384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3373721: Hash(0x000000000000000000000000e41dead8b86990b796cf5014e7818331f6ef0d74)", + "P->V[36384:36416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3480575: Hash(0x0000000000000000000000002e4b19f6a5fadd5b171965b43418b627533f8d6c)", + "P->V[36416:36448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3561287: Hash(0x00000000000000000000000001e848da33238f249868f64163bd33f6d88c7c84)", + "P->V[36448:36480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3606541: Hash(0x00000000000000000000000058fd3325a3045bebc8dfe8e27563af3c26cf501a)", + "P->V[36480:36512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3796750: Hash(0x000000000000000000000000f91f8ebe55ace8a33b0094cd9f3cdb4ef1494447)", + "P->V[36512:36544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3815427: Hash(0x000000000000000000000000c20f3088456b9d0349ae8dd97aff95702cb39882)", + "P->V[36544:36576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3846574: Hash(0x0000000000000000000000002902010ee3030783d7c3b516c2e50f957d4c35a5)", + "P->V[36576:36608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3940665: Hash(0x0000000000000000000000000742fee142b6913df35738a6dcff1afc44acba0f)", + "P->V[36608:36640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1048661: Hash(0x0000000000000000000000009a6435d5c240951749e91c62200c77796a2ecb56)", + "P->V[36640:36672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1058337: Hash(0x0000000000000000000000000c729d7d0e83f77d1fefcf4cdd162380870622d2)", + "P->V[36672:36704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1069041: Hash(0x0000000000000000000000005f17ae412229c6214a492cc27cfbcde6ed1100f2)", + "P->V[36704:36736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1188339: Hash(0x000000000000000000000000bfed201caa08f7deb308ca94c0f08d436f714ac9)", + "P->V[36736:36768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1429436: Hash(0x0000000000000000000000002a670c67f6cd90e8ca4a49bc49273ee9d628a627)", + "P->V[36768:36800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1443715: Hash(0x0000000000000000000000004ad7da4e787d7568fa8b17f31c58a479900fac8b)", + "P->V[36800:36832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1462729: Hash(0x000000000000000000000000005500c3b438fc9c4ae5b4558b43e926eb3a0f5d)", + "P->V[36832:36864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1508015: Hash(0x000000000000000000000000367daadf4b3a80f85c34ff9cbb1120151fe94c17)", + "P->V[36864:36896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1647277: Hash(0x000000000000000000000000fd2490447025fe67aaaac1617d299e7bcedddef4)", + "P->V[36896:36928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1686861: Hash(0x0000000000000000000000006cb8d56520e12e7ab8b0533df8271ce59eab8d46)", + "P->V[36928:36960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1740286: Hash(0x0000000000000000000000002fa876e872adaf9a95b3ab5869837e563b328936)", + "P->V[36960:36992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1780642: Hash(0x000000000000000000000000903fbc7c7b2fc01d70dd21ec008873b62a6e7c75)", + "P->V[36992:37024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1803271: Hash(0x000000000000000000000000332f335ecc575e3816fdd3c1194bb13ad3f05a40)", + "P->V[37024:37056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1898374: Hash(0x0000000000000000000000005f5a9fb5be98083eaa4b512e1daeca887f8a3662)", + "P->V[37056:37088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1907712: Hash(0x0000000000000000000000002147f394c7bb4da96899b5c8f4cd679e10bd6a11)", + "P->V[37088:37120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1923286: Hash(0x000000000000000000000000cd125258892dcf7d2bd5e282f570c7cebe12eb9a)", + "P->V[37120:37152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1970333: Hash(0x000000000000000000000000ff385d27d871291ed9c023a1120507da3e20d537)", + "P->V[37152:37184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 524331: Hash(0x000000000000000000000000fd60a204dcb241a734aaf506088c56cced41b8d9)", + "P->V[37184:37216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 529169: Hash(0x0000000000000000000000005c54c8ed3d42c830ce2d295d702ece82db222a38)", + "P->V[37216:37248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 534521: Hash(0x00000000000000000000000024e8875018e868ab4a39b74c99d4cedd70118f73)", + "P->V[37248:37280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 594168: Hash(0x000000000000000000000000fc5b3fa9d9dd60c2e0b66c5dd626fd254e0433f4)", + "P->V[37280:37312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 714719: Hash(0x000000000000000000000000ed651ca4daa849450376c4ba1abdb02ce4ca80dd)", + "P->V[37312:37344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 721856: Hash(0x00000000000000000000000014be5271c07204b0ed9725f477a79b941eec7111)", + "P->V[37344:37376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 731365: Hash(0x000000000000000000000000b5dedf0c8560738cfa96cc64bb3db2551de6027c)", + "P->V[37376:37408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 754006: Hash(0x0000000000000000000000001ed6671ac7f747e60da1fc4130ef4d5cabba672a)", + "P->V[37408:37440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 823639: Hash(0x000000000000000000000000c959ee8f295647412b6fc7db0aeca921eeca2241)", + "P->V[37440:37472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 843431: Hash(0x000000000000000000000000bdf46e6752d2ed8fc2b128d55a36accd39e1b5e9)", + "P->V[37472:37504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 870142: Hash(0x0000000000000000000000008bdcb3e603526e3eb9fee8c443aff1619d71d903)", + "P->V[37504:37536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 890320: Hash(0x000000000000000000000000b37727bbed8d62e79958d4435bb928a91e1c8ba8)", + "P->V[37536:37568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 901634: Hash(0x0000000000000000000000007841fe96f8245cbca60004962e5f64a1723e9c0a)", + "P->V[37568:37600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 949186: Hash(0x000000000000000000000000de2d2d0d257bf65635cd97c623e6e6993b60f063)", + "P->V[37600:37632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 953857: Hash(0x000000000000000000000000bc048bc41b0de5146b73d354135a4344e5ab604a)", + "P->V[37632:37664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 961642: Hash(0x00000000000000000000000028c315fc3f68eb546e35ede3e9c0238411188298)", + "P->V[37664:37696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 985167: Hash(0x00000000000000000000000069b330bb7d125926f118ff589693c02a90657a97)", + "P->V[37696:37728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 262164: Hash(0x000000000000000000000000efaae0e81d8a63ca817aad842687da0bf7fb83b7)", + "P->V[37728:37760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 264585: Hash(0x000000000000000000000000ac759a4158b2bcd792caab0224190d2f2438ac91)", + "P->V[37760:37792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 267261: Hash(0x00000000000000000000000039517b93e0369181d63ce529ff24a3494cd924c4)", + "P->V[37792:37824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 297085: Hash(0x000000000000000000000000fe1680b4331ee1f6fdeb1f11a9fc4cb13eabd5a4)", + "P->V[37824:37856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 357358: Hash(0x0000000000000000000000000a0ab933716a29e919075f4f1d1ed8ebfc82fd0a)", + "P->V[37856:37888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 360929: Hash(0x000000000000000000000000294f7599c4925b17ce660d6facad012b374b0d7b)", + "P->V[37888:37920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 365683: Hash(0x0000000000000000000000001d68f5a9b534da1992ef8dc978f9864a59fba6f2)", + "P->V[37920:37952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 377002: Hash(0x000000000000000000000000791761855d4108d7efc0fc71044174dc1eee1b89)", + "P->V[37952:37984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 411818: Hash(0x00000000000000000000000004d5229c29643f3917f580d198c717b671f6d89f)", + "P->V[37984:38016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 421714: Hash(0x0000000000000000000000006d712236fa2441e58149b20f1105fcd074333f2c)", + "P->V[38016:38048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 435070: Hash(0x0000000000000000000000006000e89be52d25c99f82d669ed8f20609a0fa309)", + "P->V[38048:38080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 445161: Hash(0x000000000000000000000000d1b7b9eaffe5e39b4ad648bda5ffa375d06464d8)", + "P->V[38080:38112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 450816: Hash(0x000000000000000000000000df3e133eac6a44e2b7eb47df2ff769f151eabb03)", + "P->V[38112:38144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 474592: Hash(0x00000000000000000000000055ff593e4b74e61e6d81fdce494f0f4b443b436c)", + "P->V[38144:38176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 476929: Hash(0x0000000000000000000000002132c23dc7f6b8f86bc9d6b0781c1b27fa29661d)", + "P->V[38176:38208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 480820: Hash(0x000000000000000000000000cc94be28d533c25a1994603e6c638ebbaddd4ba9)", + "P->V[38208:38240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 492582: Hash(0x0000000000000000000000005c24ce84ec05a4f856b762da4d199e466a89eb73)", + "P->V[38240:38272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 131083: Hash(0x0000000000000000000000004b2a0ce2095e6bf39f1ce4d1e4b269ec7bc04350)", + "P->V[38272:38304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 132293: Hash(0x00000000000000000000000053073277897d7de30eafe9c69bc94572f7feaf51)", + "P->V[38304:38336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 133631: Hash(0x000000000000000000000000e986a233e4e7ec7030b12c26b66bc5cda1d5c767)", + "P->V[38336:38368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 148543: Hash(0x000000000000000000000000f4e5e55ec4b671c11d7ecdf9f24ea6ddd1f5203e)", + "P->V[38368:38400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 178678: Hash(0x000000000000000000000000fc69430e28007d408dc6cff8904db1efdc4783f9)", + "P->V[38400:38432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 180465: Hash(0x00000000000000000000000013cf5197472b9a125480d41d35dc40c52c8e3f1f)", + "P->V[38432:38464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 182840: Hash(0x0000000000000000000000007193b320bb1f96bcc5661c989126673729884b53)", + "P->V[38464:38496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 188500: Hash(0x000000000000000000000000993462af739fee85b5b639a7577381ce775e4d2b)", + "P->V[38496:38528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 205908: Hash(0x0000000000000000000000004d9633af1523139282799039eeb9e9250b1af1c2)", + "P->V[38528:38560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 210856: Hash(0x00000000000000000000000050002556468bedf8ef621d6f263b0cc211cac74c)", + "P->V[38560:38592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 217534: Hash(0x000000000000000000000000d032af0afd38f9daef3706d16345cf7dd5d872f0)", + "P->V[38592:38624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 222581: Hash(0x0000000000000000000000005c73bc32b8ee40d384e7c147fbd76fabe17e21d3)", + "P->V[38624:38656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 225409: Hash(0x000000000000000000000000cddcb5a490848c51cf87145d1bc29f48b3d57743)", + "P->V[38656:38688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 237297: Hash(0x0000000000000000000000004308114a8b4b22d0056c160cf3e8655c542e3029)", + "P->V[38688:38720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 238465: Hash(0x000000000000000000000000dec7e18b91683a0731800d1d91d5c5b83e480e99)", + "P->V[38720:38752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 240411: Hash(0x000000000000000000000000bf0e67a472362246e1ce5b4b17a7e9e95b1aaee9)", + "P->V[38752:38784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 246290: Hash(0x0000000000000000000000004864046441fefbf45831582500437c8f3ec66556)", + "P->V[38784:38816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 65540: Hash(0x000000000000000000000000eccf16bc9907b99b427139a571bd810e55f41399)", + "P->V[38816:38848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 66147: Hash(0x0000000000000000000000002978a15b3485e67357eb930fe6d51341b1ef6624)", + "P->V[38848:38880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 66814: Hash(0x000000000000000000000000d63460795f7a81ba5938aef8f738873dfa21fb81)", + "P->V[38880:38912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 74270: Hash(0x000000000000000000000000e201d41eec9f1c4eb28a683adb307065408eec2a)", + "P->V[38912:38944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 89338: Hash(0x000000000000000000000000fa0abef39f4a32c0b295fde95cc0aca9013f56ae)", + "P->V[38944:38976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 90233: Hash(0x000000000000000000000000acc428eaa04e4e36880a790d1f7b463b3e5c86ba)", + "P->V[38976:39008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 91421: Hash(0x000000000000000000000000694f8273722c7e5c198245a4ea5d1474440a02f4)", + "P->V[39008:39040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 94251: Hash(0x00000000000000000000000004e60bb2cb39b4639f55cf7660aa85dd9bf533c4)", + "P->V[39040:39072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 102955: Hash(0x00000000000000000000000061f4062180a310d3739ec86589e7b26e2e3dc6d2)", + "P->V[39072:39104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 105429: Hash(0x00000000000000000000000052128c9b996aa330e8497f29b69b56d696936fa0)", + "P->V[39104:39136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 108766: Hash(0x000000000000000000000000d0aa6db472fc8ea54dbc89e42c5cb02d29a11aec)", + "P->V[39136:39168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 111291: Hash(0x000000000000000000000000a49909a496037d789e4f4cee14d6e8fc3adc5351)", + "P->V[39168:39200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 112705: Hash(0x0000000000000000000000009979fcde360b95646db973e2e1f37c56b81a1106)", + "P->V[39200:39232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 118649: Hash(0x00000000000000000000000090a80e09d5c2f2e48adb5866cdfc0ac1aafde939)", + "P->V[39232:39264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 119233: Hash(0x00000000000000000000000035bcc3efb59a8df73a89543d420b70b7f4286976)", + "P->V[39264:39296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 120204: Hash(0x000000000000000000000000c4a9bfaa5754626d42ab02b5d41b6f6495869b62)", + "P->V[39296:39328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 123144: Hash(0x0000000000000000000000009f3ea1e1382269f7e6d0cb1c6a577d865aa611c3)", + "P->V[39328:39360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 32771: Hash(0x000000000000000000000000829825e78a45b299326ea26f7491fc8585704ca3)", + "P->V[39360:39392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 33072: Hash(0x00000000000000000000000010cca32bfc3de5cd8411c667f8657fb61482968f)", + "P->V[39392:39424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 33406: Hash(0x0000000000000000000000000fc4a146e22dcedc500e3cfbd5fb32c5420fa13e)", + "P->V[39424:39456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 37134: Hash(0x000000000000000000000000b8b860be5c42230387065a9f7a575e4e85d43760)", + "P->V[39456:39488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 44668: Hash(0x0000000000000000000000005f4b1a2a58e796aaaf6be951a4d6c348de2af927)", + "P->V[39488:39520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 45117: Hash(0x000000000000000000000000389659f924c7125136fac18e8584cb15f48ae7db)", + "P->V[39520:39552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 45711: Hash(0x000000000000000000000000b9b2de8cc5eec58e38a8147af43ab05dd8d4ea49)", + "P->V[39552:39584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47124: Hash(0x0000000000000000000000005cf7aefa7db8f7bc02c9a9af1849ab3622bb0d42)", + "P->V[39584:39616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 51476: Hash(0x000000000000000000000000ce7eb874cb7327fb5e9b97ab9d90af4a014ce43e)", + "P->V[39616:39648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 52715: Hash(0x000000000000000000000000ad6a5ff44559cd21aa87bf7ef673664b0cd5d143)", + "P->V[39648:39680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 54382: Hash(0x00000000000000000000000082f9538d2ae666603183ef6533fbe6cd6d4074fc)", + "P->V[39680:39712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 55644: Hash(0x000000000000000000000000fda14958f27b3f16226c1b4198198647696a551f)", + "P->V[39712:39744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 56353: Hash(0x000000000000000000000000a4d5b3095f0a8c6d4548d7337c28b1732e2d05a7)", + "P->V[39744:39776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 59325: Hash(0x00000000000000000000000068b3bf7548c4b30083702d8fe0aef7a648769aa1)", + "P->V[39776:39808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 59617: Hash(0x0000000000000000000000005b0ddb959589b1dcfe0b9af1e7bbc672d7e6b396)", + "P->V[39808:39840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 60103: Hash(0x0000000000000000000000000125850dd0b8f8d9729e8a1c6733d46e777598b0)", + "P->V[39840:39872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 61573: Hash(0x000000000000000000000000d361b9cb88e0c7bcea131d38a1590e5625b6f0db)", + "P->V[39872:39904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16384: Hash(0x0000000000000000000000007be6cdee8c72709fc9dca5706fed91a0b30938e1)", + "P->V[39904:39936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16537: Hash(0x0000000000000000000000009e4de43cf54377f513b9f6bbe5fa6c03aee1bd5e)", + "P->V[39936:39968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16702: Hash(0x0000000000000000000000003a19672a76b805d7f2578b26cbb62f36e22fa637)", + "P->V[39968:40000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 18566: Hash(0x00000000000000000000000087ede2d274911cac5406e7925b652e35fce4efff)", + "P->V[40000:40032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22335: Hash(0x000000000000000000000000f7228a23d1b1421e926667be1f4c48f075f5db0b)", + "P->V[40032:40064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22559: Hash(0x000000000000000000000000ebe91b31c819c1109fa133a852022e83175414bd)", + "P->V[40064:40096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22854: Hash(0x000000000000000000000000ff65249f5c9b79267dc27327234d70236aa3502d)", + "P->V[40096:40128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23563: Hash(0x000000000000000000000000f731782e9709807bbb2ee73748a633becb66779e)", + "P->V[40128:40160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 25739: Hash(0x00000000000000000000000063aebd12765c88317b6f7f7a2138c49a925844b8)", + "P->V[40160:40192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 26356: Hash(0x000000000000000000000000d64b36eb6cfe5c0cfa8a72bbdaff6b19ad154907)", + "P->V[40192:40224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27190: Hash(0x000000000000000000000000e64c256c6c6a007759707372e509475bb7bea3ce)", + "P->V[40224:40256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27823: Hash(0x00000000000000000000000078ac24968216aa73ed0c547822ccaa191871fc74)", + "P->V[40256:40288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28177: Hash(0x0000000000000000000000005ee39646eebed309ba47057bfcc6284513cdfe03)", + "P->V[40288:40320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 29663: Hash(0x000000000000000000000000e63bd3d86784212a010b65b24828030c616c9505)", + "P->V[40320:40352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 29809: Hash(0x00000000000000000000000033930e4fecdea472158fb7eb72ef85cb944bc064)", + "P->V[40352:40384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30050: Hash(0x000000000000000000000000b191321092498dfd3aeb590c106937b36dd75967)", + "P->V[40384:40416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30787: Hash(0x0000000000000000000000003fe0bec6a99e6cead27592860427403ebb04de52)", + "P->V[40416:40448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8193: Hash(0x0000000000000000000000009c09076ceaea8d109abe3453ab45769928827f67)", + "P->V[40448:40480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8269: Hash(0x000000000000000000000000b535f5328f3658665f0d7dc1406104729210e3b1)", + "P->V[40480:40512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 8350: Hash(0x00000000000000000000000020f309d69ed89ac7d0dfde4cbbd1065d85b4fa42)", + "P->V[40512:40544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 9282: Hash(0x0000000000000000000000000adefe8743419ce2307ff76b8f4cd153001c52e3)", + "P->V[40544:40576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11166: Hash(0x000000000000000000000000abfe4bee59623d000d2773eca0afbf0a48e1810a)", + "P->V[40576:40608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11278: Hash(0x000000000000000000000000161e6ec3c78cab1842a33997cc74d0612dc763a3)", + "P->V[40608:40640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11426: Hash(0x00000000000000000000000041cff18c9cf9d255d4935b8256d223472b1ebab0)", + "P->V[40640:40672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 11780: Hash(0x000000000000000000000000917d912baa7c1024d79c4239f025abf31e39116d)", + "P->V[40672:40704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 12868: Hash(0x000000000000000000000000c93c7be52e46ac0b77018c4874813bbe31300d26)", + "P->V[40704:40736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13179: Hash(0x000000000000000000000000c6090e69b2b6bbda4114d40a2fb95ac54a351480)", + "P->V[40736:40768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13594: Hash(0x000000000000000000000000a1280288904ff1d2c4d0131a439658bc726e387f)", + "P->V[40768:40800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 13910: Hash(0x000000000000000000000000ef1be37fe44ad50f56d93b3621879e078a839968)", + "P->V[40800:40832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14089: Hash(0x000000000000000000000000b2163ad1c355ab55d9911819d89212063bc7ac3a)", + "P->V[40832:40864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14830: Hash(0x000000000000000000000000cbead7029fb2e2ccc5f0c42c456fc6987b55232c)", + "P->V[40864:40896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 14905: Hash(0x000000000000000000000000895d442ccece34eb557aa146feab1c77e591b7f3)", + "P->V[40896:40928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15024: Hash(0x000000000000000000000000a906762047fdca0973b8de92c80ab5fd99f89fdc)", + "P->V[40928:40960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 15392: Hash(0x0000000000000000000000004e3c8e44b8b8152e974b45acf94c13462692a6eb)", + "P->V[40960:40992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4097: Hash(0x000000000000000000000000d39ee58e7d11671d46027e0ebaeb8167c740546b)", + "P->V[40992:41024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4135: Hash(0x000000000000000000000000f9095b6a8e0f3d368b89cfcc79e024d75fdedb6c)", + "P->V[41024:41056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4174: Hash(0x0000000000000000000000007e24d5569fe372628076fff96cad64ff378fd699)", + "P->V[41056:41088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 4640: Hash(0x000000000000000000000000396f6bd2372c70c831809f497e56212a49055f0e)", + "P->V[41088:41120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5582: Hash(0x0000000000000000000000001788bb1d7bf6c5bc2b3b2c2f14a52e6671353e5f)", + "P->V[41120:41152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5638: Hash(0x000000000000000000000000ddff44272f4ce0ea683646c34584dd55e281a909)", + "P->V[41152:41184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5712: Hash(0x00000000000000000000000046e90b2bdaa6ca548ce0eb76d4b5988ebb24f291)", + "P->V[41184:41216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 5891: Hash(0x000000000000000000000000951747868ceb916816853990504a866df4cd0476)", + "P->V[41216:41248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6435: Hash(0x000000000000000000000000c585234a5982d1ed573e72fd4aa929e06bea0361)", + "P->V[41248:41280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6588: Hash(0x0000000000000000000000002b1e3d6015102dcd1a2130d72c77adfa9271a95f)", + "P->V[41280:41312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6796: Hash(0x0000000000000000000000008c4e5885b06afcfcf3c0da5af0879ca2d66ddfc8)", + "P->V[41312:41344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 6954: Hash(0x0000000000000000000000002fc3533febc9a44eeecb19d3f27f077818b2fcd9)", + "P->V[41344:41376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7045: Hash(0x0000000000000000000000002df6cce98634d3cdac96a2e2f9347fceaa3a58a8)", + "P->V[41376:41408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7414: Hash(0x00000000000000000000000097df672c0c85d164cef9e013f1ada426f18c3c12)", + "P->V[41408:41440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7453: Hash(0x00000000000000000000000017999a12f39e0e6563b8bab9a83cdfc7c9eae0a8)", + "P->V[41440:41472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7513: Hash(0x000000000000000000000000794751cedee4b88cdb391af73e48119b818bf58a)", + "P->V[41472:41504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 7697: Hash(0x000000000000000000000000fd69f265eafaf361d9ac9197727d0c0dc3f1ed86)", + "P->V[41504:41536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2049: Hash(0x0000000000000000000000007c3fecf723d88341cd86188a864f5fb91974a5e8)", + "P->V[41536:41568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2066: Hash(0x0000000000000000000000009c1e4b854c16ebb032ec366b1fa82a42a3b5ba9a)", + "P->V[41568:41600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2086: Hash(0x000000000000000000000000b2267b1729c9d82858dbe2b49b397f88d3e6a35c)", + "P->V[41600:41632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2321: Hash(0x000000000000000000000000c061891fe5776e96680c1b1b4f72a0737e90ddb5)", + "P->V[41632:41664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2790: Hash(0x000000000000000000000000054be84feef69b3d35a385aa059a87547560f50f)", + "P->V[41664:41696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2818: Hash(0x00000000000000000000000027c02bb2792107ef47847c50d66c401e10a08902)", + "P->V[41696:41728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2857: Hash(0x000000000000000000000000fde8b1be372b6deface04424c1590d07252d9994)", + "P->V[41728:41760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 2944: Hash(0x0000000000000000000000004f05c1f8d815d2c8dbadfee32219214127c6c643)", + "P->V[41760:41792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3216: Hash(0x000000000000000000000000ebcbd809801cb87890c88f1700b8ad62429743e7)", + "P->V[41792:41824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3295: Hash(0x000000000000000000000000411f63acfd8ea6b0c7c7ec1ada11efffeef99497)", + "P->V[41824:41856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3399: Hash(0x00000000000000000000000089bc3436f43e19a1423b03e5b809d832c10e4326)", + "P->V[41856:41888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3476: Hash(0x00000000000000000000000093eb316aa13db126f670fd1286c8b7b6bc87d73e)", + "P->V[41888:41920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3523: Hash(0x0000000000000000000000003ea91146ba34e9f5176969f348fe2b50c0c397d8)", + "P->V[41920:41952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3706: Hash(0x000000000000000000000000ffcffaa05cde8cebe759c9287c2279e119002916)", + "P->V[41952:41984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3727: Hash(0x0000000000000000000000007bab3049710af156b7df2b60ffd0fa0fdecd0894)", + "P->V[41984:42016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3757: Hash(0x00000000000000000000000048cc928a67dd75937cbe20c6a79edf2fc54f2ee8)", + "P->V[42016:42048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 3849: Hash(0x000000000000000000000000540e497fe09369318557043ced11802c41ab829b)", + "P->V[42048:42080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1025: Hash(0x00000000000000000000000042bd819128f83e738fe0091d97bdcc7f6cfabae5)", + "P->V[42080:42112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1032: Hash(0x00000000000000000000000084973f55a388b9631f0f90fee6f463ae282ceb84)", + "P->V[42112:42144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1042: Hash(0x0000000000000000000000005aa3a33db7ec1bd6a93bd3f49c38b7802b095eb6)", + "P->V[42144:42176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1161: Hash(0x000000000000000000000000016c52d3f03d2d19897b481e9680e69f635c998a)", + "P->V[42176:42208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1394: Hash(0x000000000000000000000000b85bae004b52e3075f84e215e5f1fd9e41534048)", + "P->V[42208:42240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1408: Hash(0x000000000000000000000000e1506b658d6dcf580649a44affe3d7011e386e9a)", + "P->V[42240:42272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1429: Hash(0x000000000000000000000000c13ddcc2ebcf3b354535b9594ee62f1de449c727)", + "P->V[42272:42304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1473: Hash(0x0000000000000000000000007b0fb07ea3bf61d8ac8341e2b77c6a9bfe9d28a3)", + "P->V[42304:42336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1609: Hash(0x0000000000000000000000003614bfda5cf6e540cf15e86a616c7eb761220c39)", + "P->V[42336:42368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1646: Hash(0x00000000000000000000000024b8d6cf3ce1c1bcaf920fe43be6d20d923b9128)", + "P->V[42368:42400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1698: Hash(0x0000000000000000000000003557abc8e6040eed714a59e453c6496d9b615399)", + "P->V[42400:42432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1739: Hash(0x000000000000000000000000e03fa2b03ef0e5c1bc17f47aa7bf518656a675cd)", + "P->V[42432:42464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1760: Hash(0x000000000000000000000000ce6daf87fe847a2e36c781e2d3544e0890a8a455)", + "P->V[42464:42496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1852: Hash(0x0000000000000000000000002afc74bfd416ff7214e6a1c069fa5c1ac6c45d1a)", + "P->V[42496:42528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1862: Hash(0x00000000000000000000000064a42c3cba19d31ba8879c8846d45849e52ae442)", + "P->V[42528:42560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1879: Hash(0x000000000000000000000000afd6d5102eac291b660fd50e45b28eb2129fd5ce)", + "P->V[42560:42592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 1925: Hash(0x00000000000000000000000098d6905440fb95e022396e88708113d9eaa8202b)", + "P->V[42592:42624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 513: Hash(0x1608df33e410f2bc251e22f035a9e97e230d81ae)", + "P->V[42624:42656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 517: Hash(0x157ba5d0eb50f45f3e0c3c1ef91fc7351bb89fd8)", + "P->V[42656:42688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 520: Hash(0x21e52dc9e7881b1c23b37b337037d4808ba0cbbc)", + "P->V[42688:42720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 581: Hash(0x7948602df75c77897c6c4a8ca6db430e8b676389)", + "P->V[42720:42752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 696: Hash(0xadefa2e8730589d7b22bf43c7fc70317c14147a7)", + "P->V[42752:42784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 705: Hash(0xb34a88212d53d85076cd56c32640a7bef1fdef62)", + "P->V[42784:42816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 715: Hash(0x318a5c3d450df9432226c445efe969d5c8c2d06d)", + "P->V[42816:42848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 737: Hash(0x961c457006df307d28b7a81be8cb1c0fb17f5c40)", + "P->V[42848:42880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 805: Hash(0x2ad915e201fd4626c4f1067294d05d9fc5a519a6)", + "P->V[42880:42912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 822: Hash(0x9cfb67e47f33b7cdf8e107c7adc2b0db531d572e)", + "P->V[42912:42944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 848: Hash(0x1998b48fd0c4b5ab4db9754140de6812561da56e)", + "P->V[42944:42976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 868: Hash(0x75dfbd4e5505de9e0a7caef489981ab2b3d13b4b)", + "P->V[42976:43008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 881: Hash(0xf9ec3768a7648ddc7f5c1b65c7db38303d9ef94c)", + "P->V[43008:43040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 927: Hash(0xa377692ff469f334e30438e0d11c0cbc86934aa1)", + "P->V[43040:43072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 930: Hash(0xb0c79234837779e69d37d0cbea12df06bbfc5e)", + "P->V[43072:43104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 938: Hash(0x7c2dfc2ce1e19f56723edecb504e2f9dd447d86a)", + "P->V[43104:43136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 963: Hash(0x6c187a63aaf8d4296bfa5a7add740df0f20150b7)", + "P->V[43136:43168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 257: Hash(0x2cbc6fb6670dda22bc280c91b6234715ecf2e45280324dbbc7953a02db8c8c8)", + "P->V[43168:43200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 259: Hash(0x7148c1605802245aa809030508256e05575b07fc8b0163818df84d76bedbff)", + "P->V[43200:43232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 261: Hash(0x4a387ef5b63ecbdaafc3dc0e7f3402c9c2ae6917099ae9a37f7b0a44df4b7c1)", + "P->V[43232:43264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 291: Hash(0x5e134ba1e08f4220acc72b85a1f069677ba5d2e5f7f55bd9bbf23c41d2639b0)", + "P->V[43264:43296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 349: Hash(0x20ef128d2669d482a68d61c8a50dc96accb34ea699a4cd290ea781559dc9030)", + "P->V[43296:43328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 353: Hash(0x751c0fd194771ea880f9a1b38afad1629a1e840b80ab39fb0a523cefec1a184)", + "P->V[43328:43360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 356: Hash(0x63380c1558d9e32256f8ba792c24a7a84173def05221f1b4e66ac5533b72f47)", + "P->V[43360:43392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 369: Hash(0x486fc67c16e215c8a8ca5012ad66a8389fd7aa107a20cbe1c78beb751f6e8b9)", + "P->V[43392:43424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 403: Hash(0x13b2ebd3e22d29464c798abf5a152f80331dcc8296fbc925357e2ddeb0394f1)", + "P->V[43424:43456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 410: Hash(0x411977c64fd8864959a8d9225b05a4bca804a09f2a057a5575f0ee886616c23)", + "P->V[43456:43488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 425: Hash(0x7c5891738db968ac183dbc52c9b5ab229950302393c89f73d3bab931b236416)", + "P->V[43488:43520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 435: Hash(0x5fce41fe0cc77fdbfd1cf53e646ea7e4cdf8d5e9d7ea67d0133c9f9246f6127)", + "P->V[43520:43552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 441: Hash(0xb89165946078bd3f6d64e7ecc80d48498cc5ec3f88a3c5452a610600b455d)", + "P->V[43552:43584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 462: Hash(0x38a76c8e55559d1d647641f6a1b22b980b0b91d2e216fad43975f8ca4c6434c)", + "P->V[43584:43616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 464: Hash(0x48d203be17126233cce66088b1cb8013c9cdbe9f982093bdfd42d7549ba314a)", + "P->V[43616:43648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 468: Hash(0x4905e99a53fd48ef5837523a0310d30c6260d8a66d253d0c3a5faea3e152bcc)", + "P->V[43648:43680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 480: Hash(0x2d316460e5e5c9b6d92025bd52dc7d382dc910afdfd49a3a2adcbec4a0205fe)", + "P->V[43680:43712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 131: Hash(0x452d7a1785df6f6fd26844e53834a71d28a4658544575a4146c8b55aa8a8f32)", + "P->V[43712:43744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 144: Hash(0x3d9290e6f8b9dfe459ab023a74bc805d4d75b0b9014f875760927b10c1e9969)", + "P->V[43744:43776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 175: Hash(0x1db2642c5962ee347c40d401272c483ae0a83600e79885eac09e2b3e23b1cc0)", + "P->V[43776:43808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 177: Hash(0x7289971e5986a47132dc05dcbe2ffe1988e0980b7798d3b2384bbe0a21cf629)", + "P->V[43808:43840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 179: Hash(0x485cf4af18f8f2ab10e1b46a42f7954860fea499319ea79f0d9f3b21938f5a2)", + "P->V[43840:43872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 185: Hash(0x2e8c712554738ec69940386f739c6043cf75acc4d2da9b24ebc60f17c021fb8)", + "P->V[43872:43904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 200: Hash(0x65a68891c2482afa4d0029d6fce57ece33428ecd950a923fb7d674c026ed7da)", + "P->V[43904:43936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 204: Hash(0x689a0c8a9d4fec040695705a1ab17700e4d7d78eb743db1a8601c0b3a0bd9df)", + "P->V[43936:43968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 213: Hash(0x113cc4d87491aa870c489cec8155ac74ef071790f7999c93cc85ca1ab41b0ba)", + "P->V[43968:44000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 216: Hash(0x52af7ffb53476b194920b6788217186f63edf15ce79e474a97d2472aa1e6170)", + "P->V[44000:44032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 221: Hash(0x1328f4d570b625e1c805b5fb7331897933d129b568ccd2515c23fcd1c99df5c)", + "P->V[44032:44064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 230: Hash(0x5d0a113a42ea43280d7dae2750d0e2e9cd75a93ccd914b64fe224ea7afa3953)", + "P->V[44064:44096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 233: Hash(0x627ba37b15c62d2dba668b1034b26623de7f996dd9533fa73c1586a4c688df2)", + "P->V[44096:44128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 235: Hash(0x6b79b758b80b81978af364c80947ba556f4fc94093466de9c4497c0482a8088)", + "P->V[44128:44160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 241: Hash(0x42b4da4fae5d31d1e3258d04a135acab1e8b4db8164c2d90be2aaf0ccf4dbf3)", + "P->V[44160:44192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 73: Hash(0x14ca18940cfd7e39d3e281a4fc0af0accd6be173b24b37fd36e4ff96f76bf2)", + "P->V[44192:44224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 86: Hash(0x139efc01c086cc7451ce691d4749452697c18efaed17b4a0c63091bb94c6200)", + "P->V[44224:44256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 93: Hash(0x45003c33494524fa5da82a728d5c4b77ea8e8aa566b64eb60b621e002ebfaa)", + "P->V[44256:44288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 101: Hash(0x325def0e0de85449ec1d3d3b83c007b70d9bd0fdf11c71da682625fead350b2)", + "P->V[44288:44320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 103: Hash(0x15b415e3b9c2dff100255c1dcaa8c7d0d9194b36a14c865089473e6ccd573ea)", + "P->V[44320:44352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 107: Hash(0x744d26f320561919ba980db8d2a966371cd8d6175fb3473deb2f2da5a76db21)", + "P->V[44352:44384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 109: Hash(0x5a23ea653ebb783105f4444783977e4a530090b615ff7df8c8e96394f61b731)", + "P->V[44384:44416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 111: Hash(0x7f92a4b0c55ec21660aebb5dccc304547bacfabc6af5f60f6500e7c91865528)", + "P->V[44416:44448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 114: Hash(0x636784ab03e494aa3c7f25834b18c0fba6cbd8e86b282821de150a3b342b2dc)", + "P->V[44448:44480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 121: Hash(0x120f00509a1c9e99e84daa8974584808dc6c4dee423502828d18e1ef3f2b8e9)", + "P->V[44480:44512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 33: Hash(0x2a180535708773ebea0bab3d8d1e2fb0cf393eaececcdc3613a78fabaa09079)", + "P->V[44512:44544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 37: Hash(0x32e7be0c91e6c968183dc8bd5006f19d4d6d5c7090f9089e06c6aacdfe9ed45)", + "P->V[44544:44576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 42: Hash(0x3b4d64a612824715a3c49ed495ee63dbdd9241d04f853a1dc6228b38b73fb8a)", + "P->V[44576:44608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 45: Hash(0x73e41cb428d745745a0abc836b694d9ac0dd79f770d62ea52cb976c0b086a5e)", + "P->V[44608:44640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 47: Hash(0x21a743a069f7f7e4f45080ed7a011664ffb6ed6fd113e3dcc3c417dd0fb089e)", + "P->V[44640:44672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 52: Hash(0x19311cdd07ece36f0e716f5aa7a34ff7f062eb930da6188070002d8b0a5c30c)", + "P->V[44672:44704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 56: Hash(0x1c868dd515462fbce29a17482b2b1ae5af5213e2ed8d86963b67c56e6599a79)", + "P->V[44704:44736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 59: Hash(0x3cea92c42c37554d51fdb948726529d130fe8c117550f72c885435fae5eb56e)", + "P->V[44736:44768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 61: Hash(0x65d26e67908fa2ffff4487bb1efe151aa41369e7eafbfa564486e836d3bd1ba)", + "P->V[44768:44800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17: Hash(0x6402d97e30e80e664ac42b9088a49a001b4552135535039c85a043bb05f4a44)", + "P->V[44800:44832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19: Hash(0x269899123d318c4f240d911ca6c2b68073f5a81bb98a97520e871bcce97b12f)", + "P->V[44832:44864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 20: Hash(0x45a317bc960fb52bf95537927e4f9a4480c7d11d226241d11a8d963bea99322)", + "P->V[44864:44896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24: Hash(0x27996e5b6ee2d57746079532a8b97b2aa89dd51aa21507cf499f8e4a2f8adbb)", + "P->V[44896:44928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31: Hash(0x59e5539b72111a54904b6b34162a5f841b26d33fcb6dc35b735580ee2f410b3)", + "P->V[44928:44960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1357, Column 0: Field Element(0x4f5d034d7a2b337116a327aff85c009d11dbf7159f1d7099b6979f781532932)", + "P->V[44960:44992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1357, Column 1: Field Element(0x6b4f2e5ec943a92276aaddf0b7b0610563cd0ee37762e60d6c9a74d4aecc026)", + "P->V[44992:45024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 1357, Column 2: Field Element(0x26017c58d264a393c020f6da1e110559a7c10db20b1ca88bd910be1c0956768)", + "P->V[45024:45056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 156174, Column 0: Field Element(0x6107c87b8fceea083ed54fcbf85effeecd02b9760145ceb9d8c30e179e1537e)", + "P->V[45056:45088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 156174, Column 1: Field Element(0x772e14f8eca2d2e9a602b52f43d459c6b2304dcf6eaf0ade139ac778e866647)", + "P->V[45088:45120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 156174, Column 2: Field Element(0x3c1158cd061277940cd151a812ad91ed5ffa90ad8ef4953092e85cb3cd7651d)", + "P->V[45120:45152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 327432, Column 0: Field Element(0x5947138d9ac248f6478515164370f66525d995df62896cc91b809a34dabc5aa)", + "P->V[45152:45184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 327432, Column 1: Field Element(0x2ddd63cfafadbea5762c2af096210dca5afd5ea3198bc596b7ad98ac038deaf)", + "P->V[45184:45216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 327432, Column 2: Field Element(0x13fce97ca19ee0ecf809048b2fcfc58648546d99316bf4e5177453b1fd70ef7)", + "P->V[45216:45248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2236203, Column 0: Field Element(0x369c7b8d8fa387f9651f440f6129f1f16d51393f454f1b41163adf2bb38654)", + "P->V[45248:45280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2236203, Column 1: Field Element(0x43a94f4d5fd34a469ca91030e8ecf5fc8ec866aff25812caa6c7e1d588b1de5)", + "P->V[45280:45312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 2236203, Column 2: Field Element(0x11ac8b0213b09c740f3acf7b22f82bb4701317d1d7a7fdeabcad01c13c50a36)", + "P->V[45312:45344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6093790, Column 0: Field Element(0x4a69ffcc5d64986d03fab2fb2317584d94623996ed3e88d1dca28faab714f94)", + "P->V[45344:45376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6093790, Column 1: Field Element(0x1d860fdbf333c2e4630dbe65e86c260cfdb80db5ca2f60d7c3b982b973dbe9d)", + "P->V[45376:45408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6093790, Column 2: Field Element(0x4581edbe700f945ee61e592f1b787abbe569babf3fe86073d1af13bec9f7913)", + "P->V[45408:45440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6322211, Column 0: Field Element(0x299d34fe258ef5cd3240c501dda0e67105b8a32966ca4d5c5b41d682caa7293)", + "P->V[45440:45472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6322211, Column 1: Field Element(0x263eb32e1bb3d172302556d1f235e35879a341eaac79d621c3e9fb569852248)", + "P->V[45472:45504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6322211, Column 2: Field Element(0x565312f71aee4c5953fce8fc0f75850258cea43766d7061d0f5799f6b7c9e24)", + "P->V[45504:45536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6626439, Column 0: Field Element(0x48001bd00e494dffc5fc59103366be7ff5a281bf988a1a698c0f3d5988fa24c)", + "P->V[45536:45568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6626439, Column 1: Field Element(0x788c2ebcce50cd2c959959add93f3c67f35e231eb29811f1850b721d7f0ad3e)", + "P->V[45568:45600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 6626439, Column 2: Field Element(0x1f0b3bf110b3a6c5255404aeb35f7a7270dbc9bd91c131f6fad4dc895dd547b)", + "P->V[45600:45632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7351021, Column 0: Field Element(0x6820fec6eac0cf2199bbacf71c0e800d21dc6f404b5767754546bcb6a49e252)", + "P->V[45632:45664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7351021, Column 1: Field Element(0x58d3d29097d82ce6329a690de8446f06f18acbe0b8b7c082382bad4d7e8b601)", + "P->V[45664:45696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 7351021, Column 2: Field Element(0x544a58c82790932df2eeccb8098e7286a1d9e3938ae536ca975cd5e1c8c26b5)", + "P->V[45696:45728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 9579215, Column 0: Field Element(0x233d82eb43ba876e806eee3a130eff5c6ae18391475ddfc6f408e98246c760a)", + "P->V[45728:45760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 9579215, Column 1: Field Element(0x755aab77dc4603e0a9e53a1a52fda31ea032aa67c4a3767e59a46508ef0558a)", + "P->V[45760:45792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 9579215, Column 2: Field Element(0x128d6068e3610961189ede124fa9a6dce529050a004d6e462b1f4b4b08f26c7)", + "P->V[45792:45824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 10212545, Column 0: Field Element(0x25098280168feec083dd0c0eaace7aa1a69a44253db15cf84ad6e4800d05896)", + "P->V[45824:45856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 10212545, Column 1: Field Element(0x5e85037ed52802c31aac708784e184da84c2514dc3e9293e5b368b59af3fd7e)", + "P->V[45856:45888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 10212545, Column 2: Field Element(0x665101df25e8f8df9528f1b422fadf052210bdb58090d6d928d9cf07250fe13)", + "P->V[45888:45920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11067383, Column 0: Field Element(0x41702d46073f80b16efa7580f64989f009df13730e61cda08996ff04b76c3a9)", + "P->V[45920:45952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11067383, Column 1: Field Element(0x3dd65408ac3645ebdc9e688a84c76bb8a839741e65dd173c385204098282e2a)", + "P->V[45952:45984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11067383, Column 2: Field Element(0x7f4ddbd40710fb812a18c3a3ec7118ef76840b6a429e7e00b9083fe9f6862f9)", + "P->V[45984:46016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11713076, Column 0: Field Element(0x7059b4e9bed90e8adf48329ce3b4b52e35a8ca2cfcb3534e76aebcd61597b51)", + "P->V[46016:46048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11713076, Column 1: Field Element(0x25f2fe7945baf3b829ed2f196d4b7de030da3b81a5c651f532fd0f42e40e8b)", + "P->V[46048:46080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 11713076, Column 2: Field Element(0x3aeff6a8831828f2f9352245365dd183ad3d273b3513e301e84fba57f88b5ca)", + "P->V[46080:46112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 12075111, Column 0: Field Element(0x48dfdbcdde469ada239d1c76dad2bea5bedacb034d9d7688f7a401750e755db)", + "P->V[46112:46144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 12075111, Column 1: Field Element(0x5ae9f2a7cb9b4132b2ac1f61f006b7d06b42c12a1c36cd231c7acd3ff82cdb4)", + "P->V[46144:46176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 12075111, Column 2: Field Element(0x7c08fa71dfe95b2163299f4d5b0ee3ab71a4b5d6e7e21d3bce1a2d22288be62)", + "P->V[46176:46208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13596798, Column 0: Field Element(0x40f1feb2c795c720d072d6e72b87fbe1892f6b2de3d670867277497c8f06d14)", + "P->V[46208:46240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13596798, Column 1: Field Element(0x1149c9fa71747e4c4f45e7caca6383a05c1da5b6dbae12bc57e93057022450f)", + "P->V[46240:46272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13596798, Column 2: Field Element(0x2edaecfe5101e960a0c60a0db0d789bf01ab84871f21ceb6219e8d7f86c4fa5)", + "P->V[46272:46304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13746199, Column 0: Field Element(0x651f873597cb4a8ccc67b083c9749ee39ecc1152d9b5b5a668bdf29d6f256ef)", + "P->V[46304:46336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13746199, Column 1: Field Element(0x7afabb111977e23fdfe22dbba8d7d2e41cc431a97de4b5bae4d1feabc324414)", + "P->V[46336:46368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13746199, Column 2: Field Element(0x4dcfe8d734b3e8196f2287e7c3d71c004f60ae5316395cc6032948e50f3660b)", + "P->V[46368:46400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13995388, Column 0: Field Element(0x31ad3411658ceaf8311a992163df3c6abca7ce85a974061d6321c8d3b41cfa3)", + "P->V[46400:46432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13995388, Column 1: Field Element(0x1387a339b991c82f2a5cd0f98a9b2ec26f4a1af2116e408f0035f90dbe69987)", + "P->V[46432:46464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 13995388, Column 2: Field Element(0x5d6350f6a8c69d8f730b1dfd6f5760d39f65565135ec18fa2c5418cd7216540)", + "P->V[46464:46496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14748098, Column 0: Field Element(0x36369bcacc392b2b35a621536a501219ffc8b0d58c43d1227fe7d8291e9529c)", + "P->V[46496:46528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14748098, Column 1: Field Element(0x2c818d0d32b686fb52cf854d940a61800b5847617c35f42086ea6ac4b243f3)", + "P->V[46528:46560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: Row 14748098, Column 2: Field Element(0x14b321b335ba30d577f791ac6127cf39b9cbeada5e545dc1eea2855ab22648c)", + "P->V[46560:46592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16778572: Hash(0x0000000000000000000000003befb0c9d9b11c902ee122212fbcaecfdaf939e4)", + "P->V[46592:46624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16933391: Hash(0x000000000000000000000000b2ee608ee0a15bf18b776a5c53f1dfaf520a4b8b)", + "P->V[46624:46656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17104649: Hash(0x00000000000000000000000062fde18afc241252bed4ddff3770853bc875fde5)", + "P->V[46656:46688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19013418: Hash(0x000000000000000000000000c7e28ca08be573d5121558312c72509092da6ad0)", + "P->V[46688:46720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22871007: Hash(0x000000000000000000000000f99244cbae6476d2848ba1f18b513d6bad749c61)", + "P->V[46720:46752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23099426: Hash(0x000000000000000000000000c144312c64b33d84891f271656c1a80a34e67439)", + "P->V[46752:46784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23403654: Hash(0x0000000000000000000000000264959aa318e44611012db33657d596ab362d8a)", + "P->V[46784:46816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24128236: Hash(0x000000000000000000000000c98124c9ea1b23a2545663006f1968f6b4d8caaa)", + "P->V[46816:46848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 26356430: Hash(0x0000000000000000000000007a1276d37ba3defe3977be3eb8b160ce5b4fc838)", + "P->V[46848:46880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 26989760: Hash(0x000000000000000000000000b0fa7620b760532fc37cc3f86bfe5b131565b88f)", + "P->V[46880:46912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27844598: Hash(0x000000000000000000000000da5a28cb593c90f59ca2de2baa4f1839d6e9184f)", + "P->V[46912:46944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28490293: Hash(0x000000000000000000000000194d79a96e8ca1d04fcfe1dbf30f221385fd4a44)", + "P->V[46944:46976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28852326: Hash(0x000000000000000000000000c924662987250ecc4eadeb0e201108afaedb6674)", + "P->V[46976:47008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30374015: Hash(0x000000000000000000000000d5b3f790327a493d488701168477f48e727e2a59)", + "P->V[47008:47040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30523414: Hash(0x000000000000000000000000ff27c60212c6d9681c0cac02f327175746933d40)", + "P->V[47040:47072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30772605: Hash(0x0000000000000000000000000ef82c21f4c7ec3bab29e9d43c777a2c04afe3b6)", + "P->V[47072:47104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31525315: Hash(0x00000000000000000000000001e806d378c56a1ba48601beec7e07b67e26a0fc)", + "P->V[47104:47136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8389287: Hash(0x000000000000000000000000c9c8f7673fe484f87f1f7130a0d3c85ef4a553c4)", + "P->V[47136:47168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8466694: Hash(0x000000000000000000000000e3acfe39f8411e93359044f8ab04e638e3b71382)", + "P->V[47168:47200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8552325: Hash(0x0000000000000000000000005bd83d32b1cee2764dab539c677e88a92fd9939a)", + "P->V[47200:47232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9506708: Hash(0x0000000000000000000000009c26d8c22a783bf15bf6d2f2efb0ac3e3855a752)", + "P->V[47232:47264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11435502: Hash(0x000000000000000000000000bf96297495bb7b1f585ae109489138e6c1173135)", + "P->V[47264:47296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11549712: Hash(0x000000000000000000000000ef110ff185637f4c700b2857617a2d12945f1e0b)", + "P->V[47296:47328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11701826: Hash(0x000000000000000000000000be9f9be1ef31e4f47183204d97e46bbf68e2bce9)", + "P->V[47328:47360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12064119: Hash(0x000000000000000000000000dcaa50eaba8aa9be6f52901b206c8b4926820baa)", + "P->V[47360:47392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13178214: Hash(0x00000000000000000000000024a9be357ddc419d41dfc6feb4527b4ca90afc01)", + "P->V[47392:47424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13494881: Hash(0x000000000000000000000000486b15478a363a31a91d813adb6b59ed95dcebbc)", + "P->V[47424:47456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13922298: Hash(0x000000000000000000000000394e30ba4ac16c6bf4e923aaef927ac883413735)", + "P->V[47456:47488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14245147: Hash(0x000000000000000000000000b267a4e04daf3fc4c22e112ce7cacf71514ea6a1)", + "P->V[47488:47520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14426162: Hash(0x0000000000000000000000006cdd877bab030c0dbeeb379c6bd7a834aa95c211)", + "P->V[47520:47552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15187006: Hash(0x000000000000000000000000bef06738505d8c57c3d57f43b185aff0695c87ae)", + "P->V[47552:47584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15261706: Hash(0x00000000000000000000000087d2de863c906e8ccd215a01d8204f89269f93fd)", + "P->V[47584:47616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15386303: Hash(0x00000000000000000000000049b6fd60650025b84c3591cbb2b0845a9f0cb46f)", + "P->V[47616:47648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15762656: Hash(0x0000000000000000000000007aa9e9a847cda36a96345389bef5932055037a44)", + "P->V[47648:47680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4194642: Hash(0x00000000000000000000000033c5d8bc43e3247ec8693730c145b760999e0f6a)", + "P->V[47680:47712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4233346: Hash(0x000000000000000000000000418d34f534378f5c2adf80c9071b24658cad56fc)", + "P->V[47712:47744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4276163: Hash(0x000000000000000000000000eb523d72b87518d1aead3012658e3aadaa639cd6)", + "P->V[47744:47776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4753355: Hash(0x0000000000000000000000004b36bb379cb3ef4d2276d9b46ea91ddf7c542fb5)", + "P->V[47776:47808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5717750: Hash(0x0000000000000000000000002e4a391283fecc6401bdd91c0588632d0c2d8ad7)", + "P->V[47808:47840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5774857: Hash(0x0000000000000000000000005b31e9e6d15807c68f5f0805000d85a951d1f042)", + "P->V[47840:47872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5850912: Hash(0x000000000000000000000000b14735e27d5229f7277fbc2c84022b0ac2b321a2)", + "P->V[47872:47904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6032058: Hash(0x0000000000000000000000001d4cc7d97d6636e13aa783ce7ed822666e207ce9)", + "P->V[47904:47936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6589106: Hash(0x0000000000000000000000007f03b515b9128387f8fffa268c99a5ddee28848f)", + "P->V[47936:47968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6747441: Hash(0x00000000000000000000000064f6f4efed28655bd95d2d664abdf3cc559e4eda)", + "P->V[47968:48000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6961148: Hash(0x0000000000000000000000005dec342890d059c78c2e4b15f2dfa0f36ceaa6b6)", + "P->V[48000:48032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7122572: Hash(0x00000000000000000000000034a187235e47d20bf6350d3a0a09aa9a3c270d4b)", + "P->V[48032:48064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7213080: Hash(0x0000000000000000000000006ba77a60f61cfbf2fc9100d2d7201c77dcf86d19)", + "P->V[48064:48096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7593502: Hash(0x00000000000000000000000089c4ae310fd4f536cdfbbea3835d27d3cf44ed82)", + "P->V[48096:48128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7630852: Hash(0x000000000000000000000000eaca0b5b8e90bd69ec42fef8bcddbe10d90b21d7)", + "P->V[48128:48160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7693150: Hash(0x00000000000000000000000095304fb94fd75c752e631cc1d3eaade75edc098d)", + "P->V[48160:48192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7881329: Hash(0x000000000000000000000000f24a5925e124e5397474f344ed4941b6d55c8dae)", + "P->V[48192:48224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2097320: Hash(0x0000000000000000000000008e32963d97273d04ef5dd2ecbc3bea8e37c91d89)", + "P->V[48224:48256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2116672: Hash(0x000000000000000000000000fa8d73c77743f94e7a0679cfd9c84d84ad5a77c4)", + "P->V[48256:48288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2138080: Hash(0x0000000000000000000000009a193b4ee0161dbb503cc61b5ce92155f4cdc208)", + "P->V[48288:48320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2376676: Hash(0x0000000000000000000000005f452ff491cb090c3b77ad0bb8098d62d7d55a7d)", + "P->V[48320:48352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2858874: Hash(0x00000000000000000000000059461b7643d89f02fd5f1ac70834e6e62da10ee1)", + "P->V[48352:48384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2887429: Hash(0x000000000000000000000000d218fdace7b2c373ffef0372c33e24627609e723)", + "P->V[48384:48416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2925457: Hash(0x000000000000000000000000071765d0b6f5b9c9f50d982668a6b359d22bbc4b)", + "P->V[48416:48448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3016028: Hash(0x0000000000000000000000004a4450a70f63ab7a53bd00e1542d281b0ec314dc)", + "P->V[48448:48480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3294552: Hash(0x0000000000000000000000007ffa22cb8d56656a1f08060f0e36bca52b55c6ba)", + "P->V[48480:48512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3373721: Hash(0x00000000000000000000000080a666fac88fe975bf9d82c7a66dc96f26e4c7ee)", + "P->V[48512:48544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3480575: Hash(0x00000000000000000000000048e6edde08dee919c40bd016fe13ee181fa63d1c)", + "P->V[48544:48576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3561287: Hash(0x0000000000000000000000001fe9e9b0ba82b18ace493d4cca7d5d4f6be5f87d)", + "P->V[48576:48608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3606541: Hash(0x000000000000000000000000c554acb6728f8271a3e002b301424422e733f981)", + "P->V[48608:48640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3796750: Hash(0x0000000000000000000000002351dee945da5eaeb1d50e700fef89e59dd7a9dc)", + "P->V[48640:48672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3815427: Hash(0x000000000000000000000000fca883b6b6b576da0e48af9b8759fcf0fc33ad8d)", + "P->V[48672:48704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3846574: Hash(0x00000000000000000000000014034d3e1bba6cfe98ecd993962304920d2cb711)", + "P->V[48704:48736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3940665: Hash(0x000000000000000000000000d3bc065add0f26901f2a52380f797716d781aa39)", + "P->V[48736:48768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1048661: Hash(0x000000000000000000000000a6242930198665453904cd9ca3b022db9d2d9e8f)", + "P->V[48768:48800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1058337: Hash(0x0000000000000000000000003796ccc7d30a82bbc13c6be212296cf222ce2cd3)", + "P->V[48800:48832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1069041: Hash(0x0000000000000000000000001fe4056780a722a40dce23db12c49abafb83467a)", + "P->V[48832:48864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1188339: Hash(0x000000000000000000000000893a4fe83bb814f6a65201dd70018f6be3fdc221)", + "P->V[48864:48896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1429436: Hash(0x0000000000000000000000000eeda626e2bdd9d3826f2386fd9cd9e7d3eb85d3)", + "P->V[48896:48928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1443715: Hash(0x0000000000000000000000005344e80c403b45d57d6136f7730ed598c45e0678)", + "P->V[48928:48960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1462729: Hash(0x0000000000000000000000002da2d9864d1c9171c0f1eccd152f0758e73389b2)", + "P->V[48960:48992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1508015: Hash(0x000000000000000000000000938756fb1716dd4821ef02966c458819b5de02a5)", + "P->V[48992:49024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1647277: Hash(0x000000000000000000000000cfa9989e795bb335bdc37281f4b6f957af67439f)", + "P->V[49024:49056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1686861: Hash(0x000000000000000000000000449474ba6959cadb3086c16ed2ddc1a2d7835583)", + "P->V[49056:49088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1740286: Hash(0x000000000000000000000000502e5df2b5239cf3873de0fdfe2b268d55aac68f)", + "P->V[49088:49120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1780642: Hash(0x00000000000000000000000069b1599e4ae268d35bc64b0e1cb23c21be37a40f)", + "P->V[49120:49152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1803271: Hash(0x0000000000000000000000003c811b4196dbf472138c332cec2184607ff0892f)", + "P->V[49152:49184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1898374: Hash(0x000000000000000000000000261bdcb6da12c32c1304e85d25c861663986703f)", + "P->V[49184:49216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1907712: Hash(0x000000000000000000000000e446bc410079043420736270b7037c1ff26da1e8)", + "P->V[49216:49248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1923286: Hash(0x000000000000000000000000c77a4c46278fdbd2f3c9c3602ce38cd3c011c906)", + "P->V[49248:49280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1970333: Hash(0x000000000000000000000000668f1170c97f3ab5cefccd74ac6756950a1a025f)", + "P->V[49280:49312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 524331: Hash(0x0000000000000000000000002693f81270ac09a55acb0fdbe47522aa0ec76321)", + "P->V[49312:49344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 529169: Hash(0x0000000000000000000000001ac1d68c160db9349f845e0a50970c1f42df7957)", + "P->V[49344:49376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 534521: Hash(0x000000000000000000000000ffa409f063b55f4f96f8cc53ada72633bf32a172)", + "P->V[49376:49408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 594168: Hash(0x0000000000000000000000002e54c1f611cede4248c6998f2262059888d23ecf)", + "P->V[49408:49440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 714719: Hash(0x000000000000000000000000ba4db97cb1da192502d0b4bf282c9b85a993c4c7)", + "P->V[49440:49472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 721856: Hash(0x000000000000000000000000c4d6e2e7648e264f86bd37bcdffdd21d97ae7e0f)", + "P->V[49472:49504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 731365: Hash(0x000000000000000000000000198a21d60909aa41c623ec953791fc00946db582)", + "P->V[49504:49536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 754006: Hash(0x00000000000000000000000081b37eb91f3c3d60a223f7d4ee7c7fb7ff9ebbb1)", + "P->V[49536:49568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 823639: Hash(0x000000000000000000000000e8c5baaec02eea0879d4caf597576898dc6ce043)", + "P->V[49568:49600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 843431: Hash(0x000000000000000000000000254807fe50081544a5aca9d39f2ab7607165693b)", + "P->V[49600:49632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 870142: Hash(0x000000000000000000000000079abc1df88aea57438118fff523eb7828199499)", + "P->V[49632:49664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 890320: Hash(0x0000000000000000000000004feb5cdb307d6e5ce36229e72015a0f03cab002e)", + "P->V[49664:49696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 901634: Hash(0x000000000000000000000000f97f6ca824860622679489ce9a44f908d65daf98)", + "P->V[49696:49728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 949186: Hash(0x000000000000000000000000d37f497404701cc748cb360787c6fba25f4e8506)", + "P->V[49728:49760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 953857: Hash(0x0000000000000000000000007df724224e550035534439a10dc011bee38dfeef)", + "P->V[49760:49792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 961642: Hash(0x0000000000000000000000000d7503fa3302e0ded889be8a7b1b366d2c5a1b97)", + "P->V[49792:49824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 985167: Hash(0x000000000000000000000000d3aa4472a9684d1286605d7ddd9bf7ef22014da2)", + "P->V[49824:49856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 262164: Hash(0x0000000000000000000000009a4415c78d9eb4d39b781b78708e688c36722121)", + "P->V[49856:49888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 264585: Hash(0x0000000000000000000000009ca911528aa7a504368d8cd8590db6db598d06f5)", + "P->V[49888:49920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 267261: Hash(0x000000000000000000000000953a34a1e1b3d69fe66cf83b59759290c809af9e)", + "P->V[49920:49952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 297085: Hash(0x000000000000000000000000461ad9273b884ce5a871530dc8729a99a7b9adbb)", + "P->V[49952:49984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 357358: Hash(0x0000000000000000000000004d2771e2971c975ac59fe46120df95d9dd444545)", + "P->V[49984:50016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 360929: Hash(0x000000000000000000000000ae0378f96844d4e82c8ca77a15e9f923362f9e87)", + "P->V[50016:50048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 365683: Hash(0x000000000000000000000000490d49d65218b3ad32a624f246f872a02cc071ed)", + "P->V[50048:50080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 377002: Hash(0x000000000000000000000000bb0b6764cc8aac85c27f7dec2c9215b001aaf9fc)", + "P->V[50080:50112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 411818: Hash(0x000000000000000000000000ad99a09dd889b7494656ba268cf0cc02a4f0371a)", + "P->V[50112:50144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 421714: Hash(0x00000000000000000000000071a2d6db7b3b6c8809af32671403d2c4687c875d)", + "P->V[50144:50176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 435070: Hash(0x00000000000000000000000056a467ed10f7a2b756658eb137934f157f417f37)", + "P->V[50176:50208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 445161: Hash(0x00000000000000000000000051e63fbfcf88fcb15f82ed41bba567bd27326a02)", + "P->V[50208:50240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 450816: Hash(0x000000000000000000000000691f6dd46b000cd51f327e83e3f7aa1f26cfd334)", + "P->V[50240:50272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 474592: Hash(0x000000000000000000000000f56dcb65215e2ddb2440ae887b2e985f9924fd6f)", + "P->V[50272:50304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 476929: Hash(0x000000000000000000000000330017730f4d69823252af4bac137c50a0faf8ae)", + "P->V[50304:50336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 480820: Hash(0x0000000000000000000000005283bd3f01ded79be02576196d02a8e829020fe3)", + "P->V[50336:50368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 492582: Hash(0x0000000000000000000000000be3820699933600445f32fd613b5cd4b2ec32ee)", + "P->V[50368:50400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 131083: Hash(0x000000000000000000000000492b8feb21e013c081eafd6ef667fc73c12dac4a)", + "P->V[50400:50432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 132293: Hash(0x000000000000000000000000abfe1c7c56ed213139afa16aa96fdf06ddd19b31)", + "P->V[50432:50464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 133631: Hash(0x000000000000000000000000192391f907acab697b73f046d1b7dd9fc5429f81)", + "P->V[50464:50496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 148543: Hash(0x000000000000000000000000b741a21b5d409dfed44c2fc1d2e7d7be72b1d1f1)", + "P->V[50496:50528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 178678: Hash(0x00000000000000000000000052df336b3cbe01151347270690f14cd3d6739883)", + "P->V[50528:50560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 180465: Hash(0x000000000000000000000000b95123ddd7e2cf4880d5fbec119cad6a7b065612)", + "P->V[50560:50592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 182840: Hash(0x000000000000000000000000bb21d733b9d89cbab2f8440e1787aa564fa994e5)", + "P->V[50592:50624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 188500: Hash(0x00000000000000000000000061d281a0f59ecfe0add88cc22e4c51f22a8765dd)", + "P->V[50624:50656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 205908: Hash(0x000000000000000000000000318ca96a08a51dbb3474cb9d9b4022b57af98ad9)", + "P->V[50656:50688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 210856: Hash(0x000000000000000000000000bcf7b5b26d97660a8f9183e0afe92a9ad4f52617)", + "P->V[50688:50720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 217534: Hash(0x0000000000000000000000004dfeeb9a7b52e711fcf8fdc6d201b360deda69f3)", + "P->V[50720:50752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 222581: Hash(0x0000000000000000000000005345980837546ebbb28f55a4fca6ee60a7dc5b0d)", + "P->V[50752:50784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 225409: Hash(0x00000000000000000000000003257e99c72c4f1dadf68a18f4496d3d76d6b3de)", + "P->V[50784:50816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 237297: Hash(0x0000000000000000000000009460ed43729dd3b6014ca612aafa2431513406a9)", + "P->V[50816:50848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 238465: Hash(0x0000000000000000000000002039cf06cf6651a7b57db226a6db74debfbc3c81)", + "P->V[50848:50880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 240411: Hash(0x000000000000000000000000750e8c2acd4efbfd0d0204549a5cd0cb7ee88bbb)", + "P->V[50880:50912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 246290: Hash(0x0000000000000000000000001bc8398c5daa705cdca1b60679c6997a77b7da54)", + "P->V[50912:50944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 65540: Hash(0x000000000000000000000000552c3e258166012d07f3d2452fcffc79bff018ac)", + "P->V[50944:50976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 66147: Hash(0x000000000000000000000000ba1de4ba2be958998c3fa6c826bf098202575e80)", + "P->V[50976:51008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 66814: Hash(0x000000000000000000000000e3f484884e5efd779fbb9ebdaa3f9b02917d7c20)", + "P->V[51008:51040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 74270: Hash(0x000000000000000000000000937afd76c95069487b70f9523f0cc0d8ea9620f7)", + "P->V[51040:51072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 89338: Hash(0x000000000000000000000000787a5a4d1d4bd448249353f83ede94844fe262c4)", + "P->V[51072:51104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 90233: Hash(0x0000000000000000000000001337a07835018e8ba1349a08a3d3db5727028037)", + "P->V[51104:51136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 91421: Hash(0x000000000000000000000000f1bdda093e50c8bd200e42d5b01ced18065ad92e)", + "P->V[51136:51168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 94251: Hash(0x0000000000000000000000008095d1bd35039c513bc8a876578abb51c52ee18c)", + "P->V[51168:51200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 102955: Hash(0x0000000000000000000000009651ee6da8977b198abdbdcddbd456b0bfa86a60)", + "P->V[51200:51232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 105429: Hash(0x000000000000000000000000a0acf8acc23ade30db34241c3f99e3677b1cc7fc)", + "P->V[51232:51264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 108766: Hash(0x0000000000000000000000007a7f5eee5407c17f6674bf3db66dc7b7e78f0b7c)", + "P->V[51264:51296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 111291: Hash(0x0000000000000000000000004dadfb0686ec8ed373bf5dbffdeef29d2b3d6a75)", + "P->V[51296:51328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 112705: Hash(0x000000000000000000000000e760420a9aa8c01b8f261b20e02c312773c64297)", + "P->V[51328:51360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 118649: Hash(0x0000000000000000000000003fa30636d407cf74dd0249c3346af3456f067ed3)", + "P->V[51360:51392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 119233: Hash(0x000000000000000000000000d35c9f5cb8cf6d64fe5e8a513dd8343ca91e98fc)", + "P->V[51392:51424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 120204: Hash(0x00000000000000000000000029ab3b9eb33efb62109514e9498bf0ce8f3bb05a)", + "P->V[51424:51456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 123144: Hash(0x00000000000000000000000062727a6d7e2f744bf23058262dc2eb93e27016e5)", + "P->V[51456:51488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 32771: Hash(0x000000000000000000000000b187155b87365edcd0abbc930ad32e131cb265bc)", + "P->V[51488:51520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 33072: Hash(0x00000000000000000000000091f829b95a612fd71190023b2d805b5304f3a1fd)", + "P->V[51520:51552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 33406: Hash(0x000000000000000000000000f5473b8e56672b4a190664d0aab4a1645f7c45f2)", + "P->V[51552:51584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 37134: Hash(0x0000000000000000000000007ad875dd560289db73f57b3c4156ac05cc3594d4)", + "P->V[51584:51616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 44668: Hash(0x000000000000000000000000334247b9efe465ebe6d5ea05f03dd3ecd5b401b2)", + "P->V[51616:51648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 45117: Hash(0x00000000000000000000000029d07e2461c9a6b145d38f69cfc1f8da996ba180)", + "P->V[51648:51680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 45711: Hash(0x000000000000000000000000e93958397ba465d1d45952e0b62edfc825068ba7)", + "P->V[51680:51712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47124: Hash(0x00000000000000000000000089ce46c915a9993d0321677d17150503e308b019)", + "P->V[51712:51744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 51476: Hash(0x0000000000000000000000000b63edfca37ef4effdda9ca181e274d9f0c4c268)", + "P->V[51744:51776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 52715: Hash(0x000000000000000000000000a3fff7dc4e925b74d56b1ea2ad051a903fcb889c)", + "P->V[51776:51808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 54382: Hash(0x00000000000000000000000073678fcd9cf29fb2b15dbef32b52b7d86cf487a9)", + "P->V[51808:51840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 55644: Hash(0x0000000000000000000000007fd107bf48c0d04725afe24f3a51386f007913e0)", + "P->V[51840:51872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 56353: Hash(0x0000000000000000000000003926d3bc941839f1a56517a78a011b32495c367b)", + "P->V[51872:51904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 59325: Hash(0x0000000000000000000000008417a31648504607a67f6b928d9fc4a5a48dc685)", + "P->V[51904:51936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 59617: Hash(0x00000000000000000000000008e38713d7c9c8d05d9d285bed647bb2d902d0c8)", + "P->V[51936:51968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 60103: Hash(0x00000000000000000000000084da70bdaddb3c2ab84639183d8165248626e373)", + "P->V[51968:52000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 61573: Hash(0x000000000000000000000000df05adc850e767278f52553d11c579896a83676e)", + "P->V[52000:52032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16384: Hash(0x0000000000000000000000008086d4091fa84053d2914a05320e0182bd7f953b)", + "P->V[52032:52064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16537: Hash(0x0000000000000000000000002123cd45ce9cf64a1ffad7f929c72c635b631fec)", + "P->V[52064:52096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16702: Hash(0x000000000000000000000000391e0cdb48b4d258314d99a39007d2fef876b545)", + "P->V[52096:52128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 18566: Hash(0x000000000000000000000000e29ea1421fd9305cba956d72cd2d10f1add3e409)", + "P->V[52128:52160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22335: Hash(0x00000000000000000000000022c776bcd497b29da16e1cf76dcee5fb612ae926)", + "P->V[52160:52192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22559: Hash(0x00000000000000000000000051549dceb63e042bffdc1c4b57ca45e6c81d5479)", + "P->V[52192:52224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22854: Hash(0x000000000000000000000000a278a890e60b4ee5dee9e8b98504faf8e804d3ae)", + "P->V[52224:52256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23563: Hash(0x0000000000000000000000007a325a7612fb51d6b86ddcb0c33ec2de57553e8d)", + "P->V[52256:52288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 25739: Hash(0x00000000000000000000000069f49f4deaa41650e4acfa3feeea46f8aa724265)", + "P->V[52288:52320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 26356: Hash(0x000000000000000000000000e057405f3902122a34c0b598ca47b69d5e6913e8)", + "P->V[52320:52352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27190: Hash(0x000000000000000000000000d03c8fb71bca5b28ec6d4c3e22de31cd89e96623)", + "P->V[52352:52384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27823: Hash(0x000000000000000000000000651a63fc0ac45359dc3979711039d97b4fea2b1a)", + "P->V[52384:52416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28177: Hash(0x00000000000000000000000059e6847ef3e698c35dfe17dfb9df0b04bb6aa63b)", + "P->V[52416:52448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 29663: Hash(0x00000000000000000000000083dd8188acba9be2bf2539ceda0126e495d022e6)", + "P->V[52448:52480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 29809: Hash(0x000000000000000000000000e8973a2a13e53c84dfdf89b4bdb4c0253722e3f2)", + "P->V[52480:52512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30050: Hash(0x000000000000000000000000bcbb93e255bc20b26e7a6b2de6eb33f2c2de9520)", + "P->V[52512:52544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30787: Hash(0x000000000000000000000000148af848b695bf011e0c9442edb9c190094d5f34)", + "P->V[52544:52576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8193: Hash(0x000000000000000000000000cd516f732e4563e65b061e417f7ee28659d155f4)", + "P->V[52576:52608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8269: Hash(0x0000000000000000000000000076cb3377ce5f547276f258f93bb88e6a3fa7b0)", + "P->V[52608:52640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 8350: Hash(0x000000000000000000000000dad5576dc007006d8e71c8a124633366fa1bf182)", + "P->V[52640:52672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 9282: Hash(0x00000000000000000000000067cf5a33d2e26d83f38e2a223c8b59971ff96190)", + "P->V[52672:52704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11166: Hash(0x000000000000000000000000f08e1dc60257832023fc83fc92a634d180de2656)", + "P->V[52704:52736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11278: Hash(0x000000000000000000000000140a2d733cc6fd14cf43ac47732a9e8cef35bffa)", + "P->V[52736:52768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11426: Hash(0x0000000000000000000000006a6776f9e4ea14fc72760f66ceb1d31c4c38f6b2)", + "P->V[52768:52800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 11780: Hash(0x000000000000000000000000e5008b30dc052f4b2d6d9567d73c8a1afb6c5c19)", + "P->V[52800:52832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 12868: Hash(0x0000000000000000000000000e075e80a4a6c824e0ba341bd649a08700692078)", + "P->V[52832:52864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13179: Hash(0x0000000000000000000000001700558bc1c71a4ba96a5a67f44d8faa620c6f19)", + "P->V[52864:52896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13594: Hash(0x0000000000000000000000004cc7340fad3ba313130b82e6133dd9946456c8e9)", + "P->V[52896:52928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 13910: Hash(0x0000000000000000000000008a510b4e11034eb87895c3b20246660003738c21)", + "P->V[52928:52960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14089: Hash(0x000000000000000000000000c8fcf7a0412d6e4c17bee47096b7ca565b276c4a)", + "P->V[52960:52992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14830: Hash(0x00000000000000000000000014cad1f42dcc6257d0dfd6f0d6e9f57a5b996c05)", + "P->V[52992:53024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 14905: Hash(0x0000000000000000000000009ee20f4ca1c401f4213cb7f6fb4d90bdda78e6a0)", + "P->V[53024:53056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15024: Hash(0x000000000000000000000000a69a85cc1a212caeaf312d542ce98d9872f64854)", + "P->V[53056:53088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 15392: Hash(0x000000000000000000000000b7deae216917a15e88cf09eecea501286c73d44e)", + "P->V[53088:53120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4097: Hash(0x0000000000000000000000000e50947d2b46ce3cb36e2d9333d3c0d4b151f0c0)", + "P->V[53120:53152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4135: Hash(0x0000000000000000000000002bc1b26d5f9ac99219b39de5be9d1ae57d6ab952)", + "P->V[53152:53184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4174: Hash(0x000000000000000000000000df79c8724ad91aeaf2ff4fb3d58cff904ef904fd)", + "P->V[53184:53216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 4640: Hash(0x0000000000000000000000006e89b9aca00f09e0bdcc12a4c85819971c31c970)", + "P->V[53216:53248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5582: Hash(0x00000000000000000000000062922cab154260165f2c863d76c4537c6e6a6fef)", + "P->V[53248:53280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5638: Hash(0x0000000000000000000000003d9ed369e7dcc364314ec472b732d33a4d5b7dc4)", + "P->V[53280:53312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5712: Hash(0x00000000000000000000000009c66480968a968df2161a61ec285dee4724a2aa)", + "P->V[53312:53344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 5891: Hash(0x0000000000000000000000001584ab664ad8f22030a9c9231cfa0e9cdd56fe30)", + "P->V[53344:53376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6435: Hash(0x000000000000000000000000011d679ec512149f6e454d466366e7d129698470)", + "P->V[53376:53408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6588: Hash(0x00000000000000000000000000581de07be5b8b82b5695324effcb727a676de4)", + "P->V[53408:53440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6796: Hash(0x0000000000000000000000002de4b875d4b7222a2c2e787abfac5392d444df48)", + "P->V[53440:53472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 6954: Hash(0x0000000000000000000000007e5681edf3aaea77818da0f9498fcd46c97458a5)", + "P->V[53472:53504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7045: Hash(0x0000000000000000000000002ed9d72736a262043c00ec4b0eabbf44f7c83f66)", + "P->V[53504:53536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7414: Hash(0x0000000000000000000000002c89b3da533ca5b727e4e523a547041a26368927)", + "P->V[53536:53568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7453: Hash(0x00000000000000000000000049b4efb67e35912e6f743d5d4c3241e481badbe8)", + "P->V[53568:53600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7513: Hash(0x00000000000000000000000026f5594839cc17ce69333904e4e3b42d4004b4d2)", + "P->V[53600:53632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 7697: Hash(0x000000000000000000000000d24ecfc6cb60dbc65eabf422cd4748ba540aef65)", + "P->V[53632:53664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2049: Hash(0x0000000000000000000000002bfb5989ef6817bc456eea3aa2e6a4834457f6fb)", + "P->V[53664:53696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2066: Hash(0x000000000000000000000000685e925df1428b88d4cd1d8f4a2d2540a57a18d1)", + "P->V[53696:53728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2086: Hash(0x0000000000000000000000008c28e19b605fe9388e33c4d995a90e46b6a0b3a9)", + "P->V[53728:53760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2321: Hash(0x00000000000000000000000051c923f4f3bd5a11f079693f37f3fcfef5be3965)", + "P->V[53760:53792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2790: Hash(0x0000000000000000000000009d995e0cab9598e0972998f203cb7a343d755bd7)", + "P->V[53792:53824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2818: Hash(0x000000000000000000000000637028dbaa8766399a8bcbad1d27747d7f553d30)", + "P->V[53824:53856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2857: Hash(0x0000000000000000000000004fcc25ebeff1c1ced2042aad850d09e32ff161be)", + "P->V[53856:53888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 2944: Hash(0x0000000000000000000000008b26eaf415163d382773f840edaf337a4c3fc2cf)", + "P->V[53888:53920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3216: Hash(0x000000000000000000000000bed2d7a416bd93134aa02c21da2d5c632519b768)", + "P->V[53920:53952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3295: Hash(0x0000000000000000000000003ddabdcdd56d74c1b3aa98a106fd74f888f738dc)", + "P->V[53952:53984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3399: Hash(0x000000000000000000000000a360bb978f924f19b35859a0789a9c0172197361)", + "P->V[53984:54016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3476: Hash(0x00000000000000000000000042dc9f6bc10cdc59b721e6bd6b4960f6c0077fd7)", + "P->V[54016:54048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3523: Hash(0x000000000000000000000000fdbb3dd8f2918a26c58d89fa74f2384401c49416)", + "P->V[54048:54080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3706: Hash(0x000000000000000000000000bac7fdffbb42ed55dbf3e794fdc76c2262eada03)", + "P->V[54080:54112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3727: Hash(0x0000000000000000000000001b77811d7f74e99c31c2c6ebe6a2c49d247dcd9b)", + "P->V[54112:54144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3757: Hash(0x0000000000000000000000006b373797371af60fce6cefccdca2bba49cfa1cd5)", + "P->V[54144:54176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 3849: Hash(0x000000000000000000000000c6d8018de4557984d286ea401c67fbd5ab56ffde)", + "P->V[54176:54208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1025: Hash(0x0000000000000000000000007532d4743a0c7c9ef349a71b330000fafe173264)", + "P->V[54208:54240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1032: Hash(0x0000000000000000000000001d50a75307ddbb368adab1c8760ddb3b855ed739)", + "P->V[54240:54272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1042: Hash(0x000000000000000000000000eadfbacbb2f0af904a2eb2e7417d8c4138d861ad)", + "P->V[54272:54304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1161: Hash(0x0000000000000000000000005136a23af32bafb9205b1f83c6a9b03ff1ce30ae)", + "P->V[54304:54336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1394: Hash(0x0000000000000000000000004912c04b194aa6b248ea2833a02cc82cd7804413)", + "P->V[54336:54368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1408: Hash(0x0000000000000000000000002e45d434f3685d62360bf6674bb10f161412a829)", + "P->V[54368:54400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1429: Hash(0x000000000000000000000000374933bc52e03585a6cf261d47bf6bc4dcd4773e)", + "P->V[54400:54432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1473: Hash(0x0000000000000000000000009dbf4668b76f0d602e0a91271db42f0c9c80418b)", + "P->V[54432:54464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1609: Hash(0x0000000000000000000000003034b9b14ff0ce8d5925e823dd444633aff66a61)", + "P->V[54464:54496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1646: Hash(0x0000000000000000000000006da1be3968839bd81f295b23282fae573af952e8)", + "P->V[54496:54528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1698: Hash(0x0000000000000000000000007a911d831f4423fc346b0ed37b40f92b10a68596)", + "P->V[54528:54560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1739: Hash(0x0000000000000000000000007cbf937fc3d18af3907e0124eb2c841b63dd5382)", + "P->V[54560:54592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1760: Hash(0x0000000000000000000000007384811b9742fa90b48dd41fb89b9defb44d3f44)", + "P->V[54592:54624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1852: Hash(0x000000000000000000000000023eb2250b05ac360185f6252c256481f46ce781)", + "P->V[54624:54656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1862: Hash(0x000000000000000000000000f21ec69b89465aa5adc0b8ff75911c42bc5d90f3)", + "P->V[54656:54688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1879: Hash(0x0000000000000000000000002c8c1f9ccbd00c1f46a9dc8dc7fcd5b88aa18ae5)", + "P->V[54688:54720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 1925: Hash(0x000000000000000000000000d467d9edf755232a3569b83397cc942c755a3b60)", + "P->V[54720:54752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 513: Hash(0x265443f6e7839a667232b5508105eea81df9a1de)", + "P->V[54752:54784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 517: Hash(0x1079fb6844f1a079ca886625a856cd18cb18be99)", + "P->V[54784:54816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 520: Hash(0xf66f6d4060a8c5081938c15a5337b5d37a61bb6b)", + "P->V[54816:54848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 581: Hash(0x724407a6e198684f3076dcae7c9dec9ac0f13532)", + "P->V[54848:54880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 696: Hash(0xb649034e5efe408786e2fad481dffeb1eaaa73f8)", + "P->V[54880:54912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 705: Hash(0x945e3efb39035682839475930cbfec69c529827c)", + "P->V[54912:54944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 715: Hash(0xa31621334174e61633084b6b8a6791bf6d81ac0f)", + "P->V[54944:54976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 737: Hash(0x816828f2c37c6ba4e3c310ed9a988c95ff2754ad)", + "P->V[54976:55008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 805: Hash(0x1b8bf14722e0a1e1f5ba5ded2b9694aa77f83921)", + "P->V[55008:55040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 822: Hash(0xa6b3cf3cdcbccaf9834351709e56ee6a56949035)", + "P->V[55040:55072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 848: Hash(0x7d32122b57c244b2ab2c775df201d30e33172863)", + "P->V[55072:55104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 868: Hash(0x52c17acd08a513cf6be44652538194d87f8d1cb7)", + "P->V[55104:55136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 881: Hash(0x394d7f483893abf3b38ab3b1b004e8a0c2c29f46)", + "P->V[55136:55168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 927: Hash(0x5e3e372657e5da3bd0f9c7edbee201b305eb147d)", + "P->V[55168:55200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 930: Hash(0x9723da1e5b0d2e48ca2c6ad0392ad932c7c6eaf)", + "P->V[55200:55232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 938: Hash(0x724289332f1655d388a7db081d70ab21fe25085d)", + "P->V[55232:55264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 963: Hash(0xaf347423166b13bbe13d5128e00ebb242d563e7e)", + "P->V[55264:55296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 257: Hash(0x123c4d5099059830b68bdcb303ccb81102a6df0e750327d2bc860efb625761f)", + "P->V[55296:55328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 259: Hash(0x55422d5da57d8996533804487823c2940f264b95706283ab8cda0bd1356cabe)", + "P->V[55328:55360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 261: Hash(0x8d680535bb6fca931beb5bf1d2a7c2ace3ecdc4a57e9a26560d69962ee21f9)", + "P->V[55360:55392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 291: Hash(0x472e8bf68a69e83e4d9d780412b24531dd5e9309ae48c909d385511f69c319b)", + "P->V[55392:55424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 349: Hash(0x18c3429b2d2e38ad765b391a9a25e1324ae4f64fcb27df865e3131263690f4e)", + "P->V[55424:55456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 353: Hash(0x49cd585a34b9e7c155976c5c4261a7c8dbaf73338f171095dc90da44762c305)", + "P->V[55456:55488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 356: Hash(0x2c92dd0d2142e8d71832c73b288ba65dfa5544ad1a4eee2e1e8d18297a671ed)", + "P->V[55488:55520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 369: Hash(0x697121612382b464ffa894e3f4213e61f3d2105bf4816a5e389ccfd48425ba)", + "P->V[55520:55552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 403: Hash(0x7b6697f1f4552bab78064de58f62270393c76c8b3dec47d9ba72cf3ee7df0ad)", + "P->V[55552:55584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 410: Hash(0x47a78062007e2c54534b196f959753f1f9d1198f68b16a6917914601beb64e2)", + "P->V[55584:55616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 425: Hash(0x6992cab432a8df128b28a1486a57d48e33d36df76e8e853eb7774d136787caa)", + "P->V[55616:55648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 435: Hash(0x29c95ad71f7c8392d26b9805f394d195f028bbd5f71985749eab2436a167a2)", + "P->V[55648:55680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 441: Hash(0x7b10ea60923a082600b45a37188bc25c150323116dc4488adf6f10e180867f9)", + "P->V[55680:55712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 462: Hash(0x64410f01061b7276ceb39634a357ad86800215d41af751d042a89681e5157ad)", + "P->V[55712:55744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 464: Hash(0x50825e3b0f06212e3f07f9ec15dc738e8a8a48c877732ec01cb63b10288fc0e)", + "P->V[55744:55776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 468: Hash(0x36343f466eb89c4ce74c261aecca1a2afdb5dce5b7f8ac97f1cc6ac9dc3e97)", + "P->V[55776:55808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 480: Hash(0x4204da9cb9556a256954c3d6a58aa21abb91c75b8c50b3fd55fc12f90f6cc8a)", + "P->V[55808:55840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 131: Hash(0x1b45d4d98768236caff98cf5572d9e83bd9a747e17c1d15521e76971ac09f2d)", + "P->V[55840:55872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 144: Hash(0x3f6a7239421e85ce403f684b19e47de94336049a00c147f0be11dc964b8721)", + "P->V[55872:55904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 175: Hash(0x31e1189922721662c01014f2cc3b799322f43623301606aa9108d9f96e772a3)", + "P->V[55904:55936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 177: Hash(0x1adb9b6ff72e455c3bdeb39226f26537493c448814087c8da04b802a0f1107a)", + "P->V[55936:55968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 179: Hash(0xfbaab6c9dd8142f20d502827ba330522e95a5eb867e4baee067b5d681a2253)", + "P->V[55968:56000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 185: Hash(0x6b57b6b6fb535f9c80a063c11d266f1900b2ea5e4527231578c5cf67d0b131c)", + "P->V[56000:56032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 200: Hash(0x7e15a09cea81bb0a9de72de75e3a6096aee630e504590ecc1defd06c6f6c3ce)", + "P->V[56032:56064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 204: Hash(0x65ed0010d2a1a89849dec86a0257a488b794443b570fb5a94117db1bfc1b6a0)", + "P->V[56064:56096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 213: Hash(0x52dcb9af3b994ad10b5cd5393f8222334c0da8801a301c806be139e5c3c49bd)", + "P->V[56096:56128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 216: Hash(0x2d1808e48d45818f6c75fa4047b184ed905ba8f780903c8da454ef8bf88ced0)", + "P->V[56128:56160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 221: Hash(0x3dc5764318919280b6558ef793ad35a7cde8b02211140b42bca95a21e3a645f)", + "P->V[56160:56192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 230: Hash(0x24328b4e63018991d88525f1ab3be08c12de084e2b22d3550c042c8ab73c765)", + "P->V[56192:56224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 233: Hash(0x7f776129e5bf5c915df7f163fa0eaf3d565cacb46cb3475c0fda5ad9f17217b)", + "P->V[56224:56256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 235: Hash(0x1b53867f5c6c2d55e0799c281ac4696ebb221c7dbb0412e5d70c973267ea130)", + "P->V[56256:56288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 241: Hash(0x4664a982d6fdce2701ea2312acd516faf7c865b99a8c954c39c1a79810b66a)", + "P->V[56288:56320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 73: Hash(0x70e648fd7e2372efeece253432741eabf05121164e7df909d2ef6b364ef42cb)", + "P->V[56320:56352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 86: Hash(0x2ccb4d40ef50380527bca54696db7cb3e55e7339858c3323ab724a1e33df8fd)", + "P->V[56352:56384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 93: Hash(0x17b591b08fdafff5da02e889826df09c28ce833bf5d0675db36de917cf11719)", + "P->V[56384:56416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 101: Hash(0x3cb864b32dc68559ff399a1ba282f260ca25f8f6c88875e30b896e01fca6ebd)", + "P->V[56416:56448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 103: Hash(0x7c012666cef12f4a2ddfd9f973514256a44d7a6027edf1bfd9f906aa5f5cc1)", + "P->V[56448:56480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 107: Hash(0x51561a5350565353424f015ab59aff8aaa639a202d793d72ae7c4c782f14b21)", + "P->V[56480:56512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 109: Hash(0x316b934e3d7f11f1fcddbac6c5f761ad7a78b518db8a851491f5932eac4e58)", + "P->V[56512:56544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 111: Hash(0x7160cbfe83e88ef09423567234fc78e50f829280f9aadebd84791f41d1fdbd5)", + "P->V[56544:56576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 114: Hash(0x24bc81704f59a520671b02836df7e6e4a4f89bf7af4f6c9e86c07814827634e)", + "P->V[56576:56608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 121: Hash(0x6872defda56ed0c1a434f30c3918f8e10f442cf71bfae6b834d829ca0e2512)", + "P->V[56608:56640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 33: Hash(0x4544463e04e7994df9d77f924ee45d94bdd431f6186afe8b881c76add5bdcc1)", + "P->V[56640:56672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 37: Hash(0x6fb1e5607e7b64ea4ff7a892909ef4c704e2dbc8730eae0bce86c09fa2cad29)", + "P->V[56672:56704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 42: Hash(0xb4408e08ea7bca46d9a8021a486e5f6ff946c355ecae4e394a016bd4603f25)", + "P->V[56704:56736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 45: Hash(0x2de3d0a037c23ee22981c51c26d7aefeda2125f783773030c9a6c49d5a1fab7)", + "P->V[56736:56768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 47: Hash(0x495ab5c94702cb39186cf670ebf17f676cd19784824d65f5160d6a5b01adf75)", + "P->V[56768:56800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 52: Hash(0x5c27d5b363173ebbd534b5b21227c0867ff8eb21c65e2119dcd93dd888dd1aa)", + "P->V[56800:56832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 56: Hash(0x387126c74f79b91e7afd7a3819ec542ec3df3c493f0a5deebaae6b584382789)", + "P->V[56832:56864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 59: Hash(0x6ae3ab3be0c4f8c12d8490e2eb0359f8a380d18479f88789af01993707c14f8)", + "P->V[56864:56896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 61: Hash(0x6fe2e5ceae6c5d6ec4563aea8ef1b77284c54d433e68e3c82cb4853ba8c2d27)", + "P->V[56896:56928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17: Hash(0x709e9db02b4bbbbf5f27d745cb2861f93bcb58fc989041ce4b92403be6dd30d)", + "P->V[56928:56960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19: Hash(0x53248ef7fd6a78ef4435e3a1c5f3aaf89a4ee686f2acc1bd5be034e791dd87a)", + "P->V[56960:56992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 20: Hash(0x268e6cbc046ea6a022930b32bb834492c1b047e0e66351a2c694c2fe3172e42)", + "P->V[56992:57024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24: Hash(0x395f7c0db71ee6b66556858803267e996745634f5ea1250ae12187a61c02bdc)", + "P->V[57024:57056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31: Hash(0x6819ab0074f14220dc2a106528e581dceba438afbcffbdef2eefabe44901442)", + "P->V[57056:57088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1357, Column 0: Field Element(0x79c155e73e2ea6ebbfd5011bb38b87fe77e6414decfae024f7530b0b6d33056)", + "P->V[57088:57120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 1357, Column 1: Field Element(0x7be78c5dbabbf9865c3fa118c70620f0297712b1ee0efe55aad444ba78fab48)", + "P->V[57120:57152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 156174, Column 0: Field Element(0x11ee055ba0d28099a4224f76be5611830c457cc8b759404813bd23285044b25)", + "P->V[57152:57184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 156174, Column 1: Field Element(0x4ca374b1e20f46b10392c564477cfc11d480655ba396b1aaf52d63bbf515480)", + "P->V[57184:57216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 327432, Column 0: Field Element(0x2e78f27d657bbe3d8267e9d19d81ee2b5477c2391e57e20059b624e561e8c8b)", + "P->V[57216:57248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 327432, Column 1: Field Element(0x1a188e273f376cc2594eac18817f439eeb4665cde1e4175dcb1b019ff19991e)", + "P->V[57248:57280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2236203, Column 0: Field Element(0x4ddbb8723ea48f88e39e68798e47aa87d599a061222fa1adddc816c155f20f7)", + "P->V[57280:57312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 2236203, Column 1: Field Element(0xc7b97622bace795005e6699b37103cd176836526fd01321d67467241298be7)", + "P->V[57312:57344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6093790, Column 0: Field Element(0x24387acdd8306348e802f5d30ced94a35aa810b403fb37a3366ca3f54641dc5)", + "P->V[57344:57376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6093790, Column 1: Field Element(0x1451a4a873c6abc6da59ae7d75ac139bd54e3ce4e0f6a95a691c68b792766d4)", + "P->V[57376:57408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6322211, Column 0: Field Element(0x7939fe3e3a59cf25f6925f67fc01ed7f6d4124efad7ff30c2f3633f8b0cc19)", + "P->V[57408:57440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6322211, Column 1: Field Element(0x3e6ae854a6643176898d6ec92ae2fb5f4c72f511610742de257ea2e47ce7950)", + "P->V[57440:57472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6626439, Column 0: Field Element(0x2c1c54041cd09c04d71484950338a8274db2b406960661693704c46cf85dba9)", + "P->V[57472:57504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 6626439, Column 1: Field Element(0x4e22fdf93defbb81d21e99c52f7c39ecd8b1d3ac49e760948828a4bfdf2137e)", + "P->V[57504:57536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7351021, Column 0: Field Element(0x466773f8a7f05e66d86ce128bebbfe495ec3a203490462e19e540a788402e99)", + "P->V[57536:57568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 7351021, Column 1: Field Element(0x988290394ca9e30e20796ab64f9195e8c96e852ae283a99592bb82329b2079)", + "P->V[57568:57600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 9579215, Column 0: Field Element(0x7291e9ea549a7a2db6f97d766f1c8cf624906f8347e43336671eb4fff61d19a)", + "P->V[57600:57632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 9579215, Column 1: Field Element(0x6b9806f5402409f4f7996899d195d13c8b6d35de8c2eb2da3decce44736d620)", + "P->V[57632:57664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 10212545, Column 0: Field Element(0x7bc13b3b9ef3fa16eda9da15a2a13a659f39cf05a87789336f8fa857b775eaf)", + "P->V[57664:57696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 10212545, Column 1: Field Element(0x6c1ba35ae808b27db962a0a0dfca67abd25e70681b6a4e613db7fe697dd2fb8)", + "P->V[57696:57728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11067383, Column 0: Field Element(0x7594595b2cd5384a3aecf185cbf44e34bbd89dfc775320de568a6ca614a4af5)", + "P->V[57728:57760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11067383, Column 1: Field Element(0x31f8f4c9a33bd28721637548095750991fe4bbbfce2c159de7f8ea28f094bcb)", + "P->V[57760:57792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11713076, Column 0: Field Element(0x3881940e45c39d03719c2fc64910cd7fdbce5877bea3f6131c6e62705895b9e)", + "P->V[57792:57824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 11713076, Column 1: Field Element(0x404f29b3911408ac347c38b32e210c3384fd0d07fa382b9d0b6a90669d5bba)", + "P->V[57824:57856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 12075111, Column 0: Field Element(0x3321674e5f438cfc5e7c54e6464a93da9f992cf646cb0b37cf740042fabba01)", + "P->V[57856:57888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 12075111, Column 1: Field Element(0x3e26bf53f0dae7dc921a69e5cf29b8328a42210bc8419062ea30be42361a2a9)", + "P->V[57888:57920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13596798, Column 0: Field Element(0x9c7aa08728c2c9e27e946935a8fcb38ffd952edc4def3ab264ed01d29006e7)", + "P->V[57920:57952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13596798, Column 1: Field Element(0x66de6e542cc124dd80313808b07c07dcfe8215fae2d098726008e4555d5f70a)", + "P->V[57952:57984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13746199, Column 0: Field Element(0x43833f247ecf78db04f6a90b7cef9bc0cf2ab0203974171959a9339056779ef)", + "P->V[57984:58016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13746199, Column 1: Field Element(0x23b6f3711c3c2ffb050a4825f9425a10b2cb9fa1b541a43f95400b911e49e69)", + "P->V[58016:58048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13995388, Column 0: Field Element(0x51a0cc7ecce79160887e8e58d15448e43c2506e136ae8fc10f9ebbcd94cd124)", + "P->V[58048:58080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 13995388, Column 1: Field Element(0x566a160202bd04e18f9af427ce2f132fb3645ba491effabd00a064d45504dd4)", + "P->V[58080:58112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 14748098, Column 0: Field Element(0x5cec1021824ca438949223dd71bdccc509209f6d2e023ba91cbaf803a3b5d)", + "P->V[58112:58144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: Row 14748098, Column 1: Field Element(0x5e5e08b51736ad7bbbb435bcbb8992a0b0773c8ffd0bbe839ad77e8d8f2dcd6)", + "P->V[58144:58176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16778572: Hash(0x000000000000000000000000a91ed531ffa589d4be581c1ba2347da71b0d2fcb)", + "P->V[58176:58208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16933391: Hash(0x000000000000000000000000f3ed32f37569a22e3d5d813663477e6c9fa526c9)", + "P->V[58208:58240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17104649: Hash(0x000000000000000000000000a791068a7da54fb95357294e4eaba17c7511fbc2)", + "P->V[58240:58272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19013418: Hash(0x00000000000000000000000026b3ce979e8c8231a081744a95707ca5577dca55)", + "P->V[58272:58304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22871007: Hash(0x00000000000000000000000073f3480a09ad907b03af953439047f8169a1be6d)", + "P->V[58304:58336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23099426: Hash(0x000000000000000000000000326aa1e060534cfffb3417dd6659dfa18feb7262)", + "P->V[58336:58368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23403654: Hash(0x000000000000000000000000d93fe2d3de51ae93655a32a6b9b258751a98fd74)", + "P->V[58368:58400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24128236: Hash(0x000000000000000000000000815fe8c6369f0cf98d3e11d422f65a87162958b5)", + "P->V[58400:58432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 26356430: Hash(0x0000000000000000000000003fe47ee7d2350682ae0a18080f0789cc5f30402a)", + "P->V[58432:58464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 26989760: Hash(0x000000000000000000000000d58725ab53bc8324eb88136c8e4200cee1ceef3c)", + "P->V[58464:58496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27844598: Hash(0x000000000000000000000000092ec4a713f15161fde6f44b302fe920c47d67c8)", + "P->V[58496:58528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28490293: Hash(0x0000000000000000000000001bb66f490d98ee3d1a02c3a269380a08a53f2d05)", + "P->V[58528:58560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28852326: Hash(0x000000000000000000000000e5a2a5960fc57380d0f0a53422137ba370315c36)", + "P->V[58560:58592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30374015: Hash(0x000000000000000000000000764f82348e39d8cd88ba6ab016133529976ddae0)", + "P->V[58592:58624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30523414: Hash(0x000000000000000000000000544c9c42c2e6bce2ee765b1f1b3da37faedf3837)", + "P->V[58624:58656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30772605: Hash(0x0000000000000000000000009bf9a04c610db42ee767e62de74e669bbfae5a03)", + "P->V[58656:58688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31525315: Hash(0x0000000000000000000000005b6a88c15fdbe1623e25c2f2f2752ad0ffda0ba4)", + "P->V[58688:58720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8389287: Hash(0x0000000000000000000000008f5f8c1e19333ec0fbc3d170be0b34b324a3fd63)", + "P->V[58720:58752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8466694: Hash(0x0000000000000000000000001c13238c5c63791d62fbb22b222ed6ae2d49f357)", + "P->V[58752:58784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8552325: Hash(0x000000000000000000000000cb9650762cab87315e9fef897de13c822c681f37)", + "P->V[58784:58816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9506708: Hash(0x0000000000000000000000004f537776470c8e311f48d3b30998716cf0683770)", + "P->V[58816:58848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11435502: Hash(0x00000000000000000000000026264650c0e8bfc70d3646ef63459cba23dcbc1c)", + "P->V[58848:58880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11549712: Hash(0x0000000000000000000000001f92d90bad7e51d6c1c6d985984d841a34e4fb28)", + "P->V[58880:58912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11701826: Hash(0x00000000000000000000000087f5a6c7b1d96951378803c27f22adf8f7c7f193)", + "P->V[58912:58944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12064119: Hash(0x000000000000000000000000700eb554a9b0c007a26d656fd1ca8a7a165ff230)", + "P->V[58944:58976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13178214: Hash(0x0000000000000000000000002270cb3893026aa25dc66845acf3d3328fe1a2d8)", + "P->V[58976:59008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13494881: Hash(0x0000000000000000000000003b136662439a29b16f0c09e43001bd19190afb5e)", + "P->V[59008:59040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13922298: Hash(0x000000000000000000000000df090f5ae471eabcf0882ebb194747b3ee75467a)", + "P->V[59040:59072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14245147: Hash(0x0000000000000000000000004bdd99609a3e3e7e39d6139f2d585c6c1dd375e0)", + "P->V[59072:59104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14426162: Hash(0x000000000000000000000000a40376ff7c7bc532b0716ce6d11dd30a36d48036)", + "P->V[59104:59136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15187006: Hash(0x000000000000000000000000567e682329dd8e3686549ae410a811b6dd3c1df8)", + "P->V[59136:59168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15261706: Hash(0x0000000000000000000000008ad8a70ab28df24fe2d404cabf0f7a4894d10f2e)", + "P->V[59168:59200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15386303: Hash(0x00000000000000000000000011d8846262730102506dac682a9ef7cf4f309f1a)", + "P->V[59200:59232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15762656: Hash(0x0000000000000000000000009a2fb8bbbd2fc00b7f662677ab98a78ca44e5957)", + "P->V[59232:59264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4194642: Hash(0x000000000000000000000000d1dcc6e5e0981185fb49b36ab65c01a3d7cc7b09)", + "P->V[59264:59296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4233346: Hash(0x0000000000000000000000005a4743739dfcf2b006dcb3f8b209adbba9f9bb63)", + "P->V[59296:59328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4276163: Hash(0x0000000000000000000000007c0a14605eff5e0b076b6f24e2526f3168562c03)", + "P->V[59328:59360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4753355: Hash(0x000000000000000000000000274bc12125076996c758776a707cb89bdfbfa40b)", + "P->V[59360:59392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5717750: Hash(0x000000000000000000000000310d162899a7a5be7c436c3704b8f54dd1b9bd4d)", + "P->V[59392:59424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5774857: Hash(0x000000000000000000000000fc857578706dbea9a8a498551a0ceaecb27e15aa)", + "P->V[59424:59456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5850912: Hash(0x0000000000000000000000003cab40231c59fa7314bcc543c104de0cacd5e71f)", + "P->V[59456:59488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6032058: Hash(0x0000000000000000000000003c7b8da73f98b92521214fb3ec5f9f7c3599084b)", + "P->V[59488:59520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6589106: Hash(0x00000000000000000000000019324b0a391396bf84a68551688f21002f0bb0f6)", + "P->V[59520:59552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6747441: Hash(0x000000000000000000000000c6510b22a27c642658c87672612d38e2f898e894)", + "P->V[59552:59584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6961148: Hash(0x000000000000000000000000338effec03fc27ab2d7ae9c88a350ce4ca7d422a)", + "P->V[59584:59616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7122572: Hash(0x00000000000000000000000046ff3a3f69559a605802f6f4eaaab368d094cf8f)", + "P->V[59616:59648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7213080: Hash(0x00000000000000000000000071fd90780cfe9207b5ec370672ab19e7663324e0)", + "P->V[59648:59680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7593502: Hash(0x000000000000000000000000bda5e88a5fa38592c486bbb3055c36230388ad75)", + "P->V[59680:59712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7630852: Hash(0x0000000000000000000000004ce41bfc076174f89513ef3b44dd8311ec014a42)", + "P->V[59712:59744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7693150: Hash(0x000000000000000000000000e07d4331ae9dc0472c9dd61884162ab9bf1e0096)", + "P->V[59744:59776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7881329: Hash(0x00000000000000000000000011b13c4927102e5738ff3f7ff940f2686d2088b0)", + "P->V[59776:59808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2097320: Hash(0x000000000000000000000000bddb38550dc3c8295d169424b05b52bb11f905b6)", + "P->V[59808:59840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2116672: Hash(0x0000000000000000000000003d0d098907e56b460ac890547241812b5a02269e)", + "P->V[59840:59872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2138080: Hash(0x000000000000000000000000258ff706bfd1f3cc55160f674298a5492f80c806)", + "P->V[59872:59904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2376676: Hash(0x000000000000000000000000d6542beaca55ba5b48f7ced1a90c8c8b688ec193)", + "P->V[59904:59936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2858874: Hash(0x000000000000000000000000c861bc8adcf0f8e2f41ff6dc21d76e51e61fbfe7)", + "P->V[59936:59968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2887429: Hash(0x0000000000000000000000008dc0b9cd2a48b7d2bd8bf745bac8dd588d8aff32)", + "P->V[59968:60000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2925457: Hash(0x00000000000000000000000059818fe3cfedb6bac78199b5c7b00f08441671e6)", + "P->V[60000:60032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3016028: Hash(0x0000000000000000000000009e5bfe1fa6b5f278936d3eaece7f819d60dabb8c)", + "P->V[60032:60064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3294552: Hash(0x0000000000000000000000007785d3cae5eb0a14d802ea2b31468d61f0ba7c7d)", + "P->V[60064:60096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3373721: Hash(0x000000000000000000000000342de0cae2b92237b669906bc47ed7dcde2b2cec)", + "P->V[60096:60128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3480575: Hash(0x000000000000000000000000c9f730128e023e83e695a247be4f85dac7e15f55)", + "P->V[60128:60160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3561287: Hash(0x000000000000000000000000a5812df96005c70b0514956fe91005876205d20d)", + "P->V[60160:60192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3606541: Hash(0x000000000000000000000000a80d2eb54980d86de92e7cb7c03979e61ce1c9e2)", + "P->V[60192:60224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3796750: Hash(0x000000000000000000000000b7e6d1b64dbb216e87acb5a2ab8b170dd99d3173)", + "P->V[60224:60256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3815427: Hash(0x000000000000000000000000948fbf321e51c46f353d9e869c2f81311d360666)", + "P->V[60256:60288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3846574: Hash(0x000000000000000000000000520893976f9489b7efab2acabbadf4cb2eaceb73)", + "P->V[60288:60320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3940665: Hash(0x000000000000000000000000fa70d9787a43f432fd97ae96da53f7e29fbe4714)", + "P->V[60320:60352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1048661: Hash(0x0000000000000000000000000d1785cae6b772cdcb4520170b2a9a5afa9b9f75)", + "P->V[60352:60384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1058337: Hash(0x000000000000000000000000f68f3bc9d1352dad1c5721c3d99be5a5dd02ac86)", + "P->V[60384:60416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1069041: Hash(0x000000000000000000000000831b1a16fb81b02da2d646951d04cb1d71073c3b)", + "P->V[60416:60448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1188339: Hash(0x0000000000000000000000004f0611fba75a1fbb69d3130bdffa2c1f3bf82876)", + "P->V[60448:60480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1429436: Hash(0x000000000000000000000000650b698a2704f60a941bd4bb634384957a65b884)", + "P->V[60480:60512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1443715: Hash(0x000000000000000000000000d34ac8dfd44e7dd964effaa309d2f77d57d13c1f)", + "P->V[60512:60544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1462729: Hash(0x0000000000000000000000003cfe0de85fc3532397c9afd13d2ae1d1ef3302c3)", + "P->V[60544:60576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1508015: Hash(0x0000000000000000000000005482e21d0943031403b7a003f3103cfa36a84a4e)", + "P->V[60576:60608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1647277: Hash(0x000000000000000000000000d170477a7d00d1b3dbd6a6d0a7313d2ca09714f6)", + "P->V[60608:60640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1686861: Hash(0x000000000000000000000000b4bb8fee540e609b35478649c5c32bda2802f4d5)", + "P->V[60640:60672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1740286: Hash(0x000000000000000000000000dd653f10075f673ffc4aded7447babea322898cd)", + "P->V[60672:60704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1780642: Hash(0x00000000000000000000000002dfd5b94ed36658b96dfcf28383381e25b819d7)", + "P->V[60704:60736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1803271: Hash(0x000000000000000000000000ca5a4c5646d38c347f5a131763b9ee543b5e0e12)", + "P->V[60736:60768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1898374: Hash(0x00000000000000000000000002615623e662d3df691dc42bca465f33a050716e)", + "P->V[60768:60800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1907712: Hash(0x00000000000000000000000045f37f3cf21960ca38c9ec60533dca1febf8a629)", + "P->V[60800:60832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1923286: Hash(0x00000000000000000000000015b7db12261ac7ed3195ab718f813039c1c18c02)", + "P->V[60832:60864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1970333: Hash(0x0000000000000000000000006feb591e37fb88b750591cd0d6f420ee1c856d99)", + "P->V[60864:60896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 524331: Hash(0x00000000000000000000000017a4b5cae6af24bb1909af873053656b8662ff44)", + "P->V[60896:60928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 529169: Hash(0x0000000000000000000000004ea7f24503a9f624fcd5b9cf46c682a2a7f9849b)", + "P->V[60928:60960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 534521: Hash(0x00000000000000000000000059b03f16c189dc33487836f40e43182082a798f9)", + "P->V[60960:60992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 594168: Hash(0x000000000000000000000000ea9357a83c31bfa96e619d5eff80ce60b73f541d)", + "P->V[60992:61024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 714719: Hash(0x000000000000000000000000065b8417c6ba0667a703f92bfda6616e0d3523cf)", + "P->V[61024:61056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 721856: Hash(0x000000000000000000000000b7f148338c7f3f3fb3ea91b50742e3557e2dcb57)", + "P->V[61056:61088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 731365: Hash(0x000000000000000000000000c8b8e563fe885f754483c73d3922ea7cc0106c5e)", + "P->V[61088:61120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 754006: Hash(0x0000000000000000000000000de0f524f291ee393003724edd68c52561f3b122)", + "P->V[61120:61152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 823639: Hash(0x0000000000000000000000000caaaab86036c476081508156931dac953362ffb)", + "P->V[61152:61184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 843431: Hash(0x0000000000000000000000004c7b2020e05d512abd8be53c4dbc0dd480541999)", + "P->V[61184:61216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 870142: Hash(0x000000000000000000000000472e7478e0f230bf662b7176618ec04259cff44e)", + "P->V[61216:61248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 890320: Hash(0x0000000000000000000000006d5a7b00d0f198276b8b2eb65199f526cd29c286)", + "P->V[61248:61280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 901634: Hash(0x00000000000000000000000000e98c0c7e58e7ca2b06efa72c4e332e1e0a34ac)", + "P->V[61280:61312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 949186: Hash(0x0000000000000000000000001a8186941aeb812c59c39d497e718d93eebced80)", + "P->V[61312:61344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 953857: Hash(0x0000000000000000000000005b69980b43370646567b4e8fa15b56e798b7d9ca)", + "P->V[61344:61376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 961642: Hash(0x000000000000000000000000de111159a7badd53ea4e0cbe99dd5a5430bb060a)", + "P->V[61376:61408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 985167: Hash(0x000000000000000000000000e467d633ceb1f6910c9a64b3c5c178fe0e2fe1ee)", + "P->V[61408:61440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 262164: Hash(0x000000000000000000000000cd97325268ee2d3bc1a362491811419c30a3c071)", + "P->V[61440:61472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 264585: Hash(0x0000000000000000000000007afeea822616b96238d9b878b2caa2f6d27a66e2)", + "P->V[61472:61504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 267261: Hash(0x000000000000000000000000e57c7e0f35c6fd94104904d3ebac5554a2a53d92)", + "P->V[61504:61536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 297085: Hash(0x000000000000000000000000c7545dd878f7408c371ecc8ac27bb4856d3050b9)", + "P->V[61536:61568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 357358: Hash(0x0000000000000000000000001cbc25b19106ab2b846876f0fdaefd31a45c2346)", + "P->V[61568:61600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 360929: Hash(0x0000000000000000000000005247b06d194488b3376d482641d703aa5f11c6d6)", + "P->V[61600:61632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 365683: Hash(0x0000000000000000000000002ed1d012aefdad42cf2ba8ed62a68dafe5c66fe5)", + "P->V[61632:61664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 377002: Hash(0x000000000000000000000000181f1298c41b7c46408f77a2b45b5e3d4ae7f49f)", + "P->V[61664:61696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 411818: Hash(0x0000000000000000000000001c7ebd970dc10ceba02062421bc972d9ab970b76)", + "P->V[61696:61728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 421714: Hash(0x000000000000000000000000a1224801f90436f5fb5cabab35ba871b95811eb6)", + "P->V[61728:61760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 435070: Hash(0x000000000000000000000000e859e3956a8882ddfaff44cdf00ab8e3e10af876)", + "P->V[61760:61792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 445161: Hash(0x000000000000000000000000aa20c645eb3211b91170b885efcb8ec8976f0e21)", + "P->V[61792:61824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 450816: Hash(0x0000000000000000000000007c4d00ede06c5e621e1509d1a9201641f9c233e4)", + "P->V[61824:61856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 474592: Hash(0x0000000000000000000000008d1e724774aacff1c6530cece437814480e8f78d)", + "P->V[61856:61888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 476929: Hash(0x000000000000000000000000ea9ceade83240d280819e8c20a62c25855270635)", + "P->V[61888:61920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 480820: Hash(0x00000000000000000000000076aabf2a3cbe8937de3829791d691588b25a95bd)", + "P->V[61920:61952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 492582: Hash(0x0000000000000000000000009bb1d28b03d875d823a2eea5a9baa875cba52bb0)", + "P->V[61952:61984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 131083: Hash(0x000000000000000000000000e3a2019129140f5047f675e9014b49effabcb4ae)", + "P->V[61984:62016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 132293: Hash(0x000000000000000000000000455db1c1c7783088e2534c969b36f44e01f0bc27)", + "P->V[62016:62048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 133631: Hash(0x000000000000000000000000762af41752dfd13226fd6cac43f0adea8d8d7cd8)", + "P->V[62048:62080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 148543: Hash(0x000000000000000000000000cb11f67a31e166ee703c1d0abddc603c28faa877)", + "P->V[62080:62112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 178678: Hash(0x0000000000000000000000008a3ff0fc05d26216d5518970623c9be3c90b5fc3)", + "P->V[62112:62144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 180465: Hash(0x000000000000000000000000e8e3d7ade24db57793dbc8c6f12cfd21d9b882fc)", + "P->V[62144:62176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 182840: Hash(0x00000000000000000000000016ec7db5501231fd81b0f97f7df1ba51dd6ca9a1)", + "P->V[62176:62208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 188500: Hash(0x0000000000000000000000009ed4b852ed3dce24a999c6c76b41da04afaf7edd)", + "P->V[62208:62240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 205908: Hash(0x0000000000000000000000007e461962115c3ecb3334d6013a22c4ec77bd8e99)", + "P->V[62240:62272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 210856: Hash(0x00000000000000000000000076a6d16c4c64d07f9a0231011d9fa2b85cb410fe)", + "P->V[62272:62304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 217534: Hash(0x000000000000000000000000c978f97944adac651f1e879c8ee3a0f857329f4c)", + "P->V[62304:62336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 222581: Hash(0x0000000000000000000000008656a0d1c58b597e4561cce6f4842694e2eb28ee)", + "P->V[62336:62368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 225409: Hash(0x000000000000000000000000393dc5181680304c6be7dcc4bd1c4580c8cb67b3)", + "P->V[62368:62400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 237297: Hash(0x000000000000000000000000b8f079fc00913a5f81f406ff92adbf2b970d6743)", + "P->V[62400:62432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 238465: Hash(0x000000000000000000000000c9ec559829674a65b55bc0a3143a72a334f69a85)", + "P->V[62432:62464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 240411: Hash(0x000000000000000000000000fb99f0f998c4f90d3d8fb2a59a265a0abbafb8d6)", + "P->V[62464:62496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 246290: Hash(0x0000000000000000000000003b3cb9de32a9662944dcd3df7c6fcc3bb208e702)", + "P->V[62496:62528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 65540: Hash(0x000000000000000000000000fb91b1f13b0037d76498dbc6c3dad1c999ce8502)", + "P->V[62528:62560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 66147: Hash(0x00000000000000000000000077f2fc5720a7276ed84a12f8f458a68738e2b06c)", + "P->V[62560:62592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 66814: Hash(0x000000000000000000000000ef95d395439c02b1e1c7fc74aaafa4dc35c925dd)", + "P->V[62592:62624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 74270: Hash(0x00000000000000000000000088fd6bbb01010086e090a91b7789d37353a40d0d)", + "P->V[62624:62656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 89338: Hash(0x000000000000000000000000fb93f39be9db49d87acefbcb0133ba64417c29c5)", + "P->V[62656:62688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 90233: Hash(0x00000000000000000000000029f8838de81b0aa3640d4089b7a0cb13f1ed3dbf)", + "P->V[62688:62720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 91421: Hash(0x000000000000000000000000324a92de7ab011dde18fd37a9d693edae3e20713)", + "P->V[62720:62752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 94251: Hash(0x000000000000000000000000223845410cdac73f5cf885a245925720536e75aa)", + "P->V[62752:62784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 102955: Hash(0x000000000000000000000000c57672cbf5afbc5fac7c27243da3dcd7a9aaae40)", + "P->V[62784:62816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 105429: Hash(0x000000000000000000000000ec384801e4cf5a38416d55fd73f0ed6e9d8895f6)", + "P->V[62816:62848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 108766: Hash(0x000000000000000000000000f5985301968c4d705cb1e0f7272d4a7e36e16e93)", + "P->V[62848:62880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 111291: Hash(0x000000000000000000000000bad595cc8628dca20b84a76d392882728063e638)", + "P->V[62880:62912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 112705: Hash(0x0000000000000000000000003d34f985c39c7f291a74108ad29193115c1a00bb)", + "P->V[62912:62944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 118649: Hash(0x000000000000000000000000a5ba304f3a0ec66df53116de08e92c31c5c810c9)", + "P->V[62944:62976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 119233: Hash(0x000000000000000000000000181f4e6fd6af0baebf8ee33c52555c21f35e51b9)", + "P->V[62976:63008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 120204: Hash(0x000000000000000000000000a951ee72408fed76ba1e4f7fdd914bc29d2064a9)", + "P->V[63008:63040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 123144: Hash(0x0000000000000000000000009128c87801469024c13199ad991c3780ad4633e7)", + "P->V[63040:63072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 32771: Hash(0x000000000000000000000000b1c74fa01036a6abcdcd5c23c69abba383be51b3)", + "P->V[63072:63104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 33072: Hash(0x0000000000000000000000008ebe8e8ecdc3942b60d220b96543fb3f2a2bbae9)", + "P->V[63104:63136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 33406: Hash(0x000000000000000000000000c92b8b68881aa6758715590a36dc07e4a285afc3)", + "P->V[63136:63168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 37134: Hash(0x000000000000000000000000a0b918495b6cb3395306c9283cb8126a50c966ef)", + "P->V[63168:63200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 44668: Hash(0x0000000000000000000000002eaecb4a6f63e8b954fb19cda4faf260469ee748)", + "P->V[63200:63232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 45117: Hash(0x000000000000000000000000297fb0b040c737c6e65b3b56c51fe3a873c05683)", + "P->V[63232:63264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 45711: Hash(0x000000000000000000000000ee8db37b23530729d34960c284e6ebc3854bf630)", + "P->V[63264:63296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47124: Hash(0x000000000000000000000000452ba2ad2bfa07bc7997a33a565f52affa1402a6)", + "P->V[63296:63328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 51476: Hash(0x00000000000000000000000040c51c4a8cd066655e9c88d8532e1d52e6643a6c)", + "P->V[63328:63360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 52715: Hash(0x0000000000000000000000003be47ef91601f6e3b4b4fb9fb7a6bb0efaffa569)", + "P->V[63360:63392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 54382: Hash(0x000000000000000000000000665a95647ff7ac13d3c7e2f8f29d390e15b249b7)", + "P->V[63392:63424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 55644: Hash(0x00000000000000000000000004ca7967f109616bfa707de51deeb1880b097857)", + "P->V[63424:63456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 56353: Hash(0x000000000000000000000000f237367ecc968a36307b625017c8ee41f2dc6224)", + "P->V[63456:63488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 59325: Hash(0x00000000000000000000000061a7558199b9227bed140b5c9168d0ce7be18061)", + "P->V[63488:63520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 59617: Hash(0x000000000000000000000000bee9f2caeadaa8b1427c99f9e16cc6f14ea57e9e)", + "P->V[63520:63552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 60103: Hash(0x000000000000000000000000537df43ef351dc465507589a88df368fff841516)", + "P->V[63552:63584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 61573: Hash(0x00000000000000000000000077c6a48a0040deab708791b1c128fa1a0828a994)", + "P->V[63584:63616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16384: Hash(0x00000000000000000000000063de5e98ccc285c17179b9d06d658c276b466572)", + "P->V[63616:63648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16537: Hash(0x000000000000000000000000e447efb6314c69870c67b667008e7cbbbb98a68c)", + "P->V[63648:63680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16702: Hash(0x0000000000000000000000001690af577e4438ece191e0614ba116df46534951)", + "P->V[63680:63712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 18566: Hash(0x0000000000000000000000001f0c865b899568fd13a0be9a98b17c131122eaf4)", + "P->V[63712:63744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22335: Hash(0x0000000000000000000000007229640e3a1c4a4116d72862e51b12d3fc525cd2)", + "P->V[63744:63776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22559: Hash(0x0000000000000000000000000499cbee3883c04b2ed55252e953a6e1e3203046)", + "P->V[63776:63808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22854: Hash(0x000000000000000000000000dc7e582f4471143d29ed37136b4a1f85cd3c9272)", + "P->V[63808:63840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23563: Hash(0x000000000000000000000000df5426218384becf3c2f2be4c6a63d2b76c07ac0)", + "P->V[63840:63872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 25739: Hash(0x0000000000000000000000002b1a898961ed97a985619430be279d0b96de3e29)", + "P->V[63872:63904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 26356: Hash(0x00000000000000000000000089eea194b93c8990e831db840d81023c10017382)", + "P->V[63904:63936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27190: Hash(0x000000000000000000000000142179a859bce85ed5034115ddf945b679058537)", + "P->V[63936:63968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27823: Hash(0x000000000000000000000000b5ac689fbdd68d57c867aad12d1033373a30f672)", + "P->V[63968:64000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28177: Hash(0x000000000000000000000000be8305bbaf353e678d2a163826af710be0d0a7dc)", + "P->V[64000:64032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 29663: Hash(0x0000000000000000000000002a828931bbff5fdb9080bf373d9f95e21dc33ab6)", + "P->V[64032:64064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 29809: Hash(0x00000000000000000000000050ded9299142389741d0926ee2fde59891421d5d)", + "P->V[64064:64096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30050: Hash(0x000000000000000000000000ae7180609539bffe3f9e92f8e611c65300fb181e)", + "P->V[64096:64128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30787: Hash(0x0000000000000000000000002cd5724ea0ba47819e15ac381262d91fbd8e2561)", + "P->V[64128:64160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8193: Hash(0x000000000000000000000000c3372ba6244d59b0a26fc70315ac00ad0cc36532)", + "P->V[64160:64192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8269: Hash(0x00000000000000000000000036b12f67f4926722ad91ea7522b320a190888d54)", + "P->V[64192:64224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 8350: Hash(0x000000000000000000000000375de624ba3749f0ba44acd8f55afad35b229d4c)", + "P->V[64224:64256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 9282: Hash(0x0000000000000000000000005d983c69dbb249b589d8ea990af8249bce78e916)", + "P->V[64256:64288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11166: Hash(0x0000000000000000000000004c2c6a2ba1bbb9a174157e96ea92f2eacbd003de)", + "P->V[64288:64320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11278: Hash(0x000000000000000000000000c7b4cd3dcc5612c0e597287e193e2e961e835ce3)", + "P->V[64320:64352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11426: Hash(0x00000000000000000000000003d63cd78283057b9215caa66d69dcc167c79d63)", + "P->V[64352:64384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 11780: Hash(0x000000000000000000000000d92ff98928cb22565a3ff7186f16a4869c8195d2)", + "P->V[64384:64416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 12868: Hash(0x000000000000000000000000af84f9f2271ce813c7c36ec21be97b8572e8793f)", + "P->V[64416:64448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13179: Hash(0x0000000000000000000000006d6d01fc1e88acfde194be3617531c1115991812)", + "P->V[64448:64480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13594: Hash(0x00000000000000000000000032cb78a52a81e113fd0b28a18285dc6e002e45a4)", + "P->V[64480:64512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 13910: Hash(0x000000000000000000000000b04ac023d44cf194fe173c9700682ab1aea70e0d)", + "P->V[64512:64544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14089: Hash(0x000000000000000000000000b2fbfa11f8de2e997260c723dc6dade39ceafe7e)", + "P->V[64544:64576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14830: Hash(0x00000000000000000000000054541a1f8e1a2c0ab394fbb798f3d136c9f03c3a)", + "P->V[64576:64608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 14905: Hash(0x000000000000000000000000c354d226d372dda5298b3f7a03649b738164420c)", + "P->V[64608:64640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15024: Hash(0x000000000000000000000000185287c4ed6603a5f1bf86b71b6fee216f19c917)", + "P->V[64640:64672]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 15392: Hash(0x0000000000000000000000000257601e450a8cb79c7463c93b4d4103183969c1)", + "P->V[64672:64704]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4097: Hash(0x000000000000000000000000098d831ff44649937787fea9983b446574fa05b5)", + "P->V[64704:64736]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4135: Hash(0x0000000000000000000000001fb25667311cc25a936c50ba66b0ddecbe1a7b4c)", + "P->V[64736:64768]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4174: Hash(0x0000000000000000000000002f5926383ef836a8e0c72a4e0b94d57547b347ac)", + "P->V[64768:64800]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 4640: Hash(0x000000000000000000000000b1924691ea35b5b8b9d6761fd7793aa740d244de)", + "P->V[64800:64832]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5582: Hash(0x000000000000000000000000092e710f11f1d3a9f6d8b6441ecefe97c7f1723f)", + "P->V[64832:64864]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5638: Hash(0x000000000000000000000000f2037afdfa9248bfe49165511cdb3ba282157917)", + "P->V[64864:64896]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5712: Hash(0x000000000000000000000000ff40c0a7b693c0f9180dc8ce4e4f2567a73d83a7)", + "P->V[64896:64928]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 5891: Hash(0x00000000000000000000000066aa9c35651812540ceb4376dc4b3c16c16cd3f3)", + "P->V[64928:64960]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6435: Hash(0x000000000000000000000000e0741446a310c094d39569ea8d590ba89d14a47f)", + "P->V[64960:64992]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6588: Hash(0x000000000000000000000000e6fbdc5eb4edfd9636ecd597454e0dbaefd91c37)", + "P->V[64992:65024]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6796: Hash(0x000000000000000000000000851a636bc10fd675e19dc65a0d349397bae972aa)", + "P->V[65024:65056]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 6954: Hash(0x000000000000000000000000ddaf1e2762506751001a7efefb8e8b31690ed862)", + "P->V[65056:65088]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7045: Hash(0x000000000000000000000000f7360bbc4b25fb23c86bc167c09af0bb912a9dd8)", + "P->V[65088:65120]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7414: Hash(0x0000000000000000000000006cf484c4df31d068901c27b0cb2e2c88a343223a)", + "P->V[65120:65152]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7453: Hash(0x000000000000000000000000bd4e36737e54037febde50a55587cf9fef73d9d3)", + "P->V[65152:65184]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7513: Hash(0x000000000000000000000000126c7b2872311c9229258e5c2174704b0d644020)", + "P->V[65184:65216]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 7697: Hash(0x000000000000000000000000ef5cf9c451f5bf284567341612acb095a3582714)", + "P->V[65216:65248]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2049: Hash(0x000000000000000000000000b6c7dc7c9be3c625273e6f9f49ecdadf6b85fa0d)", + "P->V[65248:65280]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2066: Hash(0x0000000000000000000000004d7b6a08888be2d59b9c17554e5a880c6f01f69a)", + "P->V[65280:65312]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2086: Hash(0x00000000000000000000000098cd556aaf5cae409c00170a375644064e4946a3)", + "P->V[65312:65344]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2321: Hash(0x000000000000000000000000758ef738c3f08569c5c5cbc7423d7c49c9c4f694)", + "P->V[65344:65376]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2790: Hash(0x000000000000000000000000a1b059f7dbe74b51978761ffb6bda7c6e3b83d16)", + "P->V[65376:65408]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2818: Hash(0x00000000000000000000000092b08d4eed329f2876e51dd38c39062f8eda6791)", + "P->V[65408:65440]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2857: Hash(0x000000000000000000000000d1c1c4bf2b48742e19864990e3c48a314ac27d4f)", + "P->V[65440:65472]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 2944: Hash(0x000000000000000000000000532af4cb20e046ee2e05d9ef5f331ff59ab19f7a)", + "P->V[65472:65504]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3216: Hash(0x000000000000000000000000c001716dbed0d7f9405c063262c77f1334235246)", + "P->V[65504:65536]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3295: Hash(0x000000000000000000000000c1212b6c16ce3bedb34a299e01151a9ed853160e)", + "P->V[65536:65568]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3399: Hash(0x0000000000000000000000006aab769362baefcbece3dd7730866c9f53c132b0)", + "P->V[65568:65600]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3476: Hash(0x00000000000000000000000047380dbf3d96edb485c6d6c53aadae90df3d8d79)", + "P->V[65600:65632]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3523: Hash(0x000000000000000000000000ece89039283c34fbfad11f167d5001ea585bd06a)", + "P->V[65632:65664]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3706: Hash(0x000000000000000000000000471cbfe422da4a07f85c53da923d680a905ac504)", + "P->V[65664:65696]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3727: Hash(0x000000000000000000000000ae9788ba02ea1f53d3d2c32fd7c17b83bdc2f762)", + "P->V[65696:65728]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3757: Hash(0x000000000000000000000000f0356a75ff6ff02d9584ad5350a0bf29b0d8bdf8)", + "P->V[65728:65760]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 3849: Hash(0x000000000000000000000000b1246cd85d6f2fefd75633fb024c3a339be667bc)", + "P->V[65760:65792]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1025: Hash(0x0000000000000000000000006e8105f51ceff7ee4c1b865331e0ed911752eb20)", + "P->V[65792:65824]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1032: Hash(0x000000000000000000000000990958eaafa990020e26abb3875d1bb7af6fde4f)", + "P->V[65824:65856]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1042: Hash(0x000000000000000000000000314cd7d5d85827d1d30c4ca4aebb640128355c1f)", + "P->V[65856:65888]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1161: Hash(0x00000000000000000000000088985c56c2b43f5716e0a85fd8aaa98e0442eade)", + "P->V[65888:65920]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1394: Hash(0x000000000000000000000000b126d51195bdb70b8fb57105eee091d3fab7db7f)", + "P->V[65920:65952]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1408: Hash(0x000000000000000000000000544eddcf5f1714009cdaa064821ddac43f6edb5e)", + "P->V[65952:65984]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1429: Hash(0x0000000000000000000000006f91029b1dc28ea88135f4535db29f34efce1dbd)", + "P->V[65984:66016]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1473: Hash(0x00000000000000000000000052613d9a7d24be6d662ee05f3d4b849fe31df67e)", + "P->V[66016:66048]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1609: Hash(0x00000000000000000000000061a4e4d1c242159f2b8443a7a3e6e0e29b5efdc7)", + "P->V[66048:66080]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1646: Hash(0x000000000000000000000000ca2fc9996e2ccab423eab228654ea17532f1ced0)", + "P->V[66080:66112]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1698: Hash(0x0000000000000000000000003048fd41efce66c8d7bd8a398cd98aa9354148e0)", + "P->V[66112:66144]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1739: Hash(0x00000000000000000000000068cff813ed875a33fde2f22b9453cf689e9f9d31)", + "P->V[66144:66176]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1760: Hash(0x000000000000000000000000190d7e265359c78b8e272390ea875e58256858dd)", + "P->V[66176:66208]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1852: Hash(0x0000000000000000000000003048d72ee4c368eb5792e32b3c0f6622e1955eea)", + "P->V[66208:66240]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1862: Hash(0x000000000000000000000000ad7dbd96c4601e557e55d878b87534ce5c442efd)", + "P->V[66240:66272]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1879: Hash(0x000000000000000000000000a440d0e0c365e60f3022a3156b9e8eadd8390706)", + "P->V[66272:66304]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 1925: Hash(0x000000000000000000000000bc8d93f39346a52af7c0454efd96c3739b7aa95b)", + "P->V[66304:66336]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 513: Hash(0xef28f58aa099a6c7e2a0839bfbaa24673328297)", + "P->V[66336:66368]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 517: Hash(0x17f4fde66839849b14459a72b019c7f4880899d0)", + "P->V[66368:66400]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 520: Hash(0xb34d352383c4e70eb8b9b7e83b50177ee8b5984a)", + "P->V[66400:66432]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 581: Hash(0x4b685cabf929ed33c0b41b80122bf64848e45a44)", + "P->V[66432:66464]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 696: Hash(0xcabb361be8102d646c66ed1001aeaeee6b75fe15)", + "P->V[66464:66496]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 705: Hash(0xd61a9eda96496f9129f472f2deee78fec2263db1)", + "P->V[66496:66528]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 715: Hash(0xf5c6a7ac49f80dd9ad9f71a297ff00bb0092f5d7)", + "P->V[66528:66560]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 737: Hash(0x8c7df3395cd4c5c7c385245c34429dd2e2b83013)", + "P->V[66560:66592]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 805: Hash(0x498f031800b930dc99869248d26ca7b4363938b0)", + "P->V[66592:66624]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 822: Hash(0xc43e50e50d5b2d6ce2194ef250ff59171efb15fc)", + "P->V[66624:66656]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 848: Hash(0xb8333d0f9558ae3638be130be0fd0fd61908c125)", + "P->V[66656:66688]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 868: Hash(0x66374d19f0e5aa7cce82dcfc39b1cd7532b68a22)", + "P->V[66688:66720]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 881: Hash(0x5ef34c82f19477e18e21bca553a57806d7f31c26)", + "P->V[66720:66752]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 927: Hash(0x8b7c61f55cf7608e86cddc533e97d78d5d5f5c85)", + "P->V[66752:66784]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 930: Hash(0xaf90bd4f58d96e678175bd989c6da9f730e954f5)", + "P->V[66784:66816]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 938: Hash(0x994f51d4a0c36faae2f023e0c72eb525988c7407)", + "P->V[66816:66848]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 963: Hash(0xd615457baf76f54e0e54903efbf3aac8aa1b7a59)", + "P->V[66848:66880]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 257: Hash(0x6f142e33add7c0476775c3f7971509e7a20a25245e970a93ef875fff42de828)", + "P->V[66880:66912]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 259: Hash(0x5632f99667cc7fa7738979880233629a04496c1435c130e7893c9d47a6c89b1)", + "P->V[66912:66944]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 261: Hash(0x57afdc06bff4a9a0cac4e82874e1b9cabdc4e68ea0636830dc26e9f85c43ad9)", + "P->V[66944:66976]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 291: Hash(0x56a7af867d3389f1c8898a6d1bd04683fbf88fc1c7decb19a71a9fe724f954e)", + "P->V[66976:67008]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 349: Hash(0x437a5946e7a4d5f1f1f6522e89ed7ca62144b1e81fb04068aa35885ad95bd6f)", + "P->V[67008:67040]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 353: Hash(0x8ab386d47296d7db6564c4d541a94910401a3fa99d5b6990fa0b7ef385939c)", + "P->V[67040:67072]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 356: Hash(0x3c21657bf3707883920477d67d92fe83f805717e60bd37ebc76666181cb12a6)", + "P->V[67072:67104]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 369: Hash(0x4077fde55503320d750ee39c81f04d3cfac8bcd2c247597babd5cb2ee71efb)", + "P->V[67104:67136]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 403: Hash(0x63522be998c93a676782d5f6272a127a903f7c666146e39e45b91bea5060709)", + "P->V[67136:67168]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 410: Hash(0x11748fec047fc172c9f30c1233d291553e852596ed36d63dc7633e0605a314a)", + "P->V[67168:67200]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 425: Hash(0x507637c60f76a4ffcd03cfca285c16ea670a650c5f96ff4f59d7196cebc3814)", + "P->V[67200:67232]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 435: Hash(0x295edffc67c8e03ea7c10336b56d35c07fd0d126e553e5c51e65504c7d6e606)", + "P->V[67232:67264]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 441: Hash(0x9cff9ee3d399c51f8f1c874f95d9e9e8198839fb6384c5538655118ad9642f)", + "P->V[67264:67296]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 462: Hash(0x4aba6234838a1a45d5ca2b7b71b02a42957eb005e75f16b9d5719c5ac4684ad)", + "P->V[67296:67328]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 464: Hash(0x35f2b832be723c522ad2086b5cff0f43cf1fe1afc1b6c92a37157423f94ab2d)", + "P->V[67328:67360]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 468: Hash(0x6dcd40b3acbff549a5ee61540b28124a5313d961697eaf315616f270f31fc)", + "P->V[67360:67392]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 480: Hash(0x4a545f7409c3b4578369de5db6e62fce191f03e3865368d910a852478f8bc6)", + "P->V[67392:67424]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 131: Hash(0x4bcd35e7a86294e0dd34ae4ded3f071423c694acdb9408a25222f8d46234561)", + "P->V[67424:67456]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 144: Hash(0x6a7c017f9a5879b5125e14aaebe1500ff9425dbd8aff2f5ef45c8a8c5e4e608)", + "P->V[67456:67488]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 175: Hash(0x74f3a9bf986c1b521c959d8519b4c2f9afb3e6fd7ba6e4683ba9247634e4449)", + "P->V[67488:67520]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 177: Hash(0x640441d0ec987da6435df694cee4909dd1c52dfaf37a8603feefe907301e63b)", + "P->V[67520:67552]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 179: Hash(0x37bfd694132d720ef70fec22afa28ebf5f99d64b2fd898fc6ed642a8689b794)", + "P->V[67552:67584]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 185: Hash(0x1d467f38a9e734f91b8be41a7175eb95a4c145f9f3368d60282bd37b2db1306)", + "P->V[67584:67616]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 200: Hash(0x89500f615e80dde73aa7fb6b57f12f48c67e82b7c9bbed7ff7e2b7c97b259c)", + "P->V[67616:67648]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 204: Hash(0x1846066e889f92d758f0134fe2c9f5ecca5a4b0f3a6fa961f52f6a38ffc360c)", + "P->V[67648:67680]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 213: Hash(0x329adb470edd00f8069d9579419c0eaec4f8c03091647d005b5cf9a34c67fd)", + "P->V[67680:67712]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 216: Hash(0x576533a1355cc7210df601a222cc17da954920434929cd4f09fcdfb3b2cf7e4)", + "P->V[67712:67744]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 221: Hash(0x75335c0fe60596835813f3de0ca706249cde67e8f359e33ad83dd46623be72f)", + "P->V[67744:67776]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 230: Hash(0x6288b094682fa032edd2bb684075bcea6766f9582e322aca1d7d2c886f478fc)", + "P->V[67776:67808]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 233: Hash(0x60a6055da736f53dea778ca41addc19f33e9eea1266514eebbc51b6cb16aa39)", + "P->V[67808:67840]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 235: Hash(0x734d082ea6d956a3635dd34a088b7ec149484d578f63a71ae2c26fffeb3e6ab)", + "P->V[67840:67872]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 241: Hash(0x29559c5767994b480f9f2809b724a9468098ec099c3b476cd45b2366e1ed07)", + "P->V[67872:67904]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 73: Hash(0x4df15e351c18695e7891a2ac65b5af66bc044d53aeacdd2c94bf628d3356ea5)", + "P->V[67904:67936]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 86: Hash(0x59052fc2cfbf45cd24a0872815e887afe58f01a97ec60113109464e61e37f9b)", + "P->V[67936:67968]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 93: Hash(0x3a976afc475e2f540575fd88395d54e8f4db30601bb323b8f73b9a07a2a71ec)", + "P->V[67968:68000]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 101: Hash(0x16b15f54e98b54091b7263ce9d95227b674b0fa61fc66c15c9d3783a1944bd1)", + "P->V[68000:68032]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 103: Hash(0x73c77e59dd3e5c6a380b9143e7f999482f55c70979ce724c6342479a448286f)", + "P->V[68032:68064]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 107: Hash(0x7683d6f7fc86627a6eb64db139a3ad836443a425bf318a63741c1bf84cfc16d)", + "P->V[68064:68096]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 109: Hash(0x55a2604d6e2787b8353babdb05d2715553076ba4f14c910fb3e0577ccb0e583)", + "P->V[68096:68128]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 111: Hash(0x72baa739aa6be1d9b53edaecf24b7afa56671f665cb2eb212fd2511cd196ceb)", + "P->V[68128:68160]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 114: Hash(0x27bace33b0ef657afccdebcdb27f9db070fff3d3773fced1efda1b2c2d125cc)", + "P->V[68160:68192]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 121: Hash(0x3e522b51802a70570180fb30561c3435bec8a5a5c81e383af38d94cb45731e3)", + "P->V[68192:68224]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 33: Hash(0x5cdd47d956c345cf854697abec382e5d3e3e31f5132773bafb0bdf178c246b6)", + "P->V[68224:68256]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 37: Hash(0x7a20723f9eeade69391a7e99c3aac14fc6d06bddc84cf11d6f9b69ef5b0f620)", + "P->V[68256:68288]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 42: Hash(0x75cc56045202e11da29247a2d4fb655452566e1168d1225bbc0ddf215f1c639)", + "P->V[68288:68320]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 45: Hash(0x751adff8cb66bc39d235f5babddaf3c81285a210a0f7bcf8b7b0a88a62264b8)", + "P->V[68320:68352]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 47: Hash(0x484ae970b131880501a3d317dfa2cb8eba3df7c73da33d0c217eee0ccbcac33)", + "P->V[68352:68384]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 52: Hash(0x78ed0b4248f41f56bac1c39142d7b3c02baf20cfc05474bdf063420eb8e34d)", + "P->V[68384:68416]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 56: Hash(0xb7fbbdfb0be66f04d3ea6cf059bde5a62b5f915d16a503af2b82557fb0549f)", + "P->V[68416:68448]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 59: Hash(0x3e79a5678b1082e385b7432529f6759086eee045ca496d80422de455db3277a)", + "P->V[68448:68480]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 61: Hash(0x78abac60b86037e171004305b31600588d2ec1a15a452c16ca70a01eaf0da2a)", + "P->V[68480:68512]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17: Hash(0x6ddd4e03b4bc2725159003267aad46385171e5b1dd4cb7c5ad1caa7f507cbcc)", + "P->V[68512:68544]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19: Hash(0x7aeb0ae98bc5405de3918ea8f3f25276f98a45df79e1f66135c6807e1a313cf)", + "P->V[68544:68576]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 20: Hash(0x3cad6f28af41390fd5824ec1d9956f97cbbb562e02a16fc02afc41e55ac7a23)", + "P->V[68576:68608]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24: Hash(0x7a353fa32abdf1062e307bcc98e55bb2598a5fd6d516aa85cc36a3c047f0eb5)", + "P->V[68608:68640]: /cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31: Hash(0x2dde0e4e47338ceac4e3f8cd8f860633449f1bbaca3e042cfa309957291a4d)", + "P->V[68640:68672]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 0: Field Element(0x5ddba8abdbfe74acac48a37fc39a4973212c2def1673615a02d024e8650726d)", + "P->V[68672:68704]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 1: Field Element(0xa434b9f5a59013491be716e47a80f6ad50e5aaa03bb5412c60958089175e60)", + "P->V[68704:68736]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 2: Field Element(0x1b3b26f01e091165f2ca93889d773eab6f41bedbef12ca95322ef4d1f50c24d)", + "P->V[68736:68768]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 3: Field Element(0x5feff9cb2f911837b436be28154cb401e1512f1cecd9054ca3c01c0c6fb8dc6)", + "P->V[68768:68800]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 4: Field Element(0x60c7ade3a0774671d161459e5ee46087c88056a27bbbb47c715de116951f44e)", + "P->V[68800:68832]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 5: Field Element(0x72badcf9d142566638d19f7506e4066a8563cabc464c031666277c51dc3ad2)", + "P->V[68832:68864]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 6: Field Element(0x7cd1d39cd40c699c2f9a9c7fd5983ecb2061622918c09f622c0919346fd010d)", + "P->V[68864:68896]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 7: Field Element(0x3b4e404713c278cf724472fa4f63495998c98f64005c696de4bb5e20974c224)", + "P->V[68896:68928]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 8: Field Element(0x752c6ed1121ecc1b55cd47147ac7c53b4e65fef487f0c4d04a6089936c1e25b)", + "P->V[68928:68960]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 9: Field Element(0x36244323b543a7d712208565c6b7517eb12c0b34521c2f0b0bec935fab94c48)", + "P->V[68960:68992]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 10: Field Element(0x904d1495707437ec9cf0b09f30e686c2ae999bb5161e37e28782c12c7ac137)", + "P->V[68992:69024]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 11: Field Element(0x6282367d1ce8b529d9fafc30ae293629fea457e7f840cc0ca68c77369f6cf99)", + "P->V[69024:69056]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 12: Field Element(0x3f3d7fb457877cf75b7f81b30f512aed339fa4d6b52fc38584672fb6a9dcd78)", + "P->V[69056:69088]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 14: Field Element(0x7a5f71caee24599f46ef8df6b6f1ecb60ec0d326ad412aa87dd07f45e295f96)", + "P->V[69088:69120]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 15: Field Element(0x73647f006cef9f57e4858332e8639e95b79372b99412fa6280c989cde50115f)", + "P->V[69120:69152]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 0: Field Element(0x6adfc5f33b74140930a635f67e69c62353157918cc70d618d33474a5c3ef36a)", + "P->V[69152:69184]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 1: Field Element(0x24796005bee1f8b214ebcdaf7b2fb54f7b9b9f1dfef4453f836432abad4a906)", + "P->V[69184:69216]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 2: Field Element(0x137d8b507f245e6408c6ce4cce07f302453adc160df2d65ad2c82a3307a7b0d)", + "P->V[69216:69248]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 3: Field Element(0x4125449fd766c8f3e7e0eb1a1c8cc53a928a0bcec5ac2ef0414d4295c784045)", + "P->V[69248:69280]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 4: Field Element(0x65d6de60562d6b124030295a003f16ec768e818ad07356041c85900fcc9edac)", + "P->V[69280:69312]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 5: Field Element(0x13c040a654df0ffe948f3344a6f3f4fc6e9c37476a93ab3c0f892e65278947e)", + "P->V[69312:69344]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 6: Field Element(0x169842b654655706f4a5e1aca18ab2dffee83cf23179c88798ac6674835260f)", + "P->V[69344:69376]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 7: Field Element(0x79d1bfd31f8ff0ae5b3f6e4ed835165ab20e452dcb948424fd5e10160008c01)", + "P->V[69376:69408]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 8: Field Element(0x58cba124129a0bf1bb96f19fdd43a1db8e0997e3a6246076fd848c523471646)", + "P->V[69408:69440]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 9: Field Element(0x56f5b7d01fcf7445214cece525636633049f3249253a8e6ca6465a16d2b43aa)", + "P->V[69440:69472]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 10: Field Element(0x6c70426ffc6664f5390b7336555da7970fe11e3a6549106ad6f46859c192a25)", + "P->V[69472:69504]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 11: Field Element(0x1929999624dc83bae5a9fc80905dc4a462ac1bc474ed549ec2e509af80ce096)", + "P->V[69504:69536]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 12: Field Element(0x32e53adcdc31d524d5f136c50960c01fb8534dd2d9ebabc26570b88c3a5ff35)", + "P->V[69536:69568]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 13: Field Element(0x3a02fdf84449a24d98aa35f59805058f1c84d0b2f6c0b8f5724898f96095292)", + "P->V[69568:69600]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 15: Field Element(0x6c3131f54316b8b463a9111ed9eb5991b1e6e8b8bd8b5814f20bcb666eebff)", + "P->V[69600:69632]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 0: Field Element(0x67c98be20072e45b15670fc9d2ba322273ded1714f3bdb2ba05aa18ab32e4ab)", + "P->V[69632:69664]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 1: Field Element(0x6633c82adcaa94d64a092285421a325130b087e65836b0bc1f447fed17f9ad8)", + "P->V[69664:69696]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 2: Field Element(0x7e5271323b781e83ce22dd3acc38c6084227f71a59b110351acdff2712349d0)", + "P->V[69696:69728]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 3: Field Element(0x336c3d43d77b953a2e9f6b39d65c03501945fe9842e739521c207796f356961)", + "P->V[69728:69760]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 4: Field Element(0x57ef776fac630b93517ab5e724468dcd53ae80a2a3ca586f852e4578e9eb225)", + "P->V[69760:69792]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 5: Field Element(0x751fcdb32a7a77db3a2102af517eb8525f8d36c38c9a045ab30a27a2d0aa35d)", + "P->V[69792:69824]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 6: Field Element(0x42c08fd4b2847fb0e4c9a16598a2dca4096a601370115bd33d0571c59051e9f)", + "P->V[69824:69856]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 7: Field Element(0x5ee6157fbf55e3b67a836d474bb24067844167928e500f9bb7ab425f235bdfd)", + "P->V[69856:69888]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 9: Field Element(0x1d310aee0f5085e4803d8c875f3a8b0a5dbb7f7f150a4904d566c6ba97635b9)", + "P->V[69888:69920]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 10: Field Element(0x7e301ff502af62704a4755cef6063da264a621f8e92350ed74917df0b44735a)", + "P->V[69920:69952]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 11: Field Element(0x2660a5cf4ffa563513680acb4120f50c9aa4673cecb80740c8eca705b000a32)", + "P->V[69952:69984]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 12: Field Element(0x2b0220ee3360f5b77f46acb32c3f1eb12980ffd4055a1485dd8e32fcb8af814)", + "P->V[69984:70016]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 13: Field Element(0x7ddffbf6f68c3b637a83e923c271ea1616040e9bf7cccc12471026ba95caad1)", + "P->V[70016:70048]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 14: Field Element(0x7d0cc6abcc738e29abb5498ef3528e66da43f2ac4fa666696606a1d0588f848)", + "P->V[70048:70080]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 15: Field Element(0x7a0400f5e34929d92325032e85183584c4a20b59b1a2bacae182e2f70f33dff)", + "P->V[70080:70112]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 0: Field Element(0x4a27bb9f4f690fde17ea26050967d09948976c80447d9bd018f96421f7cef30)", + "P->V[70112:70144]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 1: Field Element(0x6c6d8cf7a5c54f553ae7b2c4950479d504134692ac11dfe72a53afc316b3f20)", + "P->V[70144:70176]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 2: Field Element(0x502fa99b48652486923c93b228850bde6b685db9d5cdd87d435027674c99bea)", + "P->V[70176:70208]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 3: Field Element(0x75ba53bc021d2bbd03116bbfedf021b5bbb0723d259f58151e1cbc4ad68019a)", + "P->V[70208:70240]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 4: Field Element(0x3d61cffb82d0bb5fc49d171c0d6788f3b879b3d6dc731b5f0c462be9d9309cb)", + "P->V[70240:70272]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 5: Field Element(0x1eb763427c94aba2ac9a6c1d4999575c9b0908a7a8b6c68e4b7cd8b209ecddd)", + "P->V[70272:70304]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 6: Field Element(0x1d81a44ccc885256167be617d874ce77b467e0154276b6876a052cfe935c26e)", + "P->V[70304:70336]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 7: Field Element(0x6027e71f7dbe496b3a5c8652425b1db436c38b49eb80808ff8da0f1de2f67d)", + "P->V[70336:70368]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 8: Field Element(0x1cf6536e85b0640240aa0c0e37b1e28a79a24d0dc5905c0821ba9f1b41731ca)", + "P->V[70368:70400]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 9: Field Element(0x65a57f075070cac40600359ebe1bb4e9ce250bce419ea6d27b848fdfa2ba6d5)", + "P->V[70400:70432]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 10: Field Element(0x7cad28c87a7bd187e466838c27e953f1091a389fe3dae9296000248cfb7c69a)", + "P->V[70432:70464]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 12: Field Element(0x460dc5cb237c65ebba3ec32edf4cd3a9112bcb70e97a6b5fe7f53cbc5fe56ca)", + "P->V[70464:70496]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 13: Field Element(0x1af59e9866d3d4ce2df4dd47179bc7317f6d7d39425fe6433677ddd6e91a505)", + "P->V[70496:70528]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 14: Field Element(0x7e397d396c700362e5ba1a1bf192f2a543fce7efec76632cc27ad035ef81913)", + "P->V[70528:70560]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 15: Field Element(0x40652bae36cce09bfeb6ed8375c6d06fd3ea628315505d53ddf12e47a5b1fb)", + "P->V[70560:70592]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 0: Field Element(0x1ee8183858f0ff2fd0d66a72b5f23020e2967d0da18f70f9639129686b3c85d)", + "P->V[70592:70624]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 1: Field Element(0x1b18b35fbcc9591fdc6caa6525302251853b853a53060f314c7634259af869e)", + "P->V[70624:70656]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 2: Field Element(0x79e403e32ae18a789b043f0c5d8c5ff3d5ff926fbe03d9d967b331f68088e32)", + "P->V[70656:70688]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 3: Field Element(0x6c8055c4066aae3df894404f9a272f9f154a7a36cfdace160e31cb6b63b06ca)", + "P->V[70688:70720]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 4: Field Element(0x1e02b25580b34c1cd439f8e6fa885d881c3137075fb02ef8faaead236055034)", + "P->V[70720:70752]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 5: Field Element(0x56a9ce8c1f1ea3727826165a17746704c5a043874667691a2c06169cd03d5de)", + "P->V[70752:70784]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 6: Field Element(0x61f5cee36942a10c831428a7dd524c21d1c019e1693e978044e9cd13b00b22c)", + "P->V[70784:70816]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 7: Field Element(0x2bfb6908ac6f1c4d7f21f427a597eacab204f1804851730f0a9933fb5f2547e)", + "P->V[70816:70848]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 8: Field Element(0x3bdbc6981699895b5e5073a252ed3cef73c3c9c5927b9eb9fe9be1922e4549c)", + "P->V[70848:70880]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 9: Field Element(0x7f89f68e1e2e2467dbd307374569a217a144def5a0330c31760b3f317b6bea1)", + "P->V[70880:70912]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 10: Field Element(0x62b0c58003a310a940cb0ecfb6f79d2f82f42a63e4146abc96a9cb146a0406d)", + "P->V[70912:70944]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 11: Field Element(0x27efab34d15eb0dd8540a3906d52195f9cbc62e3b0d4c810d5a9415a4a830db)", + "P->V[70944:70976]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 12: Field Element(0x73344f066164d5f5ca4ebceacf244863b991394748adf3cf85caab23ab40992)", + "P->V[70976:71008]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 13: Field Element(0x79abc9257abdd275e08e4322c54843a25684b2a44daae4186798c78d0e8e3a8)", + "P->V[71008:71040]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 15: Field Element(0x659aab2412a52bc1f772c07e4131c273a7677254fb04cb62e92dd7842659e1c)", + "P->V[71040:71072]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 0: Field Element(0x6bdb3a52f70841289c7225f3685aeb8a1780fa9bbf8018afbbca6554cab9ee1)", + "P->V[71072:71104]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 1: Field Element(0x53598db4bb0d5d7f1281154ee1a4986ff63360b88be35a8feb26415ab309785)", + "P->V[71104:71136]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 2: Field Element(0x2b59e840b4ab548922e0a24f50315246611dacf3b9867de58bafaeb18e39462)", + "P->V[71136:71168]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 4: Field Element(0x6ccb03fdd51ef9119825be95058527795762f460ace5f937dd09f014e6bda1c)", + "P->V[71168:71200]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 5: Field Element(0x3df5ef8ec0c21c10603806b5a07b00a6e53563debb48abdbd741052efc63e1d)", + "P->V[71200:71232]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 6: Field Element(0x2368d39c25540bd8b1fee24ece12079678647c48d2e900c33f8291a8b0d66bd)", + "P->V[71232:71264]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 7: Field Element(0x1e7c496773beb08a690e3b44905e2133e03ff7b0877f372aec8ea8f8727a1dc)", + "P->V[71264:71296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 8: Field Element(0xa8cdca29e97c67013c2ba5e287a378e768e4625d87756b305a180d88b2e85f)", + "P->V[71296:71328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 9: Field Element(0x27a55fd947964e2e041ffd0823795873f6ace8e842cce720d384b034d007ebe)", + "P->V[71328:71360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 10: Field Element(0x764889fba108c4efa22a24d607f7ad31f32bf802c2ccf43f766e01d07ff5d80)", + "P->V[71360:71392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 11: Field Element(0x1d69c71d110129ae8a915a6c2e0c8084b43562217f3f85149e3195d7e945527)", + "P->V[71392:71424]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 12: Field Element(0x78e4cfbc9714f144abbc03b3b4a50cc8110f32e2eab8588dfe24eb078821551)", + "P->V[71424:71456]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 13: Field Element(0x32c33dbc423ed1ff144849cc4ae7f71f5aaccb5e4cb6a8fce539c3b04ce274e)", + "P->V[71456:71488]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 14: Field Element(0x5d4a9b4a272bb074367e3e3c2e675deddece6183eaab6585152c4af0b412568)", + "P->V[71488:71520]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 15: Field Element(0x3b802ca69ba085c1991c5ede2570f0048a71f75a7f42381032c83620fd2f500)", + "P->V[71520:71552]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 0: Field Element(0x23d9e5b5669d45639e647f94d1ca4f757ac9b265f332038516ac76950415f62)", + "P->V[71552:71584]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 1: Field Element(0x1083ae7f1e413c06a56b50a7b1bef777fad53ba49d2b7898c48622dbda3ebe5)", + "P->V[71584:71616]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 2: Field Element(0x2f9b8f437d1f5b0e23a8eb848dc6373b4906ae8b9577a610e5c97e6a9ca23c9)", + "P->V[71616:71648]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 3: Field Element(0x5ecf85330a8361a1099fdc6d84aad666f4f7e58804de590c4cfbd337d309bd1)", + "P->V[71648:71680]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 4: Field Element(0x2c09712079e25c37ef02bfc4a375a22546551e625a9712716adf03d51726357)", + "P->V[71680:71712]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 5: Field Element(0x56d9bdfbe0eebec08fac0e846860120323a05d42a6f7f4cb25ff612aad767c5)", + "P->V[71712:71744]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 6: Field Element(0x692d35b9ecb5f97d0d4bc7bac654b2cc2395b2d6fbace5ae246ef32312a37c1)", + "P->V[71744:71776]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 8: Field Element(0x3067aadf4b62b4abf5bab8c157a6f79415023b2defea61d6c92af020539c70d)", + "P->V[71776:71808]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 9: Field Element(0x54cc90b96b49cad36eb9fe12f9a8cfec3866bcac59c8eb45e684b9ef3b18b91)", + "P->V[71808:71840]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 10: Field Element(0x46d111d2453ea7e38b812294d6b3eb3df9f864f32f5c0cfab970d7f3edc030a)", + "P->V[71840:71872]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 11: Field Element(0x1110cfed15991ac13ad27336f56c08f7e5d43f3042f8d9fa952eb1801e71a83)", + "P->V[71872:71904]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 12: Field Element(0x427fcab008d312ba8a707484d91cb511035bb704077297c4926d8e2508727ba)", + "P->V[71904:71936]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 13: Field Element(0x80ff1bb5543e94cd5d1a29ea74fd5f819653116913dde054c0359491dabd25)", + "P->V[71936:71968]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 14: Field Element(0x3547fb7c70beeee6fab9f2edcc7a18b2c2a1fd04623887e0ec963ed090bd12b)", + "P->V[71968:72000]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 15: Field Element(0x72fd8f33782e2df51052c4979be04a4c3cbb09a8a5458296069407cfb73a7ff)", + "P->V[72000:72032]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 0: Field Element(0x7f7b74ec94e1c26db6388bc38e1dcf85014e379bf07f29ead602126dadf8f60)", + "P->V[72032:72064]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 1: Field Element(0x5788a9f1b64c18067a2169728ab1bd22be85f2f141fa9c63308486f089b73f)", + "P->V[72064:72096]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 2: Field Element(0x2f31443c0b38e707b0db3b496d671d0a4fe63e7ee4d1872b05cc81906ee5760)", + "P->V[72096:72128]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 3: Field Element(0x670d0c24e65573831f840bff8ca132054452ea4b8cddb76a899362d2bb57844)", + "P->V[72128:72160]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 4: Field Element(0x76462e235ddb1f3010ebbbe6718c4a2fabfc5962679d7a9ddc7533868f1c241)", + "P->V[72160:72192]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 5: Field Element(0x6812bd0d94548df989dbcd88c91c89bb16270948f631d6b2f3be00f7bd41c54)", + "P->V[72192:72224]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 6: Field Element(0x14c8ef38f08ee24c21bb4b8ad96d2567cac44f1dd97182af8169958ec6231b7)", + "P->V[72224:72256]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 7: Field Element(0x3492cfdb02836b7eca5e5196b94d4f43520a54f0be1ac8c163566327fe3d0f6)", + "P->V[72256:72288]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 8: Field Element(0x1a07e0fdfd1e0b42e18d6d508ab6961fb75a123fd87d916ddbd840bac9f61aa)", + "P->V[72288:72320]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 9: Field Element(0x47c29a5842ab4cc06706fa9c42f12002f1f78e5c8dfe2e7dba719ce1b69143a)", + "P->V[72320:72352]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 10: Field Element(0x4a4a516b424e12d0896b700ffd559bf6a9240eec38f8b07c5021c1ae7a23a62)", + "P->V[72352:72384]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 11: Field Element(0x44407d81908316766fe5fc52ed2bb302397efea0cce5ab84b7477a85146cc99)", + "P->V[72384:72416]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 12: Field Element(0x589165b2759c211b5aca30aff2b4c8e5fce52a88e0316dde89a608e0b5272de)", + "P->V[72416:72448]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 14: Field Element(0x441e6f5fd5639b8ac2dad5354973fbd64b27dedd9fa54c71546585fc07393c1)", + "P->V[72448:72480]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 15: Field Element(0x59e32d364e200183125ecc25fa3d0d5b945b39ad0445b17516362ef20bc1897)", + "P->V[72480:72512]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 0: Field Element(0x36de80821102c3048a87167ec910c476e1eb12a3f7047bd16b2911280be55c0)", + "P->V[72512:72544]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 1: Field Element(0x65c7e975ea9a8cdabebea01d0979367c51379a71567e752e442b72ae648cf6)", + "P->V[72544:72576]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 2: Field Element(0x20aecbbee4c8e2e8baef20f7d9f85f130a81317ed79e13e6ce9d6144d99ad96)", + "P->V[72576:72608]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 3: Field Element(0x2c9fe2808d4cbc1ba818a533d4841270a7bb462dcdba129b5434a98b105feab)", + "P->V[72608:72640]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 4: Field Element(0x7272965d391b1efeb992b9f3640f3f81a4a17bc6460ae8997558a36ea29c0bf)", + "P->V[72640:72672]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 5: Field Element(0x6a62fd2d7ae1833639fe25430c425f8671be5070dd175a30616a97c052f007c)", + "P->V[72672:72704]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 6: Field Element(0x7ddbf6c39067396bc959ae1d3dadece8841a3014fb58d2a525a45fe515b2efa)", + "P->V[72704:72736]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 7: Field Element(0x7a083a7874c308f9ee8b9485eef72807c249c2b0357bd97b1f8c11a2aeda8f3)", + "P->V[72736:72768]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 8: Field Element(0x1466bea4dc9ede1d3661b8b85f0031aae3458f00bf63e421b050e204e052a73)", + "P->V[72768:72800]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 9: Field Element(0x561b664a217887e325941fbac4a7bfbe60e67068667179433717f3761c4eedf)", + "P->V[72800:72832]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 10: Field Element(0x3469d2bd6a7523df7a27a8d5a6fcf8e8ae76f3561b61b28952956e6fe561760)", + "P->V[72832:72864]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 11: Field Element(0x542579f7455f93c1be87e4c7678cbc529590f58d72cb7ac4ee77491d2901cca)", + "P->V[72864:72896]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 12: Field Element(0x1f4239bc69aa58a99dc332dba9918ff4e91113219092b4e1bc0252c294905ce)", + "P->V[72896:72928]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 13: Field Element(0x49f506e09706962eb47eb7919f385130e2bdd8d9dbed4f70023ba2ee16d373c)", + "P->V[72928:72960]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 14: Field Element(0x5c342820fd4e4699f7371d80b044b3028c3b357aa9f14412ef0449c548ac362)", + "P->V[72960:72992]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 0: Field Element(0x3e61dfd824da71050baa10d1b4b82257f0ae0c38ee362be9bba75ea48861b4)", + "P->V[72992:73024]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 2: Field Element(0x14f6520178d2cbbd0893fc6afb367a40a1615c9e588914695ffb1ba3db092f0)", + "P->V[73024:73056]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 3: Field Element(0x29b799451f4f70bc8fdf68af994f45178d6627019303c6d24c2d8a81c1eb8a7)", + "P->V[73056:73088]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 4: Field Element(0x4970eddea9876d1891f27c2e6155114950a4371ea45375d3efc9a4d91186cb)", + "P->V[73088:73120]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 5: Field Element(0x18fb52420caa49f6e5ad592297651a7dd1c918b822036eb0db67832b8bdedb1)", + "P->V[73120:73152]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 6: Field Element(0x1fa55f040b4ff404e9f1e11bfbb39d88eb28dd5feb8c2b4e5ea77281f4abd4e)", + "P->V[73152:73184]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 7: Field Element(0x7336b320696e23dd144af9d78df37c967c407004f214657faed556bf54a08b4)", + "P->V[73184:73216]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 8: Field Element(0x8d68ff2b64c68d1c3e230b086527e6fe95d5e102d84f22a14304884c081ff)", + "P->V[73216:73248]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 9: Field Element(0x1cf0d10484b144b684e629c0fac168c05800a0dd32d29a8caaf6e08e69a8204)", + "P->V[73248:73280]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 10: Field Element(0x3bc80457735ce527e86ce3378f2a2dd6c8e7c389c7c8e6912d27a9c768ae51)", + "P->V[73280:73312]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 11: Field Element(0x561854c05aad0ba79f9956c4974e63b82727b1aa540562292a3c03244eaa03f)", + "P->V[73312:73344]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 12: Field Element(0x6077214d45c06b968528629320c90ab61e5403207666b74bbe26bc353f3dc)", + "P->V[73344:73376]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 13: Field Element(0x7e138bc2281a6469abfd957e9904cc2c11544364cd371a37b476be8bb3c42b2)", + "P->V[73376:73408]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 14: Field Element(0x6ba460557e148750825e26beff462b165bcf96a9a1d7e3679436841cb15f88f)", + "P->V[73408:73440]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 15: Field Element(0x11e38c2792c410a6e220a558d70e02b6f33890075d2ad0e2968058fb67d5621)", + "P->V[73440:73472]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 0: Field Element(0x70c873e7b6efd1f1b2e16b88e16da948e8ec5a96f472b06e214abb391231732)", + "P->V[73472:73504]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 1: Field Element(0x1249101b02d6498aa420133fde1ac0ec31168853108f0e4baba34217d4ebf2a)", + "P->V[73504:73536]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 2: Field Element(0x3ad287411ccfa2916c84bb603b43a9aff5b0fa5ebf2fe662b36b440eae57286)", + "P->V[73536:73568]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 3: Field Element(0x2e993975cedc6589c6ff44b49cf4b21086d37ce7fd8feddf1dd6d6d6a062e8c)", + "P->V[73568:73600]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 4: Field Element(0x20fa537af2536fad5c4bd49ecf23e06ca15700c6324c8d9d6458ce63ca1af6c)", + "P->V[73600:73632]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 5: Field Element(0x56757ef2b1321c5ba043186d5ad970a2976fa3bce70b00d0c1dde599b56cd5c)", + "P->V[73632:73664]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 6: Field Element(0x6d9b25977fb44b362d2914b467f925050d90524ad591013bcb3fbe66b5ac32e)", + "P->V[73664:73696]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 8: Field Element(0x8e4955437a058d2ca65059103fe696be0d737544358b5038a338631ec6d162)", + "P->V[73696:73728]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 9: Field Element(0x3716375b101abd19ab893b48d5693c06c893df76bcde1957ee9ae1e28f6ddf3)", + "P->V[73728:73760]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 10: Field Element(0x101817ba35f528f309f5109dcca6842cf81c6e333ad12faad6c87c707abb27e)", + "P->V[73760:73792]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 11: Field Element(0x773cf23f8c478b92dc2f7925605a9a06df53782d724fb62db04d03ee79cf81d)", + "P->V[73792:73824]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 12: Field Element(0x59ab1f16bc2d6be8b04593d4dada44057bdb01164a21a0a3165daf79461710d)", + "P->V[73824:73856]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 13: Field Element(0x43bbf58d18451472c333fcc1a92c6452a3b72ae8016a899d8169971c11b2bfe)", + "P->V[73856:73888]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 14: Field Element(0x54ebc2dc61b4a8de61cb66751bf4d2a682cd83a88b54bd6b4fb88f4693eabdb)", + "P->V[73888:73920]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 15: Field Element(0x6d90c2f951901fd84a067b87551c6f764ea4fa1e8a9f1f38697a531c1908e79)", + "P->V[73920:73952]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 0: Field Element(0x373e31e976a65ee22c6ff021de0d05e905a4c0120c969a527a6331c6be5bbed)", + "P->V[73952:73984]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 1: Field Element(0x9c15410cb5dbdba275e9813fef2959f7911cb51b20b648ca2f2af33ec474f4)", + "P->V[73984:74016]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 2: Field Element(0x3dc359ab62f6b224a95a310551a00ea09bfe14a19bc8fd0b256c3783f299dfb)", + "P->V[74016:74048]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 3: Field Element(0x3d73ee58a6131186836bcf6a9964fba80d509ab1758d7516c6942ccd9b5c140)", + "P->V[74048:74080]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 5: Field Element(0x2e6c8f51b855113be1fe24ee33abeae8b557100d538e45bade404f19a98995f)", + "P->V[74080:74112]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 6: Field Element(0x5993f14a392d57e7f5410716fbaa010ad8119226b57150fddac787e8bcdc339)", + "P->V[74112:74144]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 7: Field Element(0x57e3eedafcde8c66b11a9219a3ec80cd896da38c58a8a5034fc0932266fe5fc)", + "P->V[74144:74176]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 8: Field Element(0x4784502b5b7ee341ce86503e7b30d67a6e2c4cad7edc6e3a73f4f739ba41052)", + "P->V[74176:74208]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 9: Field Element(0x240b74e2751558afd7afd3109d51d434c18c525c3a1865041414d35b16f54fa)", + "P->V[74208:74240]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 10: Field Element(0x31f09a80047674aa5025c527117e2607b9b3eaa5f5f1aa717d3684ee67b0276)", + "P->V[74240:74272]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 11: Field Element(0x26568cf76765406389679393956de882444f0513028571a087cc2feed017288)", + "P->V[74272:74304]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 12: Field Element(0x70dfa3142760734d6941347e3d1db0cfb8dd4a7f4f02a8a2e28561ec4401533)", + "P->V[74304:74336]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 13: Field Element(0x1d01a8861bcc40b6f4b629a02aaf953f7da20c7aa7d3b672320d7164db92152)", + "P->V[74336:74368]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 14: Field Element(0xc6916967836327509ee9e4bb49f09452271e1d57a007ee612f2c9ccc161653)", + "P->V[74368:74400]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 15: Field Element(0x73a6719d58ca538f14ddb96aa10d9f3e421d6cdd95a248d564799335a9dbf58)", + "P->V[74400:74432]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 0: Field Element(0x24e53f7595348e01ed50d3d7f22fd547df9e41f990d4e18480b4bfe8c5deb3c)", + "P->V[74432:74464]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 1: Field Element(0x484b23fdda98c51b474ece81831d47d77913844f57683be43115dc3d350bafa)", + "P->V[74464:74496]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 2: Field Element(0x57c50f72f8187359a9f2e42cd24eecac4d081c23e54e307d1b75c7051c6aa38)", + "P->V[74496:74528]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 3: Field Element(0x61dbbb240bf56f45d045d8c3403db56ed71bf42d439692ca324b09a4b651f99)", + "P->V[74528:74560]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 4: Field Element(0x24f5aca5d04c9d547390fdd08bed32af1f1a75d6b4f4026ed7aed0d4b096cbe)", + "P->V[74560:74592]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 5: Field Element(0x646a145e2c9a03b9346aeee10fc3f2b972dbef5271b73fb10c5ee811c2d9e36)", + "P->V[74592:74624]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 6: Field Element(0x2e371396207368f14dd66b7638a961c82453919e5493f69a6c365388c1c7632)", + "P->V[74624:74656]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 8: Field Element(0x706ea86ee77b1d752d20cbb2290f986a9846dd7f566c1a8cde13db774d9e44b)", + "P->V[74656:74688]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 9: Field Element(0x7900f90daffae4bee9b3274539f179271cbdef5d504e18a2a99155ae4928ec4)", + "P->V[74688:74720]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 10: Field Element(0x226b3d02e781e3cffbb6c111355744e188ad7b7585981da09ced0d2394ace8a)", + "P->V[74720:74752]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 11: Field Element(0x684e50899bec1fbc349516ec1878fee4182be3acec2e540155ce16cd69ea55c)", + "P->V[74752:74784]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 12: Field Element(0x72c007f699bef12cdb0762dd8c6c5cf5168c33bc058a408952001c6f46b2525)", + "P->V[74784:74816]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 13: Field Element(0x77e4acfe1a6b82f4377621a97df69e428aa6fd89d9db6729d86ac69470845dc)", + "P->V[74816:74848]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 14: Field Element(0x1cecf7b03bc71bab302e99b2505fce3e022a4e176f08f4c9418b2906a12f868)", + "P->V[74848:74880]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 15: Field Element(0x76761d71d14ec40a5a1e8fb35b629624a40c877bac79f602f391e5ee707a472)", + "P->V[74880:74912]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 0: Field Element(0x4357e24e44b7deecc5d677853841f706f524df10433cf3c35b73112b9bdad9f)", + "P->V[74912:74944]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 1: Field Element(0x4ee1618e8486b2608eea0564da207400cc69d414bfb6760e3392464262ac2fe)", + "P->V[74944:74976]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 2: Field Element(0x1874003127b98434e6c7b5bc24cbc518b73483100206d4579bd07802fc9dc96)", + "P->V[74976:75008]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 3: Field Element(0x2025e6ae93449b0973dce7454cb03addfa53ba70c25a32afaac47bb4522cec0)", + "P->V[75008:75040]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 4: Field Element(0x1c1d42c9fb71bb572070b542cb87516acb96deed08c5e1d343f07e27e78174b)", + "P->V[75040:75072]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 5: Field Element(0x3fce7c9aa54c96e7d653e4202317365c8a373aef2b1a5bf951f461400b35544)", + "P->V[75072:75104]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 6: Field Element(0x13a84790cf00401ddf3dc17cc0183cac0cd56df8a479a3229549b33fcafb845)", + "P->V[75104:75136]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 7: Field Element(0x6b28bdb75656fbbb951c7d2ccceaf5879ac4c29e386d9e705fc135df3ed4ed4)", + "P->V[75136:75168]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 8: Field Element(0x3d9106328d1eddbf75a5af3f2577af18dc1f5156f2984a23ba6741a86b44100)", + "P->V[75168:75200]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 9: Field Element(0x43dbc85ded49e7048c00a902672f5418409fed7eb3c67903705d6dd095c57c2)", + "P->V[75200:75232]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 10: Field Element(0x7074fb4613e8177fd3f94d3768d2e0ec6d81e3a9f4e3daec17dae836c79edfb)", + "P->V[75232:75264]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 11: Field Element(0x29e84e2be3fac92056842cbf2402b4b642368f9884a5233e890f0bd65b2034b)", + "P->V[75264:75296]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 12: Field Element(0x7cb16fac6ec971c408c3f49e29a5bd50797f962c251de0fdf4ea9b4dab55f1e)", + "P->V[75296:75328]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 13: Field Element(0x6f7506a904a4ce78198030a028a941dcdd6bba90798157cb7505968af32624e)", + "P->V[75328:75360]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 15: Field Element(0x69fce1740e04c49430e722df460b7b4a435b32f91ceed2f5d8bfc089597ea2f)", + "P->V[75360:75392]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 0: Field Element(0x4357bbd1a48fa286cc725e0b0ba49da94055bbe3e7b3540d53873b40b74f5cc)", + "P->V[75392:75424]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 1: Field Element(0x5f87a8fae68c16ce6a0811e5d6cb8b2941c4bc154b25542fe4880d6f1d60511)", + "P->V[75424:75456]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 2: Field Element(0x3d6b50fd16080d6a102c318bf30679dc4ce96bef7f0802aca64e6de86e44ccd)", + "P->V[75456:75488]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 3: Field Element(0x76a8be624618015c397f357c8ec4dfd8757954461e4e49b06ccee747629a175)", + "P->V[75488:75520]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 4: Field Element(0x18888f21e7ccf79e66a8b0a7419c56e95b8ea35e997d113deb096ca0694991e)", + "P->V[75520:75552]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 5: Field Element(0x4311e5b67c39b0ef8bea118fc5d833d3dcf1674d83b6d0e61afdef8662ea94d)", + "P->V[75552:75584]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 6: Field Element(0x1ce8d921a042b0b020d5dd68466a8abf2fea41427a3b95d2d2880a513ec34b9)", + "P->V[75584:75616]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 8: Field Element(0x6ce408ef6b4086cf0ff3950c2b9130d983d76a6d05043107a648a4db5b15b8f)", + "P->V[75616:75648]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 9: Field Element(0x112fedf889aa481039b6a30799089d35e939609b5a4056f37cc95758d2b488d)", + "P->V[75648:75680]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 10: Field Element(0x7215c3fcd25fd590efffc7fdf1bab1a8340ac1321ff17d92cc67985aca1e8e0)", + "P->V[75680:75712]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 11: Field Element(0x4a0a01a333af23b2bd826e2ec2a87b235a1186adf11f1be85120bb5d163486d)", + "P->V[75712:75744]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 12: Field Element(0x1b339abf062890936341a050c5bd31e64c607af5d3f0d165d412ad3a66c91d1)", + "P->V[75744:75776]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 13: Field Element(0x38ff46e6b98d350c6e2e69db412f83173cc93ac2414e6a536f7b11f89b66930)", + "P->V[75776:75808]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 14: Field Element(0x18b65bd968f8e356aff154dd20ff41c5c4db5fdb32c9fa4712aae9be8763fc0)", + "P->V[75808:75840]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 15: Field Element(0x742724c9c9f00040200303a00bccaa151184d1efe662fc4ef4d4abe18abff32)", + "P->V[75840:75872]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 0: Field Element(0x1610e9726351b735335f16f19590083b411a4b626d0f78af7bee899b63c223d)", + "P->V[75872:75904]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 1: Field Element(0x2a2566da522837659a743eb77ef14da0c8e5e3273a0b00722c5a2a74ba9fb69)", + "P->V[75904:75936]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 2: Field Element(0x30b84eddf5492dc4282e6f9a8df569defb78972a070aaa0fd654278050fd1b7)", + "P->V[75936:75968]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 3: Field Element(0x153dd6b1debf60b03d7d1b84f7f1d368ef745b07fe2f37af0cb8af2b9563dab)", + "P->V[75968:76000]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 4: Field Element(0x458b0f89e66bf91e54aa577630749b446ebef4c6861c1ccff92a8b7e834fc16)", + "P->V[76000:76032]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 5: Field Element(0x321fa1734b592190c4cd681ba75ec7ffee1928d95f20a9f4af8f4d87a7a5efa)", + "P->V[76032:76064]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 6: Field Element(0x2415a9a1ce0c1370e06121e547180827d5a56570032cc6e1fd74e46a20f95b2)", + "P->V[76064:76096]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 7: Field Element(0x6f1c9b69b2d273005f00decc325abbd7b2640c9b1a701d0e752296be604b150)", + "P->V[76096:76128]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 8: Field Element(0x53917c370c3d518820ad607f5d8f63b9ab8fde93b9dff482d6ad9e1150e87e1)", + "P->V[76128:76160]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 9: Field Element(0x58b0470891a5f49baff4dcb74bab6b5815227b401ea6de4a9c94c2842ade1c6)", + "P->V[76160:76192]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 10: Field Element(0x6809c64770fba5a116c30fb1c4cf994360cdbb34878fb027758b23150624a60)", + "P->V[76192:76224]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 11: Field Element(0x245fb56fb89cb5b0b414ba15ae926406e75fbc328ffa45b603127e54558b98d)", + "P->V[76224:76256]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 13: Field Element(0x34e2355ccc8a886cd5460b34912727a3bb96e03e67157e96a470031056ee598)", + "P->V[76256:76288]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 14: Field Element(0x2b01d9d594afd67331fea9c3a55b87c61c3174b3c1aabb795f66a7905cc94dd)", + "P->V[76288:76320]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 15: Field Element(0x15ee7953668c1213d775478df8c8e0775eb74bc4b2d9bdfec7dce2081abc9f9)", + "P->V[76320:76352]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 0: Field Element(0x245480f6b4cbc955fc2eac9dabd584240e1e6a9374900d1a91e450ca3e1c069)", + "P->V[76352:76384]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 1: Field Element(0x420fdd8dba79ee6f43c8832bdf9cd2e8faf17bea598e83f1dd71fc9b767dc98)", + "P->V[76384:76416]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 3: Field Element(0x1ebb5caaea5c4038e568861fec59e2ead91dc66c41dc31fae0c8e535101615d)", + "P->V[76416:76448]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 4: Field Element(0x3dad02b6894a369e53cb294c592a87fc13307b599cba7f2223a49a88bb84d90)", + "P->V[76448:76480]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 5: Field Element(0x12def0926672ff94ed09649873ac68d9a09749fef6e4081c1c3e5741eb74ef4)", + "P->V[76480:76512]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 6: Field Element(0x195bb2ff8004d7c37b9122cd880806a4d81def79fdb591b4fa7eed2b591bcd0)", + "P->V[76512:76544]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 7: Field Element(0x228178b5e973215edf114e7bfac1cf744c47da4a3c4b2a775b76003697c938a)", + "P->V[76544:76576]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 8: Field Element(0x55dbd7e915a23e3d1eda0ce619aef5eff1b1db060b4fddb6a469b396262d72f)", + "P->V[76576:76608]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 9: Field Element(0x16c6cd735c8789dee16a9ed96a124ee87ce9d6ff0f5d1e3eba3cdba277d2c6e)", + "P->V[76608:76640]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 10: Field Element(0x1d57bcb5556d059a1409543a134da81768af71b0e9eb6ca77092e1a5b3f52e9)", + "P->V[76640:76672]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 11: Field Element(0x6569366cb91e3f509cdf49c60f16257594a08b5a46b2e1a1c74e134009cec7c)", + "P->V[76672:76704]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 12: Field Element(0x18ea72c0fa081a310f00aca2354bbf3653bfce4421b50540b80470b6d5dc70)", + "P->V[76704:76736]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 13: Field Element(0x496807c7c16df12f02bef44f1b8feb1ec949398e0dcddb049baba62bdc0d6cc)", + "P->V[76736:76768]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 14: Field Element(0x6c375e8ea288e7226d5b580d8deee69baeda1cc3f69fa7595e7f036faa21e31)", + "P->V[76768:76800]: /cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 15: Field Element(0x5ed282856165dccfe757f2060628438817a2e9601480d6c1d28cd5f215acd4c)", + "P->V[76800:76832]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1048661: Hash(0x0000000000000000000000004f923b38b86f12e0521a6ab47e834093ed134b2d)", + "P->V[76832:76864]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1058337: Hash(0x00000000000000000000000013bf130a7da41dd457fd5f0003c36ca57763a7e4)", + "P->V[76864:76896]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1069041: Hash(0x0000000000000000000000004510d044fd72cdaf56dded4809c08e04ac4aad8b)", + "P->V[76896:76928]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1188339: Hash(0x000000000000000000000000299b0fe9600842cc8014914651488d77f26f1a7b)", + "P->V[76928:76960]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1429436: Hash(0x000000000000000000000000aaf0c9e73ef5eeef4c3019387efaf8a425736c10)", + "P->V[76960:76992]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1443715: Hash(0x000000000000000000000000711cb29faae745505da40ea754695e4b3aeb78c9)", + "P->V[76992:77024]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1462729: Hash(0x0000000000000000000000004219bf980dac6e16d020bd63d1786ee195653888)", + "P->V[77024:77056]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1508015: Hash(0x00000000000000000000000096e8c28fd1ae8ea5a1e0fad5bd1250400c350e0d)", + "P->V[77056:77088]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1647277: Hash(0x0000000000000000000000001d40cd67028a45c91b4fc6a324feb1bd0598cae6)", + "P->V[77088:77120]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1686861: Hash(0x0000000000000000000000004069a95f5f30ccbf8a828f8b4234e4d4132ccafe)", + "P->V[77120:77152]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1740286: Hash(0x00000000000000000000000019cc58782ff552adf11aca0a8b197d89c50aebb1)", + "P->V[77152:77184]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1780642: Hash(0x00000000000000000000000097dcab27499679aff1a802066c840594d22030a4)", + "P->V[77184:77216]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1803271: Hash(0x0000000000000000000000008305cfcb97730818598b5a4bbba46208ca6ea649)", + "P->V[77216:77248]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1898374: Hash(0x000000000000000000000000c541abc75305f0ee2202c45f6eb8bec8d6551d1c)", + "P->V[77248:77280]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1907712: Hash(0x000000000000000000000000d880e1833f7562d9b6f4d58b1bb2cab611226b0d)", + "P->V[77280:77312]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1923286: Hash(0x0000000000000000000000008ae4e0f3c1faf6bcc844a77afc736882c030b834)", + "P->V[77312:77344]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1970333: Hash(0x0000000000000000000000009df95a66b991fdfb2a130ebddcf81fb7a9730781)", + "P->V[77344:77376]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 524331: Hash(0x000000000000000000000000244d5a29769c31295a253ca2b74492929ee71739)", + "P->V[77376:77408]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 529169: Hash(0x0000000000000000000000004973cb0eec46e8a5f1606f21168a0646fee01068)", + "P->V[77408:77440]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 534521: Hash(0x0000000000000000000000005684789c0e804d14ba223ea70a22daaf9386a152)", + "P->V[77440:77472]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 594168: Hash(0x00000000000000000000000024676b95a3b060e217bcd44add893480e98deef3)", + "P->V[77472:77504]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 714719: Hash(0x000000000000000000000000b20aa46391c2561f630fd1599398648e56c77f85)", + "P->V[77504:77536]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 721856: Hash(0x000000000000000000000000ef941f0b92e698afc0f0adfbbcd0656fd64fd825)", + "P->V[77536:77568]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 731365: Hash(0x000000000000000000000000c854cd3a811064966a1454ca61e2e81b941ed04f)", + "P->V[77568:77600]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 754006: Hash(0x000000000000000000000000dd4e676a384b9aab4315352f599f5e3f7996b760)", + "P->V[77600:77632]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 823639: Hash(0x00000000000000000000000005ff0ed3cf5e537ceb72a5d3da3d3062053c23dd)", + "P->V[77632:77664]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 843431: Hash(0x000000000000000000000000683b13ab929bb848202a7fd515930ad86d5383d4)", + "P->V[77664:77696]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 870142: Hash(0x00000000000000000000000076bd3bafc1dafedb1b23004edc99ffbea611d26a)", + "P->V[77696:77728]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 890320: Hash(0x00000000000000000000000094cd17ed6d5ce0f371facf6e37cb896a8afe22c7)", + "P->V[77728:77760]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 901634: Hash(0x000000000000000000000000bcb37d08de8946a5b3a76e82287263c92e508193)", + "P->V[77760:77792]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 949186: Hash(0x000000000000000000000000a3b8da884170ee77df57ff07b9e10f6976d8d432)", + "P->V[77792:77824]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 953857: Hash(0x0000000000000000000000006896ff4ded3729f1126dd333db30286507485a54)", + "P->V[77824:77856]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 961642: Hash(0x000000000000000000000000259119d3132868c3c72d4737a3ef0b09addda46c)", + "P->V[77856:77888]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 985167: Hash(0x0000000000000000000000007e8e4e6b57540487087a1e97e712d778528e1037)", + "P->V[77888:77920]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 262164: Hash(0x0000000000000000000000001dba11236fd39819f1a4da1d0f1c59e5961d6797)", + "P->V[77920:77952]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 264585: Hash(0x000000000000000000000000cf4963386703267ea237d4a76aa0c1c075f2b633)", + "P->V[77952:77984]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 267261: Hash(0x000000000000000000000000d500c4c4b9dc7a07184eeb4ebc6d67f5fe20bc55)", + "P->V[77984:78016]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 297085: Hash(0x0000000000000000000000002dee0a25c826c8ffad606d157b9855fdd9b8a195)", + "P->V[78016:78048]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 357358: Hash(0x00000000000000000000000097dc8e939cb94a41b8149075b509608b098ea2c9)", + "P->V[78048:78080]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 360929: Hash(0x000000000000000000000000bdde01951d4e1ad01aa84f1e25fc1b8c796506b3)", + "P->V[78080:78112]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 365683: Hash(0x00000000000000000000000076d3fa76e0ab5b59da977be53a628230d0131b4b)", + "P->V[78112:78144]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 377002: Hash(0x00000000000000000000000046ef7493e34fdda1c10b4a9d58c2b8974bbfc286)", + "P->V[78144:78176]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 411818: Hash(0x000000000000000000000000d2bd83bbd67135afffcd3f2f6a0a2c8aa5c81c63)", + "P->V[78176:78208]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 421714: Hash(0x000000000000000000000000fb9d95b3043609f7b64b04ac4b00e28c93dc7371)", + "P->V[78208:78240]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 435070: Hash(0x0000000000000000000000005a1aeab7ac78a37dbf6e755e421ed6c3b6765646)", + "P->V[78240:78272]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 445161: Hash(0x000000000000000000000000c7f1a5f81a5fcb91658d971169239bf0601b0bab)", + "P->V[78272:78304]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 450816: Hash(0x0000000000000000000000005db4d645dc1e870c7731fb62fd6996ccd365489a)", + "P->V[78304:78336]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 474592: Hash(0x000000000000000000000000ddb452209e5db6698e477bc973a5a108ce3f5372)", + "P->V[78336:78368]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 476929: Hash(0x000000000000000000000000a25a7e6e258f81a443336983cb1cf76d38bb26e4)", + "P->V[78368:78400]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 480820: Hash(0x000000000000000000000000672de5021975dbad47cb57b60e7d5de623a73791)", + "P->V[78400:78432]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 492582: Hash(0x0000000000000000000000001229396d24e14dd299b13bcf72bfa0ed0ae51e30)", + "P->V[78432:78464]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 131083: Hash(0x000000000000000000000000129ab8fdc878858005eee052bc5bd76ed9a44078)", + "P->V[78464:78496]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 132293: Hash(0x0000000000000000000000007f01a5a682041e691522af6b70ec461c18974be3)", + "P->V[78496:78528]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 133631: Hash(0x00000000000000000000000015f98ada20877b2bebbdd05e36b3139db5fde718)", + "P->V[78528:78560]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 148543: Hash(0x000000000000000000000000ce96f6208883ae4d90a68f16cef3f2c7fea3f0e6)", + "P->V[78560:78592]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 178678: Hash(0x0000000000000000000000005af580240ce22826e8f3bb0fe0eaa80d610304d7)", + "P->V[78592:78624]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 180465: Hash(0x000000000000000000000000c6203b5e2184ef446d232aa0ad29fe3b39d5a81a)", + "P->V[78624:78656]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 182840: Hash(0x00000000000000000000000058939bea5f56e523531b7af58b10f3fcc6de63b6)", + "P->V[78656:78688]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 188500: Hash(0x000000000000000000000000e943c1b741a1ae20b73afa2ca348e982f20c2e82)", + "P->V[78688:78720]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 205908: Hash(0x00000000000000000000000095a66f28482c200bae0288585f8f1afc34a34203)", + "P->V[78720:78752]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 210856: Hash(0x000000000000000000000000cbf9d1dc351130773967fe1ded7bb73761b63369)", + "P->V[78752:78784]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 217534: Hash(0x000000000000000000000000e8b440fc9c3ec3d93c90d64ffd18a43e3be048fa)", + "P->V[78784:78816]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 222581: Hash(0x0000000000000000000000007929a23714a2d49d293447e25344f8c064c0e1df)", + "P->V[78816:78848]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 225409: Hash(0x000000000000000000000000f0019ac9e0d2c27017791d260292fece47aef8ab)", + "P->V[78848:78880]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 237297: Hash(0x000000000000000000000000088b23f47ff374a80389980ecb3e1bae55467cca)", + "P->V[78880:78912]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 238465: Hash(0x0000000000000000000000004556744fa3695e0a11d15f7580bf5bd3c9bec664)", + "P->V[78912:78944]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 240411: Hash(0x000000000000000000000000d064d62b42378f5fb9edae2cb5eb643c3a346c1c)", + "P->V[78944:78976]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 246290: Hash(0x000000000000000000000000e9790858cc36daaee39665e55d38432df5e7645f)", + "P->V[78976:79008]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 65540: Hash(0x0000000000000000000000006e02c5eea5c135770e188c0f00deca78ddfff2af)", + "P->V[79008:79040]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 66147: Hash(0x0000000000000000000000007fe9db638e8613904bde4fcce9af24129496c0ca)", + "P->V[79040:79072]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 66814: Hash(0x000000000000000000000000ced4fb39f26c0f13ccf3ec95d6a4b5bbac3f453f)", + "P->V[79072:79104]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 74270: Hash(0x0000000000000000000000002142685d8731c5c061b657c1e4401827b99a0ea2)", + "P->V[79104:79136]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 89338: Hash(0x000000000000000000000000289e4191fa698c2b1d044f8203454f716dd6818a)", + "P->V[79136:79168]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 90233: Hash(0x00000000000000000000000000c13bf84db80de84a0cfc4ab555c3a303da375f)", + "P->V[79168:79200]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 91421: Hash(0x00000000000000000000000005994e2f3eb31bf5b6f4570bab7b134bfcaaa29a)", + "P->V[79200:79232]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 94251: Hash(0x0000000000000000000000003738cece5059dea34b4b3a20018a9d1de30ef8ba)", + "P->V[79232:79264]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 102955: Hash(0x000000000000000000000000a44f8f9ae24f01a9508f765c35ab24e4d04461df)", + "P->V[79264:79296]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 105429: Hash(0x000000000000000000000000a3c78714c63ce0b5d4464fd9675f58cec867bb73)", + "P->V[79296:79328]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 108766: Hash(0x000000000000000000000000eb2887fc273cef488d7fbe62f036228d1a4a6547)", + "P->V[79328:79360]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 111291: Hash(0x0000000000000000000000003dc08320d8ac28df4ae749d0df079623d62aa075)", + "P->V[79360:79392]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 112705: Hash(0x0000000000000000000000002f9804821a169c37ae86edec15d1897d342faac7)", + "P->V[79392:79424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 118649: Hash(0x0000000000000000000000009c73a9e849e0ab30a10608b7f2b5d3bbf2749dc7)", + "P->V[79424:79456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 119233: Hash(0x000000000000000000000000e62b34cb08b626622dd564faea13a2ca2a3573c7)", + "P->V[79456:79488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 120204: Hash(0x00000000000000000000000015021366ac0440e63fb207dc0d4ccfc95f85b6ff)", + "P->V[79488:79520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 123144: Hash(0x000000000000000000000000f0475f40d0c6c828632db7131c938b77c18f74fc)", + "P->V[79520:79552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 32771: Hash(0x000000000000000000000000607147a88bdfa46ca84b10f521bd9160be3a28b2)", + "P->V[79552:79584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 33072: Hash(0x00000000000000000000000016e532d1abeeaf041079f38f5835ddb98b3b885b)", + "P->V[79584:79616]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 33406: Hash(0x000000000000000000000000ffd27857d17e0f770be1c058e772405d6db24f44)", + "P->V[79616:79648]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 37134: Hash(0x00000000000000000000000022f2dc05a4208d0d7b7b706c9a11508bfa7ba488)", + "P->V[79648:79680]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 44668: Hash(0x00000000000000000000000009cfc1a2794111f281bc2c73ed5f35c9895246e6)", + "P->V[79680:79712]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 45117: Hash(0x000000000000000000000000e148085f2f03ed5400decba1e86bcbd8c53f7dc5)", + "P->V[79712:79744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 45711: Hash(0x0000000000000000000000006a75e97417081d822ddcaa4870f123b11c0fcd2e)", + "P->V[79744:79776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47124: Hash(0x0000000000000000000000002c8721a2cecaebdeec12a54d395f98c1fdb5df46)", + "P->V[79776:79808]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 51476: Hash(0x000000000000000000000000148d478f78b3323c6f05613243b664dec2cfd7a9)", + "P->V[79808:79840]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 52715: Hash(0x000000000000000000000000a42316dcda30be3ff4862cad33c3014c1c3dae7c)", + "P->V[79840:79872]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 54382: Hash(0x00000000000000000000000016fba099d9a88f7a2757100a348088a111d9263e)", + "P->V[79872:79904]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 55644: Hash(0x000000000000000000000000249e8e1620de12539808a5dbf47e159526e1bb2f)", + "P->V[79904:79936]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 56353: Hash(0x000000000000000000000000a1aa15835b93caeb710832fa2f5752063da01271)", + "P->V[79936:79968]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 59325: Hash(0x000000000000000000000000173af81d5f7a56236b65c4dfcf9c2e8a837a6501)", + "P->V[79968:80000]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 59617: Hash(0x000000000000000000000000a58f6850f60c6d7ff19897598de48c9f995ca733)", + "P->V[80000:80032]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 60103: Hash(0x000000000000000000000000fd77a7e560da8ee5637cb48b5847d81b3fcd9a66)", + "P->V[80032:80064]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 61573: Hash(0x0000000000000000000000007c5b037f588527206c1b194b571b7c32488c16cf)", + "P->V[80064:80096]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 16384: Hash(0x0000000000000000000000003d86fccc2be0bc9e0565d6b7fcd677c4159bbfb8)", + "P->V[80096:80128]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 16537: Hash(0x000000000000000000000000ee3b75f2910f44903d85abee4152528fcb0bc904)", + "P->V[80128:80160]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 16702: Hash(0x0000000000000000000000001305f1192467ef6c13355be8d4b80c251eb22d87)", + "P->V[80160:80192]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 18566: Hash(0x0000000000000000000000005b73f825e320e418057f3b8472367e3a60dca2c9)", + "P->V[80192:80224]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22335: Hash(0x0000000000000000000000009e41ec80d5dfb26919083ff16cf69e2ee73e2b16)", + "P->V[80224:80256]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22559: Hash(0x000000000000000000000000aa9b8fb1edcf967018901c1050069f6cd592ac49)", + "P->V[80256:80288]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 22854: Hash(0x0000000000000000000000006acaac579886fe12b016ee8f25fe6dd8c44777c6)", + "P->V[80288:80320]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 23563: Hash(0x000000000000000000000000263c5ec2829f5f7cc9953f3da6ab9008ca217312)", + "P->V[80320:80352]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 25739: Hash(0x000000000000000000000000a1b0df62dd745f7138a8eb60ccc3df2675882b4e)", + "P->V[80352:80384]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 26356: Hash(0x000000000000000000000000597c8ec88541baa746e9e958792776d871748811)", + "P->V[80384:80416]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 27190: Hash(0x000000000000000000000000abb960d5c1e2c464bcb40a93cdbb36288ab0ff47)", + "P->V[80416:80448]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 27823: Hash(0x000000000000000000000000ab00c56015d30da3acba9421cab39e6a04797827)", + "P->V[80448:80480]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 28177: Hash(0x000000000000000000000000c07a4bf117f26434705a2aa20552326495248676)", + "P->V[80480:80512]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 29663: Hash(0x0000000000000000000000004e8b3ab93f5478a5d88a3b115e93878f3be35024)", + "P->V[80512:80544]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 29809: Hash(0x0000000000000000000000007c9431eef622f13b1342fd75126edafe2fed3ebc)", + "P->V[80544:80576]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 30050: Hash(0x000000000000000000000000c75f0fdfa8a6e4817827b175fbfba26f17349035)", + "P->V[80576:80608]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 30787: Hash(0x000000000000000000000000049311c4ef412873c89ef9c2f681f2bb08785649)", + "P->V[80608:80640]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 8193: Hash(0x000000000000000000000000662746669c041e8d2e92aff44af6d3d0f156bac1)", + "P->V[80640:80672]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 8269: Hash(0x000000000000000000000000f057c0f555f88e0cbc8d97e85e89cd68277a5bb6)", + "P->V[80672:80704]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 8350: Hash(0x000000000000000000000000741888db6f47554526c55bb9cfb333d13813efee)", + "P->V[80704:80736]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 9282: Hash(0x000000000000000000000000af79831083447e0415c2a0e3abddddad611b92a8)", + "P->V[80736:80768]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11166: Hash(0x000000000000000000000000c61b167e747b88fbc80d7df579fc7e1f3acf9747)", + "P->V[80768:80800]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11278: Hash(0x00000000000000000000000093260a2a2e083a459be32757a15e721e50a8c9b7)", + "P->V[80800:80832]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11426: Hash(0x00000000000000000000000010dfe5ca112cc57429a06680d2f80262a8c5cdcc)", + "P->V[80832:80864]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 11780: Hash(0x0000000000000000000000002f56298e1e7721b520457272bf80dcbd54e47fd8)", + "P->V[80864:80896]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 12868: Hash(0x000000000000000000000000cf661e9e8aaae1a82117aaabbbda22c8132d4ce7)", + "P->V[80896:80928]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13179: Hash(0x000000000000000000000000d5029232159ad30764ff3b3edfdf7751677658e9)", + "P->V[80928:80960]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13594: Hash(0x00000000000000000000000022ec63cdac68b85e9c1afdb42096dacb22f4af7b)", + "P->V[80960:80992]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 13910: Hash(0x000000000000000000000000dbe2f4dad978be99200d76c1fa12e20c39001fba)", + "P->V[80992:81024]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 14089: Hash(0x0000000000000000000000005cba0e6c1771fe3b801db9ce8d8d5d86c7a4d18f)", + "P->V[81024:81056]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 14830: Hash(0x00000000000000000000000059e5241d567f5c3cb8544edfd9d5ecefa46a98c4)", + "P->V[81056:81088]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 14905: Hash(0x000000000000000000000000a942b2f8abbaab039e2b831a3b351a8e28211a3d)", + "P->V[81088:81120]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15024: Hash(0x000000000000000000000000137b93bd9111c40b912102e4421dadcbcc1dc9c8)", + "P->V[81120:81152]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 15392: Hash(0x000000000000000000000000529208d6367e46cb494564421e72850ce0085c2d)", + "P->V[81152:81184]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4097: Hash(0x0000000000000000000000000697a53d05094c36f2893cf5c630b11f13b11cc7)", + "P->V[81184:81216]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4135: Hash(0x0000000000000000000000001cc2f6d560a00a25523bc254520cf56a0e0f1908)", + "P->V[81216:81248]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4174: Hash(0x0000000000000000000000007ccbef163ab895c8ba8b801814845bc958cff7aa)", + "P->V[81248:81280]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 4640: Hash(0x000000000000000000000000de9a8c2417114583e3d9a34ff1601b2763257053)", + "P->V[81280:81312]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5582: Hash(0x00000000000000000000000053475279f07af06b236941dca32dbf66a9663077)", + "P->V[81312:81344]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5638: Hash(0x00000000000000000000000076816265d1f691d9c805fbc1f53b3107dd5861c6)", + "P->V[81344:81376]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5712: Hash(0x000000000000000000000000a09573e54f138727bf8209a21363ec87b917ea6f)", + "P->V[81376:81408]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 5891: Hash(0x000000000000000000000000ea086a02d10a3837164ede954ee28a8f110c5edd)", + "P->V[81408:81440]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6435: Hash(0x000000000000000000000000d54e08bd4c8acc4a09ecb41d60be1780bce6c596)", + "P->V[81440:81472]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6588: Hash(0x000000000000000000000000179fa6fdc5d0b102160f6dc0e6b92a31e509880f)", + "P->V[81472:81504]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6796: Hash(0x00000000000000000000000050be99e13a8d184f1dfcea3ad2d5e7c6f5ef330c)", + "P->V[81504:81536]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 6954: Hash(0x00000000000000000000000004c118c399ae7870a55e15c0724764a0b4cdd03d)", + "P->V[81536:81568]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7045: Hash(0x0000000000000000000000004cd86e77b84a8127ae6cb136f6dc47c1aa4035e2)", + "P->V[81568:81600]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7414: Hash(0x0000000000000000000000001f499b89c70c6407bbe81995b9a4a7449c8acdbf)", + "P->V[81600:81632]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7453: Hash(0x0000000000000000000000004aa11b71098744eb4ac53c73c0e37a95e9b2b6c3)", + "P->V[81632:81664]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7513: Hash(0x000000000000000000000000f824420d6001bf5329e9cf1cf342e94688538e00)", + "P->V[81664:81696]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 7697: Hash(0x000000000000000000000000c6d6fbf36d7c1d430b8e3f95ecb84689002282a2)", + "P->V[81696:81728]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2049: Hash(0x000000000000000000000000d25534f6063c10dba8511bf32d33a18ab2a11451)", + "P->V[81728:81760]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2066: Hash(0x000000000000000000000000a0e598e68db55ac5aa89f0a5cf8be622f46d6216)", + "P->V[81760:81792]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2086: Hash(0x0000000000000000000000003b50a24d6a1e5f5bbbf197602be5489203866288)", + "P->V[81792:81824]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2321: Hash(0x0000000000000000000000002c3518f6daafaec636bc69d2802cb6c3b793da94)", + "P->V[81824:81856]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2790: Hash(0x000000000000000000000000412af0c346d97a4cb7515c64c943888b51f24f26)", + "P->V[81856:81888]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2818: Hash(0x00000000000000000000000004bc72e1c98b2021fbad1ac21f0b83645a39510a)", + "P->V[81888:81920]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2857: Hash(0x0000000000000000000000007eea70c2bec22a9fcbcfd10f3d032f7cb1471c07)", + "P->V[81920:81952]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 2944: Hash(0x00000000000000000000000011907562601c24ab590b86662765834fcb2ca355)", + "P->V[81952:81984]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3216: Hash(0x00000000000000000000000070cf1276c25e743f0fc0773f3ec3fe230552a1f7)", + "P->V[81984:82016]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3295: Hash(0x00000000000000000000000070ab92bafc9bbdb9d6c0f57f19f561395de25fa0)", + "P->V[82016:82048]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3399: Hash(0x000000000000000000000000a838a535b3db485de7c546f5832d68f35504862a)", + "P->V[82048:82080]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3476: Hash(0x000000000000000000000000c544f1baa819bac83eac2bf05666c0fde5a3e3e1)", + "P->V[82080:82112]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3523: Hash(0x000000000000000000000000a06f4833a1373b913e9985381ff3e91450fd80bd)", + "P->V[82112:82144]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3706: Hash(0x000000000000000000000000a7fdfae3ab8003d5693b1a102aad5cc1f7f10f5b)", + "P->V[82144:82176]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3727: Hash(0x000000000000000000000000d79d36f7ba96ae63abea165cef5e9418efa5ccbd)", + "P->V[82176:82208]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3757: Hash(0x000000000000000000000000cf9eb0654280448fde75e02478ae5230113c86c5)", + "P->V[82208:82240]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 3849: Hash(0x00000000000000000000000066ef2cfd5f871b8c1e8d9e2cac7b06d8f6b29189)", + "P->V[82240:82272]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1025: Hash(0x0000000000000000000000001f1e6e27f579248f920d0fc52fe34d1f2f05c52f)", + "P->V[82272:82304]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1032: Hash(0x000000000000000000000000738d9f1837e8ea145b639a2b4682cdf4ece6601d)", + "P->V[82304:82336]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1042: Hash(0x0000000000000000000000008b76b092fe3d726c1ffb040944e3aa95d64aa03a)", + "P->V[82336:82368]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1161: Hash(0x000000000000000000000000af9c8787d0f7a068b88d92d351f890ee9e563015)", + "P->V[82368:82400]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1394: Hash(0x000000000000000000000000384d57e5601166bc1584e638feeba767bd46aed9)", + "P->V[82400:82432]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1408: Hash(0x00000000000000000000000044d428212ded7d1686a5918c9803792ad6663e1e)", + "P->V[82432:82464]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1429: Hash(0x00000000000000000000000060a27444b86bf86126cec5158d94c06bfc8e65ed)", + "P->V[82464:82496]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1473: Hash(0x0000000000000000000000001ca2c0d81fe5513239f245c2f8511ff9a922948b)", + "P->V[82496:82528]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1609: Hash(0x000000000000000000000000f2b2050a6c816d9f39c7ea652c008083d2ed2148)", + "P->V[82528:82560]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1646: Hash(0x000000000000000000000000a452ea1a3e9c0e60a6547f472db1663173d12daf)", + "P->V[82560:82592]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1698: Hash(0x000000000000000000000000a13baf4711abd6ce8183f8c24f8362a778324663)", + "P->V[82592:82624]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1739: Hash(0x0000000000000000000000008b1e43f69b0d996b506aaa34efeacb0f242c54ff)", + "P->V[82624:82656]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1760: Hash(0x000000000000000000000000d29d4642632933d17c7e5837bd10e0a5b2271cf7)", + "P->V[82656:82688]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1852: Hash(0x000000000000000000000000b9580c8676333be556b5882b6fe8ac9572d9d36c)", + "P->V[82688:82720]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1862: Hash(0x000000000000000000000000a1a057b12a750b68869b8397464f075d19d17434)", + "P->V[82720:82752]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1879: Hash(0x000000000000000000000000b941159a091b4afc9cdb6b2e1f49226a507640a7)", + "P->V[82752:82784]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 1925: Hash(0x00000000000000000000000000326f951d82794d728d55ba3adb60b8cd91a936)", + "P->V[82784:82816]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 513: Hash(0xf7a0a950c03f9bc39465a4e4baf68a01bf8775da)", + "P->V[82816:82848]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 517: Hash(0xd907429909d1e0b15e30bb0aa7a33dd5d77d7184)", + "P->V[82848:82880]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 520: Hash(0xc9f2167093ad8fd88a76693e138447c60ab4ea35)", + "P->V[82880:82912]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 581: Hash(0xce677925a5a8dd9e0675a343affaf30e3af88423)", + "P->V[82912:82944]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 696: Hash(0x6db0f00aa9f39098e7c457e4a551d02808e13c0b)", + "P->V[82944:82976]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 705: Hash(0xa7b0ac49be7deb4e2f7431d13864a79a4e708600)", + "P->V[82976:83008]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 715: Hash(0x2896946b63a0dddff04e82d5cb6ef369d9e2430)", + "P->V[83008:83040]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 737: Hash(0x34f4f5ea33d3c301dffaec62b5a70931179caeda)", + "P->V[83040:83072]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 805: Hash(0x4b9dafe5883ca6b7fbdc1c11bdb10b4f9d03ec4f)", + "P->V[83072:83104]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 822: Hash(0xf1b867dadfc6f6b842bca97bf9022467197ae3cc)", + "P->V[83104:83136]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 848: Hash(0x2c4d815168747445ad466fa59f01c1fd8f01d373)", + "P->V[83136:83168]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 868: Hash(0x50eaeb2cfe0a34c09ddfa8135dcf0e6d60d20d39)", + "P->V[83168:83200]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 881: Hash(0x9260662d94c473fdb32c5bfeef8eb7dc4a21b4a5)", + "P->V[83200:83232]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 927: Hash(0x5b1e1b54f8279386c0290342111ae5de6a64b8e7)", + "P->V[83232:83264]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 930: Hash(0xc206fa5b8d9edb3dad59efbdef0ed3f341445c72)", + "P->V[83264:83296]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 938: Hash(0x9e8003d23cba5cb5ec39d081cbb33fbb19d23512)", + "P->V[83296:83328]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 963: Hash(0x53c9625cff4162c1f8c34dfd63b5d725cc6fcfa2)", + "P->V[83328:83360]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 257: Hash(0x4818bf4caea93cfa3e4331ce99197c7818e8286fb6af6928afedfae7e0ea41b)", + "P->V[83360:83392]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 259: Hash(0x375034341670aa7dd90e14f93c1318353a242a7ae0364a9e0c5a59c6f919062)", + "P->V[83392:83424]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 261: Hash(0x4ffefb4031fd17985deafb9b5cd7f275aed4f57e3db2e7f06d3611663b0e7fa)", + "P->V[83424:83456]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 291: Hash(0x400b375474e1a29386537cda5911e24d787aa3b99fdee5457d0c5fe445c286f)", + "P->V[83456:83488]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 349: Hash(0x26b34f2d3c7b8e25c126e9a66ad75102adb818ddd320bdc3fd7f1cfdef5de3b)", + "P->V[83488:83520]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 353: Hash(0x67d1fdca457b575d001369b61da1d760cd9122b6297ba0211b6c2d9a4a54119)", + "P->V[83520:83552]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 356: Hash(0x4126c98a237d035a35757a8ca5f8f561f7a153d2cc053c8f2baa183b4f85366)", + "P->V[83552:83584]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 369: Hash(0x445eb736ff52187bf857cb999fa7fc19897a1302860285d0d72caee7ee64fb4)", + "P->V[83584:83616]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 403: Hash(0x1dcebc8902e87106f3b203f83f1eae3a33d34e41567dd080e36724b71b77a46)", + "P->V[83616:83648]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 410: Hash(0x2480f26871e2a4c2e8a42fde0fe092d899205c5cfefe64fa7c02d94ccdb18e5)", + "P->V[83648:83680]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 425: Hash(0x2a585e18426629510723dab08ec3ee7573060d22cb19aee8aa323e46da6c197)", + "P->V[83680:83712]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 435: Hash(0x409d0fd17113bd6dc1c80b4e7f2f0b2ca83d46fdda03ee2c14130c5f908ca1c)", + "P->V[83712:83744]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 441: Hash(0x1b027d8b0bf40483a8843acf0278d785e4de0fcb47da68589dd48181d7e5d19)", + "P->V[83744:83776]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 462: Hash(0x2687b8a468a6551d1ab7a17efdf7e99543e974e969f1308c62ee32ce3c9a16b)", + "P->V[83776:83808]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 464: Hash(0x7c8c990e3d6df024e1e9dfaf26d9710250346c47dfeb5c4d311d363ef6ad70)", + "P->V[83808:83840]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 468: Hash(0x3c8b55013d4cfe9bc18f43989e20a6c28e72fe67f0fc9193203bf61509c48fa)", + "P->V[83840:83872]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 480: Hash(0x59803d1212e92b31dff9027807546e22bbf3db17990fe453d67234c0be90587)", + "P->V[83872:83904]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 131: Hash(0x30296909971d9000422d122cdd3ec4baa891e06ca4a2c1d7fae7061ca7d40e3)", + "P->V[83904:83936]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 144: Hash(0x6d7992b3ad7b0b5947ed76f944c0a92c7ab4870cb49e09ecb66810b5ad1cbe6)", + "P->V[83936:83968]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 175: Hash(0x20e6a5fecdc3e076d105498ccb32271ca5b50cce1076f9a6d08c9401456c2f4)", + "P->V[83968:84000]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 177: Hash(0x1647a3ea2c3da862b9c8aa7b86ee8dae1b5f50eb2080783b907e3853e6cfc0a)", + "P->V[84000:84032]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 179: Hash(0x50698443a97b51c18e072582bb3e8ed88ad80c88d7663ba8c99033c133b6ea6)", + "P->V[84032:84064]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 185: Hash(0x54bf4e7b473f0c045d07538ddfdf5fa907d30419e36528270de5c2f72d484fb)", + "P->V[84064:84096]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 200: Hash(0x7213459201a3f44d3e9cb67224e2f869dc742086dbfff1199e44a51a91bd138)", + "P->V[84096:84128]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 204: Hash(0x83b652fea4eed52cddd23485a1ace376f5ed204eb850cf77bbbcd53996a6aa)", + "P->V[84128:84160]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 213: Hash(0x74e490773e0c106fbb04c6b315d2a7d63e3cb8573df09abb9f0696065d2b3f0)", + "P->V[84160:84192]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 216: Hash(0x395f1f295d6b1ce62453e3bcd4c7963abe9f8f16e8d387e9e29f7e896902a40)", + "P->V[84192:84224]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 221: Hash(0x2d296bb3ce2e2fb91eee9c2dbb90430e52c04db1b86509a138046ed71ece221)", + "P->V[84224:84256]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 230: Hash(0xcc68b70cad64c80e36449f5ec5f4d66da2074ab46f5075a6ce92f2983961c6)", + "P->V[84256:84288]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 233: Hash(0x7d2d88c3dd8ebd6bd5b3cf0af2347ce53655eec66e41bbafc6e1cb218029b58)", + "P->V[84288:84320]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 235: Hash(0x52ae535066dbdfb1dc51c934f535b4d71cd6ecb454cd5e3d98c630eebb8d163)", + "P->V[84320:84352]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 241: Hash(0x59ac34ee70af718c2d0a03f05d8be9ec596262e63555db45cac7b6fbd17e745)", + "P->V[84352:84384]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 73: Hash(0x7ee911e74d9ef72b84c5772805476fec83b7ff2db0e2eacb7294ebd5e0d64f3)", + "P->V[84384:84416]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 86: Hash(0x446685f9c5636f6404fb8e906363d0f5881a770ab9204c84ebf3a5c3b758075)", + "P->V[84416:84448]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 93: Hash(0x47ca66f3315a3cafcc569df1caa60f731d6d701abeed72dbfc782d0e7389f1c)", + "P->V[84448:84480]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 101: Hash(0x659bd4f982fe2623f415d78ad1239e669c7fcb0f1c15dd3cf8475877b4accf)", + "P->V[84480:84512]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 103: Hash(0x26d8868dab2e4afe77bf71793ab313a1654dee999bff415301bdac6a9f7476a)", + "P->V[84512:84544]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 107: Hash(0x2a4a79cd7d2acb8d498b2ea4dc224d3740674455102c863b52e8d6814ac88f2)", + "P->V[84544:84576]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 109: Hash(0x146d48a2d59ba7391e4e25ebf26e14b6266d4382142510305824a758ea11f69)", + "P->V[84576:84608]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 111: Hash(0x6904bd9590feaad86005747f737dbb97c4c70b4953b9fa776e60832f53a4b)", + "P->V[84608:84640]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 114: Hash(0x456fff42502b6f738bf0b2316a5e927c3568676cea467d40d79a70838d206ad)", + "P->V[84640:84672]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 121: Hash(0x25bb1d17845b49db2d9d4ffe17ba83fd98fee45e498b3c666db177d467af54)", + "P->V[84672:84704]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 33: Hash(0x4d2a7e65b57d8d2557a3b88fcfc01b5fa4e8bd811a8aea643e70006feb15c1a)", + "P->V[84704:84736]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 37: Hash(0x2a40c04adf95f425c9cadbd41346d21c7a4098cc9604923870b4b0dd97f94b0)", + "P->V[84736:84768]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 42: Hash(0x3d9a17ed6fe1c424a29045e8fceac1937f6f79e42fab397689b9cfb38c63b63)", + "P->V[84768:84800]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 45: Hash(0x67ae31ffbc1ddf4a0e5303651adf2c85371b28e842110280f811e8c8375a25d)", + "P->V[84800:84832]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 47: Hash(0x78539a4d63606f6fa5ce9e5b3f60c39faab8fffcf56eba35ae602ef0e7fa820)", + "P->V[84832:84864]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 52: Hash(0x5ae3390ca5e3c5f6131b7f14e4cd157465080c9d03d5a0b686517fb4e0ff4b7)", + "P->V[84864:84896]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 56: Hash(0x10d30166b1a21c00df7ce130616117ac23b1155b660706e97867d15cf74e74b)", + "P->V[84896:84928]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 59: Hash(0x51e06a0d143eab6bd7b1f75409849edb1e731271d60ade7d427613f3ef0c5c0)", + "P->V[84928:84960]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 61: Hash(0x6e88d98459bdac00d99317baba73498404c6c9abd69ab9fcd2a30d358dbeb0c)", + "P->V[84960:84992]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 17: Hash(0x60051fe62f0427fce96c238a70e0cc51571ca2ea975fcdf9b4639d8b70865b3)", + "P->V[84992:85024]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 19: Hash(0x4f233193dfafd2a088861f7f261ccb467978a4392530f28b865f9588ae131e5)", + "P->V[85024:85056]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 20: Hash(0x6bc032a49879a4f7ddc1e8724dd160b2a84b5cbb56858a0bc4516ab11a40a17)", + "P->V[85056:85088]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 24: Hash(0x510e3e7d2ae77e071d15dc1f130efc383ac7509616cc058f238f83d9d625808)", + "P->V[85088:85120]: /cpu air/STARK/FRI/Decommitment/Layer 1: For node 31: Hash(0x1d4ce6c06e5bf35c41195d9f0739e91be48ea9aed4713f6d2825aac1dde0a4a)", + "P->V[85120:85152]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 0: Field Element(0x50f9d6af2f61931b7846bc090bf704c0fb4716c17926fb0e0cf8aa2913afde8)", + "P->V[85152:85184]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 1: Field Element(0x60537118a36e407a1cb4ed8baeea659a7dc8ec6e7329268c33cd1e87277cd7f)", + "P->V[85184:85216]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 2: Field Element(0x2ca30d06d45b13ec74c750be80de37c1de137c30e7b54005a5497915fe6992c)", + "P->V[85216:85248]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 3: Field Element(0x4d1d4e1dc45f09a4dcb7839fb66e88575473afcf3a38c5187a96c513fb69a03)", + "P->V[85248:85280]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 5: Field Element(0x3c1800d656155b2943bc81fd90c9c77dc3649355825608ddfb599ba5e0d4fb5)", + "P->V[85280:85312]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 6: Field Element(0x1d6beeb4a0edc11052b12edec398e6c451d59584a1ff1e6b00995acf482ff2f)", + "P->V[85312:85344]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 7: Field Element(0x2e46bf03ce9bdf7bcec042cb36ce35f229cea1a888dde64b4d4cf6b8f5c6107)", + "P->V[85344:85376]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 1: Field Element(0x45689a32d54284687fdc3ea0fe0237584362b1ae17c2356d91570741cba461)", + "P->V[85376:85408]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 2: Field Element(0x5bad323d3b045ca42d98bbd711f3523b0f9a0225f85ee2e8ad85b0d4ff7295f)", + "P->V[85408:85440]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 3: Field Element(0x2ba3ff7e2fe6978fdf320f80091774019d6aa01bd3890fe587441b1371111ea)", + "P->V[85440:85472]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 4: Field Element(0x5b41fdb1337c5eb5dba97c27de5bb0530dc815623a2a1f718c923b5251c2368)", + "P->V[85472:85504]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 5: Field Element(0x7f7544b04eb1f0cf89f7dacd28d0d242e90cc52ba18152bc78b54dc77417222)", + "P->V[85504:85536]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 6: Field Element(0x247bfc478be8216136bfc2800179b7d0c9c95ea2dfb184d8cfc08fe4d872686)", + "P->V[85536:85568]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 7: Field Element(0x58745f46dbe00f66f4f7818366e72041e5cc7895b403f2ed430063010fd8c9e)", + "P->V[85568:85600]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 1: Field Element(0x5248bff2f063a337de32dbed4ecaff738fa0e9d154eb13d2343ea6168758ea1)", + "P->V[85600:85632]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 2: Field Element(0x4b1122f896cf9b8d03a7fb28bca154da3aca27ee2e07e9b4647ff64028a9fdd)", + "P->V[85632:85664]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 3: Field Element(0x5d88e96a03bc3f2c21baa0dabd19bde98d7dc945b9e7313c5982454a8202d29)", + "P->V[85664:85696]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 4: Field Element(0x11b04553e6d9694d24339288f87b239944e1352d4383e1dffbde420c2907473)", + "P->V[85696:85728]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 5: Field Element(0x3421f00d2b90e364da9b3a718b3e44793df7ca30224aa0bf4ad96e573fd8e69)", + "P->V[85728:85760]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 6: Field Element(0x380172a5109d395f3cba75f52b532a97473c263b489c74fecb3cecd194ee188)", + "P->V[85760:85792]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 7: Field Element(0x509f7efe196b5fc07ae4f23d815b96d3d32b5a87f48c752ffadaa75afc85a9)", + "P->V[85792:85824]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 0: Field Element(0x4cb519c31d82132c7394925f5b30a5f705301a63abd81cf5e2c4d22af1430f8)", + "P->V[85824:85856]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 1: Field Element(0x24b628e413b1424909a9a6cde73f4d21b6534ba584e7140633653eca3853ce7)", + "P->V[85856:85888]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 3: Field Element(0xd5218434156e9e862b355766b5571d063078c96c2ae058276ca3e537eba0fb)", + "P->V[85888:85920]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 4: Field Element(0x6e2eaae30b7b5ea1de1773dd558b918092c895968ab1623ac163654e91b4ac9)", + "P->V[85920:85952]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 5: Field Element(0x76d5c680fedc292723f20a45400c7f8eac67fdc257fae88da06a3385c5de38c)", + "P->V[85952:85984]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 6: Field Element(0x7e5928ef31b028e866a1457550f76c96e439c41a178d0995d96f2c3da3d2086)", + "P->V[85984:86016]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 7: Field Element(0x5ed0479a346011a87a4081d3bf9d0f2743036551a4a09364dc8cef2daf19672)", + "P->V[86016:86048]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 0: Field Element(0x4a4fee394271906e1f36c029c53b4e077b3aaa3e5dbf9704f782af6e77fe386)", + "P->V[86048:86080]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 1: Field Element(0x5f6c264e95a5decefc38d224bc22b660342ec80e77be96fac9f2df042ad44e7)", + "P->V[86080:86112]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 2: Field Element(0x12cd3fdcde1ea44b3a1424bd680c5d278f3cbb50fa07b26640d72c725f679d1)", + "P->V[86112:86144]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 3: Field Element(0x47bcd30484011a30b4f4a0b20997a3926b53015d5a1befd66ce0550e4746525)", + "P->V[86144:86176]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 4: Field Element(0x54ae14847fc57028fbe63aa688dd3168428c2b5c07eb8bdf6c746beceb00153)", + "P->V[86176:86208]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 6: Field Element(0x357f3f00fc19bc8d17bfb98db27aa505c6142837b4283fc1ce23e20fef36975)", + "P->V[86208:86240]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 7: Field Element(0x59e4b551cc411f4a85edfe1ceec86b1835ed2ae64ee946dc4869bc25bbfff1e)", + "P->V[86240:86272]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 0: Field Element(0x167fe5cf6cf010cfefe7dfdac937ada5e349a936cdc4356bc3fd5ab4aa1f7e3)", + "P->V[86272:86304]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 1: Field Element(0x3247ad1ef03e78c2545bc2671f10828c28eabe4df00b7e454094c643f1be965)", + "P->V[86304:86336]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 3: Field Element(0x49411c42b2b27aaa10087bafc43f2d5fd7881710e40db27c3d91dd4f8941358)", + "P->V[86336:86368]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 4: Field Element(0x6a50b3b4e65a2f5e17e5c32edd0c4e26b0f4a13c341b3a5dca4319a70f59726)", + "P->V[86368:86400]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 5: Field Element(0x4babb7a762a3bae3d14849c08e3ae4a0175d8ab97f3e615bf8e38fc0d5b2def)", + "P->V[86400:86432]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 6: Field Element(0x7db12b913f5d2f9303110dbd24d149309fb386c586aaa16493f5ff70eff53a2)", + "P->V[86432:86464]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 7: Field Element(0x4de7a40f62e6fbaebfce95135ee6a5461c2e1c2dee0629a69836b4393137624)", + "P->V[86464:86496]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 1: Field Element(0x69ebebe5d872e61097943daf8937568bf6493c4f6cc9189ae374f1c90111549)", + "P->V[86496:86528]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 2: Field Element(0x1c7cf3f8727320e12eea13ea3e67f8471d66ec561371c353859524dc6dc5c59)", + "P->V[86528:86560]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 3: Field Element(0x1f6983c7930609c72a6e2f34fefabf72b606732635da92a698a5bdb90592170)", + "P->V[86560:86592]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 4: Field Element(0x656659257d76096357de69505b009ebd9257304ff6fdffa90691b65ef020a7f)", + "P->V[86592:86624]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 5: Field Element(0x5ccd1a0e2643e6d8aa48cfc37b98741590ddf01bbfc886a8480f780bf0ced3f)", + "P->V[86624:86656]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 6: Field Element(0x1c39c312b43e769754bfa7740f78cbc5cbb0468d44eda943de493f1c26e0e54)", + "P->V[86656:86688]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 7: Field Element(0x31e1e112aff391dd5ccbb038fd143ef8b822526fa29bfa137fc3ef2b04ccf18)", + "P->V[86688:86720]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 0: Field Element(0x10f3f58b5092171a1027bedeb3aca901049c0bed687b0c620b64226f5886611)", + "P->V[86720:86752]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 1: Field Element(0xec41072ae17b531a8e384171fbf247035c8808448c55c38fab9ec82870764e)", + "P->V[86752:86784]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 2: Field Element(0x7096aa1fc8bcdcc92dfdb4c1dba0cde7ee4198595491785bd7bbad07fc4230f)", + "P->V[86784:86816]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 3: Field Element(0x12959527fb659c9fe99c74c9c8ec53dd5ca0e235b605cb628f1b896b1c4de56)", + "P->V[86816:86848]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 4: Field Element(0x70e781c8c948b66295da273c6b26dffe6867633308f989d4f89365ee4b116e6)", + "P->V[86848:86880]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 5: Field Element(0x29c12e67c5edbeae5080fbe470629b8bb79219d39c1d90a7f55ec74b44237a4)", + "P->V[86880:86912]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 7: Field Element(0x212c3be2922e18546cffcc18083976c15798defdfb189c42302225b1fc5d59f)", + "P->V[86912:86944]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 0: Field Element(0x62e402ad9dfafc02e83dc0ec7676f986939a5f6f4ef2ae3bb3a1043d9a53246)", + "P->V[86944:86976]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 1: Field Element(0x1902c0511e58d0b8f3e29806fb04ed3bb13403c34920432dd49fe8f274a90a8)", + "P->V[86976:87008]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 2: Field Element(0x23890ee355c9e3fabf124dca453edefc5d6df70420b6b9c8942c8ee6b52284)", + "P->V[87008:87040]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 3: Field Element(0x5ce0231afb50391ed4971f187c1d229a52a2bdd0c95053bab9c138ec7e68e46)", + "P->V[87040:87072]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 5: Field Element(0x1c82478fe278498c7a771650043976c0bc8a91fa31ce5e4bffebf40a21cfd76)", + "P->V[87072:87104]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 6: Field Element(0x35e04c56937b810451e5727c332975400e19b413eb618802ae1b612254c64cd)", + "P->V[87104:87136]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 7: Field Element(0xae0ded391f1dabcde300ea4a7afe0d0886aa2fb6925d193527fb86451cca7c)", + "P->V[87136:87168]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 0: Field Element(0x647ce54241122a4f6f8930e8a8a35ebf99eb1b507f39669c2c1fc1b33fcb6b8)", + "P->V[87168:87200]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 1: Field Element(0x5d01a2342c9fd42a921ebdd593f39dddd571ae3554cfb22bd69d9f8e2727afb)", + "P->V[87200:87232]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 2: Field Element(0x3d05c2aa2b80fe2beb5d031c9d8ec576398698d52195e3a3d4d17a34d51fd58)", + "P->V[87232:87264]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 3: Field Element(0x7aa3ee7801cb9719444f936a1d4f2eca59f8851d0a3457627ca4bf7d4ac44ca)", + "P->V[87264:87296]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 5: Field Element(0xaf1fe17aa174efaf15e347b064bfe440b6a865bc5dea408982af55b4877a01)", + "P->V[87296:87328]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 6: Field Element(0x6038046c9991e479f5f4762e1804cafd08abb5c39fc3d2b65d1a68c6843501b)", + "P->V[87328:87360]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 7: Field Element(0x5de3dce8d26f5dff645251e96a6d271d1b5243bfa5a853ff60e3b3c5bbffa95)", + "P->V[87360:87392]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 0: Field Element(0x19eb15fd224d06eb8a091177a91bdb90d17618de2d781b829dc5b86933387d5)", + "P->V[87392:87424]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 1: Field Element(0x2cc5c204b1dd13fe1d2bd252f15949e2191985b6da485d4d26897bf3a23e770)", + "P->V[87424:87456]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 2: Field Element(0x33e0f4e6363ac0a72706bd679da437fabb59a76e34e834c8f8cf29eeb6bbb71)", + "P->V[87456:87488]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 3: Field Element(0x4eab618c778a9ca775ae0f4a002a64c7b42e6a1a9da9c1702d17ce40c399e57)", + "P->V[87488:87520]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 4: Field Element(0xd177aa1ef1c022d521381c12812cc015b6ab52826ad06a80593652a658c449)", + "P->V[87520:87552]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 5: Field Element(0x16b661c2266730d5562b2ade9c6b6bd6f270c677645d4585338bc77a0a2d132)", + "P->V[87552:87584]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 6: Field Element(0x554ccfbbd7a46cceb93be47bc748d7d865cf4707176b871e831b07f451f3784)", + "P->V[87584:87616]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 0: Field Element(0x7d5f72927fc6b73f751edb51a1162bea6e6d1ee82426ac4c85c8d8203db77ea)", + "P->V[87616:87648]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 1: Field Element(0x139aa592e93cd45d733a9981189f5e0e103148bafab06d1eb00a08918b5252)", + "P->V[87648:87680]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 2: Field Element(0x72070ae6cc8eee3561be447b015d33f3695c80ef9d96edf5d84858f006c56bc)", + "P->V[87680:87712]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 4: Field Element(0x5bffc22ef5e276446397e2870cd7d2275308bdd3d11f12543f76370d3d30a44)", + "P->V[87712:87744]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 5: Field Element(0x14fc910f0ee0016ff05da9a2c96f5867e3546b13080fe1ad46c196a5e552f5c)", + "P->V[87744:87776]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 6: Field Element(0x13fcb091346f05285de7d351c14ac73907ea1e38516ee7f02311dda45776a08)", + "P->V[87776:87808]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 7: Field Element(0x653631a2ff3164a8ad63956dd88a4424e741f06ac5fe98acc41b678cb4cadac)", + "P->V[87808:87840]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 0: Field Element(0x70a181a3e0e485096662f600409641eaa1d5fc7de9ba9d6a4f4052500953c10)", + "P->V[87840:87872]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 1: Field Element(0x3eb22ed41dbc7ff11522d845f0c30b3fc0f0c8d75ad9bada573a2b26695d88e)", + "P->V[87872:87904]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 2: Field Element(0x511e6478a80fc274fc461800904d567c9f200c266a21d2aacdffbd5094161b6)", + "P->V[87904:87936]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 3: Field Element(0x135d8eae5599aed8691332f7098c45c988944694ef14514f3f3838e6e493c78)", + "P->V[87936:87968]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 4: Field Element(0x15ce7c8f080d798b88916354ede233339e125879221567534617dbb55716b22)", + "P->V[87968:88000]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 5: Field Element(0x6d6b59f0943458fa8d5da77897ef3bea071149aba303b6b3960a081b1b47d04)", + "P->V[88000:88032]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 7: Field Element(0x480a9bf6e7ab602a2707669c9da9c1e3085caf8c7eab5c6a00f706607f7f5fe)", + "P->V[88032:88064]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 0: Field Element(0x52aeccc0f38335bf2d6a5883aaea2def7e3c87e8f8288501486f1047176db4c)", + "P->V[88064:88096]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 1: Field Element(0x1f568905da9f817ca24a99751c9d4b4ee9026ce8146487184365f090bed4625)", + "P->V[88096:88128]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 2: Field Element(0x715115909731c27d6ddb77f074b00dae8e058115079790e40f0137d65e428e4)", + "P->V[88128:88160]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 3: Field Element(0x740dd8e1b917f1a99f66727ca241acd50b8cc5f76e3ee9c820965cf0d32a698)", + "P->V[88160:88192]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 4: Field Element(0x23bc10e12e87528fd39138af295ebfb53ccd207ac6e46499484eaaa345af412)", + "P->V[88192:88224]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 5: Field Element(0x7d6e4b739deacaedb2ad25ed6a5171cdcba7579b6689313814789cbbec4929a)", + "P->V[88224:88256]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 6: Field Element(0x6da0f6754ff2aac57967a7e30671b3ce5d04a0a6ba0b1c362d3764db4f48a58)", + "P->V[88256:88288]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 0: Field Element(0x3e75fa3c903476337150918fc271bfbcd44f19be1a976e1aff247d3e55d7b2e)", + "P->V[88288:88320]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 2: Field Element(0x7e0a9ce49ce235cccbee87c6475d74a1a2b2c4ae0e2cab95eeb14f2fc271ef8)", + "P->V[88320:88352]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 3: Field Element(0x278af27406e139ac8691b4e6adca1b960130669aa1d5b47869335b92f666a21)", + "P->V[88352:88384]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 4: Field Element(0x3f096bb2bb88e9fdf06cf1e3a27e59bbb1bede665b8ac24e8f0ff78dbca470e)", + "P->V[88384:88416]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 5: Field Element(0x7acd7882d8091bfcdb6749d6db939aed12b748872ff2f48d2741d1b28d53dd1)", + "P->V[88416:88448]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 6: Field Element(0x1b6af5aa41e195c73682b2fb0aa6371595b9bd041521aeb408b8d16cabd5f0b)", + "P->V[88448:88480]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 7: Field Element(0x33f475b87892fc4e804bbc32d205499731a64018cac912703d8337aa2d94661)", + "P->V[88480:88512]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 0: Field Element(0x312925f0fc727896d9f98d518ef6d536ff6f014d7f5c847489e85cb8f8dd27e)", + "P->V[88512:88544]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 1: Field Element(0x70f6cca9436c015faa8e95fd0a77d5de3983556b3b9ead87fdb9f7beb7c5ee9)", + "P->V[88544:88576]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 2: Field Element(0x6d4cab4cd12f092e392fd827250a38645a01f4253b511a69022c361a84d8764)", + "P->V[88576:88608]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 3: Field Element(0x597b4dafe1637fdd5f9774bc1f479aaa6d6a85942668fb671ecd8a5c297d353)", + "P->V[88608:88640]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 4: Field Element(0x2b1fd34cb10bc164899f7b1f4e0ed5def2957151dbcc3eb4410e94ab9c5ffe0)", + "P->V[88640:88672]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 5: Field Element(0x3c06384d098b9725949be3e9887575b1dbb9f6b1cbac16d12655c239212ff8d)", + "P->V[88672:88704]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 6: Field Element(0x22e6dbfefb83e73f6e30de9a3210c817993389289e5a322e199358742b5d12b)", + "P->V[88704:88736]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 0: Field Element(0x797ce06e27f91522225be8638c1cd16b501c4bd16c43a2e48361ed28da6b0ac)", + "P->V[88736:88768]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 1: Field Element(0x5fef1e30f0872d3e42c3ab99710dc4855bd0a637f32a37522e9bf56d0654f2e)", + "P->V[88768:88800]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 2: Field Element(0x390e6f0a4fcfeee6bde3cacd8ca0c4a6bdab5bf7e10dca80a32e6a79df5f6bf)", + "P->V[88800:88832]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 3: Field Element(0x5cd438d93d7b7aaa0afe10e1fd5a9a32fa48d0f9e659f4ac9de8d98192bd6fc)", + "P->V[88832:88864]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 5: Field Element(0x7678885f7ad3c689081c2a2194700a1ffd4dbc8b2ec3540ccd5b53519a8de37)", + "P->V[88864:88896]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 6: Field Element(0x7ee643dc68d57894116e75a9b738ecf362f5ca4734ef5381e4f347a375b62fe)", + "P->V[88896:88928]: /cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 7: Field Element(0x11fbc569400e60f3683eaf731f978b30e4755d814e5077ce8f93431530aceae)", + "P->V[88928:88960]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 131083: Hash(0x0000000000000000000000004b322840442a724c76ee5ffd371e5700020943fc)", + "P->V[88960:88992]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 132293: Hash(0x000000000000000000000000a94378dbf3748511182de5d6cbcd66e3a0d12670)", + "P->V[88992:89024]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 133631: Hash(0x000000000000000000000000ed4cc43299d28fc3c79c7aa42730eecc38f94805)", + "P->V[89024:89056]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 148543: Hash(0x000000000000000000000000c91bed203d79b9d575cb7b9a0a2a82eaa8a1ed50)", + "P->V[89056:89088]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 178678: Hash(0x00000000000000000000000062536934159c069a00a002139bd65190a1f63460)", + "P->V[89088:89120]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 180465: Hash(0x000000000000000000000000795ed98df2baac60d4b231b2382fec5ca8480fbb)", + "P->V[89120:89152]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 182840: Hash(0x000000000000000000000000180213350411e74757c9f0386a30f90dd5412e7a)", + "P->V[89152:89184]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 188500: Hash(0x00000000000000000000000083c75d7f421bf8cad41fab81e07904e09dad1c36)", + "P->V[89184:89216]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 205908: Hash(0x0000000000000000000000005ab2dc9f3b928563e6684595959ad552d24c11d7)", + "P->V[89216:89248]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 210856: Hash(0x0000000000000000000000000a8ad0a4498abad80cb24103024ae99fdd721bb0)", + "P->V[89248:89280]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 217534: Hash(0x0000000000000000000000001b03fada5a52649a56cbe055859c4c0e04df22f6)", + "P->V[89280:89312]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 222581: Hash(0x000000000000000000000000a7babaffebb501e1e23d5bd626e70c99cb9ab7d2)", + "P->V[89312:89344]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 225409: Hash(0x000000000000000000000000cc064f1bfca2ca31af15234b27f5705f2f2c5b61)", + "P->V[89344:89376]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 237297: Hash(0x000000000000000000000000d4f6462baabba3a6d17708ea081e88b02bbb2c48)", + "P->V[89376:89408]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 238465: Hash(0x00000000000000000000000084c9303689458372be8f06bc8bb3f8996b09dc15)", + "P->V[89408:89440]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 240411: Hash(0x000000000000000000000000560d1b146371fc7e7422114ff834b8692f3c3a81)", + "P->V[89440:89472]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 246290: Hash(0x00000000000000000000000019d4f143b5bab27b7fc0745769de97d8cf9a906c)", + "P->V[89472:89504]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 65540: Hash(0x000000000000000000000000f328fe1777710bf14f4baea445ee3f86eef88192)", + "P->V[89504:89536]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 66147: Hash(0x0000000000000000000000005b48ce264296b92e773179a42b849dbcc9911db0)", + "P->V[89536:89568]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 66814: Hash(0x00000000000000000000000075fa491967a0bdf7a92cdd24f7cbcfcbf205ece0)", + "P->V[89568:89600]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 74270: Hash(0x000000000000000000000000c0bb0b47dc43569c0fc31b08ab37586080621b97)", + "P->V[89600:89632]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 89338: Hash(0x0000000000000000000000004ca1b4bd1acd696e77f1ef233926b9494b390333)", + "P->V[89632:89664]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 90233: Hash(0x0000000000000000000000003882b6d425f0b7e1172442339bfc4e7d2576b179)", + "P->V[89664:89696]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 91421: Hash(0x0000000000000000000000007a049f1c9d4f20820e54dd365d867f63771c0ae9)", + "P->V[89696:89728]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 94251: Hash(0x0000000000000000000000007870e50d8a79bf07e569e323e033754c0501080d)", + "P->V[89728:89760]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 102955: Hash(0x0000000000000000000000007c3ff5661aee06625f4946e2db4bb8ec317418a7)", + "P->V[89760:89792]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 105429: Hash(0x0000000000000000000000005b7c165d10dc1a547f4a34421a89064e05bb7043)", + "P->V[89792:89824]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 108766: Hash(0x000000000000000000000000500cca45929d463de39a738a1327ff0410bcc3de)", + "P->V[89824:89856]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 111291: Hash(0x0000000000000000000000007ccdad53e82a55a1331959509ddfa01b77440324)", + "P->V[89856:89888]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 112705: Hash(0x000000000000000000000000f34281f0a7fb92c3d0109a4d5894bc3c34b041bb)", + "P->V[89888:89920]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 118649: Hash(0x0000000000000000000000002995f0c2021f62748edbaf270b1d1800297e4464)", + "P->V[89920:89952]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 119233: Hash(0x00000000000000000000000018df975a3e5a2ec36f7a000a9434a21af934954e)", + "P->V[89952:89984]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 120204: Hash(0x000000000000000000000000395693ee81d976fef53f9cd74053bbe4aa231999)", + "P->V[89984:90016]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 123144: Hash(0x0000000000000000000000008b5579d4799199dbd36fa1deb713fd5f87016966)", + "P->V[90016:90048]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 32771: Hash(0x00000000000000000000000014ebd05083f3b25de878a644ca39240443ddbad5)", + "P->V[90048:90080]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 33072: Hash(0x000000000000000000000000fc3f9feb6c4f057649e1b6972a6fec4b38a73b38)", + "P->V[90080:90112]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 33406: Hash(0x0000000000000000000000006cfb9723db0411fec5bcb536edf5b9daf1cf0f03)", + "P->V[90112:90144]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 37134: Hash(0x000000000000000000000000055f5e3cf985ef2f7cd73272beff5e88f9fc150d)", + "P->V[90144:90176]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 44668: Hash(0x000000000000000000000000879757e40a7d2567ed3ba5ea3fe7d54365002273)", + "P->V[90176:90208]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 45117: Hash(0x0000000000000000000000009f834964e3b75b43cdcf5f814ba24b4d686f9c94)", + "P->V[90208:90240]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 45711: Hash(0x0000000000000000000000003f5c4ea2455f1bc5b84c0ff2adced8690401d592)", + "P->V[90240:90272]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47124: Hash(0x0000000000000000000000008d22e7dc6bc48c8793b9006d1da481222f22a432)", + "P->V[90272:90304]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 51476: Hash(0x000000000000000000000000ff28f9b9efd568ef03ea44ae16567afbdcc98828)", + "P->V[90304:90336]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 52715: Hash(0x0000000000000000000000000d5a830f31955e3f242d78f254d28b1798f44ba9)", + "P->V[90336:90368]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 54382: Hash(0x000000000000000000000000c1808901ae5cae8ce510a0a10698d320c1bd06f8)", + "P->V[90368:90400]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 55644: Hash(0x00000000000000000000000085ec859c412453709f8d8a7467ad57452db3250f)", + "P->V[90400:90432]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 56353: Hash(0x0000000000000000000000001a05a662fae10fa6a3593695329c5462acf7f1f3)", + "P->V[90432:90464]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 59325: Hash(0x0000000000000000000000002af4670cd5b18e84fbb61200f8638a1f9430e544)", + "P->V[90464:90496]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 59617: Hash(0x000000000000000000000000bc5db1c29c09530fdcbd61c3c60987e92626e853)", + "P->V[90496:90528]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 60103: Hash(0x000000000000000000000000d0e9ba218d4346df6d3ae5c3a7295df458f7ace8)", + "P->V[90528:90560]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 61573: Hash(0x0000000000000000000000004af8d36c66c4adb0f8e9052b35336b8c19c25dba)", + "P->V[90560:90592]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 16384: Hash(0x000000000000000000000000d026ea18d31b88fa8942175e59b443f610e6cec9)", + "P->V[90592:90624]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 16537: Hash(0x0000000000000000000000009c2b4dab7d2c324f6c5cd17089749ac4ff5a59d0)", + "P->V[90624:90656]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 16702: Hash(0x00000000000000000000000051796d043fb329c8ae5f9cfe8819c7f4e11a1cbb)", + "P->V[90656:90688]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 18566: Hash(0x0000000000000000000000001cb139711216c50f1b778ca4beaad6aff9ebb58a)", + "P->V[90688:90720]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22335: Hash(0x0000000000000000000000004fb31b97f3a84be4dc1bb63dc4476bf59d1e3644)", + "P->V[90720:90752]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22559: Hash(0x0000000000000000000000009587228be059053d1c8801d19ddcfe5795a9651a)", + "P->V[90752:90784]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 22854: Hash(0x000000000000000000000000eaecdb105ab745b98754f068da4eecc472d3e5eb)", + "P->V[90784:90816]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 23563: Hash(0x0000000000000000000000008c6f532fc44d824a87011ca09f72781df40f14c9)", + "P->V[90816:90848]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 25739: Hash(0x0000000000000000000000001ce4d3e03674deda181e1b58f9721d1d1179adfe)", + "P->V[90848:90880]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 26356: Hash(0x00000000000000000000000024a8844345be74b9af6a95fba34aeee421e7ae21)", + "P->V[90880:90912]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 27190: Hash(0x0000000000000000000000004a420631fa0c2c9299aacb8cfab9b99a33572716)", + "P->V[90912:90944]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 27823: Hash(0x00000000000000000000000049929c8ed4dc74e2a4f955fb8ff0b037448abc5b)", + "P->V[90944:90976]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 28177: Hash(0x000000000000000000000000661580985e98c2d48bc36eb6f142e103af9de0f1)", + "P->V[90976:91008]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 29663: Hash(0x000000000000000000000000ac69a4d458dfcaf6234a4beda2ba89173db9e19f)", + "P->V[91008:91040]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 29809: Hash(0x000000000000000000000000456d632fd6f6413f9aa59a485cbcbb2264b65ce9)", + "P->V[91040:91072]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 30050: Hash(0x0000000000000000000000005f1e69d56a3ca25d1afeff661437e8b86c872d74)", + "P->V[91072:91104]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 30787: Hash(0x0000000000000000000000005b76931dcbf091bf49e79030fdabea7c4c7caa00)", + "P->V[91104:91136]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 8193: Hash(0x000000000000000000000000427a257d7f3fc12322894571cf0baece946cac2b)", + "P->V[91136:91168]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 8269: Hash(0x0000000000000000000000006ef038ad906db584fdc6973410c117470422d96a)", + "P->V[91168:91200]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 8350: Hash(0x0000000000000000000000000f840fb8ec38ec8c916e98702cb46b1d8e28b7ce)", + "P->V[91200:91232]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 9282: Hash(0x0000000000000000000000007514f51a90ab40581489fc175d1c4e898ae3e61d)", + "P->V[91232:91264]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11166: Hash(0x0000000000000000000000003aff80290e483c27bf6fa3c7e0c10bbd51b024d8)", + "P->V[91264:91296]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11278: Hash(0x0000000000000000000000001d0c309a1d28a90fd8f5eee1981d9088d004560a)", + "P->V[91296:91328]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11426: Hash(0x000000000000000000000000f1ea65da3030725712afb59a296793f8df9601af)", + "P->V[91328:91360]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 11780: Hash(0x000000000000000000000000a899453d847f6a02bf250900c914263186982bfd)", + "P->V[91360:91392]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 12868: Hash(0x0000000000000000000000000586ba7eb572206418904ba72f2770628d254aa4)", + "P->V[91392:91424]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13179: Hash(0x0000000000000000000000008157d04c4c41648056057a9a604f045b9a6b2550)", + "P->V[91424:91456]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13594: Hash(0x00000000000000000000000087516f16d69ed03c4efdcb1f1bbb5bcfd9e3f84d)", + "P->V[91456:91488]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 13910: Hash(0x00000000000000000000000053aae11ef34f5ecedbf640cfaa9a63b8d47ba8b1)", + "P->V[91488:91520]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 14089: Hash(0x000000000000000000000000bae4afdc4717ebd68946c14e11fa32c13d4e1c76)", + "P->V[91520:91552]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 14830: Hash(0x0000000000000000000000004cea0f18a35b610ad80ff9cf55cf900c7ddde52b)", + "P->V[91552:91584]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 14905: Hash(0x00000000000000000000000076affd7d2b5d8357af29b16e00d261fde973ae17)", + "P->V[91584:91616]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15024: Hash(0x0000000000000000000000007b1d7984530fff0c83e9738d44fa09075485a19c)", + "P->V[91616:91648]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 15392: Hash(0x0000000000000000000000002e1ec655ebd7adce7f3ad46b24e6ae25b126fd8e)", + "P->V[91648:91680]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4097: Hash(0x000000000000000000000000649ff68c642e71b0dd9b01d4e03448bc9e07e749)", + "P->V[91680:91712]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4135: Hash(0x00000000000000000000000095e19d0821128550d80c1c698a9fe62ca286fe1e)", + "P->V[91712:91744]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4174: Hash(0x0000000000000000000000002970f7492bd97c1243c01d500b4e2fabdcc2fa59)", + "P->V[91744:91776]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 4640: Hash(0x000000000000000000000000a60c70a1b9a48fc26e8ed020614af146519c5d0a)", + "P->V[91776:91808]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5582: Hash(0x00000000000000000000000070e7285a5a30f71f9d3b9a784d5f6e512f636f18)", + "P->V[91808:91840]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5638: Hash(0x000000000000000000000000404d848ac9623fc2a6ef4bf9a4460a49678992d0)", + "P->V[91840:91872]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5712: Hash(0x00000000000000000000000027cdbb669f9dba570958468bfd502d796771e56d)", + "P->V[91872:91904]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 5891: Hash(0x000000000000000000000000cb635280469e447196bf6fa33eaa0db163ac50c2)", + "P->V[91904:91936]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6435: Hash(0x000000000000000000000000e880eb64a9463a46fd7bbc86c16b6463631e0626)", + "P->V[91936:91968]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6588: Hash(0x000000000000000000000000030b02f211bb9d580a2f4ee75b3b6e56a4a4c2ee)", + "P->V[91968:92000]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6796: Hash(0x000000000000000000000000df60d42c2c72dd1b83fb37afd4d65f887b9d3fee)", + "P->V[92000:92032]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 6954: Hash(0x0000000000000000000000009d10b5702632ef60460c98ce35ab41e2c1d7d9e3)", + "P->V[92032:92064]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7045: Hash(0x00000000000000000000000034181f9beb6748c2eaf051689d54557e8e6efa9f)", + "P->V[92064:92096]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7414: Hash(0x000000000000000000000000c9a6a82fdd8a172ae642ae7b85b07d7157792db5)", + "P->V[92096:92128]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7453: Hash(0x000000000000000000000000c256a9c81d1bd6ec76635e3a023641309131f6a6)", + "P->V[92128:92160]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7513: Hash(0x0000000000000000000000009f03ee2db82b341a771aa3c636a10ad9a6a10da1)", + "P->V[92160:92192]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 7697: Hash(0x000000000000000000000000f2499cae460d466bc67b32321f1efcf9bf0facf3)", + "P->V[92192:92224]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2049: Hash(0x000000000000000000000000d499dfdd2a24c751416abf9690fb56215be7a49c)", + "P->V[92224:92256]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2066: Hash(0x00000000000000000000000039b817aa8b1e48366faebf7a866a5ccd623fb6f4)", + "P->V[92256:92288]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2086: Hash(0x00000000000000000000000008c414fa4171d3653ecbf091626cd303ccf47949)", + "P->V[92288:92320]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2321: Hash(0x000000000000000000000000847eefbe8c8cea3566bf3d51b68149ca0b8385f4)", + "P->V[92320:92352]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2790: Hash(0x000000000000000000000000dceb213b26904a5b3804a0f5dedc699523c5a9f4)", + "P->V[92352:92384]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2818: Hash(0x000000000000000000000000c65a17c7bb3b0558717a86ba88cc31f8ae89b415)", + "P->V[92384:92416]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2857: Hash(0x0000000000000000000000005016a65be8b3167e51ca1b1416b63142c715c0ce)", + "P->V[92416:92448]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 2944: Hash(0x000000000000000000000000f5958d2c10c023cdb284d095bad5a6841573bf33)", + "P->V[92448:92480]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3216: Hash(0x000000000000000000000000d33482e2e7d41a643813cd9fda5c4152ece58ece)", + "P->V[92480:92512]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3295: Hash(0x000000000000000000000000eb54a89145d6aeab1164cbc68d9e532b2b8552b9)", + "P->V[92512:92544]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3399: Hash(0x00000000000000000000000042d6d40b964008f611920693edfc44f3b969847c)", + "P->V[92544:92576]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3476: Hash(0x0000000000000000000000001931c6ca4ef504ad80461cdb8af3c17dccb13fd6)", + "P->V[92576:92608]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3523: Hash(0x000000000000000000000000dd16f290f0904db9958336d55acb40dcaae32771)", + "P->V[92608:92640]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3706: Hash(0x000000000000000000000000f28a4f849f76a5c1d2cccf5d6388b91e0c3976cf)", + "P->V[92640:92672]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3727: Hash(0x000000000000000000000000c3458e1486ec8f1b5f8a0ec7b0ac1bd2926f84b3)", + "P->V[92672:92704]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3757: Hash(0x00000000000000000000000072962b8d49234d64a2ad48647c8492258ec3bc18)", + "P->V[92704:92736]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 3849: Hash(0x000000000000000000000000bce9a8208005bf0df3d3e6ecf356eea00d4e0b45)", + "P->V[92736:92768]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1025: Hash(0x0000000000000000000000001dc33308ff2da69181065c5ff407e9098947b252)", + "P->V[92768:92800]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1032: Hash(0x0000000000000000000000001620d32d86d88a914ac531dfb1cccba7683700ee)", + "P->V[92800:92832]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1042: Hash(0x000000000000000000000000e7f4b6894c8db1c7b4cca83fc96f8302b9e43c9f)", + "P->V[92832:92864]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1161: Hash(0x000000000000000000000000186d5c635d7686a6f8bb99815ef99a71871756e5)", + "P->V[92864:92896]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1394: Hash(0x000000000000000000000000bfce68326dd255edcd61aaa017224b68d1422557)", + "P->V[92896:92928]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1408: Hash(0x00000000000000000000000054da0ec8102eb4b38033b1e8f05a1fd00bc4f8a2)", + "P->V[92928:92960]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1429: Hash(0x000000000000000000000000ff5ad4d38d32023c94c900dad9327a6581d6c84c)", + "P->V[92960:92992]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1473: Hash(0x00000000000000000000000096e4bf7cf62a063cca7db5ad0d82346fdbb2cf20)", + "P->V[92992:93024]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1609: Hash(0x000000000000000000000000380ea3739c6f36c5213ac84767cba97509a2f3e0)", + "P->V[93024:93056]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1646: Hash(0x000000000000000000000000c0726c7da12907243c0c44d56a24ca4ffd59b862)", + "P->V[93056:93088]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1698: Hash(0x0000000000000000000000000328cba572aad0ac065326a92258fc5749cc20f9)", + "P->V[93088:93120]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1739: Hash(0x000000000000000000000000f6bdbc2ddd6a622a2143304e9f4fd1989addf7ae)", + "P->V[93120:93152]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1760: Hash(0x000000000000000000000000e9b8c810b6e872d587ef4faaf53eab97069172cb)", + "P->V[93152:93184]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1852: Hash(0x000000000000000000000000ce888c8c04d5f29991fa1f70ac77141003b25b42)", + "P->V[93184:93216]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1862: Hash(0x0000000000000000000000005b37509928745a0bf8e0af0ed6d942b5a0f31d34)", + "P->V[93216:93248]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1879: Hash(0x0000000000000000000000009cea75e48e0959a0519ca3b4dbf8140565cd66bc)", + "P->V[93248:93280]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 1925: Hash(0x000000000000000000000000adbb081d592ae914c75759aae4dd2e7211c052fc)", + "P->V[93280:93312]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 513: Hash(0xe1e98c521d5e22a7434da75eaaa703519757f554)", + "P->V[93312:93344]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 517: Hash(0xa9086823971c397b0cb8d4ee75db702b6b43978c)", + "P->V[93344:93376]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 520: Hash(0x86178cef136efc26ca9f104fc4d55a86a0de1e5c)", + "P->V[93376:93408]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 581: Hash(0xea968be38d560dac4f308cd1f5cfe891f160f5cc)", + "P->V[93408:93440]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 696: Hash(0xd69248b0ee059db85f878bb232f52f351c63133a)", + "P->V[93440:93472]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 705: Hash(0x39ed4abfecbbd6800354c25b431c9d00be593e8c)", + "P->V[93472:93504]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 715: Hash(0x38542942f894b3e8978f9386cae0b1e56556d8b8)", + "P->V[93504:93536]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 737: Hash(0x324d059b5b399babe0437cd09e7853ea141ed800)", + "P->V[93536:93568]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 805: Hash(0x65c9606cb380b2ceb8c55e185e77854ae25fd727)", + "P->V[93568:93600]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 822: Hash(0x418c6e9e3b040a675fdb89340c23f5fa19fb8385)", + "P->V[93600:93632]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 848: Hash(0xde7703c167af064a6c000ca6229572c4e5516c48)", + "P->V[93632:93664]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 868: Hash(0x79d9aed12592df3c13fafa58b1afbc008b2a383d)", + "P->V[93664:93696]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 881: Hash(0xd1a3f33cd314ef86f108ab2519f7dd8b3b06d2c4)", + "P->V[93696:93728]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 927: Hash(0x94ad512e2468d1d0f97b6db8254644af2076b131)", + "P->V[93728:93760]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 930: Hash(0x938ab05bf3be62b86939029c70e81bebe5daa7a3)", + "P->V[93760:93792]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 938: Hash(0x105ad815ebfbb6a82bf5113fd82e9435e7ae6024)", + "P->V[93792:93824]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 963: Hash(0x9d0c0306a4f50eb96a0697224254213c1cf8587e)", + "P->V[93824:93856]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 257: Hash(0x5e119984daad1c9d07c49f91b5b071a5e54b848d3cf193d1f7d64aaa63a9aee)", + "P->V[93856:93888]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 259: Hash(0x513d6f275d48890111db2c678a69574536d0900c228584c4cc1bde0606684c4)", + "P->V[93888:93920]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 261: Hash(0x44f0462db1a3b92c208c71bef2bb5fcf4d527c4e06b97cd52d482679822dc)", + "P->V[93920:93952]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 291: Hash(0x62445acb9d89812a16320eec42c43277d470690e87c5bf5979897361a52cae2)", + "P->V[93952:93984]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 349: Hash(0x5f51cd5f01dbf20082d0e06abd5813491381172191db3c2d28b352857ce854e)", + "P->V[93984:94016]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 353: Hash(0x3b2ae6095de2ec8ff134dcffd89bd5c5e8934b57a9f6209eda74a247e95e056)", + "P->V[94016:94048]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 356: Hash(0x46cbff9e8b634543f92ae01abb87a731477e919600d94954b1eb9c09db4dc4b)", + "P->V[94048:94080]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 369: Hash(0x2f2c8cb4f29892d2ad173c5f7edd05d868bb9e4dc72b907591617f51217198a)", + "P->V[94080:94112]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 403: Hash(0x456a670dc8cd6dcd16fbdbc2e54715462b982a56bb2012f77a883ec6cbeb6bd)", + "P->V[94112:94144]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 410: Hash(0x699c3273e675bfeb07bced0a451e3008e54c075ef9d46dc0f3a6bbfda816239)", + "P->V[94144:94176]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 425: Hash(0xd0965dcd096eeebfba898768c8b4ecd8cd3b7bbb1bdc50991c7b994a9255bc)", + "P->V[94176:94208]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 435: Hash(0x4eb5e00d5fe987fa7461935e21b418024e4651f06df7d516e78a19528dfd6e8)", + "P->V[94208:94240]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 441: Hash(0x63b5e9293519d4c9a055c8a5c5b89f21b5bae9751f2d628d2b325c73e13af99)", + "P->V[94240:94272]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 462: Hash(0x34991b2a597784c940eac296e0e3f894ed5fcba20914b0f0567ece6d7eccda7)", + "P->V[94272:94304]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 464: Hash(0x7917629d4922421a61f1bccec2247b95d5d721be9836ee07e11cc2923158afc)", + "P->V[94304:94336]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 468: Hash(0x5b849025f7b51fd7e09a065e44baee1c3b9aa19aae52a0f83bb5b3ea21e9db)", + "P->V[94336:94368]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 480: Hash(0x92e21504874e7808dd97ba1dc9e17b1a8a3236734c147f894974a49e9a4ab1)", + "P->V[94368:94400]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 131: Hash(0x5c677d3de2f659396d38a64a1d8af82485d1361caee3b0c68161b0dc5377792)", + "P->V[94400:94432]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 144: Hash(0x202d5eb37ac79e6191fae35ad2791fadfbbdd0813fb330d612d45f615ce613d)", + "P->V[94432:94464]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 175: Hash(0x17698a276469ce3b1db27791773e38286996e849b5096ac15f14f5388ff9da)", + "P->V[94464:94496]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 177: Hash(0x89c6f3f6ae1d8558354d45fd4fc96d881d7ece81f24b788b45f88c235a3825)", + "P->V[94496:94528]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 179: Hash(0x61d368a6e9316afe78a15da5d6e96bc2e2875333383f20a0afeed2cd5269ab)", + "P->V[94528:94560]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 185: Hash(0x1a6bf2016f851c743854d0a8a645e2a699452119d9c0aeb95b16eb333a770e0)", + "P->V[94560:94592]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 200: Hash(0x6c08ed7577e4f68a4dd5ff768d64653fa723355b7184741260eae98abd2038)", + "P->V[94592:94624]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 204: Hash(0x18b1f7401f06bfab2e296ca7dbd7b8af2f6c90c0cc6bba0da814cbcc824c182)", + "P->V[94624:94656]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 213: Hash(0x4549a0e0d331abdb20ce9458e69a3e74b6a330c897c8675ac4bc68c296dca60)", + "P->V[94656:94688]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 216: Hash(0x8292a6e83d6d0812bfca47792f4d9a0919653bf6beb126644b4b4dd57aed3d)", + "P->V[94688:94720]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 221: Hash(0x4b657d332821e641aa89599d4e2c5c8c675a813db7744fdf3ea8f4fcca5dd06)", + "P->V[94720:94752]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 230: Hash(0x36a47926de152528863625f62222861e2a61038027080d9c34396c275be5d0b)", + "P->V[94752:94784]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 233: Hash(0x3a409d924931eccd83623a564b96551761a78f4b24c849841b7b96b07034526)", + "P->V[94784:94816]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 235: Hash(0x2e62f2cc8245bec421a9631e4cef1ca8977401067c0731ad7674392feb85094)", + "P->V[94816:94848]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 241: Hash(0x2ac815a5e3a177b9ba24e81aaa33f7510a7cda9391ab4a7d2510056dc5f7cfd)", + "P->V[94848:94880]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 73: Hash(0x73ad396c05359e31fb0aa54e0bb015499d5298d9f8bc3a116a8dbc0793efd86)", + "P->V[94880:94912]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 86: Hash(0x27aecf732636685a125164d78eb5b1b3e97ce66cbca613ea5b537904299ff37)", + "P->V[94912:94944]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 93: Hash(0x5c6a5717face43e44d75e233178a8042eb596673fd6b9e2d817425263f4ebd9)", + "P->V[94944:94976]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 101: Hash(0x6825203a6df3319b9e3e1476636d55f30eaf4d7644e4e49bdc0ac09857a6e23)", + "P->V[94976:95008]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 103: Hash(0x69b29141186c336f0b38f65a5d68d60bf5e9c1c8089176a1fbdeabbc816d13c)", + "P->V[95008:95040]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 107: Hash(0x235ce6655473a9314b46c6c4eb18e4ed72a5f237c0fbd94b36bdc15894cacdc)", + "P->V[95040:95072]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 109: Hash(0x19060a5caefb2a727a7f41720cfc529f1fcd4706c468f5e97e61df77900ebb1)", + "P->V[95072:95104]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 111: Hash(0x952d50f3edeafe65b9a49a7bb060aaf2a2a8e608272a134853227d87b9df70)", + "P->V[95104:95136]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 114: Hash(0x49692896701991d0c2f40f1cd7f4201035663e1a06a827aa0791aded95f4a12)", + "P->V[95136:95168]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 121: Hash(0x1f911f1265ef1f1cb884da7960fb57ed1c2cfa7b7b07e84ec7c95616c2ea6b2)", + "P->V[95168:95200]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 33: Hash(0x138da3358b3ea214b6bb4cfda4dc690ddbe7d31f5042031913c85978862c36f)", + "P->V[95200:95232]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 37: Hash(0x69668c015907960008d63d0496e3121d400602d535eec009f713c162627628)", + "P->V[95232:95264]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 42: Hash(0xf0834cb2f130ec5178279a643aa0af251219d7f5f47ce561bf04f88c29caf4)", + "P->V[95264:95296]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 45: Hash(0x23d6cb08dd14e62b4bf0a61332f150f3b350687b161798104a7893fa230090)", + "P->V[95296:95328]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 47: Hash(0x5fa59f72f00f4502518ba29adedb04cb4a6bdc1312f847027262c7ff81a9f6)", + "P->V[95328:95360]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 52: Hash(0x332ba4a06266c084764780779531479bcc822304fd3e0276d3c4dd117e9a507)", + "P->V[95360:95392]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 56: Hash(0x79ace7556a724f163bf080fab57a896d56c1ef873616bbf383e89ea04988c07)", + "P->V[95392:95424]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 59: Hash(0x583639c8fc0ea2db74b5dc5da10403479cdcca234b482bd647f0a8205493691)", + "P->V[95424:95456]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 61: Hash(0x4e0c7b1e47a84c9236e77ec0ba6d02cd003f14a1ecf37062ff99c53fe0341d5)", + "P->V[95456:95488]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 17: Hash(0x3f1648b11cd98620d38f26b3ac0e678c43811d95a771a23f9a67e2feadea1b)", + "P->V[95488:95520]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 19: Hash(0x6d8df4d1492d04a8b4fba7a169677147655d9b9e215d1e59ac82fbaa6c30611)", + "P->V[95520:95552]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 20: Hash(0x27f77124524b2cbba7b00e3465cf9263ccb661102128c11da6c761eaa6705e4)", + "P->V[95552:95584]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 24: Hash(0x66359418126bc55fbd443d0a2e07a084d02b3fc4de3aea669e9cdbe3b4b01d6)", + "P->V[95584:95616]: /cpu air/STARK/FRI/Decommitment/Layer 2: For node 31: Hash(0x680dad0862bc3e87cff0ea805a874a4b21aed4f4bc7e7006181bf8a179d81c2)", + "P->V[95616:95648]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 0: Field Element(0x3054ccaebe977020687b7fc500b2e276186f7bf04bfac190c97c4380b6713d2)", + "P->V[95648:95680]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 1: Field Element(0x67d52f2f8287bd8b87418284378489e8625c44685a442980cae6823a791aa7a)", + "P->V[95680:95712]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 3: Field Element(0x2df6864bfc7d22c757ea15ecd0df3979b62633ba7fa64b930be53dc48b9a10)", + "P->V[95712:95744]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 4: Field Element(0x2a84225d9933d62dab27e110989ce69565e3302062157abdce9e78b02f05400)", + "P->V[95744:95776]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 5: Field Element(0x37d1d7f7b45b1b4c14da06d3cc843b8c3722d250ef10b71863b5c7b0d4737ea)", + "P->V[95776:95808]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 6: Field Element(0x52883f0369088eb450796682a1acd46cabe155f814965dcb910262cf94a9c77)", + "P->V[95808:95840]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 7: Field Element(0x5990fcf5293b30ea4ebfdb0d10ec61f23549e9d66f7fb278be6800268a75e03)", + "P->V[95840:95872]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 0: Field Element(0x5f46c74c5fe9e5983a65bebfe4a3ff96076545d384e940db04ee73caae9705a)", + "P->V[95872:95904]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 1: Field Element(0x32d5626576ff1453b11d5465d1210aa43af2a22dd9cfde9a4ae4267055a1fb4)", + "P->V[95904:95936]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 2: Field Element(0x37e9757077fab589e00f24f2e340fa4bdf00f0e5f5b1e35f94c6b2d67dd5027)", + "P->V[95936:95968]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 3: Field Element(0x1160d6cdc1afe2597253bd68b9d6e7a44b7505c8a73e77f812575de51323a69)", + "P->V[95968:96000]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 5: Field Element(0x3f540155ec3ece229e266193ae71fc62f7d322c8e17f08a3214bdfa71e7631a)", + "P->V[96000:96032]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 6: Field Element(0x6d4781bd2153c9d171b619084550379e11934d47e5fd85f4c853aea035b58ff)", + "P->V[96032:96064]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 7: Field Element(0x7fd821ad53a5140b83b6876f3a9594e2e5217961687b79400e12f064d4d0db0)", + "P->V[96064:96096]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 0: Field Element(0x682d5aafd94464a01c71d2c94f8624e3cc5fc3ce4218e58b9ffc95990c7b379)", + "P->V[96096:96128]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 1: Field Element(0x3bc626a6e14286d2c711fc4cdcc75c73f0c3304ac75e2e1503be2dedcca1004)", + "P->V[96128:96160]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 2: Field Element(0x281843059ae7ea1e74ccd3c7ca2c8c9f42d3cf40e8e2407c45cb905b2d74b5e)", + "P->V[96160:96192]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 3: Field Element(0x37d26164fdd3f6dfdc33724380497e3becbe6e03920c6ceab5ea8cc3d94a01)", + "P->V[96192:96224]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 4: Field Element(0x6753dfc267948ab401bef8a8a6c44e95e9eb54452ea353d1f8bfab66d0a2414)", + "P->V[96224:96256]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 5: Field Element(0xbe59ef5e272833ac66bdacf77941cd132113d38ac677890a71b3d0e8a36d2d)", + "P->V[96256:96288]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 7: Field Element(0x1e8e7fb5d4f816e56614955bd29ba12919f09f62f51b4ce6dfc5a2540c9069e)", + "P->V[96288:96320]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 0: Field Element(0x7742348ba3bd746ab63a8534cbff64768218d446cd13723e5b0788a26c12a91)", + "P->V[96320:96352]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 1: Field Element(0x1f93a4b8a4f93e6f4780ac01915152fe47ae0b7e3ed6ccfee525bdc71f84f15)", + "P->V[96352:96384]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 2: Field Element(0x6d864886f9207febd4a5e6556af4987e098532a251281c883e0783849bcfeb)", + "P->V[96384:96416]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 3: Field Element(0x62f0237ae91f6e41bcf198d898b5fbc81f6222024b2f26998f94541c095d7b4)", + "P->V[96416:96448]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 4: Field Element(0x25d603483eaade6677a54600a2d32ba8462a20d426619a0b634689955916fd9)", + "P->V[96448:96480]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 5: Field Element(0x6f091b965690b9c4afcfd23c3adf292a668fb6ecb72e34172bf0cbb9d2b5210)", + "P->V[96480:96512]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 7: Field Element(0x35e89df411737b7069699cda35aad75ff788571c1806c4a03ee0d2132604802)", + "P->V[96512:96544]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 0: Field Element(0x6b96e4dd528032104a2a14403d8ed80993f2c93cb97064fb177d9ad8f44120a)", + "P->V[96544:96576]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 1: Field Element(0x4c60e2d2b7b6fef374d8669c880768a14a77345d5722b0fc95530abef2cd640)", + "P->V[96576:96608]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 2: Field Element(0x693fc5e0eb2d39ac9b90c78bc502d22941862e1309adf3e7a603a8be1e2873f)", + "P->V[96608:96640]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 3: Field Element(0x456f6402307cb010bbadeff61277aab3d174af0e49929c1153762288148660f)", + "P->V[96640:96672]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 4: Field Element(0x71b4451fe56bcaeae15e3dded72c679a180cd259a569268293c3e0514054d8a)", + "P->V[96672:96704]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 5: Field Element(0x5400e70e00728d59c255fbd3f43b56943e6efb029ec46cda5bd0e9379c8dab2)", + "P->V[96704:96736]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 6: Field Element(0x30259faf210527537f5840ae41396e1a86b9d0b2a004ed4870ba1f5f7eeea7d)", + "P->V[96736:96768]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 1: Field Element(0x26796927cc3ccc8305579264b46179ab0732651f4f6d35a63d8713b4b00442e)", + "P->V[96768:96800]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 2: Field Element(0x7f920012edeb2d53b81ff8e147b0534a71efc7adf967f32e0f160d027ea2277)", + "P->V[96800:96832]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 3: Field Element(0x51cf5c52977c347e440eeb7264a2e642d342e106894fe5dec618adf1e01b0b2)", + "P->V[96832:96864]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 4: Field Element(0xbae2cf61e5d8b59363c11abf7c75c37b4dff4938a1d6608ac8b4a87c11a1fb)", + "P->V[96864:96896]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 5: Field Element(0x1c6ecd384410f5abb57add8fdfd470b3087db7407b5aeab7420cfac5862ecf8)", + "P->V[96896:96928]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 6: Field Element(0x4420a8e5d5e96aafe9b77f70003d385fa1b2225a745986db7d4c481e5929dd3)", + "P->V[96928:96960]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 7: Field Element(0x764aa40963fdd73f837985a05cd44c4328814949fe9b0726892c35336e15e48)", + "P->V[96960:96992]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 0: Field Element(0x75b430849276132de19f5c1cd8c840a48a749e6945a92b169d0254894bb4714)", + "P->V[96992:97024]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 2: Field Element(0x70aa379a4e5b1157a92dd0fcc7acb2c072964b6d03b450f49bd46ae3bae6016)", + "P->V[97024:97056]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 3: Field Element(0x464d5f44e85e6d44e992c7819f7dd615475ed1b6bea02ef7a8e4f7ccd195128)", + "P->V[97056:97088]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 4: Field Element(0x1f19ccc65bb6d78b3317512cb2a3a24f225ba8c5fbd9c9f075adfff6fd70ef3)", + "P->V[97088:97120]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 5: Field Element(0x1b50d8a65d8e9631101966eb17941311ca37c64b1089555139aa01a67385151)", + "P->V[97120:97152]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 6: Field Element(0x691b3fc167826aa11b9d1a422ad178be0273fa3b1920dda593c35b0b604ce3d)", + "P->V[97152:97184]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 7: Field Element(0x315a7def90e6af16cd274c4cd5e642349af683b114837d7b54b188b8bab54b5)", + "P->V[97184:97216]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 0: Field Element(0x18eb33b6a670dd99be7d10b1c40179dfaa9ed28874a519f3c6ef9a474c855a1)", + "P->V[97216:97248]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 1: Field Element(0x2960f8aca8ac02c89e02b927a18251c7cc2779e168517b8ea0f5be90aa448ce)", + "P->V[97248:97280]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 2: Field Element(0x36b8ec63c0fef3b687eae43094985b76ad054781d3e43a9b322f1c738cd613c)", + "P->V[97280:97312]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 3: Field Element(0x431e867d98d4ceba4049c0fd4e97bd260e67923021c03c162be2ac764e3c7f6)", + "P->V[97312:97344]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 4: Field Element(0x49680d94a9839638e720eac91265438e7426c214514cdbd23b4a2190c869bd2)", + "P->V[97344:97376]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 6: Field Element(0x6709a48c564802d33c4260a0dee311e61f1b8dd091dc532d4ddaa25ebbe0a37)", + "P->V[97376:97408]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 7: Field Element(0x396329dfbb0291f638d3169a90558f0b281e78fe0921aaced0c6da6b8646381)", + "P->V[97408:97440]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 0: Field Element(0x1ad100600c457801530d7e27060df4306ba799a1344cac7e695f5c4e373abb0)", + "P->V[97440:97472]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 1: Field Element(0x4ccb6f7ffa657714bc2a74ffcd3929061986d89a28e934974dd996eb02dd816)", + "P->V[97472:97504]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 2: Field Element(0x5a9bf3986ce307f904415b5be1d776b474088481e8a6e16fc8af18afab8c4b0)", + "P->V[97504:97536]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 3: Field Element(0x402faae97c70fca9b9242cf44be058130059d5dfd598143c2a3b1a37abbafb7)", + "P->V[97536:97568]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 4: Field Element(0x337161f0614e9d606031472d927a2cf5245f404c89a7363657d7a65941c2430)", + "P->V[97568:97600]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 6: Field Element(0x6092de7fefd4c941468c95d5d2d2c9a77b37cb51d345c8f5fc1eb3d60802e27)", + "P->V[97600:97632]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 7: Field Element(0x11c12c5b77079efd79d1dce3fae5a63e90cc81fcdc5f62e0f098a9f50337350)", + "P->V[97632:97664]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 0: Field Element(0x6c3dce998ce11de3965cfeebe5671749e0b4560e2c8e63eede50b39e6eba3ee)", + "P->V[97664:97696]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 2: Field Element(0x1af4c4432f7a0c5254000948bc4eea7414b1b836601a394655cc72bf82f0968)", + "P->V[97696:97728]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 3: Field Element(0x117bf28a82dcb78c84def3c56d70c1cce9ccc193bfacba47d218d0989bc06f5)", + "P->V[97728:97760]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 4: Field Element(0x5287ba4d65ed1c97d0ade1a687fc9fa50f98d33c71daa2b8cc457ae7b3970e4)", + "P->V[97760:97792]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 5: Field Element(0x3759f80b6a784ca41cf66983d5642d1d4fc5cf49c356ac7454cee6ba7ab0e93)", + "P->V[97792:97824]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 6: Field Element(0x7433b37718ca06c7fdc0db79b31e073b183d3220d8b6489c749ff157e2efe7a)", + "P->V[97824:97856]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 7: Field Element(0x3d1a5145c40e29665fa150ae4657dbb944e7607909cf9bb3c6e80c30988e27c)", + "P->V[97856:97888]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 0: Field Element(0x4d14c01dcd96a8d2313d463b60ce14e4849d54bc463289342c60d1f8f60ba9f)", + "P->V[97888:97920]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 1: Field Element(0x760cda189291845316187256032599483ef668a88cfa5d904921a857cc2ddff)", + "P->V[97920:97952]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 2: Field Element(0x54abca983c95256e5a3838f89dc58e14836ab982d8c77fabf4f9c070e326e0e)", + "P->V[97952:97984]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 3: Field Element(0x164b8cc8c04e02abc1433f721b4e89b09d38602b37250045440a73520996aea)", + "P->V[97984:98016]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 4: Field Element(0x6060b133a0b327226bbc386bb759c6b49ff7174354c34773e59536574a4ef74)", + "P->V[98016:98048]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 5: Field Element(0x3fb5313217ed213b130a5d6a01146346b0b0981b85f22c02b282a273047f7fd)", + "P->V[98048:98080]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 6: Field Element(0x27803af0f5597f988aec199e3ce0ae76acfa7fa151e10ccae30861ce64615cf)", + "P->V[98080:98112]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 0: Field Element(0x3cc2d3fbcc124a883d01608d982ac9128ad22498b796f2312106417a63a7e9e)", + "P->V[98112:98144]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 1: Field Element(0x29bdd2276c2d80a146107c136cb103499c4e67c4cfc849fbc9eb9f05415f261)", + "P->V[98144:98176]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 2: Field Element(0x1a719bb259c4dd2d7a9208344548fc6e67e5a4713aa325a12d6ea3dd1bf38b5)", + "P->V[98176:98208]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 3: Field Element(0x672a1ddffc190ee55463f57e961789c54faa3f30f80b30636a9c3d7a9420e04)", + "P->V[98208:98240]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 5: Field Element(0x1c5d8220d717aa1e090c9430835fb1c89a123bc2c501929be245a45b28b1620)", + "P->V[98240:98272]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 6: Field Element(0x5e54905bdf84e7fcc58b1475d9742fd5560971a99d0fb9d4e2b9af09b12b4f0)", + "P->V[98272:98304]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 7: Field Element(0x1385f38c2a960130e2752bdde2519f68d330d54862e15bfd0717af1814170e5)", + "P->V[98304:98336]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 1: Field Element(0x52e20d8fb0b42589fada650fdb67eeb20782527ffe8761110fadaa6163cb5e5)", + "P->V[98336:98368]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 2: Field Element(0x2cb7e27ce0cb785e0909499be836d22e1d77e6a8e9036266f5bc4d3e6339620)", + "P->V[98368:98400]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 3: Field Element(0x71dbd24c5d9e2a0c775f59b31ff97566c7797b19015ad81a8d8f10f6e6ea43f)", + "P->V[98400:98432]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 4: Field Element(0x74bbbff182b9249588f6da5b16a256c6bddfd36ccecccd79a6b6575761e3cff)", + "P->V[98432:98464]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 5: Field Element(0x3d8884205f231f2319c1ec843ce6ef2fbab7bd7f1d4647af8947f077d0a9ff7)", + "P->V[98464:98496]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 6: Field Element(0x5654587d3ffbf9a278efa0ee7868f539e587ebe6f9b575a199fc1851130b06f)", + "P->V[98496:98528]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 7: Field Element(0x63bc41c45f9403331ffc3a0aad45541fe435ed6927e21cd174ee02e86865612)", + "P->V[98528:98560]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 1: Field Element(0x33e58913c70c7f3fe41dab8a6580487b9309428cbb9353c043b6a40a42891e3)", + "P->V[98560:98592]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 2: Field Element(0x116699c6577e673ef3a13a01f303c3e6a4620dcd173f2461c86a68875664ecc)", + "P->V[98592:98624]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 3: Field Element(0x7b0e64ee8b44bf1f8f5743ea537219d19737c40640d16f979e270ff9e9f8684)", + "P->V[98624:98656]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 4: Field Element(0x1d581757104a79c2adcf685853a100ffd550d4bc113d1a6c0bf7ed8100fe691)", + "P->V[98656:98688]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 5: Field Element(0xf3437faecfec5171e947f012850bcb0038c7f5fe55b402a7ea96fac85e5c10)", + "P->V[98688:98720]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 6: Field Element(0x5e9e16663e58677f1bcc47bf21bcfb58f3401fb8ae3ed588945841e04c2675b)", + "P->V[98720:98752]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 7: Field Element(0x61063305f63901683308c73e2ead04ca72a6e1e8fa1a325c6c7b79a579bf4c4)", + "P->V[98752:98784]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 1: Field Element(0x51a89c575168074f9cf316823861afa29910f9a387f129d8b12d7a366a4fde2)", + "P->V[98784:98816]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 2: Field Element(0x9c332621230e53c22478645a7c09279524919b8c4f9cd0ea7412cc4bdef7b6)", + "P->V[98816:98848]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 3: Field Element(0x33b049fd2667c5be955afafd72304b623b98d9ac215bc80d31a852c5f6cbebb)", + "P->V[98848:98880]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 4: Field Element(0xdf67e6ecb4867dfb7ec5aabab63e4a6ecc71101857c7314f32ee66c99960ef)", + "P->V[98880:98912]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 5: Field Element(0x5c4626034cad9f65f0bcdae078f51702501dbe69e3b809b3f1168566eba9ac)", + "P->V[98912:98944]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 6: Field Element(0x36c7e0543a3337f24bafcee659b68d523b6435b5f64e8518e88deb0f96c5a1f)", + "P->V[98944:98976]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 7: Field Element(0x6e7b100a6d1f026ee11c9438ef0f482b1713c896cd74ed50019a78450012dd4)", + "P->V[98976:99008]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 0: Field Element(0x6e9961c137253c11f549630296a0eb42c776271da8dfc0bee1b50d207000d56)", + "P->V[99008:99040]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 1: Field Element(0x9db3e01ab1c5541715b93ae9e3063b48c10b7e2d5b341b798253256a7a1562)", + "P->V[99040:99072]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 3: Field Element(0x2de7cf0a98487ff6f14e6e3920c53be3892072c8b7bf455f6004489fe744fc0)", + "P->V[99072:99104]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 4: Field Element(0x5c6cd604d6bbfbdbe9355a520f98e7f2bd301984288f659b4a146baaf364671)", + "P->V[99104:99136]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 5: Field Element(0x1a04c4e2c04f92dfeea6d429efabd14ad4de125f0e96545e47bf6b5b810e543)", + "P->V[99136:99168]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 6: Field Element(0x11bac7de3245904be9c8ee23734059d26e3ca86a24ce08e7b2a9ae7e67812e3)", + "P->V[99168:99200]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 7: Field Element(0x23592918d67a29f648b2be528be376985927e97d713f20bc89d5448981bb5c0)", + "P->V[99200:99232]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 0: Field Element(0x5137e59875724a1e6a3463ba22eaaf70e202b2f610f2bd6d6aafb77b285a294)", + "P->V[99232:99264]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 1: Field Element(0x3554646ec76936884b08987771a9fd95f88725bba9ffbe76f7efa14be0a9165)", + "P->V[99264:99296]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 2: Field Element(0xe803bb7c854841412fc8565902199f1cf5e1465b87749d823c584ebbb77e4d)", + "P->V[99296:99328]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 4: Field Element(0x23d0880181dcb725ef0ce7784224a012a81a3549b52e320fe7e7195ce62fcad)", + "P->V[99328:99360]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 5: Field Element(0x60fb0cf1696f6f08fe2ecd27bc39428799719227649bc6c4f02c36db90bfede)", + "P->V[99360:99392]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 6: Field Element(0x1e7d10469024c946a8a27dbbb8c3cc1e8d4ceba810f27bf6c85f0aa9fdbd06d)", + "P->V[99392:99424]: /cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 7: Field Element(0x15fd0c9f50f0b944dcb6ce7b569f4d475ededd010de8aa3d94fb2a553682159)", + "P->V[99424:99456]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 16384: Hash(0x000000000000000000000000d7cdf13564bb99064428213dc520f0ddc6fe6a51)", + "P->V[99456:99488]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 16537: Hash(0x0000000000000000000000007df7082437d7946131d74a75d5e983b12863d0c8)", + "P->V[99488:99520]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 16702: Hash(0x00000000000000000000000028f93c999e620a714adff60bbe14c31a7fa4cde7)", + "P->V[99520:99552]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 18566: Hash(0x00000000000000000000000090cd6c79eb848e0e1d3ba1bbbde96177fb7d2783)", + "P->V[99552:99584]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 22335: Hash(0x000000000000000000000000efe16e8d8a6a296e706b2938634f095c5f614822)", + "P->V[99584:99616]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 22559: Hash(0x000000000000000000000000ed67067192f275e79f35c98f0c3ab3208b0528d2)", + "P->V[99616:99648]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 22854: Hash(0x0000000000000000000000005157735d63d4d64a4debeb5be421db598103240b)", + "P->V[99648:99680]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 23563: Hash(0x000000000000000000000000c168a72475f79eabf5ad67361778a32cdb3f06a4)", + "P->V[99680:99712]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 25739: Hash(0x000000000000000000000000f8680f7b5578bcf8d84f03f2bf3c48a9b9d41808)", + "P->V[99712:99744]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 26356: Hash(0x0000000000000000000000008ff264384b278e9a61201dbff09714f78234f05e)", + "P->V[99744:99776]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 27190: Hash(0x000000000000000000000000ad95f08746f2fdf0e6e8b6c05c9465502992ebd2)", + "P->V[99776:99808]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 27823: Hash(0x0000000000000000000000004ae43e4336fbfe29fc539fc9f01de6d39ebf7c82)", + "P->V[99808:99840]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 28177: Hash(0x000000000000000000000000d44176498abbbeba0d4517cb31f25cd9ddc7abcc)", + "P->V[99840:99872]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 29663: Hash(0x0000000000000000000000007c9687d8a5c625036d4b7c534901bb105751ac28)", + "P->V[99872:99904]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 29809: Hash(0x000000000000000000000000bb0262b402c4744935245871a8519011c1b72308)", + "P->V[99904:99936]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 30050: Hash(0x000000000000000000000000bd5fe92667b4d2bec813265ea8a9db8663b4ce35)", + "P->V[99936:99968]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 30787: Hash(0x00000000000000000000000076cb3ef9c0e382821ab5d114561c2d167ad5c88e)", + "P->V[99968:100000]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 8193: Hash(0x0000000000000000000000009d43644e1d2e6ef1b112ebc1c3309ea6cd2bca46)", + "P->V[100000:100032]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 8269: Hash(0x00000000000000000000000046304d6067bae677f638e3a258d3e4945d38bab0)", + "P->V[100032:100064]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 8350: Hash(0x000000000000000000000000ecd3c44ce646f41ece2e49a56d1a6ad22a4449c2)", + "P->V[100064:100096]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 9282: Hash(0x0000000000000000000000009c5ac930a2d7c177ade12cb9919247e6d92fb143)", + "P->V[100096:100128]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11166: Hash(0x000000000000000000000000eb48cd309ee4441bed8ddbaa358b1a38c92fe59f)", + "P->V[100128:100160]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11278: Hash(0x000000000000000000000000b345a22d1e0a7942f4d4bce374a4574e5b002134)", + "P->V[100160:100192]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11426: Hash(0x000000000000000000000000f831f5da14061118bee4dab2578e0312c5a2ce89)", + "P->V[100192:100224]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 11780: Hash(0x000000000000000000000000882f38c30b20f7c992e5957edd54d1462e0aa6b9)", + "P->V[100224:100256]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 12868: Hash(0x00000000000000000000000073fcf5d06ed9ee057a2b9f41eec8f72e82f36332)", + "P->V[100256:100288]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13179: Hash(0x000000000000000000000000f6f8423a246f3ddbf573b77ea5cd6d3c52b51a64)", + "P->V[100288:100320]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13594: Hash(0x000000000000000000000000c47758092dad42f2f1ec7ea1b85cc020fbd6637a)", + "P->V[100320:100352]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 13910: Hash(0x000000000000000000000000678e4e4b0c9d91cb05a0d30953fdf436de10c894)", + "P->V[100352:100384]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 14089: Hash(0x00000000000000000000000034c968ee9c490ec2ba47c7cbb0eac1c7da486f17)", + "P->V[100384:100416]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 14830: Hash(0x00000000000000000000000031c5238560ff1e1fc6cdc6c18581b2ebedd0d49a)", + "P->V[100416:100448]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 14905: Hash(0x000000000000000000000000b25ba1cc389aee2536856d9f7661bb8251eee46c)", + "P->V[100448:100480]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15024: Hash(0x000000000000000000000000a4c43f2aa57eea1b9cb3b2d21d72ebfa3c0b4211)", + "P->V[100480:100512]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 15392: Hash(0x0000000000000000000000004fe6aa3b1fb379995a110604bd3acb83eec49bd6)", + "P->V[100512:100544]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4097: Hash(0x0000000000000000000000001b21e4cd1a2b81c6215161d234495b50f8e7fa70)", + "P->V[100544:100576]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4135: Hash(0x00000000000000000000000006c3d181671821a161ccbfd6b2e4cd787b65b441)", + "P->V[100576:100608]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4174: Hash(0x000000000000000000000000756b1cabc281c33f0171cd04e8dfeb14eee7bf7c)", + "P->V[100608:100640]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 4640: Hash(0x00000000000000000000000048a18a290154efcf717a69ed4486e1a02a391f8a)", + "P->V[100640:100672]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5582: Hash(0x000000000000000000000000b26a6e5086062583b4dab087161e3837ea5b256b)", + "P->V[100672:100704]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5638: Hash(0x0000000000000000000000005bcd95c3db9c0f774923df5fe44b71899be9baf8)", + "P->V[100704:100736]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5712: Hash(0x000000000000000000000000f7e1914ba14a5d69366db245e8f2a1541e88e7ae)", + "P->V[100736:100768]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 5891: Hash(0x0000000000000000000000005132c473543eb54a7bd09229f57e9c55dc640ba8)", + "P->V[100768:100800]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6435: Hash(0x000000000000000000000000257496586c3a52fcd6e174b9d98259e1bf0cbae9)", + "P->V[100800:100832]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6588: Hash(0x0000000000000000000000002e0c7faa09b4cf6c0e358f4ca247a570c87216de)", + "P->V[100832:100864]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6796: Hash(0x000000000000000000000000878d86127b03fd85643f3452fd7249cf3ba8f9a0)", + "P->V[100864:100896]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 6954: Hash(0x000000000000000000000000428e386c1410df200bd8df74580a5dd0ade190b8)", + "P->V[100896:100928]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7045: Hash(0x000000000000000000000000a1c91e2bf35ae051ab76b0ea3dd38c84e128ee01)", + "P->V[100928:100960]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7414: Hash(0x000000000000000000000000f89ba62a45eeb5f8902adc32a08e664b02e51d9f)", + "P->V[100960:100992]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7453: Hash(0x00000000000000000000000034abaf3c9cd7e06f2d08036efb6d2fe98dead9dc)", + "P->V[100992:101024]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7513: Hash(0x000000000000000000000000b61d0a98a191476dbc66b6832a9948610e917951)", + "P->V[101024:101056]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 7697: Hash(0x000000000000000000000000eef60c64261f3ec174693c6d8bf738bbabcd1729)", + "P->V[101056:101088]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2049: Hash(0x0000000000000000000000005444d7610b739656570d34f3c225a87f8b43de51)", + "P->V[101088:101120]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2066: Hash(0x00000000000000000000000041612f4a28ccc9073cabc9c3c916389300ab33c8)", + "P->V[101120:101152]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2086: Hash(0x000000000000000000000000252a83a9295abecc43efea0d68d88939551effb1)", + "P->V[101152:101184]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2321: Hash(0x0000000000000000000000002724dcb854fe41ee0def08e30e1f89de535748e4)", + "P->V[101184:101216]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2790: Hash(0x000000000000000000000000279a8a9c397ec8d0701c5b0c2d48817862a7170b)", + "P->V[101216:101248]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2818: Hash(0x000000000000000000000000e864660180f8c0a4bd1e80160e61f072acee51a3)", + "P->V[101248:101280]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2857: Hash(0x000000000000000000000000101afe0b89781aa7df41e84ea48789bfc59d0342)", + "P->V[101280:101312]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 2944: Hash(0x0000000000000000000000002a4ff5e4745876f937dd832cf2942b2b2557291b)", + "P->V[101312:101344]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3216: Hash(0x0000000000000000000000006509aeac08841f2144b8f3165f72805d0bfc1f4b)", + "P->V[101344:101376]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3295: Hash(0x00000000000000000000000040bec24601292abe733a703b508748bd9d76c400)", + "P->V[101376:101408]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3399: Hash(0x000000000000000000000000ac5dc1778779bafb300f5c8f4241a4180d1d93cd)", + "P->V[101408:101440]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3476: Hash(0x000000000000000000000000878be6b9352c56587fbb80820f8ac64c2ba841e0)", + "P->V[101440:101472]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3523: Hash(0x000000000000000000000000df3c2c9b7f970ef1968a5bba8c66caeaa40ae409)", + "P->V[101472:101504]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3706: Hash(0x00000000000000000000000072a1b86915dd6aed348a319161ff3ad1d5949a97)", + "P->V[101504:101536]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3727: Hash(0x000000000000000000000000711b0245f8e8024fc8826ad2f04ad4835cf4aad0)", + "P->V[101536:101568]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3757: Hash(0x000000000000000000000000dbe3fdf7f99807a48fc165e77ba92d4752331d7d)", + "P->V[101568:101600]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 3849: Hash(0x000000000000000000000000294372231fbb94dc703ac2cbc871770248014715)", + "P->V[101600:101632]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1025: Hash(0x0000000000000000000000004757fcf005c4907279eed219c97f413cb26d5580)", + "P->V[101632:101664]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1032: Hash(0x0000000000000000000000005941f510d02d02e4977857ec4ffe58764156a064)", + "P->V[101664:101696]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1042: Hash(0x000000000000000000000000e4576d8a3482d6d6f7fcc30b2a1fafc137e8a601)", + "P->V[101696:101728]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1161: Hash(0x0000000000000000000000005245e1c9f6068537b2ff8f0053b9aa4a1d5873d1)", + "P->V[101728:101760]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1394: Hash(0x00000000000000000000000088411245b3261a288a3d4b824e1138f8e1edcedb)", + "P->V[101760:101792]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1408: Hash(0x000000000000000000000000074541a905b9f2e48265399edda7b873ce7e19b2)", + "P->V[101792:101824]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1429: Hash(0x000000000000000000000000fa56c29fd40a8de81b8b2d52548e42bcc3fb7983)", + "P->V[101824:101856]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1473: Hash(0x000000000000000000000000f611df083ed6f31f8d892735bc530b0decb1fff2)", + "P->V[101856:101888]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1609: Hash(0x000000000000000000000000f4abcd6583d78b2912613983846648351ddad135)", + "P->V[101888:101920]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1646: Hash(0x00000000000000000000000045d19805884bb5148c7a12cd30523e623bdb5fef)", + "P->V[101920:101952]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1698: Hash(0x000000000000000000000000886f92be180cde661c137db3bb687267aece20b8)", + "P->V[101952:101984]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1739: Hash(0x000000000000000000000000b747856fd0861f8b288e66977b74e2fdb0947a28)", + "P->V[101984:102016]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1760: Hash(0x000000000000000000000000f169a9817a44e80402b53e59387af9739ddc1462)", + "P->V[102016:102048]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1852: Hash(0x0000000000000000000000001fff4c96780effa45b60b63992f94d69a0981d66)", + "P->V[102048:102080]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1862: Hash(0x000000000000000000000000a81b82c547ee8579200687f303b0ce7cd23a006e)", + "P->V[102080:102112]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1879: Hash(0x0000000000000000000000003fb76052238370e9468441120f0c4f15acc13063)", + "P->V[102112:102144]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 1925: Hash(0x00000000000000000000000053b3ce2c2c4f695474cff7dc9f0d5fc34f0eab15)", + "P->V[102144:102176]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 513: Hash(0x84d607a7912c0f4eac40db836ab7dab8c6e571e0)", + "P->V[102176:102208]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 517: Hash(0x636b1c6431a91a0b273ce13f3d919300084a0cbf)", + "P->V[102208:102240]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 520: Hash(0x259e1e7488218be5b8b3109118b77a8da61d7f33)", + "P->V[102240:102272]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 581: Hash(0xd3d2649328f6f6441c3b68aa85711fee815b4798)", + "P->V[102272:102304]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 696: Hash(0xf0f73e37983afba21eb2270d24b2fb512f5a5006)", + "P->V[102304:102336]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 705: Hash(0x2eacfd8fa1b89afed517eb8c61ce22b474421e12)", + "P->V[102336:102368]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 715: Hash(0xf69f7d3df1bf67c722eaeddd660e73a5ee7f511c)", + "P->V[102368:102400]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 737: Hash(0x6b031b76d9bf7853671fa57392153cec4f95b6e)", + "P->V[102400:102432]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 805: Hash(0x3f280d652e39ce806b21c19e833e4d9f526f07ae)", + "P->V[102432:102464]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 822: Hash(0xaf3fb1d49394fdabbcd5d25b7b31b4009ae5ce4)", + "P->V[102464:102496]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 848: Hash(0x8a39affdd0cdc41e2474a2d17eb4074877abdab)", + "P->V[102496:102528]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 868: Hash(0xadf01103d6931c885d0a68bd206065f5d3e95110)", + "P->V[102528:102560]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 881: Hash(0x73d8f098ff1ead9a2fca1b0d2ee3f52350741e49)", + "P->V[102560:102592]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 927: Hash(0xa68cadf36d57c02cfbc9a6fb3e7d444c25e72db6)", + "P->V[102592:102624]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 930: Hash(0x4f63fcf2979b97b475a4bb24bc187ed831f97dbb)", + "P->V[102624:102656]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 938: Hash(0x472f3a536ebef658bc85036afb7506a2c218299f)", + "P->V[102656:102688]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 963: Hash(0xeff5770ce67ddb18bc67a1ef7483af92d703c150)", + "P->V[102688:102720]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 257: Hash(0x26f3bc3e51c4832efa8381f88ae0a7159919a8dcddb6f58484dcbe40f1b7135)", + "P->V[102720:102752]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 259: Hash(0x320e93e2bfcb56879c4f68cd58bbd45e05578c63c11c760b4d698704872e8b7)", + "P->V[102752:102784]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 261: Hash(0x628e3495384401d1496ba56ac3f0a8110a5fd7b5c7f797b1f677470459e1df1)", + "P->V[102784:102816]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 291: Hash(0x1c991985769c17676a1c5e8a36f82ba8473f8db85be1a9d124dc257f5bf8049)", + "P->V[102816:102848]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 349: Hash(0x71a49d5f50e268412e78d7fb89dceb79bdd6e6416848eef4fa0db0484170621)", + "P->V[102848:102880]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 353: Hash(0x221da826f006a1d46cf4096d8a14e1f6e97470c791d4031874a63f9dbede8bb)", + "P->V[102880:102912]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 356: Hash(0x6317582649101bb57831800c721e1940d528977885c4c7ebe025f5c8c44b059)", + "P->V[102912:102944]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 369: Hash(0x246760699e9fb587821717e5e2ab30c7f0a4bf720087bf1575f1451f578ecb2)", + "P->V[102944:102976]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 403: Hash(0x25c885b09a04910f494749f5d76146893682b58c32c824f7f5b9efcb2182e89)", + "P->V[102976:103008]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 410: Hash(0x16624379d4cd300ab964438578cfbbf464173666aa85897b50dce337e763e85)", + "P->V[103008:103040]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 425: Hash(0x23e06c1a7c4d1d8c8d9f12964fd1ee7dc6bd52818ce0b4dff1840d10769e355)", + "P->V[103040:103072]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 435: Hash(0x483d077599103abb007a271a47e9e2122b9687ff3bf37fd35ea878ac27a26a7)", + "P->V[103072:103104]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 441: Hash(0x4850d3db47410a7cb56372f6d21deb108313d32436b61babc93763c0e04cb18)", + "P->V[103104:103136]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 462: Hash(0x5ca05b91dd47fd2c64f971db75d27740a726eed903e133f81694203f0793b7a)", + "P->V[103136:103168]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 464: Hash(0x2c08e131fa0fe234ad811c3378f6a887aa85009eead509049241c63877da55c)", + "P->V[103168:103200]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 468: Hash(0x6efbe147e3fbae966c7672de8e4916321f3cf85a74fbced5fcb1362605e8c60)", + "P->V[103200:103232]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 480: Hash(0x59c927b066c13b86734aee142893e2a1ce5ff3859e5a0aebd8db00a4ee96728)", + "P->V[103232:103264]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 131: Hash(0x3181cc29461e68c98daa98702d0cfbef40a41dc0d4f41d750d86ca2c3b78aa)", + "P->V[103264:103296]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 144: Hash(0x1498a1f2262318f0b4b8b5fba5170d067cd3f0a0db7783a40a58d86d1402e11)", + "P->V[103296:103328]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 175: Hash(0x1884ca158855809c60a25e4fefe910b1c06754ff5d79db26587bd1e49cc2bdd)", + "P->V[103328:103360]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 177: Hash(0x3aab14ff89d53f9951515a003bfa6dec7b082a2babb9c9dbe161f6ecdecd93b)", + "P->V[103360:103392]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 179: Hash(0x3c9c202112b85c70adf738466fb2b5a355955941fca34c79ef68643866aec6e)", + "P->V[103392:103424]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 185: Hash(0x60bab7b5151b3285c6d5c8c60450161cef252a73e98ce32d22b8bc67e09fc97)", + "P->V[103424:103456]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 200: Hash(0x38d1b623c3b37f803776005424f680d415b84d85555e6c1bc8b03d53b0f20e0)", + "P->V[103456:103488]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 204: Hash(0x4f817a87f93eeb889f8eb0be4d05c305c51a28abf624cc650d15a0f4ebafb5e)", + "P->V[103488:103520]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 213: Hash(0x3e527f1b4b3c712a171b97b2742f85196e502c09de4c03c990713726b60e19)", + "P->V[103520:103552]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 216: Hash(0x3c171149597a016868da832421e0e7cfd92201e64f948c8e0b181ac835c664a)", + "P->V[103552:103584]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 221: Hash(0x3870da97bdb7cad0caf7e645deef623dbd12e7921b00b435860c7039b4561b5)", + "P->V[103584:103616]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 230: Hash(0x49e51c1fa439cb99373b27e03d83b572aae9226ba67534aa0712d5a2ae69ba1)", + "P->V[103616:103648]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 233: Hash(0x145c5e3358cc1a37a0bc81796d7968eb2c9879f85e08306789b270852798088)", + "P->V[103648:103680]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 235: Hash(0x2fc458c248447a28e7494bc77944b0386142e3152f2881686173b018eb5fb90)", + "P->V[103680:103712]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 241: Hash(0x253c1ee895ef92d68923c758ae144f95b236cdcab556c69a4b20a48eaea7984)", + "P->V[103712:103744]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 73: Hash(0x1ec48a68d5e20463b6d0b2b4468c7c849b0fef5304bd81408240bbc56970a82)", + "P->V[103744:103776]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 86: Hash(0x20b2770ff60df5bfe0ffb6c0d8fbfc82f0ce47d973477a8dc7593c83f326ddc)", + "P->V[103776:103808]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 93: Hash(0x35c402a72221c5ef4214aa5f3d33fad77437f7d389e5bc9134a105e6cb39720)", + "P->V[103808:103840]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 101: Hash(0x31052dac9c7749dbc142c97468c4782b4d33c019b3afbb10b12f8c2af5664ce)", + "P->V[103840:103872]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 103: Hash(0x4f420f083127b813b596190c38988ce35809d27a7f6cb46f647dc9009d05a31)", + "P->V[103872:103904]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 107: Hash(0x63355d446abbb372a03736aa2a347ff535e3aa6adb01e28cef56969dc401d37)", + "P->V[103904:103936]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 109: Hash(0xd305d0f6aca2428967c7e7667550bb5c37cf780973cd9c343c1323d8dcad9a)", + "P->V[103936:103968]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 111: Hash(0x4f944633e380a8f47c54c70bbc98e2afb73f8fbe1feb849fe00e2793409f78f)", + "P->V[103968:104000]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 114: Hash(0x143cce905cb9110224520b7dd04e76c95e392106a258b85d876746f10827696)", + "P->V[104000:104032]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 121: Hash(0x44eded16f94b88f8b99a230844f611fbf09ea67800ef2df9dd32c5ed8f5ec5f)", + "P->V[104032:104064]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 33: Hash(0x2fbdd30f0e2dbcf71ef8103af654fe5b224881c4f502f79e12d108bd3f72c46)", + "P->V[104064:104096]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 37: Hash(0x353eedd0558f5a6ab62e4f78e1890a114b6bf1aee48a528b9a0c234ad2f2345)", + "P->V[104096:104128]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 42: Hash(0x404ab8e846a9ff7493b9fb0ba082d1b9812e1e9126c451b80127307cb748d19)", + "P->V[104128:104160]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 45: Hash(0x2285cf17d02d7d5337723296aa0f354abb17886964e9644b1cf26b49f34d4c1)", + "P->V[104160:104192]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 47: Hash(0x79fa1956a62be02a7a7f90bdfe03f458bc53eb67cda5b89f177afe83ede8b37)", + "P->V[104192:104224]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 52: Hash(0x19ed2e12ee3b12e136bc10155f26bc21d60a6738d3614d376b6631a6ce133ea)", + "P->V[104224:104256]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 56: Hash(0x19c416c3ded537a06578298c6ab952bfaa26cf2c130884f8dfe46b3704a7708)", + "P->V[104256:104288]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 59: Hash(0x4538b5506beddd326cd457833adf3e71a57970be8d1c65fbbd34182c6bb0ca6)", + "P->V[104288:104320]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 61: Hash(0x51949339a3f7f2045f8535f5f25f1a692a3d2fc7f1f8e0bd2ff2bead4a26f23)", + "P->V[104320:104352]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 17: Hash(0x4bd9e8f1e7e676d17aade7c6f1a6178f3812a9b26740bdb7f0905241eeb0cac)", + "P->V[104352:104384]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 19: Hash(0xb629ce2bae7bf2cd2c5ade757b55052a147982c60c7582c1cc2da7584bb8a1)", + "P->V[104384:104416]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 20: Hash(0x75f37e66eb411af0b192bcb2538ddccce6f61da0eab7d478470d37c8536a5a0)", + "P->V[104416:104448]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 24: Hash(0x39d2f1a9a4a2bf4e6fa1f79a23408595a6f13f47954faed4940530fd9d3b5e3)", + "P->V[104448:104480]: /cpu air/STARK/FRI/Decommitment/Layer 3: For node 31: Hash(0x679fa3b9397a727360706b0445696a9746af67b48862b6efb97db5a68e0954e)", + "P->V[104480:104512]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 0: Field Element(0x59d3ff98d9e6bc2563000359cba9cf2133b1b5e8bfe973fc375533a3d2a7a25)", + "P->V[104512:104544]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 2: Field Element(0x1f00b75b9fddd4e05cb9bbade248fef0a1b1b36ebe24096ad13ab5910c6cac5)", + "P->V[104544:104576]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 3: Field Element(0x4ddbb73186c25f2762fd58fe92ccebb77b9aff710ba41f01e01df27b2fae038)", + "P->V[104576:104608]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 4: Field Element(0x7c59627cfe6f220b21b8796c99addcf2360b08a84d97ea37a2652d13da67f16)", + "P->V[104608:104640]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 5: Field Element(0x6a6595b37f59c99942ed837e8327e38d9ec59a8ceda19f0873a6b9b5ee9a4f3)", + "P->V[104640:104672]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 6: Field Element(0x646fe003ad47e13eea41fe26513c766231486f9293761cab2192fd5738417ca)", + "P->V[104672:104704]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 7: Field Element(0x57cb5329a0480d18482846f4303d4be08d7ec5aafa0e12e0f46310e13ededa1)", + "P->V[104704:104736]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 1: Field Element(0x316bcc2083075782cb540e160bcc607e98c4b19b9907b9fe4294e4279f2dff4)", + "P->V[104736:104768]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 2: Field Element(0x221757fb29940259d74673de740f7f38a4ebaad3df121a3afb2021d1c4d03fa)", + "P->V[104768:104800]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 3: Field Element(0x77db20509fe6ad3e1a1ba4de40e74b14b1b1bdd16dc4e715da72499356dc226)", + "P->V[104800:104832]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 4: Field Element(0x534f48518ae1b34b28f44feefa63a84c81b47be987624ecb00dee096f8ad370)", + "P->V[104832:104864]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 5: Field Element(0x747674d4a124e786f975775fc78c1885bd3c9a77c4e65896b2d13455ffabbb3)", + "P->V[104864:104896]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 6: Field Element(0x7cc0eeb069e006769e21a92d2aa8d938170225ed70d8c4b9003154cc4042370)", + "P->V[104896:104928]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 7: Field Element(0x2416651f007cccef9ec96764f96357d8d7a1fc51cfda32de6b28b21d0cd0ddd)", + "P->V[104928:104960]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 0: Field Element(0x56aefe688b374e08e69a43c1d8de7fe4ea21ef09acb6fa2b37b5b865f39035a)", + "P->V[104960:104992]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 1: Field Element(0xc347f8f247f784593b47ca9fe13fbea9720804ccde58b47d0bc43bc9da4a86)", + "P->V[104992:105024]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 2: Field Element(0x5225327b79c990aa0a33b4e06d8eeccbde0cfe935e576a1764074ac4443bb1)", + "P->V[105024:105056]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 3: Field Element(0x304bb072919fbdd3686dfb735a0e96dba947774f58443b8b3766a45080022b)", + "P->V[105056:105088]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 4: Field Element(0xf5ef0a12325b3479d029349ac22487fcd6a33933ef0eed8bfd93f307dfd0a0)", + "P->V[105088:105120]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 5: Field Element(0x4bce12264a3977fb9ef1966a3acd3a68076cb6275b3466f3a35c01faacebc13)", + "P->V[105120:105152]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 6: Field Element(0x660214b9029a96e59607b510cb427bb3c2a23df750555340d6242b4ba2b8eae)", + "P->V[105152:105184]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 0: Field Element(0x3495214d2511ad66d97120268f23dce1a7cbab0f31314415242d6b6641acf7c)", + "P->V[105184:105216]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 1: Field Element(0x139d947c1e5e1812cb6222f328583cb328f0f1aa4b03b49f2d0e5164cafd317)", + "P->V[105216:105248]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 2: Field Element(0x50fb9808a8872877c20d04113a1852c28bc89856f8ad86c556fcce8f160f956)", + "P->V[105248:105280]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 3: Field Element(0x237f08c31f4e50515e381ce583a7456703338c5b29544d6805e4e6d5df7afe0)", + "P->V[105280:105312]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 4: Field Element(0x22b1824dedcf5cf3389fa7dfbeacd95b61d365c5ffaf21f6a4b1563f48da937)", + "P->V[105312:105344]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 5: Field Element(0xf79eeb0e538674a981d321abf9bc00f1901b6e4099d466a52627056e523a29)", + "P->V[105344:105376]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 6: Field Element(0x5e0945393d5f5e03a76f5ddd996424051b4d5d90568df716c0978281e42fe74)", + "P->V[105376:105408]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 0: Field Element(0x3d698f63e29b68365819b54bd9d5078a600f97f9cee49786186100424cd28ce)", + "P->V[105408:105440]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 1: Field Element(0x184b2f161279eb32fa0ce5249da39dc7f150f59a5be3e219dc9b5f9b29114d5)", + "P->V[105440:105472]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 2: Field Element(0x770edd0991a90b6a231efa042107e067521c7eb86528488e50924da528d1317)", + "P->V[105472:105504]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 3: Field Element(0x66a2fc587df807153b69203bf2cb71137f53f98d07335e8f8016ecbd339c6d7)", + "P->V[105504:105536]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 4: Field Element(0x45e6117b0090752fec6afc6bd06d518dada917230a3fb035edf9aa77f3f94ff)", + "P->V[105536:105568]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 5: Field Element(0x2503019d9588a5063ccfa01eefd09e22a39e05b37134dc28178d309349fc80b)", + "P->V[105568:105600]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 7: Field Element(0x6c60fab5ac45b8110385a9338ad7c211815f4f2af3b7e01654d7f299b66c434)", + "P->V[105600:105632]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 0: Field Element(0x3ffc564ce08434bd8b1dac3d2b859f9ef6c371c5896431817e1bf152eebe22c)", + "P->V[105632:105664]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 1: Field Element(0x7e114807df192a491b3533e992849b3af1ec469883fca875964df6e6d41b7aa)", + "P->V[105664:105696]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 2: Field Element(0x36e1bea193b1e933def5a8a61e1ee0d50911d8f440ed41d5b9e84572d0039d0)", + "P->V[105696:105728]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 3: Field Element(0x1c5e78a887576e1a5af35fbc07a70b0fda35a1785d4b4f0bbaeef4b0421aaf)", + "P->V[105728:105760]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 4: Field Element(0x7daea5ba333fa077bbc788bc2c996f96bc2bee210fa7dc842979a2df1311834)", + "P->V[105760:105792]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 5: Field Element(0x7a338710de1eda4bd82d510859edd54b5f3434f561a775b893c782f1cf55608)", + "P->V[105792:105824]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 7: Field Element(0x71bbe9dcb8baa5ac481f2548b25008aed8e545879bc6ca0002c679437f486f0)", + "P->V[105824:105856]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 0: Field Element(0x164c6eb18a52db2f8a13ec927fe4afeeb149119efb6940e48d2100c7753f056)", + "P->V[105856:105888]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 1: Field Element(0x21502be86879142623f3659ec76eb0dd5343b973abd65a6ca58088f4b8c27db)", + "P->V[105888:105920]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 2: Field Element(0x32b3fec785472b4a3e12d5f7a02157a2fa935421a91289e660a9271b819c742)", + "P->V[105920:105952]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 3: Field Element(0x36d05977902ca8a04fddd23b8087d15efbed10d458dbad2d44540ef5faea7ac)", + "P->V[105952:105984]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 4: Field Element(0x3f1bdf22e79494be67d355e43cfa904d585e9541aa0455b415bb812af556641)", + "P->V[105984:106016]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 5: Field Element(0xca4f6ca327c48db2fbfd0182865c398a759378d47fd3327df842b60f984de8)", + "P->V[106016:106048]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 6: Field Element(0x6be8927f496afc8c06d9fc376a0d6a9fc46ac064e9bdc2fb56734b53cddb586)", + "P->V[106048:106080]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 0: Field Element(0x59d8223acc514c707a4c593cabb2052d2e9dc4a980d874b3df97db08821528b)", + "P->V[106080:106112]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 1: Field Element(0x5e104cd741f699d0775dbbe8a3af9c93ae2cd37ae6df98e8b5370a8c323c427)", + "P->V[106112:106144]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 3: Field Element(0x58bd6be698faaa70bfbd955c5eabe824cf38b2b91499d630610b58a4a349060)", + "P->V[106144:106176]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 4: Field Element(0x71e2198557ad055099e502f9f590a2c57699a7988d5b28041e942ceb5b2d9bb)", + "P->V[106176:106208]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 5: Field Element(0x71392454cdae12f74cf951108f2f3dd7377d57b0d5b554580042f233c32c479)", + "P->V[106208:106240]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 6: Field Element(0x757dd4dd7f831802eac5bf7504419b92552fdd4b406e957787e520c228cad4a)", + "P->V[106240:106272]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 7: Field Element(0x129b4032b575884051195145d9531d398c98466e4d734a96891d87521d168a9)", + "P->V[106272:106304]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 0: Field Element(0x219eed53f8eefa81d463e832138b002faab903c2a9c2e50fa2ab8771665d77f)", + "P->V[106304:106336]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 1: Field Element(0x2e7ed23cbdbf308834a612bf9b30bb71ef8f557cb2b3afc052189ec969f60de)", + "P->V[106336:106368]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 3: Field Element(0x233761df2647aa58059d4b18d6a6cca769e9c346992ab7d51b96e252d187355)", + "P->V[106368:106400]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 4: Field Element(0x1e3bf0b3fa8a793094061a309fdb075d532a50e7599872fc2a3855b82b5fdd4)", + "P->V[106400:106432]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 5: Field Element(0x201ef515218627dc9e1a25bbfcb95da156876d6e03e04b7fff3a9374d7c4bfa)", + "P->V[106432:106464]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 6: Field Element(0x1e5926261bf8ecb511bb455a369c198c61d46e910e478f5483eb8bf8b21a220)", + "P->V[106464:106496]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 7: Field Element(0x38c38448f6d1815472be1258e7187cd775a16997485c95274c9d6febf55a741)", + "P->V[106496:106528]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 0: Field Element(0x4f53061fccf4ab6bf9d0adb6d42e1554f63907bdc9a781e5a38c0ea34aee01c)", + "P->V[106528:106560]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 1: Field Element(0x2aef792b7c51b5d9c287061d8e92e5cfe12e0a53e7b9eb29f31e2279728492c)", + "P->V[106560:106592]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 2: Field Element(0x6d30d75ffce8673a7b0c3a19c169bf1619b6507a13ae327d8bed20c8f867c10)", + "P->V[106592:106624]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 3: Field Element(0x53d5ff002060811b2179ad3103f58a7384aacd0481a24c65497571989b2b23)", + "P->V[106624:106656]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 4: Field Element(0x1fbef1fc2188f8ce43998f5b6be69738af1082f0645898947731a52445e7a17)", + "P->V[106656:106688]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 6: Field Element(0x2932d65b8aa6a1405d7a478f8436a1ea48871a64e54e8a4bbea55018b79e24e)", + "P->V[106688:106720]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 7: Field Element(0x3b4a1a4bc17ef6e21b96db2fff570e1041b0065f5a6789abf23490a86639c81)", + "P->V[106720:106752]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 0: Field Element(0x6037d5b0680f1b83d42eeae12b645e7ba529344ffc386009562e09fc9e94326)", + "P->V[106752:106784]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 1: Field Element(0x5de25029649881651d2349404691ea4d68e4b112a23999684f5bed3e7840f54)", + "P->V[106784:106816]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 2: Field Element(0x1fa55d1bf03c96da7b1ad61e98c43792fa5af81620a3407b77190b5c92d21e5)", + "P->V[106816:106848]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 3: Field Element(0x5f6bda1adfbbb83ad16cf1574b9a6b1544c623005d60e965aaaa2a9d335b43b)", + "P->V[106848:106880]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 4: Field Element(0x3ef07bfaef9621a9a6a6c59b8e8a18951798267ec6c1286ec56ca62eeb62e33)", + "P->V[106880:106912]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 5: Field Element(0x1e063bfe1005c7b7ad3f353aea3058b587370495b757bf764422183bea59c9c)", + "P->V[106912:106944]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 6: Field Element(0x12a427e98d4a1b1fea748d50c94c4b83b09d472e2e6eacc4135f3a1468857d9)", + "P->V[106944:106976]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 0: Field Element(0x79b69cc161b1506d2b80fdffca8d78e368757bcecf117abcd0ab1820f35408b)", + "P->V[106976:107008]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 1: Field Element(0x211df44a33527c31d870549b1696b166935fc4cec1d50815e5fea35777120d5)", + "P->V[107008:107040]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 2: Field Element(0x6780d080bb21c7a9d1da534def314da127ff9f5a9bafc465bc7c559d01cd607)", + "P->V[107040:107072]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 3: Field Element(0x59db0dd5d49247fa03a98ebf6c2740d36f79754107e2899b7cf1167d64f2af9)", + "P->V[107072:107104]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 4: Field Element(0x78366be5ab1955d87557a00b62e42e87bb6155a13259bdfedddfbb6c1aabef2)", + "P->V[107104:107136]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 5: Field Element(0x407189c3ca5f804d945024fa0ba5d4fd8c08092b972f01159aa829d51aac4a8)", + "P->V[107136:107168]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 7: Field Element(0x12b2e987d7d0a1f781b2c57e1b2647e9de2ae2a5bcf8bba559eb1eb43a6e3df)", + "P->V[107168:107200]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 1: Field Element(0x797d0e185be879ca15b19c8d95d6a03c898ed87c810a7bc2b88039594324b18)", + "P->V[107200:107232]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 2: Field Element(0x23c9170f22021702f1c20ce4c03b91d2c83ad93e6af8f113ff8a4e5be1d873d)", + "P->V[107232:107264]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 3: Field Element(0x84459b0b63f61ffb6fa5750d95f9cac23aef3da02a34a307e257e3d5326fcd)", + "P->V[107264:107296]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 4: Field Element(0x6787cc05e14902ea5c3419b4e09638eee854a5831f42c62891a7596eeb794e5)", + "P->V[107296:107328]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 5: Field Element(0x4b65f21d4a8e67bc11d0c2f9981e7d7ad524a5097a7ab4c679185d5d9618632)", + "P->V[107328:107360]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 6: Field Element(0x774338e980b6d521eb4268ccd9ad0553f6f51eb96b08a577efb0d980ae4cf9d)", + "P->V[107360:107392]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 7: Field Element(0x762f5671a8532a050ba5fc8934bd6a51b88d215ffab3e36c570fb4bacf60668)", + "P->V[107392:107424]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 0: Field Element(0x56f90f1ee568016bebf3c86d4de24767e8136deb3d1095ec15151d168a924c9)", + "P->V[107424:107456]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 1: Field Element(0x12723fe7d4d6a8d7ced2166d9342db9a847f67e48bc0e036d08fd9dd8c9302c)", + "P->V[107456:107488]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 2: Field Element(0x1a9392c8df2b1378104313b78b222bde47097f3e6bc96e31ae1bc6cb8268751)", + "P->V[107488:107520]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 3: Field Element(0x11af7ac9a10e1757262c70b6c5c4589629bb2ca055bc76d4c8e64cdccfa8235)", + "P->V[107520:107552]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 4: Field Element(0x4f6fa2521378b4cec778c9af66cfeed40479dc5c58d96a1be0ec1d7ef671266)", + "P->V[107552:107584]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 5: Field Element(0x63675670a6cec0775498be9f52670f0a8f69ebbecf0b8f78ae1b1a5ca707584)", + "P->V[107584:107616]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 7: Field Element(0x117103fe25b3987e777ecba07bd6d587d7f5f55063d59d739fe408326d6f9b1)", + "P->V[107616:107648]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 1: Field Element(0x5838c8c38993773e15d4f9856a6515f55542ee1f77ae4e37b94ccf52d0c9790)", + "P->V[107648:107680]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 2: Field Element(0x2e734bad2005d2bdab4e18ff9e6625b3a8fe48ef395af850a1995dd94d63e1a)", + "P->V[107680:107712]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 3: Field Element(0x5d57403ca5a91798ac6df4f505c27d804e47a194952efa557f0582f2842181f)", + "P->V[107712:107744]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 4: Field Element(0x534da7144d845e203b583db3de6d514a6cd47da35bcacf8fb70c4b27fc324dd)", + "P->V[107744:107776]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 5: Field Element(0x551353fdcfd59924401a8781ff53fe3cd31b1294ffac870ce73cb1a3bfa6325)", + "P->V[107776:107808]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 6: Field Element(0x797f31790b37a9ac53df1fc80cd6816f0f141737c7c5b693cfbff6229652e9e)", + "P->V[107808:107840]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 7: Field Element(0x1f7b44f2bcc96d3e10b13eb44f4f11a7f5812766e1a2f0b4e57cab4390fb3a3)", + "P->V[107840:107872]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 0: Field Element(0x3ab07695fedc07a4afcc051b4ed374af4a9f5d4859844830c727f5d79104e3a)", + "P->V[107872:107904]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 1: Field Element(0x2739c4d2cab331dec6cb61c116981c0e0f821580be9bc990f589d3dbea40d36)", + "P->V[107904:107936]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 2: Field Element(0x24ec7d5b59621cde8331b40cbd9e18bf2837bbf8e06ba7a1c8d3c222afcbfae)", + "P->V[107936:107968]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 4: Field Element(0x574878dda9739657db0893bc896c52a0e503bdc1ecaf745027f9301f19f3bce)", + "P->V[107968:108000]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 5: Field Element(0x34ebb4dbeab92263da82c8c6ff109d9f9f640c2da29f1ad1e97a62caf59a59)", + "P->V[108000:108032]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 6: Field Element(0x3f8fa406adf1374df0d97dbe15c0ee354cbd23b897a7ad75fc252761de39566)", + "P->V[108032:108064]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 7: Field Element(0x1cba2093cf899469098e67839aaa43cc44cd6b5c2b16ff3f1e78d6108f78782)", + "P->V[108064:108096]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 0: Field Element(0x74c81ec853517fdd4da348f9d4c413bf81591aad8dfca1dee9a2377fdb543f8)", + "P->V[108096:108128]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 1: Field Element(0x7e1bf1673f5d5866fd8ea6428e72d6e391e619e376f8763c6377a75cc339337)", + "P->V[108128:108160]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 3: Field Element(0x4521465a487ad1232637ba6ef2a2383a6cf3cad8af58651b90768b26ba57e99)", + "P->V[108160:108192]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 4: Field Element(0x45c62893dcc985aa34f8aebd4073dcee33b6b7c3fbcad65da341ab25ddb50e8)", + "P->V[108192:108224]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 5: Field Element(0x38a8548a18873efc9019c4f19e5ade1298cb6d890b24befb7e907f42c89e49c)", + "P->V[108224:108256]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 6: Field Element(0x40f465448089d2672f68a36952e3ef9dc1261c00c568a44f468e9b8e0aac5e4)", + "P->V[108256:108288]: /cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 7: Field Element(0x17c7193eae225a16cb494ad30492ee5dd15cc27516b003a4e0a80a7d5575c4)", + "P->V[108288:108320]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2049: Hash(0x000000000000000000000000cba48a60cae274ec1f5579675f570a323dafb325)", + "P->V[108320:108352]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2066: Hash(0x0000000000000000000000007d2fd4f7c9d7e2c21b943d3f490a30a8e18d737d)", + "P->V[108352:108384]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2086: Hash(0x000000000000000000000000954c11be59133fe3e136888efeeed02e477a9f76)", + "P->V[108384:108416]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2321: Hash(0x0000000000000000000000004aef9f64730009d20ed29733f18650af499699b4)", + "P->V[108416:108448]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2790: Hash(0x00000000000000000000000098c2673b433788f4db7e7a8e43ab4833c0c6e693)", + "P->V[108448:108480]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2818: Hash(0x000000000000000000000000e034467a0a8d5e907b88e1bb8d0623f044c76288)", + "P->V[108480:108512]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2857: Hash(0x000000000000000000000000091be10665c53f687156401adb478279b2447e25)", + "P->V[108512:108544]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 2944: Hash(0x0000000000000000000000007c9a228983bfbe8f88f5ae343beb1014d75fa426)", + "P->V[108544:108576]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3216: Hash(0x000000000000000000000000fb810ffefffc6d8bc6aeebcfd6ac6a64e1573b11)", + "P->V[108576:108608]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3295: Hash(0x000000000000000000000000cdddf0ae4cf63211f8505300272121297dff299b)", + "P->V[108608:108640]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3399: Hash(0x00000000000000000000000073be1b24873b5307c35540deb8638e80fabe8633)", + "P->V[108640:108672]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3476: Hash(0x000000000000000000000000f6537947aea375588e9f0bac070d0df25bee9421)", + "P->V[108672:108704]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3523: Hash(0x000000000000000000000000267d830f3792abd6a1b93f1125a98451a5e1ccd0)", + "P->V[108704:108736]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3706: Hash(0x000000000000000000000000f73c30e174e1655a144005e9f9374f450096d760)", + "P->V[108736:108768]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3727: Hash(0x0000000000000000000000006d4dc913275f51f4d923b766f34cdc2e9f7b3842)", + "P->V[108768:108800]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3757: Hash(0x0000000000000000000000005b6578244d023844ae4827784fcbf90a7554ce9c)", + "P->V[108800:108832]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 3849: Hash(0x0000000000000000000000003104394e2d84ed8e0c03f46a1d988e8dc2e57693)", + "P->V[108832:108864]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1025: Hash(0x0000000000000000000000003e29bd4dd9ad699dd6eac128be5cd6f6c8e8701e)", + "P->V[108864:108896]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1032: Hash(0x000000000000000000000000ef374190981db9987cc71e17918ed16c294a5108)", + "P->V[108896:108928]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1042: Hash(0x000000000000000000000000bb64d94eb0c07abc1b9396ed446b4378cb4b7ffa)", + "P->V[108928:108960]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1161: Hash(0x00000000000000000000000097549db63ee06d9a03e34bf46d0ec25d4db93eff)", + "P->V[108960:108992]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1394: Hash(0x00000000000000000000000004a242c455c49da1f189d52250d5dcc6da4dbce0)", + "P->V[108992:109024]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1408: Hash(0x00000000000000000000000058cf95d5241f51191ad831ca45da3e7e0b1a4d49)", + "P->V[109024:109056]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1429: Hash(0x000000000000000000000000bf3cb501a81b372166aa26f3cd784f8ad8baa57c)", + "P->V[109056:109088]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1473: Hash(0x0000000000000000000000009d2d37aabe836cffc0b450f640a3ad2c4b83b7fa)", + "P->V[109088:109120]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1609: Hash(0x00000000000000000000000028a266050a18e8d2992af69ad001adfec8932439)", + "P->V[109120:109152]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1646: Hash(0x0000000000000000000000000653b02ebf1c6051540e4af54170175f8fda8b9d)", + "P->V[109152:109184]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1698: Hash(0x000000000000000000000000840057353556a20eed13c3b9eccd7ae5ff7977c5)", + "P->V[109184:109216]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1739: Hash(0x000000000000000000000000eb82f06d70a4e8d7c5a7176699e4a53adbc45a26)", + "P->V[109216:109248]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1760: Hash(0x000000000000000000000000844730e3b9c596e594f64dbd70579a28e5d9945a)", + "P->V[109248:109280]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1852: Hash(0x00000000000000000000000099f214064112b9231b18b35e0c41041ab050bbdc)", + "P->V[109280:109312]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1862: Hash(0x0000000000000000000000005bc02e0ae637b1d29c01a0be4c5b9f72cf2a1d72)", + "P->V[109312:109344]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1879: Hash(0x000000000000000000000000bb98d61bc487b62b6215eadeb1a7ce097684103b)", + "P->V[109344:109376]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 1925: Hash(0x0000000000000000000000009f92dc730ea085972ce3aae7c127fb50d989a2ee)", + "P->V[109376:109408]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 513: Hash(0xaedeb35c754fd7383b9c705db7a9726e294a283a)", + "P->V[109408:109440]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 517: Hash(0xdafe863e9032beb243062d6d14e640646074fcb3)", + "P->V[109440:109472]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 520: Hash(0x823dd43826f3c28a5a03545fe63d455d4e05a74d)", + "P->V[109472:109504]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 581: Hash(0x7ec20b089ffb0569d6cf32b4760e8c299a829e3d)", + "P->V[109504:109536]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 696: Hash(0x629178efa038929a7696378cc2c327f280accc3d)", + "P->V[109536:109568]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 705: Hash(0x1b0f6f1c195037abcc24e78838215390116ea624)", + "P->V[109568:109600]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 715: Hash(0xc5da5b6eab552cc01dc560676b91598f4cd86ab2)", + "P->V[109600:109632]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 737: Hash(0xea250ba13ec8836bb2fb808bdee181ad1b0f1d27)", + "P->V[109632:109664]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 805: Hash(0x740867ebe4d6af6941673565fbe332c38170947)", + "P->V[109664:109696]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 822: Hash(0x5a5db9eb2ae303224e050bd9a40df807e16992e2)", + "P->V[109696:109728]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 848: Hash(0xc04407a90e65a61b74587d7df7e0b3c93c794680)", + "P->V[109728:109760]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 868: Hash(0x19779ed4f60f5b5fe6703beef8cf0fde8fa4aff1)", + "P->V[109760:109792]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 881: Hash(0xb4826b0b39406296a722f62d4b50e104814d937d)", + "P->V[109792:109824]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 927: Hash(0x522c33cfb33dab16b99fdc72f776012ab7040ea)", + "P->V[109824:109856]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 930: Hash(0x72b181ffa87b0a76408c6f9bc9235b40df448097)", + "P->V[109856:109888]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 938: Hash(0x47bb19960be19af2088f6a5dea36440f549f51c2)", + "P->V[109888:109920]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 963: Hash(0xbc0a36fd38bfe8a1de7fdb15b892d734245eabb0)", + "P->V[109920:109952]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 257: Hash(0x6bacfda28a1e8519c70fdca560a5706c0d9abb1c6e59a4cc3689b340f1c526b)", + "P->V[109952:109984]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 259: Hash(0x56b533fc1375152d71279d68b8e7cc3165428614b49a4527fb2a4c35ef722c1)", + "P->V[109984:110016]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 261: Hash(0x4e8dd524d8b9729d5e36dbadfbc5d461d738eabe82074453a798b9188ee4478)", + "P->V[110016:110048]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 291: Hash(0x6b980f0f271d433726b4d98e6e02e822268228ad3b4bc07bf18b9bf903147fe)", + "P->V[110048:110080]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 349: Hash(0x731645713598f84288712d9870b6bd70ba4f027f78ee548065304ec3ce195b2)", + "P->V[110080:110112]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 353: Hash(0x352a8bde5cbd73e994e4dac2a267545dc47f716c44788bb56c34149a96a5534)", + "P->V[110112:110144]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 356: Hash(0x2f9da5c2b2e3620a54675d7c78a4ed227858fb70e7c17047eeedba17d62fecb)", + "P->V[110144:110176]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 369: Hash(0x52e76f0462fc70fe89473237e220fb326c06f2d331f7b2d1eb974bebf842949)", + "P->V[110176:110208]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 403: Hash(0x700116978f1ea14b1a6981070345c29c8e265def71e832490756c060eeca00d)", + "P->V[110208:110240]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 410: Hash(0x34d8c3ce851a922f59a04f5725af6a5841f2f02f6756ff3c0b87660ac95ca70)", + "P->V[110240:110272]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 425: Hash(0x7dc3aa4d827f56426a66b413fa310a37b8cfde5d1f814b261fd6ffeaf49942c)", + "P->V[110272:110304]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 435: Hash(0x38a3b6f511e11069059e937355ce19e92155449775faf4841f530847acad49e)", + "P->V[110304:110336]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 441: Hash(0x2417cd7f4c186777736e85264e7e070c6d72e72811c0ba370b0c7e1494a0f9)", + "P->V[110336:110368]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 462: Hash(0x420c057d8585fecac5a3405ece1e29e6789614d08a6211ee21c7a378ddaf677)", + "P->V[110368:110400]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 464: Hash(0x3d598548676191aba4d24ee981ee93007112030bbad593e9a131268fe95a565)", + "P->V[110400:110432]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 468: Hash(0x3267f41e29caf2a32d5e2a31c69e1f668ee1d9f31a0614175612b8b716ea9cc)", + "P->V[110432:110464]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 480: Hash(0x7f8ffaadd2120e6d0b5ab755556578fc389396aada3dd6c607bf7b5483497cf)", + "P->V[110464:110496]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 131: Hash(0xec339e5f57b884f6a5679c67a255004bd1299289b29eebc8ac1376270fd381)", + "P->V[110496:110528]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 144: Hash(0x524811e8d7e6ba29379d38c2c3f78339b119013630988b6bb6082c9a440991b)", + "P->V[110528:110560]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 175: Hash(0x20ac1a499ea658bb9a8871a9cfd0f454f25e4ade3773037fb899df8cc4ad0b5)", + "P->V[110560:110592]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 177: Hash(0x605656818a65593bad7bb7660124338a531b2247dde85564a3ca44a194e64c4)", + "P->V[110592:110624]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 179: Hash(0x42ce0ed9f1935086d21b9469354a7d5eea6eb54001e3e263069b63e92bc9a97)", + "P->V[110624:110656]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 185: Hash(0x628d34a817596c1406a32054226daf8228cb624023c3e6d5e36f92b4823d0cf)", + "P->V[110656:110688]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 200: Hash(0x74e325fe9fd25ab01841caa6717e43cb8cc84eaa34e7f609672085cc68c5dcf)", + "P->V[110688:110720]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 204: Hash(0xcca97fb3665ff4dbc6f718d2c66b11131d2fe6c43bd9ab23e6ee95ad5ab023)", + "P->V[110720:110752]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 213: Hash(0x1d36f13744eba88f8c8a6dfa042610670dd9f75febb87c7eaf1956c0a395f2)", + "P->V[110752:110784]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 216: Hash(0x103bff4d565b913c2796339e547ebe73d86ba9ab4d3529de98cea2be2c2525b)", + "P->V[110784:110816]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 221: Hash(0x5da251667ae68bfa48da2bf132e1f196a753eb8ab6bb051f463d70960100d32)", + "P->V[110816:110848]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 230: Hash(0x4995555b9180f202f63d4d88855f05d3db8f39be46a82b1b64d86a63d69b1d)", + "P->V[110848:110880]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 233: Hash(0x2262ecc8948d03abc12131b3a9e6a3518a8e8549af031a2d8396d204906daa5)", + "P->V[110880:110912]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 235: Hash(0x5f8684519c6f912500647fd031c69f8af890e24fbaae5c5b8e91583c1d136cc)", + "P->V[110912:110944]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 241: Hash(0x3939e53df665076cc53929ead9029f882df0fc0b8787779ba42b9868f9103d5)", + "P->V[110944:110976]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 73: Hash(0x49e50690be83ea24f247cda6da6a445ff83c6661ab32c82f9cf3b8b14e591a7)", + "P->V[110976:111008]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 86: Hash(0x67bc5e11dc4098e357908cddb503d972a1459adf6578aae9257a5129842b88a)", + "P->V[111008:111040]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 93: Hash(0x3a0c95d0970e31ffda1c8c23f856e6fd2a461ce0c7e08355dfec25e40e85a08)", + "P->V[111040:111072]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 101: Hash(0x388b5060f637162d52c0e5b37060064fb1456cb86780a9dedc902298382538)", + "P->V[111072:111104]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 103: Hash(0x5e875e83d175e8933fef3e7137062dafa8c733c622983aead58a21931deca32)", + "P->V[111104:111136]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 107: Hash(0x6cc05e15203c61fc122ca92e328b14621152b33b073045e81786ac96a9cae8b)", + "P->V[111136:111168]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 109: Hash(0x37a89d0e32e038d2eca7ed2c77655789b0b38d49de0d7a44ee5a086f3c057b9)", + "P->V[111168:111200]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 111: Hash(0x23603fe866f072cef73ccdffbbfa16b541aa381795ec62940f559cf794975c0)", + "P->V[111200:111232]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 114: Hash(0x182ed6c283243ce0457350f0507375610cc30fac38ffe596e047f7256475afd)", + "P->V[111232:111264]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 121: Hash(0x4fc2dd095fe172ee6e179c72bfa755fb437de7d033a52f1871d7a6255626bd3)", + "P->V[111264:111296]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 33: Hash(0x22ab1dc34f15e5de3c86bc07f1509636112c17fae46be21b69fd3e717f9441a)", + "P->V[111296:111328]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 37: Hash(0x3c05772c98e28ec6d2f5ce5f978a9f27dcf281eada049bd2a6ac4ee3cf36544)", + "P->V[111328:111360]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 42: Hash(0x65f832ee00ba52825602e09225cc7851a55dc8a265604ff11f0ef8caa2696f9)", + "P->V[111360:111392]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 45: Hash(0x3c656633a95f33a60d9c9129393be58a8ce3cf1ec1dd071d9e10f1d91ad18df)", + "P->V[111392:111424]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 47: Hash(0x57ca475f498c5563c8df33082f95b41b3d967632f792b6d009d63f00de0fdbb)", + "P->V[111424:111456]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 52: Hash(0x5c4989eb2ec2f8393332089018022ee2117f8abe1cbf7d623078e8f1aa9aba0)", + "P->V[111456:111488]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 56: Hash(0x386bca6f705d9b563aebc9a963216e04aeda179e5473cc92ba489264fb936b3)", + "P->V[111488:111520]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 59: Hash(0x329955a7737c44334b3fd3db3f20faea953ed64cc8cea1482c925cfb55e4095)", + "P->V[111520:111552]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 61: Hash(0x7f054871e5425170774cdd3929c00a01b309178d9d6aae035851346e7117aed)", + "P->V[111552:111584]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 17: Hash(0x61122d803815269a6551ea04d813886915626118beaaf36dde67a7ff6064efd)", + "P->V[111584:111616]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 19: Hash(0x61198a8336440fd5075a529e8b9fefc8e5c96f4b6082ef307057df1c2c4bfbd)", + "P->V[111616:111648]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 20: Hash(0x63356dc5e5871190c1bc5cd97e5566e36a4ae389214ac72d01a0644bee7e62d)", + "P->V[111648:111680]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 24: Hash(0x2af3e9f3a893c5f52fe592088c0045a791241c1c3c8e753b9149425f9cd7970)", + "P->V[111680:111712]: /cpu air/STARK/FRI/Decommitment/Layer 4: For node 31: Hash(0x5143dfa0f6fa380d0f4c15bf1b233ef9f913a5f015ea7be4d9aa1ecf9a90077)", "", "Proof Statistics:", "", - "Byte count: 110792", - "Hash count: 1697", + "Byte count: 111712", + "Hash count: 1725", "Commitment count: 7", "Field element count: 1765", "Data count: 1" ], - "proof_hex": "0x03f8c1f01eaa15626ac65a0e278dd73a690d8ba7562262cc5817c5a398dca9d101f9cba6da84b10f30d94719b76ae3b60c68302967886dc195c5aaedc65403b203b0d974288f444596bacbbbf0c5482e479a1eebc532b7099944cd1c152b15440477b1133ab50e15d885b1eb07488b78e8526cee8b62c391f6ec83f3381481d8069f19b625c7c7d96dd8091b2e824cde435b9e21fca3f16e0e1521bd94742028038690fe6978c33b4f3ead0146479688fc6f5a6a397d1b5cd203bf87c8918a4404df421eba6f796ad2629b8a4fcc86ded0ec213e165482c81f8da75932e2a1df028b3023730b348b4cbcd7780ce0a832ba8524c39e93d214fe022a3882b7cbf200ffcdcf3a600f9bbe7d231d5b6d693541c92780fa329bf093a2370888c2028c000c5b539bb7eab7fa1494dcd3d51852d1201ed3faf59374d25d5ef191728fe804290b1a1a4b1b2dd0d6536b5c14dda716fa4df490f36d736236af722562eb54025fab6f2895531d1c53050442ba96a3ae827e88bab3f4b4976bb7e402ea63c3018a183a15cce0875af36c4cbf9b1f054f357d9f2e56daccf47870272cc2da1e029c78ed939c51ef7692d6b4eb8b3477d9c44e4a5e153c43839af23c992b576e00f72a2c5949901ba87abd7f73a03956540009f6993fe540c7ae20aa63f2efa800ad3e626d6c597df31b9988414ff186b8b9b33ebcae56df7aea9f5cf95c8a6403af1b9bfbbb36537e019c3373c023c3f2d469c18189365048d2cb4652d61fbd066000a2a1ff2377f3861da24cf465597dffe36d5e2d69ef50919b2ddcb9551c073b5e7557a38f773618817db714e2c31e925f70e58f91bfed9dd60412b8c74901c7bf55204636f765edecb29cd556aec1b152456842fc4e0e540bf415f89f7a02d10efb93f2929a20ac08d9c6b8327af69a7081cf863afbdcfaafa9696682a40361f4726fd5d1c8df1f112c3c6a405be3211a94f8f1c9d26d46322f7acdab360600968a28fbc6bb1cb16439b859aefe002efd5bba101c76edeaf42222b7663c02a9e07cf5e530a80d4fe7366ad723e0e867aaffb665f4065840291277342363067c962c1a7cace34e731d7e2ff96541dd011f6f843c5f887c88cdbad1696ce105b5bc307351320b896513850538de94effa4d889bb37686e3ba9f6bdf63dbdc041a9b6e3fc648242c71bc9f7b449eb735d3d0fcf469d5870ae1869ee650252001c7e4000125c0349d264ca1f41af6ec10ba5c97a21cce16de4ed87455f5c3cd046db8f044459b28a4a8b68567a80fe7dcbb2ca681748851ce6f5216c373111604362eacb41fcf7a6c2854c0138927a6a6cb30839137a456dd9113c27737a3b700de429bb6e0f7e3112fd9c6c5069196be749dd94112040f33f9aae707667a50002c4d94e1f30c79625e8ba4a65c247fe9a14e57f9ffd01a90bf52873507b5e40318e41fe58c0a9a0b61dcf23802c9c550997e105a263060d3e2690a7132bf8c00b6bf84fc21e96e9caf211c97337b2187258638165ce3163a4bf0077be3766a07dcabfd7f72073b29f8cb8d8d2cca2fd8b02b29641ade44743e142130b510750760a82876c1ec8a901a572f1ab729f494b05ecb85253a353eadee526665a3f300f21b263276cbbb64750eece35e8cc024b24c9f5854a94c054e9a6566517d400306441d2566c49a44824893900189a51c6098d8cb543680cb1086c61e041b4c0484b0929343281eacabb101fd5c4cbb3f4d6b71473739d4e13be08cc358456e0105689df39eb19fa88b16e47b6b78f5ed9fb2713ac033b6727be5e998cdc7a704ad218daacdbabf54294291babcf4e8541bbae48c9cb22c19fd7ffad5c6f87306d753f4a4022fea63e408d821b9543bee56e969318f6c4ee84652f50410411a03917981b5e04ccd1753e3324e95592517b4d3972bd2a817e1ec26685fccd08305965bfd9a0d6256a8fe27bc6d1b74b6c87345ad4cfd694ea1159d15b9ab3157061472272482d13c5bbac237b47071bb81a1919cef1ff72de0f2cc71bd93e8f504f9b569883b56fd187ab4a00f71065b81fa0a9c8c8b7b13dbb7229f0a97ced104ca2e223d9b1d0f4e558914ed877ab6a82381fb8676dd66e6811edbcf7f7d5501fc97761ebc72afb2cc9f1a5fee8b87dbadfde5d026aa9f0bfd189936b256be02fd7ad857ed52864a6e6ee20b3ab2449ab43412070ecc2f268baf807a9c09c9057af86052e4d654c205ddd286dc1cfaffbcc678be7487c478c978784d74067702538cda1a6d50d6e6097a0fbc550b22ab87a31b9b8f24e7b1ab7fcd91a04e46048b5e9f32224a2d7c670d360f6b505e2070727edf2dd0c9477c2c94955bd4160700a26028af8af8ad96a22d8f3d8f24bac6bb1dc2e819259fa922090e7a503e0594cb4cad39d96dda0a9c44b0b9d4b9885feb71b9b8eda427b7d29a7ca004b3015cea95d30beecca818619a327e9bf0aa552d5cae590fd320bfae3730c2bffa00637adb4e56e2d35c968b418fb4c5ee382b351d18163bf29302cf28d7d48234043721fa0aae004c2b47d50448dde2a79b984cdd263a1f8f910c1a2310b95840053ab7ee79e543c34c28897841ac014404ea3b7962ecd3b00f048456ce28abe201f08d1908e6de100ccc0f87f511d7f03da996151013afc43eb6a74e20afebcd01b301c0efa97873a1178bf6f179dc5a470f600167152927ccd0b85ab82049a507418ad235e978cf3744ee5a8a89fd68a0cf7d9db8c1ab67291e4c36f4341f050467c3de825ffa3be9ba7ad927a9aa74d3deb87e41b450e0faa3f162acbcc73902d9b544a6e52808447edf73585983fdfa2d901852be532ebbc68752d1926ffd0086f617179ef46401013217d046403f5d03af5ff8847dd9dd148c3702a6bd37043f5352eb4051b1a255ad73006f85f4f07b8ad0392da46d4ead26d406c31e4a061a15ea5d8ce04eb99a4a1aa255c8df5dcaea9cfa9be95c1b5ef00d44e42ec7022e9b1f0ce1005fefde184e09c831cab22bb2717aa5c539a348993ccedae6bd0042abe73fda072a585ee16b68fbea5802f1d7bd8458594c868e55d599062589025362441dc6a0110431ca954166542111db24908d98fcbb4988f20b808ca6110650c996853b98961efb044cfa633895e15a4b759973d19a27de7ed9144d637f010c39747a10bbad729a11b219af70d83be4da55a426e8cb16f5e84aff77422006eaf0ca290842c4530b78e1a09f38058622f62d14458eac80061ac1020f839503e6fc86dcfbd605eb49ae434414446cdf86d933a4b990d3818376596c2ee14b019924150f2e8a0e333c83f92d635277f85fe61fc146aea579b64198dcded1fc019dd148d3e51ab622e20616efefeb565578d84bfdb07113a7edfc08ab7c5c8f011bf5fd2f93b8cf58daabdc87e56f0ed663a869e8f7573d54e4db4214c7e568064f2f999c398c575d18d187fb189df4b1312d9708bd09a7264257e9a8b2173f008c5731db9db4de1850c3f48ac63aa6d637a452f01ca4ce0bb0da6b7bbd11be07191f68500616e7d7d3d2df122eba7ecbff42a4c873a50fda5f9e987d83d35505339adc2749ea842778be9aabc1756f15a8606e40772fb30295e8c848a8454402c32149274cdfd801dff4361e1428c3f428a3e08f2405f6f53ee1a8002816ff057d65e2a4ccb19c8c553a05f8d8d7f5c2dde7e85636c93fdf3f0b41901dd5b4005c6f3e74415e71b43eb9e8ab81f47d7c3bae2d597024fa0ddef0c8e4d5242e06892622bd44cb5c068cc598124da83fd13a43849ddf5611032dae6aa16cc3f902c05bf394ef36c3c349f2e4ac724c78a3795bc84d24fbb176b183c424cd2dd102ccea503c85cbe4bcdadb8332a15d3476bb96afe7cd57ce043cdcd7aaad900d036f81fe990cf2aae32cadfdfa78f4bd5e5ee258ee710e6d274f9329416eb2a402bc69023766778728cb3641101de84c16776fdb2eafb3f481feec54a80ea4c10057910b1f9ad07d843410dd026becfe0b435597217a139f1aa43734ee80cb3f057458a996fef9f2267344e7c05d5db3dd38cf5c0659083c3b08b028a83c588600852833a74371d08306296c68f22cde3a02258e1849e1a520da79557642941d0614e57de9756c33351c103a4733cf95c2b96aafd3a332bfca9e47a4d5192c2604893d972358910e3d6f416aef9062a7d4a8933581f46484020f6bfcc3208e1b0731b7194cf74b55518b9ab9206e7acf93e1e7f99c274dd1f54f6ddaac7ffb24054eee72d3fd7a268d43de0c9c137402d2c6f6253b5c8378c9cf48ea99eb528a07fe4bd463631a5acee21153d76edb1bd0e322697953323f3dbbd3f9fbcd6c4b03093c5553dbf8f32b171272b220b105058cb8d7e54b91861b900c5f76c8f1dd077570bef8c1a92f3a301e6ff692190a1e3043a4bea7a983d70bd7cb2bc93c2a02ae913e38ccede9680672b80060a6a6364d153c981a9fcde22a0e78f8aeeb9d0524bcfdcf6842148de8ec234ffe4307a72ddfc5a2b0287ed7644aaa438b89050253572ad81b7b1bc93788dd384e9457f21abd874f4efeec36244f80bd230e030319efc0c6f92da7c1bbd2951e580bcf1dff65eea785b0c14dcb0127346a4870077def12f223e9187e043c81a9b710ff0c5c91254faaae6d214ac28534cc5c4104a639753a98cf919388e839886d530fddabf95b9426776a2b9c19db93f5cdaf03b812a18fbd3a444afa53d3443c400c5dfabc6a2e15de0d1863f9af8ea328a503736c09adeb8c25020db5ff6b0c06045115858b78573934bbe027e583f958bf071fa606763c3633bd920cf8010b2f2bc751397c108f8d523586232ac96446ca03d085856cf42abd1ae002f961c3557b1eba46dab7184a69c1f6054c97bbcd96070143476bc1f589f9b9cada59ea7ddaf0566d241388a527a60ace852c7c6cf3022af0f7842ce4599452fcf5d3ca1ed17d710ae836bc5be5de48a05fa7640be50764b2dcfc1082fbfedb6593ae14c1a9894e98f3e0121a18d7ba5cc26adf549803891b1878c13f5163d8dc3b23998f572bf13380810f21448d1743efcd939cbc07b614c35ed54caf462b506b030cbc8f70ba8cb8b6d5d4b803507516d14d20290428d59fec3686ec9b3f60056f01ca9d4d2555dfd1be1d58526e171af9855b6b01ab0b01c5ed71ad7bc5dfae3dd7073de3c4cae221ee9720bb421b97885ca0ed06dbfd307c3684be6a5cd987315ccdb4d3b42deec343a2b5ce54f3ed447af7fe0145b15206c6c2d58bc94650bc4ab8202b8018e604d8cd6b1961b4d72fde719700c727add9516bd65dd7ed369e357179e437f1dc6703d4df6e578085f101d0070234b1af35ccb8384d8b9bbbcb6cac771ec473482993f4ab478df783fad16b7207084388ad664cf4bdc22f4aebe5f71560227a9c703cd6046ceb18e43f09414f03b8f6f31d2a71f4868862aab6126f133862aae33030ffa3ad9f8f369809f08c004985781626c839202ec6fd40056024a36da735364fc7bfc85dfd4e35b5506f042c65a38082cc67fff8591524364f79f3c91f747955533feb148a0d284c2dc70068f2ea47a00feef1514934d49ccd5a9a9e8f5e70ec8a8654b75be6f9e535b101563c6490c6b6cbef06542ea1ce5bf296a5388d91b75d24246e96ff6ceabc59035ce05f36b7dd27c2b7e77c53f8bdaf66ab839f16c37e5bbde6d153b26a2b5300eebbf04aee54ab76fd765a420af01c0549a2ae6df37a1b9b607b50d99cbb3100df242ebb58aeaf482a4ea145729a13901eda67f05dfceff7ec89ba255a043102be6698ea7a8dc341ec5fcd7b2ebdd61d8927b31fb5601b216596424f53818a06fdbd38b76238d862542f24ac3d0abe2ff461039a7c209d514b8b58d72f6bf8032806037502959e29da89806ed9c1e74058fa71c8a5985975eae09753be52b9066e1b61b9e9f06589b28b431680422bd7df84fd6e52fd95a3d80125237fe16806e517bd7ca06208c9bf603e1b1a095c01bf9b8b23bbc4fec76a1dcd773ff5f407102a7df47427825d0a195a839266c9b287652d8680718110fa0154ca554ef6013ef6c96225f8426d6c5516997519d028eaef962072514450a7e9a311429dd406b7924b9117d8ed816d7cf16d5f45f4d011e0e7f38955ee99418ce1691a616302296b2fe3def3d7000044617bf812908960c8b72ef86b3c54d5b1c40a55edfa05c5752890c08bece8ba33786559ddf5e7cf7893454db38606586d52396c5cc102a599207274458770851ee2a2ba6767087554d4c1357c23de5754a84c62b7c50585190cdce1bf6338117d0178ee74826a6176cbe455ccc82ce7ce2e1361040206581da2b3d1ba051edd963e5d0cb12569ec2d78db80a0a1fce261ab01ea096b065d774fcc2a5cc25d765d89708a03e32ac984201f752c2501659d4cef4a6e3c007b60400a11dc1a0f8a1196c4cf7b324def6ed52191edc76a4ac68312a3ab3b065b6c6d002bcc1f36ce2f4020112d731ee874ca487329701c5324e4b5f60c1c040a123dedb330e0fe22fd743ed9cb946d048b7462969776d65e3a60e9f9f67b01c04a877a7c1b8697428490bbc802ce0e084ef4d62efad9afabc3c5a5e5c51306ab6009a2d66a06f009bb561bd9a93319e3f9cd7af8e1aa3ac6bc4b759d001606cb7293320500be1f0545dc3f8aa3c4bcba579eac41c9c5149dc7be471f4b3c06329f3af05375d10d2f7b1c2e4db762e63be7a217407d79e01aacbd9e9ea3f10795341f1398d75c63abb4a18551e11342dae2cff22d178122fb80addf9b9e0f04d22972699785df8493fe482d38c3e0d2ddafb76dd56b1fdaa59768c00aa53904c635702219defeb6613d94bb38a9413a1ed667c82f0f26391109233c35a9d806d88bb92cce7453b6ecd2bd32007c371440a7e6038d16000255f65a64078c7a05b97c48f90ffe55b7b8881813c23f4900da8da6bd82dfff6577705704b7ffcd067c071d9226c519c88af6c53105ee8fb693e13fcdd5371beea4be109f1c1c78007ecb4bb7d7a7ddbd5daf2874f64272e3489e897ca25c4206d2f8ed2bcdc81702ebe8c4061d10dd69dc3c4c3c958c54dceafad1b57fb3d7b6d5b258da38db110030e3c4faa89799d1f1cd3cea82c1bc4f7f4e494af705ae0a78d55e60cce4e705325c1f1b73deb6dea0cb31bfc02485d7f0c9d6fdde8eb713086399ab7220450429b5ec9c4e079defdfb126a31ad483734c0bb8c0326aff600b564b795205d606c17935b64272c0ad677eb401af9e304cd84cf217532051a9bf6e85943394df04ac8efa7a53d66b35c7898dde1221364f4b6df5caefa918637dcc81e3041fbc07549ead7ed343047d9c47b2baab373280fe39799fe0be39fc0e9127ef6a49ed02fec3ad500a83f4e0bb3c5a6e01b4380e3691e8cef6d1b88817c6132efe1e6202f6207211eae6a4d1a61ecaede74366743bb80fabd4b93d40a8f70f7f20132305a9c900e29740753b7e9cf503d49d5c1473b20d37d98409b2917f18b64e914d0108826243fd34a6500bff5b830f6fc529bb64bc070dded862d2a7894ec9992b043988f94358753cadb464d683a67d2e117755931782085ab26cd0f1f22addde07ac37d2e555aca2911cfad8bd2b19b6f499acd49a838c465ae84f3a9ebf98c3077c0496cf1d7ca009730735f5be8270139fdc5eb7050831569ad6be50e1df6602040f8f864981e51e59f777e21d87ec44bae7539040f736e7ebee9b8fe475bb05b804b73976053c7ccce0f6ae2eee2b3f524b7a3b2edc1d813f3b000c3d6ad703be95c8e510df609b8743ee38359a200fa32f8a65ee0f3ac2694e69575e2c1b05d2a2a149687aeb8b7688edd03f8430ead6eff862dc0794a9e811114fc69c63077d12b3964c7170664502ba4144ce0d1c9fffa63751795d1b80bb41c22c264f025a504319de3b20b8e1ffa692eb527b2f88c0ebd5f882d766b1176735913df905f12aaad8d76bf9a95d37e95deedebbc737aebfe0518035a3a121a2d6a39d8504ba5b4ad85de1bcd800e9c9faf5ab50765d933346b77b7517490b5194876015009c47fd88f94b91666ccfd33c906b44fb52de52140f6d278fe246961c6c013d05c7ad261d1c9ac39f4ea4441a9c1cf3b475b792c04849670fb2b39eac06e4eb066f513e33bf0773b3cac4a3e4d3d6fa6c26153074ae191ca97eeb0ba6ba185107daf42fa3a5db2fed38d6fa1b8786f8fb5e8de003fab5f893e1b4f15f1c6e9d0786b80256c032ed82ab889e2a6ff9bc1d28787a3ebff93be0cd689f7bb5dc6b04f2e8977e919b240c7f41fc9e42766361cbe0b839baaf3c70231556f004068e01510a6007fa66538cda71c635263b1ae36c4527f9fe170c8f7d307241bbfc120357553ec0d940a2265f64479d9a4d4076212b725be2163d46507a663199cfe3038903c659338ccf638a2e77a5f08805dea9069527668e836eab4a379701ec0702f62d7818e34f623282ce43051ea02922c142a1c3cd0a9fa87c1786004beb0a059696508d7dfdf104c936052cb83c6095cf9c37fbd2d3a5f1f659112ae40f200059b26b5be256357b0e4c0e66203495fecee4f55fcab13429e1568cc448a0f60041f94a6b58a4971d48c070705ab3173284020c41030c2a17b363a1624cd439076c896dd094b50b4290de3a35acfa98e9fce93de5a387916fe4ad2e5d8b6b1301171e3eb4dabb75b27165a08a14b43c959190df139cdec2062efa4f61a2b0fb03072ea6f1391fbff2b66de96daaebe1d2adab2b4708c776534dd1662453b3f504014d5f9a191f607149a09dbbf30b9a5f3698c305e6c93cc55711fd62eded1501619ddd6e4d256f7424eee77d147b9893391b773aeb23c1c0dc49326caafd1701503deac8e662aee6cf7b9dee5b48d025a76b62447cee16df222f48c7a11fad02f7d5c957bb82db6276b64f31451d7e91f0299f82de281c3590d18abea666c0008b5050e802972eb6b35930ea2b7552406e567fa8e25bd8272003e81221341c06e38d963bbdab4f58f9d2342c0986c0c545464da208bfae0ce195b359ff26f6017609fff186e1ba4f12a581ae4accae558c978440911d6cd1740e25309d48ce060edf3b5e90e7ad81bf61fa4a244b725a12885cc553480a1a9a7058bdd2dca402cc13431b556e033bab28a059f68f35a214eafa7c2bc2ff5e99fd9f9fed0d5a070363afb861cfe15daad15b9a51dbf9fb1a33970e76449be98ab0e706eb955302dbd471d7eeb36c6c0cb74a0dd926b3d73df13a5cd72c03b7c3f029a7b009bd013d6294a8899a9cc381928b1e153b174fc319b0a53ac7342c86a72b403182dc06042192b9846abd299b8697764a694dedc5ac7feb8ef4d1edb587dfb3733fad0463dd6ff40756904c4f9c63b5b5d75c01ab2d156d46772f4a9979b931bf7c0906b6747e7a1cf7582a5d05cdb7746604e384a9691d5a18e2840cd56b9cefd9e70360f34f11a36a0757c8da182d0d2b8b6c88445ba243d02852363d8574aec4fe038331baeec94551d39fb94541fdbd9e96d0d0167b81ad0583ab2017b0545032012478056677d60167f4ee2c79122fe3d44b5c55ab5c4d06b98f0ef434e43235029a40a51e5842e1958ed913cf7b71a719dc9f4fe6919347e7318cf3296c543207af60b6a925d715b06ac4737645d002fee6fcd9cf9edaf7e2f3f9b33ed8d6a9014e69ae3e30f39ec52610b43a2bf83f3d1ea9686877940b37a0264ec1788ca8032b1f3d03c138c6feb2df596936c411dd67982a8f1cbaba3b0856824e762da800c3acc62641a83453c9315c8917701cc0dc4a08f978a306cb5b72d2a197a9c00194e8b47bb413eee3bd970eb770931cd83f1079758837ba148a6cd2cdf1b93b00fea1caa3c821e7e951bad46e9f510da63975a316c329c1dec0bb2e8402f60003d9b44db5b74faad62a48b4f059d74496e7cc1132f44fd89deff85278d8277102ab58aa8b2920bb0ad13d4f2ba57c2e1f1b7852644eaa5648f1e8adf9819bf201fd671ffc01bb46fa58b7aa0c84a028cca67c7ba4ff97b6367cc0ffc074db090078a302e0eff96bb107e04d13034d969dda576ba0cb4da44fb6d94f04d03a3f047bbdf93f230efbd7ba4b12644332edf293183a93003614146634046d5a2f1307f3bbba8e8591e1fcc672f5aa02e90bb4042accc5ea8a26d342914f36f93f1a042095a04f0f7645ab2c13499bd4394bdcd4a8c1ee2535a3aece1636c4d8a5ac02aeacc69ecc89df59c5b7b5ea4918e60b2c210a7c53c39a055f53291f7cb42206aa1ccaee8d971cf0d5f60d922db6162688b53eb942011b353e89f3384c4706017bc1274ffa964be30b72a9991aab6e8da018811b587b0a80ccabac3543c5fa078c141ce926dd476a7d85e450ad73c7f0d6dfdc13cf828d37d7206eb5596ad60069653f6316bb08cdc655aff5229b7503b1aae80680e1775d077b9642d3a24f02c8352d46eb8084f1edcd4ba5c0dfaab519040cf8c7234b37ce6a8bc389612602ef4e31d8627a90c53cba3098e9ea3623a4fe0154040aafed920fd685d5f0ec028184d5c3ed58aa5299b9964896476c3f78a6d7cd717dfb9665e2727df117b90057e1c4511239869ed9598686304d03f18e23cd0a3ac81f4819de38bc3be15506d757238254b9cb5785f1cab2c57e59886cc8551dc5e1965942b0eba414692a06a6c3705beea3b399ce6439051b1f0452ea7b088986f6dfc3eb351b32fd22af01792ff05407bc67f6dcb6a90e10ae0dec7cd9d2fb88890afa26c60b01922107003cb5b1b586b0e24b77834a2bc236890948b8b46c599ba1aada2297c78a0ab8033180b76b0356912512666afaabc79b93776a65bef494281bece785e4918d4d037bbed580950aaaf58f008765c202fba5a7c3f24a451cf4af8b76ec2ca3d59403f40edaf8eaccbb9529a745c312488841c482ff10bb4d59aa74b54ede6f9526056636b1063e00425e1dda8424868807b36ae02341f279501dc7eb5d1b4f1c9c05973b8f5af7ec8bbaa156df6621d4ffa78cc3be3c6a0c8a6f3a651c2848536001fff3e36d773a2a09f2861757da2a41d0da40433eb6ca596ebc53ca49f54c80014853dcb0a35b96e8921d625ccb16f545adfdecd37d0dbdea728ad35df779a5058a50ec3a2e86d78be3dba2573f094757e163c7787e2a95f2cd2704f3d6927e06af664724579637dbd37ad3547d0311e7739109b12aec28cf964cdce9999cac0154a63aeb662b741b8285d8df177064508f41f984636f86bf71e5c70e38570d0716d51aa6a9285cdabf525bceb8c3bea66b832a80cbfb56ec31da3e9f34b18d009fb1bfe270b4c3d9a2e89654991e7ddb652e9cacf73399e83f6613384f30df0626fa3e12e2cfb885f229db1d22c9df6794cf132470dcce896dd0097024436d0262947032504ae6eae27673e500d3fbf0dcecde4422961843c92f7b365360b0010d380cbe0e653eaf4df594aa417d7ec8138883060ab2c663f474b2cbae4e030223dd42e2e8f6b694d47daa35c3301da9427ed9d3f667353df9e72f5b5802050492b3bb7ccf1e0bd4e8f1bdd5fd0443dd322b9f409e874e7b1b34017f8fb24605ace854918add96c73e3d6e6b69c1b25c1b57b59bea9090e6d85adb4f9ed352053484425f78fe23b05bdfd369c0596b22bd2e28ef3c1100d433a32cd845474a035409edd56fad9143e062ad32a470ea10a6745ce4070724faec0aff0674914802094b5c0cbe4299c1b7912b6210afe99177060c9c929e672d30d247858e1ca507e495a775f78ee3f714d0df1dadc8ae7d08321a759ab47f4edfce2965e90f9c04d30976d4f19133d5c57c38f36c19082b5acb9bb9063c757aa19648129f84b503146a67b5c7616a4fd57f5155f6ca1af54485add8796a9bc5f78779d3ef70510234807da2b14ad27ef1a6ee68f099a58338fef82ad733aa45f76c382d12cb20040656e3f869e399d45ac6f1492f0cf7652578e069e2b9166f633ea18da0691c031cac7718d234e3981f0e951dcbcc4ffdbb63ac1e7cd8b73b43a0f027ef2151070c19b0b208b23c664aa0288306f12428c7875a952319c7cf2d21462eb69cd9055c12edf06d36fe4decd4ddfefd5b3a5936c71d08352b82eff122ba8dbc9b66057a06fdc5abdb13689402da3bf292c227235c9bd46623e0fef8269b3292aebd078c6f2cc414c47751bdb9c4aa06a8ceea125c7c32e2ae98f9bb7d3605ce0d3e07b12e772c32d6b4aa9d71b7ed820ba305e72009665dbced6d4049a71ad386a102b9269524fbc9a51fb1444d280445d65740e9e28905770d7ffaa6d2457c1ea003162bf8ebc437d092077263b316fd5a30c447c102a75af0a3e0efc9322c1cc300f10e732b65af3ae6f3bb1732dbb84a014a174325fe916bd496d07277dfa05f05cc0e113b49407c36bbfc0d1a09b7c32aca9435c49d763df06b1f4218d00e15048aa319da0e9ebc59c5ef5519bba27c47ee32c79a5d6c2036092496bee62ae7072bbceb02eb7a95d738be7480ca2871c902955caa729183ef3bd5f7a56b83b207bcd0ed6e342c419e69de9c6a303d47abd7b4e8f41e27816d166274ba723c5c07c2d114ce565f07d92df9432d72a3a5dcb0df1bb3362a3113fa52a8c0db384804cc68d9e7ea6e484514c8262bb0ea1e041211746a1d8020e287272b0ec5870a070443c056c3ac0dff922a6aa07cd118dda0e020bab315e1b08dcdc1cc5350da05e5b86e111cb4c2aa6a4d4e93291cdb40388c0c3eb59cd8285e2a5492e7570903819cbbad97b8e1fe67fd43e7ab944ed6eb34bf502f4d4608f22c7d9de197f204282cf1c1d5a463a977d9ce1626dfa738c6488f129516e6f931e2ca4b3208100371b4d76099a3f5c910e2fa52a12e2172e9ce5bdd872a52711bbb4090a69d2a01c3d1bca39be3945d98d6834f74a3afc3cc076e78eaa8563d5073c2e5ad2b2106e72457cddc1d7738b1d24b67d093dca7d366e73fc6581b1d86459c191a27f903a973101aadcd76059d861e81e0d0a4ee33e69948211f343ec3dfbf250bb94106b93217fa1c03f289f5cbeb512478fb44821e4c02def23830fdfe633a462f8804dbd3daab5a60fd944c8659d854e51ffbd289394ddfb93fdad8d19746ecb9e401cf1e071746e449b8b5cb55eb88038117131bbc8004b5f56d4386ca5ebfc2440207cc7f875ae9ecf9b59a78ffe278c9c9fddb7892ff77b0a2c942c22369390d00e53706303673388068fd9838a9a0f6b6b2cf1fe1f860b84da670a6d8c30b720160e98193dd712ffaad766c31e850c6b0019284c824a27bdb9e105d6edd972701de566d425658e99b20388c2d0e9beefe38af572c901b250cb8dcbf17340039078c28f965c000993d1e5b54591e712c2890ed70eba25224ed04b75bd6faa57a06229d12b14de0ece1b3f4c17036df8f06cbbb4ee4ad4050e58e7a53d3d81a650615856559e02809a236dbdeeadd7c7df1cce3c07c8269d61e55a1820d3f58a1029a504610eb5b0d94e9515e8f280b259b820da865ee3a70be810eff5adca9b70458d40f19974a75f5803d2676cc47186613d2758f5da7f2bdf9448ce948fcf30798f637e433cb74df7c72b8a67b615697596c1d815b0aa95ea0f85078f431b805182fd2bf6d07facb2a23c864ba7c9da90c7fd2d46cf8bafb2372649d98a42200573bc43bb6707c86ff6781d7355c5d6af1149535b942d7071f695aca323a310598b955e1e17c12243f204c6a50b18f81d41e794414adde96c748acb11cfab505a6a1e8c292e9760b05c93014133ea3b410d9597570a9f7d7dce36977a2091b05a0de04acb565e2307b4a2a3d8954d0f3b7c5467d863b778c414c08ff9e0450074e9428be50a95d1e1b9dac9f0a6d660ecf3bc3a95cf3ad3ded898874d36a8f03cbbee1f812021bf32bff54f2fc53e83e86ea8ac6691fa933d6daef76dcdb3006e1bb2e6ca7c52f2ba842895b1eb583438e7f7784ee8c1747be259c4fb2d5da04fe87ee0448d8a820c840297ccc256ec22ec5ec1744f8e34232068e3ba049610796bf2fa7af015e4f35a0dd24a2de9962a8667a5a1a8b544c19c9877538091e03bac78b4e201601508dd995af54b0924e449f8e9810b9f67b9a61d6c2c7e8b404e653d836165581ddde7b8c5646b3f6df054f4993367c267ce9842a6b653778005241ca57132040c096a1e5202a24e4b10e83fcfe8989bf33dc8f8e0bc5fa3800696b4a0e14dbc8a5f80b525ac6b3d295fc4eca8c72abdca11c487abadb31a503729f43046fd5476d7cedac17d3e3180dfefbf9b0720a8ae7b42b5fd98fe8d9002fd3228721e6d2647a36e37b692ddca4d7286d3555e2e0558a9c65c9ea34cd0164abca63871241b8667b530cbc3f3b17fdf794ab1edf977dc17a592f12220d07769f6666b8addd938db17189fa007ef847d53b007ed6f7d3c1b7ae9628a0a7028bdd1e351a011f01bb5769b920525220f3882ff295c494c6853255a62501fc0442657ca009d08bf1e2e333d9f38886d525bdae28d73516e08daadb29f202600641b882bdd89933b216e5a7a3f6e9654fd150ba1882896f99aa6150981f33c40424bfb0fc4ca8082219904a2189fa3188d67254764a8bb258be647412376a6f079c7f5bd80148a59bba4252654d3403aebdca085627828080ae177871a7c800006a3b35f6f55cbac378418d3a7f33b2b5f7c58152f020a40485a923030ded33067c6d5e263fb0ec3bcb24ff214e18575e9fbdece08cde8393cc4016aed555dc02888afe1f837a0d62be854f83b2f44afcfacb9fee34ece096faa045969bef670411e0d5e633aad58b81280c5630a7c8c121940b78856ac926e0b6ef41d4463d068cd3b86ed94be9f70c15aa53e1494756a1165c62308e04a46e102442b30c2e05df3aedb72165ffb15613bca87c91e57c467522918534c2164ffd480c760233073f515109416854909a23e632de87aa82d64ced8db72975c7264d8dcf9a3522078c2d06fc21a3a84289042ca5144678406aab037326785d30b908a12f306a8204daa89f9f8302a26a1764b99ace2222ba8b43cbe32a4d4c320ca9f0008f88da05f7dd77bbbc2112e75b1c29c7711285cf0cc55ff636244539d269372c9018b007d8b0917806b0bcc0306b0b01168d87631227705112bb3c0bcd7b478edc786d07cfb24334cb716c0bbbb13e3b08849b0d0240c9eb7beb0b29f3f8b3619e9335056b683a6f8c62116b4860fb373d337641c129f39106556737128c864613d2f907f77930abba03a12294064a6aa0fe9ade268a19811c46687ec9fa44460115cc01d77dbb073e4ca371b2c17a267b662f8eddb01bfcf03fbcd60c974c07516070059081a81fdcc99e926d91aaa9747bd5cc29b60fa08bb604216959d11fc09ec502b410ba5bf359b1ae58bdda881fcf9370017a4c114b3fcd22602400baad0a2f07f50a6a43a8a6c7e3c3255bef9f988dd789074ac3660ec8abebff225e0036070762bec6f673a316bb3a16b1a4ae78b410665a23d611dd56fc22f66614062df4052d74d6e39647151316300b3053ed7b612994174515e9c7295bd08038cba6bd071d0e71fa70406edc435b045eb58198acf1110ecad89573b243855bee14d15d03feb568b37922d571370d9e174537110345ea1f7945c803dc4577ae8405de9a037d6b2234774b746b26e382de1798f85638e9583b804b03f6135c83b8854dca005ca31b56ae16b5f4b78ed7fa849c988db9969a22bf19c8a6e75d92dfd4a8fa04e0d6f2e97a61bc2d748d12bd0c770d951029ddd8c2ee9f258c3acff4e719a602dbb23b46ff103137db392c06aa26479ae02a8cc62349b653e9e2e6f73e4828072c1b3b8d1de161e5e4fe23c079bf862d6879b5de05bcadf73a4041d5c3c98a0530d614652573e87f942b4dbe04d40d96e66318d13e331ed7bd284ea4958b11056ddef11cec0a99524d110ea8f2606616a6c2d0bc3e1093c32317073dd1d11503e7fb5b4b8d2938c8ec4a2cbfa6f9acd3c655b9ef32a169713713a15fb36afd01264e86cb639e5aba87cc9b64ae60caad45853da01381cd76027f6bd6a9042c021e2cee4443adaf64cb8b85d1d99bbd98d5eab6adf7f240ad6b35b10a7724b204c2cd706a49ba5ffd4f2faebbb72e2abc27794fbff5c1ff7bd86fe14d05d2b5053c4baa56009fead67d4230dc809406f10c642c7b2f0bd7a5fdfc5bb68464ed03f6149a8426ed1c3a3743f1c2c75579cedc6edfabadc3fb92cbfdcfdda82b3b0599cdde026afd6a9a91f0a66d79141f75aa3ec06252dbfd9dea37613bd7cf5f070e0681640b86f738377ef34ccbcaa663dae056520b97c140a237e4a63250db00fd203798a5887171e7d8b0f457d7b4753973da6c8798533045b20a5013d07c0010cf9d89b70e7d1795be82abeba892475de04af4486a8012e214e452c5eb28010f9bf0704f5bbd7f81f8f17f3347f94cc0406d27a9477017850b7e8157a01903f90c1fc5d5fbe7566fdf7718a1c41b6bf121653b3292ea270fbaccb6c55d730703b5adeb4fcac8528356353434ffd426f37b09d45f356e83d457d5fc39b280046a85d745ed75b1baed20dbc56cb59a5b43384fe36449feb11abe3f75fae672052a00803ccf530db51b617f3473543a1e48c0f740517f99433530f3b2836a3c06d0015964f52cca2965069079a3af0598b5cf89f3ed7e4dab17be0e1832a76e045057cd3988edd5c2a68cb921ca25755d53943ba29ba1285f3caaa5b903a73303bf57b5d76a0fc5955ec1de4a1e5b257be97c40efb2a86dc328d1c36b2dd9780654dcf5e942a99dd331e61c3ef6f733b909a865746202218cf65905baebeff506babccc9c567ca0efa12004045f33cb5511cf8e88dcb2329397ccdf57a5b0c8016a721eae5ae34e3457a28d4e6091bd38a5ed6a9e7d55ec104d9160962bfd2405557adc71de5d1fd65982c415716ac71fbdbd1eada427361c518a4f9d019834051925d17bddc3200149ddf68938a4237d7cecfef6abfac4f2544a089af200ae04a1ea4ffae3c954c48cefb44ae92e3f536c2d5af5f7cac140e6f2e5e0c54d46022427f9a3ba4402fe29bc11ee0cbd6bf6387224b03b0925e955a92eb18ba146043611db9b5a2f63d17ad7e2170e68ccce4456a6967036f9d253185da930a98602330b8781e3728563d9c3147ec658d180d0b9f09da2578ee4fff722555d762403cb0e19f24a2803d49d00b2f39ecd16efb95851f29e15e6491ca5acf88fb317039de45be861dc3ff003ca555debb1fd9907090d516c0d37ac93db35c7fac18e03ea0f35693da7eb66bf4ad90e8aa7ba98424a8e40e56e32b95d132cc6cec98002110b65706296a3e0b3276295d4c44b58a6e42e1f61bc2613f7e5daff063e6b05957895f0a64691d478b35d94c1e41d5b39b715f7a4af1e494ef77d3513d0ca032365795a1e9b13a75d138d0ecef8345658b5344a90f3c63c9dc2a9a5f84e190560c2d2fb6a94b88b754eebd0a77756b8695aaf8fcae635c16960d6843b046a00ec66552e1cca3c481470d9e9adb23694f1c2ce02e690e5d50509bab90fb0c700c48c56e82da1360a766fc4ee7d8a3d5d4e2bce3ea04973ae83e697681a2a00027bc9743da210cf566f3d77d559bf68e56d26e9de000cd9426a098243f5dc4506afbf15ab0d123ba8c052cf3240feedcb60ec8a3309a2c45a813e2841b459aa04348a27f3f829305d1bb2cb1fb2a02b632fad908913e67199eb8a0d506cb2f9036c8f79b7d41cab145941dbe71962683aab0e529b93c2b3b6d6c8d4a3ea6f80026cbd8760719ef0e9f7eb9afce2306cd0e7150ee7f8e40cce1d61c62f4b76ec05122ce3f3c70b9e24dd10fd03498ebd4db9bc91db9462aa4a6ed3f744e009ed0724b3dfc7b96d7458d90ea8c75b4f20a4c9749051482289542abbb063bb3e25064571c475f1830740de3d37107ad4d85633ab81c4b5a7f5c737ca40ff92530a01ba16304812e6070db19c6070c135e107d0b86f32a5579b62d0298fc0719eab00bc36c47f1b413da3e8d1c6f885c9c05a4ffe31c7c37b720de161bffb2ab0f704d4e07daa3ce95a1d6a863c005ed844d524c2d72a74733eede3910f4da1516a010ba19d12f01cae75b8d59e821aac270d9248ef8ede443483e7eb0b2599e36701d41346ee878e7cd22ee88c7e414c7e938f4729a7f949949f109ec7daf0a6bd05e13c4c6293c2662002fc9f1041fad26a5c58b546b6d21731b433b000c4d6f504d1f3fb667b9d3f885a93a45ceb896a79469b29229dccbd01991259e3dd4a8606fe7252bebb7cc60cf42d885afb6a55b0c9eb39521fdd3f4263cdbb45b0a56c02e432deb4e3767ba7675bb04ca9bd13df34d7ab29540f16e7643b2aef48036605c7c6ac448beeb2aff711b939b2ccb71a02665ff542ad5b57fde49499a66c9d078b70b2c9dea763389c53a5b119bc17c60803622a32b36a2491d097d3df69d706ca3b7bce0f5b399d48df56742db9cfdc7d0dab2286af103de6fea32e05baf50337a4ad6c5cbdbd94f405e5ba9a20129e7b2fe9b4a6791d2b11820bbce90c54027d7068af6f88fdd3cf58a1b59d0a681ae0319e204f6e620f3d5f4a6bcbfae904206051298ded36a9ce3a938c05c3013c19159e66ee33933e68082623018fbd01a32dc4bbf0db565f30002929d9dc999bc47be7867163dbe1b12ef803bad65803fc051dbe66db5a60c74e4e4bfb10737a368cb0bc107fba38a477cbf8dc5eac079a0507a0bfd365fe0d17a115c61c55e6911fe75be9359b81b41eac2940d4c901af29a79343e412704e8d107ada0d62a07e568b976887c58611f78b57c7f7e1054b7ec1dc0f06c203f5e130c25a6f7363815c1caf1cd855a2f07da2341dafda02984059fe1e864e6ef2f08074a3a66afdd9e40b3c8df9b602f2bdd8d368fb07063038c046a16acba21c0772a121443ff71cb0484af178e9946485541e2e13bc023f76637e1d52d67bb2d8250172714cc62b2656cef18f6411d6f5c6f803d05003c2ad9c64dc4971786b0c8a8cd962e5c5d57af188603b26986d9ae54dcd9b7901754aeb9af5cc6d3f36352a9415d0cfef843b6e91902a5785e7b2193ad7bb8a0046a69fa6eb0e54e3e4d3d35e66dfe9c0ba634fdf93c72a335364694b2cffdc008d6d189ceccd9593d070add465707ab0b58604b9ac18f3f6fc4e4676c407bf01d218407fb02fb4fd3c95e323539eb6494c79049362715914dd99f449464661044b3666e32c4ca1901523ef531adb40aa23f18ffc2b2ea6c3310b7d438ec23a0052c0a044e93cc3106c96b80672554c374c77b5dfca0b8309f8cb6f1c9654e8049ac3e3e096f3e7ad78cbb3197a38169ccd14c15f96c2bca439e26d319aa76b066651baaf2f3df8ef5c629b354743852b2a7f85372248e5c808f8e0b737d1cb079f955af9f6bc97c5bac0ba0f22d626468255f74663977f16461bf8ab5b43cc071c6b3d7ffd41ce5fcf9298310f901792dcf86ab95eaf9e0a9c63de0366913a01aa4285288c7711ef5e2c20f21e6a307d4d3abb2125ad36151961981e47439200e0515d49f567a858a1d73b0ffb1f91e51f4c172c136d32fa20c637f456320304f51982dafcd14377254c9948e4197c21e5ff7063330cbe53f930284cf167d70198bcba7b02d616f2b2602e05f5272cb543cff3188499f2d26e33f45ba1734b0256af4e5ba75120420658f9dc7a076b0e787692a0a71998e5acd5023d682885037f72fe5e88417b3e1a3f6190bb557d737007ba01a87968218b83019edaf9f80612e386ec2a23aaef5d1c06a0f855cb908de2654108c39ded1fa791f74086b7062a151d532dc4e59c406bd87f77d0ecbc89cc2694e7f0ecf5ba4c1629fb501c00a46596df54581dcccee663c6ec9676ad44bea7a829d6a52ea767110bd84d6306403e9aa755ca0a52ea8d2fc521ad90ed86937e6490f735c282c34f3c1fcb2607e74ff4882946494271750f029bf939559f2ed50f476555ac6353b5de642f97001c340cc2c8e51e0c0b36938fb3943d4f0139d1321b8f64fda3b5eb840e4fa30397f3eb6e13bfcec23cc1e595ca9685ab69b307681498086936245bbd2d139b070c32bf818351c44d352aff3c651da2bcb265101d7b91bfd6b3f76df997dac500f2f8d296465d568aad9c667e7ab5b2410bc298ec77c6119ccb70a91b6f193f02ac7efd7ab87df9edf002ba6aee447a11bb90b79ba71958095c04bc854f05ec056e52185b2ed016017bca6b2ac0a284e6053439a47327c2defc623640c116a2009bd1dfa219b306518b29598ce498f524c8fed16978cee4ac96be14ceaf1d00000c8ae3ff74f68e5051019acd9e82eb52b428ac248e43311d19df4a1661c059039c5ddc4dfdb838a11d78547831b6628e70e5d89818ebb1d34f917542b1b8b4070eb3d3fe64fd05f745411a66debb2b2c534ce1735604df5b52ef99e7951cb6053ed6eae972baef098ba86903857110020f64d7b8fc4bce13537878e851f4f4017d48edddaca711cf1f4b9fc425175e9ff3de3361710f36f9cc2b618f65be7a03e84258e53ec9c4a27f8008f1ff5598405f92cdf189155b1caf4e1b6c316fb003df1a6b90f9ee4ad7b822297177c6ee627a9381cc7c754ad2644d6f90ea376803b7a389cbdeca64f173e5e0c4de60291f231709d369c20f5e74a0b3b72cd38806e23fff1e85636fa190e06b6b124ae6b02fdd51b401e0880a560c499652b1a302a8dfeb304e525f1e79f9dc1ec145653aafa9f144215cbf9c77916a1a219a4903273886e502e30afb80388b1acacd7dd08560790be69df7b1703b49679fe5ad0149640ac548ca50b0ebbb2f5c9d385dd5e6610abb63c09ffb0658db20457e2404fca6c60efbd461348a04a1c23de6a81f5e02d6fdcd7327e1bb6e7e98d014120114d2a553a91f4b2207997de414f39b2450b28bb2848f6d05d6a2db8ca8523702ac0437ae34045408d1ecf58bc6ed45296cd4147325157ac15b67fb3b0f5bcc04ba3a3b195c03e53043c9f09fcb6d740e40bcd502edefbb266c1eb8a090bbcc05bbabfe20c8e18068d623b1d5f4d8d57410bfe9efc6457641c2927ed73cc81504b672e4d29624e9d49c962004027882360702e25c4653e9e7f55dbb6e88c9e1064f282b00530a8538937840af059c56573e1946fc8257d1024e9049b244479e06d15f5894d5b8a0dcfd759484ca2213604bc1ca14ac60dcde9e4d55c5c9421f05d15326e0712349f3d9dcbc2f4bfc17b7bac9a7ea5fcf28bea3e686ebdc592602086c54cc07c6d41d362f52c4e6c438905aa166d1a569265cc4126fed149f5f01748efc1b0016c3f0ec999950f318c5f4699b1251fb9ac9be21317502990dd8039b15561d0126982f553248e5f3dce00c522a8f708b314bfdd2d42b5f7e6c4600a2d907a3e2fb85777c508ea63e4a669cf42a6e495509e6205579225d0ced1b0039d5cd9cc8cac273d61e02519e27ec1956d063065459e7cf5289e3ef96a22c02652b9d0a2b1dd7edb3591d5a918ca7bd4314cbf814153a312a49bca51d666201dd98b9ae4542fc337569fee4fad44db57168a07757a6ab035de6f1ff2ecd9a021071c8a738b85d18684299a5e98e3ff9abde24c88c26cfb8d806cbd7798cc80483bb63d6b4c91cec2a5f851cb102170c2b72429061736c531d9c5cf94bbc69030973c0d7563ab6e0b4bbc5b90151dd09332fde1c3b9377916d95bb0a00702404da9f926569c7b1ad3b4bf2f51ecd0fd96a17a8659e163c5b33414c0211ce3e079f6f923eee7625f0ad0fc572e76d5beddbc6b2152df2cb1496d199342c4aed0549813e590182ce6a6bbaf8b7bf718ad9d2639a819d666bde1168303b86db3405b1cbfc6fb7e44a92def8ee130312526f5fe6e2c4eff3ccf8f1131e8084ce6e06b6b91dbb551a1e6afc0968161991a304c615aff6ce18c54ba846b9a7093c1b066d276571e24e2195f262f438e1ab220ed9bbdf78daaea2c82c4e9faa07c95b00e325d4a5451d693261149663a0cb917935545d1ca853ff7e1b51d50932a0f301fc3fdd89c001d195e22272950f8616e37a5721c7483014c5d899f834612c140590d67b6444a9a6b383b301d3f0f8c8dc9d31675933151a8c3f0fc98b45c4b601eaa1e0977677e698df6312fbb49650a0d7838541763f98e2f7fd3ad181b19e0443511036dede687c8ff79165f52add905b12c08f1ed8ee8a09307a21d4325c00969d82263dd70d73a2e0ceb6fe6fd1ae8641830bc21d98960cb79cb37c33a4013597f4cdcb9581b2a773cdd9b0ebbb9a95c8a7264ae428eab3fe92ed7de8d301a5b8f7c2917c9a2e7b59c26e2a4a14b2a7eabb0bde9d054f676ee26207a91500c2b7f0bb7059fc5f7fb80b7cff761452184085c1bfe0851ca96da0f7e10c36037ae2e6f08c039d5f3e1673a8b41dc4552a8b0e82aac2abf15aec6825df008806b1ba2a3af528acd62debc7e2ed806cf5a43f276d6b66083cc86f2809cd9196070719ecda87ab5ab55206bb334c43627160a4cd4303c3d5a2e0fd9c9eb6b20f02d8434db06689ca9ec4f446a953740fbeaaaa24fc3627f45c57b9915d04c91c006706c5697de9b9dd0370ebaeffe01024089a612da7f8eb00067c358f9afeba04a285e816f96b3d73b35f7ea40dc6113f52f6b17fa7de95cfb623c7df276b6a04c57b707a8742daa97b0318ff7cf77ba028eda7fb4161c5f74da2597d1554cb06c5017269a47436cc48759d3126fbdd96797d6e6cea798432ecbe82cf66572307a3d2174f046e0b0824164712914f3026c2c2fbec1ba839df238fe158079a6d03dabd2fd3d60f557842110a0607db71041a2ae3573efd60d2d6f987c55a8a3e00aecdc167cc98e7464fec4775bac2d8afc5e52cd116620bfcd26763383a4a1902700dff9d158920c63381dcbc59a4355c1fa8813d68c5e83b04f86dac97eee200fe7633b3f94ac768bb4aa899b0594ff1c55b5fc9e0527d5d248483422ef78c0719c52a06cec68fc23202c8cb498f3a284dd4f128f3abfd271997567de0516102da3a49bc64ace4768e72ba3c60f0c86d0b453e83d7405b63aac412cefbae8605949ab73786cf7abe063a8dd16a6f5da29bcf1857b6f83733527d8c0f07003606bf2b1948a9e757596c77011e53fb21752a76b98e4b0b279d2a0ca9580c08ab03dc34f0255e52a4595c5e3aab85981e289839befac0df96ec25c3b8b30f37ec009eed3a850c5c80bbece8d44dfb702fa583ea1f330c291a045470d31e45050503f5e982ca2081bdb13a64f04ab931b58a53704d1d79da08913813723c58a52100cc5e9add50d77567819b27c02263eeb7d791a65f672ad4d0933ba15d6a8d770564a8072c9043e46485e6f6a8ec9a2ad7ec29bf403e6250d5e316ff547026f30157c7bd6d9f0cd007707ee64554b596755e6af2d23cee3fc9a20a470568fe2207af361513ee01216a8a2de2a811fd6122ad0ee29953eda33b17d0d93df28c1b029f23b486b5531b412509bedc1cf15325adc617d2edf770a8c0908e4befee9607bdfc455066c9e5b10a537b4f6127722971b721652a1edbf37a2cd9ebd5ff2203ad4e6cbec8abb5e31f96e46dd56590cd3d2abcbf0ecbfaedc041220e1f655d04c334983e0de5335eb9f02829b1e4a6f278f3ac9e595117764a73afa52b48e0044ffca887c4f602b674f0c4d238597e9a84d960be2242164cb215ae496ed82e0325c207f598186b37d764906feb01fe8980817a81be8b11594078b76a28959a063d0fe926aec99a446d5e9ff0ff7e49942fff27438e73da07f931b7da127b2c00222bf0db572bfbf9011b1a005cd7d8e0ae7d95b0ea61e6e92fc379cd69343d0710a3c4dfab8bde21df2744f4b6e12733cbf7d790042eb0e0ad2b02d5f7a3d1029798dcc91fc2c92483022c67d832f0ea8bc9b3c0d5cdd1332c2cfd5e173a72030b028ee8056e7a60c038455a55e6933520932b9f49981689893bacb5a2ebf202b2557661d981d7bd0f6db7b40e9ac1900076139b98e333e508712924560d4400cf96c46eaf94fea06ea0c416070ec0e62d48008ebab3cef474044a7cd97d80045a8089f13ce6878833fe6245519192b4fc7d5f61ec4d9736bf0f5fad1e2dd40619321561b046aadc557486ff6a774d3100f4fed026cbb363315897709e7efd018607644957cecb6c2a40706625a8b1e363abf874ced80a6ca909862a0ee09604af488329c78a0700da485171c839b329dcd3af013949dcf6380defbc70dc2d0444de99d889d4e830c08eb2275984d62bee158e830ddfb2d90391542eabd82e0594abbcc3366e9999de5f2e2775e9318d4deb18e7148122b064794c64b52b3507d9df3c8a6d3250674563b2be41bcb0aebb04ea95f1f05714b4a80747d9c3ab06d985d3ebb63d680397641a99b0f55e4dd048c9116464cd78c199a0ad8bb4780490c2e71d7fb05489320d2310a5baf04708efba2f41cae04469af36d588dfd506c3f34c64be0b971073169849013025069433a061714d066ee15108ca20a75c0604f5159d4cfc360a529db6976d7e736b656fd6742db602dd1d00b985f307d3045cd8c8f3bf6daab08bd623f4c5a6b538be4e55e41b853c58c6c96a34769e1207d39668f02ab2cd717bc5c3e5db064c569d1e3c44be1bad887bcb940fbf69920713c169bdb973362e0e2dd38d4ef31ad6983cf78bfb0fc09580974852df7bb807ffddd96b4b00f6aeeb7dfb9f53f7e4ba7569fdcaca01a9ee97ff3a44ddbd4a06c5e2eac0d864619a85554ce33a5dd4babd2374239306ce843345ce92b69dfa00d62c9009d84d245ac59f9788a1dc71db24dae5a2ff51accc95dfd331d0081807fa786d2260a8946c45e1764b41790ac939a04ec53f7cef2cdbefc594a8e74d0744325fbae1fdbe7bedf44a5292113c22e295f85bdee330f2319bb2d22359ca0093608df72047807c455c4851ab1b8791b3f39bf0d52a75a6421147afd2ef55067e8fc85cfe2fe23b01861c1e66c9a03b3c6bb762ab1cf422fc05b4c8c8bf9d06ce8a07976fdb507bde2bd4065a63c89c166da9d613f69d99774db181b6c330000b2d4555671a70c1d993a294be7fc3c303ffa0db353285d1c6701cfc8d507b0536e610d61c6d5111fbca77a38023bdfd24cff7541b60d64978e2311cb47773001c4aa994d91f010046aaf145b39f21b06c4d7f48494c9da00c0f2bbfa0a93b044c1a7bbb71ed21de4135da5d3ecbcd715530549c66148df1259a677efbbcec02eaa9cba99d3501385c8ded5a49260cf66407a0e12f7761b286aa90a43fd14c03e0d62459174fe50c022e0ee28131765b9fffaa7b207563b73eb363346971d70490d2f152bf816df8e9e1fe7d9e7483d2bc621805251c483e3d868717f8d54a052936dc27439cbcca719792ed178c83fd3fa3dce92def37b4ab355a94aaa7ea058ace737b424e46091245252c1771c751703af1d3e85c602d7575486f816085057def359ea65154fd29fcbc9672e9cf4c97fbab9459f427e4d01097c4b8aa3c02d4823211ccb163b2703ca442eb42308bb5b58743dc053362e87554f001a3ea02ecbf857df8f0fcfe313e08b2a84bf421a4a7ae5551a8966a988f785c8f9b74068fdd75dd2b847675137f3d2ee48e267df88f2f8f11cb579ab6a3884465409b07efbc150a0ec5ceef69b287f84eb8c8b66facf8426eadeaf66309af90f909580193fdd1589ddbfcac67888f3b65b5a5d9fa7cbd25e7d967949439c42696918504e47097e5645a43b59b046019cc0aec2764ec7ab2a9bcd98651cdf5278a9fc2017529d08020ef0c8823764c50fe618b26c2d5d66b1ed3082cd09d9f5204a0bc0373f18fc315cc5acf70b6b7551b97b318d6d5bdc1f5a63b42685bc830b5aa51011a855abc5c7281753412303ab1a12c063626542869e111740d0c804feef38a01002d45871538ad6982487f079a26be134d1d1d78e99250fa70aa6e75d50b0a000daa6bc33ea1b6c1c6c421b49c7c1f10f914e20dcb5529a64bd72379887e85074b53422b19d919a79892cc52da12088b093be56a093887400f1d81f351a1ce051ede9f60c58790dc611b9e355d1cffe2db3abc3780dcee6855bbafa417db2b06f2b0122d6deacec0f0489391be220adc0c7f3efcfe96797087240f98962969038b5c5b7769c220ff7cc034e85c6642fc2cd148d2879e289152a2933b145e9204bab6e5b67c9f1ad811263837fe372af0f85e20e7b64a3fa1d8ef232885066707a569153f6fcd428c86a539a88963355116d53ce2be6ff149536b9bd589960505d49a7acaa0b8fa4daf4d2b0c2f61e7d0ec2c11cbd31ee658abc01eb57f4c8e018f805b1561b35bf54f903edef829ebd19b0e1f6cdcd34a7f9a872ef76ea13607f1aade792b60352f6f6c6db4a3bb91dc8ed6660976ec89f76a3515c737de87077185a5172d3e01bab8a1492036f4a3b977b3827b94cd7502289abc15db0a680220d1321466785fce7ae47040fd356ae755cebc7949fa121d6b1e350567dae8025403c39317b52eb14413f2f6e9b263744358d205bde4c033dcbf68cfeaa8980216dc8b49562b0fd9c9c557477064946ee72be3536eec564440098b16e80d2c03163b62305b4957a8d5ccb667118abb6c6b0d9c11d59c259d7e6602176afe1205441db66c02879cca2bd1cd33fdac3993b85ce5d42c49b15e8e0d31dea0058a0287305393d6834f419deff3f79d133fb8b5aeb7bc4f526c295551bd2aa018eb078d91875d88327bc9309b1ba9ce6aa79f1a97c44ead024bee12594d5f045875005f07ab2fe3ee774800caed66ea8675cb85097414752ea06cba6214d6a7bfbe0321275dd836a75254479a1eed4892206a6aa49b6c48e8dee18691b1fc856c470044a88a870e1b54d2d6654ff53f533e749ece684261973fb4d21953b8ff600101e174f17a8aec00b6998a3d674a98c597b64b69c7cd9a0ee6cf2a8c1126b95201840226c90a9b5d08f55fde1068c4833fc83701bb6a2ccc148215823a6e168502444f64670dff62bd37694435436f3e77a5c6e6a0e3d28f159273ef4afbb510074f3a40eeabd525b3ed1ae7645d0bb276ef3b22f55bea2657196f9145e5f6f8075ccc212eb3e82a72eb93ac5fce15d10b78272267c76c439988a538d7361c0c022b32857e18535a2c8f69496d5f39952891b129cd515578b463014835c6d19401d2cd85ae4445429646e1a921d4cec2331ef726866892da7ea47e1d4777121505cb1be3b1cdc9b103708cc0a951110f619ed65aa0b28b137eed3e048baf4e4303ad57ec41bc074ffa79d86e3d79323d6352a4ae0a3839c4a17af2f55009b6e903df76aec3aea91f489de70d41988bef8684fb15dd7eb5d3405e77299048a2f10045d8bf267d23b611ccf37bf7af848083e00ef9e91eb9b963a9077ea89cac1301d40fd1ea9f7359a2dd3c965d65f515d06b9962b802ef91763d5240965649c007da1170d853a381a5b1bc83caeb29ba2bf65f669759f1ebbd1541dd0740bf8e02a117a5742454bb46078d64c4ad431c3baad25ae19649b06821ad8e003489fb00dbd691ad2dd805f357b38b7af4fd418198780447c2e81a40f11b481b044f4c0767195f3f18e6fb2194b52b3c10dbfc05c60a0fc5433aef2bdadb8668c8193402ac3815c1319b2349159fc6a286e7e24722f565be03178f2596a1211f18687f00d76e1d1b6c9c510e842bf8a3923e8ca5e49d8dabbfbbc50ca5d4502c9f7bd702d06bcbac4dd2a3e40fbdbe25651955de6ce2aed8a0926868eca7a5ae41ae230077a650f850aae50ddacbeae2ded66174b8113652a72214fabe0b111806f5df055e96e1953ead7d98521399c7e064a40a406b02743bb502525b18cfe3eb229e064cad5528a351a33c46d01cc51c7294b15875ae4a66a62fa72134936a32f86f037de284b7306f74cb4328b739b1e5f58f1abceb81a646613650a9052951591b0000cb9691fbac4f150b9315dec7b09087e6f76d2251a7ac0eef0145190316e404603add0d52c9e695c7fabf0536ba8d2722133cd4ade61414eee331c0d11254030b1db23e5ac541494eb505461dd46697947bd6ab9b6cdb826f6dbf8a355eb402932e6a1e5b4f77819a5782368113302cf7c91dc5ad7486c2b25a6e3b66091d058243d1d4afb190c1cf80a3909f41905b467f78a51968ddca79977547deb607019d6bd6be4bfd3c85ad0c8673cc8a13e5c177776a67bab0e97fc30f74c86f8b01505b6faa9ecbd13dafa7b27b4ad8550ea06a8df64c3c3e20aaeafa5ec22c5a0449586ff27996f3420e88df7636ed8cc9fdd58ef71b6d6f5f19b43883d9747e0034ebfc10cb0464a8b697a6d6420a0753b943db575da1154bdd85e0c95ae974016cc300ddfa10f7d76567b64fc45f9c34367960d2ff5fd828ddf4c99b9b884b04fb606dbe184d2aa0abf3e7ff2804e6819eaa5bf2abafb7c9aeef287ac5286107ba41038a9c836f54cec836e0a2ef7cdfcbf06b4296e82d7e158317a33f0aec0740b1b37bb58741b46d75410fe295dd8382a21e75c7233fd61be00bb47b0a9501b7d95f46c16a83e77594f121aeb0b79e9ce12b85896bc8c30a49c79391568906afdfa554e7c9392372ded74dcb9fa8548f556bc0acdec25c761e38ae88450401ba7edb29c28442fa765e55c7e432311cc52f2cfc23a5c287cc86354e4a89d6038d5aea1910e1b6faa285dbb44c3b698d46cd409cbdd3328f612e87d6902d570164e89025db451a1a78203f37d3bbf0494c579aaa9d8db554a868b328a1fb7d0666d768ca7485f73508c865cc97e68bfa9063a23116af522935d43dcd8688f90543ab80cf02af99cadf34c5fdd3e88dd065178c521b65298f3077fa2138c412001e0564f7eda7a675b5c85fed76f0e2a4f2823932be036770838eb5734d24e3006d2358b5d3f3b7048fe94c0952d60ef63ed296a2b04daee293ed97fe24f557043656c127ef8fa4e74a653cbb7fb10870e32e319ac2d47deb40ea9a0708df990465416792a57ada7278b23fce7acea9353b478cf3e361490f36564621b734f000856aae0d1e669d6924e017dc9b060dcac77877d08c9a5f0a0ba18455e6644300d76b9aae88ffa95f2bd4a646d39e78e9b52a14944fa9ec55177a9037107e09072e660b1d4ab00fcbc03e0940ec0f1b6ed887c7955f0b00cc0d1514a83f4f0d0457e9cd7e93fe76530d1a2c7068b517283e83498f60de81be753015a811a253027ab84bd08e25eaca1c74ab8cf8b3aa595b936bce39192c33eb51b7a563c09601e2a5a704b17ec635c8786097cb3bec4188928cb42dd276efaf67e158b11fcd019eca94ddbc7c8e0c03d3d3561ebfab84a3cc8cc5f0fb576d99388895bac424004ca30a3e13fcd5282548860eaf7a615798264821cd2157b0f1496fe5a0d0330702672b7d0606e50a3e5aae2e6a092db475334c0ecad884281464a970b67b330728949e0aa5854659f84e94344f942584370ae2893baf394ba13cf7a333399001bdae8c45dd32f6a2709b28e077165ba4aa7e39081c30dc841ad4857ead76e300d4b49b757f1e3d89702c95b3f70e26cec95f8b24eaba1b1990fba369a3d65c0218cd03e33a47a4c0b1e9865370e53f23f19bd16d47f0e43e8c0c5c614c170d03c9bc30ebb8fb62b14690b38b2df406d3e6c4114cc9469c049c66675e1a4e2a028625f74ec87a6bb6415a3723a750de89ad9b1a9683592cd96e6976abd2931c01c78dce04c91a15b0ab8940ed46a997d61533e1085b8e7038324c6102ec59dd055e7bfde6963ebfbf1b157bdd01943752d1ff52691baecf0932aeccd431a86204c0a524bc66b009a4bf5d8b3686a5b7263147b8f1c739adba271293d333dee1030e72c31b0827ef3e4523868e9c3f51ea5438d16457cd2fc46495ffcc660a6301628d776a5305cfa680bddc4a0f4ae11406279c6c6727efdfa764eb8e1f3423050cc6465b12fe6ecd47911ab8d922715c4224e2113489f194708295859a82e1073aa733d4a2eb6c7158608be6745fd7af24d9704747c508f6b3e07ba84a524506bdd7f07e15d3bb6cc195003fef532a7b8265372398ad85f9152f17d5bf6472045c58200a3298c8212588d630e2d3895f93bfbcd6bf1a3c0d024001a1a0351c05b705818071e202abd07f6f4b4f8e0adc6ff0cbcef209163a751fb79cf8219407e78f1f7fd49efd3e8226e508bc10adea69fac91daaf3e71a6dd46b1f133168062c8fd531dd32e565e5470ff46577f43296eaf33dc3f6d337983349b8c200b60082fc2049caa49a91b1153f303a33b1c83868c83637c3ddbfdb8434f5b372df0460b2f1c5cd8f6d2308af13a1c2df9328e5ae3b8fad4b09901cfb638bac45440781fa853ecbeaa8679712f20b1ae859911b3297527c7245839af2b47398052200f46ba3679bb9a39b6c9aeec17850f178bacab09289d7923ee4eb9b806ac6b500048c1e462e59542a7ebdf35e51701406211c33d9ef7bbf52e57dc566b8d54c01eb6f610fce4f1aaa47801d7aa5cced1efd122bbcb00219a4eaf2a48f1e916500ff74eb7f015970b4ceb2fbee119e62a764ed888346d88c3f7d823a3463e3c002980ab18986d4a269b856434508c8584adb3fe667611f1cb902903fd085cb9d031acb0c508cebfcac4fa37769e7a0e529b7b08334daaa835b0952b414fab3c807a8b9d7f69d7e0641f0a5cdf4df6f5025554e1c2737369906e5b6ebb468b10d02d7053f26d412374b2e607a8f4b305bf9d6ce60a9d2757f19d466a0eeb8686b024ba994dc73fbfbcbae365f29611f4e74889f1e7ab419d6dfc44722f62f7dad0285fc186d5d7a0fc8324c40b90e9c4ac0dcea0646b07f3b0512f6e29143290b0316b29567d1e862a6a9020e0685a22517c97f5e9a4c5c44301fe24c091ac74f060ce5230136337c1a4fe093e5cbf23bba79db033f5042d1a7224e23730f8fc4019f9b79952d160abce472efb182e060151c3ac57337745ad30594eec444d07d04856feffdf7f1533182c7f58daddf3483b17ef0c8e6763834ffc0dc7a12f1650177a82389e970a12de2c584c582abb1b7c94e6df1e1b2c9c9b9f7882c2dc10a06a27685a4ca3ad9a908e52cbb72a682247168390223a1abac8f9ee460a2343502cc7f14713b72877be7ded02c0f55aca0718d71698811b222d337de8813f93d041a5eab49ca7443550a47c0a0c0d0d10d653c935f762c35a003624081fa06d70697ee58667046170577290a2a0dd159d4f27f1f1f247717070a5ab45bec13f7049327d559f2eb0e37cf45ae0cba906adc7c94a51b6720d2c46ad7184c78bd6602285f250b219b764e9db48fa8c2e046e7366645e48595c4096880501a3eeb63017da99acc932c2a7e5765f4c31ed590ea717bb2bbb37fb0718983b57465aead036866d72b276dc65abd36ffdec44fc01a857036c49693d19b1dfc68447a29e407059ec6b728da1adde112b54dec734bfc8a3a5f87629d06ffeb28b410f17fbc0544f04d7da2d129122f6657a5889757df4072d6b5dcd27c9832ba7dcfe36f0304749dbba35a12f9f6ef550ea2fa0c2ee7e2a0a0523262c44f7127af54a5ab8b04e836e9e5fcbc7df174aa724caf42ff77a0dd3c40282d067821db0d8209906c02de28b0c7dbd1ca1036c0ab4d76a2178fc223cf01629246d78f32c67aaaaa6e05c27b096ae8d87568f1d4040a4f63de4b071cf9da1e3c0a51843956aa245d3307f7bd77992189af6b5ca63be326b889be63ba24f6cfe86deccf5a0f93a6a1c90481d53f6b37d2f9a83e0fd7094a3bcaa94f1e89ffa691b305d189435de5eaa8071700d3938f2d6de7956fc4c5f909069490bb884f9b4715a28fa15fc5901e33057235a158590c4ceac7dae0c9342e1778ee81d06a4703094c631a2f2688160c0514e40be533a237119e0aad2fa38b98ba1af4f35dc14d7b3b0785eef49c7471014c084ae15c2d3b11f87e2251b698bca063e9961403868bc6fd12988216ac0801c3f9321fbbc04aecaa50f5339168a7f4a2209fc102d4efffcc53d2eebd2dbe052202f60207b63044d636a3e1a938bbec6149bbec3adbed5a9853eac2657f5e0508041d158ef1685d932de4409697885d34d0ec00a5f54d792b2b262e74b463019915c2dd62619f74c36962393b9c697bee6920f965c74c5c1a2e605a8cc72e03a8fa274393ef47e59344f6cdf6d508fa0dbd3e2d043e179555ba4ea3f5cecf00e6d858567964cd7384366f21d26cf223c015d8bf998c241cbf49509cc4931a0794bef7cda1dee8be316268c2d08204c10c6e0010a5b27ee8501673ab354f62035ad7c24ac2f59d8fe359dadfe377d9c8d3636a8a058766105f2a7bf8fb421902dd039184c04dae316333df563ccf55ebcf15351018ad017d3a1553792fed6901f29ad291d575a97a4fe9826611b6738a7f1b7ffd0d68f17bd2eee21df78350055ad5ccc0b7bb9bd5a9a2a8e0400b5b1594ef09b76aad6069a148f14ac10283008647b682084dab9a5e93f0a835349767832465c91b9566908f8893a23c06430117fe59e46e448cf0ea8357bafbbe79138e05f9746f641a86d1bc4a82050bba021a0c4e6de899efeb146ac8f40893a52e8809b369d823724e65f2f7a59a0b7404dc9de9f6bb037a25549f1b5607845641416fb4482b4015880c46867bdaddfb01fb65eb27dd3e9a710e41dd73317dfce8605c6617be18fe7c9e71509a6601e8072e714c84b8f86c77ae0ec64a7e46e4a2a6c0762f7fc761f6a446ca88ed613e07e13c77b5782b31603ef881fc850170d6dba1695e98d799412277844df64b39070575e4ebce19cb94c30d972c7a5c75994a5eb125ba01cc9069b48ecbc08028076ad0978e582b73a2bb777abf481efa7284ade22caa533f2bb9ed178a608e3a01a3b2f3afdfc6e7b4431f58aeaf6da46065f899d76689a579abfe946b23c76006b9ee619df1412efc3a111f049453a198f052121d0c3e5f91e47cc209c06a7f077b5e11cb8b931adf613b19c95e7cae5d87d0fedadc0616b9567b6deda7a278063c10a69f24ac30c4ab38f405b130488799d2f8828beaf85ea23c79e1d0250205e37bbddcc29e5f66386492dd7284ea5839d2988443e472264d9babf307c303010839c7edaef7219a113d10e17c9273907b902621ffc1dc2fbf895652b7587b078b34e4577b77e275019bfce809cadff758472dbf2c5655197642b0b0193845046becf3a366dfcd42445bcbcee30e8fb68a9625e07de93a647074fff346ac55006322d11f0861fcd8862b0e509021c894e9aa2cd52d40e30c02ff93e6dbb90f00b515de502c69d6283939665bc9ea5a07b7c2af9da51589102a4f506b2c0689041955c27ea5fec16fa2582c2ee558447b3cb32d2d000a53809ca8b3e232432b045880875f64a2740fe6e9ce4e3623fc393fe959a50789ae00fcdce013c7691a006f19c11618f517a8db6a9285e2059af5dd9f6e3695fc78363aaaca98aabf4c04d2e588c56d943eadb40a36a8c9c0bc0ea6d391551cd95cb50505a937b3addb072c979145dfff534c106fcb1e8061c8ece372ed2c01e4682c1accdd3413926103f90cf574ed0e6a428e1aa4cf555da6cc6788e20387e87002018abf620ce34a076d82300c59c0d90383257c6b6ce6ebcb0897c055578fe49925cae65ca20130015ee5b473adf14b017b6a389c068c7fcaa90a1efda04699226b46cd4e49109507f1203d47a8b500e5dc225810aa81dfaaf59b6ec38cc29e194f6458b037796e0026ade3eb652f804a5232a5f244167e15586580b73cec510232cd40aa29e37c00c4e0bb83401de767284e4ee62a65a0924fe9dd14b0f7ca0cfcbed332a439da01a6583ef89a5fb8bb3c44c238f6a493e7927e32f0fb522bdd814b51ea6cbc3507e8e7fbbd035fac5de9353157fcb9d17ed156e8c8d1ca2d01f9d54e455c003901bc145e243dd692c29b37e0876ff426e6d1e65cc0e457f1ab06a771f464588702ad523b21cc915bbbdde63b539abed6ad436ddced5c0fc2875440e5b15ab40103864f177b794b6f4c10fa5d7bafc381816506714e64e356c17cba3b9edc3cb803277a88f1efab6368df4df41ed689e6145ddf70580e3484a030b885ad281a9e05c8534045a10482c471c615a069cc225c18210800526b350a363f0404b4769e04103dbd05a8614dcc9b54c6f6dbc0c51e8a844ed19ed9a264e0eb1a9364edbe0601d2b3d127a4e3a05f6af47219dc755605dafe07ceedc02eeccdd493e4de1106d3ee574e84376ed43567322f4b75641fee96d8ba0fe4318ccdf956e36438db01fe92bfa052101a77ec39e2ef03ea7cc55fd8049e5ebf5262eca840bdeed576028f5592136ccf78805d86f9044feac761ed11a826bc0b37db9f187f93601c75068929e4c03fd54f2ee46188f2ac7c4d19d44920c4fd28e9e6272ba5a0313221059e78d2271374555fc24882b95fc5fa0e3da6ea3be8e37992ee269180f3d4d403b68f7016c1303d885dd3778fc371ae06050b76253a5b5a0018d8fa2679b0890005e77cbaa478d9e98a78f2c66e2d912e4ca88026a57e00b8b884a73c8f73d30494af1e655cfec6b5d7c6fecbd72a9c5ca4fbd7fc70d027d8defa749e4333e5007fb8f45fe85de197abc3c64ec4038f0b1386108a468d4566ea8b5a61d2accb006657a11a972693c6229b6f4a58933de77439d141bf9793066dd75c32e21ade05d9240d92e533b9fe2922759eb59518850fa475cee0cb0252c41239981f54ea002bca3a04ccad201fa109023270bbcdbfa343615e3b1a53cd6418439394d8f30601e2bbc9a4763e395bf6373a729c3c8e6275447b27437126da1b95d944fab707ef6eadc58fd9074ae10b5c7a91613a9cf9d7d72f1e402e3774055574faa00f046cf37e2dca8de5cdb7bb9bfe77ce79a4db6798817d36deecce157bef6d9693044aacc9a6dea46084e4d17447a6099351c2c462e9cf9b4c26b8ecb99bd7e1b606c1533bdcc4dd133e360b1c03b3cb9337af3e8f05e42446793a06b4dc33aad1003d8770a2186665afbef68b3472e4d91aedd6c7c5f7b0c5fe377d978ab5749a0754d79905940bcab99599e6d5b7d0f9c79590a25703873750396a6bc4031b300128bba97b4b9080764a8e01d0338f8b1e09c3c0be6bc95e506709466819d7a6069f96ad2f91e3e23f6dfa29cd529fdaf5b8d16b61e04692331723ce023effcb0711e4ffa64baa22029be4717ee87702c183621f5f74dc64619a202fcabd5b430313b96342fb5c1b8deb7aa33f35b1f9882a9253df882866121c97b923b2af2e032186b1d71d4065dcbc051f83ffa6c8f9a80c0c2cb8488e7efa9963eae719a900619b2a4a73612cacd69e51427d303044d0082f75ee88bb32322e2c4753c3ae076a13515638f87652119563df2e79705a63a54376e46ae06d12673a211bd97d0552d5869d017aeed6074f563f43597386ef00157d27ceef71ec9a705f8093680480ece6701847601a4df30727a3fe25f6a236fd9af4f29799617f33c4f87da5006d30edfed7a1e4fc80169ba124784e83192a6d0ef44d0d9100821440f0174803a3ea534dcbbf23caa200e6fd4204fc3ad66a40cd978513eae9ca074682dc3405621486f426a45a8b89f2a90501aaf3377c6a4280658cac7712f3c423309a2e0565300eaed16728a5f01e3ab6075b94dc74b908dace9ccb8aa15bac9425c64902b4899c756ed502712f8fca0d2f70fd2bdf67f63bfcc7a6d68f08ea54daace101e09f01650e4eca7b2a78b2cf4ea1d5c4ef0f985b76f5c4c84cbd85c710adfa04d9b9cf7bc84e4ee52bc9b981f1a8c9ef98739f40dff2db42ea5a84f9f0140a00a1f5d13afbaa65ac9ac883bbc7d4885889ff2f9848b3a8dd0d3e6eb12cb6e3022e0a2cc2434d013021aac95d48c82d319a329d4716d142cbe1a780267ebce10522b3a76634a0574cb8c81eab2bbbb9fed1590b43589171ae6fff5808ca169204f818442e191b701add7a5da82fa147f9856b8d2b0033b75080033bbd1ca98807dc45695202791fc74897d4d4c72b38d21eee2a5fa252623e8c504ac57057a4011a23f05facb9093819c6e8e0619a2baa697bf536975b57dc1c6ac7fc6d7ab402c07f4955c1a0862141ad62e57508ee8f575e1d19f0ab9f90bd67b70f80222a02b0411d5f51c890c4cf92b0f84ee750b4d8806d75eec37eea1b1dafd71a345706c9c9652e8a3aae4c8b2173d53053eeb4270d371f7082921f254a493939882f05b3fdb53a2538b1ea77456ad0faa9a0f07384a951fe209b76c95dc569d38153013f37c61c566e5ed120de94ac3cd50e5280455df1faf4d0ed025c50c629f3cd031a5f605743f7d92de2fabbb127428a0dd06691b78b82bcc405aa1ca7a98f6a04c7fe51254b7bb1544556b31094b969da734cd12db5aed2eb6c7bf6831de5e504b3574146ec7204b3b7c8c8e763f3985ad3bfd4cbf3181141e2452d5172dd5a0675c3a83319f0729f06b090dd6a0754db43034c27983effec5e470232b032eb030e4c1fae0256fa623f58edeb7f7f90bc8fd52c073b3e933380dc610b57b2ad07d9d55d7f6f9fd2e7ba6190a3e580de37a103a2394af8cb452087b515725320056b9ea63e06db0d36fb2e8fa458edae080bf728a02a9c174a1b4f499a098354052fefc19d6965165bada4fda16036df1a482abb493232e6a68f2c97bb2b4476011069a394dd90a004bf8175612fb3ffdce4e7b6f8ca14b64233a028f151d0a70117db22a06bbdbafc3b55bd56bedab30c164dbe8ef4396ee9622b218431a7190241029ea0d9b8c1605ec8c54ea8f14393eac72f5a1a0cb837342f37d91446c3077594bca420446ef969eddfa6113ffd7683c5a7a6a6fdb8f8b097810f71488f079feb183ced52d066e417ddd7b9ac288ab12155ea59669de4705f2cd96c641a079b69eea6c95cd881ab1fb78bef7b0a2c19a66f1b745c2b19dc4f6d1aff792c03e95a0ba2cddfa71277a3f920e7f60fedfe79950632fa1792eb0b8df02329cc06335e62b673f09b9a0bb2b1263df7ac8525be51da67c36a056747baf042172f03a0bef7d0b519825f83009cb1953e27b96c526dc380dd7a3142ff346f0af9c8062591e873549dee77844d437a22dae1071f87bf6008552237b02f104b1c714904eb011ab0f43e95a25d49e8a4f53c2443b4ec583d773b32d99fd2adc950f239035d9fe6285d8f4cfd3af441740e58dc0ba7f70eabf7417e55db6c3f6937e22802006b102eeae743317109b86fd8f8571c42723d7458dea36070b75dfdbc4a22038b0a1242122a33c42feaacab9255f76daa888ce387f330d7f542380d2b81b607d63122c0c6a2c5d5adaf3265b6a2ea12778948bb2ef86233a891e7e0ba121f0556e07c773d69212cfbcd25ef388874a5a0f6addd485bb7e7db0b6ac537a069071e5d85bb204852f245b509b6e27dfa842711561c425f71eaf27a9508908aeb0145dbb55db218832ab5fc95c6aa36ba8938b7ce1eea233ba64acfc21117dc050593801dcfba734f53f947cd901fa9de580219b27b583a272d622115889a04a90761c4aafa4d1d96c5c408368388a8e91c29287bb1b4c5e7bd346df8b43a1c4100cf1fa23d108c3f8673f045aaa78d4d6b8d1b5d7b0d249a5be2eed0e213bb2b077077ae42fab4d520f0329e00fdb76e919852a06344ff7b7d7eff55d8751a7c00b763d83f15d0f5025c59dda60802f91d7b2b834bb5091dbfc349e30dfaa3e8079a93c849d275a6e415ed55b984c0e0fbc5abf115b2614339e425b92c48e35103589657681b7acac794628fb9ad1a80d7db81168fcb023a70d8ef4cbb64b1e904603e841398798636bc6c308de66734026ed962ea44a94570c4be79122c36f3062b1a55ecc253790b7f33120b124d368d4b07bf058c1a35471b3edf83b1f04806f68be287106581097908158d5addb7b6ea9202d3224a1b6b4b24e76114204b05a1abba5f99234b0e99e2c6f89998ef392e29316337662fd409606fd0b6807805334b1069d175511c8526d359ab66f5591d6e6db16e26a14e4b87843f70ee06066ac22d31f1bbcb9b7c006fe8f5ee2cb002c45c507290a590b3e2ecfff23f0e03ccb55b72c77b815dc422978370117625738890766af1398e0b9455bc7a9e9000b164c20970bc1a99bfcc1f393e5223c37c34955fba5cdc16315623d59c458f01341ce33640de12b2833f1a8a6aa3cbf0af98a5a0f7686ac08175bb38a9d5da04f39cf1a7c9f8c205db91bf2ddebaf8d05b75fcf5ef2a1624c78e6de2928d08021e7a37cd05c989728673d0cac27ad132ff6115b3084eaee1e085f3661b692c0683c4972131633c57bbe47544dadc8ab2329ae3734bf0fd0bfc96e3f3aa88ff07c0d04295e6d337faf1ba3b60737d25527b3081a4bf54a707822d4a9257217300d3659bed5d88059c47bfa13876bcd5e39fb0ad1485207b1b5f8ac56919f2d303e4914a7f3bb421592e847dd5a2f091228ba813b569329a85cf61a45857123d07dcc45221c3e333c045497c785b48d02948b89aec69bba0eb5fcf3120a32cf803c7956f9035be198e60c6cf0547ebc26d136f9a86eb8ee1d0cfaf403d447c7b00769ab5324317f72bb4f07e71857b9dd66b72ca043c958fca4fdb536eb0a2b7021ab20919e586a2b8ba2266b83f646e7ae1c9866ce8890f229aa2645eca04b4028237698d129a48051faef7c85a276ab451a2bded83dd2448482e68552e43e5067b8993524b999a45f8640a306c7a436bd09bf063ecab27d78b08115485f2ad069e3ee0b744794918f785fae4b5acfd73ce59b4cabe113076428f0c8279de9e02208fb400cc4b3cfbd790e3f92ef466fa76a913fbd75e2e016fa85bd59d6d3002169af2b450e157a8534f47615468c8f48627cdfcd9eb9faf91d33c227557ce04b8da9b5262e2359406d35675c8632dd3d3974986c66aa720f51f63bdcbb82c023779a8743c9df854764c1cfb78a0eea39d78880399a81189223b6a61d94a6305fcb6ef0a59d4ea8533cda3f93871157c0ee0c0fc544749269e8563238a17ef0685a6f3096b4cd39466d13cbfcd0751c5731523a6638a663094d309970d3f21052ed3eb41451cc39e2d9a194c4338a3bcdbb3e464f9e30e4c70e0fa39d57b44033be8664be07ce1834825d24b3b16d5b544cc0346d8071daa1b2ae073a68f1d00c7b9c64d6b41647ca4e354147dcfd74700e091827d0ea74ab6480a9ecaa88c02e8a6066de422761f697411d0cf6ce097698a1b4603e5e92d7a77cac379c8be02b5f3d936158588ce93c4ce8096edb9786a1e60483926460319880b66c6003b0488e21cdd1c270e773edad64105278e36670eee606e179ebe1a4d267dcd255905aa4f683a2bf5c0c055f216bd8fd31a605332c604c50faaab7b4b775f0dd49f000000001101f20a062a83852b8509481ef4f959b1f138327f824b46d20e4ad03d7dd6c3f90e5a8100489683c5b91f1eedff51b4b6169ff5af4012982edd7dadd72e957289bbad3300a05b38f2c5891836db126118a290382c75ee7cd4b8a9440799a1acff24663306eadfe1686ea3e623e3f96cd481e835a91ca905beb5e949e8184468a27837eb062f3d7c964ccbb7800d7ccf18190c68607b8902e434a1de15f9d04359ac93c90196abb6dc82cd27e4921153c2f15eb4dd8de70c13048e2b97cf44c6d184905f0712f23fc6edd831ae388b52665252e2acd5db876cee5f1ad728a872a8164e8b03bb3be5b45dc0f67c1056eb5485b63753ef8cd8009cc0a79d2b2e7ea637326b014f798390f832691e93345c8d6ecfc919f7ca8099f7f96867824df15c4f238e06de3f1c48f2689a3dd900f3988a85dade33b67d41831b09ad503611d5273e4a037c0e3589335a11478dabc7cf1acc047cab655e7b645122ca050f0e0d565dbf019f396881c47cf888a0c6b8b784c4cf86f83636ae1ae2ada7a1e1b5dd3b1d0104f0191520bcd8ab121b55615e41aa2adfba40f61f4a44adde6cfc6051f9ac4902d58886cb6697c07cdb295f019148fdae0b1016d963b1e6a736377e692e302e0161a52d1eabd1b2f9a6e0d1439526499871d8d034a85a5be6fe326ce7a0adf40459e9774a1b95b0d17b745af693f5b3d223b7b2c7d7d8f03dae3d8a434296f005c9f2f912db2cc718acd80bb6c46607705c8e5c2941f6b68ca37fad8b4b5f09018d53d184301977e163dae1064cc42a859acb62fd8a862f8921ae0c7950a68b0568f375ed0de5e4ba37c92cc3fb9637973ae4eeb925c23d59f717e84eb522ac03de831439ee0d849360d72af7b75124e392eb17a7794deaf52bf0f7bc096b8701ee7a880b5031ebbf5caea5939d14286d5895026271bd300fad3be7ea21da9c03b00780a2e9c539881427f44d42b19ac0ee9455144b02e536244c441ab89769014f5397df25af5b18e47abce0b875a9e000e0ced299553475b52c6b4492bdf30364fcd518709153ba217803a28f9e205a9d6f2c0eb1d50b245c264ab35c6d52057f737739e3edb1670fe12bfcea4441593b73ee69c04693278ca8c9c351fe6e07668e2982133326fa85f68799f71fe5962f547d8122dabcd9476db393e204bb040e533734bb5f094dd721e6632ca049ef85e1aba2ad19e1e6f28382986d59ef031a1f77848e7b346f7a9480b6cae141d05f0817dc0be399dbe6a9cdc50c8c470222a1b625e580d39d52a74b0cd51be3bada5bc6f9588458987eeb385ce9982600f5fb7adc30cc6dae00ff8f0fee0aeeeb03258b61a82ab480ca217177713bad02feb8e6dabbc55482bfc6586d7f6aa288086f68e901995788cce0a0a7cb3863036e8425c573722a7c57c092e5b0ea0aa66c33113d4a8da9022226ba9e315abe05fee37c337c4057e3332528dc11802a4e99a568ce925619b1d12adc6f21dc180130bd9aa369e1659410edec0bb1ad73a022db3543af1b2fdcc892efa574c0d201e380212d9381012868f38179fc068da91d58bf1e4c8ce4fe948c51845a1cb403c067525fc0afacb995e52cca98a82efe2482ef44ba417f5b2f80e0bac6be550796c68cfb68f1d9c49467aca9be0bddf1e105923e8d88dd604a876bc852494b0337ff6782bfc716ac7895ce12ac6f7363366c92701de109cf724ecd8ea118560007e04bc7f479b7c44bf238650c1fb19f695fac59b596c25642ddd8037c8945019ac5a5a84f14be22e2559e37cd7f446138aedefe6c7fe3e773dc49d009edc000773cf8c9298d711788d51523d30885348d03dd834c217beb45880860c50356009ebfc7c5fc4c0a662cf96b9668014aadbcbe8a99cc3bdbf7e70fd5d335d29b075cb920ce5d1c83a7ab8c5079a440e6946ef8ec03c689e63f09621edd491d830083f1fedcdccf02c32bd1d7c6db234bfcb19b48436b7584a346a7bdf5ae1d8702f780ad930a30af629bcde1bd241c4d6d4529d3ab02b38b746e01cd918c81ae07b68f6aa87c24ecfc79ed8a365201c56f4414edfb0766646809b8cf6cf2b0de03b644ab85066471f500e47b7bf00c397187a2ae9a16f4bbaf2d46af52a10e75052cb61302a0e6cb6e847d35aa5bf885a327f8b9c7782927a2fb2edc107595f803e3f1c599c6653a87b3093a4963061f4aa2d65a15696c36eda654ecd212315e06dbd247870cfaf623008fda997313bfd511a5fe8dd4eee745a4cbdc9c17ba3a06efc683cedecef7c9e83c0a1b269b0b67c873c15e4af024f42a7ad482b2c6d007442d5db9923c8be69ccea118dcb615fd7f81b57bac9a930a8ae89e9ed4634501d1ed0e821ca5160c660a4fefc123b6e94958d6470bcd6331ce1f496b9221a9078f06b8755d81069b5ead64d1b69f2ded3cfcab528e6231c002a2a9facc15cd05b8bb5508adafe9492b7232569797f242fb4bd0e6049a041ae63e9344add5e302ed9dc422b2ee6adf901e470640a826eabc64968efb9afeec4626018ee310bf036e2e7eeaa4045fc083c157c19bb9ab1afc7a9679d5a0b62ac10f50e56f4466036b0fc834132332079754e6408fbbea428d4bbaf103d41c1828c0952e9aab35027afda9b664092699f96320e2f79ce6241c295c49aa01db6195082231be733606f477b37ee61a662e3b7751e2218969361f3e5de262b3c47afb8cc8d2fa4c3c03b5feb74cb987f29ac0021cf5f90a245e6211887bc8807164064cdc0ac4708302f11b8e8114534d7b2e9d1e94dadc6faff45d47a80c32b3f40bb4010d7aa08f004ddacf56997fd40d61b8e43658f52c09b71cb568234993201202299bad8059016c4676f41d20fcea6f86b40adc113426a3f4cefa0ef5e0fb01b45772c9d3be0767b98966c5488b6c0706b19a38ba8801ae4d2b83be902c1dbe1adddd8aed6e03048855a941986c6e1c53c8f0a64977c3eb188a5815c4697d25e53b0c16761107445914c7225e0d1988ef6f1d9dbdf5ff07fce6b2253b36fd15b29231f8ec44076eb8daa476b92e95b61eb848f993c592e4e614a60ffd355ceba81ee5cf2e2e034a79376c4dc69294e13f427837e5bbb6357b5aa888d6868694d194ab9868790164c9462a7f2833893bfb3836840bfa6431ba9dadfac239eab4cf36578a461502af302ba3f990b9d29239c1f73051d60a9beab58adca9da5f5bc22dce1005cc0651e776490fa987734f10504d85bbb45e7b3a7f577bdd501d63ecd6a305e7cd06a22d7d1130fb5f5aaf9a413a3175dd0e41ee014426620c43586b778549c127043b6adc299dd188b5a53679b4456fc91939e2c1fe9f57687f670cb6dd14f2610102a36e3d64b4a89ef1b394ff83a9dc0c00710168206230a705cd580e907072022ad54a790a01d7f4b684dfc525ef9024bfe933f3927e51738f7a68a39281d306bdb88f431ca30e1fc3191a1f453dac1aed18af1f721c6acacf9bef76588df8062033d0d293bd978f3bbeed3dd6f7f7bb6762470bec47dca8223ec41474b51c06b9ae164ad3703f20ce3265c8a8d6e36f7b5e4653c1bc37ac8fccb85f5d36bb06c4c81024342996a4b40e488f162494702aa70339da25874ee6f471275f0d7f058fa4b85330bea3aacf0529d288693196f83c77695762baf11d48f3a37302b80122a5500af35c72690436f4b16493a035e6c11573440edc0a2ca57c30dce26e07b7a0910566e3ff31be2096eb5d27b205939bc95cd798085d71cf3e2be8677d02b0cbdbb0abd72e902089addd942d283a57b1f34be53d51dc8c8ac14907a965071fbcb59c06bb8afe5b1799d838976234c44422d57860423d4f7e50fa430534075136d108e978e30ebe665809c2fc6cac7fdb3e15de6e900f96cb43ebe2ccc0065eb214be3ef9a8778198b4ea424cb180b63f685aa74e875d8df006f5741b9905a388602831b9841f18327c87539fe1a84baaf36cdb00a55eb7e7f921553d79046982cbad985ac366825ecf2262e68e0f62a8847c04a414eacbda624ef0381406072ef0fe577200f4b67593f7e01ce8c8db3d2f4882b37c67e90daf1dc50eec05c70d9390f963175e871697fe1f18c369c2c507073e9ce55f94254aceeb4dfc02e29ce6ecf088b4408a815169c6da589916694a2d4c6139b1f44b930402e3080768043c953fb39b34869ec8c2cc466c520a67f35f24ede32b15efaafa115f4a046cc196742f46e3901b73c33503650624d2ee91311f48ec5438e5edb2417fbc06fad0dc95ef274c9e01436b0038235a2c5decd72415ca0e9d7db7b14234fbba041f1f14ba1db43523a926b7d23c4e0813ef6b6da772280264e42322137bc4d705a74c3e0b5487c9e3b8767f95f0d3a646062e5d3a90ada1d6314490f9b08b780162f8f4009b3e6c5a1c3b753d6c61cecb68bc955b62f76c2d3c118f716af0eb069195cbe57744b61f027857525e22f5e622ac9a49132f4fc2775cbfeef0071f0081df41ce19aeb7b21c2d2174d6f9451a07cc133dbaba9406f781861b3be3c205c85b1dce3261354ab66f70f92411790e3aa2557ad4323283e2910ddad1e0150071d581807b0ff5c83238c7c916f93d186953c511076bfe12b280aef0c6e8d707104cfd946241b73470a767d8d9001bd46295d9d4f65406b6fa4c27ea1430c606e4c9a6eceb85903582bc7ceb979604f60c09d33327c960d318d2288d37dcc103e1218734c64d9d63e35ecd421230f2112d65d232d0d3419e2052cc2aed277407522f595da82a9de346e9a829554dde9f390ea0caafa1727f5093f6debcefb307caed5d57cd18a9314069a005308c458c4b8d67778b819d1dd9d87a801eaac1070f40b92e3d4b6ffffead4d7b0faec872186d6011c5cf08a48b48d83ca77319019ed6d1f2ab02e186d72647eb031118f3110058a40b03a66e8e954ffae9dd92070f2cdc153a6b2f09f38ed6fc9e2ffd9b67d1bc7db629a7172bc75ec8ada22b03e16179aee982a06f4c83ca7b5049ed9dd20c52789d9a61fb87847dddd94b6b0051e85952c3e039482ccf7d0ca07df6d6485bf23326383270b1ad929d99d76905a93e113f1a3a777e3726d6fd57bcf39fd77d6c3921f929541d0b79dafa90de07ab37901bdfc0650c3e589b9d2cbd82123c2a928d75ef6dc8effd520db2c9c10328ec855872ec8fd5069300e8de6769cb3810a5ac898fde95a53c7ec5db2576026a34c7917d138814dcb6ae71efe3cfdfe4c18787e2f9e9fb0bff370e5310ca00d5ed0fc68e34eaa5b8945328a43b7208dcfafab7f35c232709c4508ee5ea7803d891207727ec4e89706a0dd68f3f44d20a43995bc4c49c16f04aab211d45b901461a1fd1c373e01757be9806f2aa0b8ea60165a84b5e0b6bb854a90086585d015de36d81204f2cdf946779a02d19507cbf1b02f7718823d51219eef5641f0705b2f71530dddebc37f33f1ba21238aebb3f49c206215fa7781fe89195ad8b6f009470bfc057e9597166557192dbc6b1183fc05d5d2dcbfa7a2ecb47ce7e29490314d0e7d84a59c9d507e09c1a522f7c510c7dbd0384ee6d3d4b7d4f27f242fd06a22caffe424bc05e1b89e9ceb0d489557b5ef996f395473a22e708b95de11e02751db7fc70f250b22f8b2bb3a5eec185361e4a1909cfe9ef0b5401d32bd90004bb8fccc7e1d94434f9488b40e9eb4c6976c30417cb6d8faa1f6c6349b0524f02b6db4700c59dcc5779ffec321bd2bd6222cc282d0731aa17f9b25e865c1ffa043c8b749ce7a90f81e651f8cce1c7b862b1a14f5c64eb547b33116d53e403d704f1cb257fd9689e1f0c6d6d3293eaa9be4efbffdc446b28cbc554b79689df44071185ba6a232bd55dbe89bf3395fcf1d3394551b90a996da567b7722b8b65bc024bd8e9055da8b5676d2314dc9b8af2e302e19845d7a524c9738e07035ba51400ce33e61b6d5ff590ad4886d94c5a15fda7d8fd808ee0c09d69f2823fdf176b07006f5a671f1bc8404ebe5dce050b5f98a755660d0cdbfaac664b494a87c9e8062d0eb39c95e210d0ae345e4376c50427e7c7d391d404a3562ae7f440545b9b04d973727bcfbfa04aa4c3a4308f284bd85f4c907c1ce029ab2bd93f5f305ee80653867bd4ff05345383829c6d14942ca8ea26297f2bf032b4b73cd78d537ee206ee2538206d9b40a48952c78f05f61446c1e6b1e0bc986018dfcae90bbfde820127a43edec37f0b73a4fd72bf1c06d496a2cee455e2c0eab456ec283748244401c6620b0eb52f4d86b0936edde6c078f10e9353be4613b815bcaf9eaac042a604132104b2181abbdef0edfcffefbc4ce17b89fbe8521883bd4f085ea2afcd3d04b6635621372a505732599c9e7f675c8968f133aaf1b85a2898971a9f916be40537464c49c1e4699757c0a1b938dd70d299df4c387f47cc437b05a1dbf5f5480108e7152c94b135d368393544e68285b2a7f66dcb793920f833236bea41c03c0244175f6f4131c963fc26be918b32db029e323b4ccde0a9e54ed9b4ee1ab84f03645387673c51393858816abb384cad9e75eedd4e21c899726f98edd8fca6d20491cf782a499b6f2a84fed20473cf4871315b1d9b7f7fee41403dfd810c167f0659c5f1806ce9b70f41ea821c65e1a2b99826e50ed979c702603a244d183f7b00cc779735822ee9e83bcc3011221ea352790f86842d280a51bdb2dc846d16df074929eacd38b02b109ad2ef6b1a2c6a958d447f8bd01df7b0f4ab7824a060ba0743abdc20094ee65d2a72c26fe649f7868a4c59ad90be644c80e71d1d652b7505943f91393ce5e7bf7ee14653a10134647f2e99a7b689eed2800a731b99a98701541cb3f10b0180fb7f5ca1820159d576313f3ddc5ace43a21a7915eeb95e4e0032a8208eb1c0373fd8fba7e2428a4e85110c77b598667ad4633925230c462b025d7bc051550ab55681089a4bc2abb55e4d863f929b917f42fd9f4e52f34398017b06f990468bcba6bd6fff8111eb803ab362d52fede51b6241e849bde7280f0226b9754beb3c843f6b6ee9a7fb972679c89a7b6fee1725ffb4e3a467c9ed8c014ea3f8d68f18f5ccb11d6ca527559b8aa4e8c7b7a9073363ad24b0457fd15a061c16696bd2732c6e1957e08f53c64e0d7042941d5dc09d7c913a77b4d0571701950589eede7e459730785e0ea9712e3f6a1b2aab6fba5b9cece3bef765df7d03b336d7a5c822636cf404842431a43ce5db5573b1f47ffb0ad68e89e2f818b3038ec72cc16c699e0517adfae8371dd999dc0291f86c7ee490c464495950d2e80733ae3f0c885ac466a91976c9d2104b33e6356c9d55b9dec275a94a6034b2d307475786e3bd971ce1811c307e0638a7c70478988fa4f6568fcf06ae534ada2404f02db531c8b206b70a7862bc5318987fd88103fc65d89da33679cb415c66fd0081b0c5c0295507772f51024e8f524df990ef5c80e2f438cf13f7c2d9b15df1070455479700cf45f958dbf86b0373d14da0682316e29e047af61116833238de0268740e69d33edb01a422981a83d96b58fe5f080efe278caafdc05bdb7d6f1605c9d67a66ef7f429f4c8666744551b2d91e1dc18249ab2232d00ad616e624fd04c1dde13477ca56707dfc31a2f04fe1c1e20da2ddaa9881e53d084b3b8e4e0005de3464865fecc925fc4dd0c3c21efd8480c4977b6f66f780f9ffa5ceb5cac400089362b8a1f6dd7c4730fc2df95e72fc5068e7529b4ec79a0093419e8186ce07bf7a11fd0e02f8ff548f4c22263efa3cbb89759eb3622b149aaa28cc01686507498bdc6dc7b19293dac57f967e86d0e0639b7541bb778d383f46b376db78050691938d01fb26d92b89b8d5b4ec5000046c10e8a14f551c65935f665e72573e0075cdff75372bc7a6852f288a2633984af6d6cef9805aa8d5c928aa2af58c0d0415a585ad494206e585b720517754706bf739859a3ba9d33c7bb5dac49bf73f06b9b41daaa988febe455ff958fa955970001256a3d2334dd749e9a4eace41b700e69d577e72a29c0a5b0796c5dc2c85217cbb627125a43b65ec00be6b0d0f7c034aeb895240bed25ab9a02784d94df12faa7f5fa88f63cdeb8844f6097051c803f1fd14e88e0d5fac6ac513988e2e24681477d223b687c2e14f5b864903ae1b017d931734a99192b65e80a89d2f0544d872eed04c8641bfd624419056bb660f03090a860c397edad8d28af272272314200c25352f045bd35d5e45627e41af79067b4bf18dd1075f8f52cf3df84ebb397729210336fc7aec7e171d0ae9090401055b9da940ab30a954e8739f10929adf57140b0ed6a6de8217f401d515b64183071d657cc3879a281862299228691389ef3866331bc4b80eba8f0f8ef1fc2976067998c30441a8cdb6a25b87d520e2f38e0efb23e5935536b6a8e3fc5177ea6005e7d0f9e312aa2a4e852a41002c75e0e9fc64073f63aaacbe1557267843c4420108e9c8dbcac66b7ac9be2f5e9085d1a9fc99f118cba702edb07808241b439906ef95ba7728ab0557168a76f4b1f03c76c89e2aab328289a8e995a567cf92c907518482d34fa74631179fe5b45c2c3949ec098ff948050c92aa27dc3147835a068c2d4b8720d44a204e3bb20927af0bb710c153655246b58cc8ee941fbd0a6806038c19fc5cda5cf7ca8f19a445b83be5c0ef55f7d454244f06ffcf70b694a705febabadb5c6461a3973469c57660a4bb85d9c7c465d14ef2fdd709f5d6f0dd01b007afdc7d311c2c7b9e6cdeb3f4121ef83846c082a74ef6282f36f1196eef0491c49f09ae7bd2823dfae214a44e08608443f6d601fe9de9e4d829178492e3052c3308fff115c7b38690870f4d081e0353769064f905648083329d03b69c7405e30fdd5dba3eef79247535e9d95eeb08008ab7f5daf90ce08d9ff96aa88bfb02465cc6e6cfa3e6331a80bd07800d42f9a5f4d454b99392a26582991b6d287f01bff89ec98700a10c5bdfe638563927c555848951c14cd1cea704753871f08003e97f9620211e9b94ae530c9717e1e5591e94fa3818156f30eea2d647f7d31b049061b680e10c84a39a303fed4b8c04ccd1ebe0198ca17ba1efff935bd0716001678adc1e6704e170a09cddd2f06b27df2681a1696dbfef5a938c76b56c3f0d01e49bd3814089e49dfde9ba80c033ec37c400c721e2ae8d2f45af159a812c650221d7f07de18e83af16123d2ee7a0aafe7f86a89d254ffc75710fb9ae13a7d8000000000000000000000000847110e8e38a9181a5f99e962ad905e6256028900000000000000000000000007b359ce31dd7925625da32ea8217a260834a52420000000000000000000000009e8359ec697780673a0f1e6cd95a61db556f00320000000000000000000000008b3ceef0da2f837be1e8af2c30e37fe8a03c4a49000000000000000000000000909e5e8461184585a6e72666e7ca83532b3ce28600000000000000000000000069229eac17ddb6eaf52b7977703875e25563b3f70000000000000000000000001649361ab8a38b4b60018ada4458e593a228cb0000000000000000000000000027138b34b342cdd143c4c8cbf244be6b5486a7a300000000000000000000000079bb98a0e03f74117979ed6d8165f8e19d6ebd250000000000000000000000008bb83c1a46ae44ac893ce4637b762968e545819b000000000000000000000000b554ff4013de6122251afefe78a7a946fbdb511e000000000000000000000000006fbd4cd2880490451d3dceef10257ea0d9a20e000000000000000000000000ce26dc7833db178869ddaa016e36d8c4cb13c4850000000000000000000000004955ff374d959b58bd6daf1113dabcc4e34839cb00000000000000000000000078e0d0db1dbe97f497d9baa6ff73f1e7589b51c9000000000000000000000000b9bebda1f1a534a89888c54db7993c2d8950dd090000000000000000000000001371fe924297285f5e3bdac28fa420976a9f295e000000000000000000000000dbabb6979e141fbf064ff8a3ad6a779d2fe05a87000000000000000000000000fe065a6119872b4a183671c1ca58df8de3252a02000000000000000000000000e987ec6a4689bb555f7407230aac63eaa15df7ce000000000000000000000000ef3c9471c36da1dd8be3cbb5f449985194b13064000000000000000000000000d1020cd605b54d8ebd1565515c4f288dfc5dac6b00000000000000000000000083c0641608e68f53b8fd82335c2db07dda8a391d0000000000000000000000002eb49fce02e1486f2c7b28c3b2d5188873b4a2ab00000000000000000000000019fdcaa63345a317313ae946fe351232afd335f7000000000000000000000000203834b79d200481fc67937cf39d1b35b8cf00840000000000000000000000003ecc1cb25a4ef2d36189abe87421dc596e482e490000000000000000000000007b44b74bc1566242acc85541ecd6acba83d4a9e60000000000000000000000002b671cadbeb8f6ed595230ba5e1a54d91c6c85d6000000000000000000000000437a8cd4a2f2c1c1a277d93035b5889636bd7904000000000000000000000000c80af24ad9011aae16d49fbd444a94122ede53b6000000000000000000000000a0609c6825f62ed566e94a255c6eb5a2102b4fab000000000000000000000000fb1f5043f5e10abd620dc7341a4570b94613bd2c000000000000000000000000057ad1a0720cfc9ee6360d641206d8da3099fddb000000000000000000000000a8f60a53c02610e84ef6bf5251cc0e8e67120609000000000000000000000000bda56b3a8a20bed9227eaf88530afdbae1a088e7000000000000000000000000abc61a1278cebbf835e2a9eaa02ae72a1f9a4ca5000000000000000000000000ed6c0ac1a291ab66e5eec1017ddc8df2e19000a7000000000000000000000000a7063f9bbdb59696cb3cfbd9acdb3cdf9cabab65000000000000000000000000513cb8f557ef4612aaec9854b92c261668258e7100000000000000000000000000996345285cac6eef527c616968294817d30cbc00000000000000000000000090c29eac4d7234d838c0380fbb174d38cb4f0da10000000000000000000000006aa58fe137ced4d6ec1bcc8c4f18fb6530c409d0000000000000000000000000e6c795852e1cbbde27e97093570cbc0c72820985000000000000000000000000b4003d5ada8aaf4ae73b72bdd09739df41f88d660000000000000000000000007c89410fe60ddce230d8e5e936af342c44a2c2da0000000000000000000000002bcf5634e3eb7888cd17350495096dcfefeac1f30000000000000000000000006dd11dca709047f34680fd4d35f29190e9cc6da7000000000000000000000000571e2d86670945ec1e341c53da731c36eef5dfb000000000000000000000000034bf1408ed1c0ca67aca2d6623d9dffda11f0d06000000000000000000000000e8c06278e7f20dabe4046c5c2cccd1dadea748bc0000000000000000000000004cc16ca68aa0bb19f619016beb208d2cf01d780400000000000000000000000069ba3f8f09f588ea83805cea23d73e1ebfc5fcc400000000000000000000000071783bbf42de9aba2b30389d39fafdd5d5a57dbf0000000000000000000000001999475e51e1597aa30bb21cce91947de99cfc7700000000000000000000000079d4d334c45e472d0af49b4b2fe1e27d20ec8d2a00000000000000000000000087457c2900d52a4494406b4c2b685dee2c55dc280000000000000000000000003be64fb292d52a9a2850ac3273db23da3b224a1d000000000000000000000000dbc37a8905b931648a7e3c1ac08d9824cf3330e800000000000000000000000053d23a6d1e874d3079e4b262c88c8076bb6901e80000000000000000000000006a8536bf8babce2a31fa3e0522f28235acc379fc000000000000000000000000791f84239a5f6aa5dd52a2365be7902aa5fb4f7c000000000000000000000000601dca709fb4a45be804085818733fab227ea59100000000000000000000000025afd1d3acecfdb3fa5455f766ed53d8036731ff000000000000000000000000fb22c3ccce93fbf79d733646c19d999f4434390a0000000000000000000000003ec012915a40e4ef86660578df8689863f4d40e80000000000000000000000000bd97a172a6d4a145e0ff82057cecb5a73b09a4a000000000000000000000000e7c026d76272535dc9f422d3cb61fe85eddfbaae000000000000000000000000c9a259a8f2d27ea42b920a99ccdba0e4679930d6000000000000000000000000f46108e7c626d9d56973e0ef22d6ff02814f54c6000000000000000000000000d1e0498fc055b2dcb6af9e657a72f2234f46f469000000000000000000000000319c84b03133e6382fba32075fc486d3b7ef1aac00000000000000000000000044067cfecaca13cd8a4aec1b486ad2706e90cdb60000000000000000000000009fe6f2f7f2a7cc2590536056bf27221dc3b3933800000000000000000000000023d5380e74380a29686860b5cee821601966db280000000000000000000000007e69ad17862a5c5486efbeeb3ac020ed0fee30ba000000000000000000000000bc5a71d2028aa4546ecfedd8a276fd77c2bc37dd0000000000000000000000002da53b47c06e562feccc10b929e43acaa8ac60e8000000000000000000000000b1e2558adff29c1694946d4acff05e9d6052de6f0000000000000000000000005eb24df373406f8559c55356722b0779de9b9287000000000000000000000000fde37385fbfc1f855f92e6ce0a5e2f8d3a1013610000000000000000000000006380ce262ee771f7a6938c4bd9f2e262c8dd314c0000000000000000000000008fbb470c5892ae95576b23bf3118ce5b5e20014600000000000000000000000098573b5430333c6a3d20e6eb589ddb1795fa3718000000000000000000000000de085471baf479b176c8e5b1a0755f3f34e587800000000000000000000000009029051c0b365bf5fd63c476d0771d9a0e6adc8400000000000000000000000012bd543811a394537328fd2335276cc683ac0f62000000000000000000000000b88c33e28472c5f2c673c161706febde1c1201ac000000000000000000000000dc68bca6527eb9b8b571c9bd5c3bbb7d6b1d09650000000000000000000000008afb06ad7007645aaa842bac5fa5e4c00201edce000000000000000000000000e307f9bcd1477c42d2a222de1894793a5c66533000000000000000000000000051ef85dea4bcd8a488a9e3ac628c1cb00a545fed000000000000000000000000450aa3616ae4472b075b5feb81d0a34355d954f4000000000000000000000000898bd0242cd853df358980cfaaec388d353cd4f300000000000000000000000047142ad368fc7263f4cbb7ea6912e01776dc99920000000000000000000000008902a33ca9bbdbafed13501eadd05678df0d5a1b0000000000000000000000000bfa47dd95051d9d30344f8a77a1adc22f02c017000000000000000000000000b2bef0e3558c4c2fb25e94f42d09e9e2e0e108fa00000000000000000000000098c2e744b92496f826e0cc3bf25739bedd0daf680000000000000000000000000d003fc699af36f86f95ca4eea5b8ad53538840300000000000000000000000006115b4f5e4f2d3bc5a650fd7849f79deb4f373c00000000000000000000000086f170ade0415af46f26ff24f36989f6c5c240fe000000000000000000000000dd316320c2b7a10ad44ae858b7d2ded7f329a2f300000000000000000000000053efa8dcba32436f025b60fceeab0ab2c868373500000000000000000000000060ff87384f15ffd7127817736aa64428784073d00000000000000000000000003daf05bd13bfab3f8876696e633df08e2693b7ba00000000000000000000000026cb4de21583e2ea23049cdfd9949faead7fb2740000000000000000000000008292df7e31e894f3f61fd7ac60680a441874e8a9000000000000000000000000042a3e56a48f0353b85002f5d63b0c766513417f0000000000000000000000009af623a283d79b1632bc6853c3a92d2b4dcc91fc0000000000000000000000007f2ed7fbabd33f71f34eabe805fbc0f15b6290170000000000000000000000002b8fefe1203504e06a47b731246dc750e5269ced0000000000000000000000005e2b5bfdd72bbe4e7569f794af21d8d8b33c61fa0000000000000000000000008a90896c7c33d67d3cdf30b040344c6a801a85e0000000000000000000000000eb3229512a46dbb9dad1c2b4704e3c6eb56aa90d0000000000000000000000007f6b0faf5cccb4754a4b8377e974f3664d44204b000000000000000000000000af1ff0689df797854972e5f7bea47bfaf59855220000000000000000000000008e3f8af9fc287a1aa055d4f1c3846b48a9ac604e0000000000000000000000003bd6cbf02d7b02e9f4bcfc20743b8d48a4ed491d0000000000000000000000006371dc57714abfc532a37e28df39e698192195640000000000000000000000000ad3e98979559f15c60e474ba92b59fe91a3ad8f000000000000000000000000d78baa6123b4d442ac614850c5836920480c88100000000000000000000000007667d852fd50d953940e34af703e07df2362a4d50000000000000000000000006de713ede19af050036cd55151d94242b29c31140000000000000000000000002443c027f25451b313b8da106791fca8c24176e50000000000000000000000006f5a4270a3597dbe0dff54323bfef53cda1f25290000000000000000000000008a361e35f5dfe7866e7b7b8be2e6a8be51478fa8000000000000000000000000781748849fc769b3019604b4e64c11a5e0490600000000000000000000000000aa1aa30f60a287df7717fac71edb23bfd566fec200000000000000000000000099b9c9f46080d97a73e390303f12387540726285000000000000000000000000f3aa1107b7064ce66582a251eeb428212b72c7480000000000000000000000007b290397a0583ce7d0c3678c5e211dec4d8134e8000000000000000000000000e2a37af4bf16b21bd5e4e04d3583e94fd77d503000000000000000000000000001d0bee9b43528c2756c280104de2568d87d68f7000000000000000000000000a59d8471523c7fce9fb1bd23d08b210425b6631200000000000000000000000004474342ce9edc4468315b5eaf78eebcae5b691b000000000000000000000000cc57fe55d30ea413bd27b61a183daafe99b4c5a4000000000000000000000000b28e048b3707a9db91b771867d8c602d106c876200000000000000000000000041d686ec6cbd8d32ab26a69ac96393441f2cccc5000000000000000000000000acc307d0f47b72952e4b73b40ad26acca2b68e4000000000000000000000000060c3399cf4a346f9f16c58b641e40bd9255912960000000000000000000000008cb4ffd702b0dc279a2567154603cdade3492aba0000000000000000000000008642ba803447ac4dbddfcbc634fcf112b7e673e40000000000000000000000007ff9f452c541269b06516134a858e5516573a04c000000000000000000000000f943f1412df9a4a832e7282b48ed7c130559fb82000000000000000000000000317cf74841a544c5be67fe00ad9a08a3d9f71e6f0000000000000000000000007cf3200e4429617a2cb2a7314bc7da90921c78e0000000000000000000000000241a3eb50396a7d4313505c39180884bfa4930d7000000000000000000000000d206426b4683453ad966fa60ee0554359bf7931100000000000000000000000053e4f906103e0e29e4fd2514382949bfdfd304ba0000000000000000000000009981ed1fafe361d1f7048fa24a997345b0de5bbb0000000000000000000000005123ca51ca03e067236d1472315efe532412d9b3000000000000000000000000af047b04eb58f6e1123c6a235e4eb46482e7b525000000000000000000000000ae55bf4a4086fa878035655c17f17e14a93df07f0000000000000000000000009a69f13202bf1df2f600e3405c114ff8a501369d000000000000000000000000a03ba0d1493d842dd7b92cf928517bfd860a932400000000000000000000000026d35c4d3ceb0e0253fac362395c1e2c12282fe000000000000000000000000019e84a5d5b6d329b94a54f245b2b5581bc51f5e3000000000000000000000000d7734484a201ca70133885c424b2872aa87edec2000000000000000000000000555d9a574b6042635b4ba319c1ff30d2dd453cf7000000000000000000000000bda0c1f49dae4d5eb205217a898868c86ea38389000000000000000000000000c3cc4599c416aa61f21302502ebc4dee8b1eea4b000000000000000000000000bdfb9bf5f24f19821b538ba4a65e931e5d0843c300000000000000000000000075a89044236ac1d160856a04e336e498faa30cf8000000000000000000000000a1e6bc0d9fc1e1b3ef6cc233e044244434dea7ef0000000000000000000000004293efd48c6e76eef28bce11050de00ad792da18000000000000000000000000b5386c09ef2183693c4f95c5c17fc9e05bed34b30000000000000000000000001f7430814053d2250397285175032dec71bcce25000000000000000000000000e153aaa4ebf797317b095b46002ec7ad8462209e000000000000000000000000e5d995d6789a232237597aa8adc6eda1e35e6d8500000000000000000000000021d13ba059dc806b37f2d985ba1ad801e122d1d800000000000000000000000020d5b11d8c3a86e31f2d213a3ba29b5c77f1f01e00000000000000000000000092b58ddee2031a94c063c02663e61b1465e8c9cf00000000000000000000000094d09e9d911e900992d426fa20749a8f1b8abf19000000000000000000000000c55a9f7c880935e018502f358c52b42886bad3e700000000000000000000000024ec709e9e43ee9baf98d96099e21918364e8cff0000000000000000000000007ce3c957d019a62308b79c23670c364104df576d000000000000000000000000e80e38600b8c0b851b59897d6d4303f8dad78d7b000000000000000000000000227350c9e1183f79846542ce9cff56ff61699447000000000000000000000000946b2584d6fddfcf32ef00ba39389133deab6eab0000000000000000000000002773a5fb07f146e1fc7b227c52c7aef2ccd3caf80000000000000000000000007f317ba14ab74f6af8f2c8d96029169753b252a60000000000000000000000000a50f3c6c24dc3cb3bee2c0d109fd8508b7e0852000000000000000000000000627766fc3e3e5cfd9bc5689bbbb60f7691ececc20000000000000000000000005d2099b2bfdf014223e93a8a411672089142b1ac000000000000000000000000ed4f2eed2248c74d888f5d986ec57f6b855431450000000000000000000000004a703ae697e317eee5d4a06ef281bc9a679b580a000000000000000000000000eaf362ad266116ba1cc62a41254f9db540314c37000000000000000000000000285924a39fcf0ee78aee5bbafe647894536bcaec00000000000000000000000083c4f2982bd41461e76d13e67dad07fc1f1dff030000000000000000000000008493bb4bd11983d7afa7388afa54dd05b3a8889500000000000000000000000053f658bd34b4e0b260e31ccb124afca8cb07e506000000000000000000000000b8545e6599639af238ba597a3d2fea2ec9b76797000000000000000000000000411d85b23dfb53224bcf09f790531c888b972aad0000000000000000000000008bf550837dd82afd9950ddce505bb2c4ffc29ce70000000000000000000000009398c019217a3c47e4955e35d8ae11f488ae67290000000000000000000000001fde7dcab9a70efa7bc5f3698a81e67336cef1390000000000000000000000008dde94fe27aa801480a70b3a3067e923b2653fc4000000000000000000000000f498d33703d031eb5aad9240c66ea6d0722df73a0000000000000000000000008f025cb9e65aa0c5ba428aa1749f431b66d67e25000000000000000000000000ce0f130896ca67acb09a6f589b4c38f013cc0cae00000000000000000000000014c3abc7afded2e355bb5c1eef23bc0531dbfce900000000000000000000000012b5760b62dbb8e9489492023809cac806409487000000000000000000000000b46a9cac3d168054ad84cb1935273ff1cd154a3b0000000000000000000000005af846791d06e05a1c4c31e3b96437ffc20d08f6000000000000000000000000d94490048dcf8e3fbc2b5e6330b5625b7cf5b13f000000000000000000000000f0a4ce7c626c22f84da354998328256a5b383a70000000000000000000000000512181640a382b248d0a1b22f369f24907b31746000000000000000000000000f6825a3ffe92a7cf0b40c560ad9e855f84c8e52500000000000000000000000098dcf7d61db42d6c399274849721c7b7e93e6952000000000000000000000000953df0776c815d5541af0da4f10fa86936f03ca200000000000000000000000067ad8a673fea393cefa23401f4578b940ac6fb7c000000000000000000000000471b4c448193be14e3b245606cbcb89776b9483a000000000000000000000000a84f382b004baa8fdef5eb3efd9077972b0792c200000000000000000000000021ce7952a8ca1f1dc0778cf908c69eca2eaa8d63000000000000000000000000b92e2d36e1e7046ddcd7d0d1b0257bc9eed6452600000000000000000000000011a5d1277c68a9f889de7b5a3173f93724588c15000000000000000000000000b6cf113d85c770007bbf0dad4056becbbacaa3fb0000000000000000000000007044d2e84d796d4decdbc6c102c3b88ceb52748a000000000000000000000000a15affed2e871489f241088fcefd6e3928093be2000000000000000000000000fdd6c78efc0a696469494a8603fa3be95600b97e000000000000000000000000610d843352e8418a573dd503f93b5c72c1eb8e18000000000000000000000000bb016c55f9a8d437c9fd853d6bc954af089cbf56000000000000000000000000d6637729fce2573f9a3f41825bf72ff5ef4eef4b00000000000000000000000071c3bd57a1ac4ad7bd8c7997ded5b14ef444b05d00000000000000000000000078b400385c43defdc8759db0d23bc168e32dd3a00000000000000000000000004ff42ddad48f41e944e6fcba15195933487e0fe900000000000000000000000074b85070d18e27ba10337a4605c81b46d0c1456b000000000000000000000000c1fde47db8e2fa8d742984ef0166fc0b62dc1b8400000000000000000000000069b7ec74b514097a9915908b1d291af5c54427fc000000000000000000000000114196a72be53f17856c2e0756cbbc8e43affda7000000000000000000000000132e6c5cc808ec595b2cd90485b21a4a3d3c7c99000000000000000000000000cb1bbdd027bc44aa9706031abf030bcbcce17ecc000000000000000000000000bad802ddc433db252b666ef510941fe7e1d5ddd7000000000000000000000000b5caee4eea3a180db118b1f7af518febf70145e500000000000000000000000054699df8776845e3fde1174ce3453474ec408dba000000000000000000000000e8d3eaeb65d304885a6ab1640156a3565b019c310000000000000000000000001662c329060cf553662dd4a6d0d71670b891891d000000000000000000000000f6ed7761508c760eaf9c2295fcd8e11561fe59be0000000000000000000000006cfbccbaea09de55ce1c0f6f5c9be065064f1ffc000000000000000000000000af5799f1d822ccacb17239c0b610c50a17976b5f000000000000000000000000171410b414a10a45ce9ff7125bbb2da7185e8de000000000000000000000000047b95dae40928f302072c38eb12c6278d1e4fd9f000000000000000000000000c5478e18aaafcee4a26bd7721b1265ed82849776000000000000000000000000b9171a1e7d71d815533c0f317c58de42a55089c5000000000000000000000000749a09b764a76b3d2bdb83abb12e592a3009a4790000000000000000000000005d74218442bb912c742d14763fd538d950d4f1fd000000000000000000000000aa09f8caeaba75a60849cfa4e22b042f8e173cfe0000000000000000000000004027d0909fd726b066b502c29b733c2fd25a8f3c0000000000000000000000000055241d6a83156e9c964fe9bffabadf190954ef000000000000000000000000e4c176c4dcabe555eb5d02da9c929a41f98dd72e000000000000000000000000f4875d2fa9ca22396b02506b43792bd3c753291a0000000000000000000000009af4117ad423d695669755f7d3042f8f29cc90250000000000000000000000001fd1d301572c8b549cf26be267e0c43c53a43bcb000000000000000000000000e7ab49c9e19c5cc7dd1f7aa4ce12f27a636b6c7b00000000000000000000000034e20cce79c99d0d063b86b4189c4561be45671f0000000000000000000000008108a1e9509deec3205e4c3459834fb4a8067f0700000000000000000000000033800446dbcfc2920473cd7cb0a2c190245e78e0000000000000000000000000b5fdaf49579943f3f020b84fce91d64689b97351000000000000000000000000ee0bc8d6b6e41bb6958f72885fd207274a0425d30000000000000000000000005feb32b6b1cd730fcf4285329cd2e7d26557043e000000000000000000000000b031c6737a7dfc80119119e87294d3912294ec1a00000000000000000000000082e9fb56ea45ccdd7ab2f035902d105e467632a000000000000000000000000045ff171b4c9a4de8e5be44214d222aab66dd47dd000000000000000000000000a4f31d101cd3cd639d146d2d3dc9c459b6f312e700000000000000000000000040ff4ed3483170c9ca81fce3c0ca05c4f3f3ecc00000000000000000000000003b2393cd08a30f932eb92570658eba6006ee2e6800000000000000000000000040d80ab35de818d91cacfe9ad9281f91bfbbf6c100000000000000000000000040546ba1f1fe8ef428497d403a3ce5785a04be9d000000000000000000000000873e4fe3afe17efa924cccb7ba7e43d7f413df11058483465ecf6f258b373e2a367644c43289efc13c612ee6797e01b3583d2d5e0576f36238acfe25c069a78c49d180c586fbe2401bbdcaa9400ad653066994f805eaa491476956d6a1f58643ec184c7a23c654f5903173cdb6c9ac77a9db15b5016c042ca7e9d479562f5924371880b673937785700ff8ef0b27f2749a8408e5013a9e70ff5ff9b13f6629ab63033e99d254c8d9b6eb744d22f2332647bf344202aba804cf09fa042b403ccfaad1251dc90e9b101f3136d5e28743fe77e6c8590163bd85db8a612493be226fa8d2f1b359a9620304c5d596b8752912aa5daaea01de0eef6fca8a0178537ef21f003a5b9ba0301e606d60c5b6b65d36d34a5d6d04465c1aba24302bc8c7ae9955b3b2f6b7caeba9a936e8a87f2049ac92196550067262802ba50a63cbbf7fb35324fd49f0a74ba18d45c20c7bfd1c81ee44482403099f9eec837594f766bbd438bc2167a206dc8134f04c50ec41a0e328fb3e2305a8ab3811a3e0ddaa2bf625524962edb0fbbbd26f8cb54e2e3dd5efb23c457a006891b0a04fabee33dba9bb49ab447dbb3ad884bef59cc1f16bdc232d1b590001f63ad3274007c9edfd6096c22b5da154e2b4413ddc487e99c95201a5695a670504c2be264b4fd5f263aeb1ca7f0e256daefeb797ae182602044eb93e3fd20000961d2083dc0676bba5384ea211f3b542c3847a91aeb24bfcbeebe852f58e1b038c29afb7cffcf9b346e893d3ddeda8157c869e2d150805ca302761e1a8831107a677f090b9d635864b9fffadfaf72826a74e4524424e91b1729de383903f4d0745a36e0e9206e47b9c2cfc4d2ef1486a81a6a516f3d6d17464e84a512e905a031188bf917019d9b9e5fb3ea967260fb6df5a7cbbf443c25d1c90bf62ac8a71013c710d540970f8b99fb6983b0ab7fa37794990df122b8e03c61681b3104ad204ccab094f55502dbbef81923300126fabec59f244e43fb0f01e417f8ba2c29a047e0b07bf955631464a053a0f5b0a04f86140d8082499f31f8f56434d6ba0170473d5815144711717e678781d5ac5a4a174d9fddb2b2dc63a3d12a2cec9bcbf057ea4a43480b9cd736a814749707aa1fee95b0d6e7c9de93d88120219eb78b2037e5125553dde6f7032cd6b4d01d92071dc6dcd8f2f66245f94c568f37fa8b804f052fdbad8eb76e7389686f81646df185cf05d864b3b149de2d56f2478b1360496fe48a162da0e378784f2fe88aac9b31c04978cec53cb8b7d2b658eafdc3802cc60d04ab3b021a115b5f0be26877f83a69f42fc4c2dc7dbd92702e84f1e5e057aab55203514f5ebf8caf8683950e335aa75470381d815cfef18204e3bd40405c94fdcc869ccbe91ebcbe5336f567eda9203e43f8233bc63f3526224120ffc0323ecc763f661fc4dfed946c34d3587b663e9f5226cfe1ce4fc9048aa14af5b03dd5c766f508705b781148bbe3c68201988845f5eb3cb9701f86d736f683572021c2433d4436bae7ae495ce0b38bda3d69e20c2be3384cf103880b21018ba4f06fdd900785558f6ed3b46a982f9006d0ad3cc65a07743db0fdc210beb34e9eb06d01943ec1bb567ccf1c98ec531118e8a5cbc11f5aaf31d1cb379639ef57c490435d98af5f6c220f72b6a47c87dad0c956d6cbbd99bf9fc86a0650077cf513b012e3318d09c4b3e185f9c1b698a0093fa0b7b0fd848f6523b3b5c79076076a9028893041dc7060db575cbedf5d1e55fd15da78394bd6f69cff318044fff3399004684cae0ce9882f0b10825e317f34e9135d06a68278bc34c8fa5b42abd399b01345eef513037b95c1a549dfe491f11788df3ea340288bb05703c16a2035d7e0108bca569fc475c4a62e0d2010bce1ac12d46c337345bbf540a5d342a8509c70663f148674457bd7dce145399580e8c6dea5966f8e0c72cdaee077c0326c1950505e3e60b8ec14a56177804f71b6debef15d61a662517749f6efcdd4431cd1b05c26d206825c3e2d4f6c01a4484450a438e9605f70fcda42915c9d9f075357503c1fa36fb80c0014b6ea67ebef94da5a24d67d633a1671f4e1829dda5d2426d06457b60b1a3edaa60ae34f1eaa67405ba6296571ead7d7cdcf012579256505006b3e313c7f75976fc0624ec41577a5d3166572a7ab84215074a77a477ea446b07918dd5e09d0dc51dcc4158f15097aa36473ba4ffce93bb2a25a4dd765aabc805b215b3e3a2131fa33d8bc6ec7cb6863ec3dc0886468cbd5b4dd6d5f7ad35d7049e26e607ca707793fd4c11124e92222b69729636f9502c5d836a3bf2701712055a5406cca1699b7a81c8f2a39d1508b24888500bf575ae9075d0da2f0665bd0264b8456ba436ff298eaf2028690d9310d50ec65abf6cedd95e20b70eb6cd670193d14ebe77b8b786483117b2b705cbf951992cd17ecab0ffdcd40559405a2d04ff3854f2e61f6abc297d5f4da78fbab1a1156616b6a558b22b19afacdfec7a0041e755793d92a89a69fc7c55692fe09a8e170ae0072ee41dd6ec0f003bd925053c54924cc28027df20223f56f73fe89c61fa9c96f34ebcb9351e01ed96b5630221b7e9e854120d33055382819c0d9ace20ffb4f5c30ca1d6f5a5370738414f062061128475abd70e00b4fa0eab1f323540780d57978334668a1cf3c78b901a076a851510a30fe4cd680018c2006d31c5b41602816619823f5e95347a59f594052267a166cf38021de19fbbb7d24d9e35bb586b23914ca1f69915b68eae830a047ce15410f5973131f738d480d719b5624ff02d05fc70ea92779876ac0bb5a1035b79b82c404a123d949b9f46be1ab834285972b9800ac93049d0c184214deb00d7808d79f4678b26dc867b9e5bbdc773e8a3bdd8f9bb2602b410647195e0fb01f5067a5a1148ff8a00ebf2e256b9a11ee14c7d547e8be1506a3521fbb70096002455a3bd2f0ef65b7670a59b64412398ce166b86b8e2cd95aabcf0bed22ca901545339a66c83ad049f8dd94932a8fd98fa1926dcf6094cccc1873b3195856a04eba491f8b0a254d787342984f48c6c4e9201b5b2f56ee74285cf88b82f0b220534f3635ed9156334bd6ed57440c5a393091d79e730b4a407bb8d66156c1b0306f47dcec7626507bfe182081246e1cc7a14ae91e34742d1178f56073ffb4f3f0760dcadc64070c4978009ed391aebb387f4459a27f922a51ecd813206bf2ff000e7947c00228e2b93b201b052cf1c619e5096a5279295f418834616831d7c9106132ca56d68af4dd6bd07ced50a1b035ebf02339e957ed748172ca6f2ef61200696baf88e16968157dc66bb0e9aebea30492f3828262054b96a6cf0274542ea02f1162af2a1f72e457be7afbfd4ef961ca37dbe8a198f4fc65bfc224855f5df014674cfd2aab02ea86285538e8d85d95a017254795a7df0ad2325d4d1ac0b9e07527d13c32dccd00e1719696d5a4c4dfe957c475e47ffe3d1db745d093f91d104a84e0e94ce41b1fa15e126d857d376443418e6327587a40ab9cdf8e42b038402955937f62da2783e358fb4e6963bc7b3773d9348653f5942dc9b6aeb13475900740f0591cb6dcb6062c0143d57dbb405461b602a92e5f401b9a9a4d745093401731d010884d5144439a0df1e89d87e99d012f9ae5248d13cf42822bfe7177b03cc2c3da83a6a1facb7129dd46ea9ea3d1416c131ed0900e9fe28183fed7e8f02ac00d6b6ac18306aee62d032cbfaf3c5714dc7bc91674d96b7404e5a596fd80189e712f488466cc72abd6051f5d3b956d1cac69674fe3be2f42449b2829c53048d91849be15581bf390371abf649e166c6065a61952b6a66c4d8ecc07dd8ea003d067e2374077b4fcde3ed4a645194e230e9ad2af9dfce18527fedd8fa30b2047e24cab2fda5a36e813b3900a101fd340f8c8c769910dcaa3947a1f8229e3d04f285df239c8abbd156736ec95a2672419aaa28d3bed225d7e8985d62e852060682491adb4fe0b467b02e0e59c1a05e87c470d17a004a054ff132fe01ceb9a5046488b7c1e0ecff50f6b6297d464da94c86377d77bd26dbdc95cf68bdc1b9df021b677ba80d0b2c46174e931699094b3d52bff783ebb20e8299460cde9ca00402746296406c8c0d3f725b83e28545e9bed2136077a77a93fb519c9efae7e1ab017a5bae3f118003ae7bf3a26c6c4741538f84c452f14aa15f23934f0456740d05a9b82d7a628ef1b8d17dfa14b80219b6c547cdc1fb374c397a43c8c7ac901c027d583d9d5b5f5ce12cf81e25ad531c22edb41f9d5696aa98ba87491bf6232f04e10916b8ba7f0c5d449ae9ad50b2bf09046facb582344906f980c2843043bc03d9b499ed009c2a4298c8330cd7864966c2342ad29c4f01f83ba3fc9143192304624f2792128f8a284323ecebbb075df01885c910174cc1a55aea31c6ac824403ccc36198f85b26f6b5eafa112060128d123ce8a8fd308d32875573dca25ad002fabef4af1de789bdaa2764a7cce3fc20fd80a93adeff5efbcc247edb071f9a02dc5b05131884fbb3666e979a2dbdc82f364afa9f275948b0cb19fbfee0d00d0192fe212161aeb73dc0a8f046d60ddba34508d9eee56f557fec515512a8b9e007b34e99addb730a5749cbc1a7e1ccc10117cc06367038dfce0ee5e1bb6235bb03c4165e8ffcaa2bfcd75ca1146394cdae87b61732ed5dada44c584901320839050f0377a751c2f6aaf69f8a64b1f92ae25c20c76d104c5372a4a90a908602c5000000000000000000000000c3bf393ce71b499cac90fff9fa9c678e184e23d200000000000000000000000053a7d6f2a695e443ef36b474f2f8d2074f0a6c5b00000000000000000000000036c737771c57e3b9f9d102b3a1bd6867ecc77d4f000000000000000000000000e721eb059e3c7b15a80b82c1c5f4c97ea559d8cc000000000000000000000000b856415d18d6a8d1e158e5b173fd0718b8b08ef5000000000000000000000000a2c3e4953b972b1eadb99e3a67aa93bb4e7cb69c0000000000000000000000001deaf8ce8e7e91981a08320dac4db96bd3a93386000000000000000000000000c536af5c52fe9b8031091ed303416f902d711b730000000000000000000000006af56d85c051baa0a628f61ad0406f3dbe14c617000000000000000000000000827e0b165b323c34a5c6873e135064127c0afdf4000000000000000000000000ce7f022685ba1b8282756e272186f52371386e89000000000000000000000000d53a8f13bd6b57124f25ac6d87f70628b84c0d2f0000000000000000000000006e84623d5fc0dc696be477fd530881d26f2971e100000000000000000000000044dd68f1441b7a1dd83fe40314e5cac4c6ea7d670000000000000000000000002765870f9017fdb0a283a9bed6685ed00fd0b9ad000000000000000000000000293248ec88b8bb6c8873d0824a5e95a904a1d1130000000000000000000000008c1ed50fde0dad7d2cb62bbe85acd4e299e306df00000000000000000000000055811922619963b6c7502fde2f5f6bbd576bdde1000000000000000000000000988c95b9f3ebba3496a78fc85f6fea02f2b3103a00000000000000000000000023e19cd1cc8942f81f4bb8247c9be08626c927af000000000000000000000000ba9a20976d0ff64558616e524c576fec9d7d9c860000000000000000000000002f6dc42ed6fd3eac66b23fff977906ece16c2281000000000000000000000000a384cc3b3c6011cf40b34955a250df46c4ab55ea000000000000000000000000ca8192e358c7d43c6dec12cccb1f47ceb7a57b1a0000000000000000000000003c3fe9a101f79765466143a0f478c6c451e1bc50000000000000000000000000a372cfd6b6364b958ae09335d082ef491f4aaeb7000000000000000000000000b70b8f1d4cb3a698f428775ee0395cef77bce938000000000000000000000000a1d519953679609cd051fa99b7fb3e2d3ef6857b000000000000000000000000d9bffe0ff96691c0f22f8a708de282bccfc3eb7700000000000000000000000045e67ef76407e001f75a8035a41b8c8af4f95530000000000000000000000000aecfa3e09e62f62a928b7ed3037d192d6acc874a000000000000000000000000459367fcabd8b47d3fe2cb53d577ba6e61a56d68000000000000000000000000ae9cb1fb9f2870c04fe16d6ff9ec781281dc6757000000000000000000000000ede565f9692cd3db7f8cd9bff69ea564f2e25f410000000000000000000000008529cb0a6914eaf6b7772f0a591a69ae4b1507fd00000000000000000000000023aa75724785397762c21e7c7e624221a06318ba00000000000000000000000089ee4a73d541f35cd27ec14a4d77ecda5f2187040000000000000000000000001feb6cbc9ce8884e650605e26166bacac69ab7bd00000000000000000000000018ac7ce15c38983fc1d3585de247a30f12e53a0200000000000000000000000021cdfbe376e56a4ecc7bcef8f2851a802efb097f0000000000000000000000004e9401e6ec1fe2536d30bf112067fcfd5c804cdb000000000000000000000000e69fda26d478a4e65e80c7f6a7db1023eeaaa882000000000000000000000000e5695b7517cc160ec5d5de0a8d6d0587456351ed0000000000000000000000009035da113f47df3d047ddacd5df79eb0cd4ee4c800000000000000000000000090186a7be87781c2ebe21d4416bac11fa6737e7f000000000000000000000000c495d3e29f037417024884fb8854ff7d46f78e340000000000000000000000002d6eec7c201a8f5b1805b0510d18b863caa26c600000000000000000000000001e49e9afb7515d65f1845c0c219c588a6f38a7ad000000000000000000000000559e1c5c6f8794b925297678b175dfeb51bd256e00000000000000000000000060dd09b1a8d497eb4a4a1972a07656266376a43f000000000000000000000000e451a91e7a5e3c2bbbb0ebef452e228cc7c0c9b4000000000000000000000000bc613e4bddcafa92c1f69855520121decdd0e568000000000000000000000000d5e1936cdf5d696c303ce2dea2bd973a4ef70b460000000000000000000000008e95f8ee97fe54f424d7eda14ece33f9b36afdfd0000000000000000000000008b0f4bede3f52739609384c2fe225f99480022790000000000000000000000001a9b0c06f024f99c6545f234f21a9274c8087fa30000000000000000000000003ccda77bb5b768e8a2c434a1d702395748df932e00000000000000000000000027a4835e4200937728c1f64fb9b05760ae54ab0f00000000000000000000000081e07cbf43bed9c1875cc2d6291cad5905b1c0f90000000000000000000000006d9b287f29c750d3334f4eead51d2d4abb8c979000000000000000000000000087060db6952608fe75ea9fa89e603d601e1b9c67000000000000000000000000895eb665e745b1c1635a9340288917b5e8ffff970000000000000000000000001a77df7c79bd775624f92623c71c28abd34edbb10000000000000000000000004d8abd8017802cbb2155a4645ebf7aacfbdf8000000000000000000000000000666cba748dcb64dda5af669959e9c5adc23025590000000000000000000000009d8fdf3e7917bbd4f400e711ce896ca79f194f9e000000000000000000000000287265d4fb81c7dc75c35a6b5c425070c600e264000000000000000000000000e2f11cc43ab2e6f73276198355cb19b59daa4ef30000000000000000000000001abe15a1c0ae4b3847490a5d2d6aff1dd251efb000000000000000000000000053200e5d55c36a4cf07be506a9b731c593da5ba20000000000000000000000003bf21a8509fb68e275461f891f791c43258a55180000000000000000000000006aff2422a3bcd9194fa14cead90505a69f8131a7000000000000000000000000904ba5c6bde3662c3db55f53940edaf3d7adfd1400000000000000000000000032613ab014f60b0362f767d863a8cfabad1ae8d1000000000000000000000000d4bae291b39ec7798dbbb6eb561ed8e76ba23c5d000000000000000000000000d68719fab0d2e884525b819e29e0cb02cea5d83b000000000000000000000000bedc69ec7f09baba702075b985ce7490f4a698cf0000000000000000000000007cbe5c1a0b190c398993a2432cd68923bcb238df00000000000000000000000020ac7e02cc1148423210873c6624c2d3846bbcbd00000000000000000000000011dc4d566ab156ae61fc347f4a6cc51909be58b100000000000000000000000095f9717c9ee9cfb751e06167dea32cc9c56ebdbd000000000000000000000000f6c856388f9505da67dcdbb447ee175eea8a7e40000000000000000000000000cabde505003300b768f9aa1667585cc919b0210b0000000000000000000000008b0a8d2daa3ecace4d13588f7f2db967c77a73bf000000000000000000000000564c13045725674ac2dcdf8b94fd422b70814b900000000000000000000000006515f36b08f955d6b1cfbe76de1fcf4506c9c9d8000000000000000000000000dc37f350eb546ef12fc487cf26580e29d25bbd29000000000000000000000000f5cf1a260378aee451fc21dfbe08abd245af62f30000000000000000000000006fd77e62c9e407e9a2920124ec4589406d150093000000000000000000000000e2eafda35fae3091c16a8ffec54a87fc2891afa0000000000000000000000000403868f2ce618ec91bb5ec6526763d3997d41801000000000000000000000000f782ff6f575cdda6adb2a5d27601b07fcb1d1e25000000000000000000000000ab6daf989c55f56afaf9bb3499650d50c1755f6a0000000000000000000000007beb4e6c5ae29bce44c384fbbc8ed75d01e9db5f0000000000000000000000008c83ba7f6ec9dba8948591be253e2211ba24164f00000000000000000000000041a8c11f9ef52d95837acdc3a6b3f63b2033eb96000000000000000000000000faec28119c869dbfe2f198764c1d7763a0cb18ce0000000000000000000000002ebd384120c131e7f213b23dfa3690cc1846c108000000000000000000000000536ea65fef54f04d2adf0acfa62000d0deb47ea00000000000000000000000006a54374a24c0e5f57cfede5835937a58805ae8230000000000000000000000001de26537b41d5e5ecb5892aa457916f2ecbff1f9000000000000000000000000f4e2181727f7efbf2113bd8b4ae5cf6cf33986d2000000000000000000000000f6a433c1cf189deb49b5ad35648bfe67bf97e23e00000000000000000000000058bd978d04e31ff3c3d9c09f28bc8a41f9036cbe0000000000000000000000000e0660bac0d6467f760271a438f5e4df4f6eced1000000000000000000000000eb10bfe0b632a540204e61da7eb7e2c16272b037000000000000000000000000767a380380c0fe46494b091b817027f95b717129000000000000000000000000c533d0bf09aac80ce86a1fb9618506a9fa873dc8000000000000000000000000f9db293f16cafe0a235cd19607f3f2f86c0f66cd0000000000000000000000002ef833fe9baa6a2fd50a7fd1cefa5b964142cd2400000000000000000000000099f80d353985246007960161282f3d676b305a70000000000000000000000000f862fe2b64d2323c97753396f38248e693d8b5c400000000000000000000000015e09070cd043817afa58d8a78e2c5fca0240a9d0000000000000000000000004b9b66eaf5eaa617f71c9687447aee0d02095fa7000000000000000000000000fa9021b71c1130611d9b4374cef0b4cb55df971f0000000000000000000000004678b53d932b94110f18fd3b8c5dc5d3ec2433f0000000000000000000000000f215da14c9cbdb0c8a5849bfffe08963d78ad2ce000000000000000000000000b31ffbabd407849b05329355fa88d3494d8f855d00000000000000000000000049c910894e33eb8ed3124e54e69e26051a175f5600000000000000000000000070f82620d8cddd06df4b665c07a1cc8bb84cc7f9000000000000000000000000f5351c6bc6c6d81b78706a816be6fbdf6ef8beba000000000000000000000000d223699ee2214ff2a3a3ff20f83c9d4a7c7fbdfe0000000000000000000000005812d1e52470ff1226fce30d3ad1238264d78a8f000000000000000000000000329761ed7d3b55c0b1fcafc23626f37975151d2700000000000000000000000077a746831d4fff0631cb417224c979776905e141000000000000000000000000bbae1bb4a19e1a04d83a393a391e6c2e8797d5f30000000000000000000000004c0e68074698db4f458b4e60a874cd13d872b54d000000000000000000000000a19e23036eba5714a487362a04b9e392b9574ec6000000000000000000000000ba84b718f418004a4b22758175ae810aace179cc00000000000000000000000058579443214a0b04fcc34c7d3bcf047afac2d6a3000000000000000000000000af429eb467a000fc7b7e3df9ad123809a1ecc29e0000000000000000000000003718f3b8e73a3447857158a8c5e5a9d4253e4f6c000000000000000000000000992751bb87000f824b36b6bcf77186be5cdb5f2b000000000000000000000000cac9bad91492450cb24f20f484ea562962218767000000000000000000000000bf51e53224495dba197cdf5a97304e147cc2d9a100000000000000000000000013bbacb0d42405d2d7bf7f431dd33a3ad7f22a4a000000000000000000000000fc09c7463eb59b930f17d48cd171a696d49bfe640000000000000000000000006b1fa5ee7cd7e55928ce58e08e12ac79c775ef51000000000000000000000000d2f60a9f9511f3b05e03d05e0635287da7a5b0700000000000000000000000003552cc480c68bc823da3273c83c35c9c2ab22f8c000000000000000000000000027e6525ed64317c1d82c79b82f7b5b38565d594000000000000000000000000dd60ab1191210be4c857b1265714a7689cf123170000000000000000000000007776b467381c69477c01201fddee52122caa7485000000000000000000000000dfad8a04b886b465eb79daae3a52ad62258fd6a4000000000000000000000000795d21a4cbe11af146e30cb0d612b74651c93308000000000000000000000000f9fcefeb589e0b69b95d469f89aedff51beb6198000000000000000000000000fe021b2f177cfdcdaa79990b38c2fb6fef682e9700000000000000000000000079f72600770f1b4e98bd1513a8f0f95ae924e6440000000000000000000000003fc4dff353d05e33bb9bd9175e3756cc72459964000000000000000000000000e6533064248817f8a41ceb2d54a3e4a2bd6b0f3800000000000000000000000038938468dcfb609ada4a0882687ba2a7cf370b29000000000000000000000000dc9473e638d0c07e79e6bc1b325ca9b1b974f5f80000000000000000000000000ebae176b7da93ea2650955372f120b17b63ebb9000000000000000000000000ef561a489538509b6061be117a3f513e6d2b685c00000000000000000000000090291c12eecde0bd6fd7f67e118af1ec76331c4c0000000000000000000000000e581a8ccc3563f91922b40a653be8b18af1a8ae000000000000000000000000c6e12b6dddedec87ee8898f7bc030fbe86e9b77f0000000000000000000000002084244119da174b06e3c278be77bf40985c622c000000000000000000000000aba68e4a4ac9a82f2d5ec02512b09e96b5b702470000000000000000000000001f23d5aa51fa6d6896da902e1e342915bf4f1ad0000000000000000000000000c51e02fd01e8c60ddde2a424159a506e6bb7d0c5000000000000000000000000563a93c50a98d3d7674b25fd0f39e42f5119f9ad00000000000000000000000019fe93f23929d1874389b911f62d8ac3d45faac6000000000000000000000000dc8682bad32b0024f974021f66584b9b2b5eeb95000000000000000000000000d5719dae57bb97cd73d398cebe7acd64538a4bf7000000000000000000000000e29d1fb5e44b91939e4419672ec1cbbb37a3d21100000000000000000000000024844301e1a48c5f52d240479b2ecf2167fccb0e000000000000000000000000e13441a187100d1acb4201fbcbab3885c7932444000000000000000000000000e00091f9ad205b7ce02b8650b0db9b02a840d45e0000000000000000000000005dd93dc4175cf1cafc088e909056c692732edcd5000000000000000000000000f0006ff1414e75708ee8bc94a70608e58ba20f3d0000000000000000000000008fb7a1722d239c5062eb31125388acf24f2aa0350000000000000000000000003ab5bf45f501709664f4d0c1c3a79d95a7af65f4000000000000000000000000f9a88cc04eb80dfea6791b9879d45ddc69dc38c0000000000000000000000000d6991521524e908268ebcae8786a01f866ca08f2000000000000000000000000dd3baa49e701a59a286a6af6d16add679af103ad00000000000000000000000030eda1b545d8f33fdf923d3e94560d894699d63d0000000000000000000000008a66d418ba3f5b281de7ea14472949437e9b4c5700000000000000000000000014d7e439f891f4642ca06dc7d91fa7f37ac06e49000000000000000000000000118131380f4e9d2262166e402845bf84bf6cbb0f0000000000000000000000004a51efef70f80874705d6656fd49aaee1a220c9300000000000000000000000056983e534656e3db00d8623f676ed1e8995f52780000000000000000000000001513d7417075a312c9a63ceaf20e4cc3739d32500000000000000000000000000a9124780f2f41f244dcccdc25fea7277d679c58000000000000000000000000c0fa64c29a3449660c7d09caf6ecfac1cd9f6fe50000000000000000000000005fd8a718f287e9ed4717d34f201162e7cc3f738e000000000000000000000000911d0e09c47befc1b0a49a1e774b4a7a6958b4c0000000000000000000000000d323cfb830513eca0307e9dc4ed23e457fc13f7f00000000000000000000000098179c2d6b555d07230c4c6f9fb901ea62cd9ac900000000000000000000000069c1133db2672778540604109f912e9e0f50f072000000000000000000000000a2a2009335e6aaa7a8ea72152d462aef6153af59000000000000000000000000a7226f9cff42812cf6ea72b726f0d18163e62750000000000000000000000000f2dc2d7186c210dfd133140234f2e5eb0acb0d4600000000000000000000000066bbb25ef50d8852b7457159ea62dcb8df0121c20000000000000000000000004ae4b704c0ed5156b1c8f2dac59ea4035224a18d0000000000000000000000006c526830711405d96b2ea9a876b939b88b14c0080000000000000000000000005b94036181733967519617f6b8a9a86683a45931000000000000000000000000c84a096a09ef3cb765f7818e3fe16320328de038000000000000000000000000af839a31967843fd6e44ec3df54b2123045d81ce00000000000000000000000089ed1975a5633abf962ce3f2d9a2ae63736d54790000000000000000000000007451c41f327f38438cdd8dc6d4ca08d50e4279e50000000000000000000000006cf5d8e6d164896d3f0484bc6bf030dd926a5f99000000000000000000000000c527765ea665a8bd6a8132df165a929f5575717d00000000000000000000000051cb218de992e90e1fac537fdfc8022086ba63690000000000000000000000008c17dad92d94c40d58dabb9cb2c102a9e526c237000000000000000000000000f4f0e7793c1c083cf955e73f439c9d9ff3bf63c7000000000000000000000000be038fad9f92f9278e8346e28f0c78eee5a084d9000000000000000000000000833058470c895f82833bc980485ad95a1b6f1867000000000000000000000000ab51c7993da4b4ba635760fd69c8189b70306122000000000000000000000000b41b0d78b201fa171acd4db77ea56ed17485c62b00000000000000000000000066ea94bedd545d63dd2b1fc830546c54262a3e80000000000000000000000000a56ee9039b467bc1319dd5d7a5865d9c977cac29000000000000000000000000668550203f525584c6c012e2ae536bf7adf91baa000000000000000000000000a87fce6fce558bb9ddd9359bac577d6e648787d7000000000000000000000000691836c5c685846bac8c12f895aa742af03f6048000000000000000000000000ec2eb9ea942754fcf7d59d0ecbc944cd90b9229400000000000000000000000014457d7ee8cc8c3bed7d7a4a1c524880b932cb76000000000000000000000000b781293a98de0451138062c1c9959f747309b1e300000000000000000000000002f54bd56a0cf6ead798e4c5142afc2c15ca8529000000000000000000000000c60f2f3f35394b1519f0fd2b08c71b7710fb7f0a000000000000000000000000367019fb8dce356bd59ffe83acaaa59b48bc2cca000000000000000000000000eab5d20135ee85b10ba68c8bdf67a9d7625a502e00000000000000000000000093cf8a4393ff8d88aeef2b6f18e2b8034bf78fda0000000000000000000000000cfba7b82f0c3e87fb255104ad850fb32f31326d00000000000000000000000019d2b03f67f103ec38d8772169557483101c4376000000000000000000000000a096f4b2101f09091f13f7df408ae3fd52e4f14f000000000000000000000000fba81138def583c795b15ee501811bd38bc4702f00000000000000000000000039b32980ef4ccb28dca99d1c953b683ac321f8e200000000000000000000000014a450a84f7c9302f8a63f76a14b0c9e08c5a69f000000000000000000000000eb9b9de21e836661007b76a60ce6369fe6d94c7c000000000000000000000000461066f5033c4ea8e6227a40014fc47819cc707e000000000000000000000000334f0b3ce004c122612eee90a8a2eb9291274c57000000000000000000000000a863f236b1540c5f876856a8722480ad3def7b6e0000000000000000000000001fae6b1a77746dc40ac602b7260feeb08f95a72600000000000000000000000030d882447236826311728f290aec2f4ea43eec6d0000000000000000000000008642fc7462e47d9dcdd49fdc71ee2042ef7e753800000000000000000000000089d4480b9974949d4482969cebc086f27f512119000000000000000000000000197566482c7f069518fa21c20e5c9cdf2f4736a10000000000000000000000006768a749fa16e25cadbff01f599da24a9597f2300000000000000000000000000780130340b49f45eb1661eac8048c5b6ac51e87000000000000000000000000f397c93c50da287e215281211294511a34b75d4b00000000000000000000000063346a8544ac7cdc0ae208f6f4a449b973c74d9b0000000000000000000000002fdb78565802eac66a9744a6f3362779b066508d000000000000000000000000633c60bde604f2f288a449b6d7b59592a3fef3b30000000000000000000000006ef67f525ce0b76672b69b5a03aecce3d06538db000000000000000000000000775609fc335d2cec003bea265c97bade22bda5d50000000000000000000000002ed8a1a51d7f0e27f3a253475a0077b48ae132b0000000000000000000000000cd1b79db025c527c18204d8959d773f950ac59eb000000000000000000000000275096f7971873dfb583511d42fdb5e8e67a40b600000000000000000000000060bc4ddc2fdd2ef276de5fda70da2ded7bd0e291000000000000000000000000dd5a5315b10e2ab631abc080f0f729393c0edeec00000000000000000000000010fcaa4fe3003420f18ca129d9f36abfce8c1be3000000000000000000000000ba3d639a37f84df6f5f3caf5655008c09968a13c000000000000000000000000ab9388ff92eb6ad412b3cfe0855ce8b3a27c5ab8000000000000000000000000c1a3bb3708d49788c81aacf0fda02e7eba0311fb000000000000000000000000a8e09b9d395ef5e23575a43be5f64ac34da4ad210000000000000000000000001b6701f28266ce3221dd9adae819e7bfcfcbbd64000000000000000000000000f4ac0a3c381690b6c182cc69eefbb4b0acaf7a2100000000000000000000000055d3b7968b3ac8423f97c168707ba8e2560fd10500000000000000000000000022db8557d2257269debdf7fe833245a619e04ab2000000000000000000000000909c41e11d03542279c6d7cdd692ce0b17508dd8000000000000000000000000854fbe94dabbc9ae68bac2326bda53504a20ba90000000000000000000000000151b2d90912d57d1877135c39a1cfeafde2019ec0000000000000000000000001df5a5372d7d96c478c77a8d240e7e9611e75830000000000000000000000000eeac3a49cbd1d3bab6cbd741896743facd4fa5240000000000000000000000003730ff65316d9d47c66b95558c09b16b8adc8f5b0000000000000000000000008b523211537b7dec9190423eb0bd9b5b458fa65600000000000000000000000063c7aa60be7bf70a05234c271925ad509a9a177f000000000000000000000000e906b7de36a1db24ee4da60acb476d72a38c665a00000000000000000000000051cc716699cd161f1c05a9ba021e342b218812fe0656cab77c4262d444c10db68b10dd98e92cb26f485409fa81dd2398bb025609037379a52816ff46c0a2874518c404b8fc2ce23f57be82ed035d0b204f213bf4071edf4dd8f17470dba6b7255b35e1295e58b40b06471eb309f1115518794b8a0232d5e3a7494883b29a9b6797fe8520c796a26a7c6eb3b397ef5ab0f9ee065402f99ac30dbb2a149f3296d18b7b1344b2ca32b9159c90ac77078a2d25f5b4cc077a510266fe367e4bf6c2e5cd36e941151cf2c36a46f29deb92e251546e7cd4046f0f3e871357c8273f987792b70ef8830b6765d24f0fce363ab8ff16d579a604a91627691030dd50342a127621bea136cc3d88d936e1d6d1eb21329289868406d9a61db7f58d9fc82c4f4d86a271824c3da15ff107d84d54fe6fc6bcffb66107d6efb5065e426a1683f17db7f890028f3d4d2abefc73d512fa59bb6d8ccc5702d4179d003478df022146e09897cd83dc102c85a0fddabd33b6d3b1c454fe60072ad251d568d1226ff1a7a87e511dab927ea8e66aa0da1ed1883eb07eedc9a900f2f39f0bedcbffdbc104394c30761de9d6b4ef50e1b5ca17774f27e402b1e10487ef4c9ad3d667eb49b2de809110e669884c7f757618ee06618b3e050f53730745272ff7183cae9c39220f2d769993845a35a6f0da677456538a13bb0aed2702ed2cd60e6e8078eca0922138b40792c2d39380f0a0cbc89a76ca9ec1d940b107dff206d76387ee77cac595a62d7320f48ba6fc9250c8ad21b10259219a068e03ecc6b30b41de8359d2eb6bb6949e9bfebc5770d47d6f8794f4d9c9f1599c79003a1cb2aee3770953a44d85f8fdf67a5993881735566bdcfd81697b1b88b22e00509f049798d6f34ef662c7e5023b01740ec3870b32e895863a0dbba981a4b6039528385d8d78b59c4b985aeeb187592c88bac6d5ae50ff0e0b3514597a3b5005f0a1360fb381887475c3f0b393f35a3050e0efbfd7c2e16000e0c633cf51ab03b026650287b8d0dbaf763ba559e954ab93b937836f66bc09e75314a1b157c507fb783766880293cd8a927df62a9f51d9f8f9e191d9741fe76f26db966ced6a02afc7b8091bbbceae259747637b459480f7a1aac6da63a4726d92fa4e469b4302757e0a4b0ff33820cb19b6c30a3e1008e5fc413bab5ebc88ce8d7d4b50ff3005828cb3d3e08e5eadc9f8a4eb50bdad7d8018e0635058ae2b5b153abebe49f4013056f90f28822593bc24dfd994f041c53d2fb8b72930115354c976ec80358606372d1ea9db6a713701a5f72456e6c16696c0eac32b7a4e4ecbca480c32de700671b7c964d6231f67b89b08eb8b4513786f6385d0cd474229b2170fb1d0014305b4892b12bd7884d06c2ab283a6807e18dde214bf838bf701618d39d49b8d6e030a9fa0021c2ad1571e48c9f895bd8b8920b0555ce9e8090ec8696d08f826c306e4a4a2e8eb76df63a4d62cd43d72eefb3ebe050d489a3830d122dc7b34c40c05a59485f1ecd9a3fcb5130968e6984c1c2d1d6333310cff00ff66c95ecf5e6904a44d53935a7d7c514e28c544517a9afb4a1edc0af9985f3b7ab864c327c688075b7be1ec2934ff3f6382e5eb9663ca5f1588086b20c2c999be0d8b250097cd077a7f96e27e12cf6333f5889e9145461a38b08cb367262b4677ccd327dabf7900fbf6ca71470357a588a249dca6062a9ed5fedee03b04fce3b44b3fbf675fe60482510c4350041c9f79bb1152e6f4b9cc14e96b239a352d2261f851af923b4a0796f3682745ce7926d2c681d9284f89ad36a1a183967cbec6e86f938afca07e057265030da9a40438e1d33f2757890d0ae65e3565a9de398aaee49b5b9e30540714b72fbf52c6ad6805afcbcd7efcdfc696b13a60e36dbfe90515f66941976a05c7677129775dd743628e1f8fe2325b6d75d3ef8a589acb43734a84f94a1be605e65fb292527a2a614ec2814b55b246b1c79660d0ece4f0b9a5fb69b9ba10fe0128d64f3d75201c62dd9887273a01e7f5c7b30a3460a5830aa67df0b6b7547504f5ed89e232e955fae51988423e32181e98e0fbc805993952e6aab6c5df37ba03d5b9e99649d91dcd86e8d19523fd68fe10d49114e26dd5a8a9b4ed879d39f30460146e260231f867861d9b5582037d872244f1c38a75f516ef4e812e3f75c403032817288c7817825c0fd0e5a4c5c1c59bbbf87852ba70ed00ed2e64ebb54f05e2a04a2085ec8bf9c56ec88e4d115242fab3da4ef5ca006d949657ed6b724f00f27ee476ba1b0aad3476b3596d7f3d218a8d1343c78f757e4507aec8b85753027010f502e11d0d9b6887eb8e02c9d84f6a5599e9b0f42c9c50795ef83dfb2e051dd4e0bed06528e7ffb413137f706e0a4649300fce8ed72e0284987dd39c3903e2cec9f32b18ef3139573190a3198d03335e467bd3afe0eefdf13888feaa5407c755ab99fc7da98349b187892fd8bbcd30fc2badafa8a642c0f6653aeea07b0398413307623e47ab95c1fba12efa99649310f9c283778b7dc7ca248c8d81a307916e07ecf46f5c35ed7337895ab42db33cc9d3097ff475e520314f35edd88b0119d70933ddb256fceae906ac74c9c50746714b973c4178a7d83694d7c67507029ca0924c6f2506b15d70c71fc6d0cf643ac9859e948b8e035d2d7ba2ac4ee4051a80d42d5e208896002f598ed0d2a694d375e8a431040e67ed2d964ab1c13f00a571b0b533330b3c18c60ee6acf94088fbd64ef04668c90e73b79352468e7e008373da787354f35d62c6dc3e25e9264f57122d425a2689e8793b32a5123ec6010a0bb6ff85ca1c842320c56cf2fd62ff3f41ff8d823def00de54508c2825de05fb07fb6a943eeb423b4ce49564b11e9c04be1e4eb8cd0afbad6ffa66c7d112009575d8a0b6a7b62ec6e41899a831bbf508f7e094c1caed504c0e4e8c07c25902ecce49e5245645e4830255f5374cfe68cf5daf40d7bc45f4b097f0077fc1df002c427364d7e7d0b1c6d8ccd53aa3d9718c0d7a600bb69f292c896242d07a1207684df3f1a040a7ed4e5a5ac92112ccbdd83291946325bfafacd8349dccc00c03a7b69a6107d53203c5fcea0904754904b8828a432d832280cc3135d0232c7b04750e38b06061ad198b82525d7db57d203d4523245c24aa8f310f2f57d874ae05ab2b798a2d577aeef4103c06d18b0d06533bc073ac837ad1677e6cd808b18507ed309abcd904777240619801f206420ac8abc9d83771cd80442439758ee3ef020673794751c70f584b0c727c74018345f989941f6972f57b2e69895244c5c2037933741a021c9c9c2f2517b93d890a0541c254b159fc6125f0d17d2e3bff3d02f609ac62936e74075cb7c0c4c1b8d576267155bd1d86cae98a2f605eae87ee0187bd69b7e57166ec3ffd7203ca16694cb9a0f947c41bc752f1e0bba51812dc01f496349f8dd00766a7f792f3449397564ec0fde38bcf64a75f05f19bea2af205c47d017df6628664a1b9bc83d2c7d410d16344167dec6cdcacdb6841b643fb054ce609df259c917837a15a49f6e63d66508937a45f0b5904f2daa4f2feb75203b73cc03e1faea4cb2a1e7528cb200d2c7b4103b23a1d0ff3c751133450078d067f808a8a091c70d5a5a6ffc9d8ee9b15c37eeef0cb583efff4a8ee8c0f37b4034ddad7ff64964251767a4f99ecb919139d8f51017fbb1ce1c311d9a18b0c730763926551d2d70724a8cd00516d8c1b2d7bb9c5717eccbae53741e4124d84d706c9f5f668dcbd54ee407e5d7539bfe97184ba219e1dec2a9422916ba420d13501b509c18e5d39c7ef48771df015da4e7cad1b8c9860c3515714a13fdbdd4e4700ffdcb6232eb2988b5c79d3b08aeb5c1e3088c70ad850a21496302c6a25d46e02de19b9e492efcd7e46ed795ba07dadc2f433d26195e03c24a09cb119be3d75027784cad5d3381c74d69f51d24f793f07c001a2cafc61a698941114420b8efe000000000000000000000000ce9f34492f9c9a29803bd12e4b74bc2475935d35000000000000000000000000877ad80c45f7a33c542e92217d57238e61afa47e000000000000000000000000a2b87c4be8c41fdedd10125b401644066c4eff010000000000000000000000004fdcc0046edeea9f11fbbdc2152e4b87deb514e60000000000000000000000002c5e0b1abfa15e8f0469a1c1e217c62317e602e500000000000000000000000003db81894e6307bdb3bd2d7f313c117b46f65936000000000000000000000000292aca54f40f399f410c0c6b79d278a9af6864000000000000000000000000000e80930c995db57ed70ca396fde3a41296e63cd00000000000000000000000005d3447d982a31b70f3c48d5778fe849610b4e9ed0000000000000000000000007a431d7380613e33512cd557a9df102f36029f800000000000000000000000007ae237db33d21c67001a6373c07a91c1ba669f47000000000000000000000000551523cdccecf890c61b2d2887f86c8dac0b1168000000000000000000000000f959b595cd9f2dfbfcc3b0ec9413b0d176cb63c800000000000000000000000038b47f175bf5ad12020e2d559c662bb271d0633900000000000000000000000004a269b535aa89d7324df567a79a35683b3458450000000000000000000000004fd8e9e1ec25911c513c5924a6dfaffe01ac7d4800000000000000000000000085d1784f20fa44d015426c670aab5c12f0e1048c0000000000000000000000001f6d91d6ad058eeefbf904af6d10ce0af24a02c7000000000000000000000000f8eedd6eee5ed917404a996824365e4d24ea0dc30000000000000000000000001e7e28dfaf65ac933e4a820fb4718418eab53b340000000000000000000000002ac80bc8e5d473742db96259f8a407836782e902000000000000000000000000b48460715caa40e7f202e995bc9c4a9c8f4e6566000000000000000000000000b7670fff2e36428f59ee625921be1970ee06ec040000000000000000000000002ea22b3606a827176e6a2e91f8427ae8d1b474340000000000000000000000003dfe227fa9df6240ed42552ee2155c25224289e7000000000000000000000000f8ce1f57899be2d7f61a515dde700626e6bbe1ae000000000000000000000000752f260a3c77018a18d426d162080c10678c5b8c0000000000000000000000003fe1431299c60449822a5f2d85bbadd4b3f617180000000000000000000000000c4be3bc6173518f04df8f5503268a20b8f8303900000000000000000000000072495a75705ae8aa58c3862a7ea3a0d424d4f383000000000000000000000000a72a8a12b078bd4086cd5ea58b3c3b0a071a68ae000000000000000000000000b2dba9c880ef832a7b2b0efa64ad5e797e765c70000000000000000000000000cafda87459f75389c68a725c08ca37547d73cc8e000000000000000000000000caff3bc45eb0d6fec2b1e03eb20d9acad726a55d000000000000000000000000923192d50916f098f6d46f96ddeebd03842533f5000000000000000000000000e7fbcbd2eaab0b7225fabdc5108f8c9f7dd429a1000000000000000000000000b113d607c549ea1a42f62665fd1ff77a5c4b296d00000000000000000000000063423af3fba4aa8443f52683c425e16c1bae2909000000000000000000000000c4b00f8420bc2efece3683b4d3a27c2497c6793e00000000000000000000000069c4de6a3b1d827bc0d6000b861729fa31f657d500000000000000000000000077f5c6d863728d6d409970a6cecb542682ebef4e000000000000000000000000156f908911705c3c1098fca1611bb3c739b206f100000000000000000000000075d263feb41197150c7e1d9cf98b534a6819fab80000000000000000000000002d05d6011bdbdcc460e5c19d33e9338b29d764e100000000000000000000000044530c85d713950bacf106c017ba7947874d591a0000000000000000000000006fc2aeefca0a90b768cad4b5f1abf415b70a4be80000000000000000000000001d2c1467b199ee3dcf1a559d72d34b43960e4661000000000000000000000000e1083eca48f153e5d87fe095a5e487994d2746b0000000000000000000000000c2a73a4558f7c710f88f6a0efa23555dcd1b1d84000000000000000000000000f675666332617631a4de9c9702e2ad6462d775f2000000000000000000000000b64684f7ebf084e566415acf594eb49854a7e0260000000000000000000000001bd6677094915e5cd3a7ee9ce4402f7c41dea8be000000000000000000000000b9fcd5150df2a807b321aafb94ac895832cf3481000000000000000000000000b143e86224448805aea896e860a7a57d6855584600000000000000000000000019be4f78f4fd9671845db034c96f39303cad05f7000000000000000000000000c85ab97865137834cce78d894c636e2e35ddeb050000000000000000000000004ad39c3b3b45a864db2180c4b22e1c4beb5d8c4d0000000000000000000000002bb9d44f1a3d8e12e754808f99e3760206eae9cf000000000000000000000000452f659b4a3497ecdc50107ae56a667a400bcf740000000000000000000000009b9b5c318bffd91ed06dfd55509980599f85e2de0000000000000000000000003259c5f620ad3d6b78342eb77d387294dd91106400000000000000000000000060442e37a88c0c2ccd1f766d5bc4674fbaf715a2000000000000000000000000de91996d03c42ef3d718f44acdfb91beea76d5920000000000000000000000005107c67aaa7a2cafac731c552dc55e46abc12699000000000000000000000000634ddeb3fc045da1b64334cb70814c2e599bddac000000000000000000000000dce37dfd40ee8b90c671f579d37c854ab4e9adc70000000000000000000000000c83d33c80f2939bfc3e7c2d720aaa66d29cb163000000000000000000000000124adbb326e4582a36734f06732d0a2fb9275a51000000000000000000000000cd8bc5378bdd6958f4a0cb2589e418fcadc6729800000000000000000000000040557309f0ade7dfd05ef37d6bc4f533a0eda7bd00000000000000000000000013c011861369d5118e90919d160005ecdafe558400000000000000000000000072cbc506cdeaf1da555adfd8574f5070934e92f9000000000000000000000000649c7d74d18e8f6920554dd5a0cdd9d8fe7c750b0000000000000000000000006fe5f7993d48a05c1d99c59a1b4c7dce3c4fa0f50000000000000000000000005432a12e7e2090856f96487a46425f2ea695b6e4000000000000000000000000d7b978d02e0657c0ea6785b2a9fa0a00586baeef00000000000000000000000084a52eeac6fad8079e166d9880241a32fb9d9673000000000000000000000000831c85d0d1486726ba5569d79e2808c0d68a8bbb00000000000000000000000058416d2732ba8c8c7ce3b90199ab0840028033bd000000000000000000000000bf0c7134a194cc9b2f0c49ac2495097bb8745f070000000000000000000000005e18d675c90205e2201d38b04cb5649dfec0a9f90000000000000000000000006696822155e77df16d4753742b40756876904c4700000000000000000000000069b551687985fca99cd82918c30de21019164f6f0000000000000000000000003018fe7ac062186aeb6e0742c4f4fce79d677970000000000000000000000000eefa1ba09609f5bf3885994da467136b4222ef4f000000000000000000000000bc7ec687fbe756d5068634f8446df7ce4c8d9ce9000000000000000000000000e71184bc4944efb31435cd7eebe8ac37e396a982000000000000000000000000ac39a91721bddc8ae8e09f7a9d2be979d59a9fc3000000000000000000000000be7052d02ff4ca5b5b46407afb7fbfc47147cde600000000000000000000000044f87968edff32e42b2258e077a4697c0b50761d00000000000000000000000079481e7bbb407b8f7cca26f0b3516188b77af69b000000000000000000000000fce17b288250739749f0fb6f63d9c78491a2b19a00000000000000000000000075a4c97ff8778763498e73b4a061daf2690d84160000000000000000000000008067c74cfe6ae1e83fdfc840b2afd0118ae2146d00000000000000000000000062429b5ec310a16e8a0f8787abebc5e8faf61f930000000000000000000000005975c7c3af19dbde57eae0137691548f8c579eef00000000000000000000000027dd00e1d9ae58586464184a9394014779d7147f0000000000000000000000009e7f23e65413606e7837512fae33403ede3cd1c5000000000000000000000000de43503b3cee19347905a257538d974ea899f3fd0000000000000000000000005a0382d564356af1d1c2f88765a9c3d204463ebe000000000000000000000000bf96b460f663da3e639f890abe58184aec8b0533000000000000000000000000c3eed7771095347273dacfb80f99311d7ce5685a000000000000000000000000386d5b4f295ac21cfb566a1aeedde71dbe1ea07b000000000000000000000000772ffb468e409bd8373ace46f15beecda3cf9e220000000000000000000000005011c0b5e8e30ce5cdea47f2dc6ab2f79607bc4b00000000000000000000000094d48d3a38f649b15bcb445834d327e9a69b84f1000000000000000000000000b0891011a179728f118ebb8cc50b55df894f768c000000000000000000000000b4fac985f0dc5af6f550991ab09de9bb3b2fff0f000000000000000000000000c6792f19caf7a826602a347f307d680a0cb78f18000000000000000000000000d439a2d5e7ff7c260f2e4bef31774e779a605f820000000000000000000000009068af5e942efc3fb9ebbfb6016e23d9ae33c5a7000000000000000000000000d8e5b1be167ae84e21f3f5f51576b3e2d78dd907000000000000000000000000a234ef84b625ecce000cfbdc0f9f99130ca73fd8000000000000000000000000479811462f61a9516785d999e5ffe146c01995d50000000000000000000000000440defab45248c7a8d80674b8f8d5ca2fd8e3de000000000000000000000000eabbcef78c9277d48594b105a3541e08bc9a82360000000000000000000000004c993c9c42a433b16cc4063b89baa6d3018502c5000000000000000000000000d8600c177e077570946d6642600f67229c23ea5b000000000000000000000000c3caea859cbd6dfc55ba8a6e488d9728a93ec122000000000000000000000000722f4b88735897f6614778d665df0d0ce2b4b78600000000000000000000000025e3a5fa0ea59e414d417de57bad68a6b28d2ea10000000000000000000000009e8b58037cfdf63ab52567c45cea4ac05d1d768c00000000000000000000000013cb38bc83787ba15cf872f4a6e66fbdbcc774200000000000000000000000004c7d1a3034051685406dc60cdc52b8bd61d566b00000000000000000000000001436fc0975c509a46e9917091434cdb54cf7ed6a00000000000000000000000073c5a7586d52b659a884f920f320fda3f0e143150000000000000000000000007c5efdb14f9c9e84f0deb99e1e79802903bbb6e3000000000000000000000000c2958dd6a6d97c5525582ce58af998d004676e6e000000000000000000000000ff08e7589f579e3efb9212a9ab074a3a76c05e8100000000000000000000000059524d9618166381955cfa0d6f61c71d201b066c0000000000000000000000006e93c3b6a211fc66dd1c83d3512600c2270ce60400000000000000000000000041e13f0499db30f116338bed0cc3ea4f75544118000000000000000000000000f5cba06f0abe595f0aa110e0dde225bef04863a000000000000000000000000097298a209c2780124263ad007d9c195ee3b192620000000000000000000000008a2473db7cadb55c0ba18150e0cb28b5d9d2657300000000000000000000000088e03c4e90f0d6837d4ca71538d1c64415671975000000000000000000000000400cadd08cf7fa1b8dcc2bec46d752866b4f6a0d00000000000000000000000036663d5fc5ab37fde1218f3b5a428af0eac353d500000000000000000000000094e7c67a07b78be28a8328d3621b06b3c23a8515000000000000000000000000f3350966f44e10241e61ffd5d63feeb252346e9d00000000000000000000000022087a2100402c52385ea9ddf6fcc409cbd87ebe0000000000000000000000006bdff1d3f93abf85ac1c9b865cfd90e8b053194e000000000000000000000000b77c89f5fbf637fefbf15848fdf1b3f12e583c1b000000000000000000000000f4f2a68e9b9c1fe7b172d61c4b51f43b6071edd3000000000000000000000000b25a5de10a65993bcfbc450e153ec8226b66af67000000000000000000000000a8c8332ea643d16276c8adb551f195eaedc28e840000000000000000000000007ff3dcc069a784832967acdc3144746ea986de5d00000000000000000000000014a4f7b96ead651aa53adc56ab7e98c49d07ae0b00000000000000000000000070383748b528611c31947caed46b7a7f24898b4900000000000000000000000044cf7e93d393eefd072f4a7fcd3b440a39ca6c1c0000000000000000000000004e6494d32de826a8952bd2f3e61a7b6fe68c7c1e000000000000000000000000e45856f1dd0fbe8f69edf69720df96e2e9138fff0000000000000000000000005f19f6b7d53efeb03d4755182e6018b02440c522000000000000000000000000fb11ed5a06457cf4329a8749b98deab71d8fa4e4000000000000000000000000abe77a2982972031877562ce1e0126ff86cfcc29000000000000000000000000e9f925e3c9e32b134f5049db38c341619eafde8e00000000000000000000000083e075a2019db6014b3627e8cd25b15b1d4fde2a0000000000000000000000002007a23a511142c07de4ee757ae3458b138272830000000000000000000000006db58a124d2de1667227725e6ae71d84d2b1324e0000000000000000000000006a1bd5a22d6b23b2e2ec43d805ba1f43566c015c00000000000000000000000033e16d6be600939704396a8138d20833746adfa10000000000000000000000006ac2d0e5265a6f9dc8d435c616ed9f8a195eae7c0000000000000000000000000ae2b878a7499369bd96fb307a47790a3f3383ce0000000000000000000000008d5513d180657c26b548f1b24b7ad172afdaf48e0000000000000000000000007ff5498c6a6cb51a504a129fc5639e9ace2f44860000000000000000000000008ea058611905b91d6cef43308a84bb4168a22c45000000000000000000000000166848a35c36b7f5c2d3cf690dc2902091900f1f0000000000000000000000004ea0b590028e416f23c1cc379b4d121a0a71ce0000000000000000000000000073caba0ad2e614745451c8225c6b76a9ca436d9a000000000000000000000000fbe7c154aa0fd8d8056b2d27ab789e0dc5fb0ad6000000000000000000000000d895cf87dc5ffa54ee5032cb73147b9d11f81a5e00000000000000000000000016eed44ab87d1215422f1373ad798bf3d2a50eea000000000000000000000000e07a1f73254ad5e749eb97ad885443445137a870000000000000000000000000de5b7653309aadcd6bcbc6f05d26a9f30c32a340000000000000000000000000ce68fd4c610864d21356ae5d1ec7ce00f089e41d00000000000000000000000099bf5478230249dabdde6763dce26ebbfa3a73d00000000000000000000000004556db31cbafd244ce86356da0374dadd9e157610000000000000000000000007f5886d87cd78dcbf0b770e5d8a6c7358418b82d0000000000000000000000006f7d59151575906bfeae27757d7443c09822eee7000000000000000000000000afee1afa0469f420466b10c6948fdb41df064bfc000000000000000000000000baa5a4fcdd897cd065313ea39328543c1e6947e8000000000000000000000000207b88d6decb0643696ca0fa5b2f661f2d748fec0000000000000000000000004907917341098c0072374e71403238b9240e98e80000000000000000000000002f6091d8b841f262391fca85d1af24dcde5167d50000000000000000000000002f6a4b134635518995830b56706ddc1bee35e169000000000000000000000000d47e81922583d8a5d4f073f62199b02b1eb3e5ff000000000000000000000000424b6046747d1a64444bf98f8f1240940ab4ca73000000000000000000000000811d05371373db4f70b6d92caf6deb21a0c757d4000000000000000000000000b297a07e3ffda56392cc847779ee34639a0475e9000000000000000000000000b53145ed16ab8f722d305e2a3a06add496ebe4920000000000000000000000008d985a5adcee660ff0fa9f6bd7fface75a56b49c000000000000000000000000be6cea1f9af81c2e273ad10cac3c7b315761e23d000000000000000000000000ffb744c82384e17a112fbb18168021ae356f6057000000000000000000000000d448b81998331abae98e637b631201a29b3a8173000000000000000000000000ebb7d8ff312ea25002c8ddc4900b8493d97126f3000000000000000000000000bbc8934c3d4f30bd0996d334f879b945eb35516a000000000000000000000000df4ebed7926a569118341ecb36025b5850e0f6d3000000000000000000000000aeca61e2c3af6e5235556b17223ac73a9a6e5eab00000000000000000000000005c3ccb359d254795896ddf1d727f3cfc31f9d6f0000000000000000000000000f1463beb9e77fc868ff016b806978fe826e6c36000000000000000000000000f900e25ab8dca1b9689aee62b89f2a7cdc6272980000000000000000000000004d5925b518e180a016b6fa42b2a226330f2d394100000000000000000000000013b2173fd25bd70a8d262cccc1bce1401b33310d0000000000000000000000009a6456447016ccb371c026d5674cb66a5b89fde8000000000000000000000000014972b5907b931ada31b02b94bb0d6a721c51960000000000000000000000007542498658912adef19df0ad644e3358945cb43b000000000000000000000000ed8beae6ef0cd3d3f9134ba6b01fff76c67cfc5a000000000000000000000000336bd1c389b59a83e5b387c6487b71cd39b3f6e100000000000000000000000070fb56bf437c3e45697ad801252e121307780dd50000000000000000000000006a33c6b8d7e7b6d715a0a1785b6765f55a3d0e13000000000000000000000000866125ca9846cf4cb258d878b256e66a42ceef3a0000000000000000000000000a0ad397a32598260a1f2abc45be9b42a6238b1d000000000000000000000000e6b97377aa9ca250c2f5db241d87b67317facc34000000000000000000000000ccba28f148c811c9bac40fefcb817f6f2e1270a6000000000000000000000000c18dfca22ffecf59328fd3697d09e11c182df5fb000000000000000000000000456db49aefdecca027dfe8526f78832342ca7d0f00000000000000000000000052b0e7b160c41cce130d608f51558314ad0bd1c80000000000000000000000006777f33982cc878e4a2b16817a7f4eb604a757e400000000000000000000000075b75f299e8babe5445a782f8408a9c30c9819990000000000000000000000007676820120f44f45af891e719e460daf19f899e0000000000000000000000000beb8667849b71c1824d050a6923519862801fcb7000000000000000000000000f5a007e3b9487e28ab44e02c93071c3599e8ae6a000000000000000000000000ce5d1bff768245ac5b5f9e00a368515bb5c71f1e0000000000000000000000009f0860d17dd9b70f2fcc1a1e0d6186e25910206800000000000000000000000092410dd74dbcf8196521d2ec662e9d4deec6d2bb000000000000000000000000dc0ece91a91fe1d7ffb689a053e262959c9f775a000000000000000000000000623a750f745023d937166b054579e60d017d554900000000000000000000000065bb0a0dd0c5e0e1dda70654dfa346698c1e2c37000000000000000000000000be07e17b9e9f501cdbbdd0d38097606e02b173ff000000000000000000000000381a7998dcb28eb864087529a3d3041cad54644600000000000000000000000010c00b5ca5a9677a3053b42d6dbf73d79b0798c40000000000000000000000009987254e8960684a144a896f5b257794768b75ac000000000000000000000000483c869b254eb5edd9b90ed9fd4f231cd5c3a51c000000000000000000000000e1f24279d5632c7c82f9e53b0a8a5a83fe365b940000000000000000000000002429dc453df0ae4fb892b651c7e1162f1b57156f000000000000000000000000164e0b5c53633996168038fc81646912cb5aa69b000000000000000000000000d9c98ab57de1ade5398c8997302c337cb0b2799b0000000000000000000000006c3fd348ec79931c16dd39cf502b17184f591eec000000000000000000000000bbef26075bff3c4057ef453868ac0dcfc522ff03000000000000000000000000884f0491b4b14d662e6a3d652e7c3e4ef0508e9b000000000000000000000000e8ce2c6e2cd265f9d736ae8d75579561cfcefdb300000000000000000000000001df8459717f1b051f76dcd7826f221a8f727640000000000000000000000000b2ff804fb92abae966be013eb665be1872c979e00000000000000000000000000c60137a19bd8ec88f25a83ba762d7b1c674e30c000000000000000000000000caf47b0672eaa7874ff42bfbd2a4a2f1eb26348e00000000000000000000000083b370b299109ef16d2c376be743ee6419a3b082000000000000000000000000b478043f5b5552dcc4c808ef06bbae63de80655300000000000000000000000029496492b80b79da498cc910d34870fb3138e5cd0000000000000000000000006bec6d19438d01d5da9fc44434aeff486478b4fa0000000000000000000000007df11cb856cbb4f619f8c8806f704f56c2bc41be000000000000000000000000b72e5be03b73f84218f0a6843cbaac6c5e0c93ff000000000000000000000000457e2400f45aa6a5527ee66e1e74aebb391a90c7000000000000000000000000edf30906c69130302db3625a2d500d8ded6aca5a0000000000000000000000000552b4683d71d8d1629d31aca63f58de72e9ff13000000000000000000000000fb81561aab2ca93e4a5b728909b5270eaccd05aa000000000000000000000000eb95b2b176a103fa61c76eb8e92daa1c378b18ad00000000000000000000000075e7e71d6a585b0ebc2ea7b6c437a35b7493fd78000000000000000000000000f1edb9d87ee4e45f4c059b811ba920d270af8847000000000000000000000000d2e0e1c7450c3f0e7d27e77e6dc0c2746daeae94000000000000000000000000225e9bdc530f0ffda0701693439fdb72bed822f0000000000000000000000000a35d30860dfb6166c31c3cfcaf2634ee7c433e260000000000000000000000002573490c117fd3a16414d7fd30a7e14c7b436f03000000000000000000000000ee77bf955f39242c55cb2f9202bcbe3694c27ff000000000000000000000000005384eee015fa0d3ac8097d58f6e5fcf366a606e0000000000000000000000001c0ece173b14f50281f18657d5645d95d202e0bd000000000000000000000000c76d46065c922da231a9359ce55f0ede66b34cc8000000000000000000000000a6f8d9c30ecdf332928f1e66cf882819514f1df600000000000000000000000083e4921c0fa517572e54c70c578851633bcc324e0000000000000000000000007df17769c2962916e8facb3a823842efcd78270700000000000000000000000042166001493c4a17845268bb33c431b96b7e8b50034c7e0f363b4f6d5f12abfd78c6bb0f5783f55165b09e7ec311688744cf83c205b804d9333c3286b679f35f0c489ecb5e5197025c5815de339b7001da0464bc0152064a10ea8972df03f5a2678af1878c62bb59bbd96bd6bf841cdad72d48d104180f6332447c483bc661e91f62876a0431fcc4824a8a2d0337118059bd7a21024342164d1813103979bb175487784407019b2236b2658f4c6f8084201056e004d83e5f3fe7afea46b4334c53044822f09299b7bec593184562721c4dea5b030061cc444600c21aa5c1fe2395e0fd581c931bf980d7785380c22ce19251e4170093d5b536501852806b02207e4e7e095b1a6ac01b2504b261d572146c11c36502edac1e0b1d08ca31eeb5dd04c9d65b6af0e79a5c37a70e0da0223d455afe9c029337bd92a9cede67c74c95f87d624793dbc5894570535cb2b1f5166674a7d70682a3b0e5f05bf1f0f4bff065ec80a7f1951c9831863742ae46ced572d25c510091125e17ef316e0e3e295ca131a7454a1812b4a9bb9e7b376a5fe829c2dcbf00110de40018be73c99366439312dda392c9204c0c50d82f530612be018a7ba200f97131ca934db2bc00b3838eb54bc5b4773936d6be5ad7a22bcba53ec5ad2a01ee101a4045159b2f2e0b31202a719b5a788f933e8b7c51709cebcde82f4e230275aaf10a9478f0b9aac5566595d29b10a22733183742162346f2e715baefce00ddd2a0a1e49060daa09d729320507f901af0a2e639b6fa65191e7de7d9595e0671ebe4d0f674124b78df8aa59dc5d2affe06ed01f1a294d481751dee091f0b03d30418254321861816cf4874d3772f9b4f8453870f529dc75d1a0bb75de18b0211d898a1535ad60d8cdb2a00f84428ac4bd338cb5a3eb5002f16f8ae4a27df0355bdec173aaa184f1dbab19d781e39f9e2ffb9d96b7d5647e9c3095cd79efe0214cc71dbd01f3a00382045d082f6d47dfaee0afa5f0024c1506b16344a9c9204db9968721be48e56abde5b73d77e8714d5ccf59e3ede7ba5116c8ff67d05f90609f26527cde5765fd07f62805f98bee6b2f83821470910113317ae96c2f3db075761bd79811bd57d36e59865cac86ce79555ca85d89544c280f6cc64256ddd05a36bc94167db1b648b1512e0f9c6ec9253432253475a24be7b48c9b0a4ebba059b212b49a14b6f6c392a9cfd536dedbea66c74bf4ced7ede67cc46c152ac4701066305896de5d8330acfe0293b79264413c3e7730d011bbd02c3c44272bc55003f8b92c5c428872d5023d9e16e606bf48e97faff0da1f9b0117c18ef0fecd40503aa1de15404c0a1cd031829eda6e5b2e4d122c551c4154e569a91749de9d80285641f7ca8e4268a09ca4f408e98368bb25ab37042c263f03d9bb2c95cff5e010c936d76978d8af5d8d7ddb78ce751dd8c3f1778d107a41e677e8743ffb0970379930eb2d0c87ced3e1e5f955080c2a6e83d8bfacff40826b8855d01fba87c027881e495c7a79f5c00dcae99a0526023db769f2dfef90ad45dba6ae8c8317003f18e453fc164e5904b9d34dab71ec1beb96113b24250c7db8293f597a763980693077baf7ba06ad982594ef4119057793e1aeb48b75ec7d63605cc666dc6da063ffa843c802295eeb272a124930c538b994e46b37f5962b4b53292dd6dd276003cf537efd2be09d161e624b8762a295f4c3c7a59082b7ac918ac9387556a2206853d0aefea02e52a11ca11ed941f980af3e5cd173475dc9d5e099f9ba35efa042d65a576353a2b7cbdbdd2b6328680d9bffd084a29a6d45455b0792e4436f404fd98086d7b0a1414e42f276ef1aa6de2ba8aa239060dd0cac0fbdc0e625bb704dc186cd2f9d3715b9a3d4f5697c263e9b71327bba0d66d5480fe98db1e10b703f9379e87268d7f0c269a5b6e7d38d81e6d14489c8b8f7422e02e52a4356f2106014eb00372deec516f8079990f2042796224b6dc8dc98b0a2fde7574cba25700048661ad3a58fc2c1a607d86051a1fe1a2ff3ae76628de4ac2a6dfc79efe9a03ffc32e046ab9dadf761792b5792664f801a78b6577c4ff902e223b10c16a2201f3ab83eeeb46758df082af0cde544944c1180a949cf2097e6fa7e7fb6cccad04b0a7da5ee2ab6a44f23164ed60e288aa1f13cf884e683489a9c0cd93a7a09d03375394c45a8c175ae4a4c0f81684f7da44a435cedf75d0092546cac77e596303397b54b687061c93b7eaa0c30b6ebee15e345f90b8ee2436d1d8e6f2fee70305628cf3713456b3a71cf34700bd3b448e61d54b62a752f670ec3bf366e2af3e052685ebba05bec2d46ecc27a920c80274300a5c3e264eddb03f2a301830d53f05dbad0778267e585b400aec4e888255f14eff7be57898015d9c1f96cd9777ec00ca9f063ff859532476a0153cb988d0a58ad4020889530a17eb4d95a8505a7a0558a4aa2a4f43806e3b240b1a941aff4f6a8e7b71820808a57f961d95183bbe0168b33a598fc189c88db3b3e480a13a0e28a5b3229bb1eeb0afd5bc36a180e907ad63810e117ca3d5a37116fae3f7f363f6ad3bd24e4902a20cf5b1eae56bc004a67d4b4bded47404d3651ad72725ba09c3a5d40af76dd31596eacfa7594c5a011d82a64d1cf8ff32ee90707d60b1757b7b844871c960a8690e0480fb82e6b707e3964cc8ec735b48247eb086ff6854dec271605e8254a478238b277e51b57701cdcfa247b9e7ec54fb6182438c390c69613a3b67d28de8f8f027284a881e2e0455c34d43748f54bd92dac90fbea1ece92a5d4085206cb28832cec07a9d1e9b058bd3b1c3caced8a6c0ee0e5ff6013e8b4aaf70a88dd513757ed3364861f64901c869ba6ebe20ed1672a3325c7f4dd70262e405eab46a779ccda949c166ebd0062f9677be40613dd77ada85da45755cdf1736bf6685a1741996e3363c1df5c205f52830526ce2f74cdcb60ad1e74e8aa7e481fb26974551967b27475209f1fa02cbeec4898c61ddbb4fb2168cb431fc52eab0477a305eb08f424d71f529ac7d06cdbb07f292453d21ac3b99a86c64930f46fbe585b75f516d8c552d3acac53a050d32054176d2a7cdeb924b4aaec0bc8150bd051e649d3052015dbdef48862700195074567873f8854d56b3d88f26e10e97c5cea19f94def4edf1ec339cfad601079cdc3c89d4d935aa74b684e2a2e9a11372f54f227b6bc76658dd5483a753039e7395e6456d1d78a00a93c02b39931ca76ebb41d743abcfea94e429bc197c025dc365a947aba94f44a93f230e8bd96f46ecec7b29576a074c5c4c8acdb90105bd428e81a3403b3440dbc6e21886ee4ba8dd1ac4237bcbd6606cf4c364da8a07b013109ee08f1e7501d51cbc8bb5e3645197a07e46b7e26fbddd52c0982423049a733086efd74a292e45beb02786b8cbcfccd67ef99d36bc996ef4c83c11cd02621491128c4d02a4762cb6492ebfb41a03eda5c9bedc9e80cc2aa2f433bda506fa56a21dc3317ae2c708ea1ea8289f61c1fec5562f7609a5a13bf61919debe0728da566387fb2be6186cf0c65415cdad2f4383781398b1c6ec7bc90a54e9b30796ddc7f3854c9c46b27ddee4aaf2cb1df149c5248fc6e2bdd7fc5dc3bdb54e06896ac6689e598aa7e0aebe0c99432cc792c95646d454138a5287f7425f395a0699f3ccfc7aba8e89ba801fee603c013b4831ca0775911781cd5008c602068a051e95e610aba2ed54ca700df8b56a8e9dc47b0f02082ccf05c66eac0d1319a30350ac23b4f500fdadb51887639874c1a22164a9e11dc216b421add1cb23828803ea23f83589ea6275506ce4ea7770f8439d021e2842942718500dbc1e015f4702bdf989ec3496e3b1510becc13952280b94523eed1bbb44353b6681923479a802b2d4b89260cfb71d3869f918a2129ed83d9fc3b991b8782d1463252f9e84fc058a5227433cca52da4971a6e531e1171075e8446efaf6d706020bd907e6f7530623de338e3cc9b092edaa06b384a8c2407b46b1ef028795f02b31cc3beb293002938901a983102a8faa18d87d38bf1ff29856faf877bd27aec078a8b738249002febe425734200ce09fd2e21a12189c1dc60314bd214758d77063eb76fbb87d02895598a6ec4f7b14eb6b77e05f90cb87128df175f0cef82c4b6f16c5b2fdd203af5669189fc29ea56696ab16bdefb39ffa3f7d13a232b168e6360a7d71914c07374f8beba82e7e5440eb1db32cf5c77e61df870a403ccc6f4b2c02376c176e018ad2f1127a9abf515f48fdd5c9a435c746ef559d4041fa212a697a1bc6f8fb00ed751adaa189a9d7f284f7b952990342916ab4dda5035c50dc363ecb6e5e1d0132cacab396ca39dfd398da1e47f002a8c28c1efd9726bda3e1abe67605adfc069a8311154b91d0478a2ffa70e8750a5bebedf7c133b4c54f7560054a3bee2a06eab0be7794b697bcc4a1b99edf02813ebdb3d69a3bb7a5b99e0adefcab47710000b08d6d41052bda77bc2577bdafaec3b48cc1f4c4e9107347f9834c8c54e2045635c5b8e25a0006845c3f541a0031ed737b4fd5f61616f89ff6daff4c56840767c2812b9b35524714ae378f3be4f87244eb080177e46020f1c0432f58452c070a335e32887f941a9558fd86a1caf4759e54ed372ac163dc1cef400127890103d11fa835fab69fa08f71a18e6b01e57217647b1f4b8cc2162abee90b26f9b5050a0e1eb43c1690ca173a4be26f941fe32a50470ac81cd6fde1f0fa1b03d6d206c4b4caa812faa6103ed90e2455cff061b875c142588c47cddd3f298733c51b04ad20c88f07daa8c968654985071fc20932dc954939a6200f71ee5b99867ce301b5cb1365f01fa62798023897ad5da54bc88924aad6799b663fc4118d45e6fc035564362f53434fd3466c5a15d0c12188900a9f8192701f53b2e370b9ee9dee04755a602dcfc3cdd22d6bc0ed89f36414d6c80e38c0db0ffabe9285a614eb10015c4257ccb5d238c25b989adb1d3e0ab1ffb86e7f619192af4a6e9668c7d2f30178aad87003d2f8733c15c383db406d901b39062a54617aecb6a110196ce4a5055790aee91da1bcecb040c0450a222c90564666e5d15892d457691d52dcd0ef00d70ea63cb99b497e41cf9da330684350653838c7fbfd6d74dd07a20fb1275d071928323854af37e4676cd5f5772a3266a60dc7d96e00aba5b254a7f34f9bf3025c03f31c7e74e1ae24781359d25b638980287fd07e440130137e654a66340405363a168e871b7f0764539ce12f484771d2cb95ba63cbf96e2e2df5c1a7adf50588265444f45a975a6985ad5ecba877b1aea172899d2200ca8638c2e22637e404cb75057332a3ddb0e72674f8a627b3bb647adaa1a52e736803d0fd8fb585d104f443b11e725bffde231431d365b835e59d0d4b790064b647b45707b50c4ef8035db008fd1442be66e612ea4d61008e1f7641c2e0303319814c962429a73991021846977c1bf098c52fdac0e64350c8334d2f8aa8f05296f95e4245e7adb56c00f508f07ec710579f180280c3a4d4e9db510ec3292e012fc68b869a283810f202cd923cdec48c1d091e078bb9ed0c088c44a609ce7d10224858df40f5ad256b0437406ebcbca766d665f8bc10803234f381cfb5d73dcb9010a995a03bdeba9f02781a43a5dde3505bf7131250cbe1efe925943018cb296929c43d6add5dc12901dab9da33eb0c011c2a2290a0e78b34c69ad0924def3350607589050c11340800d938ecf0be429b364c69de3feead9f4b6e087904928a0085c9c29a4c6ddb7d01d047ad4c0a85485ce99807ec8da8b8c6bcf4881f59f5efce8e89e0cba753b505873f430b1794f0915127fdbffb16e166e39200b4435968455456c65d7789f5051ddd13c49bd2d966c1c72cfe27fb5962c703e1d96b3005e2a150918296306d06d53388bf6737ab563c8bf91cf33b1df3c9fa797e2db9bfa1bbf8e62bc1b8d603b12a70b209935432bcc7f10a21a37477bfff1c241f24bcb8be84ac09783eef066337974acd15d5d08f5ed24e9a5dd079385cdf4a2d00e7dd132c115e4e1da300b89e4de8d8cd447f48b4a4770865019d173edc23c0a7bdbfcefac27abc18af02fb49138d5853500e3031d0fc7bb6df7d87d9ce3c1d62dfe3ce54575d0c9ac6047a9048e9f48290109d6d2ab806e095db4b3bf127a4ab5730decbc2f73f2067016859b83ddb75187d323f3a118d5f7a7ac679632e0cfbbe379b11c92f8dc5a2042ffe409578dcaab06bb6511f77221b3ff8d0ba029e7bae65b92cdbe8bece5401f4fc1ef0893a73edac8fa77fcd81af0cb9f2c5419599d9429a14da2125745d062c4df82e3212ca9887a86408e0987e24d59e5454de2a58e46c2a9905d676cc01099ca3e7a33d27d909bb8a004551d8810c7ac325dce187bb6908cfff4c8be6011af46de15445e265b9cb4f2881330275bbe1d9aee9905977eea6f438c77e9c02ed8cc62059690da06c19d7568e939fca03e1b57e0acb52bc185a3baa35178a0727df460f4e4da2b700b99303ec21ffb4e6660dca2339c2e8c36f1ce65601c80088a3c21267d8671f8a1e81af9adf4786155f6567248128a728e58f1eeaacef045b37bc2adc73739bec2d8c98e3885fb73c1888863decc099d511dd9eb0e0300149536da1d581e48676ad016d0dd33d10b633c98579b1b9ec8396c7d063666604671899b8f9741b28e2918d41c5a3a222d6a471f559027d31daac366cabec3f07b3ab0dafd4e5bed235c36586f045ba7e7518daee37a18b6cb462fb5b3beda50794909b8a48183c0876b47fabdcbdb59944af23be01b3893c88c2fa4b65daa605507e7d5773da23f3ffc6288f8a9ce6d445a0edd2bb9053beeac984e6d4aaf7037f9af8b49947745a8fbe47d2a6bb13850e6af51e306aa7ca5e065bdc78ebf007a5c936d6c5d0fe2dfb104626802570c13f34f1f4f03e408515c37e19efc2a9027cf748d763ceadb16326287cdf604228bcd73f4b3d52ffc41c2768766b8e50056992697e271fbad560f65e5914170d42803701388eaf56acf62b366a162f9504dc67b96f804b4591d23561e2d021fe144635835bada6ff7a05e22bf57dd6d8068268a895e0a964f3665bc62279da8e5c65bb5d9b69313d3710756e65c7527500cfab03ec300750d2bedbbc9467d8d50e101cf2e68be79698978885eca093b20737bde74c2584ceb08f3ae20202445343cd20cc30d4efe602c9d631c5bd44d6061d25f89ca790406fb30347f31306609259e569c70274c37a997f68123399b6006b3b279ef14b0162a9fe709b50155fc825f99efa0c1c719e521a82d943b70d01b2e4d993ab6b00493239b0a4a96190d6f0d8eb2af98d271013002497320d980780bc13e88f3ed3921a7d76a0ce494bc7b3873caab054c5ba412235c7eff54005c0f7818225bfe03f5b7e6bde95ae55f4a628b8de0bdf463b756893a6be516b004bfdfdf0ccd6021015809fc750d358ac019656a54b5e698d7807a5c8e6fef504afb548891c84965edb2f7cb5729af3c2f4f3ec09215d8e8ea5ac0e06a6bc4d02b94127c6b50ef65fe3a6fe00c8a184200cb24166ed5a2d544d0400cf9d7db305083006c72b00b1bc0d381e75f06330cce28713bc9b287db53b895e4a3aa8650343bd12a47e11584c51920ae0d2e301b5d081af45e574dd62b26f12abc055c802db8d96fb2e95138a038af1e18d6d491e1c0435b0f38aa0438a9c7ef24f1fa4065db3f7353af20a4c220f942c07112b0d60938706f42798f0118248dde438b70183d1e83aa9ce7abd9171ea7e3670cac198fc2ce3d615a9f12a699b33ebe76e06ccaa36c851adc851effc448a21b4cff926d4c346ab7db0033c71856360e4a307324a60b5d7f8b07229d293f42b6ce3b55f592eb0a1e1a7ab547de98caf906d076e19266945d4c80236f9af419e93b2718bbf489b6f2664cd4a1ce013c9e63105a8ffff99a3db72c46a48d94b7ce8b9917d895cbc8c1e6a1ddccdc886aa9f440154e75c02a4230aaee3b9f02fa3910c1540f775fa0ce1b049d1868cf3fa50b100e949a0bf0b87b9e278bfef409f9cb040a903ef699b27ff4ddd9336a8b2de3d05642ccf9a51b84f69df37aa61b0762cb2c4a057f4d95faf2a85140b3c3eaafd0024acc1d2634dd5b692843259a785847b1c1b6c894b0f8011b86c379ce99b0900cdb76cefafce26ee1dfc9ba70470242f339ed75b5293951b1a35ab6f15f8e704ee1e7bec1a25fb23ca709da1cb9792699051550403476701eac075cd456aa002f627e186a82d8f30f9ad71f8eb2e9c13ada9f0459374cd8bff546674ba93af0561e7c26a1fd4c343ceb01121c2a17991acaf80e7790675c0f2bb6fe142d23e01d30994547d0c4b0f6d0de0d67607683a35177669b50b01abe34b86981b6e770088ca2be51677871ced7f8277ae759dad490640caf6d9fa5f2af102d88994c7035b514eb4eb76aa4ea51f2920d7c09c6151c142a3a5eb537b7260c07d3b8b9c02525312b999b39094d5ad08ee2d960d7e27df6e141a57bea2d8292026d1562806e383404f3092862b1be4625c17b4f2fc9118e7f2d5b68f9a4bc589384c8436006492c048a4402ef206c6c7f003793bc5fe105bc18b0bdcbf8e6c18c6ba01d605934b9299c0660fef107a5c3c8b868aa9fafc5a8dd4b8173f29c9133efadeb302affe235f58ea5f0d56542bc3505bf2a1d3f5051e3d63965099e75b7ea1745903cde5dfaedb23f3b36d4b4b2a7cf092479b8e5bf16be2f9fb89983865f6351702513b15e3dd6cd58b43a7b9d292c931f55e6823ebc783484563fed03b9ab77b03f9c939a887fc75ccf0031f400cb7a4c15e6448401acc1e355b6397e0294c98034dbc8c647acde8e896e699b1ab6006697fdf73956ceea23619cec08fa833ec0609a17a8423c0b06905ff7892ab41f8b46ef3513894297e72746b3c9707ce96000a3dc715cde8ed3337102785116922c273b13ef9434fc0c2081833169ca93f05b2a72cda9e498d3924d40780fa63cab249a8cd9e004d39780b1700df3c587804b58f755a6baa3576d991018ecddb580d23f9be40c1384b6999c0f8932c154e03fbb73052a23d17dfa969d997836271bd925b93b136969ecd73bb1de702811f03f029fe5cc3adb5d9d0b9c1bcded86c8c6cc40f5a2358e78982ba7a7665156f03356173e7d69d3749c893cddc5599e1e19d467b85a7e5cbc9a01b959fbbe0b7056519c471bac126ff18044d2ecded80a954310af2b1fc9eb4b6e27f097b504003d6b7250f8f60fd52b556d5136c90ebbf716c830dd6251650130c0d87fd62fe06882e2905794953c6ce3326bbe972c0f00011fcb7f3c3a187d6bd87b1d1d9f30445f2f19b66a4a60ed2bdd01287cb53a92931d046d14de103eb65d1f0eeb627042411fc1814358a355ecf9ec057613ced624bd3aaf05d751e63eec20cfc8fde02eb836775d8e3e85394e2480291a052a16bce88239f3b2e0751f6e6c274eff30449e317d0d541fa76ae46ca1010766f63281f099039d0b5d9e15754bb00823c0345060e7fea22c308ffbb7a3c597f25bdec09f604264b900c2088c01c672b0602101c89c451d0adc208e7bdd01f8a6182dba53c76ad821b26db666711f078f700d4b18873fdaff5b9ace184e88199a865177ee61643e45e7fbefaccd4c0328201f3ae0bd38237cae443662abec086556e1a2ece4c1a4c1b56126b221319f8df0210627c0cf5146213f843d5aed357d42643d318a8fea5fcef1421321b7722af021db2b8005dcce52cf968cb4707aaffb79b41100894af00cd91a55bddaca09401d4e710c365e452ac5206ad6df724094d22d041fd67959f49ab47232389f6de07b611695211d18b4c938d6670520656197abcfb0b6d961e5e2b4d7d4b422e9400c98a4e877e7dfd1cd5e912f7cbbf750a6fb5a4da3770edccedaa4eccb0f3df00997322ccde10b3b036999f58f1e102b2641086306a09a740feff5db5a3a12b01ef3ebcaa965d6e84874e3a77ceef46bcb1a8d540eb4e846e78cede619da58500705300b31e77ade3b41dc1d9647ebb1844be228bd1eabf4a300ecad1ce7c3e039c751ac82c28a94cf8aa90331882316225a4292fe8d0dc530138d2dabc2a0707ecdf09d76887dfb4154b5540b74e1980af3ac829bd18e4eb43a7a80df5b47d038972c5f352fb9c62c695a17c2ca63adb811f1a64e385caaffb2611a871d3eb0768a6d04e364137867bb8f0d94a057b41634579f7e58f3d403facbb6eb0f1af00ecb22c31f3176c78447e008fabda91f1833cb3e0fb6f064556871baaaa502306f597be53c155b16941c5d7bcddf5a929ac181644e8de72817fb283525f95b3010896b610012d4fb7641ef5f27c3f06978fe68619945a900708f8b57faa8a080133044d2fcc00416ca8872fc1cefc96b77f14aa57da16c22bccdab31a59c36300040422d3b73aed18c36728310b2109cacd3e9ae8beab85b2fc4c737a1cee31067c75b9b6019d715e47e1cd441c8325872218aae7a9ea4ff1b8f4861aba3f2300a389c90a160f9a48d743fab74d0ea09ed962a56b843235f994387213e1daaf03d1723cf34653d6ed7fdbf4a4e36b9dcc23a123bde70226185d56783e86c09800a949722a948e576a99ab6e01509d94afa303b8dd56306d7865f4eecc93bd87059af540e24ecb3b784a1edd42a6b940c195b3e25739dd5dc26bb46b6ac4324d008614208258f4a358f99689a0a3fd5e1fc7f4f194e5c1a9aab6bbc259b461cd06ab1624d2195e0e92fb7e75a2a8b3a39bb4da6ae5682eddef588b0501a6f22e00c14a711b0935e97a1cfeb992c6865ed72967f40adbed3816f316752a39fa0305b84d468e49ed338590db3b22414381aca9c510921ed2041f235e0031da32c701194d4c931925ee50e2dac619d16c13520cadb26c7dacb15bb2f3e4fa21b9d205d937955d8e39b803b6e21fb97b1e5f6d2d8eb6afedff46100b19f577b5376f060073e8fc81b7c8a4b310ac14aa3c877a4d35a34b2379ee178c371dec42d3e902d7c366344873f919d25d5ba3ae8cd1dfb6a4af85b42bb1b6613a870b63b55001e2c66b2d1c8acb8609217d4cccb0b74a6738592322551752f14130c8dcbc6202b23c7c92fda5b8e68079975a9effbdfc6d13ad5d5cd6aea42f6f5e5d13678a0336ee0bc7477c21010e7eb6b49c5da33faf44b13396cbdb2bfa13caf7babf0106f26c2cecf5e75370c8f9ac8ddcc1e74263c3a32691eb4ddf7642fae482badb0369fd0098114e528169db8c2d6041013928918d62d18e273627abc16c59486702b8a7ca9a88891e365b0a35e2b32b4c428098b2cd55e0f39eb3b1d77a90348700672bf2cfdcfb836d5a2a8155e8392cc80e47703a52554a7612d46ab707245f02ecbcbb80970dd803f68b55098e64b94731f1e08844b391fe368f5b06e9b8fd03903644e6151589913b5e920990dc7942ebf7e4ef2c3238fe686fd672f5e8b102f68805e1447fbb13ae51dc125ab4ef1f67333d7ecefc8eac4fab2f0047bff504087bbe47fabe08aeaca28c8d86b60a4e75ed20311917a6d2903c1df51298d600e277212bb8ed2db3817a2de179bf07893ef9a26c734fdee83afb5d48ec1f590759682ce5fd1ca42cba7d276e26844ec6620eb4d9733d14aa6cedf3b74d7ed2027fc9b307a2875d429e1cde8971e366dadf5d4384f069582208171462dd27da01aa4544b62cee97824413dc9f1dab46e953839d74a996da9c51a4d1b0dd2aae06e6f671777182ef250ba9c4c4bd95448964116e0ee6e38b2054925bcaefa50c06bceb57efc9d6c3505cc9af7418cb1ed98d9549b999c75f5b2ef3097948b64501bb71e3874e9d89649388561411efa5d9088df82d098cd69d425327e520c69b03f01c487f4c89abc30b3192ed60845fb2ebfe1a9a29999dfceea07c163dae460487e55ccafd1c430bd2d7056da0a7e618529429fe5684d29a737967956a4b4005f14a48c4cd2b99b01d9197c2fa4fecef2d22b9179131ff6fa6d26e8e2757aa0266e091bf34f396558dbbf09f29b5c5cf4fdb1d6e51c9916940b0cdd2d93a81029f841e7534113d9a196f80944da1fd2c3354b9184587226f8fcf63d51a709205132ea1289032f21c0f7ca7c1b45711fadccf2fec9be528dbdcdb57f568472b062e1411dba0107b77c4d8db261f6d63c929237637d3f29564f18a438033938e04b2906f522378edf47f54ef4ab3b21437665b9d786fa854a0508d99b7c6e101021f37638c48c07039a85d2cee8f17572a289a4e083804035fd6c519eba2bfae07ae0ca705052b62fb956bae87359d5ee556b2b7e92cdc2db7c23828982553130265fbc6148ea0efb48cce900ec29474d6f42d4c8a091a61e6b1ded39d696b4703f6d6a0e78890fe6aea2b0ea61f65254db4bf1b04a5740220bd194043304bd7009047ed3a6b8395ecd17fed1db28d1a9e45e809c9c099c7658d09df06c506c0018bf68edcd88ded1ee2417daab371ea4528e1ed7d20304e4b8bcf3539a99d880119758fa13b3457abaa2f4d933a4717760bbeb41fa926101934f837a15444cb00d7e865de485c3f155d0f81eec87e73b50ef96082c3d6f3052c52010b6c4b8504d9f9837fdb2bd188184ab447430f06fa888ba7de40abdeb25d789e68b0fa6b054e8b6e4685246d4563bacd9e72636fc897a1553137baa398edc40f0dcab992076772507c8c47364b4928e880737ff0a0ab10a736eaed1ce6925b97e571f6f005e2422bf7666626511d04d9e5f5eec7f13535d935ba85a9866ae241d671f4b00184c06bc6e99cd8d375beaa8bdc286db3b19b8fca371aaad8e5715a10db9308055c5dd8bbe7b85e4769967a2b804ccc7b6a3c9c9a84c8cf3fa2ea40863875a0059313fe2a4a7f4f0e4c77498d7969dfdef61ac1d6c60e468f247e8f48c29ca802c3681494b1c4d369ad2da752bddeff60d55ef0b91a6f0be523b4f381b1f7f7041e284a98474c83f34b79c1fd6026ac0ae2cac985c69543e74550ddd49bef1800f51a120f78538e6619d9a06f5a8b0871a3dd121f3c8eda7ee14a5f2bc05d7407d7cad93ab3c25db72373c7246e5acea0c7906e6eeeb0b1d37b5c8e160d1cb105a8b768b31c10714f01e0f50278f92582f95104ed66e406895d47ed00133b74055d24ffbb4ab92b3dbc85f374b33cd73354695c8cb25c3133aab73c363639e200557629b478c097eacc7f5818e17a73903589ce69aa910d929c9adc118a4c54031933ad3eb2e27c6859aa2f0f2745b6f58497eab148343e903ffda06701b78d04d5e1b567291c879cbe096c4cc0aa2c10ec43b253f9f71fe2f5227bd17a512f049ad8e9188cf0b474529be7511787cad8eeeb4c101ccfa5178d373d34d7350f0135abde9d0012a17eb12d36b33a4bee400f228d4145a49ce61a49d20f98503804d7a44bb99b746ba4d68ee84b07c48cfede30da3c3476e540cd08270a714e8e0436570ce4e56f30828771f5d260d0f0c7eaa9cd20215b44f982d05c9bfd34b7045db963698f6561de866eb39529892fd7cdd75ad2a7c5f44f65c571f2a3dc1301119c87a4bf371c08546362a8443c467041052165204342363e215f0df684f702c565bef8ae25b4bc85a7c2a69a0a174fba2ea09f83f6b86d7d7e86999ba02400ac109c82b1212d701d7194ea54156093a8c40ef3da43fbfddfaf32568bd25307594716e774bc075e6ed65c48221633397cd3ff059724772c26315fa4ed8ced059bbc72e1afb3312a23f6168b4480705338758b19c71e6befd62f4251f41d3300778a3fd81c62245c60871d6bbf737d510a3cdecd6760e871f9169e3217dc5e05cfcca7a8c7afbb08cfd083debda27a0483ede38c3dfd85fe9b58e898b80ba205fb9b944c8a55689a6da933cbd17a0fdae4752ca996966fcc303e59a1e23c7003b978714a4c06d8fa6eff6d7321228bb42a3a8bc43d8bb2c5d7e67328d9c83c00000000000000000000000044e1691fa7aff7b5b1744dc4a2a10373aa3899d100000000000000000000000092b6180cf0c602f1a18564a6de11f7ded0234965000000000000000000000000f6194e420d23ec9dcd72166f22069908cb35c145000000000000000000000000f54cf004fd19738924e2143e35a43ec77ce5ef800000000000000000000000005948c90d217e555ce74174faa71d09efcb80f96c0000000000000000000000009e96edd830669e2342009db9d33a488af8b13b530000000000000000000000008076f772a7585ddb41c5af9d0d68e13810915a12000000000000000000000000a6e66e0f97303daa421ff36b596dc85eeaf18be7000000000000000000000000a4d53074453d28eaf1e6363c77446dc62331ff5e000000000000000000000000e97b6adfbce956813da756978b195f7a82bb8a7a000000000000000000000000d3473ca900e8f70b99ef30fbb69ac326dc6d4442000000000000000000000000c8664f2232e60e8d10796bc2b76538e2b49ba0410000000000000000000000007c211cb7f5667c4bd8b567386ca5bf63cf0a3484000000000000000000000000ad6f41cf3f6404e723f20e63feb289ac8510d0bb000000000000000000000000dd62699f7706fd93f4ad21a00dec57636e4c9fb7000000000000000000000000626a8510333e4b7543df9bb824d8e1641c5b6d0e0000000000000000000000007938db4372a68b5a3891173f3dfcd9273e597a5b0000000000000000000000005a2cc1f25e66a4f1a55325c2269afc442dd02d470000000000000000000000000c45f417d876346268390b757245671aa570fc8d0000000000000000000000007d4e832c8f07426c8484bb1d10fbe95b1dd072000000000000000000000000005e65bc99d5649d1f8418b3c69db491ce55a8d35a0000000000000000000000001b4c8290f8b1d3406d749941b3e2506d7e68efab000000000000000000000000ee84885d731d661dee515d8b91dc4be060e39a98000000000000000000000000eff0b61e1a290ad9ba602989ba99502106c44ec70000000000000000000000004dd8d866c965aadc305d4abc3e9bad7715c0d79c00000000000000000000000038cab62e8a6b775088fd249cdf77361286d8949f000000000000000000000000f169724d0dec2bd93f967984538cf910d184cf5f00000000000000000000000031a79bb69d7ce2f4cf72fe98ea437794eccf503600000000000000000000000033d1e802f3e8b066b2606859ff2b4ce9e6cef21f00000000000000000000000029acbf7f7bfa653e7814ad81dbddcc5253eb8cc000000000000000000000000089de6e15705be7ecf6a92febb998f8b63708960d00000000000000000000000023594d43a009efcc3bea635c67ef971be4eb6bb10000000000000000000000007872ea26558e6b2d601da42bd7c190bc095fabb80000000000000000000000001942577a58ce6d3ff7f57bf3873af6bc374b3734000000000000000000000000b28c5899c7f295e9fcbb5e9b836ac746e7aefd6b0000000000000000000000004e39a6e1c42a2d66c4c8db6e362d7511ede2a515000000000000000000000000bdc07370cc1ea0e138bf7b734a128e2e94c67518000000000000000000000000d954da2411011670524e77c7c0d903a294fc96190000000000000000000000008788f81a9b9937804ed0f65c7900e45461a46aef000000000000000000000000e16da7d812bbc0bb1b2640330d755a0f10a423d2000000000000000000000000701e5ccde172fb2dc55e76f3b00171c0687ed09700000000000000000000000038a5406bea830edfafeacd5e5337675d8b524ba8000000000000000000000000769315599b17b92033feb080b989c6e220ca7666000000000000000000000000c26bcbb46d8e5293e0ea7e0f4a8ee10e4744c7360000000000000000000000007238230bffbf5f4584a85cd470c9600f7db41f8800000000000000000000000052fa938fc66a53a1bb5582132abf0e45eba83705000000000000000000000000ebbe83565ade367c37b278789a2da1efcd33ffb5000000000000000000000000da02d009e35b7af3d449bd43c59ead3975d6aed400000000000000000000000060f5e969416161d0b0c8498974df9086c6cc02870000000000000000000000008082d214b09560ef846b0c4ad24d33ace365ab6e000000000000000000000000b1e6aeac364a369106316ac9f57a23725c16b3fe000000000000000000000000b8580835e32101c2d9558e0927acd61bc6619e110000000000000000000000003e24784d2a8ee7f9499c13cf5f62cb1c7892e1c200000000000000000000000037ae29fc11bbde89533516f0f27c46fcf3c83c360000000000000000000000001f2d09104f93f3c0715a644d69f4737f974b444d000000000000000000000000a23727561b6653b14b508b7938917779a5fbf37b0000000000000000000000004332af4ca238895573de85206eb1b07522d85e52000000000000000000000000c0a820b9e164b1402d540aaa478b19013cb741c500000000000000000000000053053ff2ce0550098638cadb27c7c97858d0150c000000000000000000000000de8728058085cad7e0838779cb79330116eb92260000000000000000000000002c04f1b86a28c7f4c87563a4ace404b8f86b7a01000000000000000000000000cb43ad296d54e51b653e02d4585eb0a129f3c4e300000000000000000000000046a75efd73b46be1282fc8009ab848725ff855c6000000000000000000000000cad82b745e34cfe8a6146e3d7ddb714a2d3deeb6000000000000000000000000b41921542bce14f98cca52d295fa0004dc532f8500000000000000000000000054461bfbeb0045ebc9e785ca0bbdb85a02c30634000000000000000000000000a6f0a0d4296b6617507d2b51165182bde2d9d3530000000000000000000000002ccf3eacd57e8a51452afec6017df6ffc8727d280000000000000000000000009e689371aa12d85ad9cdb769698c274f98f167ed0000000000000000000000009a5b6d29b550b40bd0abd0e402ea06866165a046000000000000000000000000a7ab30a4795f3aee3d3986389a73d8c0f1b6c6970000000000000000000000000d74e2baea29540ca95183f3631037aefc465f740000000000000000000000009a3676a9d5efc9510b3a5a8d873397305cd2b8f5000000000000000000000000c5bb356b07f25728e67ecc10bbfd894ec72676e0000000000000000000000000b34ca6bf09b69a4fcaf34d0d830ac9ea626a5f370000000000000000000000003337d27fcde297840f9735d2be7d43cb9da61bb9000000000000000000000000917cab752ed5626667fa740365962b2695d8beab000000000000000000000000c06683385b7df00f26e0a9ff6b3b14a016194de2000000000000000000000000cd0d53b051148794b15f5f0f7cba0d75d8f008c3000000000000000000000000dc4cc5bb76e6ba114d82a132aee725ec28264eab000000000000000000000000f6226eb517c4a1b1110a1e59dc7aec7b58ebbb460000000000000000000000005923c0b07668aaf8d1d3cc31d7dc8165d416e96f000000000000000000000000c7364de4d910ba35180012579e44bd26aa19ccb1000000000000000000000000c384fd2d96883ad9292040d8073b5d0580595f6e000000000000000000000000fa81ce74852d5d40af92eec87c50c46acd7c7efd00000000000000000000000016a2946276a85028d9b8b1604a456dc88c147c0c000000000000000000000000019a1b0cb8681ea7bc282e18cf31169c74d72d1c000000000000000000000000126751d6602034734134cd3015391a15df8d491900000000000000000000000054c915b07e6db1d97124621cdc994dba992d598f00000000000000000000000016ed6a1664a38b397ad8535eb1dbedf3ad97dd54000000000000000000000000431a64c15462ae8da47236fc71e04ec85f327617000000000000000000000000cf2b0e97e81260f242c278a647b2c4e549fe2736000000000000000000000000a6e9260f1ef3a03ed8427067412c1cb7b673f4e5000000000000000000000000b882994144c7a1f3e0bfa1cbd6f6521eb5d08d5100000000000000000000000068023a14c2f58c41e45c57f0a49aebe521c14b3f000000000000000000000000e65931e7cba2970b09822cc67d9d3b37f0e0207e0000000000000000000000003a598dfc75081ec63fefd33ccddbe9c88d16b7910000000000000000000000008d70fb9196f0da4f74f7a54195ac3587f1065d0b000000000000000000000000061775edfcae67f37d4ea2ae63e4073603debae5000000000000000000000000e7b27ed39f95495a1fd6ae37f2ed97d05d3847c30000000000000000000000004b8cdd30112f3cd6e970fd1a6a1407b5d53d21ff00000000000000000000000058f3b166d20bf8c2be0ae1c2ee24490781dec8f30000000000000000000000005fd08ef52c91f0053ef393bf2191a55389efb549000000000000000000000000131767db59b0650b1b829b0377ad1775af5f906d0000000000000000000000006ed6989e05c3d0b17d9723f3fa377a537fecfc08000000000000000000000000bd46a3e5e923962a5df9b9f91da59b1b3705dd5900000000000000000000000061b3bbfe548c56e3283d40754c5183c6a41e4e91000000000000000000000000fc67364ff6a99a5c1f1b123725ce1d3a14bed28b0000000000000000000000004556cebde573724e5e863593b342c637d0e893cb0000000000000000000000002192700be38cb4037f4644523b4aec9043df999b00000000000000000000000029e0c5b78c8f156a8e7075ee8e7d0bb3155565a00000000000000000000000008a344bc1eeba6059f9219af47518cee150005ee6000000000000000000000000c9d4f73e05d421b2da2cb26d6443e8cf91ade7cd0000000000000000000000004322f9b8af0fee9b60fd55b4e6c6ccbed01459a2000000000000000000000000f1843ecf4069c457ca4cbf965d6c7c5646b81865000000000000000000000000e93a76173e1f3b70d53322115af8ae4fdd017e23000000000000000000000000180e82d3767e39e9ca0a0fde32b0bd801c469e3d0000000000000000000000007fdf77c35bca6a586eeb5cd807df69b3fba2d28a0000000000000000000000000d4d7ebe5b1bbb02d96f90d79b5f6f794b092e3d000000000000000000000000d9aa2c0578cf48792d2547915978347541cb88ca00000000000000000000000060ccdbc2b52cddb38a48bfd6b0613cf86b197a8500000000000000000000000095ce5b002b53d8c54f8114c8b05ce328a7cd8b4700000000000000000000000019614a542844cf4993a6b30e50037607b37e6beb000000000000000000000000258be60b86980846dabd50c0338bc9910e6b2d01000000000000000000000000cbfd5da5c42b790e1a8ed19f433131cbaf7213a6000000000000000000000000b62273d5e10af559b1c99e3467912caff417a00c0000000000000000000000003b5b757a23d64e60bb550d286482c2355b8d9d4a000000000000000000000000f9c1a3a9cc55f9454f8aa4d7016aff8278ac05730000000000000000000000000183de751f2f8c9730b56d8d35beee09fe942ff5000000000000000000000000210adbf9b1d1a1a6bf9477ae65bd0fbb52862cee000000000000000000000000fdbafaade8320b02e65af012c476742e75330760000000000000000000000000c0f2ced3608761e01fe3432ef41db10f31a390e8000000000000000000000000bc1a4fec0b1c6b42972fb0f244357bb82f49119b0000000000000000000000002d803955c89380995c9903b406cd1d2cec698344000000000000000000000000b55dc6f674a61772aa478bafeaddd9427fb7189b000000000000000000000000e878597e276acd0ba5934be77f4e59a08d57f5c0000000000000000000000000d606b042be8828a82caac117e1c85a6d1ad6dfc400000000000000000000000023fb75c2cd52acbcb03432f6037860daf182c108000000000000000000000000951e184201c7b56f9431c2d24cfce997d17108da000000000000000000000000e0cefb725dd1a2b952f74b74b0b561a560a302fe00000000000000000000000014122254d1396b7af19c58c34d70c2eb90dfeff0000000000000000000000000ec638eb59eb19810ccd37ef64a35cd8206cba3bb0000000000000000000000001b50ea6be808b9a22b1d21c0912794fb0e5bd71800000000000000000000000061820e8d4e5d58cf36b807dfed2dcac08dd1891500000000000000000000000009988fda39f37683f6e52e80644fddd3016f9bad000000000000000000000000280fdfc5f09550ca0263f2f48414cb274574b3c300000000000000000000000063ecf52cb75633b442a4c1c18e6ca045af6df7f20000000000000000000000002d0f6cf22651d6e3d5f47fd1fe9b9702b29064e90000000000000000000000006b5d041d0c3179c4ff073b9bd7aac4d002457dac00000000000000000000000071fb71ea470b8d0d9508a2011b6af5e3683166a100000000000000000000000078cdeca10d13272c32c1dfc54d79c0f521c6609f000000000000000000000000101b52a2d2cabec5d61cea6769f8539a0d8303d0000000000000000000000000354fa76818ae487242124c673c3ae057b2b617b7000000000000000000000000df5882f2d118b67b2a73a0710f3091990bcaaa4a0000000000000000000000001111b68f05020c40a18d1af84056c364ddd70c3e000000000000000000000000082ec91c64161791ab1f01bc9290e9b9bd070eb4000000000000000000000000c0800542ea1f74c9d852440b316ec3b09f37413d000000000000000000000000abdd1bb0430711bfc40c960cf35fa5e9310dd577000000000000000000000000abd374a312ef097d7ea1066b46aeeee87aa5eaae000000000000000000000000551c69bc65ef017c114c50ca3939c309d799db4400000000000000000000000085e78e1f86f3423515475c4ec12723747dd2fcfb000000000000000000000000fb810e2c18ea496daa6415e2c1a244e7529c58d90000000000000000000000007fe9ec71c5a827b580b0529ce9606009e83698d0000000000000000000000000988bd1c88ef552d05f734f29d2d3d77521fa99e1000000000000000000000000d8d846de717d07758afd91713eca5492a975f9fd00000000000000000000000095a967a596d5de4cf166851c494e2c2c372e80bf000000000000000000000000c709b2af4ae607c110dc9845bbc1ccfc576f552e0000000000000000000000000ad477ec220fb0df04ad1aeef26b8c97b150c56700000000000000000000000078a14ce90f58ff8018d20463ddf3d5b2324307ed000000000000000000000000b2fcba2ba866e6256dea65801ec8392744b7226d00000000000000000000000080613211aaa8c4d92c3c7fe4ea7d8eb858bcf4e2000000000000000000000000b92f7daf4425454134a79af6db817e7a3dd504910000000000000000000000006d0315319ce9fb2ce41be692d5d01d6da72e3cab000000000000000000000000e56917f372fbde09a769a208c3f8785355480e9a000000000000000000000000d667469a40804bb376bf7a2fb88c627ada8733db000000000000000000000000dcc29417fe89927585dce68fe2e359c437305155000000000000000000000000691facc4a212f74e29cf38bcb7eea384ea3a9595000000000000000000000000dbebfeccf6e0224893d50695d639391f46e556af0000000000000000000000004884f7b319f84b5517725845fdbb388eaec17f4f0000000000000000000000006b6fccb259e7aa55e44e0eab17c6f77cb8d2103a000000000000000000000000503a2630ed81f05600c4e816ed08186052d1df860000000000000000000000003e58b6ece3d53368780a67e8f6645681aa43d4da000000000000000000000000246bf7267d29c77f75adcddf79bf415f78f41612000000000000000000000000a6ccb8ca87b0a12b8743a3814ef3d3f4fcf69fec0000000000000000000000002ea4c5650fa31b3abd28b67de783923c6ddc26510000000000000000000000002d7eaa2a99859dd7302115496bdf6e8ce910ea1f000000000000000000000000fab7a8a579ee69d23b8e23647f2a4070fdb981c8000000000000000000000000cd280f4656192003fc631d96cb91e6c4075081aa0000000000000000000000008197292b44faab8392d4ed18a7341ebff9a70a260000000000000000000000007a73d06336d20b1aec4bff35c8bf84031cb9aca8000000000000000000000000572177763ebb763db48b04a1a7bca04e405923cf0000000000000000000000005b5eeb6d092668480e7aa71d72aee21774d2e628000000000000000000000000377a607b181500450dcd4e59c2263b2d67e7e7c000000000000000000000000005d07685c2f20de1640845c6562fc097145e9e11000000000000000000000000bba4065c363e7de33d8827f3da02babcef77059c0000000000000000000000002c72dbf8a4ed7478101a55967ec749b62d6483f30000000000000000000000001241f2e776034f402a44a55c5f657a7b7f5eec9200000000000000000000000031831a990c78592c8ad82ca0d13e9d540f6108810000000000000000000000001b66ef842cf6d6fb3c69d97944b2672da98de29a0000000000000000000000000489c486aed6a8b831d535d901b95620ef52c490000000000000000000000000ed795c7d92404241ce67f6a3e866616a51c9fe5600000000000000000000000091afe637463d587e5206c28f3ab8ceb0c4d7090a05dc74fa6b4a694d1a01fa239b89a39386e8e828208975ce78af085027ef21320705b28517a356bcd431adb58fb2ca0b0795602a27ee0abd8ec7b3d445fd42e80339bfa82955e0b555b95672daa38bf5ddcf122af2b626441a5afbcb50de5ec104986153ea7d1377837a3a5f8eebaecec17f5346d5088bcae19e9730c4e08bcc0648a9adb38e0ba16bd4c69bf6992a81d08eaa248268f3ac7a5bd8bb8c1df7be02a58367b2f9eec07be0485f4dcc661dab36c94c9fb5b597e6d1948bd254a21601a7caa1936e0cd387035a94274e9bd8bd2229291f514e7a4a34931e844cf49a023c9b88268ce645704129be637e045c70066eeaa02dcbb383e41cca77ff55c9009fe4039780472f51cb1878cee47b3abc6618df16b5942a225f9032c7381259036c95e7d2bd5876d11c955459e0c7938ed444766e3b7790ed87308219af100e0423a1fb47179586002dbfdbfb27e7c9dd3d9a2e737ca7edd707f456b7342f21057e8ff85ebafc212c13bd4f2647c1f7699a1373377465cc32c5837719b308e904b994d89ea6b8fdc2a4831763ba88ca5e56c562b41fac05dd8e8f369a3bb01e0374186f966f8e5587837f7ab56eed087f438ae7b3fc027e7294b349bafd859002886db2d80082d7c7ab6edc8d16fbab0284aad8c0597d49261e2052461d9dbf07adb00e525bc126450d98ad7ea748d61d5ae4452df0d7f308b312408d314aaf0445fe80e9f4ce09c8f7573627ee9f0807e69aff41cd456b685e697bc61aba87044ba6d61ad37e0bfa63521784e13cf4492ceabdf3df7eef7f0ca120d9019d4c074f8150410f4296698d4803a48e46b15d1c5adbc16970d6849c11d03e579c7e04ef23407debd51acfd5018daca91ef14e5b6ec94ca6208cbfd947db17822308042b443b6488907995f7e344c2e14bdba7351c852b0d4e6ce23ae0077a8df9ae0790175419d467aed008edda6d55c2b4ccc37321132d46e329f248ebddcd6cf60043478891d71acce2f4e67a47c12316c75533490af62b4c9a7ba8418aa5401202febaef7ead4776a6daf268166bd637ee7300026ba5568e3897d6d86d21532402867231744bd544056355124aefa4ba1cec892a22260a61d0d41dfcd86e894700347ff320d9e824453fec060b94e6ce7b017cac7befe9f00229f1a1883e0e7a003f8d5f5c2d5f2ac5b53191de1e390aba307511d6dda4d7a3ce82859ad20f12068f85201e06ba991b0ad5ad77196cf3cc06aeb13293b17b5f9187ce2c9051e904806c2d580eaa1360d88735573fda6dfd8969184e36ebb0433471cdc67f4e1900627d1672e636c9057b07173ca0b35b7100d6b9145dc89de4ef7885f01ab11701b7bb46ccaaedb62207cefaa707b29dfc4e17dabd5a7b353d8ba6b1a342e6570624c71a82a325011ae5ee3cdf8f97a68b0f9260ded5e7e9fa9e7dade918e29903131b8400e7473c2d66b17347bcbe9925e41e967580a3dfb49825f62b778b0d030dc6810b3801164fae54438129d2fe784780a328a20f952aa7ddc3fe20a4cb06131397dc25bad0ee0e705e5e564567184755943a4ac0493e91a674c21f0861067ba8f45e966d2b33ca8b24b73bf349a794041ca3420cf2da9dc2f8bcac5ae60723446b2149e973c580b20301caee568dd71ee132939031a42ae3a10728db560656cc7ec836ae6f3de94b8c3038a5d0a5a11fa8c60e11c0bfd6ea07c0769621054657e80b8c366e9e562d00862627b097c9655a5e35dc64df0ba779a19d4264000327f8b313220ac722704198645179554cb724adf70397bde868029c6938ee06ac93b5ab058e317b865c980f384bb83e53a211510505bbd2ecac5e16e8355d02ca1a56175397abc22ed7d7eeaba7817adb0d00f314af4ba5528c2bf47d732700a541ec1a11f9285358d7c3f2d40524f4b65ab87bf9a9e68158dabcb110bb8b0171edebfc2e03c0ee111eafd3c9345bbf1e8054cab44e5f375df1eae0f3b1b902277f735a6c8e00cad988fb7322ca3aafb6d1432dcc256f242f610ae37e11d90719da93f0d89f2b81645e19acab68866501633c574b2bf1725eae5288ed2aee05e312be557badd7425fc5d3ecda5877352ed9931aa21030e24a828750ba17930379ced4bdcd17914ac8de8a63ee9d742bb20b54e038b9f3e128cfd01e236ee30496160c9b0946892103792d6b7d5382f733c0458149df24135e59a587b15d2003f4323acba417a4499b72cb45efcf78c753ecb00e84670de2d0a81a102e9e4c04c7fbc14e9d6e29b1f6f462a0afd33e9c5e7b6c204b6cd66485c326cde4d28a0633286a35f8c261ee77b535c76c255a0c549b97256bd1005b0f38e63eb50394022f035e11a8abf1daa5e63164372e7862b1f82e94e40a4cb3b7fc0b2b6b920e061931095f14801493944df481e1e0cf9749755659a0c726453c9bc0dd4fce0c0376762c539b5626a36f59f07e24d08c4dc038dfb2393c74559034f5c924cdd70556cce1467c81adc7bdfe35e389eb3ec8cfe8aa210b49041119c7fc464763bf03d159fa1325d5ec5a57214505c40ab52feaa869703dae6ab9533dfee85c6420016c3781eebd11670e4e07ff0b889dd7a3ddc3c5b780b563cf92f06c0b70dcb603f1907b91dc08f6fa50d004159e4795759980f4ce031b463e6823949ee9389705447e3d601dd1f3706e3b0e920e16d5152e32f9e07cf08a421a2a073697a786049c78eb902ebc8efc6e0e594ca31a2b8b7f91be3ef83bbb79342e53a8d2abc3019e0b49a8ab5ac1a169cefff88c96bdd170e7aa37ab13aa14a4accc453378f50292965d29faa3d9622b76f6e5404af121782a8c119780b264d8533b76bb83f7065283b9d4719d103494f79d1c93c81b676d522eedb4477f45752b54f005364f07bb1b3490ea0b7709cc759f5f5fb0da4819fa50c95db705db3f55fa1333d575027178faa9c45e450700e4fd56600062333e540dace4e7608c91d2bf2ddd5ac400fea91f794847dc192475c0974d3d126d16f795e67702ba9ddb8df9fb9ba61605161bf1128fd66b4921135ffafaa32dedf601225f73141bcef958f188ba3c6a03e39774f9e4e7bd53094ba9494c30f351e24eeca0b17b6afbd4d70fa59b8852070c40b51e678062b0f128ff91aa0012d83db61814e6f66605acd481d2b8cf6e07e3387cda3253a71019b9661c7db1c8590e6bcb60275264654f6877a02a03b807de27618b9f3c4e055b7878f531343daefa5e1dd67ae0b65d845cfa7cc1cfda0682363823ad932e3dc13c8ec14019fba9e7b042104e3ccfcad02f55aabdc1160228d20f3c395ad731777b791964ada104721ba98f5922e5181565aafa0897d9015c0f734ab8f3048f6bf9ec0383468a0ed691627a7b583fbb37dab6b7aaa1680006f21ab2315cb8821f569752779544c9d8e4e7dd0cf354e849171292eb7aea074da303524a2f1c847583df64e4a80befb7aa7862662554b50c601440c1fc16067c453bbf9150a0aee362bd7a32f7860a5713458e234791d7302893545789c505dda28a005ea6f5756a3d332c530d0d7472a4cf0fc1e17b628c4eb5248426e80066b8f01c4b6520733578c0f4f0421911daa58b81b7efe6bf1642318bc3355407ad2ec34092f9759552f5ab0f80bf07f731a7a91a7c1b25f5cc40e0e93485c003aea45e506a10091f9a3dd54d6968a3ecce45615df42a1fe74509028b1063dd03cc3fe64eac164f2d1b3829ad48fb66ffc428afe8009d999b156322227850f801720e3f3dda6e52ab4cf9078bbb6d746ef4c9fcf38d6fa9cc0d4ed770b89dc7047d239f68884c20b15d1224fafd557c1322aefa157ef7c9eaeffb5dfc9ba0d906d77cf5254f1a464872cabdef8accc15a9f718a182dba5391d203f36a15c54a068c27d70c8b64ddc5a42ba4ce9075d89ca1096a913189ed2d286a6892bee71b031ed7aec2f13606dc281d11484a7b011c06943f449aeff5efa8d4416247e4cd0462f890616ada33e8eac3aa2c1c24595d19209f4adc4a54cdfa69d889b4036101ad3c4d19ad049aa55ed56fb1a7d3a16805da1902c774271713e422161bdd61039cb9f1830749fc47b39f8862a2b0ff65b4dcca0dd0911d7f32de0b5aba1d79035d336102c684d6a0bda90f9ae9d7843809ed74a437fb4b56f3f96f1fe8febd031d159772dcff595ba04a75db7f5706bf4fe31c97f34c5f03a942cc69ec80d406365f606fa6d925458263702a3f17b1e214fa4fba79034683cd4bd4c1755d7d0291662205a37a41d2a9f7e15a5f6b0c0b961624e3ba7a8ec85d3578846e77ff060e1741c700de7a6b12f64c9fecd305cb573cd863942b80357554e0201c6544070e5f64203903b0be63346d9839e488107381b405f7ad4e604a5c82081e5604006704a93878de3b6b02566b701c80581a7421db3f307c07cdc39e9d10ebdb5605b0c8ff7b74bd36c72fe7c7a387604c37a66e73697c063349ea5fda9fef9101039a810ac465868b6bb059bdd3faaa024a3d764596e9bf90bf601c1891695993031569c151afe3a032d92ad410b9e7a6624b7d8215ce114545e6f52372a875d00079449ad1da39bef6cb2bb50c77efef64102d1c74d373958c9952103cbb35c90691bbbe23be56033f5e48eae009009778053b8649e4d5cc40f051b1e52107c70762a8ce5cb54fc4e1fc780c510136805028baaea40de4f720fa22bfa86b171202aaae3dc9d0b951e101de3068a4d70015eaf87a0887bac3fc04c7a9833eb00b01557a31e858874df4b3e3ae58a9ad0757988c328339a9d7b9124168f70938e706f3771a663abc50fd7ca77a055258e9b058c054a3a0bc4835319bc56e123cad06211b687f9e9ea02d2bab1f26036684e8780fcaeb1ac26352eef4ba99098b7a03b9203b2fbd3b12096618d08ff0421095880da476a6ef694de20a1e97d69cf800bcc4b0753022cf8d4838ac0295b10a60e44790c873724c722acf4193e07c1b01cb3efa82ff595aca8c849d7ec5c4c689a06485450d933e868f448b8e6065e30621910405d9c0256e925311c9c98506713fefeef4f3eb7a660ebc8d50d7ad4101135017eb02e094dfe210baafa89e81ec2b4b773cc8e85fbcec3928f13e534204c7b179f2c9c823b0c6b5a81ac7ca2fab571a4a502a32103f897201ef32256207e27c07c0f48fe91a2684b01e943113cda4622a7e8d96e966b79cba90add07106dd32d5d763dfe87c384b0b133fa1d11efacf2aa22bfb78841f0aa67eb0d910031f32b8ff670f4ff88c1a0da7b265c0b894b601f1e3fc87b0062142a201e83605a3a879d46f06f8c194a9f592ad0db2e098b30730d921b019ebedc2442b08dd0367b908635cd1a2c9e399f4be9843a7c63ea7827565c99ac8c72862dba6926400e18650fcd192b6196c9d49db2d46576a4c9a83f6fa025eddf8bcd5746345c0042707fa081f35d9417166fc14634d8da47da397872278db0a0b0e668eecde57004a5c9a3e6083ecffc1025425685a259de8f4e612fd98722173ab5454a4d195035f3eab0825b4408086ace3931614a311125927615b7840d8ce575c401515b803080dd91f70a2afca9fa21ca528ef1ffd22f21e7d4ef99e0112b074b0a0abff06dc98aa9857a6396b3c35d728764cde7b689bad9234b4ccf41cfe1a3dc9f971056b5b092b8397b78ac08772041860a61a72ea81039eb617f0966f8b72bbb1c2028ea5eb41e0e97ae49bd7067d7f11d6cf2c04cb98e6fa808c3a141b40eedf3206d6fe0059bca3a6c94cd0d46f932e286f8c56075cc0871b26d475aeba92a21007b9b039c169b46c1acb6a80de80cd2fa465dd81f3feeed80846f18bce6a86c7001fa0613a63ca8c541002361e27154ec8ce46bccae44b916c01507420bd458104f574d80f97b132940b077bca7f2e0f651f4e51f893835f388146c38db955dc06570f7757e57743df8154ca246e1bc69e29611d8d02c5f2922afe6d48432ebd026e332a7beb784e30b3d3a489373ceb08f9f8484afd6881734c4597327f4a4d062bf4d42450b5878acce7a9a5629ad02422749b291912b9a413285c7cc8629407024daf2fac286674801495ec0501b3dff50846ae47dcf43fea9fc800cb63f8069995f375a4fd0d46ec909d4c59866801d852a498b403d7a1ff3d8d78110440048cd25fb5dbf20734237e107aaa6529b9ff9189176d73083378cf381ed6a668037dd3150ad0c3093413d51386ddc118f9c8791738093f01c260774b5f6986aa0481be4159f21e8e747c36c71450c3502e6da40e24312d574bdd1a23ab2c06e603358e3c35255285d6245b7feb163df49881a76541f3f6e59f1a2671002e794c048d4deaabbb38e57e2067237d2807674fff66e133b5d477554f8d5226db4c9f07fb83f17078ef15d67246b3663226c42948e0dd44b0c9dcec00b28b546006a9006092c75a8e0a7ec86a00cd468abbde440293df227a4a487ee1e5fbf71152140227792c961563ade8fab6e4e670c6da075e897c71324e4f9955f0679ab0b70000fa96f454e850810c2164dac04f6e57d91b77c43924d3f042ceb98d372e7e8705bfcb8b8f6dd3e1db072043dc0985c56da06c0e847fdc66adca99eab01a91740353f3f841d3beca516db05b90a711ec8a4da9bf0547ccd4daf7934227b093e006ddf05d008a0db73d126d051c376a79b5b494e48ab7de8dff523420e435c5970306b017d218bfc128dec8afa6770e7b90c8623f4cc27678734ba9960c231c17075e47d2584302a2f53d83e9e6474c40ed9f791f45aee81a39a3d71f5a6df9c802e2bc5ba290fd2bd253ca03a649e771346d0112c4a7d4bbf06fdacfbfbae89a060ea5399af7bc2af120512eb25baba01836f2e18ca662e7cd842bfdd28fd36b0511835ef3997dad049f08d4ac44e437d70cbe23058d77aa9072c80019c98e0603a697be8ab7e773a2b6a92d601941984b397d958eab9a30066724e19f98e25e07c526ea722ed255153c16ce95e0cb970c779e34b08e61ee1ba56cb6e8472121021de2c1e68e573fa5508e4b416d61e776eac890c38f3631b6f4b082056771f801be37f60b764b7b5af54a5eaae018e5a15d1df2aa9ad7af385429e69c91956906740f11fa360c26738e63ff4c49459e25b1f7f73dae9b33f2e02255d7658752049568c83e4685f567dc3d745c35c1941b5b06a96b6482fb0d34b395d3d5d25206dca662688f865d612ebe5976154f77720835bec6f3b71b57a0921fd06979c60016598b2ed8d44f758556bc6df78191c1c6a675dd37bc057c7fa2c5e2ac3d3001e45fc9dcb9ec8d6d16ea1d46ce0dc90c91c1a19e13095faf5954eab1ee685e041ec37e5e59d20c9dc1fa1e1720910a39b7410fb814d2271ee3a48b57dc160705492937e5292be625d51cb1e7b7d98caac37eddc2c235f7e06543e4874b65aa06558a0ef2aefc1960a36be29c6540021b61279665dcfc8c59c3b8743c6f4a4e0405e5c6d96e1d3afb16e49ffdb406f0b34c8aa059f292beebeeb49b5bc6856b0312791e76829cd203b6ec4e863a7659b7150126a62ad3e54da1fee4e63faa1507a3981a01dfaf8a2e18500b0414f3864a317b994d3d32ed1a10ef588cfcc009001c1fa5e002787d99a7de8c25bb1bd6269d4b3ca40144c47e9fb7309414725b020396754e6b7872c3bc2cfadf5a94e23d7b4c30870612f156e051ae8e0b02de002e3b7648a32d96c3c811651586625eb33bcdf9f35627b9f799d357bff013410136ce65d978d9bf10f2bea57b7de8f0d0dc1f19d9801eccfbf2cc486f2f53fd03cac1c8b1b71ca4ae941ebc3eb8a721b6c869d7198f4e3c415ab647d9053bd90000000000000000000000007f858d73b3d2d9ef949f826ff0997d3d7462eaf3000000000000000000000000d5ced5ce3709c2a7bd189f98ba23eec43414419600000000000000000000000007e46ac04d06b2f5e68a4b32f4f85972a55e6247000000000000000000000000581712a94399a90c70e47fa60fb58d74d2c2620b00000000000000000000000002285f385db4fa1f61731e69e0b1c087a7347064000000000000000000000000aefabb055a668d8f85623c41ffcb61312267cf0b00000000000000000000000079da58010da5463a81969fe37fe796248256a26600000000000000000000000042d431ee351594acbb1b74ca5909b5944b65a1e4000000000000000000000000ee48c407cffe51fb202c1bf00ffb196570050ea90000000000000000000000009d34217fe6936ee881cf1be9de112c8b9c8966e2000000000000000000000000d1275a0ba14d83f8662636eeab66f790a216482b000000000000000000000000fafc4dc0254c21b9b84f83864acce69e2039bbc0000000000000000000000000d975aa2324814b9cb0b347a4b528accf6a4ed925000000000000000000000000866b07fe31dd8455d3cb762b03429b7c631696e3000000000000000000000000e33be0a73350f050a8486408e23b2ec325c079090000000000000000000000002ae7d6f56e6e3fc26ae93086776742252a30ea270000000000000000000000006bf3b16de96009de49294f3e4d8797e8362e7b31000000000000000000000000b37a9fd3959d85ef0fdec3a96165721c5b27760300000000000000000000000069a155d8feb4e7276be74220f4bc9e87173885300000000000000000000000003edb6528ebf3b49ba1a59289713aa4e33302a2b0000000000000000000000000bd24a9a542078ec7607d380060ea261bc80560e90000000000000000000000004c97f8d9e3a5d2990e75b22c0b6774b36759d9790000000000000000000000002c46547e6a2a60660b77b9d3e6e451df9d736dc3000000000000000000000000eb2225876b52aa7dc610e92c7673d8cd6aea138b0000000000000000000000006438afa42c58eb29e9caad72cb363dfc6f753ed8000000000000000000000000019e63c4603960d23506c3e4fbe9a274beaf1133000000000000000000000000d899163f8a710fa24603bc0b840d5092358cd6110000000000000000000000005f7d8023c14ce5ae19ebd3a7475ae2b63851cbc800000000000000000000000025470c355ee809eb3064acdcfcd10be5d3498e770000000000000000000000009db9bac03080fba3c4b3a7c480a28d467aa458cd0000000000000000000000000a062a3316e22e9879bcbdcacd5956099ad307c2000000000000000000000000aaa473c389ea3e0d6d51ea5c3179c17ce54b91d40000000000000000000000003d93d1589dd1869c16eec43340043697676f13f2000000000000000000000000db96a36414cd51dfaad04cda3af82ed41a3485800000000000000000000000002969deb406aec79c12fde1b742826944e8a4f9bc00000000000000000000000043c438909aad7104890f95c74ea54615bb7d554b0000000000000000000000001cb480308ae5a191b52567468c34adacf25ff8df00000000000000000000000037e9b5136b093fed32a0205cb0830097202f2319000000000000000000000000d16811071409043f52b96e8db2763d668d2695020000000000000000000000008d4929289c6a1d2a14ff02c21b043c1346b4f0df000000000000000000000000d4d9f159ca79a6dc8ba5bc2e782dbf709f364842000000000000000000000000db2451f84c817144d8243a5102a37ea9bf0981e5000000000000000000000000b712e9df6fb9f15e163f613c27cb7f0219953c44000000000000000000000000916f7f53fd5a6ab6df5f90612ca84b5ebe22348a000000000000000000000000a4a76500e9d6c575a5f8bf6f02e6be6d5ecbd82a0000000000000000000000002ba79df41d96408c5f484c4393cd66b1540dd05700000000000000000000000067a30c1736d05d8bc258621311280aee772b18320000000000000000000000000b176a7a0d9c6cf9cab07429715c719d791f0ca00000000000000000000000005e49d664cf5082468ec37a57ab99040a24cfe425000000000000000000000000a988062a03fbee6222b7880ed2bb3b62a922198d000000000000000000000000f6a1308ae46bfc160df296667275f2fdb0ea0e58000000000000000000000000008aab0dae255dc8bfc3ce10573bec759a40044200000000000000000000000029c427875974a8adb946330919a77459b95e34900000000000000000000000005941736b17884675a4a158a5bdac6e31f1bcaed7000000000000000000000000bb86c71bf5899c7e2350091409a1209babc6e9bd000000000000000000000000c54f54bec11587c19e2c8bcac0b709a74457cdb9000000000000000000000000235b9cfe436680bd4a0cfdb14152ba20c5906320000000000000000000000000b8f6b32ed20ffea8c6c49c2f383dd9463c2e4f1c000000000000000000000000daaccdc4ae7ec94e3dd73e1f06505397aff8fb780000000000000000000000003823831c5158aab9125d816afbee170e9b27ac2f000000000000000000000000c742690293face5c12bcf403937c2cf21827e39b00000000000000000000000036f21c0d26343e0d91cb3141f94cf7fb38bd5df40000000000000000000000004f7bbcc014a1b0ebc8147bb783bfabc604d4fbf2000000000000000000000000a8bcb303a9632f0e9709342eff15b82f004d6d7f00000000000000000000000047ebc3fdcb2f758993ce43e168a65a10deafce750000000000000000000000003863475a03f563fed2ce3a20fa30e6530298ce83000000000000000000000000ce9579ef01eaf415ea28651db363ba82b7cb5cf80000000000000000000000005533c90e28d00bcc222e09a6427550e720f980210000000000000000000000008e6dc9332f26e08686079aa0c452e1c816b813fc0000000000000000000000008f140a073641d6424bd01bda459d52f1565067c600000000000000000000000026a191c66bf5d7ffc312b6d1bebd1cd7881d16960000000000000000000000005288d55f48bea6c9c7b41c2898e0fdbe59bd865d000000000000000000000000dcab31f985b05493738832aed70e8c86eee528ff000000000000000000000000ef22461503bb3687cdc310cc68868f3e39a7e1c6000000000000000000000000485a678c2a1aa3db00368abecd69f9f1a60fed2f00000000000000000000000046c86d01a8580989a8e8abe5f7a791399d2d124d000000000000000000000000548e9a0793e5c4824e2f7bf346131cf5642019e9000000000000000000000000b4e9b708c26b6ffbbfd439670f2ddeb356aadb19000000000000000000000000c8774551fb9a4b3cf26f992fa8b6f89b6078daec00000000000000000000000025395db4cddf4601f234d730014fbb1b5d4f3129000000000000000000000000cc13ef3d11ef7ef7df1560a08a064878867014880000000000000000000000002c051dbef6eca13dfdaf0b489464497b38868d990000000000000000000000008238a0f72514cac426f6e38d35cf8fba9d26de1d00000000000000000000000022cef5fea010c0383189386b864a9d0d7c01f674000000000000000000000000b2fb6e650730f602da9b0824e1838ea1055f7744000000000000000000000000a5e917fbfd7008cc0c608d7d74be1831edf9dc67000000000000000000000000e14c25f3cf03dbaeb1dbe450c7b7e5b14f79c85e00000000000000000000000022e7e3b0311bca57fe788605f0df74510661652c000000000000000000000000e4638f042963705543494e857e79d0a3e5e43bee00000000000000000000000040bd11b57e7eda7667d2d4f0d7e72bc5c6c6f7b100000000000000000000000070bbc62f094f5eafaee026acae9f21ab3983cfba0000000000000000000000000731783b998c18f7ac927b4405a5cf1936cd21780000000000000000000000007b78416f1d145949962bb680686c7d27ae75aa4d000000000000000000000000b22f869a9f041731b1548ea09616e981dc43a1be000000000000000000000000676cc4043b04e2c2c9e67674ae0b33eea4a9e332000000000000000000000000fb7f59d077b1840142773bd094dd49c69c45d3fe000000000000000000000000ff6295b512a0fbc74e24fd214e0433e6aecee4400000000000000000000000003475ef8fdefcc44e7a4bb17a7abd1ac3d2d5449200000000000000000000000009cc0a1a8a34594d5d0f9cd02e90b17d57b7b1c00000000000000000000000005a9461d0bdcdc9f35b15cd8720542ea7d6a105d70000000000000000000000002adecfbea9f6b96d54d60e92a4127c11990100fc0000000000000000000000004f7f8354c102c8074acd401e7d7159fd33354459000000000000000000000000fe17707d00eb75a734924f2c1187d356de4e21e1000000000000000000000000ce9e94af0182bcfa967dc60be651626f20d647d3000000000000000000000000fd756393d93fb261e48b4395060d2a39253aa48d000000000000000000000000707890a277eff0ce26b0bc4722f18075033e351f0000000000000000000000008a706a96c8fc606a76847cf88106b74aac3ea96b000000000000000000000000b103c09f1d6fa4edfe48e25f8ec266ca1d9186d9000000000000000000000000f37517d00626b10cb39130bae80440a640513d13000000000000000000000000c080caf54b9f745963771f21f1bdb04ac5cbbb2a000000000000000000000000f40078f09e491e5c27e3feebbbf8ba94611168b30000000000000000000000007465a3c5be6d3a641f6ffb58a0d36a9143663d48000000000000000000000000737be90c84e24c98392ce4eee7c8bdb4f585db7100000000000000000000000054b23615e3945e0b8a59838e7b0c484374598956000000000000000000000000363fbade11b931121d609f979907f0b9701284ed0000000000000000000000007cdc28a357b86c8d7fac21aeb2c8056e276f7010000000000000000000000000c8805719fe1a29cabe718058b9639d4693e75ddf0000000000000000000000003b1fc604c174f72c0730a5036c052040e26ca95600000000000000000000000065c2f94c735012febd9dbbf486181f91fffaf2fd000000000000000000000000640990a4ba6057e3f660c908ffa796b8f58988840000000000000000000000000d03a76513b86d72b1d2f6c2353dc8d12e329c500000000000000000000000001bf493108f698073b2ba314c68ec516692cebbf20000000000000000000000003593c2744d49a0a34aa44006a60367debcca57f90000000000000000000000004258a82ec1744ba69d44d84546e7d6ca1468afa700000000000000000000000031ad99ed4dd27f690e522a4a03ec10cae027fba1000000000000000000000000a5c2dcaf4544829722096674e7f9437a3649af79000000000000000000000000a47bcae37aa66066fa76a7a69c108a9f54207039000000000000000000000000adfc9711d1645fc560ffac13babed17fbbdfbf7f000000000000000000000000a20196902d22803729332a39ca86de16f917b626000000000000000000000000c07d6d43f90993d6214e41f1b71d2ee5a16c260900000000000000000000000036e6ded5e46848a19f867b8ac1857468733124920000000000000000000000006a976d700d8c6bd00b96f9522cdd59c3c1f83871000000000000000000000000d7310099b2b5fb49c84d15b0bd178b6a5e44f9c800000000000000000000000063ba24c4534e360c68f0d2d0cb0cd9ba47eb6ea00000000000000000000000001b539dd9dce26d23f1e3584b039ce99d8b6d4c660000000000000000000000008e254c462732ace5188e052f57e725e205c38dee0000000000000000000000003cd4af90f16627cfbf56493fa87e513007af34c500000000000000000000000095a992ae5cae5e7f41c481c396dd3321957869f70000000000000000000000007266253a9a95609a6b147c92fba17c383e2de0d30000000000000000000000007c4eafd384893afbd6e0645c37631bbafea804dd00000000000000000000000080f7c8282acd2719998d182dc68690c556a73c36000000000000000000000000f7855e300698f4e9d9c4c5370466a1f50acdfdb700000000000000000000000039a20e9861528f22243784b01beb217482c34e54000000000000000000000000ba9964d3e59526c8613720e3ea4c1a967efa18e30000000000000000000000005af1bade7b65b6bf15d01700323affa2a085a44800000000000000000000000080540037722e4c23a4558fbc33981cb921ed2a2d000000000000000000000000b9d10948a40af6e8cee6da15a0f97fafa8c3b22f000000000000000000000000359664a3307f9d85eb31665c4c7fa7ac259f00cf000000000000000000000000ce3c1cf5a29432ed64198d4c919a76c3dc3f086a000000000000000000000000da2c4a948570241d8c23b47ec318c811502c918f000000000000000000000000a8d09b759ae97d6635f625dc4ba490961e94ea25063763d587baffd3ed8bdaaa1f342729c79a5800516309246586f29320ab5c5702f11ddc991402f91ce04f15c41dc2b1cd981177350b2e5354f02d49fe2f057903a8b2ee9e5cb2bd1081554382d9f1a428e757ba3e1aa6e8dac4a746da216172045a0d0ae54bb58d9ff5fb0246e4536a8d68d9055bd634f71391ebb5959846910124c882427662e3602cc68a65bbe5368e3e0a3822e3d98f01648c8bfaba010004aaaa1ecdd624c35c0d4868fac96fa49b4aebc8f1fafb2326be1ffbc53a7a4a056979de1ab8159be2a775b7e957ae1cc003b1a2369a09c16b28461913ae0a0e067dce3a0b9f064ba84779bc4ee5bc46c33b084c27c62517bccb7a0d7c7e06d80054305f9f0fa46ba6c838ebdaf9948666456318b1ce6ad854b2e8a17c5bdfb6053f441ebdb7ecf999ff3ca38771f9f5e8520535b312c793ae44b7d0cf96bf9707988e30425fd397684cacd099af387e44584c6d7ead73114fe5836dee78543d026fd8ff94fc645930fee6c5d00f42b5c64beb03882d78421d52b93b775a4b1402454e33ae07d26a4658cdff22f7bb1c9754038f666abaa07de1a36de970ef2101fbac7036393ec9ec8a65d3275ea695953851f7cb2a311689c24b6cf633ddaa06e77980bbb6ba4057a76554f3f91ba042e6b0cd757e1c2a0a04335497818a6d03ca1362e646cfd5d3d0a8df61ce5f33d57462934db5188f418bf54ee90ce9a306870a8c08da1d08a2f92780f19b22a827f5f8b3315089608e3ca2d1461d435605c44776d1cd7173f14e1b23e0ef7615ce57f8779e43134841af5d58aeec2a1f02649d2a704cbe861eb3914f4fac0f8a3c3d1e25c79d769dfe179cfd5e720739056d9793a902bc7f1b8a591040518c05183c2cda4fb4ad9cc9b1e5b2958e5f6e06038bdf88d9b5a4a4df63fbeac2e0d53c9e58622bff4101b65092dce2af3c7e058e77ebca8fa19c9d0c065a87b16607f1aef19fe94ab9c4ff633d9b1680cbaa027195e6268570aefa47c8b0771773e51794bee2bf389fcb644d698bf44acf41015eae205790086fdc1c5a691694a739abc6f3122a84f64be2eb4af93f1a46b20184fd41d7d4b4be10fef9dc85cdd353cf440c10a238d0a3e6a3c9fd82a95c4f006ee020278b2b46d811a6f9b8a02d9ce9d3de0413cede9cc8904fb6f76d8b2c00c3bc4ed819bd625a47eb7abe898fc352d54f866c432ce6f7ff561dafa03bb20133a4929a79f1d84c054b9ce9710d611e22c32550859f883ae663e1bbcb80da037424ce231ec776e80913c3dd3589f7cf7620fc0a80e77082c75727b8d703de07137d6a4bfec09bb83edda079dc5739f280ac6cb6bf1e28721cc74df779fb01014198ce36c15200e2289e76c12d80a212d4edd436244868fac761b32ad061f703cd67e8e77c502dae9f243c74b2f46e319b4eeec3f12b4817d5b792fa9f2aa300905c5d24fe5e898ecb13c5d249cb0a4c63d011c4aca7b5236ce76333262ba4007cb6f21a62a41e028a6cd43c6c7d429bde91d15e666b333393f54ff570826e07c988f28b315a0da3f402504cee163c00e9a8e057ac585341f1a0de1c07f97401ab70501d46e77abf5ab16d5b33bd173078d6eb46c5370083d138f0420a96b706f074d2b3f8059823200c7585ee16f9085a52735ba13b832720095b74eea484050c5df4dd70e879dd755f34c5f4a0e06b785705f63c0312aef60670b7f0e74e079c8c55e86eb49b84ab20e0ac946c5523e4213ad2505c94308b9ed9bf96075d03d52a88a7bd86c65c943b9d9e743fb3b03749946d731d88f0ae5cf1975ff2a70170704cb71704bf855834a4f4658ab405e710c6c86cbab81cba5a493caeac0c0550230d2b3bc696a6a10c5a61e1059c95da9204ac63a95d02bf5c534fe12d5a0230c8f22ad537ed8442e66fd21064f518d4c57ed4e5ca9c3883e79713c279800780cfe783df180257e0c4966c32730c8f1174a80fc152d29fe8b539c567a9f106aa5692dbda2e0e95dcf474639297ee46d967bb9ee8539e5720b364a60350550678a80dca37624c32b47e393fca47c1078bb34ede096f68d94a516e67eb1fe104e1758925d61a62fdff3adbda606e4033b876e9d28e310813f73b848fb3d4c501dec2b1cce66c19bbc796ac489d29d74cb3293c21f4eda90543d35c7a325c3400f502cfcc6aebb768321eccc2768fc6d1e3a2a0a210047bccf804977ea4c7b2029d007028252482148f598a273ec3ebaf92c1cb5c133d09b1b5897dc9b50e360575c21db25057779d4a7260f627104eec0005cbe72bf434a8a3cd775c083e9307816ae70f3fb7e7fd2be0214f22e625ab3fbe6c94dafa747cac56fb594718a4067fcc77aeac59818b145fd42647ba09a4bef4362ba447fcac8b2d6c4b1287ea0052354738def083bcb45186a1676779d7cd4171f0a846a21922cea6bbc069740107445505267ba7a2632d1d9a531700786524e32659d5f931565752f213b2530334bcdad9597afb19fbf3c51c63d817b1d7a16cbb2ff28c3b8f40f151b9c48c07a6b5471cd52e59a4290ab3db5e706d8c06215d323fb6ba1ff2664d84e735e700a1e78c0efa6a36a3f6c1e283d54df88d542a542fa52521106b66c6c146340a0355c4a7eb0af17fe02242a46c587199d1b54d3cc4a2a6d4192a8a887e708f90027d8ed6224bf667bb2f7b05fbdc6a46cc782b5280b849d655ed274603ae11a2025942dcb176eed5269acfce22e21d2f762f46e270063c444d47d99d22ad2f6506b865b981416019a27e0a5e87deb52e66ae600545edb1521aeabd2aa5139fd404fb9a5b517fee6c83f8676f2729a10fa46167de918ac0ceadf281c2fc29e38502b452197a2bce7563c407b9b2fe02954b0d31de555e3cc9ca65a7d06001de5a075eec010e9aa9253124c758350fe4d2468c7fe705035a7779d107f732c124570177ec6f36cec476531fc33244a1d7c9b96bbf61974843e789f12ee15b37baa6079471693cd5961453410d11801c63c84b36b38d3d1a7fbd98c45b060658bc4900c59448af1d5694edc2f6a8f3e3ec4317d00f59c121d3d8b9c2f366f1a1afef01320133809fcb402bc7858a00763a7389f3be36f77b99ba2fc1d75326c5cc570651845e7204d51d1ea8d3af811bea196cdeb51038689e4511249886038985a202f944bce3f9f1e8f4f2c6218f3dcad2cf44a8eb775a2141877b7fd17ebe46e101749fa2e5c6eab1c3daf5f81c67e1895ef5644e2cec0e5d3edc3b4be27062c0065806b1d92f1b402c8775796d7d23d9e04a59e763e705e7d1a8fcfcb7ecc45b06989d575d02e21257d35176325d1652399a20129fd63d3d7f59a73c5d0c84980173c0642ee6458c93b751781363618923ad7fa32a54c292f52e57e0d4d529d101fa2fd918b4dd955f89f667f8a9db42410f48f4b92a7e6a6bce709808f5d35c06ea88dbf5cf5d39f39315922350731b743775bbcd4e8553e0004fd7bb13e67c0153612c7a60afaadae8694af76fbe9bc37f6e4a8109b516ca9ce766157e053801ac99ad5f8d1887bd00b3bcf581b2f5438d187aae26e664c67c61f1a2dee3f4037f03496e5b82feb51edb7561039f3ae902625888a5dd1c7170f0b7f5c1cadf03679be1fe6013a63957de61b95fb12178aab2163264b3d449f571ff4b7e10df0131db173a04d6115c387f5c542f9cba51c2e891ecf133db43a798f5e1b642ea0774502b8841d72922e07363cb2e47d50daca49173b2deb79239ebae2a83d0ea018f9632ecb3bd8e682dd76aec8a0aa3d976ac66423d51f22c2043ad4b8e70d903c0d7565b9263e785189e11e32fbe4dc7e18086ee0e0631b086154fe33249cf06238d1af948be435dc3e1c275c475b5ac649c0be2b4a343b7611236af00a42d07b0ff2f20ef4adacb1f8239dd7865680fe38665028429dcda022d49e46e4d75059f05318d9c02d8bc30b6389d2f6a68b1a85a8273a13b006a59bc4a972871a803bd243796859853573378a0bc872edfb66ab883c1b1d9f1622ab7e9e163c3fa027f3cb2ed1192b2820c294196192ff41a52c733fabcd7b2eb93cde04419328106f5966a84df8e6177d7aaf87546fa857db9fe01caacfcd4978ed3369961e6fb03a76f28d901601ce59ade07117de45b209b15ce6e290d40a02eaaf36b1833c3018331cec2ee930e772dc2aa2e4f793134749d1263b48d644cdb77a0d45998c1065da6a2468c82dd3d4988d35e96609ae579798dbcee7839eb407aed92ce1fa90515d5c849d003a7f67c367932cd5fa38b93494046bd6847b1f74b92dea0990f0153a2c623a73805820883dc4b56bdbbc34a641fb6e55e4fa4851705b133ebcb06cda7fbbb2a75a999da3bdd5011280516540e698fb2824caaa1bca36897f9be0479794b4594ce79fb05dc46ccf49caa15c228efecd9cbb6a79ef99384c9091100a0946de08943679563891936b04c5a1aa6ecccb34f624f12ce980e8ad806d3059b648fd001944c8e0119cc6aed8b60ca5caf0281c72c4c8731467c60ad83fa03870482875a43c5fff042679e37b63cc57be37ad5e0bbb7691d6d98a0649533071f2bb642dfaa65fbca9564427b4299419d5ae43870328eb5c515144709c01a010eb50e8580804aecf17e681f5a8ca73c86aea9cd8d4a832c8c5db163bfa79e058ecc01e9db1dfbc5771cbbd96c70051e068cb82b3d988e10e16c18dcde635d0226532f291ec38187b9b68bf1226ed63e2d6d9bb6dcda438f0accf629151a1c0274f50290661597c3ee6ab129169e10ee1f149a38f0e74ccf228cb60fa7ac970473f217fd07f14474cde490bcf9390343a7350a2118c0f8d840d5f7f8c99fdd03ae3417e46add2cb421057797b25a7cfd4b5285a00d292e0846c5823236cbfe051133fd8013aff5e77eae417da67e2f39f570199350405e9ec46959e9d95d9e023f30f1c267c74a552716a1cc53effd83b6126fe416d75843957f65332fe1dd032ed31144144fee830b3b6b5e14ff0bf1f9de823648651e3a771ad6d88d250204d87c6ed3e68a968dfb932913c0bad051e2350d2a67e133554e1c44ad8e4bde06a59074f796f2e23e7c28a2286e5a8903529ec3ea989a0fdad8335e758fab3104b72388f49aaaf242ac63eaaecdfcbdae33d03f5143fca754baf813b441aea2027ac5b4d309bc929710bbf6a8d40aa532fadcef47ee2de907363c6c19a68f9c05a86fbd2e24153f61aa7c1cff6a0099aa3d74c119afc1007dffb8cefb9ed40204f13149bf084fcd623712b28bdfa2277f4134c90ad3bae69b28ab83c9c2b18d02d622d9065e04ff7c9d5f3dfd0794b7ec236f2570e2e62fc9e0739a9473858100b80d49a097f92279d98482a79cef8cc5ad302d87742f1b3b1edafdd5ffd6f007e1f3edb8ea197ba916160b51b09bf2fe2bc0b237bb1a79a9dce7f3977b50ea047e3213fca55da94a75ea14e673a3506c01cebcf4515a87ee1607d63f4f3eb107b2e1290992bb8185f34b6aa2bbe052b4083e94d8f69ee1774db9963202f9880312808ebeff74e410a41ea79d6b3e1247ebd3b9f7eb097d984f43d568c6dd9803e07423797fa4790321075d038f09bcf684ba07da4537259d356252003e02fe0387b37e27ad5de7da616a3e1b84d5544392fdd02b05c366f3fa93d5b624b41e0659ce25520d07ae1e78ae589641e03d282849b81c638714cf5609d1daf492d207ca276be3daaa66d8d29b49f0d9db5adda1ef05b4ceed65e86fa59148309df404b3870888d337399e97e2d09f6316c95ce20faa99198fb5ad8bfaacbef80c1306a4eece1363241e062b733680895cec6192e9ea96119325edab52fecde9ff1702d928571756e449036b0d7dc02df9c85b39049a71962d9335925f39cca712d1078f27fcb45c42bb7bd84c1438664e87deccf53991b98002e66da16b7c97cef703a0122f9d2827a0d0e0d25c71064d5a319b2cc68190fb673db0a6016f6dd5ab05c877733136e4bd67d3f3d347950dd5af0b0f665c7abbcfd4b0eacb673fc5be05e86ef6fd5119b9bfe113e89e74f76f955744a92b68b560a4861458de2955fd012d09319e95a6f644216fb0516c16159220db6f5d07a03526aebea5984042970082adb1fb39a5ffc4c2c0dc26df3a9904e1948aac9afdb06cf408a02720fbe7020dd84381dd0c76620673a033787ce897fa2ab594f8cdc1510ad2906025ec2a06d954adfcd74b02b46296ec5807b2474ea0ad9e24c55acc33a66b59140ab7b6025d3b72d310d5622b0aba671765bf8f9fe712dc042a82e55933d4771c33b18401c20e97a0a45b86a1e9e492d73f3d49454d6e7b2c7428ef181e2665bb616a72007b57e71c93f38f0f55f8e9d788eff8d59b63ba7090cba42a492bad855b9bd903506fdfb1408afc60561c2febee331fcb6eb23248b2e4f04a8289e272a07e8900f0640733fc19cc936860fd197b5d2131277536b6d97e0c1ef69f322fc0e6b1035744c4cbb9f7f6b86802c0aa1de5e2ecd8dbc86bb9d084080462a86171b824030ed52e55f05e4c4de598b55196f597c30bd162dabea8237f1debd46892192a0584af8e122a8be8817541573a2fb2c82102a47453e157a64ffbc4565e6bd06406c8adc2a943d93c27d699bdc95e1732954cc8fd9c6f39ef96816c27f237b2a7012832c76fda0fa457669c21bffafcc7240501176b2d7df1cfe66575f8795c3404251a79196adff81f81f6d990299ccd740c397573d573d4eb054036deee8b8903fc78b54e933203733a9244090875f3ab34b733daa0b0bd01ddaeaaf421d6f607834fa75ae61c4f9cb4c3d2db9cd867172022d6672b8edde9b610be43cce08b06cd433bd131731f38dac45b3ca888ea06b328d599a105575fa154a8206c0ad702e169260805ea81408cff2cb5846d87a17f0d7b45e355bc2ed5fed3099b08ce05d97aa56119c1e7bb7d12974d0d58042bc17864bdc3692491f41e9b54b804ba04debfb54bcc1d1178952c9cc82d3809d5ea62f77dbf7c70e508727cc3b86c3e0719d62257005d86d4d545690c136cf8f869bbe170a65f463397581f90f6daf701728556fde321ac27cb3fdc98c6be073856a6a8c5af90ac51d0b505a31beeb7011d32031406e8a3f1b6139878e448352502a2533e28c29e7612f437ea7a7ee206a6e94322329c901e209ad8d9ad8b299b462e9c3a0db7e9d24d8caee8db424a067a9575b4328a4a8dcb891758c61bd5d2d8b875ca0aab7f0ee05478dcda6b4c011a4fa2a2d5e94728d0406164a009e5b41006fa1f656d94161424b12a65b4af019c36d5baf56f45d6770a0550e75b0501f50391a516f9c6c3b47fb7572f5d6d019385c5a0c1a50d452cfe33165c8ea087934ac7b18b2880bc6a538b61ceff9601d731ca12c495e22dc22fe5b70739642474f9b0da5ba17a4109bfed924ef426032ed07b36c341a5a20c33f6c33598a0296e1c0a5db9c676727b5056ea769532062fe9d74b473c23ad24a81d14a019bf427bf97b7820b0ad81529e2dae01689f05ae3b5935843221cb388f64e07d0c96586fca95d58f88964c748a1d7ff0492001fd48adda29260336d9853bce40c044d9583ba7f1e39991d9a33925f299c40d07f85b3c8d2bfbbb754460ba6d22e8fc4de16c4f8e5bf71a14ee5f9ee88e37a2028c02fd150bce2131329c44f71eee5a03dba0b7fd69efab2a59f0492e27028c052c234effe12befa828b981a8c95dc9bf2522829234fefa0a37d9de6fa8618c005720fbc6fe20c1904c58316c5ee08cfc9e182427041f2896243c70ef9a75ce0593e633c52adef8a44304b06fa1a10cb212daf2b3e5c3f8fccf16d53fae2c0c0000000000000000000000005c4c0fbe178c80f8919f982e332365e5ebb631090000000000000000000000000e29961b998e402915bf12aa5407688f6593c11d000000000000000000000000d89bbfa0048bf196ed59955211665e562d101144000000000000000000000000e6063a37b3d53585807d8a8aa0bec5f4b6a7eb1600000000000000000000000068af4e8d61e11b1d6d47211cd7668a6f91ed88760000000000000000000000006ab615d626fdb3efcde54d337ba4dd25db7a2511000000000000000000000000877c623d85492a907494ac26d1ba0ecb1039bdb60000000000000000000000000557826c7c0fb2e63a889671471dd3a1422e93b90000000000000000000000005fcb2470edbaeffeea916ab382537c79bf2217b7000000000000000000000000ab000e5907f8cd2cdd07dfa0227dda13727b18ed0000000000000000000000007dc09f99f148fa311c58cf7ad0372605769ca73e000000000000000000000000914e2b31b3acfd17cb88c06ddb178212f710c85800000000000000000000000070ac83cc341c5d9bc977265104dcf50a59367efe000000000000000000000000bf6118c9bd29dd5a02728eb484a45471c5b096e70000000000000000000000001a605f27b446dc7c769fba1c391bb8b3f0a9116b000000000000000000000000b6c49b3d890af624f425e01def122fcbf440183100000000000000000000000074b3221a0ce6ec2ea8f31c3de6d7f0e8398c8d1e0000000000000000000000007f4b4b836c9e671bf89e87de1f24c481006282a0000000000000000000000000c0efa90d5a3a4db35ec2b7a5326686f4db3d723400000000000000000000000022c2b71a2343c39d9573ff74a71d62770c22f9f70000000000000000000000003a3aeed85bfbd0491c14e344bb960c5fa66bc8ca0000000000000000000000007f2bf00d574737ce3c2cc26ff34d857bc692619600000000000000000000000012a56212fa431b5c40746ccb1c9e116cfc10b6900000000000000000000000005fd71ffcc12bbd8a8c2a084b498a942f689e5d2a0000000000000000000000005a4f5a9036194466464749fcba9382d758240b0a000000000000000000000000b72a9ea2d58ea4287c7cc6b6d3b20759a3eccef800000000000000000000000070967d2364a048dcaac704e4f802d6d6ec22927a000000000000000000000000efef36dc7a59ed4868dd801c2d29e4e4df8616810000000000000000000000001ee7d3ee42b83ced94d6d71c40ec15a000d9be01000000000000000000000000197957d52fd5a571274684fabf5424bd8bb6fb0f000000000000000000000000ba5e64ad41aeb282c83bdd6901e90b0bd17c7e590000000000000000000000005e7395e7017508739bdd3ea54e622d89d29d29de00000000000000000000000017443b5d98fc3a1efa44c9828441dd7ecd73e89e00000000000000000000000080b92cdc8c402594f830d861995e75b44cb7c6b7000000000000000000000000eed593bfef0dec0f5a41c737076590abd9e12b410000000000000000000000008d484a0d544457445b5a55f627fb4ea00da2889600000000000000000000000058b52dcc7aed4b5953012c76b57d6610f62cf8450000000000000000000000003c1b2cc788cc0f0a2930a03bb28ff08288dfc4c6000000000000000000000000d8717ec474e78adac1e896d13df023c61456285e000000000000000000000000f60cd11c5052aa452e49ca9415aa97d531b96d1f000000000000000000000000548e4e70ed91008dc8bfc2e837ae543f69498e620000000000000000000000005e1ee83042b23bdf7e14542280aaed334f62bd190000000000000000000000007ed3bb52bd1d5a153a462fe83340541850f6b04900000000000000000000000075b753b5708c6ebd06dfa9c8238293ef406baa3d000000000000000000000000a07e8ef7a71cab21c96e1f04973c70427429307b0000000000000000000000000dc4f59d922645b74e52616268628e04d5dee09b0000000000000000000000002fd151f09619c839bc9aef34b44149fd4bd48cf00000000000000000000000009250a3b3fd4591f62ece142ce1157df41009576e000000000000000000000000a6327ed6651b26f5ccd39f2f791f2738e1ec4b7c000000000000000000000000a294aa3e31b82e264df6d07a2fcab96a49d44ff50000000000000000000000003732d52e4a089d3c38de33c1697f808b48b0e601000000000000000000000000e219e61e206bae72c152c09a6e3f45c03e90503a00000000000000000000000002d88d30791de3488f7f5c5108b1f93738594235000000000000000000000000ca381802ab4d2bca1efb05161bfd7af41172d75f00000000000000000000000055795435caca787363665d3b8bfdb8f73ab2ab1c0000000000000000000000001447ddb36203745393cb0ceb5654d9db9deb68c8000000000000000000000000e80c34ca72dc1470f602c6cf9fe92083aa13bb4d000000000000000000000000dcd77ab1bea18976905f5e791acb99a5252f335e0000000000000000000000000c3f597fcb399cbdf27fe7b8950a50f1cf8f02630000000000000000000000005a1c3e3a074cd88023231eb1bd4abf94211aafdb0000000000000000000000006c24523eeaf940e93a932026aa1c5292db1eaf620000000000000000000000004c1df3df81ac224b71d0f9ef575d25bae9174e15000000000000000000000000dd6effdf7ea07799795aa18913d57a0561071a9c000000000000000000000000bca05403d973287a0571a41fdfa8cd671acac664000000000000000000000000b09fb22991a68ae3f96339846f32df906e508b0a000000000000000000000000e4815caed1d8af82e39c8b719f461828a2f2bba0000000000000000000000000c91e2e3ead4365ddf898905725705e199f50126800000000000000000000000000d15bdc2308f99d472cdd1e5903ca2cdcb24a73000000000000000000000000a0fd6de5889078b1ddf7a37b8189611d3864b428000000000000000000000000d3c8fae8c947175e663efb1f884363fffcd032e1000000000000000000000000546f779e838b9a4d1580c941dbea3b85c9b62df200000000000000000000000051042b209e4d0426a35d3fb115112c6ebf847a210000000000000000000000002872e265846936f800bf7e2cbaccb05fa1ce266a0000000000000000000000005769630a1313aebf1bfe3f8a0470ef970a1161f3000000000000000000000000d31f5dc59af96b88292aaefddc6185821499f7450000000000000000000000007fb2deb4ee9c0b299274255d3edc836c3558725e000000000000000000000000a4b9fbbea3251fb35d37344617274cec9076562f000000000000000000000000d6a7c30ff048c841bea291a9f75ec92e14ac3752000000000000000000000000100c35e61f0749a99c6ef124fdb6f3e7c3d819ad0000000000000000000000001dd4e8952d3a165f2d2d4e02f4de3ca53777dcfd000000000000000000000000f4743673a23b220cd92f5dcf839997177c002ac70000000000000000000000004a50e339a2ec20f0a346a8e935dc7df312f1ec080000000000000000000000006e41c3af5d7c9862b795675dda40ab7faaf80265000000000000000000000000501c8c07610b22d987e07aed5d660ad387a9ce020000000000000000000000004b85236d6e9e685f4d8172f7c060dc4dd1a73aba000000000000000000000000a710e9981b8847e196db67c9d65f3e6bd6f223c30000000000000000000000009c6895c6924342a1b495bb2d0b8d72b6da1af5ba00000000000000000000000091ed2fbd8ea6aedba08babaa219693c99719b93e0000000000000000000000000ef7d039fb93850c7d19a1f7c0d7e53d569326a4000000000000000000000000edef789e0233e6b0c383a3e57e2eec9e450e3838000000000000000000000000f21a905dfd39808b879d9965788c6e612c0492df000000000000000000000000f260cb2d0b4a7158e20c4daf1adb794223c8b07400000000000000000000000067d2d5608d8927ea1af99fa6e179abc1363d31cd000000000000000000000000ca76674925605a61605a967b30b8af953472fe8e000000000000000000000000635eb4b6af73663f61de783ee9fa64029a4ef99200000000000000000000000033432be799e99c83571b57dc027e71170a94a510000000000000000000000000e2b8df4b9a802dcf9eeba7d0e65d9ae269023be7000000000000000000000000940e7c85305bb6cc17200ddd9bce37e904935cf6000000000000000000000000fe43e40a39f02986a2fa2976ad8608e00662b432000000000000000000000000af33a275709bd8951a4f24c38c8ab2199a9eb5bd0611f305e09d8b8fe50e3aa396681876b4ec5c98bd0890e2089e7761e57410d30601595c365e5140fbec28007a83b6ee6a528b1e7598d03d1f9a2046533e8f5307245e1f033d6a134753c47096abf40ce38efd7bedbcc4050ad8a4fd182f992b079c26b6c43e36c3fb1381682e1233c46d3b4d03cae7a06f144d22e17a60380800622084cecdc3869d661b461965a0bf98c9efcaa02c2e2e7f62024b8feec252058f6e6394d11cff915da9e671a6f2bf2d9f8de7325afe79f690ce595821f63006896c87a37419edea588ae1aaa10dba2ac858af79c9840149c94c46e262e68204da33c55893c6559550d7e3eb5765789dd575ec927de1651014769998b4c09b023dd798e8b5d69156302d1f3f69728abafa45e3e3be9b5c328ecb2e07f0d0310014a0f895f30c3ce95256dd5becbcd465cebf05ccdaf2228be0b88bf9df99250635f13010b18a2c42d765c651b68750246fa597e6476825cd79e6c2e869fb5905dfd2545235b9ff7d0597c99d3d7059771c9ad51a98ad9fd12393ba2555545f03d64a5989c2a6216fe9a016183e5033c76091ef9e11e736a8eb1e219ea75ac1077c335bf37efa7ee62c1df9db6eb840aa1ea9fd368728fcbf570a1ccbdd25f50777367b9f8c436fd4587257f817e8c7bda3516d8bc2dacc5df03a38093e49090445c0fc94c596f93a8227b91bcf57a22f445847f97515c0c9fb5f8e0798bc9b003f7ddf10e20acb595faba29d7aa4b5d678e41f1e66edef84b5c137585f6ca205fc2de33d00f7aac433e0f5c69dbc445a0dd0c267cdb1d860243da991d0e62003d06492755db149eedcc1c944c72cb6805a0a20f2ecc27fc2821689d3d34ba805073c11a54ae906e98cfc20dc6d1e81c5e0e249ffd94783db8d1493235901f606f8601617a07c1a337ccb2106ab83c0ab63b4f18ae18f08c4db01fdd7c6216a03289ad97034270d36439de83da7aff7019444cf2ae6a71d672701919946197c02a5c6189ade4b3765a692c1248241c1a8a77f736dfaae3c96261543f4ed9e4f03861cb10eb36c93d2524ef11cbd6f31539f17c05735da6261346252a269dc3302ff428ec184b560775bf0adb88a6cba525df775f163539b128e8681cdaacbf807af216e2f0cf188140ca26d420f54251d44b9ceaf77a6123e6d73f5b96d969305aa0e8bf7519a3f3e8310b4e774a6894f904c42be17d93e15fa7900b6d6e38d032fe31a899defb9d8e92eb0e26fd5eca70a5e98867c1e9dfd826a5dddc04ca10716a64f320d5510aab97b4520a28ec811ee25686cd92326262913a87653598402654427416bac2d1c7cd023e175f54297c2e5dfac346c6f56b49c1e1f41fde704d6634df7942deae9772388597a6f83d51f27658e6eea9211d163035867e5f2038817f2628589e760db624efd50a0ac08a41408b4854ee46088db7f2d41779700c0665f9edd07abc6f40ba84015527c315e8f94d121297b2edcd6102d9ca1e302d14cf3d122365619a7e41f2327756cd931861dc99c0a3c3f49f447088d663805a8511647141a612faf10b52d301854309682e40f9af4ff841aa9f0bffa31ab04570ea2cf11895c97e9e15426a9a1d4275b3182ef4650fe6f3bffd1a7cbf86802813ff4be799a059f7a1278bc7ea7ae422d6d1cdad6ab0eb537e76b37f741600604e0086e877e1199948561630eaa79931e46531e7b9ecc59d6162dcce86613037e1c9e6127679ba2f3eb1a3f1da41e065ffcfebffa743c12448c06859d684c05e17d61979448f56a83977a3cccc9c3fedb81d04756f29f42c66f289b5d79f1013878c20d092a187b24fa174836283f890c0ae5a29a4ca3488dffcf059056e80368257e1410d031a9ea9068d8c6ebbe7a72dcd8343bf2a296da92abf442b34b01e342f4e0f37737409e134054a37e3e23fe15270bd6756b6d01edfe574160f4066650d99616c7e452afad08bea371699b01f6c6eb4cc7f858b84264b97bb74b009afb8775666a303e440bad1a4cdc575ab80c533a76566d85e87c98ee18e2c8035f0b7291e3115182da7c20a443e3689b962f990dba70a61f4c930fdb4123b407542475bf44d141d85bae55698bc4d99a11312c4c311e5f1bc6274b0146b38a0355efb470acaee39e500415fb80c4a77595a46b8d56360ff242ebf8fc6067f0015b2b4e5c5201283eef0dbc25f241a38f15f56a12abeeb3ed91836be549a008066ad7c2ed0e59ceb23452507f2030da5f964b757188bbf1a3cd66ca0d9a79be06ab39ff8c9e52ded412f03295329cf6651dac591697f2a07aa185b03c534699011573950254e40608602905f24423253b32b601f6de746c955f1a952146bb30039781aa966835aa9bda4d017144d7034b0aa37e9d398547b45d52af25e1a4840013e2b5223ced032505afcfcd7bcef901f9974d7fe89767c30c049e9b27e4f204920e5d83cae923a1916d418056c7f2c7dc4a6c50f6e617db7d225c02ceea4c05925dcf332d8d0845dd3a8027257a5f9d1fa694db390300c6117fd7e9b3c38806b6550e41c5cbd561a93ada544c8a8d2be4e9b4123f1cf1882c6adbc4910bb604eb45f64f54ca89fdf483d273d40b6c4859bc5d643167b339c31594afd55e7905c585759ed6dcaac17c36ad1fb572af3e3857b84a260495a639e3e7430e45d903d3e18ab51c89f90440d5e30ec78f85caacd67e287b61fc7142568d51f6d50e04bd17d5796b603547b4ce5b720d9ecd7032bf3204d01d38909f6f8a714e7a5b002b3fcffb542de67d1771fb182b611735688cb41379cd971f30d9ab41c01875025207bae4c6146d8857a37ab1d735c4352ea548df5f07516346d8eeb77c063f07acd810bf0ba6afa27250ddf92c8d685bcbb929a7e2624004d8de4ea0fbdd5c0496545b533a6aac1bee57438f33b5beca971d508833e2588eb102dd8c7aaa930267b5bd1604b2ccf51b5eccc8643b5ef7c270f645c6b61fecdf3683b150a03205f7d4ddff46ff8ac247b398f3285a88f9d2b7dc461003d11fc134ef987b7509020a43bd006e33405e1e0577f6b875333a129ac8941aa3107ac96e305211419505e28f0422be26ad7a6a74232fbf2079a4e4bb24523b8d3c55490a960911de700462fa84ad7c4cbe6c6ac1ab7874a743ba2b4bddf78eeb109f967dc9c333579d0358904c6232b412a905a409b7efb0bdc5732aa4256c8d7b64d1eea14d9d9c76063872fc933ce51a84ef09171d7ad7962dcb5b7ec96e49e21f8504c23ab6dc8401eba0060f8b18b8e08d4ff5d78b4217941017e6f91c3b5636c5096c8c0bedeb06b56709e5d0c0a41958d51ecd8c5103240ff1df9c4fffe71330d2e4b3f8f0a801c420ad0f1fa425277a5e962a74a97be88fe0efeb29efaefcdfebf74df6847e07b218451e07811295af4732aff454468bfc1eebe72ac80953a013382ba60580042f685736e14f18aaa3ab2a7d2ad39af62041c0c802cb06d5a48cb33b8aef44071b44291c59cad130f2c4006b41871b133287c63131713502abd7672d9aae2b07f6aabbeada44ca705fa825d28afddb64264654a41c5158b04c9197eb74b70302b7028953263f93930c31f47ce045cb976f4145c1c23507a946a6564f2a0e560236a78b00a093a920e134fc73d7860493aca081a17e4c0761e3193e4f27e0dc07b248cac81ad0cfb587e41c297209f962d02841d40b761da85c69dcf4ff41a907d37f995f47f2a9c1f20000c12253dc9acb35dae6d78249d287082d18809aea063b2b1c41fc00afe25458618f0b3db6f83f2151362512de5e248e2fe58cb43103867c3391606e5c198fdb94578855b54020d55f5b9e99fde670d62d9dcc5dd906b1ba0f007dcca220569e92b5c9bfd8ee0e527d1f21ed0ac1de0b69dd58e09d0727d40bdb605f4b06f1f9f999bdfd2340fda4df10b64a441cdcb4cfa1e754ea062d32357c653502868b301d90f859069d4b2ed56e5fdba53cbce1d0c83285f6046e5097b038160a06bac2859688b429bdf3ec7088e578e7ea29cd580d380a0a038387159815787bc1ede36ba6696aa64fe25b903809260401d5fe5020f98b55078985395e41522b085ca98ba876b34ea0a61da22121eb20257cf3f1013229dd05cfa4596e49f92b4d05c698058e0a7f31d726c5ec7966b12e0566052b448c3f02582400f04a36e6bed8a7fda8a506c8d1734f0ff4ae9f3c9701468d2a93e24800ebf4d2212975b64c32647e6ac202dfae3c79b01e272b613a115e0823144c4e064315e39d52e027a0640e890ecc4ef10169d275e32c70b07badab07efafba8004b104ff6bf4cc00736ae918714610fd8b26309c3ecfd8928b1c5ad060e4be4702a1a25fc85368b6e9a03dcea0a443b40e419cccfb41e18ee0de49caa6b0c1df0528d4f75e9242c5c7405e59797ed9765d6916c7546539f41a57c1d48cc67a90041d76bfafe35435c021302dd9a05ebedf8d02c559be1a4def717b6ee23005ea026da4a90ff3e442915debcfcb6bb05b4ad869f35d6621e13c385360633c656f027f13156cfd69345e1c80699c6a90470db1350117c5ee08e1558b476e3b70a5025fce67e7b0631e239b8d6c91010cd1f7709568c97114f1430aaa51d57824e600e2483002f835bad44ff38d6c5222b9cf9f39323eee852335814fc56767067003104e4a4c3bfc0ce6d90c57c53a975e28ea468c33da8ba6f1f1cfd8be91207207ac2bf1edb4e49cc97afdc6331969e59bc3758dd4faaffaa821abff9fe7358706fc262143d653c4a4688cd2f618cbddce45131a67bc1b06d83d36bd76415813041a62b84b48da8b6bc9c4908a5a33da4fab3cf19ce8dff144c98d41de66ad3404272f89079599a620aaca5deefc5a10d1a642646b2b8fdce786f828fa2cdf600546d1c86b0cfd56029f77e70ffaef5421fa0877e4bf2832e33ea7b158431d82053b78e2da1d7b6d01f9ffd332d2f9ccdfea0fa0d4d923641b83c4b2badd9c0e039bfdece3c0d2e9b34858f3e3851feabc53689b68b7487d5a6694392730b77805fd0be0a15def76e0b6e3d6315ede95e4d1baf46cf6f06253fa293841cc6c3d070284ffca577786c1c42f0c903cfa473b9884dd47fe67153113298a70e283ee060a6dd15157502d7b07750b0e1345f6eeb0c57673434e77e8e87e90264a382305d466d2e39bbaed4a4eefff97b3906b74629cca015f40ba50f16a390d6608d106370208a5fd4ccfa16e142c09f197319b0176e18373e3e08ce4547ff435831a07978afb4d40dfd0caeeb2fc6994d5d9acdc3a442cb655875987b83d76686bac01bc6b247bae7a7a0cfcede3fdc7607205489e04f3af828168aa70add6ceb96503995ca700a06f6b28315b44e15ec725711e8a0c7124bcc10d5db7d7a91ea28c0523df4460a08b68a2e159e6874ad48136654d79cfef783cce66c6d8aa314fab06c22e43905f52a80a7854d6922287754dbb0ad5d73993534540aee0cd27edab059eb0ea186fa035895fa1065be996633d47c27fd95f0e0c8a951da9d73000570085833d71ec7aca557b090fba6c43b60ff8a88bd8171448ac090d332c34524f011801bf573d7ffeabd233dfc03f7a88ac270edacb5bf9bf3648cb7e720f2fdd02e87dc1ff94d96e03c62f2b27c21d29c3706e6b3dd7c1fa879842d361773e8205d737dc35ddbb118d3c8764bd15ecf3a52fedba70b8713fb71efb6ca9f0f9d003b91025d96af16912d45de961597de0216f4633458b6af1c3aaf35800a3a9c40540dc95caa0b25be407be5bb1eb0113263b7ad94670ef47be1019009888dcfc05e7de89742f0b136c096f0d13222546901d9dca4bd2a73968a6dbb3e4990e9907d585f0a26d56c1d67295b3027ff683d24bcd12781f8d09541bcecf25ea02a302bd69edf27bb39fbcd104330e0d22badf8a63c1e0d13920cd92032cc3902d8707dd70c51a8ebd818612c41e02b99380e409b5c9f2e8a3e9a41908d40d1f3b0301182b331f32fc13579c092c6e20e8e1da1325ace6ceff8e27db7e47edc8424b013252a87b5118761e9f0fdf0f70b29f6d23fd0197c529bed13b78c764dfd51b0492e7814ca32d27ed74ebf7cd6136de2e11354a6fea2423d3a881476d913b59004b0f4352b241c39b5b2414be60af6acdc2d7bc56e82fd6f4ab1096e6f877cd0651f4a5d54ac9116767a0302cea2187eb7c7233ea11013894e01e6a653b7e910497d5a8511ee7f5816e3ddbcff47e0034b45fcf18be8c5d14016743c111e6e804532363ff72035a048b69357b0af242eeded5b073fa3bad9198f5fb91c76a7902be424c4abda947fd04bd8bf93200eda4524e36fca72884893f5233886f553502740850a4951b1374a8fa6c35fb970e145c4b1a622b9e98df0b668f1b4ecb9e02c29d08f2952533968f33be9f549b50ec9d5a0fe7fc197c624f0fac3fb43f34008378ef75cc16bbb1137ae0eb17a9e65b7deae8930d89d4ad0b217269de9af20193ccaade012f5ded5ef4072d1d8151fee19267e4a6ec9f1b993bf8d07fc41e013350631c86aa56627211b44b028aed76260657630bc89d63d2a5dcf98bb97a040ceba605af20c70e3bd329e4a86d78febfa6be91e0706e5722d532d419299407d763ca32df7248e700c522d8fe409aa80674e60f5bfb18cb082e422af0684e06771ef95adc21175177706c384259de64cc4b9430e5ea65a395b6d9a961ad5e03a27a905b40f831e8515eada120b92064c564bf1def0af084e721367e0a57670247cb04229dcf5287f2849d0ea2406a85f88f2084639d4d3bdda61c419961950094db6298658cacc1fd8e40c6d473c5d3e47862d6a100daeac3ac5c6175fe9b02b457444b49d18ea0db7e3da270d555b98fce34824b12581ba9065e575ba049061abaf69ffcfbd971dddfcac03d043ea1ea974063ba9e9be3b56c534443c50f043f572f7788dc376042f3e6058d2633e7c67cbbd7efcafe65db0486312870990127ca31c9ce6159ea849b06ec7825bd764623c18a2a9080ee7ece854ea667c50169081694974c0cdd16c6c82e91279ef5413fb95cff300341e19bb9633b1d35071dd84d047283820fcde0034c63f7519ad52f97a4d6ff56a1070c261b47a6de00daf709d0d1a4830cd1bc935228eece711f6cdddaa577b50604f14d3ff837de01a49b196ab4ff1e31dc7020cf3e2364b7f799481f5a439c0524d6a346b421d506212d5c18127e93fff4c3515ff0458a66a82c6d0fc51161329b5524c00ac5460698fa5378884ef25f134c51bd8dac8e0b819836935d564ef791ca71a83c631901acde00aa9f73dd28a59fb343a08cb8918dca521373dc714120389b07c26ee604436a8706543a185f7ca6c98b4e35479234053eb4928b8ae426c79be4bf821202c4a50aa808bbe026ce18498f7c669de534438aeec546571b6ff7a31321742807aed5071aa76f6f5b19e866a9b5f0d1c34fcf0f00363e784b86f8019ca12b7902d643b3123387e0fefee9b8ada2fa2d6df133e32a42e9e53b72d92c7546453b057f21a3824ae5e66abf5454a30cbd60f2019a970b7d78ee5da01400a500ac4705286343f613299046a8030fb497236530d1ce40f9464156c175b07a911b628501bb92c1eb7c4e8d7ea59733a4d30998853e3eda3bbc7665c28ba3b7092f448e064f2982209b8c0c5c40f43c43d6b541a1d83bdea6d59e00c2d25975461a4c2f0467cff8bfff93b02213cfc65687bf911268c659d3f00d7c62d0f767c922c420038b7431f005fdef58b753e0421a6bfcd1f88148a5c7d090e6b2d42f2013539e03297a7d69890d3877f0c32922117ad7c5fa92b2ea9c151f41cc15cb9e45f93a000000000000000000000000f3de974b5bde77d80655421a9f30aee45480fe32000000000000000000000000c8877790d958a7af049e2c328fe4d8dad8baeb93000000000000000000000000452654bab042058d82a607d57830c8bf9d4d5c720000000000000000000000008b4911239bd06bbca9f502274330763fa1abd55100000000000000000000000036af761d6ecf717eabf73a5bf5b20fe95ef54042000000000000000000000000fbd2a2f6cb7dc81dd2a44f414dba459c6da350a0000000000000000000000000351bfa55d8b97966e8546307cca5e121b479283e0000000000000000000000007c81025a7eca46b2890d0bffa531e2538b8c082f00000000000000000000000023b4ca2602244f8d567768fb8e638ad68719295b000000000000000000000000a5dae812f0451f9d90ea8b0364d2cda0ee9308c5000000000000000000000000edb54d15a851171df08661e9c4ea393e7355e71b0000000000000000000000004573e5f8ce4cd450482dca6113d5a0ce41c034f3000000000000000000000000c3b93d061dc7126649f7a53f6c64e835f67764ae000000000000000000000000a88b4d327ac40ea0302df4b918c522c650a4e69d000000000000000000000000bc75902cf9a464ae912cc5406a009f0ca27d47d0000000000000000000000000fd9e19fea10e89c3c165eea3e30f31413dd35db8000000000000000000000000b94826a32daa88969b3d405745f09754e51357880000000000000000000000000ab1a8cf9044a0af8ab56dd3d64233199e385642000000000000000000000000d8c099e285b0d532d8dc389e8dfb83db605c6362000000000000000000000000f12eca2623cc56b1108aaef512fc4b89f8f44137000000000000000000000000e14a83f4df1bc30bdc2c9f95bfd249b1904b0e6d00000000000000000000000045c11f151427375c12210f53070bce45a098cfde0000000000000000000000003e6f1152e31c5c666be64df3087ca629526e9d8a000000000000000000000000d48f2824e682d0a2ab0439f6d980e9345bd0f8fe00000000000000000000000003dca555f058d59adb993e521cf92d48b0053d67000000000000000000000000cfd61f9bfcf216440bf5dfe44d5555a6d47e1b1f0000000000000000000000004f76bfcd354cb259105ffbce41ea63bdbb24f24a000000000000000000000000817ebc426e6b0a5918cfe5cb8afc8998c9e83cb7000000000000000000000000eba6f1d9e9c6c2e06dfcb89156d7733d16bf72b2000000000000000000000000cd9873e764906443f0818bc795888675f4f02171000000000000000000000000e782ab5d91d6fa43ebf46de4ba759f0c2d106a740000000000000000000000001a6f83d024dddc29409ce2029bccd4de9ccf0599000000000000000000000000230ec4b711c20be31da10514a5e2b0d5aa8e005c000000000000000000000000e4db99e576084fc7baa57f92410af6c41e72fc690000000000000000000000002f0be041edc768e27722740c9bc4c5533b6d2762000000000000000000000000e4d19c8e984002ce2a83ecb1bc35cb63f64da72e0000000000000000000000004f8df04e40d638d6ca1348b846820debcf4d62d2000000000000000000000000b1a6edad512e84f1d30ea6e47f71c55efffa174500000000000000000000000087e2cc700efdbe234b68babcacd1a194a1db891b000000000000000000000000e24c9709ae4794109f532d6e96c74490fce8b1f30000000000000000000000009d4b847c7d7b4fd45db17059396e704b3757414e0000000000000000000000003c37c2d761dd4d61ab24ef9e6d68cb19575b85d6000000000000000000000000659ff94fb2c3b9809e39c5f545aeb54d4c09b775000000000000000000000000b13f37eaa93192c49db0ed6eb72cca225f726e2f0000000000000000000000003bae10a557e1fb43da58525538cf6732222d640100000000000000000000000000fc4ba7cabb3e89bba3836c16cc960bf4a98716000000000000000000000000329d9dc9fd6f4026d6c4a37936f4a61311c9e1ac000000000000000000000000b42b5da29c839d6379741524a231014a8c6629ab000000000000000000000000423674e2fce5f59c0e0ffa883d945f12d87c878b05cf3d5ae5ebeac4d5e6a978f817c11f7b15685ea76636b37acff3d1fd33c684075ece9d69ed78fe0d77ede63aa6614dedfb1a9d73c76fa5db47fcc380e7dca6078613782543a2d913c190fbd50f9c9baf920d06f4fc07228f77560106b5a291030df06d84f17b789cfa993737a82a0707aa338885466de69bcd4729e0a5490101ae6524156543a7e80092ca86433710a46f66a7cf8e5118219f8dea788abd2e01ab4715591f0194a083306643e20d2518924b038879d4f690861263824268e607271046cd16d1886baee846491098cc408be83c15cc31f4e527122e9a01f75b04e1bcfd7e6ad5ffd77abd7b24c24699fa54242162948571d56aeb786e1de8b602c7e69e1bbb89365c2f1859f50b84eb477c3f36a5eb96f316d36beefa1f5c1605183b8b8a6ea5041af32f426d2254807fcd397c7a430a49b0a781dc221a9c4203993e6374c0c366533077f578dc4b679b6f84ba41aafae6ab38a4f1b1bda7b40544e7e52f65bf37e4e0f16889c5f21210f8069c45c6944abe6f1f3f7c7f36ef026838e4dedb5a5a05572fac88eed118c2baa287e05eb5037f4a8a84548243d305ed5c1432788e46b3727811b7016e4d7a411be3bd7a22cbf4bdd94e044790df05d858962ea3aac1960c7b4cfaf44886fd970d5bf758beff895805c8bd5cbd4306c898d48eb518c79aee60d36f2603a9a4c11514d89427acbefe9238e785026f027d98db006ae98d0e6f4cd57f4d3e380fa4609da0533ab2969b054b1b3824f6036b22531e2be55cea5847180c55617e4f7af49b824d1bd997f17fa7a2235f84030a9a9a36162f56612f68330f06030c60ec29d63357edd96e3cc855cb383522003fa6cb840d6ae837dac7711d8c3118db02482b74157843e1188e0b7195093b02b89b1abc95745711d71d58714eb31801f45e5bee293ba8ae4b677b2879ea3e077789730f21cf429fd33d02552d59517f3db37f4771a3f418cdc881faeb959907e3662a6809a99bd75b49277e56d90c7712dd074a8c14c1fcdf240818627c9b060e857ebb1c53b28d4d80c80c3ed62aa8562c0141decd57cdd007664b33c0ef05ef4993f1e7379a182233bed350c12d455390b6261c6226bc26dca2f033909b019f94f236cd0d4a6b18691b5bf5e966417c7694e065280fe2c9ab5dd1c1f68c018a0233014f8d0b2932a0cafab119c7f0abceb03b17afa255bacb5ec61cf78803b5653e210e721b6a52e04a4efbb97b3ac8a2351731943d005cdc1670b9d6ff0240bc1f77c9e72d4785f9cd7f5b72214240020da2f205996c55fdb500e07c560059ed0f03654b790eddc9951d1d91ff7f36d59f19bde6fdda4b4fc1feaaa1790504cf00fce1161638e957f0795e7abc7743652a586b640df1b14ca1ed63ff91066a391580155a13721ecfe31969c6ee37a891ed07b06d16976fe5afbcaa690107a5c20e0bcf825fdc4b88076b8c0300e3c244b24ed6405533310bf8dd6038690298f956467c446a972ed2c41810601e3e94e551165f7f28098c5b4daa27d15e0032d522474cc901e8f96c4cffbe39f2cd085a9d8c2ba4591b4ef10af6890fef00d3bbb78be25b9a6034a1a5aaf24935595d408af98b4dd38948c6977bedc9d4076e5075d7fa11f567885d84968ffcc5cc072bc90ea701ddf932e64aff19e3eb059fd3c6d391cb597d198f52436ee8336783d9fc164fa59f2343153fdbc3f40700540c2f3bf6ab497a6d92b72aecf68cd3900f0bfb260954707c10ea6b5b215504352374791506782388f8a871da7be9a5a8df9819885d2a28c1a86683fb56eb04e87d875063429dda97bdef04baada0363b8d1358c2c5366e4a1afebf931d0002a046dbd910e809ca37254a45ac134e5263105fbf3cd0de481ed730041a097d03748806ca24825c187187635efa1d41d936e12ed4fb837b88a018080ec70ebb0249e60196bd15c9422c4859655fe20ae19dff3daa4d4b556afc0ccbafae57be0580bdf74ce4b9d563119936568bbb2304978ee43ada27d9465cf244830766cb076796930d235a438f61d28d1fdfe6b866292ed5b3bed7ad28d24feb5ad7409b0597469a34b8f646efe7acb3bb4a0cb17d4aaff7373de2298255c57c0c04c318050e75cb1122fc729e133abce1fe7eecc814d83384e7a1098c1c1448b81aa1c70532005bfd11e501ee737d5f7a34d2565ac61a3d89d1f407d6a1c67d31e62b4f0598fd45cfab833c8d5b69f9d70d72b4182773226fac6e8016f6528a10c02d09078d73fc40ed947ca3f0b064d1aa4e6343f0e67c980ed94b232c7210afa8e58a05853f113011aca25831f23ee4c29d6974163e7c62bbd023931867c04e6b6abd002eea9b9fc916047843aec25e25d084a60848ea1aad65db2dea34279cf31aaf04348a9a8f8cbdca232e198cf5061bd0654ef1825606f617b887781a475cd146", + "proof_hex": "0x066547ce9773eee6efb6d3f47ad4a3e5f95976bf3824243c1d17a248621a666d075b10b3318a9ca3eafccc5add9395a38a128062b3b626b8004e7b68357fa5d2077b3bb251327133283b4da2c542034abb1c5f2c545dd835f540889f39ab6ec7030172f3a1efe9042aa06847ae6d416c0f4b1e72236835b2d0a4eada0ca135a8030624debff25da9d46456360706f4023fb1ca50044fdfdb556fdacfb0b6c5c204f011fb800dfd7e3bc42ffb660212d5179bdcafb70a0decf2a9982c41566eda05b99bce6ee0a11f2e411e9c86d25a3cb4085e9634c1d95560dc6aad873d2ece07cf922c16655f5cd3e88de5bb4ba804a514c5f8f71b869dab9fa47fc21ca0fb0040ad55e9bede5e5773f6b792e6afed4e92e585a6e735e42d093a5d5833fb5405bc3f7de4681558e6732b47a7c2495fa256cd3c9f507ec2f2a461c63f595e9500afa67842dd4b2de8d4533807cf17a4b4c02de0f17f36ca0042f4d69bd593e803518204d0962bdc48db8e340068aa9a6776dc85ed8d1e18c59f3e0a9f38768d0282678db5971bdf9325a824e828474cdd01dfbaff14794acf72198f2e37995503e9afc351f16095635121c6e4e2f8835184e73e14b99fb4d6c139c1ff34db1205de72234e11922103c6f316e0f60fe43b9c8a6f06378640cf5777efff71b4f406aaf81d809f657dae61b9cb153f1dcde9342ea028b71beeaf0eb7e2fb16d4020625f1da07e0585f04fcc7ecf550f68d6c43c590a9cf270a603653f650186858079a9405be5d2f7b4b92aa73f6ca49f26ab7b5a7d50820d7aa04964a2aec006d010116d91550c6612eeceec1540e1a6e3198b3675e246023d33335432eb89cf802b4ee4bcfeea221615f48a70030d82209fdc3010c82a546145bbdc1b07eacd503a6560c6a4252313c480da67fd19e180bbe66e1178f7c447b2b6e2c788a071502b6d531b0c19c1588a5d30da90b7b5bee8b2204917de0f404308e6a5afdf7f8077875f73882eb9d961edbc641dfce1718465f86578519b94b2761f6c9d4f890060d4b620ff9c74a22e4cac57d173f167f867044d5cb410dd842d30b9df80ace002a517499eda9a0502c66529c95b8d86e4e0d26da31bcb7e1c247299129c38b053b5cc80dbb3ee75773b573c51d50a62737778504bc1bb092ae21a2940f3dcf05ff8c4a6595e23f0705d7ddb9f1e7747ddc0a57261f3feb92276cce415ebd9f073b5da4f4c3ac784cce6192a80f0c1d4cc2785eed0b25a5d01bb13d77a8ab4003547286229907bd04929c1d81f41077eb68e1619a53eb7bbdf803e7d732635b00a9039144c4f5c95e7e1b95eac0e3812bdd985730e1969fbea1deb29c01881500454c144595108c8d08ad5dbc6fafa204ae0e9cc537406a822cafcc5e4a9270031b14e8467cd0e053bf81e6ce2ab5e86e2f68ff98b3c8d71a136fe991fa44cd00e1269ea1eeb8ace9200e82618a2f71fbd5a233184e4d70b7f7590c6e3036ba00dba42c112dcdabc0eacb5a221d5a0087bc3c7a033f9bebb1073bceba59d6af03bd5a5623a1e54d8f012d99bfa9467989cd9af6e94692eca40cf63abfaa1ec9038a28cc813c95aa6897439b8b4e6dfd154c617b3521be9dfdbd58cb472b86730450d9c907242e91abb31ae83a280a9701229a16765571099a9f362c964cdb73049266080fea5560ac5d5c2de3b0115c5f55230f72667aeb3c7832d25e62244203b3272973fe320654bca581853529c5b5972657c98f7abb9ef90a47bb36785d0116d8405c6a322280514afb4120e1ddf52f7c6b4128c327669f371c5d75639a07ba912a06a9b02ce1e4069fa0e72f91ac1299608c1ddba43a15a94beb610674065c3d3314f94b35c0332f7941c3743dbf9edd75becfd3c9cb945963628fbd20037155735a26c181a0320455ca3ff5078fa9c0be03a46a79b8d8abb2791c2a190056d4ac6195d5ab570f4dea4918037645fd5b8cff5a6107740bd1e119fb4bee020b21372a7624f1332b0266252b7f5b78d9581da71655e4f512083ba93b1509046da99bbd5c85f48fd3cbc3622b6c1055bf62cd0d98320d5330b8dabf4112fd05583998f8bbf7389a4856ba3d8e79912f2a2177051a707698d7e96e5bdb6ab40513c1da22c65f472dda7be467f1366f84761991eafb66e2a187d7954c5118d306f52aa43f5af8dd2fc4a2888f5e92ebcba052b09d937abbc679a4153d15275a01ffaf6153da600e70c1e1e8af30b24710894335ba9f54e8425a5c7ace7bf98004378567099dd18482d8834f7bf90ac7322739a3251c77135098dc1ba5cc898a02d597f01e4c27fa309fbb2900d6f84c7086b68a0b10e24d84faf9f9f12dd8f904ebf1b880754d6aa43c026246413d61bae6f398121da5879abac68d16c76e3c04ff14db3c87c3f93fe9703ba470359ee98eb5605087fe3906464bef5ce702d203a6b541b4f3d132684ec0d4816508f0290b2fd1770e6a99768438148f08fcb602e5181242d97ac1d5287dd981d4cdf513c821d6b66df584b557607982016c2e01cb85a15e69a4636893f9cf12b80f026adf8b4336ffdf41fa80b874da39bb0800a8d70e3024c5f387d4aa720048edd1542852a6c1505ad62c13af403c8ef02b02d8d77248ddc23d0939921b9fdf734a68acba63ec1772d92b82ab1ba44afb8c00a413ac6a76c1c75a87791661c163fffa05986f92f5411c7175228c7c7a9ba602d841797de90b6b358f0c649e14010facdf7e68e162c253a84d488d34f2c34b01aa1fd0a15e6727559fd79a003550fbfe6ae8d0b2dd6d9fc7a9c84a3c7cfb750034576050c85d94094eedad33485b593f0b6a456e6582eec3acc8d653fdb97a03db3884c15a01254371987ee20ecd06389f23e45d27d7329685d58866ebd33c0056c62af3298a3dc085d9487867676dd63fb9c422a3e07f46dbc21c0f47989405f2716679449e74b3839b55e1fb91c810efd0fd710e0486dbf531fb1a9fa0fc06d5f25c948b5f7f11d0d52617f50993227d01f6315482f10bcbd8d4013f23b00695e2ca744056925dc3c7c08fe6c295e15a7d4f1f9fd49b0235253fb3fedc54049fafdd9c52f2741efea04320279c2144a6c0a925ffa98eb837241a9bb7c1a905ed600658df161880f7bc2b3a7a15e22e77ff4eedaae438f93a57ff63b197d600b7efddcbc335821b43f109fba4b1337482b9211f764c780b076f1016df0d110000267a83e5e603726ac34d0579e1962bad0a951724118d74a00027f42262b2002235b4c376e039b82342d32229bcf3202761a10b614d2ce4418ab446dfba3c007cc2b4a54c84e076cb8c897dd5fc9571fe57bd0faa06d43e9e5928228fa4d0000d6a3d61546f0203126945ee7cc3a3c79e05d59fbc201c95d9c091b1636956059f0045eb8ee6b1dfdeb826d4e04922a9998b64400f62cbf526b6c20aa8ad3b007d4ef71c1c8efd0ad9aa2b4da81903b1ce3ad14b280c5648b2654e60e5ca2806118d9319e2eed8cd0a490f0c9af0fe6f07d1e29938b29057160e01f613f5c5065535c29d24f884de99911504663eeff49451db389a6b6256e10c408b77d67703ed39fd9ab5f4001d71e06533cc03b4de848076d902e3b74d3a5f067208236706f8d95b909d0fa19e836722fdadbc861e8067234b77a7ae65350dc34e5cc42603a7f7913867db01be5c86a575e9fa7238603922b5df1d12b438c445798fc1ec0729bdd79ad3c96a620e2206be37ee08e174b778a834862882b8751bd7963b3f03f1c4ab1bb08da5c93b1b4d82837cda738ea6e7b154a288f395fc0d8a3a94880343de479f58a87c517441d083389c02e169047b2db908d6ff738a5e5626ee0205381fa19cad27f3e6f4f23802a14bfc737b98e88c2b2de80234e30d8ca40abb05bb890e2f916dd6abc1c65f2654c79b7ee4d7f73b5b86ef87e57f83be8cad08065b8d45f5d5c1b1fe95d3fee3902106b333f5fc110a91c705f403de9b66c69000fc786c54cbe671b6afdf2d61bc324d0ea182dc77fda0d4ad435dc10c3784370423beecb747c8fc2950cf71cb04bfc7334fb0559cb1010a7ef8a85b828c51980403247ee267d13e5a28a3eb80db994208680a570bd88d8239376e35cfd5787c0322179733def603fb401d04e9d870822237d9e210ac3ef30e9a82bf64014a21017f47fe503c2c25593b920c20fde93093584bdd526002b8f929f865f2cd64120173288acedb7d34409b37f56d69fbd8e63aabd9a24bee9189dde46a75b47a2a06555d9cb6e7a6dd840e36524382b6fc312ae3588632379c625aabb210f325b4023b4dc4b7d40f5ee832a24522644360c76b0bd18d2500e1c05987c5f800806d030e76e57581424d0afc8b24656a3220c3a04e580f8eeda9370c4feccbd5ac7b06760b817fb0a4d74c23c1219563c9b6252ec9c969184d4704b601f8c83a52d4047cc06eeefe1fda9d25aada065168f147f0775988296033deb215676f4b88030726c2eac6eb40d1dd26b7a15f0dcda11b737219b14e345646467aba24ea9ac806b4bcd918d1ab266d98b3fa2a739d7ba47bb1dc53c6da4a38446cf17deeeaff04c2d257368a3379bdf01c4999304c9ccdcd485d4c84da300fa3d37998b573d8002abd9a3d1d0bcdd33e4b4673fe1d544101158efb96bd7d17e67acbe6d09dd805761dfbf603d8adce3e11916a3d03869e68fe1b25506514a14880b71ed13b490435c157ad04fd57d6d5cf0c5645801663afee371554d46501fc2a19333c99d001f5e27edb5eeaf74ea5ec5d0581ed182b425f4ca16fa9973f81d7e057f754450390bf7fd95544e943f08cda5398a04f5bbb3e0c2f030e5fb47b89d61d8782330505107242bd5639d6ebdba4a05f2908c5ca1142911f31898d876e1504164a5505c71e14a6f29f765639e3a357fb66710fa1f90a33f08df88c4e06ff54dcd8d607d190002e7e6a45c0292cb48d4af6005bc25a302a55e4fb464e7ddb9c4dedb905335ae4551d1a2130591c9162008ba91cdc7d8ec1e85cc619b4fb14cfa2a3730471631af7dfe495b6ad8c01c833cfebacee66c295f3311dea338ee83bce171404ed40cf2c7d4652f4466226cad55a1f07ca0ad53d753d3b956ee730a070098e036a669b41ba56fb697790dc6dd506ed11c265999ccfd240e81f7b20fddbc71202c4dcd4a7c641177b8b516682da87d24364b6e96b1173c564bfb418d5a33094059533a1181c437538d2ae72a7279b1f4a676d23fb197340b564fddd4c7c790301afb649d7d141f1fa31b7f657c10fc145943bfbb898206711b44c42c2f64c640614c5d5bd25e039d07ada3066dd5bd944193aee7a01666a45aad11998a0c713075e307dce09b673c412d23da2ef3dad3ef56559a5398feb58c3057f5c3d64dc05d56a5381c9f196eaf76253fc8ffbbb1d2ae2478735195db9a558a48ec9117a07714ca7dee6bdaa6ff93fbe58d7e449f39df6cecab9255adb5632b840fc2bab04bf979626464b0f8ef1bc4ddf32492773d1972a73bfd7d13bd5b67082e97fe1064ccc153a7dc414a188cde28c5bc0d22b1ed80f47723b8f70b5c097c43fe3b60615ce2672ff40e5266cbc3a27a6e94a573602df71a75ee5547bd3e6cb5640a9040d782c3c861072cbb6479aeb2220781f43beefd3aac955aca41bd9eb0bcf8e010f28c14e958c17479b9b02a5c53e0ccea4953e6bc3d97d262a2f89c874bc6d07a6c4fb63a5c779c4ed3033f2b1c6196b679f12a4a2e4ae4349226146be85a806a30e81c93d8adc15a72d64b295c9f5fae0b1fef4af60bc66023381ad8f4cd407a388082dcb542cf3c446121f29a0b5cbbcf378c5f6c49b1385dfc852fc5ec304a0aa8f403a71c4f17b71bee54e5bc9a73c95e9ebafaaf3c9aa3422a95936b0039eb2d5335fe2f76c0c8f8859888d433ccf11a867bf40db5286204ac39b58d806d837449be8fefee2abb0de414a2fbfac406d977b7f659d75f43bb68afa466a05444a4312367d9dd739248d627cb15baff908817e559bded73b101b04e99ddf01c3bba43e4f3c676ef43a883e259dffd5981531e5a9c21d9dc3b4c6095c7b1507792c4b70b79b0ec0fad1b9fae26f0a3ce1fb96c88cceb9391fa2bbe66fa91f047be80ce76ce2b6d3fe763f13a20a5a9aa4599cdebb20f8f681a2945ae23135060d30101e89332db49b8149b0c97beeef85df04179fdaf778291cf29668c09300f3de4a2d18666c60863113212ed3af9a8dc23bae8acb38bac8cc807103e79400ec0890ece1e0e24c35af928f0de2abacd65a8bb12c837e8289dec39410b7bd05a9808938be0c3d420f368ecfd78067b095fd75c179fb1708a7dc909ec1930d0390c9e18add51c6171b5540c85acacdcdd1abde044fb04a351df6dc3076ace7030ecde7624f2e5cd6d1a46929d0dc087ae57bdca72ec20bc0f2b6a2a41ee892044c2e5faa944a71b1c4a9ce11a4f74ac2626d6497c420c27d16a88284e972fe049f1669c8e6aee10cb288a0ccb9c7b93a32f80c25f465130bfc1b444b93831f0141163e327f3062ab2bb1809d7c474a9b1d1b997c25966f9c26995853ed4d6e06896dc043f88fc89f9a01767e0c214898dc9743b74eb355a3f5efcd7917b5ba068e7df9e1fe376207133a0eabb2c5ebc720ab1c61acc96c0dd9d9420a3322d80622b6662abf5f614a176d90402a8931abbc7cc5252c1bc68330970ab4407c36000b83571cc9d04b49370bf25427f0edf3767f85d847f6ae215589dd6c760bbc0450b42e6f248879fd262c70f273b9b5c9db6c9bbf0e7d43d9de9d7b6ffd7bfe01903061c561bf2e1d49f088aa110a0948480ab636970640cda437aee045c34604560fe54ccf1b2cf794490c5fb87c442b7766b75872ad647ede59c02a3f862e0407f321d3defc2e875f29abdbdd3470d750f26b10481a8dbc982d2c3b88c80202d2dd3776bb2224cef314be21e73bb383f7cfbe848e2f42d99c10e064bb281b01479f1346b27c42b383535cdc92d1637a5dfdb1594eb472e6c03fa51309cc80014ed4529696707eb21ce521875b0406681bf6f6a98bd6d68744943d166f13d306d6f8f43c597e88cf92e353385ed766f325418396809c2358904ce093a5e3e1074973781c09f45f2fbf37c3bb7687475155411dbfb9471179335a2bfa7035e801dac33e0ed066de0b2a41b2f4783392e1afaaec2b77906c5c9e2d0f753e1a3b06767280c550be06bc1586d6d40b152b0c41295d406739dfb3e87efccaccfb1704fecb55bbd2bee92b5f80cb615a284d27813b3a6d99d70e1fd35f2222d653be02eabfe796c9c65c494efae2862373fc414a30d6318be7c54df8c9cb35b30a62056bae3c1e48157f3360bd64a8dc274741c37d050571c1feafd7fdebbd9373130268898acffb74a0a1ed22834057eb7a110106f526fec08a0e7aaf52a53098e60609895558d1722c94cd86714a15fd8a7def5a645265645932e290a6a215b68507038b1f68e77e1e66fb561e46f9e60df15598d35387881f30f1f6a76f9cdd2e02b0ddca69f4f80c95c72c4ad0d5576a3a2d2a96274da5b9512936424ff66550052dbc300c4e1c69d565bf1b9d761c7213be2f64fa8b19fa4b25c00dc0a31c5f0480d9e13a8b672d90fe65a7c10dc5e42b4ae5890129e289a3e4b3c28063bd0e023acd1a0dc12402af2127e5520e570796065280a2ed96ade9678ef06e644c41001c76d19cdc1005af5d3fe1e4a8f5b26bf9cc61bc1a948571ec99ad3f7e994b05447d5ce22b2eb812f5c426c0251ef28b1b91a291ef7e9beba0b8edc93db8d702f0e5f2f3c0504d74adc97a36d34dfefaed1c198267b061f789f20d51c3c68b03ff485efd5de4200614cd78700627bb23aaf2a365facdb9049ebc22af5d5dc407b65d0e66e1a78a8e3356d8b509456301ae1c0f4a6e8bbcf631a13d37bea59b0603688946d29d4f59e9e0f559408723eb610dd740033938b10ee5a45ddc928f01291b98df5d59b7654a3abeaea56a68bf30e99ebfe30ba74f71f646d73ebf93076574bc3b1d25fb16b21682d53d6ca9eca758ed01db467eb1be799e0969e4210481934ab198827310aa873fac1bf3b47119d4c0c5d24f356fd7cf6033c618fe06b4ebe1e686a871aaa55040d6cc7339d41f17e898bda283dbf58cada9353e3c06efe19eb77cc042f4d7b7acb4d7b4968b184ee115328454397e772cff4aa88800c7691e176e294e06c679bbcd18108765fbbea53c0572f34c9d3dcd13878ba6068f285f9b6fff872e80a932baefddbf48d42fce7db64489d2b99c8387eb002205d5d6f6a551f7aa08cd9a84534e369282fb632e68e84cd25bee19e84261df490051f725953cf9877bf8919bca03dd401e565b7b3df0672ade66d47dd58f5dfe073b362fe76f1b77cbe9e4701e19a97452ec713c48ffe452c510b2b9977edaf6002c4128fd623b6ed5e71210d7773c8b59033380cd9d843f8f662ee24d4052020694734badc20b0b31e7128265c4549a00aae28508a60f769b7c815785c0f9ab022dfa8121874be15f8b67ff650ce7fad406def58c6a04b6d766151ac5278a4c07ed36f459425cddb420e14e1991ca45ccdbedc1b8ec7e6fff16f4ed8349244f032327fe73f1c3f586d61eaeccffd6f883c9923a903a91d8c00bb90d474947a7046400e281f2455df91faa047eef937dc1b0c5350d9894bd117cf2a3324a46bc0259f54c292da410234848432a5ab02cdc0ccb3f6fbcd055706a5ddfcab46fae03ab0cbd36c3aaea6a14ed773c415b740c653a79648b6e795ff506708b57e9130031f26aee50bb73cbaac31e45facfd6308a2f90495b24510c94bd9706e6fc3105ab816ef22777d39493eb1a8f02153fc7ff1925015de4326aba966a72e031e503eca1edab5dacca0466d6948084c8689be463ae95cbffd906ee0b610991e8bd02f5d79eb14184028c9940e9123d31611b176c42784e2c35fd331b731270171b058622a205dd674c2a6b22a0a8aaf2145c457d688d2366870eae4ea6adb695240482be1b589b46536bc4f85f8b9099f6108263b763526b2df4fe4335786ebdaa05742f7543426877e224429c20a960f13d892970a94b99982710282efc6cd05707bd18332bcd8606dc37c0b9d226aa328e9d9cff739d7125d4c1cc9198f2cd5b05b2f9eeeeda9605083f37e2d554d5204e9f261f15104c143a55f75770ebc6ea01f35b989c56698aedd27783f6688eabf8feb4dfd667b9e63afbbd0a4bff11bf0396e2bc1a6bda29e25ecc0845c5cfe75ecd78167322c6a175110119d18d402f03b447b43c69ea2a75efdade8a9010e2cee14be2d195e24e791517822d1cf4d404744a9ba65c20c5830e5215a4cab7c0e3e714d564160eb3a0e79e72cd094b2d0152ee06b15f7a840dd232f8fba80a7d72bc411727baafcf4c3778a1465434200400070ab1cd679e9af0ee3f57083a608833cdaf8dd6b9e436809e71fa82b01a07f315205efd9e7cab1b6918598bff62510d67a2f31630e81d59a5b3a33a56f003ad622d2fee42da8ada863aea3e20697ab1dc27d8c58b0ad745af9119825f00048282d01aba96d029d8c131c34e6f249155aa575b96e7c2dd8e4802119fa6a200c7b20d80c3d9a02d3142953d7faeb756667dbc980f046eff616982ffc117db0767a21b198ae6bb8bcb09b4afb9821a4db79ece95fb09e9b7c9ba569fdf525a00f0160f0c4e87013dcbc3325bd58140894a5bafed2f7e23d0cb7565183bdf150413f5e508c8d576c0680fbd450f575b5d5c92f9d1998ed9da0783fc4da6ef0e0447f5b28bf180aee45621145b4be4e9fa0fdb223ecaa6544658e6933304bd0402242afd011295ecd3803edf1ca6d5d67e839de4a1076521181dc2cbd273d83105e5d8a78bfd3ab64168301473c006b9cfafa46269afc95164f2cbf85984d42f049cae3decb66eeaafcd04019dd3c1dba2f2e62f4039848c3aa239bbb0a61bc30140d4d91be692b38b6f4626dfc936baf9ee26552cdca0481c4b138bdaee336703dd6d22507a9ecfd175932527b42ff2b4fdb0433fe92bf2f1e8b6e0aa14bc0402df248083fb4d6fbf862290f88bcafc2541897d79b019782933df1f9d65835b068483a043ae286e8b3b97059990ace918340a3c49f3edf36b0c32396b0fd7f207fcb36f3774f13a0264c4ea0e98cea8dbcfb267a18f50f1c643f2708c2a7a3c0120a2282d79aa03a8a7bfed8d9553b08e0a8efbeec2269ef798a29cc362aa3a04e936f4d6691f6fc9393bbf972cde917fc0503ec94e53c1e78c98c7bb39817301f84442eae0741fecd99c0b3f728b0f82419076a83a727db46842d6e05bac7e0754835ad19581adcc2897742e94df0083108446db8ab37e7e6661e8ee2210f803dea853bcb3b7843c1ae9c97a696998552f07f89dfeb84075d7a3f30f5b446e060a8459ae2f2f08c0927e85b188a2b54e5eb9f2876db0670f5fd0fd26898cdd02d0d8b6365f383090aa2c2be4a25113daf8019a814483620cb46958d07fe36201baf7b1d2824359c0e7de9a9a84eca31eec6f5321014df7e68a80a226ac49fb06cbb4e06b169d85bab08632135fec65f14d9f7754c29114035f9ad2e0c95c6f01db9946fda2455443832fdf3ef7fa781aa9153c0085ed39ba500e86dab8a9d7017321a0dfebb7af366ed1eeb08668d4bc1f9fa9e9f5ccab84bc14ffd49afa710508670f9a962a8df0d43a579d1152d97fa710cedbed774520e4dc5c648cc07706de5ada5162b861d4be2dc35b73faf23b8a114640ea57131662a0a6e36b0589047eaa3a3c2bbd6439bb5faf0ee5eb143daf5b476b2a20d25a39a94e33b06798020f8f1584b3826efb9d92c684eea759a7ec70a2453cce16f15e8f5e45ae7253068c22c0487befe8a81dc2fb1d340d85e279e3849c6b57a2c52e6b0cf5f2064c036983a6e498dc6a9fbaee1a2b06ad8dd23bd521c3e3a463df913868c051d788026bf5bf4bddcb359b755363b11850021a0e26ffe40455ecbc7ca856ac2b27b706f20e70a1ed2225f5f82a4e029a4a38096e1da4434ba5f411030d999c63706703ffdb810d07e701af9d04cde95556ce82862b4927198bd387871ecd3c6c0d7d01c7d13f26cf05895c9fa388d7e50357f4a739438582ead0b1639b9b387909b906879a498daad257e11066bdf92466e57c0e8860db67433d22ea2e08e031d2fe027362dad21cc1d75ded7a1931ce8074127c4f196c903061f41b8f5041d7cf660650f3e26a485a649e5a4f2d54e5a961b3101887f953f1fb6fc6335dd0c0fae7063a945222fd8da08296859ad5adb71d6fdeb74b72c9274a069e2dd80ecffcb106c94f13645800ce71d3194d641e6552c0059f4d3743fe9178d08833efbd757303b9b1d5ebdca7b53e8008e146476b1d79ea7de18863357058e921cb72d3138b00dd2658a7e61407e8e872a26771065315fa7aced945343075b8fce0d360557c03f60e15a5adc5ed274b0c1dc693464aec377667ddc3f580ed50e09e6b4ae69205c169ba8fe33697a7324564dd11cb50079cfdf1a7894558f94a86a2bba02573026cee4c51efdcbc600f6d010ec1fb44c9df6a7447443ed1704f006daeed0a0a01bdcb77c9fec8f1184e340dcba5abf23da1a462c6f8ea46c338aea2e214802d069ad59c4a846a670c4414e9d8b2d775fc30eeada5a5202b03b303c6cc04424000bfbfd92bf07fb49c8f6d8f3d32423e252cef6cbfc3d8f5e8389e69f7f1d50104e0a4b42d15fa97d71c444c173910879f7053bdf8f621e8097c3bb29533de1703e88871bd27b9690a6180dcf8aadf7a2e2f2312873366836e32166c0683ea1204e425eafce8b95f7990c33c856099416fb0adaa40e0f46ecd4afa0126c640e000309c0ca65626387c9289ce9b75f7b3255bb4fee19669ac946a3ef28155017403713c51c17182ae0cb3769bd09a849c85c0c862150fe537a3d2b6e9d656f90c03a1a91584f61f2dc68d33b960b21247d6165a086ab451c9529e9bd3a96d758c005afba54f924971098ef29c938979cda11ec0bebdb361f87d3329028a10ac7d001067271c9f42d00acb12dc947f265806c953ba4b5f89a2e322d1c50fd9484c0157470d316ef066fa85f76740204256397cd90d64493cdfec970afa46f62d2302f4052cee1653fffa866a58ddb299c1eaeb15f45e3be177da9ed95d7f0d5eea050f2ebcb1aeae91c7f0c7c453cf79ac804ca46235cfa417d0bb6ed86d5869640392704361c8aff6eef41c148c15bec467f3db60963074cc8f94cdb58d82c9f70470f313b45d61d8195f187a1cf80182071ac91876c50de51e64db91e0f16754075ed0e177e3f95a86c8131d17f4dda7ae7bed12ea8c12d767bbf32da54dabfa06dc88a2f73640c7bde156751230bdb209c0a1ee21da664ede044a79f57ad984010f31b95fa47f507ffc6da893b4b88ce5b16ff679186fd6e71770cddbcf414f04a7fecbdc9980a5f84e245aabaca6bf39523b1e2b253ee4eca214c7621f964d00b132be2e17bc05b25dd1ed5c256d6933efa0074953b820446fdb48c90d8f1800b7bdbbb7c52d50814818fec3269b73cbd01638db07ad4a250721c533653b15071c8fdbea64afcfea4530f16d71283ab35b7f3b18bcfa33173e050ef56be7a500004107450187c0f764c082929c806dad7e8f50795d51cf8ac2b1e36c8c377b0724a9879726e420d6405c5885d92e192165e4d8697f7bab1f46b2d404f9d4c80428147582a817137c97be2bbb578b6b3dba79c01419107121641180f13d46c2002973f737a9d56c2a3ba571c4fb90b1cadaa2d5efb4903e3f62c79f681470550505bb45a037c6d4470149b79c1e3177bd1d862908b4c3f35c737042d88c0aed0390959ded4d0300a92c691ced47366258bfb5983264dcbefe25be42f7f37bb1016f374c8bf39a4e1146cf36eb030a13f8cc1d9604fbc08c6f71ec5dd13842430018e771a2a417485d732e4f05b1bb4f907a2c338b8dc59e18ac252dd66c0a9007b7efbbca68cf4db91ef48354dbc6f1c7f0b5ea78aa26be155bc3e500590b2b0241a18631cf5d655a8c8013a5f6d5026fdb4f25296e68e07799a8fdd1c1bba602d4bcf495e36346a1c4ed666cc62bf75e0155bf715ed6bd355a372504f5436801b2e4ba3c1e22c0b6cfd112bcff33e8aa9adf7688495b167e7eb756bf932fda013a1272fb90062eaa84cb3a95450847c96bc5dad5dc9e622ae4fd912a2b60ad03bdda4dce9e2449ce4c60fd13819cb51623ef034c65e868f4212c8a5b65bf6f075d939cfcac2c4e56387ff2b1f0811d0c8602af6cb71400bb6826ed7c66a61607a6ae1ad15e923315137fe6d8ed837938d61c3e26c2680db34289710a2c19ef02acda10818c8cc253a4b331337894e7c21d8709e48fa36184e1836a308d4f5403d4af5cd6ec56986765ade7823e433d6a2bfbffddc4c6aba228cdb6a4c54b3305ffeb0d8ff2adedf9960d714d3c2993fcb368d157164afa5ee1443f52bbc4df00a4fc9f2f33db04b1f97aff0d01ea1b70dacc839a481a08202b0c62cf7337620138846f72b4b586d5f11d1f667b3e0c8fa0ee80975bf534f654790ebdb95bfb0535a4894b90eb6226a096563d770a2168b6a3e482e1934500488611edcde6af0481f6be46397648d62f23af4d3bf336103d6a9ae614597f98d664df665648cf020445f134c210170bbb7ca7772d41fdd07c962f3b28e36701d9c838b819c76701ade6b44999368d9099b11c685975a38f13486b87ba08ec0b11e85d42290afe029cc8078e35c5a4794bb9566dd1cb2abf4ae7e735acc25e54af40416f6f6f98070d955b9a28abdb1fb77dd95b68d91d539de938b2d8c43b8f0302a120515c1600e222e8fd5361d183321b8af98647195f14e842df3f74c7314c615342dc26e907be464d69ec603ff0b6c72a5a9836fdf2184d4e775340896169f0244ce542a2077ab15fc41e30ef7a2480509f545f102f6d163e29966b8239b46bb6d2b46bcf02ffb23622eb7053252953e94cfd8cf51ea8b5b935c753c112e2f378badd05090126be728fff0b7d2ef2ff70c2c6e73da657f9cd37b2d4b88c253c1aa85b7ae7031de1beec59b2384e419ff18e617c3239ad9cc74ec5bc0ce680964c5fd1c22405a06db9cf91110741d698f4d0f0a2c34817c1264be63fef01525877939ad6c6068f11f7a76e45e99cdfd3fad6dc5332f75899150d0879951f9ce9a9455e5b08020f660f3cb789e76a38caa8c9cb9c4cf7b0a909c3998c152d5f1388410ca2970495dcc9e384b53c84a306e46e6ae8b97d94b100fe0196801bda5a3ec015362e0415a725cb0d1d35460aea7cbdc9204c6951ebb8998db963127a94acf2d91b9b014592ae1ac43286e09f6dcb80716083c51d09f2a127fe64dbdc4258b41075df03f5b23745bd70f99a4b09f5ded83a30599b6c5016a22a7372946f92acc26e2a0401156eb4e82d782c1f7b751993649064c1453f2a5004e414234dfe8d72fe6606f3336f42f72177d01eb593c217e11414d7550722d93073844840a263f9149a054b3c223f9dd2702f9ee1465cea873d125ee8d472d7927f2acea1dc5c8b1aeb079b7594c901513f4427be77de50dc2f9076b9c4f32f22c414495a1d88492d8104f2469455f585cbe669791396ac3452943cf696b702409e060e4e57f5386afe014846acf6507580478695195c2b9f849623e0ea3e5e3b079fd84a949220dd1f002b74016280b186b4d477eec72d007b66fbebe69973fbbafa3da1d2f11bfa5800490086a7e34b66c4e325faf2afb1a0b4b21db8a151c477b0d6a52671c5bf6b065df4eaaafb13bd401ec7c72eb62c05ef5cc3669cfcac0b3a8e6f7644a51a110622e4b58039600a559bf12f018b28f0d919cba43ef2e17dd60728c59dc93208075539df43863258fd161dcf67404fbd28dabf2a5ff481d5f4cd7fa79ac2a8d5051d377cdfa6c387fed5bc44350f8103586a41d4b3ba742650dc20d34c04a79d02a60ecd216d449be907839800ac9ea1371c153cc1df3d4bd7886b04082af8eb07578307a63bba0b54bfcd3656ca8e969f7c752364019faec7af5a12d4aa54ad0009f9772834db66be257500cc803c31747b3619e1348fba2c5414176b8a8d7c015f86b09c96bafdf6ee0348cacd2d18da8875d31ff95d1e6e50cbda0aaf324f0325afc698face3a2707b930b68e7d2522db97f2b2d4d992848d80028a2c7f960514f24470f93fcd0750a11775c4d80bddc944623203608bbfd1ef3d67e9551b07adcc6f4f4ade3075e339660f02d91c4b2fff905f36aa57a433e13bef3cb224046cd083f56495ac7568105d489380ff0596219cf973b7be14eab4420e8641c30291f4184cd413395a9f2ec0ff9583b3e981652654456cdc03d59f42738371fe01677ecfc19379cc1d8357314c37a2f6af502b81e9c87f5186392e87700d93c403d465f368a6de99bf6710d9580d83439fef8c0f2d551ad17f89678762a94c5305b3e23d5be2d703ebe1399c9aec92eccd3f6e6aa741823de4f84b53c78fb9b0058e3181061a2ab8f9ba6726d78592ec800c3ef173d3864724af40373859e8ff0554676467317f1efeb23ffae3380e5492f80ff925f60875953b07235424ba69051b3a1b668e61fecc2dbf2919a355ace19bb99fa5d042f616c76e221b7fe8c703e5e0bd03536e388b4638e33c23e38a8790aec223aa42f5d39b215f2e74cfaf07d5a319e1e1d79b0cb755e3f102f8390cf0c4f64fbfe90a685c62bf4a7b86750185d3426c06fdb9dc0117e9455d778ef9d528ef54d05afdc401197ae25448290606b953a0b0836117a48ea8e8db4da15b38d17515ff0fb500011c26e8bc75df05254893713cb2c484d1287c812502995ed2ee8b762a1000e0de746f29b0fa16067a8cbe2cb539e385a5bcdbdba4ef44aa3332049147c9a87387dec51c33b7bc070c55d5aaff116903fc18a3e4c9979f715d00a35214901335fad6f6bde8b2ae012165f8576f436ac9ededc66cebb0982e4a0ec8703c934bdd2ace2a0c4aca760070659c620a7e5e2f78a0805440f5cdca2613b84b7dc2dc583990b7db5931be055a483681e5c4d144dcbf2c28b63232c0388875c265df098259cc1ca1f9018e065dc01633e92d66571f05f071864c6e77cfe2d8622cf37f5e8e3942c4b5114906e06fd6a9bfb8b73abec8af9ab979c13f03f1bb163f47333717b7586db6b55a05a15967bade5caef673b1380e3aed251259c1a3ac1e325d12545d55aaa9689300b6b1d745b41c726314a445865fcbbd0f4785c5389c6ea5f068d8d40789677e045735387f01c22309cd760b5484245467528a589da1337c7d1beddb172d7a34017e1fbd30a2e5f09086d3049fece441b92d080f25c84c9660107837880abb2800235ebf8e8dee4239bbc890517e8343d2bedd1f2e96b52e16c0ede8258792390423ce18c318dc93fe20dac3b5e47b7ee167a0614ac4ea3a2ec2a1a22745a4b903b427630f20d315e9a3e6d99719c5e8013f5cd64dfa1032db10cbec91b2b8f1019fb85b60acda026cd94bb51f7af5640dfc1cc3581869627b28a07a207ac4fd01cdc1ba831c0540ff75b1df070da879f68551c01acb051441a3c57e46e16dd80787b24a3c27311e86f72dbd4d92b133f30a74607487d898a337fa8a7728de920485bd62a0cc36ff60af5bf65f929593c5df048ade479ee55a05756dfe34ce3804466a24ba19e8bc132db0bca0bb22563fa4efae4ded51c60647ff595aa3bf260061defdf0c2aedf109621b68f0862188177be0cd4ae5c23d8e4cab4475fb58a03bce2ed8beed936d847791b9358ad8536dd6947c30d14855ed1ab0a2a0657bb0284663a5b7f382fa3502d9371b6586760d40875c01004d0bacbd2a35cde8b6f07e3d48e95e68593116ef665b14479206f77c9f2b2b9fa629b425496fdbb0068008ae18c1192fc2592adbad7dc75f3901965435d8c30b57d1462561790ac49c90228a5ad4cc5bffbb69bf1bf745c05816966cb8b2eccdb20817e54a1e325d90407c9b075605f902d5000b28f08757fe8fd7d42dca2e56af4d9c8025a05bd3267014c8be82fe1cdad14033991f444751fbdc678212ab2010abe933c9a4296de4e07c76c4adbfea2f8f34d4204cb88b58adf2ce5ee1f55ba75cc4f53c1c7741366023e86a3adf75cf6f2c20fa24f429723d008cd0b0da22480c2e81f11211294040756d274ac2fba5790fd8b097438ee70a3ad1f4d48b8e5a13de9a18a8e9edd880710f25b9896d5bba10a1fe6c1c0e47f8dddb00c569da6b8c26ef9ff2fc9025604465a9531b2f43f8a0e93d73e5fff1f58f856ed90b0cab9e59b0887ac3f98ea03ff55f76f3ceeb661bd96e49426e33f11837222f50412cccb13be3feb1ede0e06a1874f15d098ece4c5b5b1ac1570c55425c2f9d467d7625861e4bfb71b4158074a8e0522adda3d608905a68443d02b0f0a2d8330465902292130ec63f8d15204277ffcee62e22f0d80b0e90a71f35f12d68b930df5f360af91f361f12718b70732fc3e6b6a63e1eb162a459f8fce9fd086905b44b905f99b1345e173c88f6e003c2d5db13e6eae8ecb2c9afb333a3b47f633592dfe3cd6bd3552f18a5ea7da023b42311eacdea110749d0c47e8e8c8d1a07f24ec54591ea8d11acc9574122205451357a8d8b8e1cf597b8779f91bc1f04b98238b45f4c6b8748beea6fac0770612fe4866f96be460cedb44a7303a35a8db6e5bba7483763875ef3aa9bf2fb30370bfb92ae5259c78faf2b84b992baa5b7704f2ac47187407b91d864183054e07ba58ae6e74293b49a72097a4b8ec9d192dbeafcf86038824201403ed60dd74001912c295a463cbcc6ecb4f508dc3c3a178a77d3b6fa2fdac08621997ee696006f92b1eb9a082871764bc4bdd123cc3179ee06c65e4e01edb8de71521559f1506eb8cedc7ae3e296158639026224908b0e1c701c81e751f4cc178c503bc7a2302390e7821673181e29c9ec2f6cc3460c5d9698a5f787d13ee522b7858a874f30408defd137ca9b430662a84bb16ed9cbb345fa9de774b3bbc70762dd8c70ca9001e1bd8b576eb4586267ffdd1fb2d2fcfe024b25bcaeb8d755ebc9f53431b1804dec65e3d6cb81c671d134bea9a7df202eee4b0c32618e003c7e43391da075104401fabdf08241eb08fc18c737a0ed8a393f1aab9911a6260198b88d8668bb106dd6d2829886d7aeeeab1eeb6e6b96ee3c9263757135a76e79e593baaf8e48303635d3fb833084a6c1d09381a916bdfc783502177997d3506b0fec6024d89b2007e293fe37b451d1c5a20a4111685dd8a89b8325a559c25e228f38acdcc2b4a0023ac96ea6811234c74dc1d9415268b414c970a0137af72e10cd74bed568ed902d8500bb11312dcd1ee145bbe8687b3438632a076bd31e3f00cf5f1a3abec2501f5e673177bb3a1de6442dc16ae241fe08b43d4cfcf300cfe87038fd214513a05580868a3775573061d34d45ef8877e88758a0a91238385ebcf969d090aa73604a343f5275db72c9948326aa8ae0638a784cb93df69ac36d63673209c6f223e02a48c52e6933279e81050ba3bc165b803a5e64cd80bcd9fd2e15ad72c54007602b3339ac3aa7cbda10e3a3bb433330224ed263b15434f1cce2926a38c6689370558013db872bb2cd1d9d00b4606d7c72567d7973272a3576410f10abef72ff405a78b25256b1def90bdedaebb27c1b58398a393cdb871c46d33bdcc48e128de0288d33460018443e3cea35687496bf6a8b8ca47344e6c1dfc9a5a0c5352bd7404f00741d64cec95488ea894cecc6414bb1fe2a6eeac37a7206262ae4b5fcf8701ace83c44cec1c3a5ca19d3029afee7123e0ff19d869d68c5d91f04ee927ade0629844f27800d5cea67f18e5b3317e1cd66cbd9c17e4fb28117fe3adf2aa3e30357f3d0f78958588f63354b1193007814a73f5768b7808d72fc0854515d98410791aaeacd4ba84539978f8ac15d982ff15e7344fd0da496f0084f392f20dcc401e9b1ff49c3fc11d0077b0647b61c19e5f4e225edc83f3fcd796efdc43e0edd0018d7daace059e681eef4cf32da3689dabc2f64009c392d81bb60c9a5a4a37c079f331dc3c00e1d49e33ba0bb42eb768d3f37ec77f03c5e469e9c2da861f97102d12f37b369fa655ce6bd9f487d5896e81cd75461b2951a5c9e2ab912eb38d204f6c119c3b2ccb52548784f0b5272116b9bd7c66b619391109a4f4fafd32ff001dd2d4f6694d7e3e9bdd8f657344e3e0555c11a74c36b3ff609cbb8075d983f01724c7c595d63450b179c9852669adc2dcf8d1c4337df64575855e24cd500930449a402b73014ed69ae09c084c827821a88ed3aa7251744f0f111f735fad5f6077f000729476f6ecc862976a687ab8874279145a29805d4b6d3bc3f869f974205e6dc13c4b9d8ae55edb40cc7b2117cb791eda1871724f4d1954d7cf57c2ad6011c2fc543f2848b09888b689a4c0c64860a9ae0dbae74e0d9a966e17427342e01b2fb57cb81b652ab123a2ee60a33e4ad73c997214d0989b8b70cafd76f00c0062f03ecafd8ac1fdcc5e85f773ec56aef207eb3ded186412532c5b331f3644401bc0d49bacccd110996f1c26b453b98a698c116d29691ba388f86809731cfdd03d985261e46d329e894f34804729a1ec5e06e231ed9aa46167c961e6dc7e08f0355880c17950743a769d383f5e83d1847605dc7f99a8a68786f971b63bf493e00fd602dd1c0c73d48a1997285d1fe1bfadbcf0815620a5634ea1fa33ad5d31c0599eb7837e627e555fba67c8c7e0912baa8d02718d9349e51856007fc3d353e02c16fe28b18cb40cd15316af86e778cee482d763161a4c547e6bde923d3ee6a027e15c5ffcb5a864e9006e723031328992d7be05ca0e7370a038f846b165f1b068b26c77a221f59296284dcdc35dd7c66bff4d9bdb6f529eef1450de0689423055903db1aae29c995d9bbe861061dde7cef79ce56fbaeb0bf961c2ce3f9383a032ba39d3c461e09dbbf6ed9c577737828b4ef3080d7a716d2c27628e427d11201bcf6b29b0ca04bd523ea5d433828833df3f7b41c8409a53998df31abe3669103905f1d3fe46e97534dddde1b35a98b26e52d49561917aedc51c1835cdc3f85012a10c77dabd7bc0d6909295270c08ee6c77e37b114a6591c8121e9008926de02275a935c75a3a4054f3280a43f528ea22a9fd9561628188787ced0fe792ddd0707c4907ac55ede7f01788f70f4a546b80ede6980b72200a14102383370847205c7f9e4e9a3a1c21347b6453b3a32f3f778c1ac0343a19986898e211f7ab8c601a7736be1db9fd906a4689d0f6de9a84417353ef5a67c6906de7dd94af1ea14070fdc7872492862650b7125ed8fde1126e0a7e95848dce5d2d0989db57c612b068dc8b2cdbc188d2709b5ab388442e74e4cbcf8af3a6ba5b7c4aae030ded89a0767a44f23c646f2456763e5ac8da080a86744d269a4a1b71dfbfb9860ca176103b29ae72eae86247407acdace12f78407a088933787dc9be89b8bcedc6fc4b50417d4ba870e3f582f8f2b57915707a835cf2b6a36d6ea9adc9ff048a1de90b10602ec80832f85f5661b7da22e5b36e84d04e095d0f0aafa624aa3134473672d05add28768f1b905ce0e8dc7557079f7cdc545dfe6bd902ddbf24b8938cb9e5e0563ce62204e649dcd5173f209633fc03ae80e50424088225daed972645c730c001525359e2cabad5d0b84633baa7a492fd6d6fe632e6866e7adf4eb79e3d53806268522b257e5e9dd6778c2e036b6f791accd304ab423253634692646457b8102a6a41dfe6b6e5e0bf349f42ecdaf74ecd875d90bebc9cf57161725c274d45400d38896482b6905f9605b2b749212e098266fbabb2f893526861c168362cf7307635289ec96cba0f1c312b33eb601b42506cb3e3653a53ac7bdb00606625e4c03cbc8198d98a8874cf8a653914fb07ee65331d5b764fd2b8f5f23b633955e97048dacd3341bd03339c9a42d0fedf08bcdf5dbcb66c35a8b5365f38734f52e7502c4cd7afa3618453956e71f9a69815736f23c7b50b550644f2e3292fce0d331029d6ec3251f53e09c3f8e6aa9861ca3bade6180b40d2023c64dc2d4bb77199e06cd3dd93e35455d514bab2c53bd707b2880a30f0dccd5873aae79ba8c23fc64071e9dda0b6dfe9317c777ceaef5d95b5e151d0bbb606079fecb22e80d54ea330246142c6eea0df97e01ed9002fc2a93fcd204b4ae6fab3dc358bf3995d3b2b80027611c0c0dcc71740c5f00821f0546a6ee87f253d65deb88affda3c86c9da30558e97ca0c790cf4f89b4e54b38875d541a482aa1681b2b438eae47d21e0b7f06c6c15f8f440b3b57b11304f497387d74d6ce8bd620f12db8fa559567248e40055dbf8433c459f36999c9f181943bb67057c692b5dedac163f3eb625f45e11a040676a97599adba557133325bcee62f256a1c8b121aad2adf5d090a65ad579a03e846c56db52545241011e4ad855faca2d5d4fac71a3600814005094867e9a305d875940172c637a04e636dead5398d7148f913be226c379abe8a2f64e3b8ec0292b7c7cbfe2e86f8e11ab20810b7ed55cd32ac492b68e9c1b3f46b1ba5b00b053beb7c027c8a4faadb4a3bb65b1716607088f77e694aa27c6dfbc232405214054e367c308bb6eb5f6582badd6da91e982c7c8acc7cffc0613ab759603b197501f83851598b45e1084265ed47c98e0f9541777b3a8ee910ecf3f655debfd8f7047775f59e50c9910ef8bdd253292fbfcceb92a3815a099f56509e5125d400a901d819b814d7edb47785e03201768eb09b5c9550a576bbd1c94947f9b327ddd90530cb9153f90479583d5ca74bfe90711dcb1ac5b417fbff58f13f9ab13d185a057760ef847dedcbf7b1cc7d686a51197144b05b125b5ee7a08f0cad52416bb1025505080489772f2bad4c90ed0e9fa8bbe601861d6c69011a12287fad5f18d807bef46aa97f4420fa7304dbd635649d3049b3c684d49c97eefb2d5e841a117204690c4e681f2f7fc28b862081cf8f3478af6f323794d56e7c8a1099a3aca6c3048adfdfae587ba1b7b3755e77aa984096e870548fc8bc4442eb68388c72e2bc04639890ab2309e15c2491ae1bb759fc5de98b3c07d0942b4cc23bf0e7a2dbc403a2243145b8cdc592977a9549615fcf5c01cb749016dee2e60ddea3baa0f6de07bf7efd198033903c7818002a17ce13694e5bead354b9433001031c7ce56f4d0560b63d890b3426b01b097f568b2153ef5b4806f8d284083e06930e5e415b4b06a01fdcb66fecaba91cb581d2bc24bd871055b3a73e414ce3e08f623e6779e602ad5cbfd8edaefd12fac43530582cb1626c22f2ba7aeec2d737853fd51feff403943e2e6a5d8b6bb2ca912b2a62ae40bc9e3d7789b6c28013c947fe44e48dee06eb7a273f6a95a2c85ffad16d28ef0b72714fefa6fd3de5767c4ef3eec38feb016239ea4731510a79fd12efdeb978da34d2db617fbe77344f915f6dc528c59b00a5f277883b61da7ad0f510c9c04e48d2eb9363e4de0a0a72e49deefee08fc006d8086c46afb441e492840d64bdd9142c2317b144a93a38fd495cc091695e5907b56412375696d96e4945a2851aecd1aa315c2d01670f6dcb5f278c91f5c8f705112dc610a5d322934e438a94573d5812de78976868a3e2459ed6d3b2f183ca00fb46c968f2f0cdb94f3008d4612b73eeba6bb785b6ec5ca22f615aed88600305b7f3854651b488fbfbab33c9263de339528e07a223a975dcc79319955d55c60253cc9193db3536ef004c54e244da6e1aaf0ab67ec9721641316b6fe59c6f5d0705b9ec9313b1f626bee0ba671dd8ed1fd73552f526384401d2f65dac7eca200621776e926dc5f153b2638ee253bc056f9658f90c578e7eedfdd44d492fc23407939d6175cc015a9f24ae79d74f108e4957cedfd0b71627ca2c969e60128b8a0678646fba26d1f3cbacf1e6c0ba1190120f4960b5ae959337d2700cdc4a7aad03a1c49e04e187349848ed764de173093deebceaf138bdf89d2d1f15db61b31006c94621eb111b2a14b4e96b3fe6aaf78f9a0b13357a4d168721dd27f177ec3904e7f6574cb25bd209944c2d79737ac5fc50426ac5ca5253056772e25c71fcc30688265b470acd697cdbd8c2e89ce3116d4d89c4d6d4555c4b0c83598628b6ee01746187ad60ba115e58f1fee41823d687038844202c95ac4e2bc89ab73e1ff60344bb79895ce09729bfacc9948902a09b148e8e33270d064d19b934497c8652013ef8329d975181a0ce3291708ffcd49bbb16e04de2748f505422bdaa9c5ab9028efc555b48fecd4d9c4af8f79f74510349d0a612ebcdcdc9034df304b95c110324a5b92b2e6a3829a099197651957916cb32eea629fb4206e3a1e2d6d4faf203d5a702fcb7cf2af54bbafbc2ef0b85dba763fd1dbb3ae30b4942041fdc801300d63fde4dbe8dfc68011025fd40669c796bca22c91d32a3f4ef036427c448c201f4c080a1f01ad8a4d831e3c0a2e89ef0e8885a40eaa525137efc496a9e8e3805ee8caee347eb6d8cb07712ea7ce534fbdcf4301b39859b66a3078d7547668107b55fdcd3f3352c1552a2e6fa750076313a87b9171eaeb8ed21177241c329a107e6d3a1fc64552dfc8c62502005a63c3fa69b4a7a180326f140c9d29a3b7ce703e14bc69ed2c47d6c6a17c95679d2eba953f3d496148b06e6b22c0291459cb406f47640dba1e2a4188b0e18925d8af34ded50fe56bca27f20df807bd20688cc011a9da2a75bcc1afb704303f6ebf263a588fb372e85212e854e813c18b5767402074c5e76f81e2e4dd52d81c6cf5fc34e86a0c331ac2e2e8ee3bc060bc947ba05ffa33bad59f4e3e4b1226abfb52e536872c29277bbb56eaed8d6b95b4f0cbb04bb097a9730fd47d86b84dbe3a28f96fbd61de5a17927a0c9e5d0eb43fb17ff0670d4e43a7ed042f21c4f9e705058f9ac7260081272853f10f17255c83d4f4d073c27a6aab32cc92516b73f8a9762c661645aec5e4c75dbd97d13a079c09ae2075c390d3530deaa883141798ec778c4035683998936541e5f2619d5690794bd006ec047654e7fb23309d7786aee8171299efd5a818f9da27fe442932bc3110803b85d306fdcea3e93d95af08f52a4fde89a03d713145f3c2794dc49f00bbb3a0738f860dbd651d3ba6c61365c8fa13a623f9452adac5b81b78c10d5ad02cf1d05c737d7e34b6133bccafa332df7d636afd88f13d552272c06481d83a613444d02598970809082d7ab774c1d8e43724ad4595d7398ab5fc9cd2c4e774c77609d000d7bac0ddf6ec33da8d02b7d4a95c491093396f7f737aa8c4b869c8e5c0b9f033dfe2ee270f91331dbcb8829bacb90af15b9cae6cef0e9c0e8768ba6e3ab53007e3e24f45f1e308c6deddcb9cfd84b69ff9089407cd58ae75a19419f2270d1023de6539e99ec5538bbccbaaead78566d800af6eecf0cbba95698f1abc7965703cf93efa5c412153a85dc26021e7aba56458b46ce70533bed103c22a491295703b4a8c326de72502f3912cb1a127b0f5444179c9df9d42ff2ccc9daade5c05c06d2261ac202c26b47da52197625f148fd1d4d6c12bbbea6e0820bbb482151c60586e9502fc442472f0aa1836c2a4c021dfaa2f3d20dd15a41635c781d73697901feda038787da476a266d13018acc36947b4a816aee72deb4236fa0c9e9e98101063e2d9e0628848d7fdfd38768146d5b7de2688b2aac17c13687e6295f1ab503586c453af5205141eebb022a8ac50b558c97f290d8fbe9ba4e21011b572fd903793f1d8223a08a7c291a66a35136d5ca6fd07259a688ec0ceba6c1f596433b00b1d9b65e16adeaf5035387fc4ea949a5657a3773dc3c2d3d7d42783eea9be3035c5720265f9743e7273860b8abe3bdf512e7db250585df0f880530e4dbffbb0648a023658726fe2de27842a9cdbeff62a0689b49130a56d580cde711e6c8e100cbccaf9eeed1533a67951d8899d49915b7c90a4ee214a19058974f5b4736c8002a181783e26a2f55a54336a90af4675bc771817a6d8d14f405daa8cb7683ed008fec2dc10af806bac8dae0fbcbae521695a7fb14c4e515ccc896775853e161010b8bb64a7aeb887ba2ea8aab7a57d9cc5fc9f5d4f969a1b33ce3206df54eab012651920bae5cd8270fa139f88fcb252f5249dcdbe1d8d5d1e926b3c006226f06bd6099046d947c9a6af2a84ea318eeef9034593e611844e1c72713f614650302c0b218754aee9bba9f0f54820f0fc9f8eb4bc0273dcebb3fa7b576407122b50706d1c06c2d868f14cb143c868e0f33ca9d3b7de00d0100c42870c959ed3a43072a073ac2e3f6fd9331f8cef7979ec693d273a4302bbf4230346ec26a56852403af6eb8afcbab06b7b0973fb2da05f234a8f71c678c4f1fc8cd98f25556b02e039c1dbcb76838b53de8b876bd4756faa04180397b05eb161f22224da4a05b200614a8c3d481b7ff6b6897562009120a329a23ec7d8405c2c7a8c6c49db034ed038fbab87f494d98bcec7a3d8345fdb9254cc30c1f4bfdf58d67698105a35d8007eb9ad7d1b70766a6c9192e89bed5d6a638d88133c49bad5b7fcb3d132b1b4507938efc5c83d2f212e309c4e9e0ee97517e64527c96c8e7dba95833a25542dd04c5c368c14eb3701f6264bc7352f6b6c077b76eedbc8d9296c0c708338fc5f20564c9232ca2be9aad37388bb357d72280336db89e0a364175bba11b16f581850650574758b667444a60a8b19266ca81b4cfe0022f3bc40883f220aae807ac790104cacff83f6e7ae5017a6f75ce99c22a4fedd57a2a70956d35c20ea4fd343e016b44c8bc287f67405c54b51e79c93369be43a1c6115f768e7db4572ecabc670089088ad8259b1eab3b473bb396808979ccf46fbd09ca2f9397f57df7fbddf105828d75e78a2171f3302d1c6a887d157d38788080fb4b07f144ba880210b3ac0145a17ad810ce1ad3a97196619eaa49516288e31abce0cb7d89a078a9f0009201a87d0cf8187ad3cf26c089c69eba697771abe93b0003d01103b84609c1154405ed3a5bbac6f34f4997d135edb909a889975551246a2fb380eacb78a8aed5f6059cd1c1d8fa1c04c77dc1f9f3e1ccbedce54ef05d193f859168b1b88cae4621033bb09010e42192934a28081ee84c72ba8ea7f104f77f1f944ad4888798a7f100e85faa7ab673ab54b0146ff5fbadce567dba864616a3322c41dd5790579b5b01ffa85972140f9c950119ad9acd1e687e480d1a6f29b033a1c0da15588d844d078139ab216c6483c8d6086eabf475ee811ddbf95d2b6707556afc5411a095bc04cf240de67626982be9a0f156f32c992c160b1d7bd70c064da83aae8b5304ea001cd3113d91508d1dd9c9b626ee2437ded91908e991a5f9cd82365ec42df9b205f542c2012c33d323e12b153b8c86fe11b74348f8b8a0def312b7ac3f3bba1307eab888dd501dabdd0ec8ad842cfc47cad8cbcd3eff79c3d47743416b1fcd6c00442c43c1a8ee57e5bf4283e977bf614af12aefd49bab3e0c4ece71c439ed7804aabdaa80d3c577fe0c8e5e2e3943440e0054d08b7d045044315abe7f14abc50660223f8fb0500d5ee3e32308f230c2cdfc2efb8b84df860f0ebc9c1c8cbc580455cd41f1cbda323f46030cd1037a3d6df7be09ad7a2a1efd165ef5232e708201375deb04156b449154812b3e7e82262e4df3402b4d9e58d175cc79f40b83e203e6e04fd85b7e14322a37b5255b884cb596b22ac1c0c09b678262767f239009053b728fd84518a2107ae356f01398a2bcecbb9fc563db16357f7698159540ad0589830147db793e459c8fac8384fccf141ef43c1e73bc58d3aebe99f7a583ac06c5d1293554249d5f6430010bb84b1d1953c06fdfed7d365972e752b6096f3c010bff3799eb36e715a02ccd309e27a1849eb8d7c7c4fde0579c0bb96d6c1d1e0448e3242a1f685fa2f820f9195796ba97bcc659c7c23562d8bd38e2f9c5570301ddac0b15ea6ac155623824a16fc43579aba2b3951027c92cfc009134058d5104cd75d61d7f358a5ffde5fac0b9af064ec642cff70edf81f138a4d6a3fcd1530542538624c64616fe129361393ff76d415929a93f382f02f7f3d62748d03557039d86f4c3d0b1d44228f3d5706e82cce70b8ddf6787de5eb794e626fb4483d602ad25f43185140e9628a29cb123777594a61823a89d4be4eedf9d22b5fde3c9076249ff743a78c5696b88259e9927042a1e35cc40d616bde8981b15ce4687cc0022f9fba11d3be98215543f3a98c4c449f31f30919882ed429620b07b8e2fe2053857af7413314464d9051f35d3f3e8eb1ba326e5d4ccfa7cd1bc1138eb4a7e0187c8521eab38eae77d778661b94d7a98363187b22cb9a2383553ca65d215ee035379d46573f20008275c27a56179c089e35a9804f94c4f723cec7e2b7d37ee07a4e58f8f245088a9f8265ac9d70dd909e064be6795263cc53eaac4c108121b0299e57a343101dfc9c65c2c05abcb722403104d877120c921b50e85f46e52da06e7e3573c36adb63c62a51e31a7f344a57aea565e343e71b183688294240559063fd87d8213e614a5c35f0dab6900e3ad06e119206f7d2508af6f41b0f8bd0f0310be858470cab581e9a8b1895926a38245f3c0f5aacb6f7bb9e7fd393b31f7039ddb1c21d423de60c23ea317644128c5f40f4a3c3740664b359c129bcda25602cd983e642449c7417e6e5a5639c72c42fba3c9e09627f5a919afe509acd27804a427ff7fdbe511154797cd6f32c1907ab703ee1658905d2b87eb3658b99fcd04e15508db4ea4fb501b53878da06c11f0e317083be34d20f8cf9bce4940abcf033d5e0de780947e050bf93a5e18cd6fdb66b01da6fc577c4927b711bffba90202432d96cd4c7a9cf6439f9b0f910162cd0b2f6454b7cc538c99d207e2caf056063acd5c566e867e647dac5cee47254a65d81609ec0b32f9ab58d832e9506f6106d8048102ec843075e3d63d4a8bc8c9ea9d0b3e45a0bfc6cda8267a25c9af7b068b9f132d4b974276daf3fb7a402d07ca3ab47a545804c281fe8209ec44c659071fb0c7a4a8bde2405b024a15888b253280434016cc09c4aea3bab3ef26b0e4027f1005a62b05420cbaaba8f73acd1073746a1855114c4f1c2a16ab382d47eb00755f86795f5be3d3b7965f8e39a468a3108f0b7613710c07ab672e2248c0b307b272d342542e871cddea52849359a127ac676768b496447a2dd10977d9e0fd00cbcac8d724a40511dee1fd2071f2f7f4b0ed1c4ddbc662048660a24c269ea0005d80dcc5b6c5c4c603b6006ae59f565364eb843e10dc37a8769b67d951743b029fabbed6359097bf369e4f32552d0d971069f4ffa3a36de6a1a1a8214a7f2a0587740be8bc0ef0911d4a906b48b2f8c9fe084c0b04d1c87ef4c964ecb39c2e03370893f6f9e6d39fdbbda8d4f48e99d6ac5794d43b69c2336ca9c41c579462022063c24cf4217112180c146a2ef0f213aa06df89afa58e47a5af7388ea2ae4037b11f2db7b2e278f3584b0ba9f117ff9b297439227a62083c1f562e655169c00b328ce661bc60fbaf5210f434a1abf8cb3f1b38bd3f5b5e02aff5a50d2c12603ff13865de96bf3c5d3392c88ff438f2370bb83bd102918e514adac5ea9560801914339d1751e4d42f7673888604384065825abd201b3bb8c1d9900b6d728bd04e0794464b35a9da70f78fed0f0b8724bfdef70a5224c89b004573a1cccfc670727e3862225eb782525342a0e417723dcee290d66ef2f4c69b6c3402b44520d03f3e8d98548fa55ccb57c4b80b3434c3a79277ff24edf285fcadbebcade96cc056764031f48605219759b2184ecf59d144776dd95b86dc8de2e5d262ed74037012bef8d76c8b98f46df8c2c4eb5e23466c274d6de39fd8046a5dd02e91b53e902bee1ce02cbafac08d448c1e82b41a74032ce07a70cd639422f1674070ccc0301e26faad3da931ea8c85eb733197c8e0cd62d3e94d1c10353d87c48948d80c002a1b80d7d133816147f6ff2a1a84bb02bfda80482618444dca667395f5cf0b40433e7287a861d0bf9e3db0044a3833acc8fde07699fff56b9e07b1c2e67c0e9028827e9aaf4206a5a59904ac35adfed3f084f57fb78d1b26b01da3d205d1fe0005cbffcf3dd3c8de2c8766c652efeed527f9835fcadba6fb8c880de501541b00611c325a35a611bafbf37c919abdb5c0f90eb52b98f3da7b0272b49e85f6f22013f7f61f58a9a74f5d5fd983b293a25ea58b14ccd0e997fc2f884878fa6deed0419781294916c2e422e839b3e1f49c61b1b327c81f7ce0e25fbd377f6617fb603a85d6431c86b1e8b7eb2a0cebe0e92b6a11ca60561270cb82bfda9ecd95cff00713b665e48c9d8b1d68a822ec19701cd54400e069cb62801eac59f1ffd7e3506979a539da7743aa60b8b86493ad559537bb69121a09d01f843b456e096b79406c283f8f1884b01dac416664612a21e20ae085961bd39263db7b060254d534b00fd0d53d06fdff4a4a75963f69ac878b32ef7eeb21d0807736cc3282f7d6cd500e049eee0fbe191f9eb9afd33f19c62ded1faf9d1d0c696bcdd8803d4ea686a0770312a57172b0b5f62a89a1d175dee35d9c4080ad3c0549cd880fe755d6d4e00aa9416e22bb3d575d26b1e0d59ab0b1ce89bd13b479cb5fe6d377c93b392620434592edd096d07713233ac3b9343fb6a6c19f3ee7d3f7593140ddb6f3b3c0b043910b52180967d3d27e57634bfa0c4de1d2e6f66ca4ec4ba5e0508528aab0901cd6e20ad4fafcff341b33514e4e7140f7841590dedc09dbc6616da313fa364015bf505ac6dbd55bff73c034179fb07d0181721c728c2b0e02bbfc439b6109e01b9b05ca5c89cfb491b371b77f377be905f12f5d80d7f142232c269353548760647ea18773e4997ea423636f30de4d6e2f6d01ccc41279c44235af54aef2e8205fe6eb0fd007799df097494dc9c17040ac8bc63bd0be0a16ca03264466ff9520793025b783e26bcc842ba80003989b3277553c2843799904ccd68cdd002caa20634fd1e2c85b04cbc48ad0fe13346eeebf73aef69197f6c9b00f992df88b2fb0330297d52317008a810c3f95ea6f76de8ea428c4236e3dcd3f6740f98ee47aa06db744459ba97b46fa941b3778899d9a4d1d00f9068c74e42837f3fde2a21a70016690c70a7e5faf4259d146090df75d6c972f7c19fa31b1a5af7f59af1619603c1747d7cb68dad178773c4f7b194c1bbb46e9927112b5f870baaf58ee2082a07a4820b38f1a936443de848ccc5a74afaf682841f33426fc8ad89f90081c0490643a4981e9fb9773556db34c48254321a2143aa9135490c8372b79197f1b7b80612dad37f7605c27de1961592359ae3ec5a99adb74009817452c8c10eff324a06af45793b3e5a7056944f52e940555e6aa69e0afa142ad301c718370e2a6ec001a1c9c442b832d2c59b35e3c06bedc8ca20cd6783f81f749cb84d97937cca1107cecb9f8b06ddd1b53cffeea95c9ab241c720deb4b69e404c35986c4d41f7b0003dd75735426ad8ba44120acb0d55a24f58f99e03a6e10d2647150ceeaa7bff04384ae15879853666d90c865f383e59ab4c0309429ca6a6ead30a0d51054756075ec5082b86d17798a46b149a36e5c7a5cd4ee5be8033aa8f205f18d7f708bc04bb96a3062f1f5d8d8365b514f17c1e979e683d267103067d1e2953c4b04e5a068c668e2791e4cd646bb0624ecab733b503e29ad81697b35e2ecf221eb7173002da1c2e549ab770b6b9ad4dab453bf9be5b993a4f71398623ed5cecd0f3fc830040939693800fbbff84722ba55be4be19fd4146ced97ec175ce5fed18a4afc40270e0b7c7f8cb5c4725e3442974b0937e9d68c9c9aaba21d6c0b40af367ca1f063aeaffe7daad8c2cbb0ad51fa6b03bcbb8e75dfa5db44c59837b9c1b5b7f4900721013a9b22947361b7b2af7e73a1834fc25e409777703cea069f6c587388d048f67d42db046812ec2d2050c63d9a043f4c5c7d5f19fdbdc32d78cefda5c1c009ad202f0c1cfc5017281386029105f33463a7aaf9737bb8d5d24ac0c7a501c00fffc9a1f64658d590588ea5414715d1c35d8ff953e425bf34233721b4d794e00e4f9dd2128624a761a9fa5f7c9f0f3dd2610d70c1e38cef7657a9b2bd9719406e121e4aa3a427c38123713b870689fd1f370b30da55085cecdec65621089bc01d810346b0efab2c09a99cb943199d5fbc0724dcdd428bf14adee6b0034aa7d00a5b8af24837ea844ee48b3fcd5ff0a7eead1705752fd2aac15820f8e19a821041804410f6a7cce01e090638b68500a9ac4250427ab28d9bfb9f18d1850f2f1023525f92469ef077e509b2af662a94457d080b03afa8c3409061600521446c0048b27d8f681aaa073df74acd9012088456c57902e15efee5c974484e506c87f02ae65189e5e81c297a16c28e3e5bed79649df32f01a2325aac14e5d0486aad206f0c51a03cdf9662477be4cf697e44cd4d8dc3e319f61453e69363daed7024406137d8c765d172e69f68d42de94d4e248a8af14a15ab713a57f620d5091159f05a3b6fcdbcc80de888e08b3c7a0d4adb0b5283fda79ba00623f404d2a0c1be305ea34f3cfb629742e4aa62f7767deb6445842e1078377a16c32c23d4210f51007052d8f3eff8713eacab0818853b4860c9449d465e253a09e73c70a2234636b043ce31f76e20150d80e5444b719ced252d2056340ac30e2f4c86e09ea5ede6b05101916c456f6d5542a8596bbc5e400f47b5e99c1a426d04259d823091a9a6c033eb6194d01fdc0a7b244590146cafc8b2d361001e4b525157aea8e791b907005c484fa3af005f0857ac0ce5b637dd5e5ceb5d103a2a9a7d9690e75d664f58902f2c186b150e1302b9a79292cd89887a56d88eb944bc6100ad07dca0b39bd4a050e9f683ebd2cfa0a320e9e303f16765c0e50211a22bdd8b4b7d5c1b7d4625a051855b66f304456b2a786bb95681f1de3fe269091893bb2160be84ceaaefb9604083efa938754015dfeaa4d7be57b3a7b2feb86bfbf3b2f1513c86164df7a99057b8e5346c68ff2eb3f995c6afe69eb595bfc86365b4b3c80f7a41f84237210028c9590563ffa74a6d7efde8ccc5275995971b5def667ae18e9a977b2bffc6b015687c160418e1f79776d2e5f0bb9b1b028e1c393d321405e93fd20576934310263a57833ef20f4e55faa03e1e53235c31353c4183495bd1d2ac03619471e8d07b88cbe189d763028ce643cfd66a4197a217de1849e67bc3f7c9fec649f7f2607716dcc073073b0e20981cca8a1df79fc507b65a0cdc0f5cc51fefc50d34fbc06b351c2600175801daa396ba75b7dbcb4065aab32f238cdc4159fba57a9f95c03a6777ec2cfa98cb253d4008a69a27df87d943689570fa2dc9fe125d26f779f05aafff18870ca68f011079146242329e177e1852e37f3616165fc0fae0c32a9001fc99af2640a39744cbc56b7ff3a31d435376d9e094d00d79be0cfe268d013016a865b9a45535bc708b6e1f2b2848ec84b087cee7cd378f4bf658acd9d53600598497384951620b3f3390a046273b210cde9f78123ee6bf8dd192a0ac0711b01cc4bea48d0fbadf897bf160c16374b16794c25700cd3d98cba7d5e418522ea04fa1a264f85eb21a830282aaeeb99ca537bcdd5ea2dd84b338cde6c4788de3a058147515b656305f120b479c7b7f72be974c1b6c8bb74dfc798e77beba098be067d50e74cc621f81b6f7f449cdfac33bf548e7adbddf432cb397a3b4234800a064692e40ac72c30d528feff50d18bfc25b71ce34efa8bfae6c1460665d738de05500d03bccc101045e69a9bfa34494675095f53be81da544c02ae994205df860032fbafd118aa3dd84be91967ee7e06dbb908ace11a23067d73ab0d6a05fc2906b750c2e2f67f8db8d7827675e781a96abad7c323fd3bbaaa8288614d6feeb8049d6db84d52b4dc469e7d570edb78006ba4d3ad3162dbe75b0f9644cc5d4f8a053d2703a1da3402f1607fed4522725390bc9ad767dd103f91cc331f8816233c03064d45a0532d22132e02b6e685f8c112866200a38366413f14bba02d5cf57c05174f2824654773f78699a7ef7dc1c971ea76fad024bfcab1ba58ef64e311bd07670cf0fc23ead1f18c9b4e84a81c90637e7fffc219c838295dc32e7e612379068179c3cd7b9486cae3a3d747fbf2b6b0d0cce599a678196cc799867c26bb89058a2be0f0c791dcf7fc8411318433868504bc16ca368e5d8ba49bf38d28794b069b7135f946359548f09d15d87e90dd1184c0807d99bcf8701c49877ef06be3020e67b8def7a5fb38ad7257ab3b7329981edc56329853f64a02122d92446a5601d36901546c43245724233a5a16d0a876a56865a6d977862282cc52216566f805288f2e82688686730dd446be79e1f8dc435931f58e9b61935b4591a8080d3206b9d8a88de265de7b38f442e61da3f9f00b2ad8d8ad5f77e4ebc9be8eb7df7c021d638fe794d5646e3ca6d7eef6b54365d01ca161d18bcd39ac01dac8e57aea01130ab1cd3ea3b18c374ab2cf3aff0770805b87983ef16b913ecc6896aed8d7039a4b8cf1df6fb2f68f6b5951f819ffd1f1b7c17cf88e96a3582ce4698dda9207a10ec4f4584df1dabb860326aabdcbcc7a5072ab12b36e17e238c0cafbc27604f21ee17d97fb7137e9de239603aaac4f35542166094132d255c52279b9faa0026906d44727205938c467b5d9ff8393a3b52470578fc3033bc7a9733c871cbd00ba3f4164558b5faeb95f73c5afd92b5aaebb66effb64b5d22d6154b71a5b6902773c66126348bd017fd8862b2ce07b2b9a4a02ddd926389904785a6fa25da0024daef64ef3013b8f71373142d02072e143e334da201500dbceaed66e02d7af00c4ed6e1b5d5f6ea6eac3fef88d4915ec869f72198d0ea528ea3f6741e3746a0068f2231842a2101c6b47b5f5e19660723e105dd44b918b677516a65726962d02682d56eb02128da5ec9fb547c4306d7639abcf7f7005f051f5609fac303db802ce1a66d4e224476bac69a66b78ea0c1c4aa1061ae26257361dc87373d2bee5060790f8955dcf2e39b0264c38dcb091b8085d140fbb03c6ef91b42967d33ab705549fccc7eebf28f909ebf113187ea7776b2c5dedfe063dc3edee99c877223b04e269cc617f3ab99e6c38d54d72c887c10baa2baed2f136142eb00ca6b27fad0765f9668f07498afb30ba14cb3836f6d4af7380a9f15ef795125da70e6fbee10009a11c9c641cbd26e6189bf8084c586327929d09e14a26dc28704779300944000aaaa96f782ff29866f30507e211d2c6819eb88015f42d2f34fb21718a36790080f18493dfb7f8cb674d7a34145edab05009742ccb76eed418deb59067ab1200e3065e2c167525dbbf5b6e241c1ff0e83af7b5e8e13ade079a863d63838ac602e4640a89b317c9244b6e9ff81a4c9956dda45eca750835903ae1a717d590da01db676f7d293fef177fcbc794da7af0a9556ef39c4a337a45e139151af2e5d60416564d20daf2b2f7d3189b8c57500295d2ebd71319c2edeb8d7b8f1077f153023c0d003983c6c6432afc04bfbcf68e81023e067faab5ed69cf8bb71cc0ef9206436e737e82ac0b1f850a2909ff0f2bb6aecc3e3ec279e7d02d56b8a1cdeebc02f76172dcf2646e763657094f335efcb1e64464324e50b732b02301e088b2880560e3f363aede6ca959d22a13f5c5e27af543d7e2404d7f1678bcf481d5e9e905a1504e14bd57c79da85eb542469d08e0238c2b4e2bf9ae7e3fa1fbd932701c00cf23cb38c0e8c6154638e539e46be087b621f23a50ba610380ac456f9fe24505e7540ce6affb64c33e67ca5baf11f38b248c40ffc6938e1e4b4b29c0ecb28c069124ba3317d95f8f5de5c3e1f8c5fc64ae8dd4d8b81386626e23d3ea4a7e9407b3f5d2531153827b65be3cb2183c8c4d9c1ef00571f910224c9df30f18930d001c13e851517c48ade3d7977a57a6403b178b1f6c62b7ef08d18b7768e140c801b8fae3dc1eddf6234f9d6bb5cab956caa0f368bc715a60f659e58a1993df700706294f1a0866481b55b05175fa64302e35f8ac5a9cce019cafab6e3b99ac1501c123fe788e7403904274d8adeb641ab088cec7236e4c35416a3055409e637b028531feb17bcb8622cd564482cee5a622a4c68c66d10c5d5d4220192399bd8a05b6df952cbc7f1a84f878db890a32d511431d3a70f05784a2128f845bae922703ea43ebdbf0225963cb61a9dd3c60efe52b82f38be0b591c498ac3e92d8f24d0102fa10af0d37760e355ebe4084b8c46bce35032f050ed45577ef70948ec0ac0740eef6dad91b542b3e296ce2572e93c160965a01cdcba6da1cd14a80d274cc013eb2c8f7867162aec21a4b766261ff4d0e57d654017702d6177bf07e1aec7101d3050d0e4a8d0f62bb726c00aad65c1aa97c7a7266821a64dcbbaad69f62b70387f72d22d8c3af98132bae5c155bb8e4d9a0e77e24f95c8d412fb426efcf7b05f392a789522146f7f60cc4b644977183cb747a739d1d87c6aaa7ccf3633748040140ce33b25b900eeaaa9e94f7d83917f27f1e43f5f7acecd70aa607be10f001fcc8866809479f6309618e66101c74ffe393ea35de4b7537fdbe7d4a24df29009d5a87bc68a145f08f5216c05a78f21e04f82f79dc389e476ed09d02e4e44a07768b7f3cf42e250b33583c0ad0e222458bbbe882f96f5f4638adc6c02cc72e010e21076359596a32a02ba8df6b171128895f53321e59acdc6f0b250d42526e01cdf06c0a120ec5331d7e944c64d5b51f0624a73822614459e3a011a036536806a9c8a8022944bb19aa91f18b45097f4cf09e15783fd0b4bcc00b13638e01b1002cf8c7608f5da737adb547142d27c97300779daac8d3887df76a0743d592ec0735e34f0ade63be31f881b1e379ce31294861ec322511342dc35d958e13c74303de8c4bf9920e29a57f3416971e93ce178d55e8fb455020fca7f022e0ad7aa305f3284aa1309a2539f14ea0cea11a7f8a4f2b5c34f717fbcccbed4f29bba50d077c185c2f828839d28201c380d4854f28e67f3b1465c514c67508a3abad3e3b021de8341f23d96836aba2e4f2c6aa78a959c6a900ed43d8e980804c3fd5dd0b0719bb4db64fb3674457348b43fd6fe4a9a62085c77d984d3b5ee01b728ccdcd02c8ea597bb01e3ca75f66bf3c67138ee1544f13d6886be25615766e0fc22eaa07e052b1b3829a2606e8ca0f90f6fa47295d7c454af892c1bc38d8a4d4e7ae19075bc9a173a315477939cfd432b536b2fab087ea3620315e1a57e82c45d56bc000ba9f77bc59437831f93c4fada1b247d0f98c20c2de27c78d0d93381af7093207f2ce738fe4b0039f19981ae843a98009b9092aa76e5a9ffe5a2a3f16f7c0ec030744d1eba4721b67f9507b79a1f739362981a2d3a2ef69d85d0fa207dd26e40558e77727a423b9827425b61022b51ac081144b90222a5f57d42f3265720d9a050e1ee6a70982e4554f6f6a61c20ec0745dd09b3524d907ab2d897b1a775eb6001b2811e0c54c495d47c6c430ffa3798af706ec0ae12e1f30ffee073ef3f1d101e759481add7e9d8c9a498893f6f24fc5ee70fbe46061423cefe72c65dcf06004fea92ffde69ddadd18de94adc6cdc02b9a826ae6b3eb68af110570580daa870752bcd5585bc38e1238a0080685c09a0eb962669f978add4ed747d2642b7f80063af7424dbfe7debbf41041a5ec0d52554bbd0df0eafa38bb6150358e31ee9c01eb6482e61bfcac8c61d9ddeeedb9a3c62ef5d96aaa5ab78419ae6924688b5300c4fa861a890e761bf919f2d1072ad21a478bc3ff1cc9d99e6a4c43b79a76f205a671ef245303b4939ed1017a5eb3508573041af2050f9985d3e5ed7dc4b1e102d5ab06888e19398de24ee9fe27b19912375e915e3e7a181bd825420ef6252605eba48485eaec0e0ac361347552c3efc8f94aff5140001868559ff0048e615a0367874a2e7bddeae568b1ecffdce457387ffa7ebc2bd158bca440e019d678fa03ce83d43b94cdcc89e90ca48d5fa38749bddd01799b75087898181fb303865e03f77c273dfb193bd9b697dbcf732051c752e38eae5312f0581399c8d87f102402a19c7a47d335965ddd091c6d971094057c77ea87d05d106d744da225c9336201beb2a5949f72e544109655c4a2fff79aa89136cb1f2c07ac6dacd2d00bff53016c4c3b05c816f27be8c814709408314e0aef365b1829e77befa8c560dafdb407988461ecf5805a387086bcd4e520b59a957a24dfca457479444db23df4bbd2060dd807d2de67540ae7ad7b70618be564fc0cfd4330bbab7d30f682baecb3ea0493afc1da0b86e8d604ae071437142f09d2f7fd5106828836061f9ddd1c575401e486d9ab5a70f3e69fb5cf3d6c6b830997d6ddb80c2ba1d0d5e74a07cd5ef107592215f59df703ca4e0a265e888245d887ebed5967a542c177d31bb3697f1c00d292a09c7c7542c990b8d0de09d92eeb8b83484c519d99f968f80cb38db5fc01d6882d0786cbf7a6c7e1576d5034909c1b8e60a8507247ae0adced475a5d8505dadbde15742f8bf1b0a0b7e3ecefe59120ff86127a0490ce7a835f7e6876bb0026ac48fde95c4d56384c7196eecbc19dbaf613cb5352a821474a2fe08aa43400265c2f0b08191356d0d1019df33862dad73eed9282a10b5f5c2f59a6dde3dd07994beb9c53c4be1e7cb59b2f9c70fa75ee1354bab40d910b19f5cff5babfc804bc3f1ebfdb91346d367d24e82f83d8131592990221329cc5e09eff05bfc4ec0608d9483352912dd65d6d3b498d39aa5fe63bc7f19107da8fd7e1b68d7822ec07d8626a905f65dea4fe5b8460d3ef491514b504886bbd46701a7f44edd487e40064c591bd4e9b13de2c545c4769b82d9897b1619ff2c849cccf058612f8230905fff5591add16c4c7e461378a50dc312b926792daf5ad4d8b039b5f2fc1e1be07b9677b93e2fdae1af091dbddad704d7d68110264a96c2b183179d96e70174407e1cb90f3f52ea64785c6de930f98f2db4b286f38e342fecc487edda211b0a206303ad4f1804d53f9a135e7112f876bb7281ee21ac0c24c917da6389c925df2041751d9cda317b2f8c35f2fdbb10a6d9ccab43389931e5552e303a46de1daf503c54155f617a8c75ca442f015703edbb2e2d56ad597ea86d88369bc6c709904052a1841335abc9fffcd8774cf8930d50f173d966e00a8ddf9339c22c9867452050012b0ab16d744d60aab00be57755b6cf9a61ffa213b48847c658134225682076070a5065ccf5720230243c8fea1c90d343f86fa038f86776911ad7643be3301a7d2dca75d9556fafd3293170a84a2d4f2055123ec7a76d5953ad4c98f31650753c70e696af64ff457ae5fb6eae229bb911334fda6b41ac171683041ac6cc7043b437078d6a27effdb2f73fe9b3c5e29a15361084eee5bd184ff7e6658eb5b02f8abf90663db196cfecac21458f7582d0cd98cc2f6dff94b202e3acfb6e42e06d018a9a64699f034303c18eb9de1055b40d7b372f3fcf3ce44780f8e5bb7ea029a41ece0ed7c3057d2bb7a50378ca09f706e0647bb3e8f9490d422c780657602fc15df0799a383f892b94cbb038c7c892ea8da6602b41bb6b0964cef736a3101c27830fbe88935591744bc78bea107542a2edcece75deebf1197f7358ac97c00a5e3f12b7cc63b7956f2bb449a9a66b082c009ad5ccc1d5720209ff47384bd04abea3bc7dc88bac0228bb992023aaae6e9662de2e874297e6e8ac526e3d9a3051036fa8af57fec7e4f5e580624f976b6cc687c2660963e65af6ad31db193be02282dd7e02b57d94d3fdaac8f593c9338d7c479b6c0836c9d17a27c3bd957c400f1da2450507732409446c138878ccd92e255c1623946c041163c3ad8074426077469654308be5bf8e8eda05bf6809d78e8658dfc711c1c3727f7d974f3d016008f14bd7d80ba37592a9f2c0014ae6ada5c1ddd08f9b93a28f6f5b4ef034ae505ce3400853eb00e19994c70a0423d507501f198816ad874f4020c058463d9630706abf1ea1a2d38f25aa0d40fe17f919e87c5cc3c63e15937391782f27b42e5060e30f9ec8762113a4cf88a01b3b0cc10c58b821f5ea98c311821a58836d32305367e8854ee893e31550ad86929ea19d6be1fff6f92defa5ab933dacd003abc06cb1751cf1665f0957db9b9d6c32b1c7b2d5962f4d02e3c0c6b537557a27c9d000000000000000000000000000000000000000000000000000000005014c66b05b80b4668d825116ba219c8087eb5d7423f122950bf9f015edf05ca146c2eb6032977e791b85942aeb685d5264af237f53997d6bb91ca8d9dff8a0a8752a6e1020f025718db004498166db0e9ec1a4cbac40efb77dbc6120846371de279cf0102bc45dccb096ad5e69a0c3d93065e0da275a482a75e6a3a467252508b69dc66058704398171b0a003e1cd3cbc20517c6bb9935926598f4adeb5ab729b3da6b003a4f51f2b687b285489124cab84699225af3f37910757048c94f3f795a4d1510621a781ed596143a8b4f962308df2af747296dff7cc89b11115926ca3816bcb0623e2044adba0be7b8e020b7c3a60b501de09154802d1b7e89239d6d68797de015c6344d267758603bb4259e4feb2518fa7adf53056bb433f5932675d405641063966ed9c1cc62cf4fbd6ad1b1a2e19a4fc2705596802573a6e91ba9fd5bef101ce9871b1a3d970651f6577d159e085c10bb229d03efafedec907fac83ffeb807398605380c0f6511f16187f7a9e492b47090e769bf9a2a297d0c322e5cd4c50796b0f35cea066450081483dfc77aa595ce791f6ebc970d785c689ac2bd2e1501f18f6ad7f6b7cd2528831fc1f845eb3aaff402cef18d087dbb86cc70d70c5d0642d6193f831439718afb00c48273a244bf08306b18cd947dc37e84172e6beb00f0046fe7d0579b3b958bf539a5fe6c07ea22e762b7fd2188914b018d1e93380454c6dded5b445d3c78ba52025dfaa575f2d9d2a8daee8cf01c9a876ac6894f075288d415752fc622d9f65cd6a51a7e8c65585fb870fe97a1a336eb291b8bdb0485757d298d06997675174c4c65ede77c43cb143ed3ace72583cdbfb195249d047aee65edb9728d424db645d5ee6bb921d88f6bd3c369c8af837938e4cfd6890264305e8e1ea8f10ba480b6908acfce8ba9904a34fcaff155d97a36f295c344025e2a5de5ddd1ff4d619907e2470c1e613b75d47320bb956fd651134defa7d304d47789d223b2a2eb640d8e53a4696e8b9e5f51fa057b82caba1b20895eec4903487281044448958b016f255d8f37fd2e5ed3b5f67c0d17e0391db5538432240110dfb8d876fc0a1c28c81bae218bcc6fedb8591cfc96171b03bfd5d707bdc6008699e6c6ce88aeb2900f7e00cf9dff7f7d0b871948b1062dabbe37ae61021305a417923eab6e1ed26b7d5c84c49cd3c45cff454e58f605097c138f02c38c0f05d1ab8a831abe810372e235e42b89feab265955be62671301548b14ed0ab1eb02bbfe72f5b1b476e49f874d4cf8ec25a940d7be2823c8fb7247873f0bb3a06a04fcccfa45939cd3562df6168380dc46eaeb6537f98a8ce5ec61216fdc44aec907f59241f3eaf303a866ac73958bcac481ab12d102fdc6e2d8566bdea0fb05f8066441f4936c7b8c94808c5a484c8e9bac137f035f06a04b43c0042891fe04070728fcf238efb86111d72dd3b0e2d20f0d08e8912a55087537568606076bd762075de8d512452298c90265a15c8034fc696ddfb093fb399e74fdf636837898ac06ca3bd9a836904226df4a40bed73b9ac7e521a1ac4179d15e22adb0a142243a05764279a2c4318465e1abf2580fdedd0ad100823b2f4deea4497f881a79f9ed07c066e8792b55be77d4e9213a1be007f8d7c33f3a283f185382cf7c0448926306f1d7bfb8e597ef7bed4005283c1eeefddc32050f8f20ef97991cdc92fed1db0104c208dcacb7dffcf7d2463d5fe981ba99bad5e848a1a9cef249fa71b6c8a002bcfee38bcb54bfbd6d693960b0106e827a8b3ca7f85229b096a9fde04529e80774887b5740464c111a7e2a92e7fc1a2a4fe8cb15c7e47f5204b911d06b8f3804b0a1333ec53112f4a8640bb82cfd436101289c92c819d9ec2836442408288000223001822e6ec7d30bcef8e4f849cfb6d12bab2e8535bcd794522b3ff7d23302ab1b97365fed10e36fb97cc1d698bd5397cf142b0908a2de7e59a083ad50870778f15dec36e9233f0a6336fda85f53d7b69140fcd9c1046057b2a67ed3de550357e448b88ef3b6c86434e8ec7fe0791a64eddd73f8649922948bb411c57417064e14a24ba4e22de2f1920272fd30b79a1bc1eae3746504a299dfa6064e911d01abaacc35910a3d397f5784c5937e7f2654edd7be1e2f0f7524d1cd35d08a51024bf8a1c10c6d79b4c1ba50b5c1bf422dd70fd2860b50041d2991e6e88f855c03a850f1e4dbbaf38920c428b93d35b25c6417d28fef7937a95867994316a90803a5d2cac98662fc736dc6bfdcee43ef91b2ae8841178569bd8de77df7ad2c7c05f8436944061a13493b550c5177c86f92dafdd998b09e55daa81d4f7431b16f05cc30971b7d885423054f1bbe95f0be703e0455cc06c176d76efa86458c564c0224ddde9b20acf6da65a8f4d919664e6df4883df4e4a18e43efe2c04111188802658ae7365933087c8f3f124db85628632fb9f6f2209e559b16e9763f4b57f205ed03b3460ac840f0de7a317538581c7afaee824d07d3c48efbd8fa09b8afa8030af249a3fa1bb9b5e1a960f9ad26c84a6e66916192abea03bc6f1c94471a8c042607bc69535c5352f5bd6a9f681c5942a9069e5268a92bcf3b74265543ff6901577da7898da32156399866ae1668208aba8f7d0b43b9b8fe1c54bd37dfdadf07e2292acda515d3cc169b93dbd073275ff688c8a18a9ffc76482de0b9fd7a6b05f30302c4f2f9ff6561508054c6a672aee73fcaa0d65ae0fa2632f7427351a001871c465a2246f3d1c4679843e09df5d13378beb0317bb60495c716d5bcce220119520b7995c3a8e1d7315703f51822c0c5467415cddf7830b6f35a7b3d6f4805fe0f4aa2d4ac3a11a322f3c418e208c1bf6f45b6b7b70863d5519eda65e36903e303d13ec8b076840da94214c2f6ebf5bb57318d7fcee05cd6dd25bc85169a072482a844565c75f7e51418be1bbe1970d61c843ddd253a4b254215b1938ce2065937bc91a2ccc61ef767291fac697e68ee70e58a169989a7a0bf381d6fbc4207d5300abf0fb14f91e6c7d998d1c07c7217f3cebe0d641230e890ecb0dd5265037a77f417811f623a017aa39629019bebe2109e32c51175fcefd7637bd7e0a804c78e8f40da7cc2f2cbe950997dc9ce1ef5bbc36f10348c50998d2b9402a22807d08567dedc283f6942b89a7f7d786da397b7fe6e3b72f50f0d0414705c2c92008537dafc479ff33d17cc28e89bc3b03aa8a8fabfd4e510d5dfdb4a1e96c41901bf3dc34e2e0fa900e310d3f4ac8b8abb9b5a33084832a0fdc40ef5078aa9230384bdabb8d4c66ba461280f70d2c2d4079366469bd41d3183dac0ce2948019000bf0c8a75c1acbdb224bbed21f66c31209b7762f084c7cdf5deb8817d624c9c0157705294ab1421c109745d8a8b4534dd3188ef71faea090702cf3085787b70039b1614a25da282b9bb7844dc274e17c6dbc9c58d0ba92b34597d1e8d19b4a1059ad9531fca7fffc485a0648cc8e4c719c152c9717be42af76d33c4ef06068707e51d38952a17f8228d9418d88cd33da7d4e323309e1d6c166170274afb2cd301db3f92247f2a7bc6d6e616e7985afeb4e0fec145099cc0c5008a51e7fb64cf06c6653409a4df05aa5f8e47fee1a9a2eab4fb1c2f5722e435508304d8a329d904ccc10203e7bdcc284aa76f9fc699d6712171c3ade8775153626dc56d14915903b16b8e74c1fb080238835f0302678c80b99631360ce4a1958f5784e84bf02d06673ef3d728d4a2e2a72992fff3dfe905e7fee7c73825c95a529e6e39c205d3011ec936c9a3658f66fd5ccd33ffa42d3c26f1c99c162627cd3174b53e5e2fb802730282e0e4852b5fb4cd46b4aec60fa9933addc259982e603511cbec5d46560002f1ab83332ae7f6126d16d90ff3ef67cc61c31aa5229ce6af5c0188df96b703784dc30878745bef5f37697825ff9237af7572e32f6f1ec4e4138169019fe005362b770e59f5d308b61be1f347c7379358b4588c3fc17b83ef6cd9dd2e0747023b867522aa9ab5ebf9ca44973334bd6e30bf77fd71c4c1080ff217284378b405339a488a36a8c6d9daf1ebc764d0444da642608330ddfffc5f770c77a1aae1011a5e88fceda390ff121e2e6e21c4520395c97ee1256968f16ba0f9acbc4cc50125ce2f75aea55fcd473dfc26b6b220ae8414662e9b0ed91398b3b81ec3be7907e4a4330c1f6852d9c7ab7267bd062e34c3874d893322c248978c957ecd8b2c048d20fcfeda02c051b86dc71c7ad6f350641a0f46daa8aafe946adb764e238f06c15535ef2cb17e18fc5961b92db423717b174bb30dee1fa12d8b0450a34c9e03cf96e5c23c0f2a2bee2441a558b2a7fd3be0fc651e6fd07049f79bc63a4131066b8f85de11086c43895ce3909cf7db39cedf1e444275ec41e5eff4e2ca8185052e47e5323598f47845d15bbe7cce3ac5738fc02930160e73df71ac16f62431064300e29226b76a6a42d0f7b251998e81e6092235e9e89186d87a99505f111107bcc97de52178daf3dc3d86aba08420698398795591c9d8e35fc3433ea75d7202016eec0a6ba708a70b7ab53466e0ac06eed5e9200390c6a166b47f8ffc14cc03b3756bcd5afd143f041ebeeda92f1fce9da07456dae2a672e4a83d2152319c02ae7ee77d86ab226cb5d6e0c4c8aa6eec90863b718df307efe56009883c14ac0049af72379053ea3607e1591a5d0468d0f53f52ba1548fdc0968f388ada2e2c04d7ff951781480792be1de445ad703efef67a2a51205d68444a2d7ed300d5b105688da05d8146d745dc0ff545a3dd1d1cf7606402120f77c136b1a445a85aae00e1db17f8e315aeb2b8afafb59a2a293008336d666f4c00cbbdb8721c8606ad07681e4d38325bd8b9123d7529fd017d9e8382a878b20a9e4e94a179705b88d507fa1b623d34662163aa14d0ab2fc6dcf5c1f7c34920123ebff670579138c59705d29e131929fe9cf21c98284460f11a90ae98798e899008d9be1836192461b4027f80c17e0f68cf0820436335c4602a4c12abc2f53e09ff91f60eb571071c5901b87754b790856305c0f1c688ed783e44ecdf260b71d3e52797e0d79ac310c002755c9202127d62d0c8f7c9fa739c1336c34e85088bac1e32598c4afdb99b98022ddfbedfd27e462b8890900637d40d74c02bf4e3b4c16b520d6700044d0bcd0605bc759d216bb0b4f98c5cc85cdd8184b298e10b0bbdda44c93f20903e3500037512bca818c30b8c42504a856e102ef06649e614b8b03331247dc9bddb07a9056de1b3c1a4e34b705e3dd658a6358366189ec9433478c96293d1974aa170c201228ffe853b0a4539e0eec44f7c82b32413f26612ea9d2688bbd80876bdb49207966b8b36a8bc057cd29efbe0422e49701b5acb7f0b63e165a6081add78be30048f70137028560ffab692a2a3f594821d3eccf2a76500bb37e7d62cf28d939305dbb9ab6250b66e4ada70e57199aaa710fdaa1eb7191482bf31cab628568bce06d0a3441b0581214287844c3a776bfeb14741fadac95e704a939753fac80fdf071fcb7b7111879d1442ee7ffacff912a5fcd88f90305562bf3cb855e200e0d1015d780ff5df6fb4cfdaeadd1b1d4204d6e3a2146fc32ec9c13174c0def4aa7e054dde9f99f9e4261f26b7e00a339d4519e76b715c941edd1050a98c712ed37602e7d0f7fb77ce92a733b99f847185e5241648660120c9b4e6d944ee2e9cfe5c0128fbe862fa515baabb9ca1b834a6797306ea1dc3baca5d3c6f71291b388edb049b93b4bb4d4f05496b680f4c97ddfa71e022638ba5a6aaf809e0b006137c3602d41d7c7e2bacf8d4f513e02fa9385bce0d8106546dba46d9b1dc581816f975062e1c87f7c8547b22fa9252e9a42bb4ef9385925f43dc0814bdbd5438675793012ba81a861f0cda45881c04229210a65121dabfa9016f085470716f88d9f3a906cb62a01fc87d57b4deb7a5409326d92d6ef66a7445961ceac9b4829c003fa202208f75027fd20f21c6a848587c1315ac37a216192561026456dfb7e9caa8a50421a33a4a8aa212ccb375096e7bbbe769adee15bb4f171881287604525bc168030160ee817448e88a51a31ddf2275fb215f5de2b816d075632ccb7f984ebc4502db189ba0249f9d904d2d0dbd70efb1afbb615a48b102da010d6c4161927c6603393e854e6fbfe2c7220380900e33a63733c56789cb50adecefb01170934db203aef53ab2d7ef518c5d6774e45b001f7fd052875ccc4af43863f1aa8a82805203539435f397ae559c347bd4991a263c7d33964dcce09c11e3c7951369a0a295007393ff36021759dfee96d187cfcfe8de5b30d4d536a7b5ff53f067d9497385027e0f83581ad3b1a406e87ae58f180223f1681fdb1a299c75d89c47d01246cd062780cabbde5582f7d4c5069e6c857d4be69068920a463b72048ce062ca9633029912aad9752acdf71f48d5097a142b6b43af9550875e6f3c67fe1e50ed13ca043210da9afadb55b0db7d57564ca5fdd7910b6740a6268804c1747ffdd5fb040317c9e546e78d7997170a69feea090d3977b599518aea9c0ad6ede08adad65502de9f815199b73bcf904c56962acff0725d5735a3c65896e2a77e6295ecde46066af7e63cb2703a312099b1676109147a9d5b25c5d1b81e0fc5f3487b7b061d02df2a6a3e171e35b47ba8991e0a07a00ca5c1a22bb541abcc79d745606d16820786b6319b0675c6a6c8638bad627c8e71a5f841bcbd8f6fbbb1912bc6a9f2370372d14d37a3eabd906dc699794ab9a5e8432fdc8de50d76d5f80b9c00bb076806fd87fe0616179ac01981a436d7672b4c67b3857e802ba25eced251fe6893d004d09549be9c7e868eb3cc650e1969068c7603e1e1483602f3c1804b0b2107e003729a53313a091f2429fbb219cf21859848aa418ab345c2d6226e525992d554015d469175f71085be40a9c6f9c6a4a0fdeb53cff86cfa7fdd524c00a668025f014b942b4dec4c87566789e38c8506e2f90ac14bf3aeea10246abf183467095d0625a477a506efe42b02a2bab6d994fb42c8a1bfc4592a141bd4739b67ccd8bb07f364af418b3ce367888e4b4000a7bf47618fc38ca1bf4a98ba651620106a1b038f0ac162df5e7b2c564696558897767bc08476e4d33dd799d119bb6f55a66a04563d416b56d6ece9201c361c96842ff7e09cae7af276b0859e37fe82d9df9002d296eb9d80f14ee74736f43d43f891c37aaff5ce87b454644894517482fde8059f66550cd11a02bc870c0dac18c909ccbd01850370970081c5a47221a41d4a0302c3853f61b8970e64199cad2f322472ac1ea8809856c32db3007e5955ee66047aef46fa34d3c358668cb209df32622ac5f5a8b75133e62fa4996196a5db2800d34d3e23558a0aa96d116fc368d46f7ed9730cc37db6baafbfc9cff19cb5d60208c8b52f2299d2ac8bb4c9d8474f98462bca6def133caa5654f3cdb27f9df1001219792358a6c3e1d9322d2cc9f806eb7d499ff8e2ac06df44f40401ea56b40517a23c07b56b55e8255364dac9efc4365b47027a7712b9aee0cb5306d7331303739e3a795a97a5f72b449994d99aafd0221a3f6901fa0591e968e05fc2e56004ba9b1fc5ec3394b173b2a5b6b4d49d6586ec85c36fb103a12b92411ec25e9d01278d163a0972243a1049d416e5a0190b2ad5cc6a80e5eaa0684305d95e73840126821d70b0e54f870b358c07fa720cfce156ba81e96bf5e6e1e5b459e53d17040b4c5a74fecf9beee9d3165ae1f960c57d59c08a9ffd345a0c828b08565f2202605f8ae76fe82cd5743a1c567205ce6c374a7ecdbb0cb05f50379885195286045364815ead70be8364e7efc847abaacba77a38dfad3e5ce931d097a3426db20631f873dac681aa71517998a43a952d513d879f059b1c6326f19befbcae720304fcb14b031a068e5f0b984e7c1f9a0f09b8ed96b4a8a4df126558d9ec9e7cac0614f78d0d5c03aa22a4ad54cf9e2a22e15719c603fb398c29f7163531a9147a034b068b0f885ef8ff2d4936bd05fa283c3b9e28a2ca911399351e638686aac8009633a2210b5f769fe7992bd406e226d83263a803ae97cba10d9b702fbff777055643d0c3cc1ddbbc0f7c21293999f6294401e3b15b01a59ea1f022c073786d05a4bff47f61fd6b04b4730dd635abb8a4ef2506535f746911814bcea2fc25d9053ba554d0cf71d98677b788847f7311803defdc983dcbfdd77c064d3bbdcaa8060c8f34d8bf50be4f4275a82ea9731ed720df7846239af27c08d42ece16def2013909ead3148e3975f7654cb31547a8bbc0222cd574a78253e365d7ec16e0b804c430488749708085c547dac118398c9e4ba4338d7e69701cc2be69bfc27154016ca2d60cfba68f9d759f956c24cf66132700d715322243a8e0c9522b6ac307041a6650a8c85043b5ce3dd249a628354ceff4cef69b73861ad267636f4caa7b001c3e1d6e60d2b4e9f196cb83563830759d5dd4510ff3238b370c34161b467907af222afa84d69035af7bfe94d478a3ffc22e04b15e4f167ba88a5989fe4a7b071cdc65797ab4ac2c86797100115664e68f50854d7716481a1fe535e45289ac0037c1b050b91258ed0221479dc52532a132147a6616a021780eddf4ea7cf010041c948c9ac437444f8662a33dfbd7a55195d4d6ac3591bb181d8c3cb2f7d59503c3811e81ca5779799b0c9629e4e443813a5c253afa6af4b2129c261819ebc1061e80e63730281c90bfff03a7cae1187bd017769b995e6bbcba5d8c013437ab06ada14311242fb65c324fbc23bf44a1a0e86e01be9d6b92809ee889ac4575c907f43b47739184ce25a67a55aa724d5f1299a73497c19baf19c5bc0ca3ffe187041ee0a5bb05f38971697fba758424a96ab751f6e135ca85b320d5649992c9ad06cd95f293421afafafd67e4a4d3aed073b892125f02b76ee9b885d16947a10e03f8896aaa0d315fa3fbbe2a46b4752e08f6c200af63dc28ebb94da207f34dfc076ca4df9e140282fc6f8eea1cde3e49af341b1f617c2f90f5219b2e938e8dc2021d92d94c619dac911654f6584fbb5bdf940ab09ff9677c3bccb28650c46855039a5a1d145dba92a7c170e09f47bccac56bc9f22cb1a6f35fcf54b657e3bd560798b9bd4f0e0759cd3e281b5db4d1ceeeff23418866b2b733170bccb148d233000000000000000000000000686cf0502fc860240e48474fc809a839f384d4a2000000000000000000000000908ed86a116959f486fd94bc2b657cb28bbf6c5c000000000000000000000000592f258efa1953149e92416e2c998ae4d1c368980000000000000000000000008f26742353ec80acf6275995d9590d8a569f593b0000000000000000000000005f9a17e4007b4fda447effd13b9c7fdc623b65b00000000000000000000000006d50c254df90c54908cd62c4054f1bade328edad0000000000000000000000004c215e17fd00169a52e4607076766f574081cb3f0000000000000000000000002e6a88168eb4767734a222bec25aaba1ec0f1db50000000000000000000000005f6475e1e4cb5b15475156f941ffda1a23b10398000000000000000000000000eaac0553c7a4d3c9b875f5df6e1cacc072b5fb8b0000000000000000000000008bc40ffb07503ec08c3dea1669c9dfaf283787fe000000000000000000000000f486f1ab6e561ffffc42374473a70578e4dcc8b8000000000000000000000000e45711bb966c3241c0dfebf35d39e2807b8a23f0000000000000000000000000266e00a81b69769427a725c407baa4520d2c65e1000000000000000000000000131407a01f7ecc477d48f539dbd14fd4f7232f5a00000000000000000000000052ca3fb3e78e3e50bbcc13bbaf80639406f8d8d50000000000000000000000002816b2d5d8dbc416cd853de9fd2194c9607b6c3f0000000000000000000000003dd76b6bf8dea309b0c849832193bf61e89d6c73000000000000000000000000d53e43201ff8d4f310ce1df2c5235467b2509ba0000000000000000000000000e6c93b3c997a2e6478ebef6a094a1ee7c3ad5a11000000000000000000000000c6873c2007d27d1c6296872daeafd22acf5bc9af00000000000000000000000048e6027ee42b95895042a13e55210486a66564d70000000000000000000000008aec6112ba21cf32a9c9ec5f213458bf3e119a540000000000000000000000001e1b9f33c47887e52cf99ee051d2824f5aab6f570000000000000000000000003c29ff532e01de232d3b95e1f1e19e6074e29a970000000000000000000000003a2662469af325ecd22f1fd48bc8c08a7979097b000000000000000000000000cd95209e46f30c56ac5f683704fbe90ac8045388000000000000000000000000b2f41e663ace02a85c1ee1e544d51716cb947da40000000000000000000000001f997029a4d06cce90b1b3526605a679d5700f0100000000000000000000000065505358feb2446d5dcb2e1887df1478fcc909d10000000000000000000000009062f5a1087a7fee7cf67db2fb26b3eb227c665e0000000000000000000000004c203d57eb1b6b7a1d239011ee9bb2e948be2c470000000000000000000000005dff7c9809accbbb468fa863f816e95d25a6cd490000000000000000000000004df05c9d636ca82feb9a563ba884fdd32ca397660000000000000000000000007fea5a80e017d396c5e8917c3133aaa54db3b69000000000000000000000000031a7ae366ce07a70ad1f619b456533682333d76b0000000000000000000000000522b36c2bc1db70b96b7d310961adb653e51730000000000000000000000000c70ad8643303002cd3ddbfd20360ac4b3022a71e0000000000000000000000005bf46ae8f4ac5fd7eba359804415c88da2792ebe0000000000000000000000009cbd9452154688a84bec971fa8478085b8c7f182000000000000000000000000c4290c12a6fe5091b6d464ece9dc78eb58c67c9100000000000000000000000044d9bb5e97a2fd309a84248cc5f5fdeca45d612c00000000000000000000000083927f79d95b4ada498197198395a841063b5809000000000000000000000000f62af635cbbf67f8d36655a046265e94c303a8ba0000000000000000000000005b4f69904f8152244f491f5847670b83d056ba97000000000000000000000000db66885ff9e10f68e039894888d9c231e3b93f760000000000000000000000008e7929fe7a364695662143d3cf6675c5a565816c000000000000000000000000945533b955ebe0279f369e9d47fe1fa7f5b2db750000000000000000000000006df9d9e2226d8c0a29eb8e10c03fcde02dee2974000000000000000000000000078aa195e0158449b05b8895bfbd16dc2332a3c0000000000000000000000000316503f41d0a4662b3d437708a1b081782ee44c3000000000000000000000000422f850b2ff44c5c46faca020e6fbea41baa0d6000000000000000000000000044d44cf701cd1801109ab013a0aebf3395da123e000000000000000000000000bee62883de6b8c1782c13a6c52ec74f678b1d6310000000000000000000000005d13050fdc00574eac46f4218d1ae57029ce8cca0000000000000000000000002f83e3cdace8d293c39e62188d6ed08571c409cf000000000000000000000000a6af81c57b74846bd6c4c18006f4f1c22108da690000000000000000000000007ec0ad5d38eae49ce67a9da99b73f5567453ccbd0000000000000000000000002d1a674a7960938d18fef13724b743ad7fd4cd1c0000000000000000000000006029c2fc2f56765294458ae15f6032ab2b49a6b7000000000000000000000000e41dead8b86990b796cf5014e7818331f6ef0d740000000000000000000000002e4b19f6a5fadd5b171965b43418b627533f8d6c00000000000000000000000001e848da33238f249868f64163bd33f6d88c7c8400000000000000000000000058fd3325a3045bebc8dfe8e27563af3c26cf501a000000000000000000000000f91f8ebe55ace8a33b0094cd9f3cdb4ef1494447000000000000000000000000c20f3088456b9d0349ae8dd97aff95702cb398820000000000000000000000002902010ee3030783d7c3b516c2e50f957d4c35a50000000000000000000000000742fee142b6913df35738a6dcff1afc44acba0f0000000000000000000000009a6435d5c240951749e91c62200c77796a2ecb560000000000000000000000000c729d7d0e83f77d1fefcf4cdd162380870622d20000000000000000000000005f17ae412229c6214a492cc27cfbcde6ed1100f2000000000000000000000000bfed201caa08f7deb308ca94c0f08d436f714ac90000000000000000000000002a670c67f6cd90e8ca4a49bc49273ee9d628a6270000000000000000000000004ad7da4e787d7568fa8b17f31c58a479900fac8b000000000000000000000000005500c3b438fc9c4ae5b4558b43e926eb3a0f5d000000000000000000000000367daadf4b3a80f85c34ff9cbb1120151fe94c17000000000000000000000000fd2490447025fe67aaaac1617d299e7bcedddef40000000000000000000000006cb8d56520e12e7ab8b0533df8271ce59eab8d460000000000000000000000002fa876e872adaf9a95b3ab5869837e563b328936000000000000000000000000903fbc7c7b2fc01d70dd21ec008873b62a6e7c75000000000000000000000000332f335ecc575e3816fdd3c1194bb13ad3f05a400000000000000000000000005f5a9fb5be98083eaa4b512e1daeca887f8a36620000000000000000000000002147f394c7bb4da96899b5c8f4cd679e10bd6a11000000000000000000000000cd125258892dcf7d2bd5e282f570c7cebe12eb9a000000000000000000000000ff385d27d871291ed9c023a1120507da3e20d537000000000000000000000000fd60a204dcb241a734aaf506088c56cced41b8d90000000000000000000000005c54c8ed3d42c830ce2d295d702ece82db222a3800000000000000000000000024e8875018e868ab4a39b74c99d4cedd70118f73000000000000000000000000fc5b3fa9d9dd60c2e0b66c5dd626fd254e0433f4000000000000000000000000ed651ca4daa849450376c4ba1abdb02ce4ca80dd00000000000000000000000014be5271c07204b0ed9725f477a79b941eec7111000000000000000000000000b5dedf0c8560738cfa96cc64bb3db2551de6027c0000000000000000000000001ed6671ac7f747e60da1fc4130ef4d5cabba672a000000000000000000000000c959ee8f295647412b6fc7db0aeca921eeca2241000000000000000000000000bdf46e6752d2ed8fc2b128d55a36accd39e1b5e90000000000000000000000008bdcb3e603526e3eb9fee8c443aff1619d71d903000000000000000000000000b37727bbed8d62e79958d4435bb928a91e1c8ba80000000000000000000000007841fe96f8245cbca60004962e5f64a1723e9c0a000000000000000000000000de2d2d0d257bf65635cd97c623e6e6993b60f063000000000000000000000000bc048bc41b0de5146b73d354135a4344e5ab604a00000000000000000000000028c315fc3f68eb546e35ede3e9c023841118829800000000000000000000000069b330bb7d125926f118ff589693c02a90657a97000000000000000000000000efaae0e81d8a63ca817aad842687da0bf7fb83b7000000000000000000000000ac759a4158b2bcd792caab0224190d2f2438ac9100000000000000000000000039517b93e0369181d63ce529ff24a3494cd924c4000000000000000000000000fe1680b4331ee1f6fdeb1f11a9fc4cb13eabd5a40000000000000000000000000a0ab933716a29e919075f4f1d1ed8ebfc82fd0a000000000000000000000000294f7599c4925b17ce660d6facad012b374b0d7b0000000000000000000000001d68f5a9b534da1992ef8dc978f9864a59fba6f2000000000000000000000000791761855d4108d7efc0fc71044174dc1eee1b8900000000000000000000000004d5229c29643f3917f580d198c717b671f6d89f0000000000000000000000006d712236fa2441e58149b20f1105fcd074333f2c0000000000000000000000006000e89be52d25c99f82d669ed8f20609a0fa309000000000000000000000000d1b7b9eaffe5e39b4ad648bda5ffa375d06464d8000000000000000000000000df3e133eac6a44e2b7eb47df2ff769f151eabb0300000000000000000000000055ff593e4b74e61e6d81fdce494f0f4b443b436c0000000000000000000000002132c23dc7f6b8f86bc9d6b0781c1b27fa29661d000000000000000000000000cc94be28d533c25a1994603e6c638ebbaddd4ba90000000000000000000000005c24ce84ec05a4f856b762da4d199e466a89eb730000000000000000000000004b2a0ce2095e6bf39f1ce4d1e4b269ec7bc0435000000000000000000000000053073277897d7de30eafe9c69bc94572f7feaf51000000000000000000000000e986a233e4e7ec7030b12c26b66bc5cda1d5c767000000000000000000000000f4e5e55ec4b671c11d7ecdf9f24ea6ddd1f5203e000000000000000000000000fc69430e28007d408dc6cff8904db1efdc4783f900000000000000000000000013cf5197472b9a125480d41d35dc40c52c8e3f1f0000000000000000000000007193b320bb1f96bcc5661c989126673729884b53000000000000000000000000993462af739fee85b5b639a7577381ce775e4d2b0000000000000000000000004d9633af1523139282799039eeb9e9250b1af1c200000000000000000000000050002556468bedf8ef621d6f263b0cc211cac74c000000000000000000000000d032af0afd38f9daef3706d16345cf7dd5d872f00000000000000000000000005c73bc32b8ee40d384e7c147fbd76fabe17e21d3000000000000000000000000cddcb5a490848c51cf87145d1bc29f48b3d577430000000000000000000000004308114a8b4b22d0056c160cf3e8655c542e3029000000000000000000000000dec7e18b91683a0731800d1d91d5c5b83e480e99000000000000000000000000bf0e67a472362246e1ce5b4b17a7e9e95b1aaee90000000000000000000000004864046441fefbf45831582500437c8f3ec66556000000000000000000000000eccf16bc9907b99b427139a571bd810e55f413990000000000000000000000002978a15b3485e67357eb930fe6d51341b1ef6624000000000000000000000000d63460795f7a81ba5938aef8f738873dfa21fb81000000000000000000000000e201d41eec9f1c4eb28a683adb307065408eec2a000000000000000000000000fa0abef39f4a32c0b295fde95cc0aca9013f56ae000000000000000000000000acc428eaa04e4e36880a790d1f7b463b3e5c86ba000000000000000000000000694f8273722c7e5c198245a4ea5d1474440a02f400000000000000000000000004e60bb2cb39b4639f55cf7660aa85dd9bf533c400000000000000000000000061f4062180a310d3739ec86589e7b26e2e3dc6d200000000000000000000000052128c9b996aa330e8497f29b69b56d696936fa0000000000000000000000000d0aa6db472fc8ea54dbc89e42c5cb02d29a11aec000000000000000000000000a49909a496037d789e4f4cee14d6e8fc3adc53510000000000000000000000009979fcde360b95646db973e2e1f37c56b81a110600000000000000000000000090a80e09d5c2f2e48adb5866cdfc0ac1aafde93900000000000000000000000035bcc3efb59a8df73a89543d420b70b7f4286976000000000000000000000000c4a9bfaa5754626d42ab02b5d41b6f6495869b620000000000000000000000009f3ea1e1382269f7e6d0cb1c6a577d865aa611c3000000000000000000000000829825e78a45b299326ea26f7491fc8585704ca300000000000000000000000010cca32bfc3de5cd8411c667f8657fb61482968f0000000000000000000000000fc4a146e22dcedc500e3cfbd5fb32c5420fa13e000000000000000000000000b8b860be5c42230387065a9f7a575e4e85d437600000000000000000000000005f4b1a2a58e796aaaf6be951a4d6c348de2af927000000000000000000000000389659f924c7125136fac18e8584cb15f48ae7db000000000000000000000000b9b2de8cc5eec58e38a8147af43ab05dd8d4ea490000000000000000000000005cf7aefa7db8f7bc02c9a9af1849ab3622bb0d42000000000000000000000000ce7eb874cb7327fb5e9b97ab9d90af4a014ce43e000000000000000000000000ad6a5ff44559cd21aa87bf7ef673664b0cd5d14300000000000000000000000082f9538d2ae666603183ef6533fbe6cd6d4074fc000000000000000000000000fda14958f27b3f16226c1b4198198647696a551f000000000000000000000000a4d5b3095f0a8c6d4548d7337c28b1732e2d05a700000000000000000000000068b3bf7548c4b30083702d8fe0aef7a648769aa10000000000000000000000005b0ddb959589b1dcfe0b9af1e7bbc672d7e6b3960000000000000000000000000125850dd0b8f8d9729e8a1c6733d46e777598b0000000000000000000000000d361b9cb88e0c7bcea131d38a1590e5625b6f0db0000000000000000000000007be6cdee8c72709fc9dca5706fed91a0b30938e10000000000000000000000009e4de43cf54377f513b9f6bbe5fa6c03aee1bd5e0000000000000000000000003a19672a76b805d7f2578b26cbb62f36e22fa63700000000000000000000000087ede2d274911cac5406e7925b652e35fce4efff000000000000000000000000f7228a23d1b1421e926667be1f4c48f075f5db0b000000000000000000000000ebe91b31c819c1109fa133a852022e83175414bd000000000000000000000000ff65249f5c9b79267dc27327234d70236aa3502d000000000000000000000000f731782e9709807bbb2ee73748a633becb66779e00000000000000000000000063aebd12765c88317b6f7f7a2138c49a925844b8000000000000000000000000d64b36eb6cfe5c0cfa8a72bbdaff6b19ad154907000000000000000000000000e64c256c6c6a007759707372e509475bb7bea3ce00000000000000000000000078ac24968216aa73ed0c547822ccaa191871fc740000000000000000000000005ee39646eebed309ba47057bfcc6284513cdfe03000000000000000000000000e63bd3d86784212a010b65b24828030c616c950500000000000000000000000033930e4fecdea472158fb7eb72ef85cb944bc064000000000000000000000000b191321092498dfd3aeb590c106937b36dd759670000000000000000000000003fe0bec6a99e6cead27592860427403ebb04de520000000000000000000000009c09076ceaea8d109abe3453ab45769928827f67000000000000000000000000b535f5328f3658665f0d7dc1406104729210e3b100000000000000000000000020f309d69ed89ac7d0dfde4cbbd1065d85b4fa420000000000000000000000000adefe8743419ce2307ff76b8f4cd153001c52e3000000000000000000000000abfe4bee59623d000d2773eca0afbf0a48e1810a000000000000000000000000161e6ec3c78cab1842a33997cc74d0612dc763a300000000000000000000000041cff18c9cf9d255d4935b8256d223472b1ebab0000000000000000000000000917d912baa7c1024d79c4239f025abf31e39116d000000000000000000000000c93c7be52e46ac0b77018c4874813bbe31300d26000000000000000000000000c6090e69b2b6bbda4114d40a2fb95ac54a351480000000000000000000000000a1280288904ff1d2c4d0131a439658bc726e387f000000000000000000000000ef1be37fe44ad50f56d93b3621879e078a839968000000000000000000000000b2163ad1c355ab55d9911819d89212063bc7ac3a000000000000000000000000cbead7029fb2e2ccc5f0c42c456fc6987b55232c000000000000000000000000895d442ccece34eb557aa146feab1c77e591b7f3000000000000000000000000a906762047fdca0973b8de92c80ab5fd99f89fdc0000000000000000000000004e3c8e44b8b8152e974b45acf94c13462692a6eb000000000000000000000000d39ee58e7d11671d46027e0ebaeb8167c740546b000000000000000000000000f9095b6a8e0f3d368b89cfcc79e024d75fdedb6c0000000000000000000000007e24d5569fe372628076fff96cad64ff378fd699000000000000000000000000396f6bd2372c70c831809f497e56212a49055f0e0000000000000000000000001788bb1d7bf6c5bc2b3b2c2f14a52e6671353e5f000000000000000000000000ddff44272f4ce0ea683646c34584dd55e281a90900000000000000000000000046e90b2bdaa6ca548ce0eb76d4b5988ebb24f291000000000000000000000000951747868ceb916816853990504a866df4cd0476000000000000000000000000c585234a5982d1ed573e72fd4aa929e06bea03610000000000000000000000002b1e3d6015102dcd1a2130d72c77adfa9271a95f0000000000000000000000008c4e5885b06afcfcf3c0da5af0879ca2d66ddfc80000000000000000000000002fc3533febc9a44eeecb19d3f27f077818b2fcd90000000000000000000000002df6cce98634d3cdac96a2e2f9347fceaa3a58a800000000000000000000000097df672c0c85d164cef9e013f1ada426f18c3c1200000000000000000000000017999a12f39e0e6563b8bab9a83cdfc7c9eae0a8000000000000000000000000794751cedee4b88cdb391af73e48119b818bf58a000000000000000000000000fd69f265eafaf361d9ac9197727d0c0dc3f1ed860000000000000000000000007c3fecf723d88341cd86188a864f5fb91974a5e80000000000000000000000009c1e4b854c16ebb032ec366b1fa82a42a3b5ba9a000000000000000000000000b2267b1729c9d82858dbe2b49b397f88d3e6a35c000000000000000000000000c061891fe5776e96680c1b1b4f72a0737e90ddb5000000000000000000000000054be84feef69b3d35a385aa059a87547560f50f00000000000000000000000027c02bb2792107ef47847c50d66c401e10a08902000000000000000000000000fde8b1be372b6deface04424c1590d07252d99940000000000000000000000004f05c1f8d815d2c8dbadfee32219214127c6c643000000000000000000000000ebcbd809801cb87890c88f1700b8ad62429743e7000000000000000000000000411f63acfd8ea6b0c7c7ec1ada11efffeef9949700000000000000000000000089bc3436f43e19a1423b03e5b809d832c10e432600000000000000000000000093eb316aa13db126f670fd1286c8b7b6bc87d73e0000000000000000000000003ea91146ba34e9f5176969f348fe2b50c0c397d8000000000000000000000000ffcffaa05cde8cebe759c9287c2279e1190029160000000000000000000000007bab3049710af156b7df2b60ffd0fa0fdecd089400000000000000000000000048cc928a67dd75937cbe20c6a79edf2fc54f2ee8000000000000000000000000540e497fe09369318557043ced11802c41ab829b00000000000000000000000042bd819128f83e738fe0091d97bdcc7f6cfabae500000000000000000000000084973f55a388b9631f0f90fee6f463ae282ceb840000000000000000000000005aa3a33db7ec1bd6a93bd3f49c38b7802b095eb6000000000000000000000000016c52d3f03d2d19897b481e9680e69f635c998a000000000000000000000000b85bae004b52e3075f84e215e5f1fd9e41534048000000000000000000000000e1506b658d6dcf580649a44affe3d7011e386e9a000000000000000000000000c13ddcc2ebcf3b354535b9594ee62f1de449c7270000000000000000000000007b0fb07ea3bf61d8ac8341e2b77c6a9bfe9d28a30000000000000000000000003614bfda5cf6e540cf15e86a616c7eb761220c3900000000000000000000000024b8d6cf3ce1c1bcaf920fe43be6d20d923b91280000000000000000000000003557abc8e6040eed714a59e453c6496d9b615399000000000000000000000000e03fa2b03ef0e5c1bc17f47aa7bf518656a675cd000000000000000000000000ce6daf87fe847a2e36c781e2d3544e0890a8a4550000000000000000000000002afc74bfd416ff7214e6a1c069fa5c1ac6c45d1a00000000000000000000000064a42c3cba19d31ba8879c8846d45849e52ae442000000000000000000000000afd6d5102eac291b660fd50e45b28eb2129fd5ce00000000000000000000000098d6905440fb95e022396e88708113d9eaa8202b0000000000000000000000001608df33e410f2bc251e22f035a9e97e230d81ae000000000000000000000000157ba5d0eb50f45f3e0c3c1ef91fc7351bb89fd800000000000000000000000021e52dc9e7881b1c23b37b337037d4808ba0cbbc0000000000000000000000007948602df75c77897c6c4a8ca6db430e8b676389000000000000000000000000adefa2e8730589d7b22bf43c7fc70317c14147a7000000000000000000000000b34a88212d53d85076cd56c32640a7bef1fdef62000000000000000000000000318a5c3d450df9432226c445efe969d5c8c2d06d000000000000000000000000961c457006df307d28b7a81be8cb1c0fb17f5c400000000000000000000000002ad915e201fd4626c4f1067294d05d9fc5a519a60000000000000000000000009cfb67e47f33b7cdf8e107c7adc2b0db531d572e0000000000000000000000001998b48fd0c4b5ab4db9754140de6812561da56e00000000000000000000000075dfbd4e5505de9e0a7caef489981ab2b3d13b4b000000000000000000000000f9ec3768a7648ddc7f5c1b65c7db38303d9ef94c000000000000000000000000a377692ff469f334e30438e0d11c0cbc86934aa100000000000000000000000000b0c79234837779e69d37d0cbea12df06bbfc5e0000000000000000000000007c2dfc2ce1e19f56723edecb504e2f9dd447d86a0000000000000000000000006c187a63aaf8d4296bfa5a7add740df0f20150b702cbc6fb6670dda22bc280c91b6234715ecf2e45280324dbbc7953a02db8c8c8007148c1605802245aa809030508256e05575b07fc8b0163818df84d76bedbff04a387ef5b63ecbdaafc3dc0e7f3402c9c2ae6917099ae9a37f7b0a44df4b7c105e134ba1e08f4220acc72b85a1f069677ba5d2e5f7f55bd9bbf23c41d2639b0020ef128d2669d482a68d61c8a50dc96accb34ea699a4cd290ea781559dc90300751c0fd194771ea880f9a1b38afad1629a1e840b80ab39fb0a523cefec1a184063380c1558d9e32256f8ba792c24a7a84173def05221f1b4e66ac5533b72f470486fc67c16e215c8a8ca5012ad66a8389fd7aa107a20cbe1c78beb751f6e8b9013b2ebd3e22d29464c798abf5a152f80331dcc8296fbc925357e2ddeb0394f10411977c64fd8864959a8d9225b05a4bca804a09f2a057a5575f0ee886616c2307c5891738db968ac183dbc52c9b5ab229950302393c89f73d3bab931b23641605fce41fe0cc77fdbfd1cf53e646ea7e4cdf8d5e9d7ea67d0133c9f9246f6127000b89165946078bd3f6d64e7ecc80d48498cc5ec3f88a3c5452a610600b455d038a76c8e55559d1d647641f6a1b22b980b0b91d2e216fad43975f8ca4c6434c048d203be17126233cce66088b1cb8013c9cdbe9f982093bdfd42d7549ba314a04905e99a53fd48ef5837523a0310d30c6260d8a66d253d0c3a5faea3e152bcc02d316460e5e5c9b6d92025bd52dc7d382dc910afdfd49a3a2adcbec4a0205fe0452d7a1785df6f6fd26844e53834a71d28a4658544575a4146c8b55aa8a8f3203d9290e6f8b9dfe459ab023a74bc805d4d75b0b9014f875760927b10c1e996901db2642c5962ee347c40d401272c483ae0a83600e79885eac09e2b3e23b1cc007289971e5986a47132dc05dcbe2ffe1988e0980b7798d3b2384bbe0a21cf6290485cf4af18f8f2ab10e1b46a42f7954860fea499319ea79f0d9f3b21938f5a202e8c712554738ec69940386f739c6043cf75acc4d2da9b24ebc60f17c021fb8065a68891c2482afa4d0029d6fce57ece33428ecd950a923fb7d674c026ed7da0689a0c8a9d4fec040695705a1ab17700e4d7d78eb743db1a8601c0b3a0bd9df0113cc4d87491aa870c489cec8155ac74ef071790f7999c93cc85ca1ab41b0ba052af7ffb53476b194920b6788217186f63edf15ce79e474a97d2472aa1e617001328f4d570b625e1c805b5fb7331897933d129b568ccd2515c23fcd1c99df5c05d0a113a42ea43280d7dae2750d0e2e9cd75a93ccd914b64fe224ea7afa39530627ba37b15c62d2dba668b1034b26623de7f996dd9533fa73c1586a4c688df206b79b758b80b81978af364c80947ba556f4fc94093466de9c4497c0482a8088042b4da4fae5d31d1e3258d04a135acab1e8b4db8164c2d90be2aaf0ccf4dbf30014ca18940cfd7e39d3e281a4fc0af0accd6be173b24b37fd36e4ff96f76bf20139efc01c086cc7451ce691d4749452697c18efaed17b4a0c63091bb94c62000045003c33494524fa5da82a728d5c4b77ea8e8aa566b64eb60b621e002ebfaa0325def0e0de85449ec1d3d3b83c007b70d9bd0fdf11c71da682625fead350b2015b415e3b9c2dff100255c1dcaa8c7d0d9194b36a14c865089473e6ccd573ea0744d26f320561919ba980db8d2a966371cd8d6175fb3473deb2f2da5a76db2105a23ea653ebb783105f4444783977e4a530090b615ff7df8c8e96394f61b73107f92a4b0c55ec21660aebb5dccc304547bacfabc6af5f60f6500e7c918655280636784ab03e494aa3c7f25834b18c0fba6cbd8e86b282821de150a3b342b2dc0120f00509a1c9e99e84daa8974584808dc6c4dee423502828d18e1ef3f2b8e902a180535708773ebea0bab3d8d1e2fb0cf393eaececcdc3613a78fabaa09079032e7be0c91e6c968183dc8bd5006f19d4d6d5c7090f9089e06c6aacdfe9ed4503b4d64a612824715a3c49ed495ee63dbdd9241d04f853a1dc6228b38b73fb8a073e41cb428d745745a0abc836b694d9ac0dd79f770d62ea52cb976c0b086a5e021a743a069f7f7e4f45080ed7a011664ffb6ed6fd113e3dcc3c417dd0fb089e019311cdd07ece36f0e716f5aa7a34ff7f062eb930da6188070002d8b0a5c30c01c868dd515462fbce29a17482b2b1ae5af5213e2ed8d86963b67c56e6599a7903cea92c42c37554d51fdb948726529d130fe8c117550f72c885435fae5eb56e065d26e67908fa2ffff4487bb1efe151aa41369e7eafbfa564486e836d3bd1ba06402d97e30e80e664ac42b9088a49a001b4552135535039c85a043bb05f4a440269899123d318c4f240d911ca6c2b68073f5a81bb98a97520e871bcce97b12f045a317bc960fb52bf95537927e4f9a4480c7d11d226241d11a8d963bea99322027996e5b6ee2d57746079532a8b97b2aa89dd51aa21507cf499f8e4a2f8adbb059e5539b72111a54904b6b34162a5f841b26d33fcb6dc35b735580ee2f410b3009cc250308c19fd1e07b9e746dfd2a60bdd065e26257df35d2338fec5ef34ae03e969e2687d0c06232f56f5f02a474a73cd179ab762b5af12f8ed90f0a5e75306db0287790689d3060e8bc9ef93d1ffd194d77ecfa86f4af194964ea76693c9061551918d6ad3b5e3696d8b3ea136df25f1c52ee6dfc85bacb6e026284bcd8a0015e9b40cf9c28137d3b78f2c53791bf9b95422f1408ed12ef7a6cd8603baba054b94c8fd6a99443016c409a91ef2df0faa4a1d8052bb9d9051c7e7b544ad9d036f3a641f6bcd75df08efa532d1039bc14f95353ec57b72ffe1ba70e6e0f6770205cb62f3f38c1a008fdcc97626856a1850169ebb0cf35ee674bd5a7d5f0082035d62911c08558a02ce4898839baf8d78fce0b5f2530994b7b9d5f914a9c51f025dff9cff22e49354ece9183b4ac12d5ae6855a187b9c36b35d44a682e3414405f3be5617ea1611563ee875701f5d0f9cc13911d8aa193d97d6f6688526a08f02ee3d6cb0ee1d86fed929dd68a7f6399260d9ddebc4c9d378d704e88531d7e400fa3073ad85e9463a89be96a5567ea872868cb2cdb5c868e8cfe4b56f8c2ea406adafddc1291005b3a7e9fdcb22f3e83fbea944c15af0c903654872370881410635d7858f0292e59bf5b6fe0b432a1ccb07aea99175c1e8ec4eb02d51d4cebc03a8aadf33869c2b779fae1be451635fc13cbe68057839cca867b5eecb36dac5062c6d677436ac5f2a2ed651d7cd053569320e401361423cedcdc129a0aef591062e2f71ff7dfdbd3916c83a55d66601fdf93b9acab92f8a2fb22323c6e735f1031d9abfc367524d747d821c50bb77c88a068055408d41079a10d023c1e1866b00ebf8d2a5382b292893ef1124e543f9dee7b554339f69234987c8d74f2aed6205e7fe8f9a5df722a516b72994c4b89c4e033428ba754fec438770610b0b9a99069eed80de64e1bc58c373777b4fa2491cf1c399601855b7f3b2e0a6830d8ef5038a248b2381bf5c1f0a14698632d210277f080162921ca7a1b7a2738c6c5bbf0205f56db4d17264561bb9381351a4fbc162a1afdcb6fb6fdfaebe8769a4dbba046f339d65775309c48e8b6bb2a058a57b54b401dc87e0cc03efa906d1b38d41056386ebb2f15b2d6d8e4933839110b9f13f1db8e27587e2a6980d0ce8348d3c01ad4878d1ace910a79c01a1bd13e7620a2a7e3a3519731e0f752db918068744033348b2e433d83f60b088428e186e6f3ba9ea4790b299b0a1405eec6a6e55f3070851f095fc5f9b7ff5f9fae0455ddb0bc82847e4c63c0a403d50867c40ba9006d9a851e9f59a76adf610f8d8285c2410fa73c9a91a85a99a16556a5d84355307d1ff28966f528a3ecb7e9ce14d8f3a7bd4cbbb1e6c0877c8a11455eb958c6707a2475c4a250b0015a853c6dd182480a9db112d60f8401e9dd7777eeb71f9c107728d9c07851dadb6b4bdd62f46355cd2e4820705919ebe685b31403d824c6304e120883dc60cb0beb07c3153106d2e5da682d583b156dc10cc809bfbf8025906a284573aebfa0f0f4df25357ff37c37441c774ccf0b66a4dd885e423fa8cbc0403926ef781adbe896e07a2b9f051549bb577be772b66314dc21692d2b01e0a006f31a5e1deac68702bf202f66a0fa624e823adc363d1dfa36c2bd6aef74977008ee59c64c86716fcef0a5d73c472c5ad847715c61e81a90d8d573b0ed2c25a04f6723b3377fd675fd5255ce9a1265d77c72ee1b9ca3ee9dc880610e12282eb077d882266766c096394ca01e57c09295173e59c90bfa72604c980534aaf2cc70033523898db929ddb0e98cc9a5120edc8c001ca5c3de13cb829d14df838bd1d039787075824b191e0e324bce66f200419fae588159859dc879b23d30eb716cc03c95b6009ed41282d2f42bd8d100758bdfa0a8e8a84f81f7b2dabdec725df54057d5266b924d3a1e9d6ad34ebcd9306de478c37ef5e25f1de520bcbd1a6dba70421c1bcd660b174d55882d074e9755a0528a8616373e72903479f428b48078d079ff2d1c32f6512bde817accf266556f97e13bc7b809af30dd27dd2267cc73003afd17e3d9a311dabbc1361965bba8e31c29abc5a3710b8420b3da4ce29479900d215f7e4a55b3c0001dc526d6b9498bd4124350f8c09797ceadda4123f35ee04b0245f4b204f8cfcc9db3d1e5569d2d37cbc7471f77db9971fd83b94ea822d01abf99fe280e80c680f86d7c5fa7572dd966c8f1c3fad650f7c028b62670ae0018e418369655ca90960164b94ff31d8a038c9aea50d5827aa0e622bdf581a3c0000000000000000000000003befb0c9d9b11c902ee122212fbcaecfdaf939e4000000000000000000000000b2ee608ee0a15bf18b776a5c53f1dfaf520a4b8b00000000000000000000000062fde18afc241252bed4ddff3770853bc875fde5000000000000000000000000c7e28ca08be573d5121558312c72509092da6ad0000000000000000000000000f99244cbae6476d2848ba1f18b513d6bad749c61000000000000000000000000c144312c64b33d84891f271656c1a80a34e674390000000000000000000000000264959aa318e44611012db33657d596ab362d8a000000000000000000000000c98124c9ea1b23a2545663006f1968f6b4d8caaa0000000000000000000000007a1276d37ba3defe3977be3eb8b160ce5b4fc838000000000000000000000000b0fa7620b760532fc37cc3f86bfe5b131565b88f000000000000000000000000da5a28cb593c90f59ca2de2baa4f1839d6e9184f000000000000000000000000194d79a96e8ca1d04fcfe1dbf30f221385fd4a44000000000000000000000000c924662987250ecc4eadeb0e201108afaedb6674000000000000000000000000d5b3f790327a493d488701168477f48e727e2a59000000000000000000000000ff27c60212c6d9681c0cac02f327175746933d400000000000000000000000000ef82c21f4c7ec3bab29e9d43c777a2c04afe3b600000000000000000000000001e806d378c56a1ba48601beec7e07b67e26a0fc000000000000000000000000c9c8f7673fe484f87f1f7130a0d3c85ef4a553c4000000000000000000000000e3acfe39f8411e93359044f8ab04e638e3b713820000000000000000000000005bd83d32b1cee2764dab539c677e88a92fd9939a0000000000000000000000009c26d8c22a783bf15bf6d2f2efb0ac3e3855a752000000000000000000000000bf96297495bb7b1f585ae109489138e6c1173135000000000000000000000000ef110ff185637f4c700b2857617a2d12945f1e0b000000000000000000000000be9f9be1ef31e4f47183204d97e46bbf68e2bce9000000000000000000000000dcaa50eaba8aa9be6f52901b206c8b4926820baa00000000000000000000000024a9be357ddc419d41dfc6feb4527b4ca90afc01000000000000000000000000486b15478a363a31a91d813adb6b59ed95dcebbc000000000000000000000000394e30ba4ac16c6bf4e923aaef927ac883413735000000000000000000000000b267a4e04daf3fc4c22e112ce7cacf71514ea6a10000000000000000000000006cdd877bab030c0dbeeb379c6bd7a834aa95c211000000000000000000000000bef06738505d8c57c3d57f43b185aff0695c87ae00000000000000000000000087d2de863c906e8ccd215a01d8204f89269f93fd00000000000000000000000049b6fd60650025b84c3591cbb2b0845a9f0cb46f0000000000000000000000007aa9e9a847cda36a96345389bef5932055037a4400000000000000000000000033c5d8bc43e3247ec8693730c145b760999e0f6a000000000000000000000000418d34f534378f5c2adf80c9071b24658cad56fc000000000000000000000000eb523d72b87518d1aead3012658e3aadaa639cd60000000000000000000000004b36bb379cb3ef4d2276d9b46ea91ddf7c542fb50000000000000000000000002e4a391283fecc6401bdd91c0588632d0c2d8ad70000000000000000000000005b31e9e6d15807c68f5f0805000d85a951d1f042000000000000000000000000b14735e27d5229f7277fbc2c84022b0ac2b321a20000000000000000000000001d4cc7d97d6636e13aa783ce7ed822666e207ce90000000000000000000000007f03b515b9128387f8fffa268c99a5ddee28848f00000000000000000000000064f6f4efed28655bd95d2d664abdf3cc559e4eda0000000000000000000000005dec342890d059c78c2e4b15f2dfa0f36ceaa6b600000000000000000000000034a187235e47d20bf6350d3a0a09aa9a3c270d4b0000000000000000000000006ba77a60f61cfbf2fc9100d2d7201c77dcf86d1900000000000000000000000089c4ae310fd4f536cdfbbea3835d27d3cf44ed82000000000000000000000000eaca0b5b8e90bd69ec42fef8bcddbe10d90b21d700000000000000000000000095304fb94fd75c752e631cc1d3eaade75edc098d000000000000000000000000f24a5925e124e5397474f344ed4941b6d55c8dae0000000000000000000000008e32963d97273d04ef5dd2ecbc3bea8e37c91d89000000000000000000000000fa8d73c77743f94e7a0679cfd9c84d84ad5a77c40000000000000000000000009a193b4ee0161dbb503cc61b5ce92155f4cdc2080000000000000000000000005f452ff491cb090c3b77ad0bb8098d62d7d55a7d00000000000000000000000059461b7643d89f02fd5f1ac70834e6e62da10ee1000000000000000000000000d218fdace7b2c373ffef0372c33e24627609e723000000000000000000000000071765d0b6f5b9c9f50d982668a6b359d22bbc4b0000000000000000000000004a4450a70f63ab7a53bd00e1542d281b0ec314dc0000000000000000000000007ffa22cb8d56656a1f08060f0e36bca52b55c6ba00000000000000000000000080a666fac88fe975bf9d82c7a66dc96f26e4c7ee00000000000000000000000048e6edde08dee919c40bd016fe13ee181fa63d1c0000000000000000000000001fe9e9b0ba82b18ace493d4cca7d5d4f6be5f87d000000000000000000000000c554acb6728f8271a3e002b301424422e733f9810000000000000000000000002351dee945da5eaeb1d50e700fef89e59dd7a9dc000000000000000000000000fca883b6b6b576da0e48af9b8759fcf0fc33ad8d00000000000000000000000014034d3e1bba6cfe98ecd993962304920d2cb711000000000000000000000000d3bc065add0f26901f2a52380f797716d781aa39000000000000000000000000a6242930198665453904cd9ca3b022db9d2d9e8f0000000000000000000000003796ccc7d30a82bbc13c6be212296cf222ce2cd30000000000000000000000001fe4056780a722a40dce23db12c49abafb83467a000000000000000000000000893a4fe83bb814f6a65201dd70018f6be3fdc2210000000000000000000000000eeda626e2bdd9d3826f2386fd9cd9e7d3eb85d30000000000000000000000005344e80c403b45d57d6136f7730ed598c45e06780000000000000000000000002da2d9864d1c9171c0f1eccd152f0758e73389b2000000000000000000000000938756fb1716dd4821ef02966c458819b5de02a5000000000000000000000000cfa9989e795bb335bdc37281f4b6f957af67439f000000000000000000000000449474ba6959cadb3086c16ed2ddc1a2d7835583000000000000000000000000502e5df2b5239cf3873de0fdfe2b268d55aac68f00000000000000000000000069b1599e4ae268d35bc64b0e1cb23c21be37a40f0000000000000000000000003c811b4196dbf472138c332cec2184607ff0892f000000000000000000000000261bdcb6da12c32c1304e85d25c861663986703f000000000000000000000000e446bc410079043420736270b7037c1ff26da1e8000000000000000000000000c77a4c46278fdbd2f3c9c3602ce38cd3c011c906000000000000000000000000668f1170c97f3ab5cefccd74ac6756950a1a025f0000000000000000000000002693f81270ac09a55acb0fdbe47522aa0ec763210000000000000000000000001ac1d68c160db9349f845e0a50970c1f42df7957000000000000000000000000ffa409f063b55f4f96f8cc53ada72633bf32a1720000000000000000000000002e54c1f611cede4248c6998f2262059888d23ecf000000000000000000000000ba4db97cb1da192502d0b4bf282c9b85a993c4c7000000000000000000000000c4d6e2e7648e264f86bd37bcdffdd21d97ae7e0f000000000000000000000000198a21d60909aa41c623ec953791fc00946db58200000000000000000000000081b37eb91f3c3d60a223f7d4ee7c7fb7ff9ebbb1000000000000000000000000e8c5baaec02eea0879d4caf597576898dc6ce043000000000000000000000000254807fe50081544a5aca9d39f2ab7607165693b000000000000000000000000079abc1df88aea57438118fff523eb78281994990000000000000000000000004feb5cdb307d6e5ce36229e72015a0f03cab002e000000000000000000000000f97f6ca824860622679489ce9a44f908d65daf98000000000000000000000000d37f497404701cc748cb360787c6fba25f4e85060000000000000000000000007df724224e550035534439a10dc011bee38dfeef0000000000000000000000000d7503fa3302e0ded889be8a7b1b366d2c5a1b97000000000000000000000000d3aa4472a9684d1286605d7ddd9bf7ef22014da20000000000000000000000009a4415c78d9eb4d39b781b78708e688c367221210000000000000000000000009ca911528aa7a504368d8cd8590db6db598d06f5000000000000000000000000953a34a1e1b3d69fe66cf83b59759290c809af9e000000000000000000000000461ad9273b884ce5a871530dc8729a99a7b9adbb0000000000000000000000004d2771e2971c975ac59fe46120df95d9dd444545000000000000000000000000ae0378f96844d4e82c8ca77a15e9f923362f9e87000000000000000000000000490d49d65218b3ad32a624f246f872a02cc071ed000000000000000000000000bb0b6764cc8aac85c27f7dec2c9215b001aaf9fc000000000000000000000000ad99a09dd889b7494656ba268cf0cc02a4f0371a00000000000000000000000071a2d6db7b3b6c8809af32671403d2c4687c875d00000000000000000000000056a467ed10f7a2b756658eb137934f157f417f3700000000000000000000000051e63fbfcf88fcb15f82ed41bba567bd27326a02000000000000000000000000691f6dd46b000cd51f327e83e3f7aa1f26cfd334000000000000000000000000f56dcb65215e2ddb2440ae887b2e985f9924fd6f000000000000000000000000330017730f4d69823252af4bac137c50a0faf8ae0000000000000000000000005283bd3f01ded79be02576196d02a8e829020fe30000000000000000000000000be3820699933600445f32fd613b5cd4b2ec32ee000000000000000000000000492b8feb21e013c081eafd6ef667fc73c12dac4a000000000000000000000000abfe1c7c56ed213139afa16aa96fdf06ddd19b31000000000000000000000000192391f907acab697b73f046d1b7dd9fc5429f81000000000000000000000000b741a21b5d409dfed44c2fc1d2e7d7be72b1d1f100000000000000000000000052df336b3cbe01151347270690f14cd3d6739883000000000000000000000000b95123ddd7e2cf4880d5fbec119cad6a7b065612000000000000000000000000bb21d733b9d89cbab2f8440e1787aa564fa994e500000000000000000000000061d281a0f59ecfe0add88cc22e4c51f22a8765dd000000000000000000000000318ca96a08a51dbb3474cb9d9b4022b57af98ad9000000000000000000000000bcf7b5b26d97660a8f9183e0afe92a9ad4f526170000000000000000000000004dfeeb9a7b52e711fcf8fdc6d201b360deda69f30000000000000000000000005345980837546ebbb28f55a4fca6ee60a7dc5b0d00000000000000000000000003257e99c72c4f1dadf68a18f4496d3d76d6b3de0000000000000000000000009460ed43729dd3b6014ca612aafa2431513406a90000000000000000000000002039cf06cf6651a7b57db226a6db74debfbc3c81000000000000000000000000750e8c2acd4efbfd0d0204549a5cd0cb7ee88bbb0000000000000000000000001bc8398c5daa705cdca1b60679c6997a77b7da54000000000000000000000000552c3e258166012d07f3d2452fcffc79bff018ac000000000000000000000000ba1de4ba2be958998c3fa6c826bf098202575e80000000000000000000000000e3f484884e5efd779fbb9ebdaa3f9b02917d7c20000000000000000000000000937afd76c95069487b70f9523f0cc0d8ea9620f7000000000000000000000000787a5a4d1d4bd448249353f83ede94844fe262c40000000000000000000000001337a07835018e8ba1349a08a3d3db5727028037000000000000000000000000f1bdda093e50c8bd200e42d5b01ced18065ad92e0000000000000000000000008095d1bd35039c513bc8a876578abb51c52ee18c0000000000000000000000009651ee6da8977b198abdbdcddbd456b0bfa86a60000000000000000000000000a0acf8acc23ade30db34241c3f99e3677b1cc7fc0000000000000000000000007a7f5eee5407c17f6674bf3db66dc7b7e78f0b7c0000000000000000000000004dadfb0686ec8ed373bf5dbffdeef29d2b3d6a75000000000000000000000000e760420a9aa8c01b8f261b20e02c312773c642970000000000000000000000003fa30636d407cf74dd0249c3346af3456f067ed3000000000000000000000000d35c9f5cb8cf6d64fe5e8a513dd8343ca91e98fc00000000000000000000000029ab3b9eb33efb62109514e9498bf0ce8f3bb05a00000000000000000000000062727a6d7e2f744bf23058262dc2eb93e27016e5000000000000000000000000b187155b87365edcd0abbc930ad32e131cb265bc00000000000000000000000091f829b95a612fd71190023b2d805b5304f3a1fd000000000000000000000000f5473b8e56672b4a190664d0aab4a1645f7c45f20000000000000000000000007ad875dd560289db73f57b3c4156ac05cc3594d4000000000000000000000000334247b9efe465ebe6d5ea05f03dd3ecd5b401b200000000000000000000000029d07e2461c9a6b145d38f69cfc1f8da996ba180000000000000000000000000e93958397ba465d1d45952e0b62edfc825068ba700000000000000000000000089ce46c915a9993d0321677d17150503e308b0190000000000000000000000000b63edfca37ef4effdda9ca181e274d9f0c4c268000000000000000000000000a3fff7dc4e925b74d56b1ea2ad051a903fcb889c00000000000000000000000073678fcd9cf29fb2b15dbef32b52b7d86cf487a90000000000000000000000007fd107bf48c0d04725afe24f3a51386f007913e00000000000000000000000003926d3bc941839f1a56517a78a011b32495c367b0000000000000000000000008417a31648504607a67f6b928d9fc4a5a48dc68500000000000000000000000008e38713d7c9c8d05d9d285bed647bb2d902d0c800000000000000000000000084da70bdaddb3c2ab84639183d8165248626e373000000000000000000000000df05adc850e767278f52553d11c579896a83676e0000000000000000000000008086d4091fa84053d2914a05320e0182bd7f953b0000000000000000000000002123cd45ce9cf64a1ffad7f929c72c635b631fec000000000000000000000000391e0cdb48b4d258314d99a39007d2fef876b545000000000000000000000000e29ea1421fd9305cba956d72cd2d10f1add3e40900000000000000000000000022c776bcd497b29da16e1cf76dcee5fb612ae92600000000000000000000000051549dceb63e042bffdc1c4b57ca45e6c81d5479000000000000000000000000a278a890e60b4ee5dee9e8b98504faf8e804d3ae0000000000000000000000007a325a7612fb51d6b86ddcb0c33ec2de57553e8d00000000000000000000000069f49f4deaa41650e4acfa3feeea46f8aa724265000000000000000000000000e057405f3902122a34c0b598ca47b69d5e6913e8000000000000000000000000d03c8fb71bca5b28ec6d4c3e22de31cd89e96623000000000000000000000000651a63fc0ac45359dc3979711039d97b4fea2b1a00000000000000000000000059e6847ef3e698c35dfe17dfb9df0b04bb6aa63b00000000000000000000000083dd8188acba9be2bf2539ceda0126e495d022e6000000000000000000000000e8973a2a13e53c84dfdf89b4bdb4c0253722e3f2000000000000000000000000bcbb93e255bc20b26e7a6b2de6eb33f2c2de9520000000000000000000000000148af848b695bf011e0c9442edb9c190094d5f34000000000000000000000000cd516f732e4563e65b061e417f7ee28659d155f40000000000000000000000000076cb3377ce5f547276f258f93bb88e6a3fa7b0000000000000000000000000dad5576dc007006d8e71c8a124633366fa1bf18200000000000000000000000067cf5a33d2e26d83f38e2a223c8b59971ff96190000000000000000000000000f08e1dc60257832023fc83fc92a634d180de2656000000000000000000000000140a2d733cc6fd14cf43ac47732a9e8cef35bffa0000000000000000000000006a6776f9e4ea14fc72760f66ceb1d31c4c38f6b2000000000000000000000000e5008b30dc052f4b2d6d9567d73c8a1afb6c5c190000000000000000000000000e075e80a4a6c824e0ba341bd649a087006920780000000000000000000000001700558bc1c71a4ba96a5a67f44d8faa620c6f190000000000000000000000004cc7340fad3ba313130b82e6133dd9946456c8e90000000000000000000000008a510b4e11034eb87895c3b20246660003738c21000000000000000000000000c8fcf7a0412d6e4c17bee47096b7ca565b276c4a00000000000000000000000014cad1f42dcc6257d0dfd6f0d6e9f57a5b996c050000000000000000000000009ee20f4ca1c401f4213cb7f6fb4d90bdda78e6a0000000000000000000000000a69a85cc1a212caeaf312d542ce98d9872f64854000000000000000000000000b7deae216917a15e88cf09eecea501286c73d44e0000000000000000000000000e50947d2b46ce3cb36e2d9333d3c0d4b151f0c00000000000000000000000002bc1b26d5f9ac99219b39de5be9d1ae57d6ab952000000000000000000000000df79c8724ad91aeaf2ff4fb3d58cff904ef904fd0000000000000000000000006e89b9aca00f09e0bdcc12a4c85819971c31c97000000000000000000000000062922cab154260165f2c863d76c4537c6e6a6fef0000000000000000000000003d9ed369e7dcc364314ec472b732d33a4d5b7dc400000000000000000000000009c66480968a968df2161a61ec285dee4724a2aa0000000000000000000000001584ab664ad8f22030a9c9231cfa0e9cdd56fe30000000000000000000000000011d679ec512149f6e454d466366e7d12969847000000000000000000000000000581de07be5b8b82b5695324effcb727a676de40000000000000000000000002de4b875d4b7222a2c2e787abfac5392d444df480000000000000000000000007e5681edf3aaea77818da0f9498fcd46c97458a50000000000000000000000002ed9d72736a262043c00ec4b0eabbf44f7c83f660000000000000000000000002c89b3da533ca5b727e4e523a547041a2636892700000000000000000000000049b4efb67e35912e6f743d5d4c3241e481badbe800000000000000000000000026f5594839cc17ce69333904e4e3b42d4004b4d2000000000000000000000000d24ecfc6cb60dbc65eabf422cd4748ba540aef650000000000000000000000002bfb5989ef6817bc456eea3aa2e6a4834457f6fb000000000000000000000000685e925df1428b88d4cd1d8f4a2d2540a57a18d10000000000000000000000008c28e19b605fe9388e33c4d995a90e46b6a0b3a900000000000000000000000051c923f4f3bd5a11f079693f37f3fcfef5be39650000000000000000000000009d995e0cab9598e0972998f203cb7a343d755bd7000000000000000000000000637028dbaa8766399a8bcbad1d27747d7f553d300000000000000000000000004fcc25ebeff1c1ced2042aad850d09e32ff161be0000000000000000000000008b26eaf415163d382773f840edaf337a4c3fc2cf000000000000000000000000bed2d7a416bd93134aa02c21da2d5c632519b7680000000000000000000000003ddabdcdd56d74c1b3aa98a106fd74f888f738dc000000000000000000000000a360bb978f924f19b35859a0789a9c017219736100000000000000000000000042dc9f6bc10cdc59b721e6bd6b4960f6c0077fd7000000000000000000000000fdbb3dd8f2918a26c58d89fa74f2384401c49416000000000000000000000000bac7fdffbb42ed55dbf3e794fdc76c2262eada030000000000000000000000001b77811d7f74e99c31c2c6ebe6a2c49d247dcd9b0000000000000000000000006b373797371af60fce6cefccdca2bba49cfa1cd5000000000000000000000000c6d8018de4557984d286ea401c67fbd5ab56ffde0000000000000000000000007532d4743a0c7c9ef349a71b330000fafe1732640000000000000000000000001d50a75307ddbb368adab1c8760ddb3b855ed739000000000000000000000000eadfbacbb2f0af904a2eb2e7417d8c4138d861ad0000000000000000000000005136a23af32bafb9205b1f83c6a9b03ff1ce30ae0000000000000000000000004912c04b194aa6b248ea2833a02cc82cd78044130000000000000000000000002e45d434f3685d62360bf6674bb10f161412a829000000000000000000000000374933bc52e03585a6cf261d47bf6bc4dcd4773e0000000000000000000000009dbf4668b76f0d602e0a91271db42f0c9c80418b0000000000000000000000003034b9b14ff0ce8d5925e823dd444633aff66a610000000000000000000000006da1be3968839bd81f295b23282fae573af952e80000000000000000000000007a911d831f4423fc346b0ed37b40f92b10a685960000000000000000000000007cbf937fc3d18af3907e0124eb2c841b63dd53820000000000000000000000007384811b9742fa90b48dd41fb89b9defb44d3f44000000000000000000000000023eb2250b05ac360185f6252c256481f46ce781000000000000000000000000f21ec69b89465aa5adc0b8ff75911c42bc5d90f30000000000000000000000002c8c1f9ccbd00c1f46a9dc8dc7fcd5b88aa18ae5000000000000000000000000d467d9edf755232a3569b83397cc942c755a3b60000000000000000000000000265443f6e7839a667232b5508105eea81df9a1de0000000000000000000000001079fb6844f1a079ca886625a856cd18cb18be99000000000000000000000000f66f6d4060a8c5081938c15a5337b5d37a61bb6b000000000000000000000000724407a6e198684f3076dcae7c9dec9ac0f13532000000000000000000000000b649034e5efe408786e2fad481dffeb1eaaa73f8000000000000000000000000945e3efb39035682839475930cbfec69c529827c000000000000000000000000a31621334174e61633084b6b8a6791bf6d81ac0f000000000000000000000000816828f2c37c6ba4e3c310ed9a988c95ff2754ad0000000000000000000000001b8bf14722e0a1e1f5ba5ded2b9694aa77f83921000000000000000000000000a6b3cf3cdcbccaf9834351709e56ee6a569490350000000000000000000000007d32122b57c244b2ab2c775df201d30e3317286300000000000000000000000052c17acd08a513cf6be44652538194d87f8d1cb7000000000000000000000000394d7f483893abf3b38ab3b1b004e8a0c2c29f460000000000000000000000005e3e372657e5da3bd0f9c7edbee201b305eb147d00000000000000000000000009723da1e5b0d2e48ca2c6ad0392ad932c7c6eaf000000000000000000000000724289332f1655d388a7db081d70ab21fe25085d000000000000000000000000af347423166b13bbe13d5128e00ebb242d563e7e0123c4d5099059830b68bdcb303ccb81102a6df0e750327d2bc860efb625761f055422d5da57d8996533804487823c2940f264b95706283ab8cda0bd1356cabe008d680535bb6fca931beb5bf1d2a7c2ace3ecdc4a57e9a26560d69962ee21f90472e8bf68a69e83e4d9d780412b24531dd5e9309ae48c909d385511f69c319b018c3429b2d2e38ad765b391a9a25e1324ae4f64fcb27df865e3131263690f4e049cd585a34b9e7c155976c5c4261a7c8dbaf73338f171095dc90da44762c30502c92dd0d2142e8d71832c73b288ba65dfa5544ad1a4eee2e1e8d18297a671ed00697121612382b464ffa894e3f4213e61f3d2105bf4816a5e389ccfd48425ba07b6697f1f4552bab78064de58f62270393c76c8b3dec47d9ba72cf3ee7df0ad047a78062007e2c54534b196f959753f1f9d1198f68b16a6917914601beb64e206992cab432a8df128b28a1486a57d48e33d36df76e8e853eb7774d136787caa0029c95ad71f7c8392d26b9805f394d195f028bbd5f71985749eab2436a167a207b10ea60923a082600b45a37188bc25c150323116dc4488adf6f10e180867f9064410f01061b7276ceb39634a357ad86800215d41af751d042a89681e5157ad050825e3b0f06212e3f07f9ec15dc738e8a8a48c877732ec01cb63b10288fc0e0036343f466eb89c4ce74c261aecca1a2afdb5dce5b7f8ac97f1cc6ac9dc3e9704204da9cb9556a256954c3d6a58aa21abb91c75b8c50b3fd55fc12f90f6cc8a01b45d4d98768236caff98cf5572d9e83bd9a747e17c1d15521e76971ac09f2d003f6a7239421e85ce403f684b19e47de94336049a00c147f0be11dc964b8721031e1189922721662c01014f2cc3b799322f43623301606aa9108d9f96e772a301adb9b6ff72e455c3bdeb39226f26537493c448814087c8da04b802a0f1107a00fbaab6c9dd8142f20d502827ba330522e95a5eb867e4baee067b5d681a225306b57b6b6fb535f9c80a063c11d266f1900b2ea5e4527231578c5cf67d0b131c07e15a09cea81bb0a9de72de75e3a6096aee630e504590ecc1defd06c6f6c3ce065ed0010d2a1a89849dec86a0257a488b794443b570fb5a94117db1bfc1b6a0052dcb9af3b994ad10b5cd5393f8222334c0da8801a301c806be139e5c3c49bd02d1808e48d45818f6c75fa4047b184ed905ba8f780903c8da454ef8bf88ced003dc5764318919280b6558ef793ad35a7cde8b02211140b42bca95a21e3a645f024328b4e63018991d88525f1ab3be08c12de084e2b22d3550c042c8ab73c76507f776129e5bf5c915df7f163fa0eaf3d565cacb46cb3475c0fda5ad9f17217b01b53867f5c6c2d55e0799c281ac4696ebb221c7dbb0412e5d70c973267ea130004664a982d6fdce2701ea2312acd516faf7c865b99a8c954c39c1a79810b66a070e648fd7e2372efeece253432741eabf05121164e7df909d2ef6b364ef42cb02ccb4d40ef50380527bca54696db7cb3e55e7339858c3323ab724a1e33df8fd017b591b08fdafff5da02e889826df09c28ce833bf5d0675db36de917cf1171903cb864b32dc68559ff399a1ba282f260ca25f8f6c88875e30b896e01fca6ebd007c012666cef12f4a2ddfd9f973514256a44d7a6027edf1bfd9f906aa5f5cc1051561a5350565353424f015ab59aff8aaa639a202d793d72ae7c4c782f14b2100316b934e3d7f11f1fcddbac6c5f761ad7a78b518db8a851491f5932eac4e5807160cbfe83e88ef09423567234fc78e50f829280f9aadebd84791f41d1fdbd5024bc81704f59a520671b02836df7e6e4a4f89bf7af4f6c9e86c07814827634e006872defda56ed0c1a434f30c3918f8e10f442cf71bfae6b834d829ca0e251204544463e04e7994df9d77f924ee45d94bdd431f6186afe8b881c76add5bdcc106fb1e5607e7b64ea4ff7a892909ef4c704e2dbc8730eae0bce86c09fa2cad2900b4408e08ea7bca46d9a8021a486e5f6ff946c355ecae4e394a016bd4603f2502de3d0a037c23ee22981c51c26d7aefeda2125f783773030c9a6c49d5a1fab70495ab5c94702cb39186cf670ebf17f676cd19784824d65f5160d6a5b01adf7505c27d5b363173ebbd534b5b21227c0867ff8eb21c65e2119dcd93dd888dd1aa0387126c74f79b91e7afd7a3819ec542ec3df3c493f0a5deebaae6b58438278906ae3ab3be0c4f8c12d8490e2eb0359f8a380d18479f88789af01993707c14f806fe2e5ceae6c5d6ec4563aea8ef1b77284c54d433e68e3c82cb4853ba8c2d270709e9db02b4bbbbf5f27d745cb2861f93bcb58fc989041ce4b92403be6dd30d053248ef7fd6a78ef4435e3a1c5f3aaf89a4ee686f2acc1bd5be034e791dd87a0268e6cbc046ea6a022930b32bb834492c1b047e0e66351a2c694c2fe3172e420395f7c0db71ee6b66556858803267e996745634f5ea1250ae12187a61c02bdc06819ab0074f14220dc2a106528e581dceba438afbcffbdef2eefabe449014420625462745cfe481f6031490df2a0e5849a7c989ecabc4198ccda4d238993f14053a29b72a62756edf954c2810d3da248fd0057861b275a3104bd6bb72d09c9d045dfe24948085e3eb52267e01f5c805d8e33aaa67047302f5a90f947602351b008acdfabaf4012aaf8a693831efc40750df9dde9b520d1e3a75bf7e07798fd70401ad39ea0b34107d36c14c12e3055f42b5b9e5a0e4d1918a68ae3f55f1196604d93ee473e8a5df35bece9ba88ec70ff3fc299e0cd0cf5df1f18ce4e11434a503d9cca6f5734e711e9314971ecff18f5c40fe1c41bf6c003a53d6719d5660b80015424d174a7a190c86940637f5c0eb333506243625e5ef826a24c4ca45e62e05aebb6a8a5135912003ff30b3c9857542319719ebcdf78ce9c5a1005dce3bf902ccd069f01d6ae5a6486ef121012e66fb77c5d01b901274cf42d45648ebed4d06f4c137b18c01e774953c9a805a83f85537131149f791e96510b4c3bbd06cec024f09f4105f1c3f33408a30d40a0d547df46e1aa89526b80d98c190c93e8ef306b2fdf1cfc13d23ca3c0850702435e3a508ed048700b96edefecd872dba7f5206ef61c72395a202707a2fbcdbe1b2374af6e7542c968957a30323a181d9b61a0188393a10fbc5e386d31e784016bcaec1d7fc713da646e0d85f7a6bf6a38f26011af53a4238c394be9f21e1932dc6edd4aa3001e268d16964028bb88ddef0ee020dcdb85ad598fd7e2f28fab24a1da792a80c3e92b8957b8ca891084b8826520243ceddcda1838d56eac11cf5fae2ee364b36b83280601824521c0bc85908ce03dae1091fb3725b19e8093847a00efdb478ca5c7af11279a032aacb50cce7cb04a7168563a51bf202b10118655df6a2a320cb58617f49a2dedfe75dd5dd8f0203034d1efcadfbee40a1e072f242792d3051cfc444183e3ca511a5a32332609f01b0a4885bf8fb331f496e65ab8e59cb442bf073d52904d352af358927ac459d025f5eadf19d1fa9437cdd1bed37b550df0d73b86c56c7ffca8d5339166b8cc0046499587ce572aa8e778c9c238e07ead155929372e8278f88bb349eff0077bf04c187347a6e3d1890fe634852803b16a43aac6421ec59736469aab1f44aaab80178d4039fecd008007850f40403c7b9ebcfb75fe77474251238d7afbc54dc290614d120fabdd22640c016c01e9db164681d01e36729234c75be5c8a769420a901301787df27f16330f275acd3e0fc9dffc1c4c7fc45ff5bc42c0e5d30827bd904ca610ceb20ad1fe3df0903f7e0099a27b77750d1036a38e6d00d232bcf094702849e2d930d3e5dbf76106c0d45f427bf85db2060d5e309d90e440ffce9bdfc034723ded74d0cffda67fe35357e67476ab9c12be60768bb16080b1c06a74e06013ba798a4a29df523a7a03c06f38bd4d502c9281696e64158d3c127554cfab9029c5a8e3b41acc719c22046aee23b0fb969288d84e67a1eae505d558ef5132e00aeeee7b3a4c98f983c9629314ad45b1e526f5746e541585b24696e3a798996000000000000000000000000a91ed531ffa589d4be581c1ba2347da71b0d2fcb000000000000000000000000f3ed32f37569a22e3d5d813663477e6c9fa526c9000000000000000000000000a791068a7da54fb95357294e4eaba17c7511fbc200000000000000000000000026b3ce979e8c8231a081744a95707ca5577dca5500000000000000000000000073f3480a09ad907b03af953439047f8169a1be6d000000000000000000000000326aa1e060534cfffb3417dd6659dfa18feb7262000000000000000000000000d93fe2d3de51ae93655a32a6b9b258751a98fd74000000000000000000000000815fe8c6369f0cf98d3e11d422f65a87162958b50000000000000000000000003fe47ee7d2350682ae0a18080f0789cc5f30402a000000000000000000000000d58725ab53bc8324eb88136c8e4200cee1ceef3c000000000000000000000000092ec4a713f15161fde6f44b302fe920c47d67c80000000000000000000000001bb66f490d98ee3d1a02c3a269380a08a53f2d05000000000000000000000000e5a2a5960fc57380d0f0a53422137ba370315c36000000000000000000000000764f82348e39d8cd88ba6ab016133529976ddae0000000000000000000000000544c9c42c2e6bce2ee765b1f1b3da37faedf38370000000000000000000000009bf9a04c610db42ee767e62de74e669bbfae5a030000000000000000000000005b6a88c15fdbe1623e25c2f2f2752ad0ffda0ba40000000000000000000000008f5f8c1e19333ec0fbc3d170be0b34b324a3fd630000000000000000000000001c13238c5c63791d62fbb22b222ed6ae2d49f357000000000000000000000000cb9650762cab87315e9fef897de13c822c681f370000000000000000000000004f537776470c8e311f48d3b30998716cf068377000000000000000000000000026264650c0e8bfc70d3646ef63459cba23dcbc1c0000000000000000000000001f92d90bad7e51d6c1c6d985984d841a34e4fb2800000000000000000000000087f5a6c7b1d96951378803c27f22adf8f7c7f193000000000000000000000000700eb554a9b0c007a26d656fd1ca8a7a165ff2300000000000000000000000002270cb3893026aa25dc66845acf3d3328fe1a2d80000000000000000000000003b136662439a29b16f0c09e43001bd19190afb5e000000000000000000000000df090f5ae471eabcf0882ebb194747b3ee75467a0000000000000000000000004bdd99609a3e3e7e39d6139f2d585c6c1dd375e0000000000000000000000000a40376ff7c7bc532b0716ce6d11dd30a36d48036000000000000000000000000567e682329dd8e3686549ae410a811b6dd3c1df80000000000000000000000008ad8a70ab28df24fe2d404cabf0f7a4894d10f2e00000000000000000000000011d8846262730102506dac682a9ef7cf4f309f1a0000000000000000000000009a2fb8bbbd2fc00b7f662677ab98a78ca44e5957000000000000000000000000d1dcc6e5e0981185fb49b36ab65c01a3d7cc7b090000000000000000000000005a4743739dfcf2b006dcb3f8b209adbba9f9bb630000000000000000000000007c0a14605eff5e0b076b6f24e2526f3168562c03000000000000000000000000274bc12125076996c758776a707cb89bdfbfa40b000000000000000000000000310d162899a7a5be7c436c3704b8f54dd1b9bd4d000000000000000000000000fc857578706dbea9a8a498551a0ceaecb27e15aa0000000000000000000000003cab40231c59fa7314bcc543c104de0cacd5e71f0000000000000000000000003c7b8da73f98b92521214fb3ec5f9f7c3599084b00000000000000000000000019324b0a391396bf84a68551688f21002f0bb0f6000000000000000000000000c6510b22a27c642658c87672612d38e2f898e894000000000000000000000000338effec03fc27ab2d7ae9c88a350ce4ca7d422a00000000000000000000000046ff3a3f69559a605802f6f4eaaab368d094cf8f00000000000000000000000071fd90780cfe9207b5ec370672ab19e7663324e0000000000000000000000000bda5e88a5fa38592c486bbb3055c36230388ad750000000000000000000000004ce41bfc076174f89513ef3b44dd8311ec014a42000000000000000000000000e07d4331ae9dc0472c9dd61884162ab9bf1e009600000000000000000000000011b13c4927102e5738ff3f7ff940f2686d2088b0000000000000000000000000bddb38550dc3c8295d169424b05b52bb11f905b60000000000000000000000003d0d098907e56b460ac890547241812b5a02269e000000000000000000000000258ff706bfd1f3cc55160f674298a5492f80c806000000000000000000000000d6542beaca55ba5b48f7ced1a90c8c8b688ec193000000000000000000000000c861bc8adcf0f8e2f41ff6dc21d76e51e61fbfe70000000000000000000000008dc0b9cd2a48b7d2bd8bf745bac8dd588d8aff3200000000000000000000000059818fe3cfedb6bac78199b5c7b00f08441671e60000000000000000000000009e5bfe1fa6b5f278936d3eaece7f819d60dabb8c0000000000000000000000007785d3cae5eb0a14d802ea2b31468d61f0ba7c7d000000000000000000000000342de0cae2b92237b669906bc47ed7dcde2b2cec000000000000000000000000c9f730128e023e83e695a247be4f85dac7e15f55000000000000000000000000a5812df96005c70b0514956fe91005876205d20d000000000000000000000000a80d2eb54980d86de92e7cb7c03979e61ce1c9e2000000000000000000000000b7e6d1b64dbb216e87acb5a2ab8b170dd99d3173000000000000000000000000948fbf321e51c46f353d9e869c2f81311d360666000000000000000000000000520893976f9489b7efab2acabbadf4cb2eaceb73000000000000000000000000fa70d9787a43f432fd97ae96da53f7e29fbe47140000000000000000000000000d1785cae6b772cdcb4520170b2a9a5afa9b9f75000000000000000000000000f68f3bc9d1352dad1c5721c3d99be5a5dd02ac86000000000000000000000000831b1a16fb81b02da2d646951d04cb1d71073c3b0000000000000000000000004f0611fba75a1fbb69d3130bdffa2c1f3bf82876000000000000000000000000650b698a2704f60a941bd4bb634384957a65b884000000000000000000000000d34ac8dfd44e7dd964effaa309d2f77d57d13c1f0000000000000000000000003cfe0de85fc3532397c9afd13d2ae1d1ef3302c30000000000000000000000005482e21d0943031403b7a003f3103cfa36a84a4e000000000000000000000000d170477a7d00d1b3dbd6a6d0a7313d2ca09714f6000000000000000000000000b4bb8fee540e609b35478649c5c32bda2802f4d5000000000000000000000000dd653f10075f673ffc4aded7447babea322898cd00000000000000000000000002dfd5b94ed36658b96dfcf28383381e25b819d7000000000000000000000000ca5a4c5646d38c347f5a131763b9ee543b5e0e1200000000000000000000000002615623e662d3df691dc42bca465f33a050716e00000000000000000000000045f37f3cf21960ca38c9ec60533dca1febf8a62900000000000000000000000015b7db12261ac7ed3195ab718f813039c1c18c020000000000000000000000006feb591e37fb88b750591cd0d6f420ee1c856d9900000000000000000000000017a4b5cae6af24bb1909af873053656b8662ff440000000000000000000000004ea7f24503a9f624fcd5b9cf46c682a2a7f9849b00000000000000000000000059b03f16c189dc33487836f40e43182082a798f9000000000000000000000000ea9357a83c31bfa96e619d5eff80ce60b73f541d000000000000000000000000065b8417c6ba0667a703f92bfda6616e0d3523cf000000000000000000000000b7f148338c7f3f3fb3ea91b50742e3557e2dcb57000000000000000000000000c8b8e563fe885f754483c73d3922ea7cc0106c5e0000000000000000000000000de0f524f291ee393003724edd68c52561f3b1220000000000000000000000000caaaab86036c476081508156931dac953362ffb0000000000000000000000004c7b2020e05d512abd8be53c4dbc0dd480541999000000000000000000000000472e7478e0f230bf662b7176618ec04259cff44e0000000000000000000000006d5a7b00d0f198276b8b2eb65199f526cd29c28600000000000000000000000000e98c0c7e58e7ca2b06efa72c4e332e1e0a34ac0000000000000000000000001a8186941aeb812c59c39d497e718d93eebced800000000000000000000000005b69980b43370646567b4e8fa15b56e798b7d9ca000000000000000000000000de111159a7badd53ea4e0cbe99dd5a5430bb060a000000000000000000000000e467d633ceb1f6910c9a64b3c5c178fe0e2fe1ee000000000000000000000000cd97325268ee2d3bc1a362491811419c30a3c0710000000000000000000000007afeea822616b96238d9b878b2caa2f6d27a66e2000000000000000000000000e57c7e0f35c6fd94104904d3ebac5554a2a53d92000000000000000000000000c7545dd878f7408c371ecc8ac27bb4856d3050b90000000000000000000000001cbc25b19106ab2b846876f0fdaefd31a45c23460000000000000000000000005247b06d194488b3376d482641d703aa5f11c6d60000000000000000000000002ed1d012aefdad42cf2ba8ed62a68dafe5c66fe5000000000000000000000000181f1298c41b7c46408f77a2b45b5e3d4ae7f49f0000000000000000000000001c7ebd970dc10ceba02062421bc972d9ab970b76000000000000000000000000a1224801f90436f5fb5cabab35ba871b95811eb6000000000000000000000000e859e3956a8882ddfaff44cdf00ab8e3e10af876000000000000000000000000aa20c645eb3211b91170b885efcb8ec8976f0e210000000000000000000000007c4d00ede06c5e621e1509d1a9201641f9c233e40000000000000000000000008d1e724774aacff1c6530cece437814480e8f78d000000000000000000000000ea9ceade83240d280819e8c20a62c2585527063500000000000000000000000076aabf2a3cbe8937de3829791d691588b25a95bd0000000000000000000000009bb1d28b03d875d823a2eea5a9baa875cba52bb0000000000000000000000000e3a2019129140f5047f675e9014b49effabcb4ae000000000000000000000000455db1c1c7783088e2534c969b36f44e01f0bc27000000000000000000000000762af41752dfd13226fd6cac43f0adea8d8d7cd8000000000000000000000000cb11f67a31e166ee703c1d0abddc603c28faa8770000000000000000000000008a3ff0fc05d26216d5518970623c9be3c90b5fc3000000000000000000000000e8e3d7ade24db57793dbc8c6f12cfd21d9b882fc00000000000000000000000016ec7db5501231fd81b0f97f7df1ba51dd6ca9a10000000000000000000000009ed4b852ed3dce24a999c6c76b41da04afaf7edd0000000000000000000000007e461962115c3ecb3334d6013a22c4ec77bd8e9900000000000000000000000076a6d16c4c64d07f9a0231011d9fa2b85cb410fe000000000000000000000000c978f97944adac651f1e879c8ee3a0f857329f4c0000000000000000000000008656a0d1c58b597e4561cce6f4842694e2eb28ee000000000000000000000000393dc5181680304c6be7dcc4bd1c4580c8cb67b3000000000000000000000000b8f079fc00913a5f81f406ff92adbf2b970d6743000000000000000000000000c9ec559829674a65b55bc0a3143a72a334f69a85000000000000000000000000fb99f0f998c4f90d3d8fb2a59a265a0abbafb8d60000000000000000000000003b3cb9de32a9662944dcd3df7c6fcc3bb208e702000000000000000000000000fb91b1f13b0037d76498dbc6c3dad1c999ce850200000000000000000000000077f2fc5720a7276ed84a12f8f458a68738e2b06c000000000000000000000000ef95d395439c02b1e1c7fc74aaafa4dc35c925dd00000000000000000000000088fd6bbb01010086e090a91b7789d37353a40d0d000000000000000000000000fb93f39be9db49d87acefbcb0133ba64417c29c500000000000000000000000029f8838de81b0aa3640d4089b7a0cb13f1ed3dbf000000000000000000000000324a92de7ab011dde18fd37a9d693edae3e20713000000000000000000000000223845410cdac73f5cf885a245925720536e75aa000000000000000000000000c57672cbf5afbc5fac7c27243da3dcd7a9aaae40000000000000000000000000ec384801e4cf5a38416d55fd73f0ed6e9d8895f6000000000000000000000000f5985301968c4d705cb1e0f7272d4a7e36e16e93000000000000000000000000bad595cc8628dca20b84a76d392882728063e6380000000000000000000000003d34f985c39c7f291a74108ad29193115c1a00bb000000000000000000000000a5ba304f3a0ec66df53116de08e92c31c5c810c9000000000000000000000000181f4e6fd6af0baebf8ee33c52555c21f35e51b9000000000000000000000000a951ee72408fed76ba1e4f7fdd914bc29d2064a90000000000000000000000009128c87801469024c13199ad991c3780ad4633e7000000000000000000000000b1c74fa01036a6abcdcd5c23c69abba383be51b30000000000000000000000008ebe8e8ecdc3942b60d220b96543fb3f2a2bbae9000000000000000000000000c92b8b68881aa6758715590a36dc07e4a285afc3000000000000000000000000a0b918495b6cb3395306c9283cb8126a50c966ef0000000000000000000000002eaecb4a6f63e8b954fb19cda4faf260469ee748000000000000000000000000297fb0b040c737c6e65b3b56c51fe3a873c05683000000000000000000000000ee8db37b23530729d34960c284e6ebc3854bf630000000000000000000000000452ba2ad2bfa07bc7997a33a565f52affa1402a600000000000000000000000040c51c4a8cd066655e9c88d8532e1d52e6643a6c0000000000000000000000003be47ef91601f6e3b4b4fb9fb7a6bb0efaffa569000000000000000000000000665a95647ff7ac13d3c7e2f8f29d390e15b249b700000000000000000000000004ca7967f109616bfa707de51deeb1880b097857000000000000000000000000f237367ecc968a36307b625017c8ee41f2dc622400000000000000000000000061a7558199b9227bed140b5c9168d0ce7be18061000000000000000000000000bee9f2caeadaa8b1427c99f9e16cc6f14ea57e9e000000000000000000000000537df43ef351dc465507589a88df368fff84151600000000000000000000000077c6a48a0040deab708791b1c128fa1a0828a99400000000000000000000000063de5e98ccc285c17179b9d06d658c276b466572000000000000000000000000e447efb6314c69870c67b667008e7cbbbb98a68c0000000000000000000000001690af577e4438ece191e0614ba116df465349510000000000000000000000001f0c865b899568fd13a0be9a98b17c131122eaf40000000000000000000000007229640e3a1c4a4116d72862e51b12d3fc525cd20000000000000000000000000499cbee3883c04b2ed55252e953a6e1e3203046000000000000000000000000dc7e582f4471143d29ed37136b4a1f85cd3c9272000000000000000000000000df5426218384becf3c2f2be4c6a63d2b76c07ac00000000000000000000000002b1a898961ed97a985619430be279d0b96de3e2900000000000000000000000089eea194b93c8990e831db840d81023c10017382000000000000000000000000142179a859bce85ed5034115ddf945b679058537000000000000000000000000b5ac689fbdd68d57c867aad12d1033373a30f672000000000000000000000000be8305bbaf353e678d2a163826af710be0d0a7dc0000000000000000000000002a828931bbff5fdb9080bf373d9f95e21dc33ab600000000000000000000000050ded9299142389741d0926ee2fde59891421d5d000000000000000000000000ae7180609539bffe3f9e92f8e611c65300fb181e0000000000000000000000002cd5724ea0ba47819e15ac381262d91fbd8e2561000000000000000000000000c3372ba6244d59b0a26fc70315ac00ad0cc3653200000000000000000000000036b12f67f4926722ad91ea7522b320a190888d54000000000000000000000000375de624ba3749f0ba44acd8f55afad35b229d4c0000000000000000000000005d983c69dbb249b589d8ea990af8249bce78e9160000000000000000000000004c2c6a2ba1bbb9a174157e96ea92f2eacbd003de000000000000000000000000c7b4cd3dcc5612c0e597287e193e2e961e835ce300000000000000000000000003d63cd78283057b9215caa66d69dcc167c79d63000000000000000000000000d92ff98928cb22565a3ff7186f16a4869c8195d2000000000000000000000000af84f9f2271ce813c7c36ec21be97b8572e8793f0000000000000000000000006d6d01fc1e88acfde194be3617531c111599181200000000000000000000000032cb78a52a81e113fd0b28a18285dc6e002e45a4000000000000000000000000b04ac023d44cf194fe173c9700682ab1aea70e0d000000000000000000000000b2fbfa11f8de2e997260c723dc6dade39ceafe7e00000000000000000000000054541a1f8e1a2c0ab394fbb798f3d136c9f03c3a000000000000000000000000c354d226d372dda5298b3f7a03649b738164420c000000000000000000000000185287c4ed6603a5f1bf86b71b6fee216f19c9170000000000000000000000000257601e450a8cb79c7463c93b4d4103183969c1000000000000000000000000098d831ff44649937787fea9983b446574fa05b50000000000000000000000001fb25667311cc25a936c50ba66b0ddecbe1a7b4c0000000000000000000000002f5926383ef836a8e0c72a4e0b94d57547b347ac000000000000000000000000b1924691ea35b5b8b9d6761fd7793aa740d244de000000000000000000000000092e710f11f1d3a9f6d8b6441ecefe97c7f1723f000000000000000000000000f2037afdfa9248bfe49165511cdb3ba282157917000000000000000000000000ff40c0a7b693c0f9180dc8ce4e4f2567a73d83a700000000000000000000000066aa9c35651812540ceb4376dc4b3c16c16cd3f3000000000000000000000000e0741446a310c094d39569ea8d590ba89d14a47f000000000000000000000000e6fbdc5eb4edfd9636ecd597454e0dbaefd91c37000000000000000000000000851a636bc10fd675e19dc65a0d349397bae972aa000000000000000000000000ddaf1e2762506751001a7efefb8e8b31690ed862000000000000000000000000f7360bbc4b25fb23c86bc167c09af0bb912a9dd80000000000000000000000006cf484c4df31d068901c27b0cb2e2c88a343223a000000000000000000000000bd4e36737e54037febde50a55587cf9fef73d9d3000000000000000000000000126c7b2872311c9229258e5c2174704b0d644020000000000000000000000000ef5cf9c451f5bf284567341612acb095a3582714000000000000000000000000b6c7dc7c9be3c625273e6f9f49ecdadf6b85fa0d0000000000000000000000004d7b6a08888be2d59b9c17554e5a880c6f01f69a00000000000000000000000098cd556aaf5cae409c00170a375644064e4946a3000000000000000000000000758ef738c3f08569c5c5cbc7423d7c49c9c4f694000000000000000000000000a1b059f7dbe74b51978761ffb6bda7c6e3b83d1600000000000000000000000092b08d4eed329f2876e51dd38c39062f8eda6791000000000000000000000000d1c1c4bf2b48742e19864990e3c48a314ac27d4f000000000000000000000000532af4cb20e046ee2e05d9ef5f331ff59ab19f7a000000000000000000000000c001716dbed0d7f9405c063262c77f1334235246000000000000000000000000c1212b6c16ce3bedb34a299e01151a9ed853160e0000000000000000000000006aab769362baefcbece3dd7730866c9f53c132b000000000000000000000000047380dbf3d96edb485c6d6c53aadae90df3d8d79000000000000000000000000ece89039283c34fbfad11f167d5001ea585bd06a000000000000000000000000471cbfe422da4a07f85c53da923d680a905ac504000000000000000000000000ae9788ba02ea1f53d3d2c32fd7c17b83bdc2f762000000000000000000000000f0356a75ff6ff02d9584ad5350a0bf29b0d8bdf8000000000000000000000000b1246cd85d6f2fefd75633fb024c3a339be667bc0000000000000000000000006e8105f51ceff7ee4c1b865331e0ed911752eb20000000000000000000000000990958eaafa990020e26abb3875d1bb7af6fde4f000000000000000000000000314cd7d5d85827d1d30c4ca4aebb640128355c1f00000000000000000000000088985c56c2b43f5716e0a85fd8aaa98e0442eade000000000000000000000000b126d51195bdb70b8fb57105eee091d3fab7db7f000000000000000000000000544eddcf5f1714009cdaa064821ddac43f6edb5e0000000000000000000000006f91029b1dc28ea88135f4535db29f34efce1dbd00000000000000000000000052613d9a7d24be6d662ee05f3d4b849fe31df67e00000000000000000000000061a4e4d1c242159f2b8443a7a3e6e0e29b5efdc7000000000000000000000000ca2fc9996e2ccab423eab228654ea17532f1ced00000000000000000000000003048fd41efce66c8d7bd8a398cd98aa9354148e000000000000000000000000068cff813ed875a33fde2f22b9453cf689e9f9d31000000000000000000000000190d7e265359c78b8e272390ea875e58256858dd0000000000000000000000003048d72ee4c368eb5792e32b3c0f6622e1955eea000000000000000000000000ad7dbd96c4601e557e55d878b87534ce5c442efd000000000000000000000000a440d0e0c365e60f3022a3156b9e8eadd8390706000000000000000000000000bc8d93f39346a52af7c0454efd96c3739b7aa95b0000000000000000000000000ef28f58aa099a6c7e2a0839bfbaa2467332829700000000000000000000000017f4fde66839849b14459a72b019c7f4880899d0000000000000000000000000b34d352383c4e70eb8b9b7e83b50177ee8b5984a0000000000000000000000004b685cabf929ed33c0b41b80122bf64848e45a44000000000000000000000000cabb361be8102d646c66ed1001aeaeee6b75fe15000000000000000000000000d61a9eda96496f9129f472f2deee78fec2263db1000000000000000000000000f5c6a7ac49f80dd9ad9f71a297ff00bb0092f5d70000000000000000000000008c7df3395cd4c5c7c385245c34429dd2e2b83013000000000000000000000000498f031800b930dc99869248d26ca7b4363938b0000000000000000000000000c43e50e50d5b2d6ce2194ef250ff59171efb15fc000000000000000000000000b8333d0f9558ae3638be130be0fd0fd61908c12500000000000000000000000066374d19f0e5aa7cce82dcfc39b1cd7532b68a220000000000000000000000005ef34c82f19477e18e21bca553a57806d7f31c260000000000000000000000008b7c61f55cf7608e86cddc533e97d78d5d5f5c85000000000000000000000000af90bd4f58d96e678175bd989c6da9f730e954f5000000000000000000000000994f51d4a0c36faae2f023e0c72eb525988c7407000000000000000000000000d615457baf76f54e0e54903efbf3aac8aa1b7a5906f142e33add7c0476775c3f7971509e7a20a25245e970a93ef875fff42de82805632f99667cc7fa7738979880233629a04496c1435c130e7893c9d47a6c89b1057afdc06bff4a9a0cac4e82874e1b9cabdc4e68ea0636830dc26e9f85c43ad9056a7af867d3389f1c8898a6d1bd04683fbf88fc1c7decb19a71a9fe724f954e0437a5946e7a4d5f1f1f6522e89ed7ca62144b1e81fb04068aa35885ad95bd6f008ab386d47296d7db6564c4d541a94910401a3fa99d5b6990fa0b7ef385939c03c21657bf3707883920477d67d92fe83f805717e60bd37ebc76666181cb12a6004077fde55503320d750ee39c81f04d3cfac8bcd2c247597babd5cb2ee71efb063522be998c93a676782d5f6272a127a903f7c666146e39e45b91bea5060709011748fec047fc172c9f30c1233d291553e852596ed36d63dc7633e0605a314a0507637c60f76a4ffcd03cfca285c16ea670a650c5f96ff4f59d7196cebc38140295edffc67c8e03ea7c10336b56d35c07fd0d126e553e5c51e65504c7d6e606009cff9ee3d399c51f8f1c874f95d9e9e8198839fb6384c5538655118ad9642f04aba6234838a1a45d5ca2b7b71b02a42957eb005e75f16b9d5719c5ac4684ad035f2b832be723c522ad2086b5cff0f43cf1fe1afc1b6c92a37157423f94ab2d0006dcd40b3acbff549a5ee61540b28124a5313d961697eaf315616f270f31fc004a545f7409c3b4578369de5db6e62fce191f03e3865368d910a852478f8bc604bcd35e7a86294e0dd34ae4ded3f071423c694acdb9408a25222f8d4623456106a7c017f9a5879b5125e14aaebe1500ff9425dbd8aff2f5ef45c8a8c5e4e608074f3a9bf986c1b521c959d8519b4c2f9afb3e6fd7ba6e4683ba9247634e44490640441d0ec987da6435df694cee4909dd1c52dfaf37a8603feefe907301e63b037bfd694132d720ef70fec22afa28ebf5f99d64b2fd898fc6ed642a8689b79401d467f38a9e734f91b8be41a7175eb95a4c145f9f3368d60282bd37b2db13060089500f615e80dde73aa7fb6b57f12f48c67e82b7c9bbed7ff7e2b7c97b259c01846066e889f92d758f0134fe2c9f5ecca5a4b0f3a6fa961f52f6a38ffc360c00329adb470edd00f8069d9579419c0eaec4f8c03091647d005b5cf9a34c67fd0576533a1355cc7210df601a222cc17da954920434929cd4f09fcdfb3b2cf7e4075335c0fe60596835813f3de0ca706249cde67e8f359e33ad83dd46623be72f06288b094682fa032edd2bb684075bcea6766f9582e322aca1d7d2c886f478fc060a6055da736f53dea778ca41addc19f33e9eea1266514eebbc51b6cb16aa390734d082ea6d956a3635dd34a088b7ec149484d578f63a71ae2c26fffeb3e6ab0029559c5767994b480f9f2809b724a9468098ec099c3b476cd45b2366e1ed0704df15e351c18695e7891a2ac65b5af66bc044d53aeacdd2c94bf628d3356ea5059052fc2cfbf45cd24a0872815e887afe58f01a97ec60113109464e61e37f9b03a976afc475e2f540575fd88395d54e8f4db30601bb323b8f73b9a07a2a71ec016b15f54e98b54091b7263ce9d95227b674b0fa61fc66c15c9d3783a1944bd1073c77e59dd3e5c6a380b9143e7f999482f55c70979ce724c6342479a448286f07683d6f7fc86627a6eb64db139a3ad836443a425bf318a63741c1bf84cfc16d055a2604d6e2787b8353babdb05d2715553076ba4f14c910fb3e0577ccb0e583072baa739aa6be1d9b53edaecf24b7afa56671f665cb2eb212fd2511cd196ceb027bace33b0ef657afccdebcdb27f9db070fff3d3773fced1efda1b2c2d125cc03e522b51802a70570180fb30561c3435bec8a5a5c81e383af38d94cb45731e305cdd47d956c345cf854697abec382e5d3e3e31f5132773bafb0bdf178c246b607a20723f9eeade69391a7e99c3aac14fc6d06bddc84cf11d6f9b69ef5b0f620075cc56045202e11da29247a2d4fb655452566e1168d1225bbc0ddf215f1c6390751adff8cb66bc39d235f5babddaf3c81285a210a0f7bcf8b7b0a88a62264b80484ae970b131880501a3d317dfa2cb8eba3df7c73da33d0c217eee0ccbcac330078ed0b4248f41f56bac1c39142d7b3c02baf20cfc05474bdf063420eb8e34d00b7fbbdfb0be66f04d3ea6cf059bde5a62b5f915d16a503af2b82557fb0549f03e79a5678b1082e385b7432529f6759086eee045ca496d80422de455db3277a078abac60b86037e171004305b31600588d2ec1a15a452c16ca70a01eaf0da2a06ddd4e03b4bc2725159003267aad46385171e5b1dd4cb7c5ad1caa7f507cbcc07aeb0ae98bc5405de3918ea8f3f25276f98a45df79e1f66135c6807e1a313cf03cad6f28af41390fd5824ec1d9956f97cbbb562e02a16fc02afc41e55ac7a2307a353fa32abdf1062e307bcc98e55bb2598a5fd6d516aa85cc36a3c047f0eb5002dde0e4e47338ceac4e3f8cd8f860633449f1bbaca3e042cfa309957291a4d042b9df264e507a68cfb93677237fb4e270e684f1c233738fbc20e136b1c596104aa11af8de2bac07a8482636af4a3e5fc4e3768b0ad0f224db791776d540b1e039b3cb5f74ab92ed5d0556e6b9a7e02c6c6f7a3798ea4ef34d3daf9c6c93a1702580e1cfa8aaed553782339fe0a224ade12c68a50c5164ed099e1fb7dbedfdd04ece2b56123f653ade07c2d3d1f389ef1f7729926304544ef70b861af2e43dc00584b6ba7fb708ab2887e6cf4c231974d46df205a8d1e18fca0ebb55898b0a9066a2be71f9f077d1c8e2185898bf2ed1135ffe9851a8977152dfd5c47fbc17303c0354c7bcb03142808481f5bb8c757bcd39e95169f92b2f4d846eebe4fff470531ee0781128ed1513c6a640d4fc77cc2d1ed7aa6968d416d26483727d789b600a8c36606d44a51f5dc4cf6d218c61829845d18e722ae91aee104557f23817a05466c9dc8f3f7fbc0db619df8c1b88dd7fd5cd8c1940b98b4aa5b3f160f34a307a5af2c239f078cf5719b5980ac0be2714d31fea1e526b5eedcd47aba33ca5e056bbd302b8132bd0e5fbb0de12e8a470d5338d412baa1f8a658ddeadfae20af051237d0df7edafb87c48286ac94ba5360e8fb83e971b981154889242929db120648723b4549ad11a210bb692999e63c2d4adb1470d0cb5abf5b60f47a4db36700319e441af3cc27d5bcddcfb07dd593287db4775bb87b184e779911901bff3406ca1d175ec7f999da007d0c4a0040d1c7bf07a6c18db7b88347584d5844773306e5300de310dfa5c4027982be80931af04811ff12e1ba0bc1496d91d105456b00a95f28339716050ea1d11f3bba35cbc30f860388f55120fc68b35167ab915802164f721d4d1d9d50d0c6ba408547fb573cb12143e05dde65fc793029fad20101ec976501c0d8dac7f45c5f661b5d9e3b8346b830b1b94969f75bce3743b44406d1722ab1ce4d1c1dcfc38d6b9babc0a8aff996f23f758a58b4d2543281782a03f7be4c1653475e04f064a873506c201d0d8faf5df1337848728b2c5f61206500dcd2db62135082ea3ef60f54285db71e21efa5ddf019f1fcd9a6e3f8e6151d043aeaa5b5f78b6a51b35abce6e4480c59a0ca031071c8e83dc6054f68cc9d53049d316183e94a856b037584086defae78e40af94bd08c696d7fdd8b61b05b73012d4c418d5a14862578c51b88736dc79a04edf520dc0e9b2fbc43bb2ac4e3810593df63429826b0a257bd1dc10690a794e785201e35445ec923aaa75a0ed00200c8fc15758b5f215b62f33708e5b2bf94b189a72a62b6f9222a4ad32d10dc660636711615ea4830309c2301f6cb67a67df8bebc78125331b12936140b31b68a07f1f010dc12988eedc460ee42d27581d6f462cf624e95bff7f8c439b2a532cc02c227906e8d7f1cc800711f50c08f149dae8da7b66292b8ae89fbc23e94dca7034d2ed450f9ad8b421b5b07260baf43018ea29a73c971327b4a797bcf863ada020b5b4c9d13f6752ec589e02080603c69af068a69650cfb33d12ab222973e1f00e329509bde2ac716c62ece5c60fc54f37f88366a531a9b86a2016c3b9130f8077cb5dd5ab1c9d752e83415e57bd14b1376e3f13faf37c13d4750130a5519dc02431b98dba907abe8d0052b81d69ba93320436537d280cce165e55e400a78d2045cf710e879121c5cd4845e959fedabb3e3e7dcef86d3ea4c5cc5c4bac5ee960715bc1ba65569590ff35ab257c2ed695f68460757b2ee0b979da2f074ff704603bd8e095a40395cb7f925ad7d516e544543ab63e0aeeb11e710cfe123be0ed50239a81284bd69dff3f09b7d65ab1ce06b6cc70e1af2949a26ffb3fb5c82f237046071ec747df56dca7e9af403948a0f5ff4b9d059a676485cd8bf480ce5a3c606ab5e7f2d845dc802e707504f1421cda9085820059e92d440246e7ee372a2f800b8c7e9e4c3c9ed1ee1c7070472aaf0abb12bbded07f3c05b75c8c79dfafe5d01a9870d3bb1b3604aba0ea8ecbd21d7ab5cc2558ad2a01e17dd444ae204004c044e16a11f4dde27f90919076bb130fc3b7bf73a9e7cb061669fdb2b476b4b1902374d5a94aad49c5bc7b6f75c846352ef74a5360e892ff4d3798d9aef1233da061c73f6510dbf58a617ac8f5cce500236e093e71dfa4a50dc256611b2ee970107729b65f9433a0651c10789201578a6ce6f18218720ed5f17b3402b2d0762cc005309a7101b95835679beb3dc4b1ac0cc575a1e2780ef8fadd428185ba1b55e00442b722aeeee7532310256e4a5af3c21c8f60ace7e131b9dfb77a5203da9b806c33bf2027c0f3c3a027a359273467551ec8dfe461cd9a31547e9addbf937bb03d63ae9584426f6234dd3931e3fe67e73c5f5f67ac62337fc3a12575e96596a03f114752feabe0f958e7d9bbe443eed3df07af023d98fcc1d85837d4ec83509029df67ac612c712f35b73d86322c147415fbc90d2e7faf01d862c808d95e73b0756690ea8ac492317204cf03e6373acc928103ba4f45e81cadd382781be5911028d1160d15490dd460b18f9121509d9061357d7c0563c1346fadc0e88f57ddb0759b11993597c9037f84d26d50fea6611811308b96e1a9460c7d1c823d2e41a02cbc721a235985aa8dfffd4f8e40b0e9c068b8f427bba9aed21cf26da10548803ac096dc96fcdc29b08bc961fb2ab0892f1f4ac41aa821d4219ec2b80f54275022933f65a564887b8ba1a94945713d5af5a8a2983d6f7f8987814f700b804240333c2ff245838e1702102180d598e0eaf64826efba60268b17e6bde094a0dce04e5fc94e71309c5d308075d836f73d7e2f134693722218af00a3c7dd666f2a1069456e1407bc9aa3044007c1112543b44ea03ee195765e172540f335ee6a7c907e300ed181e0307e301f99504f1b06d636b3546bf08b99ac6d16f634ccb90a2066958abf2be37546161a6d0134ac9c7853cfec8744465d0865668cf4e2ce939023121c405ec5da24e86f52fa08468357db6c70814255f5451c574add07f276b063af8fabc4a2ca3ee3a7c8d8d06e6905fad7033c0b327169a3f2a0fc50260440139f569bcb18578a96b1f1b66ab2dd914d6523aaf47553fbb5980272be045210401127fe42af59952b1cd91b942f56103a16c6b115079755ce31e183e26129b01280ccba8cc280eedb14270071419a7e16a7d292d20a5c7d06272574697a9de05606bf4964680fbb0165958f7ca120a97095d2a10f0195d60c783e76cc3fe3d05099c9861b5a1be09b261484e40b363f1ced3cb2526e3ff1ce89a09b6da4fc007284dd0d12d57af58fa59041c29a2de3ef971fb8c301f895ebc3a5bfca0873600e78d392aff20b9e271d852bb92ddd77f456b8771deff4bba1fd125b96dbbae0125180a24656bc92ad394b3125b4770cf620e417f07fee7d80cea28798e775007e40b59f651f7571798157d35813a6df06b947d359d21414517f338ac0664c302e5c1a33a9d6cadf859ce6137c31ac37eee17820e5a24c72eaeae3e63ff4c880519736947d085332e85799fb894654a7597a3d66adccf5663aff8331d4c25080579c699ad9e648494ca1147f7ff14b608307f538b62a576ea6f6419d5989fbe06c608b36e09048419859301090d09fcd35ea53b1e78c53857dbbf0dddb010af02ef1164379e4ea3be1b8122c9b0f684450da6b258f5b89769e0731210e382c700b6ace35c71d619af243e65b4168deee5dedb959f23b6f17b2a605cbdbe32fd04dc7412e47d9b567697615ff7d82c9c10f74240cf07661a4b89d5de7037306a020a0b52d51665456ff623c0555173ce2e9c17452d50015e0772895eb611684e02e04d634e6b9e5bec6b86afe8d71b20331705ee3867516a32b03a1851e8597c06544bf040c3da8474fada1aafb3067748d22184ce219169452eefbae868564c040e68aa91f9abaf9535cc80f52ac3643853d73a6bb3790e83631c7a88d9d776053c2fcfbe7c6c1b10177eae1cdbe78210760afad75d4092dad01514f1b21b0707c949cd827e6644ae8506591f547d64106e93e86df11b3caf7545d465477f1b02009d3af0af3057214743ca78d104ae52fc8cf35d72068579fb8daf6586382602f8a66eecdbe29be4cefaf131c09829d280482d0c65b5ef265a5a8df35fe73300ea87e01f29ceac0dcf07caa9b4dfac1602144034b5662f7001fabac542621e06410ba8d7ce5cecdeb66011a505e758d2840f7149b7b1280d6788d3b39410dc0630e8d017f3937c4a1b4a7cbb1b1bb7f9577a2db136f42b505e573d3cecb921013f15bb530ee0a9fe0f517325e77dfdd83230ca26245afe4959901997d1ab1a058b893c1f8a7df1e58cc6b878b737ffedae5251834f34caa4b32c82d268d95d07ae39314d78da59cd20c37db4303683f05c1e8539b763f3a9e944a4b312b8a404e8bbb86a45957487f317e2064964e6aa9fc659f077bf499f710d028b581183011cca710b99043fe189787c9cdf3104c7ef2d4c46ffbbe1b0de0e0145105f3a0025bfd968d2727e11cec92ddfd9092a5cec0023ccdad205602250ec721e6438037d1e0ca5960c188a3c831bced3d61838b1f6e06ef3dcfe60f846ca28e56c430677b8f80ee88428982016ed11ff91cc8904e60c9e6e71523d90729d19f78ca0022268973a6ece2d7c78eb0392814311f9c89e5fe8e06a0b5c82f69001a4828903e54dd45d42ef5094fb118f8c7eae6af1049ba428425793c90d338b0490e632037ddc7597ce0c89603fd5f1a33a33e975bcef4d43535c10227f56f592ea71d705c2fc81e18553207108f7061adff8ab752254a8bbd0401ab0fb8892d440df6a02bf7cd4d5066b9a2fab889cd705fc6613b135b949a498c01bd4d322a4707bd1038716e297455c2db86b84d3d1e4e68d92dfe94adfdaa452d1097b3ed8b3c79e0410658769077107886c9e820027cbbec13678fadc341569b35483def31a37610462b4bdc484cb073bebdea4d51ea52a7e78cf29327d584d57cbc6853b20d1400769c3b4dec81bdc12821ae8ac66bd0915fe3355f2cb475240ffbe3e83c23a5c053c52af34edb81edb36bf9d3bec6187879427ff2d7b2e7d1e7e3b6f5dc3176d0679ffef7301fabdde615cd2aa41c4e802669bd68342701f2e4456b37ee5888504199f3526b33e142d0201e2d221699a77cce1485d033ac5f7be0c76ec00942401ba2950e6714a9da90327b9d1221f6b8703774b258bda88785efcf3428851d307ae733176fc163332496e0052c5a8f0b0f8420e822da97e81e4ac21361e401e05204eea3ef985b9b45bd513f2200294c310e08bbb97a82468d6c54ff36c56f805e232635dd6610ffba3ace0546aaedcade0e5915e01d22bd94d1f202daeeac4032e598ef238cfdce0c28e801389268b39dabc7c7402b53ae2c319a562bbd01503c7cdc1ae6416b11c93fbcab9995ad581b2cbedac1602a98dbc84a2396f9fc101148b7a2ba33a6cb1422f4eafde09d7c934857c1d5b46cea7dee9ebd177ea1d011e80186097adbe7103a95ca1d277c9c335b82a71854b73909de3451189f7b505262f8f6ea2bb98575157f0dd15bda523ae93ce9658dbdd849c95ea626cf3f207a7c1b8c8a6ba4cf3d9984beb2131f68859671fcd6002eb5753958e4ec1b424036f258ac54fcd44b0b7b6c425e5269b961efe4dbedf41003b4e6b49bfb5d01d0616f844cff06373542562eb3b53bf9c28596bf7f7572edff6b1d1483b5684f406da778ae94c16b3c5e156e45ef3880bfc93d555cf87339106c28661a2fd4d91068c0d76fc06e0a247e6cb38e52ee0916f0509177d9b02b0b4aaea0b55f4fa2603cb8fa75bd419afa94a7b98b6eefc3b7fec7aaa77450f09bb4b6ed654a22f8807c7a1da9f235402cd70535923dcaa9a1460fbe7945213820cbdd70506d39fb302940241fa0468ca22369158071786d220e939d6086a8bf0337686f3cb93086801eb7e7c55d691969deefb09c0d496a6920865031b1a74463624b3e13ea83115046900d6642ed8afe85fcb5e9d8b08306ef4253d80b3fa3434b9977253e569a3003a091b84602cd2ef3c51332c1f679e875d084ce96146fa7c45c9057ff0bf8f0647fdc5c3887dcbf08a334f936eddd5dc3d355f96a1d40ec679a90b57112a1c01508472549ff02e05b48d6b897431929d90c23f38047f9e6c6d0261405e715f02e2cc702e2e678e2c8c9465deff1e723a785982fbd7bf9f27e6b4a551b1b8f60549f554b7a2b3876fc0df9f3bce2ee95c1046bd1551e161df7079978fd036a705631c9bc86424a360c2e670a4ef42b6be441f313f8b5e49f86eb101e019ecb70410c294aa96dc26aaf00ef81c64bc02eb8e7603d2d8232eb3f652dc0b5d930a03c92523ffe0d60a7fe35610f82d61e344683be6bb67320f44d608331b74892b0371cd77230bfbe82081f6625b8182eceea8c33b87192a3f96db18705275f9000756040b031a6713f5abffb1fbe030d5427f640e5df305b95b5da05b884395a60444d8ef8f2d363fe4138ad3b2c777207d5c05b2df29be2376ceeeacda362a850273c18660fdda84a83583f830d1b76a3ff82d439a4f79e5bc27ca0f79c8f00606b0f3a403175b926ceffcc3423033c315ca390d18a534031aca76b33672fde80761e0ecaa84cf9d7b16ce2d3e1cb6224ce15912688ec2ad38353bca6919f9c907463148fa25404a75dd1dd9d8aef3d8d28163c0488a0c71849eff2c77e67d0206d56185a0f8d0f242d25d7e132a1e441a8834088c2a0d827190bbdf56f886b401eeb9d9c037e6dfee29c1b7b85cf614156ba46a518fb47638ad27a08a3d9ea404cb77ee433fc2b56e444c4c5282663d4cb0cd2a89c8a125b105816b8bd1aaad02ef5331b170a59225b55df9fbe9836ff336580b3168e555c5ae6019a46a590b0429eb0792ab17c97d35ab45eec48094e04d1194a34ee7e5208cf677b78d67a707277c0bfdf26dee6f4b21484451b61a3dab44e26dc3ed022b5c020f2b726ded0081fc99475f24fc32d556965f42974ecbc8b8fbc46876ed71bb1dcb37299c0406d11234d22c7999790d9a75ee497e54a7f720cff8b189a37c5ac9421b631ef403546e46afc48a2136b09aca617c5cb40708a34851099769f93df9eff2c4129103adb9bf3ec6a07dc758cc72c6cf438ad225cd2c0dd4465192763e9d7e0ed4570723fff0aa5892b2527ab629b8a06f36cb040af135714c3ae9d7c68d79c7b3140509b0a61349055d0aa69bc96f57c73b9f4e039880d934f2199e54113ed07a0802eebb6c7b1c8deeb6b8f8f60b52eb10bf38f2fb5b893b237a404aeaf03433130214210722aa9298586b9e23d33bbb5ed3e19e0f1e3cc342bdbcf1a79b7b927e0402b51262a4fd6a26655bb507e10ce1630217fe2b1b2636fc1be5573e794fde03e008b884ea89d4132fac8bfa4a9aca9d67624f0c38d300b15a71cdd52dcf83051b609258d15e156f743ff486f742811dae983d196578fbf8361a9c8ba76aff0462e55a425b643126e817385080d3ce60ab11b18a2720594e950852944ca3bc07be342b5c8ead142b88b659f532d0c245805793bc726916046d7707a7acf1e7002ae91782ace96e25dd59ec9e3e595f6effb3ccd0672b0693799329ee0c6a160764d6a4210ace748964d173022fc56a9f14cb80b35ff1f8374ef04f810aa4b703ff206ce0432a26ca3f6d45095e6ebc8914a8feac720d60fe89d30013eb2ada06b9f6adb7ea65d92681fe7f69f8991318e7ea261e696d6473ad48ba91facb21049f7f45f430ef13554817c7e4e1a4d5ea74dddea2c8dcf8dfbe9872a0a864f700ed9b05f35bdfbc81511c506013fd63b08b307b6154c220b00f531afdf8db5304f43e6d29bcb9649e4515c4d471c4c039c9e870a25a92a2388506ca302818950644a009a4ee0649dd07f45043747bc5c67acb4aa36e18792b77a18715ddad8e03bd606ce3b3be83e3f2acaadfaaabfc2a967fe6174d36dfbb257335f3e8be4f06d5ccc5813368ad5d9fe6b5ceb2d91a10f1a4b3744b3bb79a671fdf28fcefa000dde4313b8199caaac2c2e77d17eecadd3e106b3923931db637888d11a49680035162fa9c4cea7859a769e419c3cd24f804218e14a77fc62e458ba8c8588ffb04940ad558d45baef3ac0c0a3afa906a7329e64f89e35ac2458d17297121bbb60350bd2dec9abcd3b0bb59de030897597fb9ff9adeedea0832951e6bdc574f6700e1332a0071d55db19be044c3494b0dfab3359939a421510c428c5b4a63ecdc05837d23dc4999f6454fa7ac529a0a0f0883c975f17d7a79835dd21568b7cac2057fcb56e154d7732cfbc5142dc0f3c22ac849715c11fe8767064d72f895888f02277fcc6e5777b35a00b27b6f0462cdd8ccdb0f333f8b3133f0af8f934470cb05e639271e512996ce66671d79299c991dbdbe21de6b4d6bf45f50f5d86cb46505c115e0b9f181e57c0a3ff3791a09c339aa5f9ffbd30c0bb9cd151a4449ddd200d58746c1b9adef70bc2ba17664f44236a76a29c8dcc206891bbbd89891d9bb0077dc6e951595a05055ca357d5873523857576a98dab6070c8c233405e35fce053d1e3f6c0da564e3ac1afe7a91341401eedbe1b314ad7938d092c8a03ab302028d89e225ece263fa13125252a438626a60a99857f3adcb4e9763668cca0b760511b783f97d03e31cf2f49d4cfb169d666a36a8b6b92332ad764c52d58c78ee04dab15aee8f733e8ebf79996d74f5d4a4c8fdc88963b28f51ce63cec9c5827a06d76dcae28300a1c1c00452d7f7d1daffddc0fdb86e229a61a218fb3501e9cf07407d1dc68ce73da9d4dd999ced2009315f5b7201a204f05e778b654fffcd6904b9fe6b2a595f7b200a92e9883269fa50b427951571dff81a0756ada8abb11d0678b6a93ac3223b1f7165708ad979cbc09f6ab8edcf8657759c4700adc6f36d018f32fb6d664785b95a97674a31501a2ad6cfa0d2816305a1fdd2d808b3bc100483aafef7e77f383b7a6fe70c4c918c04a4772bcbbef2cf9aa1c69f3b391d7f05ad90a055f2442480e9c8fe3f50ac54fac66ddb1e5d1378766dcbdf63cbf7950234dac8b376dc6bccb4a47640df5414e677a8c4dc7a0d511725f72be6acab14032bee92f0b89d3b42ed50d557d42a62922ab568ec4ab1a8a5bc154b639c9f3b0290375648c86fbdbd0ef859783ce37c87f19f32996c0317a9bf312923f14dc7067344ee4a82684e4e123d2babb4c64997fe2835b84db196232fb2372f5ba8c707856e7c60fc6b0549394f65c8ba25cb8b3380618aa7f9a002d9604bcbcfccb705aaca3b096bb84d6e43e10aa1cfe5892b54aa371cedf606d9f83335d014c81c04f83255b398e47de092b39a84d3a061d5432b4d740f6e1ee76ec4ce088a1ab40105e359a995ef297e5bed136b170c19c1d0c19b7c0399ad3a596882920d2640060b9f9d36f51cd210efe77d0828c2077b7db05c6f860a2de369ba80502d18b804db9910997a28289bf97ee54b2721620d26e0f87d72678966537973fe454298025f5b953712f8062c7e068825c6782ef0a8a68523f5f3e0d08e0a355a99203d02cf5d410f625f8ee7bfd085bc29e45aee920bf128eab96bbd09c3b830ac617e059772de04d75aaeda2ab6b0c877d89f7a491fc9c4b719bb4afea4af35b5237f0445b410e6479b1e770eeecaa3e2d5d049274aa68aff82e8b66e84d7ce76adc302cf6715bdd26761f43c2470697d34b1464fc284ce82657e6086c6bc651329e407b5147d10701c559bef14188e98d1f64420c94c06caa909954429cf13d2348b004532a52f8efa77a93ecf6f7b16b6e552d85e4065b2f6a0a7a66d712d8878d701a9aedb7a627e0298461a39e1a06f50989583c9d692c6d4c8b5446662b06a3a052bb392e47244a9fc81628233d23e5704f928eda1588befd5b9d6538f998677019ba9b3beec29ef2f82193e230424b457674e99b4f3c8f5a23782a54d8be87a00b8cad06a2b9005d4ce6b38a0eb18ef309b31be648960ed0e10f0f58e7fce290716dfe3a52bad1c609080de15c06be4535bb28d447de627fe2e6fdd3da9c5130650406df9c726fca723b243dfc6cdb14a6e700e13f6f2b3affc0e9884744a310182a8ae36d7e3a26656525a2463a35c65875c92df7ee30a56b1f021fcdda3e507e8fa07a95b7e4c6121f842f029ca5b159bdafccd130d131cf193956fffefc906291993e70cce66ea0ca26e2d0757ed135b0f91dc4f275285ca9522628d038f061943f7e8bcb20fbef2501d5b15f5ec4624934a634015cb459eb2ec75d779390768808de12eb61fcbd63ce8bd76865cf9d5db5d67c40b0f001c7b2c54a0cac6032fa1f3fe3ffee9e5ad5b26e9f7164f122063c1c6b85e5988d6ed3cb197ff0f04e3b3765d420b587cd359c8ec0f5296e2aee357a12f2b74ed3e4aba2c77c855069e99d8b614dfa09b4eabe1252149864d87f6b112ea34d74429fee38c5d005900e55bd44057d0ff7b92c39f99af5e6a035833a33677249bfa4d17af823c0aa8048cd6969299b661e8f528f54978c85d9fe9399c6b965006830a5778bec4f61f01ff2b12b980a0538d442afc69f59e03a4dfb11e98c27bac6b7e19f30cfcf8f203f670fe283ec259fc04903ca3dd0e81b4b208babb21cc111a972d084be50fc2004da79aacb6b5d32e99a6a53cde1e6f2abe6879880ac859253d01163dff10fa04ce748731e1de2b16d6b3fc2a73a1a80093c7a8fc1d7dd17d17b2c79377efe405feae4bda384d1163e07830a096d59f8a9daf433c249606b21e41ff78ae963104d597e131a3bfc786991357e1ba4d533d484db6ee68332036a117352d1a1c72078854b5d1551b736ec6bf450a6b5d0c7d6cb822f2ba2b4055301427b82c0a35038146643c4899b93bdc9400c6f95e6ed56286847afa4c96d3be2d43bf21ac8f049ca6cd9708a23fd178ca242f5c166d2d16e642d897f40a6dc4e7899ced3e3f063501da3ff6afe277b5352ec910e3e9788e05e182a6b19b8aea4bb8e6bce38903b11240f6c9ae00596ba5028164bcceba12c6af1c26b87c5f9d1d6056ce193a03d576c27801a5a8ce96784504840c7f50048e626bfa4e0c01539483d9e28c84005aa2291f123512e81e682833c8fcaa26d2f5fd7c50c17ec8c944eaa4d2615e07aa6c433bc8e2b2a8a184cfbe279079c562107fd54d41cf46c9892e6f7941c00315e80ea7c016110a13ec966be487b99bd5925c9ba5591765af43f050fd208e0703de6e935820fd8ccf5a36e8bb75a5f60167ef9dcf26065bdd5f853fe4d56502ea87152d5d5c4ac568ba86a25d37d158328b326c839fe105fc0e5954aeb26d01848a3491c07aa97c6665ae237d6f10dbeff42c113d5b848b18944482e1f85907dad39ff0ada278f4a32857dc1e9a9a92b7d230235bc17f020a0d5d24e9f8af07a1af2d69a266e3109b2e17a9f4b3c55889d42eeac2adf11e1f156dce0a999c05bc7e4efeb9833f2ffad2d1e4969429dbba2f3a170379896f41f8aaed44128c0000000000000000000000004f923b38b86f12e0521a6ab47e834093ed134b2d00000000000000000000000013bf130a7da41dd457fd5f0003c36ca57763a7e40000000000000000000000004510d044fd72cdaf56dded4809c08e04ac4aad8b000000000000000000000000299b0fe9600842cc8014914651488d77f26f1a7b000000000000000000000000aaf0c9e73ef5eeef4c3019387efaf8a425736c10000000000000000000000000711cb29faae745505da40ea754695e4b3aeb78c90000000000000000000000004219bf980dac6e16d020bd63d1786ee19565388800000000000000000000000096e8c28fd1ae8ea5a1e0fad5bd1250400c350e0d0000000000000000000000001d40cd67028a45c91b4fc6a324feb1bd0598cae60000000000000000000000004069a95f5f30ccbf8a828f8b4234e4d4132ccafe00000000000000000000000019cc58782ff552adf11aca0a8b197d89c50aebb100000000000000000000000097dcab27499679aff1a802066c840594d22030a40000000000000000000000008305cfcb97730818598b5a4bbba46208ca6ea649000000000000000000000000c541abc75305f0ee2202c45f6eb8bec8d6551d1c000000000000000000000000d880e1833f7562d9b6f4d58b1bb2cab611226b0d0000000000000000000000008ae4e0f3c1faf6bcc844a77afc736882c030b8340000000000000000000000009df95a66b991fdfb2a130ebddcf81fb7a9730781000000000000000000000000244d5a29769c31295a253ca2b74492929ee717390000000000000000000000004973cb0eec46e8a5f1606f21168a0646fee010680000000000000000000000005684789c0e804d14ba223ea70a22daaf9386a15200000000000000000000000024676b95a3b060e217bcd44add893480e98deef3000000000000000000000000b20aa46391c2561f630fd1599398648e56c77f85000000000000000000000000ef941f0b92e698afc0f0adfbbcd0656fd64fd825000000000000000000000000c854cd3a811064966a1454ca61e2e81b941ed04f000000000000000000000000dd4e676a384b9aab4315352f599f5e3f7996b76000000000000000000000000005ff0ed3cf5e537ceb72a5d3da3d3062053c23dd000000000000000000000000683b13ab929bb848202a7fd515930ad86d5383d400000000000000000000000076bd3bafc1dafedb1b23004edc99ffbea611d26a00000000000000000000000094cd17ed6d5ce0f371facf6e37cb896a8afe22c7000000000000000000000000bcb37d08de8946a5b3a76e82287263c92e508193000000000000000000000000a3b8da884170ee77df57ff07b9e10f6976d8d4320000000000000000000000006896ff4ded3729f1126dd333db30286507485a54000000000000000000000000259119d3132868c3c72d4737a3ef0b09addda46c0000000000000000000000007e8e4e6b57540487087a1e97e712d778528e10370000000000000000000000001dba11236fd39819f1a4da1d0f1c59e5961d6797000000000000000000000000cf4963386703267ea237d4a76aa0c1c075f2b633000000000000000000000000d500c4c4b9dc7a07184eeb4ebc6d67f5fe20bc550000000000000000000000002dee0a25c826c8ffad606d157b9855fdd9b8a19500000000000000000000000097dc8e939cb94a41b8149075b509608b098ea2c9000000000000000000000000bdde01951d4e1ad01aa84f1e25fc1b8c796506b300000000000000000000000076d3fa76e0ab5b59da977be53a628230d0131b4b00000000000000000000000046ef7493e34fdda1c10b4a9d58c2b8974bbfc286000000000000000000000000d2bd83bbd67135afffcd3f2f6a0a2c8aa5c81c63000000000000000000000000fb9d95b3043609f7b64b04ac4b00e28c93dc73710000000000000000000000005a1aeab7ac78a37dbf6e755e421ed6c3b6765646000000000000000000000000c7f1a5f81a5fcb91658d971169239bf0601b0bab0000000000000000000000005db4d645dc1e870c7731fb62fd6996ccd365489a000000000000000000000000ddb452209e5db6698e477bc973a5a108ce3f5372000000000000000000000000a25a7e6e258f81a443336983cb1cf76d38bb26e4000000000000000000000000672de5021975dbad47cb57b60e7d5de623a737910000000000000000000000001229396d24e14dd299b13bcf72bfa0ed0ae51e30000000000000000000000000129ab8fdc878858005eee052bc5bd76ed9a440780000000000000000000000007f01a5a682041e691522af6b70ec461c18974be300000000000000000000000015f98ada20877b2bebbdd05e36b3139db5fde718000000000000000000000000ce96f6208883ae4d90a68f16cef3f2c7fea3f0e60000000000000000000000005af580240ce22826e8f3bb0fe0eaa80d610304d7000000000000000000000000c6203b5e2184ef446d232aa0ad29fe3b39d5a81a00000000000000000000000058939bea5f56e523531b7af58b10f3fcc6de63b6000000000000000000000000e943c1b741a1ae20b73afa2ca348e982f20c2e8200000000000000000000000095a66f28482c200bae0288585f8f1afc34a34203000000000000000000000000cbf9d1dc351130773967fe1ded7bb73761b63369000000000000000000000000e8b440fc9c3ec3d93c90d64ffd18a43e3be048fa0000000000000000000000007929a23714a2d49d293447e25344f8c064c0e1df000000000000000000000000f0019ac9e0d2c27017791d260292fece47aef8ab000000000000000000000000088b23f47ff374a80389980ecb3e1bae55467cca0000000000000000000000004556744fa3695e0a11d15f7580bf5bd3c9bec664000000000000000000000000d064d62b42378f5fb9edae2cb5eb643c3a346c1c000000000000000000000000e9790858cc36daaee39665e55d38432df5e7645f0000000000000000000000006e02c5eea5c135770e188c0f00deca78ddfff2af0000000000000000000000007fe9db638e8613904bde4fcce9af24129496c0ca000000000000000000000000ced4fb39f26c0f13ccf3ec95d6a4b5bbac3f453f0000000000000000000000002142685d8731c5c061b657c1e4401827b99a0ea2000000000000000000000000289e4191fa698c2b1d044f8203454f716dd6818a00000000000000000000000000c13bf84db80de84a0cfc4ab555c3a303da375f00000000000000000000000005994e2f3eb31bf5b6f4570bab7b134bfcaaa29a0000000000000000000000003738cece5059dea34b4b3a20018a9d1de30ef8ba000000000000000000000000a44f8f9ae24f01a9508f765c35ab24e4d04461df000000000000000000000000a3c78714c63ce0b5d4464fd9675f58cec867bb73000000000000000000000000eb2887fc273cef488d7fbe62f036228d1a4a65470000000000000000000000003dc08320d8ac28df4ae749d0df079623d62aa0750000000000000000000000002f9804821a169c37ae86edec15d1897d342faac70000000000000000000000009c73a9e849e0ab30a10608b7f2b5d3bbf2749dc7000000000000000000000000e62b34cb08b626622dd564faea13a2ca2a3573c700000000000000000000000015021366ac0440e63fb207dc0d4ccfc95f85b6ff000000000000000000000000f0475f40d0c6c828632db7131c938b77c18f74fc000000000000000000000000607147a88bdfa46ca84b10f521bd9160be3a28b200000000000000000000000016e532d1abeeaf041079f38f5835ddb98b3b885b000000000000000000000000ffd27857d17e0f770be1c058e772405d6db24f4400000000000000000000000022f2dc05a4208d0d7b7b706c9a11508bfa7ba48800000000000000000000000009cfc1a2794111f281bc2c73ed5f35c9895246e6000000000000000000000000e148085f2f03ed5400decba1e86bcbd8c53f7dc50000000000000000000000006a75e97417081d822ddcaa4870f123b11c0fcd2e0000000000000000000000002c8721a2cecaebdeec12a54d395f98c1fdb5df46000000000000000000000000148d478f78b3323c6f05613243b664dec2cfd7a9000000000000000000000000a42316dcda30be3ff4862cad33c3014c1c3dae7c00000000000000000000000016fba099d9a88f7a2757100a348088a111d9263e000000000000000000000000249e8e1620de12539808a5dbf47e159526e1bb2f000000000000000000000000a1aa15835b93caeb710832fa2f5752063da01271000000000000000000000000173af81d5f7a56236b65c4dfcf9c2e8a837a6501000000000000000000000000a58f6850f60c6d7ff19897598de48c9f995ca733000000000000000000000000fd77a7e560da8ee5637cb48b5847d81b3fcd9a660000000000000000000000007c5b037f588527206c1b194b571b7c32488c16cf0000000000000000000000003d86fccc2be0bc9e0565d6b7fcd677c4159bbfb8000000000000000000000000ee3b75f2910f44903d85abee4152528fcb0bc9040000000000000000000000001305f1192467ef6c13355be8d4b80c251eb22d870000000000000000000000005b73f825e320e418057f3b8472367e3a60dca2c90000000000000000000000009e41ec80d5dfb26919083ff16cf69e2ee73e2b16000000000000000000000000aa9b8fb1edcf967018901c1050069f6cd592ac490000000000000000000000006acaac579886fe12b016ee8f25fe6dd8c44777c6000000000000000000000000263c5ec2829f5f7cc9953f3da6ab9008ca217312000000000000000000000000a1b0df62dd745f7138a8eb60ccc3df2675882b4e000000000000000000000000597c8ec88541baa746e9e958792776d871748811000000000000000000000000abb960d5c1e2c464bcb40a93cdbb36288ab0ff47000000000000000000000000ab00c56015d30da3acba9421cab39e6a04797827000000000000000000000000c07a4bf117f26434705a2aa205523264952486760000000000000000000000004e8b3ab93f5478a5d88a3b115e93878f3be350240000000000000000000000007c9431eef622f13b1342fd75126edafe2fed3ebc000000000000000000000000c75f0fdfa8a6e4817827b175fbfba26f17349035000000000000000000000000049311c4ef412873c89ef9c2f681f2bb08785649000000000000000000000000662746669c041e8d2e92aff44af6d3d0f156bac1000000000000000000000000f057c0f555f88e0cbc8d97e85e89cd68277a5bb6000000000000000000000000741888db6f47554526c55bb9cfb333d13813efee000000000000000000000000af79831083447e0415c2a0e3abddddad611b92a8000000000000000000000000c61b167e747b88fbc80d7df579fc7e1f3acf974700000000000000000000000093260a2a2e083a459be32757a15e721e50a8c9b700000000000000000000000010dfe5ca112cc57429a06680d2f80262a8c5cdcc0000000000000000000000002f56298e1e7721b520457272bf80dcbd54e47fd8000000000000000000000000cf661e9e8aaae1a82117aaabbbda22c8132d4ce7000000000000000000000000d5029232159ad30764ff3b3edfdf7751677658e900000000000000000000000022ec63cdac68b85e9c1afdb42096dacb22f4af7b000000000000000000000000dbe2f4dad978be99200d76c1fa12e20c39001fba0000000000000000000000005cba0e6c1771fe3b801db9ce8d8d5d86c7a4d18f00000000000000000000000059e5241d567f5c3cb8544edfd9d5ecefa46a98c4000000000000000000000000a942b2f8abbaab039e2b831a3b351a8e28211a3d000000000000000000000000137b93bd9111c40b912102e4421dadcbcc1dc9c8000000000000000000000000529208d6367e46cb494564421e72850ce0085c2d0000000000000000000000000697a53d05094c36f2893cf5c630b11f13b11cc70000000000000000000000001cc2f6d560a00a25523bc254520cf56a0e0f19080000000000000000000000007ccbef163ab895c8ba8b801814845bc958cff7aa000000000000000000000000de9a8c2417114583e3d9a34ff1601b276325705300000000000000000000000053475279f07af06b236941dca32dbf66a966307700000000000000000000000076816265d1f691d9c805fbc1f53b3107dd5861c6000000000000000000000000a09573e54f138727bf8209a21363ec87b917ea6f000000000000000000000000ea086a02d10a3837164ede954ee28a8f110c5edd000000000000000000000000d54e08bd4c8acc4a09ecb41d60be1780bce6c596000000000000000000000000179fa6fdc5d0b102160f6dc0e6b92a31e509880f00000000000000000000000050be99e13a8d184f1dfcea3ad2d5e7c6f5ef330c00000000000000000000000004c118c399ae7870a55e15c0724764a0b4cdd03d0000000000000000000000004cd86e77b84a8127ae6cb136f6dc47c1aa4035e20000000000000000000000001f499b89c70c6407bbe81995b9a4a7449c8acdbf0000000000000000000000004aa11b71098744eb4ac53c73c0e37a95e9b2b6c3000000000000000000000000f824420d6001bf5329e9cf1cf342e94688538e00000000000000000000000000c6d6fbf36d7c1d430b8e3f95ecb84689002282a2000000000000000000000000d25534f6063c10dba8511bf32d33a18ab2a11451000000000000000000000000a0e598e68db55ac5aa89f0a5cf8be622f46d62160000000000000000000000003b50a24d6a1e5f5bbbf197602be54892038662880000000000000000000000002c3518f6daafaec636bc69d2802cb6c3b793da94000000000000000000000000412af0c346d97a4cb7515c64c943888b51f24f2600000000000000000000000004bc72e1c98b2021fbad1ac21f0b83645a39510a0000000000000000000000007eea70c2bec22a9fcbcfd10f3d032f7cb1471c0700000000000000000000000011907562601c24ab590b86662765834fcb2ca35500000000000000000000000070cf1276c25e743f0fc0773f3ec3fe230552a1f700000000000000000000000070ab92bafc9bbdb9d6c0f57f19f561395de25fa0000000000000000000000000a838a535b3db485de7c546f5832d68f35504862a000000000000000000000000c544f1baa819bac83eac2bf05666c0fde5a3e3e1000000000000000000000000a06f4833a1373b913e9985381ff3e91450fd80bd000000000000000000000000a7fdfae3ab8003d5693b1a102aad5cc1f7f10f5b000000000000000000000000d79d36f7ba96ae63abea165cef5e9418efa5ccbd000000000000000000000000cf9eb0654280448fde75e02478ae5230113c86c500000000000000000000000066ef2cfd5f871b8c1e8d9e2cac7b06d8f6b291890000000000000000000000001f1e6e27f579248f920d0fc52fe34d1f2f05c52f000000000000000000000000738d9f1837e8ea145b639a2b4682cdf4ece6601d0000000000000000000000008b76b092fe3d726c1ffb040944e3aa95d64aa03a000000000000000000000000af9c8787d0f7a068b88d92d351f890ee9e563015000000000000000000000000384d57e5601166bc1584e638feeba767bd46aed900000000000000000000000044d428212ded7d1686a5918c9803792ad6663e1e00000000000000000000000060a27444b86bf86126cec5158d94c06bfc8e65ed0000000000000000000000001ca2c0d81fe5513239f245c2f8511ff9a922948b000000000000000000000000f2b2050a6c816d9f39c7ea652c008083d2ed2148000000000000000000000000a452ea1a3e9c0e60a6547f472db1663173d12daf000000000000000000000000a13baf4711abd6ce8183f8c24f8362a7783246630000000000000000000000008b1e43f69b0d996b506aaa34efeacb0f242c54ff000000000000000000000000d29d4642632933d17c7e5837bd10e0a5b2271cf7000000000000000000000000b9580c8676333be556b5882b6fe8ac9572d9d36c000000000000000000000000a1a057b12a750b68869b8397464f075d19d17434000000000000000000000000b941159a091b4afc9cdb6b2e1f49226a507640a700000000000000000000000000326f951d82794d728d55ba3adb60b8cd91a936000000000000000000000000f7a0a950c03f9bc39465a4e4baf68a01bf8775da000000000000000000000000d907429909d1e0b15e30bb0aa7a33dd5d77d7184000000000000000000000000c9f2167093ad8fd88a76693e138447c60ab4ea35000000000000000000000000ce677925a5a8dd9e0675a343affaf30e3af884230000000000000000000000006db0f00aa9f39098e7c457e4a551d02808e13c0b000000000000000000000000a7b0ac49be7deb4e2f7431d13864a79a4e70860000000000000000000000000002896946b63a0dddff04e82d5cb6ef369d9e243000000000000000000000000034f4f5ea33d3c301dffaec62b5a70931179caeda0000000000000000000000004b9dafe5883ca6b7fbdc1c11bdb10b4f9d03ec4f000000000000000000000000f1b867dadfc6f6b842bca97bf9022467197ae3cc0000000000000000000000002c4d815168747445ad466fa59f01c1fd8f01d37300000000000000000000000050eaeb2cfe0a34c09ddfa8135dcf0e6d60d20d390000000000000000000000009260662d94c473fdb32c5bfeef8eb7dc4a21b4a50000000000000000000000005b1e1b54f8279386c0290342111ae5de6a64b8e7000000000000000000000000c206fa5b8d9edb3dad59efbdef0ed3f341445c720000000000000000000000009e8003d23cba5cb5ec39d081cbb33fbb19d2351200000000000000000000000053c9625cff4162c1f8c34dfd63b5d725cc6fcfa204818bf4caea93cfa3e4331ce99197c7818e8286fb6af6928afedfae7e0ea41b0375034341670aa7dd90e14f93c1318353a242a7ae0364a9e0c5a59c6f91906204ffefb4031fd17985deafb9b5cd7f275aed4f57e3db2e7f06d3611663b0e7fa0400b375474e1a29386537cda5911e24d787aa3b99fdee5457d0c5fe445c286f026b34f2d3c7b8e25c126e9a66ad75102adb818ddd320bdc3fd7f1cfdef5de3b067d1fdca457b575d001369b61da1d760cd9122b6297ba0211b6c2d9a4a5411904126c98a237d035a35757a8ca5f8f561f7a153d2cc053c8f2baa183b4f853660445eb736ff52187bf857cb999fa7fc19897a1302860285d0d72caee7ee64fb401dcebc8902e87106f3b203f83f1eae3a33d34e41567dd080e36724b71b77a4602480f26871e2a4c2e8a42fde0fe092d899205c5cfefe64fa7c02d94ccdb18e502a585e18426629510723dab08ec3ee7573060d22cb19aee8aa323e46da6c1970409d0fd17113bd6dc1c80b4e7f2f0b2ca83d46fdda03ee2c14130c5f908ca1c01b027d8b0bf40483a8843acf0278d785e4de0fcb47da68589dd48181d7e5d1902687b8a468a6551d1ab7a17efdf7e99543e974e969f1308c62ee32ce3c9a16b007c8c990e3d6df024e1e9dfaf26d9710250346c47dfeb5c4d311d363ef6ad7003c8b55013d4cfe9bc18f43989e20a6c28e72fe67f0fc9193203bf61509c48fa059803d1212e92b31dff9027807546e22bbf3db17990fe453d67234c0be90587030296909971d9000422d122cdd3ec4baa891e06ca4a2c1d7fae7061ca7d40e306d7992b3ad7b0b5947ed76f944c0a92c7ab4870cb49e09ecb66810b5ad1cbe6020e6a5fecdc3e076d105498ccb32271ca5b50cce1076f9a6d08c9401456c2f401647a3ea2c3da862b9c8aa7b86ee8dae1b5f50eb2080783b907e3853e6cfc0a050698443a97b51c18e072582bb3e8ed88ad80c88d7663ba8c99033c133b6ea6054bf4e7b473f0c045d07538ddfdf5fa907d30419e36528270de5c2f72d484fb07213459201a3f44d3e9cb67224e2f869dc742086dbfff1199e44a51a91bd1380083b652fea4eed52cddd23485a1ace376f5ed204eb850cf77bbbcd53996a6aa074e490773e0c106fbb04c6b315d2a7d63e3cb8573df09abb9f0696065d2b3f00395f1f295d6b1ce62453e3bcd4c7963abe9f8f16e8d387e9e29f7e896902a4002d296bb3ce2e2fb91eee9c2dbb90430e52c04db1b86509a138046ed71ece22100cc68b70cad64c80e36449f5ec5f4d66da2074ab46f5075a6ce92f2983961c607d2d88c3dd8ebd6bd5b3cf0af2347ce53655eec66e41bbafc6e1cb218029b58052ae535066dbdfb1dc51c934f535b4d71cd6ecb454cd5e3d98c630eebb8d163059ac34ee70af718c2d0a03f05d8be9ec596262e63555db45cac7b6fbd17e74507ee911e74d9ef72b84c5772805476fec83b7ff2db0e2eacb7294ebd5e0d64f30446685f9c5636f6404fb8e906363d0f5881a770ab9204c84ebf3a5c3b758075047ca66f3315a3cafcc569df1caa60f731d6d701abeed72dbfc782d0e7389f1c00659bd4f982fe2623f415d78ad1239e669c7fcb0f1c15dd3cf8475877b4accf026d8868dab2e4afe77bf71793ab313a1654dee999bff415301bdac6a9f7476a02a4a79cd7d2acb8d498b2ea4dc224d3740674455102c863b52e8d6814ac88f20146d48a2d59ba7391e4e25ebf26e14b6266d4382142510305824a758ea11f690006904bd9590feaad86005747f737dbb97c4c70b4953b9fa776e60832f53a4b0456fff42502b6f738bf0b2316a5e927c3568676cea467d40d79a70838d206ad0025bb1d17845b49db2d9d4ffe17ba83fd98fee45e498b3c666db177d467af5404d2a7e65b57d8d2557a3b88fcfc01b5fa4e8bd811a8aea643e70006feb15c1a02a40c04adf95f425c9cadbd41346d21c7a4098cc9604923870b4b0dd97f94b003d9a17ed6fe1c424a29045e8fceac1937f6f79e42fab397689b9cfb38c63b63067ae31ffbc1ddf4a0e5303651adf2c85371b28e842110280f811e8c8375a25d078539a4d63606f6fa5ce9e5b3f60c39faab8fffcf56eba35ae602ef0e7fa82005ae3390ca5e3c5f6131b7f14e4cd157465080c9d03d5a0b686517fb4e0ff4b7010d30166b1a21c00df7ce130616117ac23b1155b660706e97867d15cf74e74b051e06a0d143eab6bd7b1f75409849edb1e731271d60ade7d427613f3ef0c5c006e88d98459bdac00d99317baba73498404c6c9abd69ab9fcd2a30d358dbeb0c060051fe62f0427fce96c238a70e0cc51571ca2ea975fcdf9b4639d8b70865b304f233193dfafd2a088861f7f261ccb467978a4392530f28b865f9588ae131e506bc032a49879a4f7ddc1e8724dd160b2a84b5cbb56858a0bc4516ab11a40a170510e3e7d2ae77e071d15dc1f130efc383ac7509616cc058f238f83d9d62580801d4ce6c06e5bf35c41195d9f0739e91be48ea9aed4713f6d2825aac1dde0a4a00b626e13bbe718e3542f07746c04fecdb32d506b50832921a09fd6d2734cc9d038760ed9a2b05bb2936cd9f36b9d5d36ff934cecec75199a6d58b7a4978e9b6072c4b2c5d89ba43cb68bb898156aa4c054a836b586b9e697715c9b81e7c3a6f015c73e9f1801ce3031cf7432709338ab98b31ae9800ef04c308e2d50730d59502ef03b0c6c38349de8a8af2b92dc1ab92cf958b7a1861ac102f0050ca867bcd04ff236562ef4b06655421ee6b41ae20098cba52d06fbf15b3c15a66822a0c0a027bcb5aa92434160f2b4a97a8d7c05b70643a6823cb711a9069f542042386b903542ba92512bb3d5fcd6dac85eabda9630a9b2daa34b15fd74b5e0e16928838075ee3bb4ca964a544e40c8cae9fd9577c3150c0fb946046bc29043f65ce3de805a49d20c23d46b2ba99b94b81d3b1503e80ff54771515b01f59365c110fac8901de7be48722d683212338cb13d7ec13799725b160d617ba85ab706d958926bb07c6e2775e7b59d49e7437b422994e6976f016df3736ba6a5064ca1bc38599f600e9a035f4815210a170ab12979924075d01bb381b3066a8bcd108fc884108b806b93320b2b3f62e04a5ea1faa70163253d58b8a69c8ef335436b3dd15521f44023d866bb95cbfb6f8ca10a309dcc768335ad1e861021aee7684a604ccd4f139070847668257036f0184aa2f790fc7a850820b426267e6ec22a8266e91e14eaa062c5866f4c64b42426ac0da65d5b2ffc22a9d5c26153e0ab26d119a0ed6843d00ede98b17b6a0c2e4bf7f832b08a0e75f4e9eea06a250958131ca99950633f20195949bb91d2d3edb05c31611480cdc17d1dcbb024f6acecc5815ec978b3b7b04902cc8c8825f9e8cb2519c458b85c6769a4775a64ad04661ae4c5b7729397f07573d9953005abb5b011d371059cec4233c7fac4297108f20155d071f6c1abe05427d222c76bbd71a84587eb26d7c399c63bdfd7fa7cba7e682a0fad8e91c4a068af07745de7fadf2da7bb7e2d9d098831281f2e75693dd11e15e3ff75e2d6405084a891a42a039d78072e8dab6bfb548fcb801b64c93bff9647fb59fd1e8b20016403dc78ece248a275d36213729d946c8c1cc55644dd4129d632d67714454000cb41be278a328c4a78fb0a791b600c31ead173a676d461dfbc798587b599e062064b03a929d712dab6da88aba8d712b4371a504795c585dd028db3677b399055396a76b24c8c700af4bb7190d95700578504779e14b2aa73b89c1a30d773502aa5b96619d4bf59546f306d82c98d3d2c63cf7e5bc0fd62bb9125ae061e83607c96d45fa955943933129b288aa2526cf29d480a6f3df923336b094e41c4c8c02e6cfc89df76f3b742721353220db9a0e5ff853861df3d4f261f59e418aa162045640e5f78fe4f0789791ccf17d7ffae74429c421182b27b566951d1e17a7110213d2e45289a923ec0abdd1f55f4e99e4144b1e85a1e13c7bf7874a3201352e049d0a6e818a976d2d4c5114086a2a7431ab64feb6154992d7819e9d34567964031ccceab1b51c5100269f6a3730faaf4212e87e1a18bddb06fe7bbd136caae80311c0e8f3301d14bfc0f1d969d74d3cbf6abf917af37411b52e3571666a5e0503c603786da4da1b07e83eaecb5e6eb6e0a54ff3f73dbed81f8c8d0ab94d482a075de402e2502c8134a72417ee0862706dc31f0466136c1e463a5c080437d4be0088c0698812ad53a7303a75452cf36f579a845498443eaa432098ee5047f18c06af913fe9671330f73bf3e21b61d39271deaa12d1a1a616150f7880dd19534701f53e65430aea4f2ad70dd302632f43b79b920fdfe64d50ad7d9f6256b1406f0074fcc6146621ea98dc173d97dd9c8ef3f264c16d06fcec6c7c7c85eeb7c52d023578047d4a64adfb821578d5df5cd19effe69aabc89158594c13c0f3a87b3d07aa6b47b83a5b8ab538b811ec7acb30acab013d542cb1ea097313f4457a6394004ec7e6750c97122b93b1c6dbb2f3ddfa195320b804a2ff58e3df06eb01736b008bbcb16536df81433e0cb47fa314f5f7769fd0d777760016c8f77841e3f009077925a1e5378de6131d1c9ba960ea8c40675500927c88a6944c6eb0d5bff63d05afddfbed0180e34bfdc095ea856cb2ed6634531a9db13fca3e512f23258dfa061bcc4cf492c0b246652ef9d101ac58f8b788449739cec87a768fe89b8eb30905a30f8cc0bdafd5ec841259058843a75e20eaf96d7a2393e3446918ab67a3a202ddedce575714016f7edf35a54344d2a6d4acf83f8307eb869c9773fb8061c606f41ef1d624b3c224579d916b64c262e94dfa4920bffd188ad4ca8a6f81ca1607aa3027d172249c28810058de00580f349d7ebcd33948eb131b9be8eda941bd04b6296e72b13988ac3346de9eb56755423aa088ac915729524411b4b503eb8e06be9f1bb71bc1c7d403414051a3b4a609f123ab4be4fddaf4d6a568311d9a4301f1d6546297db7121feeabd33734db5131b6ff6b4c9a6b3056dc85bdac30fbd01b6e10dcd4bf063788fe0067dbd9c32a70f33562f2eb7e59870e0608812ef75031b7f5602f3fe0c63ec28b3036c55b447c17c1227895a8bdb98878712cd81d4063badaa822281b61885aaa980f89eac584798ed6b97fa8b5555759e8667476c00631ef9405e4d9f0f66f47b1cb5370a9ff2fec16c4a61f6a8203320e51e0b320198896616fc804a34c1f6e276c4a60e6abe3acf3a8264c52beb1f8f674a2e4a066d49121e5ddb8c55798afa668f814a418543be384a322f68994983b8c8c1b005299317b64794dc7f52e5e2f4817ed05f0237c19a86e20f764a13cefdc64fa804eb36c85036f3cf33bbf7c33be98892dcbb4a7fb14afab299c22d40c1146d93010c107a8099899822b3e2127f5b313a96dc3c46b497ff27bec4aaa3eeb26c42019e5721404f6a7081c14cffa918889fd22f2f0e68b1e519b2190cf7dbb97e75066df877b5555aabb0165733669f7a351c95a88bd8b3a05e48b057d8ecc29e85020693e6c4cfac80a1bb7b9cd6774b203ac44600b6c31371ee9553c510876dc802e870fa23a5ecbd0229e1307bfe0b6155aa0d7144a02bbd3c6e9dc123390a9800abdfa19a4983883fc639ab8471df3e4420ec0742b4f3b078430906c77ad678019432fd9028ad24130b50e27524c7d5e507ed0ab6e72274139cd868ee65cebd0691423fd14c308b0e20ef4e08e0cfddc7d06ebf6db58e1d1801b14f99b514390231b1bc6c11c4392e0357973e6881e8c2328fbef81b87d162f036535807f4fb007d4eb97817897e6d0276680cc237a8f2678eafa7f6361c89c12e398d99388f061a003de0c4baaeffa22cb5e6e3325e108b93250fdaeacccc4086e983b483b207675932b6ee7e6cdac92365fdb7e5e12fb33a56107cf6703c0c7a28e21a2b47078c5871b301d65613fb155cec39bc84bed40c7bd67857ad772f68ef9c5ebef9022a446e805771ceeb6937fbca5a0996e38ecb21b85e46c364fea817bc3aa3a901fd8b91dec2bbac86aca7d5d11472000f15308c5537b23c1cf794b8b83af60300ec838b7130819cda71cbef5cb5f528fb75a17bc2292cfdf57827235af58cf301dc97f7afc0a56b37c98286e8c3bf7acdb925a9bdcaf66257a389323653269d00e424ccff5971dd50ad2cb9a526ad64c9581f5afdafc679973a31591fd4522404325030516baf6b361ec27b553fa89aeece7d7a35dbe6e44311a104ddc819f7035ce9662d9f44ddcb8bc9e0e0d3b285a86f214cb22772a08ba26dec0296b57106dcf56f6db989d4e1a10c7b4a04eaeb46198106e21791366b4d2cbf7b43ea790698394814a366754b0154f27f9773e11b49eb0228764bf15478451d31e38d7d00ca1bb2f46aa9e2c89ed0c9225ce79c70443c4a26502e3bd30067cd6d718a3407465b02c37b7c567b77fefdba0ddd468fd997aac461276fd32d4350e864a36504baf212a24cf96a9c6e99385d7f65ac58d5b7470d1d231cadaad19973e7fed503a4540672054595ed82ef84ae97d4d33ba072b5b75451ba1ef82da43642b41a023ef6000db5e506df080c1f5d02a4bffe2cde415d0b2f2fdeb9a859493cfa99069d8e36bda6569e0c11830397cd25e75e50888b7bbe6a5503ffb70adc82a1ed0364ca56787db357eb3125f6ecaaa00e658a7978eca2d337b2f1fde7a856650c00b4deb05941bf76bce4b6a1aa167a517df0e64c810cf10c42142dc107faa99000805742a67b14ccfc0cda59613b9f1e4d96762284d00c0adf183cc41f919603062036b3c56279b838254ba76c60211e3724fb4425f0d69840ccb9e8d4d97a4004019e5fda21fc59af665f84513721cfaf26579c9dc5c43ba59499b8e32cae20017297818d94305ef94822cdba6e81918cacc98661167248b664f8bb11bbda98000326270df54e2892c65e455a10a70e71d97924676e2518139598278a41c72604924937d16ebde3153dbc0e32a54acf976ad8784467afb25f91620f1ec6c615034d39d82f12e4d20163034fe19f80f10b38290b496296d7564210de21b2325301b79658b6788d4c072fd3d5c0e38a7956e01cf96564398a45a27eed11bcd87c05906f5563246968327198686f8b67baa92d910497ddaa3e30a832d82e4e81d80537eeeca8bb22c4198eada1e96f28de855b8de7c985c9bc8c00d09a6c076dfe0747f485c9a4d99ace5cd79acca3e53b176956db8e26bd8dc520fe1d928466ab03c79b61dc3b2a783aee258dc8911ab4c712301accee36efe5890d9a9410f2850326fab85d97ea35c3c8a36476122ea3829e1faea21f897a7488bd6a0d6ffec507580e8f6c052d111378562abdceb88dec44fce232159d97e90e3320886030cd062a5ff56bc3e1b28cdb4205a84d0f5fd33ea8d20f6d5d90dd3e2ce6e49ec1e103db985be222287834030fb1d5d6ba139453c375e01c18fc4be37c2c8b8aebea02800121c5b90a82f1377f958055563bb29cf4ebb350938225cc06b0b26699df07b43d3eb33eb51078c53e788c7402302a742d844cc6f54995f895f4827c9e4b025650bb1f5e777c0e020362ca5be50b9b80366f2432018c88c8798160e69ffc052f9526256be94632b8f8cb5c615d297f4e036bcac5992d1d00d0170f709a7b0118819fe3c91262019056381a73c80f31f210d807db4ab4973f5ffb8f42686d05d0922fea98c05b6ff579815210d7ec21cc2b3dcf8140def25269a3e7db46d5079875e2a40198d4700b4186db278431ed794857ee806dcdc38f9e81f9fae3ff07c0574ebdd3a5982fc37d6a1cca2153baa9e9f4689a870f8d08495acc349f550065d3486d5c74589d89a069fdec51af72a063c1cd317b8f4c057e01957f99c30000000000000000000000004b322840442a724c76ee5ffd371e5700020943fc000000000000000000000000a94378dbf3748511182de5d6cbcd66e3a0d12670000000000000000000000000ed4cc43299d28fc3c79c7aa42730eecc38f94805000000000000000000000000c91bed203d79b9d575cb7b9a0a2a82eaa8a1ed5000000000000000000000000062536934159c069a00a002139bd65190a1f63460000000000000000000000000795ed98df2baac60d4b231b2382fec5ca8480fbb000000000000000000000000180213350411e74757c9f0386a30f90dd5412e7a00000000000000000000000083c75d7f421bf8cad41fab81e07904e09dad1c360000000000000000000000005ab2dc9f3b928563e6684595959ad552d24c11d70000000000000000000000000a8ad0a4498abad80cb24103024ae99fdd721bb00000000000000000000000001b03fada5a52649a56cbe055859c4c0e04df22f6000000000000000000000000a7babaffebb501e1e23d5bd626e70c99cb9ab7d2000000000000000000000000cc064f1bfca2ca31af15234b27f5705f2f2c5b61000000000000000000000000d4f6462baabba3a6d17708ea081e88b02bbb2c4800000000000000000000000084c9303689458372be8f06bc8bb3f8996b09dc15000000000000000000000000560d1b146371fc7e7422114ff834b8692f3c3a8100000000000000000000000019d4f143b5bab27b7fc0745769de97d8cf9a906c000000000000000000000000f328fe1777710bf14f4baea445ee3f86eef881920000000000000000000000005b48ce264296b92e773179a42b849dbcc9911db000000000000000000000000075fa491967a0bdf7a92cdd24f7cbcfcbf205ece0000000000000000000000000c0bb0b47dc43569c0fc31b08ab37586080621b970000000000000000000000004ca1b4bd1acd696e77f1ef233926b9494b3903330000000000000000000000003882b6d425f0b7e1172442339bfc4e7d2576b1790000000000000000000000007a049f1c9d4f20820e54dd365d867f63771c0ae90000000000000000000000007870e50d8a79bf07e569e323e033754c0501080d0000000000000000000000007c3ff5661aee06625f4946e2db4bb8ec317418a70000000000000000000000005b7c165d10dc1a547f4a34421a89064e05bb7043000000000000000000000000500cca45929d463de39a738a1327ff0410bcc3de0000000000000000000000007ccdad53e82a55a1331959509ddfa01b77440324000000000000000000000000f34281f0a7fb92c3d0109a4d5894bc3c34b041bb0000000000000000000000002995f0c2021f62748edbaf270b1d1800297e446400000000000000000000000018df975a3e5a2ec36f7a000a9434a21af934954e000000000000000000000000395693ee81d976fef53f9cd74053bbe4aa2319990000000000000000000000008b5579d4799199dbd36fa1deb713fd5f8701696600000000000000000000000014ebd05083f3b25de878a644ca39240443ddbad5000000000000000000000000fc3f9feb6c4f057649e1b6972a6fec4b38a73b380000000000000000000000006cfb9723db0411fec5bcb536edf5b9daf1cf0f03000000000000000000000000055f5e3cf985ef2f7cd73272beff5e88f9fc150d000000000000000000000000879757e40a7d2567ed3ba5ea3fe7d543650022730000000000000000000000009f834964e3b75b43cdcf5f814ba24b4d686f9c940000000000000000000000003f5c4ea2455f1bc5b84c0ff2adced8690401d5920000000000000000000000008d22e7dc6bc48c8793b9006d1da481222f22a432000000000000000000000000ff28f9b9efd568ef03ea44ae16567afbdcc988280000000000000000000000000d5a830f31955e3f242d78f254d28b1798f44ba9000000000000000000000000c1808901ae5cae8ce510a0a10698d320c1bd06f800000000000000000000000085ec859c412453709f8d8a7467ad57452db3250f0000000000000000000000001a05a662fae10fa6a3593695329c5462acf7f1f30000000000000000000000002af4670cd5b18e84fbb61200f8638a1f9430e544000000000000000000000000bc5db1c29c09530fdcbd61c3c60987e92626e853000000000000000000000000d0e9ba218d4346df6d3ae5c3a7295df458f7ace80000000000000000000000004af8d36c66c4adb0f8e9052b35336b8c19c25dba000000000000000000000000d026ea18d31b88fa8942175e59b443f610e6cec90000000000000000000000009c2b4dab7d2c324f6c5cd17089749ac4ff5a59d000000000000000000000000051796d043fb329c8ae5f9cfe8819c7f4e11a1cbb0000000000000000000000001cb139711216c50f1b778ca4beaad6aff9ebb58a0000000000000000000000004fb31b97f3a84be4dc1bb63dc4476bf59d1e36440000000000000000000000009587228be059053d1c8801d19ddcfe5795a9651a000000000000000000000000eaecdb105ab745b98754f068da4eecc472d3e5eb0000000000000000000000008c6f532fc44d824a87011ca09f72781df40f14c90000000000000000000000001ce4d3e03674deda181e1b58f9721d1d1179adfe00000000000000000000000024a8844345be74b9af6a95fba34aeee421e7ae210000000000000000000000004a420631fa0c2c9299aacb8cfab9b99a3357271600000000000000000000000049929c8ed4dc74e2a4f955fb8ff0b037448abc5b000000000000000000000000661580985e98c2d48bc36eb6f142e103af9de0f1000000000000000000000000ac69a4d458dfcaf6234a4beda2ba89173db9e19f000000000000000000000000456d632fd6f6413f9aa59a485cbcbb2264b65ce90000000000000000000000005f1e69d56a3ca25d1afeff661437e8b86c872d740000000000000000000000005b76931dcbf091bf49e79030fdabea7c4c7caa00000000000000000000000000427a257d7f3fc12322894571cf0baece946cac2b0000000000000000000000006ef038ad906db584fdc6973410c117470422d96a0000000000000000000000000f840fb8ec38ec8c916e98702cb46b1d8e28b7ce0000000000000000000000007514f51a90ab40581489fc175d1c4e898ae3e61d0000000000000000000000003aff80290e483c27bf6fa3c7e0c10bbd51b024d80000000000000000000000001d0c309a1d28a90fd8f5eee1981d9088d004560a000000000000000000000000f1ea65da3030725712afb59a296793f8df9601af000000000000000000000000a899453d847f6a02bf250900c914263186982bfd0000000000000000000000000586ba7eb572206418904ba72f2770628d254aa40000000000000000000000008157d04c4c41648056057a9a604f045b9a6b255000000000000000000000000087516f16d69ed03c4efdcb1f1bbb5bcfd9e3f84d00000000000000000000000053aae11ef34f5ecedbf640cfaa9a63b8d47ba8b1000000000000000000000000bae4afdc4717ebd68946c14e11fa32c13d4e1c760000000000000000000000004cea0f18a35b610ad80ff9cf55cf900c7ddde52b00000000000000000000000076affd7d2b5d8357af29b16e00d261fde973ae170000000000000000000000007b1d7984530fff0c83e9738d44fa09075485a19c0000000000000000000000002e1ec655ebd7adce7f3ad46b24e6ae25b126fd8e000000000000000000000000649ff68c642e71b0dd9b01d4e03448bc9e07e74900000000000000000000000095e19d0821128550d80c1c698a9fe62ca286fe1e0000000000000000000000002970f7492bd97c1243c01d500b4e2fabdcc2fa59000000000000000000000000a60c70a1b9a48fc26e8ed020614af146519c5d0a00000000000000000000000070e7285a5a30f71f9d3b9a784d5f6e512f636f18000000000000000000000000404d848ac9623fc2a6ef4bf9a4460a49678992d000000000000000000000000027cdbb669f9dba570958468bfd502d796771e56d000000000000000000000000cb635280469e447196bf6fa33eaa0db163ac50c2000000000000000000000000e880eb64a9463a46fd7bbc86c16b6463631e0626000000000000000000000000030b02f211bb9d580a2f4ee75b3b6e56a4a4c2ee000000000000000000000000df60d42c2c72dd1b83fb37afd4d65f887b9d3fee0000000000000000000000009d10b5702632ef60460c98ce35ab41e2c1d7d9e300000000000000000000000034181f9beb6748c2eaf051689d54557e8e6efa9f000000000000000000000000c9a6a82fdd8a172ae642ae7b85b07d7157792db5000000000000000000000000c256a9c81d1bd6ec76635e3a023641309131f6a60000000000000000000000009f03ee2db82b341a771aa3c636a10ad9a6a10da1000000000000000000000000f2499cae460d466bc67b32321f1efcf9bf0facf3000000000000000000000000d499dfdd2a24c751416abf9690fb56215be7a49c00000000000000000000000039b817aa8b1e48366faebf7a866a5ccd623fb6f400000000000000000000000008c414fa4171d3653ecbf091626cd303ccf47949000000000000000000000000847eefbe8c8cea3566bf3d51b68149ca0b8385f4000000000000000000000000dceb213b26904a5b3804a0f5dedc699523c5a9f4000000000000000000000000c65a17c7bb3b0558717a86ba88cc31f8ae89b4150000000000000000000000005016a65be8b3167e51ca1b1416b63142c715c0ce000000000000000000000000f5958d2c10c023cdb284d095bad5a6841573bf33000000000000000000000000d33482e2e7d41a643813cd9fda5c4152ece58ece000000000000000000000000eb54a89145d6aeab1164cbc68d9e532b2b8552b900000000000000000000000042d6d40b964008f611920693edfc44f3b969847c0000000000000000000000001931c6ca4ef504ad80461cdb8af3c17dccb13fd6000000000000000000000000dd16f290f0904db9958336d55acb40dcaae32771000000000000000000000000f28a4f849f76a5c1d2cccf5d6388b91e0c3976cf000000000000000000000000c3458e1486ec8f1b5f8a0ec7b0ac1bd2926f84b300000000000000000000000072962b8d49234d64a2ad48647c8492258ec3bc18000000000000000000000000bce9a8208005bf0df3d3e6ecf356eea00d4e0b450000000000000000000000001dc33308ff2da69181065c5ff407e9098947b2520000000000000000000000001620d32d86d88a914ac531dfb1cccba7683700ee000000000000000000000000e7f4b6894c8db1c7b4cca83fc96f8302b9e43c9f000000000000000000000000186d5c635d7686a6f8bb99815ef99a71871756e5000000000000000000000000bfce68326dd255edcd61aaa017224b68d142255700000000000000000000000054da0ec8102eb4b38033b1e8f05a1fd00bc4f8a2000000000000000000000000ff5ad4d38d32023c94c900dad9327a6581d6c84c00000000000000000000000096e4bf7cf62a063cca7db5ad0d82346fdbb2cf20000000000000000000000000380ea3739c6f36c5213ac84767cba97509a2f3e0000000000000000000000000c0726c7da12907243c0c44d56a24ca4ffd59b8620000000000000000000000000328cba572aad0ac065326a92258fc5749cc20f9000000000000000000000000f6bdbc2ddd6a622a2143304e9f4fd1989addf7ae000000000000000000000000e9b8c810b6e872d587ef4faaf53eab97069172cb000000000000000000000000ce888c8c04d5f29991fa1f70ac77141003b25b420000000000000000000000005b37509928745a0bf8e0af0ed6d942b5a0f31d340000000000000000000000009cea75e48e0959a0519ca3b4dbf8140565cd66bc000000000000000000000000adbb081d592ae914c75759aae4dd2e7211c052fc000000000000000000000000e1e98c521d5e22a7434da75eaaa703519757f554000000000000000000000000a9086823971c397b0cb8d4ee75db702b6b43978c00000000000000000000000086178cef136efc26ca9f104fc4d55a86a0de1e5c000000000000000000000000ea968be38d560dac4f308cd1f5cfe891f160f5cc000000000000000000000000d69248b0ee059db85f878bb232f52f351c63133a00000000000000000000000039ed4abfecbbd6800354c25b431c9d00be593e8c00000000000000000000000038542942f894b3e8978f9386cae0b1e56556d8b8000000000000000000000000324d059b5b399babe0437cd09e7853ea141ed80000000000000000000000000065c9606cb380b2ceb8c55e185e77854ae25fd727000000000000000000000000418c6e9e3b040a675fdb89340c23f5fa19fb8385000000000000000000000000de7703c167af064a6c000ca6229572c4e5516c4800000000000000000000000079d9aed12592df3c13fafa58b1afbc008b2a383d000000000000000000000000d1a3f33cd314ef86f108ab2519f7dd8b3b06d2c400000000000000000000000094ad512e2468d1d0f97b6db8254644af2076b131000000000000000000000000938ab05bf3be62b86939029c70e81bebe5daa7a3000000000000000000000000105ad815ebfbb6a82bf5113fd82e9435e7ae60240000000000000000000000009d0c0306a4f50eb96a0697224254213c1cf8587e05e119984daad1c9d07c49f91b5b071a5e54b848d3cf193d1f7d64aaa63a9aee0513d6f275d48890111db2c678a69574536d0900c228584c4cc1bde0606684c400044f0462db1a3b92c208c71bef2bb5fcf4d527c4e06b97cd52d482679822dc062445acb9d89812a16320eec42c43277d470690e87c5bf5979897361a52cae205f51cd5f01dbf20082d0e06abd5813491381172191db3c2d28b352857ce854e03b2ae6095de2ec8ff134dcffd89bd5c5e8934b57a9f6209eda74a247e95e056046cbff9e8b634543f92ae01abb87a731477e919600d94954b1eb9c09db4dc4b02f2c8cb4f29892d2ad173c5f7edd05d868bb9e4dc72b907591617f51217198a0456a670dc8cd6dcd16fbdbc2e54715462b982a56bb2012f77a883ec6cbeb6bd0699c3273e675bfeb07bced0a451e3008e54c075ef9d46dc0f3a6bbfda81623900d0965dcd096eeebfba898768c8b4ecd8cd3b7bbb1bdc50991c7b994a9255bc04eb5e00d5fe987fa7461935e21b418024e4651f06df7d516e78a19528dfd6e8063b5e9293519d4c9a055c8a5c5b89f21b5bae9751f2d628d2b325c73e13af99034991b2a597784c940eac296e0e3f894ed5fcba20914b0f0567ece6d7eccda707917629d4922421a61f1bccec2247b95d5d721be9836ee07e11cc2923158afc005b849025f7b51fd7e09a065e44baee1c3b9aa19aae52a0f83bb5b3ea21e9db0092e21504874e7808dd97ba1dc9e17b1a8a3236734c147f894974a49e9a4ab105c677d3de2f659396d38a64a1d8af82485d1361caee3b0c68161b0dc53777920202d5eb37ac79e6191fae35ad2791fadfbbdd0813fb330d612d45f615ce613d0017698a276469ce3b1db27791773e38286996e849b5096ac15f14f5388ff9da0089c6f3f6ae1d8558354d45fd4fc96d881d7ece81f24b788b45f88c235a38250061d368a6e9316afe78a15da5d6e96bc2e2875333383f20a0afeed2cd5269ab01a6bf2016f851c743854d0a8a645e2a699452119d9c0aeb95b16eb333a770e0006c08ed7577e4f68a4dd5ff768d64653fa723355b7184741260eae98abd2038018b1f7401f06bfab2e296ca7dbd7b8af2f6c90c0cc6bba0da814cbcc824c18204549a0e0d331abdb20ce9458e69a3e74b6a330c897c8675ac4bc68c296dca60008292a6e83d6d0812bfca47792f4d9a0919653bf6beb126644b4b4dd57aed3d04b657d332821e641aa89599d4e2c5c8c675a813db7744fdf3ea8f4fcca5dd06036a47926de152528863625f62222861e2a61038027080d9c34396c275be5d0b03a409d924931eccd83623a564b96551761a78f4b24c849841b7b96b0703452602e62f2cc8245bec421a9631e4cef1ca8977401067c0731ad7674392feb8509402ac815a5e3a177b9ba24e81aaa33f7510a7cda9391ab4a7d2510056dc5f7cfd073ad396c05359e31fb0aa54e0bb015499d5298d9f8bc3a116a8dbc0793efd86027aecf732636685a125164d78eb5b1b3e97ce66cbca613ea5b537904299ff3705c6a5717face43e44d75e233178a8042eb596673fd6b9e2d817425263f4ebd906825203a6df3319b9e3e1476636d55f30eaf4d7644e4e49bdc0ac09857a6e23069b29141186c336f0b38f65a5d68d60bf5e9c1c8089176a1fbdeabbc816d13c0235ce6655473a9314b46c6c4eb18e4ed72a5f237c0fbd94b36bdc15894cacdc019060a5caefb2a727a7f41720cfc529f1fcd4706c468f5e97e61df77900ebb100952d50f3edeafe65b9a49a7bb060aaf2a2a8e608272a134853227d87b9df70049692896701991d0c2f40f1cd7f4201035663e1a06a827aa0791aded95f4a1201f911f1265ef1f1cb884da7960fb57ed1c2cfa7b7b07e84ec7c95616c2ea6b20138da3358b3ea214b6bb4cfda4dc690ddbe7d31f5042031913c85978862c36f0069668c015907960008d63d0496e3121d400602d535eec009f713c16262762800f0834cb2f130ec5178279a643aa0af251219d7f5f47ce561bf04f88c29caf40023d6cb08dd14e62b4bf0a61332f150f3b350687b161798104a7893fa230090005fa59f72f00f4502518ba29adedb04cb4a6bdc1312f847027262c7ff81a9f60332ba4a06266c084764780779531479bcc822304fd3e0276d3c4dd117e9a507079ace7556a724f163bf080fab57a896d56c1ef873616bbf383e89ea04988c070583639c8fc0ea2db74b5dc5da10403479cdcca234b482bd647f0a820549369104e0c7b1e47a84c9236e77ec0ba6d02cd003f14a1ecf37062ff99c53fe0341d5003f1648b11cd98620d38f26b3ac0e678c43811d95a771a23f9a67e2feadea1b06d8df4d1492d04a8b4fba7a169677147655d9b9e215d1e59ac82fbaa6c30611027f77124524b2cbba7b00e3465cf9263ccb661102128c11da6c761eaa6705e4066359418126bc55fbd443d0a2e07a084d02b3fc4de3aea669e9cdbe3b4b01d60680dad0862bc3e87cff0ea805a874a4b21aed4f4bc7e7006181bf8a179d81c202052a6d45bff1a1976ee720023510520375e41ab747ce971282c0391a8684c504f45c5f69780ef43b8584e251d8d370bf8d16415eb65d675e63b0a1ca44353203e5df30770063404a7e697177213bd27c9b286b896c1744d4cd73c368db4bbd00a0b9285a8d579f5b424ba9eb12f4f34758d6abb38c858cc5fae1c21759b4e6036e31aca6d7d6ed1221cf16ea29942109e24aac8983cb9a37b5c1fa1f085b180638300e71196716221901792101ec1e331a32a9b2bd843c464f91c503f3712004df8f0a329059d20ab35bd519b3f704d849077c8293b0c2e800171d713ca18a053e9f05240dadfd78038717d8c46b54e9b661ac54c969d952938a3676d1070905e98746c5b2f807a8a7866e19d28351261d11ad6d09365a6c722297a1288967035319e7f20531f2e014d41822ff9c6c15bb6ae9b56fd392a82f69b176b4638903332eb8071e8434f6e96fa5b7d38feab908b4480ff13d46a8d22b13f9167cbe0064b9c0bc365f68e8b8ea04ae05de6b8768707c70894a39ff7938429f55e191031bac42900a66ff8c7b31bd19756ff9570fb39a1a77023d6dfafb4757b01db20066e58f02cce2424f2211c5086584920d574a8b574f57238a5bb71ccdc51e9a02242a702c13e29b87ddc5c8c39bb1d7affc2dc3d0f44a92c82594b1dfeb191102d3d463fe81eec57c004ca3a12c2b109dd6c3b3f36820869023c5bf2978e19d06ca10238aae951f7d833042c5487e16c391d39af42f8ea7de873602c0076f9205c95e3b341f5d8dd85b708afc44442cc0190ae77cad934a740b827e93fdc1ab01ca3392704f93cb20f908e6e9c13aae1af66cc4e81ca662c2d986c521d9ebbc04ad87d21dd44c5e030bdf63778514b722a2d230ac6509b517cade7494ddb99102c47804cfcbfd0811759a117928f8a8b2375c189eb8ffb78ad107069dbfc641030a48cbdd3c8b476cea470e4d2bc78b89f7590e68d112fe1c53b01c6b925202053a7cffe32df578a47ab8ba00a595c5ebdb5dc22274216d038d47e88a2f15c103f989cba094c0679d16870f7f4329c26ef058bd47223f4339827d5843bf93c806f2937b9a355ac402b398ad9425224a03974b209ab8d5853f57b27f247f4e73024d6cebefa85780de436709108986772470cb148eff0ebbc9c361256fd2b5dd010c2054e7d2fe5687159a77715346cc24f85455c0ad2603186b3252eaa4f788045c08a8be30059449cc1395bf7508233f45b390f7412bd90e20c7cc4979d29005894ee1f84e733facf8841e25b3497d4801ad7670230bd0cd742e9fcd04a32702215d764dfb8082b2133253b9aa07a30246a55ac86a63a1ff3a899838517fd5049137f0d0dfd3bf17e76ccff62bc2bab12c69eecfa64b783597930a824eb8c90299bdf9e62c7c18a20d2961ecfa7ea0011eb1cbd88db3daf7d9e9c3a9d50ce30324ff9cc79590567b694bd15bc1942590253e69b9d2e32889539eb29f3398b9004120cc91ea57787f2a03d9fe5f19a949d9dabe38609e8e596d5958f993bb5705256383e2760c62a13626efd37293d45f79a0f96c7c02243c15af3a7a9e236d05619f3cadc3d7d2794fc45a99a0de082819f53aeb4dc35e4dc8bb629ab851e500f57bc718d4a52cbc405eb0981b7d1b13573960d2c6401ac879f83b1d7378560689fb2e4281ad2b292a881f06966942df18fc04edc086285eb719a306acd40c06e8c7133e65b3de37c6f2a91e01193a0f7c6f79296f988dbe7c897870a7936f05a6b61de10bfb406bf27401886a37948bce0e3d27940ee86607c880d902b32f04ee0a3323f9a619b75ed1ed1f88939b131da368151348c0666c329684b1acd8005dbf4fab7871b6b6461ca83d2609165a0087ea11f6a233ac86c432f7bb894f01fc42f34ff2e0f67a8f7b34c43cdab27a30f30c735cee8f1df6dc78431c2d7e071b1e918be681598110add373ac558cd76207d02a6192cd18068fde7adc098a019e3b005e674e38f5af55d852523dcb5cabf0e393fc51ebc0d62ccbe4a7c6180763e4daaada14b8c777a8ac63cbb219dd02401ff771f5296fdbbc2432f5299b02b41e2942f9129af765f5376ed533aeb2e75d9e59df822161050c341e014ef903a333ab127df6e97c94c173949e85fb3efcf5edfce18ecefeeeb02fe016c09d02467a661f7506c42648a18e2899dec56fbbaa878fffa17be7d28e7c8b5e42200379859a13421a166aa1a6dfd7a9f89e133fbf44cd857c2f8aaa593cab4d66e00055e739137c5603a01b6b7d9805bb5c2d6ca15a232ee502373da353e7d041950090d06f7896bf7a8216df931259229e355a58755acdfa983ba5cdb7f09f550f014262f8291ede2ac12813ceeb3cbf196e06c3ebdb6971c9d9da51e12375346201537631a2c94a182bf7e23e4a7153c5a8f1b7792c94445487c5db5fb41b523203b032292577b3647076932cf4423b64c5d024d7cf89238109fc70a984d347050007bd27b5466dfd73cbc9a5aa3f32139eb68dfa277240b11a84979520aa1796007bb67d633c549952269be61b212b1096a583c3f0eb23c30d8947039dde8b8a0376d43d4361b4e7e844f5e894c510863a67c08f8b6a799547d3a121b802a01b04d67279cd0d0e2a0e489117012fc298bdbaa619a934b88d4200d81918df3deb0240f32f0715ed01584e0668486edd7e597eb6a669392b097e45a9f10f0e95040244ce1b8b6197f7e17daf426926af168c2d12477a7d83a97089db6931c3b1fe07687cc3b19145fae318740fa2ae59ee7599c822a6f5535a20f94eb126a91bb303198e9c46f9f8658158caf1ea97c87001b7b9f3c4b74c3a78638613f40f99c502100b6cf74afc4cd9f40ebef1ed071d17f7fe218f341a4f54629172d3d399c80749dcda8f4df272e8420af84e15958a4a453fed51edc795813f4232e0d6b55504af5a8f422808d74508e5214f29f3b3797f96104780ae0e2caf7c36d70d4346045f1c45c50513481f7c05a41fbd5c92f9425cc3a9e6023cba6fea67900d22890634a3d87339c6a604715d7cd47b6b5bef8db828f30e83ba493adb868bc641d3023a2b288ab5353ee0390335f45caa0d565ec91709aa126f8d54cc5bb0b903d1075017cf7515bdd8f096c724af7e13ce35ca11190076b26624cb927dd2a8978204b766574b67455035b5f232feae9b64d422aa2a4090b754dd94c244e06317dd013472ff845413f78a6e03c2e4230469584b308a1ba1e503cdf589d5af9d9828074af940860f863a25ac95103e50fc26ea6dca75e2592df5ecbe449d3c3093bf021f02606bbf85b13e8fd64d14ed7d39d3e7dbdd190be4932b37e386b38cea0a042448eb4ccb1eecc378aa938aaf5e775fa757f2a1d0b36cf13aafb98fe4ca18045ee3fac873e6a69bfc5a11ada23527265f6a37fb6ab4c910390423b440d52e06d7a53b8fb2de7dcb224cd6429b86a2fd27b96fd1bfcc1045852ec57faba397035cb0187bc96582c2022d081d650c1ea5bc05901a185a7d8e67aad3c4efe1810240aa03bc6188dada9c2f64e7ff2ddc3b7e7a09622df809ff656e04db929eac051448f8f2d53a166db1a594fa19199a16b4da8a15634d4d64d252d85514a4f1031522691a8a83b1ca370cf23e4c9767abaffed9ad27e2ec54c9f67ae2fc096603e955182459fb4d7b4fe3311dd29be8c218c01b16718c2bc6dc7db9fd535f0101ab2bc76e00882c5c4f5d8a41ee3eb12b4656e0ab9b53da4514047ff397324505e837ff262b9a983460bbf938e1209f0c0ee3d65bd7f60c522c7a4cace70937054a9a84fb1194e34b04d88f46ccc07c86af2a898fd8353fac6a46eb8cf81c270516b6d7bcbec3ebfb6fff839050576d77113b1b833f72950fe9cb0c52b9bf4a012bd1ab007e0323f77f1127a03bc5e4830895997e45ca3472a3f7e5ddddc8c90215652fc0bf4d850c020db56592afb8ffe337ae8ab0fbecefbcfe6a842108c0014c6263f4a0d8ee50adb08bdb744b1519795bcf6e53e3cacb8d0645ec67f23f07737b7d9a1233ebf498d272fe0ffc647030f3d62a9cbf4e6401a8434cd36ba206878c38a97a4452a01f0e80da7f6c4bf595535d6175a4f338d2d3c01536b90103a2a07f980b4877c74b3cf92a1a69e15a0be96d10b859a01f42b027f32f4f6b0041f4529628a4150ccb16eff32ea69787ab26810e5fb53c23795cb2c7d506b9009065c05c303ffcde7e6dfb3d43bb2404e6c2114e6f744659557b457f381a21060d6c0d76b5a1385ac461549542705f740f82cab0570051471a3647452281310362717203f8863560c4ec6cea239f92567099cea99668b35366497e949600f30400a5f5eb9ac557e846a30ab43a8f00836549cfa71273d7a012a2fc607cea8404dc9f994fe47b34f4474ada14e8850403332cc19db0f2c05a49f145f47d8ed9032636bb49283d26d2b246158958d19b13091ef5136042c62a4342c9fed25ebb066eadb6a14d552939071442004cc2742c62c04dd2ef2f045fa5011647dd1ff80512443c49f5262882847de854a600662f42bef3dc8796c12ed9943f7247ce2a06a046651d751af5e7c0a1889cf12f65ad1a9baf748261c641175e4f37c41cda05d7f642d3b13c17c48a7d844eff801e0fb18f0ae498bee8288d382d5df51d2c01a9a3f123295e883a19c82aa63ebc60126e39f2ce12a9a704a905eaeacc394406b887e8c0d4807dc8cb03dde5a7e11f2270374a6057c336ce559169455b7126066ea0ad598956b4214caf2530f98ef3ae1f82bc9bf0b8b039a014f3c075dee203bfd0fd3c65465b01105fb9fc0935b4a5132502c1075cb20706f5788118597400edf020e3facdfb36931094f293c324f53bddeb1682c6b820bfdb305b8fc0c6014a90834cc131a2fc22dfec7fb95402bb83f668450eaefaf36b8b175a035cb201eb2be4ea32bde6b6f71b5d72d7aa258929b4add889c77ff7e137dcd91b67b80245dae76f0f6ea7863f940ec123eedddc6c0fd14a0856bc350b0645df4553b4029ccb92fe9c1570a9892cea6f6a2a470a30bad85be7e79144c86b29afbd3357074763784c8fe2ee5927007edfe2c4e0c9198c781c382779d45611cdb7f7cab205983b6626238cad1099a5e09bd1e670c871373d8df6d3681f8b5a9a922c962b0239fb6a2ca6499d7b04c24846ed9e76f726fd9dd620af82859a06c1839b410803213de5648b731a5828377765bfdd9f5a55b7b45deca9403a0b6dfe9cb8c1ee017d4c8bbd634c4e2e9967b0a121f54dc720845ace9f2d2efa8e5151cc4020840164edcf1db3f6e04240306d2acec0b61cff40b4e6c18514d0d86a41a94b262c00a7a1346959b993ba08082151d40385f130ff3001a72ee44deb65520fb82fc0000000000000000000000000d7cdf13564bb99064428213dc520f0ddc6fe6a510000000000000000000000007df7082437d7946131d74a75d5e983b12863d0c800000000000000000000000028f93c999e620a714adff60bbe14c31a7fa4cde700000000000000000000000090cd6c79eb848e0e1d3ba1bbbde96177fb7d2783000000000000000000000000efe16e8d8a6a296e706b2938634f095c5f614822000000000000000000000000ed67067192f275e79f35c98f0c3ab3208b0528d20000000000000000000000005157735d63d4d64a4debeb5be421db598103240b000000000000000000000000c168a72475f79eabf5ad67361778a32cdb3f06a4000000000000000000000000f8680f7b5578bcf8d84f03f2bf3c48a9b9d418080000000000000000000000008ff264384b278e9a61201dbff09714f78234f05e000000000000000000000000ad95f08746f2fdf0e6e8b6c05c9465502992ebd20000000000000000000000004ae43e4336fbfe29fc539fc9f01de6d39ebf7c82000000000000000000000000d44176498abbbeba0d4517cb31f25cd9ddc7abcc0000000000000000000000007c9687d8a5c625036d4b7c534901bb105751ac28000000000000000000000000bb0262b402c4744935245871a8519011c1b72308000000000000000000000000bd5fe92667b4d2bec813265ea8a9db8663b4ce3500000000000000000000000076cb3ef9c0e382821ab5d114561c2d167ad5c88e0000000000000000000000009d43644e1d2e6ef1b112ebc1c3309ea6cd2bca4600000000000000000000000046304d6067bae677f638e3a258d3e4945d38bab0000000000000000000000000ecd3c44ce646f41ece2e49a56d1a6ad22a4449c20000000000000000000000009c5ac930a2d7c177ade12cb9919247e6d92fb143000000000000000000000000eb48cd309ee4441bed8ddbaa358b1a38c92fe59f000000000000000000000000b345a22d1e0a7942f4d4bce374a4574e5b002134000000000000000000000000f831f5da14061118bee4dab2578e0312c5a2ce89000000000000000000000000882f38c30b20f7c992e5957edd54d1462e0aa6b900000000000000000000000073fcf5d06ed9ee057a2b9f41eec8f72e82f36332000000000000000000000000f6f8423a246f3ddbf573b77ea5cd6d3c52b51a64000000000000000000000000c47758092dad42f2f1ec7ea1b85cc020fbd6637a000000000000000000000000678e4e4b0c9d91cb05a0d30953fdf436de10c89400000000000000000000000034c968ee9c490ec2ba47c7cbb0eac1c7da486f1700000000000000000000000031c5238560ff1e1fc6cdc6c18581b2ebedd0d49a000000000000000000000000b25ba1cc389aee2536856d9f7661bb8251eee46c000000000000000000000000a4c43f2aa57eea1b9cb3b2d21d72ebfa3c0b42110000000000000000000000004fe6aa3b1fb379995a110604bd3acb83eec49bd60000000000000000000000001b21e4cd1a2b81c6215161d234495b50f8e7fa7000000000000000000000000006c3d181671821a161ccbfd6b2e4cd787b65b441000000000000000000000000756b1cabc281c33f0171cd04e8dfeb14eee7bf7c00000000000000000000000048a18a290154efcf717a69ed4486e1a02a391f8a000000000000000000000000b26a6e5086062583b4dab087161e3837ea5b256b0000000000000000000000005bcd95c3db9c0f774923df5fe44b71899be9baf8000000000000000000000000f7e1914ba14a5d69366db245e8f2a1541e88e7ae0000000000000000000000005132c473543eb54a7bd09229f57e9c55dc640ba8000000000000000000000000257496586c3a52fcd6e174b9d98259e1bf0cbae90000000000000000000000002e0c7faa09b4cf6c0e358f4ca247a570c87216de000000000000000000000000878d86127b03fd85643f3452fd7249cf3ba8f9a0000000000000000000000000428e386c1410df200bd8df74580a5dd0ade190b8000000000000000000000000a1c91e2bf35ae051ab76b0ea3dd38c84e128ee01000000000000000000000000f89ba62a45eeb5f8902adc32a08e664b02e51d9f00000000000000000000000034abaf3c9cd7e06f2d08036efb6d2fe98dead9dc000000000000000000000000b61d0a98a191476dbc66b6832a9948610e917951000000000000000000000000eef60c64261f3ec174693c6d8bf738bbabcd17290000000000000000000000005444d7610b739656570d34f3c225a87f8b43de5100000000000000000000000041612f4a28ccc9073cabc9c3c916389300ab33c8000000000000000000000000252a83a9295abecc43efea0d68d88939551effb10000000000000000000000002724dcb854fe41ee0def08e30e1f89de535748e4000000000000000000000000279a8a9c397ec8d0701c5b0c2d48817862a7170b000000000000000000000000e864660180f8c0a4bd1e80160e61f072acee51a3000000000000000000000000101afe0b89781aa7df41e84ea48789bfc59d03420000000000000000000000002a4ff5e4745876f937dd832cf2942b2b2557291b0000000000000000000000006509aeac08841f2144b8f3165f72805d0bfc1f4b00000000000000000000000040bec24601292abe733a703b508748bd9d76c400000000000000000000000000ac5dc1778779bafb300f5c8f4241a4180d1d93cd000000000000000000000000878be6b9352c56587fbb80820f8ac64c2ba841e0000000000000000000000000df3c2c9b7f970ef1968a5bba8c66caeaa40ae40900000000000000000000000072a1b86915dd6aed348a319161ff3ad1d5949a97000000000000000000000000711b0245f8e8024fc8826ad2f04ad4835cf4aad0000000000000000000000000dbe3fdf7f99807a48fc165e77ba92d4752331d7d000000000000000000000000294372231fbb94dc703ac2cbc8717702480147150000000000000000000000004757fcf005c4907279eed219c97f413cb26d55800000000000000000000000005941f510d02d02e4977857ec4ffe58764156a064000000000000000000000000e4576d8a3482d6d6f7fcc30b2a1fafc137e8a6010000000000000000000000005245e1c9f6068537b2ff8f0053b9aa4a1d5873d100000000000000000000000088411245b3261a288a3d4b824e1138f8e1edcedb000000000000000000000000074541a905b9f2e48265399edda7b873ce7e19b2000000000000000000000000fa56c29fd40a8de81b8b2d52548e42bcc3fb7983000000000000000000000000f611df083ed6f31f8d892735bc530b0decb1fff2000000000000000000000000f4abcd6583d78b2912613983846648351ddad13500000000000000000000000045d19805884bb5148c7a12cd30523e623bdb5fef000000000000000000000000886f92be180cde661c137db3bb687267aece20b8000000000000000000000000b747856fd0861f8b288e66977b74e2fdb0947a28000000000000000000000000f169a9817a44e80402b53e59387af9739ddc14620000000000000000000000001fff4c96780effa45b60b63992f94d69a0981d66000000000000000000000000a81b82c547ee8579200687f303b0ce7cd23a006e0000000000000000000000003fb76052238370e9468441120f0c4f15acc1306300000000000000000000000053b3ce2c2c4f695474cff7dc9f0d5fc34f0eab1500000000000000000000000084d607a7912c0f4eac40db836ab7dab8c6e571e0000000000000000000000000636b1c6431a91a0b273ce13f3d919300084a0cbf000000000000000000000000259e1e7488218be5b8b3109118b77a8da61d7f33000000000000000000000000d3d2649328f6f6441c3b68aa85711fee815b4798000000000000000000000000f0f73e37983afba21eb2270d24b2fb512f5a50060000000000000000000000002eacfd8fa1b89afed517eb8c61ce22b474421e12000000000000000000000000f69f7d3df1bf67c722eaeddd660e73a5ee7f511c00000000000000000000000006b031b76d9bf7853671fa57392153cec4f95b6e0000000000000000000000003f280d652e39ce806b21c19e833e4d9f526f07ae0000000000000000000000000af3fb1d49394fdabbcd5d25b7b31b4009ae5ce400000000000000000000000008a39affdd0cdc41e2474a2d17eb4074877abdab000000000000000000000000adf01103d6931c885d0a68bd206065f5d3e9511000000000000000000000000073d8f098ff1ead9a2fca1b0d2ee3f52350741e49000000000000000000000000a68cadf36d57c02cfbc9a6fb3e7d444c25e72db60000000000000000000000004f63fcf2979b97b475a4bb24bc187ed831f97dbb000000000000000000000000472f3a536ebef658bc85036afb7506a2c218299f000000000000000000000000eff5770ce67ddb18bc67a1ef7483af92d703c150026f3bc3e51c4832efa8381f88ae0a7159919a8dcddb6f58484dcbe40f1b71350320e93e2bfcb56879c4f68cd58bbd45e05578c63c11c760b4d698704872e8b70628e3495384401d1496ba56ac3f0a8110a5fd7b5c7f797b1f677470459e1df101c991985769c17676a1c5e8a36f82ba8473f8db85be1a9d124dc257f5bf8049071a49d5f50e268412e78d7fb89dceb79bdd6e6416848eef4fa0db04841706210221da826f006a1d46cf4096d8a14e1f6e97470c791d4031874a63f9dbede8bb06317582649101bb57831800c721e1940d528977885c4c7ebe025f5c8c44b0590246760699e9fb587821717e5e2ab30c7f0a4bf720087bf1575f1451f578ecb2025c885b09a04910f494749f5d76146893682b58c32c824f7f5b9efcb2182e89016624379d4cd300ab964438578cfbbf464173666aa85897b50dce337e763e85023e06c1a7c4d1d8c8d9f12964fd1ee7dc6bd52818ce0b4dff1840d10769e3550483d077599103abb007a271a47e9e2122b9687ff3bf37fd35ea878ac27a26a704850d3db47410a7cb56372f6d21deb108313d32436b61babc93763c0e04cb1805ca05b91dd47fd2c64f971db75d27740a726eed903e133f81694203f0793b7a02c08e131fa0fe234ad811c3378f6a887aa85009eead509049241c63877da55c06efbe147e3fbae966c7672de8e4916321f3cf85a74fbced5fcb1362605e8c60059c927b066c13b86734aee142893e2a1ce5ff3859e5a0aebd8db00a4ee96728003181cc29461e68c98daa98702d0cfbef40a41dc0d4f41d750d86ca2c3b78aa01498a1f2262318f0b4b8b5fba5170d067cd3f0a0db7783a40a58d86d1402e1101884ca158855809c60a25e4fefe910b1c06754ff5d79db26587bd1e49cc2bdd03aab14ff89d53f9951515a003bfa6dec7b082a2babb9c9dbe161f6ecdecd93b03c9c202112b85c70adf738466fb2b5a355955941fca34c79ef68643866aec6e060bab7b5151b3285c6d5c8c60450161cef252a73e98ce32d22b8bc67e09fc97038d1b623c3b37f803776005424f680d415b84d85555e6c1bc8b03d53b0f20e004f817a87f93eeb889f8eb0be4d05c305c51a28abf624cc650d15a0f4ebafb5e003e527f1b4b3c712a171b97b2742f85196e502c09de4c03c990713726b60e1903c171149597a016868da832421e0e7cfd92201e64f948c8e0b181ac835c664a03870da97bdb7cad0caf7e645deef623dbd12e7921b00b435860c7039b4561b5049e51c1fa439cb99373b27e03d83b572aae9226ba67534aa0712d5a2ae69ba10145c5e3358cc1a37a0bc81796d7968eb2c9879f85e08306789b27085279808802fc458c248447a28e7494bc77944b0386142e3152f2881686173b018eb5fb900253c1ee895ef92d68923c758ae144f95b236cdcab556c69a4b20a48eaea798401ec48a68d5e20463b6d0b2b4468c7c849b0fef5304bd81408240bbc56970a82020b2770ff60df5bfe0ffb6c0d8fbfc82f0ce47d973477a8dc7593c83f326ddc035c402a72221c5ef4214aa5f3d33fad77437f7d389e5bc9134a105e6cb39720031052dac9c7749dbc142c97468c4782b4d33c019b3afbb10b12f8c2af5664ce04f420f083127b813b596190c38988ce35809d27a7f6cb46f647dc9009d05a31063355d446abbb372a03736aa2a347ff535e3aa6adb01e28cef56969dc401d3700d305d0f6aca2428967c7e7667550bb5c37cf780973cd9c343c1323d8dcad9a04f944633e380a8f47c54c70bbc98e2afb73f8fbe1feb849fe00e2793409f78f0143cce905cb9110224520b7dd04e76c95e392106a258b85d876746f10827696044eded16f94b88f8b99a230844f611fbf09ea67800ef2df9dd32c5ed8f5ec5f02fbdd30f0e2dbcf71ef8103af654fe5b224881c4f502f79e12d108bd3f72c460353eedd0558f5a6ab62e4f78e1890a114b6bf1aee48a528b9a0c234ad2f23450404ab8e846a9ff7493b9fb0ba082d1b9812e1e9126c451b80127307cb748d1902285cf17d02d7d5337723296aa0f354abb17886964e9644b1cf26b49f34d4c1079fa1956a62be02a7a7f90bdfe03f458bc53eb67cda5b89f177afe83ede8b37019ed2e12ee3b12e136bc10155f26bc21d60a6738d3614d376b6631a6ce133ea019c416c3ded537a06578298c6ab952bfaa26cf2c130884f8dfe46b3704a770804538b5506beddd326cd457833adf3e71a57970be8d1c65fbbd34182c6bb0ca6051949339a3f7f2045f8535f5f25f1a692a3d2fc7f1f8e0bd2ff2bead4a26f2304bd9e8f1e7e676d17aade7c6f1a6178f3812a9b26740bdb7f0905241eeb0cac00b629ce2bae7bf2cd2c5ade757b55052a147982c60c7582c1cc2da7584bb8a1075f37e66eb411af0b192bcb2538ddccce6f61da0eab7d478470d37c8536a5a0039d2f1a9a4a2bf4e6fa1f79a23408595a6f13f47954faed4940530fd9d3b5e30679fa3b9397a727360706b0445696a9746af67b48862b6efb97db5a68e0954e0376cec110b41e26fefe42ea7d48d55fbc4e61e44567ac976ac593a4de61f9b4044deb6c6d5f012b0997ce0baa35a3aa5a06c058d1bc232b0f31d820375bebe804a7c60767f955af1fcfe07f9477d0cd6f0cf2026a1c0d704441d5e825076a83066351fcc6d668153871a06024f09263a2752260e59917d7824c97f065dd736b0636836134c07915a9e133e03745435bc3e68e70b18d9eeecec3dd1ad5d9a64406c5573cb21c971c06f41353cf00d38cd6c60ec2f7523b6157faa70400bed7ff0495809c7160d11e8fd0e300d1b9f68d492012ec60b7ee02b311a7effb68863a00f61ec9f52a9f7e737b6e00c7996c8d682cdb20a7e9df861b84924bf0a9049204b99c2dce89395134a903b3cce9cb7ecf00cc44d10b5e12280daa203e379a34069bd13bc50dda0e2f120ceb128d7752964110d5b7d8a25500d7a6b2a5eec6bd070555ef795459babf0abab04a6fbe7105ca518ec3c6b23db054ef72086aceff016b3378fb009755048598ed4dbbb0cae9a1d2cb475b9fa2227da75c5df5513406e4cdcf2225d661f7b31b67a2c55f01756177eb3ae49374907e828a59c23a6d0119003acad936f0219af4f81f9f04c6e77378192e617397544f66435748a2d607302df1f5de52769a84b4cbf94b972dd1bbf07ae5f0ca4be1358a0b7931b39802cb1d69b8c51abcb7b527072196c1a470cc103f03d96c00ace4f29e96b12dd4039cea940823c381909af2304bd861333afbb98c686685dfbc94cc499d9c0e7102c353b4ad3a0fe9670d1f00432c7e098ef53087566ba43ed00c0bde4b42b52705daf3970947ac221979864207f4d48a42ee4c8899da7c8045eadf5813bd5b70056ca695a798cd62ede9f5e6fea0cbf65ffc08d433e5c68cc1b5391c5de29298023b408b9f0153635cc8a8297a78bf1350562bed1ebf50739c9a5187640334ad057f66b8ad3bfda5c6eb47906cd76075fc7096fa53f07d1d486455411d9c3254015d957c5e8e2e2ac6f2c99abf352552ea31b3d51909468ffc453861364fab2d05cdf434ceeb975aa92c1ca9ca387c136ab1e684569d493297fc89a9c5a549d203db105ca7f11d291f75037a05858e6f20f183fdf188b909f2fdb6b2fe80cee50140477248e4d88f012a7b7333f01da6c212dfa5a262b9b64e8213885c8035c2060c5f9b30fc9f6a95fc0b98b07ef1231663edc0df05089bc6e1e5784b066fde01d7bc54e983366958877789a283f639a9874065fa78d74a3f682247f6d6b3d107380c87b654e950506dfdeb60cead4056253bdeab06a83cc01ec64ff8356538079c075516ccee164b6e53854adf81afd2ec998c2d44a62c1002f6e97bfc47c506d8d07b635f647bb8ed74a2cc5c8f08632f289cf0ff7d109aa517358f73d9f600ca82cca11edf50bdde379f788399258921da05d9f3d31d97e2da1672a68657023d1ddbbc6e590338f451eac514f14b9d7fbed71effdee5749721ee3853b89a0436a44671fcb850d3279d7da51acffa0495499a449c546613a937079fd3a5c00077d9b15b682bbd951e31b5129af1601d17c0e28f4f539583d6395c0a95dbe3048b207b288d6664da336e3fdad2a472652ed4c3ed9a29e60043fd013aeab1d0025c395857ed99a59307b9a105e60db1abbcfca26f299587e1cb39061f6b4a20071906eb0a4d9721817edd6777df6b22c045d238c361d27bf7d0bc7b30197ea00534003d0010aa9c3db9a0cc72444d9ada43995e2331ad0eb8fc395f2e2cead800df505cd6270a3aaeb145e17532ae9f4ef3a4a4d4fd346fe74edbfd3fcd8bd404254e2c7bb5b1faaaa3659f4f3fc81ea65fa38cd527d36d4d356ed76cb3f6db0312fba03e4954c8ce639f7fb49c07abba828590fce21f13a517395fa0ed185e043b84e0f7f837cab0ae9966e05960cb2a67e2254b3fce7cc8fd6f312deb2c1b008f87dfd9ccdacb4cd3d07e73b71382175d8062c349d6b50e4e1c379192c3ea0256876b5c15db7c00d524072e33825845ecc87a8065f09ea783ad782427c6a902ea4a83c7aadf9455c097adbcbb178bcee38d2640b69c8dd3cbf0ca861e5d2c003b31954d813ab566cda88fbd80ceaada3ca409fa40298813ac68764cfaf6c605ba0b071728d2bf5d993b263f69aa27cbafdf9eaf7c051f6b3c7809256b6040045f631c3ea283518ebaa4893292af512a8cdbaab4cfed8ee7c69e982a707faf05580972e0f0d283e1f8c76b021da845721cb3487f498305c3d34fe07f9f42770009caef541b4d92d68b1b0710ab2b50bc0cea06c684c29efa209c81c169e9640442831d000ccdc0a58f69516bf96d7690cecd8864c3b7ab86748ce09987a79901a3ac30a38db3eacd2270c0b4314c81299d174ffc871d7f55061c30aa861a280626b9a0f3adb6c298e7c649056e20cca47ff572ca8fa4726f9087aa0869fdd004c3139096ad0f10813d2e73e49eb028b39d8f23adec7e93416592aa17dd5df300c5e814feeac32f719e34f780dc2edb769ee5319135d876dc1de8073366ee5101541790a4c0fae53aa8d47dd09177c403ca6d1f775bb558ac810e3f9063b3ba0431d07e985c5efe31b15ca7362b281287fc71b37ee3791e635d24ff88b283b9038e59023977a03aa0255e3103451ebcdcc4514bdac93f00a7a57a29714bb40503279b828cc4b73756b2c8878ccbeead1dc13e261b73ea2870eb439552eeaf9804453d59c635b8c7475d4e5680b58c45acaaad52767554f116da89da9722007801c313f61ec0576fd76b974274b4bc5d77b5b5a5e3609ab89606e78b6e82f3c907912925a534a001597611672c32ac92f9d8319383981d5e7b5bc6b0720caf2907b3fd8af199e1d62d38abb9677993d5fb2106888a56d57f12ba0093719e4e8d07fb5c02da5c6767f4b4ec953e1d8e183d2d2e3431be362a19c18c2366c3c11507834cf88a246b3d197ae3bf58df603da76f686efdf718011b67d292621d7bc200d0d257d4aef18be0a8866279236a94294d151e04893b9b9304720348fbf10906cb67ad71624498645150d7ae531f7975132fccc6abecbe48d7229146d9a8ce01dccc0b7d053f765d1a75ee3bbe99a596b730f7405c6b883d6d5265cc5f34c805bfb2a108877c9ec3c20b965ce90d5f804753bbdbf481b78404ef7bcbf8c9f70769add288e1566944ee57f7e968ce563b32a89008d8c8af87fdb9f3f62d26580747cb78cff27b9bc78e1d6afafec93d20381a855e212b4aea0fca1b0902166701e19aec10a28ffe88960a7fcff79397cc73c039d09fdc769bd56e6b86a7475d0648c81242b88290e7850f884696c6097bb2b86944d9590dcee3cb134b6c3b61076b6c76f64336ff30c15f4320f8a76e35e5445c6219e4efedf56f51b233bbd705e3bb38dce20d1540008d4e442f0c0cf065b083ad56e5949fa4b7b7d2a490b50746c6b12206103564c085f6e85a084285a8c4f5e3d1191bd29f0153129fa9c600bc570c04bfbf93f11839df9c7692f8db9a0d35e5e4b9b3b74dbd35934d50d907ccedb1668ac6d20e6d9223f16145f43069ea018da148ed52f176041b20ed19065b7dc8b6c28c603fc17c7f712a4fb634d8327a4eb714043b9c10deb75ab63c075c6d15544c29c5dba7af48956039665cb89b4083c0f343fdd3e9ed3c15b07c01a58ee0ce4235cefc9b500065e03d37bf3353e51eca6d8bf72e42465c7f587102b41e3d584bfaabb9e93627fe9359b9d85cd8abd88352e905633f29b3973be502dfa1501afb431774faf65900632333ae5ebd93b363bae2c2d6e8ba57366247020704550aaa04672818ae6b70541131b86faab84b467ed2a1b4c5ad83e91d870075291960b929cb331de687086965add0006e914a160c7e00006e8acd748ca9070ceee5d16bbcb6b4888064daa0fac8169141fb64a4826f0f08cd4f7c1cda63040ba3db890d083448bae593b51c4b27a22edb18e55abf76391fb83ac8368841032c649510bb78a04da37689acf93b655a5ad15d796c5f130cd25ea2cd8531580500141142baf82e072d0ec955ab9068d25656b71d5bd651292607e0403ea0070342e2f545e88e3f31e369f8f7f395728ba48c3124faa5be9436ae1bcc9efe230432bb6f1a835cfdca98b2745e3e6a61ab5dece1413cc49bae3e672849b99c240491fd55d19d3bddc7eb6c6d69c7376222bac7b621288f0891f7e93e70aa084f0757ac6f07008059d2a9ae4560cd7683c95aae1573d14b90c31684d2de6e8249008f9fff5be0ed85dd70f77ef059e17d1c7bb9009587e879e74a45089fe1b65904dee6bc60f46ac70b804973f35dc3bf867030e2270d34ca8fbfe46f170d84e302e92bea69daf935cdfde18649e05b5525aceb256526cc1e94561bcfbf7f8e9e03c3d2e9fe2102e1315360df4399d0e77ee63aef9178d92b16fab28604534e54049b876bbbadc899c5ab4bfddded7f314978a84977f51ad46d00c53b75940aaf007f89e0d79ca96413656dc8dbf1b72f767a234e2ba4ca82f9423e30a709e67a07b9111df726470159f517d6031c02e03a9e16103a1beed87206179f7c61704607ced147931ff59193559ae1b5b27612106de5172d2f7a7da860987002b71970013569ef71d6836211efe7af4d1fdd403bfd86521cf0c966b6c92e3b0107a13105a3317cae42629ab4d402df92dfd0419f51b67854da0765d2dc5406840a73ff04d0bfd876f041cbaa828a39b9710825bf97f6882c88ce5f121ac81a3b5301a207fd602ffa3fd7b90e5ff34489778082dedc53cb2f065984dd7e048cf077fe7903207c9e524c068a27edbc5b4c62586f07cb92fc31cc80ed8454005e58ec60910194c4143f7f90d2e6b15c2265bd32b776acbef60d1ceae03f42b0dec2f4edc3048b91517e0584263df0869718633bda96da836853c1e6df1fb6620fd00dec3300f7d8a477d76499934bb151794af0f30b3ab1588c6c182de617d77c3b9953580311afe3800e194740c620e715a6f0cbc17fcd80cdf0f418d820ff86a3869e8507379e803c08012303eda52ad361335f1d662e467b44d76349ebfe18eec55ccb038debd7d16c92d5b73c416e70d3265b9d42bff523553993fee3a815343d26a0067fcad4d5c1a6c6fba4aa482fcd95021e49f2d37d326f06dbecafdc6e61aaad01dd78903e9c318380fb8ad624b1f4990f916340a7277087ca20004f57810c6403dba2c8f5b1cc90203b16efd78de35f1b01d2cdfae7292b559cb3ff195e66fc066cd0f67747d035ab33c1050213f58f006efa497f4cb228170b254bebc8d75e01df6a4afa005d8bafdd1c4fa3f40caec7d79ec20e93c3f8c8b16c84f0a6d2e607ace13777439ac677798b4be08d82d6638c66743073f7f7d99147c95ee258d3000000000000000000000000cba48a60cae274ec1f5579675f570a323dafb3250000000000000000000000007d2fd4f7c9d7e2c21b943d3f490a30a8e18d737d000000000000000000000000954c11be59133fe3e136888efeeed02e477a9f760000000000000000000000004aef9f64730009d20ed29733f18650af499699b400000000000000000000000098c2673b433788f4db7e7a8e43ab4833c0c6e693000000000000000000000000e034467a0a8d5e907b88e1bb8d0623f044c76288000000000000000000000000091be10665c53f687156401adb478279b2447e250000000000000000000000007c9a228983bfbe8f88f5ae343beb1014d75fa426000000000000000000000000fb810ffefffc6d8bc6aeebcfd6ac6a64e1573b11000000000000000000000000cdddf0ae4cf63211f8505300272121297dff299b00000000000000000000000073be1b24873b5307c35540deb8638e80fabe8633000000000000000000000000f6537947aea375588e9f0bac070d0df25bee9421000000000000000000000000267d830f3792abd6a1b93f1125a98451a5e1ccd0000000000000000000000000f73c30e174e1655a144005e9f9374f450096d7600000000000000000000000006d4dc913275f51f4d923b766f34cdc2e9f7b38420000000000000000000000005b6578244d023844ae4827784fcbf90a7554ce9c0000000000000000000000003104394e2d84ed8e0c03f46a1d988e8dc2e576930000000000000000000000003e29bd4dd9ad699dd6eac128be5cd6f6c8e8701e000000000000000000000000ef374190981db9987cc71e17918ed16c294a5108000000000000000000000000bb64d94eb0c07abc1b9396ed446b4378cb4b7ffa00000000000000000000000097549db63ee06d9a03e34bf46d0ec25d4db93eff00000000000000000000000004a242c455c49da1f189d52250d5dcc6da4dbce000000000000000000000000058cf95d5241f51191ad831ca45da3e7e0b1a4d49000000000000000000000000bf3cb501a81b372166aa26f3cd784f8ad8baa57c0000000000000000000000009d2d37aabe836cffc0b450f640a3ad2c4b83b7fa00000000000000000000000028a266050a18e8d2992af69ad001adfec89324390000000000000000000000000653b02ebf1c6051540e4af54170175f8fda8b9d000000000000000000000000840057353556a20eed13c3b9eccd7ae5ff7977c5000000000000000000000000eb82f06d70a4e8d7c5a7176699e4a53adbc45a26000000000000000000000000844730e3b9c596e594f64dbd70579a28e5d9945a00000000000000000000000099f214064112b9231b18b35e0c41041ab050bbdc0000000000000000000000005bc02e0ae637b1d29c01a0be4c5b9f72cf2a1d72000000000000000000000000bb98d61bc487b62b6215eadeb1a7ce097684103b0000000000000000000000009f92dc730ea085972ce3aae7c127fb50d989a2ee000000000000000000000000aedeb35c754fd7383b9c705db7a9726e294a283a000000000000000000000000dafe863e9032beb243062d6d14e640646074fcb3000000000000000000000000823dd43826f3c28a5a03545fe63d455d4e05a74d0000000000000000000000007ec20b089ffb0569d6cf32b4760e8c299a829e3d000000000000000000000000629178efa038929a7696378cc2c327f280accc3d0000000000000000000000001b0f6f1c195037abcc24e78838215390116ea624000000000000000000000000c5da5b6eab552cc01dc560676b91598f4cd86ab2000000000000000000000000ea250ba13ec8836bb2fb808bdee181ad1b0f1d270000000000000000000000000740867ebe4d6af6941673565fbe332c381709470000000000000000000000005a5db9eb2ae303224e050bd9a40df807e16992e2000000000000000000000000c04407a90e65a61b74587d7df7e0b3c93c79468000000000000000000000000019779ed4f60f5b5fe6703beef8cf0fde8fa4aff1000000000000000000000000b4826b0b39406296a722f62d4b50e104814d937d0000000000000000000000000522c33cfb33dab16b99fdc72f776012ab7040ea00000000000000000000000072b181ffa87b0a76408c6f9bc9235b40df44809700000000000000000000000047bb19960be19af2088f6a5dea36440f549f51c2000000000000000000000000bc0a36fd38bfe8a1de7fdb15b892d734245eabb006bacfda28a1e8519c70fdca560a5706c0d9abb1c6e59a4cc3689b340f1c526b056b533fc1375152d71279d68b8e7cc3165428614b49a4527fb2a4c35ef722c104e8dd524d8b9729d5e36dbadfbc5d461d738eabe82074453a798b9188ee447806b980f0f271d433726b4d98e6e02e822268228ad3b4bc07bf18b9bf903147fe0731645713598f84288712d9870b6bd70ba4f027f78ee548065304ec3ce195b20352a8bde5cbd73e994e4dac2a267545dc47f716c44788bb56c34149a96a553402f9da5c2b2e3620a54675d7c78a4ed227858fb70e7c17047eeedba17d62fecb052e76f0462fc70fe89473237e220fb326c06f2d331f7b2d1eb974bebf8429490700116978f1ea14b1a6981070345c29c8e265def71e832490756c060eeca00d034d8c3ce851a922f59a04f5725af6a5841f2f02f6756ff3c0b87660ac95ca7007dc3aa4d827f56426a66b413fa310a37b8cfde5d1f814b261fd6ffeaf49942c038a3b6f511e11069059e937355ce19e92155449775faf4841f530847acad49e002417cd7f4c186777736e85264e7e070c6d72e72811c0ba370b0c7e1494a0f90420c057d8585fecac5a3405ece1e29e6789614d08a6211ee21c7a378ddaf67703d598548676191aba4d24ee981ee93007112030bbad593e9a131268fe95a56503267f41e29caf2a32d5e2a31c69e1f668ee1d9f31a0614175612b8b716ea9cc07f8ffaadd2120e6d0b5ab755556578fc389396aada3dd6c607bf7b5483497cf00ec339e5f57b884f6a5679c67a255004bd1299289b29eebc8ac1376270fd3810524811e8d7e6ba29379d38c2c3f78339b119013630988b6bb6082c9a440991b020ac1a499ea658bb9a8871a9cfd0f454f25e4ade3773037fb899df8cc4ad0b50605656818a65593bad7bb7660124338a531b2247dde85564a3ca44a194e64c4042ce0ed9f1935086d21b9469354a7d5eea6eb54001e3e263069b63e92bc9a970628d34a817596c1406a32054226daf8228cb624023c3e6d5e36f92b4823d0cf074e325fe9fd25ab01841caa6717e43cb8cc84eaa34e7f609672085cc68c5dcf00cca97fb3665ff4dbc6f718d2c66b11131d2fe6c43bd9ab23e6ee95ad5ab023001d36f13744eba88f8c8a6dfa042610670dd9f75febb87c7eaf1956c0a395f20103bff4d565b913c2796339e547ebe73d86ba9ab4d3529de98cea2be2c2525b05da251667ae68bfa48da2bf132e1f196a753eb8ab6bb051f463d70960100d32004995555b9180f202f63d4d88855f05d3db8f39be46a82b1b64d86a63d69b1d02262ecc8948d03abc12131b3a9e6a3518a8e8549af031a2d8396d204906daa505f8684519c6f912500647fd031c69f8af890e24fbaae5c5b8e91583c1d136cc03939e53df665076cc53929ead9029f882df0fc0b8787779ba42b9868f9103d5049e50690be83ea24f247cda6da6a445ff83c6661ab32c82f9cf3b8b14e591a7067bc5e11dc4098e357908cddb503d972a1459adf6578aae9257a5129842b88a03a0c95d0970e31ffda1c8c23f856e6fd2a461ce0c7e08355dfec25e40e85a0800388b5060f637162d52c0e5b37060064fb1456cb86780a9dedc90229838253805e875e83d175e8933fef3e7137062dafa8c733c622983aead58a21931deca3206cc05e15203c61fc122ca92e328b14621152b33b073045e81786ac96a9cae8b037a89d0e32e038d2eca7ed2c77655789b0b38d49de0d7a44ee5a086f3c057b9023603fe866f072cef73ccdffbbfa16b541aa381795ec62940f559cf794975c00182ed6c283243ce0457350f0507375610cc30fac38ffe596e047f7256475afd04fc2dd095fe172ee6e179c72bfa755fb437de7d033a52f1871d7a6255626bd3022ab1dc34f15e5de3c86bc07f1509636112c17fae46be21b69fd3e717f9441a03c05772c98e28ec6d2f5ce5f978a9f27dcf281eada049bd2a6ac4ee3cf36544065f832ee00ba52825602e09225cc7851a55dc8a265604ff11f0ef8caa2696f903c656633a95f33a60d9c9129393be58a8ce3cf1ec1dd071d9e10f1d91ad18df057ca475f498c5563c8df33082f95b41b3d967632f792b6d009d63f00de0fdbb05c4989eb2ec2f8393332089018022ee2117f8abe1cbf7d623078e8f1aa9aba00386bca6f705d9b563aebc9a963216e04aeda179e5473cc92ba489264fb936b30329955a7737c44334b3fd3db3f20faea953ed64cc8cea1482c925cfb55e409507f054871e5425170774cdd3929c00a01b309178d9d6aae035851346e7117aed061122d803815269a6551ea04d813886915626118beaaf36dde67a7ff6064efd061198a8336440fd5075a529e8b9fefc8e5c96f4b6082ef307057df1c2c4bfbd063356dc5e5871190c1bc5cd97e5566e36a4ae389214ac72d01a0644bee7e62d02af3e9f3a893c5f52fe592088c0045a791241c1c3c8e753b9149425f9cd797005143dfa0f6fa380d0f4c15bf1b233ef9f913a5f015ea7be4d9aa1ecf9a90077", "proof_parameters": { - "channel_hash": "blake256", + "channel_hash": "poseidon3", "commitment_hash": "blake256_masked160_lsb", "field": "PrimeField0", "n_verifier_friendly_commitment_layers": 9, + "pow_hash": "blake256", "stark": { "fri": { "fri_step_list": [ @@ -3419,44 +2713,44 @@ "layout": "starknet_with_keccak", "memory_segments": { "bitwise": { - "begin_addr": 13055, - "stop_ptr": 13065 + "begin_addr": 13114, + "stop_ptr": 13124 }, "ec_op": { - "begin_addr": 18175, - "stop_ptr": 18182 + "begin_addr": 18234, + "stop_ptr": 18241 }, "ecdsa": { - "begin_addr": 12991, - "stop_ptr": 12993 + "begin_addr": 13050, + "stop_ptr": 13052 }, "execution": { - "begin_addr": 721, - "stop_ptr": 2741 + "begin_addr": 731, + "stop_ptr": 2800 }, "keccak": { - "begin_addr": 18623, - "stop_ptr": 18639 + "begin_addr": 18682, + "stop_ptr": 18698 }, "output": { - "begin_addr": 2741, - "stop_ptr": 2751 + "begin_addr": 2800, + "stop_ptr": 2810 }, "pedersen": { - "begin_addr": 2751, - "stop_ptr": 3300 + "begin_addr": 2810, + "stop_ptr": 3359 }, "poseidon": { - "begin_addr": 19135, - "stop_ptr": 19141 + "begin_addr": 19194, + "stop_ptr": 19200 }, "program": { "begin_addr": 1, "stop_ptr": 5 }, "range_check": { - "begin_addr": 8895, - "stop_ptr": 8904 + "begin_addr": 8954, + "stop_ptr": 8964 } }, "n_steps": 65536, @@ -3469,7 +2763,7 @@ { "address": 2, "page": 0, - "value": "0x8" + "value": "0x9" }, { "address": 3, @@ -3869,522 +3163,522 @@ { "address": 82, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480680017fff8000" }, { "address": 83, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 84, "page": 0, - "value": "0x0" + "value": "0x480680017fff8000" }, { "address": 85, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 86, "page": 0, - "value": "0x0" + "value": "0x480680017fff8000" }, { "address": 87, "page": 0, - "value": "0x480680017fff8000" + "value": "0x0" }, { "address": 88, "page": 0, - "value": "0x0" + "value": "0x480a7ffd7fff8000" }, { "address": 89, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 90, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x40780017fff7fff" }, { "address": 91, "page": 0, - "value": "0x1104800180018000" + "value": "0x1" }, { "address": 92, "page": 0, - "value": "0x6" + "value": "0x20680017fff7fff" }, { "address": 93, "page": 0, - "value": "0x482480017fff8000" + "value": "0x4" }, { "address": 94, "page": 0, - "value": "0x6" + "value": "0x10780017fff7fff" }, { "address": 95, "page": 0, - "value": "0x480080037ffe8000" + "value": "0x3a" }, { "address": 96, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480080007ffd8000" }, { "address": 97, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x48307fff7ff98000" }, { "address": 98, "page": 0, - "value": "0x1" + "value": "0x400080007ffc7fff" }, { "address": 99, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x480080017ffb8000" }, { "address": 100, "page": 0, - "value": "0x4" + "value": "0x48307fff7ff88000" }, { "address": 101, "page": 0, - "value": "0x10780017fff7fff" + "value": "0x400080017ffa7fff" }, { "address": 102, "page": 0, - "value": "0x3d" + "value": "0x400080027ffa7ff8" }, { "address": 103, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x480080037ffa8000" }, { "address": 104, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x480080027ff88000" }, { "address": 105, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 106, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x400080067ff77fff" }, { "address": 107, "page": 0, - "value": "0x48327fff7ffa8000" + "value": "0x480080047ff78000" }, { "address": 108, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x480080037ff58000" }, { "address": 109, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x48307fff7ffe8000" }, { "address": 110, "page": 0, - "value": "0x480280037ff88000" + "value": "0x400080077ff47fff" }, { "address": 111, "page": 0, - "value": "0x480280027ffd8000" + "value": "0x480080057ff48000" }, { "address": 112, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080087ff37fff" }, { "address": 113, "page": 0, - "value": "0x400280067ff87fff" + "value": "0x480080097ff38000" }, { "address": 114, "page": 0, - "value": "0x480280047ff88000" + "value": "0x480080047ff18000" }, { "address": 115, "page": 0, - "value": "0x480280037ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 116, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000800c7ff07fff" }, { "address": 117, "page": 0, - "value": "0x400280077ff87fff" + "value": "0x4800800a7ff08000" }, { "address": 118, "page": 0, - "value": "0x480280057ff88000" + "value": "0x480080057fee8000" }, { "address": 119, "page": 0, - "value": "0x400280087ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 120, "page": 0, - "value": "0x480280097ff88000" + "value": "0x4000800d7fed7fff" }, { "address": 121, "page": 0, - "value": "0x480280047ffd8000" + "value": "0x4800800b7fed8000" }, { "address": 122, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000800e7fec7fff" }, { "address": 123, "page": 0, - "value": "0x4002800c7ff87fff" + "value": "0x4800800f7fec8000" }, { "address": 124, "page": 0, - "value": "0x4802800a7ff88000" + "value": "0x480080067fea8000" }, { "address": 125, "page": 0, - "value": "0x480280057ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 126, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080127fe97fff" }, { "address": 127, "page": 0, - "value": "0x4002800d7ff87fff" + "value": "0x480080107fe98000" }, { "address": 128, "page": 0, - "value": "0x4802800b7ff88000" + "value": "0x480080077fe78000" }, { "address": 129, "page": 0, - "value": "0x4002800e7ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 130, "page": 0, - "value": "0x4802800f7ff88000" + "value": "0x400080137fe67fff" }, { "address": 131, "page": 0, - "value": "0x480280067ffd8000" + "value": "0x480080117fe68000" }, { "address": 132, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080147fe57fff" }, { "address": 133, "page": 0, - "value": "0x400280127ff87fff" + "value": "0x480080157fe58000" }, { "address": 134, "page": 0, - "value": "0x480280107ff88000" + "value": "0x480080087fe38000" }, { "address": 135, "page": 0, - "value": "0x480280077ffd8000" + "value": "0x48307fff7ffe8000" }, { "address": 136, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x400080187fe27fff" }, { "address": 137, "page": 0, - "value": "0x400280137ff87fff" + "value": "0x480080167fe28000" }, { "address": 138, "page": 0, - "value": "0x480280117ff88000" + "value": "0x480080097fe08000" }, { "address": 139, "page": 0, - "value": "0x400280147ff87fff" + "value": "0x48307fff7ffe8000" }, { "address": 140, "page": 0, - "value": "0x480280157ff88000" + "value": "0x400080197fdf7fff" }, { "address": 141, "page": 0, - "value": "0x480280087ffd8000" + "value": "0x480080177fdf8000" }, { "address": 142, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x4000801a7fde7fff" }, { "address": 143, "page": 0, - "value": "0x400280187ff87fff" + "value": "0x4800801b7fde8000" }, { "address": 144, "page": 0, - "value": "0x480280167ff88000" + "value": "0x4800801c7fdd8000" }, { "address": 145, "page": 0, - "value": "0x480280097ffd8000" + "value": "0x4800801d7fdc8000" }, { "address": 146, "page": 0, - "value": "0x48307fff7ffe8000" + "value": "0x482480017fda8000" }, { "address": 147, "page": 0, - "value": "0x400280197ff87fff" + "value": "0xa" }, { "address": 148, "page": 0, - "value": "0x480280177ff88000" + "value": "0x482480017fda8000" }, { "address": 149, "page": 0, - "value": "0x4002801a7ff87fff" + "value": "0x1e" }, { "address": 150, "page": 0, - "value": "0x482680017ff88000" + "value": "0x10780017fff7fff" }, { "address": 151, "page": 0, - "value": "0x1e" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc5" }, { "address": 152, "page": 0, - "value": "0x4802801b7ff88000" + "value": "0x40780017fff7fff" }, { "address": 153, "page": 0, - "value": "0x4802801c7ff88000" + "value": "0x1" }, { "address": 154, "page": 0, - "value": "0x4802801d7ff88000" + "value": "0x20680017fff7fff" }, { "address": 155, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x4" }, { "address": 156, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff7" + "value": "0x10780017fff7fff" }, { "address": 157, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x12" }, { "address": 158, "page": 0, - "value": "0xa" + "value": "0x480080007ffc8000" }, { "address": 159, "page": 0, - "value": "0x1104800180018000" + "value": "0x48307fff7ff88000" }, { "address": 160, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc3" + "value": "0x400080007ffb7fff" }, { "address": 161, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480080017ffa8000" }, { "address": 162, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x48307fff7ff78000" }, { "address": 163, "page": 0, - "value": "0x1" + "value": "0x400080017ff97fff" }, { "address": 164, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x400080027ff97ff7" }, { "address": 165, "page": 0, - "value": "0x4" + "value": "0x480080037ff98000" }, { "address": 166, "page": 0, - "value": "0x10780017fff7fff" + "value": "0x480080047ff88000" }, { "address": 167, "page": 0, - "value": "0x15" + "value": "0x480080057ff78000" }, { "address": 168, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x482480017ff58000" }, { "address": 169, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x2" }, { "address": 170, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x482480017ff58000" }, { "address": 171, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x6" }, { "address": 172, "page": 0, - "value": "0x48327fff7ffa8000" + "value": "0x10780017fff7fff" }, { "address": 173, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffaf" }, { "address": 174, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x482a7ffc7ffd8000" }, { "address": 175, "page": 0, - "value": "0x482680017ff88000" + "value": "0x48307ffb80007fff" }, { "address": 176, "page": 0, - "value": "0x6" + "value": "0x20680017fff7fff" }, { "address": 177, "page": 0, - "value": "0x480280037ff88000" + "value": "0xb" }, { "address": 178, "page": 0, - "value": "0x480280047ff88000" + "value": "0x482480017ff78000" }, { "address": 179, "page": 0, - "value": "0x480280057ff88000" + "value": "0x1" }, { "address": 180, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x400080007ffa7fff" }, { "address": 181, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffff" + "value": "0x400080017ffa7ff7" }, { "address": 182, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x400080027ffa7ff8" }, { "address": 183, "page": 0, - "value": "0x2" + "value": "0x482480017ffa8000" }, { "address": 184, "page": 0, - "value": "0x1104800180018000" + "value": "0x6" }, { "address": 185, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffaa" + "value": "0x480080037ff98000" }, { "address": 186, @@ -4394,997 +3688,997 @@ { "address": 187, "page": 0, - "value": "0x20780017fff7ffc" + "value": "0x400680017fff7fff" }, { "address": 188, "page": 0, - "value": "0x9" + "value": "0x1" }, { "address": 189, "page": 0, - "value": "0x482680017ff98000" + "value": "0x480080007ffa8000" }, { "address": 190, "page": 0, - "value": "0x1" + "value": "0x48307fff7ff68000" }, { "address": 191, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x400080007ff97fff" }, { "address": 192, "page": 0, - "value": "0x400380017ff87ffa" + "value": "0x482480017ff68000" }, { "address": 193, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x1" }, { "address": 194, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x400080017ff87fff" }, { "address": 195, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400080027ff87ff6" }, { "address": 196, "page": 0, - "value": "0x400780017fff7ffc" + "value": "0x482480017ff88000" }, { "address": 197, "page": 0, - "value": "0x1" + "value": "0x6" }, { "address": 198, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x480080037ff78000" }, { "address": 199, "page": 0, - "value": "0x48327fff7ff98000" + "value": "0x208b7fff7fff7ffe" }, { "address": 200, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x480280007ffd8000" }, { "address": 201, "page": 0, - "value": "0x482680017ffa8000" + "value": "0x48327fff7ffd8000" }, { "address": 202, "page": 0, - "value": "0x1" + "value": "0x480a7ffc7fff8000" }, { "address": 203, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x480080007ffe8000" }, { "address": 204, "page": 0, - "value": "0x400380027ff87ffb" + "value": "0x48007fff7ffd8000" }, { "address": 205, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x480080007ffd7fff" }, { "address": 206, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400080017ffc7ffd" }, { "address": 207, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x482480017ffb8000" }, { "address": 208, "page": 0, - "value": "0x48327fff7ffd8000" + "value": "0x800000000000011000000000000000000000000000000000000000000000000" }, { "address": 209, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x482480017ffb8000" }, { "address": 210, "page": 0, - "value": "0x480080007ffe8000" + "value": "0x3" }, { "address": 211, "page": 0, - "value": "0x48007fff7ffd8000" + "value": "0x480080027ffa8000" }, { "address": 212, "page": 0, - "value": "0x480080007ffd7fff" + "value": "0x40287ffd7ffc7ffd" }, { "address": 213, "page": 0, - "value": "0x400080017ffc7ffd" + "value": "0x20680017fff7ffc" }, { "address": 214, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff8" }, { "address": 215, "page": 0, - "value": "0x800000000000011000000000000000000000000000000000000000000000000" + "value": "0x208b7fff7fff7ffe" }, { "address": 216, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x482680017ffd8000" }, { "address": 217, "page": 0, - "value": "0x3" + "value": "0x800000000000011000000000000000000000000000000000000000000000000" }, { "address": 218, "page": 0, - "value": "0x480080027ffa8000" + "value": "0x20680017fff7fff" }, { "address": 219, "page": 0, - "value": "0x40287ffd7ffc7ffd" + "value": "0xc" }, { "address": 220, "page": 0, - "value": "0x20680017fff7ffc" + "value": "0x480a7ffb7fff8000" }, { "address": 221, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff8" + "value": "0x480280007ffc8000" }, { "address": 222, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x482680017ffc8000" }, { "address": 223, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x1" }, { "address": 224, "page": 0, - "value": "0x800000000000011000000000000000000000000000000000000000000000000" + "value": "0x1104800180018000" }, { "address": 225, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff73" }, { "address": 226, "page": 0, - "value": "0xc" + "value": "0x480a7ffa7fff8000" }, { "address": 227, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x48127ffd7fff8000" }, { "address": 228, "page": 0, - "value": "0x480280007ffc8000" + "value": "0x48127ffd7fff8000" }, { "address": 229, "page": 0, - "value": "0x482680017ffc8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 230, "page": 0, - "value": "0x1" + "value": "0x480a7ffa7fff8000" }, { "address": 231, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffc7fff8000" }, { "address": 232, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff6c" + "value": "0x1104800180018000" }, { "address": 233, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe1" }, { "address": 234, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x48127ffe7fff8000" }, { "address": 235, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 236, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x48127ffd7fff8000" }, { "address": 237, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 238, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x40780017fff7fff" }, { "address": 239, "page": 0, - "value": "0x1104800180018000" + "value": "0x1a" }, { "address": 240, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe1" + "value": "0x1104800180018000" }, { "address": 241, "page": 0, - "value": "0x48127ffe7fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff18" }, { "address": 242, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x40137ffe7fff8000" }, { "address": 243, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x400380007ff98002" }, { "address": 244, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480680017fff8000" }, { "address": 245, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x0" }, { "address": 246, "page": 0, - "value": "0x18" + "value": "0x4002800180017fff" }, { "address": 247, "page": 0, - "value": "0x1104800180018000" + "value": "0x480280017ff98000" }, { "address": 248, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff11" + "value": "0x480280077ff98000" }, { "address": 249, "page": 0, - "value": "0x40137ffe7fff8000" + "value": "0x480a80017fff8000" }, { "address": 250, "page": 0, - "value": "0x400380007ff98002" + "value": "0x480a7ffd7fff8000" }, { "address": 251, "page": 0, - "value": "0x480680017fff8000" + "value": "0x1104800180018000" }, { "address": 252, "page": 0, - "value": "0x0" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde" }, { "address": 253, "page": 0, - "value": "0x4002800180017fff" + "value": "0x4002800180027fff" }, { "address": 254, "page": 0, - "value": "0x480280017ff98000" + "value": "0x4027800180018003" }, { "address": 255, "page": 0, - "value": "0x480280077ff98000" + "value": "0x4" }, { "address": 256, "page": 0, - "value": "0x480a80017fff8000" + "value": "0x4003800380018004" }, { "address": 257, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x482a800480038000" }, { "address": 258, "page": 0, - "value": "0x1104800180018000" + "value": "0x4802800280018000" }, { "address": 259, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde" + "value": "0x40317fff7ffe8005" }, { "address": 260, "page": 0, - "value": "0x4002800180027fff" + "value": "0x4027800180028006" }, { "address": 261, "page": 0, - "value": "0x4027800180018003" + "value": "0x2" }, { "address": 262, "page": 0, - "value": "0x4" + "value": "0x40137ffb7fff8007" }, { "address": 263, "page": 0, - "value": "0x4003800380018004" + "value": "0x400380027ff98008" }, { "address": 264, "page": 0, - "value": "0x482a800480038000" + "value": "0x400380037ff98009" }, { "address": 265, "page": 0, - "value": "0x4802800280018000" + "value": "0x400380047ff9800a" }, { "address": 266, "page": 0, - "value": "0x40317fff7ffe8005" + "value": "0x400380057ff9800b" }, { "address": 267, "page": 0, - "value": "0x4027800180028006" + "value": "0x400380067ff9800c" }, { "address": 268, "page": 0, - "value": "0x2" + "value": "0x40137ffc7fff800d" }, { "address": 269, "page": 0, - "value": "0x40137ffb7fff8007" + "value": "0x400380087ff9800e" }, { "address": 270, "page": 0, - "value": "0x400380027ff98008" + "value": "0x480a7ffb7fff8000" }, { "address": 271, "page": 0, - "value": "0x400380037ff98009" + "value": "0x4826800180008000" }, { "address": 272, "page": 0, - "value": "0x400380047ff9800a" + "value": "0x6" }, { "address": 273, "page": 0, - "value": "0x400380057ff9800b" + "value": "0x480680017fff8000" }, { "address": 274, "page": 0, - "value": "0x400380067ff9800c" + "value": "0x9" }, { "address": 275, "page": 0, - "value": "0x40137ffc7fff800d" + "value": "0x480a80037fff8000" }, { "address": 276, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480a80047fff8000" }, { "address": 277, "page": 0, - "value": "0x4826800180008000" + "value": "0x1104800180018000" }, { "address": 278, "page": 0, - "value": "0x6" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff13" }, { "address": 279, "page": 0, - "value": "0x480680017fff8000" + "value": "0x1088800580018000" }, { "address": 280, "page": 0, - "value": "0x8" + "value": "0x1104800180018000" }, { "address": 281, "page": 0, - "value": "0x480a80037fff8000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef1" }, { "address": 282, "page": 0, - "value": "0x480a80047fff8000" + "value": "0x402a8004800f7fff" }, { "address": 283, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffb7fff8000" }, { "address": 284, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0d" + "value": "0x4826800180008000" }, { "address": 285, "page": 0, - "value": "0x1088800580018000" + "value": "0x10" }, { "address": 286, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a80037fff8000" }, { "address": 287, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeeb" + "value": "0x480a800f7fff8000" }, { "address": 288, "page": 0, - "value": "0x402a8004800e7fff" + "value": "0x480680017fff8000" }, { "address": 289, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x9" }, { "address": 290, "page": 0, - "value": "0x4826800180008000" + "value": "0x1104800180018000" }, { "address": 291, "page": 0, - "value": "0xf" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeec" }, { "address": 292, "page": 0, - "value": "0x480a80037fff8000" + "value": "0x402a800380047fff" }, { "address": 293, "page": 0, - "value": "0x480a800e7fff8000" + "value": "0x480a7ffa7fff8000" }, { "address": 294, "page": 0, - "value": "0x480680017fff8000" + "value": "0x4826800180008000" }, { "address": 295, "page": 0, - "value": "0x8" + "value": "0x6" }, { "address": 296, "page": 0, - "value": "0x1104800180018000" + "value": "0x4826800180008000" }, { "address": 297, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffee6" + "value": "0x10" }, { "address": 298, "page": 0, - "value": "0x402a800380047fff" + "value": "0x480a7ffc7fff8000" }, { "address": 299, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x480680017fff8000" }, { "address": 300, "page": 0, - "value": "0x4826800180008000" + "value": "0x9" }, { "address": 301, "page": 0, - "value": "0x6" + "value": "0x1104800180018000" }, { "address": 302, "page": 0, - "value": "0x4826800180008000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff11" }, { "address": 303, "page": 0, - "value": "0xf" + "value": "0x402b800280198010" }, { "address": 304, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x4003800080028019" }, { "address": 305, "page": 0, - "value": "0x480680017fff8000" + "value": "0x4826800180008000" }, { "address": 306, "page": 0, - "value": "0x8" + "value": "0x10" }, { "address": 307, "page": 0, - "value": "0x1104800180018000" + "value": "0x48127ffe7fff8000" }, { "address": 308, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0b" + "value": "0x208b7fff7fff7ffe" }, { "address": 309, "page": 0, - "value": "0x402b80028017800f" + "value": "0x40780017fff7fff" }, { "address": 310, "page": 0, - "value": "0x4003800080028017" + "value": "0x1d" }, { "address": 311, "page": 0, - "value": "0x4826800180008000" + "value": "0x402780017ff58001" }, { "address": 312, "page": 0, - "value": "0xf" + "value": "0x1" }, { "address": 313, "page": 0, - "value": "0x48127ffe7fff8000" + "value": "0x400b7ff67fff8002" }, { "address": 314, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x400b80007fff8003" }, { "address": 315, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x400b7ff87fff8004" }, { "address": 316, "page": 0, - "value": "0x1a" + "value": "0x400b7ff97fff8005" }, { "address": 317, "page": 0, - "value": "0x402780017ff68001" + "value": "0x400b7ffa7fff8006" }, { "address": 318, "page": 0, - "value": "0x1" + "value": "0x400b7ffb7fff8007" }, { "address": 319, "page": 0, - "value": "0x400b7ff77fff8002" + "value": "0x400b7ffc7fff8008" }, { "address": 320, "page": 0, - "value": "0x400b80007fff8003" + "value": "0x400b7ffd7fff8009" }, { "address": 321, "page": 0, - "value": "0x400b7ff97fff8004" + "value": "0x400780017fff800a" }, { "address": 322, "page": 0, - "value": "0x400b7ffa7fff8005" + "value": "0x6f7574707574" }, { "address": 323, "page": 0, - "value": "0x400b7ffb7fff8006" + "value": "0x400780017fff800b" }, { "address": 324, "page": 0, - "value": "0x400b7ffc7fff8007" + "value": "0x706564657273656e" }, { "address": 325, "page": 0, - "value": "0x400b7ffd7fff8008" + "value": "0x400780017fff800c" }, { "address": 326, "page": 0, - "value": "0x400780017fff8009" + "value": "0x72616e67655f636865636b" }, { "address": 327, "page": 0, - "value": "0x6f7574707574" + "value": "0x400780017fff800d" }, { "address": 328, "page": 0, - "value": "0x400780017fff800a" + "value": "0x6563647361" }, { "address": 329, "page": 0, - "value": "0x706564657273656e" + "value": "0x400780017fff800e" }, { "address": 330, "page": 0, - "value": "0x400780017fff800b" + "value": "0x62697477697365" }, { "address": 331, "page": 0, - "value": "0x72616e67655f636865636b" + "value": "0x400780017fff800f" }, { "address": 332, "page": 0, - "value": "0x400780017fff800c" + "value": "0x65635f6f70" }, { "address": 333, "page": 0, - "value": "0x6563647361" + "value": "0x400780017fff8010" }, { "address": 334, "page": 0, - "value": "0x400780017fff800d" + "value": "0x6b656363616b" }, { "address": 335, "page": 0, - "value": "0x62697477697365" + "value": "0x400780017fff8011" }, { "address": 336, "page": 0, - "value": "0x400780017fff800e" + "value": "0x706f736569646f6e" }, { "address": 337, "page": 0, - "value": "0x65635f6f70" + "value": "0x400780017fff8012" }, { "address": 338, "page": 0, - "value": "0x400780017fff800f" + "value": "0x72616e67655f636865636b3936" }, { "address": 339, "page": 0, - "value": "0x6b656363616b" + "value": "0x400780017fff8013" }, { "address": 340, "page": 0, - "value": "0x400780017fff8010" + "value": "0x1" }, { "address": 341, "page": 0, - "value": "0x706f736569646f6e" + "value": "0x400780017fff8014" }, { "address": 342, "page": 0, - "value": "0x400780017fff8011" + "value": "0x3" }, { "address": 343, "page": 0, - "value": "0x1" + "value": "0x400780017fff8015" }, { "address": 344, "page": 0, - "value": "0x400780017fff8012" + "value": "0x1" }, { "address": 345, "page": 0, - "value": "0x3" + "value": "0x400780017fff8016" }, { "address": 346, "page": 0, - "value": "0x400780017fff8013" + "value": "0x2" }, { "address": 347, "page": 0, - "value": "0x1" + "value": "0x400780017fff8017" }, { "address": 348, "page": 0, - "value": "0x400780017fff8014" + "value": "0x5" }, { "address": 349, "page": 0, - "value": "0x2" + "value": "0x400780017fff8018" }, { "address": 350, "page": 0, - "value": "0x400780017fff8015" + "value": "0x7" }, { "address": 351, "page": 0, - "value": "0x5" + "value": "0x400780017fff8019" }, { "address": 352, "page": 0, - "value": "0x400780017fff8016" + "value": "0x10" }, { "address": 353, "page": 0, - "value": "0x7" + "value": "0x400780017fff801a" }, { "address": 354, "page": 0, - "value": "0x400780017fff8017" + "value": "0x6" }, { "address": 355, "page": 0, - "value": "0x10" + "value": "0x400780017fff801b" }, { "address": 356, "page": 0, - "value": "0x400780017fff8018" + "value": "0x1" }, { "address": 357, "page": 0, - "value": "0x6" + "value": "0x1104800180018000" }, { "address": 358, "page": 0, - "value": "0x1104800180018000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea3" }, { "address": 359, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea2" + "value": "0x482480017ffe8000" }, { "address": 360, "page": 0, - "value": "0x482480017ffe8000" + "value": "0x1" }, { "address": 361, "page": 0, - "value": "0x1" + "value": "0x480a7ff77fff8000" }, { "address": 362, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x482480017ffc8000" }, { "address": 363, "page": 0, - "value": "0x482480017ffc8000" + "value": "0xa" }, { "address": 364, "page": 0, - "value": "0x9" + "value": "0x482480017ffb8000" }, { "address": 365, "page": 0, - "value": "0x482480017ffb8000" + "value": "0x13" }, { "address": 366, "page": 0, - "value": "0x11" + "value": "0x480280007ff58000" }, { "address": 367, "page": 0, - "value": "0x480280007ff68000" + "value": "0x1104800180018000" }, { "address": 368, "page": 0, - "value": "0x1104800180018000" + "value": "0x24" }, { "address": 369, "page": 0, - "value": "0x23" + "value": "0x400a80007fff7fff" }, { "address": 370, "page": 0, - "value": "0x400a80007fff7fff" + "value": "0x40137ffe7fff801c" }, { "address": 371, "page": 0, - "value": "0x40137ffe7fff8019" + "value": "0x48028002801c8000" }, { "address": 372, "page": 0, - "value": "0x4802800280198000" + "value": "0x48307ffe80007fff" }, { "address": 373, "page": 0, - "value": "0x48307ffe80007fff" + "value": "0x480680017fff8000" }, { "address": 374, "page": 0, - "value": "0x480680017fff8000" + "value": "0x40" }, { "address": 375, "page": 0, - "value": "0x40" + "value": "0x1104800180018000" }, { "address": 376, "page": 0, - "value": "0x1104800180018000" + "value": "0xc" }, { "address": 377, "page": 0, - "value": "0xb" + "value": "0x48028000801c8000" }, { "address": 378, "page": 0, - "value": "0x4802800080198000" + "value": "0x48028001801c8000" }, { "address": 379, "page": 0, - "value": "0x4802800180198000" + "value": "0x48028002801c8000" }, { "address": 380, "page": 0, - "value": "0x4802800280198000" + "value": "0x48028003801c8000" }, { "address": 381, "page": 0, - "value": "0x4802800380198000" + "value": "0x48028004801c8000" }, { "address": 382, "page": 0, - "value": "0x4802800480198000" + "value": "0x48028005801c8000" }, { "address": 383, "page": 0, - "value": "0x4802800580198000" + "value": "0x48028006801c8000" }, { "address": 384, "page": 0, - "value": "0x4802800680198000" + "value": "0x48028007801c8000" }, { "address": 385, "page": 0, - "value": "0x4802800780198000" + "value": "0x48028008801c8000" }, { "address": 386, @@ -5539,7 +4833,7 @@ { "address": 416, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff57" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff50" }, { "address": 417, @@ -6189,7 +5483,7 @@ { "address": 546, "page": 0, - "value": "0xa" + "value": "0xb" }, { "address": 547, @@ -6199,1000 +5493,1060 @@ { "address": 548, "page": 0, - "value": "0x480a7ff77fff8000" + "value": "0x480a7ff67fff8000" }, { "address": 549, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x480a7ff77fff8000" }, { "address": 550, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x480a7ff87fff8000" }, { "address": 551, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x480a7ff97fff8000" }, { "address": 552, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480a7ffa7fff8000" }, { "address": 553, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 554, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x480a7ffc7fff8000" }, { "address": 555, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffd7fff8000" }, { "address": 556, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff11" + "value": "0x1104800180018000" }, { "address": 557, "page": 0, - "value": "0x40137ffa7fff8001" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0a" }, { "address": 558, "page": 0, - "value": "0x40137ffb7fff8002" + "value": "0x40137ff97fff8001" }, { "address": 559, "page": 0, - "value": "0x40137ffc7fff8003" + "value": "0x40137ffa7fff8002" }, { "address": 560, "page": 0, - "value": "0x40137ffd7fff8004" + "value": "0x40137ffb7fff8003" }, { "address": 561, "page": 0, - "value": "0x40137ffe7fff8005" + "value": "0x40137ffc7fff8004" }, { "address": 562, "page": 0, - "value": "0x40137fff7fff8006" + "value": "0x40137ffd7fff8005" }, { "address": 563, "page": 0, - "value": "0x40137ff87fff8007" + "value": "0x40137ffe7fff8006" }, { "address": 564, "page": 0, - "value": "0x480a7ff67fff8000" + "value": "0x40137fff7fff8007" }, { "address": 565, "page": 0, - "value": "0x48127ff87fff8000" + "value": "0x40137ff77fff8008" }, { "address": 566, "page": 0, - "value": "0x480a80087fff8000" + "value": "0x480a7ff57fff8000" }, { "address": 567, "page": 0, - "value": "0x1104800180018000" + "value": "0x48127ff77fff8000" }, { "address": 568, "page": 0, - "value": "0x40" + "value": "0x480a80097fff8000" }, { "address": 569, "page": 0, - "value": "0x40137ffe7fff8009" + "value": "0x1104800180018000" }, { "address": 570, "page": 0, - "value": "0x482480017ffe8000" + "value": "0x45" }, { "address": 571, "page": 0, - "value": "0x1" + "value": "0x40137ffe7fff800a" }, { "address": 572, "page": 0, - "value": "0x48127ffe7fff8000" + "value": "0x482480017ffe8000" }, { "address": 573, "page": 0, - "value": "0x480a80017fff8000" + "value": "0x1" }, { "address": 574, "page": 0, - "value": "0x480680017fff8000" + "value": "0x48127ffe7fff8000" }, { "address": 575, "page": 0, - "value": "0x0" + "value": "0x480a80067fff8000" }, { "address": 576, "page": 0, - "value": "0x4826800180008000" + "value": "0x480a80017fff8000" }, { "address": 577, "page": 0, - "value": "0x1" + "value": "0x480680017fff8000" }, { "address": 578, "page": 0, - "value": "0x480a80087fff8000" + "value": "0x0" }, { "address": 579, "page": 0, - "value": "0x4802800080008000" + "value": "0x4826800180008000" }, { "address": 580, "page": 0, - "value": "0x1104800180018000" + "value": "0x1" }, { "address": 581, "page": 0, - "value": "0xd" + "value": "0x480a80097fff8000" }, { "address": 582, "page": 0, - "value": "0x40137fff7fff8007" + "value": "0x4802800080008000" }, { "address": 583, "page": 0, - "value": "0x4002800080097ffe" + "value": "0x1104800180018000" }, { "address": 584, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0xe" }, { "address": 585, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x40137fff7fff8008" }, { "address": 586, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x40028000800a7ffe" }, { "address": 587, "page": 0, - "value": "0x480a80027fff8000" + "value": "0x48127ffa7fff8000" }, { "address": 588, "page": 0, - "value": "0x480a80037fff8000" + "value": "0x48127ffa7fff8000" }, { "address": 589, "page": 0, - "value": "0x480a80047fff8000" + "value": "0x48127ffb7fff8000" }, { "address": 590, "page": 0, - "value": "0x480a80057fff8000" + "value": "0x480a80027fff8000" }, { "address": 591, "page": 0, - "value": "0x480a80067fff8000" + "value": "0x480a80037fff8000" }, { "address": 592, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480a80047fff8000" }, { "address": 593, "page": 0, - "value": "0x20780017fff7ffd" + "value": "0x480a80057fff8000" }, { "address": 594, "page": 0, - "value": "0x8" + "value": "0x48127ff57fff8000" }, { "address": 595, "page": 0, - "value": "0x480a7ff77fff8000" + "value": "0x480a80077fff8000" }, { "address": 596, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 597, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x20780017fff7ffd" }, { "address": 598, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x9" }, { "address": 599, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x480a7ff67fff8000" }, { "address": 600, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480a7ff77fff8000" }, { "address": 601, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x480a7ff87fff8000" }, { "address": 602, "page": 0, - "value": "0x0" + "value": "0x480a7ff97fff8000" }, { "address": 603, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x480a7ffa7fff8000" }, { "address": 604, "page": 0, - "value": "0x1" + "value": "0x480a7ffb7fff8000" }, { "address": 605, "page": 0, - "value": "0x20680017fff7fff" + "value": "0x208b7fff7fff7ffe" }, { "address": 606, "page": 0, - "value": "0xc" + "value": "0x40780017fff7fff" }, { "address": 607, "page": 0, - "value": "0x480a7ff77fff8000" + "value": "0x0" }, { "address": 608, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x40780017fff7fff" }, { "address": 609, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x1" }, { "address": 610, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x20680017fff7fff" }, { "address": 611, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0xd" }, { "address": 612, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ff67fff8000" }, { "address": 613, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ff77fff8000" }, { "address": 614, "page": 0, - "value": "0x22" + "value": "0x480a7ff87fff8000" }, { "address": 615, "page": 0, - "value": "0x10780017fff7fff" + "value": "0x480a7ff97fff8000" }, { "address": 616, "page": 0, - "value": "0xa" + "value": "0x480a7ffa7fff8000" }, { "address": 617, "page": 0, - "value": "0x480a7ff77fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 618, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x480a7ffc7fff8000" }, { "address": 619, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x1104800180018000" }, { "address": 620, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x23" }, { "address": 621, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x10780017fff7fff" }, { "address": 622, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0xb" }, { "address": 623, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ff67fff8000" }, { "address": 624, "page": 0, - "value": "0x44" + "value": "0x480a7ff77fff8000" }, { "address": 625, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x480a7ff87fff8000" }, { "address": 626, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x480a7ff97fff8000" }, { "address": 627, "page": 0, - "value": "0x800000000000011000000000000000000000000000000000000000000000000" + "value": "0x480a7ffa7fff8000" }, { "address": 628, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffb7fff8000" }, { "address": 629, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffde" + "value": "0x480a7ffc7fff8000" }, { "address": 630, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x1104800180018000" }, { "address": 631, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x46" }, { "address": 632, "page": 0, - "value": "0x400280007ffb7fff" + "value": "0x480a7ffc7fff8000" }, { "address": 633, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x482680017ffd8000" }, { "address": 634, "page": 0, - "value": "0x480280027ffd8000" + "value": "0x800000000000011000000000000000000000000000000000000000000000000" }, { "address": 635, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x1104800180018000" }, { "address": 636, "page": 0, - "value": "0x1104800180018000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdb" }, { "address": 637, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff8c" + "value": "0x208b7fff7fff7ffe" }, { "address": 638, "page": 0, - "value": "0x400280017ffb7fff" + "value": "0x480280007ffd8000" }, { "address": 639, "page": 0, - "value": "0x482680017ffb8000" + "value": "0x400280007ffb7fff" }, { "address": 640, "page": 0, - "value": "0x2" + "value": "0x480a7ffc7fff8000" }, { "address": 641, "page": 0, - "value": "0x48127ffd7fff8000" + "value": "0x480280027ffd8000" }, { "address": 642, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x480280017ffd8000" }, { "address": 643, "page": 0, - "value": "0x482680017ffd8000" + "value": "0x1104800180018000" }, { "address": 644, "page": 0, - "value": "0x2" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff85" }, { "address": 645, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x400280017ffb7fff" }, { "address": 646, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x482680017ffb8000" }, { "address": 647, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x2" }, { "address": 648, "page": 0, - "value": "0x4" + "value": "0x48127ffd7fff8000" }, { "address": 649, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 650, "page": 0, - "value": "0x480a80007fff8000" + "value": "0x482680017ffd8000" }, { "address": 651, "page": 0, - "value": "0x480a80017fff8000" + "value": "0x2" }, { "address": 652, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ffd7fff8000" }, { "address": 653, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff7c" + "value": "0x208b7fff7fff7ffe" }, { "address": 654, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x40780017fff7fff" }, { "address": 655, "page": 0, - "value": "0x1104800180018000" + "value": "0x4" }, { "address": 656, "page": 0, - "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff5" + "value": "0x480a7ff97fff8000" }, { "address": 657, "page": 0, - "value": "0x480680017fff8000" + "value": "0x480a80017fff8000" }, { "address": 658, "page": 0, - "value": "0x4" + "value": "0x480a80007fff8000" }, { "address": 659, "page": 0, - "value": "0x400080007ffe7fff" + "value": "0x1104800180018000" }, { "address": 660, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdc0" }, { "address": 661, "page": 0, - "value": "0x480280027ffd8000" + "value": "0x480a7ffc7fff8000" }, { "address": 662, "page": 0, - "value": "0x480680017fff8000" + "value": "0x1104800180018000" }, { "address": 663, "page": 0, - "value": "0x1" + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff5" }, { "address": 664, "page": 0, - "value": "0x480280017ffd8000" + "value": "0x480680017fff8000" }, { "address": 665, "page": 0, - "value": "0x480080017ffa8000" + "value": "0x4" }, { "address": 666, "page": 0, - "value": "0x1104800180018000" + "value": "0x400080007ffe7fff" }, { "address": 667, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff21" + "value": "0x480a7ffa7fff8000" }, { "address": 668, "page": 0, - "value": "0x480280007ffd8000" + "value": "0x480280027ffd8000" }, { "address": 669, "page": 0, - "value": "0x400080007fdd7fff" + "value": "0x480680017fff8000" }, { "address": 670, "page": 0, - "value": "0x400080017fdd7fd9" + "value": "0x1" }, { "address": 671, "page": 0, - "value": "0x402580017fdd8002" + "value": "0x480280017ffd8000" }, { "address": 672, "page": 0, - "value": "0x2" + "value": "0x480080017ffa8000" }, { "address": 673, "page": 0, - "value": "0x400b80007fff8003" + "value": "0x1104800180018000" }, { "address": 674, "page": 0, - "value": "0x480a7ff87fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff1a" }, { "address": 675, "page": 0, - "value": "0x48127fd77fff8000" + "value": "0x480280007ffd8000" }, { "address": 676, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x400080007fdd7fff" }, { "address": 677, "page": 0, - "value": "0x480a7ffb7fff8000" + "value": "0x400080017fdd7fd9" }, { "address": 678, "page": 0, - "value": "0x4826800180008000" + "value": "0x402580017fdd8002" }, { "address": 679, "page": 0, - "value": "0x1" + "value": "0x2" }, { "address": 680, "page": 0, - "value": "0x480a7ffd7fff8000" + "value": "0x400b80007fff8003" }, { "address": 681, "page": 0, - "value": "0x4802800080008000" + "value": "0x480a7ff77fff8000" }, { "address": 682, "page": 0, - "value": "0x1104800180018000" + "value": "0x480a7ff87fff8000" }, { "address": 683, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa8" + "value": "0x48127fd67fff8000" }, { "address": 684, "page": 0, - "value": "0x402a800180037fff" + "value": "0x48127ffa7fff8000" }, { "address": 685, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x480a7ffb7fff8000" }, { "address": 686, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x4826800180008000" }, { "address": 687, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x1" }, { "address": 688, "page": 0, - "value": "0x48127ffb7fff8000" + "value": "0x480a7ffd7fff8000" }, { "address": 689, "page": 0, - "value": "0x480a80027fff8000" + "value": "0x4802800080008000" }, { "address": 690, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x1104800180018000" }, { "address": 691, "page": 0, - "value": "0x40780017fff7fff" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa4" }, { "address": 692, "page": 0, - "value": "0x2" + "value": "0x402a800180037fff" }, { "address": 693, "page": 0, - "value": "0x480a7ffc7fff8000" + "value": "0x48127ffa7fff8000" }, { "address": 694, "page": 0, - "value": "0x1104800180018000" + "value": "0x48127ffa7fff8000" }, { "address": 695, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffce" + "value": "0x48127ffa7fff8000" }, { "address": 696, "page": 0, - "value": "0x40137ffe7fff8000" + "value": "0x48127ffa7fff8000" }, { "address": 697, "page": 0, - "value": "0x480080007fff8000" + "value": "0x48127ffa7fff8000" }, { "address": 698, "page": 0, - "value": "0x400280007ff87fff" + "value": "0x480a80027fff8000" }, { "address": 699, "page": 0, - "value": "0x480080017ffe8000" + "value": "0x208b7fff7fff7ffe" }, { "address": 700, "page": 0, - "value": "0x400280017ff87fff" + "value": "0x40780017fff7fff" }, { "address": 701, "page": 0, - "value": "0x480080007ffd8000" + "value": "0x2" }, { "address": 702, "page": 0, - "value": "0x402580017fff8001" + "value": "0x480a7ffc7fff8000" }, { "address": 703, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffff" + "value": "0x1104800180018000" }, { "address": 704, "page": 0, - "value": "0x482680017ff88000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffcc" }, { "address": 705, "page": 0, - "value": "0x2" + "value": "0x40137ffe7fff8000" }, { "address": 706, "page": 0, - "value": "0x480a80007fff8000" + "value": "0x480080007fff8000" }, { "address": 707, "page": 0, - "value": "0x480a80017fff8000" + "value": "0x400280007ff77fff" }, { "address": 708, "page": 0, - "value": "0x1104800180018000" + "value": "0x480080017ffe8000" }, { "address": 709, "page": 0, - "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff4f" + "value": "0x400280017ff77fff" }, { "address": 710, "page": 0, - "value": "0x482680017ff88000" + "value": "0x480080007ffd8000" }, { "address": 711, "page": 0, - "value": "0x2" + "value": "0x402580017fff8001" }, { "address": 712, "page": 0, - "value": "0x482880017fff8000" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffff" }, { "address": 713, "page": 0, - "value": "0x480a7ff97fff8000" + "value": "0x482680017ff78000" }, { "address": 714, "page": 0, - "value": "0x480a7ffa7fff8000" + "value": "0x2" }, { "address": 715, "page": 0, - "value": "0x482680017ffb8000" + "value": "0x480a80007fff8000" }, { "address": 716, "page": 0, - "value": "0x1" + "value": "0x480a80017fff8000" }, { "address": 717, "page": 0, - "value": "0x482a800180008000" + "value": "0x1104800180018000" }, { "address": 718, "page": 0, - "value": "0x208b7fff7fff7ffe" + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff46" }, { "address": 719, "page": 0, - "value": "0x2d1" + "value": "0x482680017ff78000" }, { "address": 720, "page": 0, - "value": "0x0" + "value": "0x2" }, { "address": 721, "page": 0, - "value": "0xab5" + "value": "0x482880017fff8000" }, { "address": 722, "page": 0, - "value": "0xabf" + "value": "0x480a7ff87fff8000" }, { "address": 723, "page": 0, - "value": "0x22bf" + "value": "0x480a7ff97fff8000" }, { "address": 724, "page": 0, - "value": "0x32bf" + "value": "0x480a7ffa7fff8000" }, { "address": 725, "page": 0, - "value": "0x32ff" + "value": "0x482680017ffb8000" }, { "address": 726, "page": 0, - "value": "0x46ff" + "value": "0x1" }, { "address": 727, "page": 0, - "value": "0x48bf" + "value": "0x482a800180008000" }, { "address": 728, "page": 0, - "value": "0x4abf" + "value": "0x208b7fff7fff7ffe" + }, + { + "address": 729, + "page": 0, + "value": "0x2db" + }, + { + "address": 730, + "page": 0, + "value": "0x0" + }, + { + "address": 731, + "page": 0, + "value": "0xaf0" }, { - "address": 2733, + "address": 732, "page": 0, - "value": "0xabf" + "value": "0xafa" }, { - "address": 2734, + "address": 733, "page": 0, - "value": "0xce4" + "value": "0x22fa" }, { - "address": 2735, + "address": 734, "page": 0, - "value": "0x22c8" + "value": "0x32fa" }, { - "address": 2736, + "address": 735, "page": 0, - "value": "0x32c1" + "value": "0x333a" }, { - "address": 2737, + "address": 736, "page": 0, - "value": "0x3309" + "value": "0x473a" }, { - "address": 2738, + "address": 737, "page": 0, - "value": "0x4706" + "value": "0x48fa" }, { - "address": 2739, + "address": 738, "page": 0, - "value": "0x48cf" + "value": "0x4afa" }, { - "address": 2740, + "address": 739, "page": 0, - "value": "0x4ac5" + "value": "0x0" + }, + { + "address": 2791, + "page": 0, + "value": "0xafa" + }, + { + "address": 2792, + "page": 0, + "value": "0xd1f" + }, + { + "address": 2793, + "page": 0, + "value": "0x2304" + }, + { + "address": 2794, + "page": 0, + "value": "0x32fc" + }, + { + "address": 2795, + "page": 0, + "value": "0x3344" + }, + { + "address": 2796, + "page": 0, + "value": "0x4741" + }, + { + "address": 2797, + "page": 0, + "value": "0x490a" + }, + { + "address": 2798, + "page": 0, + "value": "0x4b00" + }, + { + "address": 2799, + "page": 0, + "value": "0x0" }, { - "address": 2741, + "address": 2800, "page": 0, "value": "0x0" }, { - "address": 2742, + "address": 2801, "page": 0, "value": "0x49ee3eba8c1600700ee1b87eb599f16716b0b1022947733551fde4050ca6804" }, { - "address": 2743, + "address": 2802, "page": 0, "value": "0x1" }, { - "address": 2744, + "address": 2803, "page": 0, "value": "0x7" }, { - "address": 2745, + "address": 2804, "page": 0, "value": "0x7d268240f9c37113ddb500261001f7268e8da0c5beeaa2bc3a02a1ea6e7b9aa" }, { - "address": 2746, + "address": 2805, "page": 1, "value": "0x5c9d88a1de4e8a88f3a14ee67d10cc244cf6eb630751faf26a6c83a86205e0" }, { - "address": 2747, + "address": 2806, "page": 2, "value": "0x4d2" }, { - "address": 2748, + "address": 2807, "page": 2, "value": "0x10e1" }, { - "address": 2749, + "address": 2808, "page": 3, "value": "0x3e8" }, { - "address": 2750, + "address": 2809, "page": 3, "value": "0x7d0" } ], - "rc_max": 32793, + "rc_max": 32796, "rc_min": 0 }, "version": { @@ -7200,294 +6554,294 @@ "statement_name": "INVALID_NAME" }, "extra_annotations": [ - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17902223: Hash(0x000000000000000000000000a5a76bb17fb444364c82b09a445808ca3b11ca16)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19155202: Hash(0x000000000000000000000000722c5e218fa0cccbb42f48ef12bde092617e879c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19380073: Hash(0x000000000000000000000000018229e42a84839e0796bdb416332d136a84f09b)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19533529: Hash(0x0000000000000000000000009516e4ed3fd2a9a2ff131e17ef8b42ca2ba9dabb)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21583898: Hash(0x000000000000000000000000d23449a463f3f0f5de057d01c2ce9bcc7ba9de7b)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 21790965: Hash(0x000000000000000000000000e06b5c31342bbfb1868a72d41077b4ae37a0dcd4)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22306301: Hash(0x0000000000000000000000008f909203b4ac3d091a246364b60c0c8c60a36993)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24338725: Hash(0x000000000000000000000000ebc999cdddd3eb5cdb7424094fc7aebc5e53c65c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24346724: Hash(0x000000000000000000000000b78c6269e92d57f761a5f55676fcb31337f66d26)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24813146: Hash(0x000000000000000000000000c2ba3f113fdb6bd8c523e1c288661df489772c81)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 25701535: Hash(0x000000000000000000000000586353d5d369f7b9676e2d36566e0e3889730766)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27869714: Hash(0x000000000000000000000000c6c786592997fc5299f9bbcc51d4fdb0289efb7b)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28217663: Hash(0x0000000000000000000000002946b446f1c6636ecf57f68e87481d683c397624)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28558887: Hash(0x000000000000000000000000914f96a05a5aa97e07e363cacb63c5a382557a69)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31169962: Hash(0x00000000000000000000000078dc949ab0c50968d2490b4c63d095b0795965ce)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31974351: Hash(0x0000000000000000000000006353d1380103d7477a1aeb103211bdfc56a8ab36)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 32170420: Hash(0x000000000000000000000000e0b363e324c0ec248e128ecf91e6def0b296895a)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17902223: Hash(0x000000000000000000000000467d5e81227d44b39ffa6ae9bf2e4cd70493fd0c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19155202: Hash(0x0000000000000000000000000471b749fbbdcd2f37765cb8c2e12d965d8b0834)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19380073: Hash(0x000000000000000000000000b3d1959d4268d289a93ba126182f22f37e1d606c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19533529: Hash(0x00000000000000000000000024e7c51eff03f7e78004cedad3cee578e6ca971d)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21583898: Hash(0x0000000000000000000000001c672176adf78b90d2f5ec32221fa353ed93312f)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 21790965: Hash(0x000000000000000000000000530a19617443192f02953aa1dc3f32106ec15351)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22306301: Hash(0x000000000000000000000000edd4f273aad6c43b9c10986823f612feb2ce818f)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24338725: Hash(0x00000000000000000000000008f64d54d277302059b73648bc2eb0d58ed48805)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24346724: Hash(0x00000000000000000000000081598e0719450fa0b5fc5fadc0bfdd9633a0c348)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24813146: Hash(0x0000000000000000000000007093b3c1d203eb2d472f66727e39282f203b3239)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 25701535: Hash(0x0000000000000000000000008c766c49d5e72297669ce40fe9f5316057d94f4c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27869714: Hash(0x000000000000000000000000f2763df8e058e5e64d42ec6a29f271c909b567ec)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28217663: Hash(0x0000000000000000000000000af4d3b5ebc80696a7662fceef03acc88dc20832)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28558887: Hash(0x0000000000000000000000008802a757e7001378f39858043c0150e9eab52cbe)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31169962: Hash(0x0000000000000000000000008795cbe3c1d0e2ba8a4445ae48fa7c13224d53de)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31974351: Hash(0x00000000000000000000000084d244dc9cc3b3650001d2432ffab091da27f705)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 32170420: Hash(0x0000000000000000000000005b319d7f32a284799e3498d929714d2869f129c6)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17902223: Hash(0x00000000000000000000000051fb76994e40dc89877dd87b077d20dca8013b51)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19155202: Hash(0x0000000000000000000000004ffe06631990799f4445bad37d0b29e25b6e5f8c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19380073: Hash(0x000000000000000000000000d69c57057b94d6263f6a41910cb084594571f2dd)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19533529: Hash(0x000000000000000000000000aa562a366ae4620b1500f7174faaba4174f2192d)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21583898: Hash(0x000000000000000000000000e3c06449e8066a12efc6517d6e6d89799f87fc00)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 21790965: Hash(0x000000000000000000000000bc728e60b7a34fc900636b7dcfcbd6ddb777c8f4)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22306301: Hash(0x00000000000000000000000052788b855475f340ec61021fdf83b75e7d0abc99)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24338725: Hash(0x00000000000000000000000099c1eede42857c63df585a76fdbc013d99feb472)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24346724: Hash(0x00000000000000000000000064a30cce15531f8ff68860addddfc6536dc72c2a)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24813146: Hash(0x0000000000000000000000008f01e0b26844c95a03c2196546ebc9c5c67510ee)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 25701535: Hash(0x0000000000000000000000005794528022c814abbbd5dd9409273dacd54e1040)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27869714: Hash(0x0000000000000000000000007ed4f09c646410f310f2f3cd2d4af7702c819754)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28217663: Hash(0x000000000000000000000000e3b61f761e95d8284b8eafd73fefe88c07fcbc9b)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28558887: Hash(0x00000000000000000000000047fee9bcc40cfcf99ad3413fa90b26b8a34a9f2c)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31169962: Hash(0x000000000000000000000000685892d48bee47cf6b0f3ce9f19697212c326110)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31974351: Hash(0x000000000000000000000000574813d44dd71c49a0a391fcdee4e49b8a0447f2)", - "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 32170420: Hash(0x000000000000000000000000f96facbd05f2f0c93c97983220139cf90bb5008c)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 70312, Column 15: Field Element(0x57d1c838371fa0e0eefee54db178fecf7ae1f777a1f9fa9380c632ffabbab4a)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 1125007: Field Element(0x1311adb7499ff366b1a3ddbed866bb81865d15abd3326488cd3898ce375c73b)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 148624, Column 2: Field Element(0x4b3aea6a8b69ff5cfb66f79549198cee8e80193fcab54462a5144dddcf3f629)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 2377986: Field Element(0x8d541452fe06290fccdddb0cee593c79a8f3b240507d42acc226fb700402be)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 162678, Column 9: Field Element(0x13f5caac27d5bf37111303d65cd1e5dfd67ee144349dcde3f7efe5c53316698)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 2602857: Field Element(0x2e2449a501e37ce1794ce2c505361e1376903be19b6247dd9201562856fea0d)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 172269, Column 9: Field Element(0xdb1928dc7f7a3bcca1260e3a80484a84fcb7100405d1ac932ee6951b8c7f40)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 2756313: Field Element(0x4aa1076be72c72357b52e5490f8d9b25f116c743b4133557756dcbb72efda8d)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 300417, Column 10: Field Element(0x107d0dfa16ba1fdb6c709762685b79d67b4e146528e19372df61d5751ef76a8)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 4806682: Field Element(0x172822325cf2685b83fbbfbc6037d8128c2a06a448b20cee142a04dbc58b45b)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 313359, Column 5: Field Element(0x7264e35f6b7e0341e901397a337e73b651dcd46c83418717a23197ae1481cb)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 5013749: Field Element(0x16b2b489c2a6d4f6ac5c6d41dfae7513742b0c6b9beb6433dea8e13eea118d6)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 345567, Column 13: Field Element(0x6d0b7a98ba8f0c2ce4461b36f85db0b27b59f63e53159a552ee824515ca5c40)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 5529085: Field Element(0x17bb68684092ff95512e5befb5e6033a0fa4dc20abe5e53ca4e31be5a1f3d72)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 472594, Column 5: Field Element(0x6cf6c98796f270bb8c0a14733a3ebb332090f5cda810ab6ef160832f18a0375)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 7561509: Field Element(0x7c10889e24c6006efecf81d5e6f78b9825830ec7e5b558fd662b4a568704b8e)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 473094, Column 4: Field Element(0x2b808e8061fbcf2c9f0176415563b8b377fa49df966c3fd2f5ab172bceb9b27)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 7569508: Field Element(0x45bfe61921165162573115d2782515ebc184a6b00e75a9b6ac88cc81fbb5f79)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 502245, Column 10: Field Element(0x54636304e3fce40a3e63a11f60fcfab940142c4a2a4f1b0edac6647cdfe5bc6)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 8035930: Field Element(0x1b5e137070c830251a087f46dd69acccd4249af8d10ac88b6b6b5496a33fa98)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 557769, Column 15: Field Element(0x398169ed5cd754e6e7d7193698fe5c1e76b57a329b3306a8569cf31cbace317)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 8924319: Field Element(0x3b2d1a5dc85ce2087b99768fa2684fc3218107f9b7d70fd75e8d3f7854bf1a)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 693281, Column 2: Field Element(0x58e9499b8b9f5d6aaad70dea32abe1cfbf897363110ce4dc581ef1dcfeaf426)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 11092498: Field Element(0x18e39fbaf76f140aca059618466ff6942d4f9cea1eb6ddadae7ae94bcf61e1c)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 715027, Column 15: Field Element(0x64508c47cf0aa5754647b50634c45b56d209d60ba7e9a9712069c0a05d0e6c4)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 11440447: Field Element(0x479f74730d75b595863a9330104439b16f55803a6d8948996545065e8d6ff3)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 736354, Column 7: Field Element(0x154f23ebf1cbb188e2c5518ab13c56c86534182c6fca4781c65079f351376e)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 11781671: Field Element(0x24ba2a5fb5dcfad62e4aae9b7f7b929f3ce09397628883667f89717b60ec9b9)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 899546, Column 10: Field Element(0x53df606f886315a9c66c330b78860d6200698cb82b7c4ea87cec1dcb9482872)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 14392746: Field Element(0x724b2f86f352e7c3918538e91ea9584e70074ad8f0b8c87e867d8c77f83f441)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 949820, Column 15: Field Element(0x4142dc8c1562cf421cf1db4f4645a13a468dc5bf83b4fbe397a3519a39dc235)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 15197135: Field Element(0x1ab7539a0abbeec4c4d1b484f67cc7d79f09c8675351418329575b7d8eb7eb5)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 962075, Column 4: Field Element(0x1bbb00e827afd5a56944fe35dda0de8bc3d4f02f7e6dc76ed5d4b6a366573b0)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 15393204: Field Element(0x11a6c9bc2cac43d15b9eb0750f6395e4012908b5957debcd57a8559be5f5491)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1118888: Hash(0x000000000000000000000000c1ff339f96174100c32730e219215ec4ea710b94)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1197200: Hash(0x000000000000000000000000a22dee251e81ea9ee1a5f4588a396c23afa6e7b7)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1211254: Hash(0x0000000000000000000000009ffa37bce3c44b9cdf9d741081607879b26ae38c)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1220845: Hash(0x000000000000000000000000293f95ddc1c1a9457c4c16e94f61af3163912748)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1348993: Hash(0x000000000000000000000000d6e2e12bbe05f8992f7c1aa0563ea8c6c83ad477)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1361935: Hash(0x00000000000000000000000060526d5eecc2867ec8831173c818b3505b5ef928)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1394143: Hash(0x000000000000000000000000430080fffc1a1480f18ffe4316e123a398380f47)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1521170: Hash(0x000000000000000000000000059874d3a0e8ad7005f69212e26367b581c2dc43)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1521670: Hash(0x00000000000000000000000002785bece8a0a56d18c8b011b3a92ccead953e6e)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1550821: Hash(0x0000000000000000000000000738cb37f2ee659fb902573126f8285ce53ac3fa)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1606345: Hash(0x00000000000000000000000096b6818ae4f35d3b3f6d5cbb5821eacd8d68caff)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1741857: Hash(0x000000000000000000000000b803b197c20e252ec19613085d2f30dfec1b8b95)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1763603: Hash(0x0000000000000000000000003d4279ab3d7e6a8c504231a595d906d956bd3e90)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1784930: Hash(0x000000000000000000000000c1e0630079a265b352e7681a078611b17c193588)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1948122: Hash(0x0000000000000000000000003498595902f494691cb481530390c4491686d739)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1998396: Hash(0x00000000000000000000000017676242f1b0fbbfdc551e8c5cfee1ce9595c108)", - "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 2010651: Hash(0x0000000000000000000000009cfc63be2802638943c01f120aab87bd8ee4f898)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 8789, Column 0: Field Element(0xef2ccb1c7ef64ec7edd200bebe32005a4acfa094d7cb07fe8c02c5e9f5b116)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 70312: Field Element(0x1c64d1fefac0a5a3789bb72c4759683800ae04e708f0073ed1c0d43e78679e)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 18578, Column 0: Field Element(0x524fa5821faf7b4dbf4a20cea3ebb00171a7568a513566399e02c48fdbe1e31)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 148624: Field Element(0x36553a1c5928fb9466fb7b9f7a195345ded4e59db908488b950d20611eae1a)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 20334, Column 6: Field Element(0x1c85f1628f19a4470888a6d67ed0160f66fe33c63378b8c84aff1634cc20b2b)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 162678: Field Element(0x246e34726914f871b94edf5544038a615dc468f22120451d408ebf6cddb6852)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 21533, Column 5: Field Element(0x42d3bcab6fb372ab1ed1df2e5ea6b3a846f133a3688c2af90347fb3bc2e72d)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 172269: Field Element(0x31475e9bd0ddee349f284275fc7a7d6444e70bec378d60283efcd4df6358058)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 37552, Column 1: Field Element(0x4cc90e2343b61f31e433e4a0ad259bf7209f23de893aa02be09688645e909f6)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 300417: Field Element(0x4a92d4aa37da1bde27a768fcd900f8ffbea1677a57d68cf72c3f1219cca9e0)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 39169, Column 7: Field Element(0x2ca8da659a9aab42453a7366c0d611b09daebaa84681657745b84f50d8ec103)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 313359: Field Element(0x1d094b2ddd2265b2d89384cde8b43508da69006187f3da73c76a07d00d48f90)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 43195, Column 7: Field Element(0x7703f0bed66409dc9f1d4844eedc801d9506b7b59466e2b9ee80be38e2d090e)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 345567: Field Element(0x44559c8a3d1a075f8b3332084c3809e6d0cd731155bfa0d9b03c4d794b84ecf)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 59074, Column 2: Field Element(0x1aeffe546c40c7d6a14e97bf29b338af64be16923c6fd3bb677197f22b56e30)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 472594: Field Element(0x36275f2a5504f85d9dfc556c5b13e0c44043c375847be9cb834482b30977e9)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 59136, Column 6: Field Element(0x57bb75fcb4b543e2e12185eae7495cf1ddfa176ff1b86919af2617ab01814da)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 473094: Field Element(0x491ebad7ddcf486f222dc36869b2f38679a338ac704b9f5b10eaa5a92500a0a)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 62780, Column 5: Field Element(0x3f5dc733c4207e61d18a95d5c025af47be37751d659408e5954c8a6b4825d36)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 502245: Field Element(0x238db84de7ed2198f2c76f88c476a68d227988db6ab42bb7ea5ea7838f2c160)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 69721, Column 1: Field Element(0x11c527d597f0aa875be0d4e8e32674a3a9e3432c2407c833e5d2c9d74b7126f)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 557769: Field Element(0x5afd18f6924066d9c279fd6c656e9b3018acbcabb0e00fd26d722ccc9b8c70e)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 86660, Column 1: Field Element(0x59f4af01ff27b28533145bebce1c6d2e99399247471f86ab13a6b162fed9e48)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 693281: Field Element(0x27e3e9b111976ad132dbe76c6dab63793a1a12fe13f861f844a20a2e3f186a6)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 89378, Column 3: Field Element(0x25fd13429e5c600a6d926200538fffce21305caef5795b49fe8177a87d97bbb)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 715027: Field Element(0x765e821e046ff19e310b24cd9a6b251eeaed8155ca04fd2a0a42685556e7533)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 92044, Column 2: Field Element(0x50248955109fa7b356405f5ffb51d81fbc07299b8a933f1e6841fa2c6ab07b3)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 736354: Field Element(0x115e875789fc1486f3b6e5eee943aa50cbabf2279c7be9f71a42c31167d988f)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 112443, Column 2: Field Element(0xc5e4705e6410e7200c74232cb3f3547f0612c0fce9d58cfc5507d3b1d148d9)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 899546: Field Element(0x150f4ae13d84ace6b92f8f549165e801b1800ac279b8b48eb24973ab5956ab7)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 118727, Column 4: Field Element(0x363f6bb0d92dce229ccfd1c18713c3c2c9b3d9c2cf1878381cd349019657fbd)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 949820: Field Element(0x6b5faed68ce4afa2b35de12fd15eb9d3899ec25fbe3ef825edf7f8ddb4d5df8)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 120259, Column 3: Field Element(0x150c3a30b4fc9ccac4e1995abd69f3716d559df170fb1cda583b2b60f756ca7)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 962075: Field Element(0x183f5f41d6187a83aa4ea01d7dcca4d7e03b1160d28be99995c2e0aad9c3ed5)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 139861: Hash(0x000000000000000000000000b35b5a7f80fde746b91a512a7286dc44dc7fd096)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 149650: Hash(0x0000000000000000000000005c1545bd59c7302d3ac7bfeee37aa85e1e3e0c66)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 151406: Hash(0x0000000000000000000000007a3c8441abcd96063e4bcf299a19fec067e10a75)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 152605: Hash(0x000000000000000000000000801b9e14bea02cc66a56401fe4c64e439db6c4fc)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 168624: Hash(0x0000000000000000000000002a29a4ff1382da788c894af38f5b5ba9faa45719)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 170241: Hash(0x0000000000000000000000009d8cba52d5f6d8ece57a12c9959472fefafd5fff)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 174267: Hash(0x0000000000000000000000000dc807247b074f990054bac66a1608bd5e06b335)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 190146: Hash(0x00000000000000000000000039deb32bbc9841be7ce3fa016d8ddafd30adc97e)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 190208: Hash(0x000000000000000000000000b8977d1900e92bb4ff060fde0a7ea673f0818836)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 193852: Hash(0x0000000000000000000000002cdbb2aa50aa11d5ac858f0f2d1b745a2dbd087d)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 200793: Hash(0x000000000000000000000000ff0d1757829a7cb34b28d6d122c9ab86d816f26e)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 217732: Hash(0x00000000000000000000000007e55a7bccd8ae8578ba5f33236b7775ba73c3c3)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 220450: Hash(0x000000000000000000000000cbcd35a8e2f653ae0458d40a4d7aa6c658099a05)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 223116: Hash(0x0000000000000000000000009bc02c805f80b6d7ead6cc4766d95b59df5c5307)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 243515: Hash(0x000000000000000000000000ec50fa9d6b6ce25e48acecc7707b45898cadf24c)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 249799: Hash(0x00000000000000000000000098f62e0179052eb3358e72aca8b391e1996824f3)", - "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 251331: Hash(0x0000000000000000000000001123cf601c7fc3dfb3ba1786f92a95c48c1c0663)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 1098, Column 5: Field Element(0x2289d60edaa595c1bb9a8f6cdd63bffc51eb46cffaa78be89cf5911e4c2657c)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 8789: Field Element(0x3e7a2f3856b9ee9346c8a3bb4bdace94923f0a61d8414040822657aa033c8f2)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 2322, Column 2: Field Element(0x4b03f300b5f6bdbf07c544ae38041bfef6691c996de1d5627eaae152b44a87a)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 18578: Field Element(0x2feb90f522d95f909c4bad5b18dbb4ac5ce2bbfb42553a40d3551ce0f5d46ca)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 2541, Column 6: Field Element(0x478f59477874d70ebd57ecb4b7df7f88ec8237cbb5596fd15d926a577d05e97)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 20334: Field Element(0x4b177d37837889c2667852221b11ea3446f23bc8e08330499f24bb7c2fa88c9)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 2691, Column 5: Field Element(0x456b3948926201b071193486edf4b32ccbe038ce551a1710eb5c93e7bab4c51)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 21533: Field Element(0x67947770df088df63f31f72ae0a370eb4c427998378eeaae529855d6a9aca4c)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 4694, Column 0: Field Element(0x4afe691834a87f8a8ef025bfa5b0c45bb6e2598546a8959214b587e4da21caf)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 37552: Field Element(0x23406ee541f51f05f5345a20c27d2aed97a5d4bf83fe25df19ce6f2bd1fbe6d)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 4896, Column 1: Field Element(0x14c61b1af933068be69d212a654aac49180612875b6cd42d77f99f2bdf8d2f9)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 39169: Field Element(0x28b9dcf04faa5ed2e5a45075b306fdc525b455df948435cd25738caf897119a)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 5399, Column 3: Field Element(0x98d24dc24fd771fae9763e4efdf01cd233f63f7c7751c5a8c12b402e0f77c1)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 43195: Field Element(0x4f2f2f8629026c095b9608765d1908e60f20146ba9e4357594f8c015702c7db)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 7384, Column 2: Field Element(0x6f32fbcdecefe9baf68c53816b293297ebe5c41e0c6da2b001577968e5440c9)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 59074: Field Element(0x53f042885ff3f222644bbc8851872f1679a8fe7f28de79e374dca27e06f77f6)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 7392, Column 0: Field Element(0x4db0ba4f222107176bfff368da4cff60bcaee3b19e6b53ccce757695f06a583)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 59136: Field Element(0x7766fa7064e761be1d22b3f5315629e28057690bb947b52eacd193e9908253d)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 7847, Column 4: Field Element(0x40589d33f2ae6835932af24db62c9e6837a6f57cfb0e878e5267488679ca253)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 62780: Field Element(0xa827bb677395acb2454c62f6e580cea8f41ecf3873daa834a25e067b11333d)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 8715, Column 1: Field Element(0x7445dcd4f717b626fd7672a71bfb32e3a9ed7a658d49884d73bcfa4bcc0cfc9)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 69721: Field Element(0x84a0f192e14055b6b8c84236f5c676760e3f2888296d1155c1da41cd1210cc)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 10832, Column 4: Field Element(0x1912c8c28c2dc238f413d43f7ba89a9a5b7696bc5e10f2d349ee112cc0f991)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 86660: Field Element(0x678f187493713f2abf1ad85e4a5c4bf8ec7e59ab12e838360f8dc8d51f9986e)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 11172, Column 2: Field Element(0x7f2613cc32d1c071c875e1a6e420632270f20864768ab64fa4bc06c077c4630)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 89378: Field Element(0x3952dece53dc886febd503e41c1daa8dd55c885b2b8ed2106180591c1c5ca6f)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 11505, Column 4: Field Element(0x133080f4ad10691c5f790418219271dea0b23628d545b0abcb92c436421cdef)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 92044: Field Element(0x653ba08a2180b79ae069e0d7040b99fb27481dfdfe44e0b26ee6c34847d9f4)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 14055, Column 3: Field Element(0x5b32ba3ea9c7dfcdcb78332f2c6b4e4d5014d288d9ff915357475c4f559d6d8)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 112443: Field Element(0x29226d02251f6255c0595b009dbc0adf8d0a38aecfef2f44b6ca6e78a485ec7)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 14840, Column 7: Field Element(0x7f44c084d3f028fd7a36a8cecc49290784de996a82a72292b9e0ed0c418bc64)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 118727: Field Element(0x307a053a0caaf7d3beeef1d9c55be1c652ebc47d7d0c1d897b9afbd91651a7d)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 15032, Column 3: Field Element(0x34cae01046752e6758946dab0696528858e99cc9417bf1a31d369e2433357ab)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 120259: Field Element(0x1a158a5f64da898d6be2ce0a608d05de8393ff4161b750ebaf85b93b9de8e70)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 17482: Hash(0x0000000000000000000000006b72f7edbcbd10abe1684b05bf82563d2ac4775c)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 18706: Hash(0x0000000000000000000000002ab9f4a67558aad87b203c05919d591eb49f35f3)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 18925: Hash(0x0000000000000000000000004f0c6861f1140f0167e90fbe82c2b883c37a285d)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 19075: Hash(0x00000000000000000000000040b88cda63bac0e211dea2f23de2e3c274c274eb)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 21078: Hash(0x000000000000000000000000bc957375423e912d83974987afaa68e77d4c076b)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 21280: Hash(0x000000000000000000000000c0686049f1ff3dbbf47ae10140248dbe6cb4e478)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 21783: Hash(0x0000000000000000000000000305f3b60ba4fd94b28f90b1a8452f833009689f)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 23768: Hash(0x000000000000000000000000021c053de6921be3cd3f15aeca47877f66dd9871)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 23776: Hash(0x0000000000000000000000009e2eb1ad734bf7d095cfb46089ef7c1ca45f19ab)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 24231: Hash(0x0000000000000000000000002218e901a6f84b92374823f521a629eb3fc199dc)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 25099: Hash(0x000000000000000000000000e5131e386bbd91db04b0b56e3bdfd19278de75e8)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 27216: Hash(0x000000000000000000000000012f33df92a50f1a733b7cbc13526e4ba01cb684)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 27556: Hash(0x0000000000000000000000006dff8c47ae20c09b9445f192d87f49412d68c3d2)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 27889: Hash(0x00000000000000000000000029e9cccdfc265e90511783e8708464b4a215eccb)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 30439: Hash(0x000000000000000000000000c68d97b61ad89ce6428e8f9ccce42fe842af8eba)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 31224: Hash(0x000000000000000000000000a13b6c313437c6bcf066256719239707ed5d7b59)", - "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 31416: Hash(0x0000000000000000000000001152f069be99711744db492fa5c0807505a8b096)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 137, Column 2: Field Element(0x6846e9b5d57a12d2f970f28347c85f889092e33d8a46a7792c2af51c0c41562)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 1098: Field Element(0x450c2cbb32af02e37472b51ef8861d509b8005bf8d8095fc9ac271abc0d4696)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 290, Column 2: Field Element(0x44a661af62d9263dda5ad351c8ad48d61ba962233a42e5afe8cda0aaf5f296b)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 2322: Field Element(0x78a7cc228ed1a266b42b69f7a68741a0f3d9434759da1369c16348ced743bf0)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 317, Column 5: Field Element(0x32b6135af79e111a4ae079112542c0ffb932ab0eee51622e5141083a2a3ae9e)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 2541: Field Element(0x8d0afd09bc59e05ca6deb09503553331d3724d97df9272d027e6baf01aa901)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 336, Column 3: Field Element(0x4d5c6a1b57a556e900565dde3516c9cb8e272b31e9b6693203b8a0abea49fc9)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 2691: Field Element(0x3e06b28e46910b04bdbfc5bc29c02f06dcc54b46932da2e1641d1847d5d5e04)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 586, Column 6: Field Element(0x718903ef36f22d0da3c3163f7a7b28f142cf6dfe03eab1dfdb90a95c71327b0)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 4694: Field Element(0x485bc10ab69b2163d04d6692e22431e83af1d445e99dd7aaa1c057d5eb5761d)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 612, Column 0: Field Element(0x252a59b9797b89798b018e07b134985c32ee881ea33e65944044fedd13418b9)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 4896: Field Element(0x51abf3da708ae9309b2b39dd64a6d0bc7d7fe08041cf495b6f8efcd81779e8b)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 674, Column 7: Field Element(0x38377aa7c8d2f8efdcdd98f640f7a37ed2f3c541fd70898a54d284833895b2a)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 5399: Field Element(0x1d8d04b5c50d2d8e74e5c1fc15c0cf694dc1dfb88833806e4a27e3b0e718e64)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 923, Column 0: Field Element(0x709f9cb541d9503a26ead7b2774a6d7f0bff44f5ae9fcc9c7783eed2b5d141)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 7384: Field Element(0x11f1b6fcea626316f15b2984262a907e0066ad2c16d066eef41ed14b7bd73c9)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 924, Column 0: Field Element(0x5fc370c546845ff3182723772f0b3d3269f8a2a54d66aaf9119efcbce09722f)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 7392: Field Element(0x62ecb6f0ef80dbe0b3d22b57e7d4c83d184e79625c93a20ab21e34f0fb139db)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 980, Column 7: Field Element(0x3b57005a99bd86ba3ac03801c73d8b216a230bae0cdcdff1c22144116249784)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 7847: Field Element(0x4f442f7bf1acb1229e41092b6c6a9a285f71096282c7e1cdf55e7014a8f3c1f)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1089, Column 3: Field Element(0x20c69a9d6eb41d39dadd8f3abe036074fcf68d4e53f9d8fcc0797d59daf1e99)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 8715: Field Element(0x6f3a51400de7553aa7369ad7b893b4a57812907a82d20001d43d1d5171603d8)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1354, Column 0: Field Element(0x361eaec285ab3ed8dff1223c9f5b3409f4f25c73fce340b9d1852384d898f5a)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 10832: Field Element(0x23d18e689ba10b9fe89d2c428d3c2d505b8e8b4215da08fa0915afeadc58852)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1396, Column 4: Field Element(0x10aad39e4a8fcd76aca387e9aa3bf57aa288335b951cb9103e06534f184bdec)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 11172: Field Element(0x732f59b6d1940d8ac46ccbf324c032b93b0e3e74e9517dcec5269621b895a85)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1438, Column 1: Field Element(0x45876411be00adf24499abf69d12b5d5c82579330124df6944d9f888c7d333)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 11505: Field Element(0x1eef2d8644747743d83f0f5f82a34a7945e7b61ccca0ca900e279dec49c198)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1756, Column 7: Field Element(0x6648a8334b93c4653b1f9e38e38d619983ec84218e37fee0432a76810aeeea8)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 14055: Field Element(0x51b22acff27bdfb523681afa18da00c07b45e0deac40fc5eeec750d1a384bca)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1855, Column 0: Field Element(0x4d4de3c5b72663587b34129e2516d7c9db005dce6152595ff21e8b1b6ee7722)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 14840: Field Element(0xcc98a67cc75d742bd5fc9c0df50c270a9a6a9cb85fa1b3a7d2798506310b58)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1879, Column 0: Field Element(0x4acdba45f2a027fc322523a4e983e2896761a5a636faaaf7cf682df0b96e10a)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 15032: Field Element(0x4f7d67bb8ac23a9bac09dfd35fea814ff669ad51315765628f7f01f25003721)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2185: Hash(0x000000000000000000000000a2c10c01894e2fc450efeb894c20b8d916cd070d)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2338: Hash(0x000000000000000000000000655c5346000c33f885c61d90374d219e038d725d)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2365: Hash(0x000000000000000000000000a827c0c5909e3b39dbd103808cd8dfbc5a11efe8)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2384: Hash(0x000000000000000000000000a4d2b5c9938fe2fa55f113bda10a35bbacec89d3)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2634: Hash(0x0000000000000000000000005507f3d5c1b1d336209fd3ed9619b709d21d1045)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2660: Hash(0x0000000000000000000000007c51c78f072dc023bfcf43944624a411bdbf0a19)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2722: Hash(0x000000000000000000000000a920de4adc953dc883eb9e990d6113bd1c561c4b)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2971: Hash(0x0000000000000000000000004e5be86f09f610a0f9d025053acb8e8bbdc0a1da)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2972: Hash(0x000000000000000000000000f9f80c760743f9b5fb15960bee8e5c8083e563b6)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3028: Hash(0x00000000000000000000000044093bc2e717d95ae28e0d3fc0779213855450d9)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3137: Hash(0x0000000000000000000000001e4c4dae7281304c5321a99ed70c772ecc9297e3)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3402: Hash(0x000000000000000000000000808c9c6337ade59af54b4b35656c0665ab99820d)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3444: Hash(0x000000000000000000000000ed140660235f8b59e1002cb124bd485600c1f460)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3486: Hash(0x000000000000000000000000b35354d34374ba1901a83d022cf555bf94fd3a2e)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3804: Hash(0x000000000000000000000000d61f4a21af9b82f339de966f7a06596840495f43)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3903: Hash(0x0000000000000000000000005fb85debefb6a14f9db590cdfc1f84ca12782107)", - "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3927: Hash(0x000000000000000000000000327f7653cadcb96a24eabdecbf47f84a30e15218)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 137, Column 0: Field Element(0x3b8b74b25c036e43f21e10e68a645105910625fe3e4b2eead8cf0f1dc2fdb66)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 137: Field Element(0x1ef4c94fc363d589dc78f2dbea7f6831ed1ccd85f172353963550d98c745308)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 290, Column 0: Field Element(0x22072f0b1d2f541a416406f1833d56cfcd9ea98e353ecf8602e452e72a0f25e)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 290: Field Element(0x2d8fa1380dee5b040a0532701b7290c9a427069967c247db50621302f864a58)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 317, Column 0: Field Element(0x4ee038326152a91ab4384606d80e5553e72f4927994bde925bafb901466f7aa)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 317: Field Element(0x6c34fe5e39698d3cfa9bc1754170e32fcfa844996a822d6021d9448bf4c73e7)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 336, Column 0: Field Element(0x4c22535f4137ac66d4cb47120e8dfbf643dc962d5fe7f58c79bc4f232693a1f)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 336: Field Element(0x3e25fe273f9ef9d3d33a49709d19567029f88bc2cea501f882b2da8db5ff5a9)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 586, Column 0: Field Element(0x71162e38154f553f8044b96309831aebba309c164df41613a7d25702e4e95a2)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 586: Field Element(0x5f422c64c869540c23f986a8321245ce7a754bc34dbd2e1a90ab2c24b75f7ed)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 612, Column 0: Field Element(0x24f5c6ee91debbd43f57dc38683e7cef54788b35dc7d24ffa7e7ff0128fb75c)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 612: Field Element(0x6dec23ad59135b3cbd0df035b050afed6e74351b2724f951f8709aa013740a9)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 674, Column 0: Field Element(0x27c6b87d250ebe6462b8bddecbad3c13dd91687bd56a383d9af9cbc57dcf752)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 674: Field Element(0x384c5ceb85340282debd6ddef508f591285c5ce6ca0a18e5b91ae34955ca580)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 923, Column 0: Field Element(0x1c6be4caf31c05a78479ba3ba38c4777302e07a719cf492a4032ba4a3fc819)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 923: Field Element(0x34b354fa7c4ca583f253eb3771e0604970aace8242c101be7253c486cfe6545)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 924, Column 0: Field Element(0x5d3de49b4e869b0b7d00d680dd08dd5bb237fb8bd4fe3b1c6a324b5058d8145)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 924: Field Element(0xd1f384778e0e0f3883669bce2e8c9b28e2e5e59f8f32cd84b8753c1ecde283)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 980, Column 0: Field Element(0x1221797986150e6e884c314616e5d6f34fbb9497e72e9572e1fbcd736280c32)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 980: Field Element(0x34d99adbcf272001da39b3c7bef9e2e3da432e4439d6e6cc5dfbe1d2f7f4e7c)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1089, Column 0: Field Element(0x2fc694dd4a0fa29862cca7c01db6911d434241040fe978b4595c55240b46679)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1089: Field Element(0x7ff9189dfe1a3acf851115674a1b78ec0efafcdbdc3e76b873255513f0d06df)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1354, Column 0: Field Element(0x1f95d42f6db3724ecb3567f0b2a6a010bc199b3841e59824b58cbc819ff5ef4)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1354: Field Element(0x6126dd40f8df969dec6027e9b008d7574811544af8ceb023e615493a96b8559)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1396, Column 0: Field Element(0x64f8315e4b4e8666838650ffa355712c6332142bc1e78a54894f4122f0c26d6)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1396: Field Element(0x758d8e2280d04252107967fda68113ad0bc29a2ddeca1ed69cceeb3e6abe9c1)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1438, Column 0: Field Element(0x5b6dc345720eea37c80056b6010924d04618307f0d1259ce9611c1c05c8dcf3)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1438: Field Element(0x429dbecea441deec451cf3d1b903ce4fdb5f7115c7f9c020b786f3e9c1e102c)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1756, Column 0: Field Element(0x228ef6776bd593a668d9f999115221104717c6bd8a4eedec3a947ceb3978ce7)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1756: Field Element(0x3aa3a80a95a25994adc82ddcbfaf5e300d9bb7f7ea153a357994fe215652b99)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1855, Column 0: Field Element(0x4aaa08d854c4514553245b0d6ec75f46680380f09f396a2a171515d82dbc3f2)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1855: Field Element(0x7e99cbba32ddd7b8fff9afcdd9316d880b29da3e476c315145e72fa6fd5811d)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1879, Column 0: Field Element(0x2181cb8e64e6a4c54ff12791cddd7954e288810068929c943dba4a3e6c6de01)", - "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1879: Field Element(0x2a2ada099aae8f897c6f48b25c542b6688d8e0bb59c08f5b7c96abeec4b5fe9)" + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16778573: Hash(0x00000000000000000000000024976f3c39f970999e1c9c11900adf50f33b91a3)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 16933390: Hash(0x000000000000000000000000253939c13f55b2ffe3cc671d046cce646b64853d)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 17104648: Hash(0x000000000000000000000000ce6056fdc10ac147a872393ad209e4bb4f3de90a)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 19013419: Hash(0x0000000000000000000000005e599acd646f36d1676541f719e58322086ed440)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 22871006: Hash(0x000000000000000000000000b7d0cb853c54a88bce0e0e6c82fec3d827b4451a)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23099427: Hash(0x0000000000000000000000007ab8bc2181360ff5d3cd2daff084440c4693887a)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 23403655: Hash(0x00000000000000000000000034e009a5a8620f64903b0664e92bcd354a49e6db)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 24128237: Hash(0x000000000000000000000000d219d0af6a0c17ec0f88aa0d5d6c8c3b7c2339a3)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 26356431: Hash(0x000000000000000000000000a9da9f39287f827301054060b7cbeb3806fc9015)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 26989761: Hash(0x0000000000000000000000009f66bef3fc51ef159cf0238235d4f1771a16aa48)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 27844599: Hash(0x00000000000000000000000000e293af96e5ee80603d901087b5735be0f38647)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28490292: Hash(0x000000000000000000000000efd8dcd9361a723cf3b5b6dd93ca3da8c36a1815)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 28852327: Hash(0x0000000000000000000000001610e5c3df97eaf2d7a0f1278e036c961bb1fd5c)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30374014: Hash(0x000000000000000000000000fe14610757216c5e1ee710fe23339da346a12072)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30523415: Hash(0x00000000000000000000000081cfc1c672a413a83390aed91ea333ea27aca91d)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 30772604: Hash(0x000000000000000000000000cec37bcf9441043a328963c67630e2eee8cd0ef8)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 0: For node 31525314: Hash(0x0000000000000000000000003f9577f66f989757d3f6ef543cd562ae4332e369)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16778573: Hash(0x00000000000000000000000079d108a3f64d789453bf2009d15d499188501621)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 16933390: Hash(0x000000000000000000000000c7a91d80acedd31f070c66df0389ca154de8a1f0)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 17104648: Hash(0x000000000000000000000000a7de8504db0effaa5d688a9a99fd3716db237a7c)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 19013419: Hash(0x00000000000000000000000007901d83a39ee7f4f671e9e2ee743f0a19477a52)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 22871006: Hash(0x00000000000000000000000086753d8b956dba4acd418900e94a1b4a4f60e1a5)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23099427: Hash(0x0000000000000000000000000b49e9ca22fd6ef3e5ab933d5a9894055166cbfb)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 23403655: Hash(0x00000000000000000000000058402ac78d3f758ac3b835975a5840cc66b4e27b)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 24128237: Hash(0x000000000000000000000000f5d1b7e24a046ae8d46f61905cf0464aa33e6336)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 26356431: Hash(0x0000000000000000000000001f8b184ca185c1f99dd16d443dc9bbd53767d011)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 26989761: Hash(0x000000000000000000000000157170b8fb57117312723f006e0e4b178a981916)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 27844599: Hash(0x00000000000000000000000004b5c38274ae93dca5790a651053b9794f383f9c)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28490292: Hash(0x0000000000000000000000000737c2cabfcdac68fd0ea3b5a109be45c432c649)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 28852327: Hash(0x0000000000000000000000005f7320bee5112f74e7ca1f7caffb5ab9a76ae44d)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30374014: Hash(0x000000000000000000000000771ca8111c133e4997db5d977ac376b95ccc5e5f)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30523415: Hash(0x000000000000000000000000e84726a166c6390fcf29f733d308c367c0d80585)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 30772604: Hash(0x00000000000000000000000037362003bdad987d5c2127deff6c8f144bf34c37)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 1: For node 31525314: Hash(0x000000000000000000000000a5db17872510de69c5fdd2fda18fd251448357d4)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16778573: Hash(0x000000000000000000000000c85d304d15177266bb9cd60f9e0c87a418ef0a25)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 16933390: Hash(0x000000000000000000000000b3266a6328674b517a9ace69581452c5344b1770)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 17104648: Hash(0x000000000000000000000000e36437c0fd6fb681942f86b97e593b77890b099e)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 19013419: Hash(0x000000000000000000000000a0d512a33000d23adf25b42c972e968423102e35)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 22871006: Hash(0x000000000000000000000000dc542113b287b67eee709e21427fa46536e3ac31)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23099427: Hash(0x00000000000000000000000026704a447ff1cdd3bf05f31b93a24ae8d5db0cd4)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 23403655: Hash(0x000000000000000000000000e327f1fadf246ae86d70268748e4911a602a9f15)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 24128237: Hash(0x000000000000000000000000d3980437720b0743222fffa285594c5f1ef17d3b)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 26356431: Hash(0x000000000000000000000000b09181ad866cb586405c588b26639e3ffa2dde70)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 26989761: Hash(0x0000000000000000000000000f9bf7ebbce14ed0518be234f06f50a466a2832b)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 27844599: Hash(0x00000000000000000000000039f5fb5089443bbc842f0862c9e7b6f20b1e716c)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28490292: Hash(0x00000000000000000000000082a5e23ea01592e453bf74452f4c6fecf70a5c91)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 28852327: Hash(0x000000000000000000000000580b74f9b4ccc837783e62873e866d081b0194b2)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30374014: Hash(0x000000000000000000000000010ef34a1eb4b4f240a7a0d824fcaedf24524d80)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30523415: Hash(0x0000000000000000000000002af8c2097db46a234a5ae289461714e04b7c4526)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 30772604: Hash(0x0000000000000000000000009e6db3c124e6fd64f1b684ee7ac8ba00a53239e9)", + "/cpu air/STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2: For node 31525314: Hash(0x000000000000000000000000270c17a05004cb4fee3629828dc36b13e072b4f8)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 84, Column 13: Field Element(0x1e6af5d4053c457520d3b6af16160e97660926ddbc7291233a92714ba54186)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 1357: Field Element(0x13fdb379a8f8f661c48acc91eca6449368bc1a0ee4b0a55ca5af1915afd76cd)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 9760, Column 14: Field Element(0x26de4af811b330a20a6930639b421b1e5d95d97bac5cf640bcfbb9f79df1d1)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 156174: Field Element(0x5b12412efc83a5f294183f36ce35fc8ed4da4250c12588f9af53c4b05a4a62f)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 20464, Column 8: Field Element(0x48a7ed0463c5af13631b23f701cd43ac19eeb993f7d6e60f587d4d962503431)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 327432: Field Element(0x6ba55c40b823fad6251fd8f9e0973f143c6da9fbf4c98d76d2b2fb67db3ec91)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 139762, Column 11: Field Element(0x70caa4eee62a43b9316859ee4dc6a73bcfa9b6a4cb7dbf3d825cf170c9a307b)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 2236203: Field Element(0x7b7c1affea39a117422e709335e6da9aaa30c079c7e9054ef4ca585e557a442)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 380861, Column 14: Field Element(0x40353edc463b36acab978fe2d8345649ed0e26cd514f30bf6a630bad04aac38)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 6093790: Field Element(0x5afc29310a5bbfa4ccbc7e6a8de0e7fd35aeea46dbb080908e299cf906665f7)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 395138, Column 3: Field Element(0x17d963e84571a81c8268d254cb91e5e095e5ce9201820e2ce2194a38f70f182)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 6322211: Field Element(0x70d5e3bbbb9ec02d2b9890b8d929638a71251d5db25ed5e1fbf72d04ebd1361)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 414152, Column 7: Field Element(0x72fbb26c57e76a3e1ce5412fdd9e60ef1662898fb90c8a27dfccce57c5fb04d)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 6626439: Field Element(0x1bb99daca4ae94b40d23c62d517fb10b4e0db7a62b8617910d0eba1d2c9f82a)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 459438, Column 13: Field Element(0x54eecccfb574e9d099c04b9cc065842bdf130eefc659e5d65ec4222f6a2de49)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 7351021: Field Element(0x606601c17ef552152248e83f48dde7eb8eda914f63f5c0ba5a978b48c22bb89)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 598700, Column 15: Field Element(0x663927ff51871cc1681ccd7c0b7a669a39df9617dc53eb471ac04b5b990f4d)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 9579215: Field Element(0x5e330be8f36777e9eca991b6dcb9399f0eb356ca927953e636b70cc1340cbb6)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 638284, Column 1: Field Element(0x40aab3d392aef5b74fa16370fd6e978a852a9a10e9f6b8fa6448d0355b9bea0)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 10212545: Field Element(0x7f2f0b1472b8ae08475c1a24484a4948abc2f837b97eaae5090f7c0709c473b)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 691711, Column 7: Field Element(0x1230f7dd39084b33bd53d8e685ebc67047d4dd9a2e2c56ec249eeb65deddf20)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 11067383: Field Element(0x653bd4bc70aa5674bff69c1113808c82e7b3e27adf3627ff96b4986f0320352)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 732067, Column 4: Field Element(0x158759019e8bd19b3b6aa88367163cb59f3434330484c227bbec278bbe3beab)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 11713076: Field Element(0x29ea939ce98651496a425eab1ea40c1ef48562ab28cc528e220544937598311)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 754694, Column 7: Field Element(0x354e59ad304e229f09ddffdf0a41d4e2c103e7a61f2f0f89c6e3a3597b2f054)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 12075111: Field Element(0x5f1d955819f176995268671629684f0d6157ef684cc5c68857a1530c0c5824c)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 849799, Column 14: Field Element(0x4515aa18c1798ecd20e237015c829c77f3e361bf39e63b565bf6c7eba1c3a98)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 13596798: Field Element(0x5f5b333106f538b5f5960e046e93379945550602a9b6caccd1aecff773679a3)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 859137, Column 7: Field Element(0x7237586d2b68682c7ae08a1cb047449d779ee9fbfbc364318cbd41234ccf544)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 13746199: Field Element(0x3b939f311fabdb730970db81c13a121c75272690a42c0b707c1d6a276434940)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 874711, Column 12: Field Element(0x65cd3e4204d397b864bf29108f08a5196104177f20ac07093ec207f449fc97c)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 13995388: Field Element(0x3f6ef2c47c1e512026684ef4f2bdeff6aebbc7d895076c735b666311ea2ecc9)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: Row 921756, Column 2: Field Element(0x4478c67b2135a2f4b174ea943b9eb4a95389e937d55efbdba3dfba85956eb76)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: xInv for index 14748098: Field Element(0x1892ea72973ef33fe876ea0d38e1bbacd1c19a5f7547522f8d091085f70ca11)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1048660: Hash(0x000000000000000000000000b4a26dd50dc5c5086fb1609f9adb8b68eb36769c)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1058336: Hash(0x000000000000000000000000708831cea41bb190f5cbb1ede5ab011aebe62efb)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1069040: Hash(0x00000000000000000000000063403cec260819b5ffcfca947c743f606b1a09ad)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1188338: Hash(0x0000000000000000000000008f61dfdf6820b92fac4523d12a0d42e603056817)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1429437: Hash(0x00000000000000000000000075320e8d6e4a0fc2d7636a26088cf4e3b6456cd9)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1443714: Hash(0x000000000000000000000000915e7dbda04361ac6dce092d126d110c2d52015f)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1462728: Hash(0x000000000000000000000000b7f87cef4cc6326f7919ad8b6638e61cd305ef00)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1508014: Hash(0x000000000000000000000000efe8fb0f665a99ceb8f7591e45a9ce810cacbbcc)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1647276: Hash(0x000000000000000000000000578d434f54c5b17c1ccf2abd28930784061c907e)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1686860: Hash(0x000000000000000000000000be1be736e7adbe4c9cc355eab3edead51acb372f)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1740287: Hash(0x00000000000000000000000085a86eb171723d9927047fa174b13587add6fc33)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1780643: Hash(0x0000000000000000000000002e32b5f81cbcbef10836994443a9fc5c28cf91cc)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1803270: Hash(0x00000000000000000000000020dcd9018cad75d30d41cb951459f16b65b75457)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1898375: Hash(0x000000000000000000000000ec45bd5a3d7cb2377fd13bec81e9a97b32650b3c)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1907713: Hash(0x000000000000000000000000a7e7fbdbd628afaf9675303559d4d0b76230635a)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1923287: Hash(0x00000000000000000000000017608cf832e2b4d5f64ba51f9b620ee99b189ef0)", + "/cpu air/STARK/FRI/Decommitment/Layer 1: For node 1970332: Hash(0x00000000000000000000000074897244cf60c4ce18262957dd386a83eae6a122)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 10, Column 4: Field Element(0x303002a4e72ca6a3945991c61c8cfe04b7dbafc2279bf074d7bd91c6942e16e)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 84: Field Element(0x1264420ea68c7cae9f4bde0c56392ee54c89c8dbd26e56a3e329534394e3791)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 1220, Column 0: Field Element(0x1dec3935185d16fc0d86ce90b3c7fbc787957bb5882d43fc4d69222e8f4406d)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 9760: Field Element(0x388723097461485dac50b93a5d82fe7face388385ec0f1ae4b2e2dadb9880b0)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 2558, Column 0: Field Element(0x4e092a317e8118b36734c331b4b4cd142f66912ebdb47316284e87399caf231)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 20464: Field Element(0x488b5d06e99c38120744c43127913b956611f628ea5d3fec26f8376b6a5a202)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 17470, Column 2: Field Element(0x2035a39aba8f0d3b62387e401dbcee01f43194ee616bb19bb0c313db3f39fa)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 139762: Field Element(0x29a8d87b5776b404895c45be3259921cb5049aa23c51fed73a75f59a4392909)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 47607, Column 5: Field Element(0x4edc9c5a0f5f71cdcf2ec7e424f16a80d65d7b98bf2b600abf7e9ab3cfd8633)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 380861: Field Element(0x1abf9effd4d3ec8043b31790727b05aea450aceebdab9f2f507bc559c55ec2e)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 49392, Column 2: Field Element(0x2f1f72cf5319f2b23f5025c0515b0e9a5574ae24534059f1f587eef29c6f42d)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 395138: Field Element(0x640e7a0f3133cfa951f77df61b62c2acd51939fd5093b15a1e89326acc5c5fd)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 51769, Column 0: Field Element(0x1d222299829aee5bd77c630cc814f6a84390a6fa021bd5aa4b212c0dc96316e)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 414152: Field Element(0x7be2eccd8b6730b5e5937707a6f2407284e3044b5039662c89dd16181771f5a)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 57429, Column 6: Field Element(0xc12e5f084c8dde152d421784414655effd91bc97dd6f2b728c34093cb4eddf)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 459438: Field Element(0x7475dc10abd4a9e7904b7ad5fc882a3742d3c0aef80a9d804d04f8c4797b45)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 74837, Column 4: Field Element(0x7ecab77c778a0e49a665a9b5a61105472b977aa143034df9624a758d44cb73e)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 598700: Field Element(0xdce811f953ba21016b50d0fba779fb10cef71e640382fa48c37fecc37602d4)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 79785, Column 4: Field Element(0x3857dac697c6bafc6ca1a49d16787a4d9e3be022e14220c0c6f422c3f925d15)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 638284: Field Element(0x473a96d21925eeec0924473bb46af1f682ebd41f2760ccf38b7886980fdead5)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 86463, Column 7: Field Element(0x4e78d069791d9b04138d3a0f7d61cacfc39c2dcd245505ff6759d26b8452cd5)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 691711: Field Element(0x12469f222f246717808f4f40902ffc2a914cde4b8ca0b2648315c6050cd69f3)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 91508, Column 3: Field Element(0x431569866d89da0dc1124c5e2aead354b58e4dfa3cd94c06eeae1ba4c04c4cb)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 732067: Field Element(0x6a7259319db001af993748f1fff647895c8a49fdfb1a699928bd0e7fd67f9ff)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 94336, Column 6: Field Element(0x5ce1f5bdc89aadf9970d2a847120a3ae5fca2efa921ec04de494eaee64e5b9f)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 754694: Field Element(0x71e4c5ec3991f6d54405064c1f94f6ae2ae14691f0c3d6088c0ae998a3ceee3)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 106224, Column 7: Field Element(0x2360c81b217d2f3be9d1ffdca259535ac1b6b31100b3916981fda8b2ef9b7ae)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 849799: Field Element(0x94504b48d1f98d2d5a54137fb21c72b8b41cd302b97c6e79f67502a7ae04c1)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 107392, Column 1: Field Element(0x139304c9ca8b4419dc98db37badafec90a3078fd47ebd5543ca17efff6a2c73)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 859137: Field Element(0x2ecabe3e043f0e4c409b8c0d0847a9a2f91d9600447561e43de7d6a25e270a1)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 109338, Column 7: Field Element(0x26f76d83f30204c94baa8a54a47c4e996febef6558bf0f8e203249c3e9699ef)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 874711: Field Element(0x18a2e8a4bf2d72c4df40c28eb9f9aecdbc23dc08804f2ca5722456d1673165f)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: Row 115219, Column 4: Field Element(0x690026f43aec1ef1d8de337b4b146480c89a06baa4f9033f585d9f79c1274a2)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: xInv for index 921756: Field Element(0x5fb14dc2f1ec2815440aabaaba2458d44db3e6c180b9cc6ff2ea2c06de81e28)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 131082: Hash(0x000000000000000000000000b350db3e4d6cadcde20663ab39655f55276e97bf)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 132292: Hash(0x0000000000000000000000009a6e0bb0fda0a88122239decf5bd38f0945f6c32)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 133630: Hash(0x00000000000000000000000008561b0c0bd7b1d1d1fe84813f82b97bbca79f0a)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 148542: Hash(0x00000000000000000000000089fc47ffaa87de87cae7a58aad0a05d85a7f828e)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 178679: Hash(0x000000000000000000000000365bc87ea8515c3df737930143d7528c421656b3)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 180464: Hash(0x0000000000000000000000006c81d5467c2a6559bca1439564a83304fc194bbb)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 182841: Hash(0x0000000000000000000000008cf0e16a8badf3427f13e9c36498a9d011d75d64)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 188501: Hash(0x000000000000000000000000fef75b2c3ddc76db142089ca6f390a1ff308c4e6)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 205909: Hash(0x0000000000000000000000000ac65b7315905c6b34fb2b49ff0b91d2af949ae4)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 210857: Hash(0x000000000000000000000000c2cddbe27922eb3fc0ac9e0e2039aed2bc83cd35)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 217535: Hash(0x0000000000000000000000000fc60c9d7f29475ae4dc68141c0221dfdc476945)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 222580: Hash(0x0000000000000000000000007cd9fbbb54e91006e6b80f2b27a3c78feecf49ae)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 225408: Hash(0x000000000000000000000000f1320d29ac3c3f42ec09c5f07966bb7c3ec4c601)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 237296: Hash(0x000000000000000000000000f7a6691aa70cb0d792708981a57ab661d4860061)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 238464: Hash(0x00000000000000000000000091573e503593d4d95ed9577a3ef4e265b9684fd4)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 240410: Hash(0x000000000000000000000000dd5a8b23103a88e038b7dcaf7ce3ff6f87e122f4)", + "/cpu air/STARK/FRI/Decommitment/Layer 2: For node 246291: Hash(0x00000000000000000000000040e06589a4b9b4538938e5fae72151c8f3f0c7cb)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 1, Column 2: Field Element(0x14310f1e80854a4cb6a452f69a2e919e587860e3d6057e4136389c5511762a4)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 10: Field Element(0x7f4ab8a6173b92fda7237f0f6e190c41c78777feabad31a0f35f63161a8e0af)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 152, Column 4: Field Element(0x38511fb5c0be7a8e7bf5d34e9720445f4cab38d147cd2046864dfddf7af98e4)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 1220: Field Element(0x1bccefde1688ca09700af95ab2028b86ab36b66def7eeaea3b87a26ab949468)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 319, Column 6: Field Element(0x4da741ed153261c1624e4397a58b03a746882a4ddd30701f5dd0c7fcc5180c6)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 2558: Field Element(0xb6589994a857272707d4be9f8222a8d1b085794c161dd7212a2264aaa0af13)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 2183, Column 6: Field Element(0x35572a3b979e43089daed8c99f49391b5f2c0942332bedbfdd12f9621ce63d5)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 17470: Field Element(0x4babb436a29e022234ce28c8035968101002187f9961f95b0251c5e9e274084)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 5950, Column 7: Field Element(0x3768739edd3124940b660aa3f231464755e77d258c0311a9f43d107c1c73599)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 47607: Field Element(0x5c3f72584da075534007e671f77e564761fe3f17defa28fdf97a4dd04ac56bb)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 6174, Column 0: Field Element(0x50a5f28e834d43bbd131e724cd73a80f352545ddaf155cada8406ec614570cf)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 49392: Field Element(0x56b6c211967230aa89f618c14bfcac2b873b0a7a5087c3e0a09d0ece7069f17)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 6471, Column 1: Field Element(0x260d6f631c36018a854e98482c0a07b313755915acff018432f31b1f42e1081)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 51769: Field Element(0x5d17a8d7dd18f28557a4f129d295070a96c57cbdc3ab71c11208fa103b65ffa)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 7178, Column 5: Field Element(0x2f7714e3d0ca6e2785b63fe701fcdf8bc790352492526263dcf12172c9c3871)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 57429: Field Element(0x1d2a14c3d356d0e94e7d36a11a6ef9b3156825f62b1b531252ba147c75853ff)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 9354, Column 5: Field Element(0x3c6b310e0199465510cd11224c6ec13b7ba7ff12c80a9860cf534b0c2bbe66f)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 74837: Field Element(0x54bea468807d343aaba9cc3b5aaa3b1cd572bef452806e1caa02d7fdbe7896d)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 9973, Column 1: Field Element(0x794267c074b71d7152fc552a93807b19ec0cea770dcc68c1c5a5cee3f131132)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 79785: Field Element(0x4d64bc7d8cee2f5d195a9a3b5c01389e9327028c33d7b7c3fabb8de84a3b9bf)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 10807, Column 7: Field Element(0x112e95ed55c2fa0b913b243899a92bd46381d84ee010f9d38b15e89eaf68035)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 86463: Field Element(0x6dec9539862b7c68f1eace9dceee0c1c69961dcb205389fae525810d0ac03f6)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 11438, Column 4: Field Element(0x62717728e2301f9a298dad458de62702d0951ef4b1042d9254e46a7047c9d19)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 91508: Field Element(0x1ca5636e01a08a1bf1dbc7f94167d2803cce626d13b0f7f294156f1145d7d28)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 11792, Column 0: Field Element(0x2f6e41c63c3d16c2cd8a8806e7fbdc21749ed13425cc95fab3c048418573487)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 94336: Field Element(0x3d252db1e9d8dc879e58fa0edfae3d372740016644dde0a5917b6e0d0ac6936)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 13278, Column 0: Field Element(0x7f3a33594a9db729518aa1050634daaa290d8f1748f87b82b7a7d6f236252dd)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 106224: Field Element(0xbefd96f7c173b0f25b935bfa979b0fc94c02ef7fc4ae51c8912b01612ea175)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 13424, Column 0: Field Element(0x4f891a70741868060ecb4eabbfe4e9b3025c3f38d38a7e99957a51fd389b334)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 107392: Field Element(0x34c222521449c3d073c68a92fae7eb2467ea1bca7b0f6a3180c44a79dfbb760)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 13667, Column 2: Field Element(0x3a13d2a5210af5ec565810c069506703afac36d05b25a931e02bad4f7b41a6a)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 109338: Field Element(0x2b00017f2a0929c22e494727d90f841cd668d92e14aa29707bb0d103e5ec28c)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: Row 14402, Column 3: Field Element(0x1f9eda89a4acd0919c186cfd0aa044abdfd44bf65b504cbbd52bf0fa18eb324)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: xInv for index 115219: Field Element(0x1b9bfaec91d57998225698015e35d06d7151b64fcc034688d64b753b23a9a34)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 16385: Hash(0x000000000000000000000000f23042ddaa101c78549ef68aa0752601b6351a40)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 16536: Hash(0x000000000000000000000000677f8543729a6a4dadc94c023d59168c001fd199)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 16703: Hash(0x000000000000000000000000d697384e6efa297bbbfd72904fbbace1c81e262e)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 18567: Hash(0x00000000000000000000000059d1775a2749475d5ed2f8bb97b4ea61a1fe7890)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 22334: Hash(0x000000000000000000000000409f51b62ed0c4f6de49b332986000168eec7c3f)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 22558: Hash(0x0000000000000000000000002d06a63f58f6f8ed6e49fd6514bc57aecacb2711)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 22855: Hash(0x000000000000000000000000d06af062f011878d3fb291ec94915a6b12c74743)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 23562: Hash(0x00000000000000000000000033c4af4ea5299baab7035064f03c58bae18644ed)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 25738: Hash(0x000000000000000000000000564b8c841a65dd020b683199ff6090bf153188ca)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 26357: Hash(0x000000000000000000000000e2611999c26326369e39a3e0b6de771044b7d81b)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 27191: Hash(0x00000000000000000000000080d6bd2599238a4be55e980fb8c507489bae3c2f)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 27822: Hash(0x000000000000000000000000175e98d119ce6f5f8a7658c4b68eb1bc0b3ed8e6)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 28176: Hash(0x00000000000000000000000005642f7d058a0a0bc511ffcf4dfa6b65fe41e87f)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 29662: Hash(0x000000000000000000000000936bfc0e9e7b7516a65d4cecf503e03477d60ee5)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 29808: Hash(0x0000000000000000000000003908d37d7914ed5e2f5c4d1719a6d6676a72869d)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 30051: Hash(0x00000000000000000000000015ccf29d3bd5ad342327ee51f244de166b44f926)", + "/cpu air/STARK/FRI/Decommitment/Layer 3: For node 30786: Hash(0x0000000000000000000000007e9758d41b6bd7d826582de0ade43e56d02ffc79)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 0, Column 1: Field Element(0x7fc6334d9fcc04eb08e64ca8bf4dcc1954b9f45f8f407e31a8dbc07819955c3)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 1: Field Element(0x800000000000011000000000000000000000000000000000000000000000000)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 19, Column 0: Field Element(0x37948ea55ce1fef980618eaca28f315aa1cfe7267bd9d8a6239a589a9b57e6c)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 152: Field Element(0x1cc90705440740fccf4c60df78c22f00b3ace4c771686843c84d8fc5c375362)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 39, Column 7: Field Element(0x733d53c16732bc6314adaaae1ffea093c82a6f51a20af250474714fbe14bcc4)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 319: Field Element(0x32f4a55caedb3b7c2584f28da83cd7927d429ac8f7c3dadbe912619681b662f)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 272, Column 7: Field Element(0x4abaeb42c9a4fedf81e5b1d6cfbd6886dbc45f362d8df67c19f9f6777ea2c58)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 2183: Field Element(0x6ca3f9e8df388a6f4676f36453150fdbfe66a2e7ada7a6bc2077f7b662c9bb6)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 743, Column 6: Field Element(0x30b00dd22ae4496dd5e1eac9a329bb8f7343639d12179280a0e9dd99fbabfd8)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 5950: Field Element(0x51463b166bc5265cb00a7d8b4e44efe63c8767c95cde35d8c5165d40c71bba8)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 771, Column 6: Field Element(0x559ac323db39d1624cc9d8307841c10f3d0d348de9d987fb61be272f7da9673)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 6174: Field Element(0x6c1d39ac81630a670499a52aed65a1a5e3a07d2fd97e8064292a4ddd7bf9a6b)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 808, Column 7: Field Element(0x6c96eca0c09317527214a4c2c3dfeb7a2040848b69025b83d2f324963e84875)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 6471: Field Element(0x3f5d426e4290937afca9b4c9f16dd233da770efd32985f0090f06dc1d30bdf0)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 897, Column 2: Field Element(0x2544b9b65da300a45eccbcfe38e51339871b276ea7130e0cbdca5235f5986fc)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 7178: Field Element(0x6575c8b7d71ec2fe11f990c07a3bb1a1f048e45b5224f555898727f919bb16c)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1169, Column 2: Field Element(0x494abeb99edc8ab698b6843466835cc634c7a9f60deb85f8711c742a4573634)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 9354: Field Element(0x6ec3a91761205412cce4cae141825a8a5a5de264acc2ae131fd72dfc086d78f)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1246, Column 5: Field Element(0x72a89dcdd27826a08912d2003d7f79e949133f58fa20c97b08b25a5fc04049d)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 9973: Field Element(0x373ee3dc62b139f157f8d4c285f19fb31dbe55a99ed52e70a996eefee13e9c4)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1350, Column 7: Field Element(0x4fb8280b2333f458995c0c13c41dbb7249622cb20a060e4347cc815a3797a5f)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 10807: Field Element(0x6de564aa558946ccd2e0a9ce48215c4dd4f251a46d899176f8dfbb4e79078d)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1429, Column 6: Field Element(0x763b86bdd609a6516d55ed892b5119694d84274fc5c4b30a6fb436f5db09f70)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 11438: Field Element(0x3e63f7fd5df2e0250f08c3a8471044f4afbab3e12d7e0297622de193b3af4c7)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1474, Column 0: Field Element(0x33c3ebc1020ea1371452cd599fc06babe192051cde361e52f2a89e45f018596)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 11792: Field Element(0x223241000e5aab104c01a34653961de865e5ecc5837202224bc9b0fb2583241)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1659, Column 6: Field Element(0x4eb3d8f8394b184c92ff82a9d0f0c8c7dfd6b6a5246e9709afc007da70b2c1)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 13278: Field Element(0x62f980d505320a3451333525fd34cec7af87180b5ee9148bedbd8511e4d867c)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1678, Column 0: Field Element(0x1ec47275a1527266a696e2558159da81e694737a8ac40f6e7a084bc02463f53)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 13424: Field Element(0x4762471889757acc9317b77911e651147b9208527bfe48762ad245f5dee8d77)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1708, Column 3: Field Element(0x3188e79b6d1775c910076b0d1ae30e1ef786c9e5f46c7a759828c2a94dc7150)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 13667: Field Element(0x39438780bfac23c9e8c4d0bd72ae3374b11ebdadb87f3980a9ca74c4836191f)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: Row 1800, Column 2: Field Element(0x2be21bff233d0ba67d7ff339f9728b364fabf2b19820b46cb75b386d0ef43d0)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: xInv for index 14402: Field Element(0xffd5dc02b1f7189d6a2efccd3dacd07a58a7b4c7b5b7fe360a18d80f947eee)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2048: Hash(0x000000000000000000000000e695a8ef610abc72a10918da730fcc596e3bc6f2)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2067: Hash(0x000000000000000000000000b2b61d0d523c0ef7b0770ed2e01a99ef1254410a)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2087: Hash(0x0000000000000000000000004abaa915c57fbe357501743237afee06e04bc60a)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2320: Hash(0x0000000000000000000000009751ce6b693943ddb805117d47dd0d6a1753e9b3)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2791: Hash(0x00000000000000000000000000969afcce29a873d2bf5aeee795d3ed880b05be)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2819: Hash(0x0000000000000000000000000016abae04230b4955fdada41aed011cabcf53ac)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2856: Hash(0x00000000000000000000000045776e0bb3ec56a13e47799da9de0bcb82c1feb7)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 2945: Hash(0x0000000000000000000000008badc445e6a7c58ee8009fda554b750b309d2368)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3217: Hash(0x000000000000000000000000d40576ce4faed4b984acfb1d67d02d61d6a7e319)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3294: Hash(0x0000000000000000000000003b43bc1669edc9fbcc6d66fba5afd20d3a5a30d1)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3398: Hash(0x000000000000000000000000aad69180e8f40ac22f7424dce669b965c2e24599)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3477: Hash(0x000000000000000000000000824ea4485cb2062c7effa7e8dcc4162708150ec5)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3522: Hash(0x0000000000000000000000008b09f4aab525a7f5a44ca48c68aa9718eda1f197)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3707: Hash(0x000000000000000000000000d5cd7684a884c8277c06172a382d306d0f23e864)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3726: Hash(0x000000000000000000000000af319dd1a3bfecaf454a4b2cdd3d873d22992fa1)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3756: Hash(0x000000000000000000000000be68829ccd44431dd01dc0c9ac48ca1456a6095f)", + "/cpu air/STARK/FRI/Decommitment/Layer 4: For node 3848: Hash(0x00000000000000000000000050c8be1f5ca84ecd13b2340794ace479c8dbd6a8)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 0, Column 0: Field Element(0x1bb279cfb2037eeb740ce53af0e96cc1bc410de7564c2ca4efb6f5dcd6f85b5)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 0: Field Element(0x1)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 19, Column 0: Field Element(0x4705a187c62cbe68b68987af3df39efefff161e4f4c020106d4f0dcbb4de81f)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 19: Field Element(0x35b01f2f03b33a0e6416301ed24191cb5b5db5ad8831dda32f035d1bcc1cc71)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 39, Column 0: Field Element(0xf028f007a2facda0492d14dd6ef3cfa2a1d8200ecbfcdea8bfdb29a9bc16af)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 39: Field Element(0x4a44b0df399815cc4b2a4e3c2f8755f750774e2e9ec857782aa7feba1d98b1e)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 272, Column 0: Field Element(0x525bea55796cbc791b84322f7921f2e7d33a59402901ce57a301213fdb33cdc)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 272: Field Element(0x5e1c9fc3ea2f99171dcfef545d3d43064ff5843cc60f78b516a1d8825636cef)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 743, Column 0: Field Element(0x7eac40634c0c68940fc575f6d0396650c44831654fde851590d524d815a312c)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 743: Field Element(0x5729d841655b95574489623516d9485029e7b070bb47297743b0ff806511def)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 771, Column 0: Field Element(0x44ce697515de75ea1b04e0664ed68aacc7105021808d70fbd3b82ab6a93e795)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 771: Field Element(0x57a1df96773e509490918421626917b8f20ad3a0402d52232a57bfffabc0231)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 808, Column 0: Field Element(0x38b9c10e3383fb8d630a39fa16c62a67859b9821b4e84369b01968fab5a9f7)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 808: Field Element(0x5c72bd9bfa5096d5215915f7b5df86f9b948ca205cb39adbc411f771076fc4f)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 897, Column 0: Field Element(0x738574d4501f09312051687735dc7ab307ea929a105def924ae2b30cbf8eee8)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 897: Field Element(0x3aff13c6dccdb1e34f4ea6af9eaa1f62f69fffd78f39876df76538d8d852a1b)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1169, Column 0: Field Element(0x29f22efc588d1627e30dc4eef26688a9748bb79c86e7a3338124b76309c3660)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1169: Field Element(0x6f41c94d91a34dd100548f1c58bfcf27cac54c468380d5ccf2c0eff357f5428)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1246, Column 0: Field Element(0x11696858a87572fa73c21edc604f2a32d3aa37a5003de73f0aa134d32a5f8ec)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1246: Field Element(0x5c0da121cff554a369c15a5c10fb6258cd2f11462dc3549d3141109555064f3)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1350, Column 0: Field Element(0x39ad587908fd2d30afe82ab2ec89dd6052018ea6a9bda85646036c78e111de0)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1350: Field Element(0x2bca845d1aa6846b39661b35d6e3484487041076f9a82dee2e9f9ece4f9b883)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1429, Column 0: Field Element(0x56ebd6b1283e242ebac29c0d193b9abc0090c0706ed5b57cc9120656b21c755)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1429: Field Element(0x4e29d1f3d2460949ae15ed1d55b4af3d7f99571da8adbc9a8656affe1fff5dd)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1474, Column 0: Field Element(0x183790ac7acc52f6689fa5fd7c44f9ce80578b8ab9387d5432847c286d208c)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1474: Field Element(0x19e3c48f1924ba1b61bd6b38ebdf3d506e62284504059d70bd97c0baa7e5b04)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1659, Column 0: Field Element(0x699eab7f97ce1edacfdc54287b228a46271180e1bf6bf94b31ba1e44d2d0e4)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1659: Field Element(0x69a44dc2bad42e6ebe9c0580922761ba214704f371dcdd875f4ea0d7780b118)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1678, Column 0: Field Element(0x327b0e0c29af3c025c4fc39a1a9d5ff999570a6e86b773cc23d44144949114a)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1678: Field Element(0x654b8ee458f1d3442f817870a8e0dc5e05fcce43e9df8b0ba1db3407cd41b9a)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1708, Column 0: Field Element(0x2f860b1cb60dc680b63dc7ab2f739957d5cb61abcfd65054c3f196e3f6f732d)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1708: Field Element(0x7065189c47bcb28cc291a064e64538f8fe57da849e3dab7c2cdf0268318725b)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: Row 1800, Column 0: Field Element(0x564b3b74c66a81f14cb0328f30c1db615f32f0b13630cd165ed5544095bf43a)", + "/cpu air/STARK/FRI/Decommitment/Last Layer: xInv for index 1800: Field Element(0x7d4e0aab2505e1db495b1a3a6d589f818e1ff08e063be361b3aad38136feba4)" ] } diff --git a/src/starkware/cairo/stark_verifier/air/layouts/BUILD b/src/starkware/cairo/stark_verifier/air/layouts/BUILD index cd18beb2..ed664807 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/BUILD +++ b/src/starkware/cairo/stark_verifier/air/layouts/BUILD @@ -8,6 +8,7 @@ layouts = [ "small", "starknet", "starknet_with_keccak", + "recursive_with_poseidon", ] generate_layouts_libs(layouts) diff --git a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/autogenerated.cairo index ba888e6e..12684ac0 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/autogenerated.cairo @@ -3,8 +3,8 @@ from starkware.cairo.common.math import safe_div, safe_mult from starkware.cairo.common.pow import pow const N_DYNAMIC_PARAMS = 0; -const N_CONSTRAINTS = 347; -const MASK_SIZE = 734; +const N_CONSTRAINTS = 350; +const MASK_SIZE = 743; const CPU_COMPONENT_STEP = 1; const CPU_COMPONENT_HEIGHT = 16; const PUBLIC_MEMORY_STEP = 16; @@ -36,6 +36,9 @@ const POSEIDON__ROW_RATIO = 4096; const POSEIDON__M = 3; const POSEIDON__ROUNDS_FULL = 8; const POSEIDON__ROUNDS_PARTIAL = 83; +const RANGE_CHECK96_BUILTIN_RATIO = 8; +const RANGE_CHECK96_BUILTIN_ROW_RATIO = 128; +const RANGE_CHECK96_N_PARTS = 6; const HAS_OUTPUT_BUILTIN = 1; const HAS_PEDERSEN_BUILTIN = 1; const HAS_RANGE_CHECK_BUILTIN = 1; @@ -44,10 +47,11 @@ const HAS_BITWISE_BUILTIN = 1; const HAS_EC_OP_BUILTIN = 1; const HAS_KECCAK_BUILTIN = 1; const HAS_POSEIDON_BUILTIN = 1; +const HAS_RANGE_CHECK96_BUILTIN = 1; const LAYOUT_CODE = 0x616c6c5f636169726f; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; -const NUM_COLUMNS_FIRST = 8; +const NUM_COLUMNS_FIRST = 9; const NUM_COLUMNS_SECOND = 3; const IS_DYNAMIC_AIR = 0; @@ -73,3443 +77,3442 @@ func eval_composition_polynomial{range_check_ptr}( local pow9 = pow8 * pow8; // pow(point, (safe_div(global_values.trace_length, 64))). let (local pow10) = pow(point, (safe_div(global_values.trace_length, 16))); local pow11 = pow10 * pow10; // pow(point, (safe_div(global_values.trace_length, 8))). - local pow12 = pow11 * pow11; // pow(point, (safe_div(global_values.trace_length, 4))). - local pow13 = pow12 * pow12; // pow(point, (safe_div(global_values.trace_length, 2))). - local pow14 = pow13 * pow13; // pow(point, global_values.trace_length). - let (local pow15) = pow(trace_generator, global_values.trace_length - 2048); - let (local pow16) = pow(trace_generator, global_values.trace_length - 16384); - let (local pow17) = pow(trace_generator, global_values.trace_length - 256); - let (local pow18) = pow(trace_generator, global_values.trace_length - 32768); - let (local pow19) = pow(trace_generator, global_values.trace_length - 128); - let (local pow20) = pow(trace_generator, global_values.trace_length - 4096); - let (local pow21) = pow(trace_generator, global_values.trace_length - 1); - let (local pow22) = pow(trace_generator, global_values.trace_length - 4); - let (local pow23) = pow(trace_generator, global_values.trace_length - 2); - let (local pow24) = pow(trace_generator, global_values.trace_length - 16); - let (local pow25) = pow(trace_generator, (safe_div(global_values.trace_length, 524288))); - local pow26 = pow25 * pow25; // pow(trace_generator, (safe_div(global_values.trace_length, 262144))). - local pow27 = pow25 * pow26; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 524288))). - local pow28 = pow25 * pow27; // pow(trace_generator, (safe_div(global_values.trace_length, 131072))). - local pow29 = pow25 * pow28; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 524288))). - local pow30 = pow25 * pow29; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 262144))). - local pow31 = pow25 * pow30; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 524288))). - local pow32 = pow25 * pow31; // pow(trace_generator, (safe_div(global_values.trace_length, 65536))). - local pow33 = pow25 * pow32; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 524288))). - local pow34 = pow25 * pow33; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 262144))). - local pow35 = pow25 * pow34; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 524288))). - local pow36 = pow25 * pow35; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 131072))). - local pow37 = pow25 * pow36; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 524288))). - local pow38 = pow25 * pow37; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 262144))). - local pow39 = pow25 * pow38; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 524288))). - local pow40 = pow25 * pow39; // pow(trace_generator, (safe_div(global_values.trace_length, 32768))). - local pow41 = pow32 * pow40; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 65536))). - local pow42 = pow32 * pow41; // pow(trace_generator, (safe_div(global_values.trace_length, 16384))). - local pow43 = pow32 * pow42; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 65536))). - local pow44 = pow32 * pow43; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 32768))). - local pow45 = pow32 * pow44; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 65536))). - local pow46 = pow32 * pow45; // pow(trace_generator, (safe_div(global_values.trace_length, 8192))). - local pow47 = pow32 * pow46; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 65536))). - local pow48 = pow32 * pow47; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 32768))). - local pow49 = pow32 * pow48; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 65536))). - local pow50 = pow32 * pow49; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 16384))). - local pow51 = pow32 * pow50; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 65536))). - local pow52 = pow32 * pow51; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 32768))). - local pow53 = pow32 * pow52; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 65536))). - local pow54 = pow32 * pow53; // pow(trace_generator, (safe_div(global_values.trace_length, 4096))). - local pow55 = pow32 * pow54; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 65536))). - local pow56 = pow32 * pow55; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 32768))). - local pow57 = pow32 * pow56; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 65536))). - local pow58 = pow32 * pow57; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 16384))). - local pow59 = pow32 * pow58; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 65536))). - local pow60 = pow32 * pow59; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 32768))). - local pow61 = pow32 * pow60; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 65536))). - local pow62 = pow32 * pow61; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 8192))). - local pow63 = pow32 * pow62; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 65536))). - local pow64 = pow32 * pow63; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 32768))). - local pow65 = pow32 * pow64; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 65536))). - local pow66 = pow32 * pow65; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 16384))). - local pow67 = pow32 * pow66; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 65536))). - local pow68 = pow32 * pow67; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 32768))). - local pow69 = pow32 * pow68; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 65536))). - local pow70 = pow32 * pow69; // pow(trace_generator, (safe_div(global_values.trace_length, 2048))). - local pow71 = pow32 * pow70; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 65536))). - local pow72 = pow32 * pow71; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 32768))). - local pow73 = pow32 * pow72; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 65536))). - local pow74 = pow32 * pow73; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 16384))). - local pow75 = pow32 * pow74; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 65536))). - local pow76 = pow32 * pow75; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 32768))). - local pow77 = pow32 * pow76; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 65536))). - local pow78 = pow32 * pow77; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 8192))). - local pow79 = pow32 * pow78; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 65536))). - local pow80 = pow32 * pow79; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 32768))). - local pow81 = pow32 * pow80; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 65536))). - local pow82 = pow32 * pow81; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 16384))). - local pow83 = pow32 * pow82; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 65536))). - local pow84 = pow32 * pow83; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 32768))). - local pow85 = pow32 * pow84; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 65536))). - local pow86 = pow32 * pow85; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 4096))). - local pow87 = pow32 * pow86; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 65536))). - local pow88 = pow32 * pow87; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 32768))). - local pow89 = pow32 * pow88; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 65536))). - local pow90 = pow32 * pow89; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 16384))). - local pow91 = pow32 * pow90; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 65536))). - local pow92 = pow32 * pow91; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 32768))). - local pow93 = pow32 * pow92; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 65536))). - local pow94 = pow32 * pow93; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 8192))). - local pow95 = pow32 * pow94; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 65536))). - local pow96 = pow32 * pow95; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 32768))). - local pow97 = pow32 * pow96; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 65536))). - local pow98 = pow32 * pow97; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 16384))). - local pow99 = pow32 * pow98; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 65536))). - local pow100 = pow41 * pow99; // pow(trace_generator, (safe_div(global_values.trace_length, 1024))). - local pow101 = pow32 * pow100; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 65536))). - local pow102 = pow32 * pow101; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 32768))). - local pow103 = pow32 * pow102; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 65536))). - local pow104 = pow32 * pow103; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 16384))). - local pow105 = pow32 * pow104; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 65536))). - local pow106 = pow32 * pow105; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 32768))). - local pow107 = pow32 * pow106; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 65536))). - local pow108 = pow32 * pow107; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 8192))). - local pow109 = pow32 * pow108; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 65536))). - local pow110 = pow32 * pow109; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 32768))). - local pow111 = pow32 * pow110; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 65536))). - local pow112 = pow32 * pow111; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 16384))). - local pow113 = pow32 * pow112; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 65536))). - local pow114 = pow32 * pow113; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 32768))). - local pow115 = pow32 * pow114; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 65536))). - local pow116 = pow32 * pow115; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 4096))). - local pow117 = pow32 * pow116; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 65536))). - local pow118 = pow32 * pow117; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 32768))). - local pow119 = pow32 * pow118; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 65536))). - local pow120 = pow32 * pow119; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 16384))). - local pow121 = pow32 * pow120; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 65536))). - local pow122 = pow32 * pow121; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 32768))). - local pow123 = pow32 * pow122; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 65536))). - local pow124 = pow32 * pow123; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 8192))). - local pow125 = pow32 * pow124; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 65536))). - local pow126 = pow32 * pow125; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 32768))). - local pow127 = pow32 * pow126; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 65536))). - local pow128 = pow32 * pow127; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 16384))). - local pow129 = pow32 * pow128; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 65536))). - local pow130 = pow41 * pow129; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 2048))). - local pow131 = pow32 * pow130; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 65536))). - local pow132 = pow32 * pow131; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 32768))). - local pow133 = pow32 * pow132; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 65536))). - local pow134 = pow32 * pow133; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 16384))). - local pow135 = pow32 * pow134; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 65536))). - local pow136 = pow32 * pow135; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 32768))). - local pow137 = pow32 * pow136; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 65536))). - local pow138 = pow32 * pow137; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 8192))). - local pow139 = pow32 * pow138; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 65536))). - local pow140 = pow32 * pow139; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 32768))). - local pow141 = pow32 * pow140; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 65536))). - local pow142 = pow32 * pow141; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 16384))). - local pow143 = pow32 * pow142; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 65536))). - local pow144 = pow32 * pow143; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 32768))). - local pow145 = pow32 * pow144; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 65536))). - local pow146 = pow32 * pow145; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 4096))). - local pow147 = pow32 * pow146; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 65536))). - local pow148 = pow32 * pow147; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 32768))). - local pow149 = pow32 * pow148; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 65536))). - local pow150 = pow32 * pow149; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 16384))). - local pow151 = pow32 * pow150; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 65536))). - local pow152 = pow32 * pow151; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 32768))). - local pow153 = pow32 * pow152; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 65536))). - local pow154 = pow32 * pow153; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 8192))). - local pow155 = pow32 * pow154; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 65536))). - local pow156 = pow32 * pow155; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 32768))). - local pow157 = pow32 * pow156; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 65536))). - local pow158 = pow32 * pow157; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 16384))). - local pow159 = pow32 * pow158; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 65536))). - local pow160 = pow41 * pow159; // pow(trace_generator, (safe_div(global_values.trace_length, 512))). - local pow161 = pow32 * pow160; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 65536))). - local pow162 = pow32 * pow161; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 32768))). - local pow163 = pow32 * pow162; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 65536))). - local pow164 = pow32 * pow163; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 16384))). - local pow165 = pow32 * pow164; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 65536))). - local pow166 = pow32 * pow165; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 32768))). - local pow167 = pow32 * pow166; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 65536))). - local pow168 = pow32 * pow167; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 8192))). - local pow169 = pow32 * pow168; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 65536))). - local pow170 = pow32 * pow169; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 32768))). - local pow171 = pow32 * pow170; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 65536))). - local pow172 = pow32 * pow171; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 16384))). - local pow173 = pow32 * pow172; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 65536))). - local pow174 = pow32 * pow173; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 32768))). - local pow175 = pow32 * pow174; // pow(trace_generator, (safe_div((safe_mult(143, global_values.trace_length)), 65536))). - local pow176 = pow32 * pow175; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 4096))). - local pow177 = pow32 * pow176; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 65536))). - local pow178 = pow32 * pow177; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 32768))). - local pow179 = pow32 * pow178; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 65536))). - local pow180 = pow32 * pow179; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 16384))). - local pow181 = pow32 * pow180; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 65536))). - local pow182 = pow32 * pow181; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 32768))). - local pow183 = pow32 * pow182; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 65536))). - local pow184 = pow32 * pow183; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 8192))). - local pow185 = pow32 * pow184; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 65536))). - local pow186 = pow32 * pow185; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 32768))). - local pow187 = pow32 * pow186; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 65536))). - local pow188 = pow32 * pow187; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 16384))). - local pow189 = pow32 * pow188; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 65536))). - local pow190 = pow41 * pow189; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 2048))). - local pow191 = pow32 * pow190; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 65536))). - local pow192 = pow32 * pow191; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 32768))). - local pow193 = pow32 * pow192; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 65536))). - local pow194 = pow32 * pow193; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 16384))). - local pow195 = pow32 * pow194; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 65536))). - local pow196 = pow32 * pow195; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 32768))). - local pow197 = pow32 * pow196; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 65536))). - local pow198 = pow32 * pow197; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 8192))). - local pow199 = pow32 * pow198; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 65536))). - local pow200 = pow32 * pow199; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 32768))). - local pow201 = pow32 * pow200; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 65536))). - local pow202 = pow32 * pow201; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 16384))). - local pow203 = pow32 * pow202; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 65536))). - local pow204 = pow32 * pow203; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 32768))). - local pow205 = pow32 * pow204; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 65536))). - local pow206 = pow32 * pow205; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 4096))). - local pow207 = pow32 * pow206; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 65536))). - local pow208 = pow32 * pow207; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 32768))). - local pow209 = pow32 * pow208; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 65536))). - local pow210 = pow32 * pow209; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 16384))). - local pow211 = pow32 * pow210; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 65536))). - local pow212 = pow32 * pow211; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 32768))). - local pow213 = pow32 * pow212; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 65536))). - local pow214 = pow32 * pow213; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 8192))). - local pow215 = pow32 * pow214; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 65536))). - local pow216 = pow32 * pow215; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 32768))). - local pow217 = pow32 * pow216; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 65536))). - local pow218 = pow32 * pow217; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 16384))). - local pow219 = pow32 * pow218; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 65536))). - local pow220 = pow41 * pow219; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 1024))). - local pow221 = pow32 * pow220; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 65536))). - local pow222 = pow32 * pow221; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 32768))). - local pow223 = pow32 * pow222; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 65536))). - local pow224 = pow32 * pow223; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 16384))). - local pow225 = pow32 * pow224; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 65536))). - local pow226 = pow32 * pow225; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 32768))). - local pow227 = pow32 * pow226; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 65536))). - local pow228 = pow32 * pow227; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 8192))). - local pow229 = pow32 * pow228; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 65536))). - local pow230 = pow32 * pow229; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 32768))). - local pow231 = pow32 * pow230; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 65536))). - local pow232 = pow32 * pow231; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 16384))). - local pow233 = pow32 * pow232; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 65536))). - local pow234 = pow32 * pow233; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 32768))). - local pow235 = pow32 * pow234; // pow(trace_generator, (safe_div((safe_mult(207, global_values.trace_length)), 65536))). - local pow236 = pow32 * pow235; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 4096))). - local pow237 = pow32 * pow236; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 65536))). - local pow238 = pow32 * pow237; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 32768))). - local pow239 = pow32 * pow238; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 65536))). - local pow240 = pow32 * pow239; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 16384))). - local pow241 = pow32 * pow240; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 65536))). - local pow242 = pow32 * pow241; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 32768))). - local pow243 = pow32 * pow242; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 65536))). - local pow244 = pow32 * pow243; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 8192))). - local pow245 = pow32 * pow244; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 65536))). - local pow246 = pow32 * pow245; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 32768))). - local pow247 = pow32 * pow246; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 65536))). - local pow248 = pow32 * pow247; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 16384))). - local pow249 = pow32 * pow248; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 65536))). - local pow250 = pow41 * pow249; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 2048))). - local pow251 = pow32 * pow250; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 65536))). - local pow252 = pow32 * pow251; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 32768))). - local pow253 = pow32 * pow252; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 65536))). - local pow254 = pow32 * pow253; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 16384))). - local pow255 = pow32 * pow254; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 65536))). - local pow256 = pow32 * pow255; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 32768))). - local pow257 = pow32 * pow256; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 65536))). - local pow258 = pow32 * pow257; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 8192))). - local pow259 = pow32 * pow258; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 65536))). - local pow260 = pow32 * pow259; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 32768))). - local pow261 = pow32 * pow260; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 65536))). - local pow262 = pow32 * pow261; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 16384))). - local pow263 = pow32 * pow262; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 65536))). - local pow264 = pow32 * pow263; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 32768))). - local pow265 = pow32 * pow264; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 65536))). - local pow266 = pow32 * pow265; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 4096))). - local pow267 = pow32 * pow266; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 65536))). - local pow268 = pow32 * pow267; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 32768))). - local pow269 = pow32 * pow268; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 65536))). - local pow270 = pow32 * pow269; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 16384))). - local pow271 = pow32 * pow270; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 65536))). - local pow272 = pow32 * pow271; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 32768))). - local pow273 = pow32 * pow272; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 65536))). - local pow274 = pow32 * pow273; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 8192))). - local pow275 = pow32 * pow274; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 65536))). - local pow276 = pow32 * pow275; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 32768))). - local pow277 = pow32 * pow276; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 65536))). - local pow278 = pow32 * pow277; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 16384))). - local pow279 = pow32 * pow278; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 65536))). - local pow280 = pow41 * pow279; // pow(trace_generator, (safe_div(global_values.trace_length, 256))). - local pow281 = pow32 * pow280; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 65536))). - local pow282 = pow32 * pow281; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 32768))). - local pow283 = pow32 * pow282; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 65536))). - local pow284 = pow32 * pow283; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 16384))). - local pow285 = pow32 * pow284; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 65536))). - local pow286 = pow32 * pow285; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 32768))). - local pow287 = pow32 * pow286; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 65536))). - local pow288 = pow32 * pow287; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 8192))). - local pow289 = pow32 * pow288; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 65536))). - local pow290 = pow32 * pow289; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 32768))). - local pow291 = pow32 * pow290; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 65536))). - local pow292 = pow32 * pow291; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 16384))). - local pow293 = pow32 * pow292; // pow(trace_generator, (safe_div((safe_mult(269, global_values.trace_length)), 65536))). - local pow294 = pow32 * pow293; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 32768))). - local pow295 = pow32 * pow294; // pow(trace_generator, (safe_div((safe_mult(271, global_values.trace_length)), 65536))). - local pow296 = pow32 * pow295; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 4096))). - local pow297 = pow32 * pow296; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 65536))). - local pow298 = pow32 * pow297; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 32768))). - local pow299 = pow32 * pow298; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 65536))). - local pow300 = pow32 * pow299; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 16384))). - local pow301 = pow32 * pow300; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 65536))). - local pow302 = pow32 * pow301; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 32768))). - local pow303 = pow32 * pow302; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 65536))). - local pow304 = pow32 * pow303; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 8192))). - local pow305 = pow32 * pow304; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 65536))). - local pow306 = pow32 * pow305; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 32768))). - local pow307 = pow32 * pow306; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 65536))). - local pow308 = pow32 * pow307; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 16384))). - local pow309 = pow32 * pow308; // pow(trace_generator, (safe_div((safe_mult(285, global_values.trace_length)), 65536))). - local pow310 = pow41 * pow309; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 2048))). - local pow311 = pow32 * pow310; // pow(trace_generator, (safe_div((safe_mult(289, global_values.trace_length)), 65536))). - local pow312 = pow32 * pow311; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 32768))). - local pow313 = pow32 * pow312; // pow(trace_generator, (safe_div((safe_mult(291, global_values.trace_length)), 65536))). - local pow314 = pow32 * pow313; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 16384))). - local pow315 = pow32 * pow314; // pow(trace_generator, (safe_div((safe_mult(293, global_values.trace_length)), 65536))). - local pow316 = pow32 * pow315; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 32768))). - local pow317 = pow32 * pow316; // pow(trace_generator, (safe_div((safe_mult(295, global_values.trace_length)), 65536))). - local pow318 = pow32 * pow317; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 8192))). - local pow319 = pow32 * pow318; // pow(trace_generator, (safe_div((safe_mult(297, global_values.trace_length)), 65536))). - local pow320 = pow32 * pow319; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 32768))). - local pow321 = pow32 * pow320; // pow(trace_generator, (safe_div((safe_mult(299, global_values.trace_length)), 65536))). - local pow322 = pow32 * pow321; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 16384))). - local pow323 = pow32 * pow322; // pow(trace_generator, (safe_div((safe_mult(301, global_values.trace_length)), 65536))). - local pow324 = pow32 * pow323; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 32768))). - local pow325 = pow32 * pow324; // pow(trace_generator, (safe_div((safe_mult(303, global_values.trace_length)), 65536))). - local pow326 = pow32 * pow325; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 4096))). - local pow327 = pow32 * pow326; // pow(trace_generator, (safe_div((safe_mult(305, global_values.trace_length)), 65536))). - local pow328 = pow32 * pow327; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 32768))). - local pow329 = pow32 * pow328; // pow(trace_generator, (safe_div((safe_mult(307, global_values.trace_length)), 65536))). - local pow330 = pow32 * pow329; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 16384))). - local pow331 = pow32 * pow330; // pow(trace_generator, (safe_div((safe_mult(309, global_values.trace_length)), 65536))). - local pow332 = pow32 * pow331; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 32768))). - local pow333 = pow32 * pow332; // pow(trace_generator, (safe_div((safe_mult(311, global_values.trace_length)), 65536))). - local pow334 = pow32 * pow333; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 8192))). - local pow335 = pow32 * pow334; // pow(trace_generator, (safe_div((safe_mult(313, global_values.trace_length)), 65536))). - local pow336 = pow32 * pow335; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 32768))). - local pow337 = pow32 * pow336; // pow(trace_generator, (safe_div((safe_mult(315, global_values.trace_length)), 65536))). - local pow338 = pow32 * pow337; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 16384))). - local pow339 = pow32 * pow338; // pow(trace_generator, (safe_div((safe_mult(317, global_values.trace_length)), 65536))). - local pow340 = pow41 * pow339; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 1024))). - local pow341 = pow32 * pow340; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 65536))). - local pow342 = pow32 * pow341; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 32768))). - local pow343 = pow32 * pow342; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 65536))). - local pow344 = pow32 * pow343; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 16384))). - local pow345 = pow32 * pow344; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 65536))). - local pow346 = pow32 * pow345; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 32768))). - local pow347 = pow32 * pow346; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 65536))). - local pow348 = pow32 * pow347; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 8192))). - local pow349 = pow32 * pow348; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 65536))). - local pow350 = pow32 * pow349; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 32768))). - local pow351 = pow32 * pow350; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 65536))). - local pow352 = pow32 * pow351; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 16384))). - local pow353 = pow32 * pow352; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 65536))). - local pow354 = pow32 * pow353; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 32768))). - local pow355 = pow32 * pow354; // pow(trace_generator, (safe_div((safe_mult(335, global_values.trace_length)), 65536))). - local pow356 = pow32 * pow355; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 4096))). - local pow357 = pow32 * pow356; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 65536))). - local pow358 = pow32 * pow357; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 32768))). - local pow359 = pow32 * pow358; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 65536))). - local pow360 = pow32 * pow359; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 16384))). - local pow361 = pow32 * pow360; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 65536))). - local pow362 = pow32 * pow361; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 32768))). - local pow363 = pow32 * pow362; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 65536))). - local pow364 = pow32 * pow363; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 8192))). - local pow365 = pow32 * pow364; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 65536))). - local pow366 = pow32 * pow365; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 32768))). - local pow367 = pow32 * pow366; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 65536))). - local pow368 = pow32 * pow367; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 16384))). - local pow369 = pow32 * pow368; // pow(trace_generator, (safe_div((safe_mult(349, global_values.trace_length)), 65536))). - local pow370 = pow41 * pow369; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 2048))). - local pow371 = pow32 * pow370; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 65536))). - local pow372 = pow32 * pow371; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 32768))). - local pow373 = pow32 * pow372; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 65536))). - local pow374 = pow32 * pow373; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 16384))). - local pow375 = pow32 * pow374; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 65536))). - local pow376 = pow32 * pow375; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 32768))). - local pow377 = pow32 * pow376; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 65536))). - local pow378 = pow32 * pow377; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 8192))). - local pow379 = pow32 * pow378; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 65536))). - local pow380 = pow32 * pow379; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 32768))). - local pow381 = pow32 * pow380; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 65536))). - local pow382 = pow32 * pow381; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 16384))). - local pow383 = pow32 * pow382; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 65536))). - local pow384 = pow32 * pow383; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 32768))). - local pow385 = pow32 * pow384; // pow(trace_generator, (safe_div((safe_mult(367, global_values.trace_length)), 65536))). - local pow386 = pow32 * pow385; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 4096))). - local pow387 = pow32 * pow386; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 65536))). - local pow388 = pow32 * pow387; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 32768))). - local pow389 = pow32 * pow388; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 65536))). - local pow390 = pow32 * pow389; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 16384))). - local pow391 = pow32 * pow390; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 65536))). - local pow392 = pow32 * pow391; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 32768))). - local pow393 = pow32 * pow392; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 65536))). - local pow394 = pow32 * pow393; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 8192))). - local pow395 = pow32 * pow394; // pow(trace_generator, (safe_div((safe_mult(377, global_values.trace_length)), 65536))). - local pow396 = pow32 * pow395; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 32768))). - local pow397 = pow32 * pow396; // pow(trace_generator, (safe_div((safe_mult(379, global_values.trace_length)), 65536))). - local pow398 = pow32 * pow397; // pow(trace_generator, (safe_div((safe_mult(95, global_values.trace_length)), 16384))). - local pow399 = pow32 * pow398; // pow(trace_generator, (safe_div((safe_mult(381, global_values.trace_length)), 65536))). - local pow400 = pow41 * pow399; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 512))). - local pow401 = pow32 * pow400; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 65536))). - local pow402 = pow32 * pow401; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 32768))). - local pow403 = pow32 * pow402; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 65536))). - local pow404 = pow32 * pow403; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 16384))). - local pow405 = pow32 * pow404; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 65536))). - local pow406 = pow32 * pow405; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 32768))). - local pow407 = pow32 * pow406; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 65536))). - local pow408 = pow32 * pow407; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 8192))). - local pow409 = pow32 * pow408; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 65536))). - local pow410 = pow32 * pow409; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 32768))). - local pow411 = pow32 * pow410; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 65536))). - local pow412 = pow32 * pow411; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 16384))). - local pow413 = pow32 * pow412; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 65536))). - local pow414 = pow32 * pow413; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 32768))). - local pow415 = pow32 * pow414; // pow(trace_generator, (safe_div((safe_mult(399, global_values.trace_length)), 65536))). - local pow416 = pow32 * pow415; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 4096))). - local pow417 = pow32 * pow416; // pow(trace_generator, (safe_div((safe_mult(401, global_values.trace_length)), 65536))). - local pow418 = pow32 * pow417; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 32768))). - local pow419 = pow32 * pow418; // pow(trace_generator, (safe_div((safe_mult(403, global_values.trace_length)), 65536))). - local pow420 = pow32 * pow419; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 16384))). - local pow421 = pow32 * pow420; // pow(trace_generator, (safe_div((safe_mult(405, global_values.trace_length)), 65536))). - local pow422 = pow32 * pow421; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 32768))). - local pow423 = pow32 * pow422; // pow(trace_generator, (safe_div((safe_mult(407, global_values.trace_length)), 65536))). - local pow424 = pow32 * pow423; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 8192))). - local pow425 = pow32 * pow424; // pow(trace_generator, (safe_div((safe_mult(409, global_values.trace_length)), 65536))). - local pow426 = pow32 * pow425; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 32768))). - local pow427 = pow32 * pow426; // pow(trace_generator, (safe_div((safe_mult(411, global_values.trace_length)), 65536))). - local pow428 = pow32 * pow427; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 16384))). - local pow429 = pow32 * pow428; // pow(trace_generator, (safe_div((safe_mult(413, global_values.trace_length)), 65536))). - local pow430 = pow41 * pow429; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 2048))). - local pow431 = pow32 * pow430; // pow(trace_generator, (safe_div((safe_mult(417, global_values.trace_length)), 65536))). - local pow432 = pow32 * pow431; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 32768))). - local pow433 = pow32 * pow432; // pow(trace_generator, (safe_div((safe_mult(419, global_values.trace_length)), 65536))). - local pow434 = pow32 * pow433; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 16384))). - local pow435 = pow32 * pow434; // pow(trace_generator, (safe_div((safe_mult(421, global_values.trace_length)), 65536))). - local pow436 = pow32 * pow435; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 32768))). - local pow437 = pow32 * pow436; // pow(trace_generator, (safe_div((safe_mult(423, global_values.trace_length)), 65536))). - local pow438 = pow32 * pow437; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 8192))). - local pow439 = pow32 * pow438; // pow(trace_generator, (safe_div((safe_mult(425, global_values.trace_length)), 65536))). - local pow440 = pow32 * pow439; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 32768))). - local pow441 = pow32 * pow440; // pow(trace_generator, (safe_div((safe_mult(427, global_values.trace_length)), 65536))). - local pow442 = pow32 * pow441; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 16384))). - local pow443 = pow32 * pow442; // pow(trace_generator, (safe_div((safe_mult(429, global_values.trace_length)), 65536))). - local pow444 = pow32 * pow443; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 32768))). - local pow445 = pow32 * pow444; // pow(trace_generator, (safe_div((safe_mult(431, global_values.trace_length)), 65536))). - local pow446 = pow32 * pow445; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 4096))). - local pow447 = pow32 * pow446; // pow(trace_generator, (safe_div((safe_mult(433, global_values.trace_length)), 65536))). - local pow448 = pow32 * pow447; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 32768))). - local pow449 = pow32 * pow448; // pow(trace_generator, (safe_div((safe_mult(435, global_values.trace_length)), 65536))). - local pow450 = pow32 * pow449; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 16384))). - local pow451 = pow32 * pow450; // pow(trace_generator, (safe_div((safe_mult(437, global_values.trace_length)), 65536))). - local pow452 = pow32 * pow451; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 32768))). - local pow453 = pow32 * pow452; // pow(trace_generator, (safe_div((safe_mult(439, global_values.trace_length)), 65536))). - local pow454 = pow32 * pow453; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 8192))). - local pow455 = pow32 * pow454; // pow(trace_generator, (safe_div((safe_mult(441, global_values.trace_length)), 65536))). - local pow456 = pow32 * pow455; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 32768))). - local pow457 = pow32 * pow456; // pow(trace_generator, (safe_div((safe_mult(443, global_values.trace_length)), 65536))). - local pow458 = pow32 * pow457; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 16384))). - local pow459 = pow32 * pow458; // pow(trace_generator, (safe_div((safe_mult(445, global_values.trace_length)), 65536))). - local pow460 = pow41 * pow459; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 1024))). - local pow461 = pow32 * pow460; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 65536))). - local pow462 = pow32 * pow461; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 32768))). - local pow463 = pow32 * pow462; // pow(trace_generator, (safe_div((safe_mult(451, global_values.trace_length)), 65536))). - local pow464 = pow32 * pow463; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 16384))). - local pow465 = pow32 * pow464; // pow(trace_generator, (safe_div((safe_mult(453, global_values.trace_length)), 65536))). - local pow466 = pow32 * pow465; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 32768))). - local pow467 = pow32 * pow466; // pow(trace_generator, (safe_div((safe_mult(455, global_values.trace_length)), 65536))). - local pow468 = pow32 * pow467; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 8192))). - local pow469 = pow32 * pow468; // pow(trace_generator, (safe_div((safe_mult(457, global_values.trace_length)), 65536))). - local pow470 = pow32 * pow469; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 32768))). - local pow471 = pow32 * pow470; // pow(trace_generator, (safe_div((safe_mult(459, global_values.trace_length)), 65536))). - local pow472 = pow32 * pow471; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 16384))). - local pow473 = pow32 * pow472; // pow(trace_generator, (safe_div((safe_mult(461, global_values.trace_length)), 65536))). - local pow474 = pow32 * pow473; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 32768))). - local pow475 = pow32 * pow474; // pow(trace_generator, (safe_div((safe_mult(463, global_values.trace_length)), 65536))). - local pow476 = pow32 * pow475; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 4096))). - local pow477 = pow32 * pow476; // pow(trace_generator, (safe_div((safe_mult(465, global_values.trace_length)), 65536))). - local pow478 = pow32 * pow477; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 32768))). - local pow479 = pow32 * pow478; // pow(trace_generator, (safe_div((safe_mult(467, global_values.trace_length)), 65536))). - local pow480 = pow32 * pow479; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 16384))). - local pow481 = pow32 * pow480; // pow(trace_generator, (safe_div((safe_mult(469, global_values.trace_length)), 65536))). - local pow482 = pow32 * pow481; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 32768))). - local pow483 = pow32 * pow482; // pow(trace_generator, (safe_div((safe_mult(471, global_values.trace_length)), 65536))). - local pow484 = pow32 * pow483; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 8192))). - local pow485 = pow32 * pow484; // pow(trace_generator, (safe_div((safe_mult(473, global_values.trace_length)), 65536))). - local pow486 = pow32 * pow485; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 32768))). - local pow487 = pow32 * pow486; // pow(trace_generator, (safe_div((safe_mult(475, global_values.trace_length)), 65536))). - local pow488 = pow32 * pow487; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 16384))). - local pow489 = pow32 * pow488; // pow(trace_generator, (safe_div((safe_mult(477, global_values.trace_length)), 65536))). - local pow490 = pow41 * pow489; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 2048))). - local pow491 = pow32 * pow490; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 65536))). - local pow492 = pow32 * pow491; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 32768))). - local pow493 = pow32 * pow492; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 65536))). - local pow494 = pow32 * pow493; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 16384))). - local pow495 = pow32 * pow494; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 65536))). - local pow496 = pow32 * pow495; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 32768))). - local pow497 = pow32 * pow496; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 65536))). - local pow498 = pow32 * pow497; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 8192))). - local pow499 = pow32 * pow498; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 65536))). - local pow500 = pow32 * pow499; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 32768))). - local pow501 = pow32 * pow500; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 65536))). - local pow502 = pow32 * pow501; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 16384))). - local pow503 = pow32 * pow502; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 65536))). - local pow504 = pow32 * pow503; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 32768))). - local pow505 = pow32 * pow504; // pow(trace_generator, (safe_div((safe_mult(495, global_values.trace_length)), 65536))). - local pow506 = pow32 * pow505; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 4096))). - local pow507 = pow32 * pow506; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 65536))). - local pow508 = pow32 * pow507; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 32768))). - local pow509 = pow32 * pow508; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 65536))). - local pow510 = pow32 * pow509; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 16384))). - local pow511 = pow32 * pow510; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 65536))). - local pow512 = pow32 * pow511; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 32768))). - local pow513 = pow32 * pow512; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 65536))). - local pow514 = pow32 * pow513; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 8192))). - local pow515 = pow32 * pow514; // pow(trace_generator, (safe_div((safe_mult(505, global_values.trace_length)), 65536))). - local pow516 = pow32 * pow515; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 32768))). - local pow517 = pow32 * pow516; // pow(trace_generator, (safe_div((safe_mult(507, global_values.trace_length)), 65536))). - local pow518 = pow32 * pow517; // pow(trace_generator, (safe_div((safe_mult(127, global_values.trace_length)), 16384))). - local pow519 = pow32 * pow518; // pow(trace_generator, (safe_div((safe_mult(509, global_values.trace_length)), 65536))). - local pow520 = pow41 * pow519; // pow(trace_generator, (safe_div(global_values.trace_length, 128))). - local pow521 = pow32 * pow520; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 65536))). - local pow522 = pow32 * pow521; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 32768))). - local pow523 = pow32 * pow522; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 65536))). - local pow524 = pow32 * pow523; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 16384))). - local pow525 = pow32 * pow524; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 65536))). - local pow526 = pow32 * pow525; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 32768))). - local pow527 = pow32 * pow526; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 65536))). - local pow528 = pow32 * pow527; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 8192))). - local pow529 = pow32 * pow528; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 65536))). - local pow530 = pow32 * pow529; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 32768))). - local pow531 = pow32 * pow530; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 65536))). - local pow532 = pow32 * pow531; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 16384))). - local pow533 = pow32 * pow532; // pow(trace_generator, (safe_div((safe_mult(525, global_values.trace_length)), 65536))). - local pow534 = pow32 * pow533; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 32768))). - local pow535 = pow32 * pow534; // pow(trace_generator, (safe_div((safe_mult(527, global_values.trace_length)), 65536))). - local pow536 = pow32 * pow535; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 4096))). - local pow537 = pow32 * pow536; // pow(trace_generator, (safe_div((safe_mult(529, global_values.trace_length)), 65536))). - local pow538 = pow32 * pow537; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 32768))). - local pow539 = pow32 * pow538; // pow(trace_generator, (safe_div((safe_mult(531, global_values.trace_length)), 65536))). - local pow540 = pow32 * pow539; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 16384))). - local pow541 = pow32 * pow540; // pow(trace_generator, (safe_div((safe_mult(533, global_values.trace_length)), 65536))). - local pow542 = pow32 * pow541; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 32768))). - local pow543 = pow32 * pow542; // pow(trace_generator, (safe_div((safe_mult(535, global_values.trace_length)), 65536))). - local pow544 = pow32 * pow543; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 8192))). - local pow545 = pow32 * pow544; // pow(trace_generator, (safe_div((safe_mult(537, global_values.trace_length)), 65536))). - local pow546 = pow32 * pow545; // pow(trace_generator, (safe_div((safe_mult(269, global_values.trace_length)), 32768))). - local pow547 = pow32 * pow546; // pow(trace_generator, (safe_div((safe_mult(539, global_values.trace_length)), 65536))). - local pow548 = pow32 * pow547; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 16384))). - local pow549 = pow32 * pow548; // pow(trace_generator, (safe_div((safe_mult(541, global_values.trace_length)), 65536))). - local pow550 = pow41 * pow549; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 2048))). - local pow551 = pow32 * pow550; // pow(trace_generator, (safe_div((safe_mult(545, global_values.trace_length)), 65536))). - local pow552 = pow32 * pow551; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 32768))). - local pow553 = pow32 * pow552; // pow(trace_generator, (safe_div((safe_mult(547, global_values.trace_length)), 65536))). - local pow554 = pow32 * pow553; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 16384))). - local pow555 = pow32 * pow554; // pow(trace_generator, (safe_div((safe_mult(549, global_values.trace_length)), 65536))). - local pow556 = pow32 * pow555; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 32768))). - local pow557 = pow32 * pow556; // pow(trace_generator, (safe_div((safe_mult(551, global_values.trace_length)), 65536))). - local pow558 = pow32 * pow557; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 8192))). - local pow559 = pow32 * pow558; // pow(trace_generator, (safe_div((safe_mult(553, global_values.trace_length)), 65536))). - local pow560 = pow32 * pow559; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 32768))). - local pow561 = pow32 * pow560; // pow(trace_generator, (safe_div((safe_mult(555, global_values.trace_length)), 65536))). - local pow562 = pow32 * pow561; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 16384))). - local pow563 = pow32 * pow562; // pow(trace_generator, (safe_div((safe_mult(557, global_values.trace_length)), 65536))). - local pow564 = pow32 * pow563; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 32768))). - local pow565 = pow32 * pow564; // pow(trace_generator, (safe_div((safe_mult(559, global_values.trace_length)), 65536))). - local pow566 = pow32 * pow565; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 4096))). - local pow567 = pow32 * pow566; // pow(trace_generator, (safe_div((safe_mult(561, global_values.trace_length)), 65536))). - local pow568 = pow32 * pow567; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 32768))). - local pow569 = pow32 * pow568; // pow(trace_generator, (safe_div((safe_mult(563, global_values.trace_length)), 65536))). - local pow570 = pow32 * pow569; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 16384))). - local pow571 = pow32 * pow570; // pow(trace_generator, (safe_div((safe_mult(565, global_values.trace_length)), 65536))). - local pow572 = pow32 * pow571; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 32768))). - local pow573 = pow32 * pow572; // pow(trace_generator, (safe_div((safe_mult(567, global_values.trace_length)), 65536))). - local pow574 = pow32 * pow573; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 8192))). - local pow575 = pow32 * pow574; // pow(trace_generator, (safe_div((safe_mult(569, global_values.trace_length)), 65536))). - local pow576 = pow32 * pow575; // pow(trace_generator, (safe_div((safe_mult(285, global_values.trace_length)), 32768))). - local pow577 = pow32 * pow576; // pow(trace_generator, (safe_div((safe_mult(571, global_values.trace_length)), 65536))). - local pow578 = pow32 * pow577; // pow(trace_generator, (safe_div((safe_mult(143, global_values.trace_length)), 16384))). - local pow579 = pow32 * pow578; // pow(trace_generator, (safe_div((safe_mult(573, global_values.trace_length)), 65536))). - local pow580 = pow41 * pow579; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 1024))). - local pow581 = pow32 * pow580; // pow(trace_generator, (safe_div((safe_mult(577, global_values.trace_length)), 65536))). - local pow582 = pow32 * pow581; // pow(trace_generator, (safe_div((safe_mult(289, global_values.trace_length)), 32768))). - local pow583 = pow32 * pow582; // pow(trace_generator, (safe_div((safe_mult(579, global_values.trace_length)), 65536))). - local pow584 = pow32 * pow583; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 16384))). - local pow585 = pow32 * pow584; // pow(trace_generator, (safe_div((safe_mult(581, global_values.trace_length)), 65536))). - local pow586 = pow32 * pow585; // pow(trace_generator, (safe_div((safe_mult(291, global_values.trace_length)), 32768))). - local pow587 = pow32 * pow586; // pow(trace_generator, (safe_div((safe_mult(583, global_values.trace_length)), 65536))). - local pow588 = pow32 * pow587; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 8192))). - local pow589 = pow32 * pow588; // pow(trace_generator, (safe_div((safe_mult(585, global_values.trace_length)), 65536))). - local pow590 = pow32 * pow589; // pow(trace_generator, (safe_div((safe_mult(293, global_values.trace_length)), 32768))). - local pow591 = pow32 * pow590; // pow(trace_generator, (safe_div((safe_mult(587, global_values.trace_length)), 65536))). - local pow592 = pow32 * pow591; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 16384))). - local pow593 = pow32 * pow592; // pow(trace_generator, (safe_div((safe_mult(589, global_values.trace_length)), 65536))). - local pow594 = pow32 * pow593; // pow(trace_generator, (safe_div((safe_mult(295, global_values.trace_length)), 32768))). - local pow595 = pow32 * pow594; // pow(trace_generator, (safe_div((safe_mult(591, global_values.trace_length)), 65536))). - local pow596 = pow32 * pow595; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 4096))). - local pow597 = pow32 * pow596; // pow(trace_generator, (safe_div((safe_mult(593, global_values.trace_length)), 65536))). - local pow598 = pow32 * pow597; // pow(trace_generator, (safe_div((safe_mult(297, global_values.trace_length)), 32768))). - local pow599 = pow32 * pow598; // pow(trace_generator, (safe_div((safe_mult(595, global_values.trace_length)), 65536))). - local pow600 = pow32 * pow599; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 16384))). - local pow601 = pow32 * pow600; // pow(trace_generator, (safe_div((safe_mult(597, global_values.trace_length)), 65536))). - local pow602 = pow32 * pow601; // pow(trace_generator, (safe_div((safe_mult(299, global_values.trace_length)), 32768))). - local pow603 = pow32 * pow602; // pow(trace_generator, (safe_div((safe_mult(599, global_values.trace_length)), 65536))). - local pow604 = pow32 * pow603; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 8192))). - local pow605 = pow32 * pow604; // pow(trace_generator, (safe_div((safe_mult(601, global_values.trace_length)), 65536))). - local pow606 = pow32 * pow605; // pow(trace_generator, (safe_div((safe_mult(301, global_values.trace_length)), 32768))). - local pow607 = pow32 * pow606; // pow(trace_generator, (safe_div((safe_mult(603, global_values.trace_length)), 65536))). - local pow608 = pow32 * pow607; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 16384))). - local pow609 = pow32 * pow608; // pow(trace_generator, (safe_div((safe_mult(605, global_values.trace_length)), 65536))). - local pow610 = pow41 * pow609; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 2048))). - local pow611 = pow32 * pow610; // pow(trace_generator, (safe_div((safe_mult(609, global_values.trace_length)), 65536))). - local pow612 = pow32 * pow611; // pow(trace_generator, (safe_div((safe_mult(305, global_values.trace_length)), 32768))). - local pow613 = pow32 * pow612; // pow(trace_generator, (safe_div((safe_mult(611, global_values.trace_length)), 65536))). - local pow614 = pow32 * pow613; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 16384))). - local pow615 = pow32 * pow614; // pow(trace_generator, (safe_div((safe_mult(613, global_values.trace_length)), 65536))). - local pow616 = pow32 * pow615; // pow(trace_generator, (safe_div((safe_mult(307, global_values.trace_length)), 32768))). - local pow617 = pow32 * pow616; // pow(trace_generator, (safe_div((safe_mult(615, global_values.trace_length)), 65536))). - local pow618 = pow32 * pow617; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 8192))). - local pow619 = pow32 * pow618; // pow(trace_generator, (safe_div((safe_mult(617, global_values.trace_length)), 65536))). - local pow620 = pow32 * pow619; // pow(trace_generator, (safe_div((safe_mult(309, global_values.trace_length)), 32768))). - local pow621 = pow32 * pow620; // pow(trace_generator, (safe_div((safe_mult(619, global_values.trace_length)), 65536))). - local pow622 = pow32 * pow621; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 16384))). - local pow623 = pow32 * pow622; // pow(trace_generator, (safe_div((safe_mult(621, global_values.trace_length)), 65536))). - local pow624 = pow32 * pow623; // pow(trace_generator, (safe_div((safe_mult(311, global_values.trace_length)), 32768))). - local pow625 = pow32 * pow624; // pow(trace_generator, (safe_div((safe_mult(623, global_values.trace_length)), 65536))). - local pow626 = pow32 * pow625; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 4096))). - local pow627 = pow32 * pow626; // pow(trace_generator, (safe_div((safe_mult(625, global_values.trace_length)), 65536))). - local pow628 = pow32 * pow627; // pow(trace_generator, (safe_div((safe_mult(313, global_values.trace_length)), 32768))). - local pow629 = pow32 * pow628; // pow(trace_generator, (safe_div((safe_mult(627, global_values.trace_length)), 65536))). - local pow630 = pow32 * pow629; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 16384))). - local pow631 = pow32 * pow630; // pow(trace_generator, (safe_div((safe_mult(629, global_values.trace_length)), 65536))). - local pow632 = pow32 * pow631; // pow(trace_generator, (safe_div((safe_mult(315, global_values.trace_length)), 32768))). - local pow633 = pow32 * pow632; // pow(trace_generator, (safe_div((safe_mult(631, global_values.trace_length)), 65536))). - local pow634 = pow32 * pow633; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 8192))). - local pow635 = pow32 * pow634; // pow(trace_generator, (safe_div((safe_mult(633, global_values.trace_length)), 65536))). - local pow636 = pow32 * pow635; // pow(trace_generator, (safe_div((safe_mult(317, global_values.trace_length)), 32768))). - local pow637 = pow32 * pow636; // pow(trace_generator, (safe_div((safe_mult(635, global_values.trace_length)), 65536))). - local pow638 = pow32 * pow637; // pow(trace_generator, (safe_div((safe_mult(159, global_values.trace_length)), 16384))). - local pow639 = pow32 * pow638; // pow(trace_generator, (safe_div((safe_mult(637, global_values.trace_length)), 65536))). - local pow640 = pow41 * pow639; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 512))). - local pow641 = pow32 * pow640; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 65536))). - local pow642 = pow32 * pow641; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 32768))). - local pow643 = pow32 * pow642; // pow(trace_generator, (safe_div((safe_mult(643, global_values.trace_length)), 65536))). - local pow644 = pow32 * pow643; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 16384))). - local pow645 = pow32 * pow644; // pow(trace_generator, (safe_div((safe_mult(645, global_values.trace_length)), 65536))). - local pow646 = pow32 * pow645; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 32768))). - local pow647 = pow32 * pow646; // pow(trace_generator, (safe_div((safe_mult(647, global_values.trace_length)), 65536))). - local pow648 = pow32 * pow647; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 8192))). - local pow649 = pow32 * pow648; // pow(trace_generator, (safe_div((safe_mult(649, global_values.trace_length)), 65536))). - local pow650 = pow32 * pow649; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 32768))). - local pow651 = pow32 * pow650; // pow(trace_generator, (safe_div((safe_mult(651, global_values.trace_length)), 65536))). - local pow652 = pow32 * pow651; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 16384))). - local pow653 = pow32 * pow652; // pow(trace_generator, (safe_div((safe_mult(653, global_values.trace_length)), 65536))). - local pow654 = pow32 * pow653; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 32768))). - local pow655 = pow32 * pow654; // pow(trace_generator, (safe_div((safe_mult(655, global_values.trace_length)), 65536))). - local pow656 = pow32 * pow655; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 4096))). - local pow657 = pow32 * pow656; // pow(trace_generator, (safe_div((safe_mult(657, global_values.trace_length)), 65536))). - local pow658 = pow32 * pow657; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 32768))). - local pow659 = pow32 * pow658; // pow(trace_generator, (safe_div((safe_mult(659, global_values.trace_length)), 65536))). - local pow660 = pow32 * pow659; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 16384))). - local pow661 = pow32 * pow660; // pow(trace_generator, (safe_div((safe_mult(661, global_values.trace_length)), 65536))). - local pow662 = pow32 * pow661; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 32768))). - local pow663 = pow32 * pow662; // pow(trace_generator, (safe_div((safe_mult(663, global_values.trace_length)), 65536))). - local pow664 = pow32 * pow663; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 8192))). - local pow665 = pow32 * pow664; // pow(trace_generator, (safe_div((safe_mult(665, global_values.trace_length)), 65536))). - local pow666 = pow32 * pow665; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 32768))). - local pow667 = pow32 * pow666; // pow(trace_generator, (safe_div((safe_mult(667, global_values.trace_length)), 65536))). - local pow668 = pow32 * pow667; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 16384))). - local pow669 = pow32 * pow668; // pow(trace_generator, (safe_div((safe_mult(669, global_values.trace_length)), 65536))). - local pow670 = pow41 * pow669; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 2048))). - local pow671 = pow32 * pow670; // pow(trace_generator, (safe_div((safe_mult(673, global_values.trace_length)), 65536))). - local pow672 = pow32 * pow671; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 32768))). - local pow673 = pow32 * pow672; // pow(trace_generator, (safe_div((safe_mult(675, global_values.trace_length)), 65536))). - local pow674 = pow32 * pow673; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 16384))). - local pow675 = pow32 * pow674; // pow(trace_generator, (safe_div((safe_mult(677, global_values.trace_length)), 65536))). - local pow676 = pow32 * pow675; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 32768))). - local pow677 = pow32 * pow676; // pow(trace_generator, (safe_div((safe_mult(679, global_values.trace_length)), 65536))). - local pow678 = pow32 * pow677; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 8192))). - local pow679 = pow32 * pow678; // pow(trace_generator, (safe_div((safe_mult(681, global_values.trace_length)), 65536))). - local pow680 = pow32 * pow679; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 32768))). - local pow681 = pow32 * pow680; // pow(trace_generator, (safe_div((safe_mult(683, global_values.trace_length)), 65536))). - local pow682 = pow32 * pow681; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 16384))). - local pow683 = pow32 * pow682; // pow(trace_generator, (safe_div((safe_mult(685, global_values.trace_length)), 65536))). - local pow684 = pow32 * pow683; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 32768))). - local pow685 = pow32 * pow684; // pow(trace_generator, (safe_div((safe_mult(687, global_values.trace_length)), 65536))). - local pow686 = pow32 * pow685; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 4096))). - local pow687 = pow32 * pow686; // pow(trace_generator, (safe_div((safe_mult(689, global_values.trace_length)), 65536))). - local pow688 = pow32 * pow687; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 32768))). - local pow689 = pow32 * pow688; // pow(trace_generator, (safe_div((safe_mult(691, global_values.trace_length)), 65536))). - local pow690 = pow32 * pow689; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 16384))). - local pow691 = pow32 * pow690; // pow(trace_generator, (safe_div((safe_mult(693, global_values.trace_length)), 65536))). - local pow692 = pow32 * pow691; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 32768))). - local pow693 = pow32 * pow692; // pow(trace_generator, (safe_div((safe_mult(695, global_values.trace_length)), 65536))). - local pow694 = pow32 * pow693; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 8192))). - local pow695 = pow32 * pow694; // pow(trace_generator, (safe_div((safe_mult(697, global_values.trace_length)), 65536))). - local pow696 = pow32 * pow695; // pow(trace_generator, (safe_div((safe_mult(349, global_values.trace_length)), 32768))). - local pow697 = pow32 * pow696; // pow(trace_generator, (safe_div((safe_mult(699, global_values.trace_length)), 65536))). - local pow698 = pow32 * pow697; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 16384))). - local pow699 = pow32 * pow698; // pow(trace_generator, (safe_div((safe_mult(701, global_values.trace_length)), 65536))). - local pow700 = pow41 * pow699; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 1024))). - local pow701 = pow32 * pow700; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 65536))). - local pow702 = pow32 * pow701; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 32768))). - local pow703 = pow32 * pow702; // pow(trace_generator, (safe_div((safe_mult(707, global_values.trace_length)), 65536))). - local pow704 = pow32 * pow703; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 16384))). - local pow705 = pow32 * pow704; // pow(trace_generator, (safe_div((safe_mult(709, global_values.trace_length)), 65536))). - local pow706 = pow32 * pow705; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 32768))). - local pow707 = pow32 * pow706; // pow(trace_generator, (safe_div((safe_mult(711, global_values.trace_length)), 65536))). - local pow708 = pow32 * pow707; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 8192))). - local pow709 = pow32 * pow708; // pow(trace_generator, (safe_div((safe_mult(713, global_values.trace_length)), 65536))). - local pow710 = pow32 * pow709; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 32768))). - local pow711 = pow32 * pow710; // pow(trace_generator, (safe_div((safe_mult(715, global_values.trace_length)), 65536))). - local pow712 = pow32 * pow711; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 16384))). - local pow713 = pow32 * pow712; // pow(trace_generator, (safe_div((safe_mult(717, global_values.trace_length)), 65536))). - local pow714 = pow32 * pow713; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 32768))). - local pow715 = pow32 * pow714; // pow(trace_generator, (safe_div((safe_mult(719, global_values.trace_length)), 65536))). - local pow716 = pow32 * pow715; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 4096))). - local pow717 = pow32 * pow716; // pow(trace_generator, (safe_div((safe_mult(721, global_values.trace_length)), 65536))). - local pow718 = pow32 * pow717; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 32768))). - local pow719 = pow32 * pow718; // pow(trace_generator, (safe_div((safe_mult(723, global_values.trace_length)), 65536))). - local pow720 = pow32 * pow719; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 16384))). - local pow721 = pow32 * pow720; // pow(trace_generator, (safe_div((safe_mult(725, global_values.trace_length)), 65536))). - local pow722 = pow32 * pow721; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 32768))). - local pow723 = pow32 * pow722; // pow(trace_generator, (safe_div((safe_mult(727, global_values.trace_length)), 65536))). - local pow724 = pow32 * pow723; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 8192))). - local pow725 = pow32 * pow724; // pow(trace_generator, (safe_div((safe_mult(729, global_values.trace_length)), 65536))). - local pow726 = pow32 * pow725; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 32768))). - local pow727 = pow32 * pow726; // pow(trace_generator, (safe_div((safe_mult(731, global_values.trace_length)), 65536))). - local pow728 = pow32 * pow727; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 16384))). - local pow729 = pow32 * pow728; // pow(trace_generator, (safe_div((safe_mult(733, global_values.trace_length)), 65536))). - local pow730 = pow41 * pow729; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 2048))). - local pow731 = pow32 * pow730; // pow(trace_generator, (safe_div((safe_mult(737, global_values.trace_length)), 65536))). - local pow732 = pow32 * pow731; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 32768))). - local pow733 = pow32 * pow732; // pow(trace_generator, (safe_div((safe_mult(739, global_values.trace_length)), 65536))). - local pow734 = pow32 * pow733; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 16384))). - local pow735 = pow32 * pow734; // pow(trace_generator, (safe_div((safe_mult(741, global_values.trace_length)), 65536))). - local pow736 = pow32 * pow735; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 32768))). - local pow737 = pow32 * pow736; // pow(trace_generator, (safe_div((safe_mult(743, global_values.trace_length)), 65536))). - local pow738 = pow32 * pow737; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 8192))). - local pow739 = pow32 * pow738; // pow(trace_generator, (safe_div((safe_mult(745, global_values.trace_length)), 65536))). - local pow740 = pow32 * pow739; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 32768))). - local pow741 = pow32 * pow740; // pow(trace_generator, (safe_div((safe_mult(747, global_values.trace_length)), 65536))). - local pow742 = pow32 * pow741; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 16384))). - local pow743 = pow32 * pow742; // pow(trace_generator, (safe_div((safe_mult(749, global_values.trace_length)), 65536))). - local pow744 = pow32 * pow743; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 32768))). - local pow745 = pow32 * pow744; // pow(trace_generator, (safe_div((safe_mult(751, global_values.trace_length)), 65536))). - local pow746 = pow32 * pow745; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 4096))). - local pow747 = pow32 * pow746; // pow(trace_generator, (safe_div((safe_mult(753, global_values.trace_length)), 65536))). - local pow748 = pow32 * pow747; // pow(trace_generator, (safe_div((safe_mult(377, global_values.trace_length)), 32768))). - local pow749 = pow32 * pow748; // pow(trace_generator, (safe_div((safe_mult(755, global_values.trace_length)), 65536))). - local pow750 = pow32 * pow749; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 16384))). - local pow751 = pow32 * pow750; // pow(trace_generator, (safe_div((safe_mult(757, global_values.trace_length)), 65536))). - local pow752 = pow32 * pow751; // pow(trace_generator, (safe_div((safe_mult(379, global_values.trace_length)), 32768))). - local pow753 = pow32 * pow752; // pow(trace_generator, (safe_div((safe_mult(759, global_values.trace_length)), 65536))). - local pow754 = pow32 * pow753; // pow(trace_generator, (safe_div((safe_mult(95, global_values.trace_length)), 8192))). - local pow755 = pow32 * pow754; // pow(trace_generator, (safe_div((safe_mult(761, global_values.trace_length)), 65536))). - local pow756 = pow32 * pow755; // pow(trace_generator, (safe_div((safe_mult(381, global_values.trace_length)), 32768))). - local pow757 = pow32 * pow756; // pow(trace_generator, (safe_div((safe_mult(763, global_values.trace_length)), 65536))). - local pow758 = pow32 * pow757; // pow(trace_generator, (safe_div((safe_mult(191, global_values.trace_length)), 16384))). - local pow759 = pow32 * pow758; // pow(trace_generator, (safe_div((safe_mult(765, global_values.trace_length)), 65536))). - local pow760 = pow41 * pow759; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 256))). - local pow761 = pow32 * pow760; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 65536))). - local pow762 = pow32 * pow761; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 32768))). - local pow763 = pow32 * pow762; // pow(trace_generator, (safe_div((safe_mult(771, global_values.trace_length)), 65536))). - local pow764 = pow32 * pow763; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 16384))). - local pow765 = pow32 * pow764; // pow(trace_generator, (safe_div((safe_mult(773, global_values.trace_length)), 65536))). - local pow766 = pow32 * pow765; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 32768))). - local pow767 = pow32 * pow766; // pow(trace_generator, (safe_div((safe_mult(775, global_values.trace_length)), 65536))). - local pow768 = pow32 * pow767; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 8192))). - local pow769 = pow32 * pow768; // pow(trace_generator, (safe_div((safe_mult(777, global_values.trace_length)), 65536))). - local pow770 = pow32 * pow769; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 32768))). - local pow771 = pow32 * pow770; // pow(trace_generator, (safe_div((safe_mult(779, global_values.trace_length)), 65536))). - local pow772 = pow32 * pow771; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 16384))). - local pow773 = pow32 * pow772; // pow(trace_generator, (safe_div((safe_mult(781, global_values.trace_length)), 65536))). - local pow774 = pow32 * pow773; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 32768))). - local pow775 = pow32 * pow774; // pow(trace_generator, (safe_div((safe_mult(783, global_values.trace_length)), 65536))). - local pow776 = pow32 * pow775; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 4096))). - local pow777 = pow32 * pow776; // pow(trace_generator, (safe_div((safe_mult(785, global_values.trace_length)), 65536))). - local pow778 = pow32 * pow777; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 32768))). - local pow779 = pow32 * pow778; // pow(trace_generator, (safe_div((safe_mult(787, global_values.trace_length)), 65536))). - local pow780 = pow32 * pow779; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 16384))). - local pow781 = pow32 * pow780; // pow(trace_generator, (safe_div((safe_mult(789, global_values.trace_length)), 65536))). - local pow782 = pow32 * pow781; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 32768))). - local pow783 = pow32 * pow782; // pow(trace_generator, (safe_div((safe_mult(791, global_values.trace_length)), 65536))). - local pow784 = pow32 * pow783; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 8192))). - local pow785 = pow32 * pow784; // pow(trace_generator, (safe_div((safe_mult(793, global_values.trace_length)), 65536))). - local pow786 = pow32 * pow785; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 32768))). - local pow787 = pow32 * pow786; // pow(trace_generator, (safe_div((safe_mult(795, global_values.trace_length)), 65536))). - local pow788 = pow32 * pow787; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 16384))). - local pow789 = pow32 * pow788; // pow(trace_generator, (safe_div((safe_mult(797, global_values.trace_length)), 65536))). - local pow790 = pow73 * pow789; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 1024))). - local pow791 = pow100 * pow790; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 512))). - local pow792 = pow100 * pow791; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 1024))). - local pow793 = pow100 * pow792; // pow(trace_generator, (safe_div(global_values.trace_length, 64))). - local pow794 = pow32 * pow793; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 65536))). - local pow795 = pow32 * pow794; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 32768))). - local pow796 = pow32 * pow795; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 65536))). - local pow797 = pow32 * pow796; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 16384))). - local pow798 = pow32 * pow797; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 65536))). - local pow799 = pow32 * pow798; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 32768))). - local pow800 = pow32 * pow799; // pow(trace_generator, (safe_div((safe_mult(1031, global_values.trace_length)), 65536))). - local pow801 = pow32 * pow800; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 8192))). - local pow802 = pow32 * pow801; // pow(trace_generator, (safe_div((safe_mult(1033, global_values.trace_length)), 65536))). - local pow803 = pow32 * pow802; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 32768))). - local pow804 = pow32 * pow803; // pow(trace_generator, (safe_div((safe_mult(1035, global_values.trace_length)), 65536))). - local pow805 = pow32 * pow804; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 16384))). - local pow806 = pow32 * pow805; // pow(trace_generator, (safe_div((safe_mult(1037, global_values.trace_length)), 65536))). - local pow807 = pow32 * pow806; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 32768))). - local pow808 = pow32 * pow807; // pow(trace_generator, (safe_div((safe_mult(1039, global_values.trace_length)), 65536))). - local pow809 = pow32 * pow808; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 4096))). - local pow810 = pow32 * pow809; // pow(trace_generator, (safe_div((safe_mult(1041, global_values.trace_length)), 65536))). - local pow811 = pow32 * pow810; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 32768))). - local pow812 = pow32 * pow811; // pow(trace_generator, (safe_div((safe_mult(1043, global_values.trace_length)), 65536))). - local pow813 = pow32 * pow812; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 16384))). - local pow814 = pow32 * pow813; // pow(trace_generator, (safe_div((safe_mult(1045, global_values.trace_length)), 65536))). - local pow815 = pow32 * pow814; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 32768))). - local pow816 = pow32 * pow815; // pow(trace_generator, (safe_div((safe_mult(1047, global_values.trace_length)), 65536))). - local pow817 = pow79 * pow816; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 1024))). - local pow818 = pow100 * pow817; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 512))). - local pow819 = pow100 * pow818; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 1024))). - local pow820 = pow100 * pow819; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 256))). - local pow821 = pow100 * pow820; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 1024))). - local pow822 = pow100 * pow821; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 512))). - local pow823 = pow100 * pow822; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 1024))). - local pow824 = pow580 * pow823; // pow(trace_generator, (safe_div(global_values.trace_length, 32))). - local pow825 = pow32 * pow824; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 65536))). - local pow826 = pow32 * pow825; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 32768))). - local pow827 = pow32 * pow826; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 65536))). - local pow828 = pow32 * pow827; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 16384))). - local pow829 = pow32 * pow828; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 65536))). - local pow830 = pow32 * pow829; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 32768))). - local pow831 = pow32 * pow830; // pow(trace_generator, (safe_div((safe_mult(2055, global_values.trace_length)), 65536))). - local pow832 = pow32 * pow831; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 8192))). - local pow833 = pow32 * pow832; // pow(trace_generator, (safe_div((safe_mult(2057, global_values.trace_length)), 65536))). - local pow834 = pow32 * pow833; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 32768))). - local pow835 = pow32 * pow834; // pow(trace_generator, (safe_div((safe_mult(2059, global_values.trace_length)), 65536))). - local pow836 = pow32 * pow835; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 16384))). - local pow837 = pow32 * pow836; // pow(trace_generator, (safe_div((safe_mult(2061, global_values.trace_length)), 65536))). - local pow838 = pow32 * pow837; // pow(trace_generator, (safe_div((safe_mult(1031, global_values.trace_length)), 32768))). - local pow839 = pow32 * pow838; // pow(trace_generator, (safe_div((safe_mult(2063, global_values.trace_length)), 65536))). - local pow840 = pow32 * pow839; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 4096))). - local pow841 = pow32 * pow840; // pow(trace_generator, (safe_div((safe_mult(2065, global_values.trace_length)), 65536))). - local pow842 = pow32 * pow841; // pow(trace_generator, (safe_div((safe_mult(1033, global_values.trace_length)), 32768))). - local pow843 = pow32 * pow842; // pow(trace_generator, (safe_div((safe_mult(2067, global_values.trace_length)), 65536))). - local pow844 = pow32 * pow843; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 16384))). - local pow845 = pow32 * pow844; // pow(trace_generator, (safe_div((safe_mult(2069, global_values.trace_length)), 65536))). - local pow846 = pow32 * pow845; // pow(trace_generator, (safe_div((safe_mult(1035, global_values.trace_length)), 32768))). - local pow847 = pow32 * pow846; // pow(trace_generator, (safe_div((safe_mult(2071, global_values.trace_length)), 65536))). - local pow848 = pow79 * pow847; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 1024))). - local pow849 = pow100 * pow848; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 512))). - local pow850 = pow100 * pow849; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 1024))). - local pow851 = pow100 * pow850; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 256))). - local pow852 = pow100 * pow851; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 1024))). - local pow853 = pow100 * pow852; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 512))). - local pow854 = pow100 * pow853; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 1024))). - local pow855 = pow100 * pow854; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 128))). - local pow856 = pow100 * pow855; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 1024))). - local pow857 = pow100 * pow856; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 512))). - local pow858 = pow100 * pow857; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 1024))). - local pow859 = pow100 * pow858; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 256))). - local pow860 = pow100 * pow859; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 1024))). - local pow861 = pow100 * pow860; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 512))). - local pow862 = pow100 * pow861; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 1024))). - local pow863 = pow100 * pow862; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 64))). - local pow864 = pow32 * pow863; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 65536))). - local pow865 = pow32 * pow864; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 32768))). - local pow866 = pow32 * pow865; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 65536))). - local pow867 = pow32 * pow866; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 16384))). - local pow868 = pow32 * pow867; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 65536))). - local pow869 = pow32 * pow868; // pow(trace_generator, (safe_div((safe_mult(1539, global_values.trace_length)), 32768))). - local pow870 = pow32 * pow869; // pow(trace_generator, (safe_div((safe_mult(3079, global_values.trace_length)), 65536))). - local pow871 = pow32 * pow870; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 8192))). - local pow872 = pow32 * pow871; // pow(trace_generator, (safe_div((safe_mult(3081, global_values.trace_length)), 65536))). - local pow873 = pow32 * pow872; // pow(trace_generator, (safe_div((safe_mult(1541, global_values.trace_length)), 32768))). - local pow874 = pow32 * pow873; // pow(trace_generator, (safe_div((safe_mult(3083, global_values.trace_length)), 65536))). - local pow875 = pow32 * pow874; // pow(trace_generator, (safe_div((safe_mult(771, global_values.trace_length)), 16384))). - local pow876 = pow32 * pow875; // pow(trace_generator, (safe_div((safe_mult(3085, global_values.trace_length)), 65536))). - local pow877 = pow32 * pow876; // pow(trace_generator, (safe_div((safe_mult(1543, global_values.trace_length)), 32768))). - local pow878 = pow32 * pow877; // pow(trace_generator, (safe_div((safe_mult(3087, global_values.trace_length)), 65536))). - local pow879 = pow32 * pow878; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 4096))). - local pow880 = pow32 * pow879; // pow(trace_generator, (safe_div((safe_mult(3089, global_values.trace_length)), 65536))). - local pow881 = pow32 * pow880; // pow(trace_generator, (safe_div((safe_mult(1545, global_values.trace_length)), 32768))). - local pow882 = pow32 * pow881; // pow(trace_generator, (safe_div((safe_mult(3091, global_values.trace_length)), 65536))). - local pow883 = pow32 * pow882; // pow(trace_generator, (safe_div((safe_mult(773, global_values.trace_length)), 16384))). - local pow884 = pow32 * pow883; // pow(trace_generator, (safe_div((safe_mult(3093, global_values.trace_length)), 65536))). - local pow885 = pow32 * pow884; // pow(trace_generator, (safe_div((safe_mult(1547, global_values.trace_length)), 32768))). - local pow886 = pow32 * pow885; // pow(trace_generator, (safe_div((safe_mult(3095, global_values.trace_length)), 65536))). - local pow887 = pow79 * pow886; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 1024))). - local pow888 = pow100 * pow887; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 512))). - local pow889 = pow100 * pow888; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 1024))). - local pow890 = pow100 * pow889; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 256))). - local pow891 = pow100 * pow890; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 1024))). - local pow892 = pow100 * pow891; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 512))). - local pow893 = pow100 * pow892; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 1024))). - local pow894 = pow580 * pow893; // pow(trace_generator, (safe_div(global_values.trace_length, 16))). - local pow895 = pow32 * pow894; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 65536))). - local pow896 = pow32 * pow895; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 32768))). - local pow897 = pow32 * pow896; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 65536))). - local pow898 = pow32 * pow897; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 16384))). - local pow899 = pow32 * pow898; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 65536))). - local pow900 = pow32 * pow899; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 32768))). - local pow901 = pow32 * pow900; // pow(trace_generator, (safe_div((safe_mult(4103, global_values.trace_length)), 65536))). - local pow902 = pow32 * pow901; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 8192))). - local pow903 = pow32 * pow902; // pow(trace_generator, (safe_div((safe_mult(4105, global_values.trace_length)), 65536))). - local pow904 = pow32 * pow903; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 32768))). - local pow905 = pow32 * pow904; // pow(trace_generator, (safe_div((safe_mult(4107, global_values.trace_length)), 65536))). - local pow906 = pow32 * pow905; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 16384))). - local pow907 = pow32 * pow906; // pow(trace_generator, (safe_div((safe_mult(4109, global_values.trace_length)), 65536))). - local pow908 = pow32 * pow907; // pow(trace_generator, (safe_div((safe_mult(2055, global_values.trace_length)), 32768))). - local pow909 = pow32 * pow908; // pow(trace_generator, (safe_div((safe_mult(4111, global_values.trace_length)), 65536))). - local pow910 = pow32 * pow909; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 4096))). - local pow911 = pow32 * pow910; // pow(trace_generator, (safe_div((safe_mult(4113, global_values.trace_length)), 65536))). - local pow912 = pow32 * pow911; // pow(trace_generator, (safe_div((safe_mult(2057, global_values.trace_length)), 32768))). - local pow913 = pow32 * pow912; // pow(trace_generator, (safe_div((safe_mult(4115, global_values.trace_length)), 65536))). - local pow914 = pow32 * pow913; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 16384))). - local pow915 = pow32 * pow914; // pow(trace_generator, (safe_div((safe_mult(4117, global_values.trace_length)), 65536))). - local pow916 = pow32 * pow915; // pow(trace_generator, (safe_div((safe_mult(2059, global_values.trace_length)), 32768))). - local pow917 = pow32 * pow916; // pow(trace_generator, (safe_div((safe_mult(4119, global_values.trace_length)), 65536))). - local pow918 = pow79 * pow917; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 1024))). - local pow919 = pow100 * pow918; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 512))). - local pow920 = pow100 * pow919; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 1024))). - local pow921 = pow100 * pow920; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 256))). - local pow922 = pow100 * pow921; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 1024))). - local pow923 = pow100 * pow922; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 512))). - local pow924 = pow100 * pow923; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 1024))). - local pow925 = pow100 * pow924; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 128))). - local pow926 = pow100 * pow925; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 1024))). - local pow927 = pow100 * pow926; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 512))). - local pow928 = pow100 * pow927; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 1024))). - local pow929 = pow100 * pow928; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 256))). - local pow930 = pow100 * pow929; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 1024))). - local pow931 = pow100 * pow930; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 512))). - local pow932 = pow100 * pow931; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 1024))). - local pow933 = pow100 * pow932; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 64))). - local pow934 = pow32 * pow933; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 65536))). - local pow935 = pow32 * pow934; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 32768))). - local pow936 = pow32 * pow935; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 65536))). - local pow937 = pow32 * pow936; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 16384))). - local pow938 = pow32 * pow937; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 65536))). - local pow939 = pow32 * pow938; // pow(trace_generator, (safe_div((safe_mult(2563, global_values.trace_length)), 32768))). - local pow940 = pow32 * pow939; // pow(trace_generator, (safe_div((safe_mult(5127, global_values.trace_length)), 65536))). - local pow941 = pow32 * pow940; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 8192))). - local pow942 = pow32 * pow941; // pow(trace_generator, (safe_div((safe_mult(5129, global_values.trace_length)), 65536))). - local pow943 = pow32 * pow942; // pow(trace_generator, (safe_div((safe_mult(2565, global_values.trace_length)), 32768))). - local pow944 = pow32 * pow943; // pow(trace_generator, (safe_div((safe_mult(5131, global_values.trace_length)), 65536))). - local pow945 = pow32 * pow944; // pow(trace_generator, (safe_div((safe_mult(1283, global_values.trace_length)), 16384))). - local pow946 = pow32 * pow945; // pow(trace_generator, (safe_div((safe_mult(5133, global_values.trace_length)), 65536))). - local pow947 = pow32 * pow946; // pow(trace_generator, (safe_div((safe_mult(2567, global_values.trace_length)), 32768))). - local pow948 = pow32 * pow947; // pow(trace_generator, (safe_div((safe_mult(5135, global_values.trace_length)), 65536))). - local pow949 = pow32 * pow948; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 4096))). - local pow950 = pow32 * pow949; // pow(trace_generator, (safe_div((safe_mult(5137, global_values.trace_length)), 65536))). - local pow951 = pow32 * pow950; // pow(trace_generator, (safe_div((safe_mult(2569, global_values.trace_length)), 32768))). - local pow952 = pow32 * pow951; // pow(trace_generator, (safe_div((safe_mult(5139, global_values.trace_length)), 65536))). - local pow953 = pow32 * pow952; // pow(trace_generator, (safe_div((safe_mult(1285, global_values.trace_length)), 16384))). - local pow954 = pow32 * pow953; // pow(trace_generator, (safe_div((safe_mult(5141, global_values.trace_length)), 65536))). - local pow955 = pow32 * pow954; // pow(trace_generator, (safe_div((safe_mult(2571, global_values.trace_length)), 32768))). - local pow956 = pow32 * pow955; // pow(trace_generator, (safe_div((safe_mult(5143, global_values.trace_length)), 65536))). - local pow957 = pow79 * pow956; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 1024))). - local pow958 = pow100 * pow957; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 512))). - local pow959 = pow100 * pow958; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 1024))). - local pow960 = pow100 * pow959; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 256))). - local pow961 = pow100 * pow960; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 1024))). - local pow962 = pow100 * pow961; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 512))). - local pow963 = pow100 * pow962; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 1024))). - local pow964 = pow580 * pow963; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 32))). - local pow965 = pow32 * pow964; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 65536))). - local pow966 = pow32 * pow965; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 32768))). - local pow967 = pow32 * pow966; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 65536))). - local pow968 = pow32 * pow967; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 16384))). - local pow969 = pow32 * pow968; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 65536))). - local pow970 = pow32 * pow969; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 32768))). - local pow971 = pow32 * pow970; // pow(trace_generator, (safe_div((safe_mult(6151, global_values.trace_length)), 65536))). - local pow972 = pow32 * pow971; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 8192))). - local pow973 = pow32 * pow972; // pow(trace_generator, (safe_div((safe_mult(6153, global_values.trace_length)), 65536))). - local pow974 = pow32 * pow973; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 32768))). - local pow975 = pow32 * pow974; // pow(trace_generator, (safe_div((safe_mult(6155, global_values.trace_length)), 65536))). - local pow976 = pow32 * pow975; // pow(trace_generator, (safe_div((safe_mult(1539, global_values.trace_length)), 16384))). - local pow977 = pow32 * pow976; // pow(trace_generator, (safe_div((safe_mult(6157, global_values.trace_length)), 65536))). - local pow978 = pow32 * pow977; // pow(trace_generator, (safe_div((safe_mult(3079, global_values.trace_length)), 32768))). - local pow979 = pow32 * pow978; // pow(trace_generator, (safe_div((safe_mult(6159, global_values.trace_length)), 65536))). - local pow980 = pow32 * pow979; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 4096))). - local pow981 = pow32 * pow980; // pow(trace_generator, (safe_div((safe_mult(6161, global_values.trace_length)), 65536))). - local pow982 = pow32 * pow981; // pow(trace_generator, (safe_div((safe_mult(3081, global_values.trace_length)), 32768))). - local pow983 = pow32 * pow982; // pow(trace_generator, (safe_div((safe_mult(6163, global_values.trace_length)), 65536))). - local pow984 = pow32 * pow983; // pow(trace_generator, (safe_div((safe_mult(1541, global_values.trace_length)), 16384))). - local pow985 = pow32 * pow984; // pow(trace_generator, (safe_div((safe_mult(6165, global_values.trace_length)), 65536))). - local pow986 = pow32 * pow985; // pow(trace_generator, (safe_div((safe_mult(3083, global_values.trace_length)), 32768))). - local pow987 = pow32 * pow986; // pow(trace_generator, (safe_div((safe_mult(6167, global_values.trace_length)), 65536))). - local pow988 = pow793 * pow964; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 64))). - local pow989 = pow32 * pow988; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 65536))). - local pow990 = pow32 * pow989; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 32768))). - local pow991 = pow32 * pow990; // pow(trace_generator, (safe_div((safe_mult(7171, global_values.trace_length)), 65536))). - local pow992 = pow32 * pow991; // pow(trace_generator, (safe_div((safe_mult(1793, global_values.trace_length)), 16384))). - local pow993 = pow32 * pow992; // pow(trace_generator, (safe_div((safe_mult(7173, global_values.trace_length)), 65536))). - local pow994 = pow32 * pow993; // pow(trace_generator, (safe_div((safe_mult(3587, global_values.trace_length)), 32768))). - local pow995 = pow32 * pow994; // pow(trace_generator, (safe_div((safe_mult(7175, global_values.trace_length)), 65536))). - local pow996 = pow32 * pow995; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 8192))). - local pow997 = pow32 * pow996; // pow(trace_generator, (safe_div((safe_mult(7177, global_values.trace_length)), 65536))). - local pow998 = pow32 * pow997; // pow(trace_generator, (safe_div((safe_mult(3589, global_values.trace_length)), 32768))). - local pow999 = pow32 * pow998; // pow(trace_generator, (safe_div((safe_mult(7179, global_values.trace_length)), 65536))). - local pow1000 = pow32 * pow999; // pow(trace_generator, (safe_div((safe_mult(1795, global_values.trace_length)), 16384))). - local pow1001 = pow32 * pow1000; // pow(trace_generator, (safe_div((safe_mult(7181, global_values.trace_length)), 65536))). - local pow1002 = pow32 * pow1001; // pow(trace_generator, (safe_div((safe_mult(3591, global_values.trace_length)), 32768))). - local pow1003 = pow32 * pow1002; // pow(trace_generator, (safe_div((safe_mult(7183, global_values.trace_length)), 65536))). - local pow1004 = pow32 * pow1003; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 4096))). - local pow1005 = pow32 * pow1004; // pow(trace_generator, (safe_div((safe_mult(7185, global_values.trace_length)), 65536))). - local pow1006 = pow32 * pow1005; // pow(trace_generator, (safe_div((safe_mult(3593, global_values.trace_length)), 32768))). - local pow1007 = pow32 * pow1006; // pow(trace_generator, (safe_div((safe_mult(7187, global_values.trace_length)), 65536))). - local pow1008 = pow32 * pow1007; // pow(trace_generator, (safe_div((safe_mult(1797, global_values.trace_length)), 16384))). - local pow1009 = pow32 * pow1008; // pow(trace_generator, (safe_div((safe_mult(7189, global_values.trace_length)), 65536))). - local pow1010 = pow32 * pow1009; // pow(trace_generator, (safe_div((safe_mult(3595, global_values.trace_length)), 32768))). - local pow1011 = pow32 * pow1010; // pow(trace_generator, (safe_div((safe_mult(7191, global_values.trace_length)), 65536))). - local pow1012 = pow793 * pow988; // pow(trace_generator, (safe_div(global_values.trace_length, 8))). - local pow1013 = pow32 * pow1012; // pow(trace_generator, (safe_div((safe_mult(8193, global_values.trace_length)), 65536))). - local pow1014 = pow32 * pow1013; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 32768))). - local pow1015 = pow32 * pow1014; // pow(trace_generator, (safe_div((safe_mult(8195, global_values.trace_length)), 65536))). - local pow1016 = pow32 * pow1015; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 16384))). - local pow1017 = pow32 * pow1016; // pow(trace_generator, (safe_div((safe_mult(8197, global_values.trace_length)), 65536))). - local pow1018 = pow32 * pow1017; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 32768))). - local pow1019 = pow32 * pow1018; // pow(trace_generator, (safe_div((safe_mult(8199, global_values.trace_length)), 65536))). - local pow1020 = pow32 * pow1019; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 8192))). - local pow1021 = pow32 * pow1020; // pow(trace_generator, (safe_div((safe_mult(8201, global_values.trace_length)), 65536))). - local pow1022 = pow32 * pow1021; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 32768))). - local pow1023 = pow32 * pow1022; // pow(trace_generator, (safe_div((safe_mult(8203, global_values.trace_length)), 65536))). - local pow1024 = pow32 * pow1023; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 16384))). - local pow1025 = pow32 * pow1024; // pow(trace_generator, (safe_div((safe_mult(8205, global_values.trace_length)), 65536))). - local pow1026 = pow32 * pow1025; // pow(trace_generator, (safe_div((safe_mult(4103, global_values.trace_length)), 32768))). - local pow1027 = pow32 * pow1026; // pow(trace_generator, (safe_div((safe_mult(8207, global_values.trace_length)), 65536))). - local pow1028 = pow32 * pow1027; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 4096))). - local pow1029 = pow32 * pow1028; // pow(trace_generator, (safe_div((safe_mult(8209, global_values.trace_length)), 65536))). - local pow1030 = pow32 * pow1029; // pow(trace_generator, (safe_div((safe_mult(4105, global_values.trace_length)), 32768))). - local pow1031 = pow32 * pow1030; // pow(trace_generator, (safe_div((safe_mult(8211, global_values.trace_length)), 65536))). - local pow1032 = pow32 * pow1031; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 16384))). - local pow1033 = pow32 * pow1032; // pow(trace_generator, (safe_div((safe_mult(8213, global_values.trace_length)), 65536))). - local pow1034 = pow32 * pow1033; // pow(trace_generator, (safe_div((safe_mult(4107, global_values.trace_length)), 32768))). - local pow1035 = pow32 * pow1034; // pow(trace_generator, (safe_div((safe_mult(8215, global_values.trace_length)), 65536))). - local pow1036 = pow793 * pow1012; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 64))). - local pow1037 = pow32 * pow1036; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 65536))). - local pow1038 = pow32 * pow1037; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 32768))). - local pow1039 = pow32 * pow1038; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 65536))). - local pow1040 = pow32 * pow1039; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 16384))). - local pow1041 = pow32 * pow1040; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 65536))). - local pow1042 = pow32 * pow1041; // pow(trace_generator, (safe_div((safe_mult(4611, global_values.trace_length)), 32768))). - local pow1043 = pow32 * pow1042; // pow(trace_generator, (safe_div((safe_mult(9223, global_values.trace_length)), 65536))). - local pow1044 = pow32 * pow1043; // pow(trace_generator, (safe_div((safe_mult(1153, global_values.trace_length)), 8192))). - local pow1045 = pow32 * pow1044; // pow(trace_generator, (safe_div((safe_mult(9225, global_values.trace_length)), 65536))). - local pow1046 = pow32 * pow1045; // pow(trace_generator, (safe_div((safe_mult(4613, global_values.trace_length)), 32768))). - local pow1047 = pow32 * pow1046; // pow(trace_generator, (safe_div((safe_mult(9227, global_values.trace_length)), 65536))). - local pow1048 = pow32 * pow1047; // pow(trace_generator, (safe_div((safe_mult(2307, global_values.trace_length)), 16384))). - local pow1049 = pow32 * pow1048; // pow(trace_generator, (safe_div((safe_mult(9229, global_values.trace_length)), 65536))). - local pow1050 = pow32 * pow1049; // pow(trace_generator, (safe_div((safe_mult(4615, global_values.trace_length)), 32768))). - local pow1051 = pow32 * pow1050; // pow(trace_generator, (safe_div((safe_mult(9231, global_values.trace_length)), 65536))). - local pow1052 = pow32 * pow1051; // pow(trace_generator, (safe_div((safe_mult(577, global_values.trace_length)), 4096))). - local pow1053 = pow32 * pow1052; // pow(trace_generator, (safe_div((safe_mult(9233, global_values.trace_length)), 65536))). - local pow1054 = pow32 * pow1053; // pow(trace_generator, (safe_div((safe_mult(4617, global_values.trace_length)), 32768))). - local pow1055 = pow32 * pow1054; // pow(trace_generator, (safe_div((safe_mult(9235, global_values.trace_length)), 65536))). - local pow1056 = pow32 * pow1055; // pow(trace_generator, (safe_div((safe_mult(2309, global_values.trace_length)), 16384))). - local pow1057 = pow32 * pow1056; // pow(trace_generator, (safe_div((safe_mult(9237, global_values.trace_length)), 65536))). - local pow1058 = pow32 * pow1057; // pow(trace_generator, (safe_div((safe_mult(4619, global_values.trace_length)), 32768))). - local pow1059 = pow32 * pow1058; // pow(trace_generator, (safe_div((safe_mult(9239, global_values.trace_length)), 65536))). - local pow1060 = pow793 * pow1036; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 32))). - local pow1061 = pow32 * pow1060; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 65536))). - local pow1062 = pow32 * pow1061; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 32768))). - local pow1063 = pow32 * pow1062; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 65536))). - local pow1064 = pow32 * pow1063; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 16384))). - local pow1065 = pow32 * pow1064; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 65536))). - local pow1066 = pow32 * pow1065; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 32768))). - local pow1067 = pow32 * pow1066; // pow(trace_generator, (safe_div((safe_mult(10247, global_values.trace_length)), 65536))). - local pow1068 = pow32 * pow1067; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 8192))). - local pow1069 = pow32 * pow1068; // pow(trace_generator, (safe_div((safe_mult(10249, global_values.trace_length)), 65536))). - local pow1070 = pow32 * pow1069; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 32768))). - local pow1071 = pow32 * pow1070; // pow(trace_generator, (safe_div((safe_mult(10251, global_values.trace_length)), 65536))). - local pow1072 = pow32 * pow1071; // pow(trace_generator, (safe_div((safe_mult(2563, global_values.trace_length)), 16384))). - local pow1073 = pow32 * pow1072; // pow(trace_generator, (safe_div((safe_mult(10253, global_values.trace_length)), 65536))). - local pow1074 = pow32 * pow1073; // pow(trace_generator, (safe_div((safe_mult(5127, global_values.trace_length)), 32768))). - local pow1075 = pow32 * pow1074; // pow(trace_generator, (safe_div((safe_mult(10255, global_values.trace_length)), 65536))). - local pow1076 = pow32 * pow1075; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 4096))). - local pow1077 = pow32 * pow1076; // pow(trace_generator, (safe_div((safe_mult(10257, global_values.trace_length)), 65536))). - local pow1078 = pow32 * pow1077; // pow(trace_generator, (safe_div((safe_mult(5129, global_values.trace_length)), 32768))). - local pow1079 = pow32 * pow1078; // pow(trace_generator, (safe_div((safe_mult(10259, global_values.trace_length)), 65536))). - local pow1080 = pow32 * pow1079; // pow(trace_generator, (safe_div((safe_mult(2565, global_values.trace_length)), 16384))). - local pow1081 = pow32 * pow1080; // pow(trace_generator, (safe_div((safe_mult(10261, global_values.trace_length)), 65536))). - local pow1082 = pow32 * pow1081; // pow(trace_generator, (safe_div((safe_mult(5131, global_values.trace_length)), 32768))). - local pow1083 = pow32 * pow1082; // pow(trace_generator, (safe_div((safe_mult(10263, global_values.trace_length)), 65536))). - local pow1084 = pow79 * pow1083; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 1024))). - local pow1085 = pow100 * pow1084; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 512))). - local pow1086 = pow100 * pow1085; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 1024))). - local pow1087 = pow100 * pow1086; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 256))). - local pow1088 = pow100 * pow1087; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 1024))). - local pow1089 = pow100 * pow1088; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 512))). - local pow1090 = pow100 * pow1089; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 1024))). - local pow1091 = pow100 * pow1090; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 128))). - local pow1092 = pow100 * pow1091; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 1024))). - local pow1093 = pow100 * pow1092; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 512))). - local pow1094 = pow100 * pow1093; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 1024))). - local pow1095 = pow100 * pow1094; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 256))). - local pow1096 = pow100 * pow1095; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 1024))). - local pow1097 = pow100 * pow1096; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 512))). - local pow1098 = pow100 * pow1097; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 1024))). - local pow1099 = pow100 * pow1098; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 64))). - local pow1100 = pow32 * pow1099; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 65536))). - local pow1101 = pow32 * pow1100; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 32768))). - local pow1102 = pow32 * pow1101; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 65536))). - local pow1103 = pow32 * pow1102; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 16384))). - local pow1104 = pow32 * pow1103; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 65536))). - local pow1105 = pow32 * pow1104; // pow(trace_generator, (safe_div((safe_mult(5635, global_values.trace_length)), 32768))). - local pow1106 = pow32 * pow1105; // pow(trace_generator, (safe_div((safe_mult(11271, global_values.trace_length)), 65536))). - local pow1107 = pow32 * pow1106; // pow(trace_generator, (safe_div((safe_mult(1409, global_values.trace_length)), 8192))). - local pow1108 = pow32 * pow1107; // pow(trace_generator, (safe_div((safe_mult(11273, global_values.trace_length)), 65536))). - local pow1109 = pow32 * pow1108; // pow(trace_generator, (safe_div((safe_mult(5637, global_values.trace_length)), 32768))). - local pow1110 = pow32 * pow1109; // pow(trace_generator, (safe_div((safe_mult(11275, global_values.trace_length)), 65536))). - local pow1111 = pow32 * pow1110; // pow(trace_generator, (safe_div((safe_mult(2819, global_values.trace_length)), 16384))). - local pow1112 = pow32 * pow1111; // pow(trace_generator, (safe_div((safe_mult(11277, global_values.trace_length)), 65536))). - local pow1113 = pow32 * pow1112; // pow(trace_generator, (safe_div((safe_mult(5639, global_values.trace_length)), 32768))). - local pow1114 = pow32 * pow1113; // pow(trace_generator, (safe_div((safe_mult(11279, global_values.trace_length)), 65536))). - local pow1115 = pow32 * pow1114; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 4096))). - local pow1116 = pow32 * pow1115; // pow(trace_generator, (safe_div((safe_mult(11281, global_values.trace_length)), 65536))). - local pow1117 = pow32 * pow1116; // pow(trace_generator, (safe_div((safe_mult(5641, global_values.trace_length)), 32768))). - local pow1118 = pow32 * pow1117; // pow(trace_generator, (safe_div((safe_mult(11283, global_values.trace_length)), 65536))). - local pow1119 = pow32 * pow1118; // pow(trace_generator, (safe_div((safe_mult(2821, global_values.trace_length)), 16384))). - local pow1120 = pow32 * pow1119; // pow(trace_generator, (safe_div((safe_mult(11285, global_values.trace_length)), 65536))). - local pow1121 = pow32 * pow1120; // pow(trace_generator, (safe_div((safe_mult(5643, global_values.trace_length)), 32768))). - local pow1122 = pow32 * pow1121; // pow(trace_generator, (safe_div((safe_mult(11287, global_values.trace_length)), 65536))). - local pow1123 = pow79 * pow1122; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 1024))). - local pow1124 = pow100 * pow1123; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 512))). - local pow1125 = pow100 * pow1124; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 1024))). - local pow1126 = pow100 * pow1125; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 256))). - local pow1127 = pow100 * pow1126; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 1024))). - local pow1128 = pow100 * pow1127; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 512))). - local pow1129 = pow100 * pow1128; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 1024))). - local pow1130 = pow580 * pow1129; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 16))). - local pow1131 = pow32 * pow1130; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 65536))). - local pow1132 = pow32 * pow1131; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 32768))). - local pow1133 = pow32 * pow1132; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 65536))). - local pow1134 = pow32 * pow1133; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 16384))). - local pow1135 = pow32 * pow1134; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 65536))). - local pow1136 = pow32 * pow1135; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 32768))). - local pow1137 = pow32 * pow1136; // pow(trace_generator, (safe_div((safe_mult(12295, global_values.trace_length)), 65536))). - local pow1138 = pow32 * pow1137; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 8192))). - local pow1139 = pow32 * pow1138; // pow(trace_generator, (safe_div((safe_mult(12297, global_values.trace_length)), 65536))). - local pow1140 = pow32 * pow1139; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 32768))). - local pow1141 = pow32 * pow1140; // pow(trace_generator, (safe_div((safe_mult(12299, global_values.trace_length)), 65536))). - local pow1142 = pow32 * pow1141; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 16384))). - local pow1143 = pow32 * pow1142; // pow(trace_generator, (safe_div((safe_mult(12301, global_values.trace_length)), 65536))). - local pow1144 = pow32 * pow1143; // pow(trace_generator, (safe_div((safe_mult(6151, global_values.trace_length)), 32768))). - local pow1145 = pow32 * pow1144; // pow(trace_generator, (safe_div((safe_mult(12303, global_values.trace_length)), 65536))). - local pow1146 = pow32 * pow1145; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 4096))). - local pow1147 = pow32 * pow1146; // pow(trace_generator, (safe_div((safe_mult(12305, global_values.trace_length)), 65536))). - local pow1148 = pow32 * pow1147; // pow(trace_generator, (safe_div((safe_mult(6153, global_values.trace_length)), 32768))). - local pow1149 = pow32 * pow1148; // pow(trace_generator, (safe_div((safe_mult(12307, global_values.trace_length)), 65536))). - local pow1150 = pow32 * pow1149; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 16384))). - local pow1151 = pow32 * pow1150; // pow(trace_generator, (safe_div((safe_mult(12309, global_values.trace_length)), 65536))). - local pow1152 = pow32 * pow1151; // pow(trace_generator, (safe_div((safe_mult(6155, global_values.trace_length)), 32768))). - local pow1153 = pow32 * pow1152; // pow(trace_generator, (safe_div((safe_mult(12311, global_values.trace_length)), 65536))). - local pow1154 = pow79 * pow1153; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 1024))). - local pow1155 = pow100 * pow1154; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 512))). - local pow1156 = pow100 * pow1155; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 1024))). - local pow1157 = pow100 * pow1156; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 256))). - local pow1158 = pow100 * pow1157; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 1024))). - local pow1159 = pow100 * pow1158; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 512))). - local pow1160 = pow100 * pow1159; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 1024))). - local pow1161 = pow100 * pow1160; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 128))). - local pow1162 = pow100 * pow1161; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 1024))). - local pow1163 = pow100 * pow1162; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 512))). - local pow1164 = pow100 * pow1163; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 1024))). - local pow1165 = pow100 * pow1164; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 256))). - local pow1166 = pow100 * pow1165; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 1024))). - local pow1167 = pow100 * pow1166; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 512))). - local pow1168 = pow100 * pow1167; // pow(trace_generator, (safe_div((safe_mult(207, global_values.trace_length)), 1024))). - local pow1169 = pow100 * pow1168; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 64))). - local pow1170 = pow32 * pow1169; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 65536))). - local pow1171 = pow32 * pow1170; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 32768))). - local pow1172 = pow32 * pow1171; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 65536))). - local pow1173 = pow32 * pow1172; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 16384))). - local pow1174 = pow32 * pow1173; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 65536))). - local pow1175 = pow32 * pow1174; // pow(trace_generator, (safe_div((safe_mult(6659, global_values.trace_length)), 32768))). - local pow1176 = pow32 * pow1175; // pow(trace_generator, (safe_div((safe_mult(13319, global_values.trace_length)), 65536))). - local pow1177 = pow32 * pow1176; // pow(trace_generator, (safe_div((safe_mult(1665, global_values.trace_length)), 8192))). - local pow1178 = pow32 * pow1177; // pow(trace_generator, (safe_div((safe_mult(13321, global_values.trace_length)), 65536))). - local pow1179 = pow32 * pow1178; // pow(trace_generator, (safe_div((safe_mult(6661, global_values.trace_length)), 32768))). - local pow1180 = pow32 * pow1179; // pow(trace_generator, (safe_div((safe_mult(13323, global_values.trace_length)), 65536))). - local pow1181 = pow32 * pow1180; // pow(trace_generator, (safe_div((safe_mult(3331, global_values.trace_length)), 16384))). - local pow1182 = pow32 * pow1181; // pow(trace_generator, (safe_div((safe_mult(13325, global_values.trace_length)), 65536))). - local pow1183 = pow32 * pow1182; // pow(trace_generator, (safe_div((safe_mult(6663, global_values.trace_length)), 32768))). - local pow1184 = pow32 * pow1183; // pow(trace_generator, (safe_div((safe_mult(13327, global_values.trace_length)), 65536))). - local pow1185 = pow32 * pow1184; // pow(trace_generator, (safe_div((safe_mult(833, global_values.trace_length)), 4096))). - local pow1186 = pow32 * pow1185; // pow(trace_generator, (safe_div((safe_mult(13329, global_values.trace_length)), 65536))). - local pow1187 = pow32 * pow1186; // pow(trace_generator, (safe_div((safe_mult(6665, global_values.trace_length)), 32768))). - local pow1188 = pow32 * pow1187; // pow(trace_generator, (safe_div((safe_mult(13331, global_values.trace_length)), 65536))). - local pow1189 = pow32 * pow1188; // pow(trace_generator, (safe_div((safe_mult(3333, global_values.trace_length)), 16384))). - local pow1190 = pow32 * pow1189; // pow(trace_generator, (safe_div((safe_mult(13333, global_values.trace_length)), 65536))). - local pow1191 = pow32 * pow1190; // pow(trace_generator, (safe_div((safe_mult(6667, global_values.trace_length)), 32768))). - local pow1192 = pow32 * pow1191; // pow(trace_generator, (safe_div((safe_mult(13335, global_values.trace_length)), 65536))). - local pow1193 = pow79 * pow1192; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 1024))). - local pow1194 = pow100 * pow1193; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 512))). - local pow1195 = pow100 * pow1194; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 1024))). - local pow1196 = pow100 * pow1195; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 256))). - local pow1197 = pow100 * pow1196; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 1024))). - local pow1198 = pow100 * pow1197; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 512))). - local pow1199 = pow100 * pow1198; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 1024))). - local pow1200 = pow580 * pow1199; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 32))). - local pow1201 = pow32 * pow1200; // pow(trace_generator, (safe_div((safe_mult(14337, global_values.trace_length)), 65536))). - local pow1202 = pow32 * pow1201; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 32768))). - local pow1203 = pow32 * pow1202; // pow(trace_generator, (safe_div((safe_mult(14339, global_values.trace_length)), 65536))). - local pow1204 = pow32 * pow1203; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 16384))). - local pow1205 = pow32 * pow1204; // pow(trace_generator, (safe_div((safe_mult(14341, global_values.trace_length)), 65536))). - local pow1206 = pow32 * pow1205; // pow(trace_generator, (safe_div((safe_mult(7171, global_values.trace_length)), 32768))). - local pow1207 = pow32 * pow1206; // pow(trace_generator, (safe_div((safe_mult(14343, global_values.trace_length)), 65536))). - local pow1208 = pow32 * pow1207; // pow(trace_generator, (safe_div((safe_mult(1793, global_values.trace_length)), 8192))). - local pow1209 = pow32 * pow1208; // pow(trace_generator, (safe_div((safe_mult(14345, global_values.trace_length)), 65536))). - local pow1210 = pow32 * pow1209; // pow(trace_generator, (safe_div((safe_mult(7173, global_values.trace_length)), 32768))). - local pow1211 = pow32 * pow1210; // pow(trace_generator, (safe_div((safe_mult(14347, global_values.trace_length)), 65536))). - local pow1212 = pow32 * pow1211; // pow(trace_generator, (safe_div((safe_mult(3587, global_values.trace_length)), 16384))). - local pow1213 = pow32 * pow1212; // pow(trace_generator, (safe_div((safe_mult(14349, global_values.trace_length)), 65536))). - local pow1214 = pow32 * pow1213; // pow(trace_generator, (safe_div((safe_mult(7175, global_values.trace_length)), 32768))). - local pow1215 = pow32 * pow1214; // pow(trace_generator, (safe_div((safe_mult(14351, global_values.trace_length)), 65536))). - local pow1216 = pow32 * pow1215; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 4096))). - local pow1217 = pow32 * pow1216; // pow(trace_generator, (safe_div((safe_mult(14353, global_values.trace_length)), 65536))). - local pow1218 = pow32 * pow1217; // pow(trace_generator, (safe_div((safe_mult(7177, global_values.trace_length)), 32768))). - local pow1219 = pow32 * pow1218; // pow(trace_generator, (safe_div((safe_mult(14355, global_values.trace_length)), 65536))). - local pow1220 = pow32 * pow1219; // pow(trace_generator, (safe_div((safe_mult(3589, global_values.trace_length)), 16384))). - local pow1221 = pow32 * pow1220; // pow(trace_generator, (safe_div((safe_mult(14357, global_values.trace_length)), 65536))). - local pow1222 = pow32 * pow1221; // pow(trace_generator, (safe_div((safe_mult(7179, global_values.trace_length)), 32768))). - local pow1223 = pow32 * pow1222; // pow(trace_generator, (safe_div((safe_mult(14359, global_values.trace_length)), 65536))). - local pow1224 = pow79 * pow1223; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 1024))). - local pow1225 = pow100 * pow1224; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 512))). - local pow1226 = pow100 * pow1225; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 1024))). - local pow1227 = pow100 * pow1226; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 256))). - local pow1228 = pow100 * pow1227; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 1024))). - local pow1229 = pow100 * pow1228; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 512))). - local pow1230 = pow100 * pow1229; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 1024))). - local pow1231 = pow100 * pow1230; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 128))). - local pow1232 = pow100 * pow1231; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 1024))). - local pow1233 = pow100 * pow1232; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 512))). - local pow1234 = pow100 * pow1233; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 1024))). - local pow1235 = pow100 * pow1234; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 256))). - local pow1236 = pow100 * pow1235; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 1024))). - local pow1237 = pow100 * pow1236; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 512))). - local pow1238 = pow100 * pow1237; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 1024))). - local pow1239 = pow100 * pow1238; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 64))). - local pow1240 = pow32 * pow1239; // pow(trace_generator, (safe_div((safe_mult(15361, global_values.trace_length)), 65536))). - local pow1241 = pow32 * pow1240; // pow(trace_generator, (safe_div((safe_mult(7681, global_values.trace_length)), 32768))). - local pow1242 = pow32 * pow1241; // pow(trace_generator, (safe_div((safe_mult(15363, global_values.trace_length)), 65536))). - local pow1243 = pow32 * pow1242; // pow(trace_generator, (safe_div((safe_mult(3841, global_values.trace_length)), 16384))). - local pow1244 = pow32 * pow1243; // pow(trace_generator, (safe_div((safe_mult(15365, global_values.trace_length)), 65536))). - local pow1245 = pow32 * pow1244; // pow(trace_generator, (safe_div((safe_mult(7683, global_values.trace_length)), 32768))). - local pow1246 = pow32 * pow1245; // pow(trace_generator, (safe_div((safe_mult(15367, global_values.trace_length)), 65536))). - local pow1247 = pow32 * pow1246; // pow(trace_generator, (safe_div((safe_mult(1921, global_values.trace_length)), 8192))). - local pow1248 = pow32 * pow1247; // pow(trace_generator, (safe_div((safe_mult(15369, global_values.trace_length)), 65536))). - local pow1249 = pow32 * pow1248; // pow(trace_generator, (safe_div((safe_mult(7685, global_values.trace_length)), 32768))). - local pow1250 = pow32 * pow1249; // pow(trace_generator, (safe_div((safe_mult(15371, global_values.trace_length)), 65536))). - local pow1251 = pow32 * pow1250; // pow(trace_generator, (safe_div((safe_mult(3843, global_values.trace_length)), 16384))). - local pow1252 = pow32 * pow1251; // pow(trace_generator, (safe_div((safe_mult(15373, global_values.trace_length)), 65536))). - local pow1253 = pow32 * pow1252; // pow(trace_generator, (safe_div((safe_mult(7687, global_values.trace_length)), 32768))). - local pow1254 = pow32 * pow1253; // pow(trace_generator, (safe_div((safe_mult(15375, global_values.trace_length)), 65536))). - local pow1255 = pow32 * pow1254; // pow(trace_generator, (safe_div((safe_mult(961, global_values.trace_length)), 4096))). - local pow1256 = pow32 * pow1255; // pow(trace_generator, (safe_div((safe_mult(15377, global_values.trace_length)), 65536))). - local pow1257 = pow32 * pow1256; // pow(trace_generator, (safe_div((safe_mult(7689, global_values.trace_length)), 32768))). - local pow1258 = pow32 * pow1257; // pow(trace_generator, (safe_div((safe_mult(15379, global_values.trace_length)), 65536))). - local pow1259 = pow32 * pow1258; // pow(trace_generator, (safe_div((safe_mult(3845, global_values.trace_length)), 16384))). - local pow1260 = pow32 * pow1259; // pow(trace_generator, (safe_div((safe_mult(15381, global_values.trace_length)), 65536))). - local pow1261 = pow32 * pow1260; // pow(trace_generator, (safe_div((safe_mult(7691, global_values.trace_length)), 32768))). - local pow1262 = pow32 * pow1261; // pow(trace_generator, (safe_div((safe_mult(15383, global_values.trace_length)), 65536))). - local pow1263 = pow79 * pow1262; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 1024))). - local pow1264 = pow100 * pow1263; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 512))). - local pow1265 = pow100 * pow1264; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 1024))). - local pow1266 = pow100 * pow1265; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 256))). - local pow1267 = pow100 * pow1266; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 1024))). - local pow1268 = pow100 * pow1267; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 512))). - local pow1269 = pow100 * pow1268; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 1024))). - local pow1270 = pow580 * pow1269; // pow(trace_generator, (safe_div(global_values.trace_length, 4))). - local pow1271 = pow793 * pow1270; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 64))). - local pow1272 = pow793 * pow1271; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 32))). - local pow1273 = pow793 * pow1272; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 64))). - local pow1274 = pow32 * pow1270; // pow(trace_generator, (safe_div((safe_mult(16385, global_values.trace_length)), 65536))). - local pow1275 = pow32 * pow1271; // pow(trace_generator, (safe_div((safe_mult(17409, global_values.trace_length)), 65536))). - local pow1276 = pow32 * pow1272; // pow(trace_generator, (safe_div((safe_mult(18433, global_values.trace_length)), 65536))). - local pow1277 = pow32 * pow1273; // pow(trace_generator, (safe_div((safe_mult(19457, global_values.trace_length)), 65536))). - local pow1278 = pow32 * pow1274; // pow(trace_generator, (safe_div((safe_mult(8193, global_values.trace_length)), 32768))). - local pow1279 = pow32 * pow1275; // pow(trace_generator, (safe_div((safe_mult(8705, global_values.trace_length)), 32768))). - local pow1280 = pow32 * pow1276; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 32768))). - local pow1281 = pow32 * pow1277; // pow(trace_generator, (safe_div((safe_mult(9729, global_values.trace_length)), 32768))). - local pow1282 = pow32 * pow1278; // pow(trace_generator, (safe_div((safe_mult(16387, global_values.trace_length)), 65536))). - local pow1283 = pow32 * pow1279; // pow(trace_generator, (safe_div((safe_mult(17411, global_values.trace_length)), 65536))). - local pow1284 = pow32 * pow1280; // pow(trace_generator, (safe_div((safe_mult(18435, global_values.trace_length)), 65536))). - local pow1285 = pow32 * pow1281; // pow(trace_generator, (safe_div((safe_mult(19459, global_values.trace_length)), 65536))). - local pow1286 = pow32 * pow1282; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 16384))). - local pow1287 = pow32 * pow1283; // pow(trace_generator, (safe_div((safe_mult(4353, global_values.trace_length)), 16384))). - local pow1288 = pow32 * pow1284; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 16384))). - local pow1289 = pow32 * pow1285; // pow(trace_generator, (safe_div((safe_mult(4865, global_values.trace_length)), 16384))). - local pow1290 = pow32 * pow1286; // pow(trace_generator, (safe_div((safe_mult(16389, global_values.trace_length)), 65536))). - local pow1291 = pow32 * pow1287; // pow(trace_generator, (safe_div((safe_mult(17413, global_values.trace_length)), 65536))). - local pow1292 = pow32 * pow1288; // pow(trace_generator, (safe_div((safe_mult(18437, global_values.trace_length)), 65536))). - local pow1293 = pow32 * pow1289; // pow(trace_generator, (safe_div((safe_mult(19461, global_values.trace_length)), 65536))). - local pow1294 = pow32 * pow1290; // pow(trace_generator, (safe_div((safe_mult(8195, global_values.trace_length)), 32768))). - local pow1295 = pow32 * pow1291; // pow(trace_generator, (safe_div((safe_mult(8707, global_values.trace_length)), 32768))). - local pow1296 = pow32 * pow1292; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 32768))). - local pow1297 = pow32 * pow1293; // pow(trace_generator, (safe_div((safe_mult(9731, global_values.trace_length)), 32768))). - local pow1298 = pow32 * pow1294; // pow(trace_generator, (safe_div((safe_mult(16391, global_values.trace_length)), 65536))). - local pow1299 = pow32 * pow1298; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 8192))). - local pow1300 = pow32 * pow1295; // pow(trace_generator, (safe_div((safe_mult(17415, global_values.trace_length)), 65536))). - local pow1301 = pow32 * pow1300; // pow(trace_generator, (safe_div((safe_mult(2177, global_values.trace_length)), 8192))). - local pow1302 = pow32 * pow1296; // pow(trace_generator, (safe_div((safe_mult(18439, global_values.trace_length)), 65536))). - local pow1303 = pow32 * pow1302; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 8192))). - local pow1304 = pow32 * pow1297; // pow(trace_generator, (safe_div((safe_mult(19463, global_values.trace_length)), 65536))). - local pow1305 = pow32 * pow1304; // pow(trace_generator, (safe_div((safe_mult(2433, global_values.trace_length)), 8192))). - local pow1306 = pow32 * pow1299; // pow(trace_generator, (safe_div((safe_mult(16393, global_values.trace_length)), 65536))). - local pow1307 = pow32 * pow1301; // pow(trace_generator, (safe_div((safe_mult(17417, global_values.trace_length)), 65536))). - local pow1308 = pow32 * pow1303; // pow(trace_generator, (safe_div((safe_mult(18441, global_values.trace_length)), 65536))). - local pow1309 = pow32 * pow1305; // pow(trace_generator, (safe_div((safe_mult(19465, global_values.trace_length)), 65536))). - local pow1310 = pow32 * pow1306; // pow(trace_generator, (safe_div((safe_mult(8197, global_values.trace_length)), 32768))). - local pow1311 = pow32 * pow1307; // pow(trace_generator, (safe_div((safe_mult(8709, global_values.trace_length)), 32768))). - local pow1312 = pow32 * pow1308; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 32768))). - local pow1313 = pow32 * pow1309; // pow(trace_generator, (safe_div((safe_mult(9733, global_values.trace_length)), 32768))). - local pow1314 = pow32 * pow1310; // pow(trace_generator, (safe_div((safe_mult(16395, global_values.trace_length)), 65536))). - local pow1315 = pow32 * pow1311; // pow(trace_generator, (safe_div((safe_mult(17419, global_values.trace_length)), 65536))). - local pow1316 = pow32 * pow1312; // pow(trace_generator, (safe_div((safe_mult(18443, global_values.trace_length)), 65536))). - local pow1317 = pow32 * pow1313; // pow(trace_generator, (safe_div((safe_mult(19467, global_values.trace_length)), 65536))). - local pow1318 = pow32 * pow1314; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 16384))). - local pow1319 = pow32 * pow1315; // pow(trace_generator, (safe_div((safe_mult(4355, global_values.trace_length)), 16384))). - local pow1320 = pow32 * pow1316; // pow(trace_generator, (safe_div((safe_mult(4611, global_values.trace_length)), 16384))). - local pow1321 = pow32 * pow1317; // pow(trace_generator, (safe_div((safe_mult(4867, global_values.trace_length)), 16384))). - local pow1322 = pow32 * pow1318; // pow(trace_generator, (safe_div((safe_mult(16397, global_values.trace_length)), 65536))). - local pow1323 = pow32 * pow1319; // pow(trace_generator, (safe_div((safe_mult(17421, global_values.trace_length)), 65536))). - local pow1324 = pow32 * pow1320; // pow(trace_generator, (safe_div((safe_mult(18445, global_values.trace_length)), 65536))). - local pow1325 = pow32 * pow1321; // pow(trace_generator, (safe_div((safe_mult(19469, global_values.trace_length)), 65536))). - local pow1326 = pow32 * pow1322; // pow(trace_generator, (safe_div((safe_mult(8199, global_values.trace_length)), 32768))). - local pow1327 = pow32 * pow1323; // pow(trace_generator, (safe_div((safe_mult(8711, global_values.trace_length)), 32768))). - local pow1328 = pow32 * pow1324; // pow(trace_generator, (safe_div((safe_mult(9223, global_values.trace_length)), 32768))). - local pow1329 = pow32 * pow1325; // pow(trace_generator, (safe_div((safe_mult(9735, global_values.trace_length)), 32768))). - local pow1330 = pow32 * pow1326; // pow(trace_generator, (safe_div((safe_mult(16399, global_values.trace_length)), 65536))). - local pow1331 = pow32 * pow1327; // pow(trace_generator, (safe_div((safe_mult(17423, global_values.trace_length)), 65536))). - local pow1332 = pow32 * pow1328; // pow(trace_generator, (safe_div((safe_mult(18447, global_values.trace_length)), 65536))). - local pow1333 = pow32 * pow1329; // pow(trace_generator, (safe_div((safe_mult(19471, global_values.trace_length)), 65536))). - local pow1334 = pow32 * pow1330; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 4096))). - local pow1335 = pow32 * pow1331; // pow(trace_generator, (safe_div((safe_mult(1089, global_values.trace_length)), 4096))). - local pow1336 = pow32 * pow1332; // pow(trace_generator, (safe_div((safe_mult(1153, global_values.trace_length)), 4096))). - local pow1337 = pow32 * pow1333; // pow(trace_generator, (safe_div((safe_mult(1217, global_values.trace_length)), 4096))). - local pow1338 = pow32 * pow1334; // pow(trace_generator, (safe_div((safe_mult(16401, global_values.trace_length)), 65536))). - local pow1339 = pow32 * pow1335; // pow(trace_generator, (safe_div((safe_mult(17425, global_values.trace_length)), 65536))). - local pow1340 = pow32 * pow1336; // pow(trace_generator, (safe_div((safe_mult(18449, global_values.trace_length)), 65536))). - local pow1341 = pow32 * pow1337; // pow(trace_generator, (safe_div((safe_mult(19473, global_values.trace_length)), 65536))). - local pow1342 = pow32 * pow1338; // pow(trace_generator, (safe_div((safe_mult(8201, global_values.trace_length)), 32768))). - local pow1343 = pow32 * pow1339; // pow(trace_generator, (safe_div((safe_mult(8713, global_values.trace_length)), 32768))). - local pow1344 = pow32 * pow1340; // pow(trace_generator, (safe_div((safe_mult(9225, global_values.trace_length)), 32768))). - local pow1345 = pow32 * pow1341; // pow(trace_generator, (safe_div((safe_mult(9737, global_values.trace_length)), 32768))). - local pow1346 = pow32 * pow1342; // pow(trace_generator, (safe_div((safe_mult(16403, global_values.trace_length)), 65536))). - local pow1347 = pow32 * pow1343; // pow(trace_generator, (safe_div((safe_mult(17427, global_values.trace_length)), 65536))). - local pow1348 = pow32 * pow1344; // pow(trace_generator, (safe_div((safe_mult(18451, global_values.trace_length)), 65536))). - local pow1349 = pow32 * pow1345; // pow(trace_generator, (safe_div((safe_mult(19475, global_values.trace_length)), 65536))). - local pow1350 = pow32 * pow1346; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 16384))). - local pow1351 = pow32 * pow1347; // pow(trace_generator, (safe_div((safe_mult(4357, global_values.trace_length)), 16384))). - local pow1352 = pow32 * pow1348; // pow(trace_generator, (safe_div((safe_mult(4613, global_values.trace_length)), 16384))). - local pow1353 = pow32 * pow1349; // pow(trace_generator, (safe_div((safe_mult(4869, global_values.trace_length)), 16384))). - local pow1354 = pow32 * pow1350; // pow(trace_generator, (safe_div((safe_mult(16405, global_values.trace_length)), 65536))). - local pow1355 = pow32 * pow1351; // pow(trace_generator, (safe_div((safe_mult(17429, global_values.trace_length)), 65536))). - local pow1356 = pow32 * pow1352; // pow(trace_generator, (safe_div((safe_mult(18453, global_values.trace_length)), 65536))). - local pow1357 = pow32 * pow1353; // pow(trace_generator, (safe_div((safe_mult(19477, global_values.trace_length)), 65536))). - local pow1358 = pow32 * pow1354; // pow(trace_generator, (safe_div((safe_mult(8203, global_values.trace_length)), 32768))). - local pow1359 = pow32 * pow1355; // pow(trace_generator, (safe_div((safe_mult(8715, global_values.trace_length)), 32768))). - local pow1360 = pow32 * pow1356; // pow(trace_generator, (safe_div((safe_mult(9227, global_values.trace_length)), 32768))). - local pow1361 = pow32 * pow1357; // pow(trace_generator, (safe_div((safe_mult(9739, global_values.trace_length)), 32768))). - local pow1362 = pow32 * pow1358; // pow(trace_generator, (safe_div((safe_mult(16407, global_values.trace_length)), 65536))). - local pow1363 = pow32 * pow1359; // pow(trace_generator, (safe_div((safe_mult(17431, global_values.trace_length)), 65536))). - local pow1364 = pow32 * pow1360; // pow(trace_generator, (safe_div((safe_mult(18455, global_values.trace_length)), 65536))). - local pow1365 = pow32 * pow1361; // pow(trace_generator, (safe_div((safe_mult(19479, global_values.trace_length)), 65536))). - local pow1366 = pow793 * pow1273; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 16))). - local pow1367 = pow32 * pow1366; // pow(trace_generator, (safe_div((safe_mult(20481, global_values.trace_length)), 65536))). - local pow1368 = pow32 * pow1367; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 32768))). - local pow1369 = pow32 * pow1368; // pow(trace_generator, (safe_div((safe_mult(20483, global_values.trace_length)), 65536))). - local pow1370 = pow32 * pow1369; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 16384))). - local pow1371 = pow32 * pow1370; // pow(trace_generator, (safe_div((safe_mult(20485, global_values.trace_length)), 65536))). - local pow1372 = pow32 * pow1371; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 32768))). - local pow1373 = pow32 * pow1372; // pow(trace_generator, (safe_div((safe_mult(20487, global_values.trace_length)), 65536))). - local pow1374 = pow32 * pow1373; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 8192))). - local pow1375 = pow32 * pow1374; // pow(trace_generator, (safe_div((safe_mult(20489, global_values.trace_length)), 65536))). - local pow1376 = pow32 * pow1375; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 32768))). - local pow1377 = pow32 * pow1376; // pow(trace_generator, (safe_div((safe_mult(20491, global_values.trace_length)), 65536))). - local pow1378 = pow32 * pow1377; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 16384))). - local pow1379 = pow32 * pow1378; // pow(trace_generator, (safe_div((safe_mult(20493, global_values.trace_length)), 65536))). - local pow1380 = pow32 * pow1379; // pow(trace_generator, (safe_div((safe_mult(10247, global_values.trace_length)), 32768))). - local pow1381 = pow32 * pow1380; // pow(trace_generator, (safe_div((safe_mult(20495, global_values.trace_length)), 65536))). - local pow1382 = pow32 * pow1381; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 4096))). - local pow1383 = pow32 * pow1382; // pow(trace_generator, (safe_div((safe_mult(20497, global_values.trace_length)), 65536))). - local pow1384 = pow32 * pow1383; // pow(trace_generator, (safe_div((safe_mult(10249, global_values.trace_length)), 32768))). - local pow1385 = pow32 * pow1384; // pow(trace_generator, (safe_div((safe_mult(20499, global_values.trace_length)), 65536))). - local pow1386 = pow32 * pow1385; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 16384))). - local pow1387 = pow32 * pow1386; // pow(trace_generator, (safe_div((safe_mult(20501, global_values.trace_length)), 65536))). - local pow1388 = pow32 * pow1387; // pow(trace_generator, (safe_div((safe_mult(10251, global_values.trace_length)), 32768))). - local pow1389 = pow32 * pow1388; // pow(trace_generator, (safe_div((safe_mult(20503, global_values.trace_length)), 65536))). - local pow1390 = pow79 * pow1389; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 1024))). - local pow1391 = pow100 * pow1390; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 512))). - local pow1392 = pow100 * pow1391; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 1024))). - local pow1393 = pow100 * pow1392; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 256))). - local pow1394 = pow100 * pow1393; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 1024))). - local pow1395 = pow100 * pow1394; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 512))). - local pow1396 = pow100 * pow1395; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 1024))). - local pow1397 = pow100 * pow1396; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 128))). - local pow1398 = pow100 * pow1397; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 1024))). - local pow1399 = pow100 * pow1398; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 512))). - local pow1400 = pow100 * pow1399; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 1024))). - local pow1401 = pow100 * pow1400; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 256))). - local pow1402 = pow100 * pow1401; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 1024))). - local pow1403 = pow100 * pow1402; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 512))). - local pow1404 = pow100 * pow1403; // pow(trace_generator, (safe_div((safe_mult(335, global_values.trace_length)), 1024))). - local pow1405 = pow100 * pow1404; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 64))). - local pow1406 = pow32 * pow1405; // pow(trace_generator, (safe_div((safe_mult(21505, global_values.trace_length)), 65536))). - local pow1407 = pow32 * pow1406; // pow(trace_generator, (safe_div((safe_mult(10753, global_values.trace_length)), 32768))). - local pow1408 = pow32 * pow1407; // pow(trace_generator, (safe_div((safe_mult(21507, global_values.trace_length)), 65536))). - local pow1409 = pow32 * pow1408; // pow(trace_generator, (safe_div((safe_mult(5377, global_values.trace_length)), 16384))). - local pow1410 = pow32 * pow1409; // pow(trace_generator, (safe_div((safe_mult(21509, global_values.trace_length)), 65536))). - local pow1411 = pow32 * pow1410; // pow(trace_generator, (safe_div((safe_mult(10755, global_values.trace_length)), 32768))). - local pow1412 = pow32 * pow1411; // pow(trace_generator, (safe_div((safe_mult(21511, global_values.trace_length)), 65536))). - local pow1413 = pow32 * pow1412; // pow(trace_generator, (safe_div((safe_mult(2689, global_values.trace_length)), 8192))). - local pow1414 = pow32 * pow1413; // pow(trace_generator, (safe_div((safe_mult(21513, global_values.trace_length)), 65536))). - local pow1415 = pow32 * pow1414; // pow(trace_generator, (safe_div((safe_mult(10757, global_values.trace_length)), 32768))). - local pow1416 = pow32 * pow1415; // pow(trace_generator, (safe_div((safe_mult(21515, global_values.trace_length)), 65536))). - local pow1417 = pow32 * pow1416; // pow(trace_generator, (safe_div((safe_mult(5379, global_values.trace_length)), 16384))). - local pow1418 = pow32 * pow1417; // pow(trace_generator, (safe_div((safe_mult(21517, global_values.trace_length)), 65536))). - local pow1419 = pow32 * pow1418; // pow(trace_generator, (safe_div((safe_mult(10759, global_values.trace_length)), 32768))). - local pow1420 = pow32 * pow1419; // pow(trace_generator, (safe_div((safe_mult(21519, global_values.trace_length)), 65536))). - local pow1421 = pow32 * pow1420; // pow(trace_generator, (safe_div((safe_mult(1345, global_values.trace_length)), 4096))). - local pow1422 = pow32 * pow1421; // pow(trace_generator, (safe_div((safe_mult(21521, global_values.trace_length)), 65536))). - local pow1423 = pow32 * pow1422; // pow(trace_generator, (safe_div((safe_mult(10761, global_values.trace_length)), 32768))). - local pow1424 = pow32 * pow1423; // pow(trace_generator, (safe_div((safe_mult(21523, global_values.trace_length)), 65536))). - local pow1425 = pow32 * pow1424; // pow(trace_generator, (safe_div((safe_mult(5381, global_values.trace_length)), 16384))). - local pow1426 = pow32 * pow1425; // pow(trace_generator, (safe_div((safe_mult(21525, global_values.trace_length)), 65536))). - local pow1427 = pow32 * pow1426; // pow(trace_generator, (safe_div((safe_mult(10763, global_values.trace_length)), 32768))). - local pow1428 = pow32 * pow1427; // pow(trace_generator, (safe_div((safe_mult(21527, global_values.trace_length)), 65536))). - local pow1429 = pow79 * pow1428; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 1024))). - local pow1430 = pow100 * pow1429; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 512))). - local pow1431 = pow100 * pow1430; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 1024))). - local pow1432 = pow100 * pow1431; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 256))). - local pow1433 = pow100 * pow1432; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 1024))). - local pow1434 = pow100 * pow1433; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 512))). - local pow1435 = pow100 * pow1434; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 1024))). - local pow1436 = pow580 * pow1435; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 32))). - local pow1437 = pow32 * pow1436; // pow(trace_generator, (safe_div((safe_mult(22529, global_values.trace_length)), 65536))). - local pow1438 = pow32 * pow1437; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 32768))). - local pow1439 = pow32 * pow1438; // pow(trace_generator, (safe_div((safe_mult(22531, global_values.trace_length)), 65536))). - local pow1440 = pow32 * pow1439; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 16384))). - local pow1441 = pow32 * pow1440; // pow(trace_generator, (safe_div((safe_mult(22533, global_values.trace_length)), 65536))). - local pow1442 = pow32 * pow1441; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 32768))). - local pow1443 = pow32 * pow1442; // pow(trace_generator, (safe_div((safe_mult(22535, global_values.trace_length)), 65536))). - local pow1444 = pow32 * pow1443; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 8192))). - local pow1445 = pow32 * pow1444; // pow(trace_generator, (safe_div((safe_mult(22537, global_values.trace_length)), 65536))). - local pow1446 = pow32 * pow1445; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 32768))). - local pow1447 = pow32 * pow1446; // pow(trace_generator, (safe_div((safe_mult(22539, global_values.trace_length)), 65536))). - local pow1448 = pow32 * pow1447; // pow(trace_generator, (safe_div((safe_mult(5635, global_values.trace_length)), 16384))). - local pow1449 = pow32 * pow1448; // pow(trace_generator, (safe_div((safe_mult(22541, global_values.trace_length)), 65536))). - local pow1450 = pow32 * pow1449; // pow(trace_generator, (safe_div((safe_mult(11271, global_values.trace_length)), 32768))). - local pow1451 = pow32 * pow1450; // pow(trace_generator, (safe_div((safe_mult(22543, global_values.trace_length)), 65536))). - local pow1452 = pow32 * pow1451; // pow(trace_generator, (safe_div((safe_mult(1409, global_values.trace_length)), 4096))). - local pow1453 = pow32 * pow1452; // pow(trace_generator, (safe_div((safe_mult(22545, global_values.trace_length)), 65536))). - local pow1454 = pow32 * pow1453; // pow(trace_generator, (safe_div((safe_mult(11273, global_values.trace_length)), 32768))). - local pow1455 = pow32 * pow1454; // pow(trace_generator, (safe_div((safe_mult(22547, global_values.trace_length)), 65536))). - local pow1456 = pow32 * pow1455; // pow(trace_generator, (safe_div((safe_mult(5637, global_values.trace_length)), 16384))). - local pow1457 = pow32 * pow1456; // pow(trace_generator, (safe_div((safe_mult(22549, global_values.trace_length)), 65536))). - local pow1458 = pow32 * pow1457; // pow(trace_generator, (safe_div((safe_mult(11275, global_values.trace_length)), 32768))). - local pow1459 = pow32 * pow1458; // pow(trace_generator, (safe_div((safe_mult(22551, global_values.trace_length)), 65536))). - local pow1460 = pow79 * pow1459; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 1024))). - local pow1461 = pow100 * pow1460; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 512))). - local pow1462 = pow100 * pow1461; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 1024))). - local pow1463 = pow100 * pow1462; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 256))). - local pow1464 = pow100 * pow1463; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 1024))). - local pow1465 = pow100 * pow1464; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 512))). - local pow1466 = pow100 * pow1465; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 1024))). - local pow1467 = pow100 * pow1466; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 128))). - local pow1468 = pow100 * pow1467; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 1024))). - local pow1469 = pow100 * pow1468; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 512))). - local pow1470 = pow100 * pow1469; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 1024))). - local pow1471 = pow100 * pow1470; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 256))). - local pow1472 = pow100 * pow1471; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 1024))). - local pow1473 = pow100 * pow1472; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 512))). - local pow1474 = pow100 * pow1473; // pow(trace_generator, (safe_div((safe_mult(367, global_values.trace_length)), 1024))). - local pow1475 = pow100 * pow1474; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 64))). - local pow1476 = pow32 * pow1475; // pow(trace_generator, (safe_div((safe_mult(23553, global_values.trace_length)), 65536))). - local pow1477 = pow32 * pow1476; // pow(trace_generator, (safe_div((safe_mult(11777, global_values.trace_length)), 32768))). - local pow1478 = pow32 * pow1477; // pow(trace_generator, (safe_div((safe_mult(23555, global_values.trace_length)), 65536))). - local pow1479 = pow32 * pow1478; // pow(trace_generator, (safe_div((safe_mult(5889, global_values.trace_length)), 16384))). - local pow1480 = pow32 * pow1479; // pow(trace_generator, (safe_div((safe_mult(23557, global_values.trace_length)), 65536))). - local pow1481 = pow32 * pow1480; // pow(trace_generator, (safe_div((safe_mult(11779, global_values.trace_length)), 32768))). - local pow1482 = pow32 * pow1481; // pow(trace_generator, (safe_div((safe_mult(23559, global_values.trace_length)), 65536))). - local pow1483 = pow32 * pow1482; // pow(trace_generator, (safe_div((safe_mult(2945, global_values.trace_length)), 8192))). - local pow1484 = pow32 * pow1483; // pow(trace_generator, (safe_div((safe_mult(23561, global_values.trace_length)), 65536))). - local pow1485 = pow32 * pow1484; // pow(trace_generator, (safe_div((safe_mult(11781, global_values.trace_length)), 32768))). - local pow1486 = pow32 * pow1485; // pow(trace_generator, (safe_div((safe_mult(23563, global_values.trace_length)), 65536))). - local pow1487 = pow32 * pow1486; // pow(trace_generator, (safe_div((safe_mult(5891, global_values.trace_length)), 16384))). - local pow1488 = pow32 * pow1487; // pow(trace_generator, (safe_div((safe_mult(23565, global_values.trace_length)), 65536))). - local pow1489 = pow32 * pow1488; // pow(trace_generator, (safe_div((safe_mult(11783, global_values.trace_length)), 32768))). - local pow1490 = pow32 * pow1489; // pow(trace_generator, (safe_div((safe_mult(23567, global_values.trace_length)), 65536))). - local pow1491 = pow32 * pow1490; // pow(trace_generator, (safe_div((safe_mult(1473, global_values.trace_length)), 4096))). - local pow1492 = pow32 * pow1491; // pow(trace_generator, (safe_div((safe_mult(23569, global_values.trace_length)), 65536))). - local pow1493 = pow32 * pow1492; // pow(trace_generator, (safe_div((safe_mult(11785, global_values.trace_length)), 32768))). - local pow1494 = pow32 * pow1493; // pow(trace_generator, (safe_div((safe_mult(23571, global_values.trace_length)), 65536))). - local pow1495 = pow32 * pow1494; // pow(trace_generator, (safe_div((safe_mult(5893, global_values.trace_length)), 16384))). - local pow1496 = pow32 * pow1495; // pow(trace_generator, (safe_div((safe_mult(23573, global_values.trace_length)), 65536))). - local pow1497 = pow32 * pow1496; // pow(trace_generator, (safe_div((safe_mult(11787, global_values.trace_length)), 32768))). - local pow1498 = pow32 * pow1497; // pow(trace_generator, (safe_div((safe_mult(23575, global_values.trace_length)), 65536))). - local pow1499 = pow79 * pow1498; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 1024))). - local pow1500 = pow100 * pow1499; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 512))). - local pow1501 = pow100 * pow1500; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 1024))). - local pow1502 = pow100 * pow1501; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 256))). - local pow1503 = pow100 * pow1502; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 1024))). - local pow1504 = pow100 * pow1503; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 512))). - local pow1505 = pow100 * pow1504; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 1024))). - local pow1506 = pow580 * pow1505; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 8))). - local pow1507 = pow32 * pow1506; // pow(trace_generator, (safe_div((safe_mult(24577, global_values.trace_length)), 65536))). - local pow1508 = pow32 * pow1507; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 32768))). - local pow1509 = pow32 * pow1508; // pow(trace_generator, (safe_div((safe_mult(24579, global_values.trace_length)), 65536))). - local pow1510 = pow32 * pow1509; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 16384))). - local pow1511 = pow32 * pow1510; // pow(trace_generator, (safe_div((safe_mult(24581, global_values.trace_length)), 65536))). - local pow1512 = pow32 * pow1511; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 32768))). - local pow1513 = pow32 * pow1512; // pow(trace_generator, (safe_div((safe_mult(24583, global_values.trace_length)), 65536))). - local pow1514 = pow32 * pow1513; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 8192))). - local pow1515 = pow32 * pow1514; // pow(trace_generator, (safe_div((safe_mult(24585, global_values.trace_length)), 65536))). - local pow1516 = pow32 * pow1515; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 32768))). - local pow1517 = pow32 * pow1516; // pow(trace_generator, (safe_div((safe_mult(24587, global_values.trace_length)), 65536))). - local pow1518 = pow32 * pow1517; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 16384))). - local pow1519 = pow32 * pow1518; // pow(trace_generator, (safe_div((safe_mult(24589, global_values.trace_length)), 65536))). - local pow1520 = pow32 * pow1519; // pow(trace_generator, (safe_div((safe_mult(12295, global_values.trace_length)), 32768))). - local pow1521 = pow32 * pow1520; // pow(trace_generator, (safe_div((safe_mult(24591, global_values.trace_length)), 65536))). - local pow1522 = pow32 * pow1521; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 4096))). - local pow1523 = pow32 * pow1522; // pow(trace_generator, (safe_div((safe_mult(24593, global_values.trace_length)), 65536))). - local pow1524 = pow32 * pow1523; // pow(trace_generator, (safe_div((safe_mult(12297, global_values.trace_length)), 32768))). - local pow1525 = pow32 * pow1524; // pow(trace_generator, (safe_div((safe_mult(24595, global_values.trace_length)), 65536))). - local pow1526 = pow32 * pow1525; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 16384))). - local pow1527 = pow32 * pow1526; // pow(trace_generator, (safe_div((safe_mult(24597, global_values.trace_length)), 65536))). - local pow1528 = pow32 * pow1527; // pow(trace_generator, (safe_div((safe_mult(12299, global_values.trace_length)), 32768))). - local pow1529 = pow32 * pow1528; // pow(trace_generator, (safe_div((safe_mult(24599, global_values.trace_length)), 65536))). - local pow1530 = pow79 * pow1529; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 1024))). - local pow1531 = pow100 * pow1530; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 512))). - local pow1532 = pow100 * pow1531; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 1024))). - local pow1533 = pow100 * pow1532; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 256))). - local pow1534 = pow100 * pow1533; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 1024))). - local pow1535 = pow100 * pow1534; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 512))). - local pow1536 = pow100 * pow1535; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 1024))). - local pow1537 = pow100 * pow1536; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 128))). - local pow1538 = pow100 * pow1537; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 1024))). - local pow1539 = pow100 * pow1538; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 512))). - local pow1540 = pow100 * pow1539; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 1024))). - local pow1541 = pow100 * pow1540; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 256))). - local pow1542 = pow100 * pow1541; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 1024))). - local pow1543 = pow100 * pow1542; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 512))). - local pow1544 = pow100 * pow1543; // pow(trace_generator, (safe_div((safe_mult(399, global_values.trace_length)), 1024))). - local pow1545 = pow100 * pow1544; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 64))). - local pow1546 = pow32 * pow1545; // pow(trace_generator, (safe_div((safe_mult(25601, global_values.trace_length)), 65536))). - local pow1547 = pow32 * pow1546; // pow(trace_generator, (safe_div((safe_mult(12801, global_values.trace_length)), 32768))). - local pow1548 = pow32 * pow1547; // pow(trace_generator, (safe_div((safe_mult(25603, global_values.trace_length)), 65536))). - local pow1549 = pow32 * pow1548; // pow(trace_generator, (safe_div((safe_mult(6401, global_values.trace_length)), 16384))). - local pow1550 = pow32 * pow1549; // pow(trace_generator, (safe_div((safe_mult(25605, global_values.trace_length)), 65536))). - local pow1551 = pow32 * pow1550; // pow(trace_generator, (safe_div((safe_mult(12803, global_values.trace_length)), 32768))). - local pow1552 = pow32 * pow1551; // pow(trace_generator, (safe_div((safe_mult(25607, global_values.trace_length)), 65536))). - local pow1553 = pow32 * pow1552; // pow(trace_generator, (safe_div((safe_mult(3201, global_values.trace_length)), 8192))). - local pow1554 = pow32 * pow1553; // pow(trace_generator, (safe_div((safe_mult(25609, global_values.trace_length)), 65536))). - local pow1555 = pow32 * pow1554; // pow(trace_generator, (safe_div((safe_mult(12805, global_values.trace_length)), 32768))). - local pow1556 = pow32 * pow1555; // pow(trace_generator, (safe_div((safe_mult(25611, global_values.trace_length)), 65536))). - local pow1557 = pow32 * pow1556; // pow(trace_generator, (safe_div((safe_mult(6403, global_values.trace_length)), 16384))). - local pow1558 = pow32 * pow1557; // pow(trace_generator, (safe_div((safe_mult(25613, global_values.trace_length)), 65536))). - local pow1559 = pow32 * pow1558; // pow(trace_generator, (safe_div((safe_mult(12807, global_values.trace_length)), 32768))). - local pow1560 = pow32 * pow1559; // pow(trace_generator, (safe_div((safe_mult(25615, global_values.trace_length)), 65536))). - local pow1561 = pow32 * pow1560; // pow(trace_generator, (safe_div((safe_mult(1601, global_values.trace_length)), 4096))). - local pow1562 = pow32 * pow1561; // pow(trace_generator, (safe_div((safe_mult(25617, global_values.trace_length)), 65536))). - local pow1563 = pow32 * pow1562; // pow(trace_generator, (safe_div((safe_mult(12809, global_values.trace_length)), 32768))). - local pow1564 = pow32 * pow1563; // pow(trace_generator, (safe_div((safe_mult(25619, global_values.trace_length)), 65536))). - local pow1565 = pow32 * pow1564; // pow(trace_generator, (safe_div((safe_mult(6405, global_values.trace_length)), 16384))). - local pow1566 = pow32 * pow1565; // pow(trace_generator, (safe_div((safe_mult(25621, global_values.trace_length)), 65536))). - local pow1567 = pow32 * pow1566; // pow(trace_generator, (safe_div((safe_mult(12811, global_values.trace_length)), 32768))). - local pow1568 = pow32 * pow1567; // pow(trace_generator, (safe_div((safe_mult(25623, global_values.trace_length)), 65536))). - local pow1569 = pow79 * pow1568; // pow(trace_generator, (safe_div((safe_mult(401, global_values.trace_length)), 1024))). - local pow1570 = pow100 * pow1569; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 512))). - local pow1571 = pow100 * pow1570; // pow(trace_generator, (safe_div((safe_mult(403, global_values.trace_length)), 1024))). - local pow1572 = pow100 * pow1571; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 256))). - local pow1573 = pow100 * pow1572; // pow(trace_generator, (safe_div((safe_mult(405, global_values.trace_length)), 1024))). - local pow1574 = pow100 * pow1573; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 512))). - local pow1575 = pow100 * pow1574; // pow(trace_generator, (safe_div((safe_mult(407, global_values.trace_length)), 1024))). - local pow1576 = pow580 * pow1575; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 32))). - local pow1577 = pow793 * pow1576; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 64))). - local pow1578 = pow32 * pow1576; // pow(trace_generator, (safe_div((safe_mult(26625, global_values.trace_length)), 65536))). - local pow1579 = pow32 * pow1577; // pow(trace_generator, (safe_div((safe_mult(27649, global_values.trace_length)), 65536))). - local pow1580 = pow32 * pow1578; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 32768))). - local pow1581 = pow32 * pow1579; // pow(trace_generator, (safe_div((safe_mult(13825, global_values.trace_length)), 32768))). - local pow1582 = pow32 * pow1580; // pow(trace_generator, (safe_div((safe_mult(26627, global_values.trace_length)), 65536))). - local pow1583 = pow32 * pow1581; // pow(trace_generator, (safe_div((safe_mult(27651, global_values.trace_length)), 65536))). - local pow1584 = pow32 * pow1582; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 16384))). - local pow1585 = pow32 * pow1583; // pow(trace_generator, (safe_div((safe_mult(6913, global_values.trace_length)), 16384))). - local pow1586 = pow32 * pow1584; // pow(trace_generator, (safe_div((safe_mult(26629, global_values.trace_length)), 65536))). - local pow1587 = pow32 * pow1585; // pow(trace_generator, (safe_div((safe_mult(27653, global_values.trace_length)), 65536))). - local pow1588 = pow32 * pow1586; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 32768))). - local pow1589 = pow32 * pow1587; // pow(trace_generator, (safe_div((safe_mult(13827, global_values.trace_length)), 32768))). - local pow1590 = pow32 * pow1588; // pow(trace_generator, (safe_div((safe_mult(26631, global_values.trace_length)), 65536))). - local pow1591 = pow32 * pow1589; // pow(trace_generator, (safe_div((safe_mult(27655, global_values.trace_length)), 65536))). - local pow1592 = pow32 * pow1590; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 8192))). - local pow1593 = pow32 * pow1592; // pow(trace_generator, (safe_div((safe_mult(26633, global_values.trace_length)), 65536))). - local pow1594 = pow32 * pow1593; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 32768))). - local pow1595 = pow32 * pow1594; // pow(trace_generator, (safe_div((safe_mult(26635, global_values.trace_length)), 65536))). - local pow1596 = pow32 * pow1595; // pow(trace_generator, (safe_div((safe_mult(6659, global_values.trace_length)), 16384))). - local pow1597 = pow32 * pow1596; // pow(trace_generator, (safe_div((safe_mult(26637, global_values.trace_length)), 65536))). - local pow1598 = pow32 * pow1597; // pow(trace_generator, (safe_div((safe_mult(13319, global_values.trace_length)), 32768))). - local pow1599 = pow32 * pow1598; // pow(trace_generator, (safe_div((safe_mult(26639, global_values.trace_length)), 65536))). - local pow1600 = pow32 * pow1599; // pow(trace_generator, (safe_div((safe_mult(1665, global_values.trace_length)), 4096))). - local pow1601 = pow32 * pow1600; // pow(trace_generator, (safe_div((safe_mult(26641, global_values.trace_length)), 65536))). - local pow1602 = pow32 * pow1601; // pow(trace_generator, (safe_div((safe_mult(13321, global_values.trace_length)), 32768))). - local pow1603 = pow32 * pow1602; // pow(trace_generator, (safe_div((safe_mult(26643, global_values.trace_length)), 65536))). - local pow1604 = pow32 * pow1603; // pow(trace_generator, (safe_div((safe_mult(6661, global_values.trace_length)), 16384))). - local pow1605 = pow32 * pow1604; // pow(trace_generator, (safe_div((safe_mult(26645, global_values.trace_length)), 65536))). - local pow1606 = pow32 * pow1605; // pow(trace_generator, (safe_div((safe_mult(13323, global_values.trace_length)), 32768))). - local pow1607 = pow32 * pow1606; // pow(trace_generator, (safe_div((safe_mult(26647, global_values.trace_length)), 65536))). - local pow1608 = pow863 * pow1577; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 32))). - local pow1609 = pow100 * pow1608; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 1024))). - local pow1610 = pow100 * pow1609; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 512))). - local pow1611 = pow100 * pow1610; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 1024))). - local pow1612 = pow100 * pow1611; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 256))). - local pow1613 = pow100 * pow1612; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 1024))). - local pow1614 = pow100 * pow1613; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 512))). - local pow1615 = pow100 * pow1614; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 1024))). - local pow1616 = pow100 * pow1615; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 128))). - local pow1617 = pow100 * pow1616; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 1024))). - local pow1618 = pow100 * pow1617; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 512))). - local pow1619 = pow100 * pow1618; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 1024))). - local pow1620 = pow100 * pow1619; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 256))). - local pow1621 = pow100 * pow1620; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 1024))). - local pow1622 = pow100 * pow1621; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 512))). - local pow1623 = pow100 * pow1622; // pow(trace_generator, (safe_div((safe_mult(495, global_values.trace_length)), 1024))). - local pow1624 = pow100 * pow1623; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 64))). - local pow1625 = pow32 * pow1624; // pow(trace_generator, (safe_div((safe_mult(31745, global_values.trace_length)), 65536))). - local pow1626 = pow32 * pow1625; // pow(trace_generator, (safe_div((safe_mult(15873, global_values.trace_length)), 32768))). - local pow1627 = pow32 * pow1626; // pow(trace_generator, (safe_div((safe_mult(31747, global_values.trace_length)), 65536))). - local pow1628 = pow32 * pow1627; // pow(trace_generator, (safe_div((safe_mult(7937, global_values.trace_length)), 16384))). - local pow1629 = pow32 * pow1628; // pow(trace_generator, (safe_div((safe_mult(31749, global_values.trace_length)), 65536))). - local pow1630 = pow32 * pow1629; // pow(trace_generator, (safe_div((safe_mult(15875, global_values.trace_length)), 32768))). - local pow1631 = pow32 * pow1630; // pow(trace_generator, (safe_div((safe_mult(31751, global_values.trace_length)), 65536))). - local pow1632 = pow32 * pow1591; // pow(trace_generator, (safe_div((safe_mult(3457, global_values.trace_length)), 8192))). - local pow1633 = pow32 * pow1631; // pow(trace_generator, (safe_div((safe_mult(3969, global_values.trace_length)), 8192))). - local pow1634 = pow32 * pow1632; // pow(trace_generator, (safe_div((safe_mult(27657, global_values.trace_length)), 65536))). - local pow1635 = pow32 * pow1633; // pow(trace_generator, (safe_div((safe_mult(31753, global_values.trace_length)), 65536))). - local pow1636 = pow32 * pow1634; // pow(trace_generator, (safe_div((safe_mult(13829, global_values.trace_length)), 32768))). - local pow1637 = pow32 * pow1635; // pow(trace_generator, (safe_div((safe_mult(15877, global_values.trace_length)), 32768))). - local pow1638 = pow32 * pow1636; // pow(trace_generator, (safe_div((safe_mult(27659, global_values.trace_length)), 65536))). - local pow1639 = pow32 * pow1637; // pow(trace_generator, (safe_div((safe_mult(31755, global_values.trace_length)), 65536))). - local pow1640 = pow32 * pow1638; // pow(trace_generator, (safe_div((safe_mult(6915, global_values.trace_length)), 16384))). - local pow1641 = pow32 * pow1639; // pow(trace_generator, (safe_div((safe_mult(7939, global_values.trace_length)), 16384))). - local pow1642 = pow32 * pow1640; // pow(trace_generator, (safe_div((safe_mult(27661, global_values.trace_length)), 65536))). - local pow1643 = pow32 * pow1641; // pow(trace_generator, (safe_div((safe_mult(31757, global_values.trace_length)), 65536))). - local pow1644 = pow32 * pow1642; // pow(trace_generator, (safe_div((safe_mult(13831, global_values.trace_length)), 32768))). - local pow1645 = pow32 * pow1643; // pow(trace_generator, (safe_div((safe_mult(15879, global_values.trace_length)), 32768))). - local pow1646 = pow32 * pow1644; // pow(trace_generator, (safe_div((safe_mult(27663, global_values.trace_length)), 65536))). - local pow1647 = pow32 * pow1645; // pow(trace_generator, (safe_div((safe_mult(31759, global_values.trace_length)), 65536))). - local pow1648 = pow32 * pow1646; // pow(trace_generator, (safe_div((safe_mult(1729, global_values.trace_length)), 4096))). - local pow1649 = pow32 * pow1647; // pow(trace_generator, (safe_div((safe_mult(1985, global_values.trace_length)), 4096))). - local pow1650 = pow32 * pow1648; // pow(trace_generator, (safe_div((safe_mult(27665, global_values.trace_length)), 65536))). - local pow1651 = pow32 * pow1649; // pow(trace_generator, (safe_div((safe_mult(31761, global_values.trace_length)), 65536))). - local pow1652 = pow32 * pow1650; // pow(trace_generator, (safe_div((safe_mult(13833, global_values.trace_length)), 32768))). - local pow1653 = pow32 * pow1651; // pow(trace_generator, (safe_div((safe_mult(15881, global_values.trace_length)), 32768))). - local pow1654 = pow32 * pow1652; // pow(trace_generator, (safe_div((safe_mult(27667, global_values.trace_length)), 65536))). - local pow1655 = pow32 * pow1653; // pow(trace_generator, (safe_div((safe_mult(31763, global_values.trace_length)), 65536))). - local pow1656 = pow32 * pow1654; // pow(trace_generator, (safe_div((safe_mult(6917, global_values.trace_length)), 16384))). - local pow1657 = pow32 * pow1655; // pow(trace_generator, (safe_div((safe_mult(7941, global_values.trace_length)), 16384))). - local pow1658 = pow32 * pow1656; // pow(trace_generator, (safe_div((safe_mult(27669, global_values.trace_length)), 65536))). - local pow1659 = pow32 * pow1657; // pow(trace_generator, (safe_div((safe_mult(31765, global_values.trace_length)), 65536))). - local pow1660 = pow32 * pow1658; // pow(trace_generator, (safe_div((safe_mult(13835, global_values.trace_length)), 32768))). - local pow1661 = pow32 * pow1660; // pow(trace_generator, (safe_div((safe_mult(27671, global_values.trace_length)), 65536))). - local pow1662 = pow32 * pow1659; // pow(trace_generator, (safe_div((safe_mult(15883, global_values.trace_length)), 32768))). - local pow1663 = pow32 * pow1662; // pow(trace_generator, (safe_div((safe_mult(31767, global_values.trace_length)), 65536))). - local pow1664 = pow79 * pow1663; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 1024))). - local pow1665 = pow100 * pow1664; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 512))). - local pow1666 = pow100 * pow1665; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 1024))). - local pow1667 = pow100 * pow1666; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 256))). - local pow1668 = pow100 * pow1667; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 1024))). - local pow1669 = pow100 * pow1668; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 512))). - local pow1670 = pow100 * pow1669; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 1024))). - local pow1671 = pow580 * pow1670; // pow(trace_generator, (safe_div(global_values.trace_length, 2))). - local pow1672 = pow100 * pow1671; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 1024))). - local pow1673 = pow100 * pow1672; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 512))). - local pow1674 = pow100 * pow1673; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 1024))). - local pow1675 = pow100 * pow1674; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 256))). - local pow1676 = pow100 * pow1675; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 1024))). - local pow1677 = pow100 * pow1676; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 512))). - local pow1678 = pow100 * pow1677; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 1024))). - local pow1679 = pow100 * pow1678; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 128))). - local pow1680 = pow100 * pow1679; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 1024))). - local pow1681 = pow100 * pow1680; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 512))). - local pow1682 = pow100 * pow1681; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 1024))). - local pow1683 = pow100 * pow1682; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 256))). - local pow1684 = pow100 * pow1683; // pow(trace_generator, (safe_div((safe_mult(525, global_values.trace_length)), 1024))). - local pow1685 = pow100 * pow1684; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 512))). - local pow1686 = pow100 * pow1685; // pow(trace_generator, (safe_div((safe_mult(527, global_values.trace_length)), 1024))). - local pow1687 = pow100 * pow1686; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 64))). - local pow1688 = pow100 * pow1687; // pow(trace_generator, (safe_div((safe_mult(529, global_values.trace_length)), 1024))). - local pow1689 = pow100 * pow1688; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 512))). - local pow1690 = pow100 * pow1689; // pow(trace_generator, (safe_div((safe_mult(531, global_values.trace_length)), 1024))). - local pow1691 = pow100 * pow1690; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 256))). - local pow1692 = pow100 * pow1691; // pow(trace_generator, (safe_div((safe_mult(533, global_values.trace_length)), 1024))). - local pow1693 = pow100 * pow1692; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 512))). - local pow1694 = pow100 * pow1693; // pow(trace_generator, (safe_div((safe_mult(535, global_values.trace_length)), 1024))). - local pow1695 = pow580 * pow1694; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 32))). - local pow1696 = pow100 * pow1695; // pow(trace_generator, (safe_div((safe_mult(545, global_values.trace_length)), 1024))). - local pow1697 = pow100 * pow1696; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 512))). - local pow1698 = pow100 * pow1697; // pow(trace_generator, (safe_div((safe_mult(547, global_values.trace_length)), 1024))). - local pow1699 = pow100 * pow1698; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 256))). - local pow1700 = pow100 * pow1699; // pow(trace_generator, (safe_div((safe_mult(549, global_values.trace_length)), 1024))). - local pow1701 = pow100 * pow1700; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 512))). - local pow1702 = pow100 * pow1701; // pow(trace_generator, (safe_div((safe_mult(551, global_values.trace_length)), 1024))). - local pow1703 = pow100 * pow1702; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 128))). - local pow1704 = pow100 * pow1703; // pow(trace_generator, (safe_div((safe_mult(553, global_values.trace_length)), 1024))). - local pow1705 = pow100 * pow1704; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 512))). - local pow1706 = pow100 * pow1705; // pow(trace_generator, (safe_div((safe_mult(555, global_values.trace_length)), 1024))). - local pow1707 = pow100 * pow1706; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 256))). - local pow1708 = pow100 * pow1707; // pow(trace_generator, (safe_div((safe_mult(557, global_values.trace_length)), 1024))). - local pow1709 = pow100 * pow1708; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 512))). - local pow1710 = pow100 * pow1709; // pow(trace_generator, (safe_div((safe_mult(559, global_values.trace_length)), 1024))). - local pow1711 = pow100 * pow1710; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 64))). - local pow1712 = pow100 * pow1711; // pow(trace_generator, (safe_div((safe_mult(561, global_values.trace_length)), 1024))). - local pow1713 = pow100 * pow1712; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 512))). - local pow1714 = pow100 * pow1713; // pow(trace_generator, (safe_div((safe_mult(563, global_values.trace_length)), 1024))). - local pow1715 = pow100 * pow1714; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 256))). - local pow1716 = pow100 * pow1715; // pow(trace_generator, (safe_div((safe_mult(565, global_values.trace_length)), 1024))). - local pow1717 = pow100 * pow1716; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 512))). - local pow1718 = pow100 * pow1717; // pow(trace_generator, (safe_div((safe_mult(567, global_values.trace_length)), 1024))). - local pow1719 = pow580 * pow1718; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 16))). - local pow1720 = pow32 * pow1719; // pow(trace_generator, (safe_div((safe_mult(36865, global_values.trace_length)), 65536))). - local pow1721 = pow32 * pow1720; // pow(trace_generator, (safe_div((safe_mult(18433, global_values.trace_length)), 32768))). - local pow1722 = pow32 * pow1721; // pow(trace_generator, (safe_div((safe_mult(36867, global_values.trace_length)), 65536))). - local pow1723 = pow32 * pow1722; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 16384))). - local pow1724 = pow32 * pow1723; // pow(trace_generator, (safe_div((safe_mult(36869, global_values.trace_length)), 65536))). - local pow1725 = pow32 * pow1724; // pow(trace_generator, (safe_div((safe_mult(18435, global_values.trace_length)), 32768))). - local pow1726 = pow32 * pow1725; // pow(trace_generator, (safe_div((safe_mult(36871, global_values.trace_length)), 65536))). - local pow1727 = pow793 * pow1719; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 64))). - local pow1728 = pow32 * pow1727; // pow(trace_generator, (safe_div((safe_mult(37889, global_values.trace_length)), 65536))). - local pow1729 = pow32 * pow1728; // pow(trace_generator, (safe_div((safe_mult(18945, global_values.trace_length)), 32768))). - local pow1730 = pow32 * pow1729; // pow(trace_generator, (safe_div((safe_mult(37891, global_values.trace_length)), 65536))). - local pow1731 = pow32 * pow1730; // pow(trace_generator, (safe_div((safe_mult(9473, global_values.trace_length)), 16384))). - local pow1732 = pow32 * pow1731; // pow(trace_generator, (safe_div((safe_mult(37893, global_values.trace_length)), 65536))). - local pow1733 = pow32 * pow1732; // pow(trace_generator, (safe_div((safe_mult(18947, global_values.trace_length)), 32768))). - local pow1734 = pow32 * pow1733; // pow(trace_generator, (safe_div((safe_mult(37895, global_values.trace_length)), 65536))). - local pow1735 = pow793 * pow1727; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 32))). - local pow1736 = pow32 * pow1735; // pow(trace_generator, (safe_div((safe_mult(38913, global_values.trace_length)), 65536))). - local pow1737 = pow32 * pow1736; // pow(trace_generator, (safe_div((safe_mult(19457, global_values.trace_length)), 32768))). - local pow1738 = pow32 * pow1737; // pow(trace_generator, (safe_div((safe_mult(38915, global_values.trace_length)), 65536))). - local pow1739 = pow32 * pow1738; // pow(trace_generator, (safe_div((safe_mult(9729, global_values.trace_length)), 16384))). - local pow1740 = pow32 * pow1739; // pow(trace_generator, (safe_div((safe_mult(38917, global_values.trace_length)), 65536))). - local pow1741 = pow32 * pow1740; // pow(trace_generator, (safe_div((safe_mult(19459, global_values.trace_length)), 32768))). - local pow1742 = pow32 * pow1741; // pow(trace_generator, (safe_div((safe_mult(38919, global_values.trace_length)), 65536))). - local pow1743 = pow793 * pow1735; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 64))). - local pow1744 = pow32 * pow1743; // pow(trace_generator, (safe_div((safe_mult(39937, global_values.trace_length)), 65536))). - local pow1745 = pow32 * pow1744; // pow(trace_generator, (safe_div((safe_mult(19969, global_values.trace_length)), 32768))). - local pow1746 = pow32 * pow1745; // pow(trace_generator, (safe_div((safe_mult(39939, global_values.trace_length)), 65536))). - local pow1747 = pow32 * pow1746; // pow(trace_generator, (safe_div((safe_mult(9985, global_values.trace_length)), 16384))). - local pow1748 = pow32 * pow1747; // pow(trace_generator, (safe_div((safe_mult(39941, global_values.trace_length)), 65536))). - local pow1749 = pow32 * pow1748; // pow(trace_generator, (safe_div((safe_mult(19971, global_values.trace_length)), 32768))). - local pow1750 = pow32 * pow1749; // pow(trace_generator, (safe_div((safe_mult(39943, global_values.trace_length)), 65536))). - local pow1751 = pow793 * pow1743; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 8))). - local pow1752 = pow32 * pow1751; // pow(trace_generator, (safe_div((safe_mult(40961, global_values.trace_length)), 65536))). - local pow1753 = pow32 * pow1752; // pow(trace_generator, (safe_div((safe_mult(20481, global_values.trace_length)), 32768))). - local pow1754 = pow32 * pow1753; // pow(trace_generator, (safe_div((safe_mult(40963, global_values.trace_length)), 65536))). - local pow1755 = pow32 * pow1754; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 16384))). - local pow1756 = pow32 * pow1755; // pow(trace_generator, (safe_div((safe_mult(40965, global_values.trace_length)), 65536))). - local pow1757 = pow32 * pow1756; // pow(trace_generator, (safe_div((safe_mult(20483, global_values.trace_length)), 32768))). - local pow1758 = pow32 * pow1757; // pow(trace_generator, (safe_div((safe_mult(40967, global_values.trace_length)), 65536))). - local pow1759 = pow32 * pow1726; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 8192))). - local pow1760 = pow32 * pow1759; // pow(trace_generator, (safe_div((safe_mult(36873, global_values.trace_length)), 65536))). - local pow1761 = pow32 * pow1760; // pow(trace_generator, (safe_div((safe_mult(18437, global_values.trace_length)), 32768))). - local pow1762 = pow32 * pow1761; // pow(trace_generator, (safe_div((safe_mult(36875, global_values.trace_length)), 65536))). - local pow1763 = pow32 * pow1762; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 16384))). - local pow1764 = pow32 * pow1763; // pow(trace_generator, (safe_div((safe_mult(36877, global_values.trace_length)), 65536))). - local pow1765 = pow32 * pow1764; // pow(trace_generator, (safe_div((safe_mult(18439, global_values.trace_length)), 32768))). - local pow1766 = pow32 * pow1765; // pow(trace_generator, (safe_div((safe_mult(36879, global_values.trace_length)), 65536))). - local pow1767 = pow32 * pow1766; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 4096))). - local pow1768 = pow32 * pow1767; // pow(trace_generator, (safe_div((safe_mult(36881, global_values.trace_length)), 65536))). - local pow1769 = pow32 * pow1768; // pow(trace_generator, (safe_div((safe_mult(18441, global_values.trace_length)), 32768))). - local pow1770 = pow32 * pow1769; // pow(trace_generator, (safe_div((safe_mult(36883, global_values.trace_length)), 65536))). - local pow1771 = pow32 * pow1770; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 16384))). - local pow1772 = pow32 * pow1771; // pow(trace_generator, (safe_div((safe_mult(36885, global_values.trace_length)), 65536))). - local pow1773 = pow32 * pow1772; // pow(trace_generator, (safe_div((safe_mult(18443, global_values.trace_length)), 32768))). - local pow1774 = pow32 * pow1773; // pow(trace_generator, (safe_div((safe_mult(36887, global_values.trace_length)), 65536))). - local pow1775 = pow32 * pow1734; // pow(trace_generator, (safe_div((safe_mult(4737, global_values.trace_length)), 8192))). - local pow1776 = pow32 * pow1742; // pow(trace_generator, (safe_div((safe_mult(4865, global_values.trace_length)), 8192))). - local pow1777 = pow32 * pow1775; // pow(trace_generator, (safe_div((safe_mult(37897, global_values.trace_length)), 65536))). - local pow1778 = pow32 * pow1776; // pow(trace_generator, (safe_div((safe_mult(38921, global_values.trace_length)), 65536))). - local pow1779 = pow32 * pow1777; // pow(trace_generator, (safe_div((safe_mult(18949, global_values.trace_length)), 32768))). - local pow1780 = pow32 * pow1778; // pow(trace_generator, (safe_div((safe_mult(19461, global_values.trace_length)), 32768))). - local pow1781 = pow32 * pow1779; // pow(trace_generator, (safe_div((safe_mult(37899, global_values.trace_length)), 65536))). - local pow1782 = pow32 * pow1780; // pow(trace_generator, (safe_div((safe_mult(38923, global_values.trace_length)), 65536))). - local pow1783 = pow32 * pow1781; // pow(trace_generator, (safe_div((safe_mult(9475, global_values.trace_length)), 16384))). - local pow1784 = pow32 * pow1782; // pow(trace_generator, (safe_div((safe_mult(9731, global_values.trace_length)), 16384))). - local pow1785 = pow32 * pow1783; // pow(trace_generator, (safe_div((safe_mult(37901, global_values.trace_length)), 65536))). - local pow1786 = pow32 * pow1784; // pow(trace_generator, (safe_div((safe_mult(38925, global_values.trace_length)), 65536))). - local pow1787 = pow32 * pow1785; // pow(trace_generator, (safe_div((safe_mult(18951, global_values.trace_length)), 32768))). - local pow1788 = pow32 * pow1786; // pow(trace_generator, (safe_div((safe_mult(19463, global_values.trace_length)), 32768))). - local pow1789 = pow32 * pow1787; // pow(trace_generator, (safe_div((safe_mult(37903, global_values.trace_length)), 65536))). - local pow1790 = pow32 * pow1788; // pow(trace_generator, (safe_div((safe_mult(38927, global_values.trace_length)), 65536))). - local pow1791 = pow32 * pow1789; // pow(trace_generator, (safe_div((safe_mult(2369, global_values.trace_length)), 4096))). - local pow1792 = pow32 * pow1790; // pow(trace_generator, (safe_div((safe_mult(2433, global_values.trace_length)), 4096))). - local pow1793 = pow32 * pow1791; // pow(trace_generator, (safe_div((safe_mult(37905, global_values.trace_length)), 65536))). - local pow1794 = pow32 * pow1792; // pow(trace_generator, (safe_div((safe_mult(38929, global_values.trace_length)), 65536))). - local pow1795 = pow32 * pow1793; // pow(trace_generator, (safe_div((safe_mult(18953, global_values.trace_length)), 32768))). - local pow1796 = pow32 * pow1794; // pow(trace_generator, (safe_div((safe_mult(19465, global_values.trace_length)), 32768))). - local pow1797 = pow32 * pow1795; // pow(trace_generator, (safe_div((safe_mult(37907, global_values.trace_length)), 65536))). - local pow1798 = pow32 * pow1796; // pow(trace_generator, (safe_div((safe_mult(38931, global_values.trace_length)), 65536))). - local pow1799 = pow32 * pow1797; // pow(trace_generator, (safe_div((safe_mult(9477, global_values.trace_length)), 16384))). - local pow1800 = pow32 * pow1798; // pow(trace_generator, (safe_div((safe_mult(9733, global_values.trace_length)), 16384))). - local pow1801 = pow32 * pow1799; // pow(trace_generator, (safe_div((safe_mult(37909, global_values.trace_length)), 65536))). - local pow1802 = pow32 * pow1800; // pow(trace_generator, (safe_div((safe_mult(38933, global_values.trace_length)), 65536))). - local pow1803 = pow32 * pow1801; // pow(trace_generator, (safe_div((safe_mult(18955, global_values.trace_length)), 32768))). - local pow1804 = pow32 * pow1803; // pow(trace_generator, (safe_div((safe_mult(37911, global_values.trace_length)), 65536))). - local pow1805 = pow32 * pow1802; // pow(trace_generator, (safe_div((safe_mult(19467, global_values.trace_length)), 32768))). - local pow1806 = pow32 * pow1805; // pow(trace_generator, (safe_div((safe_mult(38935, global_values.trace_length)), 65536))). - local pow1807 = pow32 * pow1750; // pow(trace_generator, (safe_div((safe_mult(4993, global_values.trace_length)), 8192))). - local pow1808 = pow32 * pow1758; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 8192))). - local pow1809 = pow32 * pow1807; // pow(trace_generator, (safe_div((safe_mult(39945, global_values.trace_length)), 65536))). - local pow1810 = pow32 * pow1808; // pow(trace_generator, (safe_div((safe_mult(40969, global_values.trace_length)), 65536))). - local pow1811 = pow32 * pow1809; // pow(trace_generator, (safe_div((safe_mult(19973, global_values.trace_length)), 32768))). - local pow1812 = pow32 * pow1810; // pow(trace_generator, (safe_div((safe_mult(20485, global_values.trace_length)), 32768))). - local pow1813 = pow32 * pow1811; // pow(trace_generator, (safe_div((safe_mult(39947, global_values.trace_length)), 65536))). - local pow1814 = pow32 * pow1812; // pow(trace_generator, (safe_div((safe_mult(40971, global_values.trace_length)), 65536))). - local pow1815 = pow32 * pow1813; // pow(trace_generator, (safe_div((safe_mult(9987, global_values.trace_length)), 16384))). - local pow1816 = pow32 * pow1814; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 16384))). - local pow1817 = pow32 * pow1815; // pow(trace_generator, (safe_div((safe_mult(39949, global_values.trace_length)), 65536))). - local pow1818 = pow32 * pow1816; // pow(trace_generator, (safe_div((safe_mult(40973, global_values.trace_length)), 65536))). - local pow1819 = pow32 * pow1817; // pow(trace_generator, (safe_div((safe_mult(19975, global_values.trace_length)), 32768))). - local pow1820 = pow32 * pow1818; // pow(trace_generator, (safe_div((safe_mult(20487, global_values.trace_length)), 32768))). - local pow1821 = pow32 * pow1819; // pow(trace_generator, (safe_div((safe_mult(39951, global_values.trace_length)), 65536))). - local pow1822 = pow32 * pow1820; // pow(trace_generator, (safe_div((safe_mult(40975, global_values.trace_length)), 65536))). - local pow1823 = pow32 * pow1821; // pow(trace_generator, (safe_div((safe_mult(2497, global_values.trace_length)), 4096))). - local pow1824 = pow32 * pow1822; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 4096))). - local pow1825 = pow32 * pow1823; // pow(trace_generator, (safe_div((safe_mult(39953, global_values.trace_length)), 65536))). - local pow1826 = pow32 * pow1824; // pow(trace_generator, (safe_div((safe_mult(40977, global_values.trace_length)), 65536))). - local pow1827 = pow32 * pow1825; // pow(trace_generator, (safe_div((safe_mult(19977, global_values.trace_length)), 32768))). - local pow1828 = pow32 * pow1826; // pow(trace_generator, (safe_div((safe_mult(20489, global_values.trace_length)), 32768))). - local pow1829 = pow32 * pow1827; // pow(trace_generator, (safe_div((safe_mult(39955, global_values.trace_length)), 65536))). - local pow1830 = pow32 * pow1828; // pow(trace_generator, (safe_div((safe_mult(40979, global_values.trace_length)), 65536))). - local pow1831 = pow32 * pow1829; // pow(trace_generator, (safe_div((safe_mult(9989, global_values.trace_length)), 16384))). - local pow1832 = pow32 * pow1830; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 16384))). - local pow1833 = pow32 * pow1831; // pow(trace_generator, (safe_div((safe_mult(39957, global_values.trace_length)), 65536))). - local pow1834 = pow32 * pow1832; // pow(trace_generator, (safe_div((safe_mult(40981, global_values.trace_length)), 65536))). - local pow1835 = pow32 * pow1833; // pow(trace_generator, (safe_div((safe_mult(19979, global_values.trace_length)), 32768))). - local pow1836 = pow32 * pow1834; // pow(trace_generator, (safe_div((safe_mult(20491, global_values.trace_length)), 32768))). - local pow1837 = pow32 * pow1835; // pow(trace_generator, (safe_div((safe_mult(39959, global_values.trace_length)), 65536))). - local pow1838 = pow32 * pow1836; // pow(trace_generator, (safe_div((safe_mult(40983, global_values.trace_length)), 65536))). - local pow1839 = pow79 * pow1838; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 1024))). - local pow1840 = pow100 * pow1839; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 512))). - local pow1841 = pow100 * pow1840; // pow(trace_generator, (safe_div((safe_mult(643, global_values.trace_length)), 1024))). - local pow1842 = pow100 * pow1841; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 256))). - local pow1843 = pow100 * pow1842; // pow(trace_generator, (safe_div((safe_mult(645, global_values.trace_length)), 1024))). - local pow1844 = pow100 * pow1843; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 512))). - local pow1845 = pow100 * pow1844; // pow(trace_generator, (safe_div((safe_mult(647, global_values.trace_length)), 1024))). - local pow1846 = pow100 * pow1845; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 128))). - local pow1847 = pow100 * pow1846; // pow(trace_generator, (safe_div((safe_mult(649, global_values.trace_length)), 1024))). - local pow1848 = pow100 * pow1847; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 512))). - local pow1849 = pow100 * pow1848; // pow(trace_generator, (safe_div((safe_mult(651, global_values.trace_length)), 1024))). - local pow1850 = pow100 * pow1849; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 256))). - local pow1851 = pow100 * pow1850; // pow(trace_generator, (safe_div((safe_mult(653, global_values.trace_length)), 1024))). - local pow1852 = pow100 * pow1851; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 512))). - local pow1853 = pow100 * pow1852; // pow(trace_generator, (safe_div((safe_mult(655, global_values.trace_length)), 1024))). - local pow1854 = pow100 * pow1853; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 64))). - local pow1855 = pow32 * pow1854; // pow(trace_generator, (safe_div((safe_mult(41985, global_values.trace_length)), 65536))). - local pow1856 = pow32 * pow1855; // pow(trace_generator, (safe_div((safe_mult(20993, global_values.trace_length)), 32768))). - local pow1857 = pow32 * pow1856; // pow(trace_generator, (safe_div((safe_mult(41987, global_values.trace_length)), 65536))). - local pow1858 = pow32 * pow1857; // pow(trace_generator, (safe_div((safe_mult(10497, global_values.trace_length)), 16384))). - local pow1859 = pow32 * pow1858; // pow(trace_generator, (safe_div((safe_mult(41989, global_values.trace_length)), 65536))). - local pow1860 = pow32 * pow1859; // pow(trace_generator, (safe_div((safe_mult(20995, global_values.trace_length)), 32768))). - local pow1861 = pow32 * pow1860; // pow(trace_generator, (safe_div((safe_mult(41991, global_values.trace_length)), 65536))). - local pow1862 = pow32 * pow1861; // pow(trace_generator, (safe_div((safe_mult(5249, global_values.trace_length)), 8192))). - local pow1863 = pow32 * pow1862; // pow(trace_generator, (safe_div((safe_mult(41993, global_values.trace_length)), 65536))). - local pow1864 = pow32 * pow1863; // pow(trace_generator, (safe_div((safe_mult(20997, global_values.trace_length)), 32768))). - local pow1865 = pow32 * pow1864; // pow(trace_generator, (safe_div((safe_mult(41995, global_values.trace_length)), 65536))). - local pow1866 = pow32 * pow1865; // pow(trace_generator, (safe_div((safe_mult(10499, global_values.trace_length)), 16384))). - local pow1867 = pow32 * pow1866; // pow(trace_generator, (safe_div((safe_mult(41997, global_values.trace_length)), 65536))). - local pow1868 = pow32 * pow1867; // pow(trace_generator, (safe_div((safe_mult(20999, global_values.trace_length)), 32768))). - local pow1869 = pow32 * pow1868; // pow(trace_generator, (safe_div((safe_mult(41999, global_values.trace_length)), 65536))). - local pow1870 = pow32 * pow1869; // pow(trace_generator, (safe_div((safe_mult(2625, global_values.trace_length)), 4096))). - local pow1871 = pow32 * pow1870; // pow(trace_generator, (safe_div((safe_mult(42001, global_values.trace_length)), 65536))). - local pow1872 = pow32 * pow1871; // pow(trace_generator, (safe_div((safe_mult(21001, global_values.trace_length)), 32768))). - local pow1873 = pow32 * pow1872; // pow(trace_generator, (safe_div((safe_mult(42003, global_values.trace_length)), 65536))). - local pow1874 = pow32 * pow1873; // pow(trace_generator, (safe_div((safe_mult(10501, global_values.trace_length)), 16384))). - local pow1875 = pow32 * pow1874; // pow(trace_generator, (safe_div((safe_mult(42005, global_values.trace_length)), 65536))). - local pow1876 = pow32 * pow1875; // pow(trace_generator, (safe_div((safe_mult(21003, global_values.trace_length)), 32768))). - local pow1877 = pow32 * pow1876; // pow(trace_generator, (safe_div((safe_mult(42007, global_values.trace_length)), 65536))). - local pow1878 = pow79 * pow1877; // pow(trace_generator, (safe_div((safe_mult(657, global_values.trace_length)), 1024))). - local pow1879 = pow100 * pow1878; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 512))). - local pow1880 = pow100 * pow1879; // pow(trace_generator, (safe_div((safe_mult(659, global_values.trace_length)), 1024))). - local pow1881 = pow100 * pow1880; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 256))). - local pow1882 = pow100 * pow1881; // pow(trace_generator, (safe_div((safe_mult(661, global_values.trace_length)), 1024))). - local pow1883 = pow100 * pow1882; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 512))). - local pow1884 = pow100 * pow1883; // pow(trace_generator, (safe_div((safe_mult(663, global_values.trace_length)), 1024))). - local pow1885 = pow580 * pow1884; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 32))). - local pow1886 = pow32 * pow1885; // pow(trace_generator, (safe_div((safe_mult(43009, global_values.trace_length)), 65536))). - local pow1887 = pow32 * pow1886; // pow(trace_generator, (safe_div((safe_mult(21505, global_values.trace_length)), 32768))). - local pow1888 = pow32 * pow1887; // pow(trace_generator, (safe_div((safe_mult(43011, global_values.trace_length)), 65536))). - local pow1889 = pow32 * pow1888; // pow(trace_generator, (safe_div((safe_mult(10753, global_values.trace_length)), 16384))). - local pow1890 = pow32 * pow1889; // pow(trace_generator, (safe_div((safe_mult(43013, global_values.trace_length)), 65536))). - local pow1891 = pow32 * pow1890; // pow(trace_generator, (safe_div((safe_mult(21507, global_values.trace_length)), 32768))). - local pow1892 = pow32 * pow1891; // pow(trace_generator, (safe_div((safe_mult(43015, global_values.trace_length)), 65536))). - local pow1893 = pow32 * pow1892; // pow(trace_generator, (safe_div((safe_mult(5377, global_values.trace_length)), 8192))). - local pow1894 = pow32 * pow1893; // pow(trace_generator, (safe_div((safe_mult(43017, global_values.trace_length)), 65536))). - local pow1895 = pow32 * pow1894; // pow(trace_generator, (safe_div((safe_mult(21509, global_values.trace_length)), 32768))). - local pow1896 = pow32 * pow1895; // pow(trace_generator, (safe_div((safe_mult(43019, global_values.trace_length)), 65536))). - local pow1897 = pow32 * pow1896; // pow(trace_generator, (safe_div((safe_mult(10755, global_values.trace_length)), 16384))). - local pow1898 = pow32 * pow1897; // pow(trace_generator, (safe_div((safe_mult(43021, global_values.trace_length)), 65536))). - local pow1899 = pow32 * pow1898; // pow(trace_generator, (safe_div((safe_mult(21511, global_values.trace_length)), 32768))). - local pow1900 = pow32 * pow1899; // pow(trace_generator, (safe_div((safe_mult(43023, global_values.trace_length)), 65536))). - local pow1901 = pow32 * pow1900; // pow(trace_generator, (safe_div((safe_mult(2689, global_values.trace_length)), 4096))). - local pow1902 = pow32 * pow1901; // pow(trace_generator, (safe_div((safe_mult(43025, global_values.trace_length)), 65536))). - local pow1903 = pow32 * pow1902; // pow(trace_generator, (safe_div((safe_mult(21513, global_values.trace_length)), 32768))). - local pow1904 = pow32 * pow1903; // pow(trace_generator, (safe_div((safe_mult(43027, global_values.trace_length)), 65536))). - local pow1905 = pow32 * pow1904; // pow(trace_generator, (safe_div((safe_mult(10757, global_values.trace_length)), 16384))). - local pow1906 = pow32 * pow1905; // pow(trace_generator, (safe_div((safe_mult(43029, global_values.trace_length)), 65536))). - local pow1907 = pow32 * pow1906; // pow(trace_generator, (safe_div((safe_mult(21515, global_values.trace_length)), 32768))). - local pow1908 = pow32 * pow1907; // pow(trace_generator, (safe_div((safe_mult(43031, global_values.trace_length)), 65536))). - local pow1909 = pow79 * pow1908; // pow(trace_generator, (safe_div((safe_mult(673, global_values.trace_length)), 1024))). - local pow1910 = pow100 * pow1909; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 512))). - local pow1911 = pow100 * pow1910; // pow(trace_generator, (safe_div((safe_mult(675, global_values.trace_length)), 1024))). - local pow1912 = pow100 * pow1911; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 256))). - local pow1913 = pow100 * pow1912; // pow(trace_generator, (safe_div((safe_mult(677, global_values.trace_length)), 1024))). - local pow1914 = pow100 * pow1913; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 512))). - local pow1915 = pow100 * pow1914; // pow(trace_generator, (safe_div((safe_mult(679, global_values.trace_length)), 1024))). - local pow1916 = pow100 * pow1915; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 128))). - local pow1917 = pow100 * pow1916; // pow(trace_generator, (safe_div((safe_mult(681, global_values.trace_length)), 1024))). - local pow1918 = pow100 * pow1917; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 512))). - local pow1919 = pow100 * pow1918; // pow(trace_generator, (safe_div((safe_mult(683, global_values.trace_length)), 1024))). - local pow1920 = pow100 * pow1919; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 256))). - local pow1921 = pow100 * pow1920; // pow(trace_generator, (safe_div((safe_mult(685, global_values.trace_length)), 1024))). - local pow1922 = pow100 * pow1921; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 512))). - local pow1923 = pow100 * pow1922; // pow(trace_generator, (safe_div((safe_mult(687, global_values.trace_length)), 1024))). - local pow1924 = pow100 * pow1923; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 64))). - local pow1925 = pow32 * pow1924; // pow(trace_generator, (safe_div((safe_mult(44033, global_values.trace_length)), 65536))). - local pow1926 = pow32 * pow1925; // pow(trace_generator, (safe_div((safe_mult(22017, global_values.trace_length)), 32768))). - local pow1927 = pow32 * pow1926; // pow(trace_generator, (safe_div((safe_mult(44035, global_values.trace_length)), 65536))). - local pow1928 = pow32 * pow1927; // pow(trace_generator, (safe_div((safe_mult(11009, global_values.trace_length)), 16384))). - local pow1929 = pow32 * pow1928; // pow(trace_generator, (safe_div((safe_mult(44037, global_values.trace_length)), 65536))). - local pow1930 = pow32 * pow1929; // pow(trace_generator, (safe_div((safe_mult(22019, global_values.trace_length)), 32768))). - local pow1931 = pow32 * pow1930; // pow(trace_generator, (safe_div((safe_mult(44039, global_values.trace_length)), 65536))). - local pow1932 = pow32 * pow1931; // pow(trace_generator, (safe_div((safe_mult(5505, global_values.trace_length)), 8192))). - local pow1933 = pow32 * pow1932; // pow(trace_generator, (safe_div((safe_mult(44041, global_values.trace_length)), 65536))). - local pow1934 = pow32 * pow1933; // pow(trace_generator, (safe_div((safe_mult(22021, global_values.trace_length)), 32768))). - local pow1935 = pow32 * pow1934; // pow(trace_generator, (safe_div((safe_mult(44043, global_values.trace_length)), 65536))). - local pow1936 = pow32 * pow1935; // pow(trace_generator, (safe_div((safe_mult(11011, global_values.trace_length)), 16384))). - local pow1937 = pow32 * pow1936; // pow(trace_generator, (safe_div((safe_mult(44045, global_values.trace_length)), 65536))). - local pow1938 = pow32 * pow1937; // pow(trace_generator, (safe_div((safe_mult(22023, global_values.trace_length)), 32768))). - local pow1939 = pow32 * pow1938; // pow(trace_generator, (safe_div((safe_mult(44047, global_values.trace_length)), 65536))). - local pow1940 = pow32 * pow1939; // pow(trace_generator, (safe_div((safe_mult(2753, global_values.trace_length)), 4096))). - local pow1941 = pow32 * pow1940; // pow(trace_generator, (safe_div((safe_mult(44049, global_values.trace_length)), 65536))). - local pow1942 = pow32 * pow1941; // pow(trace_generator, (safe_div((safe_mult(22025, global_values.trace_length)), 32768))). - local pow1943 = pow32 * pow1942; // pow(trace_generator, (safe_div((safe_mult(44051, global_values.trace_length)), 65536))). - local pow1944 = pow32 * pow1943; // pow(trace_generator, (safe_div((safe_mult(11013, global_values.trace_length)), 16384))). - local pow1945 = pow32 * pow1944; // pow(trace_generator, (safe_div((safe_mult(44053, global_values.trace_length)), 65536))). - local pow1946 = pow32 * pow1945; // pow(trace_generator, (safe_div((safe_mult(22027, global_values.trace_length)), 32768))). - local pow1947 = pow32 * pow1946; // pow(trace_generator, (safe_div((safe_mult(44055, global_values.trace_length)), 65536))). - local pow1948 = pow79 * pow1947; // pow(trace_generator, (safe_div((safe_mult(689, global_values.trace_length)), 1024))). - local pow1949 = pow100 * pow1948; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 512))). - local pow1950 = pow100 * pow1949; // pow(trace_generator, (safe_div((safe_mult(691, global_values.trace_length)), 1024))). - local pow1951 = pow100 * pow1950; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 256))). - local pow1952 = pow100 * pow1951; // pow(trace_generator, (safe_div((safe_mult(693, global_values.trace_length)), 1024))). - local pow1953 = pow100 * pow1952; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 512))). - local pow1954 = pow100 * pow1953; // pow(trace_generator, (safe_div((safe_mult(695, global_values.trace_length)), 1024))). - local pow1955 = pow580 * pow1954; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 16))). - local pow1956 = pow32 * pow1955; // pow(trace_generator, (safe_div((safe_mult(45057, global_values.trace_length)), 65536))). - local pow1957 = pow32 * pow1956; // pow(trace_generator, (safe_div((safe_mult(22529, global_values.trace_length)), 32768))). - local pow1958 = pow32 * pow1957; // pow(trace_generator, (safe_div((safe_mult(45059, global_values.trace_length)), 65536))). - local pow1959 = pow32 * pow1958; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 16384))). - local pow1960 = pow32 * pow1959; // pow(trace_generator, (safe_div((safe_mult(45061, global_values.trace_length)), 65536))). - local pow1961 = pow32 * pow1960; // pow(trace_generator, (safe_div((safe_mult(22531, global_values.trace_length)), 32768))). - local pow1962 = pow32 * pow1961; // pow(trace_generator, (safe_div((safe_mult(45063, global_values.trace_length)), 65536))). - local pow1963 = pow32 * pow1962; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 8192))). - local pow1964 = pow32 * pow1963; // pow(trace_generator, (safe_div((safe_mult(45065, global_values.trace_length)), 65536))). - local pow1965 = pow32 * pow1964; // pow(trace_generator, (safe_div((safe_mult(22533, global_values.trace_length)), 32768))). - local pow1966 = pow32 * pow1965; // pow(trace_generator, (safe_div((safe_mult(45067, global_values.trace_length)), 65536))). - local pow1967 = pow32 * pow1966; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 16384))). - local pow1968 = pow32 * pow1967; // pow(trace_generator, (safe_div((safe_mult(45069, global_values.trace_length)), 65536))). - local pow1969 = pow32 * pow1968; // pow(trace_generator, (safe_div((safe_mult(22535, global_values.trace_length)), 32768))). - local pow1970 = pow32 * pow1969; // pow(trace_generator, (safe_div((safe_mult(45071, global_values.trace_length)), 65536))). - local pow1971 = pow32 * pow1970; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 4096))). - local pow1972 = pow32 * pow1971; // pow(trace_generator, (safe_div((safe_mult(45073, global_values.trace_length)), 65536))). - local pow1973 = pow32 * pow1972; // pow(trace_generator, (safe_div((safe_mult(22537, global_values.trace_length)), 32768))). - local pow1974 = pow32 * pow1973; // pow(trace_generator, (safe_div((safe_mult(45075, global_values.trace_length)), 65536))). - local pow1975 = pow32 * pow1974; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 16384))). - local pow1976 = pow32 * pow1975; // pow(trace_generator, (safe_div((safe_mult(45077, global_values.trace_length)), 65536))). - local pow1977 = pow32 * pow1976; // pow(trace_generator, (safe_div((safe_mult(22539, global_values.trace_length)), 32768))). - local pow1978 = pow32 * pow1977; // pow(trace_generator, (safe_div((safe_mult(45079, global_values.trace_length)), 65536))). - local pow1979 = pow79 * pow1978; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 1024))). - local pow1980 = pow100 * pow1979; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 512))). - local pow1981 = pow100 * pow1980; // pow(trace_generator, (safe_div((safe_mult(707, global_values.trace_length)), 1024))). - local pow1982 = pow100 * pow1981; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 256))). - local pow1983 = pow100 * pow1982; // pow(trace_generator, (safe_div((safe_mult(709, global_values.trace_length)), 1024))). - local pow1984 = pow100 * pow1983; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 512))). - local pow1985 = pow100 * pow1984; // pow(trace_generator, (safe_div((safe_mult(711, global_values.trace_length)), 1024))). - local pow1986 = pow100 * pow1985; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 128))). - local pow1987 = pow100 * pow1986; // pow(trace_generator, (safe_div((safe_mult(713, global_values.trace_length)), 1024))). - local pow1988 = pow100 * pow1987; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 512))). - local pow1989 = pow100 * pow1988; // pow(trace_generator, (safe_div((safe_mult(715, global_values.trace_length)), 1024))). - local pow1990 = pow100 * pow1989; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 256))). - local pow1991 = pow100 * pow1990; // pow(trace_generator, (safe_div((safe_mult(717, global_values.trace_length)), 1024))). - local pow1992 = pow100 * pow1991; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 512))). - local pow1993 = pow100 * pow1992; // pow(trace_generator, (safe_div((safe_mult(719, global_values.trace_length)), 1024))). - local pow1994 = pow100 * pow1993; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 64))). - local pow1995 = pow32 * pow1994; // pow(trace_generator, (safe_div((safe_mult(46081, global_values.trace_length)), 65536))). - local pow1996 = pow32 * pow1995; // pow(trace_generator, (safe_div((safe_mult(23041, global_values.trace_length)), 32768))). - local pow1997 = pow32 * pow1996; // pow(trace_generator, (safe_div((safe_mult(46083, global_values.trace_length)), 65536))). - local pow1998 = pow32 * pow1997; // pow(trace_generator, (safe_div((safe_mult(11521, global_values.trace_length)), 16384))). - local pow1999 = pow32 * pow1998; // pow(trace_generator, (safe_div((safe_mult(46085, global_values.trace_length)), 65536))). - local pow2000 = pow32 * pow1999; // pow(trace_generator, (safe_div((safe_mult(23043, global_values.trace_length)), 32768))). - local pow2001 = pow32 * pow2000; // pow(trace_generator, (safe_div((safe_mult(46087, global_values.trace_length)), 65536))). - local pow2002 = pow32 * pow2001; // pow(trace_generator, (safe_div((safe_mult(5761, global_values.trace_length)), 8192))). - local pow2003 = pow32 * pow2002; // pow(trace_generator, (safe_div((safe_mult(46089, global_values.trace_length)), 65536))). - local pow2004 = pow32 * pow2003; // pow(trace_generator, (safe_div((safe_mult(23045, global_values.trace_length)), 32768))). - local pow2005 = pow32 * pow2004; // pow(trace_generator, (safe_div((safe_mult(46091, global_values.trace_length)), 65536))). - local pow2006 = pow32 * pow2005; // pow(trace_generator, (safe_div((safe_mult(11523, global_values.trace_length)), 16384))). - local pow2007 = pow32 * pow2006; // pow(trace_generator, (safe_div((safe_mult(46093, global_values.trace_length)), 65536))). - local pow2008 = pow32 * pow2007; // pow(trace_generator, (safe_div((safe_mult(23047, global_values.trace_length)), 32768))). - local pow2009 = pow32 * pow2008; // pow(trace_generator, (safe_div((safe_mult(46095, global_values.trace_length)), 65536))). - local pow2010 = pow32 * pow2009; // pow(trace_generator, (safe_div((safe_mult(2881, global_values.trace_length)), 4096))). - local pow2011 = pow32 * pow2010; // pow(trace_generator, (safe_div((safe_mult(46097, global_values.trace_length)), 65536))). - local pow2012 = pow32 * pow2011; // pow(trace_generator, (safe_div((safe_mult(23049, global_values.trace_length)), 32768))). - local pow2013 = pow32 * pow2012; // pow(trace_generator, (safe_div((safe_mult(46099, global_values.trace_length)), 65536))). - local pow2014 = pow32 * pow2013; // pow(trace_generator, (safe_div((safe_mult(11525, global_values.trace_length)), 16384))). - local pow2015 = pow32 * pow2014; // pow(trace_generator, (safe_div((safe_mult(46101, global_values.trace_length)), 65536))). - local pow2016 = pow32 * pow2015; // pow(trace_generator, (safe_div((safe_mult(23051, global_values.trace_length)), 32768))). - local pow2017 = pow32 * pow2016; // pow(trace_generator, (safe_div((safe_mult(46103, global_values.trace_length)), 65536))). - local pow2018 = pow79 * pow2017; // pow(trace_generator, (safe_div((safe_mult(721, global_values.trace_length)), 1024))). - local pow2019 = pow100 * pow2018; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 512))). - local pow2020 = pow100 * pow2019; // pow(trace_generator, (safe_div((safe_mult(723, global_values.trace_length)), 1024))). - local pow2021 = pow100 * pow2020; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 256))). - local pow2022 = pow100 * pow2021; // pow(trace_generator, (safe_div((safe_mult(725, global_values.trace_length)), 1024))). - local pow2023 = pow100 * pow2022; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 512))). - local pow2024 = pow100 * pow2023; // pow(trace_generator, (safe_div((safe_mult(727, global_values.trace_length)), 1024))). - local pow2025 = pow580 * pow2024; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 32))). - local pow2026 = pow793 * pow2025; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 64))). - local pow2027 = pow32 * pow2025; // pow(trace_generator, (safe_div((safe_mult(47105, global_values.trace_length)), 65536))). - local pow2028 = pow32 * pow2026; // pow(trace_generator, (safe_div((safe_mult(48129, global_values.trace_length)), 65536))). - local pow2029 = pow32 * pow2027; // pow(trace_generator, (safe_div((safe_mult(23553, global_values.trace_length)), 32768))). - local pow2030 = pow32 * pow2028; // pow(trace_generator, (safe_div((safe_mult(24065, global_values.trace_length)), 32768))). - local pow2031 = pow32 * pow2029; // pow(trace_generator, (safe_div((safe_mult(47107, global_values.trace_length)), 65536))). - local pow2032 = pow32 * pow2030; // pow(trace_generator, (safe_div((safe_mult(48131, global_values.trace_length)), 65536))). - local pow2033 = pow32 * pow2031; // pow(trace_generator, (safe_div((safe_mult(11777, global_values.trace_length)), 16384))). - local pow2034 = pow32 * pow2032; // pow(trace_generator, (safe_div((safe_mult(12033, global_values.trace_length)), 16384))). - local pow2035 = pow32 * pow2033; // pow(trace_generator, (safe_div((safe_mult(47109, global_values.trace_length)), 65536))). - local pow2036 = pow32 * pow2034; // pow(trace_generator, (safe_div((safe_mult(48133, global_values.trace_length)), 65536))). - local pow2037 = pow32 * pow2035; // pow(trace_generator, (safe_div((safe_mult(23555, global_values.trace_length)), 32768))). - local pow2038 = pow32 * pow2036; // pow(trace_generator, (safe_div((safe_mult(24067, global_values.trace_length)), 32768))). - local pow2039 = pow32 * pow2037; // pow(trace_generator, (safe_div((safe_mult(47111, global_values.trace_length)), 65536))). - local pow2040 = pow32 * pow2038; // pow(trace_generator, (safe_div((safe_mult(48135, global_values.trace_length)), 65536))). - local pow2041 = pow32 * pow2039; // pow(trace_generator, (safe_div((safe_mult(5889, global_values.trace_length)), 8192))). - local pow2042 = pow32 * pow2040; // pow(trace_generator, (safe_div((safe_mult(6017, global_values.trace_length)), 8192))). - local pow2043 = pow32 * pow2041; // pow(trace_generator, (safe_div((safe_mult(47113, global_values.trace_length)), 65536))). - local pow2044 = pow32 * pow2042; // pow(trace_generator, (safe_div((safe_mult(48137, global_values.trace_length)), 65536))). - local pow2045 = pow32 * pow2043; // pow(trace_generator, (safe_div((safe_mult(23557, global_values.trace_length)), 32768))). - local pow2046 = pow32 * pow2044; // pow(trace_generator, (safe_div((safe_mult(24069, global_values.trace_length)), 32768))). - local pow2047 = pow32 * pow2045; // pow(trace_generator, (safe_div((safe_mult(47115, global_values.trace_length)), 65536))). - local pow2048 = pow32 * pow2046; // pow(trace_generator, (safe_div((safe_mult(48139, global_values.trace_length)), 65536))). - local pow2049 = pow32 * pow2047; // pow(trace_generator, (safe_div((safe_mult(11779, global_values.trace_length)), 16384))). - local pow2050 = pow32 * pow2048; // pow(trace_generator, (safe_div((safe_mult(12035, global_values.trace_length)), 16384))). - local pow2051 = pow32 * pow2049; // pow(trace_generator, (safe_div((safe_mult(47117, global_values.trace_length)), 65536))). - local pow2052 = pow32 * pow2050; // pow(trace_generator, (safe_div((safe_mult(48141, global_values.trace_length)), 65536))). - local pow2053 = pow32 * pow2051; // pow(trace_generator, (safe_div((safe_mult(23559, global_values.trace_length)), 32768))). - local pow2054 = pow32 * pow2052; // pow(trace_generator, (safe_div((safe_mult(24071, global_values.trace_length)), 32768))). - local pow2055 = pow32 * pow2053; // pow(trace_generator, (safe_div((safe_mult(47119, global_values.trace_length)), 65536))). - local pow2056 = pow32 * pow2054; // pow(trace_generator, (safe_div((safe_mult(48143, global_values.trace_length)), 65536))). - local pow2057 = pow32 * pow2055; // pow(trace_generator, (safe_div((safe_mult(2945, global_values.trace_length)), 4096))). - local pow2058 = pow32 * pow2056; // pow(trace_generator, (safe_div((safe_mult(3009, global_values.trace_length)), 4096))). - local pow2059 = pow32 * pow2057; // pow(trace_generator, (safe_div((safe_mult(47121, global_values.trace_length)), 65536))). - local pow2060 = pow32 * pow2058; // pow(trace_generator, (safe_div((safe_mult(48145, global_values.trace_length)), 65536))). - local pow2061 = pow32 * pow2059; // pow(trace_generator, (safe_div((safe_mult(23561, global_values.trace_length)), 32768))). - local pow2062 = pow32 * pow2060; // pow(trace_generator, (safe_div((safe_mult(24073, global_values.trace_length)), 32768))). - local pow2063 = pow32 * pow2061; // pow(trace_generator, (safe_div((safe_mult(47123, global_values.trace_length)), 65536))). - local pow2064 = pow32 * pow2062; // pow(trace_generator, (safe_div((safe_mult(48147, global_values.trace_length)), 65536))). - local pow2065 = pow32 * pow2063; // pow(trace_generator, (safe_div((safe_mult(11781, global_values.trace_length)), 16384))). - local pow2066 = pow32 * pow2064; // pow(trace_generator, (safe_div((safe_mult(12037, global_values.trace_length)), 16384))). - local pow2067 = pow32 * pow2065; // pow(trace_generator, (safe_div((safe_mult(47125, global_values.trace_length)), 65536))). - local pow2068 = pow32 * pow2066; // pow(trace_generator, (safe_div((safe_mult(48149, global_values.trace_length)), 65536))). - local pow2069 = pow32 * pow2067; // pow(trace_generator, (safe_div((safe_mult(23563, global_values.trace_length)), 32768))). - local pow2070 = pow32 * pow2068; // pow(trace_generator, (safe_div((safe_mult(24075, global_values.trace_length)), 32768))). - local pow2071 = pow32 * pow2069; // pow(trace_generator, (safe_div((safe_mult(47127, global_values.trace_length)), 65536))). - local pow2072 = pow32 * pow2070; // pow(trace_generator, (safe_div((safe_mult(48151, global_values.trace_length)), 65536))). - local pow2073 = pow793 * pow2026; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 4))). - local pow2074 = pow32 * pow2073; // pow(trace_generator, (safe_div((safe_mult(49153, global_values.trace_length)), 65536))). - local pow2075 = pow32 * pow2074; // pow(trace_generator, (safe_div((safe_mult(24577, global_values.trace_length)), 32768))). - local pow2076 = pow32 * pow2075; // pow(trace_generator, (safe_div((safe_mult(49155, global_values.trace_length)), 65536))). - local pow2077 = pow32 * pow2076; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 16384))). - local pow2078 = pow32 * pow2077; // pow(trace_generator, (safe_div((safe_mult(49157, global_values.trace_length)), 65536))). - local pow2079 = pow32 * pow2078; // pow(trace_generator, (safe_div((safe_mult(24579, global_values.trace_length)), 32768))). - local pow2080 = pow32 * pow2079; // pow(trace_generator, (safe_div((safe_mult(49159, global_values.trace_length)), 65536))). - local pow2081 = pow32 * pow2080; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 8192))). - local pow2082 = pow32 * pow2081; // pow(trace_generator, (safe_div((safe_mult(49161, global_values.trace_length)), 65536))). - local pow2083 = pow32 * pow2082; // pow(trace_generator, (safe_div((safe_mult(24581, global_values.trace_length)), 32768))). - local pow2084 = pow32 * pow2083; // pow(trace_generator, (safe_div((safe_mult(49163, global_values.trace_length)), 65536))). - local pow2085 = pow32 * pow2084; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 16384))). - local pow2086 = pow32 * pow2085; // pow(trace_generator, (safe_div((safe_mult(49165, global_values.trace_length)), 65536))). - local pow2087 = pow32 * pow2086; // pow(trace_generator, (safe_div((safe_mult(24583, global_values.trace_length)), 32768))). - local pow2088 = pow32 * pow2087; // pow(trace_generator, (safe_div((safe_mult(49167, global_values.trace_length)), 65536))). - local pow2089 = pow32 * pow2088; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 4096))). - local pow2090 = pow32 * pow2089; // pow(trace_generator, (safe_div((safe_mult(49169, global_values.trace_length)), 65536))). - local pow2091 = pow32 * pow2090; // pow(trace_generator, (safe_div((safe_mult(24585, global_values.trace_length)), 32768))). - local pow2092 = pow32 * pow2091; // pow(trace_generator, (safe_div((safe_mult(49171, global_values.trace_length)), 65536))). - local pow2093 = pow32 * pow2092; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 16384))). - local pow2094 = pow32 * pow2093; // pow(trace_generator, (safe_div((safe_mult(49173, global_values.trace_length)), 65536))). - local pow2095 = pow32 * pow2094; // pow(trace_generator, (safe_div((safe_mult(24587, global_values.trace_length)), 32768))). - local pow2096 = pow32 * pow2095; // pow(trace_generator, (safe_div((safe_mult(49175, global_values.trace_length)), 65536))). - local pow2097 = pow793 * pow2073; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 64))). - local pow2098 = pow32 * pow2097; // pow(trace_generator, (safe_div((safe_mult(50177, global_values.trace_length)), 65536))). - local pow2099 = pow32 * pow2098; // pow(trace_generator, (safe_div((safe_mult(25089, global_values.trace_length)), 32768))). - local pow2100 = pow32 * pow2099; // pow(trace_generator, (safe_div((safe_mult(50179, global_values.trace_length)), 65536))). - local pow2101 = pow32 * pow2100; // pow(trace_generator, (safe_div((safe_mult(12545, global_values.trace_length)), 16384))). - local pow2102 = pow32 * pow2101; // pow(trace_generator, (safe_div((safe_mult(50181, global_values.trace_length)), 65536))). - local pow2103 = pow32 * pow2102; // pow(trace_generator, (safe_div((safe_mult(25091, global_values.trace_length)), 32768))). - local pow2104 = pow32 * pow2103; // pow(trace_generator, (safe_div((safe_mult(50183, global_values.trace_length)), 65536))). - local pow2105 = pow32 * pow2104; // pow(trace_generator, (safe_div((safe_mult(6273, global_values.trace_length)), 8192))). - local pow2106 = pow32 * pow2105; // pow(trace_generator, (safe_div((safe_mult(50185, global_values.trace_length)), 65536))). - local pow2107 = pow32 * pow2106; // pow(trace_generator, (safe_div((safe_mult(25093, global_values.trace_length)), 32768))). - local pow2108 = pow32 * pow2107; // pow(trace_generator, (safe_div((safe_mult(50187, global_values.trace_length)), 65536))). - local pow2109 = pow32 * pow2108; // pow(trace_generator, (safe_div((safe_mult(12547, global_values.trace_length)), 16384))). - local pow2110 = pow32 * pow2109; // pow(trace_generator, (safe_div((safe_mult(50189, global_values.trace_length)), 65536))). - local pow2111 = pow32 * pow2110; // pow(trace_generator, (safe_div((safe_mult(25095, global_values.trace_length)), 32768))). - local pow2112 = pow32 * pow2111; // pow(trace_generator, (safe_div((safe_mult(50191, global_values.trace_length)), 65536))). - local pow2113 = pow32 * pow2112; // pow(trace_generator, (safe_div((safe_mult(3137, global_values.trace_length)), 4096))). - local pow2114 = pow32 * pow2113; // pow(trace_generator, (safe_div((safe_mult(50193, global_values.trace_length)), 65536))). - local pow2115 = pow32 * pow2114; // pow(trace_generator, (safe_div((safe_mult(25097, global_values.trace_length)), 32768))). - local pow2116 = pow32 * pow2115; // pow(trace_generator, (safe_div((safe_mult(50195, global_values.trace_length)), 65536))). - local pow2117 = pow32 * pow2116; // pow(trace_generator, (safe_div((safe_mult(12549, global_values.trace_length)), 16384))). - local pow2118 = pow32 * pow2117; // pow(trace_generator, (safe_div((safe_mult(50197, global_values.trace_length)), 65536))). - local pow2119 = pow32 * pow2118; // pow(trace_generator, (safe_div((safe_mult(25099, global_values.trace_length)), 32768))). - local pow2120 = pow32 * pow2119; // pow(trace_generator, (safe_div((safe_mult(50199, global_values.trace_length)), 65536))). - local pow2121 = pow793 * pow2097; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 32))). - local pow2122 = pow793 * pow2121; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 64))). - local pow2123 = pow32 * pow2121; // pow(trace_generator, (safe_div((safe_mult(51201, global_values.trace_length)), 65536))). - local pow2124 = pow32 * pow2122; // pow(trace_generator, (safe_div((safe_mult(52225, global_values.trace_length)), 65536))). - local pow2125 = pow32 * pow2123; // pow(trace_generator, (safe_div((safe_mult(25601, global_values.trace_length)), 32768))). - local pow2126 = pow32 * pow2124; // pow(trace_generator, (safe_div((safe_mult(26113, global_values.trace_length)), 32768))). - local pow2127 = pow32 * pow2125; // pow(trace_generator, (safe_div((safe_mult(51203, global_values.trace_length)), 65536))). - local pow2128 = pow32 * pow2126; // pow(trace_generator, (safe_div((safe_mult(52227, global_values.trace_length)), 65536))). - local pow2129 = pow32 * pow2127; // pow(trace_generator, (safe_div((safe_mult(12801, global_values.trace_length)), 16384))). - local pow2130 = pow32 * pow2128; // pow(trace_generator, (safe_div((safe_mult(13057, global_values.trace_length)), 16384))). - local pow2131 = pow32 * pow2129; // pow(trace_generator, (safe_div((safe_mult(51205, global_values.trace_length)), 65536))). - local pow2132 = pow32 * pow2130; // pow(trace_generator, (safe_div((safe_mult(52229, global_values.trace_length)), 65536))). - local pow2133 = pow32 * pow2131; // pow(trace_generator, (safe_div((safe_mult(25603, global_values.trace_length)), 32768))). - local pow2134 = pow32 * pow2132; // pow(trace_generator, (safe_div((safe_mult(26115, global_values.trace_length)), 32768))). - local pow2135 = pow32 * pow2133; // pow(trace_generator, (safe_div((safe_mult(51207, global_values.trace_length)), 65536))). - local pow2136 = pow32 * pow2135; // pow(trace_generator, (safe_div((safe_mult(6401, global_values.trace_length)), 8192))). - local pow2137 = pow32 * pow2136; // pow(trace_generator, (safe_div((safe_mult(51209, global_values.trace_length)), 65536))). - local pow2138 = pow32 * pow2137; // pow(trace_generator, (safe_div((safe_mult(25605, global_values.trace_length)), 32768))). - local pow2139 = pow32 * pow2138; // pow(trace_generator, (safe_div((safe_mult(51211, global_values.trace_length)), 65536))). - local pow2140 = pow32 * pow2139; // pow(trace_generator, (safe_div((safe_mult(12803, global_values.trace_length)), 16384))). - local pow2141 = pow32 * pow2140; // pow(trace_generator, (safe_div((safe_mult(51213, global_values.trace_length)), 65536))). - local pow2142 = pow32 * pow2141; // pow(trace_generator, (safe_div((safe_mult(25607, global_values.trace_length)), 32768))). - local pow2143 = pow32 * pow2142; // pow(trace_generator, (safe_div((safe_mult(51215, global_values.trace_length)), 65536))). - local pow2144 = pow32 * pow2143; // pow(trace_generator, (safe_div((safe_mult(3201, global_values.trace_length)), 4096))). - local pow2145 = pow32 * pow2144; // pow(trace_generator, (safe_div((safe_mult(51217, global_values.trace_length)), 65536))). - local pow2146 = pow32 * pow2145; // pow(trace_generator, (safe_div((safe_mult(25609, global_values.trace_length)), 32768))). - local pow2147 = pow32 * pow2146; // pow(trace_generator, (safe_div((safe_mult(51219, global_values.trace_length)), 65536))). - local pow2148 = pow32 * pow2147; // pow(trace_generator, (safe_div((safe_mult(12805, global_values.trace_length)), 16384))). - local pow2149 = pow32 * pow2148; // pow(trace_generator, (safe_div((safe_mult(51221, global_values.trace_length)), 65536))). - local pow2150 = pow32 * pow2149; // pow(trace_generator, (safe_div((safe_mult(25611, global_values.trace_length)), 32768))). - local pow2151 = pow32 * pow2150; // pow(trace_generator, (safe_div((safe_mult(51223, global_values.trace_length)), 65536))). - local pow2152 = pow32 * pow2134; // pow(trace_generator, (safe_div((safe_mult(52231, global_values.trace_length)), 65536))). - local pow2153 = pow32 * pow2152; // pow(trace_generator, (safe_div((safe_mult(6529, global_values.trace_length)), 8192))). - local pow2154 = pow32 * pow2153; // pow(trace_generator, (safe_div((safe_mult(52233, global_values.trace_length)), 65536))). - local pow2155 = pow32 * pow2154; // pow(trace_generator, (safe_div((safe_mult(26117, global_values.trace_length)), 32768))). - local pow2156 = pow32 * pow2155; // pow(trace_generator, (safe_div((safe_mult(52235, global_values.trace_length)), 65536))). - local pow2157 = pow32 * pow2156; // pow(trace_generator, (safe_div((safe_mult(13059, global_values.trace_length)), 16384))). - local pow2158 = pow32 * pow2157; // pow(trace_generator, (safe_div((safe_mult(52237, global_values.trace_length)), 65536))). - local pow2159 = pow32 * pow2158; // pow(trace_generator, (safe_div((safe_mult(26119, global_values.trace_length)), 32768))). - local pow2160 = pow32 * pow2159; // pow(trace_generator, (safe_div((safe_mult(52239, global_values.trace_length)), 65536))). - local pow2161 = pow32 * pow2160; // pow(trace_generator, (safe_div((safe_mult(3265, global_values.trace_length)), 4096))). - local pow2162 = pow32 * pow2161; // pow(trace_generator, (safe_div((safe_mult(52241, global_values.trace_length)), 65536))). - local pow2163 = pow32 * pow2162; // pow(trace_generator, (safe_div((safe_mult(26121, global_values.trace_length)), 32768))). - local pow2164 = pow32 * pow2163; // pow(trace_generator, (safe_div((safe_mult(52243, global_values.trace_length)), 65536))). - local pow2165 = pow32 * pow2164; // pow(trace_generator, (safe_div((safe_mult(13061, global_values.trace_length)), 16384))). - local pow2166 = pow32 * pow2165; // pow(trace_generator, (safe_div((safe_mult(52245, global_values.trace_length)), 65536))). - local pow2167 = pow32 * pow2166; // pow(trace_generator, (safe_div((safe_mult(26123, global_values.trace_length)), 32768))). - local pow2168 = pow32 * pow2167; // pow(trace_generator, (safe_div((safe_mult(52247, global_values.trace_length)), 65536))). - local pow2169 = pow793 * pow2122; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 16))). - local pow2170 = pow32 * pow2169; // pow(trace_generator, (safe_div((safe_mult(53249, global_values.trace_length)), 65536))). - local pow2171 = pow32 * pow2170; // pow(trace_generator, (safe_div((safe_mult(26625, global_values.trace_length)), 32768))). - local pow2172 = pow32 * pow2171; // pow(trace_generator, (safe_div((safe_mult(53251, global_values.trace_length)), 65536))). - local pow2173 = pow32 * pow2172; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 16384))). - local pow2174 = pow32 * pow2173; // pow(trace_generator, (safe_div((safe_mult(53253, global_values.trace_length)), 65536))). - local pow2175 = pow32 * pow2174; // pow(trace_generator, (safe_div((safe_mult(26627, global_values.trace_length)), 32768))). - local pow2176 = pow32 * pow2175; // pow(trace_generator, (safe_div((safe_mult(53255, global_values.trace_length)), 65536))). - local pow2177 = pow32 * pow2176; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 8192))). - local pow2178 = pow32 * pow2177; // pow(trace_generator, (safe_div((safe_mult(53257, global_values.trace_length)), 65536))). - local pow2179 = pow32 * pow2178; // pow(trace_generator, (safe_div((safe_mult(26629, global_values.trace_length)), 32768))). - local pow2180 = pow32 * pow2179; // pow(trace_generator, (safe_div((safe_mult(53259, global_values.trace_length)), 65536))). - local pow2181 = pow32 * pow2180; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 16384))). - local pow2182 = pow32 * pow2181; // pow(trace_generator, (safe_div((safe_mult(53261, global_values.trace_length)), 65536))). - local pow2183 = pow32 * pow2182; // pow(trace_generator, (safe_div((safe_mult(26631, global_values.trace_length)), 32768))). - local pow2184 = pow32 * pow2183; // pow(trace_generator, (safe_div((safe_mult(53263, global_values.trace_length)), 65536))). - local pow2185 = pow32 * pow2184; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 4096))). - local pow2186 = pow32 * pow2185; // pow(trace_generator, (safe_div((safe_mult(53265, global_values.trace_length)), 65536))). - local pow2187 = pow32 * pow2186; // pow(trace_generator, (safe_div((safe_mult(26633, global_values.trace_length)), 32768))). - local pow2188 = pow32 * pow2187; // pow(trace_generator, (safe_div((safe_mult(53267, global_values.trace_length)), 65536))). - local pow2189 = pow32 * pow2188; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 16384))). - local pow2190 = pow32 * pow2189; // pow(trace_generator, (safe_div((safe_mult(53269, global_values.trace_length)), 65536))). - local pow2191 = pow32 * pow2190; // pow(trace_generator, (safe_div((safe_mult(26635, global_values.trace_length)), 32768))). - local pow2192 = pow32 * pow2191; // pow(trace_generator, (safe_div((safe_mult(53271, global_values.trace_length)), 65536))). - local pow2193 = pow79 * pow2192; // pow(trace_generator, (safe_div((safe_mult(833, global_values.trace_length)), 1024))). - local pow2194 = pow100 * pow2193; // pow(trace_generator, (safe_div((safe_mult(417, global_values.trace_length)), 512))). - local pow2195 = pow100 * pow2194; // pow(trace_generator, (safe_div((safe_mult(835, global_values.trace_length)), 1024))). - local pow2196 = pow100 * pow2195; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 256))). - local pow2197 = pow100 * pow2196; // pow(trace_generator, (safe_div((safe_mult(837, global_values.trace_length)), 1024))). - local pow2198 = pow100 * pow2197; // pow(trace_generator, (safe_div((safe_mult(419, global_values.trace_length)), 512))). - local pow2199 = pow100 * pow2198; // pow(trace_generator, (safe_div((safe_mult(839, global_values.trace_length)), 1024))). - local pow2200 = pow100 * pow2199; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 128))). - local pow2201 = pow100 * pow2200; // pow(trace_generator, (safe_div((safe_mult(841, global_values.trace_length)), 1024))). - local pow2202 = pow100 * pow2201; // pow(trace_generator, (safe_div((safe_mult(421, global_values.trace_length)), 512))). - local pow2203 = pow100 * pow2202; // pow(trace_generator, (safe_div((safe_mult(843, global_values.trace_length)), 1024))). - local pow2204 = pow100 * pow2203; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 256))). - local pow2205 = pow100 * pow2204; // pow(trace_generator, (safe_div((safe_mult(845, global_values.trace_length)), 1024))). - local pow2206 = pow100 * pow2205; // pow(trace_generator, (safe_div((safe_mult(423, global_values.trace_length)), 512))). - local pow2207 = pow100 * pow2206; // pow(trace_generator, (safe_div((safe_mult(847, global_values.trace_length)), 1024))). - local pow2208 = pow100 * pow2207; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 64))). - local pow2209 = pow32 * pow2208; // pow(trace_generator, (safe_div((safe_mult(54273, global_values.trace_length)), 65536))). - local pow2210 = pow32 * pow2209; // pow(trace_generator, (safe_div((safe_mult(27137, global_values.trace_length)), 32768))). - local pow2211 = pow32 * pow2210; // pow(trace_generator, (safe_div((safe_mult(54275, global_values.trace_length)), 65536))). - local pow2212 = pow32 * pow2211; // pow(trace_generator, (safe_div((safe_mult(13569, global_values.trace_length)), 16384))). - local pow2213 = pow32 * pow2212; // pow(trace_generator, (safe_div((safe_mult(54277, global_values.trace_length)), 65536))). - local pow2214 = pow32 * pow2213; // pow(trace_generator, (safe_div((safe_mult(27139, global_values.trace_length)), 32768))). - local pow2215 = pow32 * pow2214; // pow(trace_generator, (safe_div((safe_mult(54279, global_values.trace_length)), 65536))). - local pow2216 = pow32 * pow2215; // pow(trace_generator, (safe_div((safe_mult(6785, global_values.trace_length)), 8192))). - local pow2217 = pow32 * pow2216; // pow(trace_generator, (safe_div((safe_mult(54281, global_values.trace_length)), 65536))). - local pow2218 = pow32 * pow2217; // pow(trace_generator, (safe_div((safe_mult(27141, global_values.trace_length)), 32768))). - local pow2219 = pow32 * pow2218; // pow(trace_generator, (safe_div((safe_mult(54283, global_values.trace_length)), 65536))). - local pow2220 = pow32 * pow2219; // pow(trace_generator, (safe_div((safe_mult(13571, global_values.trace_length)), 16384))). - local pow2221 = pow32 * pow2220; // pow(trace_generator, (safe_div((safe_mult(54285, global_values.trace_length)), 65536))). - local pow2222 = pow32 * pow2221; // pow(trace_generator, (safe_div((safe_mult(27143, global_values.trace_length)), 32768))). - local pow2223 = pow32 * pow2222; // pow(trace_generator, (safe_div((safe_mult(54287, global_values.trace_length)), 65536))). - local pow2224 = pow32 * pow2223; // pow(trace_generator, (safe_div((safe_mult(3393, global_values.trace_length)), 4096))). - local pow2225 = pow32 * pow2224; // pow(trace_generator, (safe_div((safe_mult(54289, global_values.trace_length)), 65536))). - local pow2226 = pow32 * pow2225; // pow(trace_generator, (safe_div((safe_mult(27145, global_values.trace_length)), 32768))). - local pow2227 = pow32 * pow2226; // pow(trace_generator, (safe_div((safe_mult(54291, global_values.trace_length)), 65536))). - local pow2228 = pow32 * pow2227; // pow(trace_generator, (safe_div((safe_mult(13573, global_values.trace_length)), 16384))). - local pow2229 = pow32 * pow2228; // pow(trace_generator, (safe_div((safe_mult(54293, global_values.trace_length)), 65536))). - local pow2230 = pow32 * pow2229; // pow(trace_generator, (safe_div((safe_mult(27147, global_values.trace_length)), 32768))). - local pow2231 = pow32 * pow2230; // pow(trace_generator, (safe_div((safe_mult(54295, global_values.trace_length)), 65536))). - local pow2232 = pow79 * pow2231; // pow(trace_generator, (safe_div((safe_mult(849, global_values.trace_length)), 1024))). - local pow2233 = pow100 * pow2232; // pow(trace_generator, (safe_div((safe_mult(425, global_values.trace_length)), 512))). - local pow2234 = pow100 * pow2233; // pow(trace_generator, (safe_div((safe_mult(851, global_values.trace_length)), 1024))). - local pow2235 = pow100 * pow2234; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 256))). - local pow2236 = pow100 * pow2235; // pow(trace_generator, (safe_div((safe_mult(853, global_values.trace_length)), 1024))). - local pow2237 = pow100 * pow2236; // pow(trace_generator, (safe_div((safe_mult(427, global_values.trace_length)), 512))). - local pow2238 = pow100 * pow2237; // pow(trace_generator, (safe_div((safe_mult(855, global_values.trace_length)), 1024))). - local pow2239 = pow100 * pow2238; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 128))). - local pow2240 = pow100 * pow2239; // pow(trace_generator, (safe_div((safe_mult(857, global_values.trace_length)), 1024))). - local pow2241 = pow100 * pow2240; // pow(trace_generator, (safe_div((safe_mult(429, global_values.trace_length)), 512))). - local pow2242 = pow100 * pow2241; // pow(trace_generator, (safe_div((safe_mult(859, global_values.trace_length)), 1024))). - local pow2243 = pow100 * pow2242; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 256))). - local pow2244 = pow100 * pow2243; // pow(trace_generator, (safe_div((safe_mult(861, global_values.trace_length)), 1024))). - local pow2245 = pow220 * pow2244; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 32))). - local pow2246 = pow32 * pow2245; // pow(trace_generator, (safe_div((safe_mult(55297, global_values.trace_length)), 65536))). - local pow2247 = pow32 * pow2246; // pow(trace_generator, (safe_div((safe_mult(27649, global_values.trace_length)), 32768))). - local pow2248 = pow32 * pow2247; // pow(trace_generator, (safe_div((safe_mult(55299, global_values.trace_length)), 65536))). - local pow2249 = pow32 * pow2248; // pow(trace_generator, (safe_div((safe_mult(13825, global_values.trace_length)), 16384))). - local pow2250 = pow32 * pow2249; // pow(trace_generator, (safe_div((safe_mult(55301, global_values.trace_length)), 65536))). - local pow2251 = pow32 * pow2250; // pow(trace_generator, (safe_div((safe_mult(27651, global_values.trace_length)), 32768))). - local pow2252 = pow32 * pow2251; // pow(trace_generator, (safe_div((safe_mult(55303, global_values.trace_length)), 65536))). - local pow2253 = pow32 * pow2252; // pow(trace_generator, (safe_div((safe_mult(6913, global_values.trace_length)), 8192))). - local pow2254 = pow32 * pow2253; // pow(trace_generator, (safe_div((safe_mult(55305, global_values.trace_length)), 65536))). - local pow2255 = pow32 * pow2254; // pow(trace_generator, (safe_div((safe_mult(27653, global_values.trace_length)), 32768))). - local pow2256 = pow32 * pow2255; // pow(trace_generator, (safe_div((safe_mult(55307, global_values.trace_length)), 65536))). - local pow2257 = pow32 * pow2256; // pow(trace_generator, (safe_div((safe_mult(13827, global_values.trace_length)), 16384))). - local pow2258 = pow32 * pow2257; // pow(trace_generator, (safe_div((safe_mult(55309, global_values.trace_length)), 65536))). - local pow2259 = pow32 * pow2258; // pow(trace_generator, (safe_div((safe_mult(27655, global_values.trace_length)), 32768))). - local pow2260 = pow32 * pow2259; // pow(trace_generator, (safe_div((safe_mult(55311, global_values.trace_length)), 65536))). - local pow2261 = pow32 * pow2260; // pow(trace_generator, (safe_div((safe_mult(3457, global_values.trace_length)), 4096))). - local pow2262 = pow32 * pow2261; // pow(trace_generator, (safe_div((safe_mult(55313, global_values.trace_length)), 65536))). - local pow2263 = pow32 * pow2262; // pow(trace_generator, (safe_div((safe_mult(27657, global_values.trace_length)), 32768))). - local pow2264 = pow32 * pow2263; // pow(trace_generator, (safe_div((safe_mult(55315, global_values.trace_length)), 65536))). - local pow2265 = pow32 * pow2264; // pow(trace_generator, (safe_div((safe_mult(13829, global_values.trace_length)), 16384))). - local pow2266 = pow32 * pow2265; // pow(trace_generator, (safe_div((safe_mult(55317, global_values.trace_length)), 65536))). - local pow2267 = pow32 * pow2266; // pow(trace_generator, (safe_div((safe_mult(27659, global_values.trace_length)), 32768))). - local pow2268 = pow32 * pow2267; // pow(trace_generator, (safe_div((safe_mult(55319, global_values.trace_length)), 65536))). - local pow2269 = pow79 * pow2268; // pow(trace_generator, (safe_div((safe_mult(865, global_values.trace_length)), 1024))). - local pow2270 = pow100 * pow2269; // pow(trace_generator, (safe_div((safe_mult(433, global_values.trace_length)), 512))). - local pow2271 = pow100 * pow2270; // pow(trace_generator, (safe_div((safe_mult(867, global_values.trace_length)), 1024))). - local pow2272 = pow100 * pow2271; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 256))). - local pow2273 = pow100 * pow2272; // pow(trace_generator, (safe_div((safe_mult(869, global_values.trace_length)), 1024))). - local pow2274 = pow100 * pow2273; // pow(trace_generator, (safe_div((safe_mult(435, global_values.trace_length)), 512))). - local pow2275 = pow100 * pow2274; // pow(trace_generator, (safe_div((safe_mult(871, global_values.trace_length)), 1024))). - local pow2276 = pow100 * pow2275; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 128))). - local pow2277 = pow100 * pow2276; // pow(trace_generator, (safe_div((safe_mult(873, global_values.trace_length)), 1024))). - local pow2278 = pow100 * pow2277; // pow(trace_generator, (safe_div((safe_mult(437, global_values.trace_length)), 512))). - local pow2279 = pow100 * pow2278; // pow(trace_generator, (safe_div((safe_mult(875, global_values.trace_length)), 1024))). - local pow2280 = pow100 * pow2279; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 256))). - local pow2281 = pow100 * pow2280; // pow(trace_generator, (safe_div((safe_mult(877, global_values.trace_length)), 1024))). - local pow2282 = pow100 * pow2281; // pow(trace_generator, (safe_div((safe_mult(439, global_values.trace_length)), 512))). - local pow2283 = pow100 * pow2282; // pow(trace_generator, (safe_div((safe_mult(879, global_values.trace_length)), 1024))). - local pow2284 = pow100 * pow2283; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 64))). - local pow2285 = pow32 * pow2284; // pow(trace_generator, (safe_div((safe_mult(56321, global_values.trace_length)), 65536))). - local pow2286 = pow32 * pow2285; // pow(trace_generator, (safe_div((safe_mult(28161, global_values.trace_length)), 32768))). - local pow2287 = pow32 * pow2286; // pow(trace_generator, (safe_div((safe_mult(56323, global_values.trace_length)), 65536))). - local pow2288 = pow32 * pow2287; // pow(trace_generator, (safe_div((safe_mult(14081, global_values.trace_length)), 16384))). - local pow2289 = pow32 * pow2288; // pow(trace_generator, (safe_div((safe_mult(56325, global_values.trace_length)), 65536))). - local pow2290 = pow32 * pow2289; // pow(trace_generator, (safe_div((safe_mult(28163, global_values.trace_length)), 32768))). - local pow2291 = pow32 * pow2290; // pow(trace_generator, (safe_div((safe_mult(56327, global_values.trace_length)), 65536))). - local pow2292 = pow32 * pow2291; // pow(trace_generator, (safe_div((safe_mult(7041, global_values.trace_length)), 8192))). - local pow2293 = pow32 * pow2292; // pow(trace_generator, (safe_div((safe_mult(56329, global_values.trace_length)), 65536))). - local pow2294 = pow32 * pow2293; // pow(trace_generator, (safe_div((safe_mult(28165, global_values.trace_length)), 32768))). - local pow2295 = pow32 * pow2294; // pow(trace_generator, (safe_div((safe_mult(56331, global_values.trace_length)), 65536))). - local pow2296 = pow32 * pow2295; // pow(trace_generator, (safe_div((safe_mult(14083, global_values.trace_length)), 16384))). - local pow2297 = pow32 * pow2296; // pow(trace_generator, (safe_div((safe_mult(56333, global_values.trace_length)), 65536))). - local pow2298 = pow32 * pow2297; // pow(trace_generator, (safe_div((safe_mult(28167, global_values.trace_length)), 32768))). - local pow2299 = pow32 * pow2298; // pow(trace_generator, (safe_div((safe_mult(56335, global_values.trace_length)), 65536))). - local pow2300 = pow32 * pow2299; // pow(trace_generator, (safe_div((safe_mult(3521, global_values.trace_length)), 4096))). - local pow2301 = pow32 * pow2300; // pow(trace_generator, (safe_div((safe_mult(56337, global_values.trace_length)), 65536))). - local pow2302 = pow32 * pow2301; // pow(trace_generator, (safe_div((safe_mult(28169, global_values.trace_length)), 32768))). - local pow2303 = pow32 * pow2302; // pow(trace_generator, (safe_div((safe_mult(56339, global_values.trace_length)), 65536))). - local pow2304 = pow32 * pow2303; // pow(trace_generator, (safe_div((safe_mult(14085, global_values.trace_length)), 16384))). - local pow2305 = pow32 * pow2304; // pow(trace_generator, (safe_div((safe_mult(56341, global_values.trace_length)), 65536))). - local pow2306 = pow32 * pow2305; // pow(trace_generator, (safe_div((safe_mult(28171, global_values.trace_length)), 32768))). - local pow2307 = pow32 * pow2306; // pow(trace_generator, (safe_div((safe_mult(56343, global_values.trace_length)), 65536))). - local pow2308 = pow79 * pow2307; // pow(trace_generator, (safe_div((safe_mult(881, global_values.trace_length)), 1024))). - local pow2309 = pow100 * pow2308; // pow(trace_generator, (safe_div((safe_mult(441, global_values.trace_length)), 512))). - local pow2310 = pow100 * pow2309; // pow(trace_generator, (safe_div((safe_mult(883, global_values.trace_length)), 1024))). - local pow2311 = pow100 * pow2310; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 256))). - local pow2312 = pow100 * pow2311; // pow(trace_generator, (safe_div((safe_mult(885, global_values.trace_length)), 1024))). - local pow2313 = pow100 * pow2312; // pow(trace_generator, (safe_div((safe_mult(443, global_values.trace_length)), 512))). - local pow2314 = pow100 * pow2313; // pow(trace_generator, (safe_div((safe_mult(887, global_values.trace_length)), 1024))). - local pow2315 = pow100 * pow2314; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 128))). - local pow2316 = pow100 * pow2315; // pow(trace_generator, (safe_div((safe_mult(889, global_values.trace_length)), 1024))). - local pow2317 = pow100 * pow2316; // pow(trace_generator, (safe_div((safe_mult(445, global_values.trace_length)), 512))). - local pow2318 = pow100 * pow2317; // pow(trace_generator, (safe_div((safe_mult(891, global_values.trace_length)), 1024))). - local pow2319 = pow100 * pow2318; // pow(trace_generator, (safe_div((safe_mult(223, global_values.trace_length)), 256))). - local pow2320 = pow100 * pow2319; // pow(trace_generator, (safe_div((safe_mult(893, global_values.trace_length)), 1024))). - local pow2321 = pow220 * pow2320; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 8))). - local pow2322 = pow32 * pow2321; // pow(trace_generator, (safe_div((safe_mult(57345, global_values.trace_length)), 65536))). - local pow2323 = pow32 * pow2322; // pow(trace_generator, (safe_div((safe_mult(28673, global_values.trace_length)), 32768))). - local pow2324 = pow32 * pow2323; // pow(trace_generator, (safe_div((safe_mult(57347, global_values.trace_length)), 65536))). - local pow2325 = pow32 * pow2324; // pow(trace_generator, (safe_div((safe_mult(14337, global_values.trace_length)), 16384))). - local pow2326 = pow32 * pow2325; // pow(trace_generator, (safe_div((safe_mult(57349, global_values.trace_length)), 65536))). - local pow2327 = pow32 * pow2326; // pow(trace_generator, (safe_div((safe_mult(28675, global_values.trace_length)), 32768))). - local pow2328 = pow32 * pow2327; // pow(trace_generator, (safe_div((safe_mult(57351, global_values.trace_length)), 65536))). - local pow2329 = pow32 * pow2328; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 8192))). - local pow2330 = pow32 * pow2329; // pow(trace_generator, (safe_div((safe_mult(57353, global_values.trace_length)), 65536))). - local pow2331 = pow32 * pow2330; // pow(trace_generator, (safe_div((safe_mult(28677, global_values.trace_length)), 32768))). - local pow2332 = pow32 * pow2331; // pow(trace_generator, (safe_div((safe_mult(57355, global_values.trace_length)), 65536))). - local pow2333 = pow32 * pow2332; // pow(trace_generator, (safe_div((safe_mult(14339, global_values.trace_length)), 16384))). - local pow2334 = pow32 * pow2333; // pow(trace_generator, (safe_div((safe_mult(57357, global_values.trace_length)), 65536))). - local pow2335 = pow32 * pow2334; // pow(trace_generator, (safe_div((safe_mult(28679, global_values.trace_length)), 32768))). - local pow2336 = pow32 * pow2335; // pow(trace_generator, (safe_div((safe_mult(57359, global_values.trace_length)), 65536))). - local pow2337 = pow32 * pow2336; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 4096))). - local pow2338 = pow32 * pow2337; // pow(trace_generator, (safe_div((safe_mult(57361, global_values.trace_length)), 65536))). - local pow2339 = pow32 * pow2338; // pow(trace_generator, (safe_div((safe_mult(28681, global_values.trace_length)), 32768))). - local pow2340 = pow32 * pow2339; // pow(trace_generator, (safe_div((safe_mult(57363, global_values.trace_length)), 65536))). - local pow2341 = pow32 * pow2340; // pow(trace_generator, (safe_div((safe_mult(14341, global_values.trace_length)), 16384))). - local pow2342 = pow32 * pow2341; // pow(trace_generator, (safe_div((safe_mult(57365, global_values.trace_length)), 65536))). - local pow2343 = pow32 * pow2342; // pow(trace_generator, (safe_div((safe_mult(28683, global_values.trace_length)), 32768))). - local pow2344 = pow32 * pow2343; // pow(trace_generator, (safe_div((safe_mult(57367, global_values.trace_length)), 65536))). - local pow2345 = pow79 * pow2344; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 1024))). - local pow2346 = pow100 * pow2345; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 512))). - local pow2347 = pow100 * pow2346; // pow(trace_generator, (safe_div((safe_mult(899, global_values.trace_length)), 1024))). - local pow2348 = pow100 * pow2347; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 256))). - local pow2349 = pow100 * pow2348; // pow(trace_generator, (safe_div((safe_mult(901, global_values.trace_length)), 1024))). - local pow2350 = pow100 * pow2349; // pow(trace_generator, (safe_div((safe_mult(451, global_values.trace_length)), 512))). - local pow2351 = pow100 * pow2350; // pow(trace_generator, (safe_div((safe_mult(903, global_values.trace_length)), 1024))). - local pow2352 = pow100 * pow2351; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 128))). - local pow2353 = pow100 * pow2352; // pow(trace_generator, (safe_div((safe_mult(905, global_values.trace_length)), 1024))). - local pow2354 = pow100 * pow2353; // pow(trace_generator, (safe_div((safe_mult(453, global_values.trace_length)), 512))). - local pow2355 = pow100 * pow2354; // pow(trace_generator, (safe_div((safe_mult(907, global_values.trace_length)), 1024))). - local pow2356 = pow100 * pow2355; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 256))). - local pow2357 = pow100 * pow2356; // pow(trace_generator, (safe_div((safe_mult(909, global_values.trace_length)), 1024))). - local pow2358 = pow100 * pow2357; // pow(trace_generator, (safe_div((safe_mult(455, global_values.trace_length)), 512))). - local pow2359 = pow100 * pow2358; // pow(trace_generator, (safe_div((safe_mult(911, global_values.trace_length)), 1024))). - local pow2360 = pow100 * pow2359; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 64))). - local pow2361 = pow32 * pow2360; // pow(trace_generator, (safe_div((safe_mult(58369, global_values.trace_length)), 65536))). - local pow2362 = pow32 * pow2361; // pow(trace_generator, (safe_div((safe_mult(29185, global_values.trace_length)), 32768))). - local pow2363 = pow32 * pow2362; // pow(trace_generator, (safe_div((safe_mult(58371, global_values.trace_length)), 65536))). - local pow2364 = pow32 * pow2363; // pow(trace_generator, (safe_div((safe_mult(14593, global_values.trace_length)), 16384))). - local pow2365 = pow32 * pow2364; // pow(trace_generator, (safe_div((safe_mult(58373, global_values.trace_length)), 65536))). - local pow2366 = pow32 * pow2365; // pow(trace_generator, (safe_div((safe_mult(29187, global_values.trace_length)), 32768))). - local pow2367 = pow32 * pow2366; // pow(trace_generator, (safe_div((safe_mult(58375, global_values.trace_length)), 65536))). - local pow2368 = pow32 * pow2367; // pow(trace_generator, (safe_div((safe_mult(7297, global_values.trace_length)), 8192))). - local pow2369 = pow32 * pow2368; // pow(trace_generator, (safe_div((safe_mult(58377, global_values.trace_length)), 65536))). - local pow2370 = pow32 * pow2369; // pow(trace_generator, (safe_div((safe_mult(29189, global_values.trace_length)), 32768))). - local pow2371 = pow32 * pow2370; // pow(trace_generator, (safe_div((safe_mult(58379, global_values.trace_length)), 65536))). - local pow2372 = pow32 * pow2371; // pow(trace_generator, (safe_div((safe_mult(14595, global_values.trace_length)), 16384))). - local pow2373 = pow32 * pow2372; // pow(trace_generator, (safe_div((safe_mult(58381, global_values.trace_length)), 65536))). - local pow2374 = pow32 * pow2373; // pow(trace_generator, (safe_div((safe_mult(29191, global_values.trace_length)), 32768))). - local pow2375 = pow32 * pow2374; // pow(trace_generator, (safe_div((safe_mult(58383, global_values.trace_length)), 65536))). - local pow2376 = pow32 * pow2375; // pow(trace_generator, (safe_div((safe_mult(3649, global_values.trace_length)), 4096))). - local pow2377 = pow32 * pow2376; // pow(trace_generator, (safe_div((safe_mult(58385, global_values.trace_length)), 65536))). - local pow2378 = pow32 * pow2377; // pow(trace_generator, (safe_div((safe_mult(29193, global_values.trace_length)), 32768))). - local pow2379 = pow32 * pow2378; // pow(trace_generator, (safe_div((safe_mult(58387, global_values.trace_length)), 65536))). - local pow2380 = pow32 * pow2379; // pow(trace_generator, (safe_div((safe_mult(14597, global_values.trace_length)), 16384))). - local pow2381 = pow32 * pow2380; // pow(trace_generator, (safe_div((safe_mult(58389, global_values.trace_length)), 65536))). - local pow2382 = pow32 * pow2381; // pow(trace_generator, (safe_div((safe_mult(29195, global_values.trace_length)), 32768))). - local pow2383 = pow32 * pow2382; // pow(trace_generator, (safe_div((safe_mult(58391, global_values.trace_length)), 65536))). - local pow2384 = pow79 * pow2383; // pow(trace_generator, (safe_div((safe_mult(913, global_values.trace_length)), 1024))). - local pow2385 = pow100 * pow2384; // pow(trace_generator, (safe_div((safe_mult(457, global_values.trace_length)), 512))). - local pow2386 = pow100 * pow2385; // pow(trace_generator, (safe_div((safe_mult(915, global_values.trace_length)), 1024))). - local pow2387 = pow100 * pow2386; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 256))). - local pow2388 = pow100 * pow2387; // pow(trace_generator, (safe_div((safe_mult(917, global_values.trace_length)), 1024))). - local pow2389 = pow100 * pow2388; // pow(trace_generator, (safe_div((safe_mult(459, global_values.trace_length)), 512))). - local pow2390 = pow100 * pow2389; // pow(trace_generator, (safe_div((safe_mult(919, global_values.trace_length)), 1024))). - local pow2391 = pow100 * pow2390; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 128))). - local pow2392 = pow100 * pow2391; // pow(trace_generator, (safe_div((safe_mult(921, global_values.trace_length)), 1024))). - local pow2393 = pow100 * pow2392; // pow(trace_generator, (safe_div((safe_mult(461, global_values.trace_length)), 512))). - local pow2394 = pow100 * pow2393; // pow(trace_generator, (safe_div((safe_mult(923, global_values.trace_length)), 1024))). - local pow2395 = pow100 * pow2394; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 256))). - local pow2396 = pow100 * pow2395; // pow(trace_generator, (safe_div((safe_mult(925, global_values.trace_length)), 1024))). - local pow2397 = pow220 * pow2396; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 32))). - local pow2398 = pow32 * pow2397; // pow(trace_generator, (safe_div((safe_mult(59393, global_values.trace_length)), 65536))). - local pow2399 = pow32 * pow2398; // pow(trace_generator, (safe_div((safe_mult(29697, global_values.trace_length)), 32768))). - local pow2400 = pow32 * pow2399; // pow(trace_generator, (safe_div((safe_mult(59395, global_values.trace_length)), 65536))). - local pow2401 = pow32 * pow2400; // pow(trace_generator, (safe_div((safe_mult(14849, global_values.trace_length)), 16384))). - local pow2402 = pow32 * pow2401; // pow(trace_generator, (safe_div((safe_mult(59397, global_values.trace_length)), 65536))). - local pow2403 = pow32 * pow2402; // pow(trace_generator, (safe_div((safe_mult(29699, global_values.trace_length)), 32768))). - local pow2404 = pow32 * pow2403; // pow(trace_generator, (safe_div((safe_mult(59399, global_values.trace_length)), 65536))). - local pow2405 = pow32 * pow2404; // pow(trace_generator, (safe_div((safe_mult(7425, global_values.trace_length)), 8192))). - local pow2406 = pow32 * pow2405; // pow(trace_generator, (safe_div((safe_mult(59401, global_values.trace_length)), 65536))). - local pow2407 = pow32 * pow2406; // pow(trace_generator, (safe_div((safe_mult(29701, global_values.trace_length)), 32768))). - local pow2408 = pow32 * pow2407; // pow(trace_generator, (safe_div((safe_mult(59403, global_values.trace_length)), 65536))). - local pow2409 = pow32 * pow2408; // pow(trace_generator, (safe_div((safe_mult(14851, global_values.trace_length)), 16384))). - local pow2410 = pow32 * pow2409; // pow(trace_generator, (safe_div((safe_mult(59405, global_values.trace_length)), 65536))). - local pow2411 = pow32 * pow2410; // pow(trace_generator, (safe_div((safe_mult(29703, global_values.trace_length)), 32768))). - local pow2412 = pow32 * pow2411; // pow(trace_generator, (safe_div((safe_mult(59407, global_values.trace_length)), 65536))). - local pow2413 = pow32 * pow2412; // pow(trace_generator, (safe_div((safe_mult(3713, global_values.trace_length)), 4096))). - local pow2414 = pow32 * pow2413; // pow(trace_generator, (safe_div((safe_mult(59409, global_values.trace_length)), 65536))). - local pow2415 = pow32 * pow2414; // pow(trace_generator, (safe_div((safe_mult(29705, global_values.trace_length)), 32768))). - local pow2416 = pow32 * pow2415; // pow(trace_generator, (safe_div((safe_mult(59411, global_values.trace_length)), 65536))). - local pow2417 = pow32 * pow2416; // pow(trace_generator, (safe_div((safe_mult(14853, global_values.trace_length)), 16384))). - local pow2418 = pow32 * pow2417; // pow(trace_generator, (safe_div((safe_mult(59413, global_values.trace_length)), 65536))). - local pow2419 = pow32 * pow2418; // pow(trace_generator, (safe_div((safe_mult(29707, global_values.trace_length)), 32768))). - local pow2420 = pow32 * pow2419; // pow(trace_generator, (safe_div((safe_mult(59415, global_values.trace_length)), 65536))). - local pow2421 = pow79 * pow2420; // pow(trace_generator, (safe_div((safe_mult(929, global_values.trace_length)), 1024))). - local pow2422 = pow100 * pow2421; // pow(trace_generator, (safe_div((safe_mult(465, global_values.trace_length)), 512))). - local pow2423 = pow100 * pow2422; // pow(trace_generator, (safe_div((safe_mult(931, global_values.trace_length)), 1024))). - local pow2424 = pow100 * pow2423; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 256))). - local pow2425 = pow100 * pow2424; // pow(trace_generator, (safe_div((safe_mult(933, global_values.trace_length)), 1024))). - local pow2426 = pow100 * pow2425; // pow(trace_generator, (safe_div((safe_mult(467, global_values.trace_length)), 512))). - local pow2427 = pow100 * pow2426; // pow(trace_generator, (safe_div((safe_mult(935, global_values.trace_length)), 1024))). - local pow2428 = pow100 * pow2427; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 128))). - local pow2429 = pow100 * pow2428; // pow(trace_generator, (safe_div((safe_mult(937, global_values.trace_length)), 1024))). - local pow2430 = pow100 * pow2429; // pow(trace_generator, (safe_div((safe_mult(469, global_values.trace_length)), 512))). - local pow2431 = pow100 * pow2430; // pow(trace_generator, (safe_div((safe_mult(939, global_values.trace_length)), 1024))). - local pow2432 = pow100 * pow2431; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 256))). - local pow2433 = pow100 * pow2432; // pow(trace_generator, (safe_div((safe_mult(941, global_values.trace_length)), 1024))). - local pow2434 = pow100 * pow2433; // pow(trace_generator, (safe_div((safe_mult(471, global_values.trace_length)), 512))). - local pow2435 = pow100 * pow2434; // pow(trace_generator, (safe_div((safe_mult(943, global_values.trace_length)), 1024))). - local pow2436 = pow100 * pow2435; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 64))). - local pow2437 = pow32 * pow2436; // pow(trace_generator, (safe_div((safe_mult(60417, global_values.trace_length)), 65536))). - local pow2438 = pow32 * pow2437; // pow(trace_generator, (safe_div((safe_mult(30209, global_values.trace_length)), 32768))). - local pow2439 = pow32 * pow2438; // pow(trace_generator, (safe_div((safe_mult(60419, global_values.trace_length)), 65536))). - local pow2440 = pow32 * pow2439; // pow(trace_generator, (safe_div((safe_mult(15105, global_values.trace_length)), 16384))). - local pow2441 = pow32 * pow2440; // pow(trace_generator, (safe_div((safe_mult(60421, global_values.trace_length)), 65536))). - local pow2442 = pow32 * pow2441; // pow(trace_generator, (safe_div((safe_mult(30211, global_values.trace_length)), 32768))). - local pow2443 = pow32 * pow2442; // pow(trace_generator, (safe_div((safe_mult(60423, global_values.trace_length)), 65536))). - local pow2444 = pow32 * pow2443; // pow(trace_generator, (safe_div((safe_mult(7553, global_values.trace_length)), 8192))). - local pow2445 = pow32 * pow2444; // pow(trace_generator, (safe_div((safe_mult(60425, global_values.trace_length)), 65536))). - local pow2446 = pow32 * pow2445; // pow(trace_generator, (safe_div((safe_mult(30213, global_values.trace_length)), 32768))). - local pow2447 = pow32 * pow2446; // pow(trace_generator, (safe_div((safe_mult(60427, global_values.trace_length)), 65536))). - local pow2448 = pow32 * pow2447; // pow(trace_generator, (safe_div((safe_mult(15107, global_values.trace_length)), 16384))). - local pow2449 = pow32 * pow2448; // pow(trace_generator, (safe_div((safe_mult(60429, global_values.trace_length)), 65536))). - local pow2450 = pow32 * pow2449; // pow(trace_generator, (safe_div((safe_mult(30215, global_values.trace_length)), 32768))). - local pow2451 = pow32 * pow2450; // pow(trace_generator, (safe_div((safe_mult(60431, global_values.trace_length)), 65536))). - local pow2452 = pow32 * pow2451; // pow(trace_generator, (safe_div((safe_mult(3777, global_values.trace_length)), 4096))). - local pow2453 = pow32 * pow2452; // pow(trace_generator, (safe_div((safe_mult(60433, global_values.trace_length)), 65536))). - local pow2454 = pow32 * pow2453; // pow(trace_generator, (safe_div((safe_mult(30217, global_values.trace_length)), 32768))). - local pow2455 = pow32 * pow2454; // pow(trace_generator, (safe_div((safe_mult(60435, global_values.trace_length)), 65536))). - local pow2456 = pow32 * pow2455; // pow(trace_generator, (safe_div((safe_mult(15109, global_values.trace_length)), 16384))). - local pow2457 = pow32 * pow2456; // pow(trace_generator, (safe_div((safe_mult(60437, global_values.trace_length)), 65536))). - local pow2458 = pow32 * pow2457; // pow(trace_generator, (safe_div((safe_mult(30219, global_values.trace_length)), 32768))). - local pow2459 = pow32 * pow2458; // pow(trace_generator, (safe_div((safe_mult(60439, global_values.trace_length)), 65536))). - local pow2460 = pow79 * pow2459; // pow(trace_generator, (safe_div((safe_mult(945, global_values.trace_length)), 1024))). - local pow2461 = pow100 * pow2460; // pow(trace_generator, (safe_div((safe_mult(473, global_values.trace_length)), 512))). - local pow2462 = pow100 * pow2461; // pow(trace_generator, (safe_div((safe_mult(947, global_values.trace_length)), 1024))). - local pow2463 = pow100 * pow2462; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 256))). - local pow2464 = pow100 * pow2463; // pow(trace_generator, (safe_div((safe_mult(949, global_values.trace_length)), 1024))). - local pow2465 = pow100 * pow2464; // pow(trace_generator, (safe_div((safe_mult(475, global_values.trace_length)), 512))). - local pow2466 = pow100 * pow2465; // pow(trace_generator, (safe_div((safe_mult(951, global_values.trace_length)), 1024))). - local pow2467 = pow100 * pow2466; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 128))). - local pow2468 = pow100 * pow2467; // pow(trace_generator, (safe_div((safe_mult(953, global_values.trace_length)), 1024))). - local pow2469 = pow100 * pow2468; // pow(trace_generator, (safe_div((safe_mult(477, global_values.trace_length)), 512))). - local pow2470 = pow100 * pow2469; // pow(trace_generator, (safe_div((safe_mult(955, global_values.trace_length)), 1024))). - local pow2471 = pow100 * pow2470; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 256))). - local pow2472 = pow100 * pow2471; // pow(trace_generator, (safe_div((safe_mult(957, global_values.trace_length)), 1024))). - local pow2473 = pow220 * pow2472; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 16))). - local pow2474 = pow32 * pow2473; // pow(trace_generator, (safe_div((safe_mult(61441, global_values.trace_length)), 65536))). - local pow2475 = pow32 * pow2474; // pow(trace_generator, (safe_div((safe_mult(30721, global_values.trace_length)), 32768))). - local pow2476 = pow32 * pow2475; // pow(trace_generator, (safe_div((safe_mult(61443, global_values.trace_length)), 65536))). - local pow2477 = pow32 * pow2476; // pow(trace_generator, (safe_div((safe_mult(15361, global_values.trace_length)), 16384))). - local pow2478 = pow32 * pow2477; // pow(trace_generator, (safe_div((safe_mult(61445, global_values.trace_length)), 65536))). - local pow2479 = pow32 * pow2478; // pow(trace_generator, (safe_div((safe_mult(30723, global_values.trace_length)), 32768))). - local pow2480 = pow32 * pow2479; // pow(trace_generator, (safe_div((safe_mult(61447, global_values.trace_length)), 65536))). - local pow2481 = pow32 * pow2480; // pow(trace_generator, (safe_div((safe_mult(7681, global_values.trace_length)), 8192))). - local pow2482 = pow32 * pow2481; // pow(trace_generator, (safe_div((safe_mult(61449, global_values.trace_length)), 65536))). - local pow2483 = pow32 * pow2482; // pow(trace_generator, (safe_div((safe_mult(30725, global_values.trace_length)), 32768))). - local pow2484 = pow32 * pow2483; // pow(trace_generator, (safe_div((safe_mult(61451, global_values.trace_length)), 65536))). - local pow2485 = pow32 * pow2484; // pow(trace_generator, (safe_div((safe_mult(15363, global_values.trace_length)), 16384))). - local pow2486 = pow32 * pow2485; // pow(trace_generator, (safe_div((safe_mult(61453, global_values.trace_length)), 65536))). - local pow2487 = pow32 * pow2486; // pow(trace_generator, (safe_div((safe_mult(30727, global_values.trace_length)), 32768))). - local pow2488 = pow32 * pow2487; // pow(trace_generator, (safe_div((safe_mult(61455, global_values.trace_length)), 65536))). - local pow2489 = pow32 * pow2488; // pow(trace_generator, (safe_div((safe_mult(3841, global_values.trace_length)), 4096))). - local pow2490 = pow32 * pow2489; // pow(trace_generator, (safe_div((safe_mult(61457, global_values.trace_length)), 65536))). - local pow2491 = pow32 * pow2490; // pow(trace_generator, (safe_div((safe_mult(30729, global_values.trace_length)), 32768))). - local pow2492 = pow32 * pow2491; // pow(trace_generator, (safe_div((safe_mult(61459, global_values.trace_length)), 65536))). - local pow2493 = pow32 * pow2492; // pow(trace_generator, (safe_div((safe_mult(15365, global_values.trace_length)), 16384))). - local pow2494 = pow32 * pow2493; // pow(trace_generator, (safe_div((safe_mult(61461, global_values.trace_length)), 65536))). - local pow2495 = pow32 * pow2494; // pow(trace_generator, (safe_div((safe_mult(30731, global_values.trace_length)), 32768))). - local pow2496 = pow32 * pow2495; // pow(trace_generator, (safe_div((safe_mult(61463, global_values.trace_length)), 65536))). - local pow2497 = pow79 * pow2496; // pow(trace_generator, (safe_div((safe_mult(961, global_values.trace_length)), 1024))). - local pow2498 = pow100 * pow2497; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 512))). - local pow2499 = pow100 * pow2498; // pow(trace_generator, (safe_div((safe_mult(963, global_values.trace_length)), 1024))). - local pow2500 = pow100 * pow2499; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 256))). - local pow2501 = pow100 * pow2500; // pow(trace_generator, (safe_div((safe_mult(965, global_values.trace_length)), 1024))). - local pow2502 = pow100 * pow2501; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 512))). - local pow2503 = pow100 * pow2502; // pow(trace_generator, (safe_div((safe_mult(967, global_values.trace_length)), 1024))). - local pow2504 = pow100 * pow2503; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 128))). - local pow2505 = pow100 * pow2504; // pow(trace_generator, (safe_div((safe_mult(969, global_values.trace_length)), 1024))). - local pow2506 = pow100 * pow2505; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 512))). - local pow2507 = pow100 * pow2506; // pow(trace_generator, (safe_div((safe_mult(971, global_values.trace_length)), 1024))). - local pow2508 = pow100 * pow2507; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 256))). - local pow2509 = pow100 * pow2508; // pow(trace_generator, (safe_div((safe_mult(973, global_values.trace_length)), 1024))). - local pow2510 = pow100 * pow2509; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 512))). - local pow2511 = pow100 * pow2510; // pow(trace_generator, (safe_div((safe_mult(975, global_values.trace_length)), 1024))). - local pow2512 = pow100 * pow2511; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 64))). - local pow2513 = pow32 * pow2512; // pow(trace_generator, (safe_div((safe_mult(62465, global_values.trace_length)), 65536))). - local pow2514 = pow32 * pow2513; // pow(trace_generator, (safe_div((safe_mult(31233, global_values.trace_length)), 32768))). - local pow2515 = pow32 * pow2514; // pow(trace_generator, (safe_div((safe_mult(62467, global_values.trace_length)), 65536))). - local pow2516 = pow32 * pow2515; // pow(trace_generator, (safe_div((safe_mult(15617, global_values.trace_length)), 16384))). - local pow2517 = pow32 * pow2516; // pow(trace_generator, (safe_div((safe_mult(62469, global_values.trace_length)), 65536))). - local pow2518 = pow32 * pow2517; // pow(trace_generator, (safe_div((safe_mult(31235, global_values.trace_length)), 32768))). - local pow2519 = pow32 * pow2518; // pow(trace_generator, (safe_div((safe_mult(62471, global_values.trace_length)), 65536))). - local pow2520 = pow32 * pow2519; // pow(trace_generator, (safe_div((safe_mult(7809, global_values.trace_length)), 8192))). - local pow2521 = pow32 * pow2520; // pow(trace_generator, (safe_div((safe_mult(62473, global_values.trace_length)), 65536))). - local pow2522 = pow32 * pow2521; // pow(trace_generator, (safe_div((safe_mult(31237, global_values.trace_length)), 32768))). - local pow2523 = pow32 * pow2522; // pow(trace_generator, (safe_div((safe_mult(62475, global_values.trace_length)), 65536))). - local pow2524 = pow32 * pow2523; // pow(trace_generator, (safe_div((safe_mult(15619, global_values.trace_length)), 16384))). - local pow2525 = pow32 * pow2524; // pow(trace_generator, (safe_div((safe_mult(62477, global_values.trace_length)), 65536))). - local pow2526 = pow32 * pow2525; // pow(trace_generator, (safe_div((safe_mult(31239, global_values.trace_length)), 32768))). - local pow2527 = pow32 * pow2526; // pow(trace_generator, (safe_div((safe_mult(62479, global_values.trace_length)), 65536))). - local pow2528 = pow32 * pow2527; // pow(trace_generator, (safe_div((safe_mult(3905, global_values.trace_length)), 4096))). - local pow2529 = pow32 * pow2528; // pow(trace_generator, (safe_div((safe_mult(62481, global_values.trace_length)), 65536))). - local pow2530 = pow32 * pow2529; // pow(trace_generator, (safe_div((safe_mult(31241, global_values.trace_length)), 32768))). - local pow2531 = pow32 * pow2530; // pow(trace_generator, (safe_div((safe_mult(62483, global_values.trace_length)), 65536))). - local pow2532 = pow32 * pow2531; // pow(trace_generator, (safe_div((safe_mult(15621, global_values.trace_length)), 16384))). - local pow2533 = pow32 * pow2532; // pow(trace_generator, (safe_div((safe_mult(62485, global_values.trace_length)), 65536))). - local pow2534 = pow32 * pow2533; // pow(trace_generator, (safe_div((safe_mult(31243, global_values.trace_length)), 32768))). - local pow2535 = pow32 * pow2534; // pow(trace_generator, (safe_div((safe_mult(62487, global_values.trace_length)), 65536))). - local pow2536 = pow79 * pow2535; // pow(trace_generator, (safe_div((safe_mult(977, global_values.trace_length)), 1024))). - local pow2537 = pow100 * pow2536; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 512))). - local pow2538 = pow100 * pow2537; // pow(trace_generator, (safe_div((safe_mult(979, global_values.trace_length)), 1024))). - local pow2539 = pow100 * pow2538; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 256))). - local pow2540 = pow100 * pow2539; // pow(trace_generator, (safe_div((safe_mult(981, global_values.trace_length)), 1024))). - local pow2541 = pow100 * pow2540; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 512))). - local pow2542 = pow100 * pow2541; // pow(trace_generator, (safe_div((safe_mult(983, global_values.trace_length)), 1024))). - local pow2543 = pow100 * pow2542; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 128))). - local pow2544 = pow100 * pow2543; // pow(trace_generator, (safe_div((safe_mult(985, global_values.trace_length)), 1024))). - local pow2545 = pow100 * pow2544; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 512))). - local pow2546 = pow100 * pow2545; // pow(trace_generator, (safe_div((safe_mult(987, global_values.trace_length)), 1024))). - local pow2547 = pow100 * pow2546; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 256))). - local pow2548 = pow100 * pow2547; // pow(trace_generator, (safe_div((safe_mult(989, global_values.trace_length)), 1024))). - local pow2549 = pow220 * pow2548; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 32))). - local pow2550 = pow32 * pow2549; // pow(trace_generator, (safe_div((safe_mult(63489, global_values.trace_length)), 65536))). - local pow2551 = pow32 * pow2550; // pow(trace_generator, (safe_div((safe_mult(31745, global_values.trace_length)), 32768))). - local pow2552 = pow32 * pow2551; // pow(trace_generator, (safe_div((safe_mult(63491, global_values.trace_length)), 65536))). - local pow2553 = pow32 * pow2552; // pow(trace_generator, (safe_div((safe_mult(15873, global_values.trace_length)), 16384))). - local pow2554 = pow32 * pow2553; // pow(trace_generator, (safe_div((safe_mult(63493, global_values.trace_length)), 65536))). - local pow2555 = pow32 * pow2554; // pow(trace_generator, (safe_div((safe_mult(31747, global_values.trace_length)), 32768))). - local pow2556 = pow32 * pow2555; // pow(trace_generator, (safe_div((safe_mult(63495, global_values.trace_length)), 65536))). - local pow2557 = pow32 * pow2556; // pow(trace_generator, (safe_div((safe_mult(7937, global_values.trace_length)), 8192))). - local pow2558 = pow32 * pow2557; // pow(trace_generator, (safe_div((safe_mult(63497, global_values.trace_length)), 65536))). - local pow2559 = pow32 * pow2558; // pow(trace_generator, (safe_div((safe_mult(31749, global_values.trace_length)), 32768))). - local pow2560 = pow32 * pow2559; // pow(trace_generator, (safe_div((safe_mult(63499, global_values.trace_length)), 65536))). - local pow2561 = pow32 * pow2560; // pow(trace_generator, (safe_div((safe_mult(15875, global_values.trace_length)), 16384))). - local pow2562 = pow32 * pow2561; // pow(trace_generator, (safe_div((safe_mult(63501, global_values.trace_length)), 65536))). - local pow2563 = pow32 * pow2562; // pow(trace_generator, (safe_div((safe_mult(31751, global_values.trace_length)), 32768))). - local pow2564 = pow32 * pow2563; // pow(trace_generator, (safe_div((safe_mult(63503, global_values.trace_length)), 65536))). - local pow2565 = pow32 * pow2564; // pow(trace_generator, (safe_div((safe_mult(3969, global_values.trace_length)), 4096))). - local pow2566 = pow32 * pow2565; // pow(trace_generator, (safe_div((safe_mult(63505, global_values.trace_length)), 65536))). - local pow2567 = pow32 * pow2566; // pow(trace_generator, (safe_div((safe_mult(31753, global_values.trace_length)), 32768))). - local pow2568 = pow32 * pow2567; // pow(trace_generator, (safe_div((safe_mult(63507, global_values.trace_length)), 65536))). - local pow2569 = pow32 * pow2568; // pow(trace_generator, (safe_div((safe_mult(15877, global_values.trace_length)), 16384))). - local pow2570 = pow32 * pow2569; // pow(trace_generator, (safe_div((safe_mult(63509, global_values.trace_length)), 65536))). - local pow2571 = pow32 * pow2570; // pow(trace_generator, (safe_div((safe_mult(31755, global_values.trace_length)), 32768))). - local pow2572 = pow32 * pow2571; // pow(trace_generator, (safe_div((safe_mult(63511, global_values.trace_length)), 65536))). - local pow2573 = pow79 * pow2572; // pow(trace_generator, (safe_div((safe_mult(993, global_values.trace_length)), 1024))). - local pow2574 = pow100 * pow2573; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 512))). - local pow2575 = pow100 * pow2574; // pow(trace_generator, (safe_div((safe_mult(995, global_values.trace_length)), 1024))). - local pow2576 = pow100 * pow2575; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 256))). - local pow2577 = pow100 * pow2576; // pow(trace_generator, (safe_div((safe_mult(997, global_values.trace_length)), 1024))). - local pow2578 = pow100 * pow2577; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 512))). - local pow2579 = pow100 * pow2578; // pow(trace_generator, (safe_div((safe_mult(999, global_values.trace_length)), 1024))). - local pow2580 = pow100 * pow2579; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 128))). - local pow2581 = pow100 * pow2580; // pow(trace_generator, (safe_div((safe_mult(1001, global_values.trace_length)), 1024))). - local pow2582 = pow100 * pow2581; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 512))). - local pow2583 = pow100 * pow2582; // pow(trace_generator, (safe_div((safe_mult(1003, global_values.trace_length)), 1024))). - local pow2584 = pow100 * pow2583; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 256))). - local pow2585 = pow100 * pow2584; // pow(trace_generator, (safe_div((safe_mult(1005, global_values.trace_length)), 1024))). - local pow2586 = pow100 * pow2585; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 512))). - local pow2587 = pow100 * pow2586; // pow(trace_generator, (safe_div((safe_mult(1007, global_values.trace_length)), 1024))). - local pow2588 = pow100 * pow2587; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 64))). - local pow2589 = pow32 * pow2588; // pow(trace_generator, (safe_div((safe_mult(64513, global_values.trace_length)), 65536))). - local pow2590 = pow32 * pow2589; // pow(trace_generator, (safe_div((safe_mult(32257, global_values.trace_length)), 32768))). - local pow2591 = pow32 * pow2590; // pow(trace_generator, (safe_div((safe_mult(64515, global_values.trace_length)), 65536))). - local pow2592 = pow32 * pow2591; // pow(trace_generator, (safe_div((safe_mult(16129, global_values.trace_length)), 16384))). - local pow2593 = pow32 * pow2592; // pow(trace_generator, (safe_div((safe_mult(64517, global_values.trace_length)), 65536))). - local pow2594 = pow32 * pow2593; // pow(trace_generator, (safe_div((safe_mult(32259, global_values.trace_length)), 32768))). - local pow2595 = pow32 * pow2594; // pow(trace_generator, (safe_div((safe_mult(64519, global_values.trace_length)), 65536))). - local pow2596 = pow32 * pow2595; // pow(trace_generator, (safe_div((safe_mult(8065, global_values.trace_length)), 8192))). - local pow2597 = pow32 * pow2596; // pow(trace_generator, (safe_div((safe_mult(64521, global_values.trace_length)), 65536))). - local pow2598 = pow32 * pow2597; // pow(trace_generator, (safe_div((safe_mult(32261, global_values.trace_length)), 32768))). - local pow2599 = pow32 * pow2598; // pow(trace_generator, (safe_div((safe_mult(64523, global_values.trace_length)), 65536))). - local pow2600 = pow32 * pow2599; // pow(trace_generator, (safe_div((safe_mult(16131, global_values.trace_length)), 16384))). - local pow2601 = pow32 * pow2600; // pow(trace_generator, (safe_div((safe_mult(64525, global_values.trace_length)), 65536))). - local pow2602 = pow32 * pow2601; // pow(trace_generator, (safe_div((safe_mult(32263, global_values.trace_length)), 32768))). - local pow2603 = pow32 * pow2602; // pow(trace_generator, (safe_div((safe_mult(64527, global_values.trace_length)), 65536))). - local pow2604 = pow32 * pow2603; // pow(trace_generator, (safe_div((safe_mult(4033, global_values.trace_length)), 4096))). - local pow2605 = pow32 * pow2604; // pow(trace_generator, (safe_div((safe_mult(64529, global_values.trace_length)), 65536))). - local pow2606 = pow32 * pow2605; // pow(trace_generator, (safe_div((safe_mult(32265, global_values.trace_length)), 32768))). - local pow2607 = pow32 * pow2606; // pow(trace_generator, (safe_div((safe_mult(64531, global_values.trace_length)), 65536))). - local pow2608 = pow32 * pow2607; // pow(trace_generator, (safe_div((safe_mult(16133, global_values.trace_length)), 16384))). - local pow2609 = pow32 * pow2608; // pow(trace_generator, (safe_div((safe_mult(64533, global_values.trace_length)), 65536))). - local pow2610 = pow32 * pow2609; // pow(trace_generator, (safe_div((safe_mult(32267, global_values.trace_length)), 32768))). - local pow2611 = pow32 * pow2610; // pow(trace_generator, (safe_div((safe_mult(64535, global_values.trace_length)), 65536))). - local pow2612 = pow32 * pow2611; // pow(trace_generator, (safe_div((safe_mult(8067, global_values.trace_length)), 8192))). - local pow2613 = pow32 * pow2612; // pow(trace_generator, (safe_div((safe_mult(64537, global_values.trace_length)), 65536))). - local pow2614 = pow32 * pow2613; // pow(trace_generator, (safe_div((safe_mult(32269, global_values.trace_length)), 32768))). - local pow2615 = pow32 * pow2614; // pow(trace_generator, (safe_div((safe_mult(64539, global_values.trace_length)), 65536))). - local pow2616 = pow32 * pow2615; // pow(trace_generator, (safe_div((safe_mult(16135, global_values.trace_length)), 16384))). - local pow2617 = pow32 * pow2616; // pow(trace_generator, (safe_div((safe_mult(64541, global_values.trace_length)), 65536))). - local pow2618 = pow41 * pow2617; // pow(trace_generator, (safe_div((safe_mult(2017, global_values.trace_length)), 2048))). - local pow2619 = pow32 * pow2618; // pow(trace_generator, (safe_div((safe_mult(64545, global_values.trace_length)), 65536))). - local pow2620 = pow32 * pow2619; // pow(trace_generator, (safe_div((safe_mult(32273, global_values.trace_length)), 32768))). - local pow2621 = pow32 * pow2620; // pow(trace_generator, (safe_div((safe_mult(64547, global_values.trace_length)), 65536))). - local pow2622 = pow32 * pow2621; // pow(trace_generator, (safe_div((safe_mult(16137, global_values.trace_length)), 16384))). - local pow2623 = pow32 * pow2622; // pow(trace_generator, (safe_div((safe_mult(64549, global_values.trace_length)), 65536))). - local pow2624 = pow32 * pow2623; // pow(trace_generator, (safe_div((safe_mult(32275, global_values.trace_length)), 32768))). - local pow2625 = pow32 * pow2624; // pow(trace_generator, (safe_div((safe_mult(64551, global_values.trace_length)), 65536))). - local pow2626 = pow32 * pow2625; // pow(trace_generator, (safe_div((safe_mult(8069, global_values.trace_length)), 8192))). - local pow2627 = pow32 * pow2626; // pow(trace_generator, (safe_div((safe_mult(64553, global_values.trace_length)), 65536))). - local pow2628 = pow32 * pow2627; // pow(trace_generator, (safe_div((safe_mult(32277, global_values.trace_length)), 32768))). - local pow2629 = pow32 * pow2628; // pow(trace_generator, (safe_div((safe_mult(64555, global_values.trace_length)), 65536))). - local pow2630 = pow32 * pow2629; // pow(trace_generator, (safe_div((safe_mult(16139, global_values.trace_length)), 16384))). - local pow2631 = pow32 * pow2630; // pow(trace_generator, (safe_div((safe_mult(64557, global_values.trace_length)), 65536))). - local pow2632 = pow32 * pow2631; // pow(trace_generator, (safe_div((safe_mult(32279, global_values.trace_length)), 32768))). - local pow2633 = pow32 * pow2632; // pow(trace_generator, (safe_div((safe_mult(64559, global_values.trace_length)), 65536))). - local pow2634 = pow32 * pow2633; // pow(trace_generator, (safe_div((safe_mult(4035, global_values.trace_length)), 4096))). - local pow2635 = pow32 * pow2634; // pow(trace_generator, (safe_div((safe_mult(64561, global_values.trace_length)), 65536))). - local pow2636 = pow32 * pow2635; // pow(trace_generator, (safe_div((safe_mult(32281, global_values.trace_length)), 32768))). - local pow2637 = pow32 * pow2636; // pow(trace_generator, (safe_div((safe_mult(64563, global_values.trace_length)), 65536))). - local pow2638 = pow32 * pow2637; // pow(trace_generator, (safe_div((safe_mult(16141, global_values.trace_length)), 16384))). - local pow2639 = pow32 * pow2638; // pow(trace_generator, (safe_div((safe_mult(64565, global_values.trace_length)), 65536))). - local pow2640 = pow32 * pow2639; // pow(trace_generator, (safe_div((safe_mult(32283, global_values.trace_length)), 32768))). - local pow2641 = pow32 * pow2640; // pow(trace_generator, (safe_div((safe_mult(64567, global_values.trace_length)), 65536))). - local pow2642 = pow32 * pow2641; // pow(trace_generator, (safe_div((safe_mult(8071, global_values.trace_length)), 8192))). - local pow2643 = pow32 * pow2642; // pow(trace_generator, (safe_div((safe_mult(64569, global_values.trace_length)), 65536))). - local pow2644 = pow32 * pow2643; // pow(trace_generator, (safe_div((safe_mult(32285, global_values.trace_length)), 32768))). - local pow2645 = pow32 * pow2644; // pow(trace_generator, (safe_div((safe_mult(64571, global_values.trace_length)), 65536))). - local pow2646 = pow32 * pow2645; // pow(trace_generator, (safe_div((safe_mult(16143, global_values.trace_length)), 16384))). - local pow2647 = pow32 * pow2646; // pow(trace_generator, (safe_div((safe_mult(64573, global_values.trace_length)), 65536))). - local pow2648 = pow41 * pow2647; // pow(trace_generator, (safe_div((safe_mult(1009, global_values.trace_length)), 1024))). - local pow2649 = pow32 * pow2648; // pow(trace_generator, (safe_div((safe_mult(64577, global_values.trace_length)), 65536))). - local pow2650 = pow32 * pow2649; // pow(trace_generator, (safe_div((safe_mult(32289, global_values.trace_length)), 32768))). - local pow2651 = pow32 * pow2650; // pow(trace_generator, (safe_div((safe_mult(64579, global_values.trace_length)), 65536))). - local pow2652 = pow32 * pow2651; // pow(trace_generator, (safe_div((safe_mult(16145, global_values.trace_length)), 16384))). - local pow2653 = pow32 * pow2652; // pow(trace_generator, (safe_div((safe_mult(64581, global_values.trace_length)), 65536))). - local pow2654 = pow32 * pow2653; // pow(trace_generator, (safe_div((safe_mult(32291, global_values.trace_length)), 32768))). - local pow2655 = pow32 * pow2654; // pow(trace_generator, (safe_div((safe_mult(64583, global_values.trace_length)), 65536))). - local pow2656 = pow32 * pow2655; // pow(trace_generator, (safe_div((safe_mult(8073, global_values.trace_length)), 8192))). - local pow2657 = pow32 * pow2656; // pow(trace_generator, (safe_div((safe_mult(64585, global_values.trace_length)), 65536))). - local pow2658 = pow32 * pow2657; // pow(trace_generator, (safe_div((safe_mult(32293, global_values.trace_length)), 32768))). - local pow2659 = pow32 * pow2658; // pow(trace_generator, (safe_div((safe_mult(64587, global_values.trace_length)), 65536))). - local pow2660 = pow32 * pow2659; // pow(trace_generator, (safe_div((safe_mult(16147, global_values.trace_length)), 16384))). - local pow2661 = pow32 * pow2660; // pow(trace_generator, (safe_div((safe_mult(64589, global_values.trace_length)), 65536))). - local pow2662 = pow32 * pow2661; // pow(trace_generator, (safe_div((safe_mult(32295, global_values.trace_length)), 32768))). - local pow2663 = pow32 * pow2662; // pow(trace_generator, (safe_div((safe_mult(64591, global_values.trace_length)), 65536))). - local pow2664 = pow32 * pow2663; // pow(trace_generator, (safe_div((safe_mult(4037, global_values.trace_length)), 4096))). - local pow2665 = pow32 * pow2664; // pow(trace_generator, (safe_div((safe_mult(64593, global_values.trace_length)), 65536))). - local pow2666 = pow32 * pow2665; // pow(trace_generator, (safe_div((safe_mult(32297, global_values.trace_length)), 32768))). - local pow2667 = pow32 * pow2666; // pow(trace_generator, (safe_div((safe_mult(64595, global_values.trace_length)), 65536))). - local pow2668 = pow32 * pow2667; // pow(trace_generator, (safe_div((safe_mult(16149, global_values.trace_length)), 16384))). - local pow2669 = pow32 * pow2668; // pow(trace_generator, (safe_div((safe_mult(64597, global_values.trace_length)), 65536))). - local pow2670 = pow32 * pow2669; // pow(trace_generator, (safe_div((safe_mult(32299, global_values.trace_length)), 32768))). - local pow2671 = pow32 * pow2670; // pow(trace_generator, (safe_div((safe_mult(64599, global_values.trace_length)), 65536))). - local pow2672 = pow32 * pow2671; // pow(trace_generator, (safe_div((safe_mult(8075, global_values.trace_length)), 8192))). - local pow2673 = pow32 * pow2672; // pow(trace_generator, (safe_div((safe_mult(64601, global_values.trace_length)), 65536))). - local pow2674 = pow32 * pow2673; // pow(trace_generator, (safe_div((safe_mult(32301, global_values.trace_length)), 32768))). - local pow2675 = pow32 * pow2674; // pow(trace_generator, (safe_div((safe_mult(64603, global_values.trace_length)), 65536))). - local pow2676 = pow32 * pow2675; // pow(trace_generator, (safe_div((safe_mult(16151, global_values.trace_length)), 16384))). - local pow2677 = pow32 * pow2676; // pow(trace_generator, (safe_div((safe_mult(64605, global_values.trace_length)), 65536))). - local pow2678 = pow41 * pow2677; // pow(trace_generator, (safe_div((safe_mult(2019, global_values.trace_length)), 2048))). - local pow2679 = pow32 * pow2678; // pow(trace_generator, (safe_div((safe_mult(64609, global_values.trace_length)), 65536))). - local pow2680 = pow32 * pow2679; // pow(trace_generator, (safe_div((safe_mult(32305, global_values.trace_length)), 32768))). - local pow2681 = pow32 * pow2680; // pow(trace_generator, (safe_div((safe_mult(64611, global_values.trace_length)), 65536))). - local pow2682 = pow32 * pow2681; // pow(trace_generator, (safe_div((safe_mult(16153, global_values.trace_length)), 16384))). - local pow2683 = pow32 * pow2682; // pow(trace_generator, (safe_div((safe_mult(64613, global_values.trace_length)), 65536))). - local pow2684 = pow32 * pow2683; // pow(trace_generator, (safe_div((safe_mult(32307, global_values.trace_length)), 32768))). - local pow2685 = pow32 * pow2684; // pow(trace_generator, (safe_div((safe_mult(64615, global_values.trace_length)), 65536))). - local pow2686 = pow32 * pow2685; // pow(trace_generator, (safe_div((safe_mult(8077, global_values.trace_length)), 8192))). - local pow2687 = pow32 * pow2686; // pow(trace_generator, (safe_div((safe_mult(64617, global_values.trace_length)), 65536))). - local pow2688 = pow32 * pow2687; // pow(trace_generator, (safe_div((safe_mult(32309, global_values.trace_length)), 32768))). - local pow2689 = pow32 * pow2688; // pow(trace_generator, (safe_div((safe_mult(64619, global_values.trace_length)), 65536))). - local pow2690 = pow32 * pow2689; // pow(trace_generator, (safe_div((safe_mult(16155, global_values.trace_length)), 16384))). - local pow2691 = pow32 * pow2690; // pow(trace_generator, (safe_div((safe_mult(64621, global_values.trace_length)), 65536))). - local pow2692 = pow32 * pow2691; // pow(trace_generator, (safe_div((safe_mult(32311, global_values.trace_length)), 32768))). - local pow2693 = pow32 * pow2692; // pow(trace_generator, (safe_div((safe_mult(64623, global_values.trace_length)), 65536))). - local pow2694 = pow32 * pow2693; // pow(trace_generator, (safe_div((safe_mult(4039, global_values.trace_length)), 4096))). - local pow2695 = pow32 * pow2694; // pow(trace_generator, (safe_div((safe_mult(64625, global_values.trace_length)), 65536))). - local pow2696 = pow32 * pow2695; // pow(trace_generator, (safe_div((safe_mult(32313, global_values.trace_length)), 32768))). - local pow2697 = pow32 * pow2696; // pow(trace_generator, (safe_div((safe_mult(64627, global_values.trace_length)), 65536))). - local pow2698 = pow32 * pow2697; // pow(trace_generator, (safe_div((safe_mult(16157, global_values.trace_length)), 16384))). - local pow2699 = pow32 * pow2698; // pow(trace_generator, (safe_div((safe_mult(64629, global_values.trace_length)), 65536))). - local pow2700 = pow32 * pow2699; // pow(trace_generator, (safe_div((safe_mult(32315, global_values.trace_length)), 32768))). - local pow2701 = pow32 * pow2700; // pow(trace_generator, (safe_div((safe_mult(64631, global_values.trace_length)), 65536))). - local pow2702 = pow32 * pow2701; // pow(trace_generator, (safe_div((safe_mult(8079, global_values.trace_length)), 8192))). - local pow2703 = pow32 * pow2702; // pow(trace_generator, (safe_div((safe_mult(64633, global_values.trace_length)), 65536))). - local pow2704 = pow32 * pow2703; // pow(trace_generator, (safe_div((safe_mult(32317, global_values.trace_length)), 32768))). - local pow2705 = pow32 * pow2704; // pow(trace_generator, (safe_div((safe_mult(64635, global_values.trace_length)), 65536))). - local pow2706 = pow32 * pow2705; // pow(trace_generator, (safe_div((safe_mult(16159, global_values.trace_length)), 16384))). - local pow2707 = pow32 * pow2706; // pow(trace_generator, (safe_div((safe_mult(64637, global_values.trace_length)), 65536))). - local pow2708 = pow41 * pow2707; // pow(trace_generator, (safe_div((safe_mult(505, global_values.trace_length)), 512))). - local pow2709 = pow32 * pow2708; // pow(trace_generator, (safe_div((safe_mult(64641, global_values.trace_length)), 65536))). - local pow2710 = pow32 * pow2709; // pow(trace_generator, (safe_div((safe_mult(32321, global_values.trace_length)), 32768))). - local pow2711 = pow32 * pow2710; // pow(trace_generator, (safe_div((safe_mult(64643, global_values.trace_length)), 65536))). - local pow2712 = pow32 * pow2711; // pow(trace_generator, (safe_div((safe_mult(16161, global_values.trace_length)), 16384))). - local pow2713 = pow32 * pow2712; // pow(trace_generator, (safe_div((safe_mult(64645, global_values.trace_length)), 65536))). - local pow2714 = pow32 * pow2713; // pow(trace_generator, (safe_div((safe_mult(32323, global_values.trace_length)), 32768))). - local pow2715 = pow32 * pow2714; // pow(trace_generator, (safe_div((safe_mult(64647, global_values.trace_length)), 65536))). - local pow2716 = pow32 * pow2715; // pow(trace_generator, (safe_div((safe_mult(8081, global_values.trace_length)), 8192))). - local pow2717 = pow32 * pow2716; // pow(trace_generator, (safe_div((safe_mult(64649, global_values.trace_length)), 65536))). - local pow2718 = pow32 * pow2717; // pow(trace_generator, (safe_div((safe_mult(32325, global_values.trace_length)), 32768))). - local pow2719 = pow32 * pow2718; // pow(trace_generator, (safe_div((safe_mult(64651, global_values.trace_length)), 65536))). - local pow2720 = pow32 * pow2719; // pow(trace_generator, (safe_div((safe_mult(16163, global_values.trace_length)), 16384))). - local pow2721 = pow32 * pow2720; // pow(trace_generator, (safe_div((safe_mult(64653, global_values.trace_length)), 65536))). - local pow2722 = pow32 * pow2721; // pow(trace_generator, (safe_div((safe_mult(32327, global_values.trace_length)), 32768))). - local pow2723 = pow32 * pow2722; // pow(trace_generator, (safe_div((safe_mult(64655, global_values.trace_length)), 65536))). - local pow2724 = pow32 * pow2723; // pow(trace_generator, (safe_div((safe_mult(4041, global_values.trace_length)), 4096))). - local pow2725 = pow32 * pow2724; // pow(trace_generator, (safe_div((safe_mult(64657, global_values.trace_length)), 65536))). - local pow2726 = pow32 * pow2725; // pow(trace_generator, (safe_div((safe_mult(32329, global_values.trace_length)), 32768))). - local pow2727 = pow32 * pow2726; // pow(trace_generator, (safe_div((safe_mult(64659, global_values.trace_length)), 65536))). - local pow2728 = pow32 * pow2727; // pow(trace_generator, (safe_div((safe_mult(16165, global_values.trace_length)), 16384))). - local pow2729 = pow32 * pow2728; // pow(trace_generator, (safe_div((safe_mult(64661, global_values.trace_length)), 65536))). - local pow2730 = pow32 * pow2729; // pow(trace_generator, (safe_div((safe_mult(32331, global_values.trace_length)), 32768))). - local pow2731 = pow32 * pow2730; // pow(trace_generator, (safe_div((safe_mult(64663, global_values.trace_length)), 65536))). - local pow2732 = pow32 * pow2731; // pow(trace_generator, (safe_div((safe_mult(8083, global_values.trace_length)), 8192))). - local pow2733 = pow32 * pow2732; // pow(trace_generator, (safe_div((safe_mult(64665, global_values.trace_length)), 65536))). - local pow2734 = pow32 * pow2733; // pow(trace_generator, (safe_div((safe_mult(32333, global_values.trace_length)), 32768))). - local pow2735 = pow32 * pow2734; // pow(trace_generator, (safe_div((safe_mult(64667, global_values.trace_length)), 65536))). - local pow2736 = pow32 * pow2735; // pow(trace_generator, (safe_div((safe_mult(16167, global_values.trace_length)), 16384))). - local pow2737 = pow32 * pow2736; // pow(trace_generator, (safe_div((safe_mult(64669, global_values.trace_length)), 65536))). - local pow2738 = pow41 * pow2737; // pow(trace_generator, (safe_div((safe_mult(2021, global_values.trace_length)), 2048))). - local pow2739 = pow32 * pow2738; // pow(trace_generator, (safe_div((safe_mult(64673, global_values.trace_length)), 65536))). - local pow2740 = pow32 * pow2739; // pow(trace_generator, (safe_div((safe_mult(32337, global_values.trace_length)), 32768))). - local pow2741 = pow32 * pow2740; // pow(trace_generator, (safe_div((safe_mult(64675, global_values.trace_length)), 65536))). - local pow2742 = pow32 * pow2741; // pow(trace_generator, (safe_div((safe_mult(16169, global_values.trace_length)), 16384))). - local pow2743 = pow32 * pow2742; // pow(trace_generator, (safe_div((safe_mult(64677, global_values.trace_length)), 65536))). - local pow2744 = pow32 * pow2743; // pow(trace_generator, (safe_div((safe_mult(32339, global_values.trace_length)), 32768))). - local pow2745 = pow32 * pow2744; // pow(trace_generator, (safe_div((safe_mult(64679, global_values.trace_length)), 65536))). - local pow2746 = pow32 * pow2745; // pow(trace_generator, (safe_div((safe_mult(8085, global_values.trace_length)), 8192))). - local pow2747 = pow32 * pow2746; // pow(trace_generator, (safe_div((safe_mult(64681, global_values.trace_length)), 65536))). - local pow2748 = pow32 * pow2747; // pow(trace_generator, (safe_div((safe_mult(32341, global_values.trace_length)), 32768))). - local pow2749 = pow32 * pow2748; // pow(trace_generator, (safe_div((safe_mult(64683, global_values.trace_length)), 65536))). - local pow2750 = pow32 * pow2749; // pow(trace_generator, (safe_div((safe_mult(16171, global_values.trace_length)), 16384))). - local pow2751 = pow32 * pow2750; // pow(trace_generator, (safe_div((safe_mult(64685, global_values.trace_length)), 65536))). - local pow2752 = pow32 * pow2751; // pow(trace_generator, (safe_div((safe_mult(32343, global_values.trace_length)), 32768))). - local pow2753 = pow32 * pow2752; // pow(trace_generator, (safe_div((safe_mult(64687, global_values.trace_length)), 65536))). - local pow2754 = pow32 * pow2753; // pow(trace_generator, (safe_div((safe_mult(4043, global_values.trace_length)), 4096))). - local pow2755 = pow32 * pow2754; // pow(trace_generator, (safe_div((safe_mult(64689, global_values.trace_length)), 65536))). - local pow2756 = pow32 * pow2755; // pow(trace_generator, (safe_div((safe_mult(32345, global_values.trace_length)), 32768))). - local pow2757 = pow32 * pow2756; // pow(trace_generator, (safe_div((safe_mult(64691, global_values.trace_length)), 65536))). - local pow2758 = pow32 * pow2757; // pow(trace_generator, (safe_div((safe_mult(16173, global_values.trace_length)), 16384))). - local pow2759 = pow32 * pow2758; // pow(trace_generator, (safe_div((safe_mult(64693, global_values.trace_length)), 65536))). - local pow2760 = pow32 * pow2759; // pow(trace_generator, (safe_div((safe_mult(32347, global_values.trace_length)), 32768))). - local pow2761 = pow32 * pow2760; // pow(trace_generator, (safe_div((safe_mult(64695, global_values.trace_length)), 65536))). - local pow2762 = pow32 * pow2761; // pow(trace_generator, (safe_div((safe_mult(8087, global_values.trace_length)), 8192))). - local pow2763 = pow32 * pow2762; // pow(trace_generator, (safe_div((safe_mult(64697, global_values.trace_length)), 65536))). - local pow2764 = pow32 * pow2763; // pow(trace_generator, (safe_div((safe_mult(32349, global_values.trace_length)), 32768))). - local pow2765 = pow32 * pow2764; // pow(trace_generator, (safe_div((safe_mult(64699, global_values.trace_length)), 65536))). - local pow2766 = pow32 * pow2765; // pow(trace_generator, (safe_div((safe_mult(16175, global_values.trace_length)), 16384))). - local pow2767 = pow32 * pow2766; // pow(trace_generator, (safe_div((safe_mult(64701, global_values.trace_length)), 65536))). - local pow2768 = pow41 * pow2767; // pow(trace_generator, (safe_div((safe_mult(1011, global_values.trace_length)), 1024))). - local pow2769 = pow32 * pow2768; // pow(trace_generator, (safe_div((safe_mult(64705, global_values.trace_length)), 65536))). - local pow2770 = pow32 * pow2769; // pow(trace_generator, (safe_div((safe_mult(32353, global_values.trace_length)), 32768))). - local pow2771 = pow32 * pow2770; // pow(trace_generator, (safe_div((safe_mult(64707, global_values.trace_length)), 65536))). - local pow2772 = pow32 * pow2771; // pow(trace_generator, (safe_div((safe_mult(16177, global_values.trace_length)), 16384))). - local pow2773 = pow32 * pow2772; // pow(trace_generator, (safe_div((safe_mult(64709, global_values.trace_length)), 65536))). - local pow2774 = pow32 * pow2773; // pow(trace_generator, (safe_div((safe_mult(32355, global_values.trace_length)), 32768))). - local pow2775 = pow32 * pow2774; // pow(trace_generator, (safe_div((safe_mult(64711, global_values.trace_length)), 65536))). - local pow2776 = pow32 * pow2775; // pow(trace_generator, (safe_div((safe_mult(8089, global_values.trace_length)), 8192))). - local pow2777 = pow32 * pow2776; // pow(trace_generator, (safe_div((safe_mult(64713, global_values.trace_length)), 65536))). - local pow2778 = pow32 * pow2777; // pow(trace_generator, (safe_div((safe_mult(32357, global_values.trace_length)), 32768))). - local pow2779 = pow32 * pow2778; // pow(trace_generator, (safe_div((safe_mult(64715, global_values.trace_length)), 65536))). - local pow2780 = pow32 * pow2779; // pow(trace_generator, (safe_div((safe_mult(16179, global_values.trace_length)), 16384))). - local pow2781 = pow32 * pow2780; // pow(trace_generator, (safe_div((safe_mult(64717, global_values.trace_length)), 65536))). - local pow2782 = pow32 * pow2781; // pow(trace_generator, (safe_div((safe_mult(32359, global_values.trace_length)), 32768))). - local pow2783 = pow32 * pow2782; // pow(trace_generator, (safe_div((safe_mult(64719, global_values.trace_length)), 65536))). - local pow2784 = pow32 * pow2783; // pow(trace_generator, (safe_div((safe_mult(4045, global_values.trace_length)), 4096))). - local pow2785 = pow32 * pow2784; // pow(trace_generator, (safe_div((safe_mult(64721, global_values.trace_length)), 65536))). - local pow2786 = pow32 * pow2785; // pow(trace_generator, (safe_div((safe_mult(32361, global_values.trace_length)), 32768))). - local pow2787 = pow32 * pow2786; // pow(trace_generator, (safe_div((safe_mult(64723, global_values.trace_length)), 65536))). - local pow2788 = pow32 * pow2787; // pow(trace_generator, (safe_div((safe_mult(16181, global_values.trace_length)), 16384))). - local pow2789 = pow32 * pow2788; // pow(trace_generator, (safe_div((safe_mult(64725, global_values.trace_length)), 65536))). - local pow2790 = pow32 * pow2789; // pow(trace_generator, (safe_div((safe_mult(32363, global_values.trace_length)), 32768))). - local pow2791 = pow32 * pow2790; // pow(trace_generator, (safe_div((safe_mult(64727, global_values.trace_length)), 65536))). - local pow2792 = pow32 * pow2791; // pow(trace_generator, (safe_div((safe_mult(8091, global_values.trace_length)), 8192))). - local pow2793 = pow32 * pow2792; // pow(trace_generator, (safe_div((safe_mult(64729, global_values.trace_length)), 65536))). - local pow2794 = pow32 * pow2793; // pow(trace_generator, (safe_div((safe_mult(32365, global_values.trace_length)), 32768))). - local pow2795 = pow32 * pow2794; // pow(trace_generator, (safe_div((safe_mult(64731, global_values.trace_length)), 65536))). - local pow2796 = pow32 * pow2795; // pow(trace_generator, (safe_div((safe_mult(16183, global_values.trace_length)), 16384))). - local pow2797 = pow32 * pow2796; // pow(trace_generator, (safe_div((safe_mult(64733, global_values.trace_length)), 65536))). - local pow2798 = pow41 * pow2797; // pow(trace_generator, (safe_div((safe_mult(2023, global_values.trace_length)), 2048))). - local pow2799 = pow32 * pow2798; // pow(trace_generator, (safe_div((safe_mult(64737, global_values.trace_length)), 65536))). - local pow2800 = pow32 * pow2799; // pow(trace_generator, (safe_div((safe_mult(32369, global_values.trace_length)), 32768))). - local pow2801 = pow32 * pow2800; // pow(trace_generator, (safe_div((safe_mult(64739, global_values.trace_length)), 65536))). - local pow2802 = pow32 * pow2801; // pow(trace_generator, (safe_div((safe_mult(16185, global_values.trace_length)), 16384))). - local pow2803 = pow32 * pow2802; // pow(trace_generator, (safe_div((safe_mult(64741, global_values.trace_length)), 65536))). - local pow2804 = pow32 * pow2803; // pow(trace_generator, (safe_div((safe_mult(32371, global_values.trace_length)), 32768))). - local pow2805 = pow32 * pow2804; // pow(trace_generator, (safe_div((safe_mult(64743, global_values.trace_length)), 65536))). - local pow2806 = pow32 * pow2805; // pow(trace_generator, (safe_div((safe_mult(8093, global_values.trace_length)), 8192))). - local pow2807 = pow32 * pow2806; // pow(trace_generator, (safe_div((safe_mult(64745, global_values.trace_length)), 65536))). - local pow2808 = pow32 * pow2807; // pow(trace_generator, (safe_div((safe_mult(32373, global_values.trace_length)), 32768))). - local pow2809 = pow32 * pow2808; // pow(trace_generator, (safe_div((safe_mult(64747, global_values.trace_length)), 65536))). - local pow2810 = pow32 * pow2809; // pow(trace_generator, (safe_div((safe_mult(16187, global_values.trace_length)), 16384))). - local pow2811 = pow32 * pow2810; // pow(trace_generator, (safe_div((safe_mult(64749, global_values.trace_length)), 65536))). - local pow2812 = pow32 * pow2811; // pow(trace_generator, (safe_div((safe_mult(32375, global_values.trace_length)), 32768))). - local pow2813 = pow32 * pow2812; // pow(trace_generator, (safe_div((safe_mult(64751, global_values.trace_length)), 65536))). - local pow2814 = pow32 * pow2813; // pow(trace_generator, (safe_div((safe_mult(4047, global_values.trace_length)), 4096))). - local pow2815 = pow32 * pow2814; // pow(trace_generator, (safe_div((safe_mult(64753, global_values.trace_length)), 65536))). - local pow2816 = pow32 * pow2815; // pow(trace_generator, (safe_div((safe_mult(32377, global_values.trace_length)), 32768))). - local pow2817 = pow32 * pow2816; // pow(trace_generator, (safe_div((safe_mult(64755, global_values.trace_length)), 65536))). - local pow2818 = pow32 * pow2817; // pow(trace_generator, (safe_div((safe_mult(16189, global_values.trace_length)), 16384))). - local pow2819 = pow32 * pow2818; // pow(trace_generator, (safe_div((safe_mult(64757, global_values.trace_length)), 65536))). - local pow2820 = pow32 * pow2819; // pow(trace_generator, (safe_div((safe_mult(32379, global_values.trace_length)), 32768))). - local pow2821 = pow32 * pow2820; // pow(trace_generator, (safe_div((safe_mult(64759, global_values.trace_length)), 65536))). - local pow2822 = pow32 * pow2821; // pow(trace_generator, (safe_div((safe_mult(8095, global_values.trace_length)), 8192))). - local pow2823 = pow32 * pow2822; // pow(trace_generator, (safe_div((safe_mult(64761, global_values.trace_length)), 65536))). - local pow2824 = pow32 * pow2823; // pow(trace_generator, (safe_div((safe_mult(32381, global_values.trace_length)), 32768))). - local pow2825 = pow32 * pow2824; // pow(trace_generator, (safe_div((safe_mult(64763, global_values.trace_length)), 65536))). - local pow2826 = pow32 * pow2825; // pow(trace_generator, (safe_div((safe_mult(16191, global_values.trace_length)), 16384))). - local pow2827 = pow32 * pow2826; // pow(trace_generator, (safe_div((safe_mult(64765, global_values.trace_length)), 65536))). - local pow2828 = pow41 * pow2827; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 256))). - local pow2829 = pow32 * pow2828; // pow(trace_generator, (safe_div((safe_mult(64769, global_values.trace_length)), 65536))). - local pow2830 = pow32 * pow2829; // pow(trace_generator, (safe_div((safe_mult(32385, global_values.trace_length)), 32768))). - local pow2831 = pow32 * pow2830; // pow(trace_generator, (safe_div((safe_mult(64771, global_values.trace_length)), 65536))). - local pow2832 = pow32 * pow2831; // pow(trace_generator, (safe_div((safe_mult(16193, global_values.trace_length)), 16384))). - local pow2833 = pow32 * pow2832; // pow(trace_generator, (safe_div((safe_mult(64773, global_values.trace_length)), 65536))). - local pow2834 = pow32 * pow2833; // pow(trace_generator, (safe_div((safe_mult(32387, global_values.trace_length)), 32768))). - local pow2835 = pow32 * pow2834; // pow(trace_generator, (safe_div((safe_mult(64775, global_values.trace_length)), 65536))). - local pow2836 = pow32 * pow2835; // pow(trace_generator, (safe_div((safe_mult(8097, global_values.trace_length)), 8192))). - local pow2837 = pow32 * pow2836; // pow(trace_generator, (safe_div((safe_mult(64777, global_values.trace_length)), 65536))). - local pow2838 = pow32 * pow2837; // pow(trace_generator, (safe_div((safe_mult(32389, global_values.trace_length)), 32768))). - local pow2839 = pow32 * pow2838; // pow(trace_generator, (safe_div((safe_mult(64779, global_values.trace_length)), 65536))). - local pow2840 = pow32 * pow2839; // pow(trace_generator, (safe_div((safe_mult(16195, global_values.trace_length)), 16384))). - local pow2841 = pow32 * pow2840; // pow(trace_generator, (safe_div((safe_mult(64781, global_values.trace_length)), 65536))). - local pow2842 = pow32 * pow2841; // pow(trace_generator, (safe_div((safe_mult(32391, global_values.trace_length)), 32768))). - local pow2843 = pow32 * pow2842; // pow(trace_generator, (safe_div((safe_mult(64783, global_values.trace_length)), 65536))). - local pow2844 = pow32 * pow2843; // pow(trace_generator, (safe_div((safe_mult(4049, global_values.trace_length)), 4096))). - local pow2845 = pow32 * pow2844; // pow(trace_generator, (safe_div((safe_mult(64785, global_values.trace_length)), 65536))). - local pow2846 = pow32 * pow2845; // pow(trace_generator, (safe_div((safe_mult(32393, global_values.trace_length)), 32768))). - local pow2847 = pow32 * pow2846; // pow(trace_generator, (safe_div((safe_mult(64787, global_values.trace_length)), 65536))). - local pow2848 = pow32 * pow2847; // pow(trace_generator, (safe_div((safe_mult(16197, global_values.trace_length)), 16384))). - local pow2849 = pow32 * pow2848; // pow(trace_generator, (safe_div((safe_mult(64789, global_values.trace_length)), 65536))). - local pow2850 = pow32 * pow2849; // pow(trace_generator, (safe_div((safe_mult(32395, global_values.trace_length)), 32768))). - local pow2851 = pow32 * pow2850; // pow(trace_generator, (safe_div((safe_mult(64791, global_values.trace_length)), 65536))). - local pow2852 = pow32 * pow2851; // pow(trace_generator, (safe_div((safe_mult(8099, global_values.trace_length)), 8192))). - local pow2853 = pow32 * pow2852; // pow(trace_generator, (safe_div((safe_mult(64793, global_values.trace_length)), 65536))). - local pow2854 = pow32 * pow2853; // pow(trace_generator, (safe_div((safe_mult(32397, global_values.trace_length)), 32768))). - local pow2855 = pow32 * pow2854; // pow(trace_generator, (safe_div((safe_mult(64795, global_values.trace_length)), 65536))). - local pow2856 = pow32 * pow2855; // pow(trace_generator, (safe_div((safe_mult(16199, global_values.trace_length)), 16384))). - local pow2857 = pow32 * pow2856; // pow(trace_generator, (safe_div((safe_mult(64797, global_values.trace_length)), 65536))). - local pow2858 = pow41 * pow2857; // pow(trace_generator, (safe_div((safe_mult(2025, global_values.trace_length)), 2048))). - local pow2859 = pow32 * pow2858; // pow(trace_generator, (safe_div((safe_mult(64801, global_values.trace_length)), 65536))). - local pow2860 = pow32 * pow2859; // pow(trace_generator, (safe_div((safe_mult(32401, global_values.trace_length)), 32768))). - local pow2861 = pow32 * pow2860; // pow(trace_generator, (safe_div((safe_mult(64803, global_values.trace_length)), 65536))). - local pow2862 = pow32 * pow2861; // pow(trace_generator, (safe_div((safe_mult(16201, global_values.trace_length)), 16384))). - local pow2863 = pow32 * pow2862; // pow(trace_generator, (safe_div((safe_mult(64805, global_values.trace_length)), 65536))). - local pow2864 = pow32 * pow2863; // pow(trace_generator, (safe_div((safe_mult(32403, global_values.trace_length)), 32768))). - local pow2865 = pow32 * pow2864; // pow(trace_generator, (safe_div((safe_mult(64807, global_values.trace_length)), 65536))). - local pow2866 = pow32 * pow2865; // pow(trace_generator, (safe_div((safe_mult(8101, global_values.trace_length)), 8192))). - local pow2867 = pow32 * pow2866; // pow(trace_generator, (safe_div((safe_mult(64809, global_values.trace_length)), 65536))). - local pow2868 = pow32 * pow2867; // pow(trace_generator, (safe_div((safe_mult(32405, global_values.trace_length)), 32768))). - local pow2869 = pow32 * pow2868; // pow(trace_generator, (safe_div((safe_mult(64811, global_values.trace_length)), 65536))). - local pow2870 = pow32 * pow2869; // pow(trace_generator, (safe_div((safe_mult(16203, global_values.trace_length)), 16384))). - local pow2871 = pow32 * pow2870; // pow(trace_generator, (safe_div((safe_mult(64813, global_values.trace_length)), 65536))). - local pow2872 = pow32 * pow2871; // pow(trace_generator, (safe_div((safe_mult(32407, global_values.trace_length)), 32768))). - local pow2873 = pow32 * pow2872; // pow(trace_generator, (safe_div((safe_mult(64815, global_values.trace_length)), 65536))). - local pow2874 = pow32 * pow2873; // pow(trace_generator, (safe_div((safe_mult(4051, global_values.trace_length)), 4096))). - local pow2875 = pow32 * pow2874; // pow(trace_generator, (safe_div((safe_mult(64817, global_values.trace_length)), 65536))). - local pow2876 = pow32 * pow2875; // pow(trace_generator, (safe_div((safe_mult(32409, global_values.trace_length)), 32768))). - local pow2877 = pow32 * pow2876; // pow(trace_generator, (safe_div((safe_mult(64819, global_values.trace_length)), 65536))). - local pow2878 = pow32 * pow2877; // pow(trace_generator, (safe_div((safe_mult(16205, global_values.trace_length)), 16384))). - local pow2879 = pow32 * pow2878; // pow(trace_generator, (safe_div((safe_mult(64821, global_values.trace_length)), 65536))). - local pow2880 = pow32 * pow2879; // pow(trace_generator, (safe_div((safe_mult(32411, global_values.trace_length)), 32768))). - local pow2881 = pow32 * pow2880; // pow(trace_generator, (safe_div((safe_mult(64823, global_values.trace_length)), 65536))). - local pow2882 = pow32 * pow2881; // pow(trace_generator, (safe_div((safe_mult(8103, global_values.trace_length)), 8192))). - local pow2883 = pow32 * pow2882; // pow(trace_generator, (safe_div((safe_mult(64825, global_values.trace_length)), 65536))). - local pow2884 = pow32 * pow2883; // pow(trace_generator, (safe_div((safe_mult(32413, global_values.trace_length)), 32768))). - local pow2885 = pow32 * pow2884; // pow(trace_generator, (safe_div((safe_mult(64827, global_values.trace_length)), 65536))). - local pow2886 = pow32 * pow2885; // pow(trace_generator, (safe_div((safe_mult(16207, global_values.trace_length)), 16384))). - local pow2887 = pow32 * pow2886; // pow(trace_generator, (safe_div((safe_mult(64829, global_values.trace_length)), 65536))). - local pow2888 = pow41 * pow2887; // pow(trace_generator, (safe_div((safe_mult(1013, global_values.trace_length)), 1024))). - local pow2889 = pow32 * pow2888; // pow(trace_generator, (safe_div((safe_mult(64833, global_values.trace_length)), 65536))). - local pow2890 = pow32 * pow2889; // pow(trace_generator, (safe_div((safe_mult(32417, global_values.trace_length)), 32768))). - local pow2891 = pow32 * pow2890; // pow(trace_generator, (safe_div((safe_mult(64835, global_values.trace_length)), 65536))). - local pow2892 = pow32 * pow2891; // pow(trace_generator, (safe_div((safe_mult(16209, global_values.trace_length)), 16384))). - local pow2893 = pow32 * pow2892; // pow(trace_generator, (safe_div((safe_mult(64837, global_values.trace_length)), 65536))). - local pow2894 = pow32 * pow2893; // pow(trace_generator, (safe_div((safe_mult(32419, global_values.trace_length)), 32768))). - local pow2895 = pow32 * pow2894; // pow(trace_generator, (safe_div((safe_mult(64839, global_values.trace_length)), 65536))). - local pow2896 = pow32 * pow2895; // pow(trace_generator, (safe_div((safe_mult(8105, global_values.trace_length)), 8192))). - local pow2897 = pow32 * pow2896; // pow(trace_generator, (safe_div((safe_mult(64841, global_values.trace_length)), 65536))). - local pow2898 = pow32 * pow2897; // pow(trace_generator, (safe_div((safe_mult(32421, global_values.trace_length)), 32768))). - local pow2899 = pow32 * pow2898; // pow(trace_generator, (safe_div((safe_mult(64843, global_values.trace_length)), 65536))). - local pow2900 = pow32 * pow2899; // pow(trace_generator, (safe_div((safe_mult(16211, global_values.trace_length)), 16384))). - local pow2901 = pow32 * pow2900; // pow(trace_generator, (safe_div((safe_mult(64845, global_values.trace_length)), 65536))). - local pow2902 = pow32 * pow2901; // pow(trace_generator, (safe_div((safe_mult(32423, global_values.trace_length)), 32768))). - local pow2903 = pow32 * pow2902; // pow(trace_generator, (safe_div((safe_mult(64847, global_values.trace_length)), 65536))). - local pow2904 = pow32 * pow2903; // pow(trace_generator, (safe_div((safe_mult(4053, global_values.trace_length)), 4096))). - local pow2905 = pow32 * pow2904; // pow(trace_generator, (safe_div((safe_mult(64849, global_values.trace_length)), 65536))). - local pow2906 = pow32 * pow2905; // pow(trace_generator, (safe_div((safe_mult(32425, global_values.trace_length)), 32768))). - local pow2907 = pow32 * pow2906; // pow(trace_generator, (safe_div((safe_mult(64851, global_values.trace_length)), 65536))). - local pow2908 = pow32 * pow2907; // pow(trace_generator, (safe_div((safe_mult(16213, global_values.trace_length)), 16384))). - local pow2909 = pow32 * pow2908; // pow(trace_generator, (safe_div((safe_mult(64853, global_values.trace_length)), 65536))). - local pow2910 = pow32 * pow2909; // pow(trace_generator, (safe_div((safe_mult(32427, global_values.trace_length)), 32768))). - local pow2911 = pow32 * pow2910; // pow(trace_generator, (safe_div((safe_mult(64855, global_values.trace_length)), 65536))). - local pow2912 = pow32 * pow2911; // pow(trace_generator, (safe_div((safe_mult(8107, global_values.trace_length)), 8192))). - local pow2913 = pow32 * pow2912; // pow(trace_generator, (safe_div((safe_mult(64857, global_values.trace_length)), 65536))). - local pow2914 = pow32 * pow2913; // pow(trace_generator, (safe_div((safe_mult(32429, global_values.trace_length)), 32768))). - local pow2915 = pow32 * pow2914; // pow(trace_generator, (safe_div((safe_mult(64859, global_values.trace_length)), 65536))). - local pow2916 = pow32 * pow2915; // pow(trace_generator, (safe_div((safe_mult(16215, global_values.trace_length)), 16384))). - local pow2917 = pow32 * pow2916; // pow(trace_generator, (safe_div((safe_mult(64861, global_values.trace_length)), 65536))). - local pow2918 = pow41 * pow2917; // pow(trace_generator, (safe_div((safe_mult(2027, global_values.trace_length)), 2048))). - local pow2919 = pow32 * pow2918; // pow(trace_generator, (safe_div((safe_mult(64865, global_values.trace_length)), 65536))). - local pow2920 = pow32 * pow2919; // pow(trace_generator, (safe_div((safe_mult(32433, global_values.trace_length)), 32768))). - local pow2921 = pow32 * pow2920; // pow(trace_generator, (safe_div((safe_mult(64867, global_values.trace_length)), 65536))). - local pow2922 = pow32 * pow2921; // pow(trace_generator, (safe_div((safe_mult(16217, global_values.trace_length)), 16384))). - local pow2923 = pow32 * pow2922; // pow(trace_generator, (safe_div((safe_mult(64869, global_values.trace_length)), 65536))). - local pow2924 = pow32 * pow2923; // pow(trace_generator, (safe_div((safe_mult(32435, global_values.trace_length)), 32768))). - local pow2925 = pow32 * pow2924; // pow(trace_generator, (safe_div((safe_mult(64871, global_values.trace_length)), 65536))). - local pow2926 = pow32 * pow2925; // pow(trace_generator, (safe_div((safe_mult(8109, global_values.trace_length)), 8192))). - local pow2927 = pow32 * pow2926; // pow(trace_generator, (safe_div((safe_mult(64873, global_values.trace_length)), 65536))). - local pow2928 = pow32 * pow2927; // pow(trace_generator, (safe_div((safe_mult(32437, global_values.trace_length)), 32768))). - local pow2929 = pow32 * pow2928; // pow(trace_generator, (safe_div((safe_mult(64875, global_values.trace_length)), 65536))). - local pow2930 = pow32 * pow2929; // pow(trace_generator, (safe_div((safe_mult(16219, global_values.trace_length)), 16384))). - local pow2931 = pow32 * pow2930; // pow(trace_generator, (safe_div((safe_mult(64877, global_values.trace_length)), 65536))). - local pow2932 = pow32 * pow2931; // pow(trace_generator, (safe_div((safe_mult(32439, global_values.trace_length)), 32768))). - local pow2933 = pow32 * pow2932; // pow(trace_generator, (safe_div((safe_mult(64879, global_values.trace_length)), 65536))). - local pow2934 = pow32 * pow2933; // pow(trace_generator, (safe_div((safe_mult(4055, global_values.trace_length)), 4096))). - local pow2935 = pow32 * pow2934; // pow(trace_generator, (safe_div((safe_mult(64881, global_values.trace_length)), 65536))). - local pow2936 = pow32 * pow2935; // pow(trace_generator, (safe_div((safe_mult(32441, global_values.trace_length)), 32768))). - local pow2937 = pow32 * pow2936; // pow(trace_generator, (safe_div((safe_mult(64883, global_values.trace_length)), 65536))). - local pow2938 = pow32 * pow2937; // pow(trace_generator, (safe_div((safe_mult(16221, global_values.trace_length)), 16384))). - local pow2939 = pow32 * pow2938; // pow(trace_generator, (safe_div((safe_mult(64885, global_values.trace_length)), 65536))). - local pow2940 = pow32 * pow2939; // pow(trace_generator, (safe_div((safe_mult(32443, global_values.trace_length)), 32768))). - local pow2941 = pow32 * pow2940; // pow(trace_generator, (safe_div((safe_mult(64887, global_values.trace_length)), 65536))). - local pow2942 = pow32 * pow2941; // pow(trace_generator, (safe_div((safe_mult(8111, global_values.trace_length)), 8192))). - local pow2943 = pow32 * pow2942; // pow(trace_generator, (safe_div((safe_mult(64889, global_values.trace_length)), 65536))). - local pow2944 = pow32 * pow2943; // pow(trace_generator, (safe_div((safe_mult(32445, global_values.trace_length)), 32768))). - local pow2945 = pow32 * pow2944; // pow(trace_generator, (safe_div((safe_mult(64891, global_values.trace_length)), 65536))). - local pow2946 = pow32 * pow2945; // pow(trace_generator, (safe_div((safe_mult(16223, global_values.trace_length)), 16384))). - local pow2947 = pow32 * pow2946; // pow(trace_generator, (safe_div((safe_mult(64893, global_values.trace_length)), 65536))). - local pow2948 = pow41 * pow2947; // pow(trace_generator, (safe_div((safe_mult(507, global_values.trace_length)), 512))). - local pow2949 = pow32 * pow2948; // pow(trace_generator, (safe_div((safe_mult(64897, global_values.trace_length)), 65536))). - local pow2950 = pow32 * pow2949; // pow(trace_generator, (safe_div((safe_mult(32449, global_values.trace_length)), 32768))). - local pow2951 = pow32 * pow2950; // pow(trace_generator, (safe_div((safe_mult(64899, global_values.trace_length)), 65536))). - local pow2952 = pow32 * pow2951; // pow(trace_generator, (safe_div((safe_mult(16225, global_values.trace_length)), 16384))). - local pow2953 = pow32 * pow2952; // pow(trace_generator, (safe_div((safe_mult(64901, global_values.trace_length)), 65536))). - local pow2954 = pow32 * pow2953; // pow(trace_generator, (safe_div((safe_mult(32451, global_values.trace_length)), 32768))). - local pow2955 = pow32 * pow2954; // pow(trace_generator, (safe_div((safe_mult(64903, global_values.trace_length)), 65536))). - local pow2956 = pow32 * pow2955; // pow(trace_generator, (safe_div((safe_mult(8113, global_values.trace_length)), 8192))). - local pow2957 = pow32 * pow2956; // pow(trace_generator, (safe_div((safe_mult(64905, global_values.trace_length)), 65536))). - local pow2958 = pow32 * pow2957; // pow(trace_generator, (safe_div((safe_mult(32453, global_values.trace_length)), 32768))). - local pow2959 = pow32 * pow2958; // pow(trace_generator, (safe_div((safe_mult(64907, global_values.trace_length)), 65536))). - local pow2960 = pow32 * pow2959; // pow(trace_generator, (safe_div((safe_mult(16227, global_values.trace_length)), 16384))). - local pow2961 = pow32 * pow2960; // pow(trace_generator, (safe_div((safe_mult(64909, global_values.trace_length)), 65536))). - local pow2962 = pow32 * pow2961; // pow(trace_generator, (safe_div((safe_mult(32455, global_values.trace_length)), 32768))). - local pow2963 = pow32 * pow2962; // pow(trace_generator, (safe_div((safe_mult(64911, global_values.trace_length)), 65536))). - local pow2964 = pow32 * pow2963; // pow(trace_generator, (safe_div((safe_mult(4057, global_values.trace_length)), 4096))). - local pow2965 = pow32 * pow2964; // pow(trace_generator, (safe_div((safe_mult(64913, global_values.trace_length)), 65536))). - local pow2966 = pow32 * pow2965; // pow(trace_generator, (safe_div((safe_mult(32457, global_values.trace_length)), 32768))). - local pow2967 = pow32 * pow2966; // pow(trace_generator, (safe_div((safe_mult(64915, global_values.trace_length)), 65536))). - local pow2968 = pow32 * pow2967; // pow(trace_generator, (safe_div((safe_mult(16229, global_values.trace_length)), 16384))). - local pow2969 = pow32 * pow2968; // pow(trace_generator, (safe_div((safe_mult(64917, global_values.trace_length)), 65536))). - local pow2970 = pow32 * pow2969; // pow(trace_generator, (safe_div((safe_mult(32459, global_values.trace_length)), 32768))). - local pow2971 = pow32 * pow2970; // pow(trace_generator, (safe_div((safe_mult(64919, global_values.trace_length)), 65536))). - local pow2972 = pow32 * pow2971; // pow(trace_generator, (safe_div((safe_mult(8115, global_values.trace_length)), 8192))). - local pow2973 = pow32 * pow2972; // pow(trace_generator, (safe_div((safe_mult(64921, global_values.trace_length)), 65536))). - local pow2974 = pow32 * pow2973; // pow(trace_generator, (safe_div((safe_mult(32461, global_values.trace_length)), 32768))). - local pow2975 = pow32 * pow2974; // pow(trace_generator, (safe_div((safe_mult(64923, global_values.trace_length)), 65536))). - local pow2976 = pow32 * pow2975; // pow(trace_generator, (safe_div((safe_mult(16231, global_values.trace_length)), 16384))). - local pow2977 = pow32 * pow2976; // pow(trace_generator, (safe_div((safe_mult(64925, global_values.trace_length)), 65536))). - local pow2978 = pow41 * pow2977; // pow(trace_generator, (safe_div((safe_mult(2029, global_values.trace_length)), 2048))). - local pow2979 = pow32 * pow2978; // pow(trace_generator, (safe_div((safe_mult(64929, global_values.trace_length)), 65536))). - local pow2980 = pow32 * pow2979; // pow(trace_generator, (safe_div((safe_mult(32465, global_values.trace_length)), 32768))). - local pow2981 = pow32 * pow2980; // pow(trace_generator, (safe_div((safe_mult(64931, global_values.trace_length)), 65536))). - local pow2982 = pow32 * pow2981; // pow(trace_generator, (safe_div((safe_mult(16233, global_values.trace_length)), 16384))). - local pow2983 = pow32 * pow2982; // pow(trace_generator, (safe_div((safe_mult(64933, global_values.trace_length)), 65536))). - local pow2984 = pow32 * pow2983; // pow(trace_generator, (safe_div((safe_mult(32467, global_values.trace_length)), 32768))). - local pow2985 = pow32 * pow2984; // pow(trace_generator, (safe_div((safe_mult(64935, global_values.trace_length)), 65536))). - local pow2986 = pow32 * pow2985; // pow(trace_generator, (safe_div((safe_mult(8117, global_values.trace_length)), 8192))). - local pow2987 = pow32 * pow2986; // pow(trace_generator, (safe_div((safe_mult(64937, global_values.trace_length)), 65536))). - local pow2988 = pow32 * pow2987; // pow(trace_generator, (safe_div((safe_mult(32469, global_values.trace_length)), 32768))). - local pow2989 = pow32 * pow2988; // pow(trace_generator, (safe_div((safe_mult(64939, global_values.trace_length)), 65536))). - local pow2990 = pow32 * pow2989; // pow(trace_generator, (safe_div((safe_mult(16235, global_values.trace_length)), 16384))). - local pow2991 = pow32 * pow2990; // pow(trace_generator, (safe_div((safe_mult(64941, global_values.trace_length)), 65536))). - local pow2992 = pow32 * pow2991; // pow(trace_generator, (safe_div((safe_mult(32471, global_values.trace_length)), 32768))). - local pow2993 = pow32 * pow2992; // pow(trace_generator, (safe_div((safe_mult(64943, global_values.trace_length)), 65536))). - local pow2994 = pow32 * pow2993; // pow(trace_generator, (safe_div((safe_mult(4059, global_values.trace_length)), 4096))). - local pow2995 = pow32 * pow2994; // pow(trace_generator, (safe_div((safe_mult(64945, global_values.trace_length)), 65536))). - local pow2996 = pow32 * pow2995; // pow(trace_generator, (safe_div((safe_mult(32473, global_values.trace_length)), 32768))). - local pow2997 = pow32 * pow2996; // pow(trace_generator, (safe_div((safe_mult(64947, global_values.trace_length)), 65536))). - local pow2998 = pow32 * pow2997; // pow(trace_generator, (safe_div((safe_mult(16237, global_values.trace_length)), 16384))). - local pow2999 = pow32 * pow2998; // pow(trace_generator, (safe_div((safe_mult(64949, global_values.trace_length)), 65536))). - local pow3000 = pow32 * pow2999; // pow(trace_generator, (safe_div((safe_mult(32475, global_values.trace_length)), 32768))). - local pow3001 = pow32 * pow3000; // pow(trace_generator, (safe_div((safe_mult(64951, global_values.trace_length)), 65536))). - local pow3002 = pow32 * pow3001; // pow(trace_generator, (safe_div((safe_mult(8119, global_values.trace_length)), 8192))). - local pow3003 = pow32 * pow3002; // pow(trace_generator, (safe_div((safe_mult(64953, global_values.trace_length)), 65536))). - local pow3004 = pow32 * pow3003; // pow(trace_generator, (safe_div((safe_mult(32477, global_values.trace_length)), 32768))). - local pow3005 = pow32 * pow3004; // pow(trace_generator, (safe_div((safe_mult(64955, global_values.trace_length)), 65536))). - local pow3006 = pow32 * pow3005; // pow(trace_generator, (safe_div((safe_mult(16239, global_values.trace_length)), 16384))). - local pow3007 = pow32 * pow3006; // pow(trace_generator, (safe_div((safe_mult(64957, global_values.trace_length)), 65536))). - local pow3008 = pow41 * pow3007; // pow(trace_generator, (safe_div((safe_mult(1015, global_values.trace_length)), 1024))). - local pow3009 = pow32 * pow3008; // pow(trace_generator, (safe_div((safe_mult(64961, global_values.trace_length)), 65536))). - local pow3010 = pow32 * pow3009; // pow(trace_generator, (safe_div((safe_mult(32481, global_values.trace_length)), 32768))). - local pow3011 = pow32 * pow3010; // pow(trace_generator, (safe_div((safe_mult(64963, global_values.trace_length)), 65536))). - local pow3012 = pow32 * pow3011; // pow(trace_generator, (safe_div((safe_mult(16241, global_values.trace_length)), 16384))). - local pow3013 = pow32 * pow3012; // pow(trace_generator, (safe_div((safe_mult(64965, global_values.trace_length)), 65536))). - local pow3014 = pow32 * pow3013; // pow(trace_generator, (safe_div((safe_mult(32483, global_values.trace_length)), 32768))). - local pow3015 = pow32 * pow3014; // pow(trace_generator, (safe_div((safe_mult(64967, global_values.trace_length)), 65536))). - local pow3016 = pow32 * pow3015; // pow(trace_generator, (safe_div((safe_mult(8121, global_values.trace_length)), 8192))). - local pow3017 = pow32 * pow3016; // pow(trace_generator, (safe_div((safe_mult(64969, global_values.trace_length)), 65536))). - local pow3018 = pow32 * pow3017; // pow(trace_generator, (safe_div((safe_mult(32485, global_values.trace_length)), 32768))). - local pow3019 = pow32 * pow3018; // pow(trace_generator, (safe_div((safe_mult(64971, global_values.trace_length)), 65536))). - local pow3020 = pow32 * pow3019; // pow(trace_generator, (safe_div((safe_mult(16243, global_values.trace_length)), 16384))). - local pow3021 = pow32 * pow3020; // pow(trace_generator, (safe_div((safe_mult(64973, global_values.trace_length)), 65536))). - local pow3022 = pow32 * pow3021; // pow(trace_generator, (safe_div((safe_mult(32487, global_values.trace_length)), 32768))). - local pow3023 = pow32 * pow3022; // pow(trace_generator, (safe_div((safe_mult(64975, global_values.trace_length)), 65536))). - local pow3024 = pow32 * pow3023; // pow(trace_generator, (safe_div((safe_mult(4061, global_values.trace_length)), 4096))). - local pow3025 = pow32 * pow3024; // pow(trace_generator, (safe_div((safe_mult(64977, global_values.trace_length)), 65536))). - local pow3026 = pow32 * pow3025; // pow(trace_generator, (safe_div((safe_mult(32489, global_values.trace_length)), 32768))). - local pow3027 = pow32 * pow3026; // pow(trace_generator, (safe_div((safe_mult(64979, global_values.trace_length)), 65536))). - local pow3028 = pow32 * pow3027; // pow(trace_generator, (safe_div((safe_mult(16245, global_values.trace_length)), 16384))). - local pow3029 = pow32 * pow3028; // pow(trace_generator, (safe_div((safe_mult(64981, global_values.trace_length)), 65536))). - local pow3030 = pow32 * pow3029; // pow(trace_generator, (safe_div((safe_mult(32491, global_values.trace_length)), 32768))). - local pow3031 = pow32 * pow3030; // pow(trace_generator, (safe_div((safe_mult(64983, global_values.trace_length)), 65536))). - local pow3032 = pow32 * pow3031; // pow(trace_generator, (safe_div((safe_mult(8123, global_values.trace_length)), 8192))). - local pow3033 = pow32 * pow3032; // pow(trace_generator, (safe_div((safe_mult(64985, global_values.trace_length)), 65536))). - local pow3034 = pow32 * pow3033; // pow(trace_generator, (safe_div((safe_mult(32493, global_values.trace_length)), 32768))). - local pow3035 = pow32 * pow3034; // pow(trace_generator, (safe_div((safe_mult(64987, global_values.trace_length)), 65536))). - local pow3036 = pow32 * pow3035; // pow(trace_generator, (safe_div((safe_mult(16247, global_values.trace_length)), 16384))). - local pow3037 = pow32 * pow3036; // pow(trace_generator, (safe_div((safe_mult(64989, global_values.trace_length)), 65536))). - local pow3038 = pow41 * pow3037; // pow(trace_generator, (safe_div((safe_mult(2031, global_values.trace_length)), 2048))). - local pow3039 = pow32 * pow3038; // pow(trace_generator, (safe_div((safe_mult(64993, global_values.trace_length)), 65536))). - local pow3040 = pow32 * pow3039; // pow(trace_generator, (safe_div((safe_mult(32497, global_values.trace_length)), 32768))). - local pow3041 = pow32 * pow3040; // pow(trace_generator, (safe_div((safe_mult(64995, global_values.trace_length)), 65536))). - local pow3042 = pow32 * pow3041; // pow(trace_generator, (safe_div((safe_mult(16249, global_values.trace_length)), 16384))). - local pow3043 = pow32 * pow3042; // pow(trace_generator, (safe_div((safe_mult(64997, global_values.trace_length)), 65536))). - local pow3044 = pow32 * pow3043; // pow(trace_generator, (safe_div((safe_mult(32499, global_values.trace_length)), 32768))). - local pow3045 = pow32 * pow3044; // pow(trace_generator, (safe_div((safe_mult(64999, global_values.trace_length)), 65536))). - local pow3046 = pow32 * pow3045; // pow(trace_generator, (safe_div((safe_mult(8125, global_values.trace_length)), 8192))). - local pow3047 = pow32 * pow3046; // pow(trace_generator, (safe_div((safe_mult(65001, global_values.trace_length)), 65536))). - local pow3048 = pow32 * pow3047; // pow(trace_generator, (safe_div((safe_mult(32501, global_values.trace_length)), 32768))). - local pow3049 = pow32 * pow3048; // pow(trace_generator, (safe_div((safe_mult(65003, global_values.trace_length)), 65536))). - local pow3050 = pow32 * pow3049; // pow(trace_generator, (safe_div((safe_mult(16251, global_values.trace_length)), 16384))). - local pow3051 = pow32 * pow3050; // pow(trace_generator, (safe_div((safe_mult(65005, global_values.trace_length)), 65536))). - local pow3052 = pow32 * pow3051; // pow(trace_generator, (safe_div((safe_mult(32503, global_values.trace_length)), 32768))). - local pow3053 = pow32 * pow3052; // pow(trace_generator, (safe_div((safe_mult(65007, global_values.trace_length)), 65536))). - local pow3054 = pow32 * pow3053; // pow(trace_generator, (safe_div((safe_mult(4063, global_values.trace_length)), 4096))). - local pow3055 = pow32 * pow3054; // pow(trace_generator, (safe_div((safe_mult(65009, global_values.trace_length)), 65536))). - local pow3056 = pow32 * pow3055; // pow(trace_generator, (safe_div((safe_mult(32505, global_values.trace_length)), 32768))). - local pow3057 = pow32 * pow3056; // pow(trace_generator, (safe_div((safe_mult(65011, global_values.trace_length)), 65536))). - local pow3058 = pow32 * pow3057; // pow(trace_generator, (safe_div((safe_mult(16253, global_values.trace_length)), 16384))). - local pow3059 = pow32 * pow3058; // pow(trace_generator, (safe_div((safe_mult(65013, global_values.trace_length)), 65536))). - local pow3060 = pow32 * pow3059; // pow(trace_generator, (safe_div((safe_mult(32507, global_values.trace_length)), 32768))). - local pow3061 = pow32 * pow3060; // pow(trace_generator, (safe_div((safe_mult(65015, global_values.trace_length)), 65536))). - local pow3062 = pow32 * pow3061; // pow(trace_generator, (safe_div((safe_mult(8127, global_values.trace_length)), 8192))). - local pow3063 = pow32 * pow3062; // pow(trace_generator, (safe_div((safe_mult(65017, global_values.trace_length)), 65536))). - local pow3064 = pow32 * pow3063; // pow(trace_generator, (safe_div((safe_mult(32509, global_values.trace_length)), 32768))). - local pow3065 = pow32 * pow3064; // pow(trace_generator, (safe_div((safe_mult(65019, global_values.trace_length)), 65536))). - local pow3066 = pow32 * pow3065; // pow(trace_generator, (safe_div((safe_mult(16255, global_values.trace_length)), 16384))). - local pow3067 = pow32 * pow3066; // pow(trace_generator, (safe_div((safe_mult(65021, global_values.trace_length)), 65536))). - local pow3068 = pow41 * pow3067; // pow(trace_generator, (safe_div((safe_mult(127, global_values.trace_length)), 128))). - local pow3069 = pow32 * pow3068; // pow(trace_generator, (safe_div((safe_mult(65025, global_values.trace_length)), 65536))). - local pow3070 = pow32 * pow3069; // pow(trace_generator, (safe_div((safe_mult(32513, global_values.trace_length)), 32768))). - local pow3071 = pow32 * pow3070; // pow(trace_generator, (safe_div((safe_mult(65027, global_values.trace_length)), 65536))). - local pow3072 = pow32 * pow3071; // pow(trace_generator, (safe_div((safe_mult(16257, global_values.trace_length)), 16384))). - local pow3073 = pow32 * pow3072; // pow(trace_generator, (safe_div((safe_mult(65029, global_values.trace_length)), 65536))). - local pow3074 = pow32 * pow3073; // pow(trace_generator, (safe_div((safe_mult(32515, global_values.trace_length)), 32768))). - local pow3075 = pow32 * pow3074; // pow(trace_generator, (safe_div((safe_mult(65031, global_values.trace_length)), 65536))). - local pow3076 = pow32 * pow3075; // pow(trace_generator, (safe_div((safe_mult(8129, global_values.trace_length)), 8192))). - local pow3077 = pow32 * pow3076; // pow(trace_generator, (safe_div((safe_mult(65033, global_values.trace_length)), 65536))). - local pow3078 = pow32 * pow3077; // pow(trace_generator, (safe_div((safe_mult(32517, global_values.trace_length)), 32768))). - local pow3079 = pow32 * pow3078; // pow(trace_generator, (safe_div((safe_mult(65035, global_values.trace_length)), 65536))). - local pow3080 = pow32 * pow3079; // pow(trace_generator, (safe_div((safe_mult(16259, global_values.trace_length)), 16384))). - local pow3081 = pow32 * pow3080; // pow(trace_generator, (safe_div((safe_mult(65037, global_values.trace_length)), 65536))). - local pow3082 = pow32 * pow3081; // pow(trace_generator, (safe_div((safe_mult(32519, global_values.trace_length)), 32768))). - local pow3083 = pow32 * pow3082; // pow(trace_generator, (safe_div((safe_mult(65039, global_values.trace_length)), 65536))). - local pow3084 = pow32 * pow3083; // pow(trace_generator, (safe_div((safe_mult(4065, global_values.trace_length)), 4096))). - local pow3085 = pow32 * pow3084; // pow(trace_generator, (safe_div((safe_mult(65041, global_values.trace_length)), 65536))). - local pow3086 = pow32 * pow3085; // pow(trace_generator, (safe_div((safe_mult(32521, global_values.trace_length)), 32768))). - local pow3087 = pow32 * pow3086; // pow(trace_generator, (safe_div((safe_mult(65043, global_values.trace_length)), 65536))). - local pow3088 = pow32 * pow3087; // pow(trace_generator, (safe_div((safe_mult(16261, global_values.trace_length)), 16384))). - local pow3089 = pow32 * pow3088; // pow(trace_generator, (safe_div((safe_mult(65045, global_values.trace_length)), 65536))). - local pow3090 = pow32 * pow3089; // pow(trace_generator, (safe_div((safe_mult(32523, global_values.trace_length)), 32768))). - local pow3091 = pow32 * pow3090; // pow(trace_generator, (safe_div((safe_mult(65047, global_values.trace_length)), 65536))). - local pow3092 = pow32 * pow3091; // pow(trace_generator, (safe_div((safe_mult(8131, global_values.trace_length)), 8192))). - local pow3093 = pow32 * pow3092; // pow(trace_generator, (safe_div((safe_mult(65049, global_values.trace_length)), 65536))). - local pow3094 = pow32 * pow3093; // pow(trace_generator, (safe_div((safe_mult(32525, global_values.trace_length)), 32768))). - local pow3095 = pow32 * pow3094; // pow(trace_generator, (safe_div((safe_mult(65051, global_values.trace_length)), 65536))). - local pow3096 = pow32 * pow3095; // pow(trace_generator, (safe_div((safe_mult(16263, global_values.trace_length)), 16384))). - local pow3097 = pow32 * pow3096; // pow(trace_generator, (safe_div((safe_mult(65053, global_values.trace_length)), 65536))). - local pow3098 = pow41 * pow3097; // pow(trace_generator, (safe_div((safe_mult(2033, global_values.trace_length)), 2048))). - local pow3099 = pow32 * pow3098; // pow(trace_generator, (safe_div((safe_mult(65057, global_values.trace_length)), 65536))). - local pow3100 = pow32 * pow3099; // pow(trace_generator, (safe_div((safe_mult(32529, global_values.trace_length)), 32768))). - local pow3101 = pow32 * pow3100; // pow(trace_generator, (safe_div((safe_mult(65059, global_values.trace_length)), 65536))). - local pow3102 = pow32 * pow3101; // pow(trace_generator, (safe_div((safe_mult(16265, global_values.trace_length)), 16384))). - local pow3103 = pow32 * pow3102; // pow(trace_generator, (safe_div((safe_mult(65061, global_values.trace_length)), 65536))). - local pow3104 = pow32 * pow3103; // pow(trace_generator, (safe_div((safe_mult(32531, global_values.trace_length)), 32768))). - local pow3105 = pow32 * pow3104; // pow(trace_generator, (safe_div((safe_mult(65063, global_values.trace_length)), 65536))). - local pow3106 = pow32 * pow3105; // pow(trace_generator, (safe_div((safe_mult(8133, global_values.trace_length)), 8192))). - local pow3107 = pow32 * pow3106; // pow(trace_generator, (safe_div((safe_mult(65065, global_values.trace_length)), 65536))). - local pow3108 = pow32 * pow3107; // pow(trace_generator, (safe_div((safe_mult(32533, global_values.trace_length)), 32768))). - local pow3109 = pow32 * pow3108; // pow(trace_generator, (safe_div((safe_mult(65067, global_values.trace_length)), 65536))). - local pow3110 = pow32 * pow3109; // pow(trace_generator, (safe_div((safe_mult(16267, global_values.trace_length)), 16384))). - local pow3111 = pow32 * pow3110; // pow(trace_generator, (safe_div((safe_mult(65069, global_values.trace_length)), 65536))). - local pow3112 = pow32 * pow3111; // pow(trace_generator, (safe_div((safe_mult(32535, global_values.trace_length)), 32768))). - local pow3113 = pow32 * pow3112; // pow(trace_generator, (safe_div((safe_mult(65071, global_values.trace_length)), 65536))). - local pow3114 = pow32 * pow3113; // pow(trace_generator, (safe_div((safe_mult(4067, global_values.trace_length)), 4096))). - local pow3115 = pow32 * pow3114; // pow(trace_generator, (safe_div((safe_mult(65073, global_values.trace_length)), 65536))). - local pow3116 = pow32 * pow3115; // pow(trace_generator, (safe_div((safe_mult(32537, global_values.trace_length)), 32768))). - local pow3117 = pow32 * pow3116; // pow(trace_generator, (safe_div((safe_mult(65075, global_values.trace_length)), 65536))). - local pow3118 = pow32 * pow3117; // pow(trace_generator, (safe_div((safe_mult(16269, global_values.trace_length)), 16384))). - local pow3119 = pow32 * pow3118; // pow(trace_generator, (safe_div((safe_mult(65077, global_values.trace_length)), 65536))). - local pow3120 = pow32 * pow3119; // pow(trace_generator, (safe_div((safe_mult(32539, global_values.trace_length)), 32768))). - local pow3121 = pow32 * pow3120; // pow(trace_generator, (safe_div((safe_mult(65079, global_values.trace_length)), 65536))). - local pow3122 = pow32 * pow3121; // pow(trace_generator, (safe_div((safe_mult(8135, global_values.trace_length)), 8192))). - local pow3123 = pow32 * pow3122; // pow(trace_generator, (safe_div((safe_mult(65081, global_values.trace_length)), 65536))). - local pow3124 = pow32 * pow3123; // pow(trace_generator, (safe_div((safe_mult(32541, global_values.trace_length)), 32768))). - local pow3125 = pow32 * pow3124; // pow(trace_generator, (safe_div((safe_mult(65083, global_values.trace_length)), 65536))). - local pow3126 = pow32 * pow3125; // pow(trace_generator, (safe_div((safe_mult(16271, global_values.trace_length)), 16384))). - local pow3127 = pow32 * pow3126; // pow(trace_generator, (safe_div((safe_mult(65085, global_values.trace_length)), 65536))). - local pow3128 = pow41 * pow3127; // pow(trace_generator, (safe_div((safe_mult(1017, global_values.trace_length)), 1024))). - local pow3129 = pow32 * pow3128; // pow(trace_generator, (safe_div((safe_mult(65089, global_values.trace_length)), 65536))). - local pow3130 = pow32 * pow3129; // pow(trace_generator, (safe_div((safe_mult(32545, global_values.trace_length)), 32768))). - local pow3131 = pow32 * pow3130; // pow(trace_generator, (safe_div((safe_mult(65091, global_values.trace_length)), 65536))). - local pow3132 = pow32 * pow3131; // pow(trace_generator, (safe_div((safe_mult(16273, global_values.trace_length)), 16384))). - local pow3133 = pow32 * pow3132; // pow(trace_generator, (safe_div((safe_mult(65093, global_values.trace_length)), 65536))). - local pow3134 = pow32 * pow3133; // pow(trace_generator, (safe_div((safe_mult(32547, global_values.trace_length)), 32768))). - local pow3135 = pow32 * pow3134; // pow(trace_generator, (safe_div((safe_mult(65095, global_values.trace_length)), 65536))). - local pow3136 = pow32 * pow3135; // pow(trace_generator, (safe_div((safe_mult(8137, global_values.trace_length)), 8192))). - local pow3137 = pow32 * pow3136; // pow(trace_generator, (safe_div((safe_mult(65097, global_values.trace_length)), 65536))). - local pow3138 = pow32 * pow3137; // pow(trace_generator, (safe_div((safe_mult(32549, global_values.trace_length)), 32768))). - local pow3139 = pow32 * pow3138; // pow(trace_generator, (safe_div((safe_mult(65099, global_values.trace_length)), 65536))). - local pow3140 = pow32 * pow3139; // pow(trace_generator, (safe_div((safe_mult(16275, global_values.trace_length)), 16384))). - local pow3141 = pow32 * pow3140; // pow(trace_generator, (safe_div((safe_mult(65101, global_values.trace_length)), 65536))). - local pow3142 = pow32 * pow3141; // pow(trace_generator, (safe_div((safe_mult(32551, global_values.trace_length)), 32768))). - local pow3143 = pow32 * pow3142; // pow(trace_generator, (safe_div((safe_mult(65103, global_values.trace_length)), 65536))). - local pow3144 = pow32 * pow3143; // pow(trace_generator, (safe_div((safe_mult(4069, global_values.trace_length)), 4096))). - local pow3145 = pow32 * pow3144; // pow(trace_generator, (safe_div((safe_mult(65105, global_values.trace_length)), 65536))). - local pow3146 = pow32 * pow3145; // pow(trace_generator, (safe_div((safe_mult(32553, global_values.trace_length)), 32768))). - local pow3147 = pow32 * pow3146; // pow(trace_generator, (safe_div((safe_mult(65107, global_values.trace_length)), 65536))). - local pow3148 = pow32 * pow3147; // pow(trace_generator, (safe_div((safe_mult(16277, global_values.trace_length)), 16384))). - local pow3149 = pow32 * pow3148; // pow(trace_generator, (safe_div((safe_mult(65109, global_values.trace_length)), 65536))). - local pow3150 = pow32 * pow3149; // pow(trace_generator, (safe_div((safe_mult(32555, global_values.trace_length)), 32768))). - local pow3151 = pow32 * pow3150; // pow(trace_generator, (safe_div((safe_mult(65111, global_values.trace_length)), 65536))). - local pow3152 = pow32 * pow3151; // pow(trace_generator, (safe_div((safe_mult(8139, global_values.trace_length)), 8192))). - local pow3153 = pow32 * pow3152; // pow(trace_generator, (safe_div((safe_mult(65113, global_values.trace_length)), 65536))). - local pow3154 = pow32 * pow3153; // pow(trace_generator, (safe_div((safe_mult(32557, global_values.trace_length)), 32768))). - local pow3155 = pow32 * pow3154; // pow(trace_generator, (safe_div((safe_mult(65115, global_values.trace_length)), 65536))). - local pow3156 = pow32 * pow3155; // pow(trace_generator, (safe_div((safe_mult(16279, global_values.trace_length)), 16384))). - local pow3157 = pow32 * pow3156; // pow(trace_generator, (safe_div((safe_mult(65117, global_values.trace_length)), 65536))). - local pow3158 = pow41 * pow3157; // pow(trace_generator, (safe_div((safe_mult(2035, global_values.trace_length)), 2048))). - local pow3159 = pow32 * pow3158; // pow(trace_generator, (safe_div((safe_mult(65121, global_values.trace_length)), 65536))). - local pow3160 = pow32 * pow3159; // pow(trace_generator, (safe_div((safe_mult(32561, global_values.trace_length)), 32768))). - local pow3161 = pow32 * pow3160; // pow(trace_generator, (safe_div((safe_mult(65123, global_values.trace_length)), 65536))). - local pow3162 = pow32 * pow3161; // pow(trace_generator, (safe_div((safe_mult(16281, global_values.trace_length)), 16384))). - local pow3163 = pow32 * pow3162; // pow(trace_generator, (safe_div((safe_mult(65125, global_values.trace_length)), 65536))). - local pow3164 = pow32 * pow3163; // pow(trace_generator, (safe_div((safe_mult(32563, global_values.trace_length)), 32768))). - local pow3165 = pow32 * pow3164; // pow(trace_generator, (safe_div((safe_mult(65127, global_values.trace_length)), 65536))). - local pow3166 = pow32 * pow3165; // pow(trace_generator, (safe_div((safe_mult(8141, global_values.trace_length)), 8192))). - local pow3167 = pow32 * pow3166; // pow(trace_generator, (safe_div((safe_mult(65129, global_values.trace_length)), 65536))). - local pow3168 = pow32 * pow3167; // pow(trace_generator, (safe_div((safe_mult(32565, global_values.trace_length)), 32768))). - local pow3169 = pow32 * pow3168; // pow(trace_generator, (safe_div((safe_mult(65131, global_values.trace_length)), 65536))). - local pow3170 = pow32 * pow3169; // pow(trace_generator, (safe_div((safe_mult(16283, global_values.trace_length)), 16384))). - local pow3171 = pow32 * pow3170; // pow(trace_generator, (safe_div((safe_mult(65133, global_values.trace_length)), 65536))). - local pow3172 = pow32 * pow3171; // pow(trace_generator, (safe_div((safe_mult(32567, global_values.trace_length)), 32768))). - local pow3173 = pow32 * pow3172; // pow(trace_generator, (safe_div((safe_mult(65135, global_values.trace_length)), 65536))). - local pow3174 = pow32 * pow3173; // pow(trace_generator, (safe_div((safe_mult(4071, global_values.trace_length)), 4096))). - local pow3175 = pow32 * pow3174; // pow(trace_generator, (safe_div((safe_mult(65137, global_values.trace_length)), 65536))). - local pow3176 = pow32 * pow3175; // pow(trace_generator, (safe_div((safe_mult(32569, global_values.trace_length)), 32768))). - local pow3177 = pow32 * pow3176; // pow(trace_generator, (safe_div((safe_mult(65139, global_values.trace_length)), 65536))). - local pow3178 = pow32 * pow3177; // pow(trace_generator, (safe_div((safe_mult(16285, global_values.trace_length)), 16384))). - local pow3179 = pow32 * pow3178; // pow(trace_generator, (safe_div((safe_mult(65141, global_values.trace_length)), 65536))). - local pow3180 = pow32 * pow3179; // pow(trace_generator, (safe_div((safe_mult(32571, global_values.trace_length)), 32768))). - local pow3181 = pow32 * pow3180; // pow(trace_generator, (safe_div((safe_mult(65143, global_values.trace_length)), 65536))). - local pow3182 = pow32 * pow3181; // pow(trace_generator, (safe_div((safe_mult(8143, global_values.trace_length)), 8192))). - local pow3183 = pow32 * pow3182; // pow(trace_generator, (safe_div((safe_mult(65145, global_values.trace_length)), 65536))). - local pow3184 = pow32 * pow3183; // pow(trace_generator, (safe_div((safe_mult(32573, global_values.trace_length)), 32768))). - local pow3185 = pow32 * pow3184; // pow(trace_generator, (safe_div((safe_mult(65147, global_values.trace_length)), 65536))). - local pow3186 = pow32 * pow3185; // pow(trace_generator, (safe_div((safe_mult(16287, global_values.trace_length)), 16384))). - local pow3187 = pow32 * pow3186; // pow(trace_generator, (safe_div((safe_mult(65149, global_values.trace_length)), 65536))). - local pow3188 = pow41 * pow3187; // pow(trace_generator, (safe_div((safe_mult(509, global_values.trace_length)), 512))). - local pow3189 = pow32 * pow3188; // pow(trace_generator, (safe_div((safe_mult(65153, global_values.trace_length)), 65536))). - local pow3190 = pow32 * pow3189; // pow(trace_generator, (safe_div((safe_mult(32577, global_values.trace_length)), 32768))). - local pow3191 = pow32 * pow3190; // pow(trace_generator, (safe_div((safe_mult(65155, global_values.trace_length)), 65536))). - local pow3192 = pow32 * pow3191; // pow(trace_generator, (safe_div((safe_mult(16289, global_values.trace_length)), 16384))). - local pow3193 = pow32 * pow3192; // pow(trace_generator, (safe_div((safe_mult(65157, global_values.trace_length)), 65536))). - local pow3194 = pow32 * pow3193; // pow(trace_generator, (safe_div((safe_mult(32579, global_values.trace_length)), 32768))). - local pow3195 = pow32 * pow3194; // pow(trace_generator, (safe_div((safe_mult(65159, global_values.trace_length)), 65536))). - local pow3196 = pow32 * pow3195; // pow(trace_generator, (safe_div((safe_mult(8145, global_values.trace_length)), 8192))). - local pow3197 = pow32 * pow3196; // pow(trace_generator, (safe_div((safe_mult(65161, global_values.trace_length)), 65536))). - local pow3198 = pow32 * pow3197; // pow(trace_generator, (safe_div((safe_mult(32581, global_values.trace_length)), 32768))). - local pow3199 = pow32 * pow3198; // pow(trace_generator, (safe_div((safe_mult(65163, global_values.trace_length)), 65536))). - local pow3200 = pow32 * pow3199; // pow(trace_generator, (safe_div((safe_mult(16291, global_values.trace_length)), 16384))). - local pow3201 = pow32 * pow3200; // pow(trace_generator, (safe_div((safe_mult(65165, global_values.trace_length)), 65536))). - local pow3202 = pow32 * pow3201; // pow(trace_generator, (safe_div((safe_mult(32583, global_values.trace_length)), 32768))). - local pow3203 = pow32 * pow3202; // pow(trace_generator, (safe_div((safe_mult(65167, global_values.trace_length)), 65536))). - local pow3204 = pow32 * pow3203; // pow(trace_generator, (safe_div((safe_mult(4073, global_values.trace_length)), 4096))). - local pow3205 = pow32 * pow3204; // pow(trace_generator, (safe_div((safe_mult(65169, global_values.trace_length)), 65536))). - local pow3206 = pow32 * pow3205; // pow(trace_generator, (safe_div((safe_mult(32585, global_values.trace_length)), 32768))). - local pow3207 = pow32 * pow3206; // pow(trace_generator, (safe_div((safe_mult(65171, global_values.trace_length)), 65536))). - local pow3208 = pow32 * pow3207; // pow(trace_generator, (safe_div((safe_mult(16293, global_values.trace_length)), 16384))). - local pow3209 = pow32 * pow3208; // pow(trace_generator, (safe_div((safe_mult(65173, global_values.trace_length)), 65536))). - local pow3210 = pow32 * pow3209; // pow(trace_generator, (safe_div((safe_mult(32587, global_values.trace_length)), 32768))). - local pow3211 = pow32 * pow3210; // pow(trace_generator, (safe_div((safe_mult(65175, global_values.trace_length)), 65536))). - local pow3212 = pow32 * pow3211; // pow(trace_generator, (safe_div((safe_mult(8147, global_values.trace_length)), 8192))). - local pow3213 = pow32 * pow3212; // pow(trace_generator, (safe_div((safe_mult(65177, global_values.trace_length)), 65536))). - local pow3214 = pow32 * pow3213; // pow(trace_generator, (safe_div((safe_mult(32589, global_values.trace_length)), 32768))). - local pow3215 = pow32 * pow3214; // pow(trace_generator, (safe_div((safe_mult(65179, global_values.trace_length)), 65536))). - local pow3216 = pow32 * pow3215; // pow(trace_generator, (safe_div((safe_mult(16295, global_values.trace_length)), 16384))). - local pow3217 = pow32 * pow3216; // pow(trace_generator, (safe_div((safe_mult(65181, global_values.trace_length)), 65536))). - local pow3218 = pow41 * pow3217; // pow(trace_generator, (safe_div((safe_mult(2037, global_values.trace_length)), 2048))). - local pow3219 = pow32 * pow3218; // pow(trace_generator, (safe_div((safe_mult(65185, global_values.trace_length)), 65536))). - local pow3220 = pow32 * pow3219; // pow(trace_generator, (safe_div((safe_mult(32593, global_values.trace_length)), 32768))). - local pow3221 = pow32 * pow3220; // pow(trace_generator, (safe_div((safe_mult(65187, global_values.trace_length)), 65536))). - local pow3222 = pow32 * pow3221; // pow(trace_generator, (safe_div((safe_mult(16297, global_values.trace_length)), 16384))). - local pow3223 = pow32 * pow3222; // pow(trace_generator, (safe_div((safe_mult(65189, global_values.trace_length)), 65536))). - local pow3224 = pow32 * pow3223; // pow(trace_generator, (safe_div((safe_mult(32595, global_values.trace_length)), 32768))). - local pow3225 = pow32 * pow3224; // pow(trace_generator, (safe_div((safe_mult(65191, global_values.trace_length)), 65536))). - local pow3226 = pow32 * pow3225; // pow(trace_generator, (safe_div((safe_mult(8149, global_values.trace_length)), 8192))). - local pow3227 = pow32 * pow3226; // pow(trace_generator, (safe_div((safe_mult(65193, global_values.trace_length)), 65536))). - local pow3228 = pow32 * pow3227; // pow(trace_generator, (safe_div((safe_mult(32597, global_values.trace_length)), 32768))). - local pow3229 = pow32 * pow3228; // pow(trace_generator, (safe_div((safe_mult(65195, global_values.trace_length)), 65536))). - local pow3230 = pow32 * pow3229; // pow(trace_generator, (safe_div((safe_mult(16299, global_values.trace_length)), 16384))). - local pow3231 = pow32 * pow3230; // pow(trace_generator, (safe_div((safe_mult(65197, global_values.trace_length)), 65536))). - local pow3232 = pow32 * pow3231; // pow(trace_generator, (safe_div((safe_mult(32599, global_values.trace_length)), 32768))). - local pow3233 = pow32 * pow3232; // pow(trace_generator, (safe_div((safe_mult(65199, global_values.trace_length)), 65536))). - local pow3234 = pow32 * pow3233; // pow(trace_generator, (safe_div((safe_mult(4075, global_values.trace_length)), 4096))). - local pow3235 = pow32 * pow3234; // pow(trace_generator, (safe_div((safe_mult(65201, global_values.trace_length)), 65536))). - local pow3236 = pow32 * pow3235; // pow(trace_generator, (safe_div((safe_mult(32601, global_values.trace_length)), 32768))). - local pow3237 = pow32 * pow3236; // pow(trace_generator, (safe_div((safe_mult(65203, global_values.trace_length)), 65536))). - local pow3238 = pow32 * pow3237; // pow(trace_generator, (safe_div((safe_mult(16301, global_values.trace_length)), 16384))). - local pow3239 = pow32 * pow3238; // pow(trace_generator, (safe_div((safe_mult(65205, global_values.trace_length)), 65536))). - local pow3240 = pow32 * pow3239; // pow(trace_generator, (safe_div((safe_mult(32603, global_values.trace_length)), 32768))). - local pow3241 = pow32 * pow3240; // pow(trace_generator, (safe_div((safe_mult(65207, global_values.trace_length)), 65536))). - local pow3242 = pow32 * pow3241; // pow(trace_generator, (safe_div((safe_mult(8151, global_values.trace_length)), 8192))). - local pow3243 = pow32 * pow3242; // pow(trace_generator, (safe_div((safe_mult(65209, global_values.trace_length)), 65536))). - local pow3244 = pow32 * pow3243; // pow(trace_generator, (safe_div((safe_mult(32605, global_values.trace_length)), 32768))). - local pow3245 = pow32 * pow3244; // pow(trace_generator, (safe_div((safe_mult(65211, global_values.trace_length)), 65536))). - local pow3246 = pow32 * pow3245; // pow(trace_generator, (safe_div((safe_mult(16303, global_values.trace_length)), 16384))). - local pow3247 = pow32 * pow3246; // pow(trace_generator, (safe_div((safe_mult(65213, global_values.trace_length)), 65536))). - local pow3248 = pow41 * pow3247; // pow(trace_generator, (safe_div((safe_mult(1019, global_values.trace_length)), 1024))). - local pow3249 = pow32 * pow3248; // pow(trace_generator, (safe_div((safe_mult(65217, global_values.trace_length)), 65536))). - local pow3250 = pow32 * pow3249; // pow(trace_generator, (safe_div((safe_mult(32609, global_values.trace_length)), 32768))). - local pow3251 = pow32 * pow3250; // pow(trace_generator, (safe_div((safe_mult(65219, global_values.trace_length)), 65536))). - local pow3252 = pow32 * pow3251; // pow(trace_generator, (safe_div((safe_mult(16305, global_values.trace_length)), 16384))). - local pow3253 = pow32 * pow3252; // pow(trace_generator, (safe_div((safe_mult(65221, global_values.trace_length)), 65536))). - local pow3254 = pow32 * pow3253; // pow(trace_generator, (safe_div((safe_mult(32611, global_values.trace_length)), 32768))). - local pow3255 = pow32 * pow3254; // pow(trace_generator, (safe_div((safe_mult(65223, global_values.trace_length)), 65536))). - local pow3256 = pow32 * pow3255; // pow(trace_generator, (safe_div((safe_mult(8153, global_values.trace_length)), 8192))). - local pow3257 = pow32 * pow3256; // pow(trace_generator, (safe_div((safe_mult(65225, global_values.trace_length)), 65536))). - local pow3258 = pow32 * pow3257; // pow(trace_generator, (safe_div((safe_mult(32613, global_values.trace_length)), 32768))). - local pow3259 = pow32 * pow3258; // pow(trace_generator, (safe_div((safe_mult(65227, global_values.trace_length)), 65536))). - local pow3260 = pow32 * pow3259; // pow(trace_generator, (safe_div((safe_mult(16307, global_values.trace_length)), 16384))). - local pow3261 = pow32 * pow3260; // pow(trace_generator, (safe_div((safe_mult(65229, global_values.trace_length)), 65536))). - local pow3262 = pow32 * pow3261; // pow(trace_generator, (safe_div((safe_mult(32615, global_values.trace_length)), 32768))). - local pow3263 = pow32 * pow3262; // pow(trace_generator, (safe_div((safe_mult(65231, global_values.trace_length)), 65536))). - local pow3264 = pow32 * pow3263; // pow(trace_generator, (safe_div((safe_mult(4077, global_values.trace_length)), 4096))). - local pow3265 = pow32 * pow3264; // pow(trace_generator, (safe_div((safe_mult(65233, global_values.trace_length)), 65536))). - local pow3266 = pow32 * pow3265; // pow(trace_generator, (safe_div((safe_mult(32617, global_values.trace_length)), 32768))). - local pow3267 = pow32 * pow3266; // pow(trace_generator, (safe_div((safe_mult(65235, global_values.trace_length)), 65536))). - local pow3268 = pow32 * pow3267; // pow(trace_generator, (safe_div((safe_mult(16309, global_values.trace_length)), 16384))). - local pow3269 = pow32 * pow3268; // pow(trace_generator, (safe_div((safe_mult(65237, global_values.trace_length)), 65536))). - local pow3270 = pow32 * pow3269; // pow(trace_generator, (safe_div((safe_mult(32619, global_values.trace_length)), 32768))). - local pow3271 = pow32 * pow3270; // pow(trace_generator, (safe_div((safe_mult(65239, global_values.trace_length)), 65536))). - local pow3272 = pow32 * pow3271; // pow(trace_generator, (safe_div((safe_mult(8155, global_values.trace_length)), 8192))). - local pow3273 = pow32 * pow3272; // pow(trace_generator, (safe_div((safe_mult(65241, global_values.trace_length)), 65536))). - local pow3274 = pow32 * pow3273; // pow(trace_generator, (safe_div((safe_mult(32621, global_values.trace_length)), 32768))). - local pow3275 = pow32 * pow3274; // pow(trace_generator, (safe_div((safe_mult(65243, global_values.trace_length)), 65536))). - local pow3276 = pow32 * pow3275; // pow(trace_generator, (safe_div((safe_mult(16311, global_values.trace_length)), 16384))). - local pow3277 = pow32 * pow3276; // pow(trace_generator, (safe_div((safe_mult(65245, global_values.trace_length)), 65536))). - local pow3278 = pow41 * pow3277; // pow(trace_generator, (safe_div((safe_mult(2039, global_values.trace_length)), 2048))). - local pow3279 = pow32 * pow3278; // pow(trace_generator, (safe_div((safe_mult(65249, global_values.trace_length)), 65536))). - local pow3280 = pow32 * pow3279; // pow(trace_generator, (safe_div((safe_mult(32625, global_values.trace_length)), 32768))). - local pow3281 = pow32 * pow3280; // pow(trace_generator, (safe_div((safe_mult(65251, global_values.trace_length)), 65536))). - local pow3282 = pow32 * pow3281; // pow(trace_generator, (safe_div((safe_mult(16313, global_values.trace_length)), 16384))). - local pow3283 = pow32 * pow3282; // pow(trace_generator, (safe_div((safe_mult(65253, global_values.trace_length)), 65536))). - local pow3284 = pow32 * pow3283; // pow(trace_generator, (safe_div((safe_mult(32627, global_values.trace_length)), 32768))). - local pow3285 = pow32 * pow3284; // pow(trace_generator, (safe_div((safe_mult(65255, global_values.trace_length)), 65536))). - local pow3286 = pow32 * pow3285; // pow(trace_generator, (safe_div((safe_mult(8157, global_values.trace_length)), 8192))). - local pow3287 = pow32 * pow3286; // pow(trace_generator, (safe_div((safe_mult(65257, global_values.trace_length)), 65536))). - local pow3288 = pow32 * pow3287; // pow(trace_generator, (safe_div((safe_mult(32629, global_values.trace_length)), 32768))). - local pow3289 = pow32 * pow3288; // pow(trace_generator, (safe_div((safe_mult(65259, global_values.trace_length)), 65536))). - local pow3290 = pow32 * pow3289; // pow(trace_generator, (safe_div((safe_mult(16315, global_values.trace_length)), 16384))). - local pow3291 = pow32 * pow3290; // pow(trace_generator, (safe_div((safe_mult(65261, global_values.trace_length)), 65536))). - local pow3292 = pow32 * pow3291; // pow(trace_generator, (safe_div((safe_mult(32631, global_values.trace_length)), 32768))). - local pow3293 = pow32 * pow3292; // pow(trace_generator, (safe_div((safe_mult(65263, global_values.trace_length)), 65536))). - local pow3294 = pow32 * pow3293; // pow(trace_generator, (safe_div((safe_mult(4079, global_values.trace_length)), 4096))). - local pow3295 = pow32 * pow3294; // pow(trace_generator, (safe_div((safe_mult(65265, global_values.trace_length)), 65536))). - local pow3296 = pow32 * pow3295; // pow(trace_generator, (safe_div((safe_mult(32633, global_values.trace_length)), 32768))). - local pow3297 = pow32 * pow3296; // pow(trace_generator, (safe_div((safe_mult(65267, global_values.trace_length)), 65536))). - local pow3298 = pow32 * pow3297; // pow(trace_generator, (safe_div((safe_mult(16317, global_values.trace_length)), 16384))). - local pow3299 = pow32 * pow3298; // pow(trace_generator, (safe_div((safe_mult(65269, global_values.trace_length)), 65536))). - local pow3300 = pow32 * pow3299; // pow(trace_generator, (safe_div((safe_mult(32635, global_values.trace_length)), 32768))). - local pow3301 = pow32 * pow3300; // pow(trace_generator, (safe_div((safe_mult(65271, global_values.trace_length)), 65536))). - local pow3302 = pow32 * pow3301; // pow(trace_generator, (safe_div((safe_mult(8159, global_values.trace_length)), 8192))). - local pow3303 = pow32 * pow3302; // pow(trace_generator, (safe_div((safe_mult(65273, global_values.trace_length)), 65536))). - local pow3304 = pow32 * pow3303; // pow(trace_generator, (safe_div((safe_mult(32637, global_values.trace_length)), 32768))). - local pow3305 = pow32 * pow3304; // pow(trace_generator, (safe_div((safe_mult(65275, global_values.trace_length)), 65536))). - local pow3306 = pow32 * pow3305; // pow(trace_generator, (safe_div((safe_mult(16319, global_values.trace_length)), 16384))). - local pow3307 = pow32 * pow3306; // pow(trace_generator, (safe_div((safe_mult(65277, global_values.trace_length)), 65536))). - local pow3308 = pow41 * pow3307; // pow(trace_generator, (safe_div((safe_mult(255, global_values.trace_length)), 256))). - local pow3309 = pow32 * pow3308; // pow(trace_generator, (safe_div((safe_mult(65281, global_values.trace_length)), 65536))). - local pow3310 = pow32 * pow3309; // pow(trace_generator, (safe_div((safe_mult(32641, global_values.trace_length)), 32768))). - local pow3311 = pow32 * pow3310; // pow(trace_generator, (safe_div((safe_mult(65283, global_values.trace_length)), 65536))). - local pow3312 = pow32 * pow3311; // pow(trace_generator, (safe_div((safe_mult(16321, global_values.trace_length)), 16384))). - local pow3313 = pow32 * pow3312; // pow(trace_generator, (safe_div((safe_mult(65285, global_values.trace_length)), 65536))). - local pow3314 = pow32 * pow3313; // pow(trace_generator, (safe_div((safe_mult(32643, global_values.trace_length)), 32768))). - local pow3315 = pow32 * pow3314; // pow(trace_generator, (safe_div((safe_mult(65287, global_values.trace_length)), 65536))). - local pow3316 = pow32 * pow3315; // pow(trace_generator, (safe_div((safe_mult(8161, global_values.trace_length)), 8192))). - local pow3317 = pow32 * pow3316; // pow(trace_generator, (safe_div((safe_mult(65289, global_values.trace_length)), 65536))). - local pow3318 = pow32 * pow3317; // pow(trace_generator, (safe_div((safe_mult(32645, global_values.trace_length)), 32768))). - local pow3319 = pow32 * pow3318; // pow(trace_generator, (safe_div((safe_mult(65291, global_values.trace_length)), 65536))). - local pow3320 = pow32 * pow3319; // pow(trace_generator, (safe_div((safe_mult(16323, global_values.trace_length)), 16384))). - local pow3321 = pow32 * pow3320; // pow(trace_generator, (safe_div((safe_mult(65293, global_values.trace_length)), 65536))). - local pow3322 = pow32 * pow3321; // pow(trace_generator, (safe_div((safe_mult(32647, global_values.trace_length)), 32768))). - local pow3323 = pow32 * pow3322; // pow(trace_generator, (safe_div((safe_mult(65295, global_values.trace_length)), 65536))). - local pow3324 = pow32 * pow3323; // pow(trace_generator, (safe_div((safe_mult(4081, global_values.trace_length)), 4096))). - local pow3325 = pow32 * pow3324; // pow(trace_generator, (safe_div((safe_mult(65297, global_values.trace_length)), 65536))). - local pow3326 = pow32 * pow3325; // pow(trace_generator, (safe_div((safe_mult(32649, global_values.trace_length)), 32768))). - local pow3327 = pow32 * pow3326; // pow(trace_generator, (safe_div((safe_mult(65299, global_values.trace_length)), 65536))). - local pow3328 = pow32 * pow3327; // pow(trace_generator, (safe_div((safe_mult(16325, global_values.trace_length)), 16384))). - local pow3329 = pow32 * pow3328; // pow(trace_generator, (safe_div((safe_mult(65301, global_values.trace_length)), 65536))). - local pow3330 = pow32 * pow3329; // pow(trace_generator, (safe_div((safe_mult(32651, global_values.trace_length)), 32768))). - local pow3331 = pow32 * pow3330; // pow(trace_generator, (safe_div((safe_mult(65303, global_values.trace_length)), 65536))). - local pow3332 = pow32 * pow3331; // pow(trace_generator, (safe_div((safe_mult(8163, global_values.trace_length)), 8192))). - local pow3333 = pow32 * pow3332; // pow(trace_generator, (safe_div((safe_mult(65305, global_values.trace_length)), 65536))). - local pow3334 = pow32 * pow3333; // pow(trace_generator, (safe_div((safe_mult(32653, global_values.trace_length)), 32768))). - local pow3335 = pow32 * pow3334; // pow(trace_generator, (safe_div((safe_mult(65307, global_values.trace_length)), 65536))). - local pow3336 = pow32 * pow3335; // pow(trace_generator, (safe_div((safe_mult(16327, global_values.trace_length)), 16384))). - local pow3337 = pow32 * pow3336; // pow(trace_generator, (safe_div((safe_mult(65309, global_values.trace_length)), 65536))). - local pow3338 = pow41 * pow3337; // pow(trace_generator, (safe_div((safe_mult(2041, global_values.trace_length)), 2048))). - local pow3339 = pow32 * pow3338; // pow(trace_generator, (safe_div((safe_mult(65313, global_values.trace_length)), 65536))). - local pow3340 = pow32 * pow3339; // pow(trace_generator, (safe_div((safe_mult(32657, global_values.trace_length)), 32768))). - local pow3341 = pow32 * pow3340; // pow(trace_generator, (safe_div((safe_mult(65315, global_values.trace_length)), 65536))). - local pow3342 = pow32 * pow3341; // pow(trace_generator, (safe_div((safe_mult(16329, global_values.trace_length)), 16384))). - local pow3343 = pow32 * pow3342; // pow(trace_generator, (safe_div((safe_mult(65317, global_values.trace_length)), 65536))). - local pow3344 = pow32 * pow3343; // pow(trace_generator, (safe_div((safe_mult(32659, global_values.trace_length)), 32768))). - local pow3345 = pow32 * pow3344; // pow(trace_generator, (safe_div((safe_mult(65319, global_values.trace_length)), 65536))). - local pow3346 = pow32 * pow3345; // pow(trace_generator, (safe_div((safe_mult(8165, global_values.trace_length)), 8192))). - local pow3347 = pow32 * pow3346; // pow(trace_generator, (safe_div((safe_mult(65321, global_values.trace_length)), 65536))). - local pow3348 = pow32 * pow3347; // pow(trace_generator, (safe_div((safe_mult(32661, global_values.trace_length)), 32768))). - local pow3349 = pow32 * pow3348; // pow(trace_generator, (safe_div((safe_mult(65323, global_values.trace_length)), 65536))). - local pow3350 = pow32 * pow3349; // pow(trace_generator, (safe_div((safe_mult(16331, global_values.trace_length)), 16384))). - local pow3351 = pow32 * pow3350; // pow(trace_generator, (safe_div((safe_mult(65325, global_values.trace_length)), 65536))). - local pow3352 = pow32 * pow3351; // pow(trace_generator, (safe_div((safe_mult(32663, global_values.trace_length)), 32768))). - local pow3353 = pow32 * pow3352; // pow(trace_generator, (safe_div((safe_mult(65327, global_values.trace_length)), 65536))). - local pow3354 = pow32 * pow3353; // pow(trace_generator, (safe_div((safe_mult(4083, global_values.trace_length)), 4096))). - local pow3355 = pow32 * pow3354; // pow(trace_generator, (safe_div((safe_mult(65329, global_values.trace_length)), 65536))). - local pow3356 = pow32 * pow3355; // pow(trace_generator, (safe_div((safe_mult(32665, global_values.trace_length)), 32768))). - local pow3357 = pow32 * pow3356; // pow(trace_generator, (safe_div((safe_mult(65331, global_values.trace_length)), 65536))). - local pow3358 = pow32 * pow3357; // pow(trace_generator, (safe_div((safe_mult(16333, global_values.trace_length)), 16384))). - local pow3359 = pow32 * pow3358; // pow(trace_generator, (safe_div((safe_mult(65333, global_values.trace_length)), 65536))). - local pow3360 = pow32 * pow3359; // pow(trace_generator, (safe_div((safe_mult(32667, global_values.trace_length)), 32768))). - local pow3361 = pow32 * pow3360; // pow(trace_generator, (safe_div((safe_mult(65335, global_values.trace_length)), 65536))). - local pow3362 = pow32 * pow3361; // pow(trace_generator, (safe_div((safe_mult(8167, global_values.trace_length)), 8192))). - local pow3363 = pow32 * pow3362; // pow(trace_generator, (safe_div((safe_mult(65337, global_values.trace_length)), 65536))). - local pow3364 = pow32 * pow3363; // pow(trace_generator, (safe_div((safe_mult(32669, global_values.trace_length)), 32768))). - local pow3365 = pow32 * pow3364; // pow(trace_generator, (safe_div((safe_mult(65339, global_values.trace_length)), 65536))). - local pow3366 = pow32 * pow3365; // pow(trace_generator, (safe_div((safe_mult(16335, global_values.trace_length)), 16384))). - local pow3367 = pow32 * pow3366; // pow(trace_generator, (safe_div((safe_mult(65341, global_values.trace_length)), 65536))). - local pow3368 = pow41 * pow3367; // pow(trace_generator, (safe_div((safe_mult(1021, global_values.trace_length)), 1024))). + let (local pow12) = pow(point, (safe_div(global_values.trace_length, 2))); + local pow13 = pow12 * pow12; // pow(point, global_values.trace_length). + let (local pow14) = pow(trace_generator, global_values.trace_length - 2048); + let (local pow15) = pow(trace_generator, global_values.trace_length - 16384); + let (local pow16) = pow(trace_generator, global_values.trace_length - 256); + let (local pow17) = pow(trace_generator, global_values.trace_length - 32768); + let (local pow18) = pow(trace_generator, global_values.trace_length - 128); + let (local pow19) = pow(trace_generator, global_values.trace_length - 4096); + let (local pow20) = pow(trace_generator, global_values.trace_length - 1); + let (local pow21) = pow(trace_generator, global_values.trace_length - 2); + let (local pow22) = pow(trace_generator, global_values.trace_length - 16); + let (local pow23) = pow(trace_generator, (safe_div(global_values.trace_length, 524288))); + local pow24 = pow23 * pow23; // pow(trace_generator, (safe_div(global_values.trace_length, 262144))). + local pow25 = pow23 * pow24; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 524288))). + local pow26 = pow23 * pow25; // pow(trace_generator, (safe_div(global_values.trace_length, 131072))). + local pow27 = pow23 * pow26; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 524288))). + local pow28 = pow23 * pow27; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 262144))). + local pow29 = pow23 * pow28; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 524288))). + local pow30 = pow23 * pow29; // pow(trace_generator, (safe_div(global_values.trace_length, 65536))). + local pow31 = pow23 * pow30; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 524288))). + local pow32 = pow23 * pow31; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 262144))). + local pow33 = pow23 * pow32; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 524288))). + local pow34 = pow23 * pow33; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 131072))). + local pow35 = pow23 * pow34; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 524288))). + local pow36 = pow23 * pow35; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 262144))). + local pow37 = pow23 * pow36; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 524288))). + local pow38 = pow23 * pow37; // pow(trace_generator, (safe_div(global_values.trace_length, 32768))). + local pow39 = pow30 * pow38; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 65536))). + local pow40 = pow30 * pow39; // pow(trace_generator, (safe_div(global_values.trace_length, 16384))). + local pow41 = pow30 * pow40; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 65536))). + local pow42 = pow30 * pow41; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 32768))). + local pow43 = pow30 * pow42; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 65536))). + local pow44 = pow30 * pow43; // pow(trace_generator, (safe_div(global_values.trace_length, 8192))). + local pow45 = pow30 * pow44; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 65536))). + local pow46 = pow30 * pow45; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 32768))). + local pow47 = pow30 * pow46; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 65536))). + local pow48 = pow30 * pow47; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 16384))). + local pow49 = pow30 * pow48; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 65536))). + local pow50 = pow30 * pow49; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 32768))). + local pow51 = pow30 * pow50; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 65536))). + local pow52 = pow30 * pow51; // pow(trace_generator, (safe_div(global_values.trace_length, 4096))). + local pow53 = pow30 * pow52; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 65536))). + local pow54 = pow30 * pow53; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 32768))). + local pow55 = pow30 * pow54; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 65536))). + local pow56 = pow30 * pow55; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 16384))). + local pow57 = pow30 * pow56; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 65536))). + local pow58 = pow30 * pow57; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 32768))). + local pow59 = pow30 * pow58; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 65536))). + local pow60 = pow30 * pow59; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 8192))). + local pow61 = pow30 * pow60; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 65536))). + local pow62 = pow30 * pow61; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 32768))). + local pow63 = pow30 * pow62; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 65536))). + local pow64 = pow30 * pow63; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 16384))). + local pow65 = pow30 * pow64; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 65536))). + local pow66 = pow30 * pow65; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 32768))). + local pow67 = pow30 * pow66; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 65536))). + local pow68 = pow30 * pow67; // pow(trace_generator, (safe_div(global_values.trace_length, 2048))). + local pow69 = pow30 * pow68; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 65536))). + local pow70 = pow30 * pow69; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 32768))). + local pow71 = pow30 * pow70; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 65536))). + local pow72 = pow30 * pow71; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 16384))). + local pow73 = pow30 * pow72; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 65536))). + local pow74 = pow30 * pow73; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 32768))). + local pow75 = pow30 * pow74; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 65536))). + local pow76 = pow30 * pow75; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 8192))). + local pow77 = pow30 * pow76; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 65536))). + local pow78 = pow30 * pow77; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 32768))). + local pow79 = pow30 * pow78; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 65536))). + local pow80 = pow30 * pow79; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 16384))). + local pow81 = pow30 * pow80; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 65536))). + local pow82 = pow30 * pow81; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 32768))). + local pow83 = pow30 * pow82; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 65536))). + local pow84 = pow30 * pow83; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 4096))). + local pow85 = pow30 * pow84; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 65536))). + local pow86 = pow30 * pow85; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 32768))). + local pow87 = pow30 * pow86; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 65536))). + local pow88 = pow30 * pow87; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 16384))). + local pow89 = pow30 * pow88; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 65536))). + local pow90 = pow30 * pow89; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 32768))). + local pow91 = pow30 * pow90; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 65536))). + local pow92 = pow30 * pow91; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 8192))). + local pow93 = pow30 * pow92; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 65536))). + local pow94 = pow30 * pow93; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 32768))). + local pow95 = pow30 * pow94; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 65536))). + local pow96 = pow30 * pow95; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 16384))). + local pow97 = pow30 * pow96; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 65536))). + local pow98 = pow39 * pow97; // pow(trace_generator, (safe_div(global_values.trace_length, 1024))). + local pow99 = pow30 * pow98; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 65536))). + local pow100 = pow30 * pow99; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 32768))). + local pow101 = pow30 * pow100; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 65536))). + local pow102 = pow30 * pow101; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 16384))). + local pow103 = pow30 * pow102; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 65536))). + local pow104 = pow30 * pow103; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 32768))). + local pow105 = pow30 * pow104; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 65536))). + local pow106 = pow30 * pow105; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 8192))). + local pow107 = pow30 * pow106; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 65536))). + local pow108 = pow30 * pow107; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 32768))). + local pow109 = pow30 * pow108; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 65536))). + local pow110 = pow30 * pow109; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 16384))). + local pow111 = pow30 * pow110; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 65536))). + local pow112 = pow30 * pow111; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 32768))). + local pow113 = pow30 * pow112; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 65536))). + local pow114 = pow30 * pow113; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 4096))). + local pow115 = pow30 * pow114; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 65536))). + local pow116 = pow30 * pow115; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 32768))). + local pow117 = pow30 * pow116; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 65536))). + local pow118 = pow30 * pow117; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 16384))). + local pow119 = pow30 * pow118; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 65536))). + local pow120 = pow30 * pow119; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 32768))). + local pow121 = pow30 * pow120; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 65536))). + local pow122 = pow30 * pow121; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 8192))). + local pow123 = pow30 * pow122; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 65536))). + local pow124 = pow30 * pow123; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 32768))). + local pow125 = pow30 * pow124; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 65536))). + local pow126 = pow30 * pow125; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 16384))). + local pow127 = pow30 * pow126; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 65536))). + local pow128 = pow39 * pow127; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 2048))). + local pow129 = pow30 * pow128; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 65536))). + local pow130 = pow30 * pow129; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 32768))). + local pow131 = pow30 * pow130; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 65536))). + local pow132 = pow30 * pow131; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 16384))). + local pow133 = pow30 * pow132; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 65536))). + local pow134 = pow30 * pow133; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 32768))). + local pow135 = pow30 * pow134; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 65536))). + local pow136 = pow30 * pow135; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 8192))). + local pow137 = pow30 * pow136; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 65536))). + local pow138 = pow30 * pow137; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 32768))). + local pow139 = pow30 * pow138; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 65536))). + local pow140 = pow30 * pow139; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 16384))). + local pow141 = pow30 * pow140; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 65536))). + local pow142 = pow30 * pow141; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 32768))). + local pow143 = pow30 * pow142; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 65536))). + local pow144 = pow30 * pow143; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 4096))). + local pow145 = pow30 * pow144; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 65536))). + local pow146 = pow30 * pow145; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 32768))). + local pow147 = pow30 * pow146; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 65536))). + local pow148 = pow30 * pow147; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 16384))). + local pow149 = pow30 * pow148; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 65536))). + local pow150 = pow30 * pow149; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 32768))). + local pow151 = pow30 * pow150; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 65536))). + local pow152 = pow30 * pow151; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 8192))). + local pow153 = pow30 * pow152; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 65536))). + local pow154 = pow30 * pow153; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 32768))). + local pow155 = pow30 * pow154; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 65536))). + local pow156 = pow30 * pow155; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 16384))). + local pow157 = pow30 * pow156; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 65536))). + local pow158 = pow39 * pow157; // pow(trace_generator, (safe_div(global_values.trace_length, 512))). + local pow159 = pow30 * pow158; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 65536))). + local pow160 = pow30 * pow159; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 32768))). + local pow161 = pow30 * pow160; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 65536))). + local pow162 = pow30 * pow161; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 16384))). + local pow163 = pow30 * pow162; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 65536))). + local pow164 = pow30 * pow163; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 32768))). + local pow165 = pow30 * pow164; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 65536))). + local pow166 = pow30 * pow165; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 8192))). + local pow167 = pow30 * pow166; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 65536))). + local pow168 = pow30 * pow167; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 32768))). + local pow169 = pow30 * pow168; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 65536))). + local pow170 = pow30 * pow169; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 16384))). + local pow171 = pow30 * pow170; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 65536))). + local pow172 = pow30 * pow171; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 32768))). + local pow173 = pow30 * pow172; // pow(trace_generator, (safe_div((safe_mult(143, global_values.trace_length)), 65536))). + local pow174 = pow30 * pow173; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 4096))). + local pow175 = pow30 * pow174; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 65536))). + local pow176 = pow30 * pow175; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 32768))). + local pow177 = pow30 * pow176; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 65536))). + local pow178 = pow30 * pow177; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 16384))). + local pow179 = pow30 * pow178; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 65536))). + local pow180 = pow30 * pow179; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 32768))). + local pow181 = pow30 * pow180; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 65536))). + local pow182 = pow30 * pow181; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 8192))). + local pow183 = pow30 * pow182; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 65536))). + local pow184 = pow30 * pow183; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 32768))). + local pow185 = pow30 * pow184; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 65536))). + local pow186 = pow30 * pow185; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 16384))). + local pow187 = pow30 * pow186; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 65536))). + local pow188 = pow39 * pow187; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 2048))). + local pow189 = pow30 * pow188; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 65536))). + local pow190 = pow30 * pow189; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 32768))). + local pow191 = pow30 * pow190; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 65536))). + local pow192 = pow30 * pow191; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 16384))). + local pow193 = pow30 * pow192; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 65536))). + local pow194 = pow30 * pow193; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 32768))). + local pow195 = pow30 * pow194; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 65536))). + local pow196 = pow30 * pow195; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 8192))). + local pow197 = pow30 * pow196; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 65536))). + local pow198 = pow30 * pow197; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 32768))). + local pow199 = pow30 * pow198; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 65536))). + local pow200 = pow30 * pow199; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 16384))). + local pow201 = pow30 * pow200; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 65536))). + local pow202 = pow30 * pow201; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 32768))). + local pow203 = pow30 * pow202; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 65536))). + local pow204 = pow30 * pow203; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 4096))). + local pow205 = pow30 * pow204; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 65536))). + local pow206 = pow30 * pow205; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 32768))). + local pow207 = pow30 * pow206; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 65536))). + local pow208 = pow30 * pow207; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 16384))). + local pow209 = pow30 * pow208; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 65536))). + local pow210 = pow30 * pow209; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 32768))). + local pow211 = pow30 * pow210; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 65536))). + local pow212 = pow30 * pow211; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 8192))). + local pow213 = pow30 * pow212; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 65536))). + local pow214 = pow30 * pow213; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 32768))). + local pow215 = pow30 * pow214; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 65536))). + local pow216 = pow30 * pow215; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 16384))). + local pow217 = pow30 * pow216; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 65536))). + local pow218 = pow39 * pow217; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 1024))). + local pow219 = pow30 * pow218; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 65536))). + local pow220 = pow30 * pow219; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 32768))). + local pow221 = pow30 * pow220; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 65536))). + local pow222 = pow30 * pow221; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 16384))). + local pow223 = pow30 * pow222; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 65536))). + local pow224 = pow30 * pow223; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 32768))). + local pow225 = pow30 * pow224; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 65536))). + local pow226 = pow30 * pow225; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 8192))). + local pow227 = pow30 * pow226; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 65536))). + local pow228 = pow30 * pow227; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 32768))). + local pow229 = pow30 * pow228; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 65536))). + local pow230 = pow30 * pow229; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 16384))). + local pow231 = pow30 * pow230; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 65536))). + local pow232 = pow30 * pow231; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 32768))). + local pow233 = pow30 * pow232; // pow(trace_generator, (safe_div((safe_mult(207, global_values.trace_length)), 65536))). + local pow234 = pow30 * pow233; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 4096))). + local pow235 = pow30 * pow234; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 65536))). + local pow236 = pow30 * pow235; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 32768))). + local pow237 = pow30 * pow236; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 65536))). + local pow238 = pow30 * pow237; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 16384))). + local pow239 = pow30 * pow238; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 65536))). + local pow240 = pow30 * pow239; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 32768))). + local pow241 = pow30 * pow240; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 65536))). + local pow242 = pow30 * pow241; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 8192))). + local pow243 = pow30 * pow242; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 65536))). + local pow244 = pow30 * pow243; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 32768))). + local pow245 = pow30 * pow244; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 65536))). + local pow246 = pow30 * pow245; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 16384))). + local pow247 = pow30 * pow246; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 65536))). + local pow248 = pow39 * pow247; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 2048))). + local pow249 = pow30 * pow248; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 65536))). + local pow250 = pow30 * pow249; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 32768))). + local pow251 = pow30 * pow250; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 65536))). + local pow252 = pow30 * pow251; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 16384))). + local pow253 = pow30 * pow252; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 65536))). + local pow254 = pow30 * pow253; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 32768))). + local pow255 = pow30 * pow254; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 65536))). + local pow256 = pow30 * pow255; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 8192))). + local pow257 = pow30 * pow256; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 65536))). + local pow258 = pow30 * pow257; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 32768))). + local pow259 = pow30 * pow258; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 65536))). + local pow260 = pow30 * pow259; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 16384))). + local pow261 = pow30 * pow260; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 65536))). + local pow262 = pow30 * pow261; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 32768))). + local pow263 = pow30 * pow262; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 65536))). + local pow264 = pow30 * pow263; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 4096))). + local pow265 = pow30 * pow264; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 65536))). + local pow266 = pow30 * pow265; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 32768))). + local pow267 = pow30 * pow266; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 65536))). + local pow268 = pow30 * pow267; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 16384))). + local pow269 = pow30 * pow268; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 65536))). + local pow270 = pow30 * pow269; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 32768))). + local pow271 = pow30 * pow270; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 65536))). + local pow272 = pow30 * pow271; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 8192))). + local pow273 = pow30 * pow272; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 65536))). + local pow274 = pow30 * pow273; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 32768))). + local pow275 = pow30 * pow274; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 65536))). + local pow276 = pow30 * pow275; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 16384))). + local pow277 = pow30 * pow276; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 65536))). + local pow278 = pow39 * pow277; // pow(trace_generator, (safe_div(global_values.trace_length, 256))). + local pow279 = pow30 * pow278; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 65536))). + local pow280 = pow30 * pow279; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 32768))). + local pow281 = pow30 * pow280; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 65536))). + local pow282 = pow30 * pow281; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 16384))). + local pow283 = pow30 * pow282; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 65536))). + local pow284 = pow30 * pow283; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 32768))). + local pow285 = pow30 * pow284; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 65536))). + local pow286 = pow30 * pow285; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 8192))). + local pow287 = pow30 * pow286; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 65536))). + local pow288 = pow30 * pow287; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 32768))). + local pow289 = pow30 * pow288; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 65536))). + local pow290 = pow30 * pow289; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 16384))). + local pow291 = pow30 * pow290; // pow(trace_generator, (safe_div((safe_mult(269, global_values.trace_length)), 65536))). + local pow292 = pow30 * pow291; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 32768))). + local pow293 = pow30 * pow292; // pow(trace_generator, (safe_div((safe_mult(271, global_values.trace_length)), 65536))). + local pow294 = pow30 * pow293; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 4096))). + local pow295 = pow30 * pow294; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 65536))). + local pow296 = pow30 * pow295; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 32768))). + local pow297 = pow30 * pow296; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 65536))). + local pow298 = pow30 * pow297; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 16384))). + local pow299 = pow30 * pow298; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 65536))). + local pow300 = pow30 * pow299; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 32768))). + local pow301 = pow30 * pow300; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 65536))). + local pow302 = pow30 * pow301; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 8192))). + local pow303 = pow30 * pow302; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 65536))). + local pow304 = pow30 * pow303; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 32768))). + local pow305 = pow30 * pow304; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 65536))). + local pow306 = pow30 * pow305; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 16384))). + local pow307 = pow30 * pow306; // pow(trace_generator, (safe_div((safe_mult(285, global_values.trace_length)), 65536))). + local pow308 = pow39 * pow307; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 2048))). + local pow309 = pow30 * pow308; // pow(trace_generator, (safe_div((safe_mult(289, global_values.trace_length)), 65536))). + local pow310 = pow30 * pow309; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 32768))). + local pow311 = pow30 * pow310; // pow(trace_generator, (safe_div((safe_mult(291, global_values.trace_length)), 65536))). + local pow312 = pow30 * pow311; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 16384))). + local pow313 = pow30 * pow312; // pow(trace_generator, (safe_div((safe_mult(293, global_values.trace_length)), 65536))). + local pow314 = pow30 * pow313; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 32768))). + local pow315 = pow30 * pow314; // pow(trace_generator, (safe_div((safe_mult(295, global_values.trace_length)), 65536))). + local pow316 = pow30 * pow315; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 8192))). + local pow317 = pow30 * pow316; // pow(trace_generator, (safe_div((safe_mult(297, global_values.trace_length)), 65536))). + local pow318 = pow30 * pow317; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 32768))). + local pow319 = pow30 * pow318; // pow(trace_generator, (safe_div((safe_mult(299, global_values.trace_length)), 65536))). + local pow320 = pow30 * pow319; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 16384))). + local pow321 = pow30 * pow320; // pow(trace_generator, (safe_div((safe_mult(301, global_values.trace_length)), 65536))). + local pow322 = pow30 * pow321; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 32768))). + local pow323 = pow30 * pow322; // pow(trace_generator, (safe_div((safe_mult(303, global_values.trace_length)), 65536))). + local pow324 = pow30 * pow323; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 4096))). + local pow325 = pow30 * pow324; // pow(trace_generator, (safe_div((safe_mult(305, global_values.trace_length)), 65536))). + local pow326 = pow30 * pow325; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 32768))). + local pow327 = pow30 * pow326; // pow(trace_generator, (safe_div((safe_mult(307, global_values.trace_length)), 65536))). + local pow328 = pow30 * pow327; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 16384))). + local pow329 = pow30 * pow328; // pow(trace_generator, (safe_div((safe_mult(309, global_values.trace_length)), 65536))). + local pow330 = pow30 * pow329; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 32768))). + local pow331 = pow30 * pow330; // pow(trace_generator, (safe_div((safe_mult(311, global_values.trace_length)), 65536))). + local pow332 = pow30 * pow331; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 8192))). + local pow333 = pow30 * pow332; // pow(trace_generator, (safe_div((safe_mult(313, global_values.trace_length)), 65536))). + local pow334 = pow30 * pow333; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 32768))). + local pow335 = pow30 * pow334; // pow(trace_generator, (safe_div((safe_mult(315, global_values.trace_length)), 65536))). + local pow336 = pow30 * pow335; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 16384))). + local pow337 = pow30 * pow336; // pow(trace_generator, (safe_div((safe_mult(317, global_values.trace_length)), 65536))). + local pow338 = pow39 * pow337; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 1024))). + local pow339 = pow30 * pow338; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 65536))). + local pow340 = pow30 * pow339; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 32768))). + local pow341 = pow30 * pow340; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 65536))). + local pow342 = pow30 * pow341; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 16384))). + local pow343 = pow30 * pow342; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 65536))). + local pow344 = pow30 * pow343; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 32768))). + local pow345 = pow30 * pow344; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 65536))). + local pow346 = pow30 * pow345; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 8192))). + local pow347 = pow30 * pow346; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 65536))). + local pow348 = pow30 * pow347; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 32768))). + local pow349 = pow30 * pow348; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 65536))). + local pow350 = pow30 * pow349; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 16384))). + local pow351 = pow30 * pow350; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 65536))). + local pow352 = pow30 * pow351; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 32768))). + local pow353 = pow30 * pow352; // pow(trace_generator, (safe_div((safe_mult(335, global_values.trace_length)), 65536))). + local pow354 = pow30 * pow353; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 4096))). + local pow355 = pow30 * pow354; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 65536))). + local pow356 = pow30 * pow355; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 32768))). + local pow357 = pow30 * pow356; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 65536))). + local pow358 = pow30 * pow357; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 16384))). + local pow359 = pow30 * pow358; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 65536))). + local pow360 = pow30 * pow359; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 32768))). + local pow361 = pow30 * pow360; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 65536))). + local pow362 = pow30 * pow361; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 8192))). + local pow363 = pow30 * pow362; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 65536))). + local pow364 = pow30 * pow363; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 32768))). + local pow365 = pow30 * pow364; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 65536))). + local pow366 = pow30 * pow365; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 16384))). + local pow367 = pow30 * pow366; // pow(trace_generator, (safe_div((safe_mult(349, global_values.trace_length)), 65536))). + local pow368 = pow39 * pow367; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 2048))). + local pow369 = pow30 * pow368; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 65536))). + local pow370 = pow30 * pow369; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 32768))). + local pow371 = pow30 * pow370; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 65536))). + local pow372 = pow30 * pow371; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 16384))). + local pow373 = pow30 * pow372; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 65536))). + local pow374 = pow30 * pow373; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 32768))). + local pow375 = pow30 * pow374; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 65536))). + local pow376 = pow30 * pow375; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 8192))). + local pow377 = pow30 * pow376; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 65536))). + local pow378 = pow30 * pow377; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 32768))). + local pow379 = pow30 * pow378; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 65536))). + local pow380 = pow30 * pow379; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 16384))). + local pow381 = pow30 * pow380; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 65536))). + local pow382 = pow30 * pow381; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 32768))). + local pow383 = pow30 * pow382; // pow(trace_generator, (safe_div((safe_mult(367, global_values.trace_length)), 65536))). + local pow384 = pow30 * pow383; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 4096))). + local pow385 = pow30 * pow384; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 65536))). + local pow386 = pow30 * pow385; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 32768))). + local pow387 = pow30 * pow386; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 65536))). + local pow388 = pow30 * pow387; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 16384))). + local pow389 = pow30 * pow388; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 65536))). + local pow390 = pow30 * pow389; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 32768))). + local pow391 = pow30 * pow390; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 65536))). + local pow392 = pow30 * pow391; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 8192))). + local pow393 = pow30 * pow392; // pow(trace_generator, (safe_div((safe_mult(377, global_values.trace_length)), 65536))). + local pow394 = pow30 * pow393; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 32768))). + local pow395 = pow30 * pow394; // pow(trace_generator, (safe_div((safe_mult(379, global_values.trace_length)), 65536))). + local pow396 = pow30 * pow395; // pow(trace_generator, (safe_div((safe_mult(95, global_values.trace_length)), 16384))). + local pow397 = pow30 * pow396; // pow(trace_generator, (safe_div((safe_mult(381, global_values.trace_length)), 65536))). + local pow398 = pow39 * pow397; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 512))). + local pow399 = pow30 * pow398; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 65536))). + local pow400 = pow30 * pow399; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 32768))). + local pow401 = pow30 * pow400; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 65536))). + local pow402 = pow30 * pow401; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 16384))). + local pow403 = pow30 * pow402; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 65536))). + local pow404 = pow30 * pow403; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 32768))). + local pow405 = pow30 * pow404; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 65536))). + local pow406 = pow30 * pow405; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 8192))). + local pow407 = pow30 * pow406; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 65536))). + local pow408 = pow30 * pow407; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 32768))). + local pow409 = pow30 * pow408; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 65536))). + local pow410 = pow30 * pow409; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 16384))). + local pow411 = pow30 * pow410; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 65536))). + local pow412 = pow30 * pow411; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 32768))). + local pow413 = pow30 * pow412; // pow(trace_generator, (safe_div((safe_mult(399, global_values.trace_length)), 65536))). + local pow414 = pow30 * pow413; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 4096))). + local pow415 = pow30 * pow414; // pow(trace_generator, (safe_div((safe_mult(401, global_values.trace_length)), 65536))). + local pow416 = pow30 * pow415; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 32768))). + local pow417 = pow30 * pow416; // pow(trace_generator, (safe_div((safe_mult(403, global_values.trace_length)), 65536))). + local pow418 = pow30 * pow417; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 16384))). + local pow419 = pow30 * pow418; // pow(trace_generator, (safe_div((safe_mult(405, global_values.trace_length)), 65536))). + local pow420 = pow30 * pow419; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 32768))). + local pow421 = pow30 * pow420; // pow(trace_generator, (safe_div((safe_mult(407, global_values.trace_length)), 65536))). + local pow422 = pow30 * pow421; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 8192))). + local pow423 = pow30 * pow422; // pow(trace_generator, (safe_div((safe_mult(409, global_values.trace_length)), 65536))). + local pow424 = pow30 * pow423; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 32768))). + local pow425 = pow30 * pow424; // pow(trace_generator, (safe_div((safe_mult(411, global_values.trace_length)), 65536))). + local pow426 = pow30 * pow425; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 16384))). + local pow427 = pow30 * pow426; // pow(trace_generator, (safe_div((safe_mult(413, global_values.trace_length)), 65536))). + local pow428 = pow39 * pow427; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 2048))). + local pow429 = pow30 * pow428; // pow(trace_generator, (safe_div((safe_mult(417, global_values.trace_length)), 65536))). + local pow430 = pow30 * pow429; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 32768))). + local pow431 = pow30 * pow430; // pow(trace_generator, (safe_div((safe_mult(419, global_values.trace_length)), 65536))). + local pow432 = pow30 * pow431; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 16384))). + local pow433 = pow30 * pow432; // pow(trace_generator, (safe_div((safe_mult(421, global_values.trace_length)), 65536))). + local pow434 = pow30 * pow433; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 32768))). + local pow435 = pow30 * pow434; // pow(trace_generator, (safe_div((safe_mult(423, global_values.trace_length)), 65536))). + local pow436 = pow30 * pow435; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 8192))). + local pow437 = pow30 * pow436; // pow(trace_generator, (safe_div((safe_mult(425, global_values.trace_length)), 65536))). + local pow438 = pow30 * pow437; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 32768))). + local pow439 = pow30 * pow438; // pow(trace_generator, (safe_div((safe_mult(427, global_values.trace_length)), 65536))). + local pow440 = pow30 * pow439; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 16384))). + local pow441 = pow30 * pow440; // pow(trace_generator, (safe_div((safe_mult(429, global_values.trace_length)), 65536))). + local pow442 = pow30 * pow441; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 32768))). + local pow443 = pow30 * pow442; // pow(trace_generator, (safe_div((safe_mult(431, global_values.trace_length)), 65536))). + local pow444 = pow30 * pow443; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 4096))). + local pow445 = pow30 * pow444; // pow(trace_generator, (safe_div((safe_mult(433, global_values.trace_length)), 65536))). + local pow446 = pow30 * pow445; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 32768))). + local pow447 = pow30 * pow446; // pow(trace_generator, (safe_div((safe_mult(435, global_values.trace_length)), 65536))). + local pow448 = pow30 * pow447; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 16384))). + local pow449 = pow30 * pow448; // pow(trace_generator, (safe_div((safe_mult(437, global_values.trace_length)), 65536))). + local pow450 = pow30 * pow449; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 32768))). + local pow451 = pow30 * pow450; // pow(trace_generator, (safe_div((safe_mult(439, global_values.trace_length)), 65536))). + local pow452 = pow30 * pow451; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 8192))). + local pow453 = pow30 * pow452; // pow(trace_generator, (safe_div((safe_mult(441, global_values.trace_length)), 65536))). + local pow454 = pow30 * pow453; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 32768))). + local pow455 = pow30 * pow454; // pow(trace_generator, (safe_div((safe_mult(443, global_values.trace_length)), 65536))). + local pow456 = pow30 * pow455; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 16384))). + local pow457 = pow30 * pow456; // pow(trace_generator, (safe_div((safe_mult(445, global_values.trace_length)), 65536))). + local pow458 = pow39 * pow457; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 1024))). + local pow459 = pow30 * pow458; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 65536))). + local pow460 = pow30 * pow459; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 32768))). + local pow461 = pow30 * pow460; // pow(trace_generator, (safe_div((safe_mult(451, global_values.trace_length)), 65536))). + local pow462 = pow30 * pow461; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 16384))). + local pow463 = pow30 * pow462; // pow(trace_generator, (safe_div((safe_mult(453, global_values.trace_length)), 65536))). + local pow464 = pow30 * pow463; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 32768))). + local pow465 = pow30 * pow464; // pow(trace_generator, (safe_div((safe_mult(455, global_values.trace_length)), 65536))). + local pow466 = pow30 * pow465; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 8192))). + local pow467 = pow30 * pow466; // pow(trace_generator, (safe_div((safe_mult(457, global_values.trace_length)), 65536))). + local pow468 = pow30 * pow467; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 32768))). + local pow469 = pow30 * pow468; // pow(trace_generator, (safe_div((safe_mult(459, global_values.trace_length)), 65536))). + local pow470 = pow30 * pow469; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 16384))). + local pow471 = pow30 * pow470; // pow(trace_generator, (safe_div((safe_mult(461, global_values.trace_length)), 65536))). + local pow472 = pow30 * pow471; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 32768))). + local pow473 = pow30 * pow472; // pow(trace_generator, (safe_div((safe_mult(463, global_values.trace_length)), 65536))). + local pow474 = pow30 * pow473; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 4096))). + local pow475 = pow30 * pow474; // pow(trace_generator, (safe_div((safe_mult(465, global_values.trace_length)), 65536))). + local pow476 = pow30 * pow475; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 32768))). + local pow477 = pow30 * pow476; // pow(trace_generator, (safe_div((safe_mult(467, global_values.trace_length)), 65536))). + local pow478 = pow30 * pow477; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 16384))). + local pow479 = pow30 * pow478; // pow(trace_generator, (safe_div((safe_mult(469, global_values.trace_length)), 65536))). + local pow480 = pow30 * pow479; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 32768))). + local pow481 = pow30 * pow480; // pow(trace_generator, (safe_div((safe_mult(471, global_values.trace_length)), 65536))). + local pow482 = pow30 * pow481; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 8192))). + local pow483 = pow30 * pow482; // pow(trace_generator, (safe_div((safe_mult(473, global_values.trace_length)), 65536))). + local pow484 = pow30 * pow483; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 32768))). + local pow485 = pow30 * pow484; // pow(trace_generator, (safe_div((safe_mult(475, global_values.trace_length)), 65536))). + local pow486 = pow30 * pow485; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 16384))). + local pow487 = pow30 * pow486; // pow(trace_generator, (safe_div((safe_mult(477, global_values.trace_length)), 65536))). + local pow488 = pow39 * pow487; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 2048))). + local pow489 = pow30 * pow488; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 65536))). + local pow490 = pow30 * pow489; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 32768))). + local pow491 = pow30 * pow490; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 65536))). + local pow492 = pow30 * pow491; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 16384))). + local pow493 = pow30 * pow492; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 65536))). + local pow494 = pow30 * pow493; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 32768))). + local pow495 = pow30 * pow494; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 65536))). + local pow496 = pow30 * pow495; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 8192))). + local pow497 = pow30 * pow496; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 65536))). + local pow498 = pow30 * pow497; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 32768))). + local pow499 = pow30 * pow498; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 65536))). + local pow500 = pow30 * pow499; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 16384))). + local pow501 = pow30 * pow500; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 65536))). + local pow502 = pow30 * pow501; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 32768))). + local pow503 = pow30 * pow502; // pow(trace_generator, (safe_div((safe_mult(495, global_values.trace_length)), 65536))). + local pow504 = pow30 * pow503; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 4096))). + local pow505 = pow30 * pow504; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 65536))). + local pow506 = pow30 * pow505; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 32768))). + local pow507 = pow30 * pow506; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 65536))). + local pow508 = pow30 * pow507; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 16384))). + local pow509 = pow30 * pow508; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 65536))). + local pow510 = pow30 * pow509; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 32768))). + local pow511 = pow30 * pow510; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 65536))). + local pow512 = pow30 * pow511; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 8192))). + local pow513 = pow30 * pow512; // pow(trace_generator, (safe_div((safe_mult(505, global_values.trace_length)), 65536))). + local pow514 = pow30 * pow513; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 32768))). + local pow515 = pow30 * pow514; // pow(trace_generator, (safe_div((safe_mult(507, global_values.trace_length)), 65536))). + local pow516 = pow30 * pow515; // pow(trace_generator, (safe_div((safe_mult(127, global_values.trace_length)), 16384))). + local pow517 = pow30 * pow516; // pow(trace_generator, (safe_div((safe_mult(509, global_values.trace_length)), 65536))). + local pow518 = pow39 * pow517; // pow(trace_generator, (safe_div(global_values.trace_length, 128))). + local pow519 = pow30 * pow518; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 65536))). + local pow520 = pow30 * pow519; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 32768))). + local pow521 = pow30 * pow520; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 65536))). + local pow522 = pow30 * pow521; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 16384))). + local pow523 = pow30 * pow522; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 65536))). + local pow524 = pow30 * pow523; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 32768))). + local pow525 = pow30 * pow524; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 65536))). + local pow526 = pow30 * pow525; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 8192))). + local pow527 = pow30 * pow526; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 65536))). + local pow528 = pow30 * pow527; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 32768))). + local pow529 = pow30 * pow528; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 65536))). + local pow530 = pow30 * pow529; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 16384))). + local pow531 = pow30 * pow530; // pow(trace_generator, (safe_div((safe_mult(525, global_values.trace_length)), 65536))). + local pow532 = pow30 * pow531; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 32768))). + local pow533 = pow30 * pow532; // pow(trace_generator, (safe_div((safe_mult(527, global_values.trace_length)), 65536))). + local pow534 = pow30 * pow533; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 4096))). + local pow535 = pow30 * pow534; // pow(trace_generator, (safe_div((safe_mult(529, global_values.trace_length)), 65536))). + local pow536 = pow30 * pow535; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 32768))). + local pow537 = pow30 * pow536; // pow(trace_generator, (safe_div((safe_mult(531, global_values.trace_length)), 65536))). + local pow538 = pow30 * pow537; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 16384))). + local pow539 = pow30 * pow538; // pow(trace_generator, (safe_div((safe_mult(533, global_values.trace_length)), 65536))). + local pow540 = pow30 * pow539; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 32768))). + local pow541 = pow30 * pow540; // pow(trace_generator, (safe_div((safe_mult(535, global_values.trace_length)), 65536))). + local pow542 = pow30 * pow541; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 8192))). + local pow543 = pow30 * pow542; // pow(trace_generator, (safe_div((safe_mult(537, global_values.trace_length)), 65536))). + local pow544 = pow30 * pow543; // pow(trace_generator, (safe_div((safe_mult(269, global_values.trace_length)), 32768))). + local pow545 = pow30 * pow544; // pow(trace_generator, (safe_div((safe_mult(539, global_values.trace_length)), 65536))). + local pow546 = pow30 * pow545; // pow(trace_generator, (safe_div((safe_mult(135, global_values.trace_length)), 16384))). + local pow547 = pow30 * pow546; // pow(trace_generator, (safe_div((safe_mult(541, global_values.trace_length)), 65536))). + local pow548 = pow39 * pow547; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 2048))). + local pow549 = pow30 * pow548; // pow(trace_generator, (safe_div((safe_mult(545, global_values.trace_length)), 65536))). + local pow550 = pow30 * pow549; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 32768))). + local pow551 = pow30 * pow550; // pow(trace_generator, (safe_div((safe_mult(547, global_values.trace_length)), 65536))). + local pow552 = pow30 * pow551; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 16384))). + local pow553 = pow30 * pow552; // pow(trace_generator, (safe_div((safe_mult(549, global_values.trace_length)), 65536))). + local pow554 = pow30 * pow553; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 32768))). + local pow555 = pow30 * pow554; // pow(trace_generator, (safe_div((safe_mult(551, global_values.trace_length)), 65536))). + local pow556 = pow30 * pow555; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 8192))). + local pow557 = pow30 * pow556; // pow(trace_generator, (safe_div((safe_mult(553, global_values.trace_length)), 65536))). + local pow558 = pow30 * pow557; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 32768))). + local pow559 = pow30 * pow558; // pow(trace_generator, (safe_div((safe_mult(555, global_values.trace_length)), 65536))). + local pow560 = pow30 * pow559; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 16384))). + local pow561 = pow30 * pow560; // pow(trace_generator, (safe_div((safe_mult(557, global_values.trace_length)), 65536))). + local pow562 = pow30 * pow561; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 32768))). + local pow563 = pow30 * pow562; // pow(trace_generator, (safe_div((safe_mult(559, global_values.trace_length)), 65536))). + local pow564 = pow30 * pow563; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 4096))). + local pow565 = pow30 * pow564; // pow(trace_generator, (safe_div((safe_mult(561, global_values.trace_length)), 65536))). + local pow566 = pow30 * pow565; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 32768))). + local pow567 = pow30 * pow566; // pow(trace_generator, (safe_div((safe_mult(563, global_values.trace_length)), 65536))). + local pow568 = pow30 * pow567; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 16384))). + local pow569 = pow30 * pow568; // pow(trace_generator, (safe_div((safe_mult(565, global_values.trace_length)), 65536))). + local pow570 = pow30 * pow569; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 32768))). + local pow571 = pow30 * pow570; // pow(trace_generator, (safe_div((safe_mult(567, global_values.trace_length)), 65536))). + local pow572 = pow30 * pow571; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 8192))). + local pow573 = pow30 * pow572; // pow(trace_generator, (safe_div((safe_mult(569, global_values.trace_length)), 65536))). + local pow574 = pow30 * pow573; // pow(trace_generator, (safe_div((safe_mult(285, global_values.trace_length)), 32768))). + local pow575 = pow30 * pow574; // pow(trace_generator, (safe_div((safe_mult(571, global_values.trace_length)), 65536))). + local pow576 = pow30 * pow575; // pow(trace_generator, (safe_div((safe_mult(143, global_values.trace_length)), 16384))). + local pow577 = pow30 * pow576; // pow(trace_generator, (safe_div((safe_mult(573, global_values.trace_length)), 65536))). + local pow578 = pow39 * pow577; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 1024))). + local pow579 = pow30 * pow578; // pow(trace_generator, (safe_div((safe_mult(577, global_values.trace_length)), 65536))). + local pow580 = pow30 * pow579; // pow(trace_generator, (safe_div((safe_mult(289, global_values.trace_length)), 32768))). + local pow581 = pow30 * pow580; // pow(trace_generator, (safe_div((safe_mult(579, global_values.trace_length)), 65536))). + local pow582 = pow30 * pow581; // pow(trace_generator, (safe_div((safe_mult(145, global_values.trace_length)), 16384))). + local pow583 = pow30 * pow582; // pow(trace_generator, (safe_div((safe_mult(581, global_values.trace_length)), 65536))). + local pow584 = pow30 * pow583; // pow(trace_generator, (safe_div((safe_mult(291, global_values.trace_length)), 32768))). + local pow585 = pow30 * pow584; // pow(trace_generator, (safe_div((safe_mult(583, global_values.trace_length)), 65536))). + local pow586 = pow30 * pow585; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 8192))). + local pow587 = pow30 * pow586; // pow(trace_generator, (safe_div((safe_mult(585, global_values.trace_length)), 65536))). + local pow588 = pow30 * pow587; // pow(trace_generator, (safe_div((safe_mult(293, global_values.trace_length)), 32768))). + local pow589 = pow30 * pow588; // pow(trace_generator, (safe_div((safe_mult(587, global_values.trace_length)), 65536))). + local pow590 = pow30 * pow589; // pow(trace_generator, (safe_div((safe_mult(147, global_values.trace_length)), 16384))). + local pow591 = pow30 * pow590; // pow(trace_generator, (safe_div((safe_mult(589, global_values.trace_length)), 65536))). + local pow592 = pow30 * pow591; // pow(trace_generator, (safe_div((safe_mult(295, global_values.trace_length)), 32768))). + local pow593 = pow30 * pow592; // pow(trace_generator, (safe_div((safe_mult(591, global_values.trace_length)), 65536))). + local pow594 = pow30 * pow593; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 4096))). + local pow595 = pow30 * pow594; // pow(trace_generator, (safe_div((safe_mult(593, global_values.trace_length)), 65536))). + local pow596 = pow30 * pow595; // pow(trace_generator, (safe_div((safe_mult(297, global_values.trace_length)), 32768))). + local pow597 = pow30 * pow596; // pow(trace_generator, (safe_div((safe_mult(595, global_values.trace_length)), 65536))). + local pow598 = pow30 * pow597; // pow(trace_generator, (safe_div((safe_mult(149, global_values.trace_length)), 16384))). + local pow599 = pow30 * pow598; // pow(trace_generator, (safe_div((safe_mult(597, global_values.trace_length)), 65536))). + local pow600 = pow30 * pow599; // pow(trace_generator, (safe_div((safe_mult(299, global_values.trace_length)), 32768))). + local pow601 = pow30 * pow600; // pow(trace_generator, (safe_div((safe_mult(599, global_values.trace_length)), 65536))). + local pow602 = pow30 * pow601; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 8192))). + local pow603 = pow30 * pow602; // pow(trace_generator, (safe_div((safe_mult(601, global_values.trace_length)), 65536))). + local pow604 = pow30 * pow603; // pow(trace_generator, (safe_div((safe_mult(301, global_values.trace_length)), 32768))). + local pow605 = pow30 * pow604; // pow(trace_generator, (safe_div((safe_mult(603, global_values.trace_length)), 65536))). + local pow606 = pow30 * pow605; // pow(trace_generator, (safe_div((safe_mult(151, global_values.trace_length)), 16384))). + local pow607 = pow30 * pow606; // pow(trace_generator, (safe_div((safe_mult(605, global_values.trace_length)), 65536))). + local pow608 = pow39 * pow607; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 2048))). + local pow609 = pow30 * pow608; // pow(trace_generator, (safe_div((safe_mult(609, global_values.trace_length)), 65536))). + local pow610 = pow30 * pow609; // pow(trace_generator, (safe_div((safe_mult(305, global_values.trace_length)), 32768))). + local pow611 = pow30 * pow610; // pow(trace_generator, (safe_div((safe_mult(611, global_values.trace_length)), 65536))). + local pow612 = pow30 * pow611; // pow(trace_generator, (safe_div((safe_mult(153, global_values.trace_length)), 16384))). + local pow613 = pow30 * pow612; // pow(trace_generator, (safe_div((safe_mult(613, global_values.trace_length)), 65536))). + local pow614 = pow30 * pow613; // pow(trace_generator, (safe_div((safe_mult(307, global_values.trace_length)), 32768))). + local pow615 = pow30 * pow614; // pow(trace_generator, (safe_div((safe_mult(615, global_values.trace_length)), 65536))). + local pow616 = pow30 * pow615; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 8192))). + local pow617 = pow30 * pow616; // pow(trace_generator, (safe_div((safe_mult(617, global_values.trace_length)), 65536))). + local pow618 = pow30 * pow617; // pow(trace_generator, (safe_div((safe_mult(309, global_values.trace_length)), 32768))). + local pow619 = pow30 * pow618; // pow(trace_generator, (safe_div((safe_mult(619, global_values.trace_length)), 65536))). + local pow620 = pow30 * pow619; // pow(trace_generator, (safe_div((safe_mult(155, global_values.trace_length)), 16384))). + local pow621 = pow30 * pow620; // pow(trace_generator, (safe_div((safe_mult(621, global_values.trace_length)), 65536))). + local pow622 = pow30 * pow621; // pow(trace_generator, (safe_div((safe_mult(311, global_values.trace_length)), 32768))). + local pow623 = pow30 * pow622; // pow(trace_generator, (safe_div((safe_mult(623, global_values.trace_length)), 65536))). + local pow624 = pow30 * pow623; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 4096))). + local pow625 = pow30 * pow624; // pow(trace_generator, (safe_div((safe_mult(625, global_values.trace_length)), 65536))). + local pow626 = pow30 * pow625; // pow(trace_generator, (safe_div((safe_mult(313, global_values.trace_length)), 32768))). + local pow627 = pow30 * pow626; // pow(trace_generator, (safe_div((safe_mult(627, global_values.trace_length)), 65536))). + local pow628 = pow30 * pow627; // pow(trace_generator, (safe_div((safe_mult(157, global_values.trace_length)), 16384))). + local pow629 = pow30 * pow628; // pow(trace_generator, (safe_div((safe_mult(629, global_values.trace_length)), 65536))). + local pow630 = pow30 * pow629; // pow(trace_generator, (safe_div((safe_mult(315, global_values.trace_length)), 32768))). + local pow631 = pow30 * pow630; // pow(trace_generator, (safe_div((safe_mult(631, global_values.trace_length)), 65536))). + local pow632 = pow30 * pow631; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 8192))). + local pow633 = pow30 * pow632; // pow(trace_generator, (safe_div((safe_mult(633, global_values.trace_length)), 65536))). + local pow634 = pow30 * pow633; // pow(trace_generator, (safe_div((safe_mult(317, global_values.trace_length)), 32768))). + local pow635 = pow30 * pow634; // pow(trace_generator, (safe_div((safe_mult(635, global_values.trace_length)), 65536))). + local pow636 = pow30 * pow635; // pow(trace_generator, (safe_div((safe_mult(159, global_values.trace_length)), 16384))). + local pow637 = pow30 * pow636; // pow(trace_generator, (safe_div((safe_mult(637, global_values.trace_length)), 65536))). + local pow638 = pow39 * pow637; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 512))). + local pow639 = pow30 * pow638; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 65536))). + local pow640 = pow30 * pow639; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 32768))). + local pow641 = pow30 * pow640; // pow(trace_generator, (safe_div((safe_mult(643, global_values.trace_length)), 65536))). + local pow642 = pow30 * pow641; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 16384))). + local pow643 = pow30 * pow642; // pow(trace_generator, (safe_div((safe_mult(645, global_values.trace_length)), 65536))). + local pow644 = pow30 * pow643; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 32768))). + local pow645 = pow30 * pow644; // pow(trace_generator, (safe_div((safe_mult(647, global_values.trace_length)), 65536))). + local pow646 = pow30 * pow645; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 8192))). + local pow647 = pow30 * pow646; // pow(trace_generator, (safe_div((safe_mult(649, global_values.trace_length)), 65536))). + local pow648 = pow30 * pow647; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 32768))). + local pow649 = pow30 * pow648; // pow(trace_generator, (safe_div((safe_mult(651, global_values.trace_length)), 65536))). + local pow650 = pow30 * pow649; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 16384))). + local pow651 = pow30 * pow650; // pow(trace_generator, (safe_div((safe_mult(653, global_values.trace_length)), 65536))). + local pow652 = pow30 * pow651; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 32768))). + local pow653 = pow30 * pow652; // pow(trace_generator, (safe_div((safe_mult(655, global_values.trace_length)), 65536))). + local pow654 = pow30 * pow653; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 4096))). + local pow655 = pow30 * pow654; // pow(trace_generator, (safe_div((safe_mult(657, global_values.trace_length)), 65536))). + local pow656 = pow30 * pow655; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 32768))). + local pow657 = pow30 * pow656; // pow(trace_generator, (safe_div((safe_mult(659, global_values.trace_length)), 65536))). + local pow658 = pow30 * pow657; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 16384))). + local pow659 = pow30 * pow658; // pow(trace_generator, (safe_div((safe_mult(661, global_values.trace_length)), 65536))). + local pow660 = pow30 * pow659; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 32768))). + local pow661 = pow30 * pow660; // pow(trace_generator, (safe_div((safe_mult(663, global_values.trace_length)), 65536))). + local pow662 = pow30 * pow661; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 8192))). + local pow663 = pow30 * pow662; // pow(trace_generator, (safe_div((safe_mult(665, global_values.trace_length)), 65536))). + local pow664 = pow30 * pow663; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 32768))). + local pow665 = pow30 * pow664; // pow(trace_generator, (safe_div((safe_mult(667, global_values.trace_length)), 65536))). + local pow666 = pow30 * pow665; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 16384))). + local pow667 = pow30 * pow666; // pow(trace_generator, (safe_div((safe_mult(669, global_values.trace_length)), 65536))). + local pow668 = pow39 * pow667; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 2048))). + local pow669 = pow30 * pow668; // pow(trace_generator, (safe_div((safe_mult(673, global_values.trace_length)), 65536))). + local pow670 = pow30 * pow669; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 32768))). + local pow671 = pow30 * pow670; // pow(trace_generator, (safe_div((safe_mult(675, global_values.trace_length)), 65536))). + local pow672 = pow30 * pow671; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 16384))). + local pow673 = pow30 * pow672; // pow(trace_generator, (safe_div((safe_mult(677, global_values.trace_length)), 65536))). + local pow674 = pow30 * pow673; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 32768))). + local pow675 = pow30 * pow674; // pow(trace_generator, (safe_div((safe_mult(679, global_values.trace_length)), 65536))). + local pow676 = pow30 * pow675; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 8192))). + local pow677 = pow30 * pow676; // pow(trace_generator, (safe_div((safe_mult(681, global_values.trace_length)), 65536))). + local pow678 = pow30 * pow677; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 32768))). + local pow679 = pow30 * pow678; // pow(trace_generator, (safe_div((safe_mult(683, global_values.trace_length)), 65536))). + local pow680 = pow30 * pow679; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 16384))). + local pow681 = pow30 * pow680; // pow(trace_generator, (safe_div((safe_mult(685, global_values.trace_length)), 65536))). + local pow682 = pow30 * pow681; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 32768))). + local pow683 = pow30 * pow682; // pow(trace_generator, (safe_div((safe_mult(687, global_values.trace_length)), 65536))). + local pow684 = pow30 * pow683; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 4096))). + local pow685 = pow30 * pow684; // pow(trace_generator, (safe_div((safe_mult(689, global_values.trace_length)), 65536))). + local pow686 = pow30 * pow685; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 32768))). + local pow687 = pow30 * pow686; // pow(trace_generator, (safe_div((safe_mult(691, global_values.trace_length)), 65536))). + local pow688 = pow30 * pow687; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 16384))). + local pow689 = pow30 * pow688; // pow(trace_generator, (safe_div((safe_mult(693, global_values.trace_length)), 65536))). + local pow690 = pow30 * pow689; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 32768))). + local pow691 = pow30 * pow690; // pow(trace_generator, (safe_div((safe_mult(695, global_values.trace_length)), 65536))). + local pow692 = pow30 * pow691; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 8192))). + local pow693 = pow30 * pow692; // pow(trace_generator, (safe_div((safe_mult(697, global_values.trace_length)), 65536))). + local pow694 = pow30 * pow693; // pow(trace_generator, (safe_div((safe_mult(349, global_values.trace_length)), 32768))). + local pow695 = pow30 * pow694; // pow(trace_generator, (safe_div((safe_mult(699, global_values.trace_length)), 65536))). + local pow696 = pow30 * pow695; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 16384))). + local pow697 = pow30 * pow696; // pow(trace_generator, (safe_div((safe_mult(701, global_values.trace_length)), 65536))). + local pow698 = pow39 * pow697; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 1024))). + local pow699 = pow30 * pow698; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 65536))). + local pow700 = pow30 * pow699; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 32768))). + local pow701 = pow30 * pow700; // pow(trace_generator, (safe_div((safe_mult(707, global_values.trace_length)), 65536))). + local pow702 = pow30 * pow701; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 16384))). + local pow703 = pow30 * pow702; // pow(trace_generator, (safe_div((safe_mult(709, global_values.trace_length)), 65536))). + local pow704 = pow30 * pow703; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 32768))). + local pow705 = pow30 * pow704; // pow(trace_generator, (safe_div((safe_mult(711, global_values.trace_length)), 65536))). + local pow706 = pow30 * pow705; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 8192))). + local pow707 = pow30 * pow706; // pow(trace_generator, (safe_div((safe_mult(713, global_values.trace_length)), 65536))). + local pow708 = pow30 * pow707; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 32768))). + local pow709 = pow30 * pow708; // pow(trace_generator, (safe_div((safe_mult(715, global_values.trace_length)), 65536))). + local pow710 = pow30 * pow709; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 16384))). + local pow711 = pow30 * pow710; // pow(trace_generator, (safe_div((safe_mult(717, global_values.trace_length)), 65536))). + local pow712 = pow30 * pow711; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 32768))). + local pow713 = pow30 * pow712; // pow(trace_generator, (safe_div((safe_mult(719, global_values.trace_length)), 65536))). + local pow714 = pow30 * pow713; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 4096))). + local pow715 = pow30 * pow714; // pow(trace_generator, (safe_div((safe_mult(721, global_values.trace_length)), 65536))). + local pow716 = pow30 * pow715; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 32768))). + local pow717 = pow30 * pow716; // pow(trace_generator, (safe_div((safe_mult(723, global_values.trace_length)), 65536))). + local pow718 = pow30 * pow717; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 16384))). + local pow719 = pow30 * pow718; // pow(trace_generator, (safe_div((safe_mult(725, global_values.trace_length)), 65536))). + local pow720 = pow30 * pow719; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 32768))). + local pow721 = pow30 * pow720; // pow(trace_generator, (safe_div((safe_mult(727, global_values.trace_length)), 65536))). + local pow722 = pow30 * pow721; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 8192))). + local pow723 = pow30 * pow722; // pow(trace_generator, (safe_div((safe_mult(729, global_values.trace_length)), 65536))). + local pow724 = pow30 * pow723; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 32768))). + local pow725 = pow30 * pow724; // pow(trace_generator, (safe_div((safe_mult(731, global_values.trace_length)), 65536))). + local pow726 = pow30 * pow725; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 16384))). + local pow727 = pow30 * pow726; // pow(trace_generator, (safe_div((safe_mult(733, global_values.trace_length)), 65536))). + local pow728 = pow39 * pow727; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 2048))). + local pow729 = pow30 * pow728; // pow(trace_generator, (safe_div((safe_mult(737, global_values.trace_length)), 65536))). + local pow730 = pow30 * pow729; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 32768))). + local pow731 = pow30 * pow730; // pow(trace_generator, (safe_div((safe_mult(739, global_values.trace_length)), 65536))). + local pow732 = pow30 * pow731; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 16384))). + local pow733 = pow30 * pow732; // pow(trace_generator, (safe_div((safe_mult(741, global_values.trace_length)), 65536))). + local pow734 = pow30 * pow733; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 32768))). + local pow735 = pow30 * pow734; // pow(trace_generator, (safe_div((safe_mult(743, global_values.trace_length)), 65536))). + local pow736 = pow30 * pow735; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 8192))). + local pow737 = pow30 * pow736; // pow(trace_generator, (safe_div((safe_mult(745, global_values.trace_length)), 65536))). + local pow738 = pow30 * pow737; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 32768))). + local pow739 = pow30 * pow738; // pow(trace_generator, (safe_div((safe_mult(747, global_values.trace_length)), 65536))). + local pow740 = pow30 * pow739; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 16384))). + local pow741 = pow30 * pow740; // pow(trace_generator, (safe_div((safe_mult(749, global_values.trace_length)), 65536))). + local pow742 = pow30 * pow741; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 32768))). + local pow743 = pow30 * pow742; // pow(trace_generator, (safe_div((safe_mult(751, global_values.trace_length)), 65536))). + local pow744 = pow30 * pow743; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 4096))). + local pow745 = pow30 * pow744; // pow(trace_generator, (safe_div((safe_mult(753, global_values.trace_length)), 65536))). + local pow746 = pow30 * pow745; // pow(trace_generator, (safe_div((safe_mult(377, global_values.trace_length)), 32768))). + local pow747 = pow30 * pow746; // pow(trace_generator, (safe_div((safe_mult(755, global_values.trace_length)), 65536))). + local pow748 = pow30 * pow747; // pow(trace_generator, (safe_div((safe_mult(189, global_values.trace_length)), 16384))). + local pow749 = pow30 * pow748; // pow(trace_generator, (safe_div((safe_mult(757, global_values.trace_length)), 65536))). + local pow750 = pow30 * pow749; // pow(trace_generator, (safe_div((safe_mult(379, global_values.trace_length)), 32768))). + local pow751 = pow30 * pow750; // pow(trace_generator, (safe_div((safe_mult(759, global_values.trace_length)), 65536))). + local pow752 = pow30 * pow751; // pow(trace_generator, (safe_div((safe_mult(95, global_values.trace_length)), 8192))). + local pow753 = pow30 * pow752; // pow(trace_generator, (safe_div((safe_mult(761, global_values.trace_length)), 65536))). + local pow754 = pow30 * pow753; // pow(trace_generator, (safe_div((safe_mult(381, global_values.trace_length)), 32768))). + local pow755 = pow30 * pow754; // pow(trace_generator, (safe_div((safe_mult(763, global_values.trace_length)), 65536))). + local pow756 = pow30 * pow755; // pow(trace_generator, (safe_div((safe_mult(191, global_values.trace_length)), 16384))). + local pow757 = pow30 * pow756; // pow(trace_generator, (safe_div((safe_mult(765, global_values.trace_length)), 65536))). + local pow758 = pow39 * pow757; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 256))). + local pow759 = pow30 * pow758; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 65536))). + local pow760 = pow30 * pow759; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 32768))). + local pow761 = pow30 * pow760; // pow(trace_generator, (safe_div((safe_mult(771, global_values.trace_length)), 65536))). + local pow762 = pow30 * pow761; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 16384))). + local pow763 = pow30 * pow762; // pow(trace_generator, (safe_div((safe_mult(773, global_values.trace_length)), 65536))). + local pow764 = pow30 * pow763; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 32768))). + local pow765 = pow30 * pow764; // pow(trace_generator, (safe_div((safe_mult(775, global_values.trace_length)), 65536))). + local pow766 = pow30 * pow765; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 8192))). + local pow767 = pow30 * pow766; // pow(trace_generator, (safe_div((safe_mult(777, global_values.trace_length)), 65536))). + local pow768 = pow30 * pow767; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 32768))). + local pow769 = pow30 * pow768; // pow(trace_generator, (safe_div((safe_mult(779, global_values.trace_length)), 65536))). + local pow770 = pow30 * pow769; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 16384))). + local pow771 = pow30 * pow770; // pow(trace_generator, (safe_div((safe_mult(781, global_values.trace_length)), 65536))). + local pow772 = pow30 * pow771; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 32768))). + local pow773 = pow30 * pow772; // pow(trace_generator, (safe_div((safe_mult(783, global_values.trace_length)), 65536))). + local pow774 = pow30 * pow773; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 4096))). + local pow775 = pow30 * pow774; // pow(trace_generator, (safe_div((safe_mult(785, global_values.trace_length)), 65536))). + local pow776 = pow30 * pow775; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 32768))). + local pow777 = pow30 * pow776; // pow(trace_generator, (safe_div((safe_mult(787, global_values.trace_length)), 65536))). + local pow778 = pow30 * pow777; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 16384))). + local pow779 = pow30 * pow778; // pow(trace_generator, (safe_div((safe_mult(789, global_values.trace_length)), 65536))). + local pow780 = pow30 * pow779; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 32768))). + local pow781 = pow30 * pow780; // pow(trace_generator, (safe_div((safe_mult(791, global_values.trace_length)), 65536))). + local pow782 = pow30 * pow781; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 8192))). + local pow783 = pow30 * pow782; // pow(trace_generator, (safe_div((safe_mult(793, global_values.trace_length)), 65536))). + local pow784 = pow30 * pow783; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 32768))). + local pow785 = pow30 * pow784; // pow(trace_generator, (safe_div((safe_mult(795, global_values.trace_length)), 65536))). + local pow786 = pow30 * pow785; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 16384))). + local pow787 = pow30 * pow786; // pow(trace_generator, (safe_div((safe_mult(797, global_values.trace_length)), 65536))). + local pow788 = pow71 * pow787; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 1024))). + local pow789 = pow98 * pow788; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 512))). + local pow790 = pow98 * pow789; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 1024))). + local pow791 = pow98 * pow790; // pow(trace_generator, (safe_div(global_values.trace_length, 64))). + local pow792 = pow30 * pow791; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 65536))). + local pow793 = pow30 * pow792; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 32768))). + local pow794 = pow30 * pow793; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 65536))). + local pow795 = pow30 * pow794; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 16384))). + local pow796 = pow30 * pow795; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 65536))). + local pow797 = pow30 * pow796; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 32768))). + local pow798 = pow30 * pow797; // pow(trace_generator, (safe_div((safe_mult(1031, global_values.trace_length)), 65536))). + local pow799 = pow30 * pow798; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 8192))). + local pow800 = pow30 * pow799; // pow(trace_generator, (safe_div((safe_mult(1033, global_values.trace_length)), 65536))). + local pow801 = pow30 * pow800; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 32768))). + local pow802 = pow30 * pow801; // pow(trace_generator, (safe_div((safe_mult(1035, global_values.trace_length)), 65536))). + local pow803 = pow30 * pow802; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 16384))). + local pow804 = pow30 * pow803; // pow(trace_generator, (safe_div((safe_mult(1037, global_values.trace_length)), 65536))). + local pow805 = pow30 * pow804; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 32768))). + local pow806 = pow30 * pow805; // pow(trace_generator, (safe_div((safe_mult(1039, global_values.trace_length)), 65536))). + local pow807 = pow30 * pow806; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 4096))). + local pow808 = pow30 * pow807; // pow(trace_generator, (safe_div((safe_mult(1041, global_values.trace_length)), 65536))). + local pow809 = pow30 * pow808; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 32768))). + local pow810 = pow30 * pow809; // pow(trace_generator, (safe_div((safe_mult(1043, global_values.trace_length)), 65536))). + local pow811 = pow30 * pow810; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 16384))). + local pow812 = pow30 * pow811; // pow(trace_generator, (safe_div((safe_mult(1045, global_values.trace_length)), 65536))). + local pow813 = pow30 * pow812; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 32768))). + local pow814 = pow30 * pow813; // pow(trace_generator, (safe_div((safe_mult(1047, global_values.trace_length)), 65536))). + local pow815 = pow77 * pow814; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 1024))). + local pow816 = pow98 * pow815; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 512))). + local pow817 = pow98 * pow816; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 1024))). + local pow818 = pow98 * pow817; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 256))). + local pow819 = pow98 * pow818; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 1024))). + local pow820 = pow98 * pow819; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 512))). + local pow821 = pow98 * pow820; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 1024))). + local pow822 = pow578 * pow821; // pow(trace_generator, (safe_div(global_values.trace_length, 32))). + local pow823 = pow30 * pow822; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 65536))). + local pow824 = pow30 * pow823; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 32768))). + local pow825 = pow30 * pow824; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 65536))). + local pow826 = pow30 * pow825; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 16384))). + local pow827 = pow30 * pow826; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 65536))). + local pow828 = pow30 * pow827; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 32768))). + local pow829 = pow30 * pow828; // pow(trace_generator, (safe_div((safe_mult(2055, global_values.trace_length)), 65536))). + local pow830 = pow30 * pow829; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 8192))). + local pow831 = pow30 * pow830; // pow(trace_generator, (safe_div((safe_mult(2057, global_values.trace_length)), 65536))). + local pow832 = pow30 * pow831; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 32768))). + local pow833 = pow30 * pow832; // pow(trace_generator, (safe_div((safe_mult(2059, global_values.trace_length)), 65536))). + local pow834 = pow30 * pow833; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 16384))). + local pow835 = pow30 * pow834; // pow(trace_generator, (safe_div((safe_mult(2061, global_values.trace_length)), 65536))). + local pow836 = pow30 * pow835; // pow(trace_generator, (safe_div((safe_mult(1031, global_values.trace_length)), 32768))). + local pow837 = pow30 * pow836; // pow(trace_generator, (safe_div((safe_mult(2063, global_values.trace_length)), 65536))). + local pow838 = pow30 * pow837; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 4096))). + local pow839 = pow30 * pow838; // pow(trace_generator, (safe_div((safe_mult(2065, global_values.trace_length)), 65536))). + local pow840 = pow30 * pow839; // pow(trace_generator, (safe_div((safe_mult(1033, global_values.trace_length)), 32768))). + local pow841 = pow30 * pow840; // pow(trace_generator, (safe_div((safe_mult(2067, global_values.trace_length)), 65536))). + local pow842 = pow30 * pow841; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 16384))). + local pow843 = pow30 * pow842; // pow(trace_generator, (safe_div((safe_mult(2069, global_values.trace_length)), 65536))). + local pow844 = pow30 * pow843; // pow(trace_generator, (safe_div((safe_mult(1035, global_values.trace_length)), 32768))). + local pow845 = pow30 * pow844; // pow(trace_generator, (safe_div((safe_mult(2071, global_values.trace_length)), 65536))). + local pow846 = pow77 * pow845; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 1024))). + local pow847 = pow98 * pow846; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 512))). + local pow848 = pow98 * pow847; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 1024))). + local pow849 = pow98 * pow848; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 256))). + local pow850 = pow98 * pow849; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 1024))). + local pow851 = pow98 * pow850; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 512))). + local pow852 = pow98 * pow851; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 1024))). + local pow853 = pow98 * pow852; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 128))). + local pow854 = pow98 * pow853; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 1024))). + local pow855 = pow98 * pow854; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 512))). + local pow856 = pow98 * pow855; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 1024))). + local pow857 = pow98 * pow856; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 256))). + local pow858 = pow98 * pow857; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 1024))). + local pow859 = pow98 * pow858; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 512))). + local pow860 = pow98 * pow859; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 1024))). + local pow861 = pow98 * pow860; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 64))). + local pow862 = pow30 * pow861; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 65536))). + local pow863 = pow30 * pow862; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 32768))). + local pow864 = pow30 * pow863; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 65536))). + local pow865 = pow30 * pow864; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 16384))). + local pow866 = pow30 * pow865; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 65536))). + local pow867 = pow30 * pow866; // pow(trace_generator, (safe_div((safe_mult(1539, global_values.trace_length)), 32768))). + local pow868 = pow30 * pow867; // pow(trace_generator, (safe_div((safe_mult(3079, global_values.trace_length)), 65536))). + local pow869 = pow30 * pow868; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 8192))). + local pow870 = pow30 * pow869; // pow(trace_generator, (safe_div((safe_mult(3081, global_values.trace_length)), 65536))). + local pow871 = pow30 * pow870; // pow(trace_generator, (safe_div((safe_mult(1541, global_values.trace_length)), 32768))). + local pow872 = pow30 * pow871; // pow(trace_generator, (safe_div((safe_mult(3083, global_values.trace_length)), 65536))). + local pow873 = pow30 * pow872; // pow(trace_generator, (safe_div((safe_mult(771, global_values.trace_length)), 16384))). + local pow874 = pow30 * pow873; // pow(trace_generator, (safe_div((safe_mult(3085, global_values.trace_length)), 65536))). + local pow875 = pow30 * pow874; // pow(trace_generator, (safe_div((safe_mult(1543, global_values.trace_length)), 32768))). + local pow876 = pow30 * pow875; // pow(trace_generator, (safe_div((safe_mult(3087, global_values.trace_length)), 65536))). + local pow877 = pow30 * pow876; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 4096))). + local pow878 = pow30 * pow877; // pow(trace_generator, (safe_div((safe_mult(3089, global_values.trace_length)), 65536))). + local pow879 = pow30 * pow878; // pow(trace_generator, (safe_div((safe_mult(1545, global_values.trace_length)), 32768))). + local pow880 = pow30 * pow879; // pow(trace_generator, (safe_div((safe_mult(3091, global_values.trace_length)), 65536))). + local pow881 = pow30 * pow880; // pow(trace_generator, (safe_div((safe_mult(773, global_values.trace_length)), 16384))). + local pow882 = pow30 * pow881; // pow(trace_generator, (safe_div((safe_mult(3093, global_values.trace_length)), 65536))). + local pow883 = pow30 * pow882; // pow(trace_generator, (safe_div((safe_mult(1547, global_values.trace_length)), 32768))). + local pow884 = pow30 * pow883; // pow(trace_generator, (safe_div((safe_mult(3095, global_values.trace_length)), 65536))). + local pow885 = pow77 * pow884; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 1024))). + local pow886 = pow98 * pow885; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 512))). + local pow887 = pow98 * pow886; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 1024))). + local pow888 = pow98 * pow887; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 256))). + local pow889 = pow98 * pow888; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 1024))). + local pow890 = pow98 * pow889; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 512))). + local pow891 = pow98 * pow890; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 1024))). + local pow892 = pow578 * pow891; // pow(trace_generator, (safe_div(global_values.trace_length, 16))). + local pow893 = pow30 * pow892; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 65536))). + local pow894 = pow30 * pow893; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 32768))). + local pow895 = pow30 * pow894; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 65536))). + local pow896 = pow30 * pow895; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 16384))). + local pow897 = pow30 * pow896; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 65536))). + local pow898 = pow30 * pow897; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 32768))). + local pow899 = pow30 * pow898; // pow(trace_generator, (safe_div((safe_mult(4103, global_values.trace_length)), 65536))). + local pow900 = pow30 * pow899; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 8192))). + local pow901 = pow30 * pow900; // pow(trace_generator, (safe_div((safe_mult(4105, global_values.trace_length)), 65536))). + local pow902 = pow30 * pow901; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 32768))). + local pow903 = pow30 * pow902; // pow(trace_generator, (safe_div((safe_mult(4107, global_values.trace_length)), 65536))). + local pow904 = pow30 * pow903; // pow(trace_generator, (safe_div((safe_mult(1027, global_values.trace_length)), 16384))). + local pow905 = pow30 * pow904; // pow(trace_generator, (safe_div((safe_mult(4109, global_values.trace_length)), 65536))). + local pow906 = pow30 * pow905; // pow(trace_generator, (safe_div((safe_mult(2055, global_values.trace_length)), 32768))). + local pow907 = pow30 * pow906; // pow(trace_generator, (safe_div((safe_mult(4111, global_values.trace_length)), 65536))). + local pow908 = pow30 * pow907; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 4096))). + local pow909 = pow30 * pow908; // pow(trace_generator, (safe_div((safe_mult(4113, global_values.trace_length)), 65536))). + local pow910 = pow30 * pow909; // pow(trace_generator, (safe_div((safe_mult(2057, global_values.trace_length)), 32768))). + local pow911 = pow30 * pow910; // pow(trace_generator, (safe_div((safe_mult(4115, global_values.trace_length)), 65536))). + local pow912 = pow30 * pow911; // pow(trace_generator, (safe_div((safe_mult(1029, global_values.trace_length)), 16384))). + local pow913 = pow30 * pow912; // pow(trace_generator, (safe_div((safe_mult(4117, global_values.trace_length)), 65536))). + local pow914 = pow30 * pow913; // pow(trace_generator, (safe_div((safe_mult(2059, global_values.trace_length)), 32768))). + local pow915 = pow30 * pow914; // pow(trace_generator, (safe_div((safe_mult(4119, global_values.trace_length)), 65536))). + local pow916 = pow77 * pow915; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 1024))). + local pow917 = pow98 * pow916; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 512))). + local pow918 = pow98 * pow917; // pow(trace_generator, (safe_div((safe_mult(67, global_values.trace_length)), 1024))). + local pow919 = pow98 * pow918; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 256))). + local pow920 = pow98 * pow919; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 1024))). + local pow921 = pow98 * pow920; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 512))). + local pow922 = pow98 * pow921; // pow(trace_generator, (safe_div((safe_mult(71, global_values.trace_length)), 1024))). + local pow923 = pow98 * pow922; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 128))). + local pow924 = pow98 * pow923; // pow(trace_generator, (safe_div((safe_mult(73, global_values.trace_length)), 1024))). + local pow925 = pow98 * pow924; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 512))). + local pow926 = pow98 * pow925; // pow(trace_generator, (safe_div((safe_mult(75, global_values.trace_length)), 1024))). + local pow927 = pow98 * pow926; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 256))). + local pow928 = pow98 * pow927; // pow(trace_generator, (safe_div((safe_mult(77, global_values.trace_length)), 1024))). + local pow929 = pow98 * pow928; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 512))). + local pow930 = pow98 * pow929; // pow(trace_generator, (safe_div((safe_mult(79, global_values.trace_length)), 1024))). + local pow931 = pow98 * pow930; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 64))). + local pow932 = pow30 * pow931; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 65536))). + local pow933 = pow30 * pow932; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 32768))). + local pow934 = pow30 * pow933; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 65536))). + local pow935 = pow30 * pow934; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 16384))). + local pow936 = pow30 * pow935; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 65536))). + local pow937 = pow30 * pow936; // pow(trace_generator, (safe_div((safe_mult(2563, global_values.trace_length)), 32768))). + local pow938 = pow30 * pow937; // pow(trace_generator, (safe_div((safe_mult(5127, global_values.trace_length)), 65536))). + local pow939 = pow30 * pow938; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 8192))). + local pow940 = pow30 * pow939; // pow(trace_generator, (safe_div((safe_mult(5129, global_values.trace_length)), 65536))). + local pow941 = pow30 * pow940; // pow(trace_generator, (safe_div((safe_mult(2565, global_values.trace_length)), 32768))). + local pow942 = pow30 * pow941; // pow(trace_generator, (safe_div((safe_mult(5131, global_values.trace_length)), 65536))). + local pow943 = pow30 * pow942; // pow(trace_generator, (safe_div((safe_mult(1283, global_values.trace_length)), 16384))). + local pow944 = pow30 * pow943; // pow(trace_generator, (safe_div((safe_mult(5133, global_values.trace_length)), 65536))). + local pow945 = pow30 * pow944; // pow(trace_generator, (safe_div((safe_mult(2567, global_values.trace_length)), 32768))). + local pow946 = pow30 * pow945; // pow(trace_generator, (safe_div((safe_mult(5135, global_values.trace_length)), 65536))). + local pow947 = pow30 * pow946; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 4096))). + local pow948 = pow30 * pow947; // pow(trace_generator, (safe_div((safe_mult(5137, global_values.trace_length)), 65536))). + local pow949 = pow30 * pow948; // pow(trace_generator, (safe_div((safe_mult(2569, global_values.trace_length)), 32768))). + local pow950 = pow30 * pow949; // pow(trace_generator, (safe_div((safe_mult(5139, global_values.trace_length)), 65536))). + local pow951 = pow30 * pow950; // pow(trace_generator, (safe_div((safe_mult(1285, global_values.trace_length)), 16384))). + local pow952 = pow30 * pow951; // pow(trace_generator, (safe_div((safe_mult(5141, global_values.trace_length)), 65536))). + local pow953 = pow30 * pow952; // pow(trace_generator, (safe_div((safe_mult(2571, global_values.trace_length)), 32768))). + local pow954 = pow30 * pow953; // pow(trace_generator, (safe_div((safe_mult(5143, global_values.trace_length)), 65536))). + local pow955 = pow77 * pow954; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 1024))). + local pow956 = pow98 * pow955; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 512))). + local pow957 = pow98 * pow956; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 1024))). + local pow958 = pow98 * pow957; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 256))). + local pow959 = pow98 * pow958; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 1024))). + local pow960 = pow98 * pow959; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 512))). + local pow961 = pow98 * pow960; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 1024))). + local pow962 = pow578 * pow961; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 32))). + local pow963 = pow30 * pow962; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 65536))). + local pow964 = pow30 * pow963; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 32768))). + local pow965 = pow30 * pow964; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 65536))). + local pow966 = pow30 * pow965; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 16384))). + local pow967 = pow30 * pow966; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 65536))). + local pow968 = pow30 * pow967; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 32768))). + local pow969 = pow30 * pow968; // pow(trace_generator, (safe_div((safe_mult(6151, global_values.trace_length)), 65536))). + local pow970 = pow30 * pow969; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 8192))). + local pow971 = pow30 * pow970; // pow(trace_generator, (safe_div((safe_mult(6153, global_values.trace_length)), 65536))). + local pow972 = pow30 * pow971; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 32768))). + local pow973 = pow30 * pow972; // pow(trace_generator, (safe_div((safe_mult(6155, global_values.trace_length)), 65536))). + local pow974 = pow30 * pow973; // pow(trace_generator, (safe_div((safe_mult(1539, global_values.trace_length)), 16384))). + local pow975 = pow30 * pow974; // pow(trace_generator, (safe_div((safe_mult(6157, global_values.trace_length)), 65536))). + local pow976 = pow30 * pow975; // pow(trace_generator, (safe_div((safe_mult(3079, global_values.trace_length)), 32768))). + local pow977 = pow30 * pow976; // pow(trace_generator, (safe_div((safe_mult(6159, global_values.trace_length)), 65536))). + local pow978 = pow30 * pow977; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 4096))). + local pow979 = pow30 * pow978; // pow(trace_generator, (safe_div((safe_mult(6161, global_values.trace_length)), 65536))). + local pow980 = pow30 * pow979; // pow(trace_generator, (safe_div((safe_mult(3081, global_values.trace_length)), 32768))). + local pow981 = pow30 * pow980; // pow(trace_generator, (safe_div((safe_mult(6163, global_values.trace_length)), 65536))). + local pow982 = pow30 * pow981; // pow(trace_generator, (safe_div((safe_mult(1541, global_values.trace_length)), 16384))). + local pow983 = pow30 * pow982; // pow(trace_generator, (safe_div((safe_mult(6165, global_values.trace_length)), 65536))). + local pow984 = pow30 * pow983; // pow(trace_generator, (safe_div((safe_mult(3083, global_values.trace_length)), 32768))). + local pow985 = pow30 * pow984; // pow(trace_generator, (safe_div((safe_mult(6167, global_values.trace_length)), 65536))). + local pow986 = pow791 * pow962; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 64))). + local pow987 = pow30 * pow986; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 65536))). + local pow988 = pow30 * pow987; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 32768))). + local pow989 = pow30 * pow988; // pow(trace_generator, (safe_div((safe_mult(7171, global_values.trace_length)), 65536))). + local pow990 = pow30 * pow989; // pow(trace_generator, (safe_div((safe_mult(1793, global_values.trace_length)), 16384))). + local pow991 = pow30 * pow990; // pow(trace_generator, (safe_div((safe_mult(7173, global_values.trace_length)), 65536))). + local pow992 = pow30 * pow991; // pow(trace_generator, (safe_div((safe_mult(3587, global_values.trace_length)), 32768))). + local pow993 = pow30 * pow992; // pow(trace_generator, (safe_div((safe_mult(7175, global_values.trace_length)), 65536))). + local pow994 = pow30 * pow993; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 8192))). + local pow995 = pow30 * pow994; // pow(trace_generator, (safe_div((safe_mult(7177, global_values.trace_length)), 65536))). + local pow996 = pow30 * pow995; // pow(trace_generator, (safe_div((safe_mult(3589, global_values.trace_length)), 32768))). + local pow997 = pow30 * pow996; // pow(trace_generator, (safe_div((safe_mult(7179, global_values.trace_length)), 65536))). + local pow998 = pow30 * pow997; // pow(trace_generator, (safe_div((safe_mult(1795, global_values.trace_length)), 16384))). + local pow999 = pow30 * pow998; // pow(trace_generator, (safe_div((safe_mult(7181, global_values.trace_length)), 65536))). + local pow1000 = pow30 * pow999; // pow(trace_generator, (safe_div((safe_mult(3591, global_values.trace_length)), 32768))). + local pow1001 = pow30 * pow1000; // pow(trace_generator, (safe_div((safe_mult(7183, global_values.trace_length)), 65536))). + local pow1002 = pow30 * pow1001; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 4096))). + local pow1003 = pow30 * pow1002; // pow(trace_generator, (safe_div((safe_mult(7185, global_values.trace_length)), 65536))). + local pow1004 = pow30 * pow1003; // pow(trace_generator, (safe_div((safe_mult(3593, global_values.trace_length)), 32768))). + local pow1005 = pow30 * pow1004; // pow(trace_generator, (safe_div((safe_mult(7187, global_values.trace_length)), 65536))). + local pow1006 = pow30 * pow1005; // pow(trace_generator, (safe_div((safe_mult(1797, global_values.trace_length)), 16384))). + local pow1007 = pow30 * pow1006; // pow(trace_generator, (safe_div((safe_mult(7189, global_values.trace_length)), 65536))). + local pow1008 = pow30 * pow1007; // pow(trace_generator, (safe_div((safe_mult(3595, global_values.trace_length)), 32768))). + local pow1009 = pow30 * pow1008; // pow(trace_generator, (safe_div((safe_mult(7191, global_values.trace_length)), 65536))). + local pow1010 = pow791 * pow986; // pow(trace_generator, (safe_div(global_values.trace_length, 8))). + local pow1011 = pow30 * pow1010; // pow(trace_generator, (safe_div((safe_mult(8193, global_values.trace_length)), 65536))). + local pow1012 = pow30 * pow1011; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 32768))). + local pow1013 = pow30 * pow1012; // pow(trace_generator, (safe_div((safe_mult(8195, global_values.trace_length)), 65536))). + local pow1014 = pow30 * pow1013; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 16384))). + local pow1015 = pow30 * pow1014; // pow(trace_generator, (safe_div((safe_mult(8197, global_values.trace_length)), 65536))). + local pow1016 = pow30 * pow1015; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 32768))). + local pow1017 = pow30 * pow1016; // pow(trace_generator, (safe_div((safe_mult(8199, global_values.trace_length)), 65536))). + local pow1018 = pow30 * pow1017; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 8192))). + local pow1019 = pow30 * pow1018; // pow(trace_generator, (safe_div((safe_mult(8201, global_values.trace_length)), 65536))). + local pow1020 = pow30 * pow1019; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 32768))). + local pow1021 = pow30 * pow1020; // pow(trace_generator, (safe_div((safe_mult(8203, global_values.trace_length)), 65536))). + local pow1022 = pow30 * pow1021; // pow(trace_generator, (safe_div((safe_mult(2051, global_values.trace_length)), 16384))). + local pow1023 = pow30 * pow1022; // pow(trace_generator, (safe_div((safe_mult(8205, global_values.trace_length)), 65536))). + local pow1024 = pow30 * pow1023; // pow(trace_generator, (safe_div((safe_mult(4103, global_values.trace_length)), 32768))). + local pow1025 = pow30 * pow1024; // pow(trace_generator, (safe_div((safe_mult(8207, global_values.trace_length)), 65536))). + local pow1026 = pow30 * pow1025; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 4096))). + local pow1027 = pow30 * pow1026; // pow(trace_generator, (safe_div((safe_mult(8209, global_values.trace_length)), 65536))). + local pow1028 = pow30 * pow1027; // pow(trace_generator, (safe_div((safe_mult(4105, global_values.trace_length)), 32768))). + local pow1029 = pow30 * pow1028; // pow(trace_generator, (safe_div((safe_mult(8211, global_values.trace_length)), 65536))). + local pow1030 = pow30 * pow1029; // pow(trace_generator, (safe_div((safe_mult(2053, global_values.trace_length)), 16384))). + local pow1031 = pow30 * pow1030; // pow(trace_generator, (safe_div((safe_mult(8213, global_values.trace_length)), 65536))). + local pow1032 = pow30 * pow1031; // pow(trace_generator, (safe_div((safe_mult(4107, global_values.trace_length)), 32768))). + local pow1033 = pow30 * pow1032; // pow(trace_generator, (safe_div((safe_mult(8215, global_values.trace_length)), 65536))). + local pow1034 = pow791 * pow1010; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 64))). + local pow1035 = pow30 * pow1034; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 65536))). + local pow1036 = pow30 * pow1035; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 32768))). + local pow1037 = pow30 * pow1036; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 65536))). + local pow1038 = pow30 * pow1037; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 16384))). + local pow1039 = pow30 * pow1038; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 65536))). + local pow1040 = pow30 * pow1039; // pow(trace_generator, (safe_div((safe_mult(4611, global_values.trace_length)), 32768))). + local pow1041 = pow30 * pow1040; // pow(trace_generator, (safe_div((safe_mult(9223, global_values.trace_length)), 65536))). + local pow1042 = pow30 * pow1041; // pow(trace_generator, (safe_div((safe_mult(1153, global_values.trace_length)), 8192))). + local pow1043 = pow30 * pow1042; // pow(trace_generator, (safe_div((safe_mult(9225, global_values.trace_length)), 65536))). + local pow1044 = pow30 * pow1043; // pow(trace_generator, (safe_div((safe_mult(4613, global_values.trace_length)), 32768))). + local pow1045 = pow30 * pow1044; // pow(trace_generator, (safe_div((safe_mult(9227, global_values.trace_length)), 65536))). + local pow1046 = pow30 * pow1045; // pow(trace_generator, (safe_div((safe_mult(2307, global_values.trace_length)), 16384))). + local pow1047 = pow30 * pow1046; // pow(trace_generator, (safe_div((safe_mult(9229, global_values.trace_length)), 65536))). + local pow1048 = pow30 * pow1047; // pow(trace_generator, (safe_div((safe_mult(4615, global_values.trace_length)), 32768))). + local pow1049 = pow30 * pow1048; // pow(trace_generator, (safe_div((safe_mult(9231, global_values.trace_length)), 65536))). + local pow1050 = pow30 * pow1049; // pow(trace_generator, (safe_div((safe_mult(577, global_values.trace_length)), 4096))). + local pow1051 = pow30 * pow1050; // pow(trace_generator, (safe_div((safe_mult(9233, global_values.trace_length)), 65536))). + local pow1052 = pow30 * pow1051; // pow(trace_generator, (safe_div((safe_mult(4617, global_values.trace_length)), 32768))). + local pow1053 = pow30 * pow1052; // pow(trace_generator, (safe_div((safe_mult(9235, global_values.trace_length)), 65536))). + local pow1054 = pow30 * pow1053; // pow(trace_generator, (safe_div((safe_mult(2309, global_values.trace_length)), 16384))). + local pow1055 = pow30 * pow1054; // pow(trace_generator, (safe_div((safe_mult(9237, global_values.trace_length)), 65536))). + local pow1056 = pow30 * pow1055; // pow(trace_generator, (safe_div((safe_mult(4619, global_values.trace_length)), 32768))). + local pow1057 = pow30 * pow1056; // pow(trace_generator, (safe_div((safe_mult(9239, global_values.trace_length)), 65536))). + local pow1058 = pow791 * pow1034; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 32))). + local pow1059 = pow30 * pow1058; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 65536))). + local pow1060 = pow30 * pow1059; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 32768))). + local pow1061 = pow30 * pow1060; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 65536))). + local pow1062 = pow30 * pow1061; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 16384))). + local pow1063 = pow30 * pow1062; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 65536))). + local pow1064 = pow30 * pow1063; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 32768))). + local pow1065 = pow30 * pow1064; // pow(trace_generator, (safe_div((safe_mult(10247, global_values.trace_length)), 65536))). + local pow1066 = pow30 * pow1065; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 8192))). + local pow1067 = pow30 * pow1066; // pow(trace_generator, (safe_div((safe_mult(10249, global_values.trace_length)), 65536))). + local pow1068 = pow30 * pow1067; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 32768))). + local pow1069 = pow30 * pow1068; // pow(trace_generator, (safe_div((safe_mult(10251, global_values.trace_length)), 65536))). + local pow1070 = pow30 * pow1069; // pow(trace_generator, (safe_div((safe_mult(2563, global_values.trace_length)), 16384))). + local pow1071 = pow30 * pow1070; // pow(trace_generator, (safe_div((safe_mult(10253, global_values.trace_length)), 65536))). + local pow1072 = pow30 * pow1071; // pow(trace_generator, (safe_div((safe_mult(5127, global_values.trace_length)), 32768))). + local pow1073 = pow30 * pow1072; // pow(trace_generator, (safe_div((safe_mult(10255, global_values.trace_length)), 65536))). + local pow1074 = pow30 * pow1073; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 4096))). + local pow1075 = pow30 * pow1074; // pow(trace_generator, (safe_div((safe_mult(10257, global_values.trace_length)), 65536))). + local pow1076 = pow30 * pow1075; // pow(trace_generator, (safe_div((safe_mult(5129, global_values.trace_length)), 32768))). + local pow1077 = pow30 * pow1076; // pow(trace_generator, (safe_div((safe_mult(10259, global_values.trace_length)), 65536))). + local pow1078 = pow30 * pow1077; // pow(trace_generator, (safe_div((safe_mult(2565, global_values.trace_length)), 16384))). + local pow1079 = pow30 * pow1078; // pow(trace_generator, (safe_div((safe_mult(10261, global_values.trace_length)), 65536))). + local pow1080 = pow30 * pow1079; // pow(trace_generator, (safe_div((safe_mult(5131, global_values.trace_length)), 32768))). + local pow1081 = pow30 * pow1080; // pow(trace_generator, (safe_div((safe_mult(10263, global_values.trace_length)), 65536))). + local pow1082 = pow77 * pow1081; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 1024))). + local pow1083 = pow98 * pow1082; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 512))). + local pow1084 = pow98 * pow1083; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 1024))). + local pow1085 = pow98 * pow1084; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 256))). + local pow1086 = pow98 * pow1085; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 1024))). + local pow1087 = pow98 * pow1086; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 512))). + local pow1088 = pow98 * pow1087; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 1024))). + local pow1089 = pow98 * pow1088; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 128))). + local pow1090 = pow98 * pow1089; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 1024))). + local pow1091 = pow98 * pow1090; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 512))). + local pow1092 = pow98 * pow1091; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 1024))). + local pow1093 = pow98 * pow1092; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 256))). + local pow1094 = pow98 * pow1093; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 1024))). + local pow1095 = pow98 * pow1094; // pow(trace_generator, (safe_div((safe_mult(87, global_values.trace_length)), 512))). + local pow1096 = pow98 * pow1095; // pow(trace_generator, (safe_div((safe_mult(175, global_values.trace_length)), 1024))). + local pow1097 = pow98 * pow1096; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 64))). + local pow1098 = pow30 * pow1097; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 65536))). + local pow1099 = pow30 * pow1098; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 32768))). + local pow1100 = pow30 * pow1099; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 65536))). + local pow1101 = pow30 * pow1100; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 16384))). + local pow1102 = pow30 * pow1101; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 65536))). + local pow1103 = pow30 * pow1102; // pow(trace_generator, (safe_div((safe_mult(5635, global_values.trace_length)), 32768))). + local pow1104 = pow30 * pow1103; // pow(trace_generator, (safe_div((safe_mult(11271, global_values.trace_length)), 65536))). + local pow1105 = pow30 * pow1104; // pow(trace_generator, (safe_div((safe_mult(1409, global_values.trace_length)), 8192))). + local pow1106 = pow30 * pow1105; // pow(trace_generator, (safe_div((safe_mult(11273, global_values.trace_length)), 65536))). + local pow1107 = pow30 * pow1106; // pow(trace_generator, (safe_div((safe_mult(5637, global_values.trace_length)), 32768))). + local pow1108 = pow30 * pow1107; // pow(trace_generator, (safe_div((safe_mult(11275, global_values.trace_length)), 65536))). + local pow1109 = pow30 * pow1108; // pow(trace_generator, (safe_div((safe_mult(2819, global_values.trace_length)), 16384))). + local pow1110 = pow30 * pow1109; // pow(trace_generator, (safe_div((safe_mult(11277, global_values.trace_length)), 65536))). + local pow1111 = pow30 * pow1110; // pow(trace_generator, (safe_div((safe_mult(5639, global_values.trace_length)), 32768))). + local pow1112 = pow30 * pow1111; // pow(trace_generator, (safe_div((safe_mult(11279, global_values.trace_length)), 65536))). + local pow1113 = pow30 * pow1112; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 4096))). + local pow1114 = pow30 * pow1113; // pow(trace_generator, (safe_div((safe_mult(11281, global_values.trace_length)), 65536))). + local pow1115 = pow30 * pow1114; // pow(trace_generator, (safe_div((safe_mult(5641, global_values.trace_length)), 32768))). + local pow1116 = pow30 * pow1115; // pow(trace_generator, (safe_div((safe_mult(11283, global_values.trace_length)), 65536))). + local pow1117 = pow30 * pow1116; // pow(trace_generator, (safe_div((safe_mult(2821, global_values.trace_length)), 16384))). + local pow1118 = pow30 * pow1117; // pow(trace_generator, (safe_div((safe_mult(11285, global_values.trace_length)), 65536))). + local pow1119 = pow30 * pow1118; // pow(trace_generator, (safe_div((safe_mult(5643, global_values.trace_length)), 32768))). + local pow1120 = pow30 * pow1119; // pow(trace_generator, (safe_div((safe_mult(11287, global_values.trace_length)), 65536))). + local pow1121 = pow77 * pow1120; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 1024))). + local pow1122 = pow98 * pow1121; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 512))). + local pow1123 = pow98 * pow1122; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 1024))). + local pow1124 = pow98 * pow1123; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 256))). + local pow1125 = pow98 * pow1124; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 1024))). + local pow1126 = pow98 * pow1125; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 512))). + local pow1127 = pow98 * pow1126; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 1024))). + local pow1128 = pow578 * pow1127; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 16))). + local pow1129 = pow30 * pow1128; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 65536))). + local pow1130 = pow30 * pow1129; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 32768))). + local pow1131 = pow30 * pow1130; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 65536))). + local pow1132 = pow30 * pow1131; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 16384))). + local pow1133 = pow30 * pow1132; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 65536))). + local pow1134 = pow30 * pow1133; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 32768))). + local pow1135 = pow30 * pow1134; // pow(trace_generator, (safe_div((safe_mult(12295, global_values.trace_length)), 65536))). + local pow1136 = pow30 * pow1135; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 8192))). + local pow1137 = pow30 * pow1136; // pow(trace_generator, (safe_div((safe_mult(12297, global_values.trace_length)), 65536))). + local pow1138 = pow30 * pow1137; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 32768))). + local pow1139 = pow30 * pow1138; // pow(trace_generator, (safe_div((safe_mult(12299, global_values.trace_length)), 65536))). + local pow1140 = pow30 * pow1139; // pow(trace_generator, (safe_div((safe_mult(3075, global_values.trace_length)), 16384))). + local pow1141 = pow30 * pow1140; // pow(trace_generator, (safe_div((safe_mult(12301, global_values.trace_length)), 65536))). + local pow1142 = pow30 * pow1141; // pow(trace_generator, (safe_div((safe_mult(6151, global_values.trace_length)), 32768))). + local pow1143 = pow30 * pow1142; // pow(trace_generator, (safe_div((safe_mult(12303, global_values.trace_length)), 65536))). + local pow1144 = pow30 * pow1143; // pow(trace_generator, (safe_div((safe_mult(769, global_values.trace_length)), 4096))). + local pow1145 = pow30 * pow1144; // pow(trace_generator, (safe_div((safe_mult(12305, global_values.trace_length)), 65536))). + local pow1146 = pow30 * pow1145; // pow(trace_generator, (safe_div((safe_mult(6153, global_values.trace_length)), 32768))). + local pow1147 = pow30 * pow1146; // pow(trace_generator, (safe_div((safe_mult(12307, global_values.trace_length)), 65536))). + local pow1148 = pow30 * pow1147; // pow(trace_generator, (safe_div((safe_mult(3077, global_values.trace_length)), 16384))). + local pow1149 = pow30 * pow1148; // pow(trace_generator, (safe_div((safe_mult(12309, global_values.trace_length)), 65536))). + local pow1150 = pow30 * pow1149; // pow(trace_generator, (safe_div((safe_mult(6155, global_values.trace_length)), 32768))). + local pow1151 = pow30 * pow1150; // pow(trace_generator, (safe_div((safe_mult(12311, global_values.trace_length)), 65536))). + local pow1152 = pow77 * pow1151; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 1024))). + local pow1153 = pow98 * pow1152; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 512))). + local pow1154 = pow98 * pow1153; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 1024))). + local pow1155 = pow98 * pow1154; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 256))). + local pow1156 = pow98 * pow1155; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 1024))). + local pow1157 = pow98 * pow1156; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 512))). + local pow1158 = pow98 * pow1157; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 1024))). + local pow1159 = pow98 * pow1158; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 128))). + local pow1160 = pow98 * pow1159; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 1024))). + local pow1161 = pow98 * pow1160; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 512))). + local pow1162 = pow98 * pow1161; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 1024))). + local pow1163 = pow98 * pow1162; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 256))). + local pow1164 = pow98 * pow1163; // pow(trace_generator, (safe_div((safe_mult(205, global_values.trace_length)), 1024))). + local pow1165 = pow98 * pow1164; // pow(trace_generator, (safe_div((safe_mult(103, global_values.trace_length)), 512))). + local pow1166 = pow98 * pow1165; // pow(trace_generator, (safe_div((safe_mult(207, global_values.trace_length)), 1024))). + local pow1167 = pow98 * pow1166; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 64))). + local pow1168 = pow30 * pow1167; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 65536))). + local pow1169 = pow30 * pow1168; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 32768))). + local pow1170 = pow30 * pow1169; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 65536))). + local pow1171 = pow30 * pow1170; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 16384))). + local pow1172 = pow30 * pow1171; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 65536))). + local pow1173 = pow30 * pow1172; // pow(trace_generator, (safe_div((safe_mult(6659, global_values.trace_length)), 32768))). + local pow1174 = pow30 * pow1173; // pow(trace_generator, (safe_div((safe_mult(13319, global_values.trace_length)), 65536))). + local pow1175 = pow30 * pow1174; // pow(trace_generator, (safe_div((safe_mult(1665, global_values.trace_length)), 8192))). + local pow1176 = pow30 * pow1175; // pow(trace_generator, (safe_div((safe_mult(13321, global_values.trace_length)), 65536))). + local pow1177 = pow30 * pow1176; // pow(trace_generator, (safe_div((safe_mult(6661, global_values.trace_length)), 32768))). + local pow1178 = pow30 * pow1177; // pow(trace_generator, (safe_div((safe_mult(13323, global_values.trace_length)), 65536))). + local pow1179 = pow30 * pow1178; // pow(trace_generator, (safe_div((safe_mult(3331, global_values.trace_length)), 16384))). + local pow1180 = pow30 * pow1179; // pow(trace_generator, (safe_div((safe_mult(13325, global_values.trace_length)), 65536))). + local pow1181 = pow30 * pow1180; // pow(trace_generator, (safe_div((safe_mult(6663, global_values.trace_length)), 32768))). + local pow1182 = pow30 * pow1181; // pow(trace_generator, (safe_div((safe_mult(13327, global_values.trace_length)), 65536))). + local pow1183 = pow30 * pow1182; // pow(trace_generator, (safe_div((safe_mult(833, global_values.trace_length)), 4096))). + local pow1184 = pow30 * pow1183; // pow(trace_generator, (safe_div((safe_mult(13329, global_values.trace_length)), 65536))). + local pow1185 = pow30 * pow1184; // pow(trace_generator, (safe_div((safe_mult(6665, global_values.trace_length)), 32768))). + local pow1186 = pow30 * pow1185; // pow(trace_generator, (safe_div((safe_mult(13331, global_values.trace_length)), 65536))). + local pow1187 = pow30 * pow1186; // pow(trace_generator, (safe_div((safe_mult(3333, global_values.trace_length)), 16384))). + local pow1188 = pow30 * pow1187; // pow(trace_generator, (safe_div((safe_mult(13333, global_values.trace_length)), 65536))). + local pow1189 = pow30 * pow1188; // pow(trace_generator, (safe_div((safe_mult(6667, global_values.trace_length)), 32768))). + local pow1190 = pow30 * pow1189; // pow(trace_generator, (safe_div((safe_mult(13335, global_values.trace_length)), 65536))). + local pow1191 = pow77 * pow1190; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 1024))). + local pow1192 = pow98 * pow1191; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 512))). + local pow1193 = pow98 * pow1192; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 1024))). + local pow1194 = pow98 * pow1193; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 256))). + local pow1195 = pow98 * pow1194; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 1024))). + local pow1196 = pow98 * pow1195; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 512))). + local pow1197 = pow98 * pow1196; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 1024))). + local pow1198 = pow578 * pow1197; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 32))). + local pow1199 = pow30 * pow1198; // pow(trace_generator, (safe_div((safe_mult(14337, global_values.trace_length)), 65536))). + local pow1200 = pow30 * pow1199; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 32768))). + local pow1201 = pow30 * pow1200; // pow(trace_generator, (safe_div((safe_mult(14339, global_values.trace_length)), 65536))). + local pow1202 = pow30 * pow1201; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 16384))). + local pow1203 = pow30 * pow1202; // pow(trace_generator, (safe_div((safe_mult(14341, global_values.trace_length)), 65536))). + local pow1204 = pow30 * pow1203; // pow(trace_generator, (safe_div((safe_mult(7171, global_values.trace_length)), 32768))). + local pow1205 = pow30 * pow1204; // pow(trace_generator, (safe_div((safe_mult(14343, global_values.trace_length)), 65536))). + local pow1206 = pow30 * pow1205; // pow(trace_generator, (safe_div((safe_mult(1793, global_values.trace_length)), 8192))). + local pow1207 = pow30 * pow1206; // pow(trace_generator, (safe_div((safe_mult(14345, global_values.trace_length)), 65536))). + local pow1208 = pow30 * pow1207; // pow(trace_generator, (safe_div((safe_mult(7173, global_values.trace_length)), 32768))). + local pow1209 = pow30 * pow1208; // pow(trace_generator, (safe_div((safe_mult(14347, global_values.trace_length)), 65536))). + local pow1210 = pow30 * pow1209; // pow(trace_generator, (safe_div((safe_mult(3587, global_values.trace_length)), 16384))). + local pow1211 = pow30 * pow1210; // pow(trace_generator, (safe_div((safe_mult(14349, global_values.trace_length)), 65536))). + local pow1212 = pow30 * pow1211; // pow(trace_generator, (safe_div((safe_mult(7175, global_values.trace_length)), 32768))). + local pow1213 = pow30 * pow1212; // pow(trace_generator, (safe_div((safe_mult(14351, global_values.trace_length)), 65536))). + local pow1214 = pow30 * pow1213; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 4096))). + local pow1215 = pow30 * pow1214; // pow(trace_generator, (safe_div((safe_mult(14353, global_values.trace_length)), 65536))). + local pow1216 = pow30 * pow1215; // pow(trace_generator, (safe_div((safe_mult(7177, global_values.trace_length)), 32768))). + local pow1217 = pow30 * pow1216; // pow(trace_generator, (safe_div((safe_mult(14355, global_values.trace_length)), 65536))). + local pow1218 = pow30 * pow1217; // pow(trace_generator, (safe_div((safe_mult(3589, global_values.trace_length)), 16384))). + local pow1219 = pow30 * pow1218; // pow(trace_generator, (safe_div((safe_mult(14357, global_values.trace_length)), 65536))). + local pow1220 = pow30 * pow1219; // pow(trace_generator, (safe_div((safe_mult(7179, global_values.trace_length)), 32768))). + local pow1221 = pow30 * pow1220; // pow(trace_generator, (safe_div((safe_mult(14359, global_values.trace_length)), 65536))). + local pow1222 = pow77 * pow1221; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 1024))). + local pow1223 = pow98 * pow1222; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 512))). + local pow1224 = pow98 * pow1223; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 1024))). + local pow1225 = pow98 * pow1224; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 256))). + local pow1226 = pow98 * pow1225; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 1024))). + local pow1227 = pow98 * pow1226; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 512))). + local pow1228 = pow98 * pow1227; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 1024))). + local pow1229 = pow98 * pow1228; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 128))). + local pow1230 = pow98 * pow1229; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 1024))). + local pow1231 = pow98 * pow1230; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 512))). + local pow1232 = pow98 * pow1231; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 1024))). + local pow1233 = pow98 * pow1232; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 256))). + local pow1234 = pow98 * pow1233; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 1024))). + local pow1235 = pow98 * pow1234; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 512))). + local pow1236 = pow98 * pow1235; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 1024))). + local pow1237 = pow98 * pow1236; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 64))). + local pow1238 = pow30 * pow1237; // pow(trace_generator, (safe_div((safe_mult(15361, global_values.trace_length)), 65536))). + local pow1239 = pow30 * pow1238; // pow(trace_generator, (safe_div((safe_mult(7681, global_values.trace_length)), 32768))). + local pow1240 = pow30 * pow1239; // pow(trace_generator, (safe_div((safe_mult(15363, global_values.trace_length)), 65536))). + local pow1241 = pow30 * pow1240; // pow(trace_generator, (safe_div((safe_mult(3841, global_values.trace_length)), 16384))). + local pow1242 = pow30 * pow1241; // pow(trace_generator, (safe_div((safe_mult(15365, global_values.trace_length)), 65536))). + local pow1243 = pow30 * pow1242; // pow(trace_generator, (safe_div((safe_mult(7683, global_values.trace_length)), 32768))). + local pow1244 = pow30 * pow1243; // pow(trace_generator, (safe_div((safe_mult(15367, global_values.trace_length)), 65536))). + local pow1245 = pow30 * pow1244; // pow(trace_generator, (safe_div((safe_mult(1921, global_values.trace_length)), 8192))). + local pow1246 = pow30 * pow1245; // pow(trace_generator, (safe_div((safe_mult(15369, global_values.trace_length)), 65536))). + local pow1247 = pow30 * pow1246; // pow(trace_generator, (safe_div((safe_mult(7685, global_values.trace_length)), 32768))). + local pow1248 = pow30 * pow1247; // pow(trace_generator, (safe_div((safe_mult(15371, global_values.trace_length)), 65536))). + local pow1249 = pow30 * pow1248; // pow(trace_generator, (safe_div((safe_mult(3843, global_values.trace_length)), 16384))). + local pow1250 = pow30 * pow1249; // pow(trace_generator, (safe_div((safe_mult(15373, global_values.trace_length)), 65536))). + local pow1251 = pow30 * pow1250; // pow(trace_generator, (safe_div((safe_mult(7687, global_values.trace_length)), 32768))). + local pow1252 = pow30 * pow1251; // pow(trace_generator, (safe_div((safe_mult(15375, global_values.trace_length)), 65536))). + local pow1253 = pow30 * pow1252; // pow(trace_generator, (safe_div((safe_mult(961, global_values.trace_length)), 4096))). + local pow1254 = pow30 * pow1253; // pow(trace_generator, (safe_div((safe_mult(15377, global_values.trace_length)), 65536))). + local pow1255 = pow30 * pow1254; // pow(trace_generator, (safe_div((safe_mult(7689, global_values.trace_length)), 32768))). + local pow1256 = pow30 * pow1255; // pow(trace_generator, (safe_div((safe_mult(15379, global_values.trace_length)), 65536))). + local pow1257 = pow30 * pow1256; // pow(trace_generator, (safe_div((safe_mult(3845, global_values.trace_length)), 16384))). + local pow1258 = pow30 * pow1257; // pow(trace_generator, (safe_div((safe_mult(15381, global_values.trace_length)), 65536))). + local pow1259 = pow30 * pow1258; // pow(trace_generator, (safe_div((safe_mult(7691, global_values.trace_length)), 32768))). + local pow1260 = pow30 * pow1259; // pow(trace_generator, (safe_div((safe_mult(15383, global_values.trace_length)), 65536))). + local pow1261 = pow77 * pow1260; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 1024))). + local pow1262 = pow98 * pow1261; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 512))). + local pow1263 = pow98 * pow1262; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 1024))). + local pow1264 = pow98 * pow1263; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 256))). + local pow1265 = pow98 * pow1264; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 1024))). + local pow1266 = pow98 * pow1265; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 512))). + local pow1267 = pow98 * pow1266; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 1024))). + local pow1268 = pow578 * pow1267; // pow(trace_generator, (safe_div(global_values.trace_length, 4))). + local pow1269 = pow791 * pow1268; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 64))). + local pow1270 = pow791 * pow1269; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 32))). + local pow1271 = pow791 * pow1270; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 64))). + local pow1272 = pow30 * pow1268; // pow(trace_generator, (safe_div((safe_mult(16385, global_values.trace_length)), 65536))). + local pow1273 = pow30 * pow1269; // pow(trace_generator, (safe_div((safe_mult(17409, global_values.trace_length)), 65536))). + local pow1274 = pow30 * pow1270; // pow(trace_generator, (safe_div((safe_mult(18433, global_values.trace_length)), 65536))). + local pow1275 = pow30 * pow1271; // pow(trace_generator, (safe_div((safe_mult(19457, global_values.trace_length)), 65536))). + local pow1276 = pow30 * pow1272; // pow(trace_generator, (safe_div((safe_mult(8193, global_values.trace_length)), 32768))). + local pow1277 = pow30 * pow1273; // pow(trace_generator, (safe_div((safe_mult(8705, global_values.trace_length)), 32768))). + local pow1278 = pow30 * pow1274; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 32768))). + local pow1279 = pow30 * pow1275; // pow(trace_generator, (safe_div((safe_mult(9729, global_values.trace_length)), 32768))). + local pow1280 = pow30 * pow1276; // pow(trace_generator, (safe_div((safe_mult(16387, global_values.trace_length)), 65536))). + local pow1281 = pow30 * pow1277; // pow(trace_generator, (safe_div((safe_mult(17411, global_values.trace_length)), 65536))). + local pow1282 = pow30 * pow1278; // pow(trace_generator, (safe_div((safe_mult(18435, global_values.trace_length)), 65536))). + local pow1283 = pow30 * pow1279; // pow(trace_generator, (safe_div((safe_mult(19459, global_values.trace_length)), 65536))). + local pow1284 = pow30 * pow1280; // pow(trace_generator, (safe_div((safe_mult(4097, global_values.trace_length)), 16384))). + local pow1285 = pow30 * pow1281; // pow(trace_generator, (safe_div((safe_mult(4353, global_values.trace_length)), 16384))). + local pow1286 = pow30 * pow1282; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 16384))). + local pow1287 = pow30 * pow1283; // pow(trace_generator, (safe_div((safe_mult(4865, global_values.trace_length)), 16384))). + local pow1288 = pow30 * pow1284; // pow(trace_generator, (safe_div((safe_mult(16389, global_values.trace_length)), 65536))). + local pow1289 = pow30 * pow1285; // pow(trace_generator, (safe_div((safe_mult(17413, global_values.trace_length)), 65536))). + local pow1290 = pow30 * pow1286; // pow(trace_generator, (safe_div((safe_mult(18437, global_values.trace_length)), 65536))). + local pow1291 = pow30 * pow1287; // pow(trace_generator, (safe_div((safe_mult(19461, global_values.trace_length)), 65536))). + local pow1292 = pow30 * pow1288; // pow(trace_generator, (safe_div((safe_mult(8195, global_values.trace_length)), 32768))). + local pow1293 = pow30 * pow1289; // pow(trace_generator, (safe_div((safe_mult(8707, global_values.trace_length)), 32768))). + local pow1294 = pow30 * pow1290; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 32768))). + local pow1295 = pow30 * pow1291; // pow(trace_generator, (safe_div((safe_mult(9731, global_values.trace_length)), 32768))). + local pow1296 = pow30 * pow1292; // pow(trace_generator, (safe_div((safe_mult(16391, global_values.trace_length)), 65536))). + local pow1297 = pow30 * pow1296; // pow(trace_generator, (safe_div((safe_mult(2049, global_values.trace_length)), 8192))). + local pow1298 = pow30 * pow1293; // pow(trace_generator, (safe_div((safe_mult(17415, global_values.trace_length)), 65536))). + local pow1299 = pow30 * pow1298; // pow(trace_generator, (safe_div((safe_mult(2177, global_values.trace_length)), 8192))). + local pow1300 = pow30 * pow1294; // pow(trace_generator, (safe_div((safe_mult(18439, global_values.trace_length)), 65536))). + local pow1301 = pow30 * pow1300; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 8192))). + local pow1302 = pow30 * pow1295; // pow(trace_generator, (safe_div((safe_mult(19463, global_values.trace_length)), 65536))). + local pow1303 = pow30 * pow1302; // pow(trace_generator, (safe_div((safe_mult(2433, global_values.trace_length)), 8192))). + local pow1304 = pow30 * pow1297; // pow(trace_generator, (safe_div((safe_mult(16393, global_values.trace_length)), 65536))). + local pow1305 = pow30 * pow1299; // pow(trace_generator, (safe_div((safe_mult(17417, global_values.trace_length)), 65536))). + local pow1306 = pow30 * pow1301; // pow(trace_generator, (safe_div((safe_mult(18441, global_values.trace_length)), 65536))). + local pow1307 = pow30 * pow1303; // pow(trace_generator, (safe_div((safe_mult(19465, global_values.trace_length)), 65536))). + local pow1308 = pow30 * pow1304; // pow(trace_generator, (safe_div((safe_mult(8197, global_values.trace_length)), 32768))). + local pow1309 = pow30 * pow1305; // pow(trace_generator, (safe_div((safe_mult(8709, global_values.trace_length)), 32768))). + local pow1310 = pow30 * pow1306; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 32768))). + local pow1311 = pow30 * pow1307; // pow(trace_generator, (safe_div((safe_mult(9733, global_values.trace_length)), 32768))). + local pow1312 = pow30 * pow1308; // pow(trace_generator, (safe_div((safe_mult(16395, global_values.trace_length)), 65536))). + local pow1313 = pow30 * pow1309; // pow(trace_generator, (safe_div((safe_mult(17419, global_values.trace_length)), 65536))). + local pow1314 = pow30 * pow1310; // pow(trace_generator, (safe_div((safe_mult(18443, global_values.trace_length)), 65536))). + local pow1315 = pow30 * pow1311; // pow(trace_generator, (safe_div((safe_mult(19467, global_values.trace_length)), 65536))). + local pow1316 = pow30 * pow1312; // pow(trace_generator, (safe_div((safe_mult(4099, global_values.trace_length)), 16384))). + local pow1317 = pow30 * pow1313; // pow(trace_generator, (safe_div((safe_mult(4355, global_values.trace_length)), 16384))). + local pow1318 = pow30 * pow1314; // pow(trace_generator, (safe_div((safe_mult(4611, global_values.trace_length)), 16384))). + local pow1319 = pow30 * pow1315; // pow(trace_generator, (safe_div((safe_mult(4867, global_values.trace_length)), 16384))). + local pow1320 = pow30 * pow1316; // pow(trace_generator, (safe_div((safe_mult(16397, global_values.trace_length)), 65536))). + local pow1321 = pow30 * pow1317; // pow(trace_generator, (safe_div((safe_mult(17421, global_values.trace_length)), 65536))). + local pow1322 = pow30 * pow1318; // pow(trace_generator, (safe_div((safe_mult(18445, global_values.trace_length)), 65536))). + local pow1323 = pow30 * pow1319; // pow(trace_generator, (safe_div((safe_mult(19469, global_values.trace_length)), 65536))). + local pow1324 = pow30 * pow1320; // pow(trace_generator, (safe_div((safe_mult(8199, global_values.trace_length)), 32768))). + local pow1325 = pow30 * pow1321; // pow(trace_generator, (safe_div((safe_mult(8711, global_values.trace_length)), 32768))). + local pow1326 = pow30 * pow1322; // pow(trace_generator, (safe_div((safe_mult(9223, global_values.trace_length)), 32768))). + local pow1327 = pow30 * pow1323; // pow(trace_generator, (safe_div((safe_mult(9735, global_values.trace_length)), 32768))). + local pow1328 = pow30 * pow1324; // pow(trace_generator, (safe_div((safe_mult(16399, global_values.trace_length)), 65536))). + local pow1329 = pow30 * pow1325; // pow(trace_generator, (safe_div((safe_mult(17423, global_values.trace_length)), 65536))). + local pow1330 = pow30 * pow1326; // pow(trace_generator, (safe_div((safe_mult(18447, global_values.trace_length)), 65536))). + local pow1331 = pow30 * pow1327; // pow(trace_generator, (safe_div((safe_mult(19471, global_values.trace_length)), 65536))). + local pow1332 = pow30 * pow1328; // pow(trace_generator, (safe_div((safe_mult(1025, global_values.trace_length)), 4096))). + local pow1333 = pow30 * pow1329; // pow(trace_generator, (safe_div((safe_mult(1089, global_values.trace_length)), 4096))). + local pow1334 = pow30 * pow1330; // pow(trace_generator, (safe_div((safe_mult(1153, global_values.trace_length)), 4096))). + local pow1335 = pow30 * pow1331; // pow(trace_generator, (safe_div((safe_mult(1217, global_values.trace_length)), 4096))). + local pow1336 = pow30 * pow1332; // pow(trace_generator, (safe_div((safe_mult(16401, global_values.trace_length)), 65536))). + local pow1337 = pow30 * pow1333; // pow(trace_generator, (safe_div((safe_mult(17425, global_values.trace_length)), 65536))). + local pow1338 = pow30 * pow1334; // pow(trace_generator, (safe_div((safe_mult(18449, global_values.trace_length)), 65536))). + local pow1339 = pow30 * pow1335; // pow(trace_generator, (safe_div((safe_mult(19473, global_values.trace_length)), 65536))). + local pow1340 = pow30 * pow1336; // pow(trace_generator, (safe_div((safe_mult(8201, global_values.trace_length)), 32768))). + local pow1341 = pow30 * pow1337; // pow(trace_generator, (safe_div((safe_mult(8713, global_values.trace_length)), 32768))). + local pow1342 = pow30 * pow1338; // pow(trace_generator, (safe_div((safe_mult(9225, global_values.trace_length)), 32768))). + local pow1343 = pow30 * pow1339; // pow(trace_generator, (safe_div((safe_mult(9737, global_values.trace_length)), 32768))). + local pow1344 = pow30 * pow1340; // pow(trace_generator, (safe_div((safe_mult(16403, global_values.trace_length)), 65536))). + local pow1345 = pow30 * pow1341; // pow(trace_generator, (safe_div((safe_mult(17427, global_values.trace_length)), 65536))). + local pow1346 = pow30 * pow1342; // pow(trace_generator, (safe_div((safe_mult(18451, global_values.trace_length)), 65536))). + local pow1347 = pow30 * pow1343; // pow(trace_generator, (safe_div((safe_mult(19475, global_values.trace_length)), 65536))). + local pow1348 = pow30 * pow1344; // pow(trace_generator, (safe_div((safe_mult(4101, global_values.trace_length)), 16384))). + local pow1349 = pow30 * pow1345; // pow(trace_generator, (safe_div((safe_mult(4357, global_values.trace_length)), 16384))). + local pow1350 = pow30 * pow1346; // pow(trace_generator, (safe_div((safe_mult(4613, global_values.trace_length)), 16384))). + local pow1351 = pow30 * pow1347; // pow(trace_generator, (safe_div((safe_mult(4869, global_values.trace_length)), 16384))). + local pow1352 = pow30 * pow1348; // pow(trace_generator, (safe_div((safe_mult(16405, global_values.trace_length)), 65536))). + local pow1353 = pow30 * pow1349; // pow(trace_generator, (safe_div((safe_mult(17429, global_values.trace_length)), 65536))). + local pow1354 = pow30 * pow1350; // pow(trace_generator, (safe_div((safe_mult(18453, global_values.trace_length)), 65536))). + local pow1355 = pow30 * pow1351; // pow(trace_generator, (safe_div((safe_mult(19477, global_values.trace_length)), 65536))). + local pow1356 = pow30 * pow1352; // pow(trace_generator, (safe_div((safe_mult(8203, global_values.trace_length)), 32768))). + local pow1357 = pow30 * pow1353; // pow(trace_generator, (safe_div((safe_mult(8715, global_values.trace_length)), 32768))). + local pow1358 = pow30 * pow1354; // pow(trace_generator, (safe_div((safe_mult(9227, global_values.trace_length)), 32768))). + local pow1359 = pow30 * pow1355; // pow(trace_generator, (safe_div((safe_mult(9739, global_values.trace_length)), 32768))). + local pow1360 = pow30 * pow1356; // pow(trace_generator, (safe_div((safe_mult(16407, global_values.trace_length)), 65536))). + local pow1361 = pow30 * pow1357; // pow(trace_generator, (safe_div((safe_mult(17431, global_values.trace_length)), 65536))). + local pow1362 = pow30 * pow1358; // pow(trace_generator, (safe_div((safe_mult(18455, global_values.trace_length)), 65536))). + local pow1363 = pow30 * pow1359; // pow(trace_generator, (safe_div((safe_mult(19479, global_values.trace_length)), 65536))). + local pow1364 = pow791 * pow1271; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 16))). + local pow1365 = pow30 * pow1364; // pow(trace_generator, (safe_div((safe_mult(20481, global_values.trace_length)), 65536))). + local pow1366 = pow30 * pow1365; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 32768))). + local pow1367 = pow30 * pow1366; // pow(trace_generator, (safe_div((safe_mult(20483, global_values.trace_length)), 65536))). + local pow1368 = pow30 * pow1367; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 16384))). + local pow1369 = pow30 * pow1368; // pow(trace_generator, (safe_div((safe_mult(20485, global_values.trace_length)), 65536))). + local pow1370 = pow30 * pow1369; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 32768))). + local pow1371 = pow30 * pow1370; // pow(trace_generator, (safe_div((safe_mult(20487, global_values.trace_length)), 65536))). + local pow1372 = pow30 * pow1371; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 8192))). + local pow1373 = pow30 * pow1372; // pow(trace_generator, (safe_div((safe_mult(20489, global_values.trace_length)), 65536))). + local pow1374 = pow30 * pow1373; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 32768))). + local pow1375 = pow30 * pow1374; // pow(trace_generator, (safe_div((safe_mult(20491, global_values.trace_length)), 65536))). + local pow1376 = pow30 * pow1375; // pow(trace_generator, (safe_div((safe_mult(5123, global_values.trace_length)), 16384))). + local pow1377 = pow30 * pow1376; // pow(trace_generator, (safe_div((safe_mult(20493, global_values.trace_length)), 65536))). + local pow1378 = pow30 * pow1377; // pow(trace_generator, (safe_div((safe_mult(10247, global_values.trace_length)), 32768))). + local pow1379 = pow30 * pow1378; // pow(trace_generator, (safe_div((safe_mult(20495, global_values.trace_length)), 65536))). + local pow1380 = pow30 * pow1379; // pow(trace_generator, (safe_div((safe_mult(1281, global_values.trace_length)), 4096))). + local pow1381 = pow30 * pow1380; // pow(trace_generator, (safe_div((safe_mult(20497, global_values.trace_length)), 65536))). + local pow1382 = pow30 * pow1381; // pow(trace_generator, (safe_div((safe_mult(10249, global_values.trace_length)), 32768))). + local pow1383 = pow30 * pow1382; // pow(trace_generator, (safe_div((safe_mult(20499, global_values.trace_length)), 65536))). + local pow1384 = pow30 * pow1383; // pow(trace_generator, (safe_div((safe_mult(5125, global_values.trace_length)), 16384))). + local pow1385 = pow30 * pow1384; // pow(trace_generator, (safe_div((safe_mult(20501, global_values.trace_length)), 65536))). + local pow1386 = pow30 * pow1385; // pow(trace_generator, (safe_div((safe_mult(10251, global_values.trace_length)), 32768))). + local pow1387 = pow30 * pow1386; // pow(trace_generator, (safe_div((safe_mult(20503, global_values.trace_length)), 65536))). + local pow1388 = pow77 * pow1387; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 1024))). + local pow1389 = pow98 * pow1388; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 512))). + local pow1390 = pow98 * pow1389; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 1024))). + local pow1391 = pow98 * pow1390; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 256))). + local pow1392 = pow98 * pow1391; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 1024))). + local pow1393 = pow98 * pow1392; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 512))). + local pow1394 = pow98 * pow1393; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 1024))). + local pow1395 = pow98 * pow1394; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 128))). + local pow1396 = pow98 * pow1395; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 1024))). + local pow1397 = pow98 * pow1396; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 512))). + local pow1398 = pow98 * pow1397; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 1024))). + local pow1399 = pow98 * pow1398; // pow(trace_generator, (safe_div((safe_mult(83, global_values.trace_length)), 256))). + local pow1400 = pow98 * pow1399; // pow(trace_generator, (safe_div((safe_mult(333, global_values.trace_length)), 1024))). + local pow1401 = pow98 * pow1400; // pow(trace_generator, (safe_div((safe_mult(167, global_values.trace_length)), 512))). + local pow1402 = pow98 * pow1401; // pow(trace_generator, (safe_div((safe_mult(335, global_values.trace_length)), 1024))). + local pow1403 = pow98 * pow1402; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 64))). + local pow1404 = pow30 * pow1403; // pow(trace_generator, (safe_div((safe_mult(21505, global_values.trace_length)), 65536))). + local pow1405 = pow30 * pow1404; // pow(trace_generator, (safe_div((safe_mult(10753, global_values.trace_length)), 32768))). + local pow1406 = pow30 * pow1405; // pow(trace_generator, (safe_div((safe_mult(21507, global_values.trace_length)), 65536))). + local pow1407 = pow30 * pow1406; // pow(trace_generator, (safe_div((safe_mult(5377, global_values.trace_length)), 16384))). + local pow1408 = pow30 * pow1407; // pow(trace_generator, (safe_div((safe_mult(21509, global_values.trace_length)), 65536))). + local pow1409 = pow30 * pow1408; // pow(trace_generator, (safe_div((safe_mult(10755, global_values.trace_length)), 32768))). + local pow1410 = pow30 * pow1409; // pow(trace_generator, (safe_div((safe_mult(21511, global_values.trace_length)), 65536))). + local pow1411 = pow30 * pow1410; // pow(trace_generator, (safe_div((safe_mult(2689, global_values.trace_length)), 8192))). + local pow1412 = pow30 * pow1411; // pow(trace_generator, (safe_div((safe_mult(21513, global_values.trace_length)), 65536))). + local pow1413 = pow30 * pow1412; // pow(trace_generator, (safe_div((safe_mult(10757, global_values.trace_length)), 32768))). + local pow1414 = pow30 * pow1413; // pow(trace_generator, (safe_div((safe_mult(21515, global_values.trace_length)), 65536))). + local pow1415 = pow30 * pow1414; // pow(trace_generator, (safe_div((safe_mult(5379, global_values.trace_length)), 16384))). + local pow1416 = pow30 * pow1415; // pow(trace_generator, (safe_div((safe_mult(21517, global_values.trace_length)), 65536))). + local pow1417 = pow30 * pow1416; // pow(trace_generator, (safe_div((safe_mult(10759, global_values.trace_length)), 32768))). + local pow1418 = pow30 * pow1417; // pow(trace_generator, (safe_div((safe_mult(21519, global_values.trace_length)), 65536))). + local pow1419 = pow30 * pow1418; // pow(trace_generator, (safe_div((safe_mult(1345, global_values.trace_length)), 4096))). + local pow1420 = pow30 * pow1419; // pow(trace_generator, (safe_div((safe_mult(21521, global_values.trace_length)), 65536))). + local pow1421 = pow30 * pow1420; // pow(trace_generator, (safe_div((safe_mult(10761, global_values.trace_length)), 32768))). + local pow1422 = pow30 * pow1421; // pow(trace_generator, (safe_div((safe_mult(21523, global_values.trace_length)), 65536))). + local pow1423 = pow30 * pow1422; // pow(trace_generator, (safe_div((safe_mult(5381, global_values.trace_length)), 16384))). + local pow1424 = pow30 * pow1423; // pow(trace_generator, (safe_div((safe_mult(21525, global_values.trace_length)), 65536))). + local pow1425 = pow30 * pow1424; // pow(trace_generator, (safe_div((safe_mult(10763, global_values.trace_length)), 32768))). + local pow1426 = pow30 * pow1425; // pow(trace_generator, (safe_div((safe_mult(21527, global_values.trace_length)), 65536))). + local pow1427 = pow77 * pow1426; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 1024))). + local pow1428 = pow98 * pow1427; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 512))). + local pow1429 = pow98 * pow1428; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 1024))). + local pow1430 = pow98 * pow1429; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 256))). + local pow1431 = pow98 * pow1430; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 1024))). + local pow1432 = pow98 * pow1431; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 512))). + local pow1433 = pow98 * pow1432; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 1024))). + local pow1434 = pow578 * pow1433; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 32))). + local pow1435 = pow30 * pow1434; // pow(trace_generator, (safe_div((safe_mult(22529, global_values.trace_length)), 65536))). + local pow1436 = pow30 * pow1435; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 32768))). + local pow1437 = pow30 * pow1436; // pow(trace_generator, (safe_div((safe_mult(22531, global_values.trace_length)), 65536))). + local pow1438 = pow30 * pow1437; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 16384))). + local pow1439 = pow30 * pow1438; // pow(trace_generator, (safe_div((safe_mult(22533, global_values.trace_length)), 65536))). + local pow1440 = pow30 * pow1439; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 32768))). + local pow1441 = pow30 * pow1440; // pow(trace_generator, (safe_div((safe_mult(22535, global_values.trace_length)), 65536))). + local pow1442 = pow30 * pow1441; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 8192))). + local pow1443 = pow30 * pow1442; // pow(trace_generator, (safe_div((safe_mult(22537, global_values.trace_length)), 65536))). + local pow1444 = pow30 * pow1443; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 32768))). + local pow1445 = pow30 * pow1444; // pow(trace_generator, (safe_div((safe_mult(22539, global_values.trace_length)), 65536))). + local pow1446 = pow30 * pow1445; // pow(trace_generator, (safe_div((safe_mult(5635, global_values.trace_length)), 16384))). + local pow1447 = pow30 * pow1446; // pow(trace_generator, (safe_div((safe_mult(22541, global_values.trace_length)), 65536))). + local pow1448 = pow30 * pow1447; // pow(trace_generator, (safe_div((safe_mult(11271, global_values.trace_length)), 32768))). + local pow1449 = pow30 * pow1448; // pow(trace_generator, (safe_div((safe_mult(22543, global_values.trace_length)), 65536))). + local pow1450 = pow30 * pow1449; // pow(trace_generator, (safe_div((safe_mult(1409, global_values.trace_length)), 4096))). + local pow1451 = pow30 * pow1450; // pow(trace_generator, (safe_div((safe_mult(22545, global_values.trace_length)), 65536))). + local pow1452 = pow30 * pow1451; // pow(trace_generator, (safe_div((safe_mult(11273, global_values.trace_length)), 32768))). + local pow1453 = pow30 * pow1452; // pow(trace_generator, (safe_div((safe_mult(22547, global_values.trace_length)), 65536))). + local pow1454 = pow30 * pow1453; // pow(trace_generator, (safe_div((safe_mult(5637, global_values.trace_length)), 16384))). + local pow1455 = pow30 * pow1454; // pow(trace_generator, (safe_div((safe_mult(22549, global_values.trace_length)), 65536))). + local pow1456 = pow30 * pow1455; // pow(trace_generator, (safe_div((safe_mult(11275, global_values.trace_length)), 32768))). + local pow1457 = pow30 * pow1456; // pow(trace_generator, (safe_div((safe_mult(22551, global_values.trace_length)), 65536))). + local pow1458 = pow77 * pow1457; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 1024))). + local pow1459 = pow98 * pow1458; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 512))). + local pow1460 = pow98 * pow1459; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 1024))). + local pow1461 = pow98 * pow1460; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 256))). + local pow1462 = pow98 * pow1461; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 1024))). + local pow1463 = pow98 * pow1462; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 512))). + local pow1464 = pow98 * pow1463; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 1024))). + local pow1465 = pow98 * pow1464; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 128))). + local pow1466 = pow98 * pow1465; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 1024))). + local pow1467 = pow98 * pow1466; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 512))). + local pow1468 = pow98 * pow1467; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 1024))). + local pow1469 = pow98 * pow1468; // pow(trace_generator, (safe_div((safe_mult(91, global_values.trace_length)), 256))). + local pow1470 = pow98 * pow1469; // pow(trace_generator, (safe_div((safe_mult(365, global_values.trace_length)), 1024))). + local pow1471 = pow98 * pow1470; // pow(trace_generator, (safe_div((safe_mult(183, global_values.trace_length)), 512))). + local pow1472 = pow98 * pow1471; // pow(trace_generator, (safe_div((safe_mult(367, global_values.trace_length)), 1024))). + local pow1473 = pow98 * pow1472; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 64))). + local pow1474 = pow30 * pow1473; // pow(trace_generator, (safe_div((safe_mult(23553, global_values.trace_length)), 65536))). + local pow1475 = pow30 * pow1474; // pow(trace_generator, (safe_div((safe_mult(11777, global_values.trace_length)), 32768))). + local pow1476 = pow30 * pow1475; // pow(trace_generator, (safe_div((safe_mult(23555, global_values.trace_length)), 65536))). + local pow1477 = pow30 * pow1476; // pow(trace_generator, (safe_div((safe_mult(5889, global_values.trace_length)), 16384))). + local pow1478 = pow30 * pow1477; // pow(trace_generator, (safe_div((safe_mult(23557, global_values.trace_length)), 65536))). + local pow1479 = pow30 * pow1478; // pow(trace_generator, (safe_div((safe_mult(11779, global_values.trace_length)), 32768))). + local pow1480 = pow30 * pow1479; // pow(trace_generator, (safe_div((safe_mult(23559, global_values.trace_length)), 65536))). + local pow1481 = pow30 * pow1480; // pow(trace_generator, (safe_div((safe_mult(2945, global_values.trace_length)), 8192))). + local pow1482 = pow30 * pow1481; // pow(trace_generator, (safe_div((safe_mult(23561, global_values.trace_length)), 65536))). + local pow1483 = pow30 * pow1482; // pow(trace_generator, (safe_div((safe_mult(11781, global_values.trace_length)), 32768))). + local pow1484 = pow30 * pow1483; // pow(trace_generator, (safe_div((safe_mult(23563, global_values.trace_length)), 65536))). + local pow1485 = pow30 * pow1484; // pow(trace_generator, (safe_div((safe_mult(5891, global_values.trace_length)), 16384))). + local pow1486 = pow30 * pow1485; // pow(trace_generator, (safe_div((safe_mult(23565, global_values.trace_length)), 65536))). + local pow1487 = pow30 * pow1486; // pow(trace_generator, (safe_div((safe_mult(11783, global_values.trace_length)), 32768))). + local pow1488 = pow30 * pow1487; // pow(trace_generator, (safe_div((safe_mult(23567, global_values.trace_length)), 65536))). + local pow1489 = pow30 * pow1488; // pow(trace_generator, (safe_div((safe_mult(1473, global_values.trace_length)), 4096))). + local pow1490 = pow30 * pow1489; // pow(trace_generator, (safe_div((safe_mult(23569, global_values.trace_length)), 65536))). + local pow1491 = pow30 * pow1490; // pow(trace_generator, (safe_div((safe_mult(11785, global_values.trace_length)), 32768))). + local pow1492 = pow30 * pow1491; // pow(trace_generator, (safe_div((safe_mult(23571, global_values.trace_length)), 65536))). + local pow1493 = pow30 * pow1492; // pow(trace_generator, (safe_div((safe_mult(5893, global_values.trace_length)), 16384))). + local pow1494 = pow30 * pow1493; // pow(trace_generator, (safe_div((safe_mult(23573, global_values.trace_length)), 65536))). + local pow1495 = pow30 * pow1494; // pow(trace_generator, (safe_div((safe_mult(11787, global_values.trace_length)), 32768))). + local pow1496 = pow30 * pow1495; // pow(trace_generator, (safe_div((safe_mult(23575, global_values.trace_length)), 65536))). + local pow1497 = pow77 * pow1496; // pow(trace_generator, (safe_div((safe_mult(369, global_values.trace_length)), 1024))). + local pow1498 = pow98 * pow1497; // pow(trace_generator, (safe_div((safe_mult(185, global_values.trace_length)), 512))). + local pow1499 = pow98 * pow1498; // pow(trace_generator, (safe_div((safe_mult(371, global_values.trace_length)), 1024))). + local pow1500 = pow98 * pow1499; // pow(trace_generator, (safe_div((safe_mult(93, global_values.trace_length)), 256))). + local pow1501 = pow98 * pow1500; // pow(trace_generator, (safe_div((safe_mult(373, global_values.trace_length)), 1024))). + local pow1502 = pow98 * pow1501; // pow(trace_generator, (safe_div((safe_mult(187, global_values.trace_length)), 512))). + local pow1503 = pow98 * pow1502; // pow(trace_generator, (safe_div((safe_mult(375, global_values.trace_length)), 1024))). + local pow1504 = pow578 * pow1503; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 8))). + local pow1505 = pow30 * pow1504; // pow(trace_generator, (safe_div((safe_mult(24577, global_values.trace_length)), 65536))). + local pow1506 = pow30 * pow1505; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 32768))). + local pow1507 = pow30 * pow1506; // pow(trace_generator, (safe_div((safe_mult(24579, global_values.trace_length)), 65536))). + local pow1508 = pow30 * pow1507; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 16384))). + local pow1509 = pow30 * pow1508; // pow(trace_generator, (safe_div((safe_mult(24581, global_values.trace_length)), 65536))). + local pow1510 = pow30 * pow1509; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 32768))). + local pow1511 = pow30 * pow1510; // pow(trace_generator, (safe_div((safe_mult(24583, global_values.trace_length)), 65536))). + local pow1512 = pow30 * pow1511; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 8192))). + local pow1513 = pow30 * pow1512; // pow(trace_generator, (safe_div((safe_mult(24585, global_values.trace_length)), 65536))). + local pow1514 = pow30 * pow1513; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 32768))). + local pow1515 = pow30 * pow1514; // pow(trace_generator, (safe_div((safe_mult(24587, global_values.trace_length)), 65536))). + local pow1516 = pow30 * pow1515; // pow(trace_generator, (safe_div((safe_mult(6147, global_values.trace_length)), 16384))). + local pow1517 = pow30 * pow1516; // pow(trace_generator, (safe_div((safe_mult(24589, global_values.trace_length)), 65536))). + local pow1518 = pow30 * pow1517; // pow(trace_generator, (safe_div((safe_mult(12295, global_values.trace_length)), 32768))). + local pow1519 = pow30 * pow1518; // pow(trace_generator, (safe_div((safe_mult(24591, global_values.trace_length)), 65536))). + local pow1520 = pow30 * pow1519; // pow(trace_generator, (safe_div((safe_mult(1537, global_values.trace_length)), 4096))). + local pow1521 = pow30 * pow1520; // pow(trace_generator, (safe_div((safe_mult(24593, global_values.trace_length)), 65536))). + local pow1522 = pow30 * pow1521; // pow(trace_generator, (safe_div((safe_mult(12297, global_values.trace_length)), 32768))). + local pow1523 = pow30 * pow1522; // pow(trace_generator, (safe_div((safe_mult(24595, global_values.trace_length)), 65536))). + local pow1524 = pow30 * pow1523; // pow(trace_generator, (safe_div((safe_mult(6149, global_values.trace_length)), 16384))). + local pow1525 = pow30 * pow1524; // pow(trace_generator, (safe_div((safe_mult(24597, global_values.trace_length)), 65536))). + local pow1526 = pow30 * pow1525; // pow(trace_generator, (safe_div((safe_mult(12299, global_values.trace_length)), 32768))). + local pow1527 = pow30 * pow1526; // pow(trace_generator, (safe_div((safe_mult(24599, global_values.trace_length)), 65536))). + local pow1528 = pow77 * pow1527; // pow(trace_generator, (safe_div((safe_mult(385, global_values.trace_length)), 1024))). + local pow1529 = pow98 * pow1528; // pow(trace_generator, (safe_div((safe_mult(193, global_values.trace_length)), 512))). + local pow1530 = pow98 * pow1529; // pow(trace_generator, (safe_div((safe_mult(387, global_values.trace_length)), 1024))). + local pow1531 = pow98 * pow1530; // pow(trace_generator, (safe_div((safe_mult(97, global_values.trace_length)), 256))). + local pow1532 = pow98 * pow1531; // pow(trace_generator, (safe_div((safe_mult(389, global_values.trace_length)), 1024))). + local pow1533 = pow98 * pow1532; // pow(trace_generator, (safe_div((safe_mult(195, global_values.trace_length)), 512))). + local pow1534 = pow98 * pow1533; // pow(trace_generator, (safe_div((safe_mult(391, global_values.trace_length)), 1024))). + local pow1535 = pow98 * pow1534; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 128))). + local pow1536 = pow98 * pow1535; // pow(trace_generator, (safe_div((safe_mult(393, global_values.trace_length)), 1024))). + local pow1537 = pow98 * pow1536; // pow(trace_generator, (safe_div((safe_mult(197, global_values.trace_length)), 512))). + local pow1538 = pow98 * pow1537; // pow(trace_generator, (safe_div((safe_mult(395, global_values.trace_length)), 1024))). + local pow1539 = pow98 * pow1538; // pow(trace_generator, (safe_div((safe_mult(99, global_values.trace_length)), 256))). + local pow1540 = pow98 * pow1539; // pow(trace_generator, (safe_div((safe_mult(397, global_values.trace_length)), 1024))). + local pow1541 = pow98 * pow1540; // pow(trace_generator, (safe_div((safe_mult(199, global_values.trace_length)), 512))). + local pow1542 = pow98 * pow1541; // pow(trace_generator, (safe_div((safe_mult(399, global_values.trace_length)), 1024))). + local pow1543 = pow98 * pow1542; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 64))). + local pow1544 = pow30 * pow1543; // pow(trace_generator, (safe_div((safe_mult(25601, global_values.trace_length)), 65536))). + local pow1545 = pow30 * pow1544; // pow(trace_generator, (safe_div((safe_mult(12801, global_values.trace_length)), 32768))). + local pow1546 = pow30 * pow1545; // pow(trace_generator, (safe_div((safe_mult(25603, global_values.trace_length)), 65536))). + local pow1547 = pow30 * pow1546; // pow(trace_generator, (safe_div((safe_mult(6401, global_values.trace_length)), 16384))). + local pow1548 = pow30 * pow1547; // pow(trace_generator, (safe_div((safe_mult(25605, global_values.trace_length)), 65536))). + local pow1549 = pow30 * pow1548; // pow(trace_generator, (safe_div((safe_mult(12803, global_values.trace_length)), 32768))). + local pow1550 = pow30 * pow1549; // pow(trace_generator, (safe_div((safe_mult(25607, global_values.trace_length)), 65536))). + local pow1551 = pow30 * pow1550; // pow(trace_generator, (safe_div((safe_mult(3201, global_values.trace_length)), 8192))). + local pow1552 = pow30 * pow1551; // pow(trace_generator, (safe_div((safe_mult(25609, global_values.trace_length)), 65536))). + local pow1553 = pow30 * pow1552; // pow(trace_generator, (safe_div((safe_mult(12805, global_values.trace_length)), 32768))). + local pow1554 = pow30 * pow1553; // pow(trace_generator, (safe_div((safe_mult(25611, global_values.trace_length)), 65536))). + local pow1555 = pow30 * pow1554; // pow(trace_generator, (safe_div((safe_mult(6403, global_values.trace_length)), 16384))). + local pow1556 = pow30 * pow1555; // pow(trace_generator, (safe_div((safe_mult(25613, global_values.trace_length)), 65536))). + local pow1557 = pow30 * pow1556; // pow(trace_generator, (safe_div((safe_mult(12807, global_values.trace_length)), 32768))). + local pow1558 = pow30 * pow1557; // pow(trace_generator, (safe_div((safe_mult(25615, global_values.trace_length)), 65536))). + local pow1559 = pow30 * pow1558; // pow(trace_generator, (safe_div((safe_mult(1601, global_values.trace_length)), 4096))). + local pow1560 = pow30 * pow1559; // pow(trace_generator, (safe_div((safe_mult(25617, global_values.trace_length)), 65536))). + local pow1561 = pow30 * pow1560; // pow(trace_generator, (safe_div((safe_mult(12809, global_values.trace_length)), 32768))). + local pow1562 = pow30 * pow1561; // pow(trace_generator, (safe_div((safe_mult(25619, global_values.trace_length)), 65536))). + local pow1563 = pow30 * pow1562; // pow(trace_generator, (safe_div((safe_mult(6405, global_values.trace_length)), 16384))). + local pow1564 = pow30 * pow1563; // pow(trace_generator, (safe_div((safe_mult(25621, global_values.trace_length)), 65536))). + local pow1565 = pow30 * pow1564; // pow(trace_generator, (safe_div((safe_mult(12811, global_values.trace_length)), 32768))). + local pow1566 = pow30 * pow1565; // pow(trace_generator, (safe_div((safe_mult(25623, global_values.trace_length)), 65536))). + local pow1567 = pow77 * pow1566; // pow(trace_generator, (safe_div((safe_mult(401, global_values.trace_length)), 1024))). + local pow1568 = pow98 * pow1567; // pow(trace_generator, (safe_div((safe_mult(201, global_values.trace_length)), 512))). + local pow1569 = pow98 * pow1568; // pow(trace_generator, (safe_div((safe_mult(403, global_values.trace_length)), 1024))). + local pow1570 = pow98 * pow1569; // pow(trace_generator, (safe_div((safe_mult(101, global_values.trace_length)), 256))). + local pow1571 = pow98 * pow1570; // pow(trace_generator, (safe_div((safe_mult(405, global_values.trace_length)), 1024))). + local pow1572 = pow98 * pow1571; // pow(trace_generator, (safe_div((safe_mult(203, global_values.trace_length)), 512))). + local pow1573 = pow98 * pow1572; // pow(trace_generator, (safe_div((safe_mult(407, global_values.trace_length)), 1024))). + local pow1574 = pow578 * pow1573; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 32))). + local pow1575 = pow791 * pow1574; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 64))). + local pow1576 = pow30 * pow1574; // pow(trace_generator, (safe_div((safe_mult(26625, global_values.trace_length)), 65536))). + local pow1577 = pow30 * pow1575; // pow(trace_generator, (safe_div((safe_mult(27649, global_values.trace_length)), 65536))). + local pow1578 = pow30 * pow1576; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 32768))). + local pow1579 = pow30 * pow1577; // pow(trace_generator, (safe_div((safe_mult(13825, global_values.trace_length)), 32768))). + local pow1580 = pow30 * pow1578; // pow(trace_generator, (safe_div((safe_mult(26627, global_values.trace_length)), 65536))). + local pow1581 = pow30 * pow1579; // pow(trace_generator, (safe_div((safe_mult(27651, global_values.trace_length)), 65536))). + local pow1582 = pow30 * pow1580; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 16384))). + local pow1583 = pow30 * pow1581; // pow(trace_generator, (safe_div((safe_mult(6913, global_values.trace_length)), 16384))). + local pow1584 = pow30 * pow1582; // pow(trace_generator, (safe_div((safe_mult(26629, global_values.trace_length)), 65536))). + local pow1585 = pow30 * pow1583; // pow(trace_generator, (safe_div((safe_mult(27653, global_values.trace_length)), 65536))). + local pow1586 = pow30 * pow1584; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 32768))). + local pow1587 = pow30 * pow1585; // pow(trace_generator, (safe_div((safe_mult(13827, global_values.trace_length)), 32768))). + local pow1588 = pow30 * pow1586; // pow(trace_generator, (safe_div((safe_mult(26631, global_values.trace_length)), 65536))). + local pow1589 = pow30 * pow1587; // pow(trace_generator, (safe_div((safe_mult(27655, global_values.trace_length)), 65536))). + local pow1590 = pow30 * pow1588; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 8192))). + local pow1591 = pow30 * pow1590; // pow(trace_generator, (safe_div((safe_mult(26633, global_values.trace_length)), 65536))). + local pow1592 = pow30 * pow1591; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 32768))). + local pow1593 = pow30 * pow1592; // pow(trace_generator, (safe_div((safe_mult(26635, global_values.trace_length)), 65536))). + local pow1594 = pow30 * pow1593; // pow(trace_generator, (safe_div((safe_mult(6659, global_values.trace_length)), 16384))). + local pow1595 = pow30 * pow1594; // pow(trace_generator, (safe_div((safe_mult(26637, global_values.trace_length)), 65536))). + local pow1596 = pow30 * pow1595; // pow(trace_generator, (safe_div((safe_mult(13319, global_values.trace_length)), 32768))). + local pow1597 = pow30 * pow1596; // pow(trace_generator, (safe_div((safe_mult(26639, global_values.trace_length)), 65536))). + local pow1598 = pow30 * pow1597; // pow(trace_generator, (safe_div((safe_mult(1665, global_values.trace_length)), 4096))). + local pow1599 = pow30 * pow1598; // pow(trace_generator, (safe_div((safe_mult(26641, global_values.trace_length)), 65536))). + local pow1600 = pow30 * pow1599; // pow(trace_generator, (safe_div((safe_mult(13321, global_values.trace_length)), 32768))). + local pow1601 = pow30 * pow1600; // pow(trace_generator, (safe_div((safe_mult(26643, global_values.trace_length)), 65536))). + local pow1602 = pow30 * pow1601; // pow(trace_generator, (safe_div((safe_mult(6661, global_values.trace_length)), 16384))). + local pow1603 = pow30 * pow1602; // pow(trace_generator, (safe_div((safe_mult(26645, global_values.trace_length)), 65536))). + local pow1604 = pow30 * pow1603; // pow(trace_generator, (safe_div((safe_mult(13323, global_values.trace_length)), 32768))). + local pow1605 = pow30 * pow1604; // pow(trace_generator, (safe_div((safe_mult(26647, global_values.trace_length)), 65536))). + local pow1606 = pow861 * pow1575; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 32))). + local pow1607 = pow98 * pow1606; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 1024))). + local pow1608 = pow98 * pow1607; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 512))). + local pow1609 = pow98 * pow1608; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 1024))). + local pow1610 = pow98 * pow1609; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 256))). + local pow1611 = pow98 * pow1610; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 1024))). + local pow1612 = pow98 * pow1611; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 512))). + local pow1613 = pow98 * pow1612; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 1024))). + local pow1614 = pow98 * pow1613; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 128))). + local pow1615 = pow98 * pow1614; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 1024))). + local pow1616 = pow98 * pow1615; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 512))). + local pow1617 = pow98 * pow1616; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 1024))). + local pow1618 = pow98 * pow1617; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 256))). + local pow1619 = pow98 * pow1618; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 1024))). + local pow1620 = pow98 * pow1619; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 512))). + local pow1621 = pow98 * pow1620; // pow(trace_generator, (safe_div((safe_mult(495, global_values.trace_length)), 1024))). + local pow1622 = pow98 * pow1621; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 64))). + local pow1623 = pow30 * pow1622; // pow(trace_generator, (safe_div((safe_mult(31745, global_values.trace_length)), 65536))). + local pow1624 = pow30 * pow1623; // pow(trace_generator, (safe_div((safe_mult(15873, global_values.trace_length)), 32768))). + local pow1625 = pow30 * pow1624; // pow(trace_generator, (safe_div((safe_mult(31747, global_values.trace_length)), 65536))). + local pow1626 = pow30 * pow1625; // pow(trace_generator, (safe_div((safe_mult(7937, global_values.trace_length)), 16384))). + local pow1627 = pow30 * pow1626; // pow(trace_generator, (safe_div((safe_mult(31749, global_values.trace_length)), 65536))). + local pow1628 = pow30 * pow1627; // pow(trace_generator, (safe_div((safe_mult(15875, global_values.trace_length)), 32768))). + local pow1629 = pow30 * pow1628; // pow(trace_generator, (safe_div((safe_mult(31751, global_values.trace_length)), 65536))). + local pow1630 = pow30 * pow1589; // pow(trace_generator, (safe_div((safe_mult(3457, global_values.trace_length)), 8192))). + local pow1631 = pow30 * pow1629; // pow(trace_generator, (safe_div((safe_mult(3969, global_values.trace_length)), 8192))). + local pow1632 = pow30 * pow1630; // pow(trace_generator, (safe_div((safe_mult(27657, global_values.trace_length)), 65536))). + local pow1633 = pow30 * pow1631; // pow(trace_generator, (safe_div((safe_mult(31753, global_values.trace_length)), 65536))). + local pow1634 = pow30 * pow1632; // pow(trace_generator, (safe_div((safe_mult(13829, global_values.trace_length)), 32768))). + local pow1635 = pow30 * pow1633; // pow(trace_generator, (safe_div((safe_mult(15877, global_values.trace_length)), 32768))). + local pow1636 = pow30 * pow1634; // pow(trace_generator, (safe_div((safe_mult(27659, global_values.trace_length)), 65536))). + local pow1637 = pow30 * pow1635; // pow(trace_generator, (safe_div((safe_mult(31755, global_values.trace_length)), 65536))). + local pow1638 = pow30 * pow1636; // pow(trace_generator, (safe_div((safe_mult(6915, global_values.trace_length)), 16384))). + local pow1639 = pow30 * pow1637; // pow(trace_generator, (safe_div((safe_mult(7939, global_values.trace_length)), 16384))). + local pow1640 = pow30 * pow1638; // pow(trace_generator, (safe_div((safe_mult(27661, global_values.trace_length)), 65536))). + local pow1641 = pow30 * pow1639; // pow(trace_generator, (safe_div((safe_mult(31757, global_values.trace_length)), 65536))). + local pow1642 = pow30 * pow1640; // pow(trace_generator, (safe_div((safe_mult(13831, global_values.trace_length)), 32768))). + local pow1643 = pow30 * pow1641; // pow(trace_generator, (safe_div((safe_mult(15879, global_values.trace_length)), 32768))). + local pow1644 = pow30 * pow1642; // pow(trace_generator, (safe_div((safe_mult(27663, global_values.trace_length)), 65536))). + local pow1645 = pow30 * pow1643; // pow(trace_generator, (safe_div((safe_mult(31759, global_values.trace_length)), 65536))). + local pow1646 = pow30 * pow1644; // pow(trace_generator, (safe_div((safe_mult(1729, global_values.trace_length)), 4096))). + local pow1647 = pow30 * pow1645; // pow(trace_generator, (safe_div((safe_mult(1985, global_values.trace_length)), 4096))). + local pow1648 = pow30 * pow1646; // pow(trace_generator, (safe_div((safe_mult(27665, global_values.trace_length)), 65536))). + local pow1649 = pow30 * pow1647; // pow(trace_generator, (safe_div((safe_mult(31761, global_values.trace_length)), 65536))). + local pow1650 = pow30 * pow1648; // pow(trace_generator, (safe_div((safe_mult(13833, global_values.trace_length)), 32768))). + local pow1651 = pow30 * pow1649; // pow(trace_generator, (safe_div((safe_mult(15881, global_values.trace_length)), 32768))). + local pow1652 = pow30 * pow1650; // pow(trace_generator, (safe_div((safe_mult(27667, global_values.trace_length)), 65536))). + local pow1653 = pow30 * pow1651; // pow(trace_generator, (safe_div((safe_mult(31763, global_values.trace_length)), 65536))). + local pow1654 = pow30 * pow1652; // pow(trace_generator, (safe_div((safe_mult(6917, global_values.trace_length)), 16384))). + local pow1655 = pow30 * pow1653; // pow(trace_generator, (safe_div((safe_mult(7941, global_values.trace_length)), 16384))). + local pow1656 = pow30 * pow1654; // pow(trace_generator, (safe_div((safe_mult(27669, global_values.trace_length)), 65536))). + local pow1657 = pow30 * pow1655; // pow(trace_generator, (safe_div((safe_mult(31765, global_values.trace_length)), 65536))). + local pow1658 = pow30 * pow1656; // pow(trace_generator, (safe_div((safe_mult(13835, global_values.trace_length)), 32768))). + local pow1659 = pow30 * pow1658; // pow(trace_generator, (safe_div((safe_mult(27671, global_values.trace_length)), 65536))). + local pow1660 = pow30 * pow1657; // pow(trace_generator, (safe_div((safe_mult(15883, global_values.trace_length)), 32768))). + local pow1661 = pow30 * pow1660; // pow(trace_generator, (safe_div((safe_mult(31767, global_values.trace_length)), 65536))). + local pow1662 = pow77 * pow1661; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 1024))). + local pow1663 = pow98 * pow1662; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 512))). + local pow1664 = pow98 * pow1663; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 1024))). + local pow1665 = pow98 * pow1664; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 256))). + local pow1666 = pow98 * pow1665; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 1024))). + local pow1667 = pow98 * pow1666; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 512))). + local pow1668 = pow98 * pow1667; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 1024))). + local pow1669 = pow578 * pow1668; // pow(trace_generator, (safe_div(global_values.trace_length, 2))). + local pow1670 = pow98 * pow1669; // pow(trace_generator, (safe_div((safe_mult(513, global_values.trace_length)), 1024))). + local pow1671 = pow98 * pow1670; // pow(trace_generator, (safe_div((safe_mult(257, global_values.trace_length)), 512))). + local pow1672 = pow98 * pow1671; // pow(trace_generator, (safe_div((safe_mult(515, global_values.trace_length)), 1024))). + local pow1673 = pow98 * pow1672; // pow(trace_generator, (safe_div((safe_mult(129, global_values.trace_length)), 256))). + local pow1674 = pow98 * pow1673; // pow(trace_generator, (safe_div((safe_mult(517, global_values.trace_length)), 1024))). + local pow1675 = pow98 * pow1674; // pow(trace_generator, (safe_div((safe_mult(259, global_values.trace_length)), 512))). + local pow1676 = pow98 * pow1675; // pow(trace_generator, (safe_div((safe_mult(519, global_values.trace_length)), 1024))). + local pow1677 = pow98 * pow1676; // pow(trace_generator, (safe_div((safe_mult(65, global_values.trace_length)), 128))). + local pow1678 = pow98 * pow1677; // pow(trace_generator, (safe_div((safe_mult(521, global_values.trace_length)), 1024))). + local pow1679 = pow98 * pow1678; // pow(trace_generator, (safe_div((safe_mult(261, global_values.trace_length)), 512))). + local pow1680 = pow98 * pow1679; // pow(trace_generator, (safe_div((safe_mult(523, global_values.trace_length)), 1024))). + local pow1681 = pow98 * pow1680; // pow(trace_generator, (safe_div((safe_mult(131, global_values.trace_length)), 256))). + local pow1682 = pow98 * pow1681; // pow(trace_generator, (safe_div((safe_mult(525, global_values.trace_length)), 1024))). + local pow1683 = pow98 * pow1682; // pow(trace_generator, (safe_div((safe_mult(263, global_values.trace_length)), 512))). + local pow1684 = pow98 * pow1683; // pow(trace_generator, (safe_div((safe_mult(527, global_values.trace_length)), 1024))). + local pow1685 = pow98 * pow1684; // pow(trace_generator, (safe_div((safe_mult(33, global_values.trace_length)), 64))). + local pow1686 = pow98 * pow1685; // pow(trace_generator, (safe_div((safe_mult(529, global_values.trace_length)), 1024))). + local pow1687 = pow98 * pow1686; // pow(trace_generator, (safe_div((safe_mult(265, global_values.trace_length)), 512))). + local pow1688 = pow98 * pow1687; // pow(trace_generator, (safe_div((safe_mult(531, global_values.trace_length)), 1024))). + local pow1689 = pow98 * pow1688; // pow(trace_generator, (safe_div((safe_mult(133, global_values.trace_length)), 256))). + local pow1690 = pow98 * pow1689; // pow(trace_generator, (safe_div((safe_mult(533, global_values.trace_length)), 1024))). + local pow1691 = pow98 * pow1690; // pow(trace_generator, (safe_div((safe_mult(267, global_values.trace_length)), 512))). + local pow1692 = pow98 * pow1691; // pow(trace_generator, (safe_div((safe_mult(535, global_values.trace_length)), 1024))). + local pow1693 = pow578 * pow1692; // pow(trace_generator, (safe_div((safe_mult(17, global_values.trace_length)), 32))). + local pow1694 = pow98 * pow1693; // pow(trace_generator, (safe_div((safe_mult(545, global_values.trace_length)), 1024))). + local pow1695 = pow98 * pow1694; // pow(trace_generator, (safe_div((safe_mult(273, global_values.trace_length)), 512))). + local pow1696 = pow98 * pow1695; // pow(trace_generator, (safe_div((safe_mult(547, global_values.trace_length)), 1024))). + local pow1697 = pow98 * pow1696; // pow(trace_generator, (safe_div((safe_mult(137, global_values.trace_length)), 256))). + local pow1698 = pow98 * pow1697; // pow(trace_generator, (safe_div((safe_mult(549, global_values.trace_length)), 1024))). + local pow1699 = pow98 * pow1698; // pow(trace_generator, (safe_div((safe_mult(275, global_values.trace_length)), 512))). + local pow1700 = pow98 * pow1699; // pow(trace_generator, (safe_div((safe_mult(551, global_values.trace_length)), 1024))). + local pow1701 = pow98 * pow1700; // pow(trace_generator, (safe_div((safe_mult(69, global_values.trace_length)), 128))). + local pow1702 = pow98 * pow1701; // pow(trace_generator, (safe_div((safe_mult(553, global_values.trace_length)), 1024))). + local pow1703 = pow98 * pow1702; // pow(trace_generator, (safe_div((safe_mult(277, global_values.trace_length)), 512))). + local pow1704 = pow98 * pow1703; // pow(trace_generator, (safe_div((safe_mult(555, global_values.trace_length)), 1024))). + local pow1705 = pow98 * pow1704; // pow(trace_generator, (safe_div((safe_mult(139, global_values.trace_length)), 256))). + local pow1706 = pow98 * pow1705; // pow(trace_generator, (safe_div((safe_mult(557, global_values.trace_length)), 1024))). + local pow1707 = pow98 * pow1706; // pow(trace_generator, (safe_div((safe_mult(279, global_values.trace_length)), 512))). + local pow1708 = pow98 * pow1707; // pow(trace_generator, (safe_div((safe_mult(559, global_values.trace_length)), 1024))). + local pow1709 = pow98 * pow1708; // pow(trace_generator, (safe_div((safe_mult(35, global_values.trace_length)), 64))). + local pow1710 = pow98 * pow1709; // pow(trace_generator, (safe_div((safe_mult(561, global_values.trace_length)), 1024))). + local pow1711 = pow98 * pow1710; // pow(trace_generator, (safe_div((safe_mult(281, global_values.trace_length)), 512))). + local pow1712 = pow98 * pow1711; // pow(trace_generator, (safe_div((safe_mult(563, global_values.trace_length)), 1024))). + local pow1713 = pow98 * pow1712; // pow(trace_generator, (safe_div((safe_mult(141, global_values.trace_length)), 256))). + local pow1714 = pow98 * pow1713; // pow(trace_generator, (safe_div((safe_mult(565, global_values.trace_length)), 1024))). + local pow1715 = pow98 * pow1714; // pow(trace_generator, (safe_div((safe_mult(283, global_values.trace_length)), 512))). + local pow1716 = pow98 * pow1715; // pow(trace_generator, (safe_div((safe_mult(567, global_values.trace_length)), 1024))). + local pow1717 = pow578 * pow1716; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 16))). + local pow1718 = pow30 * pow1717; // pow(trace_generator, (safe_div((safe_mult(36865, global_values.trace_length)), 65536))). + local pow1719 = pow30 * pow1718; // pow(trace_generator, (safe_div((safe_mult(18433, global_values.trace_length)), 32768))). + local pow1720 = pow30 * pow1719; // pow(trace_generator, (safe_div((safe_mult(36867, global_values.trace_length)), 65536))). + local pow1721 = pow30 * pow1720; // pow(trace_generator, (safe_div((safe_mult(9217, global_values.trace_length)), 16384))). + local pow1722 = pow30 * pow1721; // pow(trace_generator, (safe_div((safe_mult(36869, global_values.trace_length)), 65536))). + local pow1723 = pow30 * pow1722; // pow(trace_generator, (safe_div((safe_mult(18435, global_values.trace_length)), 32768))). + local pow1724 = pow30 * pow1723; // pow(trace_generator, (safe_div((safe_mult(36871, global_values.trace_length)), 65536))). + local pow1725 = pow791 * pow1717; // pow(trace_generator, (safe_div((safe_mult(37, global_values.trace_length)), 64))). + local pow1726 = pow30 * pow1725; // pow(trace_generator, (safe_div((safe_mult(37889, global_values.trace_length)), 65536))). + local pow1727 = pow30 * pow1726; // pow(trace_generator, (safe_div((safe_mult(18945, global_values.trace_length)), 32768))). + local pow1728 = pow30 * pow1727; // pow(trace_generator, (safe_div((safe_mult(37891, global_values.trace_length)), 65536))). + local pow1729 = pow30 * pow1728; // pow(trace_generator, (safe_div((safe_mult(9473, global_values.trace_length)), 16384))). + local pow1730 = pow30 * pow1729; // pow(trace_generator, (safe_div((safe_mult(37893, global_values.trace_length)), 65536))). + local pow1731 = pow30 * pow1730; // pow(trace_generator, (safe_div((safe_mult(18947, global_values.trace_length)), 32768))). + local pow1732 = pow30 * pow1731; // pow(trace_generator, (safe_div((safe_mult(37895, global_values.trace_length)), 65536))). + local pow1733 = pow791 * pow1725; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 32))). + local pow1734 = pow30 * pow1733; // pow(trace_generator, (safe_div((safe_mult(38913, global_values.trace_length)), 65536))). + local pow1735 = pow30 * pow1734; // pow(trace_generator, (safe_div((safe_mult(19457, global_values.trace_length)), 32768))). + local pow1736 = pow30 * pow1735; // pow(trace_generator, (safe_div((safe_mult(38915, global_values.trace_length)), 65536))). + local pow1737 = pow30 * pow1736; // pow(trace_generator, (safe_div((safe_mult(9729, global_values.trace_length)), 16384))). + local pow1738 = pow30 * pow1737; // pow(trace_generator, (safe_div((safe_mult(38917, global_values.trace_length)), 65536))). + local pow1739 = pow30 * pow1738; // pow(trace_generator, (safe_div((safe_mult(19459, global_values.trace_length)), 32768))). + local pow1740 = pow30 * pow1739; // pow(trace_generator, (safe_div((safe_mult(38919, global_values.trace_length)), 65536))). + local pow1741 = pow791 * pow1733; // pow(trace_generator, (safe_div((safe_mult(39, global_values.trace_length)), 64))). + local pow1742 = pow30 * pow1741; // pow(trace_generator, (safe_div((safe_mult(39937, global_values.trace_length)), 65536))). + local pow1743 = pow30 * pow1742; // pow(trace_generator, (safe_div((safe_mult(19969, global_values.trace_length)), 32768))). + local pow1744 = pow30 * pow1743; // pow(trace_generator, (safe_div((safe_mult(39939, global_values.trace_length)), 65536))). + local pow1745 = pow30 * pow1744; // pow(trace_generator, (safe_div((safe_mult(9985, global_values.trace_length)), 16384))). + local pow1746 = pow30 * pow1745; // pow(trace_generator, (safe_div((safe_mult(39941, global_values.trace_length)), 65536))). + local pow1747 = pow30 * pow1746; // pow(trace_generator, (safe_div((safe_mult(19971, global_values.trace_length)), 32768))). + local pow1748 = pow30 * pow1747; // pow(trace_generator, (safe_div((safe_mult(39943, global_values.trace_length)), 65536))). + local pow1749 = pow791 * pow1741; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 8))). + local pow1750 = pow30 * pow1749; // pow(trace_generator, (safe_div((safe_mult(40961, global_values.trace_length)), 65536))). + local pow1751 = pow30 * pow1750; // pow(trace_generator, (safe_div((safe_mult(20481, global_values.trace_length)), 32768))). + local pow1752 = pow30 * pow1751; // pow(trace_generator, (safe_div((safe_mult(40963, global_values.trace_length)), 65536))). + local pow1753 = pow30 * pow1752; // pow(trace_generator, (safe_div((safe_mult(10241, global_values.trace_length)), 16384))). + local pow1754 = pow30 * pow1753; // pow(trace_generator, (safe_div((safe_mult(40965, global_values.trace_length)), 65536))). + local pow1755 = pow30 * pow1754; // pow(trace_generator, (safe_div((safe_mult(20483, global_values.trace_length)), 32768))). + local pow1756 = pow30 * pow1755; // pow(trace_generator, (safe_div((safe_mult(40967, global_values.trace_length)), 65536))). + local pow1757 = pow30 * pow1724; // pow(trace_generator, (safe_div((safe_mult(4609, global_values.trace_length)), 8192))). + local pow1758 = pow30 * pow1757; // pow(trace_generator, (safe_div((safe_mult(36873, global_values.trace_length)), 65536))). + local pow1759 = pow30 * pow1758; // pow(trace_generator, (safe_div((safe_mult(18437, global_values.trace_length)), 32768))). + local pow1760 = pow30 * pow1759; // pow(trace_generator, (safe_div((safe_mult(36875, global_values.trace_length)), 65536))). + local pow1761 = pow30 * pow1760; // pow(trace_generator, (safe_div((safe_mult(9219, global_values.trace_length)), 16384))). + local pow1762 = pow30 * pow1761; // pow(trace_generator, (safe_div((safe_mult(36877, global_values.trace_length)), 65536))). + local pow1763 = pow30 * pow1762; // pow(trace_generator, (safe_div((safe_mult(18439, global_values.trace_length)), 32768))). + local pow1764 = pow30 * pow1763; // pow(trace_generator, (safe_div((safe_mult(36879, global_values.trace_length)), 65536))). + local pow1765 = pow30 * pow1764; // pow(trace_generator, (safe_div((safe_mult(2305, global_values.trace_length)), 4096))). + local pow1766 = pow30 * pow1765; // pow(trace_generator, (safe_div((safe_mult(36881, global_values.trace_length)), 65536))). + local pow1767 = pow30 * pow1766; // pow(trace_generator, (safe_div((safe_mult(18441, global_values.trace_length)), 32768))). + local pow1768 = pow30 * pow1767; // pow(trace_generator, (safe_div((safe_mult(36883, global_values.trace_length)), 65536))). + local pow1769 = pow30 * pow1768; // pow(trace_generator, (safe_div((safe_mult(9221, global_values.trace_length)), 16384))). + local pow1770 = pow30 * pow1769; // pow(trace_generator, (safe_div((safe_mult(36885, global_values.trace_length)), 65536))). + local pow1771 = pow30 * pow1770; // pow(trace_generator, (safe_div((safe_mult(18443, global_values.trace_length)), 32768))). + local pow1772 = pow30 * pow1771; // pow(trace_generator, (safe_div((safe_mult(36887, global_values.trace_length)), 65536))). + local pow1773 = pow30 * pow1732; // pow(trace_generator, (safe_div((safe_mult(4737, global_values.trace_length)), 8192))). + local pow1774 = pow30 * pow1740; // pow(trace_generator, (safe_div((safe_mult(4865, global_values.trace_length)), 8192))). + local pow1775 = pow30 * pow1773; // pow(trace_generator, (safe_div((safe_mult(37897, global_values.trace_length)), 65536))). + local pow1776 = pow30 * pow1774; // pow(trace_generator, (safe_div((safe_mult(38921, global_values.trace_length)), 65536))). + local pow1777 = pow30 * pow1775; // pow(trace_generator, (safe_div((safe_mult(18949, global_values.trace_length)), 32768))). + local pow1778 = pow30 * pow1776; // pow(trace_generator, (safe_div((safe_mult(19461, global_values.trace_length)), 32768))). + local pow1779 = pow30 * pow1777; // pow(trace_generator, (safe_div((safe_mult(37899, global_values.trace_length)), 65536))). + local pow1780 = pow30 * pow1778; // pow(trace_generator, (safe_div((safe_mult(38923, global_values.trace_length)), 65536))). + local pow1781 = pow30 * pow1779; // pow(trace_generator, (safe_div((safe_mult(9475, global_values.trace_length)), 16384))). + local pow1782 = pow30 * pow1780; // pow(trace_generator, (safe_div((safe_mult(9731, global_values.trace_length)), 16384))). + local pow1783 = pow30 * pow1781; // pow(trace_generator, (safe_div((safe_mult(37901, global_values.trace_length)), 65536))). + local pow1784 = pow30 * pow1782; // pow(trace_generator, (safe_div((safe_mult(38925, global_values.trace_length)), 65536))). + local pow1785 = pow30 * pow1783; // pow(trace_generator, (safe_div((safe_mult(18951, global_values.trace_length)), 32768))). + local pow1786 = pow30 * pow1784; // pow(trace_generator, (safe_div((safe_mult(19463, global_values.trace_length)), 32768))). + local pow1787 = pow30 * pow1785; // pow(trace_generator, (safe_div((safe_mult(37903, global_values.trace_length)), 65536))). + local pow1788 = pow30 * pow1786; // pow(trace_generator, (safe_div((safe_mult(38927, global_values.trace_length)), 65536))). + local pow1789 = pow30 * pow1787; // pow(trace_generator, (safe_div((safe_mult(2369, global_values.trace_length)), 4096))). + local pow1790 = pow30 * pow1788; // pow(trace_generator, (safe_div((safe_mult(2433, global_values.trace_length)), 4096))). + local pow1791 = pow30 * pow1789; // pow(trace_generator, (safe_div((safe_mult(37905, global_values.trace_length)), 65536))). + local pow1792 = pow30 * pow1790; // pow(trace_generator, (safe_div((safe_mult(38929, global_values.trace_length)), 65536))). + local pow1793 = pow30 * pow1791; // pow(trace_generator, (safe_div((safe_mult(18953, global_values.trace_length)), 32768))). + local pow1794 = pow30 * pow1792; // pow(trace_generator, (safe_div((safe_mult(19465, global_values.trace_length)), 32768))). + local pow1795 = pow30 * pow1793; // pow(trace_generator, (safe_div((safe_mult(37907, global_values.trace_length)), 65536))). + local pow1796 = pow30 * pow1794; // pow(trace_generator, (safe_div((safe_mult(38931, global_values.trace_length)), 65536))). + local pow1797 = pow30 * pow1795; // pow(trace_generator, (safe_div((safe_mult(9477, global_values.trace_length)), 16384))). + local pow1798 = pow30 * pow1796; // pow(trace_generator, (safe_div((safe_mult(9733, global_values.trace_length)), 16384))). + local pow1799 = pow30 * pow1797; // pow(trace_generator, (safe_div((safe_mult(37909, global_values.trace_length)), 65536))). + local pow1800 = pow30 * pow1798; // pow(trace_generator, (safe_div((safe_mult(38933, global_values.trace_length)), 65536))). + local pow1801 = pow30 * pow1799; // pow(trace_generator, (safe_div((safe_mult(18955, global_values.trace_length)), 32768))). + local pow1802 = pow30 * pow1801; // pow(trace_generator, (safe_div((safe_mult(37911, global_values.trace_length)), 65536))). + local pow1803 = pow30 * pow1800; // pow(trace_generator, (safe_div((safe_mult(19467, global_values.trace_length)), 32768))). + local pow1804 = pow30 * pow1803; // pow(trace_generator, (safe_div((safe_mult(38935, global_values.trace_length)), 65536))). + local pow1805 = pow30 * pow1748; // pow(trace_generator, (safe_div((safe_mult(4993, global_values.trace_length)), 8192))). + local pow1806 = pow30 * pow1756; // pow(trace_generator, (safe_div((safe_mult(5121, global_values.trace_length)), 8192))). + local pow1807 = pow30 * pow1805; // pow(trace_generator, (safe_div((safe_mult(39945, global_values.trace_length)), 65536))). + local pow1808 = pow30 * pow1806; // pow(trace_generator, (safe_div((safe_mult(40969, global_values.trace_length)), 65536))). + local pow1809 = pow30 * pow1807; // pow(trace_generator, (safe_div((safe_mult(19973, global_values.trace_length)), 32768))). + local pow1810 = pow30 * pow1808; // pow(trace_generator, (safe_div((safe_mult(20485, global_values.trace_length)), 32768))). + local pow1811 = pow30 * pow1809; // pow(trace_generator, (safe_div((safe_mult(39947, global_values.trace_length)), 65536))). + local pow1812 = pow30 * pow1810; // pow(trace_generator, (safe_div((safe_mult(40971, global_values.trace_length)), 65536))). + local pow1813 = pow30 * pow1811; // pow(trace_generator, (safe_div((safe_mult(9987, global_values.trace_length)), 16384))). + local pow1814 = pow30 * pow1812; // pow(trace_generator, (safe_div((safe_mult(10243, global_values.trace_length)), 16384))). + local pow1815 = pow30 * pow1813; // pow(trace_generator, (safe_div((safe_mult(39949, global_values.trace_length)), 65536))). + local pow1816 = pow30 * pow1814; // pow(trace_generator, (safe_div((safe_mult(40973, global_values.trace_length)), 65536))). + local pow1817 = pow30 * pow1815; // pow(trace_generator, (safe_div((safe_mult(19975, global_values.trace_length)), 32768))). + local pow1818 = pow30 * pow1816; // pow(trace_generator, (safe_div((safe_mult(20487, global_values.trace_length)), 32768))). + local pow1819 = pow30 * pow1817; // pow(trace_generator, (safe_div((safe_mult(39951, global_values.trace_length)), 65536))). + local pow1820 = pow30 * pow1818; // pow(trace_generator, (safe_div((safe_mult(40975, global_values.trace_length)), 65536))). + local pow1821 = pow30 * pow1819; // pow(trace_generator, (safe_div((safe_mult(2497, global_values.trace_length)), 4096))). + local pow1822 = pow30 * pow1820; // pow(trace_generator, (safe_div((safe_mult(2561, global_values.trace_length)), 4096))). + local pow1823 = pow30 * pow1821; // pow(trace_generator, (safe_div((safe_mult(39953, global_values.trace_length)), 65536))). + local pow1824 = pow30 * pow1822; // pow(trace_generator, (safe_div((safe_mult(40977, global_values.trace_length)), 65536))). + local pow1825 = pow30 * pow1823; // pow(trace_generator, (safe_div((safe_mult(19977, global_values.trace_length)), 32768))). + local pow1826 = pow30 * pow1824; // pow(trace_generator, (safe_div((safe_mult(20489, global_values.trace_length)), 32768))). + local pow1827 = pow30 * pow1825; // pow(trace_generator, (safe_div((safe_mult(39955, global_values.trace_length)), 65536))). + local pow1828 = pow30 * pow1826; // pow(trace_generator, (safe_div((safe_mult(40979, global_values.trace_length)), 65536))). + local pow1829 = pow30 * pow1827; // pow(trace_generator, (safe_div((safe_mult(9989, global_values.trace_length)), 16384))). + local pow1830 = pow30 * pow1828; // pow(trace_generator, (safe_div((safe_mult(10245, global_values.trace_length)), 16384))). + local pow1831 = pow30 * pow1829; // pow(trace_generator, (safe_div((safe_mult(39957, global_values.trace_length)), 65536))). + local pow1832 = pow30 * pow1830; // pow(trace_generator, (safe_div((safe_mult(40981, global_values.trace_length)), 65536))). + local pow1833 = pow30 * pow1831; // pow(trace_generator, (safe_div((safe_mult(19979, global_values.trace_length)), 32768))). + local pow1834 = pow30 * pow1832; // pow(trace_generator, (safe_div((safe_mult(20491, global_values.trace_length)), 32768))). + local pow1835 = pow30 * pow1833; // pow(trace_generator, (safe_div((safe_mult(39959, global_values.trace_length)), 65536))). + local pow1836 = pow30 * pow1834; // pow(trace_generator, (safe_div((safe_mult(40983, global_values.trace_length)), 65536))). + local pow1837 = pow77 * pow1836; // pow(trace_generator, (safe_div((safe_mult(641, global_values.trace_length)), 1024))). + local pow1838 = pow98 * pow1837; // pow(trace_generator, (safe_div((safe_mult(321, global_values.trace_length)), 512))). + local pow1839 = pow98 * pow1838; // pow(trace_generator, (safe_div((safe_mult(643, global_values.trace_length)), 1024))). + local pow1840 = pow98 * pow1839; // pow(trace_generator, (safe_div((safe_mult(161, global_values.trace_length)), 256))). + local pow1841 = pow98 * pow1840; // pow(trace_generator, (safe_div((safe_mult(645, global_values.trace_length)), 1024))). + local pow1842 = pow98 * pow1841; // pow(trace_generator, (safe_div((safe_mult(323, global_values.trace_length)), 512))). + local pow1843 = pow98 * pow1842; // pow(trace_generator, (safe_div((safe_mult(647, global_values.trace_length)), 1024))). + local pow1844 = pow98 * pow1843; // pow(trace_generator, (safe_div((safe_mult(81, global_values.trace_length)), 128))). + local pow1845 = pow98 * pow1844; // pow(trace_generator, (safe_div((safe_mult(649, global_values.trace_length)), 1024))). + local pow1846 = pow98 * pow1845; // pow(trace_generator, (safe_div((safe_mult(325, global_values.trace_length)), 512))). + local pow1847 = pow98 * pow1846; // pow(trace_generator, (safe_div((safe_mult(651, global_values.trace_length)), 1024))). + local pow1848 = pow98 * pow1847; // pow(trace_generator, (safe_div((safe_mult(163, global_values.trace_length)), 256))). + local pow1849 = pow98 * pow1848; // pow(trace_generator, (safe_div((safe_mult(653, global_values.trace_length)), 1024))). + local pow1850 = pow98 * pow1849; // pow(trace_generator, (safe_div((safe_mult(327, global_values.trace_length)), 512))). + local pow1851 = pow98 * pow1850; // pow(trace_generator, (safe_div((safe_mult(655, global_values.trace_length)), 1024))). + local pow1852 = pow98 * pow1851; // pow(trace_generator, (safe_div((safe_mult(41, global_values.trace_length)), 64))). + local pow1853 = pow30 * pow1852; // pow(trace_generator, (safe_div((safe_mult(41985, global_values.trace_length)), 65536))). + local pow1854 = pow30 * pow1853; // pow(trace_generator, (safe_div((safe_mult(20993, global_values.trace_length)), 32768))). + local pow1855 = pow30 * pow1854; // pow(trace_generator, (safe_div((safe_mult(41987, global_values.trace_length)), 65536))). + local pow1856 = pow30 * pow1855; // pow(trace_generator, (safe_div((safe_mult(10497, global_values.trace_length)), 16384))). + local pow1857 = pow30 * pow1856; // pow(trace_generator, (safe_div((safe_mult(41989, global_values.trace_length)), 65536))). + local pow1858 = pow30 * pow1857; // pow(trace_generator, (safe_div((safe_mult(20995, global_values.trace_length)), 32768))). + local pow1859 = pow30 * pow1858; // pow(trace_generator, (safe_div((safe_mult(41991, global_values.trace_length)), 65536))). + local pow1860 = pow30 * pow1859; // pow(trace_generator, (safe_div((safe_mult(5249, global_values.trace_length)), 8192))). + local pow1861 = pow30 * pow1860; // pow(trace_generator, (safe_div((safe_mult(41993, global_values.trace_length)), 65536))). + local pow1862 = pow30 * pow1861; // pow(trace_generator, (safe_div((safe_mult(20997, global_values.trace_length)), 32768))). + local pow1863 = pow30 * pow1862; // pow(trace_generator, (safe_div((safe_mult(41995, global_values.trace_length)), 65536))). + local pow1864 = pow30 * pow1863; // pow(trace_generator, (safe_div((safe_mult(10499, global_values.trace_length)), 16384))). + local pow1865 = pow30 * pow1864; // pow(trace_generator, (safe_div((safe_mult(41997, global_values.trace_length)), 65536))). + local pow1866 = pow30 * pow1865; // pow(trace_generator, (safe_div((safe_mult(20999, global_values.trace_length)), 32768))). + local pow1867 = pow30 * pow1866; // pow(trace_generator, (safe_div((safe_mult(41999, global_values.trace_length)), 65536))). + local pow1868 = pow30 * pow1867; // pow(trace_generator, (safe_div((safe_mult(2625, global_values.trace_length)), 4096))). + local pow1869 = pow30 * pow1868; // pow(trace_generator, (safe_div((safe_mult(42001, global_values.trace_length)), 65536))). + local pow1870 = pow30 * pow1869; // pow(trace_generator, (safe_div((safe_mult(21001, global_values.trace_length)), 32768))). + local pow1871 = pow30 * pow1870; // pow(trace_generator, (safe_div((safe_mult(42003, global_values.trace_length)), 65536))). + local pow1872 = pow30 * pow1871; // pow(trace_generator, (safe_div((safe_mult(10501, global_values.trace_length)), 16384))). + local pow1873 = pow30 * pow1872; // pow(trace_generator, (safe_div((safe_mult(42005, global_values.trace_length)), 65536))). + local pow1874 = pow30 * pow1873; // pow(trace_generator, (safe_div((safe_mult(21003, global_values.trace_length)), 32768))). + local pow1875 = pow30 * pow1874; // pow(trace_generator, (safe_div((safe_mult(42007, global_values.trace_length)), 65536))). + local pow1876 = pow77 * pow1875; // pow(trace_generator, (safe_div((safe_mult(657, global_values.trace_length)), 1024))). + local pow1877 = pow98 * pow1876; // pow(trace_generator, (safe_div((safe_mult(329, global_values.trace_length)), 512))). + local pow1878 = pow98 * pow1877; // pow(trace_generator, (safe_div((safe_mult(659, global_values.trace_length)), 1024))). + local pow1879 = pow98 * pow1878; // pow(trace_generator, (safe_div((safe_mult(165, global_values.trace_length)), 256))). + local pow1880 = pow98 * pow1879; // pow(trace_generator, (safe_div((safe_mult(661, global_values.trace_length)), 1024))). + local pow1881 = pow98 * pow1880; // pow(trace_generator, (safe_div((safe_mult(331, global_values.trace_length)), 512))). + local pow1882 = pow98 * pow1881; // pow(trace_generator, (safe_div((safe_mult(663, global_values.trace_length)), 1024))). + local pow1883 = pow578 * pow1882; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 32))). + local pow1884 = pow30 * pow1883; // pow(trace_generator, (safe_div((safe_mult(43009, global_values.trace_length)), 65536))). + local pow1885 = pow30 * pow1884; // pow(trace_generator, (safe_div((safe_mult(21505, global_values.trace_length)), 32768))). + local pow1886 = pow30 * pow1885; // pow(trace_generator, (safe_div((safe_mult(43011, global_values.trace_length)), 65536))). + local pow1887 = pow30 * pow1886; // pow(trace_generator, (safe_div((safe_mult(10753, global_values.trace_length)), 16384))). + local pow1888 = pow30 * pow1887; // pow(trace_generator, (safe_div((safe_mult(43013, global_values.trace_length)), 65536))). + local pow1889 = pow30 * pow1888; // pow(trace_generator, (safe_div((safe_mult(21507, global_values.trace_length)), 32768))). + local pow1890 = pow30 * pow1889; // pow(trace_generator, (safe_div((safe_mult(43015, global_values.trace_length)), 65536))). + local pow1891 = pow30 * pow1890; // pow(trace_generator, (safe_div((safe_mult(5377, global_values.trace_length)), 8192))). + local pow1892 = pow30 * pow1891; // pow(trace_generator, (safe_div((safe_mult(43017, global_values.trace_length)), 65536))). + local pow1893 = pow30 * pow1892; // pow(trace_generator, (safe_div((safe_mult(21509, global_values.trace_length)), 32768))). + local pow1894 = pow30 * pow1893; // pow(trace_generator, (safe_div((safe_mult(43019, global_values.trace_length)), 65536))). + local pow1895 = pow30 * pow1894; // pow(trace_generator, (safe_div((safe_mult(10755, global_values.trace_length)), 16384))). + local pow1896 = pow30 * pow1895; // pow(trace_generator, (safe_div((safe_mult(43021, global_values.trace_length)), 65536))). + local pow1897 = pow30 * pow1896; // pow(trace_generator, (safe_div((safe_mult(21511, global_values.trace_length)), 32768))). + local pow1898 = pow30 * pow1897; // pow(trace_generator, (safe_div((safe_mult(43023, global_values.trace_length)), 65536))). + local pow1899 = pow30 * pow1898; // pow(trace_generator, (safe_div((safe_mult(2689, global_values.trace_length)), 4096))). + local pow1900 = pow30 * pow1899; // pow(trace_generator, (safe_div((safe_mult(43025, global_values.trace_length)), 65536))). + local pow1901 = pow30 * pow1900; // pow(trace_generator, (safe_div((safe_mult(21513, global_values.trace_length)), 32768))). + local pow1902 = pow30 * pow1901; // pow(trace_generator, (safe_div((safe_mult(43027, global_values.trace_length)), 65536))). + local pow1903 = pow30 * pow1902; // pow(trace_generator, (safe_div((safe_mult(10757, global_values.trace_length)), 16384))). + local pow1904 = pow30 * pow1903; // pow(trace_generator, (safe_div((safe_mult(43029, global_values.trace_length)), 65536))). + local pow1905 = pow30 * pow1904; // pow(trace_generator, (safe_div((safe_mult(21515, global_values.trace_length)), 32768))). + local pow1906 = pow30 * pow1905; // pow(trace_generator, (safe_div((safe_mult(43031, global_values.trace_length)), 65536))). + local pow1907 = pow77 * pow1906; // pow(trace_generator, (safe_div((safe_mult(673, global_values.trace_length)), 1024))). + local pow1908 = pow98 * pow1907; // pow(trace_generator, (safe_div((safe_mult(337, global_values.trace_length)), 512))). + local pow1909 = pow98 * pow1908; // pow(trace_generator, (safe_div((safe_mult(675, global_values.trace_length)), 1024))). + local pow1910 = pow98 * pow1909; // pow(trace_generator, (safe_div((safe_mult(169, global_values.trace_length)), 256))). + local pow1911 = pow98 * pow1910; // pow(trace_generator, (safe_div((safe_mult(677, global_values.trace_length)), 1024))). + local pow1912 = pow98 * pow1911; // pow(trace_generator, (safe_div((safe_mult(339, global_values.trace_length)), 512))). + local pow1913 = pow98 * pow1912; // pow(trace_generator, (safe_div((safe_mult(679, global_values.trace_length)), 1024))). + local pow1914 = pow98 * pow1913; // pow(trace_generator, (safe_div((safe_mult(85, global_values.trace_length)), 128))). + local pow1915 = pow98 * pow1914; // pow(trace_generator, (safe_div((safe_mult(681, global_values.trace_length)), 1024))). + local pow1916 = pow98 * pow1915; // pow(trace_generator, (safe_div((safe_mult(341, global_values.trace_length)), 512))). + local pow1917 = pow98 * pow1916; // pow(trace_generator, (safe_div((safe_mult(683, global_values.trace_length)), 1024))). + local pow1918 = pow98 * pow1917; // pow(trace_generator, (safe_div((safe_mult(171, global_values.trace_length)), 256))). + local pow1919 = pow98 * pow1918; // pow(trace_generator, (safe_div((safe_mult(685, global_values.trace_length)), 1024))). + local pow1920 = pow98 * pow1919; // pow(trace_generator, (safe_div((safe_mult(343, global_values.trace_length)), 512))). + local pow1921 = pow98 * pow1920; // pow(trace_generator, (safe_div((safe_mult(687, global_values.trace_length)), 1024))). + local pow1922 = pow98 * pow1921; // pow(trace_generator, (safe_div((safe_mult(43, global_values.trace_length)), 64))). + local pow1923 = pow30 * pow1922; // pow(trace_generator, (safe_div((safe_mult(44033, global_values.trace_length)), 65536))). + local pow1924 = pow30 * pow1923; // pow(trace_generator, (safe_div((safe_mult(22017, global_values.trace_length)), 32768))). + local pow1925 = pow30 * pow1924; // pow(trace_generator, (safe_div((safe_mult(44035, global_values.trace_length)), 65536))). + local pow1926 = pow30 * pow1925; // pow(trace_generator, (safe_div((safe_mult(11009, global_values.trace_length)), 16384))). + local pow1927 = pow30 * pow1926; // pow(trace_generator, (safe_div((safe_mult(44037, global_values.trace_length)), 65536))). + local pow1928 = pow30 * pow1927; // pow(trace_generator, (safe_div((safe_mult(22019, global_values.trace_length)), 32768))). + local pow1929 = pow30 * pow1928; // pow(trace_generator, (safe_div((safe_mult(44039, global_values.trace_length)), 65536))). + local pow1930 = pow30 * pow1929; // pow(trace_generator, (safe_div((safe_mult(5505, global_values.trace_length)), 8192))). + local pow1931 = pow30 * pow1930; // pow(trace_generator, (safe_div((safe_mult(44041, global_values.trace_length)), 65536))). + local pow1932 = pow30 * pow1931; // pow(trace_generator, (safe_div((safe_mult(22021, global_values.trace_length)), 32768))). + local pow1933 = pow30 * pow1932; // pow(trace_generator, (safe_div((safe_mult(44043, global_values.trace_length)), 65536))). + local pow1934 = pow30 * pow1933; // pow(trace_generator, (safe_div((safe_mult(11011, global_values.trace_length)), 16384))). + local pow1935 = pow30 * pow1934; // pow(trace_generator, (safe_div((safe_mult(44045, global_values.trace_length)), 65536))). + local pow1936 = pow30 * pow1935; // pow(trace_generator, (safe_div((safe_mult(22023, global_values.trace_length)), 32768))). + local pow1937 = pow30 * pow1936; // pow(trace_generator, (safe_div((safe_mult(44047, global_values.trace_length)), 65536))). + local pow1938 = pow30 * pow1937; // pow(trace_generator, (safe_div((safe_mult(2753, global_values.trace_length)), 4096))). + local pow1939 = pow30 * pow1938; // pow(trace_generator, (safe_div((safe_mult(44049, global_values.trace_length)), 65536))). + local pow1940 = pow30 * pow1939; // pow(trace_generator, (safe_div((safe_mult(22025, global_values.trace_length)), 32768))). + local pow1941 = pow30 * pow1940; // pow(trace_generator, (safe_div((safe_mult(44051, global_values.trace_length)), 65536))). + local pow1942 = pow30 * pow1941; // pow(trace_generator, (safe_div((safe_mult(11013, global_values.trace_length)), 16384))). + local pow1943 = pow30 * pow1942; // pow(trace_generator, (safe_div((safe_mult(44053, global_values.trace_length)), 65536))). + local pow1944 = pow30 * pow1943; // pow(trace_generator, (safe_div((safe_mult(22027, global_values.trace_length)), 32768))). + local pow1945 = pow30 * pow1944; // pow(trace_generator, (safe_div((safe_mult(44055, global_values.trace_length)), 65536))). + local pow1946 = pow77 * pow1945; // pow(trace_generator, (safe_div((safe_mult(689, global_values.trace_length)), 1024))). + local pow1947 = pow98 * pow1946; // pow(trace_generator, (safe_div((safe_mult(345, global_values.trace_length)), 512))). + local pow1948 = pow98 * pow1947; // pow(trace_generator, (safe_div((safe_mult(691, global_values.trace_length)), 1024))). + local pow1949 = pow98 * pow1948; // pow(trace_generator, (safe_div((safe_mult(173, global_values.trace_length)), 256))). + local pow1950 = pow98 * pow1949; // pow(trace_generator, (safe_div((safe_mult(693, global_values.trace_length)), 1024))). + local pow1951 = pow98 * pow1950; // pow(trace_generator, (safe_div((safe_mult(347, global_values.trace_length)), 512))). + local pow1952 = pow98 * pow1951; // pow(trace_generator, (safe_div((safe_mult(695, global_values.trace_length)), 1024))). + local pow1953 = pow578 * pow1952; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 16))). + local pow1954 = pow30 * pow1953; // pow(trace_generator, (safe_div((safe_mult(45057, global_values.trace_length)), 65536))). + local pow1955 = pow30 * pow1954; // pow(trace_generator, (safe_div((safe_mult(22529, global_values.trace_length)), 32768))). + local pow1956 = pow30 * pow1955; // pow(trace_generator, (safe_div((safe_mult(45059, global_values.trace_length)), 65536))). + local pow1957 = pow30 * pow1956; // pow(trace_generator, (safe_div((safe_mult(11265, global_values.trace_length)), 16384))). + local pow1958 = pow30 * pow1957; // pow(trace_generator, (safe_div((safe_mult(45061, global_values.trace_length)), 65536))). + local pow1959 = pow30 * pow1958; // pow(trace_generator, (safe_div((safe_mult(22531, global_values.trace_length)), 32768))). + local pow1960 = pow30 * pow1959; // pow(trace_generator, (safe_div((safe_mult(45063, global_values.trace_length)), 65536))). + local pow1961 = pow30 * pow1960; // pow(trace_generator, (safe_div((safe_mult(5633, global_values.trace_length)), 8192))). + local pow1962 = pow30 * pow1961; // pow(trace_generator, (safe_div((safe_mult(45065, global_values.trace_length)), 65536))). + local pow1963 = pow30 * pow1962; // pow(trace_generator, (safe_div((safe_mult(22533, global_values.trace_length)), 32768))). + local pow1964 = pow30 * pow1963; // pow(trace_generator, (safe_div((safe_mult(45067, global_values.trace_length)), 65536))). + local pow1965 = pow30 * pow1964; // pow(trace_generator, (safe_div((safe_mult(11267, global_values.trace_length)), 16384))). + local pow1966 = pow30 * pow1965; // pow(trace_generator, (safe_div((safe_mult(45069, global_values.trace_length)), 65536))). + local pow1967 = pow30 * pow1966; // pow(trace_generator, (safe_div((safe_mult(22535, global_values.trace_length)), 32768))). + local pow1968 = pow30 * pow1967; // pow(trace_generator, (safe_div((safe_mult(45071, global_values.trace_length)), 65536))). + local pow1969 = pow30 * pow1968; // pow(trace_generator, (safe_div((safe_mult(2817, global_values.trace_length)), 4096))). + local pow1970 = pow30 * pow1969; // pow(trace_generator, (safe_div((safe_mult(45073, global_values.trace_length)), 65536))). + local pow1971 = pow30 * pow1970; // pow(trace_generator, (safe_div((safe_mult(22537, global_values.trace_length)), 32768))). + local pow1972 = pow30 * pow1971; // pow(trace_generator, (safe_div((safe_mult(45075, global_values.trace_length)), 65536))). + local pow1973 = pow30 * pow1972; // pow(trace_generator, (safe_div((safe_mult(11269, global_values.trace_length)), 16384))). + local pow1974 = pow30 * pow1973; // pow(trace_generator, (safe_div((safe_mult(45077, global_values.trace_length)), 65536))). + local pow1975 = pow30 * pow1974; // pow(trace_generator, (safe_div((safe_mult(22539, global_values.trace_length)), 32768))). + local pow1976 = pow30 * pow1975; // pow(trace_generator, (safe_div((safe_mult(45079, global_values.trace_length)), 65536))). + local pow1977 = pow77 * pow1976; // pow(trace_generator, (safe_div((safe_mult(705, global_values.trace_length)), 1024))). + local pow1978 = pow98 * pow1977; // pow(trace_generator, (safe_div((safe_mult(353, global_values.trace_length)), 512))). + local pow1979 = pow98 * pow1978; // pow(trace_generator, (safe_div((safe_mult(707, global_values.trace_length)), 1024))). + local pow1980 = pow98 * pow1979; // pow(trace_generator, (safe_div((safe_mult(177, global_values.trace_length)), 256))). + local pow1981 = pow98 * pow1980; // pow(trace_generator, (safe_div((safe_mult(709, global_values.trace_length)), 1024))). + local pow1982 = pow98 * pow1981; // pow(trace_generator, (safe_div((safe_mult(355, global_values.trace_length)), 512))). + local pow1983 = pow98 * pow1982; // pow(trace_generator, (safe_div((safe_mult(711, global_values.trace_length)), 1024))). + local pow1984 = pow98 * pow1983; // pow(trace_generator, (safe_div((safe_mult(89, global_values.trace_length)), 128))). + local pow1985 = pow98 * pow1984; // pow(trace_generator, (safe_div((safe_mult(713, global_values.trace_length)), 1024))). + local pow1986 = pow98 * pow1985; // pow(trace_generator, (safe_div((safe_mult(357, global_values.trace_length)), 512))). + local pow1987 = pow98 * pow1986; // pow(trace_generator, (safe_div((safe_mult(715, global_values.trace_length)), 1024))). + local pow1988 = pow98 * pow1987; // pow(trace_generator, (safe_div((safe_mult(179, global_values.trace_length)), 256))). + local pow1989 = pow98 * pow1988; // pow(trace_generator, (safe_div((safe_mult(717, global_values.trace_length)), 1024))). + local pow1990 = pow98 * pow1989; // pow(trace_generator, (safe_div((safe_mult(359, global_values.trace_length)), 512))). + local pow1991 = pow98 * pow1990; // pow(trace_generator, (safe_div((safe_mult(719, global_values.trace_length)), 1024))). + local pow1992 = pow98 * pow1991; // pow(trace_generator, (safe_div((safe_mult(45, global_values.trace_length)), 64))). + local pow1993 = pow30 * pow1992; // pow(trace_generator, (safe_div((safe_mult(46081, global_values.trace_length)), 65536))). + local pow1994 = pow30 * pow1993; // pow(trace_generator, (safe_div((safe_mult(23041, global_values.trace_length)), 32768))). + local pow1995 = pow30 * pow1994; // pow(trace_generator, (safe_div((safe_mult(46083, global_values.trace_length)), 65536))). + local pow1996 = pow30 * pow1995; // pow(trace_generator, (safe_div((safe_mult(11521, global_values.trace_length)), 16384))). + local pow1997 = pow30 * pow1996; // pow(trace_generator, (safe_div((safe_mult(46085, global_values.trace_length)), 65536))). + local pow1998 = pow30 * pow1997; // pow(trace_generator, (safe_div((safe_mult(23043, global_values.trace_length)), 32768))). + local pow1999 = pow30 * pow1998; // pow(trace_generator, (safe_div((safe_mult(46087, global_values.trace_length)), 65536))). + local pow2000 = pow30 * pow1999; // pow(trace_generator, (safe_div((safe_mult(5761, global_values.trace_length)), 8192))). + local pow2001 = pow30 * pow2000; // pow(trace_generator, (safe_div((safe_mult(46089, global_values.trace_length)), 65536))). + local pow2002 = pow30 * pow2001; // pow(trace_generator, (safe_div((safe_mult(23045, global_values.trace_length)), 32768))). + local pow2003 = pow30 * pow2002; // pow(trace_generator, (safe_div((safe_mult(46091, global_values.trace_length)), 65536))). + local pow2004 = pow30 * pow2003; // pow(trace_generator, (safe_div((safe_mult(11523, global_values.trace_length)), 16384))). + local pow2005 = pow30 * pow2004; // pow(trace_generator, (safe_div((safe_mult(46093, global_values.trace_length)), 65536))). + local pow2006 = pow30 * pow2005; // pow(trace_generator, (safe_div((safe_mult(23047, global_values.trace_length)), 32768))). + local pow2007 = pow30 * pow2006; // pow(trace_generator, (safe_div((safe_mult(46095, global_values.trace_length)), 65536))). + local pow2008 = pow30 * pow2007; // pow(trace_generator, (safe_div((safe_mult(2881, global_values.trace_length)), 4096))). + local pow2009 = pow30 * pow2008; // pow(trace_generator, (safe_div((safe_mult(46097, global_values.trace_length)), 65536))). + local pow2010 = pow30 * pow2009; // pow(trace_generator, (safe_div((safe_mult(23049, global_values.trace_length)), 32768))). + local pow2011 = pow30 * pow2010; // pow(trace_generator, (safe_div((safe_mult(46099, global_values.trace_length)), 65536))). + local pow2012 = pow30 * pow2011; // pow(trace_generator, (safe_div((safe_mult(11525, global_values.trace_length)), 16384))). + local pow2013 = pow30 * pow2012; // pow(trace_generator, (safe_div((safe_mult(46101, global_values.trace_length)), 65536))). + local pow2014 = pow30 * pow2013; // pow(trace_generator, (safe_div((safe_mult(23051, global_values.trace_length)), 32768))). + local pow2015 = pow30 * pow2014; // pow(trace_generator, (safe_div((safe_mult(46103, global_values.trace_length)), 65536))). + local pow2016 = pow77 * pow2015; // pow(trace_generator, (safe_div((safe_mult(721, global_values.trace_length)), 1024))). + local pow2017 = pow98 * pow2016; // pow(trace_generator, (safe_div((safe_mult(361, global_values.trace_length)), 512))). + local pow2018 = pow98 * pow2017; // pow(trace_generator, (safe_div((safe_mult(723, global_values.trace_length)), 1024))). + local pow2019 = pow98 * pow2018; // pow(trace_generator, (safe_div((safe_mult(181, global_values.trace_length)), 256))). + local pow2020 = pow98 * pow2019; // pow(trace_generator, (safe_div((safe_mult(725, global_values.trace_length)), 1024))). + local pow2021 = pow98 * pow2020; // pow(trace_generator, (safe_div((safe_mult(363, global_values.trace_length)), 512))). + local pow2022 = pow98 * pow2021; // pow(trace_generator, (safe_div((safe_mult(727, global_values.trace_length)), 1024))). + local pow2023 = pow578 * pow2022; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 32))). + local pow2024 = pow791 * pow2023; // pow(trace_generator, (safe_div((safe_mult(47, global_values.trace_length)), 64))). + local pow2025 = pow30 * pow2023; // pow(trace_generator, (safe_div((safe_mult(47105, global_values.trace_length)), 65536))). + local pow2026 = pow30 * pow2024; // pow(trace_generator, (safe_div((safe_mult(48129, global_values.trace_length)), 65536))). + local pow2027 = pow30 * pow2025; // pow(trace_generator, (safe_div((safe_mult(23553, global_values.trace_length)), 32768))). + local pow2028 = pow30 * pow2026; // pow(trace_generator, (safe_div((safe_mult(24065, global_values.trace_length)), 32768))). + local pow2029 = pow30 * pow2027; // pow(trace_generator, (safe_div((safe_mult(47107, global_values.trace_length)), 65536))). + local pow2030 = pow30 * pow2028; // pow(trace_generator, (safe_div((safe_mult(48131, global_values.trace_length)), 65536))). + local pow2031 = pow30 * pow2029; // pow(trace_generator, (safe_div((safe_mult(11777, global_values.trace_length)), 16384))). + local pow2032 = pow30 * pow2030; // pow(trace_generator, (safe_div((safe_mult(12033, global_values.trace_length)), 16384))). + local pow2033 = pow30 * pow2031; // pow(trace_generator, (safe_div((safe_mult(47109, global_values.trace_length)), 65536))). + local pow2034 = pow30 * pow2032; // pow(trace_generator, (safe_div((safe_mult(48133, global_values.trace_length)), 65536))). + local pow2035 = pow30 * pow2033; // pow(trace_generator, (safe_div((safe_mult(23555, global_values.trace_length)), 32768))). + local pow2036 = pow30 * pow2034; // pow(trace_generator, (safe_div((safe_mult(24067, global_values.trace_length)), 32768))). + local pow2037 = pow30 * pow2035; // pow(trace_generator, (safe_div((safe_mult(47111, global_values.trace_length)), 65536))). + local pow2038 = pow30 * pow2036; // pow(trace_generator, (safe_div((safe_mult(48135, global_values.trace_length)), 65536))). + local pow2039 = pow30 * pow2037; // pow(trace_generator, (safe_div((safe_mult(5889, global_values.trace_length)), 8192))). + local pow2040 = pow30 * pow2038; // pow(trace_generator, (safe_div((safe_mult(6017, global_values.trace_length)), 8192))). + local pow2041 = pow30 * pow2039; // pow(trace_generator, (safe_div((safe_mult(47113, global_values.trace_length)), 65536))). + local pow2042 = pow30 * pow2040; // pow(trace_generator, (safe_div((safe_mult(48137, global_values.trace_length)), 65536))). + local pow2043 = pow30 * pow2041; // pow(trace_generator, (safe_div((safe_mult(23557, global_values.trace_length)), 32768))). + local pow2044 = pow30 * pow2042; // pow(trace_generator, (safe_div((safe_mult(24069, global_values.trace_length)), 32768))). + local pow2045 = pow30 * pow2043; // pow(trace_generator, (safe_div((safe_mult(47115, global_values.trace_length)), 65536))). + local pow2046 = pow30 * pow2044; // pow(trace_generator, (safe_div((safe_mult(48139, global_values.trace_length)), 65536))). + local pow2047 = pow30 * pow2045; // pow(trace_generator, (safe_div((safe_mult(11779, global_values.trace_length)), 16384))). + local pow2048 = pow30 * pow2046; // pow(trace_generator, (safe_div((safe_mult(12035, global_values.trace_length)), 16384))). + local pow2049 = pow30 * pow2047; // pow(trace_generator, (safe_div((safe_mult(47117, global_values.trace_length)), 65536))). + local pow2050 = pow30 * pow2048; // pow(trace_generator, (safe_div((safe_mult(48141, global_values.trace_length)), 65536))). + local pow2051 = pow30 * pow2049; // pow(trace_generator, (safe_div((safe_mult(23559, global_values.trace_length)), 32768))). + local pow2052 = pow30 * pow2050; // pow(trace_generator, (safe_div((safe_mult(24071, global_values.trace_length)), 32768))). + local pow2053 = pow30 * pow2051; // pow(trace_generator, (safe_div((safe_mult(47119, global_values.trace_length)), 65536))). + local pow2054 = pow30 * pow2052; // pow(trace_generator, (safe_div((safe_mult(48143, global_values.trace_length)), 65536))). + local pow2055 = pow30 * pow2053; // pow(trace_generator, (safe_div((safe_mult(2945, global_values.trace_length)), 4096))). + local pow2056 = pow30 * pow2054; // pow(trace_generator, (safe_div((safe_mult(3009, global_values.trace_length)), 4096))). + local pow2057 = pow30 * pow2055; // pow(trace_generator, (safe_div((safe_mult(47121, global_values.trace_length)), 65536))). + local pow2058 = pow30 * pow2056; // pow(trace_generator, (safe_div((safe_mult(48145, global_values.trace_length)), 65536))). + local pow2059 = pow30 * pow2057; // pow(trace_generator, (safe_div((safe_mult(23561, global_values.trace_length)), 32768))). + local pow2060 = pow30 * pow2058; // pow(trace_generator, (safe_div((safe_mult(24073, global_values.trace_length)), 32768))). + local pow2061 = pow30 * pow2059; // pow(trace_generator, (safe_div((safe_mult(47123, global_values.trace_length)), 65536))). + local pow2062 = pow30 * pow2060; // pow(trace_generator, (safe_div((safe_mult(48147, global_values.trace_length)), 65536))). + local pow2063 = pow30 * pow2061; // pow(trace_generator, (safe_div((safe_mult(11781, global_values.trace_length)), 16384))). + local pow2064 = pow30 * pow2062; // pow(trace_generator, (safe_div((safe_mult(12037, global_values.trace_length)), 16384))). + local pow2065 = pow30 * pow2063; // pow(trace_generator, (safe_div((safe_mult(47125, global_values.trace_length)), 65536))). + local pow2066 = pow30 * pow2064; // pow(trace_generator, (safe_div((safe_mult(48149, global_values.trace_length)), 65536))). + local pow2067 = pow30 * pow2065; // pow(trace_generator, (safe_div((safe_mult(23563, global_values.trace_length)), 32768))). + local pow2068 = pow30 * pow2066; // pow(trace_generator, (safe_div((safe_mult(24075, global_values.trace_length)), 32768))). + local pow2069 = pow30 * pow2067; // pow(trace_generator, (safe_div((safe_mult(47127, global_values.trace_length)), 65536))). + local pow2070 = pow30 * pow2068; // pow(trace_generator, (safe_div((safe_mult(48151, global_values.trace_length)), 65536))). + local pow2071 = pow791 * pow2024; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 4))). + local pow2072 = pow30 * pow2071; // pow(trace_generator, (safe_div((safe_mult(49153, global_values.trace_length)), 65536))). + local pow2073 = pow30 * pow2072; // pow(trace_generator, (safe_div((safe_mult(24577, global_values.trace_length)), 32768))). + local pow2074 = pow30 * pow2073; // pow(trace_generator, (safe_div((safe_mult(49155, global_values.trace_length)), 65536))). + local pow2075 = pow30 * pow2074; // pow(trace_generator, (safe_div((safe_mult(12289, global_values.trace_length)), 16384))). + local pow2076 = pow30 * pow2075; // pow(trace_generator, (safe_div((safe_mult(49157, global_values.trace_length)), 65536))). + local pow2077 = pow30 * pow2076; // pow(trace_generator, (safe_div((safe_mult(24579, global_values.trace_length)), 32768))). + local pow2078 = pow30 * pow2077; // pow(trace_generator, (safe_div((safe_mult(49159, global_values.trace_length)), 65536))). + local pow2079 = pow30 * pow2078; // pow(trace_generator, (safe_div((safe_mult(6145, global_values.trace_length)), 8192))). + local pow2080 = pow30 * pow2079; // pow(trace_generator, (safe_div((safe_mult(49161, global_values.trace_length)), 65536))). + local pow2081 = pow30 * pow2080; // pow(trace_generator, (safe_div((safe_mult(24581, global_values.trace_length)), 32768))). + local pow2082 = pow30 * pow2081; // pow(trace_generator, (safe_div((safe_mult(49163, global_values.trace_length)), 65536))). + local pow2083 = pow30 * pow2082; // pow(trace_generator, (safe_div((safe_mult(12291, global_values.trace_length)), 16384))). + local pow2084 = pow30 * pow2083; // pow(trace_generator, (safe_div((safe_mult(49165, global_values.trace_length)), 65536))). + local pow2085 = pow30 * pow2084; // pow(trace_generator, (safe_div((safe_mult(24583, global_values.trace_length)), 32768))). + local pow2086 = pow30 * pow2085; // pow(trace_generator, (safe_div((safe_mult(49167, global_values.trace_length)), 65536))). + local pow2087 = pow30 * pow2086; // pow(trace_generator, (safe_div((safe_mult(3073, global_values.trace_length)), 4096))). + local pow2088 = pow30 * pow2087; // pow(trace_generator, (safe_div((safe_mult(49169, global_values.trace_length)), 65536))). + local pow2089 = pow30 * pow2088; // pow(trace_generator, (safe_div((safe_mult(24585, global_values.trace_length)), 32768))). + local pow2090 = pow30 * pow2089; // pow(trace_generator, (safe_div((safe_mult(49171, global_values.trace_length)), 65536))). + local pow2091 = pow30 * pow2090; // pow(trace_generator, (safe_div((safe_mult(12293, global_values.trace_length)), 16384))). + local pow2092 = pow30 * pow2091; // pow(trace_generator, (safe_div((safe_mult(49173, global_values.trace_length)), 65536))). + local pow2093 = pow30 * pow2092; // pow(trace_generator, (safe_div((safe_mult(24587, global_values.trace_length)), 32768))). + local pow2094 = pow30 * pow2093; // pow(trace_generator, (safe_div((safe_mult(49175, global_values.trace_length)), 65536))). + local pow2095 = pow791 * pow2071; // pow(trace_generator, (safe_div((safe_mult(49, global_values.trace_length)), 64))). + local pow2096 = pow30 * pow2095; // pow(trace_generator, (safe_div((safe_mult(50177, global_values.trace_length)), 65536))). + local pow2097 = pow30 * pow2096; // pow(trace_generator, (safe_div((safe_mult(25089, global_values.trace_length)), 32768))). + local pow2098 = pow30 * pow2097; // pow(trace_generator, (safe_div((safe_mult(50179, global_values.trace_length)), 65536))). + local pow2099 = pow30 * pow2098; // pow(trace_generator, (safe_div((safe_mult(12545, global_values.trace_length)), 16384))). + local pow2100 = pow30 * pow2099; // pow(trace_generator, (safe_div((safe_mult(50181, global_values.trace_length)), 65536))). + local pow2101 = pow30 * pow2100; // pow(trace_generator, (safe_div((safe_mult(25091, global_values.trace_length)), 32768))). + local pow2102 = pow30 * pow2101; // pow(trace_generator, (safe_div((safe_mult(50183, global_values.trace_length)), 65536))). + local pow2103 = pow30 * pow2102; // pow(trace_generator, (safe_div((safe_mult(6273, global_values.trace_length)), 8192))). + local pow2104 = pow30 * pow2103; // pow(trace_generator, (safe_div((safe_mult(50185, global_values.trace_length)), 65536))). + local pow2105 = pow30 * pow2104; // pow(trace_generator, (safe_div((safe_mult(25093, global_values.trace_length)), 32768))). + local pow2106 = pow30 * pow2105; // pow(trace_generator, (safe_div((safe_mult(50187, global_values.trace_length)), 65536))). + local pow2107 = pow30 * pow2106; // pow(trace_generator, (safe_div((safe_mult(12547, global_values.trace_length)), 16384))). + local pow2108 = pow30 * pow2107; // pow(trace_generator, (safe_div((safe_mult(50189, global_values.trace_length)), 65536))). + local pow2109 = pow30 * pow2108; // pow(trace_generator, (safe_div((safe_mult(25095, global_values.trace_length)), 32768))). + local pow2110 = pow30 * pow2109; // pow(trace_generator, (safe_div((safe_mult(50191, global_values.trace_length)), 65536))). + local pow2111 = pow30 * pow2110; // pow(trace_generator, (safe_div((safe_mult(3137, global_values.trace_length)), 4096))). + local pow2112 = pow30 * pow2111; // pow(trace_generator, (safe_div((safe_mult(50193, global_values.trace_length)), 65536))). + local pow2113 = pow30 * pow2112; // pow(trace_generator, (safe_div((safe_mult(25097, global_values.trace_length)), 32768))). + local pow2114 = pow30 * pow2113; // pow(trace_generator, (safe_div((safe_mult(50195, global_values.trace_length)), 65536))). + local pow2115 = pow30 * pow2114; // pow(trace_generator, (safe_div((safe_mult(12549, global_values.trace_length)), 16384))). + local pow2116 = pow30 * pow2115; // pow(trace_generator, (safe_div((safe_mult(50197, global_values.trace_length)), 65536))). + local pow2117 = pow30 * pow2116; // pow(trace_generator, (safe_div((safe_mult(25099, global_values.trace_length)), 32768))). + local pow2118 = pow30 * pow2117; // pow(trace_generator, (safe_div((safe_mult(50199, global_values.trace_length)), 65536))). + local pow2119 = pow791 * pow2095; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 32))). + local pow2120 = pow791 * pow2119; // pow(trace_generator, (safe_div((safe_mult(51, global_values.trace_length)), 64))). + local pow2121 = pow30 * pow2119; // pow(trace_generator, (safe_div((safe_mult(51201, global_values.trace_length)), 65536))). + local pow2122 = pow30 * pow2120; // pow(trace_generator, (safe_div((safe_mult(52225, global_values.trace_length)), 65536))). + local pow2123 = pow30 * pow2121; // pow(trace_generator, (safe_div((safe_mult(25601, global_values.trace_length)), 32768))). + local pow2124 = pow30 * pow2122; // pow(trace_generator, (safe_div((safe_mult(26113, global_values.trace_length)), 32768))). + local pow2125 = pow30 * pow2123; // pow(trace_generator, (safe_div((safe_mult(51203, global_values.trace_length)), 65536))). + local pow2126 = pow30 * pow2124; // pow(trace_generator, (safe_div((safe_mult(52227, global_values.trace_length)), 65536))). + local pow2127 = pow30 * pow2125; // pow(trace_generator, (safe_div((safe_mult(12801, global_values.trace_length)), 16384))). + local pow2128 = pow30 * pow2126; // pow(trace_generator, (safe_div((safe_mult(13057, global_values.trace_length)), 16384))). + local pow2129 = pow30 * pow2127; // pow(trace_generator, (safe_div((safe_mult(51205, global_values.trace_length)), 65536))). + local pow2130 = pow30 * pow2128; // pow(trace_generator, (safe_div((safe_mult(52229, global_values.trace_length)), 65536))). + local pow2131 = pow30 * pow2129; // pow(trace_generator, (safe_div((safe_mult(25603, global_values.trace_length)), 32768))). + local pow2132 = pow30 * pow2130; // pow(trace_generator, (safe_div((safe_mult(26115, global_values.trace_length)), 32768))). + local pow2133 = pow30 * pow2131; // pow(trace_generator, (safe_div((safe_mult(51207, global_values.trace_length)), 65536))). + local pow2134 = pow30 * pow2133; // pow(trace_generator, (safe_div((safe_mult(6401, global_values.trace_length)), 8192))). + local pow2135 = pow30 * pow2134; // pow(trace_generator, (safe_div((safe_mult(51209, global_values.trace_length)), 65536))). + local pow2136 = pow30 * pow2135; // pow(trace_generator, (safe_div((safe_mult(25605, global_values.trace_length)), 32768))). + local pow2137 = pow30 * pow2136; // pow(trace_generator, (safe_div((safe_mult(51211, global_values.trace_length)), 65536))). + local pow2138 = pow30 * pow2137; // pow(trace_generator, (safe_div((safe_mult(12803, global_values.trace_length)), 16384))). + local pow2139 = pow30 * pow2138; // pow(trace_generator, (safe_div((safe_mult(51213, global_values.trace_length)), 65536))). + local pow2140 = pow30 * pow2139; // pow(trace_generator, (safe_div((safe_mult(25607, global_values.trace_length)), 32768))). + local pow2141 = pow30 * pow2140; // pow(trace_generator, (safe_div((safe_mult(51215, global_values.trace_length)), 65536))). + local pow2142 = pow30 * pow2141; // pow(trace_generator, (safe_div((safe_mult(3201, global_values.trace_length)), 4096))). + local pow2143 = pow30 * pow2142; // pow(trace_generator, (safe_div((safe_mult(51217, global_values.trace_length)), 65536))). + local pow2144 = pow30 * pow2143; // pow(trace_generator, (safe_div((safe_mult(25609, global_values.trace_length)), 32768))). + local pow2145 = pow30 * pow2144; // pow(trace_generator, (safe_div((safe_mult(51219, global_values.trace_length)), 65536))). + local pow2146 = pow30 * pow2145; // pow(trace_generator, (safe_div((safe_mult(12805, global_values.trace_length)), 16384))). + local pow2147 = pow30 * pow2146; // pow(trace_generator, (safe_div((safe_mult(51221, global_values.trace_length)), 65536))). + local pow2148 = pow30 * pow2147; // pow(trace_generator, (safe_div((safe_mult(25611, global_values.trace_length)), 32768))). + local pow2149 = pow30 * pow2148; // pow(trace_generator, (safe_div((safe_mult(51223, global_values.trace_length)), 65536))). + local pow2150 = pow30 * pow2132; // pow(trace_generator, (safe_div((safe_mult(52231, global_values.trace_length)), 65536))). + local pow2151 = pow30 * pow2150; // pow(trace_generator, (safe_div((safe_mult(6529, global_values.trace_length)), 8192))). + local pow2152 = pow30 * pow2151; // pow(trace_generator, (safe_div((safe_mult(52233, global_values.trace_length)), 65536))). + local pow2153 = pow30 * pow2152; // pow(trace_generator, (safe_div((safe_mult(26117, global_values.trace_length)), 32768))). + local pow2154 = pow30 * pow2153; // pow(trace_generator, (safe_div((safe_mult(52235, global_values.trace_length)), 65536))). + local pow2155 = pow30 * pow2154; // pow(trace_generator, (safe_div((safe_mult(13059, global_values.trace_length)), 16384))). + local pow2156 = pow30 * pow2155; // pow(trace_generator, (safe_div((safe_mult(52237, global_values.trace_length)), 65536))). + local pow2157 = pow30 * pow2156; // pow(trace_generator, (safe_div((safe_mult(26119, global_values.trace_length)), 32768))). + local pow2158 = pow30 * pow2157; // pow(trace_generator, (safe_div((safe_mult(52239, global_values.trace_length)), 65536))). + local pow2159 = pow30 * pow2158; // pow(trace_generator, (safe_div((safe_mult(3265, global_values.trace_length)), 4096))). + local pow2160 = pow30 * pow2159; // pow(trace_generator, (safe_div((safe_mult(52241, global_values.trace_length)), 65536))). + local pow2161 = pow30 * pow2160; // pow(trace_generator, (safe_div((safe_mult(26121, global_values.trace_length)), 32768))). + local pow2162 = pow30 * pow2161; // pow(trace_generator, (safe_div((safe_mult(52243, global_values.trace_length)), 65536))). + local pow2163 = pow30 * pow2162; // pow(trace_generator, (safe_div((safe_mult(13061, global_values.trace_length)), 16384))). + local pow2164 = pow30 * pow2163; // pow(trace_generator, (safe_div((safe_mult(52245, global_values.trace_length)), 65536))). + local pow2165 = pow30 * pow2164; // pow(trace_generator, (safe_div((safe_mult(26123, global_values.trace_length)), 32768))). + local pow2166 = pow30 * pow2165; // pow(trace_generator, (safe_div((safe_mult(52247, global_values.trace_length)), 65536))). + local pow2167 = pow791 * pow2120; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 16))). + local pow2168 = pow30 * pow2167; // pow(trace_generator, (safe_div((safe_mult(53249, global_values.trace_length)), 65536))). + local pow2169 = pow30 * pow2168; // pow(trace_generator, (safe_div((safe_mult(26625, global_values.trace_length)), 32768))). + local pow2170 = pow30 * pow2169; // pow(trace_generator, (safe_div((safe_mult(53251, global_values.trace_length)), 65536))). + local pow2171 = pow30 * pow2170; // pow(trace_generator, (safe_div((safe_mult(13313, global_values.trace_length)), 16384))). + local pow2172 = pow30 * pow2171; // pow(trace_generator, (safe_div((safe_mult(53253, global_values.trace_length)), 65536))). + local pow2173 = pow30 * pow2172; // pow(trace_generator, (safe_div((safe_mult(26627, global_values.trace_length)), 32768))). + local pow2174 = pow30 * pow2173; // pow(trace_generator, (safe_div((safe_mult(53255, global_values.trace_length)), 65536))). + local pow2175 = pow30 * pow2174; // pow(trace_generator, (safe_div((safe_mult(6657, global_values.trace_length)), 8192))). + local pow2176 = pow30 * pow2175; // pow(trace_generator, (safe_div((safe_mult(53257, global_values.trace_length)), 65536))). + local pow2177 = pow30 * pow2176; // pow(trace_generator, (safe_div((safe_mult(26629, global_values.trace_length)), 32768))). + local pow2178 = pow30 * pow2177; // pow(trace_generator, (safe_div((safe_mult(53259, global_values.trace_length)), 65536))). + local pow2179 = pow30 * pow2178; // pow(trace_generator, (safe_div((safe_mult(13315, global_values.trace_length)), 16384))). + local pow2180 = pow30 * pow2179; // pow(trace_generator, (safe_div((safe_mult(53261, global_values.trace_length)), 65536))). + local pow2181 = pow30 * pow2180; // pow(trace_generator, (safe_div((safe_mult(26631, global_values.trace_length)), 32768))). + local pow2182 = pow30 * pow2181; // pow(trace_generator, (safe_div((safe_mult(53263, global_values.trace_length)), 65536))). + local pow2183 = pow30 * pow2182; // pow(trace_generator, (safe_div((safe_mult(3329, global_values.trace_length)), 4096))). + local pow2184 = pow30 * pow2183; // pow(trace_generator, (safe_div((safe_mult(53265, global_values.trace_length)), 65536))). + local pow2185 = pow30 * pow2184; // pow(trace_generator, (safe_div((safe_mult(26633, global_values.trace_length)), 32768))). + local pow2186 = pow30 * pow2185; // pow(trace_generator, (safe_div((safe_mult(53267, global_values.trace_length)), 65536))). + local pow2187 = pow30 * pow2186; // pow(trace_generator, (safe_div((safe_mult(13317, global_values.trace_length)), 16384))). + local pow2188 = pow30 * pow2187; // pow(trace_generator, (safe_div((safe_mult(53269, global_values.trace_length)), 65536))). + local pow2189 = pow30 * pow2188; // pow(trace_generator, (safe_div((safe_mult(26635, global_values.trace_length)), 32768))). + local pow2190 = pow30 * pow2189; // pow(trace_generator, (safe_div((safe_mult(53271, global_values.trace_length)), 65536))). + local pow2191 = pow77 * pow2190; // pow(trace_generator, (safe_div((safe_mult(833, global_values.trace_length)), 1024))). + local pow2192 = pow98 * pow2191; // pow(trace_generator, (safe_div((safe_mult(417, global_values.trace_length)), 512))). + local pow2193 = pow98 * pow2192; // pow(trace_generator, (safe_div((safe_mult(835, global_values.trace_length)), 1024))). + local pow2194 = pow98 * pow2193; // pow(trace_generator, (safe_div((safe_mult(209, global_values.trace_length)), 256))). + local pow2195 = pow98 * pow2194; // pow(trace_generator, (safe_div((safe_mult(837, global_values.trace_length)), 1024))). + local pow2196 = pow98 * pow2195; // pow(trace_generator, (safe_div((safe_mult(419, global_values.trace_length)), 512))). + local pow2197 = pow98 * pow2196; // pow(trace_generator, (safe_div((safe_mult(839, global_values.trace_length)), 1024))). + local pow2198 = pow98 * pow2197; // pow(trace_generator, (safe_div((safe_mult(105, global_values.trace_length)), 128))). + local pow2199 = pow98 * pow2198; // pow(trace_generator, (safe_div((safe_mult(841, global_values.trace_length)), 1024))). + local pow2200 = pow98 * pow2199; // pow(trace_generator, (safe_div((safe_mult(421, global_values.trace_length)), 512))). + local pow2201 = pow98 * pow2200; // pow(trace_generator, (safe_div((safe_mult(843, global_values.trace_length)), 1024))). + local pow2202 = pow98 * pow2201; // pow(trace_generator, (safe_div((safe_mult(211, global_values.trace_length)), 256))). + local pow2203 = pow98 * pow2202; // pow(trace_generator, (safe_div((safe_mult(845, global_values.trace_length)), 1024))). + local pow2204 = pow98 * pow2203; // pow(trace_generator, (safe_div((safe_mult(423, global_values.trace_length)), 512))). + local pow2205 = pow98 * pow2204; // pow(trace_generator, (safe_div((safe_mult(847, global_values.trace_length)), 1024))). + local pow2206 = pow98 * pow2205; // pow(trace_generator, (safe_div((safe_mult(53, global_values.trace_length)), 64))). + local pow2207 = pow30 * pow2206; // pow(trace_generator, (safe_div((safe_mult(54273, global_values.trace_length)), 65536))). + local pow2208 = pow30 * pow2207; // pow(trace_generator, (safe_div((safe_mult(27137, global_values.trace_length)), 32768))). + local pow2209 = pow30 * pow2208; // pow(trace_generator, (safe_div((safe_mult(54275, global_values.trace_length)), 65536))). + local pow2210 = pow30 * pow2209; // pow(trace_generator, (safe_div((safe_mult(13569, global_values.trace_length)), 16384))). + local pow2211 = pow30 * pow2210; // pow(trace_generator, (safe_div((safe_mult(54277, global_values.trace_length)), 65536))). + local pow2212 = pow30 * pow2211; // pow(trace_generator, (safe_div((safe_mult(27139, global_values.trace_length)), 32768))). + local pow2213 = pow30 * pow2212; // pow(trace_generator, (safe_div((safe_mult(54279, global_values.trace_length)), 65536))). + local pow2214 = pow30 * pow2213; // pow(trace_generator, (safe_div((safe_mult(6785, global_values.trace_length)), 8192))). + local pow2215 = pow30 * pow2214; // pow(trace_generator, (safe_div((safe_mult(54281, global_values.trace_length)), 65536))). + local pow2216 = pow30 * pow2215; // pow(trace_generator, (safe_div((safe_mult(27141, global_values.trace_length)), 32768))). + local pow2217 = pow30 * pow2216; // pow(trace_generator, (safe_div((safe_mult(54283, global_values.trace_length)), 65536))). + local pow2218 = pow30 * pow2217; // pow(trace_generator, (safe_div((safe_mult(13571, global_values.trace_length)), 16384))). + local pow2219 = pow30 * pow2218; // pow(trace_generator, (safe_div((safe_mult(54285, global_values.trace_length)), 65536))). + local pow2220 = pow30 * pow2219; // pow(trace_generator, (safe_div((safe_mult(27143, global_values.trace_length)), 32768))). + local pow2221 = pow30 * pow2220; // pow(trace_generator, (safe_div((safe_mult(54287, global_values.trace_length)), 65536))). + local pow2222 = pow30 * pow2221; // pow(trace_generator, (safe_div((safe_mult(3393, global_values.trace_length)), 4096))). + local pow2223 = pow30 * pow2222; // pow(trace_generator, (safe_div((safe_mult(54289, global_values.trace_length)), 65536))). + local pow2224 = pow30 * pow2223; // pow(trace_generator, (safe_div((safe_mult(27145, global_values.trace_length)), 32768))). + local pow2225 = pow30 * pow2224; // pow(trace_generator, (safe_div((safe_mult(54291, global_values.trace_length)), 65536))). + local pow2226 = pow30 * pow2225; // pow(trace_generator, (safe_div((safe_mult(13573, global_values.trace_length)), 16384))). + local pow2227 = pow30 * pow2226; // pow(trace_generator, (safe_div((safe_mult(54293, global_values.trace_length)), 65536))). + local pow2228 = pow30 * pow2227; // pow(trace_generator, (safe_div((safe_mult(27147, global_values.trace_length)), 32768))). + local pow2229 = pow30 * pow2228; // pow(trace_generator, (safe_div((safe_mult(54295, global_values.trace_length)), 65536))). + local pow2230 = pow77 * pow2229; // pow(trace_generator, (safe_div((safe_mult(849, global_values.trace_length)), 1024))). + local pow2231 = pow98 * pow2230; // pow(trace_generator, (safe_div((safe_mult(425, global_values.trace_length)), 512))). + local pow2232 = pow98 * pow2231; // pow(trace_generator, (safe_div((safe_mult(851, global_values.trace_length)), 1024))). + local pow2233 = pow98 * pow2232; // pow(trace_generator, (safe_div((safe_mult(213, global_values.trace_length)), 256))). + local pow2234 = pow98 * pow2233; // pow(trace_generator, (safe_div((safe_mult(853, global_values.trace_length)), 1024))). + local pow2235 = pow98 * pow2234; // pow(trace_generator, (safe_div((safe_mult(427, global_values.trace_length)), 512))). + local pow2236 = pow98 * pow2235; // pow(trace_generator, (safe_div((safe_mult(855, global_values.trace_length)), 1024))). + local pow2237 = pow98 * pow2236; // pow(trace_generator, (safe_div((safe_mult(107, global_values.trace_length)), 128))). + local pow2238 = pow98 * pow2237; // pow(trace_generator, (safe_div((safe_mult(857, global_values.trace_length)), 1024))). + local pow2239 = pow98 * pow2238; // pow(trace_generator, (safe_div((safe_mult(429, global_values.trace_length)), 512))). + local pow2240 = pow98 * pow2239; // pow(trace_generator, (safe_div((safe_mult(859, global_values.trace_length)), 1024))). + local pow2241 = pow98 * pow2240; // pow(trace_generator, (safe_div((safe_mult(215, global_values.trace_length)), 256))). + local pow2242 = pow98 * pow2241; // pow(trace_generator, (safe_div((safe_mult(861, global_values.trace_length)), 1024))). + local pow2243 = pow218 * pow2242; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 32))). + local pow2244 = pow30 * pow2243; // pow(trace_generator, (safe_div((safe_mult(55297, global_values.trace_length)), 65536))). + local pow2245 = pow30 * pow2244; // pow(trace_generator, (safe_div((safe_mult(27649, global_values.trace_length)), 32768))). + local pow2246 = pow30 * pow2245; // pow(trace_generator, (safe_div((safe_mult(55299, global_values.trace_length)), 65536))). + local pow2247 = pow30 * pow2246; // pow(trace_generator, (safe_div((safe_mult(13825, global_values.trace_length)), 16384))). + local pow2248 = pow30 * pow2247; // pow(trace_generator, (safe_div((safe_mult(55301, global_values.trace_length)), 65536))). + local pow2249 = pow30 * pow2248; // pow(trace_generator, (safe_div((safe_mult(27651, global_values.trace_length)), 32768))). + local pow2250 = pow30 * pow2249; // pow(trace_generator, (safe_div((safe_mult(55303, global_values.trace_length)), 65536))). + local pow2251 = pow30 * pow2250; // pow(trace_generator, (safe_div((safe_mult(6913, global_values.trace_length)), 8192))). + local pow2252 = pow30 * pow2251; // pow(trace_generator, (safe_div((safe_mult(55305, global_values.trace_length)), 65536))). + local pow2253 = pow30 * pow2252; // pow(trace_generator, (safe_div((safe_mult(27653, global_values.trace_length)), 32768))). + local pow2254 = pow30 * pow2253; // pow(trace_generator, (safe_div((safe_mult(55307, global_values.trace_length)), 65536))). + local pow2255 = pow30 * pow2254; // pow(trace_generator, (safe_div((safe_mult(13827, global_values.trace_length)), 16384))). + local pow2256 = pow30 * pow2255; // pow(trace_generator, (safe_div((safe_mult(55309, global_values.trace_length)), 65536))). + local pow2257 = pow30 * pow2256; // pow(trace_generator, (safe_div((safe_mult(27655, global_values.trace_length)), 32768))). + local pow2258 = pow30 * pow2257; // pow(trace_generator, (safe_div((safe_mult(55311, global_values.trace_length)), 65536))). + local pow2259 = pow30 * pow2258; // pow(trace_generator, (safe_div((safe_mult(3457, global_values.trace_length)), 4096))). + local pow2260 = pow30 * pow2259; // pow(trace_generator, (safe_div((safe_mult(55313, global_values.trace_length)), 65536))). + local pow2261 = pow30 * pow2260; // pow(trace_generator, (safe_div((safe_mult(27657, global_values.trace_length)), 32768))). + local pow2262 = pow30 * pow2261; // pow(trace_generator, (safe_div((safe_mult(55315, global_values.trace_length)), 65536))). + local pow2263 = pow30 * pow2262; // pow(trace_generator, (safe_div((safe_mult(13829, global_values.trace_length)), 16384))). + local pow2264 = pow30 * pow2263; // pow(trace_generator, (safe_div((safe_mult(55317, global_values.trace_length)), 65536))). + local pow2265 = pow30 * pow2264; // pow(trace_generator, (safe_div((safe_mult(27659, global_values.trace_length)), 32768))). + local pow2266 = pow30 * pow2265; // pow(trace_generator, (safe_div((safe_mult(55319, global_values.trace_length)), 65536))). + local pow2267 = pow77 * pow2266; // pow(trace_generator, (safe_div((safe_mult(865, global_values.trace_length)), 1024))). + local pow2268 = pow98 * pow2267; // pow(trace_generator, (safe_div((safe_mult(433, global_values.trace_length)), 512))). + local pow2269 = pow98 * pow2268; // pow(trace_generator, (safe_div((safe_mult(867, global_values.trace_length)), 1024))). + local pow2270 = pow98 * pow2269; // pow(trace_generator, (safe_div((safe_mult(217, global_values.trace_length)), 256))). + local pow2271 = pow98 * pow2270; // pow(trace_generator, (safe_div((safe_mult(869, global_values.trace_length)), 1024))). + local pow2272 = pow98 * pow2271; // pow(trace_generator, (safe_div((safe_mult(435, global_values.trace_length)), 512))). + local pow2273 = pow98 * pow2272; // pow(trace_generator, (safe_div((safe_mult(871, global_values.trace_length)), 1024))). + local pow2274 = pow98 * pow2273; // pow(trace_generator, (safe_div((safe_mult(109, global_values.trace_length)), 128))). + local pow2275 = pow98 * pow2274; // pow(trace_generator, (safe_div((safe_mult(873, global_values.trace_length)), 1024))). + local pow2276 = pow98 * pow2275; // pow(trace_generator, (safe_div((safe_mult(437, global_values.trace_length)), 512))). + local pow2277 = pow98 * pow2276; // pow(trace_generator, (safe_div((safe_mult(875, global_values.trace_length)), 1024))). + local pow2278 = pow98 * pow2277; // pow(trace_generator, (safe_div((safe_mult(219, global_values.trace_length)), 256))). + local pow2279 = pow98 * pow2278; // pow(trace_generator, (safe_div((safe_mult(877, global_values.trace_length)), 1024))). + local pow2280 = pow98 * pow2279; // pow(trace_generator, (safe_div((safe_mult(439, global_values.trace_length)), 512))). + local pow2281 = pow98 * pow2280; // pow(trace_generator, (safe_div((safe_mult(879, global_values.trace_length)), 1024))). + local pow2282 = pow98 * pow2281; // pow(trace_generator, (safe_div((safe_mult(55, global_values.trace_length)), 64))). + local pow2283 = pow30 * pow2282; // pow(trace_generator, (safe_div((safe_mult(56321, global_values.trace_length)), 65536))). + local pow2284 = pow30 * pow2283; // pow(trace_generator, (safe_div((safe_mult(28161, global_values.trace_length)), 32768))). + local pow2285 = pow30 * pow2284; // pow(trace_generator, (safe_div((safe_mult(56323, global_values.trace_length)), 65536))). + local pow2286 = pow30 * pow2285; // pow(trace_generator, (safe_div((safe_mult(14081, global_values.trace_length)), 16384))). + local pow2287 = pow30 * pow2286; // pow(trace_generator, (safe_div((safe_mult(56325, global_values.trace_length)), 65536))). + local pow2288 = pow30 * pow2287; // pow(trace_generator, (safe_div((safe_mult(28163, global_values.trace_length)), 32768))). + local pow2289 = pow30 * pow2288; // pow(trace_generator, (safe_div((safe_mult(56327, global_values.trace_length)), 65536))). + local pow2290 = pow30 * pow2289; // pow(trace_generator, (safe_div((safe_mult(7041, global_values.trace_length)), 8192))). + local pow2291 = pow30 * pow2290; // pow(trace_generator, (safe_div((safe_mult(56329, global_values.trace_length)), 65536))). + local pow2292 = pow30 * pow2291; // pow(trace_generator, (safe_div((safe_mult(28165, global_values.trace_length)), 32768))). + local pow2293 = pow30 * pow2292; // pow(trace_generator, (safe_div((safe_mult(56331, global_values.trace_length)), 65536))). + local pow2294 = pow30 * pow2293; // pow(trace_generator, (safe_div((safe_mult(14083, global_values.trace_length)), 16384))). + local pow2295 = pow30 * pow2294; // pow(trace_generator, (safe_div((safe_mult(56333, global_values.trace_length)), 65536))). + local pow2296 = pow30 * pow2295; // pow(trace_generator, (safe_div((safe_mult(28167, global_values.trace_length)), 32768))). + local pow2297 = pow30 * pow2296; // pow(trace_generator, (safe_div((safe_mult(56335, global_values.trace_length)), 65536))). + local pow2298 = pow30 * pow2297; // pow(trace_generator, (safe_div((safe_mult(3521, global_values.trace_length)), 4096))). + local pow2299 = pow30 * pow2298; // pow(trace_generator, (safe_div((safe_mult(56337, global_values.trace_length)), 65536))). + local pow2300 = pow30 * pow2299; // pow(trace_generator, (safe_div((safe_mult(28169, global_values.trace_length)), 32768))). + local pow2301 = pow30 * pow2300; // pow(trace_generator, (safe_div((safe_mult(56339, global_values.trace_length)), 65536))). + local pow2302 = pow30 * pow2301; // pow(trace_generator, (safe_div((safe_mult(14085, global_values.trace_length)), 16384))). + local pow2303 = pow30 * pow2302; // pow(trace_generator, (safe_div((safe_mult(56341, global_values.trace_length)), 65536))). + local pow2304 = pow30 * pow2303; // pow(trace_generator, (safe_div((safe_mult(28171, global_values.trace_length)), 32768))). + local pow2305 = pow30 * pow2304; // pow(trace_generator, (safe_div((safe_mult(56343, global_values.trace_length)), 65536))). + local pow2306 = pow77 * pow2305; // pow(trace_generator, (safe_div((safe_mult(881, global_values.trace_length)), 1024))). + local pow2307 = pow98 * pow2306; // pow(trace_generator, (safe_div((safe_mult(441, global_values.trace_length)), 512))). + local pow2308 = pow98 * pow2307; // pow(trace_generator, (safe_div((safe_mult(883, global_values.trace_length)), 1024))). + local pow2309 = pow98 * pow2308; // pow(trace_generator, (safe_div((safe_mult(221, global_values.trace_length)), 256))). + local pow2310 = pow98 * pow2309; // pow(trace_generator, (safe_div((safe_mult(885, global_values.trace_length)), 1024))). + local pow2311 = pow98 * pow2310; // pow(trace_generator, (safe_div((safe_mult(443, global_values.trace_length)), 512))). + local pow2312 = pow98 * pow2311; // pow(trace_generator, (safe_div((safe_mult(887, global_values.trace_length)), 1024))). + local pow2313 = pow98 * pow2312; // pow(trace_generator, (safe_div((safe_mult(111, global_values.trace_length)), 128))). + local pow2314 = pow98 * pow2313; // pow(trace_generator, (safe_div((safe_mult(889, global_values.trace_length)), 1024))). + local pow2315 = pow98 * pow2314; // pow(trace_generator, (safe_div((safe_mult(445, global_values.trace_length)), 512))). + local pow2316 = pow98 * pow2315; // pow(trace_generator, (safe_div((safe_mult(891, global_values.trace_length)), 1024))). + local pow2317 = pow98 * pow2316; // pow(trace_generator, (safe_div((safe_mult(223, global_values.trace_length)), 256))). + local pow2318 = pow98 * pow2317; // pow(trace_generator, (safe_div((safe_mult(893, global_values.trace_length)), 1024))). + local pow2319 = pow218 * pow2318; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 8))). + local pow2320 = pow30 * pow2319; // pow(trace_generator, (safe_div((safe_mult(57345, global_values.trace_length)), 65536))). + local pow2321 = pow30 * pow2320; // pow(trace_generator, (safe_div((safe_mult(28673, global_values.trace_length)), 32768))). + local pow2322 = pow30 * pow2321; // pow(trace_generator, (safe_div((safe_mult(57347, global_values.trace_length)), 65536))). + local pow2323 = pow30 * pow2322; // pow(trace_generator, (safe_div((safe_mult(14337, global_values.trace_length)), 16384))). + local pow2324 = pow30 * pow2323; // pow(trace_generator, (safe_div((safe_mult(57349, global_values.trace_length)), 65536))). + local pow2325 = pow30 * pow2324; // pow(trace_generator, (safe_div((safe_mult(28675, global_values.trace_length)), 32768))). + local pow2326 = pow30 * pow2325; // pow(trace_generator, (safe_div((safe_mult(57351, global_values.trace_length)), 65536))). + local pow2327 = pow30 * pow2326; // pow(trace_generator, (safe_div((safe_mult(7169, global_values.trace_length)), 8192))). + local pow2328 = pow30 * pow2327; // pow(trace_generator, (safe_div((safe_mult(57353, global_values.trace_length)), 65536))). + local pow2329 = pow30 * pow2328; // pow(trace_generator, (safe_div((safe_mult(28677, global_values.trace_length)), 32768))). + local pow2330 = pow30 * pow2329; // pow(trace_generator, (safe_div((safe_mult(57355, global_values.trace_length)), 65536))). + local pow2331 = pow30 * pow2330; // pow(trace_generator, (safe_div((safe_mult(14339, global_values.trace_length)), 16384))). + local pow2332 = pow30 * pow2331; // pow(trace_generator, (safe_div((safe_mult(57357, global_values.trace_length)), 65536))). + local pow2333 = pow30 * pow2332; // pow(trace_generator, (safe_div((safe_mult(28679, global_values.trace_length)), 32768))). + local pow2334 = pow30 * pow2333; // pow(trace_generator, (safe_div((safe_mult(57359, global_values.trace_length)), 65536))). + local pow2335 = pow30 * pow2334; // pow(trace_generator, (safe_div((safe_mult(3585, global_values.trace_length)), 4096))). + local pow2336 = pow30 * pow2335; // pow(trace_generator, (safe_div((safe_mult(57361, global_values.trace_length)), 65536))). + local pow2337 = pow30 * pow2336; // pow(trace_generator, (safe_div((safe_mult(28681, global_values.trace_length)), 32768))). + local pow2338 = pow30 * pow2337; // pow(trace_generator, (safe_div((safe_mult(57363, global_values.trace_length)), 65536))). + local pow2339 = pow30 * pow2338; // pow(trace_generator, (safe_div((safe_mult(14341, global_values.trace_length)), 16384))). + local pow2340 = pow30 * pow2339; // pow(trace_generator, (safe_div((safe_mult(57365, global_values.trace_length)), 65536))). + local pow2341 = pow30 * pow2340; // pow(trace_generator, (safe_div((safe_mult(28683, global_values.trace_length)), 32768))). + local pow2342 = pow30 * pow2341; // pow(trace_generator, (safe_div((safe_mult(57367, global_values.trace_length)), 65536))). + local pow2343 = pow77 * pow2342; // pow(trace_generator, (safe_div((safe_mult(897, global_values.trace_length)), 1024))). + local pow2344 = pow98 * pow2343; // pow(trace_generator, (safe_div((safe_mult(449, global_values.trace_length)), 512))). + local pow2345 = pow98 * pow2344; // pow(trace_generator, (safe_div((safe_mult(899, global_values.trace_length)), 1024))). + local pow2346 = pow98 * pow2345; // pow(trace_generator, (safe_div((safe_mult(225, global_values.trace_length)), 256))). + local pow2347 = pow98 * pow2346; // pow(trace_generator, (safe_div((safe_mult(901, global_values.trace_length)), 1024))). + local pow2348 = pow98 * pow2347; // pow(trace_generator, (safe_div((safe_mult(451, global_values.trace_length)), 512))). + local pow2349 = pow98 * pow2348; // pow(trace_generator, (safe_div((safe_mult(903, global_values.trace_length)), 1024))). + local pow2350 = pow98 * pow2349; // pow(trace_generator, (safe_div((safe_mult(113, global_values.trace_length)), 128))). + local pow2351 = pow98 * pow2350; // pow(trace_generator, (safe_div((safe_mult(905, global_values.trace_length)), 1024))). + local pow2352 = pow98 * pow2351; // pow(trace_generator, (safe_div((safe_mult(453, global_values.trace_length)), 512))). + local pow2353 = pow98 * pow2352; // pow(trace_generator, (safe_div((safe_mult(907, global_values.trace_length)), 1024))). + local pow2354 = pow98 * pow2353; // pow(trace_generator, (safe_div((safe_mult(227, global_values.trace_length)), 256))). + local pow2355 = pow98 * pow2354; // pow(trace_generator, (safe_div((safe_mult(909, global_values.trace_length)), 1024))). + local pow2356 = pow98 * pow2355; // pow(trace_generator, (safe_div((safe_mult(455, global_values.trace_length)), 512))). + local pow2357 = pow98 * pow2356; // pow(trace_generator, (safe_div((safe_mult(911, global_values.trace_length)), 1024))). + local pow2358 = pow98 * pow2357; // pow(trace_generator, (safe_div((safe_mult(57, global_values.trace_length)), 64))). + local pow2359 = pow30 * pow2358; // pow(trace_generator, (safe_div((safe_mult(58369, global_values.trace_length)), 65536))). + local pow2360 = pow30 * pow2359; // pow(trace_generator, (safe_div((safe_mult(29185, global_values.trace_length)), 32768))). + local pow2361 = pow30 * pow2360; // pow(trace_generator, (safe_div((safe_mult(58371, global_values.trace_length)), 65536))). + local pow2362 = pow30 * pow2361; // pow(trace_generator, (safe_div((safe_mult(14593, global_values.trace_length)), 16384))). + local pow2363 = pow30 * pow2362; // pow(trace_generator, (safe_div((safe_mult(58373, global_values.trace_length)), 65536))). + local pow2364 = pow30 * pow2363; // pow(trace_generator, (safe_div((safe_mult(29187, global_values.trace_length)), 32768))). + local pow2365 = pow30 * pow2364; // pow(trace_generator, (safe_div((safe_mult(58375, global_values.trace_length)), 65536))). + local pow2366 = pow30 * pow2365; // pow(trace_generator, (safe_div((safe_mult(7297, global_values.trace_length)), 8192))). + local pow2367 = pow30 * pow2366; // pow(trace_generator, (safe_div((safe_mult(58377, global_values.trace_length)), 65536))). + local pow2368 = pow30 * pow2367; // pow(trace_generator, (safe_div((safe_mult(29189, global_values.trace_length)), 32768))). + local pow2369 = pow30 * pow2368; // pow(trace_generator, (safe_div((safe_mult(58379, global_values.trace_length)), 65536))). + local pow2370 = pow30 * pow2369; // pow(trace_generator, (safe_div((safe_mult(14595, global_values.trace_length)), 16384))). + local pow2371 = pow30 * pow2370; // pow(trace_generator, (safe_div((safe_mult(58381, global_values.trace_length)), 65536))). + local pow2372 = pow30 * pow2371; // pow(trace_generator, (safe_div((safe_mult(29191, global_values.trace_length)), 32768))). + local pow2373 = pow30 * pow2372; // pow(trace_generator, (safe_div((safe_mult(58383, global_values.trace_length)), 65536))). + local pow2374 = pow30 * pow2373; // pow(trace_generator, (safe_div((safe_mult(3649, global_values.trace_length)), 4096))). + local pow2375 = pow30 * pow2374; // pow(trace_generator, (safe_div((safe_mult(58385, global_values.trace_length)), 65536))). + local pow2376 = pow30 * pow2375; // pow(trace_generator, (safe_div((safe_mult(29193, global_values.trace_length)), 32768))). + local pow2377 = pow30 * pow2376; // pow(trace_generator, (safe_div((safe_mult(58387, global_values.trace_length)), 65536))). + local pow2378 = pow30 * pow2377; // pow(trace_generator, (safe_div((safe_mult(14597, global_values.trace_length)), 16384))). + local pow2379 = pow30 * pow2378; // pow(trace_generator, (safe_div((safe_mult(58389, global_values.trace_length)), 65536))). + local pow2380 = pow30 * pow2379; // pow(trace_generator, (safe_div((safe_mult(29195, global_values.trace_length)), 32768))). + local pow2381 = pow30 * pow2380; // pow(trace_generator, (safe_div((safe_mult(58391, global_values.trace_length)), 65536))). + local pow2382 = pow77 * pow2381; // pow(trace_generator, (safe_div((safe_mult(913, global_values.trace_length)), 1024))). + local pow2383 = pow98 * pow2382; // pow(trace_generator, (safe_div((safe_mult(457, global_values.trace_length)), 512))). + local pow2384 = pow98 * pow2383; // pow(trace_generator, (safe_div((safe_mult(915, global_values.trace_length)), 1024))). + local pow2385 = pow98 * pow2384; // pow(trace_generator, (safe_div((safe_mult(229, global_values.trace_length)), 256))). + local pow2386 = pow98 * pow2385; // pow(trace_generator, (safe_div((safe_mult(917, global_values.trace_length)), 1024))). + local pow2387 = pow98 * pow2386; // pow(trace_generator, (safe_div((safe_mult(459, global_values.trace_length)), 512))). + local pow2388 = pow98 * pow2387; // pow(trace_generator, (safe_div((safe_mult(919, global_values.trace_length)), 1024))). + local pow2389 = pow98 * pow2388; // pow(trace_generator, (safe_div((safe_mult(115, global_values.trace_length)), 128))). + local pow2390 = pow98 * pow2389; // pow(trace_generator, (safe_div((safe_mult(921, global_values.trace_length)), 1024))). + local pow2391 = pow98 * pow2390; // pow(trace_generator, (safe_div((safe_mult(461, global_values.trace_length)), 512))). + local pow2392 = pow98 * pow2391; // pow(trace_generator, (safe_div((safe_mult(923, global_values.trace_length)), 1024))). + local pow2393 = pow98 * pow2392; // pow(trace_generator, (safe_div((safe_mult(231, global_values.trace_length)), 256))). + local pow2394 = pow98 * pow2393; // pow(trace_generator, (safe_div((safe_mult(925, global_values.trace_length)), 1024))). + local pow2395 = pow218 * pow2394; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 32))). + local pow2396 = pow30 * pow2395; // pow(trace_generator, (safe_div((safe_mult(59393, global_values.trace_length)), 65536))). + local pow2397 = pow30 * pow2396; // pow(trace_generator, (safe_div((safe_mult(29697, global_values.trace_length)), 32768))). + local pow2398 = pow30 * pow2397; // pow(trace_generator, (safe_div((safe_mult(59395, global_values.trace_length)), 65536))). + local pow2399 = pow30 * pow2398; // pow(trace_generator, (safe_div((safe_mult(14849, global_values.trace_length)), 16384))). + local pow2400 = pow30 * pow2399; // pow(trace_generator, (safe_div((safe_mult(59397, global_values.trace_length)), 65536))). + local pow2401 = pow30 * pow2400; // pow(trace_generator, (safe_div((safe_mult(29699, global_values.trace_length)), 32768))). + local pow2402 = pow30 * pow2401; // pow(trace_generator, (safe_div((safe_mult(59399, global_values.trace_length)), 65536))). + local pow2403 = pow30 * pow2402; // pow(trace_generator, (safe_div((safe_mult(7425, global_values.trace_length)), 8192))). + local pow2404 = pow30 * pow2403; // pow(trace_generator, (safe_div((safe_mult(59401, global_values.trace_length)), 65536))). + local pow2405 = pow30 * pow2404; // pow(trace_generator, (safe_div((safe_mult(29701, global_values.trace_length)), 32768))). + local pow2406 = pow30 * pow2405; // pow(trace_generator, (safe_div((safe_mult(59403, global_values.trace_length)), 65536))). + local pow2407 = pow30 * pow2406; // pow(trace_generator, (safe_div((safe_mult(14851, global_values.trace_length)), 16384))). + local pow2408 = pow30 * pow2407; // pow(trace_generator, (safe_div((safe_mult(59405, global_values.trace_length)), 65536))). + local pow2409 = pow30 * pow2408; // pow(trace_generator, (safe_div((safe_mult(29703, global_values.trace_length)), 32768))). + local pow2410 = pow30 * pow2409; // pow(trace_generator, (safe_div((safe_mult(59407, global_values.trace_length)), 65536))). + local pow2411 = pow30 * pow2410; // pow(trace_generator, (safe_div((safe_mult(3713, global_values.trace_length)), 4096))). + local pow2412 = pow30 * pow2411; // pow(trace_generator, (safe_div((safe_mult(59409, global_values.trace_length)), 65536))). + local pow2413 = pow30 * pow2412; // pow(trace_generator, (safe_div((safe_mult(29705, global_values.trace_length)), 32768))). + local pow2414 = pow30 * pow2413; // pow(trace_generator, (safe_div((safe_mult(59411, global_values.trace_length)), 65536))). + local pow2415 = pow30 * pow2414; // pow(trace_generator, (safe_div((safe_mult(14853, global_values.trace_length)), 16384))). + local pow2416 = pow30 * pow2415; // pow(trace_generator, (safe_div((safe_mult(59413, global_values.trace_length)), 65536))). + local pow2417 = pow30 * pow2416; // pow(trace_generator, (safe_div((safe_mult(29707, global_values.trace_length)), 32768))). + local pow2418 = pow30 * pow2417; // pow(trace_generator, (safe_div((safe_mult(59415, global_values.trace_length)), 65536))). + local pow2419 = pow77 * pow2418; // pow(trace_generator, (safe_div((safe_mult(929, global_values.trace_length)), 1024))). + local pow2420 = pow98 * pow2419; // pow(trace_generator, (safe_div((safe_mult(465, global_values.trace_length)), 512))). + local pow2421 = pow98 * pow2420; // pow(trace_generator, (safe_div((safe_mult(931, global_values.trace_length)), 1024))). + local pow2422 = pow98 * pow2421; // pow(trace_generator, (safe_div((safe_mult(233, global_values.trace_length)), 256))). + local pow2423 = pow98 * pow2422; // pow(trace_generator, (safe_div((safe_mult(933, global_values.trace_length)), 1024))). + local pow2424 = pow98 * pow2423; // pow(trace_generator, (safe_div((safe_mult(467, global_values.trace_length)), 512))). + local pow2425 = pow98 * pow2424; // pow(trace_generator, (safe_div((safe_mult(935, global_values.trace_length)), 1024))). + local pow2426 = pow98 * pow2425; // pow(trace_generator, (safe_div((safe_mult(117, global_values.trace_length)), 128))). + local pow2427 = pow98 * pow2426; // pow(trace_generator, (safe_div((safe_mult(937, global_values.trace_length)), 1024))). + local pow2428 = pow98 * pow2427; // pow(trace_generator, (safe_div((safe_mult(469, global_values.trace_length)), 512))). + local pow2429 = pow98 * pow2428; // pow(trace_generator, (safe_div((safe_mult(939, global_values.trace_length)), 1024))). + local pow2430 = pow98 * pow2429; // pow(trace_generator, (safe_div((safe_mult(235, global_values.trace_length)), 256))). + local pow2431 = pow98 * pow2430; // pow(trace_generator, (safe_div((safe_mult(941, global_values.trace_length)), 1024))). + local pow2432 = pow98 * pow2431; // pow(trace_generator, (safe_div((safe_mult(471, global_values.trace_length)), 512))). + local pow2433 = pow98 * pow2432; // pow(trace_generator, (safe_div((safe_mult(943, global_values.trace_length)), 1024))). + local pow2434 = pow98 * pow2433; // pow(trace_generator, (safe_div((safe_mult(59, global_values.trace_length)), 64))). + local pow2435 = pow30 * pow2434; // pow(trace_generator, (safe_div((safe_mult(60417, global_values.trace_length)), 65536))). + local pow2436 = pow30 * pow2435; // pow(trace_generator, (safe_div((safe_mult(30209, global_values.trace_length)), 32768))). + local pow2437 = pow30 * pow2436; // pow(trace_generator, (safe_div((safe_mult(60419, global_values.trace_length)), 65536))). + local pow2438 = pow30 * pow2437; // pow(trace_generator, (safe_div((safe_mult(15105, global_values.trace_length)), 16384))). + local pow2439 = pow30 * pow2438; // pow(trace_generator, (safe_div((safe_mult(60421, global_values.trace_length)), 65536))). + local pow2440 = pow30 * pow2439; // pow(trace_generator, (safe_div((safe_mult(30211, global_values.trace_length)), 32768))). + local pow2441 = pow30 * pow2440; // pow(trace_generator, (safe_div((safe_mult(60423, global_values.trace_length)), 65536))). + local pow2442 = pow30 * pow2441; // pow(trace_generator, (safe_div((safe_mult(7553, global_values.trace_length)), 8192))). + local pow2443 = pow30 * pow2442; // pow(trace_generator, (safe_div((safe_mult(60425, global_values.trace_length)), 65536))). + local pow2444 = pow30 * pow2443; // pow(trace_generator, (safe_div((safe_mult(30213, global_values.trace_length)), 32768))). + local pow2445 = pow30 * pow2444; // pow(trace_generator, (safe_div((safe_mult(60427, global_values.trace_length)), 65536))). + local pow2446 = pow30 * pow2445; // pow(trace_generator, (safe_div((safe_mult(15107, global_values.trace_length)), 16384))). + local pow2447 = pow30 * pow2446; // pow(trace_generator, (safe_div((safe_mult(60429, global_values.trace_length)), 65536))). + local pow2448 = pow30 * pow2447; // pow(trace_generator, (safe_div((safe_mult(30215, global_values.trace_length)), 32768))). + local pow2449 = pow30 * pow2448; // pow(trace_generator, (safe_div((safe_mult(60431, global_values.trace_length)), 65536))). + local pow2450 = pow30 * pow2449; // pow(trace_generator, (safe_div((safe_mult(3777, global_values.trace_length)), 4096))). + local pow2451 = pow30 * pow2450; // pow(trace_generator, (safe_div((safe_mult(60433, global_values.trace_length)), 65536))). + local pow2452 = pow30 * pow2451; // pow(trace_generator, (safe_div((safe_mult(30217, global_values.trace_length)), 32768))). + local pow2453 = pow30 * pow2452; // pow(trace_generator, (safe_div((safe_mult(60435, global_values.trace_length)), 65536))). + local pow2454 = pow30 * pow2453; // pow(trace_generator, (safe_div((safe_mult(15109, global_values.trace_length)), 16384))). + local pow2455 = pow30 * pow2454; // pow(trace_generator, (safe_div((safe_mult(60437, global_values.trace_length)), 65536))). + local pow2456 = pow30 * pow2455; // pow(trace_generator, (safe_div((safe_mult(30219, global_values.trace_length)), 32768))). + local pow2457 = pow30 * pow2456; // pow(trace_generator, (safe_div((safe_mult(60439, global_values.trace_length)), 65536))). + local pow2458 = pow77 * pow2457; // pow(trace_generator, (safe_div((safe_mult(945, global_values.trace_length)), 1024))). + local pow2459 = pow98 * pow2458; // pow(trace_generator, (safe_div((safe_mult(473, global_values.trace_length)), 512))). + local pow2460 = pow98 * pow2459; // pow(trace_generator, (safe_div((safe_mult(947, global_values.trace_length)), 1024))). + local pow2461 = pow98 * pow2460; // pow(trace_generator, (safe_div((safe_mult(237, global_values.trace_length)), 256))). + local pow2462 = pow98 * pow2461; // pow(trace_generator, (safe_div((safe_mult(949, global_values.trace_length)), 1024))). + local pow2463 = pow98 * pow2462; // pow(trace_generator, (safe_div((safe_mult(475, global_values.trace_length)), 512))). + local pow2464 = pow98 * pow2463; // pow(trace_generator, (safe_div((safe_mult(951, global_values.trace_length)), 1024))). + local pow2465 = pow98 * pow2464; // pow(trace_generator, (safe_div((safe_mult(119, global_values.trace_length)), 128))). + local pow2466 = pow98 * pow2465; // pow(trace_generator, (safe_div((safe_mult(953, global_values.trace_length)), 1024))). + local pow2467 = pow98 * pow2466; // pow(trace_generator, (safe_div((safe_mult(477, global_values.trace_length)), 512))). + local pow2468 = pow98 * pow2467; // pow(trace_generator, (safe_div((safe_mult(955, global_values.trace_length)), 1024))). + local pow2469 = pow98 * pow2468; // pow(trace_generator, (safe_div((safe_mult(239, global_values.trace_length)), 256))). + local pow2470 = pow98 * pow2469; // pow(trace_generator, (safe_div((safe_mult(957, global_values.trace_length)), 1024))). + local pow2471 = pow218 * pow2470; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 16))). + local pow2472 = pow30 * pow2471; // pow(trace_generator, (safe_div((safe_mult(61441, global_values.trace_length)), 65536))). + local pow2473 = pow30 * pow2472; // pow(trace_generator, (safe_div((safe_mult(30721, global_values.trace_length)), 32768))). + local pow2474 = pow30 * pow2473; // pow(trace_generator, (safe_div((safe_mult(61443, global_values.trace_length)), 65536))). + local pow2475 = pow30 * pow2474; // pow(trace_generator, (safe_div((safe_mult(15361, global_values.trace_length)), 16384))). + local pow2476 = pow30 * pow2475; // pow(trace_generator, (safe_div((safe_mult(61445, global_values.trace_length)), 65536))). + local pow2477 = pow30 * pow2476; // pow(trace_generator, (safe_div((safe_mult(30723, global_values.trace_length)), 32768))). + local pow2478 = pow30 * pow2477; // pow(trace_generator, (safe_div((safe_mult(61447, global_values.trace_length)), 65536))). + local pow2479 = pow30 * pow2478; // pow(trace_generator, (safe_div((safe_mult(7681, global_values.trace_length)), 8192))). + local pow2480 = pow30 * pow2479; // pow(trace_generator, (safe_div((safe_mult(61449, global_values.trace_length)), 65536))). + local pow2481 = pow30 * pow2480; // pow(trace_generator, (safe_div((safe_mult(30725, global_values.trace_length)), 32768))). + local pow2482 = pow30 * pow2481; // pow(trace_generator, (safe_div((safe_mult(61451, global_values.trace_length)), 65536))). + local pow2483 = pow30 * pow2482; // pow(trace_generator, (safe_div((safe_mult(15363, global_values.trace_length)), 16384))). + local pow2484 = pow30 * pow2483; // pow(trace_generator, (safe_div((safe_mult(61453, global_values.trace_length)), 65536))). + local pow2485 = pow30 * pow2484; // pow(trace_generator, (safe_div((safe_mult(30727, global_values.trace_length)), 32768))). + local pow2486 = pow30 * pow2485; // pow(trace_generator, (safe_div((safe_mult(61455, global_values.trace_length)), 65536))). + local pow2487 = pow30 * pow2486; // pow(trace_generator, (safe_div((safe_mult(3841, global_values.trace_length)), 4096))). + local pow2488 = pow30 * pow2487; // pow(trace_generator, (safe_div((safe_mult(61457, global_values.trace_length)), 65536))). + local pow2489 = pow30 * pow2488; // pow(trace_generator, (safe_div((safe_mult(30729, global_values.trace_length)), 32768))). + local pow2490 = pow30 * pow2489; // pow(trace_generator, (safe_div((safe_mult(61459, global_values.trace_length)), 65536))). + local pow2491 = pow30 * pow2490; // pow(trace_generator, (safe_div((safe_mult(15365, global_values.trace_length)), 16384))). + local pow2492 = pow30 * pow2491; // pow(trace_generator, (safe_div((safe_mult(61461, global_values.trace_length)), 65536))). + local pow2493 = pow30 * pow2492; // pow(trace_generator, (safe_div((safe_mult(30731, global_values.trace_length)), 32768))). + local pow2494 = pow30 * pow2493; // pow(trace_generator, (safe_div((safe_mult(61463, global_values.trace_length)), 65536))). + local pow2495 = pow77 * pow2494; // pow(trace_generator, (safe_div((safe_mult(961, global_values.trace_length)), 1024))). + local pow2496 = pow98 * pow2495; // pow(trace_generator, (safe_div((safe_mult(481, global_values.trace_length)), 512))). + local pow2497 = pow98 * pow2496; // pow(trace_generator, (safe_div((safe_mult(963, global_values.trace_length)), 1024))). + local pow2498 = pow98 * pow2497; // pow(trace_generator, (safe_div((safe_mult(241, global_values.trace_length)), 256))). + local pow2499 = pow98 * pow2498; // pow(trace_generator, (safe_div((safe_mult(965, global_values.trace_length)), 1024))). + local pow2500 = pow98 * pow2499; // pow(trace_generator, (safe_div((safe_mult(483, global_values.trace_length)), 512))). + local pow2501 = pow98 * pow2500; // pow(trace_generator, (safe_div((safe_mult(967, global_values.trace_length)), 1024))). + local pow2502 = pow98 * pow2501; // pow(trace_generator, (safe_div((safe_mult(121, global_values.trace_length)), 128))). + local pow2503 = pow98 * pow2502; // pow(trace_generator, (safe_div((safe_mult(969, global_values.trace_length)), 1024))). + local pow2504 = pow98 * pow2503; // pow(trace_generator, (safe_div((safe_mult(485, global_values.trace_length)), 512))). + local pow2505 = pow98 * pow2504; // pow(trace_generator, (safe_div((safe_mult(971, global_values.trace_length)), 1024))). + local pow2506 = pow98 * pow2505; // pow(trace_generator, (safe_div((safe_mult(243, global_values.trace_length)), 256))). + local pow2507 = pow98 * pow2506; // pow(trace_generator, (safe_div((safe_mult(973, global_values.trace_length)), 1024))). + local pow2508 = pow98 * pow2507; // pow(trace_generator, (safe_div((safe_mult(487, global_values.trace_length)), 512))). + local pow2509 = pow98 * pow2508; // pow(trace_generator, (safe_div((safe_mult(975, global_values.trace_length)), 1024))). + local pow2510 = pow98 * pow2509; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 64))). + local pow2511 = pow30 * pow2510; // pow(trace_generator, (safe_div((safe_mult(62465, global_values.trace_length)), 65536))). + local pow2512 = pow30 * pow2511; // pow(trace_generator, (safe_div((safe_mult(31233, global_values.trace_length)), 32768))). + local pow2513 = pow30 * pow2512; // pow(trace_generator, (safe_div((safe_mult(62467, global_values.trace_length)), 65536))). + local pow2514 = pow30 * pow2513; // pow(trace_generator, (safe_div((safe_mult(15617, global_values.trace_length)), 16384))). + local pow2515 = pow30 * pow2514; // pow(trace_generator, (safe_div((safe_mult(62469, global_values.trace_length)), 65536))). + local pow2516 = pow30 * pow2515; // pow(trace_generator, (safe_div((safe_mult(31235, global_values.trace_length)), 32768))). + local pow2517 = pow30 * pow2516; // pow(trace_generator, (safe_div((safe_mult(62471, global_values.trace_length)), 65536))). + local pow2518 = pow30 * pow2517; // pow(trace_generator, (safe_div((safe_mult(7809, global_values.trace_length)), 8192))). + local pow2519 = pow30 * pow2518; // pow(trace_generator, (safe_div((safe_mult(62473, global_values.trace_length)), 65536))). + local pow2520 = pow30 * pow2519; // pow(trace_generator, (safe_div((safe_mult(31237, global_values.trace_length)), 32768))). + local pow2521 = pow30 * pow2520; // pow(trace_generator, (safe_div((safe_mult(62475, global_values.trace_length)), 65536))). + local pow2522 = pow30 * pow2521; // pow(trace_generator, (safe_div((safe_mult(15619, global_values.trace_length)), 16384))). + local pow2523 = pow30 * pow2522; // pow(trace_generator, (safe_div((safe_mult(62477, global_values.trace_length)), 65536))). + local pow2524 = pow30 * pow2523; // pow(trace_generator, (safe_div((safe_mult(31239, global_values.trace_length)), 32768))). + local pow2525 = pow30 * pow2524; // pow(trace_generator, (safe_div((safe_mult(62479, global_values.trace_length)), 65536))). + local pow2526 = pow30 * pow2525; // pow(trace_generator, (safe_div((safe_mult(3905, global_values.trace_length)), 4096))). + local pow2527 = pow30 * pow2526; // pow(trace_generator, (safe_div((safe_mult(62481, global_values.trace_length)), 65536))). + local pow2528 = pow30 * pow2527; // pow(trace_generator, (safe_div((safe_mult(31241, global_values.trace_length)), 32768))). + local pow2529 = pow30 * pow2528; // pow(trace_generator, (safe_div((safe_mult(62483, global_values.trace_length)), 65536))). + local pow2530 = pow30 * pow2529; // pow(trace_generator, (safe_div((safe_mult(15621, global_values.trace_length)), 16384))). + local pow2531 = pow30 * pow2530; // pow(trace_generator, (safe_div((safe_mult(62485, global_values.trace_length)), 65536))). + local pow2532 = pow30 * pow2531; // pow(trace_generator, (safe_div((safe_mult(31243, global_values.trace_length)), 32768))). + local pow2533 = pow30 * pow2532; // pow(trace_generator, (safe_div((safe_mult(62487, global_values.trace_length)), 65536))). + local pow2534 = pow77 * pow2533; // pow(trace_generator, (safe_div((safe_mult(977, global_values.trace_length)), 1024))). + local pow2535 = pow98 * pow2534; // pow(trace_generator, (safe_div((safe_mult(489, global_values.trace_length)), 512))). + local pow2536 = pow98 * pow2535; // pow(trace_generator, (safe_div((safe_mult(979, global_values.trace_length)), 1024))). + local pow2537 = pow98 * pow2536; // pow(trace_generator, (safe_div((safe_mult(245, global_values.trace_length)), 256))). + local pow2538 = pow98 * pow2537; // pow(trace_generator, (safe_div((safe_mult(981, global_values.trace_length)), 1024))). + local pow2539 = pow98 * pow2538; // pow(trace_generator, (safe_div((safe_mult(491, global_values.trace_length)), 512))). + local pow2540 = pow98 * pow2539; // pow(trace_generator, (safe_div((safe_mult(983, global_values.trace_length)), 1024))). + local pow2541 = pow98 * pow2540; // pow(trace_generator, (safe_div((safe_mult(123, global_values.trace_length)), 128))). + local pow2542 = pow98 * pow2541; // pow(trace_generator, (safe_div((safe_mult(985, global_values.trace_length)), 1024))). + local pow2543 = pow98 * pow2542; // pow(trace_generator, (safe_div((safe_mult(493, global_values.trace_length)), 512))). + local pow2544 = pow98 * pow2543; // pow(trace_generator, (safe_div((safe_mult(987, global_values.trace_length)), 1024))). + local pow2545 = pow98 * pow2544; // pow(trace_generator, (safe_div((safe_mult(247, global_values.trace_length)), 256))). + local pow2546 = pow98 * pow2545; // pow(trace_generator, (safe_div((safe_mult(989, global_values.trace_length)), 1024))). + local pow2547 = pow218 * pow2546; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 32))). + local pow2548 = pow30 * pow2547; // pow(trace_generator, (safe_div((safe_mult(63489, global_values.trace_length)), 65536))). + local pow2549 = pow30 * pow2548; // pow(trace_generator, (safe_div((safe_mult(31745, global_values.trace_length)), 32768))). + local pow2550 = pow30 * pow2549; // pow(trace_generator, (safe_div((safe_mult(63491, global_values.trace_length)), 65536))). + local pow2551 = pow30 * pow2550; // pow(trace_generator, (safe_div((safe_mult(15873, global_values.trace_length)), 16384))). + local pow2552 = pow30 * pow2551; // pow(trace_generator, (safe_div((safe_mult(63493, global_values.trace_length)), 65536))). + local pow2553 = pow30 * pow2552; // pow(trace_generator, (safe_div((safe_mult(31747, global_values.trace_length)), 32768))). + local pow2554 = pow30 * pow2553; // pow(trace_generator, (safe_div((safe_mult(63495, global_values.trace_length)), 65536))). + local pow2555 = pow30 * pow2554; // pow(trace_generator, (safe_div((safe_mult(7937, global_values.trace_length)), 8192))). + local pow2556 = pow30 * pow2555; // pow(trace_generator, (safe_div((safe_mult(63497, global_values.trace_length)), 65536))). + local pow2557 = pow30 * pow2556; // pow(trace_generator, (safe_div((safe_mult(31749, global_values.trace_length)), 32768))). + local pow2558 = pow30 * pow2557; // pow(trace_generator, (safe_div((safe_mult(63499, global_values.trace_length)), 65536))). + local pow2559 = pow30 * pow2558; // pow(trace_generator, (safe_div((safe_mult(15875, global_values.trace_length)), 16384))). + local pow2560 = pow30 * pow2559; // pow(trace_generator, (safe_div((safe_mult(63501, global_values.trace_length)), 65536))). + local pow2561 = pow30 * pow2560; // pow(trace_generator, (safe_div((safe_mult(31751, global_values.trace_length)), 32768))). + local pow2562 = pow30 * pow2561; // pow(trace_generator, (safe_div((safe_mult(63503, global_values.trace_length)), 65536))). + local pow2563 = pow30 * pow2562; // pow(trace_generator, (safe_div((safe_mult(3969, global_values.trace_length)), 4096))). + local pow2564 = pow30 * pow2563; // pow(trace_generator, (safe_div((safe_mult(63505, global_values.trace_length)), 65536))). + local pow2565 = pow30 * pow2564; // pow(trace_generator, (safe_div((safe_mult(31753, global_values.trace_length)), 32768))). + local pow2566 = pow30 * pow2565; // pow(trace_generator, (safe_div((safe_mult(63507, global_values.trace_length)), 65536))). + local pow2567 = pow30 * pow2566; // pow(trace_generator, (safe_div((safe_mult(15877, global_values.trace_length)), 16384))). + local pow2568 = pow30 * pow2567; // pow(trace_generator, (safe_div((safe_mult(63509, global_values.trace_length)), 65536))). + local pow2569 = pow30 * pow2568; // pow(trace_generator, (safe_div((safe_mult(31755, global_values.trace_length)), 32768))). + local pow2570 = pow30 * pow2569; // pow(trace_generator, (safe_div((safe_mult(63511, global_values.trace_length)), 65536))). + local pow2571 = pow77 * pow2570; // pow(trace_generator, (safe_div((safe_mult(993, global_values.trace_length)), 1024))). + local pow2572 = pow98 * pow2571; // pow(trace_generator, (safe_div((safe_mult(497, global_values.trace_length)), 512))). + local pow2573 = pow98 * pow2572; // pow(trace_generator, (safe_div((safe_mult(995, global_values.trace_length)), 1024))). + local pow2574 = pow98 * pow2573; // pow(trace_generator, (safe_div((safe_mult(249, global_values.trace_length)), 256))). + local pow2575 = pow98 * pow2574; // pow(trace_generator, (safe_div((safe_mult(997, global_values.trace_length)), 1024))). + local pow2576 = pow98 * pow2575; // pow(trace_generator, (safe_div((safe_mult(499, global_values.trace_length)), 512))). + local pow2577 = pow98 * pow2576; // pow(trace_generator, (safe_div((safe_mult(999, global_values.trace_length)), 1024))). + local pow2578 = pow98 * pow2577; // pow(trace_generator, (safe_div((safe_mult(125, global_values.trace_length)), 128))). + local pow2579 = pow98 * pow2578; // pow(trace_generator, (safe_div((safe_mult(1001, global_values.trace_length)), 1024))). + local pow2580 = pow98 * pow2579; // pow(trace_generator, (safe_div((safe_mult(501, global_values.trace_length)), 512))). + local pow2581 = pow98 * pow2580; // pow(trace_generator, (safe_div((safe_mult(1003, global_values.trace_length)), 1024))). + local pow2582 = pow98 * pow2581; // pow(trace_generator, (safe_div((safe_mult(251, global_values.trace_length)), 256))). + local pow2583 = pow98 * pow2582; // pow(trace_generator, (safe_div((safe_mult(1005, global_values.trace_length)), 1024))). + local pow2584 = pow98 * pow2583; // pow(trace_generator, (safe_div((safe_mult(503, global_values.trace_length)), 512))). + local pow2585 = pow98 * pow2584; // pow(trace_generator, (safe_div((safe_mult(1007, global_values.trace_length)), 1024))). + local pow2586 = pow98 * pow2585; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 64))). + local pow2587 = pow30 * pow2586; // pow(trace_generator, (safe_div((safe_mult(64513, global_values.trace_length)), 65536))). + local pow2588 = pow30 * pow2587; // pow(trace_generator, (safe_div((safe_mult(32257, global_values.trace_length)), 32768))). + local pow2589 = pow30 * pow2588; // pow(trace_generator, (safe_div((safe_mult(64515, global_values.trace_length)), 65536))). + local pow2590 = pow30 * pow2589; // pow(trace_generator, (safe_div((safe_mult(16129, global_values.trace_length)), 16384))). + local pow2591 = pow30 * pow2590; // pow(trace_generator, (safe_div((safe_mult(64517, global_values.trace_length)), 65536))). + local pow2592 = pow30 * pow2591; // pow(trace_generator, (safe_div((safe_mult(32259, global_values.trace_length)), 32768))). + local pow2593 = pow30 * pow2592; // pow(trace_generator, (safe_div((safe_mult(64519, global_values.trace_length)), 65536))). + local pow2594 = pow30 * pow2593; // pow(trace_generator, (safe_div((safe_mult(8065, global_values.trace_length)), 8192))). + local pow2595 = pow30 * pow2594; // pow(trace_generator, (safe_div((safe_mult(64521, global_values.trace_length)), 65536))). + local pow2596 = pow30 * pow2595; // pow(trace_generator, (safe_div((safe_mult(32261, global_values.trace_length)), 32768))). + local pow2597 = pow30 * pow2596; // pow(trace_generator, (safe_div((safe_mult(64523, global_values.trace_length)), 65536))). + local pow2598 = pow30 * pow2597; // pow(trace_generator, (safe_div((safe_mult(16131, global_values.trace_length)), 16384))). + local pow2599 = pow30 * pow2598; // pow(trace_generator, (safe_div((safe_mult(64525, global_values.trace_length)), 65536))). + local pow2600 = pow30 * pow2599; // pow(trace_generator, (safe_div((safe_mult(32263, global_values.trace_length)), 32768))). + local pow2601 = pow30 * pow2600; // pow(trace_generator, (safe_div((safe_mult(64527, global_values.trace_length)), 65536))). + local pow2602 = pow30 * pow2601; // pow(trace_generator, (safe_div((safe_mult(4033, global_values.trace_length)), 4096))). + local pow2603 = pow30 * pow2602; // pow(trace_generator, (safe_div((safe_mult(64529, global_values.trace_length)), 65536))). + local pow2604 = pow30 * pow2603; // pow(trace_generator, (safe_div((safe_mult(32265, global_values.trace_length)), 32768))). + local pow2605 = pow30 * pow2604; // pow(trace_generator, (safe_div((safe_mult(64531, global_values.trace_length)), 65536))). + local pow2606 = pow30 * pow2605; // pow(trace_generator, (safe_div((safe_mult(16133, global_values.trace_length)), 16384))). + local pow2607 = pow30 * pow2606; // pow(trace_generator, (safe_div((safe_mult(64533, global_values.trace_length)), 65536))). + local pow2608 = pow30 * pow2607; // pow(trace_generator, (safe_div((safe_mult(32267, global_values.trace_length)), 32768))). + local pow2609 = pow30 * pow2608; // pow(trace_generator, (safe_div((safe_mult(64535, global_values.trace_length)), 65536))). + local pow2610 = pow30 * pow2609; // pow(trace_generator, (safe_div((safe_mult(8067, global_values.trace_length)), 8192))). + local pow2611 = pow30 * pow2610; // pow(trace_generator, (safe_div((safe_mult(64537, global_values.trace_length)), 65536))). + local pow2612 = pow30 * pow2611; // pow(trace_generator, (safe_div((safe_mult(32269, global_values.trace_length)), 32768))). + local pow2613 = pow30 * pow2612; // pow(trace_generator, (safe_div((safe_mult(64539, global_values.trace_length)), 65536))). + local pow2614 = pow30 * pow2613; // pow(trace_generator, (safe_div((safe_mult(16135, global_values.trace_length)), 16384))). + local pow2615 = pow30 * pow2614; // pow(trace_generator, (safe_div((safe_mult(64541, global_values.trace_length)), 65536))). + local pow2616 = pow39 * pow2615; // pow(trace_generator, (safe_div((safe_mult(2017, global_values.trace_length)), 2048))). + local pow2617 = pow30 * pow2616; // pow(trace_generator, (safe_div((safe_mult(64545, global_values.trace_length)), 65536))). + local pow2618 = pow30 * pow2617; // pow(trace_generator, (safe_div((safe_mult(32273, global_values.trace_length)), 32768))). + local pow2619 = pow30 * pow2618; // pow(trace_generator, (safe_div((safe_mult(64547, global_values.trace_length)), 65536))). + local pow2620 = pow30 * pow2619; // pow(trace_generator, (safe_div((safe_mult(16137, global_values.trace_length)), 16384))). + local pow2621 = pow30 * pow2620; // pow(trace_generator, (safe_div((safe_mult(64549, global_values.trace_length)), 65536))). + local pow2622 = pow30 * pow2621; // pow(trace_generator, (safe_div((safe_mult(32275, global_values.trace_length)), 32768))). + local pow2623 = pow30 * pow2622; // pow(trace_generator, (safe_div((safe_mult(64551, global_values.trace_length)), 65536))). + local pow2624 = pow30 * pow2623; // pow(trace_generator, (safe_div((safe_mult(8069, global_values.trace_length)), 8192))). + local pow2625 = pow30 * pow2624; // pow(trace_generator, (safe_div((safe_mult(64553, global_values.trace_length)), 65536))). + local pow2626 = pow30 * pow2625; // pow(trace_generator, (safe_div((safe_mult(32277, global_values.trace_length)), 32768))). + local pow2627 = pow30 * pow2626; // pow(trace_generator, (safe_div((safe_mult(64555, global_values.trace_length)), 65536))). + local pow2628 = pow30 * pow2627; // pow(trace_generator, (safe_div((safe_mult(16139, global_values.trace_length)), 16384))). + local pow2629 = pow30 * pow2628; // pow(trace_generator, (safe_div((safe_mult(64557, global_values.trace_length)), 65536))). + local pow2630 = pow30 * pow2629; // pow(trace_generator, (safe_div((safe_mult(32279, global_values.trace_length)), 32768))). + local pow2631 = pow30 * pow2630; // pow(trace_generator, (safe_div((safe_mult(64559, global_values.trace_length)), 65536))). + local pow2632 = pow30 * pow2631; // pow(trace_generator, (safe_div((safe_mult(4035, global_values.trace_length)), 4096))). + local pow2633 = pow30 * pow2632; // pow(trace_generator, (safe_div((safe_mult(64561, global_values.trace_length)), 65536))). + local pow2634 = pow30 * pow2633; // pow(trace_generator, (safe_div((safe_mult(32281, global_values.trace_length)), 32768))). + local pow2635 = pow30 * pow2634; // pow(trace_generator, (safe_div((safe_mult(64563, global_values.trace_length)), 65536))). + local pow2636 = pow30 * pow2635; // pow(trace_generator, (safe_div((safe_mult(16141, global_values.trace_length)), 16384))). + local pow2637 = pow30 * pow2636; // pow(trace_generator, (safe_div((safe_mult(64565, global_values.trace_length)), 65536))). + local pow2638 = pow30 * pow2637; // pow(trace_generator, (safe_div((safe_mult(32283, global_values.trace_length)), 32768))). + local pow2639 = pow30 * pow2638; // pow(trace_generator, (safe_div((safe_mult(64567, global_values.trace_length)), 65536))). + local pow2640 = pow30 * pow2639; // pow(trace_generator, (safe_div((safe_mult(8071, global_values.trace_length)), 8192))). + local pow2641 = pow30 * pow2640; // pow(trace_generator, (safe_div((safe_mult(64569, global_values.trace_length)), 65536))). + local pow2642 = pow30 * pow2641; // pow(trace_generator, (safe_div((safe_mult(32285, global_values.trace_length)), 32768))). + local pow2643 = pow30 * pow2642; // pow(trace_generator, (safe_div((safe_mult(64571, global_values.trace_length)), 65536))). + local pow2644 = pow30 * pow2643; // pow(trace_generator, (safe_div((safe_mult(16143, global_values.trace_length)), 16384))). + local pow2645 = pow30 * pow2644; // pow(trace_generator, (safe_div((safe_mult(64573, global_values.trace_length)), 65536))). + local pow2646 = pow39 * pow2645; // pow(trace_generator, (safe_div((safe_mult(1009, global_values.trace_length)), 1024))). + local pow2647 = pow30 * pow2646; // pow(trace_generator, (safe_div((safe_mult(64577, global_values.trace_length)), 65536))). + local pow2648 = pow30 * pow2647; // pow(trace_generator, (safe_div((safe_mult(32289, global_values.trace_length)), 32768))). + local pow2649 = pow30 * pow2648; // pow(trace_generator, (safe_div((safe_mult(64579, global_values.trace_length)), 65536))). + local pow2650 = pow30 * pow2649; // pow(trace_generator, (safe_div((safe_mult(16145, global_values.trace_length)), 16384))). + local pow2651 = pow30 * pow2650; // pow(trace_generator, (safe_div((safe_mult(64581, global_values.trace_length)), 65536))). + local pow2652 = pow30 * pow2651; // pow(trace_generator, (safe_div((safe_mult(32291, global_values.trace_length)), 32768))). + local pow2653 = pow30 * pow2652; // pow(trace_generator, (safe_div((safe_mult(64583, global_values.trace_length)), 65536))). + local pow2654 = pow30 * pow2653; // pow(trace_generator, (safe_div((safe_mult(8073, global_values.trace_length)), 8192))). + local pow2655 = pow30 * pow2654; // pow(trace_generator, (safe_div((safe_mult(64585, global_values.trace_length)), 65536))). + local pow2656 = pow30 * pow2655; // pow(trace_generator, (safe_div((safe_mult(32293, global_values.trace_length)), 32768))). + local pow2657 = pow30 * pow2656; // pow(trace_generator, (safe_div((safe_mult(64587, global_values.trace_length)), 65536))). + local pow2658 = pow30 * pow2657; // pow(trace_generator, (safe_div((safe_mult(16147, global_values.trace_length)), 16384))). + local pow2659 = pow30 * pow2658; // pow(trace_generator, (safe_div((safe_mult(64589, global_values.trace_length)), 65536))). + local pow2660 = pow30 * pow2659; // pow(trace_generator, (safe_div((safe_mult(32295, global_values.trace_length)), 32768))). + local pow2661 = pow30 * pow2660; // pow(trace_generator, (safe_div((safe_mult(64591, global_values.trace_length)), 65536))). + local pow2662 = pow30 * pow2661; // pow(trace_generator, (safe_div((safe_mult(4037, global_values.trace_length)), 4096))). + local pow2663 = pow30 * pow2662; // pow(trace_generator, (safe_div((safe_mult(64593, global_values.trace_length)), 65536))). + local pow2664 = pow30 * pow2663; // pow(trace_generator, (safe_div((safe_mult(32297, global_values.trace_length)), 32768))). + local pow2665 = pow30 * pow2664; // pow(trace_generator, (safe_div((safe_mult(64595, global_values.trace_length)), 65536))). + local pow2666 = pow30 * pow2665; // pow(trace_generator, (safe_div((safe_mult(16149, global_values.trace_length)), 16384))). + local pow2667 = pow30 * pow2666; // pow(trace_generator, (safe_div((safe_mult(64597, global_values.trace_length)), 65536))). + local pow2668 = pow30 * pow2667; // pow(trace_generator, (safe_div((safe_mult(32299, global_values.trace_length)), 32768))). + local pow2669 = pow30 * pow2668; // pow(trace_generator, (safe_div((safe_mult(64599, global_values.trace_length)), 65536))). + local pow2670 = pow30 * pow2669; // pow(trace_generator, (safe_div((safe_mult(8075, global_values.trace_length)), 8192))). + local pow2671 = pow30 * pow2670; // pow(trace_generator, (safe_div((safe_mult(64601, global_values.trace_length)), 65536))). + local pow2672 = pow30 * pow2671; // pow(trace_generator, (safe_div((safe_mult(32301, global_values.trace_length)), 32768))). + local pow2673 = pow30 * pow2672; // pow(trace_generator, (safe_div((safe_mult(64603, global_values.trace_length)), 65536))). + local pow2674 = pow30 * pow2673; // pow(trace_generator, (safe_div((safe_mult(16151, global_values.trace_length)), 16384))). + local pow2675 = pow30 * pow2674; // pow(trace_generator, (safe_div((safe_mult(64605, global_values.trace_length)), 65536))). + local pow2676 = pow39 * pow2675; // pow(trace_generator, (safe_div((safe_mult(2019, global_values.trace_length)), 2048))). + local pow2677 = pow30 * pow2676; // pow(trace_generator, (safe_div((safe_mult(64609, global_values.trace_length)), 65536))). + local pow2678 = pow30 * pow2677; // pow(trace_generator, (safe_div((safe_mult(32305, global_values.trace_length)), 32768))). + local pow2679 = pow30 * pow2678; // pow(trace_generator, (safe_div((safe_mult(64611, global_values.trace_length)), 65536))). + local pow2680 = pow30 * pow2679; // pow(trace_generator, (safe_div((safe_mult(16153, global_values.trace_length)), 16384))). + local pow2681 = pow30 * pow2680; // pow(trace_generator, (safe_div((safe_mult(64613, global_values.trace_length)), 65536))). + local pow2682 = pow30 * pow2681; // pow(trace_generator, (safe_div((safe_mult(32307, global_values.trace_length)), 32768))). + local pow2683 = pow30 * pow2682; // pow(trace_generator, (safe_div((safe_mult(64615, global_values.trace_length)), 65536))). + local pow2684 = pow30 * pow2683; // pow(trace_generator, (safe_div((safe_mult(8077, global_values.trace_length)), 8192))). + local pow2685 = pow30 * pow2684; // pow(trace_generator, (safe_div((safe_mult(64617, global_values.trace_length)), 65536))). + local pow2686 = pow30 * pow2685; // pow(trace_generator, (safe_div((safe_mult(32309, global_values.trace_length)), 32768))). + local pow2687 = pow30 * pow2686; // pow(trace_generator, (safe_div((safe_mult(64619, global_values.trace_length)), 65536))). + local pow2688 = pow30 * pow2687; // pow(trace_generator, (safe_div((safe_mult(16155, global_values.trace_length)), 16384))). + local pow2689 = pow30 * pow2688; // pow(trace_generator, (safe_div((safe_mult(64621, global_values.trace_length)), 65536))). + local pow2690 = pow30 * pow2689; // pow(trace_generator, (safe_div((safe_mult(32311, global_values.trace_length)), 32768))). + local pow2691 = pow30 * pow2690; // pow(trace_generator, (safe_div((safe_mult(64623, global_values.trace_length)), 65536))). + local pow2692 = pow30 * pow2691; // pow(trace_generator, (safe_div((safe_mult(4039, global_values.trace_length)), 4096))). + local pow2693 = pow30 * pow2692; // pow(trace_generator, (safe_div((safe_mult(64625, global_values.trace_length)), 65536))). + local pow2694 = pow30 * pow2693; // pow(trace_generator, (safe_div((safe_mult(32313, global_values.trace_length)), 32768))). + local pow2695 = pow30 * pow2694; // pow(trace_generator, (safe_div((safe_mult(64627, global_values.trace_length)), 65536))). + local pow2696 = pow30 * pow2695; // pow(trace_generator, (safe_div((safe_mult(16157, global_values.trace_length)), 16384))). + local pow2697 = pow30 * pow2696; // pow(trace_generator, (safe_div((safe_mult(64629, global_values.trace_length)), 65536))). + local pow2698 = pow30 * pow2697; // pow(trace_generator, (safe_div((safe_mult(32315, global_values.trace_length)), 32768))). + local pow2699 = pow30 * pow2698; // pow(trace_generator, (safe_div((safe_mult(64631, global_values.trace_length)), 65536))). + local pow2700 = pow30 * pow2699; // pow(trace_generator, (safe_div((safe_mult(8079, global_values.trace_length)), 8192))). + local pow2701 = pow30 * pow2700; // pow(trace_generator, (safe_div((safe_mult(64633, global_values.trace_length)), 65536))). + local pow2702 = pow30 * pow2701; // pow(trace_generator, (safe_div((safe_mult(32317, global_values.trace_length)), 32768))). + local pow2703 = pow30 * pow2702; // pow(trace_generator, (safe_div((safe_mult(64635, global_values.trace_length)), 65536))). + local pow2704 = pow30 * pow2703; // pow(trace_generator, (safe_div((safe_mult(16159, global_values.trace_length)), 16384))). + local pow2705 = pow30 * pow2704; // pow(trace_generator, (safe_div((safe_mult(64637, global_values.trace_length)), 65536))). + local pow2706 = pow39 * pow2705; // pow(trace_generator, (safe_div((safe_mult(505, global_values.trace_length)), 512))). + local pow2707 = pow30 * pow2706; // pow(trace_generator, (safe_div((safe_mult(64641, global_values.trace_length)), 65536))). + local pow2708 = pow30 * pow2707; // pow(trace_generator, (safe_div((safe_mult(32321, global_values.trace_length)), 32768))). + local pow2709 = pow30 * pow2708; // pow(trace_generator, (safe_div((safe_mult(64643, global_values.trace_length)), 65536))). + local pow2710 = pow30 * pow2709; // pow(trace_generator, (safe_div((safe_mult(16161, global_values.trace_length)), 16384))). + local pow2711 = pow30 * pow2710; // pow(trace_generator, (safe_div((safe_mult(64645, global_values.trace_length)), 65536))). + local pow2712 = pow30 * pow2711; // pow(trace_generator, (safe_div((safe_mult(32323, global_values.trace_length)), 32768))). + local pow2713 = pow30 * pow2712; // pow(trace_generator, (safe_div((safe_mult(64647, global_values.trace_length)), 65536))). + local pow2714 = pow30 * pow2713; // pow(trace_generator, (safe_div((safe_mult(8081, global_values.trace_length)), 8192))). + local pow2715 = pow30 * pow2714; // pow(trace_generator, (safe_div((safe_mult(64649, global_values.trace_length)), 65536))). + local pow2716 = pow30 * pow2715; // pow(trace_generator, (safe_div((safe_mult(32325, global_values.trace_length)), 32768))). + local pow2717 = pow30 * pow2716; // pow(trace_generator, (safe_div((safe_mult(64651, global_values.trace_length)), 65536))). + local pow2718 = pow30 * pow2717; // pow(trace_generator, (safe_div((safe_mult(16163, global_values.trace_length)), 16384))). + local pow2719 = pow30 * pow2718; // pow(trace_generator, (safe_div((safe_mult(64653, global_values.trace_length)), 65536))). + local pow2720 = pow30 * pow2719; // pow(trace_generator, (safe_div((safe_mult(32327, global_values.trace_length)), 32768))). + local pow2721 = pow30 * pow2720; // pow(trace_generator, (safe_div((safe_mult(64655, global_values.trace_length)), 65536))). + local pow2722 = pow30 * pow2721; // pow(trace_generator, (safe_div((safe_mult(4041, global_values.trace_length)), 4096))). + local pow2723 = pow30 * pow2722; // pow(trace_generator, (safe_div((safe_mult(64657, global_values.trace_length)), 65536))). + local pow2724 = pow30 * pow2723; // pow(trace_generator, (safe_div((safe_mult(32329, global_values.trace_length)), 32768))). + local pow2725 = pow30 * pow2724; // pow(trace_generator, (safe_div((safe_mult(64659, global_values.trace_length)), 65536))). + local pow2726 = pow30 * pow2725; // pow(trace_generator, (safe_div((safe_mult(16165, global_values.trace_length)), 16384))). + local pow2727 = pow30 * pow2726; // pow(trace_generator, (safe_div((safe_mult(64661, global_values.trace_length)), 65536))). + local pow2728 = pow30 * pow2727; // pow(trace_generator, (safe_div((safe_mult(32331, global_values.trace_length)), 32768))). + local pow2729 = pow30 * pow2728; // pow(trace_generator, (safe_div((safe_mult(64663, global_values.trace_length)), 65536))). + local pow2730 = pow30 * pow2729; // pow(trace_generator, (safe_div((safe_mult(8083, global_values.trace_length)), 8192))). + local pow2731 = pow30 * pow2730; // pow(trace_generator, (safe_div((safe_mult(64665, global_values.trace_length)), 65536))). + local pow2732 = pow30 * pow2731; // pow(trace_generator, (safe_div((safe_mult(32333, global_values.trace_length)), 32768))). + local pow2733 = pow30 * pow2732; // pow(trace_generator, (safe_div((safe_mult(64667, global_values.trace_length)), 65536))). + local pow2734 = pow30 * pow2733; // pow(trace_generator, (safe_div((safe_mult(16167, global_values.trace_length)), 16384))). + local pow2735 = pow30 * pow2734; // pow(trace_generator, (safe_div((safe_mult(64669, global_values.trace_length)), 65536))). + local pow2736 = pow39 * pow2735; // pow(trace_generator, (safe_div((safe_mult(2021, global_values.trace_length)), 2048))). + local pow2737 = pow30 * pow2736; // pow(trace_generator, (safe_div((safe_mult(64673, global_values.trace_length)), 65536))). + local pow2738 = pow30 * pow2737; // pow(trace_generator, (safe_div((safe_mult(32337, global_values.trace_length)), 32768))). + local pow2739 = pow30 * pow2738; // pow(trace_generator, (safe_div((safe_mult(64675, global_values.trace_length)), 65536))). + local pow2740 = pow30 * pow2739; // pow(trace_generator, (safe_div((safe_mult(16169, global_values.trace_length)), 16384))). + local pow2741 = pow30 * pow2740; // pow(trace_generator, (safe_div((safe_mult(64677, global_values.trace_length)), 65536))). + local pow2742 = pow30 * pow2741; // pow(trace_generator, (safe_div((safe_mult(32339, global_values.trace_length)), 32768))). + local pow2743 = pow30 * pow2742; // pow(trace_generator, (safe_div((safe_mult(64679, global_values.trace_length)), 65536))). + local pow2744 = pow30 * pow2743; // pow(trace_generator, (safe_div((safe_mult(8085, global_values.trace_length)), 8192))). + local pow2745 = pow30 * pow2744; // pow(trace_generator, (safe_div((safe_mult(64681, global_values.trace_length)), 65536))). + local pow2746 = pow30 * pow2745; // pow(trace_generator, (safe_div((safe_mult(32341, global_values.trace_length)), 32768))). + local pow2747 = pow30 * pow2746; // pow(trace_generator, (safe_div((safe_mult(64683, global_values.trace_length)), 65536))). + local pow2748 = pow30 * pow2747; // pow(trace_generator, (safe_div((safe_mult(16171, global_values.trace_length)), 16384))). + local pow2749 = pow30 * pow2748; // pow(trace_generator, (safe_div((safe_mult(64685, global_values.trace_length)), 65536))). + local pow2750 = pow30 * pow2749; // pow(trace_generator, (safe_div((safe_mult(32343, global_values.trace_length)), 32768))). + local pow2751 = pow30 * pow2750; // pow(trace_generator, (safe_div((safe_mult(64687, global_values.trace_length)), 65536))). + local pow2752 = pow30 * pow2751; // pow(trace_generator, (safe_div((safe_mult(4043, global_values.trace_length)), 4096))). + local pow2753 = pow30 * pow2752; // pow(trace_generator, (safe_div((safe_mult(64689, global_values.trace_length)), 65536))). + local pow2754 = pow30 * pow2753; // pow(trace_generator, (safe_div((safe_mult(32345, global_values.trace_length)), 32768))). + local pow2755 = pow30 * pow2754; // pow(trace_generator, (safe_div((safe_mult(64691, global_values.trace_length)), 65536))). + local pow2756 = pow30 * pow2755; // pow(trace_generator, (safe_div((safe_mult(16173, global_values.trace_length)), 16384))). + local pow2757 = pow30 * pow2756; // pow(trace_generator, (safe_div((safe_mult(64693, global_values.trace_length)), 65536))). + local pow2758 = pow30 * pow2757; // pow(trace_generator, (safe_div((safe_mult(32347, global_values.trace_length)), 32768))). + local pow2759 = pow30 * pow2758; // pow(trace_generator, (safe_div((safe_mult(64695, global_values.trace_length)), 65536))). + local pow2760 = pow30 * pow2759; // pow(trace_generator, (safe_div((safe_mult(8087, global_values.trace_length)), 8192))). + local pow2761 = pow30 * pow2760; // pow(trace_generator, (safe_div((safe_mult(64697, global_values.trace_length)), 65536))). + local pow2762 = pow30 * pow2761; // pow(trace_generator, (safe_div((safe_mult(32349, global_values.trace_length)), 32768))). + local pow2763 = pow30 * pow2762; // pow(trace_generator, (safe_div((safe_mult(64699, global_values.trace_length)), 65536))). + local pow2764 = pow30 * pow2763; // pow(trace_generator, (safe_div((safe_mult(16175, global_values.trace_length)), 16384))). + local pow2765 = pow30 * pow2764; // pow(trace_generator, (safe_div((safe_mult(64701, global_values.trace_length)), 65536))). + local pow2766 = pow39 * pow2765; // pow(trace_generator, (safe_div((safe_mult(1011, global_values.trace_length)), 1024))). + local pow2767 = pow30 * pow2766; // pow(trace_generator, (safe_div((safe_mult(64705, global_values.trace_length)), 65536))). + local pow2768 = pow30 * pow2767; // pow(trace_generator, (safe_div((safe_mult(32353, global_values.trace_length)), 32768))). + local pow2769 = pow30 * pow2768; // pow(trace_generator, (safe_div((safe_mult(64707, global_values.trace_length)), 65536))). + local pow2770 = pow30 * pow2769; // pow(trace_generator, (safe_div((safe_mult(16177, global_values.trace_length)), 16384))). + local pow2771 = pow30 * pow2770; // pow(trace_generator, (safe_div((safe_mult(64709, global_values.trace_length)), 65536))). + local pow2772 = pow30 * pow2771; // pow(trace_generator, (safe_div((safe_mult(32355, global_values.trace_length)), 32768))). + local pow2773 = pow30 * pow2772; // pow(trace_generator, (safe_div((safe_mult(64711, global_values.trace_length)), 65536))). + local pow2774 = pow30 * pow2773; // pow(trace_generator, (safe_div((safe_mult(8089, global_values.trace_length)), 8192))). + local pow2775 = pow30 * pow2774; // pow(trace_generator, (safe_div((safe_mult(64713, global_values.trace_length)), 65536))). + local pow2776 = pow30 * pow2775; // pow(trace_generator, (safe_div((safe_mult(32357, global_values.trace_length)), 32768))). + local pow2777 = pow30 * pow2776; // pow(trace_generator, (safe_div((safe_mult(64715, global_values.trace_length)), 65536))). + local pow2778 = pow30 * pow2777; // pow(trace_generator, (safe_div((safe_mult(16179, global_values.trace_length)), 16384))). + local pow2779 = pow30 * pow2778; // pow(trace_generator, (safe_div((safe_mult(64717, global_values.trace_length)), 65536))). + local pow2780 = pow30 * pow2779; // pow(trace_generator, (safe_div((safe_mult(32359, global_values.trace_length)), 32768))). + local pow2781 = pow30 * pow2780; // pow(trace_generator, (safe_div((safe_mult(64719, global_values.trace_length)), 65536))). + local pow2782 = pow30 * pow2781; // pow(trace_generator, (safe_div((safe_mult(4045, global_values.trace_length)), 4096))). + local pow2783 = pow30 * pow2782; // pow(trace_generator, (safe_div((safe_mult(64721, global_values.trace_length)), 65536))). + local pow2784 = pow30 * pow2783; // pow(trace_generator, (safe_div((safe_mult(32361, global_values.trace_length)), 32768))). + local pow2785 = pow30 * pow2784; // pow(trace_generator, (safe_div((safe_mult(64723, global_values.trace_length)), 65536))). + local pow2786 = pow30 * pow2785; // pow(trace_generator, (safe_div((safe_mult(16181, global_values.trace_length)), 16384))). + local pow2787 = pow30 * pow2786; // pow(trace_generator, (safe_div((safe_mult(64725, global_values.trace_length)), 65536))). + local pow2788 = pow30 * pow2787; // pow(trace_generator, (safe_div((safe_mult(32363, global_values.trace_length)), 32768))). + local pow2789 = pow30 * pow2788; // pow(trace_generator, (safe_div((safe_mult(64727, global_values.trace_length)), 65536))). + local pow2790 = pow30 * pow2789; // pow(trace_generator, (safe_div((safe_mult(8091, global_values.trace_length)), 8192))). + local pow2791 = pow30 * pow2790; // pow(trace_generator, (safe_div((safe_mult(64729, global_values.trace_length)), 65536))). + local pow2792 = pow30 * pow2791; // pow(trace_generator, (safe_div((safe_mult(32365, global_values.trace_length)), 32768))). + local pow2793 = pow30 * pow2792; // pow(trace_generator, (safe_div((safe_mult(64731, global_values.trace_length)), 65536))). + local pow2794 = pow30 * pow2793; // pow(trace_generator, (safe_div((safe_mult(16183, global_values.trace_length)), 16384))). + local pow2795 = pow30 * pow2794; // pow(trace_generator, (safe_div((safe_mult(64733, global_values.trace_length)), 65536))). + local pow2796 = pow39 * pow2795; // pow(trace_generator, (safe_div((safe_mult(2023, global_values.trace_length)), 2048))). + local pow2797 = pow30 * pow2796; // pow(trace_generator, (safe_div((safe_mult(64737, global_values.trace_length)), 65536))). + local pow2798 = pow30 * pow2797; // pow(trace_generator, (safe_div((safe_mult(32369, global_values.trace_length)), 32768))). + local pow2799 = pow30 * pow2798; // pow(trace_generator, (safe_div((safe_mult(64739, global_values.trace_length)), 65536))). + local pow2800 = pow30 * pow2799; // pow(trace_generator, (safe_div((safe_mult(16185, global_values.trace_length)), 16384))). + local pow2801 = pow30 * pow2800; // pow(trace_generator, (safe_div((safe_mult(64741, global_values.trace_length)), 65536))). + local pow2802 = pow30 * pow2801; // pow(trace_generator, (safe_div((safe_mult(32371, global_values.trace_length)), 32768))). + local pow2803 = pow30 * pow2802; // pow(trace_generator, (safe_div((safe_mult(64743, global_values.trace_length)), 65536))). + local pow2804 = pow30 * pow2803; // pow(trace_generator, (safe_div((safe_mult(8093, global_values.trace_length)), 8192))). + local pow2805 = pow30 * pow2804; // pow(trace_generator, (safe_div((safe_mult(64745, global_values.trace_length)), 65536))). + local pow2806 = pow30 * pow2805; // pow(trace_generator, (safe_div((safe_mult(32373, global_values.trace_length)), 32768))). + local pow2807 = pow30 * pow2806; // pow(trace_generator, (safe_div((safe_mult(64747, global_values.trace_length)), 65536))). + local pow2808 = pow30 * pow2807; // pow(trace_generator, (safe_div((safe_mult(16187, global_values.trace_length)), 16384))). + local pow2809 = pow30 * pow2808; // pow(trace_generator, (safe_div((safe_mult(64749, global_values.trace_length)), 65536))). + local pow2810 = pow30 * pow2809; // pow(trace_generator, (safe_div((safe_mult(32375, global_values.trace_length)), 32768))). + local pow2811 = pow30 * pow2810; // pow(trace_generator, (safe_div((safe_mult(64751, global_values.trace_length)), 65536))). + local pow2812 = pow30 * pow2811; // pow(trace_generator, (safe_div((safe_mult(4047, global_values.trace_length)), 4096))). + local pow2813 = pow30 * pow2812; // pow(trace_generator, (safe_div((safe_mult(64753, global_values.trace_length)), 65536))). + local pow2814 = pow30 * pow2813; // pow(trace_generator, (safe_div((safe_mult(32377, global_values.trace_length)), 32768))). + local pow2815 = pow30 * pow2814; // pow(trace_generator, (safe_div((safe_mult(64755, global_values.trace_length)), 65536))). + local pow2816 = pow30 * pow2815; // pow(trace_generator, (safe_div((safe_mult(16189, global_values.trace_length)), 16384))). + local pow2817 = pow30 * pow2816; // pow(trace_generator, (safe_div((safe_mult(64757, global_values.trace_length)), 65536))). + local pow2818 = pow30 * pow2817; // pow(trace_generator, (safe_div((safe_mult(32379, global_values.trace_length)), 32768))). + local pow2819 = pow30 * pow2818; // pow(trace_generator, (safe_div((safe_mult(64759, global_values.trace_length)), 65536))). + local pow2820 = pow30 * pow2819; // pow(trace_generator, (safe_div((safe_mult(8095, global_values.trace_length)), 8192))). + local pow2821 = pow30 * pow2820; // pow(trace_generator, (safe_div((safe_mult(64761, global_values.trace_length)), 65536))). + local pow2822 = pow30 * pow2821; // pow(trace_generator, (safe_div((safe_mult(32381, global_values.trace_length)), 32768))). + local pow2823 = pow30 * pow2822; // pow(trace_generator, (safe_div((safe_mult(64763, global_values.trace_length)), 65536))). + local pow2824 = pow30 * pow2823; // pow(trace_generator, (safe_div((safe_mult(16191, global_values.trace_length)), 16384))). + local pow2825 = pow30 * pow2824; // pow(trace_generator, (safe_div((safe_mult(64765, global_values.trace_length)), 65536))). + local pow2826 = pow39 * pow2825; // pow(trace_generator, (safe_div((safe_mult(253, global_values.trace_length)), 256))). + local pow2827 = pow30 * pow2826; // pow(trace_generator, (safe_div((safe_mult(64769, global_values.trace_length)), 65536))). + local pow2828 = pow30 * pow2827; // pow(trace_generator, (safe_div((safe_mult(32385, global_values.trace_length)), 32768))). + local pow2829 = pow30 * pow2828; // pow(trace_generator, (safe_div((safe_mult(64771, global_values.trace_length)), 65536))). + local pow2830 = pow30 * pow2829; // pow(trace_generator, (safe_div((safe_mult(16193, global_values.trace_length)), 16384))). + local pow2831 = pow30 * pow2830; // pow(trace_generator, (safe_div((safe_mult(64773, global_values.trace_length)), 65536))). + local pow2832 = pow30 * pow2831; // pow(trace_generator, (safe_div((safe_mult(32387, global_values.trace_length)), 32768))). + local pow2833 = pow30 * pow2832; // pow(trace_generator, (safe_div((safe_mult(64775, global_values.trace_length)), 65536))). + local pow2834 = pow30 * pow2833; // pow(trace_generator, (safe_div((safe_mult(8097, global_values.trace_length)), 8192))). + local pow2835 = pow30 * pow2834; // pow(trace_generator, (safe_div((safe_mult(64777, global_values.trace_length)), 65536))). + local pow2836 = pow30 * pow2835; // pow(trace_generator, (safe_div((safe_mult(32389, global_values.trace_length)), 32768))). + local pow2837 = pow30 * pow2836; // pow(trace_generator, (safe_div((safe_mult(64779, global_values.trace_length)), 65536))). + local pow2838 = pow30 * pow2837; // pow(trace_generator, (safe_div((safe_mult(16195, global_values.trace_length)), 16384))). + local pow2839 = pow30 * pow2838; // pow(trace_generator, (safe_div((safe_mult(64781, global_values.trace_length)), 65536))). + local pow2840 = pow30 * pow2839; // pow(trace_generator, (safe_div((safe_mult(32391, global_values.trace_length)), 32768))). + local pow2841 = pow30 * pow2840; // pow(trace_generator, (safe_div((safe_mult(64783, global_values.trace_length)), 65536))). + local pow2842 = pow30 * pow2841; // pow(trace_generator, (safe_div((safe_mult(4049, global_values.trace_length)), 4096))). + local pow2843 = pow30 * pow2842; // pow(trace_generator, (safe_div((safe_mult(64785, global_values.trace_length)), 65536))). + local pow2844 = pow30 * pow2843; // pow(trace_generator, (safe_div((safe_mult(32393, global_values.trace_length)), 32768))). + local pow2845 = pow30 * pow2844; // pow(trace_generator, (safe_div((safe_mult(64787, global_values.trace_length)), 65536))). + local pow2846 = pow30 * pow2845; // pow(trace_generator, (safe_div((safe_mult(16197, global_values.trace_length)), 16384))). + local pow2847 = pow30 * pow2846; // pow(trace_generator, (safe_div((safe_mult(64789, global_values.trace_length)), 65536))). + local pow2848 = pow30 * pow2847; // pow(trace_generator, (safe_div((safe_mult(32395, global_values.trace_length)), 32768))). + local pow2849 = pow30 * pow2848; // pow(trace_generator, (safe_div((safe_mult(64791, global_values.trace_length)), 65536))). + local pow2850 = pow30 * pow2849; // pow(trace_generator, (safe_div((safe_mult(8099, global_values.trace_length)), 8192))). + local pow2851 = pow30 * pow2850; // pow(trace_generator, (safe_div((safe_mult(64793, global_values.trace_length)), 65536))). + local pow2852 = pow30 * pow2851; // pow(trace_generator, (safe_div((safe_mult(32397, global_values.trace_length)), 32768))). + local pow2853 = pow30 * pow2852; // pow(trace_generator, (safe_div((safe_mult(64795, global_values.trace_length)), 65536))). + local pow2854 = pow30 * pow2853; // pow(trace_generator, (safe_div((safe_mult(16199, global_values.trace_length)), 16384))). + local pow2855 = pow30 * pow2854; // pow(trace_generator, (safe_div((safe_mult(64797, global_values.trace_length)), 65536))). + local pow2856 = pow39 * pow2855; // pow(trace_generator, (safe_div((safe_mult(2025, global_values.trace_length)), 2048))). + local pow2857 = pow30 * pow2856; // pow(trace_generator, (safe_div((safe_mult(64801, global_values.trace_length)), 65536))). + local pow2858 = pow30 * pow2857; // pow(trace_generator, (safe_div((safe_mult(32401, global_values.trace_length)), 32768))). + local pow2859 = pow30 * pow2858; // pow(trace_generator, (safe_div((safe_mult(64803, global_values.trace_length)), 65536))). + local pow2860 = pow30 * pow2859; // pow(trace_generator, (safe_div((safe_mult(16201, global_values.trace_length)), 16384))). + local pow2861 = pow30 * pow2860; // pow(trace_generator, (safe_div((safe_mult(64805, global_values.trace_length)), 65536))). + local pow2862 = pow30 * pow2861; // pow(trace_generator, (safe_div((safe_mult(32403, global_values.trace_length)), 32768))). + local pow2863 = pow30 * pow2862; // pow(trace_generator, (safe_div((safe_mult(64807, global_values.trace_length)), 65536))). + local pow2864 = pow30 * pow2863; // pow(trace_generator, (safe_div((safe_mult(8101, global_values.trace_length)), 8192))). + local pow2865 = pow30 * pow2864; // pow(trace_generator, (safe_div((safe_mult(64809, global_values.trace_length)), 65536))). + local pow2866 = pow30 * pow2865; // pow(trace_generator, (safe_div((safe_mult(32405, global_values.trace_length)), 32768))). + local pow2867 = pow30 * pow2866; // pow(trace_generator, (safe_div((safe_mult(64811, global_values.trace_length)), 65536))). + local pow2868 = pow30 * pow2867; // pow(trace_generator, (safe_div((safe_mult(16203, global_values.trace_length)), 16384))). + local pow2869 = pow30 * pow2868; // pow(trace_generator, (safe_div((safe_mult(64813, global_values.trace_length)), 65536))). + local pow2870 = pow30 * pow2869; // pow(trace_generator, (safe_div((safe_mult(32407, global_values.trace_length)), 32768))). + local pow2871 = pow30 * pow2870; // pow(trace_generator, (safe_div((safe_mult(64815, global_values.trace_length)), 65536))). + local pow2872 = pow30 * pow2871; // pow(trace_generator, (safe_div((safe_mult(4051, global_values.trace_length)), 4096))). + local pow2873 = pow30 * pow2872; // pow(trace_generator, (safe_div((safe_mult(64817, global_values.trace_length)), 65536))). + local pow2874 = pow30 * pow2873; // pow(trace_generator, (safe_div((safe_mult(32409, global_values.trace_length)), 32768))). + local pow2875 = pow30 * pow2874; // pow(trace_generator, (safe_div((safe_mult(64819, global_values.trace_length)), 65536))). + local pow2876 = pow30 * pow2875; // pow(trace_generator, (safe_div((safe_mult(16205, global_values.trace_length)), 16384))). + local pow2877 = pow30 * pow2876; // pow(trace_generator, (safe_div((safe_mult(64821, global_values.trace_length)), 65536))). + local pow2878 = pow30 * pow2877; // pow(trace_generator, (safe_div((safe_mult(32411, global_values.trace_length)), 32768))). + local pow2879 = pow30 * pow2878; // pow(trace_generator, (safe_div((safe_mult(64823, global_values.trace_length)), 65536))). + local pow2880 = pow30 * pow2879; // pow(trace_generator, (safe_div((safe_mult(8103, global_values.trace_length)), 8192))). + local pow2881 = pow30 * pow2880; // pow(trace_generator, (safe_div((safe_mult(64825, global_values.trace_length)), 65536))). + local pow2882 = pow30 * pow2881; // pow(trace_generator, (safe_div((safe_mult(32413, global_values.trace_length)), 32768))). + local pow2883 = pow30 * pow2882; // pow(trace_generator, (safe_div((safe_mult(64827, global_values.trace_length)), 65536))). + local pow2884 = pow30 * pow2883; // pow(trace_generator, (safe_div((safe_mult(16207, global_values.trace_length)), 16384))). + local pow2885 = pow30 * pow2884; // pow(trace_generator, (safe_div((safe_mult(64829, global_values.trace_length)), 65536))). + local pow2886 = pow39 * pow2885; // pow(trace_generator, (safe_div((safe_mult(1013, global_values.trace_length)), 1024))). + local pow2887 = pow30 * pow2886; // pow(trace_generator, (safe_div((safe_mult(64833, global_values.trace_length)), 65536))). + local pow2888 = pow30 * pow2887; // pow(trace_generator, (safe_div((safe_mult(32417, global_values.trace_length)), 32768))). + local pow2889 = pow30 * pow2888; // pow(trace_generator, (safe_div((safe_mult(64835, global_values.trace_length)), 65536))). + local pow2890 = pow30 * pow2889; // pow(trace_generator, (safe_div((safe_mult(16209, global_values.trace_length)), 16384))). + local pow2891 = pow30 * pow2890; // pow(trace_generator, (safe_div((safe_mult(64837, global_values.trace_length)), 65536))). + local pow2892 = pow30 * pow2891; // pow(trace_generator, (safe_div((safe_mult(32419, global_values.trace_length)), 32768))). + local pow2893 = pow30 * pow2892; // pow(trace_generator, (safe_div((safe_mult(64839, global_values.trace_length)), 65536))). + local pow2894 = pow30 * pow2893; // pow(trace_generator, (safe_div((safe_mult(8105, global_values.trace_length)), 8192))). + local pow2895 = pow30 * pow2894; // pow(trace_generator, (safe_div((safe_mult(64841, global_values.trace_length)), 65536))). + local pow2896 = pow30 * pow2895; // pow(trace_generator, (safe_div((safe_mult(32421, global_values.trace_length)), 32768))). + local pow2897 = pow30 * pow2896; // pow(trace_generator, (safe_div((safe_mult(64843, global_values.trace_length)), 65536))). + local pow2898 = pow30 * pow2897; // pow(trace_generator, (safe_div((safe_mult(16211, global_values.trace_length)), 16384))). + local pow2899 = pow30 * pow2898; // pow(trace_generator, (safe_div((safe_mult(64845, global_values.trace_length)), 65536))). + local pow2900 = pow30 * pow2899; // pow(trace_generator, (safe_div((safe_mult(32423, global_values.trace_length)), 32768))). + local pow2901 = pow30 * pow2900; // pow(trace_generator, (safe_div((safe_mult(64847, global_values.trace_length)), 65536))). + local pow2902 = pow30 * pow2901; // pow(trace_generator, (safe_div((safe_mult(4053, global_values.trace_length)), 4096))). + local pow2903 = pow30 * pow2902; // pow(trace_generator, (safe_div((safe_mult(64849, global_values.trace_length)), 65536))). + local pow2904 = pow30 * pow2903; // pow(trace_generator, (safe_div((safe_mult(32425, global_values.trace_length)), 32768))). + local pow2905 = pow30 * pow2904; // pow(trace_generator, (safe_div((safe_mult(64851, global_values.trace_length)), 65536))). + local pow2906 = pow30 * pow2905; // pow(trace_generator, (safe_div((safe_mult(16213, global_values.trace_length)), 16384))). + local pow2907 = pow30 * pow2906; // pow(trace_generator, (safe_div((safe_mult(64853, global_values.trace_length)), 65536))). + local pow2908 = pow30 * pow2907; // pow(trace_generator, (safe_div((safe_mult(32427, global_values.trace_length)), 32768))). + local pow2909 = pow30 * pow2908; // pow(trace_generator, (safe_div((safe_mult(64855, global_values.trace_length)), 65536))). + local pow2910 = pow30 * pow2909; // pow(trace_generator, (safe_div((safe_mult(8107, global_values.trace_length)), 8192))). + local pow2911 = pow30 * pow2910; // pow(trace_generator, (safe_div((safe_mult(64857, global_values.trace_length)), 65536))). + local pow2912 = pow30 * pow2911; // pow(trace_generator, (safe_div((safe_mult(32429, global_values.trace_length)), 32768))). + local pow2913 = pow30 * pow2912; // pow(trace_generator, (safe_div((safe_mult(64859, global_values.trace_length)), 65536))). + local pow2914 = pow30 * pow2913; // pow(trace_generator, (safe_div((safe_mult(16215, global_values.trace_length)), 16384))). + local pow2915 = pow30 * pow2914; // pow(trace_generator, (safe_div((safe_mult(64861, global_values.trace_length)), 65536))). + local pow2916 = pow39 * pow2915; // pow(trace_generator, (safe_div((safe_mult(2027, global_values.trace_length)), 2048))). + local pow2917 = pow30 * pow2916; // pow(trace_generator, (safe_div((safe_mult(64865, global_values.trace_length)), 65536))). + local pow2918 = pow30 * pow2917; // pow(trace_generator, (safe_div((safe_mult(32433, global_values.trace_length)), 32768))). + local pow2919 = pow30 * pow2918; // pow(trace_generator, (safe_div((safe_mult(64867, global_values.trace_length)), 65536))). + local pow2920 = pow30 * pow2919; // pow(trace_generator, (safe_div((safe_mult(16217, global_values.trace_length)), 16384))). + local pow2921 = pow30 * pow2920; // pow(trace_generator, (safe_div((safe_mult(64869, global_values.trace_length)), 65536))). + local pow2922 = pow30 * pow2921; // pow(trace_generator, (safe_div((safe_mult(32435, global_values.trace_length)), 32768))). + local pow2923 = pow30 * pow2922; // pow(trace_generator, (safe_div((safe_mult(64871, global_values.trace_length)), 65536))). + local pow2924 = pow30 * pow2923; // pow(trace_generator, (safe_div((safe_mult(8109, global_values.trace_length)), 8192))). + local pow2925 = pow30 * pow2924; // pow(trace_generator, (safe_div((safe_mult(64873, global_values.trace_length)), 65536))). + local pow2926 = pow30 * pow2925; // pow(trace_generator, (safe_div((safe_mult(32437, global_values.trace_length)), 32768))). + local pow2927 = pow30 * pow2926; // pow(trace_generator, (safe_div((safe_mult(64875, global_values.trace_length)), 65536))). + local pow2928 = pow30 * pow2927; // pow(trace_generator, (safe_div((safe_mult(16219, global_values.trace_length)), 16384))). + local pow2929 = pow30 * pow2928; // pow(trace_generator, (safe_div((safe_mult(64877, global_values.trace_length)), 65536))). + local pow2930 = pow30 * pow2929; // pow(trace_generator, (safe_div((safe_mult(32439, global_values.trace_length)), 32768))). + local pow2931 = pow30 * pow2930; // pow(trace_generator, (safe_div((safe_mult(64879, global_values.trace_length)), 65536))). + local pow2932 = pow30 * pow2931; // pow(trace_generator, (safe_div((safe_mult(4055, global_values.trace_length)), 4096))). + local pow2933 = pow30 * pow2932; // pow(trace_generator, (safe_div((safe_mult(64881, global_values.trace_length)), 65536))). + local pow2934 = pow30 * pow2933; // pow(trace_generator, (safe_div((safe_mult(32441, global_values.trace_length)), 32768))). + local pow2935 = pow30 * pow2934; // pow(trace_generator, (safe_div((safe_mult(64883, global_values.trace_length)), 65536))). + local pow2936 = pow30 * pow2935; // pow(trace_generator, (safe_div((safe_mult(16221, global_values.trace_length)), 16384))). + local pow2937 = pow30 * pow2936; // pow(trace_generator, (safe_div((safe_mult(64885, global_values.trace_length)), 65536))). + local pow2938 = pow30 * pow2937; // pow(trace_generator, (safe_div((safe_mult(32443, global_values.trace_length)), 32768))). + local pow2939 = pow30 * pow2938; // pow(trace_generator, (safe_div((safe_mult(64887, global_values.trace_length)), 65536))). + local pow2940 = pow30 * pow2939; // pow(trace_generator, (safe_div((safe_mult(8111, global_values.trace_length)), 8192))). + local pow2941 = pow30 * pow2940; // pow(trace_generator, (safe_div((safe_mult(64889, global_values.trace_length)), 65536))). + local pow2942 = pow30 * pow2941; // pow(trace_generator, (safe_div((safe_mult(32445, global_values.trace_length)), 32768))). + local pow2943 = pow30 * pow2942; // pow(trace_generator, (safe_div((safe_mult(64891, global_values.trace_length)), 65536))). + local pow2944 = pow30 * pow2943; // pow(trace_generator, (safe_div((safe_mult(16223, global_values.trace_length)), 16384))). + local pow2945 = pow30 * pow2944; // pow(trace_generator, (safe_div((safe_mult(64893, global_values.trace_length)), 65536))). + local pow2946 = pow39 * pow2945; // pow(trace_generator, (safe_div((safe_mult(507, global_values.trace_length)), 512))). + local pow2947 = pow30 * pow2946; // pow(trace_generator, (safe_div((safe_mult(64897, global_values.trace_length)), 65536))). + local pow2948 = pow30 * pow2947; // pow(trace_generator, (safe_div((safe_mult(32449, global_values.trace_length)), 32768))). + local pow2949 = pow30 * pow2948; // pow(trace_generator, (safe_div((safe_mult(64899, global_values.trace_length)), 65536))). + local pow2950 = pow30 * pow2949; // pow(trace_generator, (safe_div((safe_mult(16225, global_values.trace_length)), 16384))). + local pow2951 = pow30 * pow2950; // pow(trace_generator, (safe_div((safe_mult(64901, global_values.trace_length)), 65536))). + local pow2952 = pow30 * pow2951; // pow(trace_generator, (safe_div((safe_mult(32451, global_values.trace_length)), 32768))). + local pow2953 = pow30 * pow2952; // pow(trace_generator, (safe_div((safe_mult(64903, global_values.trace_length)), 65536))). + local pow2954 = pow30 * pow2953; // pow(trace_generator, (safe_div((safe_mult(8113, global_values.trace_length)), 8192))). + local pow2955 = pow30 * pow2954; // pow(trace_generator, (safe_div((safe_mult(64905, global_values.trace_length)), 65536))). + local pow2956 = pow30 * pow2955; // pow(trace_generator, (safe_div((safe_mult(32453, global_values.trace_length)), 32768))). + local pow2957 = pow30 * pow2956; // pow(trace_generator, (safe_div((safe_mult(64907, global_values.trace_length)), 65536))). + local pow2958 = pow30 * pow2957; // pow(trace_generator, (safe_div((safe_mult(16227, global_values.trace_length)), 16384))). + local pow2959 = pow30 * pow2958; // pow(trace_generator, (safe_div((safe_mult(64909, global_values.trace_length)), 65536))). + local pow2960 = pow30 * pow2959; // pow(trace_generator, (safe_div((safe_mult(32455, global_values.trace_length)), 32768))). + local pow2961 = pow30 * pow2960; // pow(trace_generator, (safe_div((safe_mult(64911, global_values.trace_length)), 65536))). + local pow2962 = pow30 * pow2961; // pow(trace_generator, (safe_div((safe_mult(4057, global_values.trace_length)), 4096))). + local pow2963 = pow30 * pow2962; // pow(trace_generator, (safe_div((safe_mult(64913, global_values.trace_length)), 65536))). + local pow2964 = pow30 * pow2963; // pow(trace_generator, (safe_div((safe_mult(32457, global_values.trace_length)), 32768))). + local pow2965 = pow30 * pow2964; // pow(trace_generator, (safe_div((safe_mult(64915, global_values.trace_length)), 65536))). + local pow2966 = pow30 * pow2965; // pow(trace_generator, (safe_div((safe_mult(16229, global_values.trace_length)), 16384))). + local pow2967 = pow30 * pow2966; // pow(trace_generator, (safe_div((safe_mult(64917, global_values.trace_length)), 65536))). + local pow2968 = pow30 * pow2967; // pow(trace_generator, (safe_div((safe_mult(32459, global_values.trace_length)), 32768))). + local pow2969 = pow30 * pow2968; // pow(trace_generator, (safe_div((safe_mult(64919, global_values.trace_length)), 65536))). + local pow2970 = pow30 * pow2969; // pow(trace_generator, (safe_div((safe_mult(8115, global_values.trace_length)), 8192))). + local pow2971 = pow30 * pow2970; // pow(trace_generator, (safe_div((safe_mult(64921, global_values.trace_length)), 65536))). + local pow2972 = pow30 * pow2971; // pow(trace_generator, (safe_div((safe_mult(32461, global_values.trace_length)), 32768))). + local pow2973 = pow30 * pow2972; // pow(trace_generator, (safe_div((safe_mult(64923, global_values.trace_length)), 65536))). + local pow2974 = pow30 * pow2973; // pow(trace_generator, (safe_div((safe_mult(16231, global_values.trace_length)), 16384))). + local pow2975 = pow30 * pow2974; // pow(trace_generator, (safe_div((safe_mult(64925, global_values.trace_length)), 65536))). + local pow2976 = pow39 * pow2975; // pow(trace_generator, (safe_div((safe_mult(2029, global_values.trace_length)), 2048))). + local pow2977 = pow30 * pow2976; // pow(trace_generator, (safe_div((safe_mult(64929, global_values.trace_length)), 65536))). + local pow2978 = pow30 * pow2977; // pow(trace_generator, (safe_div((safe_mult(32465, global_values.trace_length)), 32768))). + local pow2979 = pow30 * pow2978; // pow(trace_generator, (safe_div((safe_mult(64931, global_values.trace_length)), 65536))). + local pow2980 = pow30 * pow2979; // pow(trace_generator, (safe_div((safe_mult(16233, global_values.trace_length)), 16384))). + local pow2981 = pow30 * pow2980; // pow(trace_generator, (safe_div((safe_mult(64933, global_values.trace_length)), 65536))). + local pow2982 = pow30 * pow2981; // pow(trace_generator, (safe_div((safe_mult(32467, global_values.trace_length)), 32768))). + local pow2983 = pow30 * pow2982; // pow(trace_generator, (safe_div((safe_mult(64935, global_values.trace_length)), 65536))). + local pow2984 = pow30 * pow2983; // pow(trace_generator, (safe_div((safe_mult(8117, global_values.trace_length)), 8192))). + local pow2985 = pow30 * pow2984; // pow(trace_generator, (safe_div((safe_mult(64937, global_values.trace_length)), 65536))). + local pow2986 = pow30 * pow2985; // pow(trace_generator, (safe_div((safe_mult(32469, global_values.trace_length)), 32768))). + local pow2987 = pow30 * pow2986; // pow(trace_generator, (safe_div((safe_mult(64939, global_values.trace_length)), 65536))). + local pow2988 = pow30 * pow2987; // pow(trace_generator, (safe_div((safe_mult(16235, global_values.trace_length)), 16384))). + local pow2989 = pow30 * pow2988; // pow(trace_generator, (safe_div((safe_mult(64941, global_values.trace_length)), 65536))). + local pow2990 = pow30 * pow2989; // pow(trace_generator, (safe_div((safe_mult(32471, global_values.trace_length)), 32768))). + local pow2991 = pow30 * pow2990; // pow(trace_generator, (safe_div((safe_mult(64943, global_values.trace_length)), 65536))). + local pow2992 = pow30 * pow2991; // pow(trace_generator, (safe_div((safe_mult(4059, global_values.trace_length)), 4096))). + local pow2993 = pow30 * pow2992; // pow(trace_generator, (safe_div((safe_mult(64945, global_values.trace_length)), 65536))). + local pow2994 = pow30 * pow2993; // pow(trace_generator, (safe_div((safe_mult(32473, global_values.trace_length)), 32768))). + local pow2995 = pow30 * pow2994; // pow(trace_generator, (safe_div((safe_mult(64947, global_values.trace_length)), 65536))). + local pow2996 = pow30 * pow2995; // pow(trace_generator, (safe_div((safe_mult(16237, global_values.trace_length)), 16384))). + local pow2997 = pow30 * pow2996; // pow(trace_generator, (safe_div((safe_mult(64949, global_values.trace_length)), 65536))). + local pow2998 = pow30 * pow2997; // pow(trace_generator, (safe_div((safe_mult(32475, global_values.trace_length)), 32768))). + local pow2999 = pow30 * pow2998; // pow(trace_generator, (safe_div((safe_mult(64951, global_values.trace_length)), 65536))). + local pow3000 = pow30 * pow2999; // pow(trace_generator, (safe_div((safe_mult(8119, global_values.trace_length)), 8192))). + local pow3001 = pow30 * pow3000; // pow(trace_generator, (safe_div((safe_mult(64953, global_values.trace_length)), 65536))). + local pow3002 = pow30 * pow3001; // pow(trace_generator, (safe_div((safe_mult(32477, global_values.trace_length)), 32768))). + local pow3003 = pow30 * pow3002; // pow(trace_generator, (safe_div((safe_mult(64955, global_values.trace_length)), 65536))). + local pow3004 = pow30 * pow3003; // pow(trace_generator, (safe_div((safe_mult(16239, global_values.trace_length)), 16384))). + local pow3005 = pow30 * pow3004; // pow(trace_generator, (safe_div((safe_mult(64957, global_values.trace_length)), 65536))). + local pow3006 = pow39 * pow3005; // pow(trace_generator, (safe_div((safe_mult(1015, global_values.trace_length)), 1024))). + local pow3007 = pow30 * pow3006; // pow(trace_generator, (safe_div((safe_mult(64961, global_values.trace_length)), 65536))). + local pow3008 = pow30 * pow3007; // pow(trace_generator, (safe_div((safe_mult(32481, global_values.trace_length)), 32768))). + local pow3009 = pow30 * pow3008; // pow(trace_generator, (safe_div((safe_mult(64963, global_values.trace_length)), 65536))). + local pow3010 = pow30 * pow3009; // pow(trace_generator, (safe_div((safe_mult(16241, global_values.trace_length)), 16384))). + local pow3011 = pow30 * pow3010; // pow(trace_generator, (safe_div((safe_mult(64965, global_values.trace_length)), 65536))). + local pow3012 = pow30 * pow3011; // pow(trace_generator, (safe_div((safe_mult(32483, global_values.trace_length)), 32768))). + local pow3013 = pow30 * pow3012; // pow(trace_generator, (safe_div((safe_mult(64967, global_values.trace_length)), 65536))). + local pow3014 = pow30 * pow3013; // pow(trace_generator, (safe_div((safe_mult(8121, global_values.trace_length)), 8192))). + local pow3015 = pow30 * pow3014; // pow(trace_generator, (safe_div((safe_mult(64969, global_values.trace_length)), 65536))). + local pow3016 = pow30 * pow3015; // pow(trace_generator, (safe_div((safe_mult(32485, global_values.trace_length)), 32768))). + local pow3017 = pow30 * pow3016; // pow(trace_generator, (safe_div((safe_mult(64971, global_values.trace_length)), 65536))). + local pow3018 = pow30 * pow3017; // pow(trace_generator, (safe_div((safe_mult(16243, global_values.trace_length)), 16384))). + local pow3019 = pow30 * pow3018; // pow(trace_generator, (safe_div((safe_mult(64973, global_values.trace_length)), 65536))). + local pow3020 = pow30 * pow3019; // pow(trace_generator, (safe_div((safe_mult(32487, global_values.trace_length)), 32768))). + local pow3021 = pow30 * pow3020; // pow(trace_generator, (safe_div((safe_mult(64975, global_values.trace_length)), 65536))). + local pow3022 = pow30 * pow3021; // pow(trace_generator, (safe_div((safe_mult(4061, global_values.trace_length)), 4096))). + local pow3023 = pow30 * pow3022; // pow(trace_generator, (safe_div((safe_mult(64977, global_values.trace_length)), 65536))). + local pow3024 = pow30 * pow3023; // pow(trace_generator, (safe_div((safe_mult(32489, global_values.trace_length)), 32768))). + local pow3025 = pow30 * pow3024; // pow(trace_generator, (safe_div((safe_mult(64979, global_values.trace_length)), 65536))). + local pow3026 = pow30 * pow3025; // pow(trace_generator, (safe_div((safe_mult(16245, global_values.trace_length)), 16384))). + local pow3027 = pow30 * pow3026; // pow(trace_generator, (safe_div((safe_mult(64981, global_values.trace_length)), 65536))). + local pow3028 = pow30 * pow3027; // pow(trace_generator, (safe_div((safe_mult(32491, global_values.trace_length)), 32768))). + local pow3029 = pow30 * pow3028; // pow(trace_generator, (safe_div((safe_mult(64983, global_values.trace_length)), 65536))). + local pow3030 = pow30 * pow3029; // pow(trace_generator, (safe_div((safe_mult(8123, global_values.trace_length)), 8192))). + local pow3031 = pow30 * pow3030; // pow(trace_generator, (safe_div((safe_mult(64985, global_values.trace_length)), 65536))). + local pow3032 = pow30 * pow3031; // pow(trace_generator, (safe_div((safe_mult(32493, global_values.trace_length)), 32768))). + local pow3033 = pow30 * pow3032; // pow(trace_generator, (safe_div((safe_mult(64987, global_values.trace_length)), 65536))). + local pow3034 = pow30 * pow3033; // pow(trace_generator, (safe_div((safe_mult(16247, global_values.trace_length)), 16384))). + local pow3035 = pow30 * pow3034; // pow(trace_generator, (safe_div((safe_mult(64989, global_values.trace_length)), 65536))). + local pow3036 = pow39 * pow3035; // pow(trace_generator, (safe_div((safe_mult(2031, global_values.trace_length)), 2048))). + local pow3037 = pow30 * pow3036; // pow(trace_generator, (safe_div((safe_mult(64993, global_values.trace_length)), 65536))). + local pow3038 = pow30 * pow3037; // pow(trace_generator, (safe_div((safe_mult(32497, global_values.trace_length)), 32768))). + local pow3039 = pow30 * pow3038; // pow(trace_generator, (safe_div((safe_mult(64995, global_values.trace_length)), 65536))). + local pow3040 = pow30 * pow3039; // pow(trace_generator, (safe_div((safe_mult(16249, global_values.trace_length)), 16384))). + local pow3041 = pow30 * pow3040; // pow(trace_generator, (safe_div((safe_mult(64997, global_values.trace_length)), 65536))). + local pow3042 = pow30 * pow3041; // pow(trace_generator, (safe_div((safe_mult(32499, global_values.trace_length)), 32768))). + local pow3043 = pow30 * pow3042; // pow(trace_generator, (safe_div((safe_mult(64999, global_values.trace_length)), 65536))). + local pow3044 = pow30 * pow3043; // pow(trace_generator, (safe_div((safe_mult(8125, global_values.trace_length)), 8192))). + local pow3045 = pow30 * pow3044; // pow(trace_generator, (safe_div((safe_mult(65001, global_values.trace_length)), 65536))). + local pow3046 = pow30 * pow3045; // pow(trace_generator, (safe_div((safe_mult(32501, global_values.trace_length)), 32768))). + local pow3047 = pow30 * pow3046; // pow(trace_generator, (safe_div((safe_mult(65003, global_values.trace_length)), 65536))). + local pow3048 = pow30 * pow3047; // pow(trace_generator, (safe_div((safe_mult(16251, global_values.trace_length)), 16384))). + local pow3049 = pow30 * pow3048; // pow(trace_generator, (safe_div((safe_mult(65005, global_values.trace_length)), 65536))). + local pow3050 = pow30 * pow3049; // pow(trace_generator, (safe_div((safe_mult(32503, global_values.trace_length)), 32768))). + local pow3051 = pow30 * pow3050; // pow(trace_generator, (safe_div((safe_mult(65007, global_values.trace_length)), 65536))). + local pow3052 = pow30 * pow3051; // pow(trace_generator, (safe_div((safe_mult(4063, global_values.trace_length)), 4096))). + local pow3053 = pow30 * pow3052; // pow(trace_generator, (safe_div((safe_mult(65009, global_values.trace_length)), 65536))). + local pow3054 = pow30 * pow3053; // pow(trace_generator, (safe_div((safe_mult(32505, global_values.trace_length)), 32768))). + local pow3055 = pow30 * pow3054; // pow(trace_generator, (safe_div((safe_mult(65011, global_values.trace_length)), 65536))). + local pow3056 = pow30 * pow3055; // pow(trace_generator, (safe_div((safe_mult(16253, global_values.trace_length)), 16384))). + local pow3057 = pow30 * pow3056; // pow(trace_generator, (safe_div((safe_mult(65013, global_values.trace_length)), 65536))). + local pow3058 = pow30 * pow3057; // pow(trace_generator, (safe_div((safe_mult(32507, global_values.trace_length)), 32768))). + local pow3059 = pow30 * pow3058; // pow(trace_generator, (safe_div((safe_mult(65015, global_values.trace_length)), 65536))). + local pow3060 = pow30 * pow3059; // pow(trace_generator, (safe_div((safe_mult(8127, global_values.trace_length)), 8192))). + local pow3061 = pow30 * pow3060; // pow(trace_generator, (safe_div((safe_mult(65017, global_values.trace_length)), 65536))). + local pow3062 = pow30 * pow3061; // pow(trace_generator, (safe_div((safe_mult(32509, global_values.trace_length)), 32768))). + local pow3063 = pow30 * pow3062; // pow(trace_generator, (safe_div((safe_mult(65019, global_values.trace_length)), 65536))). + local pow3064 = pow30 * pow3063; // pow(trace_generator, (safe_div((safe_mult(16255, global_values.trace_length)), 16384))). + local pow3065 = pow30 * pow3064; // pow(trace_generator, (safe_div((safe_mult(65021, global_values.trace_length)), 65536))). + local pow3066 = pow39 * pow3065; // pow(trace_generator, (safe_div((safe_mult(127, global_values.trace_length)), 128))). + local pow3067 = pow30 * pow3066; // pow(trace_generator, (safe_div((safe_mult(65025, global_values.trace_length)), 65536))). + local pow3068 = pow30 * pow3067; // pow(trace_generator, (safe_div((safe_mult(32513, global_values.trace_length)), 32768))). + local pow3069 = pow30 * pow3068; // pow(trace_generator, (safe_div((safe_mult(65027, global_values.trace_length)), 65536))). + local pow3070 = pow30 * pow3069; // pow(trace_generator, (safe_div((safe_mult(16257, global_values.trace_length)), 16384))). + local pow3071 = pow30 * pow3070; // pow(trace_generator, (safe_div((safe_mult(65029, global_values.trace_length)), 65536))). + local pow3072 = pow30 * pow3071; // pow(trace_generator, (safe_div((safe_mult(32515, global_values.trace_length)), 32768))). + local pow3073 = pow30 * pow3072; // pow(trace_generator, (safe_div((safe_mult(65031, global_values.trace_length)), 65536))). + local pow3074 = pow30 * pow3073; // pow(trace_generator, (safe_div((safe_mult(8129, global_values.trace_length)), 8192))). + local pow3075 = pow30 * pow3074; // pow(trace_generator, (safe_div((safe_mult(65033, global_values.trace_length)), 65536))). + local pow3076 = pow30 * pow3075; // pow(trace_generator, (safe_div((safe_mult(32517, global_values.trace_length)), 32768))). + local pow3077 = pow30 * pow3076; // pow(trace_generator, (safe_div((safe_mult(65035, global_values.trace_length)), 65536))). + local pow3078 = pow30 * pow3077; // pow(trace_generator, (safe_div((safe_mult(16259, global_values.trace_length)), 16384))). + local pow3079 = pow30 * pow3078; // pow(trace_generator, (safe_div((safe_mult(65037, global_values.trace_length)), 65536))). + local pow3080 = pow30 * pow3079; // pow(trace_generator, (safe_div((safe_mult(32519, global_values.trace_length)), 32768))). + local pow3081 = pow30 * pow3080; // pow(trace_generator, (safe_div((safe_mult(65039, global_values.trace_length)), 65536))). + local pow3082 = pow30 * pow3081; // pow(trace_generator, (safe_div((safe_mult(4065, global_values.trace_length)), 4096))). + local pow3083 = pow30 * pow3082; // pow(trace_generator, (safe_div((safe_mult(65041, global_values.trace_length)), 65536))). + local pow3084 = pow30 * pow3083; // pow(trace_generator, (safe_div((safe_mult(32521, global_values.trace_length)), 32768))). + local pow3085 = pow30 * pow3084; // pow(trace_generator, (safe_div((safe_mult(65043, global_values.trace_length)), 65536))). + local pow3086 = pow30 * pow3085; // pow(trace_generator, (safe_div((safe_mult(16261, global_values.trace_length)), 16384))). + local pow3087 = pow30 * pow3086; // pow(trace_generator, (safe_div((safe_mult(65045, global_values.trace_length)), 65536))). + local pow3088 = pow30 * pow3087; // pow(trace_generator, (safe_div((safe_mult(32523, global_values.trace_length)), 32768))). + local pow3089 = pow30 * pow3088; // pow(trace_generator, (safe_div((safe_mult(65047, global_values.trace_length)), 65536))). + local pow3090 = pow30 * pow3089; // pow(trace_generator, (safe_div((safe_mult(8131, global_values.trace_length)), 8192))). + local pow3091 = pow30 * pow3090; // pow(trace_generator, (safe_div((safe_mult(65049, global_values.trace_length)), 65536))). + local pow3092 = pow30 * pow3091; // pow(trace_generator, (safe_div((safe_mult(32525, global_values.trace_length)), 32768))). + local pow3093 = pow30 * pow3092; // pow(trace_generator, (safe_div((safe_mult(65051, global_values.trace_length)), 65536))). + local pow3094 = pow30 * pow3093; // pow(trace_generator, (safe_div((safe_mult(16263, global_values.trace_length)), 16384))). + local pow3095 = pow30 * pow3094; // pow(trace_generator, (safe_div((safe_mult(65053, global_values.trace_length)), 65536))). + local pow3096 = pow39 * pow3095; // pow(trace_generator, (safe_div((safe_mult(2033, global_values.trace_length)), 2048))). + local pow3097 = pow30 * pow3096; // pow(trace_generator, (safe_div((safe_mult(65057, global_values.trace_length)), 65536))). + local pow3098 = pow30 * pow3097; // pow(trace_generator, (safe_div((safe_mult(32529, global_values.trace_length)), 32768))). + local pow3099 = pow30 * pow3098; // pow(trace_generator, (safe_div((safe_mult(65059, global_values.trace_length)), 65536))). + local pow3100 = pow30 * pow3099; // pow(trace_generator, (safe_div((safe_mult(16265, global_values.trace_length)), 16384))). + local pow3101 = pow30 * pow3100; // pow(trace_generator, (safe_div((safe_mult(65061, global_values.trace_length)), 65536))). + local pow3102 = pow30 * pow3101; // pow(trace_generator, (safe_div((safe_mult(32531, global_values.trace_length)), 32768))). + local pow3103 = pow30 * pow3102; // pow(trace_generator, (safe_div((safe_mult(65063, global_values.trace_length)), 65536))). + local pow3104 = pow30 * pow3103; // pow(trace_generator, (safe_div((safe_mult(8133, global_values.trace_length)), 8192))). + local pow3105 = pow30 * pow3104; // pow(trace_generator, (safe_div((safe_mult(65065, global_values.trace_length)), 65536))). + local pow3106 = pow30 * pow3105; // pow(trace_generator, (safe_div((safe_mult(32533, global_values.trace_length)), 32768))). + local pow3107 = pow30 * pow3106; // pow(trace_generator, (safe_div((safe_mult(65067, global_values.trace_length)), 65536))). + local pow3108 = pow30 * pow3107; // pow(trace_generator, (safe_div((safe_mult(16267, global_values.trace_length)), 16384))). + local pow3109 = pow30 * pow3108; // pow(trace_generator, (safe_div((safe_mult(65069, global_values.trace_length)), 65536))). + local pow3110 = pow30 * pow3109; // pow(trace_generator, (safe_div((safe_mult(32535, global_values.trace_length)), 32768))). + local pow3111 = pow30 * pow3110; // pow(trace_generator, (safe_div((safe_mult(65071, global_values.trace_length)), 65536))). + local pow3112 = pow30 * pow3111; // pow(trace_generator, (safe_div((safe_mult(4067, global_values.trace_length)), 4096))). + local pow3113 = pow30 * pow3112; // pow(trace_generator, (safe_div((safe_mult(65073, global_values.trace_length)), 65536))). + local pow3114 = pow30 * pow3113; // pow(trace_generator, (safe_div((safe_mult(32537, global_values.trace_length)), 32768))). + local pow3115 = pow30 * pow3114; // pow(trace_generator, (safe_div((safe_mult(65075, global_values.trace_length)), 65536))). + local pow3116 = pow30 * pow3115; // pow(trace_generator, (safe_div((safe_mult(16269, global_values.trace_length)), 16384))). + local pow3117 = pow30 * pow3116; // pow(trace_generator, (safe_div((safe_mult(65077, global_values.trace_length)), 65536))). + local pow3118 = pow30 * pow3117; // pow(trace_generator, (safe_div((safe_mult(32539, global_values.trace_length)), 32768))). + local pow3119 = pow30 * pow3118; // pow(trace_generator, (safe_div((safe_mult(65079, global_values.trace_length)), 65536))). + local pow3120 = pow30 * pow3119; // pow(trace_generator, (safe_div((safe_mult(8135, global_values.trace_length)), 8192))). + local pow3121 = pow30 * pow3120; // pow(trace_generator, (safe_div((safe_mult(65081, global_values.trace_length)), 65536))). + local pow3122 = pow30 * pow3121; // pow(trace_generator, (safe_div((safe_mult(32541, global_values.trace_length)), 32768))). + local pow3123 = pow30 * pow3122; // pow(trace_generator, (safe_div((safe_mult(65083, global_values.trace_length)), 65536))). + local pow3124 = pow30 * pow3123; // pow(trace_generator, (safe_div((safe_mult(16271, global_values.trace_length)), 16384))). + local pow3125 = pow30 * pow3124; // pow(trace_generator, (safe_div((safe_mult(65085, global_values.trace_length)), 65536))). + local pow3126 = pow39 * pow3125; // pow(trace_generator, (safe_div((safe_mult(1017, global_values.trace_length)), 1024))). + local pow3127 = pow30 * pow3126; // pow(trace_generator, (safe_div((safe_mult(65089, global_values.trace_length)), 65536))). + local pow3128 = pow30 * pow3127; // pow(trace_generator, (safe_div((safe_mult(32545, global_values.trace_length)), 32768))). + local pow3129 = pow30 * pow3128; // pow(trace_generator, (safe_div((safe_mult(65091, global_values.trace_length)), 65536))). + local pow3130 = pow30 * pow3129; // pow(trace_generator, (safe_div((safe_mult(16273, global_values.trace_length)), 16384))). + local pow3131 = pow30 * pow3130; // pow(trace_generator, (safe_div((safe_mult(65093, global_values.trace_length)), 65536))). + local pow3132 = pow30 * pow3131; // pow(trace_generator, (safe_div((safe_mult(32547, global_values.trace_length)), 32768))). + local pow3133 = pow30 * pow3132; // pow(trace_generator, (safe_div((safe_mult(65095, global_values.trace_length)), 65536))). + local pow3134 = pow30 * pow3133; // pow(trace_generator, (safe_div((safe_mult(8137, global_values.trace_length)), 8192))). + local pow3135 = pow30 * pow3134; // pow(trace_generator, (safe_div((safe_mult(65097, global_values.trace_length)), 65536))). + local pow3136 = pow30 * pow3135; // pow(trace_generator, (safe_div((safe_mult(32549, global_values.trace_length)), 32768))). + local pow3137 = pow30 * pow3136; // pow(trace_generator, (safe_div((safe_mult(65099, global_values.trace_length)), 65536))). + local pow3138 = pow30 * pow3137; // pow(trace_generator, (safe_div((safe_mult(16275, global_values.trace_length)), 16384))). + local pow3139 = pow30 * pow3138; // pow(trace_generator, (safe_div((safe_mult(65101, global_values.trace_length)), 65536))). + local pow3140 = pow30 * pow3139; // pow(trace_generator, (safe_div((safe_mult(32551, global_values.trace_length)), 32768))). + local pow3141 = pow30 * pow3140; // pow(trace_generator, (safe_div((safe_mult(65103, global_values.trace_length)), 65536))). + local pow3142 = pow30 * pow3141; // pow(trace_generator, (safe_div((safe_mult(4069, global_values.trace_length)), 4096))). + local pow3143 = pow30 * pow3142; // pow(trace_generator, (safe_div((safe_mult(65105, global_values.trace_length)), 65536))). + local pow3144 = pow30 * pow3143; // pow(trace_generator, (safe_div((safe_mult(32553, global_values.trace_length)), 32768))). + local pow3145 = pow30 * pow3144; // pow(trace_generator, (safe_div((safe_mult(65107, global_values.trace_length)), 65536))). + local pow3146 = pow30 * pow3145; // pow(trace_generator, (safe_div((safe_mult(16277, global_values.trace_length)), 16384))). + local pow3147 = pow30 * pow3146; // pow(trace_generator, (safe_div((safe_mult(65109, global_values.trace_length)), 65536))). + local pow3148 = pow30 * pow3147; // pow(trace_generator, (safe_div((safe_mult(32555, global_values.trace_length)), 32768))). + local pow3149 = pow30 * pow3148; // pow(trace_generator, (safe_div((safe_mult(65111, global_values.trace_length)), 65536))). + local pow3150 = pow30 * pow3149; // pow(trace_generator, (safe_div((safe_mult(8139, global_values.trace_length)), 8192))). + local pow3151 = pow30 * pow3150; // pow(trace_generator, (safe_div((safe_mult(65113, global_values.trace_length)), 65536))). + local pow3152 = pow30 * pow3151; // pow(trace_generator, (safe_div((safe_mult(32557, global_values.trace_length)), 32768))). + local pow3153 = pow30 * pow3152; // pow(trace_generator, (safe_div((safe_mult(65115, global_values.trace_length)), 65536))). + local pow3154 = pow30 * pow3153; // pow(trace_generator, (safe_div((safe_mult(16279, global_values.trace_length)), 16384))). + local pow3155 = pow30 * pow3154; // pow(trace_generator, (safe_div((safe_mult(65117, global_values.trace_length)), 65536))). + local pow3156 = pow39 * pow3155; // pow(trace_generator, (safe_div((safe_mult(2035, global_values.trace_length)), 2048))). + local pow3157 = pow30 * pow3156; // pow(trace_generator, (safe_div((safe_mult(65121, global_values.trace_length)), 65536))). + local pow3158 = pow30 * pow3157; // pow(trace_generator, (safe_div((safe_mult(32561, global_values.trace_length)), 32768))). + local pow3159 = pow30 * pow3158; // pow(trace_generator, (safe_div((safe_mult(65123, global_values.trace_length)), 65536))). + local pow3160 = pow30 * pow3159; // pow(trace_generator, (safe_div((safe_mult(16281, global_values.trace_length)), 16384))). + local pow3161 = pow30 * pow3160; // pow(trace_generator, (safe_div((safe_mult(65125, global_values.trace_length)), 65536))). + local pow3162 = pow30 * pow3161; // pow(trace_generator, (safe_div((safe_mult(32563, global_values.trace_length)), 32768))). + local pow3163 = pow30 * pow3162; // pow(trace_generator, (safe_div((safe_mult(65127, global_values.trace_length)), 65536))). + local pow3164 = pow30 * pow3163; // pow(trace_generator, (safe_div((safe_mult(8141, global_values.trace_length)), 8192))). + local pow3165 = pow30 * pow3164; // pow(trace_generator, (safe_div((safe_mult(65129, global_values.trace_length)), 65536))). + local pow3166 = pow30 * pow3165; // pow(trace_generator, (safe_div((safe_mult(32565, global_values.trace_length)), 32768))). + local pow3167 = pow30 * pow3166; // pow(trace_generator, (safe_div((safe_mult(65131, global_values.trace_length)), 65536))). + local pow3168 = pow30 * pow3167; // pow(trace_generator, (safe_div((safe_mult(16283, global_values.trace_length)), 16384))). + local pow3169 = pow30 * pow3168; // pow(trace_generator, (safe_div((safe_mult(65133, global_values.trace_length)), 65536))). + local pow3170 = pow30 * pow3169; // pow(trace_generator, (safe_div((safe_mult(32567, global_values.trace_length)), 32768))). + local pow3171 = pow30 * pow3170; // pow(trace_generator, (safe_div((safe_mult(65135, global_values.trace_length)), 65536))). + local pow3172 = pow30 * pow3171; // pow(trace_generator, (safe_div((safe_mult(4071, global_values.trace_length)), 4096))). + local pow3173 = pow30 * pow3172; // pow(trace_generator, (safe_div((safe_mult(65137, global_values.trace_length)), 65536))). + local pow3174 = pow30 * pow3173; // pow(trace_generator, (safe_div((safe_mult(32569, global_values.trace_length)), 32768))). + local pow3175 = pow30 * pow3174; // pow(trace_generator, (safe_div((safe_mult(65139, global_values.trace_length)), 65536))). + local pow3176 = pow30 * pow3175; // pow(trace_generator, (safe_div((safe_mult(16285, global_values.trace_length)), 16384))). + local pow3177 = pow30 * pow3176; // pow(trace_generator, (safe_div((safe_mult(65141, global_values.trace_length)), 65536))). + local pow3178 = pow30 * pow3177; // pow(trace_generator, (safe_div((safe_mult(32571, global_values.trace_length)), 32768))). + local pow3179 = pow30 * pow3178; // pow(trace_generator, (safe_div((safe_mult(65143, global_values.trace_length)), 65536))). + local pow3180 = pow30 * pow3179; // pow(trace_generator, (safe_div((safe_mult(8143, global_values.trace_length)), 8192))). + local pow3181 = pow30 * pow3180; // pow(trace_generator, (safe_div((safe_mult(65145, global_values.trace_length)), 65536))). + local pow3182 = pow30 * pow3181; // pow(trace_generator, (safe_div((safe_mult(32573, global_values.trace_length)), 32768))). + local pow3183 = pow30 * pow3182; // pow(trace_generator, (safe_div((safe_mult(65147, global_values.trace_length)), 65536))). + local pow3184 = pow30 * pow3183; // pow(trace_generator, (safe_div((safe_mult(16287, global_values.trace_length)), 16384))). + local pow3185 = pow30 * pow3184; // pow(trace_generator, (safe_div((safe_mult(65149, global_values.trace_length)), 65536))). + local pow3186 = pow39 * pow3185; // pow(trace_generator, (safe_div((safe_mult(509, global_values.trace_length)), 512))). + local pow3187 = pow30 * pow3186; // pow(trace_generator, (safe_div((safe_mult(65153, global_values.trace_length)), 65536))). + local pow3188 = pow30 * pow3187; // pow(trace_generator, (safe_div((safe_mult(32577, global_values.trace_length)), 32768))). + local pow3189 = pow30 * pow3188; // pow(trace_generator, (safe_div((safe_mult(65155, global_values.trace_length)), 65536))). + local pow3190 = pow30 * pow3189; // pow(trace_generator, (safe_div((safe_mult(16289, global_values.trace_length)), 16384))). + local pow3191 = pow30 * pow3190; // pow(trace_generator, (safe_div((safe_mult(65157, global_values.trace_length)), 65536))). + local pow3192 = pow30 * pow3191; // pow(trace_generator, (safe_div((safe_mult(32579, global_values.trace_length)), 32768))). + local pow3193 = pow30 * pow3192; // pow(trace_generator, (safe_div((safe_mult(65159, global_values.trace_length)), 65536))). + local pow3194 = pow30 * pow3193; // pow(trace_generator, (safe_div((safe_mult(8145, global_values.trace_length)), 8192))). + local pow3195 = pow30 * pow3194; // pow(trace_generator, (safe_div((safe_mult(65161, global_values.trace_length)), 65536))). + local pow3196 = pow30 * pow3195; // pow(trace_generator, (safe_div((safe_mult(32581, global_values.trace_length)), 32768))). + local pow3197 = pow30 * pow3196; // pow(trace_generator, (safe_div((safe_mult(65163, global_values.trace_length)), 65536))). + local pow3198 = pow30 * pow3197; // pow(trace_generator, (safe_div((safe_mult(16291, global_values.trace_length)), 16384))). + local pow3199 = pow30 * pow3198; // pow(trace_generator, (safe_div((safe_mult(65165, global_values.trace_length)), 65536))). + local pow3200 = pow30 * pow3199; // pow(trace_generator, (safe_div((safe_mult(32583, global_values.trace_length)), 32768))). + local pow3201 = pow30 * pow3200; // pow(trace_generator, (safe_div((safe_mult(65167, global_values.trace_length)), 65536))). + local pow3202 = pow30 * pow3201; // pow(trace_generator, (safe_div((safe_mult(4073, global_values.trace_length)), 4096))). + local pow3203 = pow30 * pow3202; // pow(trace_generator, (safe_div((safe_mult(65169, global_values.trace_length)), 65536))). + local pow3204 = pow30 * pow3203; // pow(trace_generator, (safe_div((safe_mult(32585, global_values.trace_length)), 32768))). + local pow3205 = pow30 * pow3204; // pow(trace_generator, (safe_div((safe_mult(65171, global_values.trace_length)), 65536))). + local pow3206 = pow30 * pow3205; // pow(trace_generator, (safe_div((safe_mult(16293, global_values.trace_length)), 16384))). + local pow3207 = pow30 * pow3206; // pow(trace_generator, (safe_div((safe_mult(65173, global_values.trace_length)), 65536))). + local pow3208 = pow30 * pow3207; // pow(trace_generator, (safe_div((safe_mult(32587, global_values.trace_length)), 32768))). + local pow3209 = pow30 * pow3208; // pow(trace_generator, (safe_div((safe_mult(65175, global_values.trace_length)), 65536))). + local pow3210 = pow30 * pow3209; // pow(trace_generator, (safe_div((safe_mult(8147, global_values.trace_length)), 8192))). + local pow3211 = pow30 * pow3210; // pow(trace_generator, (safe_div((safe_mult(65177, global_values.trace_length)), 65536))). + local pow3212 = pow30 * pow3211; // pow(trace_generator, (safe_div((safe_mult(32589, global_values.trace_length)), 32768))). + local pow3213 = pow30 * pow3212; // pow(trace_generator, (safe_div((safe_mult(65179, global_values.trace_length)), 65536))). + local pow3214 = pow30 * pow3213; // pow(trace_generator, (safe_div((safe_mult(16295, global_values.trace_length)), 16384))). + local pow3215 = pow30 * pow3214; // pow(trace_generator, (safe_div((safe_mult(65181, global_values.trace_length)), 65536))). + local pow3216 = pow39 * pow3215; // pow(trace_generator, (safe_div((safe_mult(2037, global_values.trace_length)), 2048))). + local pow3217 = pow30 * pow3216; // pow(trace_generator, (safe_div((safe_mult(65185, global_values.trace_length)), 65536))). + local pow3218 = pow30 * pow3217; // pow(trace_generator, (safe_div((safe_mult(32593, global_values.trace_length)), 32768))). + local pow3219 = pow30 * pow3218; // pow(trace_generator, (safe_div((safe_mult(65187, global_values.trace_length)), 65536))). + local pow3220 = pow30 * pow3219; // pow(trace_generator, (safe_div((safe_mult(16297, global_values.trace_length)), 16384))). + local pow3221 = pow30 * pow3220; // pow(trace_generator, (safe_div((safe_mult(65189, global_values.trace_length)), 65536))). + local pow3222 = pow30 * pow3221; // pow(trace_generator, (safe_div((safe_mult(32595, global_values.trace_length)), 32768))). + local pow3223 = pow30 * pow3222; // pow(trace_generator, (safe_div((safe_mult(65191, global_values.trace_length)), 65536))). + local pow3224 = pow30 * pow3223; // pow(trace_generator, (safe_div((safe_mult(8149, global_values.trace_length)), 8192))). + local pow3225 = pow30 * pow3224; // pow(trace_generator, (safe_div((safe_mult(65193, global_values.trace_length)), 65536))). + local pow3226 = pow30 * pow3225; // pow(trace_generator, (safe_div((safe_mult(32597, global_values.trace_length)), 32768))). + local pow3227 = pow30 * pow3226; // pow(trace_generator, (safe_div((safe_mult(65195, global_values.trace_length)), 65536))). + local pow3228 = pow30 * pow3227; // pow(trace_generator, (safe_div((safe_mult(16299, global_values.trace_length)), 16384))). + local pow3229 = pow30 * pow3228; // pow(trace_generator, (safe_div((safe_mult(65197, global_values.trace_length)), 65536))). + local pow3230 = pow30 * pow3229; // pow(trace_generator, (safe_div((safe_mult(32599, global_values.trace_length)), 32768))). + local pow3231 = pow30 * pow3230; // pow(trace_generator, (safe_div((safe_mult(65199, global_values.trace_length)), 65536))). + local pow3232 = pow30 * pow3231; // pow(trace_generator, (safe_div((safe_mult(4075, global_values.trace_length)), 4096))). + local pow3233 = pow30 * pow3232; // pow(trace_generator, (safe_div((safe_mult(65201, global_values.trace_length)), 65536))). + local pow3234 = pow30 * pow3233; // pow(trace_generator, (safe_div((safe_mult(32601, global_values.trace_length)), 32768))). + local pow3235 = pow30 * pow3234; // pow(trace_generator, (safe_div((safe_mult(65203, global_values.trace_length)), 65536))). + local pow3236 = pow30 * pow3235; // pow(trace_generator, (safe_div((safe_mult(16301, global_values.trace_length)), 16384))). + local pow3237 = pow30 * pow3236; // pow(trace_generator, (safe_div((safe_mult(65205, global_values.trace_length)), 65536))). + local pow3238 = pow30 * pow3237; // pow(trace_generator, (safe_div((safe_mult(32603, global_values.trace_length)), 32768))). + local pow3239 = pow30 * pow3238; // pow(trace_generator, (safe_div((safe_mult(65207, global_values.trace_length)), 65536))). + local pow3240 = pow30 * pow3239; // pow(trace_generator, (safe_div((safe_mult(8151, global_values.trace_length)), 8192))). + local pow3241 = pow30 * pow3240; // pow(trace_generator, (safe_div((safe_mult(65209, global_values.trace_length)), 65536))). + local pow3242 = pow30 * pow3241; // pow(trace_generator, (safe_div((safe_mult(32605, global_values.trace_length)), 32768))). + local pow3243 = pow30 * pow3242; // pow(trace_generator, (safe_div((safe_mult(65211, global_values.trace_length)), 65536))). + local pow3244 = pow30 * pow3243; // pow(trace_generator, (safe_div((safe_mult(16303, global_values.trace_length)), 16384))). + local pow3245 = pow30 * pow3244; // pow(trace_generator, (safe_div((safe_mult(65213, global_values.trace_length)), 65536))). + local pow3246 = pow39 * pow3245; // pow(trace_generator, (safe_div((safe_mult(1019, global_values.trace_length)), 1024))). + local pow3247 = pow30 * pow3246; // pow(trace_generator, (safe_div((safe_mult(65217, global_values.trace_length)), 65536))). + local pow3248 = pow30 * pow3247; // pow(trace_generator, (safe_div((safe_mult(32609, global_values.trace_length)), 32768))). + local pow3249 = pow30 * pow3248; // pow(trace_generator, (safe_div((safe_mult(65219, global_values.trace_length)), 65536))). + local pow3250 = pow30 * pow3249; // pow(trace_generator, (safe_div((safe_mult(16305, global_values.trace_length)), 16384))). + local pow3251 = pow30 * pow3250; // pow(trace_generator, (safe_div((safe_mult(65221, global_values.trace_length)), 65536))). + local pow3252 = pow30 * pow3251; // pow(trace_generator, (safe_div((safe_mult(32611, global_values.trace_length)), 32768))). + local pow3253 = pow30 * pow3252; // pow(trace_generator, (safe_div((safe_mult(65223, global_values.trace_length)), 65536))). + local pow3254 = pow30 * pow3253; // pow(trace_generator, (safe_div((safe_mult(8153, global_values.trace_length)), 8192))). + local pow3255 = pow30 * pow3254; // pow(trace_generator, (safe_div((safe_mult(65225, global_values.trace_length)), 65536))). + local pow3256 = pow30 * pow3255; // pow(trace_generator, (safe_div((safe_mult(32613, global_values.trace_length)), 32768))). + local pow3257 = pow30 * pow3256; // pow(trace_generator, (safe_div((safe_mult(65227, global_values.trace_length)), 65536))). + local pow3258 = pow30 * pow3257; // pow(trace_generator, (safe_div((safe_mult(16307, global_values.trace_length)), 16384))). + local pow3259 = pow30 * pow3258; // pow(trace_generator, (safe_div((safe_mult(65229, global_values.trace_length)), 65536))). + local pow3260 = pow30 * pow3259; // pow(trace_generator, (safe_div((safe_mult(32615, global_values.trace_length)), 32768))). + local pow3261 = pow30 * pow3260; // pow(trace_generator, (safe_div((safe_mult(65231, global_values.trace_length)), 65536))). + local pow3262 = pow30 * pow3261; // pow(trace_generator, (safe_div((safe_mult(4077, global_values.trace_length)), 4096))). + local pow3263 = pow30 * pow3262; // pow(trace_generator, (safe_div((safe_mult(65233, global_values.trace_length)), 65536))). + local pow3264 = pow30 * pow3263; // pow(trace_generator, (safe_div((safe_mult(32617, global_values.trace_length)), 32768))). + local pow3265 = pow30 * pow3264; // pow(trace_generator, (safe_div((safe_mult(65235, global_values.trace_length)), 65536))). + local pow3266 = pow30 * pow3265; // pow(trace_generator, (safe_div((safe_mult(16309, global_values.trace_length)), 16384))). + local pow3267 = pow30 * pow3266; // pow(trace_generator, (safe_div((safe_mult(65237, global_values.trace_length)), 65536))). + local pow3268 = pow30 * pow3267; // pow(trace_generator, (safe_div((safe_mult(32619, global_values.trace_length)), 32768))). + local pow3269 = pow30 * pow3268; // pow(trace_generator, (safe_div((safe_mult(65239, global_values.trace_length)), 65536))). + local pow3270 = pow30 * pow3269; // pow(trace_generator, (safe_div((safe_mult(8155, global_values.trace_length)), 8192))). + local pow3271 = pow30 * pow3270; // pow(trace_generator, (safe_div((safe_mult(65241, global_values.trace_length)), 65536))). + local pow3272 = pow30 * pow3271; // pow(trace_generator, (safe_div((safe_mult(32621, global_values.trace_length)), 32768))). + local pow3273 = pow30 * pow3272; // pow(trace_generator, (safe_div((safe_mult(65243, global_values.trace_length)), 65536))). + local pow3274 = pow30 * pow3273; // pow(trace_generator, (safe_div((safe_mult(16311, global_values.trace_length)), 16384))). + local pow3275 = pow30 * pow3274; // pow(trace_generator, (safe_div((safe_mult(65245, global_values.trace_length)), 65536))). + local pow3276 = pow39 * pow3275; // pow(trace_generator, (safe_div((safe_mult(2039, global_values.trace_length)), 2048))). + local pow3277 = pow30 * pow3276; // pow(trace_generator, (safe_div((safe_mult(65249, global_values.trace_length)), 65536))). + local pow3278 = pow30 * pow3277; // pow(trace_generator, (safe_div((safe_mult(32625, global_values.trace_length)), 32768))). + local pow3279 = pow30 * pow3278; // pow(trace_generator, (safe_div((safe_mult(65251, global_values.trace_length)), 65536))). + local pow3280 = pow30 * pow3279; // pow(trace_generator, (safe_div((safe_mult(16313, global_values.trace_length)), 16384))). + local pow3281 = pow30 * pow3280; // pow(trace_generator, (safe_div((safe_mult(65253, global_values.trace_length)), 65536))). + local pow3282 = pow30 * pow3281; // pow(trace_generator, (safe_div((safe_mult(32627, global_values.trace_length)), 32768))). + local pow3283 = pow30 * pow3282; // pow(trace_generator, (safe_div((safe_mult(65255, global_values.trace_length)), 65536))). + local pow3284 = pow30 * pow3283; // pow(trace_generator, (safe_div((safe_mult(8157, global_values.trace_length)), 8192))). + local pow3285 = pow30 * pow3284; // pow(trace_generator, (safe_div((safe_mult(65257, global_values.trace_length)), 65536))). + local pow3286 = pow30 * pow3285; // pow(trace_generator, (safe_div((safe_mult(32629, global_values.trace_length)), 32768))). + local pow3287 = pow30 * pow3286; // pow(trace_generator, (safe_div((safe_mult(65259, global_values.trace_length)), 65536))). + local pow3288 = pow30 * pow3287; // pow(trace_generator, (safe_div((safe_mult(16315, global_values.trace_length)), 16384))). + local pow3289 = pow30 * pow3288; // pow(trace_generator, (safe_div((safe_mult(65261, global_values.trace_length)), 65536))). + local pow3290 = pow30 * pow3289; // pow(trace_generator, (safe_div((safe_mult(32631, global_values.trace_length)), 32768))). + local pow3291 = pow30 * pow3290; // pow(trace_generator, (safe_div((safe_mult(65263, global_values.trace_length)), 65536))). + local pow3292 = pow30 * pow3291; // pow(trace_generator, (safe_div((safe_mult(4079, global_values.trace_length)), 4096))). + local pow3293 = pow30 * pow3292; // pow(trace_generator, (safe_div((safe_mult(65265, global_values.trace_length)), 65536))). + local pow3294 = pow30 * pow3293; // pow(trace_generator, (safe_div((safe_mult(32633, global_values.trace_length)), 32768))). + local pow3295 = pow30 * pow3294; // pow(trace_generator, (safe_div((safe_mult(65267, global_values.trace_length)), 65536))). + local pow3296 = pow30 * pow3295; // pow(trace_generator, (safe_div((safe_mult(16317, global_values.trace_length)), 16384))). + local pow3297 = pow30 * pow3296; // pow(trace_generator, (safe_div((safe_mult(65269, global_values.trace_length)), 65536))). + local pow3298 = pow30 * pow3297; // pow(trace_generator, (safe_div((safe_mult(32635, global_values.trace_length)), 32768))). + local pow3299 = pow30 * pow3298; // pow(trace_generator, (safe_div((safe_mult(65271, global_values.trace_length)), 65536))). + local pow3300 = pow30 * pow3299; // pow(trace_generator, (safe_div((safe_mult(8159, global_values.trace_length)), 8192))). + local pow3301 = pow30 * pow3300; // pow(trace_generator, (safe_div((safe_mult(65273, global_values.trace_length)), 65536))). + local pow3302 = pow30 * pow3301; // pow(trace_generator, (safe_div((safe_mult(32637, global_values.trace_length)), 32768))). + local pow3303 = pow30 * pow3302; // pow(trace_generator, (safe_div((safe_mult(65275, global_values.trace_length)), 65536))). + local pow3304 = pow30 * pow3303; // pow(trace_generator, (safe_div((safe_mult(16319, global_values.trace_length)), 16384))). + local pow3305 = pow30 * pow3304; // pow(trace_generator, (safe_div((safe_mult(65277, global_values.trace_length)), 65536))). + local pow3306 = pow39 * pow3305; // pow(trace_generator, (safe_div((safe_mult(255, global_values.trace_length)), 256))). + local pow3307 = pow30 * pow3306; // pow(trace_generator, (safe_div((safe_mult(65281, global_values.trace_length)), 65536))). + local pow3308 = pow30 * pow3307; // pow(trace_generator, (safe_div((safe_mult(32641, global_values.trace_length)), 32768))). + local pow3309 = pow30 * pow3308; // pow(trace_generator, (safe_div((safe_mult(65283, global_values.trace_length)), 65536))). + local pow3310 = pow30 * pow3309; // pow(trace_generator, (safe_div((safe_mult(16321, global_values.trace_length)), 16384))). + local pow3311 = pow30 * pow3310; // pow(trace_generator, (safe_div((safe_mult(65285, global_values.trace_length)), 65536))). + local pow3312 = pow30 * pow3311; // pow(trace_generator, (safe_div((safe_mult(32643, global_values.trace_length)), 32768))). + local pow3313 = pow30 * pow3312; // pow(trace_generator, (safe_div((safe_mult(65287, global_values.trace_length)), 65536))). + local pow3314 = pow30 * pow3313; // pow(trace_generator, (safe_div((safe_mult(8161, global_values.trace_length)), 8192))). + local pow3315 = pow30 * pow3314; // pow(trace_generator, (safe_div((safe_mult(65289, global_values.trace_length)), 65536))). + local pow3316 = pow30 * pow3315; // pow(trace_generator, (safe_div((safe_mult(32645, global_values.trace_length)), 32768))). + local pow3317 = pow30 * pow3316; // pow(trace_generator, (safe_div((safe_mult(65291, global_values.trace_length)), 65536))). + local pow3318 = pow30 * pow3317; // pow(trace_generator, (safe_div((safe_mult(16323, global_values.trace_length)), 16384))). + local pow3319 = pow30 * pow3318; // pow(trace_generator, (safe_div((safe_mult(65293, global_values.trace_length)), 65536))). + local pow3320 = pow30 * pow3319; // pow(trace_generator, (safe_div((safe_mult(32647, global_values.trace_length)), 32768))). + local pow3321 = pow30 * pow3320; // pow(trace_generator, (safe_div((safe_mult(65295, global_values.trace_length)), 65536))). + local pow3322 = pow30 * pow3321; // pow(trace_generator, (safe_div((safe_mult(4081, global_values.trace_length)), 4096))). + local pow3323 = pow30 * pow3322; // pow(trace_generator, (safe_div((safe_mult(65297, global_values.trace_length)), 65536))). + local pow3324 = pow30 * pow3323; // pow(trace_generator, (safe_div((safe_mult(32649, global_values.trace_length)), 32768))). + local pow3325 = pow30 * pow3324; // pow(trace_generator, (safe_div((safe_mult(65299, global_values.trace_length)), 65536))). + local pow3326 = pow30 * pow3325; // pow(trace_generator, (safe_div((safe_mult(16325, global_values.trace_length)), 16384))). + local pow3327 = pow30 * pow3326; // pow(trace_generator, (safe_div((safe_mult(65301, global_values.trace_length)), 65536))). + local pow3328 = pow30 * pow3327; // pow(trace_generator, (safe_div((safe_mult(32651, global_values.trace_length)), 32768))). + local pow3329 = pow30 * pow3328; // pow(trace_generator, (safe_div((safe_mult(65303, global_values.trace_length)), 65536))). + local pow3330 = pow30 * pow3329; // pow(trace_generator, (safe_div((safe_mult(8163, global_values.trace_length)), 8192))). + local pow3331 = pow30 * pow3330; // pow(trace_generator, (safe_div((safe_mult(65305, global_values.trace_length)), 65536))). + local pow3332 = pow30 * pow3331; // pow(trace_generator, (safe_div((safe_mult(32653, global_values.trace_length)), 32768))). + local pow3333 = pow30 * pow3332; // pow(trace_generator, (safe_div((safe_mult(65307, global_values.trace_length)), 65536))). + local pow3334 = pow30 * pow3333; // pow(trace_generator, (safe_div((safe_mult(16327, global_values.trace_length)), 16384))). + local pow3335 = pow30 * pow3334; // pow(trace_generator, (safe_div((safe_mult(65309, global_values.trace_length)), 65536))). + local pow3336 = pow39 * pow3335; // pow(trace_generator, (safe_div((safe_mult(2041, global_values.trace_length)), 2048))). + local pow3337 = pow30 * pow3336; // pow(trace_generator, (safe_div((safe_mult(65313, global_values.trace_length)), 65536))). + local pow3338 = pow30 * pow3337; // pow(trace_generator, (safe_div((safe_mult(32657, global_values.trace_length)), 32768))). + local pow3339 = pow30 * pow3338; // pow(trace_generator, (safe_div((safe_mult(65315, global_values.trace_length)), 65536))). + local pow3340 = pow30 * pow3339; // pow(trace_generator, (safe_div((safe_mult(16329, global_values.trace_length)), 16384))). + local pow3341 = pow30 * pow3340; // pow(trace_generator, (safe_div((safe_mult(65317, global_values.trace_length)), 65536))). + local pow3342 = pow30 * pow3341; // pow(trace_generator, (safe_div((safe_mult(32659, global_values.trace_length)), 32768))). + local pow3343 = pow30 * pow3342; // pow(trace_generator, (safe_div((safe_mult(65319, global_values.trace_length)), 65536))). + local pow3344 = pow30 * pow3343; // pow(trace_generator, (safe_div((safe_mult(8165, global_values.trace_length)), 8192))). + local pow3345 = pow30 * pow3344; // pow(trace_generator, (safe_div((safe_mult(65321, global_values.trace_length)), 65536))). + local pow3346 = pow30 * pow3345; // pow(trace_generator, (safe_div((safe_mult(32661, global_values.trace_length)), 32768))). + local pow3347 = pow30 * pow3346; // pow(trace_generator, (safe_div((safe_mult(65323, global_values.trace_length)), 65536))). + local pow3348 = pow30 * pow3347; // pow(trace_generator, (safe_div((safe_mult(16331, global_values.trace_length)), 16384))). + local pow3349 = pow30 * pow3348; // pow(trace_generator, (safe_div((safe_mult(65325, global_values.trace_length)), 65536))). + local pow3350 = pow30 * pow3349; // pow(trace_generator, (safe_div((safe_mult(32663, global_values.trace_length)), 32768))). + local pow3351 = pow30 * pow3350; // pow(trace_generator, (safe_div((safe_mult(65327, global_values.trace_length)), 65536))). + local pow3352 = pow30 * pow3351; // pow(trace_generator, (safe_div((safe_mult(4083, global_values.trace_length)), 4096))). + local pow3353 = pow30 * pow3352; // pow(trace_generator, (safe_div((safe_mult(65329, global_values.trace_length)), 65536))). + local pow3354 = pow30 * pow3353; // pow(trace_generator, (safe_div((safe_mult(32665, global_values.trace_length)), 32768))). + local pow3355 = pow30 * pow3354; // pow(trace_generator, (safe_div((safe_mult(65331, global_values.trace_length)), 65536))). + local pow3356 = pow30 * pow3355; // pow(trace_generator, (safe_div((safe_mult(16333, global_values.trace_length)), 16384))). + local pow3357 = pow30 * pow3356; // pow(trace_generator, (safe_div((safe_mult(65333, global_values.trace_length)), 65536))). + local pow3358 = pow30 * pow3357; // pow(trace_generator, (safe_div((safe_mult(32667, global_values.trace_length)), 32768))). + local pow3359 = pow30 * pow3358; // pow(trace_generator, (safe_div((safe_mult(65335, global_values.trace_length)), 65536))). + local pow3360 = pow30 * pow3359; // pow(trace_generator, (safe_div((safe_mult(8167, global_values.trace_length)), 8192))). + local pow3361 = pow30 * pow3360; // pow(trace_generator, (safe_div((safe_mult(65337, global_values.trace_length)), 65536))). + local pow3362 = pow30 * pow3361; // pow(trace_generator, (safe_div((safe_mult(32669, global_values.trace_length)), 32768))). + local pow3363 = pow30 * pow3362; // pow(trace_generator, (safe_div((safe_mult(65339, global_values.trace_length)), 65536))). + local pow3364 = pow30 * pow3363; // pow(trace_generator, (safe_div((safe_mult(16335, global_values.trace_length)), 16384))). + local pow3365 = pow30 * pow3364; // pow(trace_generator, (safe_div((safe_mult(65341, global_values.trace_length)), 65536))). + local pow3366 = pow39 * pow3365; // pow(trace_generator, (safe_div((safe_mult(1021, global_values.trace_length)), 1024))). // Compute domains. - tempvar domain0 = pow14 - 1; - tempvar domain1 = pow13 - 1; - tempvar domain2 = pow12 - 1; - tempvar domain3 = pow11 - 1; - tempvar domain4 = pow10 - pow2473; - tempvar domain5 = pow10 - 1; - tempvar domain6 = pow9 - 1; - tempvar domain7 = pow8 - 1; - tempvar domain8 = pow7 - pow2073; - tempvar domain9 = pow7 - 1; - tempvar temp = pow7 - pow824; + tempvar domain0 = pow13 - 1; + tempvar domain1 = pow12 - 1; + tempvar domain2 = pow11 - 1; + tempvar domain3 = pow10 - pow2471; + tempvar domain4 = pow10 - 1; + tempvar domain5 = pow9 - 1; + tempvar domain6 = pow8 - 1; + tempvar domain7 = pow7 - pow2071; + tempvar domain8 = pow7 - 1; + tempvar temp = pow7 - pow822; + tempvar domain9 = temp * (domain8); + tempvar temp = pow7 - pow791; + tempvar temp = temp * (pow7 - pow861); + tempvar temp = temp * (pow7 - pow892); + tempvar temp = temp * (pow7 - pow931); + tempvar temp = temp * (pow7 - pow962); + tempvar temp = temp * (pow7 - pow986); + tempvar temp = temp * (pow7 - pow1010); + tempvar temp = temp * (pow7 - pow1034); + tempvar temp = temp * (pow7 - pow1058); + tempvar temp = temp * (pow7 - pow1097); + tempvar temp = temp * (pow7 - pow1128); + tempvar temp = temp * (pow7 - pow1167); + tempvar temp = temp * (pow7 - pow1198); + tempvar temp = temp * (pow7 - pow1237); tempvar domain10 = temp * (domain9); - tempvar temp = pow7 - pow793; - tempvar temp = temp * (pow7 - pow863); - tempvar temp = temp * (pow7 - pow894); - tempvar temp = temp * (pow7 - pow933); - tempvar temp = temp * (pow7 - pow964); - tempvar temp = temp * (pow7 - pow988); - tempvar temp = temp * (pow7 - pow1012); - tempvar temp = temp * (pow7 - pow1036); - tempvar temp = temp * (pow7 - pow1060); - tempvar temp = temp * (pow7 - pow1099); - tempvar temp = temp * (pow7 - pow1130); - tempvar temp = temp * (pow7 - pow1169); - tempvar temp = temp * (pow7 - pow1200); - tempvar temp = temp * (pow7 - pow1239); - tempvar domain11 = temp * (domain10); - tempvar domain12 = pow6 - 1; - tempvar domain13 = pow5 - 1; - tempvar domain14 = pow5 - pow3308; - tempvar domain15 = pow5 - pow2588; - tempvar domain16 = pow5 - pow2073; - tempvar domain17 = pow4 - pow1671; - tempvar domain18 = pow4 - 1; - tempvar domain19 = pow4 - pow2549; - tempvar temp = pow4 - pow1955; - tempvar temp = temp * (pow4 - pow2025); - tempvar temp = temp * (pow4 - pow2073); - tempvar temp = temp * (pow4 - pow2121); - tempvar temp = temp * (pow4 - pow2169); - tempvar temp = temp * (pow4 - pow2245); - tempvar temp = temp * (pow4 - pow2321); - tempvar temp = temp * (pow4 - pow2397); - tempvar temp = temp * (pow4 - pow2473); - tempvar domain20 = temp * (domain19); - tempvar temp = pow4 - pow2512; - tempvar temp = temp * (pow4 - pow2588); + tempvar domain11 = pow6 - 1; + tempvar domain12 = pow5 - 1; + tempvar domain13 = pow5 - pow3306; + tempvar domain14 = pow5 - pow2586; + tempvar domain15 = pow5 - pow2071; + tempvar domain16 = pow4 - pow1669; + tempvar domain17 = pow4 - 1; + tempvar domain18 = pow4 - pow2547; + tempvar temp = pow4 - pow1953; + tempvar temp = temp * (pow4 - pow2023); + tempvar temp = temp * (pow4 - pow2071); + tempvar temp = temp * (pow4 - pow2119); + tempvar temp = temp * (pow4 - pow2167); + tempvar temp = temp * (pow4 - pow2243); + tempvar temp = temp * (pow4 - pow2319); + tempvar temp = temp * (pow4 - pow2395); + tempvar temp = temp * (pow4 - pow2471); + tempvar domain19 = temp * (domain18); + tempvar temp = pow4 - pow2510; + tempvar temp = temp * (pow4 - pow2586); + tempvar domain20 = temp * (domain18); + tempvar temp = pow4 - pow1733; + tempvar temp = temp * (pow4 - pow1749); + tempvar temp = temp * (pow4 - pow1883); tempvar domain21 = temp * (domain19); - tempvar temp = pow4 - pow1735; - tempvar temp = temp * (pow4 - pow1751); - tempvar temp = temp * (pow4 - pow1885); - tempvar domain22 = temp * (domain20); tempvar temp = pow3 - 1; - tempvar temp = temp * (pow3 - pow100); - tempvar temp = temp * (pow3 - pow160); - tempvar temp = temp * (pow3 - pow220); - tempvar temp = temp * (pow3 - pow280); - tempvar temp = temp * (pow3 - pow340); - tempvar temp = temp * (pow3 - pow400); - tempvar domain23 = temp * (pow3 - pow460); - tempvar temp = pow3 - pow520; - tempvar temp = temp * (pow3 - pow580); - tempvar temp = temp * (pow3 - pow640); - tempvar temp = temp * (pow3 - pow700); - tempvar temp = temp * (pow3 - pow760); + tempvar temp = temp * (pow3 - pow98); + tempvar temp = temp * (pow3 - pow158); + tempvar temp = temp * (pow3 - pow218); + tempvar temp = temp * (pow3 - pow278); + tempvar temp = temp * (pow3 - pow338); + tempvar temp = temp * (pow3 - pow398); + tempvar domain22 = temp * (pow3 - pow458); + tempvar temp = pow3 - pow518; + tempvar temp = temp * (pow3 - pow578); + tempvar temp = temp * (pow3 - pow638); + tempvar temp = temp * (pow3 - pow698); + tempvar temp = temp * (pow3 - pow758); + tempvar temp = temp * (pow3 - pow788); + tempvar temp = temp * (pow3 - pow789); tempvar temp = temp * (pow3 - pow790); tempvar temp = temp * (pow3 - pow791); - tempvar temp = temp * (pow3 - pow792); - tempvar temp = temp * (pow3 - pow793); + tempvar temp = temp * (pow3 - pow815); + tempvar temp = temp * (pow3 - pow816); tempvar temp = temp * (pow3 - pow817); tempvar temp = temp * (pow3 - pow818); tempvar temp = temp * (pow3 - pow819); tempvar temp = temp * (pow3 - pow820); tempvar temp = temp * (pow3 - pow821); - tempvar temp = temp * (pow3 - pow822); - tempvar temp = temp * (pow3 - pow823); - tempvar domain24 = temp * (domain23); - tempvar temp = pow3 - pow1060; + tempvar domain23 = temp * (domain22); + tempvar temp = pow3 - pow1058; + tempvar temp = temp * (pow3 - pow1082); + tempvar temp = temp * (pow3 - pow1083); tempvar temp = temp * (pow3 - pow1084); tempvar temp = temp * (pow3 - pow1085); tempvar temp = temp * (pow3 - pow1086); @@ -3524,16 +3527,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1095); tempvar temp = temp * (pow3 - pow1096); tempvar temp = temp * (pow3 - pow1097); - tempvar temp = temp * (pow3 - pow1098); - tempvar temp = temp * (pow3 - pow1099); + tempvar temp = temp * (pow3 - pow1121); + tempvar temp = temp * (pow3 - pow1122); tempvar temp = temp * (pow3 - pow1123); tempvar temp = temp * (pow3 - pow1124); tempvar temp = temp * (pow3 - pow1125); tempvar temp = temp * (pow3 - pow1126); tempvar temp = temp * (pow3 - pow1127); - tempvar temp = temp * (pow3 - pow1128); - tempvar temp = temp * (pow3 - pow1129); - tempvar temp = temp * (pow3 - pow1366); + tempvar temp = temp * (pow3 - pow1364); + tempvar temp = temp * (pow3 - pow1388); + tempvar temp = temp * (pow3 - pow1389); tempvar temp = temp * (pow3 - pow1390); tempvar temp = temp * (pow3 - pow1391); tempvar temp = temp * (pow3 - pow1392); @@ -3548,15 +3551,15 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1401); tempvar temp = temp * (pow3 - pow1402); tempvar temp = temp * (pow3 - pow1403); - tempvar temp = temp * (pow3 - pow1404); - tempvar temp = temp * (pow3 - pow1405); + tempvar temp = temp * (pow3 - pow1427); + tempvar temp = temp * (pow3 - pow1428); tempvar temp = temp * (pow3 - pow1429); tempvar temp = temp * (pow3 - pow1430); tempvar temp = temp * (pow3 - pow1431); tempvar temp = temp * (pow3 - pow1432); tempvar temp = temp * (pow3 - pow1433); - tempvar temp = temp * (pow3 - pow1434); - tempvar temp = temp * (pow3 - pow1435); + tempvar temp = temp * (pow3 - pow1606); + tempvar temp = temp * (pow3 - pow1607); tempvar temp = temp * (pow3 - pow1608); tempvar temp = temp * (pow3 - pow1609); tempvar temp = temp * (pow3 - pow1610); @@ -3572,16 +3575,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1620); tempvar temp = temp * (pow3 - pow1621); tempvar temp = temp * (pow3 - pow1622); - tempvar temp = temp * (pow3 - pow1623); - tempvar temp = temp * (pow3 - pow1624); + tempvar temp = temp * (pow3 - pow1662); + tempvar temp = temp * (pow3 - pow1663); tempvar temp = temp * (pow3 - pow1664); tempvar temp = temp * (pow3 - pow1665); tempvar temp = temp * (pow3 - pow1666); tempvar temp = temp * (pow3 - pow1667); tempvar temp = temp * (pow3 - pow1668); - tempvar temp = temp * (pow3 - pow1669); - tempvar temp = temp * (pow3 - pow1670); - tempvar temp = temp * (pow3 - pow1751); + tempvar temp = temp * (pow3 - pow1749); + tempvar temp = temp * (pow3 - pow1837); + tempvar temp = temp * (pow3 - pow1838); tempvar temp = temp * (pow3 - pow1839); tempvar temp = temp * (pow3 - pow1840); tempvar temp = temp * (pow3 - pow1841); @@ -3596,17 +3599,17 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1850); tempvar temp = temp * (pow3 - pow1851); tempvar temp = temp * (pow3 - pow1852); - tempvar temp = temp * (pow3 - pow1853); - tempvar temp = temp * (pow3 - pow1854); + tempvar temp = temp * (pow3 - pow1876); + tempvar temp = temp * (pow3 - pow1877); tempvar temp = temp * (pow3 - pow1878); tempvar temp = temp * (pow3 - pow1879); tempvar temp = temp * (pow3 - pow1880); tempvar temp = temp * (pow3 - pow1881); tempvar temp = temp * (pow3 - pow1882); - tempvar temp = temp * (pow3 - pow1883); - tempvar temp = temp * (pow3 - pow1884); - tempvar domain25 = temp * (domain24); - tempvar temp = pow3 - pow824; + tempvar domain24 = temp * (domain23); + tempvar temp = pow3 - pow822; + tempvar temp = temp * (pow3 - pow846); + tempvar temp = temp * (pow3 - pow847); tempvar temp = temp * (pow3 - pow848); tempvar temp = temp * (pow3 - pow849); tempvar temp = temp * (pow3 - pow850); @@ -3621,16 +3624,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow859); tempvar temp = temp * (pow3 - pow860); tempvar temp = temp * (pow3 - pow861); - tempvar temp = temp * (pow3 - pow862); - tempvar temp = temp * (pow3 - pow863); + tempvar temp = temp * (pow3 - pow885); + tempvar temp = temp * (pow3 - pow886); tempvar temp = temp * (pow3 - pow887); tempvar temp = temp * (pow3 - pow888); tempvar temp = temp * (pow3 - pow889); tempvar temp = temp * (pow3 - pow890); tempvar temp = temp * (pow3 - pow891); tempvar temp = temp * (pow3 - pow892); - tempvar temp = temp * (pow3 - pow893); - tempvar temp = temp * (pow3 - pow894); + tempvar temp = temp * (pow3 - pow916); + tempvar temp = temp * (pow3 - pow917); tempvar temp = temp * (pow3 - pow918); tempvar temp = temp * (pow3 - pow919); tempvar temp = temp * (pow3 - pow920); @@ -3645,16 +3648,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow929); tempvar temp = temp * (pow3 - pow930); tempvar temp = temp * (pow3 - pow931); - tempvar temp = temp * (pow3 - pow932); - tempvar temp = temp * (pow3 - pow933); + tempvar temp = temp * (pow3 - pow955); + tempvar temp = temp * (pow3 - pow956); tempvar temp = temp * (pow3 - pow957); tempvar temp = temp * (pow3 - pow958); tempvar temp = temp * (pow3 - pow959); tempvar temp = temp * (pow3 - pow960); tempvar temp = temp * (pow3 - pow961); - tempvar temp = temp * (pow3 - pow962); - tempvar temp = temp * (pow3 - pow963); - tempvar temp = temp * (pow3 - pow1130); + tempvar temp = temp * (pow3 - pow1128); + tempvar temp = temp * (pow3 - pow1152); + tempvar temp = temp * (pow3 - pow1153); tempvar temp = temp * (pow3 - pow1154); tempvar temp = temp * (pow3 - pow1155); tempvar temp = temp * (pow3 - pow1156); @@ -3669,16 +3672,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1165); tempvar temp = temp * (pow3 - pow1166); tempvar temp = temp * (pow3 - pow1167); - tempvar temp = temp * (pow3 - pow1168); - tempvar temp = temp * (pow3 - pow1169); + tempvar temp = temp * (pow3 - pow1191); + tempvar temp = temp * (pow3 - pow1192); tempvar temp = temp * (pow3 - pow1193); tempvar temp = temp * (pow3 - pow1194); tempvar temp = temp * (pow3 - pow1195); tempvar temp = temp * (pow3 - pow1196); tempvar temp = temp * (pow3 - pow1197); tempvar temp = temp * (pow3 - pow1198); - tempvar temp = temp * (pow3 - pow1199); - tempvar temp = temp * (pow3 - pow1200); + tempvar temp = temp * (pow3 - pow1222); + tempvar temp = temp * (pow3 - pow1223); tempvar temp = temp * (pow3 - pow1224); tempvar temp = temp * (pow3 - pow1225); tempvar temp = temp * (pow3 - pow1226); @@ -3693,16 +3696,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1235); tempvar temp = temp * (pow3 - pow1236); tempvar temp = temp * (pow3 - pow1237); - tempvar temp = temp * (pow3 - pow1238); - tempvar temp = temp * (pow3 - pow1239); + tempvar temp = temp * (pow3 - pow1261); + tempvar temp = temp * (pow3 - pow1262); tempvar temp = temp * (pow3 - pow1263); tempvar temp = temp * (pow3 - pow1264); tempvar temp = temp * (pow3 - pow1265); tempvar temp = temp * (pow3 - pow1266); tempvar temp = temp * (pow3 - pow1267); - tempvar temp = temp * (pow3 - pow1268); - tempvar temp = temp * (pow3 - pow1269); - tempvar temp = temp * (pow3 - pow1436); + tempvar temp = temp * (pow3 - pow1434); + tempvar temp = temp * (pow3 - pow1458); + tempvar temp = temp * (pow3 - pow1459); tempvar temp = temp * (pow3 - pow1460); tempvar temp = temp * (pow3 - pow1461); tempvar temp = temp * (pow3 - pow1462); @@ -3717,16 +3720,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1471); tempvar temp = temp * (pow3 - pow1472); tempvar temp = temp * (pow3 - pow1473); - tempvar temp = temp * (pow3 - pow1474); - tempvar temp = temp * (pow3 - pow1475); + tempvar temp = temp * (pow3 - pow1497); + tempvar temp = temp * (pow3 - pow1498); tempvar temp = temp * (pow3 - pow1499); tempvar temp = temp * (pow3 - pow1500); tempvar temp = temp * (pow3 - pow1501); tempvar temp = temp * (pow3 - pow1502); tempvar temp = temp * (pow3 - pow1503); tempvar temp = temp * (pow3 - pow1504); - tempvar temp = temp * (pow3 - pow1505); - tempvar temp = temp * (pow3 - pow1506); + tempvar temp = temp * (pow3 - pow1528); + tempvar temp = temp * (pow3 - pow1529); tempvar temp = temp * (pow3 - pow1530); tempvar temp = temp * (pow3 - pow1531); tempvar temp = temp * (pow3 - pow1532); @@ -3741,15 +3744,15 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1541); tempvar temp = temp * (pow3 - pow1542); tempvar temp = temp * (pow3 - pow1543); - tempvar temp = temp * (pow3 - pow1544); - tempvar temp = temp * (pow3 - pow1545); + tempvar temp = temp * (pow3 - pow1567); + tempvar temp = temp * (pow3 - pow1568); tempvar temp = temp * (pow3 - pow1569); tempvar temp = temp * (pow3 - pow1570); tempvar temp = temp * (pow3 - pow1571); tempvar temp = temp * (pow3 - pow1572); tempvar temp = temp * (pow3 - pow1573); - tempvar temp = temp * (pow3 - pow1574); - tempvar temp = temp * (pow3 - pow1575); + tempvar temp = temp * (pow3 - pow1669); + tempvar temp = temp * (pow3 - pow1670); tempvar temp = temp * (pow3 - pow1671); tempvar temp = temp * (pow3 - pow1672); tempvar temp = temp * (pow3 - pow1673); @@ -3796,9 +3799,9 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1714); tempvar temp = temp * (pow3 - pow1715); tempvar temp = temp * (pow3 - pow1716); - tempvar temp = temp * (pow3 - pow1717); - tempvar temp = temp * (pow3 - pow1718); - tempvar temp = temp * (pow3 - pow1885); + tempvar temp = temp * (pow3 - pow1883); + tempvar temp = temp * (pow3 - pow1907); + tempvar temp = temp * (pow3 - pow1908); tempvar temp = temp * (pow3 - pow1909); tempvar temp = temp * (pow3 - pow1910); tempvar temp = temp * (pow3 - pow1911); @@ -3813,16 +3816,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1920); tempvar temp = temp * (pow3 - pow1921); tempvar temp = temp * (pow3 - pow1922); - tempvar temp = temp * (pow3 - pow1923); - tempvar temp = temp * (pow3 - pow1924); + tempvar temp = temp * (pow3 - pow1946); + tempvar temp = temp * (pow3 - pow1947); tempvar temp = temp * (pow3 - pow1948); tempvar temp = temp * (pow3 - pow1949); tempvar temp = temp * (pow3 - pow1950); tempvar temp = temp * (pow3 - pow1951); tempvar temp = temp * (pow3 - pow1952); tempvar temp = temp * (pow3 - pow1953); - tempvar temp = temp * (pow3 - pow1954); - tempvar temp = temp * (pow3 - pow1955); + tempvar temp = temp * (pow3 - pow1977); + tempvar temp = temp * (pow3 - pow1978); tempvar temp = temp * (pow3 - pow1979); tempvar temp = temp * (pow3 - pow1980); tempvar temp = temp * (pow3 - pow1981); @@ -3837,49 +3840,49 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow1990); tempvar temp = temp * (pow3 - pow1991); tempvar temp = temp * (pow3 - pow1992); - tempvar temp = temp * (pow3 - pow1993); - tempvar temp = temp * (pow3 - pow1994); + tempvar temp = temp * (pow3 - pow2016); + tempvar temp = temp * (pow3 - pow2017); tempvar temp = temp * (pow3 - pow2018); tempvar temp = temp * (pow3 - pow2019); tempvar temp = temp * (pow3 - pow2020); tempvar temp = temp * (pow3 - pow2021); tempvar temp = temp * (pow3 - pow2022); - tempvar temp = temp * (pow3 - pow2023); - tempvar temp = temp * (pow3 - pow2024); - tempvar domain26 = temp * (domain25); - tempvar domain27 = pow2 - pow3308; - tempvar domain28 = pow2 - pow2584; - tempvar domain29 = pow2 - 1; - tempvar domain30 = pow2 - pow2588; - tempvar domain31 = pow1 - pow3308; - tempvar domain32 = pow1 - pow2584; - tempvar domain33 = pow1 - 1; - tempvar domain34 = pow0 - 1; - tempvar temp = pow0 - pow32; - tempvar domain35 = temp * (domain34); - tempvar temp = pow0 - pow25; + tempvar domain25 = temp * (domain24); + tempvar domain26 = pow2 - pow3306; + tempvar domain27 = pow2 - pow2582; + tempvar domain28 = pow2 - 1; + tempvar domain29 = pow2 - pow2586; + tempvar domain30 = pow1 - pow3306; + tempvar domain31 = pow1 - pow2582; + tempvar domain32 = pow1 - 1; + tempvar domain33 = pow0 - 1; + tempvar temp = pow0 - pow30; + tempvar domain34 = temp * (domain33); + tempvar temp = pow0 - pow23; + tempvar temp = temp * (pow0 - pow24); + tempvar temp = temp * (pow0 - pow25); tempvar temp = temp * (pow0 - pow26); tempvar temp = temp * (pow0 - pow27); tempvar temp = temp * (pow0 - pow28); tempvar temp = temp * (pow0 - pow29); - tempvar temp = temp * (pow0 - pow30); tempvar temp = temp * (pow0 - pow31); + tempvar temp = temp * (pow0 - pow32); tempvar temp = temp * (pow0 - pow33); tempvar temp = temp * (pow0 - pow34); tempvar temp = temp * (pow0 - pow35); tempvar temp = temp * (pow0 - pow36); tempvar temp = temp * (pow0 - pow37); - tempvar temp = temp * (pow0 - pow38); + tempvar domain35 = temp * (domain34); + tempvar temp = pow0 - pow38; tempvar temp = temp * (pow0 - pow39); - tempvar domain36 = temp * (domain35); - tempvar temp = pow0 - pow40; + tempvar temp = temp * (pow0 - pow40); tempvar temp = temp * (pow0 - pow41); tempvar temp = temp * (pow0 - pow42); tempvar temp = temp * (pow0 - pow43); - tempvar temp = temp * (pow0 - pow44); + tempvar domain36 = temp * (domain34); + tempvar temp = pow0 - pow44; tempvar temp = temp * (pow0 - pow45); - tempvar domain37 = temp * (domain35); - tempvar temp = pow0 - pow46; + tempvar temp = temp * (pow0 - pow46); tempvar temp = temp * (pow0 - pow47); tempvar temp = temp * (pow0 - pow48); tempvar temp = temp * (pow0 - pow49); @@ -3893,71 +3896,71 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow57); tempvar temp = temp * (pow0 - pow58); tempvar temp = temp * (pow0 - pow59); - tempvar temp = temp * (pow0 - pow60); + tempvar domain37 = temp * (domain36); + tempvar temp = pow0 - pow60; tempvar temp = temp * (pow0 - pow61); - tempvar domain38 = temp * (domain37); - tempvar temp = pow0 - pow62; + tempvar temp = temp * (pow0 - pow62); tempvar temp = temp * (pow0 - pow63); tempvar temp = temp * (pow0 - pow64); tempvar temp = temp * (pow0 - pow65); - tempvar temp = temp * (pow0 - pow66); + tempvar domain38 = temp * (domain37); + tempvar temp = pow0 - pow66; tempvar temp = temp * (pow0 - pow67); tempvar domain39 = temp * (domain38); tempvar temp = pow0 - pow68; - tempvar temp = temp * (pow0 - pow69); - tempvar domain40 = temp * (domain39); - tempvar temp = pow0 - pow70; - tempvar temp = temp * (pow0 - pow100); - tempvar temp = temp * (pow0 - pow130); - tempvar temp = temp * (pow0 - pow160); - tempvar temp = temp * (pow0 - pow190); - tempvar temp = temp * (pow0 - pow220); - tempvar temp = temp * (pow0 - pow250); - tempvar temp = temp * (pow0 - pow280); - tempvar temp = temp * (pow0 - pow310); - tempvar temp = temp * (pow0 - pow340); - tempvar temp = temp * (pow0 - pow370); - tempvar temp = temp * (pow0 - pow400); - tempvar temp = temp * (pow0 - pow430); - tempvar temp = temp * (pow0 - pow460); - tempvar temp = temp * (pow0 - pow490); - tempvar temp = temp * (pow0 - pow520); - tempvar temp = temp * (pow0 - pow550); - tempvar temp = temp * (pow0 - pow580); - tempvar temp = temp * (pow0 - pow610); - tempvar temp = temp * (pow0 - pow640); - tempvar temp = temp * (pow0 - pow670); - tempvar temp = temp * (pow0 - pow700); - tempvar temp = temp * (pow0 - pow730); - tempvar domain41 = temp * (pow0 - pow760); - tempvar temp = pow0 - pow71; - tempvar temp = temp * (pow0 - pow101); - tempvar temp = temp * (pow0 - pow131); - tempvar temp = temp * (pow0 - pow161); - tempvar temp = temp * (pow0 - pow191); - tempvar temp = temp * (pow0 - pow221); - tempvar temp = temp * (pow0 - pow251); - tempvar temp = temp * (pow0 - pow281); - tempvar temp = temp * (pow0 - pow311); - tempvar temp = temp * (pow0 - pow341); - tempvar temp = temp * (pow0 - pow371); - tempvar temp = temp * (pow0 - pow401); - tempvar temp = temp * (pow0 - pow431); - tempvar temp = temp * (pow0 - pow461); - tempvar temp = temp * (pow0 - pow491); - tempvar temp = temp * (pow0 - pow521); - tempvar temp = temp * (pow0 - pow551); - tempvar temp = temp * (pow0 - pow581); - tempvar temp = temp * (pow0 - pow611); - tempvar temp = temp * (pow0 - pow641); - tempvar temp = temp * (pow0 - pow671); - tempvar temp = temp * (pow0 - pow701); - tempvar temp = temp * (pow0 - pow731); - tempvar temp = temp * (pow0 - pow761); + tempvar temp = temp * (pow0 - pow98); + tempvar temp = temp * (pow0 - pow128); + tempvar temp = temp * (pow0 - pow158); + tempvar temp = temp * (pow0 - pow188); + tempvar temp = temp * (pow0 - pow218); + tempvar temp = temp * (pow0 - pow248); + tempvar temp = temp * (pow0 - pow278); + tempvar temp = temp * (pow0 - pow308); + tempvar temp = temp * (pow0 - pow338); + tempvar temp = temp * (pow0 - pow368); + tempvar temp = temp * (pow0 - pow398); + tempvar temp = temp * (pow0 - pow428); + tempvar temp = temp * (pow0 - pow458); + tempvar temp = temp * (pow0 - pow488); + tempvar temp = temp * (pow0 - pow518); + tempvar temp = temp * (pow0 - pow548); + tempvar temp = temp * (pow0 - pow578); + tempvar temp = temp * (pow0 - pow608); + tempvar temp = temp * (pow0 - pow638); + tempvar temp = temp * (pow0 - pow668); + tempvar temp = temp * (pow0 - pow698); + tempvar temp = temp * (pow0 - pow728); + tempvar domain40 = temp * (pow0 - pow758); + tempvar temp = pow0 - pow69; + tempvar temp = temp * (pow0 - pow99); + tempvar temp = temp * (pow0 - pow129); + tempvar temp = temp * (pow0 - pow159); + tempvar temp = temp * (pow0 - pow189); + tempvar temp = temp * (pow0 - pow219); + tempvar temp = temp * (pow0 - pow249); + tempvar temp = temp * (pow0 - pow279); + tempvar temp = temp * (pow0 - pow309); + tempvar temp = temp * (pow0 - pow339); + tempvar temp = temp * (pow0 - pow369); + tempvar temp = temp * (pow0 - pow399); + tempvar temp = temp * (pow0 - pow429); + tempvar temp = temp * (pow0 - pow459); + tempvar temp = temp * (pow0 - pow489); + tempvar temp = temp * (pow0 - pow519); + tempvar temp = temp * (pow0 - pow549); + tempvar temp = temp * (pow0 - pow579); + tempvar temp = temp * (pow0 - pow609); + tempvar temp = temp * (pow0 - pow639); + tempvar temp = temp * (pow0 - pow669); + tempvar temp = temp * (pow0 - pow699); + tempvar temp = temp * (pow0 - pow729); + tempvar temp = temp * (pow0 - pow759); + tempvar domain41 = temp * (domain40); + tempvar temp = domain34; tempvar domain42 = temp * (domain41); - tempvar temp = domain35; - tempvar domain43 = temp * (domain42); - tempvar temp = pow0 - pow72; + tempvar temp = pow0 - pow70; + tempvar temp = temp * (pow0 - pow71); + tempvar temp = temp * (pow0 - pow72); tempvar temp = temp * (pow0 - pow73); tempvar temp = temp * (pow0 - pow74); tempvar temp = temp * (pow0 - pow75); @@ -3983,8 +3986,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow95); tempvar temp = temp * (pow0 - pow96); tempvar temp = temp * (pow0 - pow97); - tempvar temp = temp * (pow0 - pow98); - tempvar temp = temp * (pow0 - pow99); + tempvar temp = temp * (pow0 - pow100); + tempvar temp = temp * (pow0 - pow101); tempvar temp = temp * (pow0 - pow102); tempvar temp = temp * (pow0 - pow103); tempvar temp = temp * (pow0 - pow104); @@ -4011,8 +4014,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow125); tempvar temp = temp * (pow0 - pow126); tempvar temp = temp * (pow0 - pow127); - tempvar temp = temp * (pow0 - pow128); - tempvar temp = temp * (pow0 - pow129); + tempvar temp = temp * (pow0 - pow130); + tempvar temp = temp * (pow0 - pow131); tempvar temp = temp * (pow0 - pow132); tempvar temp = temp * (pow0 - pow133); tempvar temp = temp * (pow0 - pow134); @@ -4039,8 +4042,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow155); tempvar temp = temp * (pow0 - pow156); tempvar temp = temp * (pow0 - pow157); - tempvar temp = temp * (pow0 - pow158); - tempvar temp = temp * (pow0 - pow159); + tempvar temp = temp * (pow0 - pow160); + tempvar temp = temp * (pow0 - pow161); tempvar temp = temp * (pow0 - pow162); tempvar temp = temp * (pow0 - pow163); tempvar temp = temp * (pow0 - pow164); @@ -4067,8 +4070,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow185); tempvar temp = temp * (pow0 - pow186); tempvar temp = temp * (pow0 - pow187); - tempvar temp = temp * (pow0 - pow188); - tempvar temp = temp * (pow0 - pow189); + tempvar temp = temp * (pow0 - pow190); + tempvar temp = temp * (pow0 - pow191); tempvar temp = temp * (pow0 - pow192); tempvar temp = temp * (pow0 - pow193); tempvar temp = temp * (pow0 - pow194); @@ -4095,8 +4098,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow215); tempvar temp = temp * (pow0 - pow216); tempvar temp = temp * (pow0 - pow217); - tempvar temp = temp * (pow0 - pow218); - tempvar temp = temp * (pow0 - pow219); + tempvar temp = temp * (pow0 - pow220); + tempvar temp = temp * (pow0 - pow221); tempvar temp = temp * (pow0 - pow222); tempvar temp = temp * (pow0 - pow223); tempvar temp = temp * (pow0 - pow224); @@ -4123,8 +4126,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow245); tempvar temp = temp * (pow0 - pow246); tempvar temp = temp * (pow0 - pow247); - tempvar temp = temp * (pow0 - pow248); - tempvar temp = temp * (pow0 - pow249); + tempvar temp = temp * (pow0 - pow250); + tempvar temp = temp * (pow0 - pow251); tempvar temp = temp * (pow0 - pow252); tempvar temp = temp * (pow0 - pow253); tempvar temp = temp * (pow0 - pow254); @@ -4151,8 +4154,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow275); tempvar temp = temp * (pow0 - pow276); tempvar temp = temp * (pow0 - pow277); - tempvar temp = temp * (pow0 - pow278); - tempvar temp = temp * (pow0 - pow279); + tempvar temp = temp * (pow0 - pow280); + tempvar temp = temp * (pow0 - pow281); tempvar temp = temp * (pow0 - pow282); tempvar temp = temp * (pow0 - pow283); tempvar temp = temp * (pow0 - pow284); @@ -4179,8 +4182,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow305); tempvar temp = temp * (pow0 - pow306); tempvar temp = temp * (pow0 - pow307); - tempvar temp = temp * (pow0 - pow308); - tempvar temp = temp * (pow0 - pow309); + tempvar temp = temp * (pow0 - pow310); + tempvar temp = temp * (pow0 - pow311); tempvar temp = temp * (pow0 - pow312); tempvar temp = temp * (pow0 - pow313); tempvar temp = temp * (pow0 - pow314); @@ -4207,8 +4210,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow335); tempvar temp = temp * (pow0 - pow336); tempvar temp = temp * (pow0 - pow337); - tempvar temp = temp * (pow0 - pow338); - tempvar temp = temp * (pow0 - pow339); + tempvar temp = temp * (pow0 - pow340); + tempvar temp = temp * (pow0 - pow341); tempvar temp = temp * (pow0 - pow342); tempvar temp = temp * (pow0 - pow343); tempvar temp = temp * (pow0 - pow344); @@ -4235,8 +4238,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow365); tempvar temp = temp * (pow0 - pow366); tempvar temp = temp * (pow0 - pow367); - tempvar temp = temp * (pow0 - pow368); - tempvar temp = temp * (pow0 - pow369); + tempvar temp = temp * (pow0 - pow370); + tempvar temp = temp * (pow0 - pow371); tempvar temp = temp * (pow0 - pow372); tempvar temp = temp * (pow0 - pow373); tempvar temp = temp * (pow0 - pow374); @@ -4263,8 +4266,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow395); tempvar temp = temp * (pow0 - pow396); tempvar temp = temp * (pow0 - pow397); - tempvar temp = temp * (pow0 - pow398); - tempvar temp = temp * (pow0 - pow399); + tempvar temp = temp * (pow0 - pow400); + tempvar temp = temp * (pow0 - pow401); tempvar temp = temp * (pow0 - pow402); tempvar temp = temp * (pow0 - pow403); tempvar temp = temp * (pow0 - pow404); @@ -4291,8 +4294,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow425); tempvar temp = temp * (pow0 - pow426); tempvar temp = temp * (pow0 - pow427); - tempvar temp = temp * (pow0 - pow428); - tempvar temp = temp * (pow0 - pow429); + tempvar temp = temp * (pow0 - pow430); + tempvar temp = temp * (pow0 - pow431); tempvar temp = temp * (pow0 - pow432); tempvar temp = temp * (pow0 - pow433); tempvar temp = temp * (pow0 - pow434); @@ -4319,8 +4322,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow455); tempvar temp = temp * (pow0 - pow456); tempvar temp = temp * (pow0 - pow457); - tempvar temp = temp * (pow0 - pow458); - tempvar temp = temp * (pow0 - pow459); + tempvar temp = temp * (pow0 - pow460); + tempvar temp = temp * (pow0 - pow461); tempvar temp = temp * (pow0 - pow462); tempvar temp = temp * (pow0 - pow463); tempvar temp = temp * (pow0 - pow464); @@ -4347,8 +4350,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow485); tempvar temp = temp * (pow0 - pow486); tempvar temp = temp * (pow0 - pow487); - tempvar temp = temp * (pow0 - pow488); - tempvar temp = temp * (pow0 - pow489); + tempvar temp = temp * (pow0 - pow490); + tempvar temp = temp * (pow0 - pow491); tempvar temp = temp * (pow0 - pow492); tempvar temp = temp * (pow0 - pow493); tempvar temp = temp * (pow0 - pow494); @@ -4375,8 +4378,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow515); tempvar temp = temp * (pow0 - pow516); tempvar temp = temp * (pow0 - pow517); - tempvar temp = temp * (pow0 - pow518); - tempvar temp = temp * (pow0 - pow519); + tempvar temp = temp * (pow0 - pow520); + tempvar temp = temp * (pow0 - pow521); tempvar temp = temp * (pow0 - pow522); tempvar temp = temp * (pow0 - pow523); tempvar temp = temp * (pow0 - pow524); @@ -4403,8 +4406,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow545); tempvar temp = temp * (pow0 - pow546); tempvar temp = temp * (pow0 - pow547); - tempvar temp = temp * (pow0 - pow548); - tempvar temp = temp * (pow0 - pow549); + tempvar temp = temp * (pow0 - pow550); + tempvar temp = temp * (pow0 - pow551); tempvar temp = temp * (pow0 - pow552); tempvar temp = temp * (pow0 - pow553); tempvar temp = temp * (pow0 - pow554); @@ -4431,8 +4434,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow575); tempvar temp = temp * (pow0 - pow576); tempvar temp = temp * (pow0 - pow577); - tempvar temp = temp * (pow0 - pow578); - tempvar temp = temp * (pow0 - pow579); + tempvar temp = temp * (pow0 - pow580); + tempvar temp = temp * (pow0 - pow581); tempvar temp = temp * (pow0 - pow582); tempvar temp = temp * (pow0 - pow583); tempvar temp = temp * (pow0 - pow584); @@ -4459,8 +4462,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow605); tempvar temp = temp * (pow0 - pow606); tempvar temp = temp * (pow0 - pow607); - tempvar temp = temp * (pow0 - pow608); - tempvar temp = temp * (pow0 - pow609); + tempvar temp = temp * (pow0 - pow610); + tempvar temp = temp * (pow0 - pow611); tempvar temp = temp * (pow0 - pow612); tempvar temp = temp * (pow0 - pow613); tempvar temp = temp * (pow0 - pow614); @@ -4487,8 +4490,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow635); tempvar temp = temp * (pow0 - pow636); tempvar temp = temp * (pow0 - pow637); - tempvar temp = temp * (pow0 - pow638); - tempvar temp = temp * (pow0 - pow639); + tempvar temp = temp * (pow0 - pow640); + tempvar temp = temp * (pow0 - pow641); tempvar temp = temp * (pow0 - pow642); tempvar temp = temp * (pow0 - pow643); tempvar temp = temp * (pow0 - pow644); @@ -4515,8 +4518,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow665); tempvar temp = temp * (pow0 - pow666); tempvar temp = temp * (pow0 - pow667); - tempvar temp = temp * (pow0 - pow668); - tempvar temp = temp * (pow0 - pow669); + tempvar temp = temp * (pow0 - pow670); + tempvar temp = temp * (pow0 - pow671); tempvar temp = temp * (pow0 - pow672); tempvar temp = temp * (pow0 - pow673); tempvar temp = temp * (pow0 - pow674); @@ -4543,8 +4546,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow695); tempvar temp = temp * (pow0 - pow696); tempvar temp = temp * (pow0 - pow697); - tempvar temp = temp * (pow0 - pow698); - tempvar temp = temp * (pow0 - pow699); + tempvar temp = temp * (pow0 - pow700); + tempvar temp = temp * (pow0 - pow701); tempvar temp = temp * (pow0 - pow702); tempvar temp = temp * (pow0 - pow703); tempvar temp = temp * (pow0 - pow704); @@ -4571,8 +4574,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow725); tempvar temp = temp * (pow0 - pow726); tempvar temp = temp * (pow0 - pow727); - tempvar temp = temp * (pow0 - pow728); - tempvar temp = temp * (pow0 - pow729); + tempvar temp = temp * (pow0 - pow730); + tempvar temp = temp * (pow0 - pow731); tempvar temp = temp * (pow0 - pow732); tempvar temp = temp * (pow0 - pow733); tempvar temp = temp * (pow0 - pow734); @@ -4599,8 +4602,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow755); tempvar temp = temp * (pow0 - pow756); tempvar temp = temp * (pow0 - pow757); - tempvar temp = temp * (pow0 - pow758); - tempvar temp = temp * (pow0 - pow759); + tempvar temp = temp * (pow0 - pow760); + tempvar temp = temp * (pow0 - pow761); tempvar temp = temp * (pow0 - pow762); tempvar temp = temp * (pow0 - pow763); tempvar temp = temp * (pow0 - pow764); @@ -4627,86 +4630,86 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow785); tempvar temp = temp * (pow0 - pow786); tempvar temp = temp * (pow0 - pow787); - tempvar temp = temp * (pow0 - pow788); - tempvar temp = temp * (pow0 - pow789); - tempvar temp = temp * (domain39); - tempvar domain44 = temp * (domain42); - tempvar temp = domain34; - tempvar domain45 = temp * (domain41); - tempvar domain46 = pow0 - pow2588; - tempvar temp = pow3 - pow2169; - tempvar temp = temp * (pow3 - pow2245); - tempvar temp = temp * (pow3 - pow2321); - tempvar temp = temp * (pow3 - pow2397); - tempvar temp = temp * (pow3 - pow2473); - tempvar temp = temp * (pow3 - pow2549); - tempvar temp = temp * (pow0 - pow2618); - tempvar temp = temp * (pow0 - pow2648); - tempvar temp = temp * (pow0 - pow2678); - tempvar temp = temp * (pow0 - pow2708); - tempvar temp = temp * (pow0 - pow2738); - tempvar temp = temp * (pow0 - pow2768); - tempvar temp = temp * (pow0 - pow2798); - tempvar temp = temp * (pow0 - pow2828); - tempvar temp = temp * (pow0 - pow2858); - tempvar temp = temp * (pow0 - pow2888); - tempvar temp = temp * (pow0 - pow2918); - tempvar temp = temp * (pow0 - pow2948); - tempvar temp = temp * (pow0 - pow2978); - tempvar temp = temp * (pow0 - pow3008); - tempvar temp = temp * (pow0 - pow3038); - tempvar temp = temp * (pow0 - pow3068); - tempvar temp = temp * (pow0 - pow3098); - tempvar temp = temp * (pow0 - pow3128); - tempvar temp = temp * (pow0 - pow3158); - tempvar temp = temp * (pow0 - pow3188); - tempvar temp = temp * (pow0 - pow3218); - tempvar temp = temp * (pow0 - pow3248); - tempvar temp = temp * (pow0 - pow3278); - tempvar temp = temp * (pow0 - pow3308); - tempvar domain47 = temp * (domain46); - tempvar domain48 = pow0 - pow2589; - tempvar temp = pow3 - pow2193; - tempvar temp = temp * (pow3 - pow2269); - tempvar temp = temp * (pow3 - pow2345); - tempvar temp = temp * (pow3 - pow2421); - tempvar temp = temp * (pow3 - pow2497); - tempvar temp = temp * (pow3 - pow2573); - tempvar temp = temp * (pow0 - pow2619); - tempvar temp = temp * (pow0 - pow2649); - tempvar temp = temp * (pow0 - pow2679); - tempvar temp = temp * (pow0 - pow2709); - tempvar temp = temp * (pow0 - pow2739); - tempvar temp = temp * (pow0 - pow2769); - tempvar temp = temp * (pow0 - pow2799); - tempvar temp = temp * (pow0 - pow2829); - tempvar temp = temp * (pow0 - pow2859); - tempvar temp = temp * (pow0 - pow2889); - tempvar temp = temp * (pow0 - pow2919); - tempvar temp = temp * (pow0 - pow2949); - tempvar temp = temp * (pow0 - pow2979); - tempvar temp = temp * (pow0 - pow3009); - tempvar temp = temp * (pow0 - pow3039); - tempvar temp = temp * (pow0 - pow3069); - tempvar temp = temp * (pow0 - pow3099); - tempvar temp = temp * (pow0 - pow3129); - tempvar temp = temp * (pow0 - pow3159); - tempvar temp = temp * (pow0 - pow3189); - tempvar temp = temp * (pow0 - pow3219); - tempvar temp = temp * (pow0 - pow3249); - tempvar temp = temp * (pow0 - pow3279); - tempvar temp = temp * (pow0 - pow3309); - tempvar temp = temp * (pow0 - pow3338); - tempvar temp = temp * (pow0 - pow3339); - tempvar temp = temp * (domain47); - tempvar domain49 = temp * (domain48); - tempvar temp = pow0 - pow2590; + tempvar temp = temp * (domain38); + tempvar domain43 = temp * (domain41); + tempvar temp = domain33; + tempvar domain44 = temp * (domain40); + tempvar domain45 = pow0 - pow2586; + tempvar temp = pow3 - pow2167; + tempvar temp = temp * (pow3 - pow2243); + tempvar temp = temp * (pow3 - pow2319); + tempvar temp = temp * (pow3 - pow2395); + tempvar temp = temp * (pow3 - pow2471); + tempvar temp = temp * (pow3 - pow2547); + tempvar temp = temp * (pow0 - pow2616); + tempvar temp = temp * (pow0 - pow2646); + tempvar temp = temp * (pow0 - pow2676); + tempvar temp = temp * (pow0 - pow2706); + tempvar temp = temp * (pow0 - pow2736); + tempvar temp = temp * (pow0 - pow2766); + tempvar temp = temp * (pow0 - pow2796); + tempvar temp = temp * (pow0 - pow2826); + tempvar temp = temp * (pow0 - pow2856); + tempvar temp = temp * (pow0 - pow2886); + tempvar temp = temp * (pow0 - pow2916); + tempvar temp = temp * (pow0 - pow2946); + tempvar temp = temp * (pow0 - pow2976); + tempvar temp = temp * (pow0 - pow3006); + tempvar temp = temp * (pow0 - pow3036); + tempvar temp = temp * (pow0 - pow3066); + tempvar temp = temp * (pow0 - pow3096); + tempvar temp = temp * (pow0 - pow3126); + tempvar temp = temp * (pow0 - pow3156); + tempvar temp = temp * (pow0 - pow3186); + tempvar temp = temp * (pow0 - pow3216); + tempvar temp = temp * (pow0 - pow3246); + tempvar temp = temp * (pow0 - pow3276); + tempvar temp = temp * (pow0 - pow3306); + tempvar domain46 = temp * (domain45); + tempvar domain47 = pow0 - pow2587; + tempvar temp = pow3 - pow2191; + tempvar temp = temp * (pow3 - pow2267); + tempvar temp = temp * (pow3 - pow2343); + tempvar temp = temp * (pow3 - pow2419); + tempvar temp = temp * (pow3 - pow2495); + tempvar temp = temp * (pow3 - pow2571); + tempvar temp = temp * (pow0 - pow2617); + tempvar temp = temp * (pow0 - pow2647); + tempvar temp = temp * (pow0 - pow2677); + tempvar temp = temp * (pow0 - pow2707); + tempvar temp = temp * (pow0 - pow2737); + tempvar temp = temp * (pow0 - pow2767); + tempvar temp = temp * (pow0 - pow2797); + tempvar temp = temp * (pow0 - pow2827); + tempvar temp = temp * (pow0 - pow2857); + tempvar temp = temp * (pow0 - pow2887); + tempvar temp = temp * (pow0 - pow2917); + tempvar temp = temp * (pow0 - pow2947); + tempvar temp = temp * (pow0 - pow2977); + tempvar temp = temp * (pow0 - pow3007); + tempvar temp = temp * (pow0 - pow3037); + tempvar temp = temp * (pow0 - pow3067); + tempvar temp = temp * (pow0 - pow3097); + tempvar temp = temp * (pow0 - pow3127); + tempvar temp = temp * (pow0 - pow3157); + tempvar temp = temp * (pow0 - pow3187); + tempvar temp = temp * (pow0 - pow3217); + tempvar temp = temp * (pow0 - pow3247); + tempvar temp = temp * (pow0 - pow3277); + tempvar temp = temp * (pow0 - pow3307); + tempvar temp = temp * (pow0 - pow3336); + tempvar temp = temp * (pow0 - pow3337); + tempvar temp = temp * (domain46); + tempvar domain48 = temp * (domain47); + tempvar temp = pow0 - pow2588; + tempvar temp = temp * (pow0 - pow2589); + tempvar temp = temp * (pow0 - pow2590); tempvar temp = temp * (pow0 - pow2591); tempvar temp = temp * (pow0 - pow2592); - tempvar temp = temp * (pow0 - pow2593); - tempvar temp = temp * (pow0 - pow2594); - tempvar domain50 = temp * (pow0 - pow2595); - tempvar temp = pow0 - pow2596; + tempvar domain49 = temp * (pow0 - pow2593); + tempvar temp = pow0 - pow2594; + tempvar temp = temp * (pow0 - pow2595); + tempvar temp = temp * (pow0 - pow2596); tempvar temp = temp * (pow0 - pow2597); tempvar temp = temp * (pow0 - pow2598); tempvar temp = temp * (pow0 - pow2599); @@ -4720,11 +4723,11 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2607); tempvar temp = temp * (pow0 - pow2608); tempvar temp = temp * (pow0 - pow2609); - tempvar temp = temp * (pow0 - pow2610); - tempvar temp = temp * (pow0 - pow2611); - tempvar domain51 = temp * (domain50); - tempvar temp = pow7 - pow2473; - tempvar temp = temp * (pow7 - pow2549); + tempvar domain50 = temp * (domain49); + tempvar temp = pow7 - pow2471; + tempvar temp = temp * (pow7 - pow2547); + tempvar temp = temp * (pow3 - pow2192); + tempvar temp = temp * (pow3 - pow2193); tempvar temp = temp * (pow3 - pow2194); tempvar temp = temp * (pow3 - pow2195); tempvar temp = temp * (pow3 - pow2196); @@ -4738,8 +4741,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2204); tempvar temp = temp * (pow3 - pow2205); tempvar temp = temp * (pow3 - pow2206); - tempvar temp = temp * (pow3 - pow2207); - tempvar temp = temp * (pow3 - pow2208); + tempvar temp = temp * (pow3 - pow2230); + tempvar temp = temp * (pow3 - pow2231); tempvar temp = temp * (pow3 - pow2232); tempvar temp = temp * (pow3 - pow2233); tempvar temp = temp * (pow3 - pow2234); @@ -4751,8 +4754,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2240); tempvar temp = temp * (pow3 - pow2241); tempvar temp = temp * (pow3 - pow2242); - tempvar temp = temp * (pow3 - pow2243); - tempvar temp = temp * (pow3 - pow2244); + tempvar temp = temp * (pow3 - pow2268); + tempvar temp = temp * (pow3 - pow2269); tempvar temp = temp * (pow3 - pow2270); tempvar temp = temp * (pow3 - pow2271); tempvar temp = temp * (pow3 - pow2272); @@ -4766,8 +4769,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2280); tempvar temp = temp * (pow3 - pow2281); tempvar temp = temp * (pow3 - pow2282); - tempvar temp = temp * (pow3 - pow2283); - tempvar temp = temp * (pow3 - pow2284); + tempvar temp = temp * (pow3 - pow2306); + tempvar temp = temp * (pow3 - pow2307); tempvar temp = temp * (pow3 - pow2308); tempvar temp = temp * (pow3 - pow2309); tempvar temp = temp * (pow3 - pow2310); @@ -4779,8 +4782,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2316); tempvar temp = temp * (pow3 - pow2317); tempvar temp = temp * (pow3 - pow2318); - tempvar temp = temp * (pow3 - pow2319); - tempvar temp = temp * (pow3 - pow2320); + tempvar temp = temp * (pow3 - pow2344); + tempvar temp = temp * (pow3 - pow2345); tempvar temp = temp * (pow3 - pow2346); tempvar temp = temp * (pow3 - pow2347); tempvar temp = temp * (pow3 - pow2348); @@ -4794,8 +4797,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2356); tempvar temp = temp * (pow3 - pow2357); tempvar temp = temp * (pow3 - pow2358); - tempvar temp = temp * (pow3 - pow2359); - tempvar temp = temp * (pow3 - pow2360); + tempvar temp = temp * (pow3 - pow2382); + tempvar temp = temp * (pow3 - pow2383); tempvar temp = temp * (pow3 - pow2384); tempvar temp = temp * (pow3 - pow2385); tempvar temp = temp * (pow3 - pow2386); @@ -4807,8 +4810,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2392); tempvar temp = temp * (pow3 - pow2393); tempvar temp = temp * (pow3 - pow2394); - tempvar temp = temp * (pow3 - pow2395); - tempvar temp = temp * (pow3 - pow2396); + tempvar temp = temp * (pow3 - pow2420); + tempvar temp = temp * (pow3 - pow2421); tempvar temp = temp * (pow3 - pow2422); tempvar temp = temp * (pow3 - pow2423); tempvar temp = temp * (pow3 - pow2424); @@ -4822,8 +4825,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2432); tempvar temp = temp * (pow3 - pow2433); tempvar temp = temp * (pow3 - pow2434); - tempvar temp = temp * (pow3 - pow2435); - tempvar temp = temp * (pow3 - pow2436); + tempvar temp = temp * (pow3 - pow2458); + tempvar temp = temp * (pow3 - pow2459); tempvar temp = temp * (pow3 - pow2460); tempvar temp = temp * (pow3 - pow2461); tempvar temp = temp * (pow3 - pow2462); @@ -4835,8 +4838,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2468); tempvar temp = temp * (pow3 - pow2469); tempvar temp = temp * (pow3 - pow2470); - tempvar temp = temp * (pow3 - pow2471); - tempvar temp = temp * (pow3 - pow2472); + tempvar temp = temp * (pow3 - pow2496); + tempvar temp = temp * (pow3 - pow2497); tempvar temp = temp * (pow3 - pow2498); tempvar temp = temp * (pow3 - pow2499); tempvar temp = temp * (pow3 - pow2500); @@ -4850,8 +4853,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2508); tempvar temp = temp * (pow3 - pow2509); tempvar temp = temp * (pow3 - pow2510); - tempvar temp = temp * (pow3 - pow2511); - tempvar temp = temp * (pow3 - pow2512); + tempvar temp = temp * (pow3 - pow2534); + tempvar temp = temp * (pow3 - pow2535); tempvar temp = temp * (pow3 - pow2536); tempvar temp = temp * (pow3 - pow2537); tempvar temp = temp * (pow3 - pow2538); @@ -4863,8 +4866,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2544); tempvar temp = temp * (pow3 - pow2545); tempvar temp = temp * (pow3 - pow2546); - tempvar temp = temp * (pow3 - pow2547); - tempvar temp = temp * (pow3 - pow2548); + tempvar temp = temp * (pow3 - pow2572); + tempvar temp = temp * (pow3 - pow2573); tempvar temp = temp * (pow3 - pow2574); tempvar temp = temp * (pow3 - pow2575); tempvar temp = temp * (pow3 - pow2576); @@ -4878,27 +4881,27 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow3 - pow2584); tempvar temp = temp * (pow3 - pow2585); tempvar temp = temp * (pow3 - pow2586); - tempvar temp = temp * (pow3 - pow2587); - tempvar temp = temp * (pow3 - pow2588); - tempvar temp = temp * (pow3 - pow2648); - tempvar temp = temp * (pow3 - pow2708); - tempvar temp = temp * (pow3 - pow2768); - tempvar temp = temp * (pow3 - pow2828); - tempvar temp = temp * (pow3 - pow2888); - tempvar temp = temp * (pow3 - pow2948); - tempvar temp = temp * (pow3 - pow3008); - tempvar temp = temp * (pow3 - pow3068); - tempvar temp = temp * (pow3 - pow3128); - tempvar temp = temp * (pow3 - pow3188); - tempvar temp = temp * (pow3 - pow3248); - tempvar temp = temp * (pow3 - pow3308); - tempvar temp = temp * (pow3 - pow3368); + tempvar temp = temp * (pow3 - pow2646); + tempvar temp = temp * (pow3 - pow2706); + tempvar temp = temp * (pow3 - pow2766); + tempvar temp = temp * (pow3 - pow2826); + tempvar temp = temp * (pow3 - pow2886); + tempvar temp = temp * (pow3 - pow2946); + tempvar temp = temp * (pow3 - pow3006); + tempvar temp = temp * (pow3 - pow3066); + tempvar temp = temp * (pow3 - pow3126); + tempvar temp = temp * (pow3 - pow3186); + tempvar temp = temp * (pow3 - pow3246); + tempvar temp = temp * (pow3 - pow3306); + tempvar temp = temp * (pow3 - pow3366); + tempvar temp = temp * (pow0 - pow2610); + tempvar temp = temp * (pow0 - pow2611); tempvar temp = temp * (pow0 - pow2612); tempvar temp = temp * (pow0 - pow2613); tempvar temp = temp * (pow0 - pow2614); tempvar temp = temp * (pow0 - pow2615); - tempvar temp = temp * (pow0 - pow2616); - tempvar temp = temp * (pow0 - pow2617); + tempvar temp = temp * (pow0 - pow2618); + tempvar temp = temp * (pow0 - pow2619); tempvar temp = temp * (pow0 - pow2620); tempvar temp = temp * (pow0 - pow2621); tempvar temp = temp * (pow0 - pow2622); @@ -4925,8 +4928,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2643); tempvar temp = temp * (pow0 - pow2644); tempvar temp = temp * (pow0 - pow2645); - tempvar temp = temp * (pow0 - pow2646); - tempvar temp = temp * (pow0 - pow2647); + tempvar temp = temp * (pow0 - pow2648); + tempvar temp = temp * (pow0 - pow2649); tempvar temp = temp * (pow0 - pow2650); tempvar temp = temp * (pow0 - pow2651); tempvar temp = temp * (pow0 - pow2652); @@ -4953,8 +4956,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2673); tempvar temp = temp * (pow0 - pow2674); tempvar temp = temp * (pow0 - pow2675); - tempvar temp = temp * (pow0 - pow2676); - tempvar temp = temp * (pow0 - pow2677); + tempvar temp = temp * (pow0 - pow2678); + tempvar temp = temp * (pow0 - pow2679); tempvar temp = temp * (pow0 - pow2680); tempvar temp = temp * (pow0 - pow2681); tempvar temp = temp * (pow0 - pow2682); @@ -4981,8 +4984,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2703); tempvar temp = temp * (pow0 - pow2704); tempvar temp = temp * (pow0 - pow2705); - tempvar temp = temp * (pow0 - pow2706); - tempvar temp = temp * (pow0 - pow2707); + tempvar temp = temp * (pow0 - pow2708); + tempvar temp = temp * (pow0 - pow2709); tempvar temp = temp * (pow0 - pow2710); tempvar temp = temp * (pow0 - pow2711); tempvar temp = temp * (pow0 - pow2712); @@ -5009,8 +5012,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2733); tempvar temp = temp * (pow0 - pow2734); tempvar temp = temp * (pow0 - pow2735); - tempvar temp = temp * (pow0 - pow2736); - tempvar temp = temp * (pow0 - pow2737); + tempvar temp = temp * (pow0 - pow2738); + tempvar temp = temp * (pow0 - pow2739); tempvar temp = temp * (pow0 - pow2740); tempvar temp = temp * (pow0 - pow2741); tempvar temp = temp * (pow0 - pow2742); @@ -5037,8 +5040,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2763); tempvar temp = temp * (pow0 - pow2764); tempvar temp = temp * (pow0 - pow2765); - tempvar temp = temp * (pow0 - pow2766); - tempvar temp = temp * (pow0 - pow2767); + tempvar temp = temp * (pow0 - pow2768); + tempvar temp = temp * (pow0 - pow2769); tempvar temp = temp * (pow0 - pow2770); tempvar temp = temp * (pow0 - pow2771); tempvar temp = temp * (pow0 - pow2772); @@ -5065,8 +5068,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2793); tempvar temp = temp * (pow0 - pow2794); tempvar temp = temp * (pow0 - pow2795); - tempvar temp = temp * (pow0 - pow2796); - tempvar temp = temp * (pow0 - pow2797); + tempvar temp = temp * (pow0 - pow2798); + tempvar temp = temp * (pow0 - pow2799); tempvar temp = temp * (pow0 - pow2800); tempvar temp = temp * (pow0 - pow2801); tempvar temp = temp * (pow0 - pow2802); @@ -5093,8 +5096,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2823); tempvar temp = temp * (pow0 - pow2824); tempvar temp = temp * (pow0 - pow2825); - tempvar temp = temp * (pow0 - pow2826); - tempvar temp = temp * (pow0 - pow2827); + tempvar temp = temp * (pow0 - pow2828); + tempvar temp = temp * (pow0 - pow2829); tempvar temp = temp * (pow0 - pow2830); tempvar temp = temp * (pow0 - pow2831); tempvar temp = temp * (pow0 - pow2832); @@ -5121,8 +5124,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2853); tempvar temp = temp * (pow0 - pow2854); tempvar temp = temp * (pow0 - pow2855); - tempvar temp = temp * (pow0 - pow2856); - tempvar temp = temp * (pow0 - pow2857); + tempvar temp = temp * (pow0 - pow2858); + tempvar temp = temp * (pow0 - pow2859); tempvar temp = temp * (pow0 - pow2860); tempvar temp = temp * (pow0 - pow2861); tempvar temp = temp * (pow0 - pow2862); @@ -5149,8 +5152,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2883); tempvar temp = temp * (pow0 - pow2884); tempvar temp = temp * (pow0 - pow2885); - tempvar temp = temp * (pow0 - pow2886); - tempvar temp = temp * (pow0 - pow2887); + tempvar temp = temp * (pow0 - pow2888); + tempvar temp = temp * (pow0 - pow2889); tempvar temp = temp * (pow0 - pow2890); tempvar temp = temp * (pow0 - pow2891); tempvar temp = temp * (pow0 - pow2892); @@ -5177,8 +5180,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2913); tempvar temp = temp * (pow0 - pow2914); tempvar temp = temp * (pow0 - pow2915); - tempvar temp = temp * (pow0 - pow2916); - tempvar temp = temp * (pow0 - pow2917); + tempvar temp = temp * (pow0 - pow2918); + tempvar temp = temp * (pow0 - pow2919); tempvar temp = temp * (pow0 - pow2920); tempvar temp = temp * (pow0 - pow2921); tempvar temp = temp * (pow0 - pow2922); @@ -5205,8 +5208,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2943); tempvar temp = temp * (pow0 - pow2944); tempvar temp = temp * (pow0 - pow2945); - tempvar temp = temp * (pow0 - pow2946); - tempvar temp = temp * (pow0 - pow2947); + tempvar temp = temp * (pow0 - pow2948); + tempvar temp = temp * (pow0 - pow2949); tempvar temp = temp * (pow0 - pow2950); tempvar temp = temp * (pow0 - pow2951); tempvar temp = temp * (pow0 - pow2952); @@ -5233,8 +5236,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2973); tempvar temp = temp * (pow0 - pow2974); tempvar temp = temp * (pow0 - pow2975); - tempvar temp = temp * (pow0 - pow2976); - tempvar temp = temp * (pow0 - pow2977); + tempvar temp = temp * (pow0 - pow2978); + tempvar temp = temp * (pow0 - pow2979); tempvar temp = temp * (pow0 - pow2980); tempvar temp = temp * (pow0 - pow2981); tempvar temp = temp * (pow0 - pow2982); @@ -5261,8 +5264,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3003); tempvar temp = temp * (pow0 - pow3004); tempvar temp = temp * (pow0 - pow3005); - tempvar temp = temp * (pow0 - pow3006); - tempvar temp = temp * (pow0 - pow3007); + tempvar temp = temp * (pow0 - pow3008); + tempvar temp = temp * (pow0 - pow3009); tempvar temp = temp * (pow0 - pow3010); tempvar temp = temp * (pow0 - pow3011); tempvar temp = temp * (pow0 - pow3012); @@ -5289,8 +5292,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3033); tempvar temp = temp * (pow0 - pow3034); tempvar temp = temp * (pow0 - pow3035); - tempvar temp = temp * (pow0 - pow3036); - tempvar temp = temp * (pow0 - pow3037); + tempvar temp = temp * (pow0 - pow3038); + tempvar temp = temp * (pow0 - pow3039); tempvar temp = temp * (pow0 - pow3040); tempvar temp = temp * (pow0 - pow3041); tempvar temp = temp * (pow0 - pow3042); @@ -5317,8 +5320,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3063); tempvar temp = temp * (pow0 - pow3064); tempvar temp = temp * (pow0 - pow3065); - tempvar temp = temp * (pow0 - pow3066); - tempvar temp = temp * (pow0 - pow3067); + tempvar temp = temp * (pow0 - pow3068); + tempvar temp = temp * (pow0 - pow3069); tempvar temp = temp * (pow0 - pow3070); tempvar temp = temp * (pow0 - pow3071); tempvar temp = temp * (pow0 - pow3072); @@ -5345,8 +5348,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3093); tempvar temp = temp * (pow0 - pow3094); tempvar temp = temp * (pow0 - pow3095); - tempvar temp = temp * (pow0 - pow3096); - tempvar temp = temp * (pow0 - pow3097); + tempvar temp = temp * (pow0 - pow3098); + tempvar temp = temp * (pow0 - pow3099); tempvar temp = temp * (pow0 - pow3100); tempvar temp = temp * (pow0 - pow3101); tempvar temp = temp * (pow0 - pow3102); @@ -5373,8 +5376,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3123); tempvar temp = temp * (pow0 - pow3124); tempvar temp = temp * (pow0 - pow3125); - tempvar temp = temp * (pow0 - pow3126); - tempvar temp = temp * (pow0 - pow3127); + tempvar temp = temp * (pow0 - pow3128); + tempvar temp = temp * (pow0 - pow3129); tempvar temp = temp * (pow0 - pow3130); tempvar temp = temp * (pow0 - pow3131); tempvar temp = temp * (pow0 - pow3132); @@ -5401,8 +5404,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3153); tempvar temp = temp * (pow0 - pow3154); tempvar temp = temp * (pow0 - pow3155); - tempvar temp = temp * (pow0 - pow3156); - tempvar temp = temp * (pow0 - pow3157); + tempvar temp = temp * (pow0 - pow3158); + tempvar temp = temp * (pow0 - pow3159); tempvar temp = temp * (pow0 - pow3160); tempvar temp = temp * (pow0 - pow3161); tempvar temp = temp * (pow0 - pow3162); @@ -5429,8 +5432,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3183); tempvar temp = temp * (pow0 - pow3184); tempvar temp = temp * (pow0 - pow3185); - tempvar temp = temp * (pow0 - pow3186); - tempvar temp = temp * (pow0 - pow3187); + tempvar temp = temp * (pow0 - pow3188); + tempvar temp = temp * (pow0 - pow3189); tempvar temp = temp * (pow0 - pow3190); tempvar temp = temp * (pow0 - pow3191); tempvar temp = temp * (pow0 - pow3192); @@ -5457,8 +5460,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3213); tempvar temp = temp * (pow0 - pow3214); tempvar temp = temp * (pow0 - pow3215); - tempvar temp = temp * (pow0 - pow3216); - tempvar temp = temp * (pow0 - pow3217); + tempvar temp = temp * (pow0 - pow3218); + tempvar temp = temp * (pow0 - pow3219); tempvar temp = temp * (pow0 - pow3220); tempvar temp = temp * (pow0 - pow3221); tempvar temp = temp * (pow0 - pow3222); @@ -5485,8 +5488,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3243); tempvar temp = temp * (pow0 - pow3244); tempvar temp = temp * (pow0 - pow3245); - tempvar temp = temp * (pow0 - pow3246); - tempvar temp = temp * (pow0 - pow3247); + tempvar temp = temp * (pow0 - pow3248); + tempvar temp = temp * (pow0 - pow3249); tempvar temp = temp * (pow0 - pow3250); tempvar temp = temp * (pow0 - pow3251); tempvar temp = temp * (pow0 - pow3252); @@ -5513,8 +5516,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3273); tempvar temp = temp * (pow0 - pow3274); tempvar temp = temp * (pow0 - pow3275); - tempvar temp = temp * (pow0 - pow3276); - tempvar temp = temp * (pow0 - pow3277); + tempvar temp = temp * (pow0 - pow3278); + tempvar temp = temp * (pow0 - pow3279); tempvar temp = temp * (pow0 - pow3280); tempvar temp = temp * (pow0 - pow3281); tempvar temp = temp * (pow0 - pow3282); @@ -5541,8 +5544,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3303); tempvar temp = temp * (pow0 - pow3304); tempvar temp = temp * (pow0 - pow3305); - tempvar temp = temp * (pow0 - pow3306); - tempvar temp = temp * (pow0 - pow3307); + tempvar temp = temp * (pow0 - pow3308); + tempvar temp = temp * (pow0 - pow3309); tempvar temp = temp * (pow0 - pow3310); tempvar temp = temp * (pow0 - pow3311); tempvar temp = temp * (pow0 - pow3312); @@ -5569,8 +5572,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3333); tempvar temp = temp * (pow0 - pow3334); tempvar temp = temp * (pow0 - pow3335); - tempvar temp = temp * (pow0 - pow3336); - tempvar temp = temp * (pow0 - pow3337); + tempvar temp = temp * (pow0 - pow3338); + tempvar temp = temp * (pow0 - pow3339); tempvar temp = temp * (pow0 - pow3340); tempvar temp = temp * (pow0 - pow3341); tempvar temp = temp * (pow0 - pow3342); @@ -5597,25 +5600,25 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow3363); tempvar temp = temp * (pow0 - pow3364); tempvar temp = temp * (pow0 - pow3365); - tempvar temp = temp * (pow0 - pow3366); - tempvar temp = temp * (pow0 - pow3367); - tempvar temp = temp * (domain49); - tempvar domain52 = temp * (domain51); - tempvar temp = pow3 - pow2121; + tempvar temp = temp * (domain48); + tempvar domain51 = temp * (domain50); + tempvar temp = pow3 - pow2119; + tempvar domain52 = temp * (domain46); + tempvar temp = domain45; tempvar domain53 = temp * (domain47); - tempvar temp = domain46; - tempvar domain54 = temp * (domain48); - tempvar temp = domain51; - tempvar domain55 = temp * (domain54); - tempvar temp = pow0 - pow793; + tempvar temp = domain50; + tempvar domain54 = temp * (domain53); + tempvar temp = pow0 - pow791; + tempvar temp = temp * (pow0 - pow792); + tempvar temp = temp * (pow0 - pow793); tempvar temp = temp * (pow0 - pow794); tempvar temp = temp * (pow0 - pow795); tempvar temp = temp * (pow0 - pow796); tempvar temp = temp * (pow0 - pow797); - tempvar temp = temp * (pow0 - pow798); - tempvar temp = temp * (pow0 - pow799); - tempvar domain56 = temp * (pow0 - pow800); - tempvar temp = pow0 - pow801; + tempvar domain55 = temp * (pow0 - pow798); + tempvar temp = pow0 - pow799; + tempvar temp = temp * (pow0 - pow800); + tempvar temp = temp * (pow0 - pow801); tempvar temp = temp * (pow0 - pow802); tempvar temp = temp * (pow0 - pow803); tempvar temp = temp * (pow0 - pow804); @@ -5629,19 +5632,19 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow812); tempvar temp = temp * (pow0 - pow813); tempvar temp = temp * (pow0 - pow814); - tempvar temp = temp * (pow0 - pow815); - tempvar temp = temp * (pow0 - pow816); - tempvar temp = temp * (domain38); - tempvar domain57 = temp * (domain56); - tempvar temp = pow0 - pow2549; + tempvar temp = temp * (domain37); + tempvar domain56 = temp * (domain55); + tempvar temp = pow0 - pow2547; + tempvar temp = temp * (pow0 - pow2548); + tempvar temp = temp * (pow0 - pow2549); tempvar temp = temp * (pow0 - pow2550); tempvar temp = temp * (pow0 - pow2551); tempvar temp = temp * (pow0 - pow2552); tempvar temp = temp * (pow0 - pow2553); - tempvar temp = temp * (pow0 - pow2554); - tempvar temp = temp * (pow0 - pow2555); - tempvar domain58 = temp * (pow0 - pow2556); - tempvar temp = pow0 - pow2557; + tempvar domain57 = temp * (pow0 - pow2554); + tempvar temp = pow0 - pow2555; + tempvar temp = temp * (pow0 - pow2556); + tempvar temp = temp * (pow0 - pow2557); tempvar temp = temp * (pow0 - pow2558); tempvar temp = temp * (pow0 - pow2559); tempvar temp = temp * (pow0 - pow2560); @@ -5655,44 +5658,44 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2568); tempvar temp = temp * (pow0 - pow2569); tempvar temp = temp * (pow0 - pow2570); - tempvar temp = temp * (pow0 - pow2571); - tempvar temp = temp * (pow0 - pow2572); - tempvar temp = temp * (domain55); - tempvar domain59 = temp * (domain58); - tempvar temp = pow0 - pow2512; + tempvar temp = temp * (domain54); + tempvar domain58 = temp * (domain57); + tempvar temp = pow0 - pow2510; + tempvar temp = temp * (pow0 - pow2511); + tempvar temp = temp * (pow0 - pow2512); tempvar temp = temp * (pow0 - pow2513); tempvar temp = temp * (pow0 - pow2514); tempvar temp = temp * (pow0 - pow2515); tempvar temp = temp * (pow0 - pow2516); - tempvar temp = temp * (pow0 - pow2517); - tempvar temp = temp * (pow0 - pow2518); - tempvar domain60 = temp * (pow0 - pow2519); - tempvar temp = pow0 - pow2397; + tempvar domain59 = temp * (pow0 - pow2517); + tempvar temp = pow0 - pow2395; + tempvar temp = temp * (pow0 - pow2396); + tempvar temp = temp * (pow0 - pow2397); tempvar temp = temp * (pow0 - pow2398); tempvar temp = temp * (pow0 - pow2399); tempvar temp = temp * (pow0 - pow2400); tempvar temp = temp * (pow0 - pow2401); tempvar temp = temp * (pow0 - pow2402); - tempvar temp = temp * (pow0 - pow2403); - tempvar temp = temp * (pow0 - pow2404); + tempvar temp = temp * (pow0 - pow2434); + tempvar temp = temp * (pow0 - pow2435); tempvar temp = temp * (pow0 - pow2436); tempvar temp = temp * (pow0 - pow2437); tempvar temp = temp * (pow0 - pow2438); tempvar temp = temp * (pow0 - pow2439); tempvar temp = temp * (pow0 - pow2440); tempvar temp = temp * (pow0 - pow2441); - tempvar temp = temp * (pow0 - pow2442); - tempvar temp = temp * (pow0 - pow2443); + tempvar temp = temp * (pow0 - pow2471); + tempvar temp = temp * (pow0 - pow2472); tempvar temp = temp * (pow0 - pow2473); tempvar temp = temp * (pow0 - pow2474); tempvar temp = temp * (pow0 - pow2475); tempvar temp = temp * (pow0 - pow2476); tempvar temp = temp * (pow0 - pow2477); tempvar temp = temp * (pow0 - pow2478); - tempvar temp = temp * (pow0 - pow2479); - tempvar temp = temp * (pow0 - pow2480); - tempvar domain61 = temp * (domain60); - tempvar temp = pow0 - pow2520; + tempvar domain60 = temp * (domain59); + tempvar temp = pow0 - pow2518; + tempvar temp = temp * (pow0 - pow2519); + tempvar temp = temp * (pow0 - pow2520); tempvar temp = temp * (pow0 - pow2521); tempvar temp = temp * (pow0 - pow2522); tempvar temp = temp * (pow0 - pow2523); @@ -5706,10 +5709,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2531); tempvar temp = temp * (pow0 - pow2532); tempvar temp = temp * (pow0 - pow2533); - tempvar temp = temp * (pow0 - pow2534); - tempvar temp = temp * (pow0 - pow2535); - tempvar domain62 = temp * (domain59); - tempvar temp = pow0 - pow2405; + tempvar domain61 = temp * (domain58); + tempvar temp = pow0 - pow2403; + tempvar temp = temp * (pow0 - pow2404); + tempvar temp = temp * (pow0 - pow2405); tempvar temp = temp * (pow0 - pow2406); tempvar temp = temp * (pow0 - pow2407); tempvar temp = temp * (pow0 - pow2408); @@ -5723,8 +5726,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2416); tempvar temp = temp * (pow0 - pow2417); tempvar temp = temp * (pow0 - pow2418); - tempvar temp = temp * (pow0 - pow2419); - tempvar temp = temp * (pow0 - pow2420); + tempvar temp = temp * (pow0 - pow2442); + tempvar temp = temp * (pow0 - pow2443); tempvar temp = temp * (pow0 - pow2444); tempvar temp = temp * (pow0 - pow2445); tempvar temp = temp * (pow0 - pow2446); @@ -5739,8 +5742,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2455); tempvar temp = temp * (pow0 - pow2456); tempvar temp = temp * (pow0 - pow2457); - tempvar temp = temp * (pow0 - pow2458); - tempvar temp = temp * (pow0 - pow2459); + tempvar temp = temp * (pow0 - pow2479); + tempvar temp = temp * (pow0 - pow2480); tempvar temp = temp * (pow0 - pow2481); tempvar temp = temp * (pow0 - pow2482); tempvar temp = temp * (pow0 - pow2483); @@ -5755,45 +5758,45 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2492); tempvar temp = temp * (pow0 - pow2493); tempvar temp = temp * (pow0 - pow2494); - tempvar temp = temp * (pow0 - pow2495); - tempvar temp = temp * (pow0 - pow2496); - tempvar temp = temp * (domain61); - tempvar domain63 = temp * (domain62); - tempvar temp = pow0 - pow2321; + tempvar temp = temp * (domain60); + tempvar domain62 = temp * (domain61); + tempvar temp = pow0 - pow2319; + tempvar temp = temp * (pow0 - pow2320); + tempvar temp = temp * (pow0 - pow2321); tempvar temp = temp * (pow0 - pow2322); tempvar temp = temp * (pow0 - pow2323); tempvar temp = temp * (pow0 - pow2324); tempvar temp = temp * (pow0 - pow2325); tempvar temp = temp * (pow0 - pow2326); - tempvar temp = temp * (pow0 - pow2327); - tempvar temp = temp * (pow0 - pow2328); + tempvar temp = temp * (pow0 - pow2358); + tempvar temp = temp * (pow0 - pow2359); tempvar temp = temp * (pow0 - pow2360); tempvar temp = temp * (pow0 - pow2361); tempvar temp = temp * (pow0 - pow2362); tempvar temp = temp * (pow0 - pow2363); tempvar temp = temp * (pow0 - pow2364); - tempvar temp = temp * (pow0 - pow2365); - tempvar temp = temp * (pow0 - pow2366); - tempvar domain64 = temp * (pow0 - pow2367); - tempvar temp = pow0 - pow2284; + tempvar domain63 = temp * (pow0 - pow2365); + tempvar temp = pow0 - pow2282; + tempvar temp = temp * (pow0 - pow2283); + tempvar temp = temp * (pow0 - pow2284); tempvar temp = temp * (pow0 - pow2285); tempvar temp = temp * (pow0 - pow2286); tempvar temp = temp * (pow0 - pow2287); tempvar temp = temp * (pow0 - pow2288); tempvar temp = temp * (pow0 - pow2289); - tempvar temp = temp * (pow0 - pow2290); - tempvar temp = temp * (pow0 - pow2291); - tempvar domain65 = temp * (domain64); - tempvar temp = pow0 - pow2245; + tempvar domain64 = temp * (domain63); + tempvar temp = pow0 - pow2243; + tempvar temp = temp * (pow0 - pow2244); + tempvar temp = temp * (pow0 - pow2245); tempvar temp = temp * (pow0 - pow2246); tempvar temp = temp * (pow0 - pow2247); tempvar temp = temp * (pow0 - pow2248); tempvar temp = temp * (pow0 - pow2249); tempvar temp = temp * (pow0 - pow2250); - tempvar temp = temp * (pow0 - pow2251); - tempvar temp = temp * (pow0 - pow2252); - tempvar domain66 = temp * (domain65); - tempvar temp = pow0 - pow2329; + tempvar domain65 = temp * (domain64); + tempvar temp = pow0 - pow2327; + tempvar temp = temp * (pow0 - pow2328); + tempvar temp = temp * (pow0 - pow2329); tempvar temp = temp * (pow0 - pow2330); tempvar temp = temp * (pow0 - pow2331); tempvar temp = temp * (pow0 - pow2332); @@ -5807,8 +5810,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2340); tempvar temp = temp * (pow0 - pow2341); tempvar temp = temp * (pow0 - pow2342); - tempvar temp = temp * (pow0 - pow2343); - tempvar temp = temp * (pow0 - pow2344); + tempvar temp = temp * (pow0 - pow2366); + tempvar temp = temp * (pow0 - pow2367); tempvar temp = temp * (pow0 - pow2368); tempvar temp = temp * (pow0 - pow2369); tempvar temp = temp * (pow0 - pow2370); @@ -5823,10 +5826,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2379); tempvar temp = temp * (pow0 - pow2380); tempvar temp = temp * (pow0 - pow2381); - tempvar temp = temp * (pow0 - pow2382); - tempvar temp = temp * (pow0 - pow2383); - tempvar domain67 = temp * (domain63); - tempvar temp = pow0 - pow2253; + tempvar domain66 = temp * (domain62); + tempvar temp = pow0 - pow2251; + tempvar temp = temp * (pow0 - pow2252); + tempvar temp = temp * (pow0 - pow2253); tempvar temp = temp * (pow0 - pow2254); tempvar temp = temp * (pow0 - pow2255); tempvar temp = temp * (pow0 - pow2256); @@ -5840,8 +5843,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2264); tempvar temp = temp * (pow0 - pow2265); tempvar temp = temp * (pow0 - pow2266); - tempvar temp = temp * (pow0 - pow2267); - tempvar temp = temp * (pow0 - pow2268); + tempvar temp = temp * (pow0 - pow2290); + tempvar temp = temp * (pow0 - pow2291); tempvar temp = temp * (pow0 - pow2292); tempvar temp = temp * (pow0 - pow2293); tempvar temp = temp * (pow0 - pow2294); @@ -5856,59 +5859,58 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2303); tempvar temp = temp * (pow0 - pow2304); tempvar temp = temp * (pow0 - pow2305); - tempvar temp = temp * (pow0 - pow2306); - tempvar temp = temp * (pow0 - pow2307); - tempvar temp = temp * (domain66); - tempvar domain68 = temp * (domain67); - tempvar temp = pow0 - pow2121; + tempvar temp = temp * (domain65); + tempvar domain67 = temp * (domain66); + tempvar temp = pow0 - pow2119; + tempvar temp = temp * (pow0 - pow2121); tempvar temp = temp * (pow0 - pow2123); tempvar temp = temp * (pow0 - pow2125); tempvar temp = temp * (pow0 - pow2127); tempvar temp = temp * (pow0 - pow2129); tempvar temp = temp * (pow0 - pow2131); tempvar temp = temp * (pow0 - pow2133); - tempvar temp = temp * (pow0 - pow2135); + tempvar temp = temp * (pow0 - pow2120); tempvar temp = temp * (pow0 - pow2122); tempvar temp = temp * (pow0 - pow2124); tempvar temp = temp * (pow0 - pow2126); tempvar temp = temp * (pow0 - pow2128); tempvar temp = temp * (pow0 - pow2130); tempvar temp = temp * (pow0 - pow2132); - tempvar temp = temp * (pow0 - pow2134); - tempvar temp = temp * (pow0 - pow2152); + tempvar temp = temp * (pow0 - pow2150); + tempvar temp = temp * (pow0 - pow2167); + tempvar temp = temp * (pow0 - pow2168); tempvar temp = temp * (pow0 - pow2169); tempvar temp = temp * (pow0 - pow2170); tempvar temp = temp * (pow0 - pow2171); tempvar temp = temp * (pow0 - pow2172); tempvar temp = temp * (pow0 - pow2173); tempvar temp = temp * (pow0 - pow2174); - tempvar temp = temp * (pow0 - pow2175); - tempvar temp = temp * (pow0 - pow2176); + tempvar temp = temp * (pow0 - pow2206); + tempvar temp = temp * (pow0 - pow2207); tempvar temp = temp * (pow0 - pow2208); tempvar temp = temp * (pow0 - pow2209); tempvar temp = temp * (pow0 - pow2210); tempvar temp = temp * (pow0 - pow2211); tempvar temp = temp * (pow0 - pow2212); - tempvar temp = temp * (pow0 - pow2213); - tempvar temp = temp * (pow0 - pow2214); - tempvar domain69 = temp * (pow0 - pow2215); - tempvar temp = pow0 - pow2097; + tempvar domain68 = temp * (pow0 - pow2213); + tempvar temp = pow0 - pow2095; + tempvar temp = temp * (pow0 - pow2096); + tempvar temp = temp * (pow0 - pow2097); tempvar temp = temp * (pow0 - pow2098); tempvar temp = temp * (pow0 - pow2099); tempvar temp = temp * (pow0 - pow2100); tempvar temp = temp * (pow0 - pow2101); tempvar temp = temp * (pow0 - pow2102); - tempvar temp = temp * (pow0 - pow2103); - tempvar temp = temp * (pow0 - pow2104); - tempvar domain70 = temp * (domain69); - tempvar temp = pow0 - pow2025; + tempvar domain69 = temp * (domain68); + tempvar temp = pow0 - pow2023; + tempvar temp = temp * (pow0 - pow2025); tempvar temp = temp * (pow0 - pow2027); tempvar temp = temp * (pow0 - pow2029); tempvar temp = temp * (pow0 - pow2031); tempvar temp = temp * (pow0 - pow2033); tempvar temp = temp * (pow0 - pow2035); tempvar temp = temp * (pow0 - pow2037); - tempvar temp = temp * (pow0 - pow2039); + tempvar temp = temp * (pow0 - pow2024); tempvar temp = temp * (pow0 - pow2026); tempvar temp = temp * (pow0 - pow2028); tempvar temp = temp * (pow0 - pow2030); @@ -5916,35 +5918,36 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2034); tempvar temp = temp * (pow0 - pow2036); tempvar temp = temp * (pow0 - pow2038); - tempvar temp = temp * (pow0 - pow2040); + tempvar temp = temp * (pow0 - pow2071); + tempvar temp = temp * (pow0 - pow2072); tempvar temp = temp * (pow0 - pow2073); tempvar temp = temp * (pow0 - pow2074); tempvar temp = temp * (pow0 - pow2075); tempvar temp = temp * (pow0 - pow2076); tempvar temp = temp * (pow0 - pow2077); tempvar temp = temp * (pow0 - pow2078); - tempvar temp = temp * (pow0 - pow2079); - tempvar temp = temp * (pow0 - pow2080); - tempvar domain71 = temp * (domain70); - tempvar temp = pow0 - pow1994; + tempvar domain70 = temp * (domain69); + tempvar temp = pow0 - pow1992; + tempvar temp = temp * (pow0 - pow1993); + tempvar temp = temp * (pow0 - pow1994); tempvar temp = temp * (pow0 - pow1995); tempvar temp = temp * (pow0 - pow1996); tempvar temp = temp * (pow0 - pow1997); tempvar temp = temp * (pow0 - pow1998); tempvar temp = temp * (pow0 - pow1999); - tempvar temp = temp * (pow0 - pow2000); - tempvar temp = temp * (pow0 - pow2001); - tempvar domain72 = temp * (domain71); - tempvar temp = pow0 - pow1955; + tempvar domain71 = temp * (domain70); + tempvar temp = pow0 - pow1953; + tempvar temp = temp * (pow0 - pow1954); + tempvar temp = temp * (pow0 - pow1955); tempvar temp = temp * (pow0 - pow1956); tempvar temp = temp * (pow0 - pow1957); tempvar temp = temp * (pow0 - pow1958); tempvar temp = temp * (pow0 - pow1959); tempvar temp = temp * (pow0 - pow1960); - tempvar temp = temp * (pow0 - pow1961); - tempvar temp = temp * (pow0 - pow1962); - tempvar domain73 = temp * (domain72); - tempvar temp = pow0 - pow2136; + tempvar domain72 = temp * (domain71); + tempvar temp = pow0 - pow2134; + tempvar temp = temp * (pow0 - pow2135); + tempvar temp = temp * (pow0 - pow2136); tempvar temp = temp * (pow0 - pow2137); tempvar temp = temp * (pow0 - pow2138); tempvar temp = temp * (pow0 - pow2139); @@ -5958,8 +5961,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2147); tempvar temp = temp * (pow0 - pow2148); tempvar temp = temp * (pow0 - pow2149); - tempvar temp = temp * (pow0 - pow2150); tempvar temp = temp * (pow0 - pow2151); + tempvar temp = temp * (pow0 - pow2152); tempvar temp = temp * (pow0 - pow2153); tempvar temp = temp * (pow0 - pow2154); tempvar temp = temp * (pow0 - pow2155); @@ -5974,8 +5977,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2164); tempvar temp = temp * (pow0 - pow2165); tempvar temp = temp * (pow0 - pow2166); - tempvar temp = temp * (pow0 - pow2167); - tempvar temp = temp * (pow0 - pow2168); + tempvar temp = temp * (pow0 - pow2175); + tempvar temp = temp * (pow0 - pow2176); tempvar temp = temp * (pow0 - pow2177); tempvar temp = temp * (pow0 - pow2178); tempvar temp = temp * (pow0 - pow2179); @@ -5990,8 +5993,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2188); tempvar temp = temp * (pow0 - pow2189); tempvar temp = temp * (pow0 - pow2190); - tempvar temp = temp * (pow0 - pow2191); - tempvar temp = temp * (pow0 - pow2192); + tempvar temp = temp * (pow0 - pow2214); + tempvar temp = temp * (pow0 - pow2215); tempvar temp = temp * (pow0 - pow2216); tempvar temp = temp * (pow0 - pow2217); tempvar temp = temp * (pow0 - pow2218); @@ -6006,10 +6009,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2227); tempvar temp = temp * (pow0 - pow2228); tempvar temp = temp * (pow0 - pow2229); - tempvar temp = temp * (pow0 - pow2230); - tempvar temp = temp * (pow0 - pow2231); - tempvar domain74 = temp * (domain68); - tempvar temp = pow0 - pow2105; + tempvar domain73 = temp * (domain67); + tempvar temp = pow0 - pow2103; + tempvar temp = temp * (pow0 - pow2104); + tempvar temp = temp * (pow0 - pow2105); tempvar temp = temp * (pow0 - pow2106); tempvar temp = temp * (pow0 - pow2107); tempvar temp = temp * (pow0 - pow2108); @@ -6023,10 +6026,9 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2116); tempvar temp = temp * (pow0 - pow2117); tempvar temp = temp * (pow0 - pow2118); - tempvar temp = temp * (pow0 - pow2119); - tempvar temp = temp * (pow0 - pow2120); - tempvar domain75 = temp * (domain74); - tempvar temp = pow0 - pow2041; + tempvar domain74 = temp * (domain73); + tempvar temp = pow0 - pow2039; + tempvar temp = temp * (pow0 - pow2041); tempvar temp = temp * (pow0 - pow2043); tempvar temp = temp * (pow0 - pow2045); tempvar temp = temp * (pow0 - pow2047); @@ -6041,7 +6043,7 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2065); tempvar temp = temp * (pow0 - pow2067); tempvar temp = temp * (pow0 - pow2069); - tempvar temp = temp * (pow0 - pow2071); + tempvar temp = temp * (pow0 - pow2040); tempvar temp = temp * (pow0 - pow2042); tempvar temp = temp * (pow0 - pow2044); tempvar temp = temp * (pow0 - pow2046); @@ -6057,7 +6059,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2066); tempvar temp = temp * (pow0 - pow2068); tempvar temp = temp * (pow0 - pow2070); - tempvar temp = temp * (pow0 - pow2072); + tempvar temp = temp * (pow0 - pow2079); + tempvar temp = temp * (pow0 - pow2080); tempvar temp = temp * (pow0 - pow2081); tempvar temp = temp * (pow0 - pow2082); tempvar temp = temp * (pow0 - pow2083); @@ -6072,10 +6075,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2092); tempvar temp = temp * (pow0 - pow2093); tempvar temp = temp * (pow0 - pow2094); - tempvar temp = temp * (pow0 - pow2095); - tempvar temp = temp * (pow0 - pow2096); - tempvar domain76 = temp * (domain75); - tempvar temp = pow0 - pow2002; + tempvar domain75 = temp * (domain74); + tempvar temp = pow0 - pow2000; + tempvar temp = temp * (pow0 - pow2001); + tempvar temp = temp * (pow0 - pow2002); tempvar temp = temp * (pow0 - pow2003); tempvar temp = temp * (pow0 - pow2004); tempvar temp = temp * (pow0 - pow2005); @@ -6089,10 +6092,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow2013); tempvar temp = temp * (pow0 - pow2014); tempvar temp = temp * (pow0 - pow2015); - tempvar temp = temp * (pow0 - pow2016); - tempvar temp = temp * (pow0 - pow2017); - tempvar domain77 = temp * (domain76); - tempvar temp = pow0 - pow1963; + tempvar domain76 = temp * (domain75); + tempvar temp = pow0 - pow1961; + tempvar temp = temp * (pow0 - pow1962); + tempvar temp = temp * (pow0 - pow1963); tempvar temp = temp * (pow0 - pow1964); tempvar temp = temp * (pow0 - pow1965); tempvar temp = temp * (pow0 - pow1966); @@ -6106,19 +6109,19 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1974); tempvar temp = temp * (pow0 - pow1975); tempvar temp = temp * (pow0 - pow1976); - tempvar temp = temp * (pow0 - pow1977); - tempvar temp = temp * (pow0 - pow1978); - tempvar temp = temp * (domain73); - tempvar domain78 = temp * (domain77); - tempvar temp = pow0 - pow1924; + tempvar temp = temp * (domain72); + tempvar domain77 = temp * (domain76); + tempvar temp = pow0 - pow1922; + tempvar temp = temp * (pow0 - pow1923); + tempvar temp = temp * (pow0 - pow1924); tempvar temp = temp * (pow0 - pow1925); tempvar temp = temp * (pow0 - pow1926); tempvar temp = temp * (pow0 - pow1927); tempvar temp = temp * (pow0 - pow1928); - tempvar temp = temp * (pow0 - pow1929); - tempvar temp = temp * (pow0 - pow1930); - tempvar domain79 = temp * (pow0 - pow1931); - tempvar temp = pow0 - pow1932; + tempvar domain78 = temp * (pow0 - pow1929); + tempvar temp = pow0 - pow1930; + tempvar temp = temp * (pow0 - pow1931); + tempvar temp = temp * (pow0 - pow1932); tempvar temp = temp * (pow0 - pow1933); tempvar temp = temp * (pow0 - pow1934); tempvar temp = temp * (pow0 - pow1935); @@ -6132,27 +6135,27 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1943); tempvar temp = temp * (pow0 - pow1944); tempvar temp = temp * (pow0 - pow1945); - tempvar temp = temp * (pow0 - pow1946); - tempvar temp = temp * (pow0 - pow1947); - tempvar temp = temp * (domain78); - tempvar domain80 = temp * (domain79); - tempvar temp = pow0 - pow1854; + tempvar temp = temp * (domain77); + tempvar domain79 = temp * (domain78); + tempvar temp = pow0 - pow1852; + tempvar temp = temp * (pow0 - pow1853); + tempvar temp = temp * (pow0 - pow1854); tempvar temp = temp * (pow0 - pow1855); tempvar temp = temp * (pow0 - pow1856); tempvar temp = temp * (pow0 - pow1857); tempvar temp = temp * (pow0 - pow1858); tempvar temp = temp * (pow0 - pow1859); - tempvar temp = temp * (pow0 - pow1860); - tempvar temp = temp * (pow0 - pow1861); + tempvar temp = temp * (pow0 - pow1883); + tempvar temp = temp * (pow0 - pow1884); tempvar temp = temp * (pow0 - pow1885); tempvar temp = temp * (pow0 - pow1886); tempvar temp = temp * (pow0 - pow1887); tempvar temp = temp * (pow0 - pow1888); tempvar temp = temp * (pow0 - pow1889); - tempvar temp = temp * (pow0 - pow1890); - tempvar temp = temp * (pow0 - pow1891); - tempvar domain81 = temp * (pow0 - pow1892); - tempvar temp = pow0 - pow1743; + tempvar domain80 = temp * (pow0 - pow1890); + tempvar temp = pow0 - pow1741; + tempvar temp = temp * (pow0 - pow1742); + tempvar temp = temp * (pow0 - pow1743); tempvar temp = temp * (pow0 - pow1744); tempvar temp = temp * (pow0 - pow1745); tempvar temp = temp * (pow0 - pow1746); @@ -6166,10 +6169,9 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1754); tempvar temp = temp * (pow0 - pow1755); tempvar temp = temp * (pow0 - pow1756); - tempvar temp = temp * (pow0 - pow1757); - tempvar temp = temp * (pow0 - pow1758); - tempvar domain82 = temp * (domain81); - tempvar temp = pow0 - pow1807; + tempvar domain81 = temp * (domain80); + tempvar temp = pow0 - pow1805; + tempvar temp = temp * (pow0 - pow1807); tempvar temp = temp * (pow0 - pow1809); tempvar temp = temp * (pow0 - pow1811); tempvar temp = temp * (pow0 - pow1813); @@ -6184,7 +6186,7 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1831); tempvar temp = temp * (pow0 - pow1833); tempvar temp = temp * (pow0 - pow1835); - tempvar temp = temp * (pow0 - pow1837); + tempvar temp = temp * (pow0 - pow1806); tempvar temp = temp * (pow0 - pow1808); tempvar temp = temp * (pow0 - pow1810); tempvar temp = temp * (pow0 - pow1812); @@ -6200,7 +6202,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1832); tempvar temp = temp * (pow0 - pow1834); tempvar temp = temp * (pow0 - pow1836); - tempvar temp = temp * (pow0 - pow1838); + tempvar temp = temp * (pow0 - pow1860); + tempvar temp = temp * (pow0 - pow1861); tempvar temp = temp * (pow0 - pow1862); tempvar temp = temp * (pow0 - pow1863); tempvar temp = temp * (pow0 - pow1864); @@ -6215,8 +6218,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1873); tempvar temp = temp * (pow0 - pow1874); tempvar temp = temp * (pow0 - pow1875); - tempvar temp = temp * (pow0 - pow1876); - tempvar temp = temp * (pow0 - pow1877); + tempvar temp = temp * (pow0 - pow1891); + tempvar temp = temp * (pow0 - pow1892); tempvar temp = temp * (pow0 - pow1893); tempvar temp = temp * (pow0 - pow1894); tempvar temp = temp * (pow0 - pow1895); @@ -6231,18 +6234,17 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1904); tempvar temp = temp * (pow0 - pow1905); tempvar temp = temp * (pow0 - pow1906); - tempvar temp = temp * (pow0 - pow1907); - tempvar temp = temp * (pow0 - pow1908); - tempvar temp = temp * (domain80); - tempvar domain83 = temp * (domain82); - tempvar temp = pow0 - pow1727; + tempvar temp = temp * (domain79); + tempvar domain82 = temp * (domain81); + tempvar temp = pow0 - pow1725; + tempvar temp = temp * (pow0 - pow1726); + tempvar temp = temp * (pow0 - pow1727); tempvar temp = temp * (pow0 - pow1728); tempvar temp = temp * (pow0 - pow1729); tempvar temp = temp * (pow0 - pow1730); tempvar temp = temp * (pow0 - pow1731); tempvar temp = temp * (pow0 - pow1732); - tempvar temp = temp * (pow0 - pow1733); - tempvar temp = temp * (pow0 - pow1734); + tempvar temp = temp * (pow0 - pow1773); tempvar temp = temp * (pow0 - pow1775); tempvar temp = temp * (pow0 - pow1777); tempvar temp = temp * (pow0 - pow1779); @@ -6257,16 +6259,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1797); tempvar temp = temp * (pow0 - pow1799); tempvar temp = temp * (pow0 - pow1801); - tempvar temp = temp * (pow0 - pow1803); - tempvar temp = temp * (pow0 - pow1804); + tempvar temp = temp * (pow0 - pow1802); + tempvar temp = temp * (pow0 - pow1733); + tempvar temp = temp * (pow0 - pow1734); tempvar temp = temp * (pow0 - pow1735); tempvar temp = temp * (pow0 - pow1736); tempvar temp = temp * (pow0 - pow1737); tempvar temp = temp * (pow0 - pow1738); tempvar temp = temp * (pow0 - pow1739); tempvar temp = temp * (pow0 - pow1740); - tempvar temp = temp * (pow0 - pow1741); - tempvar temp = temp * (pow0 - pow1742); + tempvar temp = temp * (pow0 - pow1774); tempvar temp = temp * (pow0 - pow1776); tempvar temp = temp * (pow0 - pow1778); tempvar temp = temp * (pow0 - pow1780); @@ -6280,18 +6282,19 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1796); tempvar temp = temp * (pow0 - pow1798); tempvar temp = temp * (pow0 - pow1800); - tempvar temp = temp * (pow0 - pow1802); - tempvar temp = temp * (pow0 - pow1805); - tempvar temp = temp * (pow0 - pow1806); - tempvar domain84 = temp * (domain83); - tempvar temp = pow0 - pow1719; + tempvar temp = temp * (pow0 - pow1803); + tempvar temp = temp * (pow0 - pow1804); + tempvar domain83 = temp * (domain82); + tempvar temp = pow0 - pow1717; + tempvar temp = temp * (pow0 - pow1718); + tempvar temp = temp * (pow0 - pow1719); tempvar temp = temp * (pow0 - pow1720); tempvar temp = temp * (pow0 - pow1721); tempvar temp = temp * (pow0 - pow1722); tempvar temp = temp * (pow0 - pow1723); tempvar temp = temp * (pow0 - pow1724); - tempvar temp = temp * (pow0 - pow1725); - tempvar temp = temp * (pow0 - pow1726); + tempvar temp = temp * (pow0 - pow1757); + tempvar temp = temp * (pow0 - pow1758); tempvar temp = temp * (pow0 - pow1759); tempvar temp = temp * (pow0 - pow1760); tempvar temp = temp * (pow0 - pow1761); @@ -6306,44 +6309,44 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1770); tempvar temp = temp * (pow0 - pow1771); tempvar temp = temp * (pow0 - pow1772); - tempvar temp = temp * (pow0 - pow1773); - tempvar temp = temp * (pow0 - pow1774); - tempvar domain85 = temp * (domain84); - tempvar temp = pow0 - pow824; + tempvar domain84 = temp * (domain83); + tempvar temp = pow0 - pow822; + tempvar temp = temp * (pow0 - pow823); + tempvar temp = temp * (pow0 - pow824); tempvar temp = temp * (pow0 - pow825); tempvar temp = temp * (pow0 - pow826); tempvar temp = temp * (pow0 - pow827); tempvar temp = temp * (pow0 - pow828); - tempvar temp = temp * (pow0 - pow829); - tempvar temp = temp * (pow0 - pow830); - tempvar domain86 = temp * (pow0 - pow831); - tempvar temp = pow0 - pow863; + tempvar domain85 = temp * (pow0 - pow829); + tempvar temp = pow0 - pow861; + tempvar temp = temp * (pow0 - pow862); + tempvar temp = temp * (pow0 - pow863); tempvar temp = temp * (pow0 - pow864); tempvar temp = temp * (pow0 - pow865); tempvar temp = temp * (pow0 - pow866); tempvar temp = temp * (pow0 - pow867); - tempvar temp = temp * (pow0 - pow868); - tempvar temp = temp * (pow0 - pow869); - tempvar domain87 = temp * (pow0 - pow870); - tempvar temp = pow0 - pow894; + tempvar domain86 = temp * (pow0 - pow868); + tempvar temp = pow0 - pow892; + tempvar temp = temp * (pow0 - pow893); + tempvar temp = temp * (pow0 - pow894); tempvar temp = temp * (pow0 - pow895); tempvar temp = temp * (pow0 - pow896); tempvar temp = temp * (pow0 - pow897); tempvar temp = temp * (pow0 - pow898); tempvar temp = temp * (pow0 - pow899); - tempvar temp = temp * (pow0 - pow900); - tempvar temp = temp * (pow0 - pow901); + tempvar temp = temp * (pow0 - pow931); + tempvar temp = temp * (pow0 - pow932); tempvar temp = temp * (pow0 - pow933); tempvar temp = temp * (pow0 - pow934); tempvar temp = temp * (pow0 - pow935); tempvar temp = temp * (pow0 - pow936); tempvar temp = temp * (pow0 - pow937); tempvar temp = temp * (pow0 - pow938); - tempvar temp = temp * (pow0 - pow939); - tempvar temp = temp * (pow0 - pow940); - tempvar temp = temp * (domain86); - tempvar domain88 = temp * (domain87); - tempvar temp = pow0 - pow832; + tempvar temp = temp * (domain85); + tempvar domain87 = temp * (domain86); + tempvar temp = pow0 - pow830; + tempvar temp = temp * (pow0 - pow831); + tempvar temp = temp * (pow0 - pow832); tempvar temp = temp * (pow0 - pow833); tempvar temp = temp * (pow0 - pow834); tempvar temp = temp * (pow0 - pow835); @@ -6357,10 +6360,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow843); tempvar temp = temp * (pow0 - pow844); tempvar temp = temp * (pow0 - pow845); - tempvar temp = temp * (pow0 - pow846); - tempvar temp = temp * (pow0 - pow847); - tempvar domain89 = temp * (domain57); - tempvar temp = pow0 - pow871; + tempvar domain88 = temp * (domain56); + tempvar temp = pow0 - pow869; + tempvar temp = temp * (pow0 - pow870); + tempvar temp = temp * (pow0 - pow871); tempvar temp = temp * (pow0 - pow872); tempvar temp = temp * (pow0 - pow873); tempvar temp = temp * (pow0 - pow874); @@ -6373,10 +6376,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow881); tempvar temp = temp * (pow0 - pow882); tempvar temp = temp * (pow0 - pow883); - tempvar temp = temp * (pow0 - pow884); - tempvar temp = temp * (pow0 - pow885); - tempvar domain90 = temp * (pow0 - pow886); - tempvar temp = pow0 - pow902; + tempvar domain89 = temp * (pow0 - pow884); + tempvar temp = pow0 - pow900; + tempvar temp = temp * (pow0 - pow901); + tempvar temp = temp * (pow0 - pow902); tempvar temp = temp * (pow0 - pow903); tempvar temp = temp * (pow0 - pow904); tempvar temp = temp * (pow0 - pow905); @@ -6390,8 +6393,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow913); tempvar temp = temp * (pow0 - pow914); tempvar temp = temp * (pow0 - pow915); - tempvar temp = temp * (pow0 - pow916); - tempvar temp = temp * (pow0 - pow917); + tempvar temp = temp * (pow0 - pow939); + tempvar temp = temp * (pow0 - pow940); tempvar temp = temp * (pow0 - pow941); tempvar temp = temp * (pow0 - pow942); tempvar temp = temp * (pow0 - pow943); @@ -6406,47 +6409,47 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow952); tempvar temp = temp * (pow0 - pow953); tempvar temp = temp * (pow0 - pow954); - tempvar temp = temp * (pow0 - pow955); - tempvar temp = temp * (pow0 - pow956); + tempvar temp = temp * (domain87); tempvar temp = temp * (domain88); - tempvar temp = temp * (domain89); - tempvar domain91 = temp * (domain90); - tempvar temp = pow0 - pow988; + tempvar domain90 = temp * (domain89); + tempvar temp = pow0 - pow986; + tempvar temp = temp * (pow0 - pow987); + tempvar temp = temp * (pow0 - pow988); tempvar temp = temp * (pow0 - pow989); tempvar temp = temp * (pow0 - pow990); tempvar temp = temp * (pow0 - pow991); tempvar temp = temp * (pow0 - pow992); - tempvar temp = temp * (pow0 - pow993); - tempvar temp = temp * (pow0 - pow994); - tempvar domain92 = temp * (pow0 - pow995); - tempvar temp = pow0 - pow964; + tempvar domain91 = temp * (pow0 - pow993); + tempvar temp = pow0 - pow962; + tempvar temp = temp * (pow0 - pow963); + tempvar temp = temp * (pow0 - pow964); tempvar temp = temp * (pow0 - pow965); tempvar temp = temp * (pow0 - pow966); tempvar temp = temp * (pow0 - pow967); tempvar temp = temp * (pow0 - pow968); tempvar temp = temp * (pow0 - pow969); - tempvar temp = temp * (pow0 - pow970); - tempvar temp = temp * (pow0 - pow971); - tempvar domain93 = temp * (domain92); - tempvar temp = pow0 - pow1012; + tempvar domain92 = temp * (domain91); + tempvar temp = pow0 - pow1010; + tempvar temp = temp * (pow0 - pow1011); + tempvar temp = temp * (pow0 - pow1012); tempvar temp = temp * (pow0 - pow1013); tempvar temp = temp * (pow0 - pow1014); tempvar temp = temp * (pow0 - pow1015); tempvar temp = temp * (pow0 - pow1016); tempvar temp = temp * (pow0 - pow1017); - tempvar temp = temp * (pow0 - pow1018); - tempvar temp = temp * (pow0 - pow1019); - tempvar domain94 = temp * (domain93); - tempvar temp = pow0 - pow1036; + tempvar domain93 = temp * (domain92); + tempvar temp = pow0 - pow1034; + tempvar temp = temp * (pow0 - pow1035); + tempvar temp = temp * (pow0 - pow1036); tempvar temp = temp * (pow0 - pow1037); tempvar temp = temp * (pow0 - pow1038); tempvar temp = temp * (pow0 - pow1039); tempvar temp = temp * (pow0 - pow1040); tempvar temp = temp * (pow0 - pow1041); - tempvar temp = temp * (pow0 - pow1042); - tempvar temp = temp * (pow0 - pow1043); - tempvar domain95 = temp * (domain94); - tempvar temp = pow0 - pow996; + tempvar domain94 = temp * (domain93); + tempvar temp = pow0 - pow994; + tempvar temp = temp * (pow0 - pow995); + tempvar temp = temp * (pow0 - pow996); tempvar temp = temp * (pow0 - pow997); tempvar temp = temp * (pow0 - pow998); tempvar temp = temp * (pow0 - pow999); @@ -6459,10 +6462,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1006); tempvar temp = temp * (pow0 - pow1007); tempvar temp = temp * (pow0 - pow1008); - tempvar temp = temp * (pow0 - pow1009); - tempvar temp = temp * (pow0 - pow1010); - tempvar domain96 = temp * (pow0 - pow1011); - tempvar temp = pow0 - pow972; + tempvar domain95 = temp * (pow0 - pow1009); + tempvar temp = pow0 - pow970; + tempvar temp = temp * (pow0 - pow971); + tempvar temp = temp * (pow0 - pow972); tempvar temp = temp * (pow0 - pow973); tempvar temp = temp * (pow0 - pow974); tempvar temp = temp * (pow0 - pow975); @@ -6476,11 +6479,11 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow983); tempvar temp = temp * (pow0 - pow984); tempvar temp = temp * (pow0 - pow985); - tempvar temp = temp * (pow0 - pow986); - tempvar temp = temp * (pow0 - pow987); - tempvar temp = temp * (domain91); - tempvar domain97 = temp * (domain96); - tempvar temp = pow0 - pow1020; + tempvar temp = temp * (domain90); + tempvar domain96 = temp * (domain95); + tempvar temp = pow0 - pow1018; + tempvar temp = temp * (pow0 - pow1019); + tempvar temp = temp * (pow0 - pow1020); tempvar temp = temp * (pow0 - pow1021); tempvar temp = temp * (pow0 - pow1022); tempvar temp = temp * (pow0 - pow1023); @@ -6494,8 +6497,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1031); tempvar temp = temp * (pow0 - pow1032); tempvar temp = temp * (pow0 - pow1033); - tempvar temp = temp * (pow0 - pow1034); - tempvar temp = temp * (pow0 - pow1035); + tempvar temp = temp * (pow0 - pow1042); + tempvar temp = temp * (pow0 - pow1043); tempvar temp = temp * (pow0 - pow1044); tempvar temp = temp * (pow0 - pow1045); tempvar temp = temp * (pow0 - pow1046); @@ -6510,59 +6513,75 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1055); tempvar temp = temp * (pow0 - pow1056); tempvar temp = temp * (pow0 - pow1057); - tempvar temp = temp * (pow0 - pow1058); + tempvar temp = temp * (domain94); + tempvar domain97 = temp * (domain96); + tempvar temp = pow0 - pow1058; tempvar temp = temp * (pow0 - pow1059); - tempvar temp = temp * (domain95); - tempvar domain98 = temp * (domain97); - tempvar temp = pow0 - pow1060; + tempvar temp = temp * (pow0 - pow1060); tempvar temp = temp * (pow0 - pow1061); tempvar temp = temp * (pow0 - pow1062); tempvar temp = temp * (pow0 - pow1063); tempvar temp = temp * (pow0 - pow1064); tempvar temp = temp * (pow0 - pow1065); - tempvar temp = temp * (pow0 - pow1066); - tempvar temp = temp * (pow0 - pow1067); + tempvar temp = temp * (pow0 - pow1097); + tempvar temp = temp * (pow0 - pow1098); tempvar temp = temp * (pow0 - pow1099); tempvar temp = temp * (pow0 - pow1100); tempvar temp = temp * (pow0 - pow1101); tempvar temp = temp * (pow0 - pow1102); tempvar temp = temp * (pow0 - pow1103); tempvar temp = temp * (pow0 - pow1104); - tempvar temp = temp * (pow0 - pow1105); - tempvar temp = temp * (pow0 - pow1106); + tempvar temp = temp * (pow0 - pow1128); + tempvar temp = temp * (pow0 - pow1129); tempvar temp = temp * (pow0 - pow1130); tempvar temp = temp * (pow0 - pow1131); tempvar temp = temp * (pow0 - pow1132); tempvar temp = temp * (pow0 - pow1133); tempvar temp = temp * (pow0 - pow1134); tempvar temp = temp * (pow0 - pow1135); - tempvar temp = temp * (pow0 - pow1136); - tempvar temp = temp * (pow0 - pow1137); + tempvar temp = temp * (pow0 - pow1167); + tempvar temp = temp * (pow0 - pow1168); tempvar temp = temp * (pow0 - pow1169); tempvar temp = temp * (pow0 - pow1170); tempvar temp = temp * (pow0 - pow1171); tempvar temp = temp * (pow0 - pow1172); tempvar temp = temp * (pow0 - pow1173); - tempvar temp = temp * (pow0 - pow1174); - tempvar temp = temp * (pow0 - pow1175); - tempvar domain99 = temp * (pow0 - pow1176); - tempvar temp = pow0 - pow1200; + tempvar domain98 = temp * (pow0 - pow1174); + tempvar temp = pow0 - pow1198; + tempvar temp = temp * (pow0 - pow1199); + tempvar temp = temp * (pow0 - pow1200); tempvar temp = temp * (pow0 - pow1201); tempvar temp = temp * (pow0 - pow1202); tempvar temp = temp * (pow0 - pow1203); tempvar temp = temp * (pow0 - pow1204); tempvar temp = temp * (pow0 - pow1205); - tempvar temp = temp * (pow0 - pow1206); - tempvar temp = temp * (pow0 - pow1207); - tempvar domain100 = temp * (domain99); - tempvar temp = pow0 - pow1239; + tempvar domain99 = temp * (domain98); + tempvar temp = pow0 - pow1237; + tempvar temp = temp * (pow0 - pow1238); + tempvar temp = temp * (pow0 - pow1239); tempvar temp = temp * (pow0 - pow1240); tempvar temp = temp * (pow0 - pow1241); tempvar temp = temp * (pow0 - pow1242); tempvar temp = temp * (pow0 - pow1243); - tempvar temp = temp * (pow0 - pow1244); - tempvar temp = temp * (pow0 - pow1245); - tempvar domain101 = temp * (pow0 - pow1246); + tempvar domain100 = temp * (pow0 - pow1244); + tempvar temp = pow0 - pow1268; + tempvar temp = temp * (pow0 - pow1272); + tempvar temp = temp * (pow0 - pow1276); + tempvar temp = temp * (pow0 - pow1280); + tempvar temp = temp * (pow0 - pow1284); + tempvar temp = temp * (pow0 - pow1288); + tempvar temp = temp * (pow0 - pow1292); + tempvar temp = temp * (pow0 - pow1296); + tempvar temp = temp * (pow0 - pow1269); + tempvar temp = temp * (pow0 - pow1273); + tempvar temp = temp * (pow0 - pow1277); + tempvar temp = temp * (pow0 - pow1281); + tempvar temp = temp * (pow0 - pow1285); + tempvar temp = temp * (pow0 - pow1289); + tempvar temp = temp * (pow0 - pow1293); + tempvar temp = temp * (pow0 - pow1298); + tempvar temp = temp * (domain99); + tempvar domain101 = temp * (domain100); tempvar temp = pow0 - pow1270; tempvar temp = temp * (pow0 - pow1274); tempvar temp = temp * (pow0 - pow1278); @@ -6570,36 +6589,20 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1286); tempvar temp = temp * (pow0 - pow1290); tempvar temp = temp * (pow0 - pow1294); - tempvar temp = temp * (pow0 - pow1298); - tempvar temp = temp * (pow0 - pow1271); + tempvar temp = temp * (pow0 - pow1300); + tempvar domain102 = temp * (domain101); + tempvar temp = pow0 - pow1271; tempvar temp = temp * (pow0 - pow1275); tempvar temp = temp * (pow0 - pow1279); tempvar temp = temp * (pow0 - pow1283); tempvar temp = temp * (pow0 - pow1287); tempvar temp = temp * (pow0 - pow1291); tempvar temp = temp * (pow0 - pow1295); - tempvar temp = temp * (pow0 - pow1300); - tempvar temp = temp * (domain100); - tempvar domain102 = temp * (domain101); - tempvar temp = pow0 - pow1272; - tempvar temp = temp * (pow0 - pow1276); - tempvar temp = temp * (pow0 - pow1280); - tempvar temp = temp * (pow0 - pow1284); - tempvar temp = temp * (pow0 - pow1288); - tempvar temp = temp * (pow0 - pow1292); - tempvar temp = temp * (pow0 - pow1296); tempvar temp = temp * (pow0 - pow1302); tempvar domain103 = temp * (domain102); - tempvar temp = pow0 - pow1273; - tempvar temp = temp * (pow0 - pow1277); - tempvar temp = temp * (pow0 - pow1281); - tempvar temp = temp * (pow0 - pow1285); - tempvar temp = temp * (pow0 - pow1289); - tempvar temp = temp * (pow0 - pow1293); - tempvar temp = temp * (pow0 - pow1297); - tempvar temp = temp * (pow0 - pow1304); - tempvar domain104 = temp * (domain103); - tempvar temp = pow0 - pow1068; + tempvar temp = pow0 - pow1066; + tempvar temp = temp * (pow0 - pow1067); + tempvar temp = temp * (pow0 - pow1068); tempvar temp = temp * (pow0 - pow1069); tempvar temp = temp * (pow0 - pow1070); tempvar temp = temp * (pow0 - pow1071); @@ -6613,8 +6616,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1079); tempvar temp = temp * (pow0 - pow1080); tempvar temp = temp * (pow0 - pow1081); - tempvar temp = temp * (pow0 - pow1082); - tempvar temp = temp * (pow0 - pow1083); + tempvar temp = temp * (pow0 - pow1105); + tempvar temp = temp * (pow0 - pow1106); tempvar temp = temp * (pow0 - pow1107); tempvar temp = temp * (pow0 - pow1108); tempvar temp = temp * (pow0 - pow1109); @@ -6629,8 +6632,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1118); tempvar temp = temp * (pow0 - pow1119); tempvar temp = temp * (pow0 - pow1120); - tempvar temp = temp * (pow0 - pow1121); - tempvar temp = temp * (pow0 - pow1122); + tempvar temp = temp * (pow0 - pow1136); + tempvar temp = temp * (pow0 - pow1137); tempvar temp = temp * (pow0 - pow1138); tempvar temp = temp * (pow0 - pow1139); tempvar temp = temp * (pow0 - pow1140); @@ -6645,8 +6648,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1149); tempvar temp = temp * (pow0 - pow1150); tempvar temp = temp * (pow0 - pow1151); - tempvar temp = temp * (pow0 - pow1152); - tempvar temp = temp * (pow0 - pow1153); + tempvar temp = temp * (pow0 - pow1175); + tempvar temp = temp * (pow0 - pow1176); tempvar temp = temp * (pow0 - pow1177); tempvar temp = temp * (pow0 - pow1178); tempvar temp = temp * (pow0 - pow1179); @@ -6661,10 +6664,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1188); tempvar temp = temp * (pow0 - pow1189); tempvar temp = temp * (pow0 - pow1190); - tempvar temp = temp * (pow0 - pow1191); - tempvar temp = temp * (pow0 - pow1192); - tempvar domain105 = temp * (domain98); - tempvar temp = pow0 - pow1208; + tempvar domain104 = temp * (domain97); + tempvar temp = pow0 - pow1206; + tempvar temp = temp * (pow0 - pow1207); + tempvar temp = temp * (pow0 - pow1208); tempvar temp = temp * (pow0 - pow1209); tempvar temp = temp * (pow0 - pow1210); tempvar temp = temp * (pow0 - pow1211); @@ -6678,10 +6681,10 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1219); tempvar temp = temp * (pow0 - pow1220); tempvar temp = temp * (pow0 - pow1221); - tempvar temp = temp * (pow0 - pow1222); - tempvar temp = temp * (pow0 - pow1223); - tempvar domain106 = temp * (domain105); - tempvar temp = pow0 - pow1247; + tempvar domain105 = temp * (domain104); + tempvar temp = pow0 - pow1245; + tempvar temp = temp * (pow0 - pow1246); + tempvar temp = temp * (pow0 - pow1247); tempvar temp = temp * (pow0 - pow1248); tempvar temp = temp * (pow0 - pow1249); tempvar temp = temp * (pow0 - pow1250); @@ -6694,10 +6697,42 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1257); tempvar temp = temp * (pow0 - pow1258); tempvar temp = temp * (pow0 - pow1259); - tempvar temp = temp * (pow0 - pow1260); - tempvar temp = temp * (pow0 - pow1261); - tempvar domain107 = temp * (pow0 - pow1262); - tempvar temp = pow0 - pow1299; + tempvar domain106 = temp * (pow0 - pow1260); + tempvar temp = pow0 - pow1297; + tempvar temp = temp * (pow0 - pow1304); + tempvar temp = temp * (pow0 - pow1308); + tempvar temp = temp * (pow0 - pow1312); + tempvar temp = temp * (pow0 - pow1316); + tempvar temp = temp * (pow0 - pow1320); + tempvar temp = temp * (pow0 - pow1324); + tempvar temp = temp * (pow0 - pow1328); + tempvar temp = temp * (pow0 - pow1332); + tempvar temp = temp * (pow0 - pow1336); + tempvar temp = temp * (pow0 - pow1340); + tempvar temp = temp * (pow0 - pow1344); + tempvar temp = temp * (pow0 - pow1348); + tempvar temp = temp * (pow0 - pow1352); + tempvar temp = temp * (pow0 - pow1356); + tempvar temp = temp * (pow0 - pow1360); + tempvar temp = temp * (pow0 - pow1299); + tempvar temp = temp * (pow0 - pow1305); + tempvar temp = temp * (pow0 - pow1309); + tempvar temp = temp * (pow0 - pow1313); + tempvar temp = temp * (pow0 - pow1317); + tempvar temp = temp * (pow0 - pow1321); + tempvar temp = temp * (pow0 - pow1325); + tempvar temp = temp * (pow0 - pow1329); + tempvar temp = temp * (pow0 - pow1333); + tempvar temp = temp * (pow0 - pow1337); + tempvar temp = temp * (pow0 - pow1341); + tempvar temp = temp * (pow0 - pow1345); + tempvar temp = temp * (pow0 - pow1349); + tempvar temp = temp * (pow0 - pow1353); + tempvar temp = temp * (pow0 - pow1357); + tempvar temp = temp * (pow0 - pow1361); + tempvar temp = temp * (domain105); + tempvar domain107 = temp * (domain106); + tempvar temp = pow0 - pow1301; tempvar temp = temp * (pow0 - pow1306); tempvar temp = temp * (pow0 - pow1310); tempvar temp = temp * (pow0 - pow1314); @@ -6713,7 +6748,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1354); tempvar temp = temp * (pow0 - pow1358); tempvar temp = temp * (pow0 - pow1362); - tempvar temp = temp * (pow0 - pow1301); + tempvar domain108 = temp * (domain107); + tempvar temp = pow0 - pow1303; tempvar temp = temp * (pow0 - pow1307); tempvar temp = temp * (pow0 - pow1311); tempvar temp = temp * (pow0 - pow1315); @@ -6729,52 +6765,19 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1355); tempvar temp = temp * (pow0 - pow1359); tempvar temp = temp * (pow0 - pow1363); - tempvar temp = temp * (domain106); - tempvar domain108 = temp * (domain107); - tempvar temp = pow0 - pow1303; - tempvar temp = temp * (pow0 - pow1308); - tempvar temp = temp * (pow0 - pow1312); - tempvar temp = temp * (pow0 - pow1316); - tempvar temp = temp * (pow0 - pow1320); - tempvar temp = temp * (pow0 - pow1324); - tempvar temp = temp * (pow0 - pow1328); - tempvar temp = temp * (pow0 - pow1332); - tempvar temp = temp * (pow0 - pow1336); - tempvar temp = temp * (pow0 - pow1340); - tempvar temp = temp * (pow0 - pow1344); - tempvar temp = temp * (pow0 - pow1348); - tempvar temp = temp * (pow0 - pow1352); - tempvar temp = temp * (pow0 - pow1356); - tempvar temp = temp * (pow0 - pow1360); - tempvar temp = temp * (pow0 - pow1364); + tempvar temp = temp * (domain103); tempvar domain109 = temp * (domain108); - tempvar temp = pow0 - pow1305; - tempvar temp = temp * (pow0 - pow1309); - tempvar temp = temp * (pow0 - pow1313); - tempvar temp = temp * (pow0 - pow1317); - tempvar temp = temp * (pow0 - pow1321); - tempvar temp = temp * (pow0 - pow1325); - tempvar temp = temp * (pow0 - pow1329); - tempvar temp = temp * (pow0 - pow1333); - tempvar temp = temp * (pow0 - pow1337); - tempvar temp = temp * (pow0 - pow1341); - tempvar temp = temp * (pow0 - pow1345); - tempvar temp = temp * (pow0 - pow1349); - tempvar temp = temp * (pow0 - pow1353); - tempvar temp = temp * (pow0 - pow1357); - tempvar temp = temp * (pow0 - pow1361); + tempvar temp = pow0 - pow1364; tempvar temp = temp * (pow0 - pow1365); - tempvar temp = temp * (domain104); - tempvar domain110 = temp * (domain109); - tempvar temp = pow0 - pow1366; + tempvar temp = temp * (pow0 - pow1366); tempvar temp = temp * (pow0 - pow1367); tempvar temp = temp * (pow0 - pow1368); tempvar temp = temp * (pow0 - pow1369); tempvar temp = temp * (pow0 - pow1370); - tempvar temp = temp * (pow0 - pow1371); - tempvar temp = temp * (pow0 - pow1372); - tempvar domain111 = temp * (pow0 - pow1373); - tempvar temp = pow0 - pow1374; + tempvar domain110 = temp * (pow0 - pow1371); + tempvar temp = pow0 - pow1372; + tempvar temp = temp * (pow0 - pow1373); + tempvar temp = temp * (pow0 - pow1374); tempvar temp = temp * (pow0 - pow1375); tempvar temp = temp * (pow0 - pow1376); tempvar temp = temp * (pow0 - pow1377); @@ -6788,44 +6791,44 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1385); tempvar temp = temp * (pow0 - pow1386); tempvar temp = temp * (pow0 - pow1387); - tempvar temp = temp * (pow0 - pow1388); - tempvar temp = temp * (pow0 - pow1389); - tempvar temp = temp * (domain110); - tempvar domain112 = temp * (domain111); - tempvar temp = pow0 - pow1405; + tempvar temp = temp * (domain109); + tempvar domain111 = temp * (domain110); + tempvar temp = pow0 - pow1403; + tempvar temp = temp * (pow0 - pow1404); + tempvar temp = temp * (pow0 - pow1405); tempvar temp = temp * (pow0 - pow1406); tempvar temp = temp * (pow0 - pow1407); tempvar temp = temp * (pow0 - pow1408); tempvar temp = temp * (pow0 - pow1409); tempvar temp = temp * (pow0 - pow1410); - tempvar temp = temp * (pow0 - pow1411); - tempvar temp = temp * (pow0 - pow1412); + tempvar temp = temp * (pow0 - pow1434); + tempvar temp = temp * (pow0 - pow1435); tempvar temp = temp * (pow0 - pow1436); tempvar temp = temp * (pow0 - pow1437); tempvar temp = temp * (pow0 - pow1438); tempvar temp = temp * (pow0 - pow1439); tempvar temp = temp * (pow0 - pow1440); - tempvar temp = temp * (pow0 - pow1441); - tempvar temp = temp * (pow0 - pow1442); - tempvar domain113 = temp * (pow0 - pow1443); - tempvar temp = pow0 - pow1475; + tempvar domain112 = temp * (pow0 - pow1441); + tempvar temp = pow0 - pow1473; + tempvar temp = temp * (pow0 - pow1474); + tempvar temp = temp * (pow0 - pow1475); tempvar temp = temp * (pow0 - pow1476); tempvar temp = temp * (pow0 - pow1477); tempvar temp = temp * (pow0 - pow1478); tempvar temp = temp * (pow0 - pow1479); tempvar temp = temp * (pow0 - pow1480); - tempvar temp = temp * (pow0 - pow1481); - tempvar temp = temp * (pow0 - pow1482); + tempvar temp = temp * (pow0 - pow1504); + tempvar temp = temp * (pow0 - pow1505); tempvar temp = temp * (pow0 - pow1506); tempvar temp = temp * (pow0 - pow1507); tempvar temp = temp * (pow0 - pow1508); tempvar temp = temp * (pow0 - pow1509); tempvar temp = temp * (pow0 - pow1510); tempvar temp = temp * (pow0 - pow1511); - tempvar temp = temp * (pow0 - pow1512); - tempvar temp = temp * (pow0 - pow1513); - tempvar domain114 = temp * (domain113); - tempvar temp = pow0 - pow1413; + tempvar domain113 = temp * (domain112); + tempvar temp = pow0 - pow1411; + tempvar temp = temp * (pow0 - pow1412); + tempvar temp = temp * (pow0 - pow1413); tempvar temp = temp * (pow0 - pow1414); tempvar temp = temp * (pow0 - pow1415); tempvar temp = temp * (pow0 - pow1416); @@ -6839,8 +6842,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1424); tempvar temp = temp * (pow0 - pow1425); tempvar temp = temp * (pow0 - pow1426); - tempvar temp = temp * (pow0 - pow1427); - tempvar temp = temp * (pow0 - pow1428); + tempvar temp = temp * (pow0 - pow1442); + tempvar temp = temp * (pow0 - pow1443); tempvar temp = temp * (pow0 - pow1444); tempvar temp = temp * (pow0 - pow1445); tempvar temp = temp * (pow0 - pow1446); @@ -6855,8 +6858,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1455); tempvar temp = temp * (pow0 - pow1456); tempvar temp = temp * (pow0 - pow1457); - tempvar temp = temp * (pow0 - pow1458); - tempvar temp = temp * (pow0 - pow1459); + tempvar temp = temp * (pow0 - pow1481); + tempvar temp = temp * (pow0 - pow1482); tempvar temp = temp * (pow0 - pow1483); tempvar temp = temp * (pow0 - pow1484); tempvar temp = temp * (pow0 - pow1485); @@ -6871,8 +6874,8 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1494); tempvar temp = temp * (pow0 - pow1495); tempvar temp = temp * (pow0 - pow1496); - tempvar temp = temp * (pow0 - pow1497); - tempvar temp = temp * (pow0 - pow1498); + tempvar temp = temp * (pow0 - pow1512); + tempvar temp = temp * (pow0 - pow1513); tempvar temp = temp * (pow0 - pow1514); tempvar temp = temp * (pow0 - pow1515); tempvar temp = temp * (pow0 - pow1516); @@ -6887,11 +6890,11 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1525); tempvar temp = temp * (pow0 - pow1526); tempvar temp = temp * (pow0 - pow1527); - tempvar temp = temp * (pow0 - pow1528); - tempvar temp = temp * (pow0 - pow1529); - tempvar temp = temp * (domain112); - tempvar domain115 = temp * (domain114); - tempvar temp = pow0 - pow1545; + tempvar temp = temp * (domain111); + tempvar domain114 = temp * (domain113); + tempvar temp = pow0 - pow1543; + tempvar temp = temp * (pow0 - pow1544); + tempvar temp = temp * (pow0 - pow1545); tempvar temp = temp * (pow0 - pow1546); tempvar temp = temp * (pow0 - pow1547); tempvar temp = temp * (pow0 - pow1548); @@ -6913,8 +6916,7 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1564); tempvar temp = temp * (pow0 - pow1565); tempvar temp = temp * (pow0 - pow1566); - tempvar temp = temp * (pow0 - pow1567); - tempvar temp = temp * (pow0 - pow1568); + tempvar temp = temp * (pow0 - pow1574); tempvar temp = temp * (pow0 - pow1576); tempvar temp = temp * (pow0 - pow1578); tempvar temp = temp * (pow0 - pow1580); @@ -6923,6 +6925,7 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1586); tempvar temp = temp * (pow0 - pow1588); tempvar temp = temp * (pow0 - pow1590); + tempvar temp = temp * (pow0 - pow1591); tempvar temp = temp * (pow0 - pow1592); tempvar temp = temp * (pow0 - pow1593); tempvar temp = temp * (pow0 - pow1594); @@ -6937,17 +6940,16 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1603); tempvar temp = temp * (pow0 - pow1604); tempvar temp = temp * (pow0 - pow1605); - tempvar temp = temp * (pow0 - pow1606); - tempvar temp = temp * (pow0 - pow1607); - tempvar domain116 = temp * (domain115); - tempvar temp = pow0 - pow1577; + tempvar domain115 = temp * (domain114); + tempvar temp = pow0 - pow1575; + tempvar temp = temp * (pow0 - pow1577); tempvar temp = temp * (pow0 - pow1579); tempvar temp = temp * (pow0 - pow1581); tempvar temp = temp * (pow0 - pow1583); tempvar temp = temp * (pow0 - pow1585); tempvar temp = temp * (pow0 - pow1587); tempvar temp = temp * (pow0 - pow1589); - tempvar temp = temp * (pow0 - pow1591); + tempvar temp = temp * (pow0 - pow1630); tempvar temp = temp * (pow0 - pow1632); tempvar temp = temp * (pow0 - pow1634); tempvar temp = temp * (pow0 - pow1636); @@ -6962,69 +6964,69 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1654); tempvar temp = temp * (pow0 - pow1656); tempvar temp = temp * (pow0 - pow1658); - tempvar temp = temp * (pow0 - pow1660); - tempvar temp = temp * (pow0 - pow1661); - tempvar domain117 = temp * (domain116); - tempvar temp = domain37; - tempvar domain118 = temp * (domain56); - tempvar temp = domain88; + tempvar temp = temp * (pow0 - pow1659); + tempvar domain116 = temp * (domain115); + tempvar temp = domain36; + tempvar domain117 = temp * (domain55); + tempvar temp = domain87; + tempvar domain118 = temp * (domain117); + tempvar temp = domain93; tempvar domain119 = temp * (domain118); - tempvar temp = domain94; - tempvar domain120 = temp * (domain119); - tempvar temp = domain50; - tempvar temp = temp * (domain54); - tempvar domain121 = temp * (domain58); - tempvar temp = domain61; - tempvar domain122 = temp * (domain121); - tempvar temp = domain65; - tempvar domain123 = temp * (domain122); + tempvar temp = domain49; + tempvar temp = temp * (domain53); + tempvar domain120 = temp * (domain57); tempvar temp = domain60; - tempvar domain124 = temp * (domain62); - tempvar temp = domain86; - tempvar domain125 = temp * (domain89); - tempvar temp = domain95; - tempvar temp = temp * (domain104); - tempvar temp = temp * (domain111); - tempvar domain126 = temp * (domain119); - tempvar temp = domain114; - tempvar domain127 = temp * (domain126); - tempvar temp = domain66; - tempvar temp = temp * (domain73); - tempvar temp = temp * (domain79); - tempvar domain128 = temp * (domain122); - tempvar temp = domain82; - tempvar domain129 = temp * (domain128); + tempvar domain121 = temp * (domain120); + tempvar temp = domain64; + tempvar domain122 = temp * (domain121); + tempvar temp = domain59; + tempvar domain123 = temp * (domain61); + tempvar temp = domain85; + tempvar domain124 = temp * (domain88); + tempvar temp = domain94; + tempvar temp = temp * (domain103); + tempvar temp = temp * (domain110); + tempvar domain125 = temp * (domain118); tempvar temp = domain113; - tempvar domain130 = temp * (domain126); + tempvar domain126 = temp * (domain125); + tempvar temp = domain65; + tempvar temp = temp * (domain72); + tempvar temp = temp * (domain78); + tempvar domain127 = temp * (domain121); tempvar temp = domain81; - tempvar domain131 = temp * (domain128); - tempvar temp = domain103; - tempvar domain132 = temp * (domain109); - tempvar temp = domain72; - tempvar domain133 = temp * (domain77); - tempvar temp = domain70; - tempvar domain134 = temp * (domain75); - tempvar temp = domain100; - tempvar domain135 = temp * (domain106); - tempvar temp = domain64; - tempvar domain136 = temp * (domain67); - tempvar temp = domain93; - tempvar domain137 = temp * (domain97); - tempvar temp = domain71; - tempvar domain138 = temp * (domain76); + tempvar domain128 = temp * (domain127); + tempvar temp = domain112; + tempvar domain129 = temp * (domain125); + tempvar temp = domain80; + tempvar domain130 = temp * (domain127); tempvar temp = domain102; - tempvar domain139 = temp * (domain108); + tempvar domain131 = temp * (domain108); + tempvar temp = domain71; + tempvar domain132 = temp * (domain76); tempvar temp = domain69; - tempvar domain140 = temp * (domain74); + tempvar domain133 = temp * (domain74); tempvar temp = domain99; - tempvar domain141 = temp * (domain105); - tempvar temp = pow0 - pow1624; + tempvar domain134 = temp * (domain105); + tempvar temp = domain63; + tempvar domain135 = temp * (domain66); + tempvar temp = domain92; + tempvar domain136 = temp * (domain96); + tempvar temp = domain70; + tempvar domain137 = temp * (domain75); + tempvar temp = domain101; + tempvar domain138 = temp * (domain107); + tempvar temp = domain68; + tempvar domain139 = temp * (domain73); + tempvar temp = domain98; + tempvar domain140 = temp * (domain104); + tempvar temp = pow0 - pow1622; + tempvar temp = temp * (pow0 - pow1623); + tempvar temp = temp * (pow0 - pow1624); tempvar temp = temp * (pow0 - pow1625); tempvar temp = temp * (pow0 - pow1626); tempvar temp = temp * (pow0 - pow1627); tempvar temp = temp * (pow0 - pow1628); tempvar temp = temp * (pow0 - pow1629); - tempvar temp = temp * (pow0 - pow1630); tempvar temp = temp * (pow0 - pow1631); tempvar temp = temp * (pow0 - pow1633); tempvar temp = temp * (pow0 - pow1635); @@ -7039,28 +7041,26 @@ func eval_composition_polynomial{range_check_ptr}( tempvar temp = temp * (pow0 - pow1653); tempvar temp = temp * (pow0 - pow1655); tempvar temp = temp * (pow0 - pow1657); - tempvar temp = temp * (pow0 - pow1659); - tempvar temp = temp * (pow0 - pow1662); - tempvar temp = temp * (pow0 - pow1663); - tempvar temp = temp * (domain55); - tempvar temp = temp * (domain57); - tempvar temp = temp * (domain87); - tempvar temp = temp * (domain90); - tempvar temp = temp * (domain92); - tempvar temp = temp * (domain96); - tempvar temp = temp * (domain101); - tempvar domain142 = temp * (domain107); - tempvar domain143 = point - pow24; - tempvar domain144 = point - 1; - tempvar domain145 = point - pow23; - tempvar domain146 = point - pow22; - tempvar domain147 = point - pow21; - tempvar domain148 = point - pow20; - tempvar domain149 = point - pow19; - tempvar domain150 = point - pow18; - tempvar domain151 = point - pow17; - tempvar domain152 = point - pow16; - tempvar domain153 = point - pow15; + tempvar temp = temp * (pow0 - pow1660); + tempvar temp = temp * (pow0 - pow1661); + tempvar temp = temp * (domain54); + tempvar temp = temp * (domain56); + tempvar temp = temp * (domain86); + tempvar temp = temp * (domain89); + tempvar temp = temp * (domain91); + tempvar temp = temp * (domain95); + tempvar temp = temp * (domain100); + tempvar domain141 = temp * (domain106); + tempvar domain142 = point - pow22; + tempvar domain143 = point - 1; + tempvar domain144 = point - pow21; + tempvar domain145 = point - pow20; + tempvar domain146 = point - pow19; + tempvar domain147 = point - pow18; + tempvar domain148 = point - pow17; + tempvar domain149 = point - pow16; + tempvar domain150 = point - pow15; + tempvar domain151 = point - pow14; // Fetch mask variables. tempvar column0_row0 = mask_values[0]; @@ -7430,373 +7430,382 @@ func eval_composition_polynomial{range_check_ptr}( tempvar column3_row13 = mask_values[364]; tempvar column3_row14 = mask_values[365]; tempvar column3_row15 = mask_values[366]; - tempvar column3_row16 = mask_values[367]; - tempvar column3_row32 = mask_values[368]; - tempvar column3_row256 = mask_values[369]; - tempvar column3_row264 = mask_values[370]; - tempvar column3_row272 = mask_values[371]; - tempvar column3_row288 = mask_values[372]; - tempvar column3_row512 = mask_values[373]; - tempvar column3_row520 = mask_values[374]; - tempvar column3_row1876 = mask_values[375]; - tempvar column3_row1940 = mask_values[376]; - tempvar column3_row2004 = mask_values[377]; - tempvar column3_row3924 = mask_values[378]; - tempvar column3_row3988 = mask_values[379]; - tempvar column3_row4052 = mask_values[380]; - tempvar column3_row5972 = mask_values[381]; - tempvar column3_row6036 = mask_values[382]; - tempvar column3_row6100 = mask_values[383]; - tempvar column3_row6416 = mask_values[384]; - tempvar column3_row6432 = mask_values[385]; - tempvar column3_row7568 = mask_values[386]; - tempvar column3_row7760 = mask_values[387]; - tempvar column3_row7824 = mask_values[388]; - tempvar column3_row7888 = mask_values[389]; - tempvar column3_row8208 = mask_values[390]; - tempvar column3_row8224 = mask_values[391]; - tempvar column3_row8448 = mask_values[392]; - tempvar column3_row8456 = mask_values[393]; - tempvar column3_row10068 = mask_values[394]; - tempvar column3_row12116 = mask_values[395]; - tempvar column3_row14164 = mask_values[396]; - tempvar column3_row15760 = mask_values[397]; - tempvar column3_row15952 = mask_values[398]; - tempvar column3_row16144 = mask_values[399]; - tempvar column3_row16145 = mask_values[400]; - tempvar column3_row16146 = mask_values[401]; - tempvar column3_row16147 = mask_values[402]; - tempvar column3_row16148 = mask_values[403]; - tempvar column3_row16149 = mask_values[404]; - tempvar column3_row16150 = mask_values[405]; - tempvar column3_row16151 = mask_values[406]; - tempvar column3_row16160 = mask_values[407]; - tempvar column3_row16161 = mask_values[408]; - tempvar column3_row16162 = mask_values[409]; - tempvar column3_row16163 = mask_values[410]; - tempvar column3_row16164 = mask_values[411]; - tempvar column3_row16165 = mask_values[412]; - tempvar column3_row16166 = mask_values[413]; - tempvar column3_row16167 = mask_values[414]; - tempvar column3_row16176 = mask_values[415]; - tempvar column3_row16192 = mask_values[416]; - tempvar column3_row16208 = mask_values[417]; - tempvar column3_row16224 = mask_values[418]; - tempvar column3_row16240 = mask_values[419]; - tempvar column3_row16256 = mask_values[420]; - tempvar column3_row16272 = mask_values[421]; - tempvar column3_row16288 = mask_values[422]; - tempvar column3_row16304 = mask_values[423]; - tempvar column3_row16320 = mask_values[424]; - tempvar column3_row16336 = mask_values[425]; - tempvar column3_row16352 = mask_values[426]; - tempvar column3_row16368 = mask_values[427]; - tempvar column3_row16384 = mask_values[428]; - tempvar column3_row23952 = mask_values[429]; - tempvar column3_row32144 = mask_values[430]; - tempvar column3_row32768 = mask_values[431]; - tempvar column3_row65536 = mask_values[432]; - tempvar column3_row66320 = mask_values[433]; - tempvar column3_row66336 = mask_values[434]; - tempvar column3_row71508 = mask_values[435]; - tempvar column3_row79700 = mask_values[436]; - tempvar column3_row79764 = mask_values[437]; - tempvar column3_row79828 = mask_values[438]; - tempvar column3_row98304 = mask_values[439]; - tempvar column3_row131072 = mask_values[440]; - tempvar column3_row132624 = mask_values[441]; - tempvar column3_row132640 = mask_values[442]; - tempvar column3_row157524 = mask_values[443]; - tempvar column3_row163840 = mask_values[444]; - tempvar column3_row165716 = mask_values[445]; - tempvar column3_row179600 = mask_values[446]; - tempvar column3_row196176 = mask_values[447]; - tempvar column3_row196240 = mask_values[448]; - tempvar column3_row196304 = mask_values[449]; - tempvar column3_row196608 = mask_values[450]; - tempvar column3_row198928 = mask_values[451]; - tempvar column3_row198944 = mask_values[452]; - tempvar column3_row208724 = mask_values[453]; - tempvar column3_row208788 = mask_values[454]; - tempvar column3_row208852 = mask_values[455]; - tempvar column3_row229376 = mask_values[456]; - tempvar column3_row237136 = mask_values[457]; - tempvar column3_row262144 = mask_values[458]; - tempvar column3_row265232 = mask_values[459]; - tempvar column3_row265248 = mask_values[460]; - tempvar column3_row294912 = mask_values[461]; - tempvar column3_row300884 = mask_values[462]; - tempvar column3_row307028 = mask_values[463]; - tempvar column3_row325460 = mask_values[464]; - tempvar column3_row327680 = mask_values[465]; - tempvar column3_row331536 = mask_values[466]; - tempvar column3_row331552 = mask_values[467]; - tempvar column3_row358228 = mask_values[468]; - tempvar column3_row360448 = mask_values[469]; - tempvar column3_row364372 = mask_values[470]; - tempvar column3_row384592 = mask_values[471]; - tempvar column3_row393216 = mask_values[472]; - tempvar column3_row397840 = mask_values[473]; - tempvar column3_row397856 = mask_values[474]; - tempvar column3_row408976 = mask_values[475]; - tempvar column3_row413524 = mask_values[476]; - tempvar column3_row425984 = mask_values[477]; - tempvar column3_row444244 = mask_values[478]; - tempvar column3_row458752 = mask_values[479]; - tempvar column3_row462676 = mask_values[480]; - tempvar column3_row464144 = mask_values[481]; - tempvar column3_row464160 = mask_values[482]; - tempvar column3_row482704 = mask_values[483]; - tempvar column3_row491520 = mask_values[484]; - tempvar column3_row507472 = mask_values[485]; - tempvar column3_row509780 = mask_values[486]; - tempvar column3_row509844 = mask_values[487]; - tempvar column3_row509908 = mask_values[488]; - tempvar column3_row516112 = mask_values[489]; - tempvar column3_row516128 = mask_values[490]; - tempvar column3_row516352 = mask_values[491]; - tempvar column3_row516360 = mask_values[492]; - tempvar column3_row517972 = mask_values[493]; - tempvar column4_row0 = mask_values[494]; - tempvar column4_row1 = mask_values[495]; - tempvar column4_row2 = mask_values[496]; - tempvar column4_row3 = mask_values[497]; - tempvar column4_row4 = mask_values[498]; - tempvar column4_row5 = mask_values[499]; - tempvar column4_row8 = mask_values[500]; - tempvar column4_row9 = mask_values[501]; - tempvar column4_row10 = mask_values[502]; - tempvar column4_row11 = mask_values[503]; - tempvar column4_row12 = mask_values[504]; - tempvar column4_row13 = mask_values[505]; - tempvar column4_row16 = mask_values[506]; - tempvar column4_row42 = mask_values[507]; - tempvar column4_row43 = mask_values[508]; - tempvar column4_row74 = mask_values[509]; - tempvar column4_row75 = mask_values[510]; - tempvar column4_row106 = mask_values[511]; - tempvar column4_row138 = mask_values[512]; - tempvar column4_row139 = mask_values[513]; - tempvar column4_row171 = mask_values[514]; - tempvar column4_row202 = mask_values[515]; - tempvar column4_row234 = mask_values[516]; - tempvar column4_row235 = mask_values[517]; - tempvar column4_row266 = mask_values[518]; - tempvar column4_row267 = mask_values[519]; - tempvar column4_row298 = mask_values[520]; - tempvar column4_row522 = mask_values[521]; - tempvar column4_row523 = mask_values[522]; - tempvar column4_row778 = mask_values[523]; - tempvar column4_row779 = mask_values[524]; - tempvar column4_row1034 = mask_values[525]; - tempvar column4_row1035 = mask_values[526]; - tempvar column4_row1290 = mask_values[527]; - tempvar column4_row1291 = mask_values[528]; - tempvar column4_row1546 = mask_values[529]; - tempvar column4_row1547 = mask_values[530]; - tempvar column4_row2058 = mask_values[531]; - tempvar column4_row2059 = mask_values[532]; - tempvar column4_row2314 = mask_values[533]; - tempvar column4_row2315 = mask_values[534]; - tempvar column4_row2826 = mask_values[535]; - tempvar column4_row2827 = mask_values[536]; - tempvar column4_row3082 = mask_values[537]; - tempvar column4_row3083 = mask_values[538]; - tempvar column4_row3338 = mask_values[539]; - tempvar column4_row3339 = mask_values[540]; - tempvar column4_row3594 = mask_values[541]; - tempvar column4_row3595 = mask_values[542]; - tempvar column4_row4106 = mask_values[543]; - tempvar column4_row4618 = mask_values[544]; - tempvar column4_row4619 = mask_values[545]; - tempvar column4_row5643 = mask_values[546]; - tempvar column4_row7178 = mask_values[547]; - tempvar column4_row7179 = mask_values[548]; - tempvar column4_row7691 = mask_values[549]; - tempvar column4_row8714 = mask_values[550]; - tempvar column4_row8715 = mask_values[551]; - tempvar column4_row9739 = mask_values[552]; - tempvar column4_row11274 = mask_values[553]; - tempvar column4_row11275 = mask_values[554]; - tempvar column4_row11787 = mask_values[555]; - tempvar column4_row12810 = mask_values[556]; - tempvar column4_row12811 = mask_values[557]; - tempvar column4_row13835 = mask_values[558]; - tempvar column4_row15370 = mask_values[559]; - tempvar column4_row15371 = mask_values[560]; - tempvar column4_row15883 = mask_values[561]; - tempvar column4_row17931 = mask_values[562]; - tempvar column4_row19466 = mask_values[563]; - tempvar column4_row19467 = mask_values[564]; - tempvar column4_row19979 = mask_values[565]; - tempvar column4_row22027 = mask_values[566]; - tempvar column4_row24075 = mask_values[567]; - tempvar column4_row26123 = mask_values[568]; - tempvar column4_row27658 = mask_values[569]; - tempvar column4_row28171 = mask_values[570]; - tempvar column4_row30219 = mask_values[571]; - tempvar column4_row32267 = mask_values[572]; - tempvar column4_row35850 = mask_values[573]; - tempvar column5_row0 = mask_values[574]; - tempvar column5_row1 = mask_values[575]; - tempvar column5_row2 = mask_values[576]; - tempvar column5_row3 = mask_values[577]; - tempvar column6_row0 = mask_values[578]; - tempvar column6_row1 = mask_values[579]; - tempvar column6_row2 = mask_values[580]; - tempvar column6_row3 = mask_values[581]; - tempvar column6_row4 = mask_values[582]; - tempvar column6_row5 = mask_values[583]; - tempvar column6_row6 = mask_values[584]; - tempvar column6_row7 = mask_values[585]; - tempvar column6_row8 = mask_values[586]; - tempvar column6_row9 = mask_values[587]; - tempvar column6_row11 = mask_values[588]; - tempvar column6_row12 = mask_values[589]; - tempvar column6_row13 = mask_values[590]; - tempvar column6_row28 = mask_values[591]; - tempvar column6_row44 = mask_values[592]; - tempvar column6_row60 = mask_values[593]; - tempvar column6_row76 = mask_values[594]; - tempvar column6_row92 = mask_values[595]; - tempvar column6_row108 = mask_values[596]; - tempvar column6_row124 = mask_values[597]; - tempvar column6_row1539 = mask_values[598]; - tempvar column6_row1547 = mask_values[599]; - tempvar column6_row1571 = mask_values[600]; - tempvar column6_row1579 = mask_values[601]; - tempvar column6_row2011 = mask_values[602]; - tempvar column6_row2019 = mask_values[603]; - tempvar column6_row2041 = mask_values[604]; - tempvar column6_row2045 = mask_values[605]; - tempvar column6_row2047 = mask_values[606]; - tempvar column6_row2049 = mask_values[607]; - tempvar column6_row2051 = mask_values[608]; - tempvar column6_row2053 = mask_values[609]; - tempvar column6_row4089 = mask_values[610]; - tempvar column7_row0 = mask_values[611]; - tempvar column7_row1 = mask_values[612]; - tempvar column7_row2 = mask_values[613]; - tempvar column7_row4 = mask_values[614]; - tempvar column7_row5 = mask_values[615]; - tempvar column7_row6 = mask_values[616]; - tempvar column7_row8 = mask_values[617]; - tempvar column7_row9 = mask_values[618]; - tempvar column7_row10 = mask_values[619]; - tempvar column7_row12 = mask_values[620]; - tempvar column7_row13 = mask_values[621]; - tempvar column7_row14 = mask_values[622]; - tempvar column7_row16 = mask_values[623]; - tempvar column7_row17 = mask_values[624]; - tempvar column7_row21 = mask_values[625]; - tempvar column7_row22 = mask_values[626]; - tempvar column7_row24 = mask_values[627]; - tempvar column7_row25 = mask_values[628]; - tempvar column7_row29 = mask_values[629]; - tempvar column7_row30 = mask_values[630]; - tempvar column7_row33 = mask_values[631]; - tempvar column7_row37 = mask_values[632]; - tempvar column7_row38 = mask_values[633]; - tempvar column7_row41 = mask_values[634]; - tempvar column7_row45 = mask_values[635]; - tempvar column7_row46 = mask_values[636]; - tempvar column7_row49 = mask_values[637]; - tempvar column7_row53 = mask_values[638]; - tempvar column7_row54 = mask_values[639]; - tempvar column7_row57 = mask_values[640]; - tempvar column7_row62 = mask_values[641]; - tempvar column7_row65 = mask_values[642]; - tempvar column7_row70 = mask_values[643]; - tempvar column7_row73 = mask_values[644]; - tempvar column7_row77 = mask_values[645]; - tempvar column7_row78 = mask_values[646]; - tempvar column7_row81 = mask_values[647]; - tempvar column7_row85 = mask_values[648]; - tempvar column7_row86 = mask_values[649]; - tempvar column7_row94 = mask_values[650]; - tempvar column7_row97 = mask_values[651]; - tempvar column7_row102 = mask_values[652]; - tempvar column7_row109 = mask_values[653]; - tempvar column7_row110 = mask_values[654]; - tempvar column7_row113 = mask_values[655]; - tempvar column7_row117 = mask_values[656]; - tempvar column7_row118 = mask_values[657]; - tempvar column7_row137 = mask_values[658]; - tempvar column7_row149 = mask_values[659]; - tempvar column7_row157 = mask_values[660]; - tempvar column7_row173 = mask_values[661]; - tempvar column7_row177 = mask_values[662]; - tempvar column7_row181 = mask_values[663]; - tempvar column7_row205 = mask_values[664]; - tempvar column7_row213 = mask_values[665]; - tempvar column7_row237 = mask_values[666]; - tempvar column7_row241 = mask_values[667]; - tempvar column7_row285 = mask_values[668]; - tempvar column7_row301 = mask_values[669]; - tempvar column7_row333 = mask_values[670]; - tempvar column7_row365 = mask_values[671]; - tempvar column7_row461 = mask_values[672]; - tempvar column7_row493 = mask_values[673]; - tempvar column7_row621 = mask_values[674]; - tempvar column7_row749 = mask_values[675]; - tempvar column7_row877 = mask_values[676]; - tempvar column7_row1565 = mask_values[677]; - tempvar column7_row1645 = mask_values[678]; - tempvar column7_row1773 = mask_values[679]; - tempvar column7_row1821 = mask_values[680]; - tempvar column7_row1901 = mask_values[681]; - tempvar column7_row2029 = mask_values[682]; - tempvar column7_row2157 = mask_values[683]; - tempvar column7_row2285 = mask_values[684]; - tempvar column7_row2413 = mask_values[685]; - tempvar column7_row2477 = mask_values[686]; - tempvar column7_row2509 = mask_values[687]; - tempvar column7_row2605 = mask_values[688]; - tempvar column7_row2637 = mask_values[689]; - tempvar column7_row2733 = mask_values[690]; - tempvar column7_row2765 = mask_values[691]; - tempvar column7_row3613 = mask_values[692]; - tempvar column7_row3693 = mask_values[693]; - tempvar column7_row3821 = mask_values[694]; - tempvar column7_row3869 = mask_values[695]; - tempvar column7_row3949 = mask_values[696]; - tempvar column7_row3953 = mask_values[697]; - tempvar column7_row4017 = mask_values[698]; - tempvar column7_row4077 = mask_values[699]; - tempvar column7_row4081 = mask_values[700]; - tempvar column7_row12305 = mask_values[701]; - tempvar column7_row12369 = mask_values[702]; - tempvar column7_row12561 = mask_values[703]; - tempvar column7_row12625 = mask_values[704]; - tempvar column7_row16081 = mask_values[705]; - tempvar column7_row16145 = mask_values[706]; - tempvar column7_row16321 = mask_values[707]; - tempvar column7_row16325 = mask_values[708]; - tempvar column7_row16342 = mask_values[709]; - tempvar column7_row16345 = mask_values[710]; - tempvar column7_row16353 = mask_values[711]; - tempvar column7_row16357 = mask_values[712]; - tempvar column7_row16361 = mask_values[713]; - tempvar column7_row16374 = mask_values[714]; - tempvar column7_row16377 = mask_values[715]; - tempvar column7_row16390 = mask_values[716]; - tempvar column7_row16422 = mask_values[717]; - tempvar column7_row32653 = mask_values[718]; - tempvar column7_row32661 = mask_values[719]; - tempvar column7_row32709 = mask_values[720]; - tempvar column7_row32725 = mask_values[721]; - tempvar column7_row32726 = mask_values[722]; - tempvar column7_row32741 = mask_values[723]; - tempvar column7_row32757 = mask_values[724]; - tempvar column7_row32758 = mask_values[725]; - tempvar column8_inter1_row0 = mask_values[726]; - tempvar column8_inter1_row1 = mask_values[727]; - tempvar column9_inter1_row0 = mask_values[728]; - tempvar column9_inter1_row1 = mask_values[729]; - tempvar column10_inter1_row0 = mask_values[730]; - tempvar column10_inter1_row1 = mask_values[731]; - tempvar column10_inter1_row2 = mask_values[732]; - tempvar column10_inter1_row5 = mask_values[733]; + tempvar column3_row16144 = mask_values[367]; + tempvar column3_row16145 = mask_values[368]; + tempvar column3_row16146 = mask_values[369]; + tempvar column3_row16147 = mask_values[370]; + tempvar column3_row16148 = mask_values[371]; + tempvar column3_row16149 = mask_values[372]; + tempvar column3_row16150 = mask_values[373]; + tempvar column3_row16151 = mask_values[374]; + tempvar column3_row16160 = mask_values[375]; + tempvar column3_row16161 = mask_values[376]; + tempvar column3_row16162 = mask_values[377]; + tempvar column3_row16163 = mask_values[378]; + tempvar column3_row16164 = mask_values[379]; + tempvar column3_row16165 = mask_values[380]; + tempvar column3_row16166 = mask_values[381]; + tempvar column3_row16167 = mask_values[382]; + tempvar column3_row16176 = mask_values[383]; + tempvar column3_row16192 = mask_values[384]; + tempvar column3_row16208 = mask_values[385]; + tempvar column3_row16224 = mask_values[386]; + tempvar column3_row16240 = mask_values[387]; + tempvar column3_row16256 = mask_values[388]; + tempvar column3_row16272 = mask_values[389]; + tempvar column3_row16288 = mask_values[390]; + tempvar column3_row16304 = mask_values[391]; + tempvar column3_row16320 = mask_values[392]; + tempvar column3_row16336 = mask_values[393]; + tempvar column3_row16352 = mask_values[394]; + tempvar column3_row16368 = mask_values[395]; + tempvar column3_row16384 = mask_values[396]; + tempvar column3_row32768 = mask_values[397]; + tempvar column3_row65536 = mask_values[398]; + tempvar column3_row98304 = mask_values[399]; + tempvar column3_row131072 = mask_values[400]; + tempvar column3_row163840 = mask_values[401]; + tempvar column3_row196608 = mask_values[402]; + tempvar column3_row229376 = mask_values[403]; + tempvar column3_row262144 = mask_values[404]; + tempvar column3_row294912 = mask_values[405]; + tempvar column3_row327680 = mask_values[406]; + tempvar column3_row360448 = mask_values[407]; + tempvar column3_row393216 = mask_values[408]; + tempvar column3_row425984 = mask_values[409]; + tempvar column3_row458752 = mask_values[410]; + tempvar column3_row491520 = mask_values[411]; + tempvar column4_row0 = mask_values[412]; + tempvar column4_row1 = mask_values[413]; + tempvar column4_row2 = mask_values[414]; + tempvar column4_row3 = mask_values[415]; + tempvar column4_row4 = mask_values[416]; + tempvar column4_row5 = mask_values[417]; + tempvar column4_row8 = mask_values[418]; + tempvar column4_row9 = mask_values[419]; + tempvar column4_row10 = mask_values[420]; + tempvar column4_row11 = mask_values[421]; + tempvar column4_row12 = mask_values[422]; + tempvar column4_row13 = mask_values[423]; + tempvar column4_row16 = mask_values[424]; + tempvar column4_row26 = mask_values[425]; + tempvar column4_row27 = mask_values[426]; + tempvar column4_row42 = mask_values[427]; + tempvar column4_row43 = mask_values[428]; + tempvar column4_row74 = mask_values[429]; + tempvar column4_row75 = mask_values[430]; + tempvar column4_row106 = mask_values[431]; + tempvar column4_row138 = mask_values[432]; + tempvar column4_row139 = mask_values[433]; + tempvar column4_row154 = mask_values[434]; + tempvar column4_row171 = mask_values[435]; + tempvar column4_row202 = mask_values[436]; + tempvar column4_row234 = mask_values[437]; + tempvar column4_row235 = mask_values[438]; + tempvar column4_row266 = mask_values[439]; + tempvar column4_row267 = mask_values[440]; + tempvar column4_row298 = mask_values[441]; + tempvar column4_row522 = mask_values[442]; + tempvar column4_row523 = mask_values[443]; + tempvar column4_row778 = mask_values[444]; + tempvar column4_row779 = mask_values[445]; + tempvar column4_row1034 = mask_values[446]; + tempvar column4_row1035 = mask_values[447]; + tempvar column4_row1290 = mask_values[448]; + tempvar column4_row1291 = mask_values[449]; + tempvar column4_row1546 = mask_values[450]; + tempvar column4_row1547 = mask_values[451]; + tempvar column4_row2058 = mask_values[452]; + tempvar column4_row2059 = mask_values[453]; + tempvar column4_row2314 = mask_values[454]; + tempvar column4_row2315 = mask_values[455]; + tempvar column4_row2826 = mask_values[456]; + tempvar column4_row2827 = mask_values[457]; + tempvar column4_row3082 = mask_values[458]; + tempvar column4_row3083 = mask_values[459]; + tempvar column4_row3338 = mask_values[460]; + tempvar column4_row3339 = mask_values[461]; + tempvar column4_row3594 = mask_values[462]; + tempvar column4_row3595 = mask_values[463]; + tempvar column4_row4106 = mask_values[464]; + tempvar column4_row4618 = mask_values[465]; + tempvar column4_row4619 = mask_values[466]; + tempvar column4_row5643 = mask_values[467]; + tempvar column4_row7178 = mask_values[468]; + tempvar column4_row7179 = mask_values[469]; + tempvar column4_row7691 = mask_values[470]; + tempvar column4_row8714 = mask_values[471]; + tempvar column4_row8715 = mask_values[472]; + tempvar column4_row9739 = mask_values[473]; + tempvar column4_row11274 = mask_values[474]; + tempvar column4_row11275 = mask_values[475]; + tempvar column4_row11787 = mask_values[476]; + tempvar column4_row12810 = mask_values[477]; + tempvar column4_row12811 = mask_values[478]; + tempvar column4_row13835 = mask_values[479]; + tempvar column4_row15370 = mask_values[480]; + tempvar column4_row15371 = mask_values[481]; + tempvar column4_row15883 = mask_values[482]; + tempvar column4_row17931 = mask_values[483]; + tempvar column4_row19466 = mask_values[484]; + tempvar column4_row19467 = mask_values[485]; + tempvar column4_row19979 = mask_values[486]; + tempvar column4_row22027 = mask_values[487]; + tempvar column4_row24075 = mask_values[488]; + tempvar column4_row26123 = mask_values[489]; + tempvar column4_row27658 = mask_values[490]; + tempvar column4_row28171 = mask_values[491]; + tempvar column4_row30219 = mask_values[492]; + tempvar column4_row32267 = mask_values[493]; + tempvar column4_row35850 = mask_values[494]; + tempvar column5_row0 = mask_values[495]; + tempvar column5_row1 = mask_values[496]; + tempvar column5_row2 = mask_values[497]; + tempvar column5_row3 = mask_values[498]; + tempvar column5_row4 = mask_values[499]; + tempvar column5_row8 = mask_values[500]; + tempvar column5_row12 = mask_values[501]; + tempvar column5_row18 = mask_values[502]; + tempvar column5_row28 = mask_values[503]; + tempvar column5_row34 = mask_values[504]; + tempvar column5_row44 = mask_values[505]; + tempvar column5_row60 = mask_values[506]; + tempvar column5_row66 = mask_values[507]; + tempvar column5_row76 = mask_values[508]; + tempvar column5_row82 = mask_values[509]; + tempvar column5_row92 = mask_values[510]; + tempvar column5_row98 = mask_values[511]; + tempvar column5_row108 = mask_values[512]; + tempvar column5_row124 = mask_values[513]; + tempvar column6_row0 = mask_values[514]; + tempvar column6_row1 = mask_values[515]; + tempvar column6_row2 = mask_values[516]; + tempvar column6_row3 = mask_values[517]; + tempvar column7_row0 = mask_values[518]; + tempvar column7_row1 = mask_values[519]; + tempvar column7_row2 = mask_values[520]; + tempvar column7_row3 = mask_values[521]; + tempvar column7_row4 = mask_values[522]; + tempvar column7_row5 = mask_values[523]; + tempvar column7_row6 = mask_values[524]; + tempvar column7_row7 = mask_values[525]; + tempvar column7_row8 = mask_values[526]; + tempvar column7_row10 = mask_values[527]; + tempvar column7_row11 = mask_values[528]; + tempvar column7_row12 = mask_values[529]; + tempvar column7_row15 = mask_values[530]; + tempvar column7_row17 = mask_values[531]; + tempvar column7_row19 = mask_values[532]; + tempvar column7_row27 = mask_values[533]; + tempvar column7_row69 = mask_values[534]; + tempvar column7_row133 = mask_values[535]; + tempvar column7_row241 = mask_values[536]; + tempvar column7_row249 = mask_values[537]; + tempvar column7_row257 = mask_values[538]; + tempvar column7_row273 = mask_values[539]; + tempvar column7_row497 = mask_values[540]; + tempvar column7_row505 = mask_values[541]; + tempvar column7_row1538 = mask_values[542]; + tempvar column7_row1546 = mask_values[543]; + tempvar column7_row1570 = mask_values[544]; + tempvar column7_row1578 = mask_values[545]; + tempvar column7_row2010 = mask_values[546]; + tempvar column7_row2018 = mask_values[547]; + tempvar column7_row2040 = mask_values[548]; + tempvar column7_row2044 = mask_values[549]; + tempvar column7_row2046 = mask_values[550]; + tempvar column7_row2048 = mask_values[551]; + tempvar column7_row2050 = mask_values[552]; + tempvar column7_row2052 = mask_values[553]; + tempvar column7_row2053 = mask_values[554]; + tempvar column7_row2117 = mask_values[555]; + tempvar column7_row2181 = mask_values[556]; + tempvar column7_row4088 = mask_values[557]; + tempvar column7_row4101 = mask_values[558]; + tempvar column7_row4165 = mask_values[559]; + tempvar column7_row4229 = mask_values[560]; + tempvar column7_row6401 = mask_values[561]; + tempvar column7_row6417 = mask_values[562]; + tempvar column7_row7809 = mask_values[563]; + tempvar column7_row8001 = mask_values[564]; + tempvar column7_row8065 = mask_values[565]; + tempvar column7_row8129 = mask_values[566]; + tempvar column7_row8193 = mask_values[567]; + tempvar column7_row8197 = mask_values[568]; + tempvar column7_row8209 = mask_values[569]; + tempvar column7_row8433 = mask_values[570]; + tempvar column7_row8441 = mask_values[571]; + tempvar column7_row10245 = mask_values[572]; + tempvar column7_row12293 = mask_values[573]; + tempvar column7_row16001 = mask_values[574]; + tempvar column7_row16193 = mask_values[575]; + tempvar column7_row24193 = mask_values[576]; + tempvar column7_row32385 = mask_values[577]; + tempvar column7_row66305 = mask_values[578]; + tempvar column7_row66321 = mask_values[579]; + tempvar column7_row67589 = mask_values[580]; + tempvar column7_row75781 = mask_values[581]; + tempvar column7_row75845 = mask_values[582]; + tempvar column7_row75909 = mask_values[583]; + tempvar column7_row132609 = mask_values[584]; + tempvar column7_row132625 = mask_values[585]; + tempvar column7_row159749 = mask_values[586]; + tempvar column7_row167941 = mask_values[587]; + tempvar column7_row179841 = mask_values[588]; + tempvar column7_row196417 = mask_values[589]; + tempvar column7_row196481 = mask_values[590]; + tempvar column7_row196545 = mask_values[591]; + tempvar column7_row198913 = mask_values[592]; + tempvar column7_row198929 = mask_values[593]; + tempvar column7_row204805 = mask_values[594]; + tempvar column7_row204869 = mask_values[595]; + tempvar column7_row204933 = mask_values[596]; + tempvar column7_row237377 = mask_values[597]; + tempvar column7_row265217 = mask_values[598]; + tempvar column7_row265233 = mask_values[599]; + tempvar column7_row296965 = mask_values[600]; + tempvar column7_row303109 = mask_values[601]; + tempvar column7_row321541 = mask_values[602]; + tempvar column7_row331521 = mask_values[603]; + tempvar column7_row331537 = mask_values[604]; + tempvar column7_row354309 = mask_values[605]; + tempvar column7_row360453 = mask_values[606]; + tempvar column7_row384833 = mask_values[607]; + tempvar column7_row397825 = mask_values[608]; + tempvar column7_row397841 = mask_values[609]; + tempvar column7_row409217 = mask_values[610]; + tempvar column7_row409605 = mask_values[611]; + tempvar column7_row446469 = mask_values[612]; + tempvar column7_row458757 = mask_values[613]; + tempvar column7_row464129 = mask_values[614]; + tempvar column7_row464145 = mask_values[615]; + tempvar column7_row482945 = mask_values[616]; + tempvar column7_row507713 = mask_values[617]; + tempvar column7_row512005 = mask_values[618]; + tempvar column7_row512069 = mask_values[619]; + tempvar column7_row512133 = mask_values[620]; + tempvar column7_row516097 = mask_values[621]; + tempvar column7_row516113 = mask_values[622]; + tempvar column7_row516337 = mask_values[623]; + tempvar column7_row516345 = mask_values[624]; + tempvar column7_row520197 = mask_values[625]; + tempvar column8_row0 = mask_values[626]; + tempvar column8_row2 = mask_values[627]; + tempvar column8_row4 = mask_values[628]; + tempvar column8_row6 = mask_values[629]; + tempvar column8_row8 = mask_values[630]; + tempvar column8_row10 = mask_values[631]; + tempvar column8_row12 = mask_values[632]; + tempvar column8_row14 = mask_values[633]; + tempvar column8_row18 = mask_values[634]; + tempvar column8_row20 = mask_values[635]; + tempvar column8_row22 = mask_values[636]; + tempvar column8_row26 = mask_values[637]; + tempvar column8_row28 = mask_values[638]; + tempvar column8_row30 = mask_values[639]; + tempvar column8_row34 = mask_values[640]; + tempvar column8_row36 = mask_values[641]; + tempvar column8_row38 = mask_values[642]; + tempvar column8_row42 = mask_values[643]; + tempvar column8_row44 = mask_values[644]; + tempvar column8_row46 = mask_values[645]; + tempvar column8_row50 = mask_values[646]; + tempvar column8_row52 = mask_values[647]; + tempvar column8_row54 = mask_values[648]; + tempvar column8_row58 = mask_values[649]; + tempvar column8_row60 = mask_values[650]; + tempvar column8_row66 = mask_values[651]; + tempvar column8_row68 = mask_values[652]; + tempvar column8_row74 = mask_values[653]; + tempvar column8_row76 = mask_values[654]; + tempvar column8_row78 = mask_values[655]; + tempvar column8_row82 = mask_values[656]; + tempvar column8_row84 = mask_values[657]; + tempvar column8_row86 = mask_values[658]; + tempvar column8_row92 = mask_values[659]; + tempvar column8_row98 = mask_values[660]; + tempvar column8_row100 = mask_values[661]; + tempvar column8_row108 = mask_values[662]; + tempvar column8_row110 = mask_values[663]; + tempvar column8_row114 = mask_values[664]; + tempvar column8_row116 = mask_values[665]; + tempvar column8_row118 = mask_values[666]; + tempvar column8_row138 = mask_values[667]; + tempvar column8_row150 = mask_values[668]; + tempvar column8_row158 = mask_values[669]; + tempvar column8_row174 = mask_values[670]; + tempvar column8_row178 = mask_values[671]; + tempvar column8_row182 = mask_values[672]; + tempvar column8_row206 = mask_values[673]; + tempvar column8_row214 = mask_values[674]; + tempvar column8_row238 = mask_values[675]; + tempvar column8_row242 = mask_values[676]; + tempvar column8_row286 = mask_values[677]; + tempvar column8_row302 = mask_values[678]; + tempvar column8_row334 = mask_values[679]; + tempvar column8_row366 = mask_values[680]; + tempvar column8_row462 = mask_values[681]; + tempvar column8_row494 = mask_values[682]; + tempvar column8_row622 = mask_values[683]; + tempvar column8_row750 = mask_values[684]; + tempvar column8_row878 = mask_values[685]; + tempvar column8_row1566 = mask_values[686]; + tempvar column8_row1646 = mask_values[687]; + tempvar column8_row1774 = mask_values[688]; + tempvar column8_row1822 = mask_values[689]; + tempvar column8_row1902 = mask_values[690]; + tempvar column8_row2030 = mask_values[691]; + tempvar column8_row2158 = mask_values[692]; + tempvar column8_row2286 = mask_values[693]; + tempvar column8_row2414 = mask_values[694]; + tempvar column8_row2478 = mask_values[695]; + tempvar column8_row2510 = mask_values[696]; + tempvar column8_row2606 = mask_values[697]; + tempvar column8_row2638 = mask_values[698]; + tempvar column8_row2734 = mask_values[699]; + tempvar column8_row2766 = mask_values[700]; + tempvar column8_row3614 = mask_values[701]; + tempvar column8_row3694 = mask_values[702]; + tempvar column8_row3822 = mask_values[703]; + tempvar column8_row3870 = mask_values[704]; + tempvar column8_row3950 = mask_values[705]; + tempvar column8_row3954 = mask_values[706]; + tempvar column8_row4018 = mask_values[707]; + tempvar column8_row4078 = mask_values[708]; + tempvar column8_row4082 = mask_values[709]; + tempvar column8_row12306 = mask_values[710]; + tempvar column8_row12370 = mask_values[711]; + tempvar column8_row12562 = mask_values[712]; + tempvar column8_row12626 = mask_values[713]; + tempvar column8_row16082 = mask_values[714]; + tempvar column8_row16146 = mask_values[715]; + tempvar column8_row16322 = mask_values[716]; + tempvar column8_row16326 = mask_values[717]; + tempvar column8_row16340 = mask_values[718]; + tempvar column8_row16346 = mask_values[719]; + tempvar column8_row16354 = mask_values[720]; + tempvar column8_row16358 = mask_values[721]; + tempvar column8_row16362 = mask_values[722]; + tempvar column8_row16372 = mask_values[723]; + tempvar column8_row16378 = mask_values[724]; + tempvar column8_row16388 = mask_values[725]; + tempvar column8_row16420 = mask_values[726]; + tempvar column8_row32654 = mask_values[727]; + tempvar column8_row32662 = mask_values[728]; + tempvar column8_row32710 = mask_values[729]; + tempvar column8_row32724 = mask_values[730]; + tempvar column8_row32726 = mask_values[731]; + tempvar column8_row32742 = mask_values[732]; + tempvar column8_row32756 = mask_values[733]; + tempvar column8_row32758 = mask_values[734]; + tempvar column9_inter1_row0 = mask_values[735]; + tempvar column9_inter1_row1 = mask_values[736]; + tempvar column10_inter1_row0 = mask_values[737]; + tempvar column10_inter1_row1 = mask_values[738]; + tempvar column11_inter1_row0 = mask_values[739]; + tempvar column11_inter1_row1 = mask_values[740]; + tempvar column11_inter1_row2 = mask_values[741]; + tempvar column11_inter1_row3 = mask_values[742]; // Compute intermediate values. tempvar cpu__decode__opcode_range_check__bit_0 = column0_row0 - (column0_row1 + column0_row1); @@ -7843,33 +7852,33 @@ func eval_composition_polynomial{range_check_ptr}( tempvar cpu__decode__opcode_range_check__bit_14 = column0_row14 - ( column0_row15 + column0_row15 ); - tempvar memory__address_diff_0 = column5_row2 - column5_row0; - tempvar range_check16__diff_0 = column6_row6 - column6_row2; - tempvar pedersen__hash0__ec_subset_sum__bit_0 = column6_row3 - (column6_row11 + column6_row11); + tempvar memory__address_diff_0 = column5_row3 - column5_row1; + tempvar range_check16__diff_0 = column6_row3 - column6_row1; + tempvar pedersen__hash0__ec_subset_sum__bit_0 = column7_row2 - (column7_row10 + column7_row10); tempvar pedersen__hash0__ec_subset_sum__bit_neg_0 = 1 - pedersen__hash0__ec_subset_sum__bit_0; - tempvar range_check_builtin__value0_0 = column6_row12; + tempvar range_check_builtin__value0_0 = column5_row12; tempvar range_check_builtin__value1_0 = range_check_builtin__value0_0 * - global_values.offset_size + column6_row28; + global_values.offset_size + column5_row28; tempvar range_check_builtin__value2_0 = range_check_builtin__value1_0 * - global_values.offset_size + column6_row44; + global_values.offset_size + column5_row44; tempvar range_check_builtin__value3_0 = range_check_builtin__value2_0 * - global_values.offset_size + column6_row60; + global_values.offset_size + column5_row60; tempvar range_check_builtin__value4_0 = range_check_builtin__value3_0 * - global_values.offset_size + column6_row76; + global_values.offset_size + column5_row76; tempvar range_check_builtin__value5_0 = range_check_builtin__value4_0 * - global_values.offset_size + column6_row92; + global_values.offset_size + column5_row92; tempvar range_check_builtin__value6_0 = range_check_builtin__value5_0 * - global_values.offset_size + column6_row108; + global_values.offset_size + column5_row108; tempvar range_check_builtin__value7_0 = range_check_builtin__value6_0 * - global_values.offset_size + column6_row124; - tempvar ecdsa__signature0__doubling_key__x_squared = column7_row6 * column7_row6; - tempvar ecdsa__signature0__exponentiate_generator__bit_0 = column7_row53 - ( - column7_row181 + column7_row181 + global_values.offset_size + column5_row124; + tempvar ecdsa__signature0__doubling_key__x_squared = column8_row4 * column8_row4; + tempvar ecdsa__signature0__exponentiate_generator__bit_0 = column8_row54 - ( + column8_row182 + column8_row182 ); tempvar ecdsa__signature0__exponentiate_generator__bit_neg_0 = 1 - ecdsa__signature0__exponentiate_generator__bit_0; - tempvar ecdsa__signature0__exponentiate_key__bit_0 = column7_row14 - ( - column7_row78 + column7_row78 + tempvar ecdsa__signature0__exponentiate_key__bit_0 = column8_row12 - ( + column8_row76 + column8_row76 ); tempvar ecdsa__signature0__exponentiate_key__bit_neg_0 = 1 - ecdsa__signature0__exponentiate_key__bit_0; @@ -7885,114 +7894,114 @@ func eval_composition_polynomial{range_check_ptr}( 12554203470773361527671578846415332832204710888928069025792 + column1_row56 * 25108406941546723055343157692830665664409421777856138051584 + column1_row60 * 50216813883093446110686315385661331328818843555712276103168; - tempvar ec_op__doubling_q__x_squared_0 = column7_row46 * column7_row46; - tempvar ec_op__ec_subset_sum__bit_0 = column7_row17 - (column7_row81 + column7_row81); + tempvar ec_op__doubling_q__x_squared_0 = column8_row44 * column8_row44; + tempvar ec_op__ec_subset_sum__bit_0 = column8_row18 - (column8_row82 + column8_row82); tempvar ec_op__ec_subset_sum__bit_neg_0 = 1 - ec_op__ec_subset_sum__bit_0; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances0_0 = column3_row16 - - column3_row66320 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances0_2 = column3_row32 - - column3_row66336 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances1_0 = column3_row66320 - - column3_row132624 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances1_2 = column3_row66336 - - column3_row132640 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances2_0 = column3_row132624 - - column3_row198928 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances2_2 = column3_row132640 - - column3_row198944 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances3_0 = column3_row198928 - - column3_row265232 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances3_2 = column3_row198944 - - column3_row265248 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances4_0 = column3_row265232 - - column3_row331536 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances4_2 = column3_row265248 - - column3_row331552 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances5_0 = column3_row331536 - - column3_row397840 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances5_2 = column3_row331552 - - column3_row397856 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances6_0 = column3_row397840 - - column3_row464144 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances6_2 = column3_row397856 - - column3_row464160 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances7_0 = column3_row464144 - - column3_row6416 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances7_2 = column3_row464160 - - column3_row6432 * 1606938044258990275541962092341162602522202993782792835301376; - tempvar keccak__keccak__parse_to_diluted__partial_diluted1_0 = column3_row516112 - ( - column3_row272 + column3_row272 + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances0_0 = column7_row1 - + column7_row66305 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances0_2 = column7_row17 - + column7_row66321 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances1_0 = column7_row66305 - + column7_row132609 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances1_2 = column7_row66321 - + column7_row132625 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances2_0 = column7_row132609 - + column7_row198913 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances2_2 = column7_row132625 - + column7_row198929 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances3_0 = column7_row198913 - + column7_row265217 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances3_2 = column7_row198929 - + column7_row265233 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances4_0 = column7_row265217 - + column7_row331521 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances4_2 = column7_row265233 - + column7_row331537 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances5_0 = column7_row331521 - + column7_row397825 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances5_2 = column7_row331537 - + column7_row397841 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances6_0 = column7_row397825 - + column7_row464129 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances6_2 = column7_row397841 - + column7_row464145 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances7_0 = column7_row464129 - + column7_row6401 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__sum_words_over_instances7_2 = column7_row464145 - + column7_row6417 * 1606938044258990275541962092341162602522202993782792835301376; + tempvar keccak__keccak__parse_to_diluted__partial_diluted1_0 = column7_row516097 - ( + column7_row257 + column7_row257 ); - tempvar keccak__keccak__parse_to_diluted__partial_diluted1_2 = column3_row516128 - ( - column3_row288 + column3_row288 + tempvar keccak__keccak__parse_to_diluted__partial_diluted1_2 = column7_row516113 - ( + column7_row273 + column7_row273 ); tempvar keccak__keccak__parse_to_diluted__bit_other1_0 = keccak__keccak__parse_to_diluted__partial_diluted1_2 - 16 * keccak__keccak__parse_to_diluted__partial_diluted1_0; - tempvar keccak__keccak__parse_to_diluted__partial_diluted1_30 = column3_row516352 - ( - column3_row512 + column3_row512 + tempvar keccak__keccak__parse_to_diluted__partial_diluted1_30 = column7_row516337 - ( + column7_row497 + column7_row497 ); - tempvar keccak__keccak__parse_to_diluted__partial_diluted1_31 = column3_row516360 - ( - column3_row520 + column3_row520 + tempvar keccak__keccak__parse_to_diluted__partial_diluted1_31 = column7_row516345 - ( + column7_row505 + column7_row505 ); - tempvar keccak__keccak__parse_to_diluted__partial_diluted0_0 = column3_row16 - ( - column3_row8208 + column3_row8208 + tempvar keccak__keccak__parse_to_diluted__partial_diluted0_0 = column7_row1 - ( + column7_row8193 + column7_row8193 ); - tempvar keccak__keccak__parse_to_diluted__partial_diluted0_2 = column3_row32 - ( - column3_row8224 + column3_row8224 + tempvar keccak__keccak__parse_to_diluted__partial_diluted0_2 = column7_row17 - ( + column7_row8209 + column7_row8209 ); tempvar keccak__keccak__parse_to_diluted__bit_other0_0 = keccak__keccak__parse_to_diluted__partial_diluted0_2 - 16 * keccak__keccak__parse_to_diluted__partial_diluted0_0; - tempvar keccak__keccak__parse_to_diluted__partial_diluted0_30 = column3_row256 - ( - column3_row8448 + column3_row8448 + tempvar keccak__keccak__parse_to_diluted__partial_diluted0_30 = column7_row241 - ( + column7_row8433 + column7_row8433 ); - tempvar keccak__keccak__parse_to_diluted__partial_diluted0_31 = column3_row264 - ( - column3_row8456 + column3_row8456 + tempvar keccak__keccak__parse_to_diluted__partial_diluted0_31 = column7_row249 - ( + column7_row8441 + column7_row8441 ); - tempvar keccak__keccak__sum_parities0_0 = column1_row6593 + column3_row7760; - tempvar keccak__keccak__sum_parities1_0 = column1_row6406 + column3_row1876; - tempvar keccak__keccak__sum_parities1_64512 = column1_row522502 + column3_row517972; - tempvar keccak__keccak__sum_parities2_0 = column1_row6401 + column3_row7568; - tempvar keccak__keccak__sum_parities2_2048 = column1_row22785 + column3_row23952; - tempvar keccak__keccak__sum_parities3_0 = column1_row6405 + column3_row5972; - tempvar keccak__keccak__sum_parities3_36864 = column1_row301317 + column3_row300884; - tempvar keccak__keccak__sum_parities4_0 = column1_row6598 + column3_row3924; - tempvar keccak__keccak__sum_parities4_37888 = column1_row309702 + column3_row307028; - tempvar keccak__keccak__sum_parities0_28672 = column1_row235969 + column3_row237136; - tempvar keccak__keccak__sum_parities1_20480 = column1_row170246 + column3_row165716; - tempvar keccak__keccak__sum_parities2_59392 = column1_row481537 + column3_row482704; - tempvar keccak__keccak__sum_parities3_8 = column1_row6469 + column3_row6036; - tempvar keccak__keccak__sum_parities3_16 = column1_row6533 + column3_row6100; - tempvar keccak__keccak__sum_parities3_9216 = column1_row80133 + column3_row79700; - tempvar keccak__keccak__sum_parities3_9224 = column1_row80197 + column3_row79764; - tempvar keccak__keccak__sum_parities3_9232 = column1_row80261 + column3_row79828; - tempvar keccak__keccak__sum_parities4_45056 = column1_row367046 + column3_row364372; - tempvar keccak__keccak__sum_parities0_62464 = column1_row506305 + column3_row507472; - tempvar keccak__keccak__sum_parities1_55296 = column1_row448774 + column3_row444244; - tempvar keccak__keccak__sum_parities2_21504 = column1_row178433 + column3_row179600; - tempvar keccak__keccak__sum_parities3_39936 = column1_row325893 + column3_row325460; - tempvar keccak__keccak__sum_parities4_8 = column1_row6662 + column3_row3988; - tempvar keccak__keccak__sum_parities4_16 = column1_row6726 + column3_row4052; - tempvar keccak__keccak__sum_parities4_25600 = column1_row211398 + column3_row208724; - tempvar keccak__keccak__sum_parities4_25608 = column1_row211462 + column3_row208788; - tempvar keccak__keccak__sum_parities4_25616 = column1_row211526 + column3_row208852; - tempvar keccak__keccak__sum_parities0_8 = column1_row6657 + column3_row7824; - tempvar keccak__keccak__sum_parities0_16 = column1_row6721 + column3_row7888; - tempvar keccak__keccak__sum_parities0_23552 = column1_row195009 + column3_row196176; - tempvar keccak__keccak__sum_parities0_23560 = column1_row195073 + column3_row196240; - tempvar keccak__keccak__sum_parities0_23568 = column1_row195137 + column3_row196304; - tempvar keccak__keccak__sum_parities1_19456 = column1_row162054 + column3_row157524; - tempvar keccak__keccak__sum_parities2_50176 = column1_row407809 + column3_row408976; - tempvar keccak__keccak__sum_parities3_44032 = column1_row358661 + column3_row358228; - tempvar keccak__keccak__sum_parities4_57344 = column1_row465350 + column3_row462676; - tempvar keccak__keccak__sum_parities0_47104 = column1_row383425 + column3_row384592; - tempvar keccak__keccak__sum_parities1_8 = column1_row6470 + column3_row1940; - tempvar keccak__keccak__sum_parities1_16 = column1_row6534 + column3_row2004; - tempvar keccak__keccak__sum_parities1_63488 = column1_row514310 + column3_row509780; - tempvar keccak__keccak__sum_parities1_63496 = column1_row514374 + column3_row509844; - tempvar keccak__keccak__sum_parities1_63504 = column1_row514438 + column3_row509908; - tempvar keccak__keccak__sum_parities2_3072 = column1_row30977 + column3_row32144; - tempvar keccak__keccak__sum_parities3_8192 = column1_row71941 + column3_row71508; - tempvar keccak__keccak__sum_parities4_51200 = column1_row416198 + column3_row413524; + tempvar keccak__keccak__sum_parities0_0 = column1_row6593 + column7_row8001; + tempvar keccak__keccak__sum_parities1_0 = column1_row6406 + column7_row4101; + tempvar keccak__keccak__sum_parities1_64512 = column1_row522502 + column7_row520197; + tempvar keccak__keccak__sum_parities2_0 = column1_row6401 + column7_row7809; + tempvar keccak__keccak__sum_parities2_2048 = column1_row22785 + column7_row24193; + tempvar keccak__keccak__sum_parities3_0 = column1_row6405 + column7_row2053; + tempvar keccak__keccak__sum_parities3_36864 = column1_row301317 + column7_row296965; + tempvar keccak__keccak__sum_parities4_0 = column1_row6598 + column7_row5; + tempvar keccak__keccak__sum_parities4_37888 = column1_row309702 + column7_row303109; + tempvar keccak__keccak__sum_parities0_28672 = column1_row235969 + column7_row237377; + tempvar keccak__keccak__sum_parities1_20480 = column1_row170246 + column7_row167941; + tempvar keccak__keccak__sum_parities2_59392 = column1_row481537 + column7_row482945; + tempvar keccak__keccak__sum_parities3_8 = column1_row6469 + column7_row2117; + tempvar keccak__keccak__sum_parities3_16 = column1_row6533 + column7_row2181; + tempvar keccak__keccak__sum_parities3_9216 = column1_row80133 + column7_row75781; + tempvar keccak__keccak__sum_parities3_9224 = column1_row80197 + column7_row75845; + tempvar keccak__keccak__sum_parities3_9232 = column1_row80261 + column7_row75909; + tempvar keccak__keccak__sum_parities4_45056 = column1_row367046 + column7_row360453; + tempvar keccak__keccak__sum_parities0_62464 = column1_row506305 + column7_row507713; + tempvar keccak__keccak__sum_parities1_55296 = column1_row448774 + column7_row446469; + tempvar keccak__keccak__sum_parities2_21504 = column1_row178433 + column7_row179841; + tempvar keccak__keccak__sum_parities3_39936 = column1_row325893 + column7_row321541; + tempvar keccak__keccak__sum_parities4_8 = column1_row6662 + column7_row69; + tempvar keccak__keccak__sum_parities4_16 = column1_row6726 + column7_row133; + tempvar keccak__keccak__sum_parities4_25600 = column1_row211398 + column7_row204805; + tempvar keccak__keccak__sum_parities4_25608 = column1_row211462 + column7_row204869; + tempvar keccak__keccak__sum_parities4_25616 = column1_row211526 + column7_row204933; + tempvar keccak__keccak__sum_parities0_8 = column1_row6657 + column7_row8065; + tempvar keccak__keccak__sum_parities0_16 = column1_row6721 + column7_row8129; + tempvar keccak__keccak__sum_parities0_23552 = column1_row195009 + column7_row196417; + tempvar keccak__keccak__sum_parities0_23560 = column1_row195073 + column7_row196481; + tempvar keccak__keccak__sum_parities0_23568 = column1_row195137 + column7_row196545; + tempvar keccak__keccak__sum_parities1_19456 = column1_row162054 + column7_row159749; + tempvar keccak__keccak__sum_parities2_50176 = column1_row407809 + column7_row409217; + tempvar keccak__keccak__sum_parities3_44032 = column1_row358661 + column7_row354309; + tempvar keccak__keccak__sum_parities4_57344 = column1_row465350 + column7_row458757; + tempvar keccak__keccak__sum_parities0_47104 = column1_row383425 + column7_row384833; + tempvar keccak__keccak__sum_parities1_8 = column1_row6470 + column7_row4165; + tempvar keccak__keccak__sum_parities1_16 = column1_row6534 + column7_row4229; + tempvar keccak__keccak__sum_parities1_63488 = column1_row514310 + column7_row512005; + tempvar keccak__keccak__sum_parities1_63496 = column1_row514374 + column7_row512069; + tempvar keccak__keccak__sum_parities1_63504 = column1_row514438 + column7_row512133; + tempvar keccak__keccak__sum_parities2_3072 = column1_row30977 + column7_row32385; + tempvar keccak__keccak__sum_parities3_8192 = column1_row71941 + column7_row67589; + tempvar keccak__keccak__sum_parities4_51200 = column1_row416198 + column7_row409605; tempvar keccak__keccak__after_theta_rho_pi_xor_one_32 = 1229782938247303441 - column1_row259; tempvar keccak__keccak__after_theta_rho_pi_xor_one_1056 = 1229782938247303441 - column1_row8451; tempvar keccak__keccak__after_theta_rho_pi_xor_one_3104 = 1229782938247303441 - @@ -8007,24 +8016,35 @@ func eval_composition_polynomial{range_check_ptr}( column1_row516355; tempvar keccak__keccak__after_theta_rho_pi_xor_one_0 = 1229782938247303441 - column1_row3; tempvar keccak__keccak__after_theta_rho_pi_xor_one_128 = 1229782938247303441 - column1_row1027; - tempvar poseidon__poseidon__full_rounds_state0_cubed_0 = column7_row109 * column7_row493; - tempvar poseidon__poseidon__full_rounds_state1_cubed_0 = column7_row365 * column7_row29; - tempvar poseidon__poseidon__full_rounds_state2_cubed_0 = column7_row237 * column7_row285; - tempvar poseidon__poseidon__full_rounds_state0_cubed_7 = column7_row3693 * column7_row4077; - tempvar poseidon__poseidon__full_rounds_state1_cubed_7 = column7_row3949 * column7_row3613; - tempvar poseidon__poseidon__full_rounds_state2_cubed_7 = column7_row3821 * column7_row3869; - tempvar poseidon__poseidon__full_rounds_state0_cubed_3 = column7_row1645 * column7_row2029; - tempvar poseidon__poseidon__full_rounds_state1_cubed_3 = column7_row1901 * column7_row1565; - tempvar poseidon__poseidon__full_rounds_state2_cubed_3 = column7_row1773 * column7_row1821; - tempvar poseidon__poseidon__partial_rounds_state0_cubed_0 = column7_row49 * column7_row9; - tempvar poseidon__poseidon__partial_rounds_state0_cubed_1 = column7_row113 * column7_row73; - tempvar poseidon__poseidon__partial_rounds_state0_cubed_2 = column7_row177 * column7_row137; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_0 = column7_row77 * column7_row45; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_1 = column7_row205 * column7_row173; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_2 = column7_row333 * column7_row301; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_19 = column7_row2509 * column7_row2477; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_20 = column7_row2637 * column7_row2605; - tempvar poseidon__poseidon__partial_rounds_state1_cubed_21 = column7_row2765 * column7_row2733; + tempvar poseidon__poseidon__full_rounds_state0_cubed_0 = column8_row110 * column8_row494; + tempvar poseidon__poseidon__full_rounds_state1_cubed_0 = column8_row366 * column8_row30; + tempvar poseidon__poseidon__full_rounds_state2_cubed_0 = column8_row238 * column8_row286; + tempvar poseidon__poseidon__full_rounds_state0_cubed_7 = column8_row3694 * column8_row4078; + tempvar poseidon__poseidon__full_rounds_state1_cubed_7 = column8_row3950 * column8_row3614; + tempvar poseidon__poseidon__full_rounds_state2_cubed_7 = column8_row3822 * column8_row3870; + tempvar poseidon__poseidon__full_rounds_state0_cubed_3 = column8_row1646 * column8_row2030; + tempvar poseidon__poseidon__full_rounds_state1_cubed_3 = column8_row1902 * column8_row1566; + tempvar poseidon__poseidon__full_rounds_state2_cubed_3 = column8_row1774 * column8_row1822; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_0 = column8_row50 * column8_row10; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_1 = column8_row114 * column8_row74; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_2 = column8_row178 * column8_row138; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_0 = column8_row78 * column8_row46; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_1 = column8_row206 * column8_row174; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_2 = column8_row334 * column8_row302; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_19 = column8_row2510 * column8_row2478; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_20 = column8_row2638 * column8_row2606; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_21 = column8_row2766 * column8_row2734; + tempvar range_check96_builtin__value0_0 = column5_row2; + tempvar range_check96_builtin__value1_0 = range_check96_builtin__value0_0 * + global_values.offset_size + column5_row66; + tempvar range_check96_builtin__value2_0 = range_check96_builtin__value1_0 * + global_values.offset_size + column5_row34; + tempvar range_check96_builtin__value3_0 = range_check96_builtin__value2_0 * + global_values.offset_size + column5_row98; + tempvar range_check96_builtin__value4_0 = range_check96_builtin__value3_0 * + global_values.offset_size + column5_row18; + tempvar range_check96_builtin__value5_0 = range_check96_builtin__value4_0 * + global_values.offset_size + column5_row82; // Sum constraints. tempvar total_sum = 0; @@ -8033,11 +8053,11 @@ func eval_composition_polynomial{range_check_ptr}( tempvar value = ( cpu__decode__opcode_range_check__bit_0 * cpu__decode__opcode_range_check__bit_0 - cpu__decode__opcode_range_check__bit_0 - ) * domain4 / domain0; + ) * domain3 / domain0; tempvar total_sum = total_sum + constraint_coefficients[0] * value; // Constraint: cpu/decode/opcode_range_check/zero. - tempvar value = (column0_row0) / domain4; + tempvar value = (column0_row0) / domain3; tempvar total_sum = total_sum + constraint_coefficients[1] * value; // Constraint: cpu/decode/opcode_range_check_input. @@ -8045,40 +8065,40 @@ func eval_composition_polynomial{range_check_ptr}( column4_row1 - ( ( - (column0_row0 * global_values.offset_size + column6_row4) * + (column0_row0 * global_values.offset_size + column5_row4) * global_values.offset_size + - column6_row8 + column5_row8 ) * global_values.offset_size + - column6_row0 + column5_row0 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[2] * value; // Constraint: cpu/decode/flag_op1_base_op0_bit. tempvar value = ( cpu__decode__flag_op1_base_op0_0 * cpu__decode__flag_op1_base_op0_0 - cpu__decode__flag_op1_base_op0_0 - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[3] * value; // Constraint: cpu/decode/flag_res_op1_bit. tempvar value = ( cpu__decode__flag_res_op1_0 * cpu__decode__flag_res_op1_0 - cpu__decode__flag_res_op1_0 - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[4] * value; // Constraint: cpu/decode/flag_pc_update_regular_bit. tempvar value = ( cpu__decode__flag_pc_update_regular_0 * cpu__decode__flag_pc_update_regular_0 - cpu__decode__flag_pc_update_regular_0 - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[5] * value; // Constraint: cpu/decode/fp_update_regular_bit. tempvar value = ( cpu__decode__fp_update_regular_0 * cpu__decode__fp_update_regular_0 - cpu__decode__fp_update_regular_0 - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[6] * value; // Constraint: cpu/operands/mem_dst_addr. @@ -8086,11 +8106,11 @@ func eval_composition_polynomial{range_check_ptr}( column4_row8 + global_values.half_offset_size - ( - cpu__decode__opcode_range_check__bit_0 * column7_row8 + - (1 - cpu__decode__opcode_range_check__bit_0) * column7_row0 + - column6_row0 + cpu__decode__opcode_range_check__bit_0 * column7_row11 + + (1 - cpu__decode__opcode_range_check__bit_0) * column7_row3 + + column5_row0 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[7] * value; // Constraint: cpu/operands/mem0_addr. @@ -8098,11 +8118,11 @@ func eval_composition_polynomial{range_check_ptr}( column4_row4 + global_values.half_offset_size - ( - cpu__decode__opcode_range_check__bit_1 * column7_row8 + - (1 - cpu__decode__opcode_range_check__bit_1) * column7_row0 + - column6_row8 + cpu__decode__opcode_range_check__bit_1 * column7_row11 + + (1 - cpu__decode__opcode_range_check__bit_1) * column7_row3 + + column5_row8 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[8] * value; // Constraint: cpu/operands/mem1_addr. @@ -8111,82 +8131,82 @@ func eval_composition_polynomial{range_check_ptr}( global_values.half_offset_size - ( cpu__decode__opcode_range_check__bit_2 * column4_row0 + - cpu__decode__opcode_range_check__bit_4 * column7_row0 + - cpu__decode__opcode_range_check__bit_3 * column7_row8 + + cpu__decode__opcode_range_check__bit_4 * column7_row3 + + cpu__decode__opcode_range_check__bit_3 * column7_row11 + cpu__decode__flag_op1_base_op0_0 * column4_row5 + - column6_row4 + column5_row4 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[9] * value; // Constraint: cpu/operands/ops_mul. - tempvar value = (column7_row4 - column4_row5 * column4_row13) / domain5; + tempvar value = (column7_row7 - column4_row5 * column4_row13) / domain4; tempvar total_sum = total_sum + constraint_coefficients[10] * value; // Constraint: cpu/operands/res. tempvar value = ( - (1 - cpu__decode__opcode_range_check__bit_9) * column7_row12 - + (1 - cpu__decode__opcode_range_check__bit_9) * column7_row15 - ( cpu__decode__opcode_range_check__bit_5 * (column4_row5 + column4_row13) + - cpu__decode__opcode_range_check__bit_6 * column7_row4 + + cpu__decode__opcode_range_check__bit_6 * column7_row7 + cpu__decode__flag_res_op1_0 * column4_row13 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[11] * value; // Constraint: cpu/update_registers/update_pc/tmp0. - tempvar value = (column7_row2 - cpu__decode__opcode_range_check__bit_9 * column4_row9) * - domain143 / domain5; + tempvar value = (column8_row0 - cpu__decode__opcode_range_check__bit_9 * column4_row9) * + domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[12] * value; // Constraint: cpu/update_registers/update_pc/tmp1. - tempvar value = (column7_row10 - column7_row2 * column7_row12) * domain143 / domain5; + tempvar value = (column8_row8 - column8_row0 * column7_row15) * domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[13] * value; // Constraint: cpu/update_registers/update_pc/pc_cond_negative. tempvar value = ( (1 - cpu__decode__opcode_range_check__bit_9) * column4_row16 + - column7_row2 * (column4_row16 - (column4_row0 + column4_row13)) - + column8_row0 * (column4_row16 - (column4_row0 + column4_row13)) - ( cpu__decode__flag_pc_update_regular_0 * npc_reg_0 + - cpu__decode__opcode_range_check__bit_7 * column7_row12 + - cpu__decode__opcode_range_check__bit_8 * (column4_row0 + column7_row12) + cpu__decode__opcode_range_check__bit_7 * column7_row15 + + cpu__decode__opcode_range_check__bit_8 * (column4_row0 + column7_row15) ) - ) * domain143 / domain5; + ) * domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[14] * value; // Constraint: cpu/update_registers/update_pc/pc_cond_positive. tempvar value = ( - (column7_row10 - cpu__decode__opcode_range_check__bit_9) * (column4_row16 - npc_reg_0) - ) * domain143 / domain5; + (column8_row8 - cpu__decode__opcode_range_check__bit_9) * (column4_row16 - npc_reg_0) + ) * domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[15] * value; // Constraint: cpu/update_registers/update_ap/ap_update. tempvar value = ( - column7_row16 - + column7_row19 - ( - column7_row0 + - cpu__decode__opcode_range_check__bit_10 * column7_row12 + + column7_row3 + + cpu__decode__opcode_range_check__bit_10 * column7_row15 + cpu__decode__opcode_range_check__bit_11 + cpu__decode__opcode_range_check__bit_12 * 2 ) - ) * domain143 / domain5; + ) * domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[16] * value; // Constraint: cpu/update_registers/update_fp/fp_update. tempvar value = ( - column7_row24 - + column7_row27 - ( - cpu__decode__fp_update_regular_0 * column7_row8 + + cpu__decode__fp_update_regular_0 * column7_row11 + cpu__decode__opcode_range_check__bit_13 * column4_row9 + - cpu__decode__opcode_range_check__bit_12 * (column7_row0 + 2) + cpu__decode__opcode_range_check__bit_12 * (column7_row3 + 2) ) - ) * domain143 / domain5; + ) * domain142 / domain4; tempvar total_sum = total_sum + constraint_coefficients[17] * value; // Constraint: cpu/opcodes/call/push_fp. - tempvar value = (cpu__decode__opcode_range_check__bit_12 * (column4_row9 - column7_row8)) / - domain5; + tempvar value = (cpu__decode__opcode_range_check__bit_12 * (column4_row9 - column7_row11)) / + domain4; tempvar total_sum = total_sum + constraint_coefficients[18] * value; // Constraint: cpu/opcodes/call/push_pc. @@ -8194,21 +8214,21 @@ func eval_composition_polynomial{range_check_ptr}( cpu__decode__opcode_range_check__bit_12 * ( column4_row5 - (column4_row0 + cpu__decode__opcode_range_check__bit_2 + 1) ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[19] * value; // Constraint: cpu/opcodes/call/off0. tempvar value = ( - cpu__decode__opcode_range_check__bit_12 * (column6_row0 - global_values.half_offset_size) - ) / domain5; + cpu__decode__opcode_range_check__bit_12 * (column5_row0 - global_values.half_offset_size) + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[20] * value; // Constraint: cpu/opcodes/call/off1. tempvar value = ( cpu__decode__opcode_range_check__bit_12 * ( - column6_row8 - (global_values.half_offset_size + 1) + column5_row8 - (global_values.half_offset_size + 1) ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[21] * value; // Constraint: cpu/opcodes/call/flags. @@ -8220,23 +8240,23 @@ func eval_composition_polynomial{range_check_ptr}( 1 - (cpu__decode__opcode_range_check__bit_0 + cpu__decode__opcode_range_check__bit_1 + 4) ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[22] * value; // Constraint: cpu/opcodes/ret/off0. tempvar value = ( cpu__decode__opcode_range_check__bit_13 * ( - column6_row0 + 2 - global_values.half_offset_size + column5_row0 + 2 - global_values.half_offset_size ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[23] * value; // Constraint: cpu/opcodes/ret/off2. tempvar value = ( cpu__decode__opcode_range_check__bit_13 * ( - column6_row4 + 1 - global_values.half_offset_size + column5_row4 + 1 - global_values.half_offset_size ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[24] * value; // Constraint: cpu/opcodes/ret/flags. @@ -8248,36 +8268,36 @@ func eval_composition_polynomial{range_check_ptr}( cpu__decode__flag_res_op1_0 - 4 ) - ) / domain5; + ) / domain4; tempvar total_sum = total_sum + constraint_coefficients[25] * value; // Constraint: cpu/opcodes/assert_eq/assert_eq. - tempvar value = (cpu__decode__opcode_range_check__bit_14 * (column4_row9 - column7_row12)) / - domain5; + tempvar value = (cpu__decode__opcode_range_check__bit_14 * (column4_row9 - column7_row15)) / + domain4; tempvar total_sum = total_sum + constraint_coefficients[26] * value; // Constraint: initial_ap. - tempvar value = (column7_row0 - global_values.initial_ap) / domain144; + tempvar value = (column7_row3 - global_values.initial_ap) / domain143; tempvar total_sum = total_sum + constraint_coefficients[27] * value; // Constraint: initial_fp. - tempvar value = (column7_row8 - global_values.initial_ap) / domain144; + tempvar value = (column7_row11 - global_values.initial_ap) / domain143; tempvar total_sum = total_sum + constraint_coefficients[28] * value; // Constraint: initial_pc. - tempvar value = (column4_row0 - global_values.initial_pc) / domain144; + tempvar value = (column4_row0 - global_values.initial_pc) / domain143; tempvar total_sum = total_sum + constraint_coefficients[29] * value; // Constraint: final_ap. - tempvar value = (column7_row0 - global_values.final_ap) / domain143; + tempvar value = (column7_row3 - global_values.final_ap) / domain142; tempvar total_sum = total_sum + constraint_coefficients[30] * value; // Constraint: final_fp. - tempvar value = (column7_row8 - global_values.initial_ap) / domain143; + tempvar value = (column7_row11 - global_values.initial_ap) / domain142; tempvar total_sum = total_sum + constraint_coefficients[31] * value; // Constraint: final_pc. - tempvar value = (column4_row0 - global_values.final_pc) / domain143; + tempvar value = (column4_row0 - global_values.final_pc) / domain142; tempvar total_sum = total_sum + constraint_coefficients[32] * value; // Constraint: memory/multi_column_perm/perm/init0. @@ -8285,14 +8305,14 @@ func eval_composition_polynomial{range_check_ptr}( ( global_values.memory__multi_column_perm__perm__interaction_elm - ( - column5_row0 + - global_values.memory__multi_column_perm__hash_interaction_elm0 * column5_row1 + column5_row1 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column6_row0 ) - ) * column10_inter1_row0 + + ) * column11_inter1_row0 + column4_row0 + global_values.memory__multi_column_perm__hash_interaction_elm0 * column4_row1 - global_values.memory__multi_column_perm__perm__interaction_elm - ) / domain144; + ) / domain143; tempvar total_sum = total_sum + constraint_coefficients[33] * value; // Constraint: memory/multi_column_perm/perm/step0. @@ -8300,272 +8320,272 @@ func eval_composition_polynomial{range_check_ptr}( ( global_values.memory__multi_column_perm__perm__interaction_elm - ( - column5_row2 + - global_values.memory__multi_column_perm__hash_interaction_elm0 * column5_row3 + column5_row3 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column6_row2 ) - ) * column10_inter1_row2 - + ) * column11_inter1_row2 - ( global_values.memory__multi_column_perm__perm__interaction_elm - ( column4_row2 + global_values.memory__multi_column_perm__hash_interaction_elm0 * column4_row3 ) - ) * column10_inter1_row0 - ) * domain145 / domain1; + ) * column11_inter1_row0 + ) * domain144 / domain1; tempvar total_sum = total_sum + constraint_coefficients[34] * value; // Constraint: memory/multi_column_perm/perm/last. tempvar value = ( - column10_inter1_row0 - global_values.memory__multi_column_perm__perm__public_memory_prod - ) / domain145; + column11_inter1_row0 - global_values.memory__multi_column_perm__perm__public_memory_prod + ) / domain144; tempvar total_sum = total_sum + constraint_coefficients[35] * value; // Constraint: memory/diff_is_bit. tempvar value = (memory__address_diff_0 * memory__address_diff_0 - memory__address_diff_0) * - domain145 / domain1; + domain144 / domain1; tempvar total_sum = total_sum + constraint_coefficients[36] * value; // Constraint: memory/is_func. - tempvar value = ((memory__address_diff_0 - 1) * (column5_row1 - column5_row3)) * domain145 / + tempvar value = ((memory__address_diff_0 - 1) * (column6_row0 - column6_row2)) * domain144 / domain1; tempvar total_sum = total_sum + constraint_coefficients[37] * value; // Constraint: memory/initial_addr. - tempvar value = (column5_row0 - 1) / domain144; + tempvar value = (column5_row1 - 1) / domain143; tempvar total_sum = total_sum + constraint_coefficients[38] * value; // Constraint: public_memory_addr_zero. - tempvar value = (column4_row2) / domain5; + tempvar value = (column4_row2) / domain4; tempvar total_sum = total_sum + constraint_coefficients[39] * value; // Constraint: public_memory_value_zero. - tempvar value = (column4_row3) / domain5; + tempvar value = (column4_row3) / domain4; tempvar total_sum = total_sum + constraint_coefficients[40] * value; // Constraint: range_check16/perm/init0. tempvar value = ( - (global_values.range_check16__perm__interaction_elm - column6_row2) * column10_inter1_row1 + - column6_row0 - + (global_values.range_check16__perm__interaction_elm - column6_row1) * column11_inter1_row1 + + column5_row0 - global_values.range_check16__perm__interaction_elm - ) / domain144; + ) / domain143; tempvar total_sum = total_sum + constraint_coefficients[41] * value; // Constraint: range_check16/perm/step0. tempvar value = ( - (global_values.range_check16__perm__interaction_elm - column6_row6) * column10_inter1_row5 - - (global_values.range_check16__perm__interaction_elm - column6_row4) * column10_inter1_row1 - ) * domain146 / domain2; + (global_values.range_check16__perm__interaction_elm - column6_row3) * column11_inter1_row3 - + (global_values.range_check16__perm__interaction_elm - column5_row2) * column11_inter1_row1 + ) * domain144 / domain1; tempvar total_sum = total_sum + constraint_coefficients[42] * value; // Constraint: range_check16/perm/last. - tempvar value = (column10_inter1_row1 - global_values.range_check16__perm__public_memory_prod) / - domain146; + tempvar value = (column11_inter1_row1 - global_values.range_check16__perm__public_memory_prod) / + domain144; tempvar total_sum = total_sum + constraint_coefficients[43] * value; // Constraint: range_check16/diff_is_bit. tempvar value = (range_check16__diff_0 * range_check16__diff_0 - range_check16__diff_0) * - domain146 / domain2; + domain144 / domain1; tempvar total_sum = total_sum + constraint_coefficients[44] * value; // Constraint: range_check16/minimum. - tempvar value = (column6_row2 - global_values.range_check_min) / domain144; + tempvar value = (column6_row1 - global_values.range_check_min) / domain143; tempvar total_sum = total_sum + constraint_coefficients[45] * value; // Constraint: range_check16/maximum. - tempvar value = (column6_row2 - global_values.range_check_max) / domain146; + tempvar value = (column6_row1 - global_values.range_check_max) / domain144; tempvar total_sum = total_sum + constraint_coefficients[46] * value; // Constraint: diluted_check/permutation/init0. tempvar value = ( (global_values.diluted_check__permutation__interaction_elm - column2_row0) * - column9_inter1_row0 + + column10_inter1_row0 + column1_row0 - global_values.diluted_check__permutation__interaction_elm - ) / domain144; + ) / domain143; tempvar total_sum = total_sum + constraint_coefficients[47] * value; // Constraint: diluted_check/permutation/step0. tempvar value = ( (global_values.diluted_check__permutation__interaction_elm - column2_row1) * - column9_inter1_row1 - + column10_inter1_row1 - (global_values.diluted_check__permutation__interaction_elm - column1_row1) * - column9_inter1_row0 - ) * domain147 / domain0; + column10_inter1_row0 + ) * domain145 / domain0; tempvar total_sum = total_sum + constraint_coefficients[48] * value; // Constraint: diluted_check/permutation/last. tempvar value = ( - column9_inter1_row0 - global_values.diluted_check__permutation__public_memory_prod - ) / domain147; + column10_inter1_row0 - global_values.diluted_check__permutation__public_memory_prod + ) / domain145; tempvar total_sum = total_sum + constraint_coefficients[49] * value; // Constraint: diluted_check/init. - tempvar value = (column8_inter1_row0 - 1) / domain144; + tempvar value = (column9_inter1_row0 - 1) / domain143; tempvar total_sum = total_sum + constraint_coefficients[50] * value; // Constraint: diluted_check/first_element. - tempvar value = (column2_row0 - global_values.diluted_check__first_elm) / domain144; + tempvar value = (column2_row0 - global_values.diluted_check__first_elm) / domain143; tempvar total_sum = total_sum + constraint_coefficients[51] * value; // Constraint: diluted_check/step. tempvar value = ( - column8_inter1_row1 - + column9_inter1_row1 - ( - column8_inter1_row0 * ( + column9_inter1_row0 * ( 1 + global_values.diluted_check__interaction_z * (column2_row1 - column2_row0) ) + global_values.diluted_check__interaction_alpha * (column2_row1 - column2_row0) * ( column2_row1 - column2_row0 ) ) - ) * domain147 / domain0; + ) * domain145 / domain0; tempvar total_sum = total_sum + constraint_coefficients[52] * value; // Constraint: diluted_check/last. - tempvar value = (column8_inter1_row0 - global_values.diluted_check__final_cum_val) / domain147; + tempvar value = (column9_inter1_row0 - global_values.diluted_check__final_cum_val) / domain145; tempvar total_sum = total_sum + constraint_coefficients[53] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/last_one_is_zero. - tempvar value = (column7_row157 * (column6_row3 - (column6_row11 + column6_row11))) / domain13; + tempvar value = (column8_row158 * (column7_row2 - (column7_row10 + column7_row10))) / domain12; tempvar total_sum = total_sum + constraint_coefficients[54] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones0. tempvar value = ( - column7_row157 * ( - column6_row11 - - 3138550867693340381917894711603833208051177722232017256448 * column6_row1539 + column8_row158 * ( + column7_row10 - + 3138550867693340381917894711603833208051177722232017256448 * column7_row1538 ) - ) / domain13; + ) / domain12; tempvar total_sum = total_sum + constraint_coefficients[55] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/cumulative_bit192. tempvar value = ( - column7_row157 - column6_row2047 * (column6_row1539 - (column6_row1547 + column6_row1547)) - ) / domain13; + column8_row158 - column7_row2046 * (column7_row1538 - (column7_row1546 + column7_row1546)) + ) / domain12; tempvar total_sum = total_sum + constraint_coefficients[56] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones192. - tempvar value = (column6_row2047 * (column6_row1547 - 8 * column6_row1571)) / domain13; + tempvar value = (column7_row2046 * (column7_row1546 - 8 * column7_row1570)) / domain12; tempvar total_sum = total_sum + constraint_coefficients[57] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/cumulative_bit196. tempvar value = ( - column6_row2047 - - (column6_row2011 - (column6_row2019 + column6_row2019)) * ( - column6_row1571 - (column6_row1579 + column6_row1579) + column7_row2046 - + (column7_row2010 - (column7_row2018 + column7_row2018)) * ( + column7_row1570 - (column7_row1578 + column7_row1578) ) - ) / domain13; + ) / domain12; tempvar total_sum = total_sum + constraint_coefficients[58] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones196. tempvar value = ( - (column6_row2011 - (column6_row2019 + column6_row2019)) * ( - column6_row1579 - 18014398509481984 * column6_row2011 + (column7_row2010 - (column7_row2018 + column7_row2018)) * ( + column7_row1578 - 18014398509481984 * column7_row2010 ) - ) / domain13; + ) / domain12; tempvar total_sum = total_sum + constraint_coefficients[59] * value; // Constraint: pedersen/hash0/ec_subset_sum/booleanity_test. tempvar value = ( pedersen__hash0__ec_subset_sum__bit_0 * (pedersen__hash0__ec_subset_sum__bit_0 - 1) - ) * domain14 / domain3; + ) * domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[60] * value; // Constraint: pedersen/hash0/ec_subset_sum/bit_extraction_end. - tempvar value = (column6_row3) / domain15; + tempvar value = (column7_row2) / domain14; tempvar total_sum = total_sum + constraint_coefficients[61] * value; // Constraint: pedersen/hash0/ec_subset_sum/zeros_tail. - tempvar value = (column6_row3) / domain14; + tempvar value = (column7_row2) / domain13; tempvar total_sum = total_sum + constraint_coefficients[62] * value; // Constraint: pedersen/hash0/ec_subset_sum/add_points/slope. tempvar value = ( - pedersen__hash0__ec_subset_sum__bit_0 * (column6_row5 - global_values.pedersen__points__y) - - column6_row7 * (column6_row1 - global_values.pedersen__points__x) - ) * domain14 / domain3; + pedersen__hash0__ec_subset_sum__bit_0 * (column7_row4 - global_values.pedersen__points__y) - + column7_row6 * (column7_row0 - global_values.pedersen__points__x) + ) * domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[63] * value; // Constraint: pedersen/hash0/ec_subset_sum/add_points/x. tempvar value = ( - column6_row7 * column6_row7 - + column7_row6 * column7_row6 - pedersen__hash0__ec_subset_sum__bit_0 * ( - column6_row1 + global_values.pedersen__points__x + column6_row9 + column7_row0 + global_values.pedersen__points__x + column7_row8 ) - ) * domain14 / domain3; + ) * domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[64] * value; // Constraint: pedersen/hash0/ec_subset_sum/add_points/y. tempvar value = ( - pedersen__hash0__ec_subset_sum__bit_0 * (column6_row5 + column6_row13) - - column6_row7 * (column6_row1 - column6_row9) - ) * domain14 / domain3; + pedersen__hash0__ec_subset_sum__bit_0 * (column7_row4 + column7_row12) - + column7_row6 * (column7_row0 - column7_row8) + ) * domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[65] * value; // Constraint: pedersen/hash0/ec_subset_sum/copy_point/x. - tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column6_row9 - column6_row1)) * - domain14 / domain3; + tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column7_row8 - column7_row0)) * + domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[66] * value; // Constraint: pedersen/hash0/ec_subset_sum/copy_point/y. - tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column6_row13 - column6_row5)) * - domain14 / domain3; + tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column7_row12 - column7_row4)) * + domain13 / domain2; tempvar total_sum = total_sum + constraint_coefficients[67] * value; // Constraint: pedersen/hash0/copy_point/x. - tempvar value = (column6_row2049 - column6_row2041) * domain17 / domain13; + tempvar value = (column7_row2048 - column7_row2040) * domain16 / domain12; tempvar total_sum = total_sum + constraint_coefficients[68] * value; // Constraint: pedersen/hash0/copy_point/y. - tempvar value = (column6_row2053 - column6_row2045) * domain17 / domain13; + tempvar value = (column7_row2052 - column7_row2044) * domain16 / domain12; tempvar total_sum = total_sum + constraint_coefficients[69] * value; // Constraint: pedersen/hash0/init/x. - tempvar value = (column6_row1 - global_values.pedersen__shift_point.x) / domain18; + tempvar value = (column7_row0 - global_values.pedersen__shift_point.x) / domain17; tempvar total_sum = total_sum + constraint_coefficients[70] * value; // Constraint: pedersen/hash0/init/y. - tempvar value = (column6_row5 - global_values.pedersen__shift_point.y) / domain18; + tempvar value = (column7_row4 - global_values.pedersen__shift_point.y) / domain17; tempvar total_sum = total_sum + constraint_coefficients[71] * value; // Constraint: pedersen/input0_value0. - tempvar value = (column4_row11 - column6_row3) / domain18; + tempvar value = (column4_row11 - column7_row2) / domain17; tempvar total_sum = total_sum + constraint_coefficients[72] * value; // Constraint: pedersen/input0_addr. - tempvar value = (column4_row4106 - (column4_row1034 + 1)) * domain148 / domain18; + tempvar value = (column4_row4106 - (column4_row1034 + 1)) * domain146 / domain17; tempvar total_sum = total_sum + constraint_coefficients[73] * value; // Constraint: pedersen/init_addr. - tempvar value = (column4_row10 - global_values.initial_pedersen_addr) / domain144; + tempvar value = (column4_row10 - global_values.initial_pedersen_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[74] * value; // Constraint: pedersen/input1_value0. - tempvar value = (column4_row2059 - column6_row2051) / domain18; + tempvar value = (column4_row2059 - column7_row2050) / domain17; tempvar total_sum = total_sum + constraint_coefficients[75] * value; // Constraint: pedersen/input1_addr. - tempvar value = (column4_row2058 - (column4_row10 + 1)) / domain18; + tempvar value = (column4_row2058 - (column4_row10 + 1)) / domain17; tempvar total_sum = total_sum + constraint_coefficients[76] * value; // Constraint: pedersen/output_value0. - tempvar value = (column4_row1035 - column6_row4089) / domain18; + tempvar value = (column4_row1035 - column7_row4088) / domain17; tempvar total_sum = total_sum + constraint_coefficients[77] * value; // Constraint: pedersen/output_addr. - tempvar value = (column4_row1034 - (column4_row2058 + 1)) / domain18; + tempvar value = (column4_row1034 - (column4_row2058 + 1)) / domain17; tempvar total_sum = total_sum + constraint_coefficients[78] * value; // Constraint: range_check_builtin/value. - tempvar value = (range_check_builtin__value7_0 - column4_row75) / domain7; + tempvar value = (range_check_builtin__value7_0 - column4_row75) / domain6; tempvar total_sum = total_sum + constraint_coefficients[79] * value; // Constraint: range_check_builtin/addr_step. - tempvar value = (column4_row202 - (column4_row74 + 1)) * domain149 / domain7; + tempvar value = (column4_row202 - (column4_row74 + 1)) * domain147 / domain6; tempvar total_sum = total_sum + constraint_coefficients[80] * value; // Constraint: range_check_builtin/init_addr. - tempvar value = (column4_row74 - global_values.initial_range_check_addr) / domain144; + tempvar value = (column4_row74 - global_values.initial_range_check_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[81] * value; // Constraint: ecdsa/signature0/doubling_key/slope. @@ -8574,20 +8594,20 @@ func eval_composition_polynomial{range_check_ptr}( ecdsa__signature0__doubling_key__x_squared + ecdsa__signature0__doubling_key__x_squared + global_values.ecdsa__sig_config.alpha - - (column7_row38 + column7_row38) * column7_row41 - ) * domain27 / domain6; + (column8_row36 + column8_row36) * column8_row42 + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[82] * value; // Constraint: ecdsa/signature0/doubling_key/x. tempvar value = ( - column7_row41 * column7_row41 - (column7_row6 + column7_row6 + column7_row70) - ) * domain27 / domain6; + column8_row42 * column8_row42 - (column8_row4 + column8_row4 + column8_row68) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[83] * value; // Constraint: ecdsa/signature0/doubling_key/y. tempvar value = ( - column7_row38 + column7_row102 - column7_row41 * (column7_row6 - column7_row70) - ) * domain27 / domain6; + column8_row36 + column8_row100 - column8_row42 * (column8_row4 - column8_row68) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[84] * value; // Constraint: ecdsa/signature0/exponentiate_generator/booleanity_test. @@ -8595,58 +8615,58 @@ func eval_composition_polynomial{range_check_ptr}( ecdsa__signature0__exponentiate_generator__bit_0 * ( ecdsa__signature0__exponentiate_generator__bit_0 - 1 ) - ) * domain31 / domain7; + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[85] * value; // Constraint: ecdsa/signature0/exponentiate_generator/bit_extraction_end. - tempvar value = (column7_row53) / domain32; + tempvar value = (column8_row54) / domain31; tempvar total_sum = total_sum + constraint_coefficients[86] * value; // Constraint: ecdsa/signature0/exponentiate_generator/zeros_tail. - tempvar value = (column7_row53) / domain31; + tempvar value = (column8_row54) / domain30; tempvar total_sum = total_sum + constraint_coefficients[87] * value; // Constraint: ecdsa/signature0/exponentiate_generator/add_points/slope. tempvar value = ( ecdsa__signature0__exponentiate_generator__bit_0 * ( - column7_row85 - global_values.ecdsa__generator_points__y + column8_row86 - global_values.ecdsa__generator_points__y ) - - column7_row117 * (column7_row21 - global_values.ecdsa__generator_points__x) - ) * domain31 / domain7; + column8_row118 * (column8_row22 - global_values.ecdsa__generator_points__x) + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[88] * value; // Constraint: ecdsa/signature0/exponentiate_generator/add_points/x. tempvar value = ( - column7_row117 * column7_row117 - + column8_row118 * column8_row118 - ecdsa__signature0__exponentiate_generator__bit_0 * ( - column7_row21 + global_values.ecdsa__generator_points__x + column7_row149 + column8_row22 + global_values.ecdsa__generator_points__x + column8_row150 ) - ) * domain31 / domain7; + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[89] * value; // Constraint: ecdsa/signature0/exponentiate_generator/add_points/y. tempvar value = ( - ecdsa__signature0__exponentiate_generator__bit_0 * (column7_row85 + column7_row213) - - column7_row117 * (column7_row21 - column7_row149) - ) * domain31 / domain7; + ecdsa__signature0__exponentiate_generator__bit_0 * (column8_row86 + column8_row214) - + column8_row118 * (column8_row22 - column8_row150) + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[90] * value; // Constraint: ecdsa/signature0/exponentiate_generator/add_points/x_diff_inv. tempvar value = ( - column7_row13 * (column7_row21 - global_values.ecdsa__generator_points__x) - 1 - ) * domain31 / domain7; + column8_row14 * (column8_row22 - global_values.ecdsa__generator_points__x) - 1 + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[91] * value; // Constraint: ecdsa/signature0/exponentiate_generator/copy_point/x. tempvar value = ( - ecdsa__signature0__exponentiate_generator__bit_neg_0 * (column7_row149 - column7_row21) - ) * domain31 / domain7; + ecdsa__signature0__exponentiate_generator__bit_neg_0 * (column8_row150 - column8_row22) + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[92] * value; // Constraint: ecdsa/signature0/exponentiate_generator/copy_point/y. tempvar value = ( - ecdsa__signature0__exponentiate_generator__bit_neg_0 * (column7_row213 - column7_row85) - ) * domain31 / domain7; + ecdsa__signature0__exponentiate_generator__bit_neg_0 * (column8_row214 - column8_row86) + ) * domain30 / domain6; tempvar total_sum = total_sum + constraint_coefficients[93] * value; // Constraint: ecdsa/signature0/exponentiate_key/booleanity_test. @@ -8654,236 +8674,236 @@ func eval_composition_polynomial{range_check_ptr}( ecdsa__signature0__exponentiate_key__bit_0 * ( ecdsa__signature0__exponentiate_key__bit_0 - 1 ) - ) * domain27 / domain6; + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[94] * value; // Constraint: ecdsa/signature0/exponentiate_key/bit_extraction_end. - tempvar value = (column7_row14) / domain28; + tempvar value = (column8_row12) / domain27; tempvar total_sum = total_sum + constraint_coefficients[95] * value; // Constraint: ecdsa/signature0/exponentiate_key/zeros_tail. - tempvar value = (column7_row14) / domain27; + tempvar value = (column8_row12) / domain26; tempvar total_sum = total_sum + constraint_coefficients[96] * value; // Constraint: ecdsa/signature0/exponentiate_key/add_points/slope. tempvar value = ( - ecdsa__signature0__exponentiate_key__bit_0 * (column7_row54 - column7_row38) - - column7_row25 * (column7_row22 - column7_row6) - ) * domain27 / domain6; + ecdsa__signature0__exponentiate_key__bit_0 * (column8_row52 - column8_row36) - + column8_row26 * (column8_row20 - column8_row4) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[97] * value; // Constraint: ecdsa/signature0/exponentiate_key/add_points/x. tempvar value = ( - column7_row25 * column7_row25 - - ecdsa__signature0__exponentiate_key__bit_0 * (column7_row22 + column7_row6 + column7_row86) - ) * domain27 / domain6; + column8_row26 * column8_row26 - + ecdsa__signature0__exponentiate_key__bit_0 * (column8_row20 + column8_row4 + column8_row84) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[98] * value; // Constraint: ecdsa/signature0/exponentiate_key/add_points/y. tempvar value = ( - ecdsa__signature0__exponentiate_key__bit_0 * (column7_row54 + column7_row118) - - column7_row25 * (column7_row22 - column7_row86) - ) * domain27 / domain6; + ecdsa__signature0__exponentiate_key__bit_0 * (column8_row52 + column8_row116) - + column8_row26 * (column8_row20 - column8_row84) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[99] * value; // Constraint: ecdsa/signature0/exponentiate_key/add_points/x_diff_inv. - tempvar value = (column7_row57 * (column7_row22 - column7_row6) - 1) * domain27 / domain6; + tempvar value = (column8_row58 * (column8_row20 - column8_row4) - 1) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[100] * value; // Constraint: ecdsa/signature0/exponentiate_key/copy_point/x. tempvar value = ( - ecdsa__signature0__exponentiate_key__bit_neg_0 * (column7_row86 - column7_row22) - ) * domain27 / domain6; + ecdsa__signature0__exponentiate_key__bit_neg_0 * (column8_row84 - column8_row20) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[101] * value; // Constraint: ecdsa/signature0/exponentiate_key/copy_point/y. tempvar value = ( - ecdsa__signature0__exponentiate_key__bit_neg_0 * (column7_row118 - column7_row54) - ) * domain27 / domain6; + ecdsa__signature0__exponentiate_key__bit_neg_0 * (column8_row116 - column8_row52) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[102] * value; // Constraint: ecdsa/signature0/init_gen/x. - tempvar value = (column7_row21 - global_values.ecdsa__sig_config.shift_point.x) / domain33; + tempvar value = (column8_row22 - global_values.ecdsa__sig_config.shift_point.x) / domain32; tempvar total_sum = total_sum + constraint_coefficients[103] * value; // Constraint: ecdsa/signature0/init_gen/y. - tempvar value = (column7_row85 + global_values.ecdsa__sig_config.shift_point.y) / domain33; + tempvar value = (column8_row86 + global_values.ecdsa__sig_config.shift_point.y) / domain32; tempvar total_sum = total_sum + constraint_coefficients[104] * value; // Constraint: ecdsa/signature0/init_key/x. - tempvar value = (column7_row22 - global_values.ecdsa__sig_config.shift_point.x) / domain29; + tempvar value = (column8_row20 - global_values.ecdsa__sig_config.shift_point.x) / domain28; tempvar total_sum = total_sum + constraint_coefficients[105] * value; // Constraint: ecdsa/signature0/init_key/y. - tempvar value = (column7_row54 - global_values.ecdsa__sig_config.shift_point.y) / domain29; + tempvar value = (column8_row52 - global_values.ecdsa__sig_config.shift_point.y) / domain28; tempvar total_sum = total_sum + constraint_coefficients[106] * value; // Constraint: ecdsa/signature0/add_results/slope. tempvar value = ( - column7_row32725 - - (column7_row16374 + column7_row32757 * (column7_row32661 - column7_row16342)) - ) / domain33; + column8_row32726 - + (column8_row16372 + column8_row32758 * (column8_row32662 - column8_row16340)) + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[107] * value; // Constraint: ecdsa/signature0/add_results/x. tempvar value = ( - column7_row32757 * column7_row32757 - - (column7_row32661 + column7_row16342 + column7_row16390) - ) / domain33; + column8_row32758 * column8_row32758 - + (column8_row32662 + column8_row16340 + column8_row16388) + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[108] * value; // Constraint: ecdsa/signature0/add_results/y. tempvar value = ( - column7_row32725 + - column7_row16422 - - column7_row32757 * (column7_row32661 - column7_row16390) - ) / domain33; + column8_row32726 + + column8_row16420 - + column8_row32758 * (column8_row32662 - column8_row16388) + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[109] * value; // Constraint: ecdsa/signature0/add_results/x_diff_inv. - tempvar value = (column7_row32653 * (column7_row32661 - column7_row16342) - 1) / domain33; + tempvar value = (column8_row32654 * (column8_row32662 - column8_row16340) - 1) / domain32; tempvar total_sum = total_sum + constraint_coefficients[110] * value; // Constraint: ecdsa/signature0/extract_r/slope. tempvar value = ( - column7_row32758 + + column8_row32756 + global_values.ecdsa__sig_config.shift_point.y - - column7_row16325 * (column7_row32726 - global_values.ecdsa__sig_config.shift_point.x) - ) / domain33; + column8_row16326 * (column8_row32724 - global_values.ecdsa__sig_config.shift_point.x) + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[111] * value; // Constraint: ecdsa/signature0/extract_r/x. tempvar value = ( - column7_row16325 * column7_row16325 - - (column7_row32726 + global_values.ecdsa__sig_config.shift_point.x + column7_row14) - ) / domain33; + column8_row16326 * column8_row16326 - + (column8_row32724 + global_values.ecdsa__sig_config.shift_point.x + column8_row12) + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[112] * value; // Constraint: ecdsa/signature0/extract_r/x_diff_inv. tempvar value = ( - column7_row32709 * (column7_row32726 - global_values.ecdsa__sig_config.shift_point.x) - 1 - ) / domain33; + column8_row32710 * (column8_row32724 - global_values.ecdsa__sig_config.shift_point.x) - 1 + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[113] * value; // Constraint: ecdsa/signature0/z_nonzero. - tempvar value = (column7_row53 * column7_row16357 - 1) / domain33; + tempvar value = (column8_row54 * column8_row16358 - 1) / domain32; tempvar total_sum = total_sum + constraint_coefficients[114] * value; // Constraint: ecdsa/signature0/r_and_w_nonzero. - tempvar value = (column7_row14 * column7_row16361 - 1) / domain29; + tempvar value = (column8_row12 * column8_row16362 - 1) / domain28; tempvar total_sum = total_sum + constraint_coefficients[115] * value; // Constraint: ecdsa/signature0/q_on_curve/x_squared. - tempvar value = (column7_row32741 - column7_row6 * column7_row6) / domain33; + tempvar value = (column8_row32742 - column8_row4 * column8_row4) / domain32; tempvar total_sum = total_sum + constraint_coefficients[116] * value; // Constraint: ecdsa/signature0/q_on_curve/on_curve. tempvar value = ( - column7_row38 * column7_row38 - + column8_row36 * column8_row36 - ( - column7_row6 * column7_row32741 + - global_values.ecdsa__sig_config.alpha * column7_row6 + + column8_row4 * column8_row32742 + + global_values.ecdsa__sig_config.alpha * column8_row4 + global_values.ecdsa__sig_config.beta ) - ) / domain33; + ) / domain32; tempvar total_sum = total_sum + constraint_coefficients[117] * value; // Constraint: ecdsa/init_addr. - tempvar value = (column4_row3082 - global_values.initial_ecdsa_addr) / domain144; + tempvar value = (column4_row3082 - global_values.initial_ecdsa_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[118] * value; // Constraint: ecdsa/message_addr. - tempvar value = (column4_row19466 - (column4_row3082 + 1)) / domain33; + tempvar value = (column4_row19466 - (column4_row3082 + 1)) / domain32; tempvar total_sum = total_sum + constraint_coefficients[119] * value; // Constraint: ecdsa/pubkey_addr. - tempvar value = (column4_row35850 - (column4_row19466 + 1)) * domain150 / domain33; + tempvar value = (column4_row35850 - (column4_row19466 + 1)) * domain148 / domain32; tempvar total_sum = total_sum + constraint_coefficients[120] * value; // Constraint: ecdsa/message_value0. - tempvar value = (column4_row19467 - column7_row53) / domain33; + tempvar value = (column4_row19467 - column8_row54) / domain32; tempvar total_sum = total_sum + constraint_coefficients[121] * value; // Constraint: ecdsa/pubkey_value0. - tempvar value = (column4_row3083 - column7_row6) / domain33; + tempvar value = (column4_row3083 - column8_row4) / domain32; tempvar total_sum = total_sum + constraint_coefficients[122] * value; // Constraint: bitwise/init_var_pool_addr. - tempvar value = (column4_row42 - global_values.initial_bitwise_addr) / domain144; + tempvar value = (column4_row42 - global_values.initial_bitwise_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[123] * value; // Constraint: bitwise/step_var_pool_addr. - tempvar value = (column4_row106 - (column4_row42 + 1)) * domain8 / domain6; + tempvar value = (column4_row106 - (column4_row42 + 1)) * domain7 / domain5; tempvar total_sum = total_sum + constraint_coefficients[124] * value; // Constraint: bitwise/x_or_y_addr. - tempvar value = (column4_row138 - (column4_row234 + 1)) / domain9; + tempvar value = (column4_row138 - (column4_row234 + 1)) / domain8; tempvar total_sum = total_sum + constraint_coefficients[125] * value; // Constraint: bitwise/next_var_pool_addr. - tempvar value = (column4_row298 - (column4_row138 + 1)) * domain151 / domain9; + tempvar value = (column4_row298 - (column4_row138 + 1)) * domain149 / domain8; tempvar total_sum = total_sum + constraint_coefficients[126] * value; // Constraint: bitwise/partition. - tempvar value = (bitwise__sum_var_0_0 + bitwise__sum_var_8_0 - column4_row43) / domain6; + tempvar value = (bitwise__sum_var_0_0 + bitwise__sum_var_8_0 - column4_row43) / domain5; tempvar total_sum = total_sum + constraint_coefficients[127] * value; // Constraint: bitwise/or_is_and_plus_xor. - tempvar value = (column4_row139 - (column4_row171 + column4_row235)) / domain9; + tempvar value = (column4_row139 - (column4_row171 + column4_row235)) / domain8; tempvar total_sum = total_sum + constraint_coefficients[128] * value; // Constraint: bitwise/addition_is_xor_with_and. tempvar value = ( column1_row0 + column1_row64 - (column1_row192 + column1_row128 + column1_row128) - ) / domain11; + ) / domain10; tempvar total_sum = total_sum + constraint_coefficients[129] * value; // Constraint: bitwise/unique_unpacking192. - tempvar value = ((column1_row176 + column1_row240) * 16 - column1_row2) / domain9; + tempvar value = ((column1_row176 + column1_row240) * 16 - column1_row2) / domain8; tempvar total_sum = total_sum + constraint_coefficients[130] * value; // Constraint: bitwise/unique_unpacking193. - tempvar value = ((column1_row180 + column1_row244) * 16 - column1_row130) / domain9; + tempvar value = ((column1_row180 + column1_row244) * 16 - column1_row130) / domain8; tempvar total_sum = total_sum + constraint_coefficients[131] * value; // Constraint: bitwise/unique_unpacking194. - tempvar value = ((column1_row184 + column1_row248) * 16 - column1_row66) / domain9; + tempvar value = ((column1_row184 + column1_row248) * 16 - column1_row66) / domain8; tempvar total_sum = total_sum + constraint_coefficients[132] * value; // Constraint: bitwise/unique_unpacking195. - tempvar value = ((column1_row188 + column1_row252) * 256 - column1_row194) / domain9; + tempvar value = ((column1_row188 + column1_row252) * 256 - column1_row194) / domain8; tempvar total_sum = total_sum + constraint_coefficients[133] * value; // Constraint: ec_op/init_addr. - tempvar value = (column4_row11274 - global_values.initial_ec_op_addr) / domain144; + tempvar value = (column4_row11274 - global_values.initial_ec_op_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[134] * value; // Constraint: ec_op/p_x_addr. - tempvar value = (column4_row27658 - (column4_row11274 + 7)) * domain152 / domain29; + tempvar value = (column4_row27658 - (column4_row11274 + 7)) * domain150 / domain28; tempvar total_sum = total_sum + constraint_coefficients[135] * value; // Constraint: ec_op/p_y_addr. - tempvar value = (column4_row7178 - (column4_row11274 + 1)) / domain29; + tempvar value = (column4_row7178 - (column4_row11274 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[136] * value; // Constraint: ec_op/q_x_addr. - tempvar value = (column4_row15370 - (column4_row7178 + 1)) / domain29; + tempvar value = (column4_row15370 - (column4_row7178 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[137] * value; // Constraint: ec_op/q_y_addr. - tempvar value = (column4_row522 - (column4_row15370 + 1)) / domain29; + tempvar value = (column4_row522 - (column4_row15370 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[138] * value; // Constraint: ec_op/m_addr. - tempvar value = (column4_row8714 - (column4_row522 + 1)) / domain29; + tempvar value = (column4_row8714 - (column4_row522 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[139] * value; // Constraint: ec_op/r_x_addr. - tempvar value = (column4_row4618 - (column4_row8714 + 1)) / domain29; + tempvar value = (column4_row4618 - (column4_row8714 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[140] * value; // Constraint: ec_op/r_y_addr. - tempvar value = (column4_row12810 - (column4_row4618 + 1)) / domain29; + tempvar value = (column4_row12810 - (column4_row4618 + 1)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[141] * value; // Constraint: ec_op/doubling_q/slope. @@ -8892,284 +8912,284 @@ func eval_composition_polynomial{range_check_ptr}( ec_op__doubling_q__x_squared_0 + ec_op__doubling_q__x_squared_0 + global_values.ec_op__curve_config.alpha - - (column7_row30 + column7_row30) * column7_row62 - ) * domain27 / domain6; + (column8_row28 + column8_row28) * column8_row60 + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[142] * value; // Constraint: ec_op/doubling_q/x. tempvar value = ( - column7_row62 * column7_row62 - (column7_row46 + column7_row46 + column7_row110) - ) * domain27 / domain6; + column8_row60 * column8_row60 - (column8_row44 + column8_row44 + column8_row108) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[143] * value; // Constraint: ec_op/doubling_q/y. tempvar value = ( - column7_row30 + column7_row94 - column7_row62 * (column7_row46 - column7_row110) - ) * domain27 / domain6; + column8_row28 + column8_row92 - column8_row60 * (column8_row44 - column8_row108) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[144] * value; // Constraint: ec_op/get_q_x. - tempvar value = (column4_row15371 - column7_row46) / domain29; + tempvar value = (column4_row15371 - column8_row44) / domain28; tempvar total_sum = total_sum + constraint_coefficients[145] * value; // Constraint: ec_op/get_q_y. - tempvar value = (column4_row523 - column7_row30) / domain29; + tempvar value = (column4_row523 - column8_row28) / domain28; tempvar total_sum = total_sum + constraint_coefficients[146] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/last_one_is_zero. - tempvar value = (column7_row16377 * (column7_row17 - (column7_row81 + column7_row81))) / - domain29; + tempvar value = (column8_row16378 * (column8_row18 - (column8_row82 + column8_row82))) / + domain28; tempvar total_sum = total_sum + constraint_coefficients[147] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/zeroes_between_ones0. tempvar value = ( - column7_row16377 * ( - column7_row81 - - 3138550867693340381917894711603833208051177722232017256448 * column7_row12305 + column8_row16378 * ( + column8_row82 - + 3138550867693340381917894711603833208051177722232017256448 * column8_row12306 ) - ) / domain29; + ) / domain28; tempvar total_sum = total_sum + constraint_coefficients[148] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/cumulative_bit192. tempvar value = ( - column7_row16377 - - column7_row16345 * (column7_row12305 - (column7_row12369 + column7_row12369)) - ) / domain29; + column8_row16378 - + column8_row16346 * (column8_row12306 - (column8_row12370 + column8_row12370)) + ) / domain28; tempvar total_sum = total_sum + constraint_coefficients[149] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/zeroes_between_ones192. - tempvar value = (column7_row16345 * (column7_row12369 - 8 * column7_row12561)) / domain29; + tempvar value = (column8_row16346 * (column8_row12370 - 8 * column8_row12562)) / domain28; tempvar total_sum = total_sum + constraint_coefficients[150] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/cumulative_bit196. tempvar value = ( - column7_row16345 - - (column7_row16081 - (column7_row16145 + column7_row16145)) * ( - column7_row12561 - (column7_row12625 + column7_row12625) + column8_row16346 - + (column8_row16082 - (column8_row16146 + column8_row16146)) * ( + column8_row12562 - (column8_row12626 + column8_row12626) ) - ) / domain29; + ) / domain28; tempvar total_sum = total_sum + constraint_coefficients[151] * value; // Constraint: ec_op/ec_subset_sum/bit_unpacking/zeroes_between_ones196. tempvar value = ( - (column7_row16081 - (column7_row16145 + column7_row16145)) * ( - column7_row12625 - 18014398509481984 * column7_row16081 + (column8_row16082 - (column8_row16146 + column8_row16146)) * ( + column8_row12626 - 18014398509481984 * column8_row16082 ) - ) / domain29; + ) / domain28; tempvar total_sum = total_sum + constraint_coefficients[152] * value; // Constraint: ec_op/ec_subset_sum/booleanity_test. - tempvar value = (ec_op__ec_subset_sum__bit_0 * (ec_op__ec_subset_sum__bit_0 - 1)) * domain27 / - domain6; + tempvar value = (ec_op__ec_subset_sum__bit_0 * (ec_op__ec_subset_sum__bit_0 - 1)) * domain26 / + domain5; tempvar total_sum = total_sum + constraint_coefficients[153] * value; // Constraint: ec_op/ec_subset_sum/bit_extraction_end. - tempvar value = (column7_row17) / domain30; + tempvar value = (column8_row18) / domain29; tempvar total_sum = total_sum + constraint_coefficients[154] * value; // Constraint: ec_op/ec_subset_sum/zeros_tail. - tempvar value = (column7_row17) / domain27; + tempvar value = (column8_row18) / domain26; tempvar total_sum = total_sum + constraint_coefficients[155] * value; // Constraint: ec_op/ec_subset_sum/add_points/slope. tempvar value = ( - ec_op__ec_subset_sum__bit_0 * (column7_row33 - column7_row30) - - column7_row5 * (column7_row1 - column7_row46) - ) * domain27 / domain6; + ec_op__ec_subset_sum__bit_0 * (column8_row34 - column8_row28) - + column8_row6 * (column8_row2 - column8_row44) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[156] * value; // Constraint: ec_op/ec_subset_sum/add_points/x. tempvar value = ( - column7_row5 * column7_row5 - - ec_op__ec_subset_sum__bit_0 * (column7_row1 + column7_row46 + column7_row65) - ) * domain27 / domain6; + column8_row6 * column8_row6 - + ec_op__ec_subset_sum__bit_0 * (column8_row2 + column8_row44 + column8_row66) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[157] * value; // Constraint: ec_op/ec_subset_sum/add_points/y. tempvar value = ( - ec_op__ec_subset_sum__bit_0 * (column7_row33 + column7_row97) - - column7_row5 * (column7_row1 - column7_row65) - ) * domain27 / domain6; + ec_op__ec_subset_sum__bit_0 * (column8_row34 + column8_row98) - + column8_row6 * (column8_row2 - column8_row66) + ) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[158] * value; // Constraint: ec_op/ec_subset_sum/add_points/x_diff_inv. - tempvar value = (column7_row37 * (column7_row1 - column7_row46) - 1) * domain27 / domain6; + tempvar value = (column8_row38 * (column8_row2 - column8_row44) - 1) * domain26 / domain5; tempvar total_sum = total_sum + constraint_coefficients[159] * value; // Constraint: ec_op/ec_subset_sum/copy_point/x. - tempvar value = (ec_op__ec_subset_sum__bit_neg_0 * (column7_row65 - column7_row1)) * domain27 / - domain6; + tempvar value = (ec_op__ec_subset_sum__bit_neg_0 * (column8_row66 - column8_row2)) * domain26 / + domain5; tempvar total_sum = total_sum + constraint_coefficients[160] * value; // Constraint: ec_op/ec_subset_sum/copy_point/y. - tempvar value = (ec_op__ec_subset_sum__bit_neg_0 * (column7_row97 - column7_row33)) * domain27 / - domain6; + tempvar value = (ec_op__ec_subset_sum__bit_neg_0 * (column8_row98 - column8_row34)) * domain26 / + domain5; tempvar total_sum = total_sum + constraint_coefficients[161] * value; // Constraint: ec_op/get_m. - tempvar value = (column7_row17 - column4_row8715) / domain29; + tempvar value = (column8_row18 - column4_row8715) / domain28; tempvar total_sum = total_sum + constraint_coefficients[162] * value; // Constraint: ec_op/get_p_x. - tempvar value = (column4_row11275 - column7_row1) / domain29; + tempvar value = (column4_row11275 - column8_row2) / domain28; tempvar total_sum = total_sum + constraint_coefficients[163] * value; // Constraint: ec_op/get_p_y. - tempvar value = (column4_row7179 - column7_row33) / domain29; + tempvar value = (column4_row7179 - column8_row34) / domain28; tempvar total_sum = total_sum + constraint_coefficients[164] * value; // Constraint: ec_op/set_r_x. - tempvar value = (column4_row4619 - column7_row16321) / domain29; + tempvar value = (column4_row4619 - column8_row16322) / domain28; tempvar total_sum = total_sum + constraint_coefficients[165] * value; // Constraint: ec_op/set_r_y. - tempvar value = (column4_row12811 - column7_row16353) / domain29; + tempvar value = (column4_row12811 - column8_row16354) / domain28; tempvar total_sum = total_sum + constraint_coefficients[166] * value; // Constraint: keccak/init_input_output_addr. - tempvar value = (column4_row1546 - global_values.initial_keccak_addr) / domain144; + tempvar value = (column4_row1546 - global_values.initial_keccak_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[167] * value; // Constraint: keccak/addr_input_output_step. - tempvar value = (column4_row3594 - (column4_row1546 + 1)) * domain153 / domain13; + tempvar value = (column4_row3594 - (column4_row1546 + 1)) * domain151 / domain12; tempvar total_sum = total_sum + constraint_coefficients[168] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w0. - tempvar value = (column4_row1547 - column3_row0) / domain33; + tempvar value = (column4_row1547 - column3_row0) / domain32; tempvar total_sum = total_sum + constraint_coefficients[169] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w1. - tempvar value = (column4_row3595 - column3_row1) / domain33; + tempvar value = (column4_row3595 - column3_row1) / domain32; tempvar total_sum = total_sum + constraint_coefficients[170] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w2. - tempvar value = (column4_row5643 - column3_row2) / domain33; + tempvar value = (column4_row5643 - column3_row2) / domain32; tempvar total_sum = total_sum + constraint_coefficients[171] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w3. - tempvar value = (column4_row7691 - column3_row3) / domain33; + tempvar value = (column4_row7691 - column3_row3) / domain32; tempvar total_sum = total_sum + constraint_coefficients[172] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w4. - tempvar value = (column4_row9739 - column3_row4) / domain33; + tempvar value = (column4_row9739 - column3_row4) / domain32; tempvar total_sum = total_sum + constraint_coefficients[173] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w5. - tempvar value = (column4_row11787 - column3_row5) / domain33; + tempvar value = (column4_row11787 - column3_row5) / domain32; tempvar total_sum = total_sum + constraint_coefficients[174] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w6. - tempvar value = (column4_row13835 - column3_row6) / domain33; + tempvar value = (column4_row13835 - column3_row6) / domain32; tempvar total_sum = total_sum + constraint_coefficients[175] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate0_w7. - tempvar value = (column4_row15883 - column3_row7) / domain33; + tempvar value = (column4_row15883 - column3_row7) / domain32; tempvar total_sum = total_sum + constraint_coefficients[176] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w0. - tempvar value = (column4_row17931 - column3_row8) / domain33; + tempvar value = (column4_row17931 - column3_row8) / domain32; tempvar total_sum = total_sum + constraint_coefficients[177] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w1. - tempvar value = (column4_row19979 - column3_row9) / domain33; + tempvar value = (column4_row19979 - column3_row9) / domain32; tempvar total_sum = total_sum + constraint_coefficients[178] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w2. - tempvar value = (column4_row22027 - column3_row10) / domain33; + tempvar value = (column4_row22027 - column3_row10) / domain32; tempvar total_sum = total_sum + constraint_coefficients[179] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w3. - tempvar value = (column4_row24075 - column3_row11) / domain33; + tempvar value = (column4_row24075 - column3_row11) / domain32; tempvar total_sum = total_sum + constraint_coefficients[180] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w4. - tempvar value = (column4_row26123 - column3_row12) / domain33; + tempvar value = (column4_row26123 - column3_row12) / domain32; tempvar total_sum = total_sum + constraint_coefficients[181] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w5. - tempvar value = (column4_row28171 - column3_row13) / domain33; + tempvar value = (column4_row28171 - column3_row13) / domain32; tempvar total_sum = total_sum + constraint_coefficients[182] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w6. - tempvar value = (column4_row30219 - column3_row14) / domain33; + tempvar value = (column4_row30219 - column3_row14) / domain32; tempvar total_sum = total_sum + constraint_coefficients[183] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_intermediate1_w7. - tempvar value = (column4_row32267 - column3_row15) / domain33; + tempvar value = (column4_row32267 - column3_row15) / domain32; tempvar total_sum = total_sum + constraint_coefficients[184] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final0. - tempvar value = (column3_row0 - column3_row16144) / domain36; + tempvar value = (column3_row0 - column3_row16144) / domain35; tempvar total_sum = total_sum + constraint_coefficients[185] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final1. - tempvar value = (column3_row32768 - column3_row16160) / domain36; + tempvar value = (column3_row32768 - column3_row16160) / domain35; tempvar total_sum = total_sum + constraint_coefficients[186] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final2. - tempvar value = (column3_row65536 - column3_row16176) / domain36; + tempvar value = (column3_row65536 - column3_row16176) / domain35; tempvar total_sum = total_sum + constraint_coefficients[187] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final3. - tempvar value = (column3_row98304 - column3_row16192) / domain36; + tempvar value = (column3_row98304 - column3_row16192) / domain35; tempvar total_sum = total_sum + constraint_coefficients[188] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final4. - tempvar value = (column3_row131072 - column3_row16208) / domain36; + tempvar value = (column3_row131072 - column3_row16208) / domain35; tempvar total_sum = total_sum + constraint_coefficients[189] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final5. - tempvar value = (column3_row163840 - column3_row16224) / domain36; + tempvar value = (column3_row163840 - column3_row16224) / domain35; tempvar total_sum = total_sum + constraint_coefficients[190] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final6. - tempvar value = (column3_row196608 - column3_row16240) / domain36; + tempvar value = (column3_row196608 - column3_row16240) / domain35; tempvar total_sum = total_sum + constraint_coefficients[191] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final7. - tempvar value = (column3_row229376 - column3_row16256) / domain36; + tempvar value = (column3_row229376 - column3_row16256) / domain35; tempvar total_sum = total_sum + constraint_coefficients[192] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final8. - tempvar value = (column3_row262144 - column3_row16272) / domain36; + tempvar value = (column3_row262144 - column3_row16272) / domain35; tempvar total_sum = total_sum + constraint_coefficients[193] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final9. - tempvar value = (column3_row294912 - column3_row16288) / domain36; + tempvar value = (column3_row294912 - column3_row16288) / domain35; tempvar total_sum = total_sum + constraint_coefficients[194] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final10. - tempvar value = (column3_row327680 - column3_row16304) / domain36; + tempvar value = (column3_row327680 - column3_row16304) / domain35; tempvar total_sum = total_sum + constraint_coefficients[195] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final11. - tempvar value = (column3_row360448 - column3_row16320) / domain36; + tempvar value = (column3_row360448 - column3_row16320) / domain35; tempvar total_sum = total_sum + constraint_coefficients[196] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final12. - tempvar value = (column3_row393216 - column3_row16336) / domain36; + tempvar value = (column3_row393216 - column3_row16336) / domain35; tempvar total_sum = total_sum + constraint_coefficients[197] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final13. - tempvar value = (column3_row425984 - column3_row16352) / domain36; + tempvar value = (column3_row425984 - column3_row16352) / domain35; tempvar total_sum = total_sum + constraint_coefficients[198] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final14. - tempvar value = (column3_row458752 - column3_row16368) / domain36; + tempvar value = (column3_row458752 - column3_row16368) / domain35; tempvar total_sum = total_sum + constraint_coefficients[199] * value; // Constraint: keccak/keccak/parse_to_diluted/reshape_final15. - tempvar value = (column3_row491520 - column3_row16384) / domain36; + tempvar value = (column3_row491520 - column3_row16384) / domain35; tempvar total_sum = total_sum + constraint_coefficients[200] * value; // Constraint: keccak/keccak/parse_to_diluted/start_accumulation. - tempvar value = (column3_row6416) / domain40; + tempvar value = (column7_row6401) / domain39; tempvar total_sum = total_sum + constraint_coefficients[201] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation0. tempvar value = ( column3_row16144 - keccak__keccak__parse_to_diluted__sum_words_over_instances0_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[202] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations0. @@ -9177,13 +9197,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16160 + keccak__keccak__parse_to_diluted__sum_words_over_instances0_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances0_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[203] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation1. tempvar value = ( column3_row16145 - keccak__keccak__parse_to_diluted__sum_words_over_instances1_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[204] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations1. @@ -9191,13 +9211,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16161 + keccak__keccak__parse_to_diluted__sum_words_over_instances1_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances1_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[205] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation2. tempvar value = ( column3_row16146 - keccak__keccak__parse_to_diluted__sum_words_over_instances2_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[206] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations2. @@ -9205,13 +9225,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16162 + keccak__keccak__parse_to_diluted__sum_words_over_instances2_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances2_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[207] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation3. tempvar value = ( column3_row16147 - keccak__keccak__parse_to_diluted__sum_words_over_instances3_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[208] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations3. @@ -9219,13 +9239,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16163 + keccak__keccak__parse_to_diluted__sum_words_over_instances3_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances3_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[209] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation4. tempvar value = ( column3_row16148 - keccak__keccak__parse_to_diluted__sum_words_over_instances4_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[210] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations4. @@ -9233,13 +9253,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16164 + keccak__keccak__parse_to_diluted__sum_words_over_instances4_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances4_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[211] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation5. tempvar value = ( column3_row16149 - keccak__keccak__parse_to_diluted__sum_words_over_instances5_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[212] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations5. @@ -9247,13 +9267,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16165 + keccak__keccak__parse_to_diluted__sum_words_over_instances5_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances5_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[213] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation6. tempvar value = ( column3_row16150 - keccak__keccak__parse_to_diluted__sum_words_over_instances6_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[214] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations6. @@ -9261,13 +9281,13 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16166 + keccak__keccak__parse_to_diluted__sum_words_over_instances6_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances6_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[215] * value; // Constraint: keccak/keccak/parse_to_diluted/init_first_invocation7. tempvar value = ( column3_row16151 - keccak__keccak__parse_to_diluted__sum_words_over_instances7_0 - ) / domain35; + ) / domain34; tempvar total_sum = total_sum + constraint_coefficients[216] * value; // Constraint: keccak/keccak/parse_to_diluted/init_other_invocations7. @@ -9275,7 +9295,7 @@ func eval_composition_polynomial{range_check_ptr}( column3_row16167 + keccak__keccak__parse_to_diluted__sum_words_over_instances7_0 * 16 - keccak__keccak__parse_to_diluted__sum_words_over_instances7_2 - ) / domain39; + ) / domain38; tempvar total_sum = total_sum + constraint_coefficients[217] * value; // Constraint: keccak/keccak/parse_to_diluted/extract_bit_first_invocation1. @@ -9283,7 +9303,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__parse_to_diluted__partial_diluted1_0 * keccak__keccak__parse_to_diluted__partial_diluted1_0 - keccak__keccak__parse_to_diluted__partial_diluted1_0 - ) / domain43; + ) / domain42; tempvar total_sum = total_sum + constraint_coefficients[218] * value; // Constraint: keccak/keccak/parse_to_diluted/extract_bit_other_invocations1. @@ -9291,17 +9311,17 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__parse_to_diluted__bit_other1_0 * keccak__keccak__parse_to_diluted__bit_other1_0 - keccak__keccak__parse_to_diluted__bit_other1_0 - ) / domain44; + ) / domain43; tempvar total_sum = total_sum + constraint_coefficients[219] * value; // Constraint: keccak/keccak/parse_to_diluted/to_diluted0_p1. tempvar value = (keccak__keccak__parse_to_diluted__partial_diluted1_30 - column1_row516102) / - domain45; + domain44; tempvar total_sum = total_sum + constraint_coefficients[220] * value; // Constraint: keccak/keccak/parse_to_diluted/to_diluted1_p1. tempvar value = (keccak__keccak__parse_to_diluted__partial_diluted1_31 - column1_row516294) / - domain45; + domain44; tempvar total_sum = total_sum + constraint_coefficients[221] * value; // Constraint: keccak/keccak/parse_to_diluted/extract_bit_first_invocation0. @@ -9309,7 +9329,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__parse_to_diluted__partial_diluted0_0 * keccak__keccak__parse_to_diluted__partial_diluted0_0 - keccak__keccak__parse_to_diluted__partial_diluted0_0 - ) * domain49 / domain10; + ) * domain48 / domain9; tempvar total_sum = total_sum + constraint_coefficients[222] * value; // Constraint: keccak/keccak/parse_to_diluted/extract_bit_other_invocations0. @@ -9317,17 +9337,17 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__parse_to_diluted__bit_other0_0 * keccak__keccak__parse_to_diluted__bit_other0_0 - keccak__keccak__parse_to_diluted__bit_other0_0 - ) * domain52 / domain3; + ) * domain51 / domain2; tempvar total_sum = total_sum + constraint_coefficients[223] * value; // Constraint: keccak/keccak/parse_to_diluted/to_diluted0_p0. tempvar value = (keccak__keccak__parse_to_diluted__partial_diluted0_30 - column1_row6) * - domain53 / domain9; + domain52 / domain8; tempvar total_sum = total_sum + constraint_coefficients[224] * value; // Constraint: keccak/keccak/parse_to_diluted/to_diluted1_p0. tempvar value = (keccak__keccak__parse_to_diluted__partial_diluted0_31 - column1_row198) * - domain53 / domain9; + domain52 / domain8; tempvar total_sum = total_sum + constraint_coefficients[225] * value; // Constraint: keccak/keccak/parity0. @@ -9338,7 +9358,7 @@ func eval_composition_polynomial{range_check_ptr}( column1_row3846 + column1_row5126 - (column1_row6406 + column1_row6597 + column1_row6597 + column1_row6977 * 4) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[226] * value; // Constraint: keccak/keccak/parity1. @@ -9349,7 +9369,7 @@ func eval_composition_polynomial{range_check_ptr}( column1_row4102 + column1_row5382 - (column1_row6401 + column1_row6790 + column1_row6790 + column1_row6981 * 4) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[227] * value; // Constraint: keccak/keccak/parity2. @@ -9360,7 +9380,7 @@ func eval_composition_polynomial{range_check_ptr}( column1_row4358 + column1_row5638 - (column1_row6405 + column1_row6785 + column1_row6785 + column1_row7174 * 4) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[228] * value; // Constraint: keccak/keccak/parity3. @@ -9371,7 +9391,7 @@ func eval_composition_polynomial{range_check_ptr}( column1_row4614 + column1_row5894 - (column1_row6598 + column1_row6789 + column1_row6789 + column1_row7169 * 4) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[229] * value; // Constraint: keccak/keccak/parity4. @@ -9382,47 +9402,47 @@ func eval_composition_polynomial{range_check_ptr}( column1_row4870 + column1_row6150 - (column1_row6593 + column1_row6982 + column1_row6982 + column1_row7173 * 4) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[230] * value; // Constraint: keccak/keccak/rotate_parity0/n0. - tempvar value = (column3_row3924 - column1_row522502) / domain38; + tempvar value = (column7_row5 - column1_row522502) / domain37; tempvar total_sum = total_sum + constraint_coefficients[231] * value; // Constraint: keccak/keccak/rotate_parity0/n1. - tempvar value = (column3_row12116 - column1_row6406) * domain55 / domain24; + tempvar value = (column7_row8197 - column1_row6406) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[232] * value; // Constraint: keccak/keccak/rotate_parity1/n0. - tempvar value = (column3_row7760 - column1_row522497) / domain38; + tempvar value = (column7_row8001 - column1_row522497) / domain37; tempvar total_sum = total_sum + constraint_coefficients[233] * value; // Constraint: keccak/keccak/rotate_parity1/n1. - tempvar value = (column3_row15952 - column1_row6401) * domain55 / domain24; + tempvar value = (column7_row16193 - column1_row6401) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[234] * value; // Constraint: keccak/keccak/rotate_parity2/n0. - tempvar value = (column3_row1876 - column1_row522501) / domain38; + tempvar value = (column7_row4101 - column1_row522501) / domain37; tempvar total_sum = total_sum + constraint_coefficients[235] * value; // Constraint: keccak/keccak/rotate_parity2/n1. - tempvar value = (column3_row10068 - column1_row6405) * domain55 / domain24; + tempvar value = (column7_row12293 - column1_row6405) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[236] * value; // Constraint: keccak/keccak/rotate_parity3/n0. - tempvar value = (column3_row7568 - column1_row522694) / domain38; + tempvar value = (column7_row7809 - column1_row522694) / domain37; tempvar total_sum = total_sum + constraint_coefficients[237] * value; // Constraint: keccak/keccak/rotate_parity3/n1. - tempvar value = (column3_row15760 - column1_row6598) * domain55 / domain24; + tempvar value = (column7_row16001 - column1_row6598) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[238] * value; // Constraint: keccak/keccak/rotate_parity4/n0. - tempvar value = (column3_row5972 - column1_row522689) / domain38; + tempvar value = (column7_row2053 - column1_row522689) / domain37; tempvar total_sum = total_sum + constraint_coefficients[239] * value; // Constraint: keccak/keccak/rotate_parity4/n1. - tempvar value = (column3_row14164 - column1_row6593) * domain55 / domain24; + tempvar value = (column7_row10245 - column1_row6593) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[240] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j0. @@ -9430,7 +9450,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_0 + column1_row6 - (column1_row3 + column1_row7366 + column1_row7366) - ) / domain24; + ) / domain23; tempvar total_sum = total_sum + constraint_coefficients[241] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j1/n0. @@ -9438,7 +9458,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_0 + column1_row262 - (column1_row10755 + column1_row15941 + column1_row15941) - ) * domain55 / domain24; + ) * domain54 / domain23; tempvar total_sum = total_sum + constraint_coefficients[242] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j1/n1. @@ -9446,7 +9466,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_64512 + column1_row516358 - (column1_row2563 + column1_row7749 + column1_row7749) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[243] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j2/n0. @@ -9454,7 +9474,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_0 + column1_row518 - (column1_row513027 + column1_row515843 + column1_row515843) - ) / domain57; + ) / domain56; tempvar total_sum = total_sum + constraint_coefficients[244] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j2/n1. @@ -9462,7 +9482,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_2048 + column1_row16902 - (column1_row5123 + column1_row7939 + column1_row7939) - ) * domain59 / domain24; + ) * domain58 / domain23; tempvar total_sum = total_sum + constraint_coefficients[245] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j3/n0. @@ -9470,7 +9490,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_0 + column1_row774 - (column1_row230659 + column1_row236929 + column1_row236929) - ) * domain85 / domain24; + ) * domain84 / domain23; tempvar total_sum = total_sum + constraint_coefficients[246] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j3/n1. @@ -9478,7 +9498,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_36864 + column1_row295686 - (column1_row1283 + column1_row7553 + column1_row7553) - ) / domain117; + ) / domain116; tempvar total_sum = total_sum + constraint_coefficients[247] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j4/n0. @@ -9486,7 +9506,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_0 + column1_row1030 - (column1_row225027 + column1_row228163 + column1_row228163) - ) * domain84 / domain24; + ) * domain83 / domain23; tempvar total_sum = total_sum + constraint_coefficients[248] * value; // Constraint: keccak/keccak/theta_rho_pi_i0_j4/n1. @@ -9494,7 +9514,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_37888 + column1_row304134 - (column1_row3843 + column1_row6979 + column1_row6979) - ) / domain116; + ) / domain115; tempvar total_sum = total_sum + constraint_coefficients[249] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j0/n0. @@ -9502,7 +9522,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_0 + column1_row1286 - (column1_row299011 + column1_row302083 + column1_row302083) - ) / domain117; + ) / domain116; tempvar total_sum = total_sum + constraint_coefficients[250] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j0/n1. @@ -9510,7 +9530,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_28672 + column1_row230662 - (column1_row4099 + column1_row7171 + column1_row7171) - ) * domain85 / domain24; + ) * domain84 / domain23; tempvar total_sum = total_sum + constraint_coefficients[251] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j1/n0. @@ -9518,7 +9538,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_0 + column1_row1542 - (column1_row360707 + column1_row367809 + column1_row367809) - ) / domain110; + ) / domain109; tempvar total_sum = total_sum + constraint_coefficients[252] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j1/n1. @@ -9526,7 +9546,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_20480 + column1_row165382 - (column1_row259 + column1_row7361 + column1_row7361) - ) * domain78 / domain24; + ) * domain77 / domain23; tempvar total_sum = total_sum + constraint_coefficients[253] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j2/n0. @@ -9534,7 +9554,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_0 + column1_row1798 - (column1_row51971 + column1_row55939 + column1_row55939) - ) * domain63 / domain24; + ) * domain62 / domain23; tempvar total_sum = total_sum + constraint_coefficients[254] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j2/n1. @@ -9542,7 +9562,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_59392 + column1_row476934 - (column1_row2819 + column1_row6787 + column1_row6787) - ) / domain91; + ) / domain90; tempvar total_sum = total_sum + constraint_coefficients[255] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n0. @@ -9550,7 +9570,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_0 + column1_row2054 - (column1_row455939 + column1_row450755 + column1_row450755) - ) / domain120; + ) / domain119; tempvar total_sum = total_sum + constraint_coefficients[256] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n1. @@ -9558,7 +9578,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_8 + column1_row2118 - (column1_row456003 + column1_row451011 + column1_row451011) - ) / domain120; + ) / domain119; tempvar total_sum = total_sum + constraint_coefficients[257] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n2. @@ -9566,7 +9586,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_16 + column1_row2182 - (column1_row456067 + column1_row451267 + column1_row451267) - ) / domain120; + ) / domain119; tempvar total_sum = total_sum + constraint_coefficients[258] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n3. @@ -9574,7 +9594,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_9216 + column1_row75782 - (column1_row5379 + column1_row195 + column1_row195) - ) * domain123 / domain23; + ) * domain122 / domain22; tempvar total_sum = total_sum + constraint_coefficients[259] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n4. @@ -9582,7 +9602,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_9224 + column1_row75846 - (column1_row5443 + column1_row451 + column1_row451) - ) * domain123 / domain23; + ) * domain122 / domain22; tempvar total_sum = total_sum + constraint_coefficients[260] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j3/n5. @@ -9590,7 +9610,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_9232 + column1_row75910 - (column1_row5507 + column1_row707 + column1_row707) - ) * domain123 / domain23; + ) * domain122 / domain22; tempvar total_sum = total_sum + constraint_coefficients[261] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j4/n0. @@ -9598,7 +9618,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_0 + column1_row2310 - (column1_row165379 + column1_row171397 + column1_row171397) - ) * domain78 / domain24; + ) * domain77 / domain23; tempvar total_sum = total_sum + constraint_coefficients[262] * value; // Constraint: keccak/keccak/theta_rho_pi_i1_j4/n1. @@ -9606,7 +9626,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_45056 + column1_row362758 - (column1_row1539 + column1_row7557 + column1_row7557) - ) / domain110; + ) / domain109; tempvar total_sum = total_sum + constraint_coefficients[263] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j0/n0. @@ -9614,7 +9634,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_0 + column1_row2566 - (column1_row26371 + column1_row31171 + column1_row31171) - ) * domain124 / domain24; + ) * domain123 / domain23; tempvar total_sum = total_sum + constraint_coefficients[264] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j0/n1. @@ -9622,7 +9642,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_62464 + column1_row502278 - (column1_row1795 + column1_row6595 + column1_row6595) - ) / domain125; + ) / domain124; tempvar total_sum = total_sum + constraint_coefficients[265] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j1/n0. @@ -9630,7 +9650,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_0 + column1_row2822 - (column1_row86275 + column1_row89283 + column1_row89283) - ) * domain68 / domain24; + ) * domain67 / domain23; tempvar total_sum = total_sum + constraint_coefficients[266] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j1/n1. @@ -9638,7 +9658,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_55296 + column1_row445190 - (column1_row4355 + column1_row7363 + column1_row7363) - ) / domain98; + ) / domain97; tempvar total_sum = total_sum + constraint_coefficients[267] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j2/n0. @@ -9646,7 +9666,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_0 + column1_row3078 - (column1_row352771 + column1_row359621 + column1_row359621) - ) / domain112; + ) / domain111; tempvar total_sum = total_sum + constraint_coefficients[268] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j2/n1. @@ -9654,7 +9674,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_21504 + column1_row175110 - (column1_row515 + column1_row7365 + column1_row7365) - ) * domain80 / domain24; + ) * domain79 / domain23; tempvar total_sum = total_sum + constraint_coefficients[269] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j3/n0. @@ -9662,7 +9682,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_0 + column1_row3334 - (column1_row207875 + column1_row212742 + column1_row212742) - ) * domain83 / domain24; + ) * domain82 / domain23; tempvar total_sum = total_sum + constraint_coefficients[270] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j3/n1. @@ -9670,7 +9690,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_39936 + column1_row322822 - (column1_row3075 + column1_row7942 + column1_row7942) - ) / domain115; + ) / domain114; tempvar total_sum = total_sum + constraint_coefficients[271] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n0. @@ -9678,7 +9698,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_0 + column1_row3590 - (column1_row325123 + column1_row320451 + column1_row320451) - ) / domain127; + ) / domain126; tempvar total_sum = total_sum + constraint_coefficients[272] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n1. @@ -9686,7 +9706,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_8 + column1_row3654 - (column1_row325187 + column1_row320707 + column1_row320707) - ) / domain127; + ) / domain126; tempvar total_sum = total_sum + constraint_coefficients[273] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n2. @@ -9694,7 +9714,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_16 + column1_row3718 - (column1_row325251 + column1_row320963 + column1_row320963) - ) / domain127; + ) / domain126; tempvar total_sum = total_sum + constraint_coefficients[274] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n3. @@ -9702,7 +9722,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_25600 + column1_row208390 - (column1_row5635 + column1_row963 + column1_row963) - ) * domain129 / domain23; + ) * domain128 / domain22; tempvar total_sum = total_sum + constraint_coefficients[275] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n4. @@ -9710,7 +9730,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_25608 + column1_row208454 - (column1_row5699 + column1_row1219 + column1_row1219) - ) * domain129 / domain23; + ) * domain128 / domain22; tempvar total_sum = total_sum + constraint_coefficients[276] * value; // Constraint: keccak/keccak/theta_rho_pi_i2_j4/n5. @@ -9718,7 +9738,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_25616 + column1_row208518 - (column1_row5763 + column1_row1475 + column1_row1475) - ) * domain129 / domain23; + ) * domain128 / domain22; tempvar total_sum = total_sum + constraint_coefficients[277] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n0. @@ -9726,7 +9746,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_0 + column1_row3846 - (column1_row341763 + column1_row337603 + column1_row337603) - ) / domain130; + ) / domain129; tempvar total_sum = total_sum + constraint_coefficients[278] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n1. @@ -9734,7 +9754,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_8 + column1_row3910 - (column1_row341827 + column1_row337859 + column1_row337859) - ) / domain130; + ) / domain129; tempvar total_sum = total_sum + constraint_coefficients[279] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n2. @@ -9742,7 +9762,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_16 + column1_row3974 - (column1_row341891 + column1_row338115 + column1_row338115) - ) / domain130; + ) / domain129; tempvar total_sum = total_sum + constraint_coefficients[280] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n3. @@ -9750,7 +9770,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_23552 + column1_row192262 - (column1_row5891 + column1_row1731 + column1_row1731) - ) * domain131 / domain23; + ) * domain130 / domain22; tempvar total_sum = total_sum + constraint_coefficients[281] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n4. @@ -9758,7 +9778,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_23560 + column1_row192326 - (column1_row5955 + column1_row1987 + column1_row1987) - ) * domain131 / domain23; + ) * domain130 / domain22; tempvar total_sum = total_sum + constraint_coefficients[282] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j0/n5. @@ -9766,7 +9786,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_23568 + column1_row192390 - (column1_row6019 + column1_row2243 + column1_row2243) - ) * domain131 / domain23; + ) * domain130 / domain22; tempvar total_sum = total_sum + constraint_coefficients[283] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j1/n0. @@ -9774,7 +9794,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_0 + column1_row4102 - (column1_row370691 + column1_row376390 + column1_row376390) - ) / domain132; + ) / domain131; tempvar total_sum = total_sum + constraint_coefficients[284] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j1/n1. @@ -9782,7 +9802,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_19456 + column1_row159750 - (column1_row2051 + column1_row7750 + column1_row7750) - ) * domain133 / domain24; + ) * domain132 / domain23; tempvar total_sum = total_sum + constraint_coefficients[285] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j2/n0. @@ -9790,7 +9810,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_0 + column1_row4358 - (column1_row127491 + column1_row130435 + column1_row130435) - ) * domain134 / domain24; + ) * domain133 / domain23; tempvar total_sum = total_sum + constraint_coefficients[286] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j2/n1. @@ -9798,7 +9818,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_50176 + column1_row405766 - (column1_row4611 + column1_row7555 + column1_row7555) - ) / domain135; + ) / domain134; tempvar total_sum = total_sum + constraint_coefficients[287] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j3/n0. @@ -9806,7 +9826,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_0 + column1_row4614 - (column1_row172803 + column1_row178435 + column1_row178435) - ) * domain80 / domain24; + ) * domain79 / domain23; tempvar total_sum = total_sum + constraint_coefficients[288] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j3/n1. @@ -9814,7 +9834,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_44032 + column1_row356870 - (column1_row771 + column1_row6403 + column1_row6403) - ) / domain112; + ) / domain111; tempvar total_sum = total_sum + constraint_coefficients[289] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j4/n0. @@ -9822,7 +9842,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_0 + column1_row4870 - (column1_row68867 + column1_row73473 + column1_row73473) - ) * domain136 / domain24; + ) * domain135 / domain23; tempvar total_sum = total_sum + constraint_coefficients[290] * value; // Constraint: keccak/keccak/theta_rho_pi_i3_j4/n1. @@ -9830,7 +9850,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_57344 + column1_row463622 - (column1_row3331 + column1_row7937 + column1_row7937) - ) / domain137; + ) / domain136; tempvar total_sum = total_sum + constraint_coefficients[291] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j0/n0. @@ -9838,7 +9858,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_0 + column1_row5126 - (column1_row151043 + column1_row155397 + column1_row155397) - ) * domain138 / domain24; + ) * domain137 / domain23; tempvar total_sum = total_sum + constraint_coefficients[292] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j0/n1. @@ -9846,7 +9866,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities0_47104 + column1_row381958 - (column1_row3587 + column1_row7941 + column1_row7941) - ) / domain139; + ) / domain138; tempvar total_sum = total_sum + constraint_coefficients[293] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n0. @@ -9854,7 +9874,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_0 + column1_row5382 - (column1_row22531 + column1_row18883 + column1_row18883) - ) * domain121 / domain23; + ) * domain120 / domain22; tempvar total_sum = total_sum + constraint_coefficients[294] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n1. @@ -9862,7 +9882,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_8 + column1_row5446 - (column1_row22595 + column1_row19139 + column1_row19139) - ) * domain121 / domain23; + ) * domain120 / domain22; tempvar total_sum = total_sum + constraint_coefficients[295] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n2. @@ -9870,7 +9890,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_16 + column1_row5510 - (column1_row22659 + column1_row19395 + column1_row19395) - ) * domain121 / domain23; + ) * domain120 / domain22; tempvar total_sum = total_sum + constraint_coefficients[296] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n3. @@ -9878,7 +9898,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_63488 + column1_row513286 - (column1_row6147 + column1_row2499 + column1_row2499) - ) / domain118; + ) / domain117; tempvar total_sum = total_sum + constraint_coefficients[297] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n4. @@ -9886,7 +9906,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_63496 + column1_row513350 - (column1_row6211 + column1_row2755 + column1_row2755) - ) / domain118; + ) / domain117; tempvar total_sum = total_sum + constraint_coefficients[298] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j1/n5. @@ -9894,7 +9914,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities1_63504 + column1_row513414 - (column1_row6275 + column1_row3011 + column1_row3011) - ) / domain118; + ) / domain117; tempvar total_sum = total_sum + constraint_coefficients[299] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j2/n0. @@ -9902,7 +9922,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_0 + column1_row5638 - (column1_row502019 + column1_row507457 + column1_row507457) - ) / domain125; + ) / domain124; tempvar total_sum = total_sum + constraint_coefficients[300] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j2/n1. @@ -9910,7 +9930,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities2_3072 + column1_row30214 - (column1_row2307 + column1_row7745 + column1_row7745) - ) * domain124 / domain24; + ) * domain123 / domain23; tempvar total_sum = total_sum + constraint_coefficients[301] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j3/n0. @@ -9918,7 +9938,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_0 + column1_row5894 - (column1_row463619 + column1_row466499 + column1_row466499) - ) / domain137; + ) / domain136; tempvar total_sum = total_sum + constraint_coefficients[302] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j3/n1. @@ -9926,7 +9946,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities3_8192 + column1_row71430 - (column1_row4867 + column1_row7747 + column1_row7747) - ) * domain136 / domain24; + ) * domain135 / domain23; tempvar total_sum = total_sum + constraint_coefficients[303] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j4/n0. @@ -9934,7 +9954,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_0 + column1_row6150 - (column1_row115715 + column1_row122246 + column1_row122246) - ) * domain140 / domain24; + ) * domain139 / domain23; tempvar total_sum = total_sum + constraint_coefficients[304] * value; // Constraint: keccak/keccak/theta_rho_pi_i4_j4/n1. @@ -9942,7 +9962,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__sum_parities4_51200 + column1_row415750 - (column1_row1027 + column1_row7558 + column1_row7558) - ) / domain141; + ) / domain140; tempvar total_sum = total_sum + constraint_coefficients[305] * value; // Constraint: keccak/keccak/chi_iota0. @@ -9953,7 +9973,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_32 + column1_row515 - (column1_row1 + column1_row14 + column1_row14 + column1_row5 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[306] * value; // Constraint: keccak/keccak/chi_iota1. @@ -9964,7 +9984,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_1056 + column1_row8707 - (column1_row8193 + column1_row8206 + column1_row8206 + column1_row8197 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[307] * value; // Constraint: keccak/keccak/chi_iota3. @@ -9975,7 +9995,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_3104 + column1_row25091 - (column1_row24577 + column1_row24590 + column1_row24590 + column1_row24581 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[308] * value; // Constraint: keccak/keccak/chi_iota7. @@ -9986,7 +10006,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_7200 + column1_row57859 - (column1_row57345 + column1_row57358 + column1_row57358 + column1_row57349 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[309] * value; // Constraint: keccak/keccak/chi_iota15. @@ -9997,7 +10017,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_15392 + column1_row123395 - (column1_row122881 + column1_row122894 + column1_row122894 + column1_row122885 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[310] * value; // Constraint: keccak/keccak/chi_iota31. @@ -10008,7 +10028,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_31776 + column1_row254467 - (column1_row253953 + column1_row253966 + column1_row253966 + column1_row253957 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[311] * value; // Constraint: keccak/keccak/chi_iota63. @@ -10019,7 +10039,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_64544 + column1_row516611 - (column1_row516097 + column1_row516110 + column1_row516110 + column1_row516101 * 4) - ) / domain38; + ) / domain37; tempvar total_sum = total_sum + constraint_coefficients[312] * value; // Constraint: keccak/keccak/chi0. @@ -10029,7 +10049,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_32 + column1_row515 - (column1_row1 + column1_row14 + column1_row14 + column1_row5 * 4) - ) * domain142 / domain26; + ) * domain141 / domain25; tempvar total_sum = total_sum + constraint_coefficients[313] * value; // Constraint: keccak/keccak/chi1. @@ -10039,7 +10059,7 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_0 + column1_row259 - (column1_row1025 + column1_row1038 + column1_row1038 + column1_row1029 * 4) - ) / domain25; + ) / domain24; tempvar total_sum = total_sum + constraint_coefficients[314] * value; // Constraint: keccak/keccak/chi2. @@ -10049,80 +10069,80 @@ func eval_composition_polynomial{range_check_ptr}( keccak__keccak__after_theta_rho_pi_xor_one_128 + column1_row3 - (column1_row769 + column1_row782 + column1_row782 + column1_row773 * 4) - ) / domain25; + ) / domain24; tempvar total_sum = total_sum + constraint_coefficients[315] * value; // Constraint: poseidon/param_0/init_input_output_addr. - tempvar value = (column4_row266 - global_values.initial_poseidon_addr) / domain144; + tempvar value = (column4_row266 - global_values.initial_poseidon_addr) / domain143; tempvar total_sum = total_sum + constraint_coefficients[316] * value; // Constraint: poseidon/param_0/addr_input_output_step. - tempvar value = (column4_row2314 - (column4_row266 + 3)) * domain153 / domain13; + tempvar value = (column4_row2314 - (column4_row266 + 3)) * domain151 / domain12; tempvar total_sum = total_sum + constraint_coefficients[317] * value; // Constraint: poseidon/param_1/init_input_output_addr. - tempvar value = (column4_row1290 - (global_values.initial_poseidon_addr + 1)) / domain144; + tempvar value = (column4_row1290 - (global_values.initial_poseidon_addr + 1)) / domain143; tempvar total_sum = total_sum + constraint_coefficients[318] * value; // Constraint: poseidon/param_1/addr_input_output_step. - tempvar value = (column4_row3338 - (column4_row1290 + 3)) * domain153 / domain13; + tempvar value = (column4_row3338 - (column4_row1290 + 3)) * domain151 / domain12; tempvar total_sum = total_sum + constraint_coefficients[319] * value; // Constraint: poseidon/param_2/init_input_output_addr. - tempvar value = (column4_row778 - (global_values.initial_poseidon_addr + 2)) / domain144; + tempvar value = (column4_row778 - (global_values.initial_poseidon_addr + 2)) / domain143; tempvar total_sum = total_sum + constraint_coefficients[320] * value; // Constraint: poseidon/param_2/addr_input_output_step. - tempvar value = (column4_row2826 - (column4_row778 + 3)) * domain153 / domain13; + tempvar value = (column4_row2826 - (column4_row778 + 3)) * domain151 / domain12; tempvar total_sum = total_sum + constraint_coefficients[321] * value; // Constraint: poseidon/poseidon/full_rounds_state0_squaring. - tempvar value = (column7_row109 * column7_row109 - column7_row493) / domain12; + tempvar value = (column8_row110 * column8_row110 - column8_row494) / domain11; tempvar total_sum = total_sum + constraint_coefficients[322] * value; // Constraint: poseidon/poseidon/full_rounds_state1_squaring. - tempvar value = (column7_row365 * column7_row365 - column7_row29) / domain12; + tempvar value = (column8_row366 * column8_row366 - column8_row30) / domain11; tempvar total_sum = total_sum + constraint_coefficients[323] * value; // Constraint: poseidon/poseidon/full_rounds_state2_squaring. - tempvar value = (column7_row237 * column7_row237 - column7_row285) / domain12; + tempvar value = (column8_row238 * column8_row238 - column8_row286) / domain11; tempvar total_sum = total_sum + constraint_coefficients[324] * value; // Constraint: poseidon/poseidon/partial_rounds_state0_squaring. - tempvar value = (column7_row49 * column7_row49 - column7_row9) / domain6; + tempvar value = (column8_row50 * column8_row50 - column8_row10) / domain5; tempvar total_sum = total_sum + constraint_coefficients[325] * value; // Constraint: poseidon/poseidon/partial_rounds_state1_squaring. - tempvar value = (column7_row77 * column7_row77 - column7_row45) * domain20 / domain7; + tempvar value = (column8_row78 * column8_row78 - column8_row46) * domain19 / domain6; tempvar total_sum = total_sum + constraint_coefficients[326] * value; // Constraint: poseidon/poseidon/add_first_round_key0. tempvar value = ( column4_row267 + 2950795762459345168613727575620414179244544320470208355568817838579231751791 - - column7_row109 - ) / domain18; + column8_row110 + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[327] * value; // Constraint: poseidon/poseidon/add_first_round_key1. tempvar value = ( column4_row1291 + 1587446564224215276866294500450702039420286416111469274423465069420553242820 - - column7_row365 - ) / domain18; + column8_row366 + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[328] * value; // Constraint: poseidon/poseidon/add_first_round_key2. tempvar value = ( column4_row779 + 1645965921169490687904413452218868659025437693527479459426157555728339600137 - - column7_row237 - ) / domain18; + column8_row238 + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[329] * value; // Constraint: poseidon/poseidon/full_round0. tempvar value = ( - column7_row621 - + column8_row622 - ( poseidon__poseidon__full_rounds_state0_cubed_0 + poseidon__poseidon__full_rounds_state0_cubed_0 + @@ -10131,24 +10151,24 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state2_cubed_0 + global_values.poseidon__poseidon__full_round_key0 ) - ) * domain16 / domain12; + ) * domain15 / domain11; tempvar total_sum = total_sum + constraint_coefficients[330] * value; // Constraint: poseidon/poseidon/full_round1. tempvar value = ( - column7_row877 + + column8_row878 + poseidon__poseidon__full_rounds_state1_cubed_0 - ( poseidon__poseidon__full_rounds_state0_cubed_0 + poseidon__poseidon__full_rounds_state2_cubed_0 + global_values.poseidon__poseidon__full_round_key1 ) - ) * domain16 / domain12; + ) * domain15 / domain11; tempvar total_sum = total_sum + constraint_coefficients[331] * value; // Constraint: poseidon/poseidon/full_round2. tempvar value = ( - column7_row749 + + column8_row750 + poseidon__poseidon__full_rounds_state2_cubed_0 + poseidon__poseidon__full_rounds_state2_cubed_0 - ( @@ -10156,7 +10176,7 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state1_cubed_0 + global_values.poseidon__poseidon__full_round_key2 ) - ) * domain16 / domain12; + ) * domain15 / domain11; tempvar total_sum = total_sum + constraint_coefficients[332] * value; // Constraint: poseidon/poseidon/last_full_round0. @@ -10169,7 +10189,7 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state1_cubed_7 + poseidon__poseidon__full_rounds_state2_cubed_7 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[333] * value; // Constraint: poseidon/poseidon/last_full_round1. @@ -10180,7 +10200,7 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state0_cubed_7 + poseidon__poseidon__full_rounds_state2_cubed_7 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[334] * value; // Constraint: poseidon/poseidon/last_full_round2. @@ -10192,24 +10212,24 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state0_cubed_7 + poseidon__poseidon__full_rounds_state1_cubed_7 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[335] * value; // Constraint: poseidon/poseidon/copy_partial_rounds0_i0. - tempvar value = (column7_row3953 - column7_row77) / domain18; + tempvar value = (column8_row3954 - column8_row78) / domain17; tempvar total_sum = total_sum + constraint_coefficients[336] * value; // Constraint: poseidon/poseidon/copy_partial_rounds0_i1. - tempvar value = (column7_row4017 - column7_row205) / domain18; + tempvar value = (column8_row4018 - column8_row206) / domain17; tempvar total_sum = total_sum + constraint_coefficients[337] * value; // Constraint: poseidon/poseidon/copy_partial_rounds0_i2. - tempvar value = (column7_row4081 - column7_row333) / domain18; + tempvar value = (column8_row4082 - column8_row334) / domain17; tempvar total_sum = total_sum + constraint_coefficients[338] * value; // Constraint: poseidon/poseidon/margin_full_to_partial0. tempvar value = ( - column7_row49 + + column8_row50 + poseidon__poseidon__full_rounds_state2_cubed_3 + poseidon__poseidon__full_rounds_state2_cubed_3 - ( @@ -10217,115 +10237,127 @@ func eval_composition_polynomial{range_check_ptr}( poseidon__poseidon__full_rounds_state1_cubed_3 + 2121140748740143694053732746913428481442990369183417228688865837805149503386 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[339] * value; // Constraint: poseidon/poseidon/margin_full_to_partial1. tempvar value = ( - column7_row113 - + column8_row114 - ( 3618502788666131213697322783095070105623107215331596699973092056135872020477 * poseidon__poseidon__full_rounds_state1_cubed_3 + 10 * poseidon__poseidon__full_rounds_state2_cubed_3 + - 4 * column7_row49 + + 4 * column8_row50 + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * poseidon__poseidon__partial_rounds_state0_cubed_0 + 2006642341318481906727563724340978325665491359415674592697055778067937914672 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[340] * value; // Constraint: poseidon/poseidon/margin_full_to_partial2. tempvar value = ( - column7_row177 - + column8_row178 - ( 8 * poseidon__poseidon__full_rounds_state2_cubed_3 + - 4 * column7_row49 + + 4 * column8_row50 + 6 * poseidon__poseidon__partial_rounds_state0_cubed_0 + - column7_row113 + - column7_row113 + + column8_row114 + + column8_row114 + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * poseidon__poseidon__partial_rounds_state0_cubed_1 + 427751140904099001132521606468025610873158555767197326325930641757709538586 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[341] * value; // Constraint: poseidon/poseidon/partial_round0. tempvar value = ( - column7_row241 - + column8_row242 - ( 8 * poseidon__poseidon__partial_rounds_state0_cubed_0 + - 4 * column7_row113 + + 4 * column8_row114 + 6 * poseidon__poseidon__partial_rounds_state0_cubed_1 + - column7_row177 + - column7_row177 + + column8_row178 + + column8_row178 + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * poseidon__poseidon__partial_rounds_state0_cubed_2 + global_values.poseidon__poseidon__partial_round_key0 ) - ) * domain21 / domain6; + ) * domain20 / domain5; tempvar total_sum = total_sum + constraint_coefficients[342] * value; // Constraint: poseidon/poseidon/partial_round1. tempvar value = ( - column7_row461 - + column8_row462 - ( 8 * poseidon__poseidon__partial_rounds_state1_cubed_0 + - 4 * column7_row205 + + 4 * column8_row206 + 6 * poseidon__poseidon__partial_rounds_state1_cubed_1 + - column7_row333 + - column7_row333 + + column8_row334 + + column8_row334 + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * poseidon__poseidon__partial_rounds_state1_cubed_2 + global_values.poseidon__poseidon__partial_round_key1 ) - ) * domain22 / domain7; + ) * domain21 / domain6; tempvar total_sum = total_sum + constraint_coefficients[343] * value; // Constraint: poseidon/poseidon/margin_partial_to_full0. tempvar value = ( - column7_row2157 - + column8_row2158 - ( 16 * poseidon__poseidon__partial_rounds_state1_cubed_19 + - 8 * column7_row2637 + + 8 * column8_row2638 + 16 * poseidon__poseidon__partial_rounds_state1_cubed_20 + - 6 * column7_row2765 + + 6 * column8_row2766 + poseidon__poseidon__partial_rounds_state1_cubed_21 + 560279373700919169769089400651532183647886248799764942664266404650165812023 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[344] * value; // Constraint: poseidon/poseidon/margin_partial_to_full1. tempvar value = ( - column7_row2413 - + column8_row2414 - ( 4 * poseidon__poseidon__partial_rounds_state1_cubed_20 + - column7_row2765 + - column7_row2765 + + column8_row2766 + + column8_row2766 + poseidon__poseidon__partial_rounds_state1_cubed_21 + 1401754474293352309994371631695783042590401941592571735921592823982231996415 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[345] * value; // Constraint: poseidon/poseidon/margin_partial_to_full2. tempvar value = ( - column7_row2285 - + column8_row2286 - ( 8 * poseidon__poseidon__partial_rounds_state1_cubed_19 + - 4 * column7_row2637 + + 4 * column8_row2638 + 6 * poseidon__poseidon__partial_rounds_state1_cubed_20 + - column7_row2765 + - column7_row2765 + + column8_row2766 + + column8_row2766 + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * poseidon__poseidon__partial_rounds_state1_cubed_21 + 1246177936547655338400308396717835700699368047388302793172818304164989556526 ) - ) / domain18; + ) / domain17; tempvar total_sum = total_sum + constraint_coefficients[346] * value; + // Constraint: range_check96_builtin/value. + tempvar value = (range_check96_builtin__value5_0 - column4_row27) / domain6; + tempvar total_sum = total_sum + constraint_coefficients[347] * value; + + // Constraint: range_check96_builtin/addr_step. + tempvar value = (column4_row154 - (column4_row26 + 1)) * domain147 / domain6; + tempvar total_sum = total_sum + constraint_coefficients[348] * value; + + // Constraint: range_check96_builtin/init_addr. + tempvar value = (column4_row26 - global_values.initial_range_check96_addr) / domain143; + tempvar total_sum = total_sum + constraint_coefficients[349] * value; + return (res=total_sum); } @@ -10342,20 +10374,20 @@ func eval_oods_polynomial{range_check_ptr}( // Compute powers. let (local pow0) = pow(trace_generator, 0); - let (local pow1) = pow(trace_generator, 32653); - let (local pow2) = pow(trace_generator, 3613); - let (local pow3) = pow(trace_generator, 1565); - let (local pow4) = pow(trace_generator, 444244); - let (local pow5) = pow(trace_generator, 413524); - let (local pow6) = pow(trace_generator, 397840); - let (local pow7) = pow(trace_generator, 384592); - let (local pow8) = pow(trace_generator, 325460); - let (local pow9) = pow(trace_generator, 198928); - let (local pow10) = pow(trace_generator, 196176); - let (local pow11) = pow(trace_generator, 157524); - let (local pow12) = pow(trace_generator, 66320); - let (local pow13) = pow(trace_generator, 15760); - let (local pow14) = pow(trace_generator, 10068); + let (local pow1) = pow(trace_generator, 32654); + let (local pow2) = pow(trace_generator, 16082); + let (local pow3) = pow(trace_generator, 464129); + let (local pow4) = pow(trace_generator, 446469); + let (local pow5) = pow(trace_generator, 409605); + let (local pow6) = pow(trace_generator, 397825); + let (local pow7) = pow(trace_generator, 384833); + let (local pow8) = pow(trace_generator, 331521); + let (local pow9) = pow(trace_generator, 321541); + let (local pow10) = pow(trace_generator, 265217); + let (local pow11) = pow(trace_generator, 198913); + let (local pow12) = pow(trace_generator, 196417); + let (local pow13) = pow(trace_generator, 159749); + let (local pow14) = pow(trace_generator, 132609); let (local pow15) = pow(trace_generator, 515843); let (local pow16) = pow(trace_generator, 513027); let (local pow17) = pow(trace_generator, 507457); @@ -10363,629 +10395,617 @@ func eval_oods_polynomial{range_check_ptr}( let (local pow19) = pow(trace_generator, 502019); let (local pow20) = pow(trace_generator, 476934); let (local pow21) = pow(trace_generator, 455939); - let (local pow22) = pow(trace_generator, 450755); - let (local pow23) = pow(trace_generator, 445190); - let (local pow24) = pow(trace_generator, 416198); - let (local pow25) = pow(trace_generator, 405766); + let (local pow22) = pow(trace_generator, 451267); + let (local pow23) = pow(trace_generator, 451011); + let (local pow24) = pow(trace_generator, 450755); + let (local pow25) = pow(trace_generator, 445190); let (local pow26) = pow(trace_generator, 383425); let (local pow27) = pow(trace_generator, 370691); let (local pow28) = pow(trace_generator, 359621); let (local pow29) = pow(trace_generator, 341763); - let (local pow30) = pow(trace_generator, 337603); - let (local pow31) = pow(trace_generator, 325893); - let (local pow32) = pow(trace_generator, 325123); - let (local pow33) = pow(trace_generator, 320451); - let (local pow34) = pow(trace_generator, 228163); - let (local pow35) = pow(trace_generator, 225027); - let (local pow36) = pow(trace_generator, 207875); - let (local pow37) = pow(trace_generator, 195009); - let (local pow38) = pow(trace_generator, 178433); - let (local pow39) = pow(trace_generator, 172803); - let (local pow40) = pow(trace_generator, 155397); - let (local pow41) = pow(trace_generator, 151043); - let (local pow42) = pow(trace_generator, 130435); - let (local pow43) = pow(trace_generator, 127491); - let (local pow44) = pow(trace_generator, 122246); - let (local pow45) = pow(trace_generator, 115715); - let (local pow46) = pow(trace_generator, 89283); - let (local pow47) = pow(trace_generator, 86275); - let (local pow48) = pow(trace_generator, 80133); - let (local pow49) = pow(trace_generator, 75782); - let (local pow50) = pow(trace_generator, 55939); - let (local pow51) = pow(trace_generator, 51971); - let (local pow52) = pow(trace_generator, 30977); - let (local pow53) = pow(trace_generator, 1); - local pow54 = pow53 * pow53; // pow(trace_generator, 2). - local pow55 = pow38 * pow54; // pow(trace_generator, 178435). - local pow56 = pow53 * pow54; // pow(trace_generator, 3). - local pow57 = pow53 * pow56; // pow(trace_generator, 4). - local pow58 = pow53 * pow57; // pow(trace_generator, 5). - local pow59 = pow53 * pow58; // pow(trace_generator, 6). - local pow60 = pow53 * pow59; // pow(trace_generator, 7). - local pow61 = pow53 * pow60; // pow(trace_generator, 8). - local pow62 = pow53 * pow61; // pow(trace_generator, 9). - local pow63 = pow53 * pow62; // pow(trace_generator, 10). - local pow64 = pow53 * pow63; // pow(trace_generator, 11). - local pow65 = pow53 * pow64; // pow(trace_generator, 12). - local pow66 = pow53 * pow65; // pow(trace_generator, 13). - local pow67 = pow53 * pow66; // pow(trace_generator, 14). - local pow68 = pow53 * pow67; // pow(trace_generator, 15). - local pow69 = pow53 * pow68; // pow(trace_generator, 16). - local pow70 = pow12 * pow69; // pow(trace_generator, 66336). - local pow71 = pow53 * pow69; // pow(trace_generator, 17). - local pow72 = pow56 * pow71; // pow(trace_generator, 20). - local pow73 = pow53 * pow72; // pow(trace_generator, 21). - local pow74 = pow53 * pow73; // pow(trace_generator, 22). - local pow75 = pow54 * pow74; // pow(trace_generator, 24). - local pow76 = pow53 * pow75; // pow(trace_generator, 25). - local pow77 = pow56 * pow76; // pow(trace_generator, 28). - local pow78 = pow53 * pow77; // pow(trace_generator, 29). - local pow79 = pow53 * pow78; // pow(trace_generator, 30). - local pow80 = pow54 * pow79; // pow(trace_generator, 32). - local pow81 = pow53 * pow80; // pow(trace_generator, 33). - local pow82 = pow56 * pow81; // pow(trace_generator, 36). - local pow83 = pow53 * pow82; // pow(trace_generator, 37). - local pow84 = pow53 * pow83; // pow(trace_generator, 38). - local pow85 = pow54 * pow84; // pow(trace_generator, 40). - local pow86 = pow53 * pow85; // pow(trace_generator, 41). - local pow87 = pow53 * pow86; // pow(trace_generator, 42). - local pow88 = pow53 * pow87; // pow(trace_generator, 43). - local pow89 = pow53 * pow88; // pow(trace_generator, 44). - local pow90 = pow53 * pow89; // pow(trace_generator, 45). - local pow91 = pow53 * pow90; // pow(trace_generator, 46). - local pow92 = pow54 * pow91; // pow(trace_generator, 48). - local pow93 = pow53 * pow92; // pow(trace_generator, 49). - local pow94 = pow56 * pow93; // pow(trace_generator, 52). - local pow95 = pow53 * pow94; // pow(trace_generator, 53). - local pow96 = pow53 * pow95; // pow(trace_generator, 54). - local pow97 = pow54 * pow96; // pow(trace_generator, 56). - local pow98 = pow53 * pow97; // pow(trace_generator, 57). - local pow99 = pow56 * pow98; // pow(trace_generator, 60). - local pow100 = pow54 * pow99; // pow(trace_generator, 62). - local pow101 = pow54 * pow100; // pow(trace_generator, 64). - local pow102 = pow10 * pow101; // pow(trace_generator, 196240). - local pow103 = pow21 * pow101; // pow(trace_generator, 456003). - local pow104 = pow29 * pow101; // pow(trace_generator, 341827). - local pow105 = pow32 * pow101; // pow(trace_generator, 325187). - local pow106 = pow37 * pow101; // pow(trace_generator, 195073). - local pow107 = pow48 * pow101; // pow(trace_generator, 80197). - local pow108 = pow53 * pow101; // pow(trace_generator, 65). - local pow109 = pow53 * pow108; // pow(trace_generator, 66). - local pow110 = pow57 * pow109; // pow(trace_generator, 70). - local pow111 = pow56 * pow110; // pow(trace_generator, 73). - local pow112 = pow53 * pow111; // pow(trace_generator, 74). - local pow113 = pow53 * pow112; // pow(trace_generator, 75). - local pow114 = pow53 * pow113; // pow(trace_generator, 76). - local pow115 = pow53 * pow114; // pow(trace_generator, 77). - local pow116 = pow53 * pow115; // pow(trace_generator, 78). - local pow117 = pow56 * pow116; // pow(trace_generator, 81). - local pow118 = pow57 * pow117; // pow(trace_generator, 85). - local pow119 = pow53 * pow118; // pow(trace_generator, 86). - local pow120 = pow59 * pow119; // pow(trace_generator, 92). - local pow121 = pow54 * pow120; // pow(trace_generator, 94). - local pow122 = pow56 * pow121; // pow(trace_generator, 97). - local pow123 = pow58 * pow122; // pow(trace_generator, 102). - local pow124 = pow57 * pow123; // pow(trace_generator, 106). - local pow125 = pow54 * pow124; // pow(trace_generator, 108). - local pow126 = pow53 * pow125; // pow(trace_generator, 109). - local pow127 = pow53 * pow126; // pow(trace_generator, 110). - local pow128 = pow56 * pow127; // pow(trace_generator, 113). - local pow129 = pow57 * pow128; // pow(trace_generator, 117). - local pow130 = pow53 * pow129; // pow(trace_generator, 118). - local pow131 = pow59 * pow130; // pow(trace_generator, 124). - local pow132 = pow57 * pow131; // pow(trace_generator, 128). - local pow133 = pow10 * pow132; // pow(trace_generator, 196304). - local pow134 = pow21 * pow132; // pow(trace_generator, 456067). - local pow135 = pow29 * pow132; // pow(trace_generator, 341891). - local pow136 = pow32 * pow132; // pow(trace_generator, 325251). - local pow137 = pow37 * pow132; // pow(trace_generator, 195137). - local pow138 = pow48 * pow132; // pow(trace_generator, 80261). - local pow139 = pow54 * pow132; // pow(trace_generator, 130). - local pow140 = pow60 * pow139; // pow(trace_generator, 137). - local pow141 = pow53 * pow140; // pow(trace_generator, 138). - local pow142 = pow53 * pow141; // pow(trace_generator, 139). - local pow143 = pow63 * pow142; // pow(trace_generator, 149). - local pow144 = pow61 * pow143; // pow(trace_generator, 157). - local pow145 = pow67 * pow144; // pow(trace_generator, 171). - local pow146 = pow54 * pow145; // pow(trace_generator, 173). - local pow147 = pow56 * pow146; // pow(trace_generator, 176). - local pow148 = pow53 * pow147; // pow(trace_generator, 177). - local pow149 = pow56 * pow148; // pow(trace_generator, 180). - local pow150 = pow53 * pow149; // pow(trace_generator, 181). - local pow151 = pow13 * pow150; // pow(trace_generator, 15941). - local pow152 = pow56 * pow150; // pow(trace_generator, 184). - local pow153 = pow57 * pow152; // pow(trace_generator, 188). - local pow154 = pow57 * pow153; // pow(trace_generator, 192). - local pow155 = pow13 * pow154; // pow(trace_generator, 15952). - local pow156 = pow54 * pow154; // pow(trace_generator, 194). - local pow157 = pow52 * pow156; // pow(trace_generator, 31171). - local pow158 = pow53 * pow156; // pow(trace_generator, 195). - local pow159 = pow56 * pow158; // pow(trace_generator, 198). - local pow160 = pow57 * pow159; // pow(trace_generator, 202). - local pow161 = pow56 * pow160; // pow(trace_generator, 205). - local pow162 = pow61 * pow161; // pow(trace_generator, 213). - local pow163 = pow73 * pow162; // pow(trace_generator, 234). - local pow164 = pow53 * pow163; // pow(trace_generator, 235). - local pow165 = pow54 * pow164; // pow(trace_generator, 237). - local pow166 = pow56 * pow165; // pow(trace_generator, 240). - local pow167 = pow53 * pow166; // pow(trace_generator, 241). - local pow168 = pow56 * pow167; // pow(trace_generator, 244). - local pow169 = pow57 * pow168; // pow(trace_generator, 248). - local pow170 = pow57 * pow169; // pow(trace_generator, 252). - local pow171 = pow57 * pow170; // pow(trace_generator, 256). - local pow172 = pow22 * pow171; // pow(trace_generator, 451011). - local pow173 = pow30 * pow171; // pow(trace_generator, 337859). - local pow174 = pow33 * pow171; // pow(trace_generator, 320707). - local pow175 = pow56 * pow171; // pow(trace_generator, 259). - local pow176 = pow19 * pow175; // pow(trace_generator, 502278). - local pow177 = pow56 * pow175; // pow(trace_generator, 262). - local pow178 = pow54 * pow177; // pow(trace_generator, 264). - local pow179 = pow54 * pow178; // pow(trace_generator, 266). - local pow180 = pow53 * pow179; // pow(trace_generator, 267). - local pow181 = pow58 * pow180; // pow(trace_generator, 272). - local pow182 = pow166 * pow181; // pow(trace_generator, 512). - local pow183 = pow22 * pow182; // pow(trace_generator, 451267). - local pow184 = pow30 * pow182; // pow(trace_generator, 338115). - local pow185 = pow33 * pow182; // pow(trace_generator, 320963). - local pow186 = pow66 * pow181; // pow(trace_generator, 285). - local pow187 = pow56 * pow186; // pow(trace_generator, 288). - local pow188 = pow63 * pow187; // pow(trace_generator, 298). - local pow189 = pow56 * pow188; // pow(trace_generator, 301). - local pow190 = pow80 * pow189; // pow(trace_generator, 333). - local pow191 = pow80 * pow190; // pow(trace_generator, 365). - local pow192 = pow119 * pow191; // pow(trace_generator, 451). - local pow193 = pow63 * pow192; // pow(trace_generator, 461). - local pow194 = pow80 * pow193; // pow(trace_generator, 493). - local pow195 = pow56 * pow182; // pow(trace_generator, 515). - local pow196 = pow124 * pow195; // pow(trace_generator, 621). - local pow197 = pow56 * pow195; // pow(trace_generator, 518). - local pow198 = pow54 * pow197; // pow(trace_generator, 520). - local pow199 = pow54 * pow198; // pow(trace_generator, 522). - local pow200 = pow53 * pow199; // pow(trace_generator, 523). - local pow201 = pow119 * pow196; // pow(trace_generator, 707). - local pow202 = pow87 * pow201; // pow(trace_generator, 749). - local pow203 = pow72 * pow202; // pow(trace_generator, 769). - local pow204 = pow54 * pow203; // pow(trace_generator, 771). - local pow205 = pow124 * pow204; // pow(trace_generator, 877). - local pow206 = pow54 * pow204; // pow(trace_generator, 773). - local pow207 = pow53 * pow206; // pow(trace_generator, 774). - local pow208 = pow57 * pow207; // pow(trace_generator, 778). - local pow209 = pow53 * pow208; // pow(trace_generator, 779). - local pow210 = pow56 * pow209; // pow(trace_generator, 782). - local pow211 = pow119 * pow205; // pow(trace_generator, 963). - local pow212 = pow100 * pow211; // pow(trace_generator, 1025). - local pow213 = pow54 * pow212; // pow(trace_generator, 1027). - local pow214 = pow54 * pow213; // pow(trace_generator, 1029). - local pow215 = pow53 * pow214; // pow(trace_generator, 1030). - local pow216 = pow57 * pow215; // pow(trace_generator, 1034). - local pow217 = pow53 * pow216; // pow(trace_generator, 1035). - local pow218 = pow56 * pow217; // pow(trace_generator, 1038). - local pow219 = pow150 * pow218; // pow(trace_generator, 1219). - local pow220 = pow101 * pow219; // pow(trace_generator, 1283). - local pow221 = pow56 * pow220; // pow(trace_generator, 1286). - local pow222 = pow57 * pow221; // pow(trace_generator, 1290). - local pow223 = pow53 * pow222; // pow(trace_generator, 1291). - local pow224 = pow152 * pow223; // pow(trace_generator, 1475). - local pow225 = pow101 * pow224; // pow(trace_generator, 1539). - local pow226 = pow56 * pow225; // pow(trace_generator, 1542). - local pow227 = pow57 * pow226; // pow(trace_generator, 1546). - local pow228 = pow53 * pow227; // pow(trace_generator, 1547). - local pow229 = pow3 * pow59; // pow(trace_generator, 1571). - local pow230 = pow3 * pow67; // pow(trace_generator, 1579). - local pow231 = pow109 * pow230; // pow(trace_generator, 1645). - local pow232 = pow119 * pow231; // pow(trace_generator, 1731). - local pow233 = pow87 * pow232; // pow(trace_generator, 1773). - local pow234 = pow3 * pow171; // pow(trace_generator, 1821). - local pow235 = pow74 * pow233; // pow(trace_generator, 1795). - local pow236 = pow56 * pow235; // pow(trace_generator, 1798). - local pow237 = pow116 * pow236; // pow(trace_generator, 1876). - local pow238 = pow101 * pow237; // pow(trace_generator, 1940). - local pow239 = pow76 * pow237; // pow(trace_generator, 1901). - local pow240 = pow119 * pow239; // pow(trace_generator, 1987). - local pow241 = pow71 * pow240; // pow(trace_generator, 2004). - local pow242 = pow60 * pow241; // pow(trace_generator, 2011). - local pow243 = pow61 * pow242; // pow(trace_generator, 2019). - local pow244 = pow63 * pow243; // pow(trace_generator, 2029). - local pow245 = pow65 * pow244; // pow(trace_generator, 2041). - local pow246 = pow57 * pow245; // pow(trace_generator, 2045). - local pow247 = pow54 * pow246; // pow(trace_generator, 2047). - local pow248 = pow54 * pow247; // pow(trace_generator, 2049). - local pow249 = pow54 * pow248; // pow(trace_generator, 2051). - local pow250 = pow124 * pow249; // pow(trace_generator, 2157). - local pow251 = pow54 * pow249; // pow(trace_generator, 2053). - local pow252 = pow53 * pow251; // pow(trace_generator, 2054). - local pow253 = pow3 * pow194; // pow(trace_generator, 2058). - local pow254 = pow99 * pow253; // pow(trace_generator, 2118). - local pow255 = pow76 * pow250; // pow(trace_generator, 2182). - local pow256 = pow53 * pow253; // pow(trace_generator, 2059). - local pow257 = pow119 * pow250; // pow(trace_generator, 2243). - local pow258 = pow87 * pow257; // pow(trace_generator, 2285). - local pow259 = pow74 * pow258; // pow(trace_generator, 2307). - local pow260 = pow124 * pow259; // pow(trace_generator, 2413). - local pow261 = pow101 * pow260; // pow(trace_generator, 2477). - local pow262 = pow56 * pow259; // pow(trace_generator, 2310). - local pow263 = pow3 * pow202; // pow(trace_generator, 2314). - local pow264 = pow53 * pow263; // pow(trace_generator, 2315). - local pow265 = pow74 * pow261; // pow(trace_generator, 2499). - local pow266 = pow63 * pow265; // pow(trace_generator, 2509). - local pow267 = pow96 * pow266; // pow(trace_generator, 2563). - local pow268 = pow56 * pow267; // pow(trace_generator, 2566). - local pow269 = pow87 * pow267; // pow(trace_generator, 2605). - local pow270 = pow132 * pow269; // pow(trace_generator, 2733). - local pow271 = pow80 * pow269; // pow(trace_generator, 2637). - local pow272 = pow74 * pow270; // pow(trace_generator, 2755). - local pow273 = pow63 * pow272; // pow(trace_generator, 2765). - local pow274 = pow96 * pow273; // pow(trace_generator, 2819). - local pow275 = pow56 * pow274; // pow(trace_generator, 2822). - local pow276 = pow57 * pow275; // pow(trace_generator, 2826). - local pow277 = pow53 * pow276; // pow(trace_generator, 2827). - local pow278 = pow152 * pow277; // pow(trace_generator, 3011). - local pow279 = pow101 * pow278; // pow(trace_generator, 3075). - local pow280 = pow56 * pow279; // pow(trace_generator, 3078). - local pow281 = pow57 * pow280; // pow(trace_generator, 3082). - local pow282 = pow53 * pow281; // pow(trace_generator, 3083). - local pow283 = pow169 * pow282; // pow(trace_generator, 3331). - local pow284 = pow56 * pow283; // pow(trace_generator, 3334). - local pow285 = pow3 * pow233; // pow(trace_generator, 3338). - local pow286 = pow53 * pow285; // pow(trace_generator, 3339). - local pow287 = pow169 * pow286; // pow(trace_generator, 3587). - local pow288 = pow124 * pow287; // pow(trace_generator, 3693). - local pow289 = pow132 * pow288; // pow(trace_generator, 3821). - local pow290 = pow2 * pow171; // pow(trace_generator, 3869). - local pow291 = pow56 * pow287; // pow(trace_generator, 3590). - local pow292 = pow3 * pow244; // pow(trace_generator, 3594). - local pow293 = pow2 * pow86; // pow(trace_generator, 3654). - local pow294 = pow76 * pow288; // pow(trace_generator, 3718). - local pow295 = pow53 * pow292; // pow(trace_generator, 3595). - local pow296 = pow74 * pow289; // pow(trace_generator, 3843). - local pow297 = pow56 * pow296; // pow(trace_generator, 3846). - local pow298 = pow86 * pow290; // pow(trace_generator, 3910). - local pow299 = pow67 * pow298; // pow(trace_generator, 3924). - local pow300 = pow76 * pow299; // pow(trace_generator, 3949). - local pow301 = pow57 * pow300; // pow(trace_generator, 3953). - local pow302 = pow73 * pow301; // pow(trace_generator, 3974). - local pow303 = pow67 * pow302; // pow(trace_generator, 3988). - local pow304 = pow101 * pow303; // pow(trace_generator, 4052). - local pow305 = pow78 * pow303; // pow(trace_generator, 4017). - local pow306 = pow76 * pow304; // pow(trace_generator, 4077). - local pow307 = pow57 * pow306; // pow(trace_generator, 4081). - local pow308 = pow61 * pow307; // pow(trace_generator, 4089). - local pow309 = pow63 * pow308; // pow(trace_generator, 4099). - local pow310 = pow171 * pow309; // pow(trace_generator, 4355). - local pow311 = pow171 * pow310; // pow(trace_generator, 4611). - local pow312 = pow56 * pow309; // pow(trace_generator, 4102). - local pow313 = pow2 * pow194; // pow(trace_generator, 4106). - local pow314 = pow56 * pow310; // pow(trace_generator, 4358). - local pow315 = pow56 * pow311; // pow(trace_generator, 4614). - local pow316 = pow57 * pow315; // pow(trace_generator, 4618). - local pow317 = pow53 * pow316; // pow(trace_generator, 4619). - local pow318 = pow169 * pow317; // pow(trace_generator, 4867). - local pow319 = pow171 * pow318; // pow(trace_generator, 5123). - local pow320 = pow171 * pow319; // pow(trace_generator, 5379). - local pow321 = pow101 * pow320; // pow(trace_generator, 5443). - local pow322 = pow101 * pow321; // pow(trace_generator, 5507). - local pow323 = pow132 * pow322; // pow(trace_generator, 5635). - local pow324 = pow56 * pow318; // pow(trace_generator, 4870). - local pow325 = pow56 * pow319; // pow(trace_generator, 5126). - local pow326 = pow56 * pow320; // pow(trace_generator, 5382). - local pow327 = pow56 * pow321; // pow(trace_generator, 5446). - local pow328 = pow56 * pow322; // pow(trace_generator, 5510). - local pow329 = pow56 * pow323; // pow(trace_generator, 5638). - local pow330 = pow58 * pow329; // pow(trace_generator, 5643). - local pow331 = pow97 * pow330; // pow(trace_generator, 5699). - local pow332 = pow101 * pow331; // pow(trace_generator, 5763). - local pow333 = pow132 * pow332; // pow(trace_generator, 5891). - local pow334 = pow101 * pow333; // pow(trace_generator, 5955). - local pow335 = pow101 * pow334; // pow(trace_generator, 6019). - local pow336 = pow132 * pow335; // pow(trace_generator, 6147). - local pow337 = pow101 * pow336; // pow(trace_generator, 6211). - local pow338 = pow101 * pow337; // pow(trace_generator, 6275). - local pow339 = pow27 * pow331; // pow(trace_generator, 376390). - local pow340 = pow56 * pow333; // pow(trace_generator, 5894). - local pow341 = pow71 * pow334; // pow(trace_generator, 5972). - local pow342 = pow71 * pow335; // pow(trace_generator, 6036). - local pow343 = pow101 * pow342; // pow(trace_generator, 6100). - local pow344 = pow189 * pow343; // pow(trace_generator, 6401). - local pow345 = pow54 * pow344; // pow(trace_generator, 6403). - local pow346 = pow54 * pow345; // pow(trace_generator, 6405). - local pow347 = pow346 * pow346; // pow(trace_generator, 12810). - local pow348 = pow56 * pow336; // pow(trace_generator, 6150). - local pow349 = pow53 * pow346; // pow(trace_generator, 6406). - local pow350 = pow63 * pow349; // pow(trace_generator, 6416). - local pow351 = pow2 * pow274; // pow(trace_generator, 6432). - local pow352 = pow83 * pow351; // pow(trace_generator, 6469). - local pow353 = pow101 * pow352; // pow(trace_generator, 6533). - local pow354 = pow99 * pow353; // pow(trace_generator, 6593). - local pow355 = pow54 * pow354; // pow(trace_generator, 6595). - local pow356 = pow54 * pow355; // pow(trace_generator, 6597). - local pow357 = pow99 * pow356; // pow(trace_generator, 6657). - local pow358 = pow101 * pow357; // pow(trace_generator, 6721). - local pow359 = pow101 * pow358; // pow(trace_generator, 6785). - local pow360 = pow54 * pow359; // pow(trace_generator, 6787). - local pow361 = pow54 * pow360; // pow(trace_generator, 6789). - local pow362 = pow153 * pow361; // pow(trace_generator, 6977). - local pow363 = pow54 * pow362; // pow(trace_generator, 6979). - local pow364 = pow54 * pow363; // pow(trace_generator, 6981). - local pow365 = pow153 * pow364; // pow(trace_generator, 7169). - local pow366 = pow54 * pow365; // pow(trace_generator, 7171). - local pow367 = pow54 * pow366; // pow(trace_generator, 7173). - local pow368 = pow153 * pow367; // pow(trace_generator, 7361). - local pow369 = pow40 * pow357; // pow(trace_generator, 162054). - local pow370 = pow53 * pow352; // pow(trace_generator, 6470). - local pow371 = pow53 * pow353; // pow(trace_generator, 6534). - local pow372 = pow53 * pow356; // pow(trace_generator, 6598). - local pow373 = pow58 * pow357; // pow(trace_generator, 6662). - local pow374 = pow58 * pow358; // pow(trace_generator, 6726). - local pow375 = pow53 * pow361; // pow(trace_generator, 6790). - local pow376 = pow53 * pow364; // pow(trace_generator, 6982). - local pow377 = pow53 * pow367; // pow(trace_generator, 7174). - local pow378 = pow57 * pow377; // pow(trace_generator, 7178). - local pow379 = pow53 * pow378; // pow(trace_generator, 7179). - local pow380 = pow54 * pow368; // pow(trace_generator, 7363). - local pow381 = pow54 * pow380; // pow(trace_generator, 7365). - local pow382 = pow153 * pow381; // pow(trace_generator, 7553). - local pow383 = pow54 * pow382; // pow(trace_generator, 7555). - local pow384 = pow53 * pow381; // pow(trace_generator, 7366). - local pow385 = pow54 * pow383; // pow(trace_generator, 7557). - local pow386 = pow53 * pow385; // pow(trace_generator, 7558). - local pow387 = pow141 * pow382; // pow(trace_generator, 7691). - local pow388 = pow63 * pow386; // pow(trace_generator, 7568). - local pow389 = pow96 * pow387; // pow(trace_generator, 7745). - local pow390 = pow54 * pow389; // pow(trace_generator, 7747). - local pow391 = pow54 * pow390; // pow(trace_generator, 7749). - local pow392 = pow53 * pow391; // pow(trace_generator, 7750). - local pow393 = pow63 * pow392; // pow(trace_generator, 7760). - local pow394 = pow101 * pow393; // pow(trace_generator, 7824). - local pow395 = pow101 * pow394; // pow(trace_generator, 7888). - local pow396 = pow93 * pow395; // pow(trace_generator, 7937). - local pow397 = pow54 * pow396; // pow(trace_generator, 7939). - local pow398 = pow54 * pow397; // pow(trace_generator, 7941). - local pow399 = pow170 * pow398; // pow(trace_generator, 8193). - local pow400 = pow54 * pow399; // pow(trace_generator, 8195). - local pow401 = pow54 * pow400; // pow(trace_generator, 8197). - local pow402 = pow367 * pow401; // pow(trace_generator, 15370). - local pow403 = pow53 * pow398; // pow(trace_generator, 7942). - local pow404 = pow62 * pow401; // pow(trace_generator, 8206). - local pow405 = pow298 * pow404; // pow(trace_generator, 12116). - local pow406 = pow54 * pow404; // pow(trace_generator, 8208). - local pow407 = pow166 * pow406; // pow(trace_generator, 8448). - local pow408 = pow276 * pow407; // pow(trace_generator, 11274). - local pow409 = pow56 * pow407; // pow(trace_generator, 8451). - local pow410 = pow171 * pow409; // pow(trace_generator, 8707). - local pow411 = pow60 * pow410; // pow(trace_generator, 8714). - local pow412 = pow245 * pow411; // pow(trace_generator, 10755). - local pow413 = pow53 * pow402; // pow(trace_generator, 15371). - local pow414 = pow41 * pow410; // pow(trace_generator, 159750). - local pow415 = pow58 * pow409; // pow(trace_generator, 8456). - local pow416 = pow53 * pow408; // pow(trace_generator, 11275). - local pow417 = pow212 * pow411; // pow(trace_generator, 9739). - local pow418 = pow154 * pow155; // pow(trace_generator, 16144). - local pow419 = pow53 * pow411; // pow(trace_generator, 8715). - local pow420 = pow2 * pow311; // pow(trace_generator, 8224). - local pow421 = pow182 * pow413; // pow(trace_generator, 15883). - local pow422 = pow159 * pow421; // pow(trace_generator, 16081). - local pow423 = pow212 * pow347; // pow(trace_generator, 13835). - local pow424 = pow53 * pow347; // pow(trace_generator, 12811). - local pow425 = pow182 * pow416; // pow(trace_generator, 11787). - local pow426 = pow53 * pow418; // pow(trace_generator, 16145). - local pow427 = pow53 * pow426; // pow(trace_generator, 16146). - local pow428 = pow53 * pow427; // pow(trace_generator, 16147). - local pow429 = pow197 * pow425; // pow(trace_generator, 12305). - local pow430 = pow101 * pow429; // pow(trace_generator, 12369). - local pow431 = pow154 * pow430; // pow(trace_generator, 12561). - local pow432 = pow53 * pow428; // pow(trace_generator, 16148). - local pow433 = pow53 * pow432; // pow(trace_generator, 16149). - local pow434 = pow53 * pow433; // pow(trace_generator, 16150). - local pow435 = pow101 * pow431; // pow(trace_generator, 12625). - local pow436 = pow225 * pow435; // pow(trace_generator, 14164). - local pow437 = pow53 * pow434; // pow(trace_generator, 16151). - local pow438 = pow62 * pow437; // pow(trace_generator, 16160). - local pow439 = pow53 * pow438; // pow(trace_generator, 16161). - local pow440 = pow53 * pow439; // pow(trace_generator, 16162). - local pow441 = pow53 * pow440; // pow(trace_generator, 16163). - local pow442 = pow53 * pow441; // pow(trace_generator, 16164). - local pow443 = pow53 * pow442; // pow(trace_generator, 16165). - local pow444 = pow53 * pow443; // pow(trace_generator, 16166). - local pow445 = pow53 * pow444; // pow(trace_generator, 16167). - local pow446 = pow62 * pow445; // pow(trace_generator, 16176). - local pow447 = pow69 * pow446; // pow(trace_generator, 16192). - local pow448 = pow69 * pow447; // pow(trace_generator, 16208). - local pow449 = pow69 * pow448; // pow(trace_generator, 16224). - local pow450 = pow69 * pow449; // pow(trace_generator, 16240). - local pow451 = pow69 * pow450; // pow(trace_generator, 16256). - local pow452 = pow13 * pow182; // pow(trace_generator, 16272). - local pow453 = pow69 * pow452; // pow(trace_generator, 16288). - local pow454 = pow69 * pow453; // pow(trace_generator, 16304). - local pow455 = pow69 * pow454; // pow(trace_generator, 16320). - local pow456 = pow53 * pow455; // pow(trace_generator, 16321). - local pow457 = pow57 * pow456; // pow(trace_generator, 16325). - local pow458 = pow106 * pow457; // pow(trace_generator, 211398). - local pow459 = pow36 * pow287; // pow(trace_generator, 211462). - local pow460 = pow101 * pow459; // pow(trace_generator, 211526). - local pow461 = pow64 * pow457; // pow(trace_generator, 16336). - local pow462 = pow59 * pow461; // pow(trace_generator, 16342). - local pow463 = pow56 * pow462; // pow(trace_generator, 16345). - local pow464 = pow60 * pow463; // pow(trace_generator, 16352). - local pow465 = pow53 * pow464; // pow(trace_generator, 16353). - local pow466 = pow57 * pow465; // pow(trace_generator, 16357). - local pow467 = pow1 * pow61; // pow(trace_generator, 32661). - local pow468 = pow57 * pow466; // pow(trace_generator, 16361). - local pow469 = pow60 * pow468; // pow(trace_generator, 16368). - local pow470 = pow59 * pow469; // pow(trace_generator, 16374). - local pow471 = pow56 * pow470; // pow(trace_generator, 16377). - local pow472 = pow60 * pow471; // pow(trace_generator, 16384). - local pow473 = pow1 * pow97; // pow(trace_generator, 32709). - local pow474 = pow59 * pow472; // pow(trace_generator, 16390). - local pow475 = pow80 * pow474; // pow(trace_generator, 16422). - local pow476 = pow399 * pow472; // pow(trace_generator, 24577). - local pow477 = pow54 * pow476; // pow(trace_generator, 24579). - local pow478 = pow171 * pow477; // pow(trace_generator, 24835). - local pow479 = pow171 * pow478; // pow(trace_generator, 25091). - local pow480 = pow54 * pow477; // pow(trace_generator, 24581). - local pow481 = pow344 * pow472; // pow(trace_generator, 22785). - local pow482 = pow336 * pow472; // pow(trace_generator, 22531). - local pow483 = pow101 * pow482; // pow(trace_generator, 22595). - local pow484 = pow101 * pow483; // pow(trace_generator, 22659). - local pow485 = pow265 * pow472; // pow(trace_generator, 18883). - local pow486 = pow171 * pow485; // pow(trace_generator, 19139). - local pow487 = pow171 * pow486; // pow(trace_generator, 19395). - local pow488 = pow182 * pow474; // pow(trace_generator, 16902). - local pow489 = pow291 * pow480; // pow(trace_generator, 28171). - local pow490 = pow408 * pow472; // pow(trace_generator, 27658). - local pow491 = pow13 * pow472; // pow(trace_generator, 32144). - local pow492 = pow388 * pow472; // pow(trace_generator, 23952). - local pow493 = pow222 * pow481; // pow(trace_generator, 24075). - local pow494 = pow330 * pow472; // pow(trace_generator, 22027). - local pow495 = pow281 * pow472; // pow(trace_generator, 19466). - local pow496 = pow226 * pow480; // pow(trace_generator, 26123). - local pow497 = pow169 * pow496; // pow(trace_generator, 26371). - local pow498 = pow296 * pow497; // pow(trace_generator, 30214). - local pow499 = pow52 * pow222; // pow(trace_generator, 32267). - local pow500 = pow58 * pow498; // pow(trace_generator, 30219). - local pow501 = pow53 * pow495; // pow(trace_generator, 19467). - local pow502 = pow182 * pow501; // pow(trace_generator, 19979). - local pow503 = pow62 * pow480; // pow(trace_generator, 24590). - local pow504 = pow69 * pow473; // pow(trace_generator, 32725). - local pow505 = pow214 * pow488; // pow(trace_generator, 17931). - local pow506 = pow1 * pow111; // pow(trace_generator, 32726). - local pow507 = pow68 * pow506; // pow(trace_generator, 32741). - local pow508 = pow69 * pow507; // pow(trace_generator, 32757). - local pow509 = pow53 * pow508; // pow(trace_generator, 32758). - local pow510 = pow63 * pow509; // pow(trace_generator, 32768). - local pow511 = pow476 * pow510; // pow(trace_generator, 57345). - local pow512 = pow36 * pow318; // pow(trace_generator, 212742). - local pow513 = pow54 * pow511; // pow(trace_generator, 57347). - local pow514 = pow16 * pow175; // pow(trace_generator, 513286). - local pow515 = pow101 * pow514; // pow(trace_generator, 513350). - local pow516 = pow36 * pow195; // pow(trace_generator, 208390). - local pow517 = pow171 * pow513; // pow(trace_generator, 57603). - local pow518 = pow171 * pow517; // pow(trace_generator, 57859). - local pow519 = pow54 * pow513; // pow(trace_generator, 57349). - local pow520 = pow62 * pow519; // pow(trace_generator, 57358). - local pow521 = pow101 * pow515; // pow(trace_generator, 513414). - local pow522 = pow8 * pow510; // pow(trace_generator, 358228). - local pow523 = pow31 * pow510; // pow(trace_generator, 358661). - local pow524 = pow281 * pow510; // pow(trace_generator, 35850). - local pow525 = pow510 * pow510; // pow(trace_generator, 65536). - local pow526 = pow396 * pow525; // pow(trace_generator, 73473). - local pow527 = pow346 * pow525; // pow(trace_generator, 71941). - local pow528 = pow283 * pow525; // pow(trace_generator, 68867). - local pow529 = pow49 * pow101; // pow(trace_generator, 75846). - local pow530 = pow49 * pow132; // pow(trace_generator, 75910). - local pow531 = pow267 * pow528; // pow(trace_generator, 71430). - local pow532 = pow4 * pow525; // pow(trace_generator, 509780). - local pow533 = pow101 * pow532; // pow(trace_generator, 509844). - local pow534 = pow101 * pow533; // pow(trace_generator, 509908). - local pow535 = pow510 * pow525; // pow(trace_generator, 98304). - local pow536 = pow476 * pow535; // pow(trace_generator, 122881). - local pow537 = pow54 * pow536; // pow(trace_generator, 122883). - local pow538 = pow171 * pow537; // pow(trace_generator, 123139). - local pow539 = pow171 * pow538; // pow(trace_generator, 123395). - local pow540 = pow528 * pow539; // pow(trace_generator, 192262). - local pow541 = pow101 * pow516; // pow(trace_generator, 208454). - local pow542 = pow101 * pow540; // pow(trace_generator, 192326). - local pow543 = pow101 * pow542; // pow(trace_generator, 192390). - local pow544 = pow101 * pow541; // pow(trace_generator, 208518). - local pow545 = pow39 * pow259; // pow(trace_generator, 175110). - local pow546 = pow54 * pow537; // pow(trace_generator, 122885). - local pow547 = pow45 * pow379; // pow(trace_generator, 122894). - local pow548 = pow417 * pow546; // pow(trace_generator, 132624). - local pow549 = pow12 * pow12; // pow(trace_generator, 132640). - local pow550 = pow9 * pow69; // pow(trace_generator, 198944). - local pow551 = pow31 * pow536; // pow(trace_generator, 448774). - local pow552 = pow16 * pow220; // pow(trace_generator, 514310). - local pow553 = pow101 * pow552; // pow(trace_generator, 514374). - local pow554 = pow17 * pow364; // pow(trace_generator, 514438). - local pow555 = pow510 * pow535; // pow(trace_generator, 131072). - local pow556 = pow510 * pow555; // pow(trace_generator, 163840). - local pow557 = pow385 * pow556; // pow(trace_generator, 171397). - local pow558 = pow225 * pow556; // pow(trace_generator, 165379). - local pow559 = pow318 * pow558; // pow(trace_generator, 170246). - local pow560 = pow56 * pow558; // pow(trace_generator, 165382). - local pow561 = pow13 * pow556; // pow(trace_generator, 179600). - local pow562 = pow237 * pow556; // pow(trace_generator, 165716). - local pow563 = pow510 * pow556; // pow(trace_generator, 196608). - local pow564 = pow510 * pow563; // pow(trace_generator, 229376). - local pow565 = pow354 * pow564; // pow(trace_generator, 235969). - local pow566 = pow220 * pow564; // pow(trace_generator, 230659). - local pow567 = pow34 * pow265; // pow(trace_generator, 230662). - local pow568 = pow510 * pow564; // pow(trace_generator, 262144). - local pow569 = pow510 * pow568; // pow(trace_generator, 294912). - local pow570 = pow510 * pow569; // pow(trace_generator, 327680). - local pow571 = pow510 * pow570; // pow(trace_generator, 360448). - local pow572 = pow175 * pow571; // pow(trace_generator, 360707). - local pow573 = pow510 * pow571; // pow(trace_generator, 393216). - local pow574 = pow13 * pow573; // pow(trace_generator, 408976). - local pow575 = pow299 * pow571; // pow(trace_generator, 364372). - local pow576 = pow11 * pow571; // pow(trace_generator, 517972). - local pow577 = pow510 * pow573; // pow(trace_generator, 425984). - local pow578 = pow368 * pow571; // pow(trace_generator, 367809). - local pow579 = pow372 * pow571; // pow(trace_generator, 367046). - local pow580 = pow249 * pow572; // pow(trace_generator, 362758). - local pow581 = pow366 * pow569; // pow(trace_generator, 302083). - local pow582 = pow309 * pow569; // pow(trace_generator, 299011). - local pow583 = pow39 * pow537; // pow(trace_generator, 295686). - local pow584 = pow249 * pow581; // pow(trace_generator, 304134). - local pow585 = pow393 * pow564; // pow(trace_generator, 237136). - local pow586 = pow38 * pow564; // pow(trace_generator, 407809). - local pow587 = pow36 * pow36; // pow(trace_generator, 415750). - local pow588 = pow346 * pow569; // pow(trace_generator, 301317). - local pow589 = pow382 * pow564; // pow(trace_generator, 236929). - local pow590 = pow510 * pow577; // pow(trace_generator, 458752). - local pow591 = pow481 * pow590; // pow(trace_generator, 481537). - local pow592 = pow390 * pow590; // pow(trace_generator, 466499). - local pow593 = pow318 * pow590; // pow(trace_generator, 463619). - local pow594 = pow43 * pow173; // pow(trace_generator, 465350). - local pow595 = pow26 * pow107; // pow(trace_generator, 463622). - local pow596 = pow199 * pow595; // pow(trace_generator, 464144). - local pow597 = pow510 * pow590; // pow(trace_generator, 491520). - local pow598 = pow18 * pow447; // pow(trace_generator, 522497). - local pow599 = pow31 * pow563; // pow(trace_generator, 522501). - local pow600 = pow18 * pow472; // pow(trace_generator, 522689). - local pow601 = pow17 * pow68; // pow(trace_generator, 507472). - local pow602 = pow492 * pow590; // pow(trace_generator, 482704). - local pow603 = pow299 * pow590; // pow(trace_generator, 462676). - local pow604 = pow405 * pow563; // pow(trace_generator, 208724). - local pow605 = pow405 * pow569; // pow(trace_generator, 307028). - local pow606 = pow101 * pow604; // pow(trace_generator, 208788). - local pow607 = pow101 * pow606; // pow(trace_generator, 208852). - local pow608 = pow476 * pow564; // pow(trace_generator, 253953). - local pow609 = pow476 * pow597; // pow(trace_generator, 516097). - local pow610 = pow54 * pow608; // pow(trace_generator, 253955). - local pow611 = pow528 * pow610; // pow(trace_generator, 322822). - local pow612 = pow31 * pow330; // pow(trace_generator, 331536). - local pow613 = pow15 * pow171; // pow(trace_generator, 516099). - local pow614 = pow171 * pow610; // pow(trace_generator, 254211). - local pow615 = pow171 * pow614; // pow(trace_generator, 254467). - local pow616 = pow43 * pow615; // pow(trace_generator, 381958). - local pow617 = pow479 * pow570; // pow(trace_generator, 352771). - local pow618 = pow31 * pow52; // pow(trace_generator, 356870). - local pow619 = pow54 * pow610; // pow(trace_generator, 253957). - local pow620 = pow54 * pow613; // pow(trace_generator, 516101). - local pow621 = pow15 * pow175; // pow(trace_generator, 516102). - local pow622 = pow416 * pow619; // pow(trace_generator, 265232). - local pow623 = pow6 * pow69; // pow(trace_generator, 397856). - local pow624 = pow9 * pow548; // pow(trace_generator, 331552). - local pow625 = pow9 * pow12; // pow(trace_generator, 265248). - local pow626 = pow6 * pow12; // pow(trace_generator, 464160). - local pow627 = pow62 * pow619; // pow(trace_generator, 253966). - local pow628 = pow15 * pow180; // pow(trace_generator, 516110). - local pow629 = pow54 * pow628; // pow(trace_generator, 516112). - local pow630 = pow166 * pow629; // pow(trace_generator, 516352). - local pow631 = pow15 * pow182; // pow(trace_generator, 516355). - local pow632 = pow171 * pow631; // pow(trace_generator, 516611). - local pow633 = pow53 * pow599; // pow(trace_generator, 522502). - local pow634 = pow58 * pow600; // pow(trace_generator, 522694). - local pow635 = pow15 * pow186; // pow(trace_generator, 516128). - local pow636 = pow15 * pow192; // pow(trace_generator, 516294). - local pow637 = pow15 * pow195; // pow(trace_generator, 516358). - local pow638 = pow54 * pow637; // pow(trace_generator, 516360). - local pow639 = pow458 * pow535; // pow(trace_generator, 309702). - local pow640 = pow436 * pow525; // pow(trace_generator, 79700). - local pow641 = pow101 * pow640; // pow(trace_generator, 79764). - local pow642 = pow101 * pow641; // pow(trace_generator, 79828). - local pow643 = pow116 * pow531; // pow(trace_generator, 71508). - local pow644 = pow341 * pow569; // pow(trace_generator, 300884). + let (local pow30) = pow(trace_generator, 338115); + let (local pow31) = pow(trace_generator, 337859); + let (local pow32) = pow(trace_generator, 337603); + let (local pow33) = pow(trace_generator, 325893); + let (local pow34) = pow(trace_generator, 325123); + let (local pow35) = pow(trace_generator, 320963); + let (local pow36) = pow(trace_generator, 320707); + let (local pow37) = pow(trace_generator, 320451); + let (local pow38) = pow(trace_generator, 228163); + let (local pow39) = pow(trace_generator, 225027); + let (local pow40) = pow(trace_generator, 207875); + let (local pow41) = pow(trace_generator, 195009); + let (local pow42) = pow(trace_generator, 178433); + let (local pow43) = pow(trace_generator, 172803); + let (local pow44) = pow(trace_generator, 155397); + let (local pow45) = pow(trace_generator, 151043); + let (local pow46) = pow(trace_generator, 130435); + let (local pow47) = pow(trace_generator, 127491); + let (local pow48) = pow(trace_generator, 122246); + let (local pow49) = pow(trace_generator, 115715); + let (local pow50) = pow(trace_generator, 89283); + let (local pow51) = pow(trace_generator, 86275); + let (local pow52) = pow(trace_generator, 80133); + let (local pow53) = pow(trace_generator, 55939); + let (local pow54) = pow(trace_generator, 51971); + let (local pow55) = pow(trace_generator, 30977); + let (local pow56) = pow(trace_generator, 1); + local pow57 = pow56 * pow56; // pow(trace_generator, 2). + local pow58 = pow42 * pow57; // pow(trace_generator, 178435). + local pow59 = pow56 * pow57; // pow(trace_generator, 3). + local pow60 = pow56 * pow59; // pow(trace_generator, 4). + local pow61 = pow56 * pow60; // pow(trace_generator, 5). + local pow62 = pow56 * pow61; // pow(trace_generator, 6). + local pow63 = pow56 * pow62; // pow(trace_generator, 7). + local pow64 = pow56 * pow63; // pow(trace_generator, 8). + local pow65 = pow56 * pow64; // pow(trace_generator, 9). + local pow66 = pow56 * pow65; // pow(trace_generator, 10). + local pow67 = pow56 * pow66; // pow(trace_generator, 11). + local pow68 = pow56 * pow67; // pow(trace_generator, 12). + local pow69 = pow56 * pow68; // pow(trace_generator, 13). + local pow70 = pow56 * pow69; // pow(trace_generator, 14). + local pow71 = pow56 * pow70; // pow(trace_generator, 15). + local pow72 = pow56 * pow71; // pow(trace_generator, 16). + local pow73 = pow14 * pow72; // pow(trace_generator, 132625). + local pow74 = pow56 * pow72; // pow(trace_generator, 17). + local pow75 = pow56 * pow74; // pow(trace_generator, 18). + local pow76 = pow56 * pow75; // pow(trace_generator, 19). + local pow77 = pow56 * pow76; // pow(trace_generator, 20). + local pow78 = pow57 * pow77; // pow(trace_generator, 22). + local pow79 = pow57 * pow78; // pow(trace_generator, 24). + local pow80 = pow11 * pow72; // pow(trace_generator, 198929). + local pow81 = pow57 * pow79; // pow(trace_generator, 26). + local pow82 = pow56 * pow81; // pow(trace_generator, 27). + local pow83 = pow56 * pow82; // pow(trace_generator, 28). + local pow84 = pow57 * pow83; // pow(trace_generator, 30). + local pow85 = pow57 * pow84; // pow(trace_generator, 32). + local pow86 = pow57 * pow85; // pow(trace_generator, 34). + local pow87 = pow57 * pow86; // pow(trace_generator, 36). + local pow88 = pow57 * pow87; // pow(trace_generator, 38). + local pow89 = pow57 * pow88; // pow(trace_generator, 40). + local pow90 = pow57 * pow89; // pow(trace_generator, 42). + local pow91 = pow56 * pow90; // pow(trace_generator, 43). + local pow92 = pow56 * pow91; // pow(trace_generator, 44). + local pow93 = pow57 * pow92; // pow(trace_generator, 46). + local pow94 = pow57 * pow93; // pow(trace_generator, 48). + local pow95 = pow57 * pow94; // pow(trace_generator, 50). + local pow96 = pow57 * pow95; // pow(trace_generator, 52). + local pow97 = pow57 * pow96; // pow(trace_generator, 54). + local pow98 = pow57 * pow97; // pow(trace_generator, 56). + local pow99 = pow57 * pow98; // pow(trace_generator, 58). + local pow100 = pow57 * pow99; // pow(trace_generator, 60). + local pow101 = pow60 * pow100; // pow(trace_generator, 64). + local pow102 = pow21 * pow101; // pow(trace_generator, 456003). + local pow103 = pow29 * pow101; // pow(trace_generator, 341827). + local pow104 = pow34 * pow101; // pow(trace_generator, 325187). + local pow105 = pow41 * pow101; // pow(trace_generator, 195073). + local pow106 = pow52 * pow101; // pow(trace_generator, 80197). + local pow107 = pow57 * pow101; // pow(trace_generator, 66). + local pow108 = pow57 * pow107; // pow(trace_generator, 68). + local pow109 = pow56 * pow108; // pow(trace_generator, 69). + local pow110 = pow12 * pow101; // pow(trace_generator, 196481). + local pow111 = pow61 * pow109; // pow(trace_generator, 74). + local pow112 = pow56 * pow111; // pow(trace_generator, 75). + local pow113 = pow56 * pow112; // pow(trace_generator, 76). + local pow114 = pow57 * pow113; // pow(trace_generator, 78). + local pow115 = pow60 * pow114; // pow(trace_generator, 82). + local pow116 = pow57 * pow115; // pow(trace_generator, 84). + local pow117 = pow57 * pow116; // pow(trace_generator, 86). + local pow118 = pow62 * pow117; // pow(trace_generator, 92). + local pow119 = pow62 * pow118; // pow(trace_generator, 98). + local pow120 = pow57 * pow119; // pow(trace_generator, 100). + local pow121 = pow62 * pow120; // pow(trace_generator, 106). + local pow122 = pow57 * pow121; // pow(trace_generator, 108). + local pow123 = pow57 * pow122; // pow(trace_generator, 110). + local pow124 = pow60 * pow123; // pow(trace_generator, 114). + local pow125 = pow57 * pow124; // pow(trace_generator, 116). + local pow126 = pow57 * pow125; // pow(trace_generator, 118). + local pow127 = pow62 * pow126; // pow(trace_generator, 124). + local pow128 = pow60 * pow127; // pow(trace_generator, 128). + local pow129 = pow21 * pow128; // pow(trace_generator, 456067). + local pow130 = pow29 * pow128; // pow(trace_generator, 341891). + local pow131 = pow34 * pow128; // pow(trace_generator, 325251). + local pow132 = pow41 * pow128; // pow(trace_generator, 195137). + local pow133 = pow52 * pow128; // pow(trace_generator, 80261). + local pow134 = pow57 * pow128; // pow(trace_generator, 130). + local pow135 = pow59 * pow134; // pow(trace_generator, 133). + local pow136 = pow12 * pow128; // pow(trace_generator, 196545). + local pow137 = pow61 * pow135; // pow(trace_generator, 138). + local pow138 = pow56 * pow137; // pow(trace_generator, 139). + local pow139 = pow67 * pow138; // pow(trace_generator, 150). + local pow140 = pow60 * pow139; // pow(trace_generator, 154). + local pow141 = pow60 * pow140; // pow(trace_generator, 158). + local pow142 = pow69 * pow141; // pow(trace_generator, 171). + local pow143 = pow59 * pow142; // pow(trace_generator, 174). + local pow144 = pow57 * pow143; // pow(trace_generator, 176). + local pow145 = pow57 * pow144; // pow(trace_generator, 178). + local pow146 = pow57 * pow145; // pow(trace_generator, 180). + local pow147 = pow57 * pow146; // pow(trace_generator, 182). + local pow148 = pow57 * pow147; // pow(trace_generator, 184). + local pow149 = pow60 * pow148; // pow(trace_generator, 188). + local pow150 = pow60 * pow149; // pow(trace_generator, 192). + local pow151 = pow57 * pow150; // pow(trace_generator, 194). + local pow152 = pow55 * pow151; // pow(trace_generator, 31171). + local pow153 = pow56 * pow151; // pow(trace_generator, 195). + local pow154 = pow59 * pow153; // pow(trace_generator, 198). + local pow155 = pow60 * pow154; // pow(trace_generator, 202). + local pow156 = pow60 * pow155; // pow(trace_generator, 206). + local pow157 = pow64 * pow156; // pow(trace_generator, 214). + local pow158 = pow77 * pow157; // pow(trace_generator, 234). + local pow159 = pow56 * pow158; // pow(trace_generator, 235). + local pow160 = pow59 * pow159; // pow(trace_generator, 238). + local pow161 = pow57 * pow160; // pow(trace_generator, 240). + local pow162 = pow56 * pow161; // pow(trace_generator, 241). + local pow163 = pow56 * pow162; // pow(trace_generator, 242). + local pow164 = pow57 * pow163; // pow(trace_generator, 244). + local pow165 = pow60 * pow164; // pow(trace_generator, 248). + local pow166 = pow56 * pow165; // pow(trace_generator, 249). + local pow167 = pow59 * pow166; // pow(trace_generator, 252). + local pow168 = pow61 * pow167; // pow(trace_generator, 257). + local pow169 = pow57 * pow168; // pow(trace_generator, 259). + local pow170 = pow19 * pow169; // pow(trace_generator, 502278). + local pow171 = pow59 * pow169; // pow(trace_generator, 262). + local pow172 = pow60 * pow171; // pow(trace_generator, 266). + local pow173 = pow56 * pow172; // pow(trace_generator, 267). + local pow174 = pow62 * pow173; // pow(trace_generator, 273). + local pow175 = pow69 * pow174; // pow(trace_generator, 286). + local pow176 = pow68 * pow175; // pow(trace_generator, 298). + local pow177 = pow60 * pow176; // pow(trace_generator, 302). + local pow178 = pow145 * pow174; // pow(trace_generator, 451). + local pow179 = pow85 * pow177; // pow(trace_generator, 334). + local pow180 = pow67 * pow178; // pow(trace_generator, 462). + local pow181 = pow85 * pow179; // pow(trace_generator, 366). + local pow182 = pow85 * pow180; // pow(trace_generator, 494). + local pow183 = pow59 * pow182; // pow(trace_generator, 497). + local pow184 = pow64 * pow183; // pow(trace_generator, 505). + local pow185 = pow66 * pow184; // pow(trace_generator, 515). + local pow186 = pow59 * pow185; // pow(trace_generator, 518). + local pow187 = pow60 * pow186; // pow(trace_generator, 522). + local pow188 = pow56 * pow187; // pow(trace_generator, 523). + local pow189 = pow148 * pow188; // pow(trace_generator, 707). + local pow190 = pow120 * pow187; // pow(trace_generator, 622). + local pow191 = pow91 * pow189; // pow(trace_generator, 750). + local pow192 = pow76 * pow191; // pow(trace_generator, 769). + local pow193 = pow57 * pow192; // pow(trace_generator, 771). + local pow194 = pow57 * pow193; // pow(trace_generator, 773). + local pow195 = pow167 * pow194; // pow(trace_generator, 1025). + local pow196 = pow56 * pow194; // pow(trace_generator, 774). + local pow197 = pow60 * pow196; // pow(trace_generator, 778). + local pow198 = pow56 * pow197; // pow(trace_generator, 779). + local pow199 = pow148 * pow198; // pow(trace_generator, 963). + local pow200 = pow57 * pow195; // pow(trace_generator, 1027). + local pow201 = pow57 * pow200; // pow(trace_generator, 1029). + local pow202 = pow59 * pow198; // pow(trace_generator, 782). + local pow203 = pow56 * pow201; // pow(trace_generator, 1030). + local pow204 = pow60 * pow203; // pow(trace_generator, 1034). + local pow205 = pow56 * pow204; // pow(trace_generator, 1035). + local pow206 = pow148 * pow205; // pow(trace_generator, 1219). + local pow207 = pow101 * pow206; // pow(trace_generator, 1283). + local pow208 = pow59 * pow205; // pow(trace_generator, 1038). + local pow209 = pow59 * pow207; // pow(trace_generator, 1286). + local pow210 = pow60 * pow209; // pow(trace_generator, 1290). + local pow211 = pow56 * pow210; // pow(trace_generator, 1291). + local pow212 = pow148 * pow211; // pow(trace_generator, 1475). + local pow213 = pow165 * pow210; // pow(trace_generator, 1538). + local pow214 = pow56 * pow213; // pow(trace_generator, 1539). + local pow215 = pow59 * pow214; // pow(trace_generator, 1542). + local pow216 = pow60 * pow215; // pow(trace_generator, 1546). + local pow217 = pow56 * pow216; // pow(trace_generator, 1547). + local pow218 = pow148 * pow217; // pow(trace_generator, 1731). + local pow219 = pow76 * pow217; // pow(trace_generator, 1566). + local pow220 = pow60 * pow219; // pow(trace_generator, 1570). + local pow221 = pow64 * pow220; // pow(trace_generator, 1578). + local pow222 = pow108 * pow221; // pow(trace_generator, 1646). + local pow223 = pow91 * pow218; // pow(trace_generator, 1774). + local pow224 = pow128 * pow223; // pow(trace_generator, 1902). + local pow225 = pow101 * pow218; // pow(trace_generator, 1795). + local pow226 = pow150 * pow225; // pow(trace_generator, 1987). + local pow227 = pow59 * pow225; // pow(trace_generator, 1798). + local pow228 = pow79 * pow227; // pow(trace_generator, 1822). + local pow229 = pow122 * pow224; // pow(trace_generator, 2010). + local pow230 = pow64 * pow229; // pow(trace_generator, 2018). + local pow231 = pow68 * pow230; // pow(trace_generator, 2030). + local pow232 = pow66 * pow231; // pow(trace_generator, 2040). + local pow233 = pow60 * pow232; // pow(trace_generator, 2044). + local pow234 = pow57 * pow233; // pow(trace_generator, 2046). + local pow235 = pow57 * pow234; // pow(trace_generator, 2048). + local pow236 = pow57 * pow235; // pow(trace_generator, 2050). + local pow237 = pow56 * pow236; // pow(trace_generator, 2051). + local pow238 = pow56 * pow237; // pow(trace_generator, 2052). + local pow239 = pow56 * pow238; // pow(trace_generator, 2053). + local pow240 = pow56 * pow239; // pow(trace_generator, 2054). + local pow241 = pow60 * pow240; // pow(trace_generator, 2058). + local pow242 = pow56 * pow241; // pow(trace_generator, 2059). + local pow243 = pow148 * pow242; // pow(trace_generator, 2243). + local pow244 = pow99 * pow242; // pow(trace_generator, 2117). + local pow245 = pow101 * pow244; // pow(trace_generator, 2181). + local pow246 = pow101 * pow243; // pow(trace_generator, 2307). + local pow247 = pow56 * pow244; // pow(trace_generator, 2118). + local pow248 = pow89 * pow247; // pow(trace_generator, 2158). + local pow249 = pow91 * pow243; // pow(trace_generator, 2286). + local pow250 = pow56 * pow245; // pow(trace_generator, 2182). + local pow251 = pow59 * pow246; // pow(trace_generator, 2310). + local pow252 = pow60 * pow251; // pow(trace_generator, 2314). + local pow253 = pow56 * pow252; // pow(trace_generator, 2315). + local pow254 = pow148 * pow253; // pow(trace_generator, 2499). + local pow255 = pow101 * pow254; // pow(trace_generator, 2563). + local pow256 = pow150 * pow255; // pow(trace_generator, 2755). + local pow257 = pow101 * pow256; // pow(trace_generator, 2819). + local pow258 = pow120 * pow197; // pow(trace_generator, 878). + local pow259 = pow120 * pow252; // pow(trace_generator, 2414). + local pow260 = pow101 * pow259; // pow(trace_generator, 2478). + local pow261 = pow67 * pow254; // pow(trace_generator, 2510). + local pow262 = pow59 * pow255; // pow(trace_generator, 2566). + local pow263 = pow89 * pow262; // pow(trace_generator, 2606). + local pow264 = pow128 * pow263; // pow(trace_generator, 2734). + local pow265 = pow85 * pow263; // pow(trace_generator, 2638). + local pow266 = pow67 * pow256; // pow(trace_generator, 2766). + local pow267 = pow59 * pow257; // pow(trace_generator, 2822). + local pow268 = pow60 * pow267; // pow(trace_generator, 2826). + local pow269 = pow56 * pow268; // pow(trace_generator, 2827). + local pow270 = pow148 * pow269; // pow(trace_generator, 3011). + local pow271 = pow101 * pow270; // pow(trace_generator, 3075). + local pow272 = pow59 * pow271; // pow(trace_generator, 3078). + local pow273 = pow60 * pow272; // pow(trace_generator, 3082). + local pow274 = pow56 * pow273; // pow(trace_generator, 3083). + local pow275 = pow165 * pow274; // pow(trace_generator, 3331). + local pow276 = pow59 * pow275; // pow(trace_generator, 3334). + local pow277 = pow60 * pow276; // pow(trace_generator, 3338). + local pow278 = pow56 * pow277; // pow(trace_generator, 3339). + local pow279 = pow165 * pow278; // pow(trace_generator, 3587). + local pow280 = pow59 * pow279; // pow(trace_generator, 3590). + local pow281 = pow60 * pow280; // pow(trace_generator, 3594). + local pow282 = pow56 * pow281; // pow(trace_generator, 3595). + local pow283 = pow165 * pow282; // pow(trace_generator, 3843). + local pow284 = pow76 * pow282; // pow(trace_generator, 3614). + local pow285 = pow89 * pow284; // pow(trace_generator, 3654). + local pow286 = pow89 * pow285; // pow(trace_generator, 3694). + local pow287 = pow79 * pow286; // pow(trace_generator, 3718). + local pow288 = pow128 * pow286; // pow(trace_generator, 3822). + local pow289 = pow59 * pow283; // pow(trace_generator, 3846). + local pow290 = pow79 * pow289; // pow(trace_generator, 3870). + local pow291 = pow89 * pow290; // pow(trace_generator, 3910). + local pow292 = pow89 * pow291; // pow(trace_generator, 3950). + local pow293 = pow60 * pow292; // pow(trace_generator, 3954). + local pow294 = pow77 * pow293; // pow(trace_generator, 3974). + local pow295 = pow92 * pow294; // pow(trace_generator, 4018). + local pow296 = pow100 * pow295; // pow(trace_generator, 4078). + local pow297 = pow60 * pow296; // pow(trace_generator, 4082). + local pow298 = pow62 * pow297; // pow(trace_generator, 4088). + local pow299 = pow211 * pow298; // pow(trace_generator, 5379). + local pow300 = pow101 * pow299; // pow(trace_generator, 5443). + local pow301 = pow101 * pow300; // pow(trace_generator, 5507). + local pow302 = pow128 * pow301; // pow(trace_generator, 5635). + local pow303 = pow67 * pow298; // pow(trace_generator, 4099). + local pow304 = pow57 * pow303; // pow(trace_generator, 4101). + local pow305 = pow101 * pow304; // pow(trace_generator, 4165). + local pow306 = pow101 * pow305; // pow(trace_generator, 4229). + local pow307 = pow56 * pow304; // pow(trace_generator, 4102). + local pow308 = pow60 * pow307; // pow(trace_generator, 4106). + local pow309 = pow184 * pow308; // pow(trace_generator, 4611). + local pow310 = pow166 * pow308; // pow(trace_generator, 4355). + local pow311 = pow234 * pow310; // pow(trace_generator, 6401). + local pow312 = pow59 * pow309; // pow(trace_generator, 4614). + local pow313 = pow60 * pow312; // pow(trace_generator, 4618). + local pow314 = pow184 * pow313; // pow(trace_generator, 5123). + local pow315 = pow56 * pow313; // pow(trace_generator, 4619). + local pow316 = pow165 * pow315; // pow(trace_generator, 4867). + local pow317 = pow59 * pow299; // pow(trace_generator, 5382). + local pow318 = pow59 * pow300; // pow(trace_generator, 5446). + local pow319 = pow59 * pow301; // pow(trace_generator, 5510). + local pow320 = pow59 * pow302; // pow(trace_generator, 5638). + local pow321 = pow59 * pow314; // pow(trace_generator, 5126). + local pow322 = pow59 * pow316; // pow(trace_generator, 4870). + local pow323 = pow61 * pow320; // pow(trace_generator, 5643). + local pow324 = pow98 * pow323; // pow(trace_generator, 5699). + local pow325 = pow101 * pow324; // pow(trace_generator, 5763). + local pow326 = pow128 * pow325; // pow(trace_generator, 5891). + local pow327 = pow101 * pow326; // pow(trace_generator, 5955). + local pow328 = pow101 * pow327; // pow(trace_generator, 6019). + local pow329 = pow128 * pow328; // pow(trace_generator, 6147). + local pow330 = pow101 * pow329; // pow(trace_generator, 6211). + local pow331 = pow101 * pow330; // pow(trace_generator, 6275). + local pow332 = pow57 * pow311; // pow(trace_generator, 6403). + local pow333 = pow57 * pow332; // pow(trace_generator, 6405). + local pow334 = pow59 * pow329; // pow(trace_generator, 6150). + local pow335 = pow59 * pow326; // pow(trace_generator, 5894). + local pow336 = pow27 * pow324; // pow(trace_generator, 376390). + local pow337 = pow59 * pow310; // pow(trace_generator, 4358). + local pow338 = pow56 * pow333; // pow(trace_generator, 6406). + local pow339 = pow67 * pow338; // pow(trace_generator, 6417). + local pow340 = pow96 * pow339; // pow(trace_generator, 6469). + local pow341 = pow101 * pow340; // pow(trace_generator, 6533). + local pow342 = pow100 * pow341; // pow(trace_generator, 6593). + local pow343 = pow57 * pow342; // pow(trace_generator, 6595). + local pow344 = pow57 * pow343; // pow(trace_generator, 6597). + local pow345 = pow100 * pow344; // pow(trace_generator, 6657). + local pow346 = pow44 * pow345; // pow(trace_generator, 162054). + local pow347 = pow101 * pow345; // pow(trace_generator, 6721). + local pow348 = pow101 * pow347; // pow(trace_generator, 6785). + local pow349 = pow57 * pow348; // pow(trace_generator, 6787). + local pow350 = pow57 * pow349; // pow(trace_generator, 6789). + local pow351 = pow149 * pow350; // pow(trace_generator, 6977). + local pow352 = pow57 * pow351; // pow(trace_generator, 6979). + local pow353 = pow57 * pow352; // pow(trace_generator, 6981). + local pow354 = pow149 * pow353; // pow(trace_generator, 7169). + local pow355 = pow56 * pow340; // pow(trace_generator, 6470). + local pow356 = pow56 * pow341; // pow(trace_generator, 6534). + local pow357 = pow57 * pow354; // pow(trace_generator, 7171). + local pow358 = pow57 * pow357; // pow(trace_generator, 7173). + local pow359 = pow56 * pow344; // pow(trace_generator, 6598). + local pow360 = pow61 * pow345; // pow(trace_generator, 6662). + local pow361 = pow61 * pow347; // pow(trace_generator, 6726). + local pow362 = pow56 * pow350; // pow(trace_generator, 6790). + local pow363 = pow56 * pow353; // pow(trace_generator, 6982). + local pow364 = pow56 * pow358; // pow(trace_generator, 7174). + local pow365 = pow60 * pow364; // pow(trace_generator, 7178). + local pow366 = pow56 * pow365; // pow(trace_generator, 7179). + local pow367 = pow147 * pow366; // pow(trace_generator, 7361). + local pow368 = pow57 * pow367; // pow(trace_generator, 7363). + local pow369 = pow57 * pow368; // pow(trace_generator, 7365). + local pow370 = pow149 * pow369; // pow(trace_generator, 7553). + local pow371 = pow57 * pow370; // pow(trace_generator, 7555). + local pow372 = pow57 * pow371; // pow(trace_generator, 7557). + local pow373 = pow56 * pow369; // pow(trace_generator, 7366). + local pow374 = pow56 * pow372; // pow(trace_generator, 7558). + local pow375 = pow135 * pow374; // pow(trace_generator, 7691). + local pow376 = pow97 * pow375; // pow(trace_generator, 7745). + local pow377 = pow57 * pow376; // pow(trace_generator, 7747). + local pow378 = pow57 * pow377; // pow(trace_generator, 7749). + local pow379 = pow100 * pow378; // pow(trace_generator, 7809). + local pow380 = pow128 * pow379; // pow(trace_generator, 7937). + local pow381 = pow57 * pow380; // pow(trace_generator, 7939). + local pow382 = pow57 * pow381; // pow(trace_generator, 7941). + local pow383 = pow6 * pow382; // pow(trace_generator, 405766). + local pow384 = pow100 * pow382; // pow(trace_generator, 8001). + local pow385 = pow101 * pow384; // pow(trace_generator, 8065). + local pow386 = pow101 * pow385; // pow(trace_generator, 8129). + local pow387 = pow101 * pow386; // pow(trace_generator, 8193). + local pow388 = pow57 * pow387; // pow(trace_generator, 8195). + local pow389 = pow57 * pow388; // pow(trace_generator, 8197). + local pow390 = pow358 * pow389; // pow(trace_generator, 15370). + local pow391 = pow56 * pow378; // pow(trace_generator, 7750). + local pow392 = pow56 * pow382; // pow(trace_generator, 7942). + local pow393 = pow65 * pow389; // pow(trace_generator, 8206). + local pow394 = pow59 * pow393; // pow(trace_generator, 8209). + local pow395 = pow160 * pow388; // pow(trace_generator, 8433). + local pow396 = pow64 * pow395; // pow(trace_generator, 8441). + local pow397 = pow172 * pow396; // pow(trace_generator, 8707). + local pow398 = pow213 * pow397; // pow(trace_generator, 10245). + local pow399 = pow201 * pow398; // pow(trace_generator, 11274). + local pow400 = pow56 * pow399; // pow(trace_generator, 11275). + local pow401 = pow63 * pow397; // pow(trace_generator, 8714). + local pow402 = pow195 * pow401; // pow(trace_generator, 9739). + local pow403 = pow215 * pow398; // pow(trace_generator, 11787). + local pow404 = pow56 * pow401; // pow(trace_generator, 8715). + local pow405 = pow232 * pow404; // pow(trace_generator, 10755). + local pow406 = pow213 * pow405; // pow(trace_generator, 12293). + local pow407 = pow56 * pow390; // pow(trace_generator, 15371). + local pow408 = pow69 * pow406; // pow(trace_generator, 12306). + local pow409 = pow101 * pow408; // pow(trace_generator, 12370). + local pow410 = pow150 * pow409; // pow(trace_generator, 12562). + local pow411 = pow101 * pow410; // pow(trace_generator, 12626). + local pow412 = pow148 * pow411; // pow(trace_generator, 12810). + local pow413 = pow195 * pow412; // pow(trace_generator, 13835). + local pow414 = pow235 * pow413; // pow(trace_generator, 15883). + local pow415 = pow99 * pow414; // pow(trace_generator, 15941). + local pow416 = pow100 * pow415; // pow(trace_generator, 16001). + local pow417 = pow56 * pow412; // pow(trace_generator, 12811). + local pow418 = pow194 * pow407; // pow(trace_generator, 16144). + local pow419 = pow56 * pow418; // pow(trace_generator, 16145). + local pow420 = pow2 * pow101; // pow(trace_generator, 16146). + local pow421 = pow56 * pow420; // pow(trace_generator, 16147). + local pow422 = pow2 * pow107; // pow(trace_generator, 16148). + local pow423 = pow56 * pow422; // pow(trace_generator, 16149). + local pow424 = pow2 * pow108; // pow(trace_generator, 16150). + local pow425 = pow2 * pow109; // pow(trace_generator, 16151). + local pow426 = pow2 * pow114; // pow(trace_generator, 16160). + local pow427 = pow56 * pow426; // pow(trace_generator, 16161). + local pow428 = pow56 * pow427; // pow(trace_generator, 16162). + local pow429 = pow56 * pow428; // pow(trace_generator, 16163). + local pow430 = pow2 * pow115; // pow(trace_generator, 16164). + local pow431 = pow56 * pow430; // pow(trace_generator, 16165). + local pow432 = pow2 * pow116; // pow(trace_generator, 16166). + local pow433 = pow56 * pow432; // pow(trace_generator, 16167). + local pow434 = pow65 * pow433; // pow(trace_generator, 16176). + local pow435 = pow2 * pow123; // pow(trace_generator, 16192). + local pow436 = pow56 * pow435; // pow(trace_generator, 16193). + local pow437 = pow71 * pow436; // pow(trace_generator, 16208). + local pow438 = pow72 * pow437; // pow(trace_generator, 16224). + local pow439 = pow2 * pow141; // pow(trace_generator, 16240). + local pow440 = pow2 * pow143; // pow(trace_generator, 16256). + local pow441 = pow72 * pow440; // pow(trace_generator, 16272). + local pow442 = pow2 * pow156; // pow(trace_generator, 16288). + local pow443 = pow72 * pow442; // pow(trace_generator, 16304). + local pow444 = pow2 * pow160; // pow(trace_generator, 16320). + local pow445 = pow2 * pow161; // pow(trace_generator, 16322). + local pow446 = pow2 * pow164; // pow(trace_generator, 16326). + local pow447 = pow66 * pow446; // pow(trace_generator, 16336). + local pow448 = pow60 * pow447; // pow(trace_generator, 16340). + local pow449 = pow62 * pow448; // pow(trace_generator, 16346). + local pow450 = pow62 * pow449; // pow(trace_generator, 16352). + local pow451 = pow57 * pow450; // pow(trace_generator, 16354). + local pow452 = pow60 * pow451; // pow(trace_generator, 16358). + local pow453 = pow1 * pow64; // pow(trace_generator, 32662). + local pow454 = pow60 * pow452; // pow(trace_generator, 16362). + local pow455 = pow2 * pow175; // pow(trace_generator, 16368). + local pow456 = pow13 * pow56; // pow(trace_generator, 159750). + local pow457 = pow66 * pow396; // pow(trace_generator, 8451). + local pow458 = pow60 * pow455; // pow(trace_generator, 16372). + local pow459 = pow62 * pow458; // pow(trace_generator, 16378). + local pow460 = pow2 * pow177; // pow(trace_generator, 16384). + local pow461 = pow399 * pow460; // pow(trace_generator, 27658). + local pow462 = pow397 * pow460; // pow(trace_generator, 25091). + local pow463 = pow311 * pow460; // pow(trace_generator, 22785). + local pow464 = pow236 * pow463; // pow(trace_generator, 24835). + local pow465 = pow329 * pow460; // pow(trace_generator, 22531). + local pow466 = pow234 * pow465; // pow(trace_generator, 24577). + local pow467 = pow57 * pow466; // pow(trace_generator, 24579). + local pow468 = pow101 * pow465; // pow(trace_generator, 22595). + local pow469 = pow101 * pow468; // pow(trace_generator, 22659). + local pow470 = pow270 * pow460; // pow(trace_generator, 19395). + local pow471 = pow256 * pow460; // pow(trace_generator, 19139). + local pow472 = pow254 * pow460; // pow(trace_generator, 18883). + local pow473 = pow186 * pow460; // pow(trace_generator, 16902). + local pow474 = pow201 * pow473; // pow(trace_generator, 17931). + local pow475 = pow235 * pow474; // pow(trace_generator, 19979). + local pow476 = pow235 * pow475; // pow(trace_generator, 22027). + local pow477 = pow210 * pow463; // pow(trace_generator, 24075). + local pow478 = pow126 * pow477; // pow(trace_generator, 24193). + local pow479 = pow60 * pow460; // pow(trace_generator, 16388). + local pow480 = pow272 * pow479; // pow(trace_generator, 19466). + local pow481 = pow56 * pow480; // pow(trace_generator, 19467). + local pow482 = pow85 * pow479; // pow(trace_generator, 16420). + local pow483 = pow57 * pow467; // pow(trace_generator, 24581). + local pow484 = pow65 * pow483; // pow(trace_generator, 24590). + local pow485 = pow1 * pow98; // pow(trace_generator, 32710). + local pow486 = pow215 * pow483; // pow(trace_generator, 26123). + local pow487 = pow165 * pow486; // pow(trace_generator, 26371). + local pow488 = pow283 * pow487; // pow(trace_generator, 30214). + local pow489 = pow70 * pow485; // pow(trace_generator, 32724). + local pow490 = pow57 * pow489; // pow(trace_generator, 32726). + local pow491 = pow72 * pow490; // pow(trace_generator, 32742). + local pow492 = pow70 * pow491; // pow(trace_generator, 32756). + local pow493 = pow57 * pow492; // pow(trace_generator, 32758). + local pow494 = pow1 * pow124; // pow(trace_generator, 32768). + local pow495 = pow494 * pow494; // pow(trace_generator, 65536). + local pow496 = pow494 * pow495; // pow(trace_generator, 98304). + local pow497 = pow494 * pow496; // pow(trace_generator, 131072). + local pow498 = pow494 * pow497; // pow(trace_generator, 163840). + local pow499 = pow494 * pow498; // pow(trace_generator, 196608). + local pow500 = pow494 * pow499; // pow(trace_generator, 229376). + local pow501 = pow342 * pow500; // pow(trace_generator, 235969). + local pow502 = pow207 * pow500; // pow(trace_generator, 230659). + local pow503 = pow494 * pow500; // pow(trace_generator, 262144). + local pow504 = pow494 * pow503; // pow(trace_generator, 294912). + local pow505 = pow494 * pow504; // pow(trace_generator, 327680). + local pow506 = pow494 * pow505; // pow(trace_generator, 360448). + local pow507 = pow494 * pow506; // pow(trace_generator, 393216). + local pow508 = pow61 * pow506; // pow(trace_generator, 360453). + local pow509 = pow13 * pow506; // pow(trace_generator, 520197). + local pow510 = pow367 * pow506; // pow(trace_generator, 367809). + local pow511 = pow342 * pow508; // pow(trace_generator, 367046). + local pow512 = pow357 * pow504; // pow(trace_generator, 302083). + local pow513 = pow494 * pow507; // pow(trace_generator, 425984). + local pow514 = pow42 * pow500; // pow(trace_generator, 407809). + local pow515 = pow384 * pow500; // pow(trace_generator, 237377). + local pow516 = pow494 * pow513; // pow(trace_generator, 458752). + local pow517 = pow494 * pow516; // pow(trace_generator, 491520). + local pow518 = pow18 * pow435; // pow(trace_generator, 522497). + local pow519 = pow436 * pow517; // pow(trace_generator, 507713). + local pow520 = pow463 * pow516; // pow(trace_generator, 481537). + local pow521 = pow377 * pow516; // pow(trace_generator, 466499). + local pow522 = pow316 * pow516; // pow(trace_generator, 463619). + local pow523 = pow26 * pow106; // pow(trace_generator, 463622). + local pow524 = pow478 * pow516; // pow(trace_generator, 482945). + local pow525 = pow370 * pow500; // pow(trace_generator, 236929). + local pow526 = pow389 * pow499; // pow(trace_generator, 204805). + local pow527 = pow342 * pow526; // pow(trace_generator, 211398). + local pow528 = pow101 * pow526; // pow(trace_generator, 204869). + local pow529 = pow101 * pow528; // pow(trace_generator, 204933). + local pow530 = pow40 * pow279; // pow(trace_generator, 211462). + local pow531 = pow101 * pow530; // pow(trace_generator, 211526). + local pow532 = pow372 * pow498; // pow(trace_generator, 171397). + local pow533 = pow214 * pow498; // pow(trace_generator, 165379). + local pow534 = pow316 * pow533; // pow(trace_generator, 170246). + local pow535 = pow59 * pow533; // pow(trace_generator, 165382). + local pow536 = pow416 * pow498; // pow(trace_generator, 179841). + local pow537 = pow416 * pow507; // pow(trace_generator, 409217). + local pow538 = pow5 * pow342; // pow(trace_generator, 416198). + local pow539 = pow40 * pow40; // pow(trace_generator, 415750). + local pow540 = pow304 * pow498; // pow(trace_generator, 167941). + local pow541 = pow61 * pow516; // pow(trace_generator, 458757). + local pow542 = pow31 * pow47; // pow(trace_generator, 465350). + local pow543 = pow389 * pow504; // pow(trace_generator, 303109). + local pow544 = pow342 * pow543; // pow(trace_generator, 309702). + local pow545 = pow192 * pow495; // pow(trace_generator, 66305). + local pow546 = pow72 * pow545; // pow(trace_generator, 66321). + local pow547 = pow398 * pow495; // pow(trace_generator, 75781). + local pow548 = pow101 * pow547; // pow(trace_generator, 75845). + local pow549 = pow101 * pow548; // pow(trace_generator, 75909). + local pow550 = pow380 * pow495; // pow(trace_generator, 73473). + local pow551 = pow333 * pow495; // pow(trace_generator, 71941). + local pow552 = pow333 * pow504; // pow(trace_generator, 301317). + local pow553 = pow275 * pow495; // pow(trace_generator, 68867). + local pow554 = pow255 * pow553; // pow(trace_generator, 71430). + local pow555 = pow239 * pow495; // pow(trace_generator, 67589). + local pow556 = pow56 * pow547; // pow(trace_generator, 75782). + local pow557 = pow56 * pow548; // pow(trace_generator, 75846). + local pow558 = pow56 * pow549; // pow(trace_generator, 75910). + local pow559 = pow239 * pow504; // pow(trace_generator, 296965). + local pow560 = pow234 * pow559; // pow(trace_generator, 299011). + local pow561 = pow195 * pow543; // pow(trace_generator, 304134). + local pow562 = pow4 * pow495; // pow(trace_generator, 512005). + local pow563 = pow101 * pow562; // pow(trace_generator, 512069). + local pow564 = pow101 * pow563; // pow(trace_generator, 512133). + local pow565 = pow273 * pow494; // pow(trace_generator, 35850). + local pow566 = pow462 * pow494; // pow(trace_generator, 57859). + local pow567 = pow462 * pow496; // pow(trace_generator, 123395). + local pow568 = pow553 * pow567; // pow(trace_generator, 192262). + local pow569 = pow101 * pow568; // pow(trace_generator, 192326). + local pow570 = pow101 * pow569; // pow(trace_generator, 192390). + local pow571 = pow38 * pow254; // pow(trace_generator, 230662). + local pow572 = pow462 * pow500; // pow(trace_generator, 254467). + local pow573 = pow47 * pow572; // pow(trace_generator, 381958). + local pow574 = pow6 * pow72; // pow(trace_generator, 397841). + local pow575 = pow462 * pow505; // pow(trace_generator, 352771). + local pow576 = pow33 * pow55; // pow(trace_generator, 356870). + local pow577 = pow464 * pow494; // pow(trace_generator, 57603). + local pow578 = pow464 * pow496; // pow(trace_generator, 123139). + local pow579 = pow43 * pow246; // pow(trace_generator, 175110). + local pow580 = pow464 * pow500; // pow(trace_generator, 254211). + local pow581 = pow466 * pow494; // pow(trace_generator, 57345). + local pow582 = pow14 * pow52; // pow(trace_generator, 212742). + local pow583 = pow466 * pow496; // pow(trace_generator, 122881). + local pow584 = pow33 * pow583; // pow(trace_generator, 448774). + local pow585 = pow3 * pow72; // pow(trace_generator, 464145). + local pow586 = pow16 * pow207; // pow(trace_generator, 514310). + local pow587 = pow101 * pow586; // pow(trace_generator, 514374). + local pow588 = pow17 * pow353; // pow(trace_generator, 514438). + local pow589 = pow57 * pow581; // pow(trace_generator, 57347). + local pow590 = pow16 * pow169; // pow(trace_generator, 513286). + local pow591 = pow101 * pow590; // pow(trace_generator, 513350). + local pow592 = pow57 * pow583; // pow(trace_generator, 122883). + local pow593 = pow43 * pow592; // pow(trace_generator, 295686). + local pow594 = pow14 * pow547; // pow(trace_generator, 208390). + local pow595 = pow14 * pow548; // pow(trace_generator, 208454). + local pow596 = pow14 * pow549; // pow(trace_generator, 208518). + local pow597 = pow57 * pow589; // pow(trace_generator, 57349). + local pow598 = pow57 * pow592; // pow(trace_generator, 122885). + local pow599 = pow101 * pow591; // pow(trace_generator, 513414). + local pow600 = pow466 * pow500; // pow(trace_generator, 253953). + local pow601 = pow466 * pow517; // pow(trace_generator, 516097). + local pow602 = pow57 * pow600; // pow(trace_generator, 253955). + local pow603 = pow553 * pow602; // pow(trace_generator, 322822). + local pow604 = pow8 * pow72; // pow(trace_generator, 331537). + local pow605 = pow57 * pow601; // pow(trace_generator, 516099). + local pow606 = pow57 * pow602; // pow(trace_generator, 253957). + local pow607 = pow57 * pow605; // pow(trace_generator, 516101). + local pow608 = pow15 * pow169; // pow(trace_generator, 516102). + local pow609 = pow33 * pow494; // pow(trace_generator, 358661). + local pow610 = pow33 * pow499; // pow(trace_generator, 522501). + local pow611 = pow18 * pow460; // pow(trace_generator, 522689). + local pow612 = pow169 * pow506; // pow(trace_generator, 360707). + local pow613 = pow237 * pow612; // pow(trace_generator, 362758). + local pow614 = pow9 * pow494; // pow(trace_generator, 354309). + local pow615 = pow235 * pow486; // pow(trace_generator, 28171). + local pow616 = pow61 * pow488; // pow(trace_generator, 30219). + local pow617 = pow55 * pow210; // pow(trace_generator, 32267). + local pow618 = pow126 * pow617; // pow(trace_generator, 32385). + local pow619 = pow65 * pow597; // pow(trace_generator, 57358). + local pow620 = pow49 * pow366; // pow(trace_generator, 122894). + local pow621 = pow10 * pow72; // pow(trace_generator, 265233). + local pow622 = pow65 * pow606; // pow(trace_generator, 253966). + local pow623 = pow15 * pow173; // pow(trace_generator, 516110). + local pow624 = pow15 * pow178; // pow(trace_generator, 516294). + local pow625 = pow15 * pow182; // pow(trace_generator, 516337). + local pow626 = pow64 * pow625; // pow(trace_generator, 516345). + local pow627 = pow172 * pow626; // pow(trace_generator, 516611). + local pow628 = pow59 * pow623; // pow(trace_generator, 516113). + local pow629 = pow66 * pow626; // pow(trace_generator, 516355). + local pow630 = pow15 * pow185; // pow(trace_generator, 516358). + local pow631 = pow56 * pow610; // pow(trace_generator, 522502). + local pow632 = pow61 * pow611; // pow(trace_generator, 522694). // Fetch columns. tempvar column0 = column_values[0]; @@ -10999,6 +11019,7 @@ func eval_oods_polynomial{range_check_ptr}( tempvar column8 = column_values[8]; tempvar column9 = column_values[9]; tempvar column10 = column_values[10]; + tempvar column11 = column_values[11]; // Sum the OODS constraints on the trace polynomials. tempvar total_sum = 0; @@ -11006,976 +11027,976 @@ func eval_oods_polynomial{range_check_ptr}( tempvar value = (column0 - oods_values[0]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[0] * value; - tempvar value = (column0 - oods_values[1]) / (point - pow53 * oods_point); + tempvar value = (column0 - oods_values[1]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[1] * value; - tempvar value = (column0 - oods_values[2]) / (point - pow54 * oods_point); + tempvar value = (column0 - oods_values[2]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[2] * value; - tempvar value = (column0 - oods_values[3]) / (point - pow56 * oods_point); + tempvar value = (column0 - oods_values[3]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[3] * value; - tempvar value = (column0 - oods_values[4]) / (point - pow57 * oods_point); + tempvar value = (column0 - oods_values[4]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[4] * value; - tempvar value = (column0 - oods_values[5]) / (point - pow58 * oods_point); + tempvar value = (column0 - oods_values[5]) / (point - pow61 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[5] * value; - tempvar value = (column0 - oods_values[6]) / (point - pow59 * oods_point); + tempvar value = (column0 - oods_values[6]) / (point - pow62 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[6] * value; - tempvar value = (column0 - oods_values[7]) / (point - pow60 * oods_point); + tempvar value = (column0 - oods_values[7]) / (point - pow63 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[7] * value; - tempvar value = (column0 - oods_values[8]) / (point - pow61 * oods_point); + tempvar value = (column0 - oods_values[8]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[8] * value; - tempvar value = (column0 - oods_values[9]) / (point - pow62 * oods_point); + tempvar value = (column0 - oods_values[9]) / (point - pow65 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[9] * value; - tempvar value = (column0 - oods_values[10]) / (point - pow63 * oods_point); + tempvar value = (column0 - oods_values[10]) / (point - pow66 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[10] * value; - tempvar value = (column0 - oods_values[11]) / (point - pow64 * oods_point); + tempvar value = (column0 - oods_values[11]) / (point - pow67 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[11] * value; - tempvar value = (column0 - oods_values[12]) / (point - pow65 * oods_point); + tempvar value = (column0 - oods_values[12]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[12] * value; - tempvar value = (column0 - oods_values[13]) / (point - pow66 * oods_point); + tempvar value = (column0 - oods_values[13]) / (point - pow69 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[13] * value; - tempvar value = (column0 - oods_values[14]) / (point - pow67 * oods_point); + tempvar value = (column0 - oods_values[14]) / (point - pow70 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[14] * value; - tempvar value = (column0 - oods_values[15]) / (point - pow68 * oods_point); + tempvar value = (column0 - oods_values[15]) / (point - pow71 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[15] * value; tempvar value = (column1 - oods_values[16]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[16] * value; - tempvar value = (column1 - oods_values[17]) / (point - pow53 * oods_point); + tempvar value = (column1 - oods_values[17]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[17] * value; - tempvar value = (column1 - oods_values[18]) / (point - pow54 * oods_point); + tempvar value = (column1 - oods_values[18]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[18] * value; - tempvar value = (column1 - oods_values[19]) / (point - pow56 * oods_point); + tempvar value = (column1 - oods_values[19]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[19] * value; - tempvar value = (column1 - oods_values[20]) / (point - pow57 * oods_point); + tempvar value = (column1 - oods_values[20]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[20] * value; - tempvar value = (column1 - oods_values[21]) / (point - pow58 * oods_point); + tempvar value = (column1 - oods_values[21]) / (point - pow61 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[21] * value; - tempvar value = (column1 - oods_values[22]) / (point - pow59 * oods_point); + tempvar value = (column1 - oods_values[22]) / (point - pow62 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[22] * value; - tempvar value = (column1 - oods_values[23]) / (point - pow61 * oods_point); + tempvar value = (column1 - oods_values[23]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[23] * value; - tempvar value = (column1 - oods_values[24]) / (point - pow65 * oods_point); + tempvar value = (column1 - oods_values[24]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[24] * value; - tempvar value = (column1 - oods_values[25]) / (point - pow67 * oods_point); + tempvar value = (column1 - oods_values[25]) / (point - pow70 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[25] * value; - tempvar value = (column1 - oods_values[26]) / (point - pow69 * oods_point); + tempvar value = (column1 - oods_values[26]) / (point - pow72 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[26] * value; - tempvar value = (column1 - oods_values[27]) / (point - pow72 * oods_point); + tempvar value = (column1 - oods_values[27]) / (point - pow77 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[27] * value; - tempvar value = (column1 - oods_values[28]) / (point - pow75 * oods_point); + tempvar value = (column1 - oods_values[28]) / (point - pow79 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[28] * value; - tempvar value = (column1 - oods_values[29]) / (point - pow77 * oods_point); + tempvar value = (column1 - oods_values[29]) / (point - pow83 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[29] * value; - tempvar value = (column1 - oods_values[30]) / (point - pow80 * oods_point); + tempvar value = (column1 - oods_values[30]) / (point - pow85 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[30] * value; - tempvar value = (column1 - oods_values[31]) / (point - pow82 * oods_point); + tempvar value = (column1 - oods_values[31]) / (point - pow87 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[31] * value; - tempvar value = (column1 - oods_values[32]) / (point - pow85 * oods_point); + tempvar value = (column1 - oods_values[32]) / (point - pow89 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[32] * value; - tempvar value = (column1 - oods_values[33]) / (point - pow89 * oods_point); + tempvar value = (column1 - oods_values[33]) / (point - pow92 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[33] * value; - tempvar value = (column1 - oods_values[34]) / (point - pow92 * oods_point); + tempvar value = (column1 - oods_values[34]) / (point - pow94 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[34] * value; - tempvar value = (column1 - oods_values[35]) / (point - pow94 * oods_point); + tempvar value = (column1 - oods_values[35]) / (point - pow96 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[35] * value; - tempvar value = (column1 - oods_values[36]) / (point - pow97 * oods_point); + tempvar value = (column1 - oods_values[36]) / (point - pow98 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[36] * value; - tempvar value = (column1 - oods_values[37]) / (point - pow99 * oods_point); + tempvar value = (column1 - oods_values[37]) / (point - pow100 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[37] * value; tempvar value = (column1 - oods_values[38]) / (point - pow101 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[38] * value; - tempvar value = (column1 - oods_values[39]) / (point - pow109 * oods_point); + tempvar value = (column1 - oods_values[39]) / (point - pow107 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[39] * value; - tempvar value = (column1 - oods_values[40]) / (point - pow132 * oods_point); + tempvar value = (column1 - oods_values[40]) / (point - pow128 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[40] * value; - tempvar value = (column1 - oods_values[41]) / (point - pow139 * oods_point); + tempvar value = (column1 - oods_values[41]) / (point - pow134 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[41] * value; - tempvar value = (column1 - oods_values[42]) / (point - pow147 * oods_point); + tempvar value = (column1 - oods_values[42]) / (point - pow144 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[42] * value; - tempvar value = (column1 - oods_values[43]) / (point - pow149 * oods_point); + tempvar value = (column1 - oods_values[43]) / (point - pow146 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[43] * value; - tempvar value = (column1 - oods_values[44]) / (point - pow152 * oods_point); + tempvar value = (column1 - oods_values[44]) / (point - pow148 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[44] * value; - tempvar value = (column1 - oods_values[45]) / (point - pow153 * oods_point); + tempvar value = (column1 - oods_values[45]) / (point - pow149 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[45] * value; - tempvar value = (column1 - oods_values[46]) / (point - pow154 * oods_point); + tempvar value = (column1 - oods_values[46]) / (point - pow150 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[46] * value; - tempvar value = (column1 - oods_values[47]) / (point - pow156 * oods_point); + tempvar value = (column1 - oods_values[47]) / (point - pow151 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[47] * value; - tempvar value = (column1 - oods_values[48]) / (point - pow158 * oods_point); + tempvar value = (column1 - oods_values[48]) / (point - pow153 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[48] * value; - tempvar value = (column1 - oods_values[49]) / (point - pow159 * oods_point); + tempvar value = (column1 - oods_values[49]) / (point - pow154 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[49] * value; - tempvar value = (column1 - oods_values[50]) / (point - pow166 * oods_point); + tempvar value = (column1 - oods_values[50]) / (point - pow161 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[50] * value; - tempvar value = (column1 - oods_values[51]) / (point - pow168 * oods_point); + tempvar value = (column1 - oods_values[51]) / (point - pow164 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[51] * value; - tempvar value = (column1 - oods_values[52]) / (point - pow169 * oods_point); + tempvar value = (column1 - oods_values[52]) / (point - pow165 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[52] * value; - tempvar value = (column1 - oods_values[53]) / (point - pow170 * oods_point); + tempvar value = (column1 - oods_values[53]) / (point - pow167 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[53] * value; - tempvar value = (column1 - oods_values[54]) / (point - pow175 * oods_point); + tempvar value = (column1 - oods_values[54]) / (point - pow169 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[54] * value; - tempvar value = (column1 - oods_values[55]) / (point - pow177 * oods_point); + tempvar value = (column1 - oods_values[55]) / (point - pow171 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[55] * value; - tempvar value = (column1 - oods_values[56]) / (point - pow192 * oods_point); + tempvar value = (column1 - oods_values[56]) / (point - pow178 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[56] * value; - tempvar value = (column1 - oods_values[57]) / (point - pow195 * oods_point); + tempvar value = (column1 - oods_values[57]) / (point - pow185 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[57] * value; - tempvar value = (column1 - oods_values[58]) / (point - pow197 * oods_point); + tempvar value = (column1 - oods_values[58]) / (point - pow186 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[58] * value; - tempvar value = (column1 - oods_values[59]) / (point - pow201 * oods_point); + tempvar value = (column1 - oods_values[59]) / (point - pow189 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[59] * value; - tempvar value = (column1 - oods_values[60]) / (point - pow203 * oods_point); + tempvar value = (column1 - oods_values[60]) / (point - pow192 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[60] * value; - tempvar value = (column1 - oods_values[61]) / (point - pow204 * oods_point); + tempvar value = (column1 - oods_values[61]) / (point - pow193 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[61] * value; - tempvar value = (column1 - oods_values[62]) / (point - pow206 * oods_point); + tempvar value = (column1 - oods_values[62]) / (point - pow194 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[62] * value; - tempvar value = (column1 - oods_values[63]) / (point - pow207 * oods_point); + tempvar value = (column1 - oods_values[63]) / (point - pow196 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[63] * value; - tempvar value = (column1 - oods_values[64]) / (point - pow210 * oods_point); + tempvar value = (column1 - oods_values[64]) / (point - pow202 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[64] * value; - tempvar value = (column1 - oods_values[65]) / (point - pow211 * oods_point); + tempvar value = (column1 - oods_values[65]) / (point - pow199 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[65] * value; - tempvar value = (column1 - oods_values[66]) / (point - pow212 * oods_point); + tempvar value = (column1 - oods_values[66]) / (point - pow195 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[66] * value; - tempvar value = (column1 - oods_values[67]) / (point - pow213 * oods_point); + tempvar value = (column1 - oods_values[67]) / (point - pow200 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[67] * value; - tempvar value = (column1 - oods_values[68]) / (point - pow214 * oods_point); + tempvar value = (column1 - oods_values[68]) / (point - pow201 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[68] * value; - tempvar value = (column1 - oods_values[69]) / (point - pow215 * oods_point); + tempvar value = (column1 - oods_values[69]) / (point - pow203 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[69] * value; - tempvar value = (column1 - oods_values[70]) / (point - pow218 * oods_point); + tempvar value = (column1 - oods_values[70]) / (point - pow208 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[70] * value; - tempvar value = (column1 - oods_values[71]) / (point - pow219 * oods_point); + tempvar value = (column1 - oods_values[71]) / (point - pow206 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[71] * value; - tempvar value = (column1 - oods_values[72]) / (point - pow220 * oods_point); + tempvar value = (column1 - oods_values[72]) / (point - pow207 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[72] * value; - tempvar value = (column1 - oods_values[73]) / (point - pow221 * oods_point); + tempvar value = (column1 - oods_values[73]) / (point - pow209 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[73] * value; - tempvar value = (column1 - oods_values[74]) / (point - pow224 * oods_point); + tempvar value = (column1 - oods_values[74]) / (point - pow212 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[74] * value; - tempvar value = (column1 - oods_values[75]) / (point - pow225 * oods_point); + tempvar value = (column1 - oods_values[75]) / (point - pow214 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[75] * value; - tempvar value = (column1 - oods_values[76]) / (point - pow226 * oods_point); + tempvar value = (column1 - oods_values[76]) / (point - pow215 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[76] * value; - tempvar value = (column1 - oods_values[77]) / (point - pow232 * oods_point); + tempvar value = (column1 - oods_values[77]) / (point - pow218 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[77] * value; - tempvar value = (column1 - oods_values[78]) / (point - pow235 * oods_point); + tempvar value = (column1 - oods_values[78]) / (point - pow225 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[78] * value; - tempvar value = (column1 - oods_values[79]) / (point - pow236 * oods_point); + tempvar value = (column1 - oods_values[79]) / (point - pow227 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[79] * value; - tempvar value = (column1 - oods_values[80]) / (point - pow240 * oods_point); + tempvar value = (column1 - oods_values[80]) / (point - pow226 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[80] * value; - tempvar value = (column1 - oods_values[81]) / (point - pow249 * oods_point); + tempvar value = (column1 - oods_values[81]) / (point - pow237 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[81] * value; - tempvar value = (column1 - oods_values[82]) / (point - pow252 * oods_point); + tempvar value = (column1 - oods_values[82]) / (point - pow240 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[82] * value; - tempvar value = (column1 - oods_values[83]) / (point - pow254 * oods_point); + tempvar value = (column1 - oods_values[83]) / (point - pow247 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[83] * value; - tempvar value = (column1 - oods_values[84]) / (point - pow255 * oods_point); + tempvar value = (column1 - oods_values[84]) / (point - pow250 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[84] * value; - tempvar value = (column1 - oods_values[85]) / (point - pow257 * oods_point); + tempvar value = (column1 - oods_values[85]) / (point - pow243 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[85] * value; - tempvar value = (column1 - oods_values[86]) / (point - pow259 * oods_point); + tempvar value = (column1 - oods_values[86]) / (point - pow246 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[86] * value; - tempvar value = (column1 - oods_values[87]) / (point - pow262 * oods_point); + tempvar value = (column1 - oods_values[87]) / (point - pow251 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[87] * value; - tempvar value = (column1 - oods_values[88]) / (point - pow265 * oods_point); + tempvar value = (column1 - oods_values[88]) / (point - pow254 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[88] * value; - tempvar value = (column1 - oods_values[89]) / (point - pow267 * oods_point); + tempvar value = (column1 - oods_values[89]) / (point - pow255 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[89] * value; - tempvar value = (column1 - oods_values[90]) / (point - pow268 * oods_point); + tempvar value = (column1 - oods_values[90]) / (point - pow262 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[90] * value; - tempvar value = (column1 - oods_values[91]) / (point - pow272 * oods_point); + tempvar value = (column1 - oods_values[91]) / (point - pow256 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[91] * value; - tempvar value = (column1 - oods_values[92]) / (point - pow274 * oods_point); + tempvar value = (column1 - oods_values[92]) / (point - pow257 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[92] * value; - tempvar value = (column1 - oods_values[93]) / (point - pow275 * oods_point); + tempvar value = (column1 - oods_values[93]) / (point - pow267 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[93] * value; - tempvar value = (column1 - oods_values[94]) / (point - pow278 * oods_point); + tempvar value = (column1 - oods_values[94]) / (point - pow270 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[94] * value; - tempvar value = (column1 - oods_values[95]) / (point - pow279 * oods_point); + tempvar value = (column1 - oods_values[95]) / (point - pow271 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[95] * value; - tempvar value = (column1 - oods_values[96]) / (point - pow280 * oods_point); + tempvar value = (column1 - oods_values[96]) / (point - pow272 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[96] * value; - tempvar value = (column1 - oods_values[97]) / (point - pow283 * oods_point); + tempvar value = (column1 - oods_values[97]) / (point - pow275 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[97] * value; - tempvar value = (column1 - oods_values[98]) / (point - pow284 * oods_point); + tempvar value = (column1 - oods_values[98]) / (point - pow276 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[98] * value; - tempvar value = (column1 - oods_values[99]) / (point - pow287 * oods_point); + tempvar value = (column1 - oods_values[99]) / (point - pow279 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[99] * value; - tempvar value = (column1 - oods_values[100]) / (point - pow291 * oods_point); + tempvar value = (column1 - oods_values[100]) / (point - pow280 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[100] * value; - tempvar value = (column1 - oods_values[101]) / (point - pow293 * oods_point); + tempvar value = (column1 - oods_values[101]) / (point - pow285 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[101] * value; - tempvar value = (column1 - oods_values[102]) / (point - pow294 * oods_point); + tempvar value = (column1 - oods_values[102]) / (point - pow287 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[102] * value; - tempvar value = (column1 - oods_values[103]) / (point - pow296 * oods_point); + tempvar value = (column1 - oods_values[103]) / (point - pow283 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[103] * value; - tempvar value = (column1 - oods_values[104]) / (point - pow297 * oods_point); + tempvar value = (column1 - oods_values[104]) / (point - pow289 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[104] * value; - tempvar value = (column1 - oods_values[105]) / (point - pow298 * oods_point); + tempvar value = (column1 - oods_values[105]) / (point - pow291 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[105] * value; - tempvar value = (column1 - oods_values[106]) / (point - pow302 * oods_point); + tempvar value = (column1 - oods_values[106]) / (point - pow294 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[106] * value; - tempvar value = (column1 - oods_values[107]) / (point - pow309 * oods_point); + tempvar value = (column1 - oods_values[107]) / (point - pow303 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[107] * value; - tempvar value = (column1 - oods_values[108]) / (point - pow312 * oods_point); + tempvar value = (column1 - oods_values[108]) / (point - pow307 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[108] * value; tempvar value = (column1 - oods_values[109]) / (point - pow310 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[109] * value; - tempvar value = (column1 - oods_values[110]) / (point - pow314 * oods_point); + tempvar value = (column1 - oods_values[110]) / (point - pow337 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[110] * value; - tempvar value = (column1 - oods_values[111]) / (point - pow311 * oods_point); + tempvar value = (column1 - oods_values[111]) / (point - pow309 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[111] * value; - tempvar value = (column1 - oods_values[112]) / (point - pow315 * oods_point); + tempvar value = (column1 - oods_values[112]) / (point - pow312 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[112] * value; - tempvar value = (column1 - oods_values[113]) / (point - pow318 * oods_point); + tempvar value = (column1 - oods_values[113]) / (point - pow316 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[113] * value; - tempvar value = (column1 - oods_values[114]) / (point - pow324 * oods_point); + tempvar value = (column1 - oods_values[114]) / (point - pow322 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[114] * value; - tempvar value = (column1 - oods_values[115]) / (point - pow319 * oods_point); + tempvar value = (column1 - oods_values[115]) / (point - pow314 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[115] * value; - tempvar value = (column1 - oods_values[116]) / (point - pow325 * oods_point); + tempvar value = (column1 - oods_values[116]) / (point - pow321 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[116] * value; - tempvar value = (column1 - oods_values[117]) / (point - pow320 * oods_point); + tempvar value = (column1 - oods_values[117]) / (point - pow299 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[117] * value; - tempvar value = (column1 - oods_values[118]) / (point - pow326 * oods_point); + tempvar value = (column1 - oods_values[118]) / (point - pow317 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[118] * value; - tempvar value = (column1 - oods_values[119]) / (point - pow321 * oods_point); + tempvar value = (column1 - oods_values[119]) / (point - pow300 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[119] * value; - tempvar value = (column1 - oods_values[120]) / (point - pow327 * oods_point); + tempvar value = (column1 - oods_values[120]) / (point - pow318 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[120] * value; - tempvar value = (column1 - oods_values[121]) / (point - pow322 * oods_point); + tempvar value = (column1 - oods_values[121]) / (point - pow301 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[121] * value; - tempvar value = (column1 - oods_values[122]) / (point - pow328 * oods_point); + tempvar value = (column1 - oods_values[122]) / (point - pow319 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[122] * value; - tempvar value = (column1 - oods_values[123]) / (point - pow323 * oods_point); + tempvar value = (column1 - oods_values[123]) / (point - pow302 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[123] * value; - tempvar value = (column1 - oods_values[124]) / (point - pow329 * oods_point); + tempvar value = (column1 - oods_values[124]) / (point - pow320 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[124] * value; - tempvar value = (column1 - oods_values[125]) / (point - pow331 * oods_point); + tempvar value = (column1 - oods_values[125]) / (point - pow324 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[125] * value; - tempvar value = (column1 - oods_values[126]) / (point - pow332 * oods_point); + tempvar value = (column1 - oods_values[126]) / (point - pow325 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[126] * value; - tempvar value = (column1 - oods_values[127]) / (point - pow333 * oods_point); + tempvar value = (column1 - oods_values[127]) / (point - pow326 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[127] * value; - tempvar value = (column1 - oods_values[128]) / (point - pow340 * oods_point); + tempvar value = (column1 - oods_values[128]) / (point - pow335 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[128] * value; - tempvar value = (column1 - oods_values[129]) / (point - pow334 * oods_point); + tempvar value = (column1 - oods_values[129]) / (point - pow327 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[129] * value; - tempvar value = (column1 - oods_values[130]) / (point - pow335 * oods_point); + tempvar value = (column1 - oods_values[130]) / (point - pow328 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[130] * value; - tempvar value = (column1 - oods_values[131]) / (point - pow336 * oods_point); + tempvar value = (column1 - oods_values[131]) / (point - pow329 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[131] * value; - tempvar value = (column1 - oods_values[132]) / (point - pow348 * oods_point); + tempvar value = (column1 - oods_values[132]) / (point - pow334 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[132] * value; - tempvar value = (column1 - oods_values[133]) / (point - pow337 * oods_point); + tempvar value = (column1 - oods_values[133]) / (point - pow330 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[133] * value; - tempvar value = (column1 - oods_values[134]) / (point - pow338 * oods_point); + tempvar value = (column1 - oods_values[134]) / (point - pow331 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[134] * value; - tempvar value = (column1 - oods_values[135]) / (point - pow344 * oods_point); + tempvar value = (column1 - oods_values[135]) / (point - pow311 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[135] * value; - tempvar value = (column1 - oods_values[136]) / (point - pow345 * oods_point); + tempvar value = (column1 - oods_values[136]) / (point - pow332 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[136] * value; - tempvar value = (column1 - oods_values[137]) / (point - pow346 * oods_point); + tempvar value = (column1 - oods_values[137]) / (point - pow333 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[137] * value; - tempvar value = (column1 - oods_values[138]) / (point - pow349 * oods_point); + tempvar value = (column1 - oods_values[138]) / (point - pow338 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[138] * value; - tempvar value = (column1 - oods_values[139]) / (point - pow352 * oods_point); + tempvar value = (column1 - oods_values[139]) / (point - pow340 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[139] * value; - tempvar value = (column1 - oods_values[140]) / (point - pow370 * oods_point); + tempvar value = (column1 - oods_values[140]) / (point - pow355 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[140] * value; - tempvar value = (column1 - oods_values[141]) / (point - pow353 * oods_point); + tempvar value = (column1 - oods_values[141]) / (point - pow341 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[141] * value; - tempvar value = (column1 - oods_values[142]) / (point - pow371 * oods_point); + tempvar value = (column1 - oods_values[142]) / (point - pow356 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[142] * value; - tempvar value = (column1 - oods_values[143]) / (point - pow354 * oods_point); + tempvar value = (column1 - oods_values[143]) / (point - pow342 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[143] * value; - tempvar value = (column1 - oods_values[144]) / (point - pow355 * oods_point); + tempvar value = (column1 - oods_values[144]) / (point - pow343 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[144] * value; - tempvar value = (column1 - oods_values[145]) / (point - pow356 * oods_point); + tempvar value = (column1 - oods_values[145]) / (point - pow344 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[145] * value; - tempvar value = (column1 - oods_values[146]) / (point - pow372 * oods_point); + tempvar value = (column1 - oods_values[146]) / (point - pow359 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[146] * value; - tempvar value = (column1 - oods_values[147]) / (point - pow357 * oods_point); + tempvar value = (column1 - oods_values[147]) / (point - pow345 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[147] * value; - tempvar value = (column1 - oods_values[148]) / (point - pow373 * oods_point); + tempvar value = (column1 - oods_values[148]) / (point - pow360 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[148] * value; - tempvar value = (column1 - oods_values[149]) / (point - pow358 * oods_point); + tempvar value = (column1 - oods_values[149]) / (point - pow347 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[149] * value; - tempvar value = (column1 - oods_values[150]) / (point - pow374 * oods_point); + tempvar value = (column1 - oods_values[150]) / (point - pow361 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[150] * value; - tempvar value = (column1 - oods_values[151]) / (point - pow359 * oods_point); + tempvar value = (column1 - oods_values[151]) / (point - pow348 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[151] * value; - tempvar value = (column1 - oods_values[152]) / (point - pow360 * oods_point); + tempvar value = (column1 - oods_values[152]) / (point - pow349 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[152] * value; - tempvar value = (column1 - oods_values[153]) / (point - pow361 * oods_point); + tempvar value = (column1 - oods_values[153]) / (point - pow350 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[153] * value; - tempvar value = (column1 - oods_values[154]) / (point - pow375 * oods_point); + tempvar value = (column1 - oods_values[154]) / (point - pow362 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[154] * value; - tempvar value = (column1 - oods_values[155]) / (point - pow362 * oods_point); + tempvar value = (column1 - oods_values[155]) / (point - pow351 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[155] * value; - tempvar value = (column1 - oods_values[156]) / (point - pow363 * oods_point); + tempvar value = (column1 - oods_values[156]) / (point - pow352 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[156] * value; - tempvar value = (column1 - oods_values[157]) / (point - pow364 * oods_point); + tempvar value = (column1 - oods_values[157]) / (point - pow353 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[157] * value; - tempvar value = (column1 - oods_values[158]) / (point - pow376 * oods_point); + tempvar value = (column1 - oods_values[158]) / (point - pow363 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[158] * value; - tempvar value = (column1 - oods_values[159]) / (point - pow365 * oods_point); + tempvar value = (column1 - oods_values[159]) / (point - pow354 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[159] * value; - tempvar value = (column1 - oods_values[160]) / (point - pow366 * oods_point); + tempvar value = (column1 - oods_values[160]) / (point - pow357 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[160] * value; - tempvar value = (column1 - oods_values[161]) / (point - pow367 * oods_point); + tempvar value = (column1 - oods_values[161]) / (point - pow358 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[161] * value; - tempvar value = (column1 - oods_values[162]) / (point - pow377 * oods_point); + tempvar value = (column1 - oods_values[162]) / (point - pow364 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[162] * value; - tempvar value = (column1 - oods_values[163]) / (point - pow368 * oods_point); + tempvar value = (column1 - oods_values[163]) / (point - pow367 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[163] * value; - tempvar value = (column1 - oods_values[164]) / (point - pow380 * oods_point); + tempvar value = (column1 - oods_values[164]) / (point - pow368 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[164] * value; - tempvar value = (column1 - oods_values[165]) / (point - pow381 * oods_point); + tempvar value = (column1 - oods_values[165]) / (point - pow369 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[165] * value; - tempvar value = (column1 - oods_values[166]) / (point - pow384 * oods_point); + tempvar value = (column1 - oods_values[166]) / (point - pow373 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[166] * value; - tempvar value = (column1 - oods_values[167]) / (point - pow382 * oods_point); + tempvar value = (column1 - oods_values[167]) / (point - pow370 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[167] * value; - tempvar value = (column1 - oods_values[168]) / (point - pow383 * oods_point); + tempvar value = (column1 - oods_values[168]) / (point - pow371 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[168] * value; - tempvar value = (column1 - oods_values[169]) / (point - pow385 * oods_point); + tempvar value = (column1 - oods_values[169]) / (point - pow372 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[169] * value; - tempvar value = (column1 - oods_values[170]) / (point - pow386 * oods_point); + tempvar value = (column1 - oods_values[170]) / (point - pow374 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[170] * value; - tempvar value = (column1 - oods_values[171]) / (point - pow389 * oods_point); + tempvar value = (column1 - oods_values[171]) / (point - pow376 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[171] * value; - tempvar value = (column1 - oods_values[172]) / (point - pow390 * oods_point); + tempvar value = (column1 - oods_values[172]) / (point - pow377 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[172] * value; - tempvar value = (column1 - oods_values[173]) / (point - pow391 * oods_point); + tempvar value = (column1 - oods_values[173]) / (point - pow378 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[173] * value; - tempvar value = (column1 - oods_values[174]) / (point - pow392 * oods_point); + tempvar value = (column1 - oods_values[174]) / (point - pow391 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[174] * value; - tempvar value = (column1 - oods_values[175]) / (point - pow396 * oods_point); + tempvar value = (column1 - oods_values[175]) / (point - pow380 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[175] * value; - tempvar value = (column1 - oods_values[176]) / (point - pow397 * oods_point); + tempvar value = (column1 - oods_values[176]) / (point - pow381 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[176] * value; - tempvar value = (column1 - oods_values[177]) / (point - pow398 * oods_point); + tempvar value = (column1 - oods_values[177]) / (point - pow382 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[177] * value; - tempvar value = (column1 - oods_values[178]) / (point - pow403 * oods_point); + tempvar value = (column1 - oods_values[178]) / (point - pow392 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[178] * value; - tempvar value = (column1 - oods_values[179]) / (point - pow399 * oods_point); + tempvar value = (column1 - oods_values[179]) / (point - pow387 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[179] * value; - tempvar value = (column1 - oods_values[180]) / (point - pow400 * oods_point); + tempvar value = (column1 - oods_values[180]) / (point - pow388 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[180] * value; - tempvar value = (column1 - oods_values[181]) / (point - pow401 * oods_point); + tempvar value = (column1 - oods_values[181]) / (point - pow389 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[181] * value; - tempvar value = (column1 - oods_values[182]) / (point - pow404 * oods_point); + tempvar value = (column1 - oods_values[182]) / (point - pow393 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[182] * value; - tempvar value = (column1 - oods_values[183]) / (point - pow409 * oods_point); + tempvar value = (column1 - oods_values[183]) / (point - pow457 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[183] * value; - tempvar value = (column1 - oods_values[184]) / (point - pow410 * oods_point); + tempvar value = (column1 - oods_values[184]) / (point - pow397 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[184] * value; - tempvar value = (column1 - oods_values[185]) / (point - pow412 * oods_point); + tempvar value = (column1 - oods_values[185]) / (point - pow405 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[185] * value; - tempvar value = (column1 - oods_values[186]) / (point - pow151 * oods_point); + tempvar value = (column1 - oods_values[186]) / (point - pow415 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[186] * value; - tempvar value = (column1 - oods_values[187]) / (point - pow488 * oods_point); + tempvar value = (column1 - oods_values[187]) / (point - pow473 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[187] * value; - tempvar value = (column1 - oods_values[188]) / (point - pow485 * oods_point); + tempvar value = (column1 - oods_values[188]) / (point - pow472 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[188] * value; - tempvar value = (column1 - oods_values[189]) / (point - pow486 * oods_point); + tempvar value = (column1 - oods_values[189]) / (point - pow471 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[189] * value; - tempvar value = (column1 - oods_values[190]) / (point - pow487 * oods_point); + tempvar value = (column1 - oods_values[190]) / (point - pow470 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[190] * value; - tempvar value = (column1 - oods_values[191]) / (point - pow482 * oods_point); + tempvar value = (column1 - oods_values[191]) / (point - pow465 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[191] * value; - tempvar value = (column1 - oods_values[192]) / (point - pow483 * oods_point); + tempvar value = (column1 - oods_values[192]) / (point - pow468 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[192] * value; - tempvar value = (column1 - oods_values[193]) / (point - pow484 * oods_point); + tempvar value = (column1 - oods_values[193]) / (point - pow469 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[193] * value; - tempvar value = (column1 - oods_values[194]) / (point - pow481 * oods_point); + tempvar value = (column1 - oods_values[194]) / (point - pow463 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[194] * value; - tempvar value = (column1 - oods_values[195]) / (point - pow476 * oods_point); + tempvar value = (column1 - oods_values[195]) / (point - pow466 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[195] * value; - tempvar value = (column1 - oods_values[196]) / (point - pow477 * oods_point); + tempvar value = (column1 - oods_values[196]) / (point - pow467 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[196] * value; - tempvar value = (column1 - oods_values[197]) / (point - pow480 * oods_point); + tempvar value = (column1 - oods_values[197]) / (point - pow483 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[197] * value; - tempvar value = (column1 - oods_values[198]) / (point - pow503 * oods_point); + tempvar value = (column1 - oods_values[198]) / (point - pow484 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[198] * value; - tempvar value = (column1 - oods_values[199]) / (point - pow478 * oods_point); + tempvar value = (column1 - oods_values[199]) / (point - pow464 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[199] * value; - tempvar value = (column1 - oods_values[200]) / (point - pow479 * oods_point); + tempvar value = (column1 - oods_values[200]) / (point - pow462 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[200] * value; - tempvar value = (column1 - oods_values[201]) / (point - pow497 * oods_point); + tempvar value = (column1 - oods_values[201]) / (point - pow487 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[201] * value; - tempvar value = (column1 - oods_values[202]) / (point - pow498 * oods_point); + tempvar value = (column1 - oods_values[202]) / (point - pow488 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[202] * value; - tempvar value = (column1 - oods_values[203]) / (point - pow52 * oods_point); + tempvar value = (column1 - oods_values[203]) / (point - pow55 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[203] * value; - tempvar value = (column1 - oods_values[204]) / (point - pow157 * oods_point); + tempvar value = (column1 - oods_values[204]) / (point - pow152 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[204] * value; - tempvar value = (column1 - oods_values[205]) / (point - pow51 * oods_point); + tempvar value = (column1 - oods_values[205]) / (point - pow54 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[205] * value; - tempvar value = (column1 - oods_values[206]) / (point - pow50 * oods_point); + tempvar value = (column1 - oods_values[206]) / (point - pow53 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[206] * value; - tempvar value = (column1 - oods_values[207]) / (point - pow511 * oods_point); + tempvar value = (column1 - oods_values[207]) / (point - pow581 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[207] * value; - tempvar value = (column1 - oods_values[208]) / (point - pow513 * oods_point); + tempvar value = (column1 - oods_values[208]) / (point - pow589 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[208] * value; - tempvar value = (column1 - oods_values[209]) / (point - pow519 * oods_point); + tempvar value = (column1 - oods_values[209]) / (point - pow597 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[209] * value; - tempvar value = (column1 - oods_values[210]) / (point - pow520 * oods_point); + tempvar value = (column1 - oods_values[210]) / (point - pow619 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[210] * value; - tempvar value = (column1 - oods_values[211]) / (point - pow517 * oods_point); + tempvar value = (column1 - oods_values[211]) / (point - pow577 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[211] * value; - tempvar value = (column1 - oods_values[212]) / (point - pow518 * oods_point); + tempvar value = (column1 - oods_values[212]) / (point - pow566 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[212] * value; - tempvar value = (column1 - oods_values[213]) / (point - pow528 * oods_point); + tempvar value = (column1 - oods_values[213]) / (point - pow553 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[213] * value; - tempvar value = (column1 - oods_values[214]) / (point - pow531 * oods_point); + tempvar value = (column1 - oods_values[214]) / (point - pow554 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[214] * value; - tempvar value = (column1 - oods_values[215]) / (point - pow527 * oods_point); + tempvar value = (column1 - oods_values[215]) / (point - pow551 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[215] * value; - tempvar value = (column1 - oods_values[216]) / (point - pow526 * oods_point); + tempvar value = (column1 - oods_values[216]) / (point - pow550 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[216] * value; - tempvar value = (column1 - oods_values[217]) / (point - pow49 * oods_point); + tempvar value = (column1 - oods_values[217]) / (point - pow556 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[217] * value; - tempvar value = (column1 - oods_values[218]) / (point - pow529 * oods_point); + tempvar value = (column1 - oods_values[218]) / (point - pow557 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[218] * value; - tempvar value = (column1 - oods_values[219]) / (point - pow530 * oods_point); + tempvar value = (column1 - oods_values[219]) / (point - pow558 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[219] * value; - tempvar value = (column1 - oods_values[220]) / (point - pow48 * oods_point); + tempvar value = (column1 - oods_values[220]) / (point - pow52 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[220] * value; - tempvar value = (column1 - oods_values[221]) / (point - pow107 * oods_point); + tempvar value = (column1 - oods_values[221]) / (point - pow106 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[221] * value; - tempvar value = (column1 - oods_values[222]) / (point - pow138 * oods_point); + tempvar value = (column1 - oods_values[222]) / (point - pow133 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[222] * value; - tempvar value = (column1 - oods_values[223]) / (point - pow47 * oods_point); + tempvar value = (column1 - oods_values[223]) / (point - pow51 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[223] * value; - tempvar value = (column1 - oods_values[224]) / (point - pow46 * oods_point); + tempvar value = (column1 - oods_values[224]) / (point - pow50 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[224] * value; - tempvar value = (column1 - oods_values[225]) / (point - pow45 * oods_point); + tempvar value = (column1 - oods_values[225]) / (point - pow49 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[225] * value; - tempvar value = (column1 - oods_values[226]) / (point - pow44 * oods_point); + tempvar value = (column1 - oods_values[226]) / (point - pow48 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[226] * value; - tempvar value = (column1 - oods_values[227]) / (point - pow536 * oods_point); + tempvar value = (column1 - oods_values[227]) / (point - pow583 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[227] * value; - tempvar value = (column1 - oods_values[228]) / (point - pow537 * oods_point); + tempvar value = (column1 - oods_values[228]) / (point - pow592 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[228] * value; - tempvar value = (column1 - oods_values[229]) / (point - pow546 * oods_point); + tempvar value = (column1 - oods_values[229]) / (point - pow598 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[229] * value; - tempvar value = (column1 - oods_values[230]) / (point - pow547 * oods_point); + tempvar value = (column1 - oods_values[230]) / (point - pow620 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[230] * value; - tempvar value = (column1 - oods_values[231]) / (point - pow538 * oods_point); + tempvar value = (column1 - oods_values[231]) / (point - pow578 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[231] * value; - tempvar value = (column1 - oods_values[232]) / (point - pow539 * oods_point); + tempvar value = (column1 - oods_values[232]) / (point - pow567 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[232] * value; - tempvar value = (column1 - oods_values[233]) / (point - pow43 * oods_point); + tempvar value = (column1 - oods_values[233]) / (point - pow47 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[233] * value; - tempvar value = (column1 - oods_values[234]) / (point - pow42 * oods_point); + tempvar value = (column1 - oods_values[234]) / (point - pow46 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[234] * value; - tempvar value = (column1 - oods_values[235]) / (point - pow41 * oods_point); + tempvar value = (column1 - oods_values[235]) / (point - pow45 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[235] * value; - tempvar value = (column1 - oods_values[236]) / (point - pow40 * oods_point); + tempvar value = (column1 - oods_values[236]) / (point - pow44 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[236] * value; - tempvar value = (column1 - oods_values[237]) / (point - pow414 * oods_point); + tempvar value = (column1 - oods_values[237]) / (point - pow456 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[237] * value; - tempvar value = (column1 - oods_values[238]) / (point - pow369 * oods_point); + tempvar value = (column1 - oods_values[238]) / (point - pow346 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[238] * value; - tempvar value = (column1 - oods_values[239]) / (point - pow558 * oods_point); + tempvar value = (column1 - oods_values[239]) / (point - pow533 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[239] * value; - tempvar value = (column1 - oods_values[240]) / (point - pow560 * oods_point); + tempvar value = (column1 - oods_values[240]) / (point - pow535 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[240] * value; - tempvar value = (column1 - oods_values[241]) / (point - pow559 * oods_point); + tempvar value = (column1 - oods_values[241]) / (point - pow534 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[241] * value; - tempvar value = (column1 - oods_values[242]) / (point - pow557 * oods_point); + tempvar value = (column1 - oods_values[242]) / (point - pow532 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[242] * value; - tempvar value = (column1 - oods_values[243]) / (point - pow39 * oods_point); + tempvar value = (column1 - oods_values[243]) / (point - pow43 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[243] * value; - tempvar value = (column1 - oods_values[244]) / (point - pow545 * oods_point); + tempvar value = (column1 - oods_values[244]) / (point - pow579 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[244] * value; - tempvar value = (column1 - oods_values[245]) / (point - pow38 * oods_point); + tempvar value = (column1 - oods_values[245]) / (point - pow42 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[245] * value; - tempvar value = (column1 - oods_values[246]) / (point - pow55 * oods_point); + tempvar value = (column1 - oods_values[246]) / (point - pow58 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[246] * value; - tempvar value = (column1 - oods_values[247]) / (point - pow540 * oods_point); + tempvar value = (column1 - oods_values[247]) / (point - pow568 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[247] * value; - tempvar value = (column1 - oods_values[248]) / (point - pow542 * oods_point); + tempvar value = (column1 - oods_values[248]) / (point - pow569 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[248] * value; - tempvar value = (column1 - oods_values[249]) / (point - pow543 * oods_point); + tempvar value = (column1 - oods_values[249]) / (point - pow570 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[249] * value; - tempvar value = (column1 - oods_values[250]) / (point - pow37 * oods_point); + tempvar value = (column1 - oods_values[250]) / (point - pow41 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[250] * value; - tempvar value = (column1 - oods_values[251]) / (point - pow106 * oods_point); + tempvar value = (column1 - oods_values[251]) / (point - pow105 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[251] * value; - tempvar value = (column1 - oods_values[252]) / (point - pow137 * oods_point); + tempvar value = (column1 - oods_values[252]) / (point - pow132 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[252] * value; - tempvar value = (column1 - oods_values[253]) / (point - pow36 * oods_point); + tempvar value = (column1 - oods_values[253]) / (point - pow40 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[253] * value; - tempvar value = (column1 - oods_values[254]) / (point - pow516 * oods_point); + tempvar value = (column1 - oods_values[254]) / (point - pow594 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[254] * value; - tempvar value = (column1 - oods_values[255]) / (point - pow541 * oods_point); + tempvar value = (column1 - oods_values[255]) / (point - pow595 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[255] * value; - tempvar value = (column1 - oods_values[256]) / (point - pow544 * oods_point); + tempvar value = (column1 - oods_values[256]) / (point - pow596 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[256] * value; - tempvar value = (column1 - oods_values[257]) / (point - pow458 * oods_point); + tempvar value = (column1 - oods_values[257]) / (point - pow527 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[257] * value; - tempvar value = (column1 - oods_values[258]) / (point - pow459 * oods_point); + tempvar value = (column1 - oods_values[258]) / (point - pow530 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[258] * value; - tempvar value = (column1 - oods_values[259]) / (point - pow460 * oods_point); + tempvar value = (column1 - oods_values[259]) / (point - pow531 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[259] * value; - tempvar value = (column1 - oods_values[260]) / (point - pow512 * oods_point); + tempvar value = (column1 - oods_values[260]) / (point - pow582 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[260] * value; - tempvar value = (column1 - oods_values[261]) / (point - pow35 * oods_point); + tempvar value = (column1 - oods_values[261]) / (point - pow39 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[261] * value; - tempvar value = (column1 - oods_values[262]) / (point - pow34 * oods_point); + tempvar value = (column1 - oods_values[262]) / (point - pow38 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[262] * value; - tempvar value = (column1 - oods_values[263]) / (point - pow566 * oods_point); + tempvar value = (column1 - oods_values[263]) / (point - pow502 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[263] * value; - tempvar value = (column1 - oods_values[264]) / (point - pow567 * oods_point); + tempvar value = (column1 - oods_values[264]) / (point - pow571 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[264] * value; - tempvar value = (column1 - oods_values[265]) / (point - pow565 * oods_point); + tempvar value = (column1 - oods_values[265]) / (point - pow501 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[265] * value; - tempvar value = (column1 - oods_values[266]) / (point - pow589 * oods_point); + tempvar value = (column1 - oods_values[266]) / (point - pow525 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[266] * value; - tempvar value = (column1 - oods_values[267]) / (point - pow608 * oods_point); + tempvar value = (column1 - oods_values[267]) / (point - pow600 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[267] * value; - tempvar value = (column1 - oods_values[268]) / (point - pow610 * oods_point); + tempvar value = (column1 - oods_values[268]) / (point - pow602 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[268] * value; - tempvar value = (column1 - oods_values[269]) / (point - pow619 * oods_point); + tempvar value = (column1 - oods_values[269]) / (point - pow606 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[269] * value; - tempvar value = (column1 - oods_values[270]) / (point - pow627 * oods_point); + tempvar value = (column1 - oods_values[270]) / (point - pow622 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[270] * value; - tempvar value = (column1 - oods_values[271]) / (point - pow614 * oods_point); + tempvar value = (column1 - oods_values[271]) / (point - pow580 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[271] * value; - tempvar value = (column1 - oods_values[272]) / (point - pow615 * oods_point); + tempvar value = (column1 - oods_values[272]) / (point - pow572 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[272] * value; - tempvar value = (column1 - oods_values[273]) / (point - pow583 * oods_point); + tempvar value = (column1 - oods_values[273]) / (point - pow593 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[273] * value; - tempvar value = (column1 - oods_values[274]) / (point - pow582 * oods_point); + tempvar value = (column1 - oods_values[274]) / (point - pow560 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[274] * value; - tempvar value = (column1 - oods_values[275]) / (point - pow588 * oods_point); + tempvar value = (column1 - oods_values[275]) / (point - pow552 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[275] * value; - tempvar value = (column1 - oods_values[276]) / (point - pow581 * oods_point); + tempvar value = (column1 - oods_values[276]) / (point - pow512 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[276] * value; - tempvar value = (column1 - oods_values[277]) / (point - pow584 * oods_point); + tempvar value = (column1 - oods_values[277]) / (point - pow561 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[277] * value; - tempvar value = (column1 - oods_values[278]) / (point - pow639 * oods_point); + tempvar value = (column1 - oods_values[278]) / (point - pow544 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[278] * value; - tempvar value = (column1 - oods_values[279]) / (point - pow33 * oods_point); + tempvar value = (column1 - oods_values[279]) / (point - pow37 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[279] * value; - tempvar value = (column1 - oods_values[280]) / (point - pow174 * oods_point); + tempvar value = (column1 - oods_values[280]) / (point - pow36 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[280] * value; - tempvar value = (column1 - oods_values[281]) / (point - pow185 * oods_point); + tempvar value = (column1 - oods_values[281]) / (point - pow35 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[281] * value; - tempvar value = (column1 - oods_values[282]) / (point - pow611 * oods_point); + tempvar value = (column1 - oods_values[282]) / (point - pow603 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[282] * value; - tempvar value = (column1 - oods_values[283]) / (point - pow32 * oods_point); + tempvar value = (column1 - oods_values[283]) / (point - pow34 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[283] * value; - tempvar value = (column1 - oods_values[284]) / (point - pow105 * oods_point); + tempvar value = (column1 - oods_values[284]) / (point - pow104 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[284] * value; - tempvar value = (column1 - oods_values[285]) / (point - pow136 * oods_point); + tempvar value = (column1 - oods_values[285]) / (point - pow131 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[285] * value; - tempvar value = (column1 - oods_values[286]) / (point - pow31 * oods_point); + tempvar value = (column1 - oods_values[286]) / (point - pow33 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[286] * value; - tempvar value = (column1 - oods_values[287]) / (point - pow30 * oods_point); + tempvar value = (column1 - oods_values[287]) / (point - pow32 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[287] * value; - tempvar value = (column1 - oods_values[288]) / (point - pow173 * oods_point); + tempvar value = (column1 - oods_values[288]) / (point - pow31 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[288] * value; - tempvar value = (column1 - oods_values[289]) / (point - pow184 * oods_point); + tempvar value = (column1 - oods_values[289]) / (point - pow30 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[289] * value; tempvar value = (column1 - oods_values[290]) / (point - pow29 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[290] * value; - tempvar value = (column1 - oods_values[291]) / (point - pow104 * oods_point); + tempvar value = (column1 - oods_values[291]) / (point - pow103 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[291] * value; - tempvar value = (column1 - oods_values[292]) / (point - pow135 * oods_point); + tempvar value = (column1 - oods_values[292]) / (point - pow130 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[292] * value; - tempvar value = (column1 - oods_values[293]) / (point - pow617 * oods_point); + tempvar value = (column1 - oods_values[293]) / (point - pow575 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[293] * value; - tempvar value = (column1 - oods_values[294]) / (point - pow618 * oods_point); + tempvar value = (column1 - oods_values[294]) / (point - pow576 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[294] * value; - tempvar value = (column1 - oods_values[295]) / (point - pow523 * oods_point); + tempvar value = (column1 - oods_values[295]) / (point - pow609 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[295] * value; tempvar value = (column1 - oods_values[296]) / (point - pow28 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[296] * value; - tempvar value = (column1 - oods_values[297]) / (point - pow572 * oods_point); + tempvar value = (column1 - oods_values[297]) / (point - pow612 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[297] * value; - tempvar value = (column1 - oods_values[298]) / (point - pow580 * oods_point); + tempvar value = (column1 - oods_values[298]) / (point - pow613 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[298] * value; - tempvar value = (column1 - oods_values[299]) / (point - pow579 * oods_point); + tempvar value = (column1 - oods_values[299]) / (point - pow511 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[299] * value; - tempvar value = (column1 - oods_values[300]) / (point - pow578 * oods_point); + tempvar value = (column1 - oods_values[300]) / (point - pow510 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[300] * value; tempvar value = (column1 - oods_values[301]) / (point - pow27 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[301] * value; - tempvar value = (column1 - oods_values[302]) / (point - pow339 * oods_point); + tempvar value = (column1 - oods_values[302]) / (point - pow336 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[302] * value; - tempvar value = (column1 - oods_values[303]) / (point - pow616 * oods_point); + tempvar value = (column1 - oods_values[303]) / (point - pow573 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[303] * value; tempvar value = (column1 - oods_values[304]) / (point - pow26 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[304] * value; - tempvar value = (column1 - oods_values[305]) / (point - pow25 * oods_point); + tempvar value = (column1 - oods_values[305]) / (point - pow383 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[305] * value; - tempvar value = (column1 - oods_values[306]) / (point - pow586 * oods_point); + tempvar value = (column1 - oods_values[306]) / (point - pow514 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[306] * value; - tempvar value = (column1 - oods_values[307]) / (point - pow587 * oods_point); + tempvar value = (column1 - oods_values[307]) / (point - pow539 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[307] * value; - tempvar value = (column1 - oods_values[308]) / (point - pow24 * oods_point); + tempvar value = (column1 - oods_values[308]) / (point - pow538 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[308] * value; - tempvar value = (column1 - oods_values[309]) / (point - pow23 * oods_point); + tempvar value = (column1 - oods_values[309]) / (point - pow25 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[309] * value; - tempvar value = (column1 - oods_values[310]) / (point - pow551 * oods_point); + tempvar value = (column1 - oods_values[310]) / (point - pow584 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[310] * value; - tempvar value = (column1 - oods_values[311]) / (point - pow22 * oods_point); + tempvar value = (column1 - oods_values[311]) / (point - pow24 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[311] * value; - tempvar value = (column1 - oods_values[312]) / (point - pow172 * oods_point); + tempvar value = (column1 - oods_values[312]) / (point - pow23 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[312] * value; - tempvar value = (column1 - oods_values[313]) / (point - pow183 * oods_point); + tempvar value = (column1 - oods_values[313]) / (point - pow22 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[313] * value; tempvar value = (column1 - oods_values[314]) / (point - pow21 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[314] * value; - tempvar value = (column1 - oods_values[315]) / (point - pow103 * oods_point); + tempvar value = (column1 - oods_values[315]) / (point - pow102 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[315] * value; - tempvar value = (column1 - oods_values[316]) / (point - pow134 * oods_point); + tempvar value = (column1 - oods_values[316]) / (point - pow129 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[316] * value; - tempvar value = (column1 - oods_values[317]) / (point - pow593 * oods_point); + tempvar value = (column1 - oods_values[317]) / (point - pow522 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[317] * value; - tempvar value = (column1 - oods_values[318]) / (point - pow595 * oods_point); + tempvar value = (column1 - oods_values[318]) / (point - pow523 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[318] * value; - tempvar value = (column1 - oods_values[319]) / (point - pow594 * oods_point); + tempvar value = (column1 - oods_values[319]) / (point - pow542 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[319] * value; - tempvar value = (column1 - oods_values[320]) / (point - pow592 * oods_point); + tempvar value = (column1 - oods_values[320]) / (point - pow521 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[320] * value; tempvar value = (column1 - oods_values[321]) / (point - pow20 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[321] * value; - tempvar value = (column1 - oods_values[322]) / (point - pow591 * oods_point); + tempvar value = (column1 - oods_values[322]) / (point - pow520 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[322] * value; tempvar value = (column1 - oods_values[323]) / (point - pow19 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[323] * value; - tempvar value = (column1 - oods_values[324]) / (point - pow176 * oods_point); + tempvar value = (column1 - oods_values[324]) / (point - pow170 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[324] * value; tempvar value = (column1 - oods_values[325]) / (point - pow18 * oods_point); @@ -11987,1236 +12008,1263 @@ func eval_oods_polynomial{range_check_ptr}( tempvar value = (column1 - oods_values[327]) / (point - pow16 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[327] * value; - tempvar value = (column1 - oods_values[328]) / (point - pow514 * oods_point); + tempvar value = (column1 - oods_values[328]) / (point - pow590 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[328] * value; - tempvar value = (column1 - oods_values[329]) / (point - pow515 * oods_point); + tempvar value = (column1 - oods_values[329]) / (point - pow591 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[329] * value; - tempvar value = (column1 - oods_values[330]) / (point - pow521 * oods_point); + tempvar value = (column1 - oods_values[330]) / (point - pow599 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[330] * value; - tempvar value = (column1 - oods_values[331]) / (point - pow552 * oods_point); + tempvar value = (column1 - oods_values[331]) / (point - pow586 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[331] * value; - tempvar value = (column1 - oods_values[332]) / (point - pow553 * oods_point); + tempvar value = (column1 - oods_values[332]) / (point - pow587 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[332] * value; - tempvar value = (column1 - oods_values[333]) / (point - pow554 * oods_point); + tempvar value = (column1 - oods_values[333]) / (point - pow588 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[333] * value; tempvar value = (column1 - oods_values[334]) / (point - pow15 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[334] * value; - tempvar value = (column1 - oods_values[335]) / (point - pow609 * oods_point); + tempvar value = (column1 - oods_values[335]) / (point - pow601 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[335] * value; - tempvar value = (column1 - oods_values[336]) / (point - pow613 * oods_point); + tempvar value = (column1 - oods_values[336]) / (point - pow605 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[336] * value; - tempvar value = (column1 - oods_values[337]) / (point - pow620 * oods_point); + tempvar value = (column1 - oods_values[337]) / (point - pow607 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[337] * value; - tempvar value = (column1 - oods_values[338]) / (point - pow621 * oods_point); + tempvar value = (column1 - oods_values[338]) / (point - pow608 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[338] * value; - tempvar value = (column1 - oods_values[339]) / (point - pow628 * oods_point); + tempvar value = (column1 - oods_values[339]) / (point - pow623 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[339] * value; - tempvar value = (column1 - oods_values[340]) / (point - pow636 * oods_point); + tempvar value = (column1 - oods_values[340]) / (point - pow624 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[340] * value; - tempvar value = (column1 - oods_values[341]) / (point - pow631 * oods_point); + tempvar value = (column1 - oods_values[341]) / (point - pow629 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[341] * value; - tempvar value = (column1 - oods_values[342]) / (point - pow637 * oods_point); + tempvar value = (column1 - oods_values[342]) / (point - pow630 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[342] * value; - tempvar value = (column1 - oods_values[343]) / (point - pow632 * oods_point); + tempvar value = (column1 - oods_values[343]) / (point - pow627 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[343] * value; - tempvar value = (column1 - oods_values[344]) / (point - pow598 * oods_point); + tempvar value = (column1 - oods_values[344]) / (point - pow518 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[344] * value; - tempvar value = (column1 - oods_values[345]) / (point - pow599 * oods_point); + tempvar value = (column1 - oods_values[345]) / (point - pow610 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[345] * value; - tempvar value = (column1 - oods_values[346]) / (point - pow633 * oods_point); + tempvar value = (column1 - oods_values[346]) / (point - pow631 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[346] * value; - tempvar value = (column1 - oods_values[347]) / (point - pow600 * oods_point); + tempvar value = (column1 - oods_values[347]) / (point - pow611 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[347] * value; - tempvar value = (column1 - oods_values[348]) / (point - pow634 * oods_point); + tempvar value = (column1 - oods_values[348]) / (point - pow632 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[348] * value; tempvar value = (column2 - oods_values[349]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[349] * value; - tempvar value = (column2 - oods_values[350]) / (point - pow53 * oods_point); + tempvar value = (column2 - oods_values[350]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[350] * value; tempvar value = (column3 - oods_values[351]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[351] * value; - tempvar value = (column3 - oods_values[352]) / (point - pow53 * oods_point); + tempvar value = (column3 - oods_values[352]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[352] * value; - tempvar value = (column3 - oods_values[353]) / (point - pow54 * oods_point); + tempvar value = (column3 - oods_values[353]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[353] * value; - tempvar value = (column3 - oods_values[354]) / (point - pow56 * oods_point); + tempvar value = (column3 - oods_values[354]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[354] * value; - tempvar value = (column3 - oods_values[355]) / (point - pow57 * oods_point); + tempvar value = (column3 - oods_values[355]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[355] * value; - tempvar value = (column3 - oods_values[356]) / (point - pow58 * oods_point); + tempvar value = (column3 - oods_values[356]) / (point - pow61 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[356] * value; - tempvar value = (column3 - oods_values[357]) / (point - pow59 * oods_point); + tempvar value = (column3 - oods_values[357]) / (point - pow62 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[357] * value; - tempvar value = (column3 - oods_values[358]) / (point - pow60 * oods_point); + tempvar value = (column3 - oods_values[358]) / (point - pow63 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[358] * value; - tempvar value = (column3 - oods_values[359]) / (point - pow61 * oods_point); + tempvar value = (column3 - oods_values[359]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[359] * value; - tempvar value = (column3 - oods_values[360]) / (point - pow62 * oods_point); + tempvar value = (column3 - oods_values[360]) / (point - pow65 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[360] * value; - tempvar value = (column3 - oods_values[361]) / (point - pow63 * oods_point); + tempvar value = (column3 - oods_values[361]) / (point - pow66 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[361] * value; - tempvar value = (column3 - oods_values[362]) / (point - pow64 * oods_point); + tempvar value = (column3 - oods_values[362]) / (point - pow67 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[362] * value; - tempvar value = (column3 - oods_values[363]) / (point - pow65 * oods_point); + tempvar value = (column3 - oods_values[363]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[363] * value; - tempvar value = (column3 - oods_values[364]) / (point - pow66 * oods_point); + tempvar value = (column3 - oods_values[364]) / (point - pow69 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[364] * value; - tempvar value = (column3 - oods_values[365]) / (point - pow67 * oods_point); + tempvar value = (column3 - oods_values[365]) / (point - pow70 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[365] * value; - tempvar value = (column3 - oods_values[366]) / (point - pow68 * oods_point); + tempvar value = (column3 - oods_values[366]) / (point - pow71 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[366] * value; - tempvar value = (column3 - oods_values[367]) / (point - pow69 * oods_point); + tempvar value = (column3 - oods_values[367]) / (point - pow418 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[367] * value; - tempvar value = (column3 - oods_values[368]) / (point - pow80 * oods_point); + tempvar value = (column3 - oods_values[368]) / (point - pow419 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[368] * value; - tempvar value = (column3 - oods_values[369]) / (point - pow171 * oods_point); + tempvar value = (column3 - oods_values[369]) / (point - pow420 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[369] * value; - tempvar value = (column3 - oods_values[370]) / (point - pow178 * oods_point); + tempvar value = (column3 - oods_values[370]) / (point - pow421 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[370] * value; - tempvar value = (column3 - oods_values[371]) / (point - pow181 * oods_point); + tempvar value = (column3 - oods_values[371]) / (point - pow422 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[371] * value; - tempvar value = (column3 - oods_values[372]) / (point - pow187 * oods_point); + tempvar value = (column3 - oods_values[372]) / (point - pow423 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[372] * value; - tempvar value = (column3 - oods_values[373]) / (point - pow182 * oods_point); + tempvar value = (column3 - oods_values[373]) / (point - pow424 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[373] * value; - tempvar value = (column3 - oods_values[374]) / (point - pow198 * oods_point); + tempvar value = (column3 - oods_values[374]) / (point - pow425 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[374] * value; - tempvar value = (column3 - oods_values[375]) / (point - pow237 * oods_point); + tempvar value = (column3 - oods_values[375]) / (point - pow426 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[375] * value; - tempvar value = (column3 - oods_values[376]) / (point - pow238 * oods_point); + tempvar value = (column3 - oods_values[376]) / (point - pow427 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[376] * value; - tempvar value = (column3 - oods_values[377]) / (point - pow241 * oods_point); + tempvar value = (column3 - oods_values[377]) / (point - pow428 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[377] * value; - tempvar value = (column3 - oods_values[378]) / (point - pow299 * oods_point); + tempvar value = (column3 - oods_values[378]) / (point - pow429 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[378] * value; - tempvar value = (column3 - oods_values[379]) / (point - pow303 * oods_point); + tempvar value = (column3 - oods_values[379]) / (point - pow430 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[379] * value; - tempvar value = (column3 - oods_values[380]) / (point - pow304 * oods_point); + tempvar value = (column3 - oods_values[380]) / (point - pow431 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[380] * value; - tempvar value = (column3 - oods_values[381]) / (point - pow341 * oods_point); + tempvar value = (column3 - oods_values[381]) / (point - pow432 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[381] * value; - tempvar value = (column3 - oods_values[382]) / (point - pow342 * oods_point); + tempvar value = (column3 - oods_values[382]) / (point - pow433 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[382] * value; - tempvar value = (column3 - oods_values[383]) / (point - pow343 * oods_point); + tempvar value = (column3 - oods_values[383]) / (point - pow434 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[383] * value; - tempvar value = (column3 - oods_values[384]) / (point - pow350 * oods_point); + tempvar value = (column3 - oods_values[384]) / (point - pow435 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[384] * value; - tempvar value = (column3 - oods_values[385]) / (point - pow351 * oods_point); + tempvar value = (column3 - oods_values[385]) / (point - pow437 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[385] * value; - tempvar value = (column3 - oods_values[386]) / (point - pow388 * oods_point); + tempvar value = (column3 - oods_values[386]) / (point - pow438 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[386] * value; - tempvar value = (column3 - oods_values[387]) / (point - pow393 * oods_point); + tempvar value = (column3 - oods_values[387]) / (point - pow439 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[387] * value; - tempvar value = (column3 - oods_values[388]) / (point - pow394 * oods_point); + tempvar value = (column3 - oods_values[388]) / (point - pow440 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[388] * value; - tempvar value = (column3 - oods_values[389]) / (point - pow395 * oods_point); + tempvar value = (column3 - oods_values[389]) / (point - pow441 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[389] * value; - tempvar value = (column3 - oods_values[390]) / (point - pow406 * oods_point); + tempvar value = (column3 - oods_values[390]) / (point - pow442 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[390] * value; - tempvar value = (column3 - oods_values[391]) / (point - pow420 * oods_point); + tempvar value = (column3 - oods_values[391]) / (point - pow443 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[391] * value; - tempvar value = (column3 - oods_values[392]) / (point - pow407 * oods_point); + tempvar value = (column3 - oods_values[392]) / (point - pow444 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[392] * value; - tempvar value = (column3 - oods_values[393]) / (point - pow415 * oods_point); + tempvar value = (column3 - oods_values[393]) / (point - pow447 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[393] * value; - tempvar value = (column3 - oods_values[394]) / (point - pow14 * oods_point); + tempvar value = (column3 - oods_values[394]) / (point - pow450 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[394] * value; - tempvar value = (column3 - oods_values[395]) / (point - pow405 * oods_point); + tempvar value = (column3 - oods_values[395]) / (point - pow455 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[395] * value; - tempvar value = (column3 - oods_values[396]) / (point - pow436 * oods_point); + tempvar value = (column3 - oods_values[396]) / (point - pow460 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[396] * value; - tempvar value = (column3 - oods_values[397]) / (point - pow13 * oods_point); + tempvar value = (column3 - oods_values[397]) / (point - pow494 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[397] * value; - tempvar value = (column3 - oods_values[398]) / (point - pow155 * oods_point); + tempvar value = (column3 - oods_values[398]) / (point - pow495 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[398] * value; - tempvar value = (column3 - oods_values[399]) / (point - pow418 * oods_point); + tempvar value = (column3 - oods_values[399]) / (point - pow496 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[399] * value; - tempvar value = (column3 - oods_values[400]) / (point - pow426 * oods_point); + tempvar value = (column3 - oods_values[400]) / (point - pow497 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[400] * value; - tempvar value = (column3 - oods_values[401]) / (point - pow427 * oods_point); + tempvar value = (column3 - oods_values[401]) / (point - pow498 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[401] * value; - tempvar value = (column3 - oods_values[402]) / (point - pow428 * oods_point); + tempvar value = (column3 - oods_values[402]) / (point - pow499 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[402] * value; - tempvar value = (column3 - oods_values[403]) / (point - pow432 * oods_point); + tempvar value = (column3 - oods_values[403]) / (point - pow500 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[403] * value; - tempvar value = (column3 - oods_values[404]) / (point - pow433 * oods_point); + tempvar value = (column3 - oods_values[404]) / (point - pow503 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[404] * value; - tempvar value = (column3 - oods_values[405]) / (point - pow434 * oods_point); + tempvar value = (column3 - oods_values[405]) / (point - pow504 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[405] * value; - tempvar value = (column3 - oods_values[406]) / (point - pow437 * oods_point); + tempvar value = (column3 - oods_values[406]) / (point - pow505 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[406] * value; - tempvar value = (column3 - oods_values[407]) / (point - pow438 * oods_point); + tempvar value = (column3 - oods_values[407]) / (point - pow506 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[407] * value; - tempvar value = (column3 - oods_values[408]) / (point - pow439 * oods_point); + tempvar value = (column3 - oods_values[408]) / (point - pow507 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[408] * value; - tempvar value = (column3 - oods_values[409]) / (point - pow440 * oods_point); + tempvar value = (column3 - oods_values[409]) / (point - pow513 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[409] * value; - tempvar value = (column3 - oods_values[410]) / (point - pow441 * oods_point); + tempvar value = (column3 - oods_values[410]) / (point - pow516 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[410] * value; - tempvar value = (column3 - oods_values[411]) / (point - pow442 * oods_point); + tempvar value = (column3 - oods_values[411]) / (point - pow517 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[411] * value; - tempvar value = (column3 - oods_values[412]) / (point - pow443 * oods_point); + tempvar value = (column4 - oods_values[412]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[412] * value; - tempvar value = (column3 - oods_values[413]) / (point - pow444 * oods_point); + tempvar value = (column4 - oods_values[413]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[413] * value; - tempvar value = (column3 - oods_values[414]) / (point - pow445 * oods_point); + tempvar value = (column4 - oods_values[414]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[414] * value; - tempvar value = (column3 - oods_values[415]) / (point - pow446 * oods_point); + tempvar value = (column4 - oods_values[415]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[415] * value; - tempvar value = (column3 - oods_values[416]) / (point - pow447 * oods_point); + tempvar value = (column4 - oods_values[416]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[416] * value; - tempvar value = (column3 - oods_values[417]) / (point - pow448 * oods_point); + tempvar value = (column4 - oods_values[417]) / (point - pow61 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[417] * value; - tempvar value = (column3 - oods_values[418]) / (point - pow449 * oods_point); + tempvar value = (column4 - oods_values[418]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[418] * value; - tempvar value = (column3 - oods_values[419]) / (point - pow450 * oods_point); + tempvar value = (column4 - oods_values[419]) / (point - pow65 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[419] * value; - tempvar value = (column3 - oods_values[420]) / (point - pow451 * oods_point); + tempvar value = (column4 - oods_values[420]) / (point - pow66 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[420] * value; - tempvar value = (column3 - oods_values[421]) / (point - pow452 * oods_point); + tempvar value = (column4 - oods_values[421]) / (point - pow67 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[421] * value; - tempvar value = (column3 - oods_values[422]) / (point - pow453 * oods_point); + tempvar value = (column4 - oods_values[422]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[422] * value; - tempvar value = (column3 - oods_values[423]) / (point - pow454 * oods_point); + tempvar value = (column4 - oods_values[423]) / (point - pow69 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[423] * value; - tempvar value = (column3 - oods_values[424]) / (point - pow455 * oods_point); + tempvar value = (column4 - oods_values[424]) / (point - pow72 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[424] * value; - tempvar value = (column3 - oods_values[425]) / (point - pow461 * oods_point); + tempvar value = (column4 - oods_values[425]) / (point - pow81 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[425] * value; - tempvar value = (column3 - oods_values[426]) / (point - pow464 * oods_point); + tempvar value = (column4 - oods_values[426]) / (point - pow82 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[426] * value; - tempvar value = (column3 - oods_values[427]) / (point - pow469 * oods_point); + tempvar value = (column4 - oods_values[427]) / (point - pow90 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[427] * value; - tempvar value = (column3 - oods_values[428]) / (point - pow472 * oods_point); + tempvar value = (column4 - oods_values[428]) / (point - pow91 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[428] * value; - tempvar value = (column3 - oods_values[429]) / (point - pow492 * oods_point); + tempvar value = (column4 - oods_values[429]) / (point - pow111 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[429] * value; - tempvar value = (column3 - oods_values[430]) / (point - pow491 * oods_point); + tempvar value = (column4 - oods_values[430]) / (point - pow112 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[430] * value; - tempvar value = (column3 - oods_values[431]) / (point - pow510 * oods_point); + tempvar value = (column4 - oods_values[431]) / (point - pow121 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[431] * value; - tempvar value = (column3 - oods_values[432]) / (point - pow525 * oods_point); + tempvar value = (column4 - oods_values[432]) / (point - pow137 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[432] * value; - tempvar value = (column3 - oods_values[433]) / (point - pow12 * oods_point); + tempvar value = (column4 - oods_values[433]) / (point - pow138 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[433] * value; - tempvar value = (column3 - oods_values[434]) / (point - pow70 * oods_point); + tempvar value = (column4 - oods_values[434]) / (point - pow140 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[434] * value; - tempvar value = (column3 - oods_values[435]) / (point - pow643 * oods_point); + tempvar value = (column4 - oods_values[435]) / (point - pow142 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[435] * value; - tempvar value = (column3 - oods_values[436]) / (point - pow640 * oods_point); + tempvar value = (column4 - oods_values[436]) / (point - pow155 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[436] * value; - tempvar value = (column3 - oods_values[437]) / (point - pow641 * oods_point); + tempvar value = (column4 - oods_values[437]) / (point - pow158 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[437] * value; - tempvar value = (column3 - oods_values[438]) / (point - pow642 * oods_point); + tempvar value = (column4 - oods_values[438]) / (point - pow159 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[438] * value; - tempvar value = (column3 - oods_values[439]) / (point - pow535 * oods_point); + tempvar value = (column4 - oods_values[439]) / (point - pow172 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[439] * value; - tempvar value = (column3 - oods_values[440]) / (point - pow555 * oods_point); + tempvar value = (column4 - oods_values[440]) / (point - pow173 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[440] * value; - tempvar value = (column3 - oods_values[441]) / (point - pow548 * oods_point); + tempvar value = (column4 - oods_values[441]) / (point - pow176 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[441] * value; - tempvar value = (column3 - oods_values[442]) / (point - pow549 * oods_point); + tempvar value = (column4 - oods_values[442]) / (point - pow187 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[442] * value; - tempvar value = (column3 - oods_values[443]) / (point - pow11 * oods_point); + tempvar value = (column4 - oods_values[443]) / (point - pow188 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[443] * value; - tempvar value = (column3 - oods_values[444]) / (point - pow556 * oods_point); + tempvar value = (column4 - oods_values[444]) / (point - pow197 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[444] * value; - tempvar value = (column3 - oods_values[445]) / (point - pow562 * oods_point); + tempvar value = (column4 - oods_values[445]) / (point - pow198 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[445] * value; - tempvar value = (column3 - oods_values[446]) / (point - pow561 * oods_point); + tempvar value = (column4 - oods_values[446]) / (point - pow204 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[446] * value; - tempvar value = (column3 - oods_values[447]) / (point - pow10 * oods_point); + tempvar value = (column4 - oods_values[447]) / (point - pow205 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[447] * value; - tempvar value = (column3 - oods_values[448]) / (point - pow102 * oods_point); + tempvar value = (column4 - oods_values[448]) / (point - pow210 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[448] * value; - tempvar value = (column3 - oods_values[449]) / (point - pow133 * oods_point); + tempvar value = (column4 - oods_values[449]) / (point - pow211 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[449] * value; - tempvar value = (column3 - oods_values[450]) / (point - pow563 * oods_point); + tempvar value = (column4 - oods_values[450]) / (point - pow216 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[450] * value; - tempvar value = (column3 - oods_values[451]) / (point - pow9 * oods_point); + tempvar value = (column4 - oods_values[451]) / (point - pow217 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[451] * value; - tempvar value = (column3 - oods_values[452]) / (point - pow550 * oods_point); + tempvar value = (column4 - oods_values[452]) / (point - pow241 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[452] * value; - tempvar value = (column3 - oods_values[453]) / (point - pow604 * oods_point); + tempvar value = (column4 - oods_values[453]) / (point - pow242 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[453] * value; - tempvar value = (column3 - oods_values[454]) / (point - pow606 * oods_point); + tempvar value = (column4 - oods_values[454]) / (point - pow252 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[454] * value; - tempvar value = (column3 - oods_values[455]) / (point - pow607 * oods_point); + tempvar value = (column4 - oods_values[455]) / (point - pow253 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[455] * value; - tempvar value = (column3 - oods_values[456]) / (point - pow564 * oods_point); + tempvar value = (column4 - oods_values[456]) / (point - pow268 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[456] * value; - tempvar value = (column3 - oods_values[457]) / (point - pow585 * oods_point); + tempvar value = (column4 - oods_values[457]) / (point - pow269 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[457] * value; - tempvar value = (column3 - oods_values[458]) / (point - pow568 * oods_point); + tempvar value = (column4 - oods_values[458]) / (point - pow273 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[458] * value; - tempvar value = (column3 - oods_values[459]) / (point - pow622 * oods_point); + tempvar value = (column4 - oods_values[459]) / (point - pow274 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[459] * value; - tempvar value = (column3 - oods_values[460]) / (point - pow625 * oods_point); + tempvar value = (column4 - oods_values[460]) / (point - pow277 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[460] * value; - tempvar value = (column3 - oods_values[461]) / (point - pow569 * oods_point); + tempvar value = (column4 - oods_values[461]) / (point - pow278 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[461] * value; - tempvar value = (column3 - oods_values[462]) / (point - pow644 * oods_point); + tempvar value = (column4 - oods_values[462]) / (point - pow281 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[462] * value; - tempvar value = (column3 - oods_values[463]) / (point - pow605 * oods_point); + tempvar value = (column4 - oods_values[463]) / (point - pow282 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[463] * value; - tempvar value = (column3 - oods_values[464]) / (point - pow8 * oods_point); + tempvar value = (column4 - oods_values[464]) / (point - pow308 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[464] * value; - tempvar value = (column3 - oods_values[465]) / (point - pow570 * oods_point); + tempvar value = (column4 - oods_values[465]) / (point - pow313 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[465] * value; - tempvar value = (column3 - oods_values[466]) / (point - pow612 * oods_point); + tempvar value = (column4 - oods_values[466]) / (point - pow315 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[466] * value; - tempvar value = (column3 - oods_values[467]) / (point - pow624 * oods_point); + tempvar value = (column4 - oods_values[467]) / (point - pow323 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[467] * value; - tempvar value = (column3 - oods_values[468]) / (point - pow522 * oods_point); + tempvar value = (column4 - oods_values[468]) / (point - pow365 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[468] * value; - tempvar value = (column3 - oods_values[469]) / (point - pow571 * oods_point); + tempvar value = (column4 - oods_values[469]) / (point - pow366 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[469] * value; - tempvar value = (column3 - oods_values[470]) / (point - pow575 * oods_point); + tempvar value = (column4 - oods_values[470]) / (point - pow375 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[470] * value; - tempvar value = (column3 - oods_values[471]) / (point - pow7 * oods_point); + tempvar value = (column4 - oods_values[471]) / (point - pow401 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[471] * value; - tempvar value = (column3 - oods_values[472]) / (point - pow573 * oods_point); + tempvar value = (column4 - oods_values[472]) / (point - pow404 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[472] * value; - tempvar value = (column3 - oods_values[473]) / (point - pow6 * oods_point); + tempvar value = (column4 - oods_values[473]) / (point - pow402 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[473] * value; - tempvar value = (column3 - oods_values[474]) / (point - pow623 * oods_point); + tempvar value = (column4 - oods_values[474]) / (point - pow399 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[474] * value; - tempvar value = (column3 - oods_values[475]) / (point - pow574 * oods_point); + tempvar value = (column4 - oods_values[475]) / (point - pow400 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[475] * value; - tempvar value = (column3 - oods_values[476]) / (point - pow5 * oods_point); + tempvar value = (column4 - oods_values[476]) / (point - pow403 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[476] * value; - tempvar value = (column3 - oods_values[477]) / (point - pow577 * oods_point); + tempvar value = (column4 - oods_values[477]) / (point - pow412 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[477] * value; - tempvar value = (column3 - oods_values[478]) / (point - pow4 * oods_point); + tempvar value = (column4 - oods_values[478]) / (point - pow417 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[478] * value; - tempvar value = (column3 - oods_values[479]) / (point - pow590 * oods_point); + tempvar value = (column4 - oods_values[479]) / (point - pow413 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[479] * value; - tempvar value = (column3 - oods_values[480]) / (point - pow603 * oods_point); + tempvar value = (column4 - oods_values[480]) / (point - pow390 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[480] * value; - tempvar value = (column3 - oods_values[481]) / (point - pow596 * oods_point); + tempvar value = (column4 - oods_values[481]) / (point - pow407 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[481] * value; - tempvar value = (column3 - oods_values[482]) / (point - pow626 * oods_point); + tempvar value = (column4 - oods_values[482]) / (point - pow414 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[482] * value; - tempvar value = (column3 - oods_values[483]) / (point - pow602 * oods_point); + tempvar value = (column4 - oods_values[483]) / (point - pow474 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[483] * value; - tempvar value = (column3 - oods_values[484]) / (point - pow597 * oods_point); + tempvar value = (column4 - oods_values[484]) / (point - pow480 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[484] * value; - tempvar value = (column3 - oods_values[485]) / (point - pow601 * oods_point); + tempvar value = (column4 - oods_values[485]) / (point - pow481 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[485] * value; - tempvar value = (column3 - oods_values[486]) / (point - pow532 * oods_point); + tempvar value = (column4 - oods_values[486]) / (point - pow475 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[486] * value; - tempvar value = (column3 - oods_values[487]) / (point - pow533 * oods_point); + tempvar value = (column4 - oods_values[487]) / (point - pow476 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[487] * value; - tempvar value = (column3 - oods_values[488]) / (point - pow534 * oods_point); + tempvar value = (column4 - oods_values[488]) / (point - pow477 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[488] * value; - tempvar value = (column3 - oods_values[489]) / (point - pow629 * oods_point); + tempvar value = (column4 - oods_values[489]) / (point - pow486 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[489] * value; - tempvar value = (column3 - oods_values[490]) / (point - pow635 * oods_point); + tempvar value = (column4 - oods_values[490]) / (point - pow461 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[490] * value; - tempvar value = (column3 - oods_values[491]) / (point - pow630 * oods_point); + tempvar value = (column4 - oods_values[491]) / (point - pow615 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[491] * value; - tempvar value = (column3 - oods_values[492]) / (point - pow638 * oods_point); + tempvar value = (column4 - oods_values[492]) / (point - pow616 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[492] * value; - tempvar value = (column3 - oods_values[493]) / (point - pow576 * oods_point); + tempvar value = (column4 - oods_values[493]) / (point - pow617 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[493] * value; - tempvar value = (column4 - oods_values[494]) / (point - pow0 * oods_point); + tempvar value = (column4 - oods_values[494]) / (point - pow565 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[494] * value; - tempvar value = (column4 - oods_values[495]) / (point - pow53 * oods_point); + tempvar value = (column5 - oods_values[495]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[495] * value; - tempvar value = (column4 - oods_values[496]) / (point - pow54 * oods_point); + tempvar value = (column5 - oods_values[496]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[496] * value; - tempvar value = (column4 - oods_values[497]) / (point - pow56 * oods_point); + tempvar value = (column5 - oods_values[497]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[497] * value; - tempvar value = (column4 - oods_values[498]) / (point - pow57 * oods_point); + tempvar value = (column5 - oods_values[498]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[498] * value; - tempvar value = (column4 - oods_values[499]) / (point - pow58 * oods_point); + tempvar value = (column5 - oods_values[499]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[499] * value; - tempvar value = (column4 - oods_values[500]) / (point - pow61 * oods_point); + tempvar value = (column5 - oods_values[500]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[500] * value; - tempvar value = (column4 - oods_values[501]) / (point - pow62 * oods_point); + tempvar value = (column5 - oods_values[501]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[501] * value; - tempvar value = (column4 - oods_values[502]) / (point - pow63 * oods_point); + tempvar value = (column5 - oods_values[502]) / (point - pow75 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[502] * value; - tempvar value = (column4 - oods_values[503]) / (point - pow64 * oods_point); + tempvar value = (column5 - oods_values[503]) / (point - pow83 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[503] * value; - tempvar value = (column4 - oods_values[504]) / (point - pow65 * oods_point); + tempvar value = (column5 - oods_values[504]) / (point - pow86 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[504] * value; - tempvar value = (column4 - oods_values[505]) / (point - pow66 * oods_point); + tempvar value = (column5 - oods_values[505]) / (point - pow92 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[505] * value; - tempvar value = (column4 - oods_values[506]) / (point - pow69 * oods_point); + tempvar value = (column5 - oods_values[506]) / (point - pow100 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[506] * value; - tempvar value = (column4 - oods_values[507]) / (point - pow87 * oods_point); + tempvar value = (column5 - oods_values[507]) / (point - pow107 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[507] * value; - tempvar value = (column4 - oods_values[508]) / (point - pow88 * oods_point); + tempvar value = (column5 - oods_values[508]) / (point - pow113 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[508] * value; - tempvar value = (column4 - oods_values[509]) / (point - pow112 * oods_point); + tempvar value = (column5 - oods_values[509]) / (point - pow115 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[509] * value; - tempvar value = (column4 - oods_values[510]) / (point - pow113 * oods_point); + tempvar value = (column5 - oods_values[510]) / (point - pow118 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[510] * value; - tempvar value = (column4 - oods_values[511]) / (point - pow124 * oods_point); + tempvar value = (column5 - oods_values[511]) / (point - pow119 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[511] * value; - tempvar value = (column4 - oods_values[512]) / (point - pow141 * oods_point); + tempvar value = (column5 - oods_values[512]) / (point - pow122 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[512] * value; - tempvar value = (column4 - oods_values[513]) / (point - pow142 * oods_point); + tempvar value = (column5 - oods_values[513]) / (point - pow127 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[513] * value; - tempvar value = (column4 - oods_values[514]) / (point - pow145 * oods_point); + tempvar value = (column6 - oods_values[514]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[514] * value; - tempvar value = (column4 - oods_values[515]) / (point - pow160 * oods_point); + tempvar value = (column6 - oods_values[515]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[515] * value; - tempvar value = (column4 - oods_values[516]) / (point - pow163 * oods_point); + tempvar value = (column6 - oods_values[516]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[516] * value; - tempvar value = (column4 - oods_values[517]) / (point - pow164 * oods_point); + tempvar value = (column6 - oods_values[517]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[517] * value; - tempvar value = (column4 - oods_values[518]) / (point - pow179 * oods_point); + tempvar value = (column7 - oods_values[518]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[518] * value; - tempvar value = (column4 - oods_values[519]) / (point - pow180 * oods_point); + tempvar value = (column7 - oods_values[519]) / (point - pow56 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[519] * value; - tempvar value = (column4 - oods_values[520]) / (point - pow188 * oods_point); + tempvar value = (column7 - oods_values[520]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[520] * value; - tempvar value = (column4 - oods_values[521]) / (point - pow199 * oods_point); + tempvar value = (column7 - oods_values[521]) / (point - pow59 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[521] * value; - tempvar value = (column4 - oods_values[522]) / (point - pow200 * oods_point); + tempvar value = (column7 - oods_values[522]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[522] * value; - tempvar value = (column4 - oods_values[523]) / (point - pow208 * oods_point); + tempvar value = (column7 - oods_values[523]) / (point - pow61 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[523] * value; - tempvar value = (column4 - oods_values[524]) / (point - pow209 * oods_point); + tempvar value = (column7 - oods_values[524]) / (point - pow62 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[524] * value; - tempvar value = (column4 - oods_values[525]) / (point - pow216 * oods_point); + tempvar value = (column7 - oods_values[525]) / (point - pow63 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[525] * value; - tempvar value = (column4 - oods_values[526]) / (point - pow217 * oods_point); + tempvar value = (column7 - oods_values[526]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[526] * value; - tempvar value = (column4 - oods_values[527]) / (point - pow222 * oods_point); + tempvar value = (column7 - oods_values[527]) / (point - pow66 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[527] * value; - tempvar value = (column4 - oods_values[528]) / (point - pow223 * oods_point); + tempvar value = (column7 - oods_values[528]) / (point - pow67 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[528] * value; - tempvar value = (column4 - oods_values[529]) / (point - pow227 * oods_point); + tempvar value = (column7 - oods_values[529]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[529] * value; - tempvar value = (column4 - oods_values[530]) / (point - pow228 * oods_point); + tempvar value = (column7 - oods_values[530]) / (point - pow71 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[530] * value; - tempvar value = (column4 - oods_values[531]) / (point - pow253 * oods_point); + tempvar value = (column7 - oods_values[531]) / (point - pow74 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[531] * value; - tempvar value = (column4 - oods_values[532]) / (point - pow256 * oods_point); + tempvar value = (column7 - oods_values[532]) / (point - pow76 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[532] * value; - tempvar value = (column4 - oods_values[533]) / (point - pow263 * oods_point); + tempvar value = (column7 - oods_values[533]) / (point - pow82 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[533] * value; - tempvar value = (column4 - oods_values[534]) / (point - pow264 * oods_point); + tempvar value = (column7 - oods_values[534]) / (point - pow109 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[534] * value; - tempvar value = (column4 - oods_values[535]) / (point - pow276 * oods_point); + tempvar value = (column7 - oods_values[535]) / (point - pow135 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[535] * value; - tempvar value = (column4 - oods_values[536]) / (point - pow277 * oods_point); + tempvar value = (column7 - oods_values[536]) / (point - pow162 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[536] * value; - tempvar value = (column4 - oods_values[537]) / (point - pow281 * oods_point); + tempvar value = (column7 - oods_values[537]) / (point - pow166 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[537] * value; - tempvar value = (column4 - oods_values[538]) / (point - pow282 * oods_point); + tempvar value = (column7 - oods_values[538]) / (point - pow168 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[538] * value; - tempvar value = (column4 - oods_values[539]) / (point - pow285 * oods_point); + tempvar value = (column7 - oods_values[539]) / (point - pow174 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[539] * value; - tempvar value = (column4 - oods_values[540]) / (point - pow286 * oods_point); + tempvar value = (column7 - oods_values[540]) / (point - pow183 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[540] * value; - tempvar value = (column4 - oods_values[541]) / (point - pow292 * oods_point); + tempvar value = (column7 - oods_values[541]) / (point - pow184 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[541] * value; - tempvar value = (column4 - oods_values[542]) / (point - pow295 * oods_point); + tempvar value = (column7 - oods_values[542]) / (point - pow213 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[542] * value; - tempvar value = (column4 - oods_values[543]) / (point - pow313 * oods_point); + tempvar value = (column7 - oods_values[543]) / (point - pow216 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[543] * value; - tempvar value = (column4 - oods_values[544]) / (point - pow316 * oods_point); + tempvar value = (column7 - oods_values[544]) / (point - pow220 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[544] * value; - tempvar value = (column4 - oods_values[545]) / (point - pow317 * oods_point); + tempvar value = (column7 - oods_values[545]) / (point - pow221 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[545] * value; - tempvar value = (column4 - oods_values[546]) / (point - pow330 * oods_point); + tempvar value = (column7 - oods_values[546]) / (point - pow229 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[546] * value; - tempvar value = (column4 - oods_values[547]) / (point - pow378 * oods_point); + tempvar value = (column7 - oods_values[547]) / (point - pow230 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[547] * value; - tempvar value = (column4 - oods_values[548]) / (point - pow379 * oods_point); + tempvar value = (column7 - oods_values[548]) / (point - pow232 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[548] * value; - tempvar value = (column4 - oods_values[549]) / (point - pow387 * oods_point); + tempvar value = (column7 - oods_values[549]) / (point - pow233 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[549] * value; - tempvar value = (column4 - oods_values[550]) / (point - pow411 * oods_point); + tempvar value = (column7 - oods_values[550]) / (point - pow234 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[550] * value; - tempvar value = (column4 - oods_values[551]) / (point - pow419 * oods_point); + tempvar value = (column7 - oods_values[551]) / (point - pow235 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[551] * value; - tempvar value = (column4 - oods_values[552]) / (point - pow417 * oods_point); + tempvar value = (column7 - oods_values[552]) / (point - pow236 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[552] * value; - tempvar value = (column4 - oods_values[553]) / (point - pow408 * oods_point); + tempvar value = (column7 - oods_values[553]) / (point - pow238 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[553] * value; - tempvar value = (column4 - oods_values[554]) / (point - pow416 * oods_point); + tempvar value = (column7 - oods_values[554]) / (point - pow239 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[554] * value; - tempvar value = (column4 - oods_values[555]) / (point - pow425 * oods_point); + tempvar value = (column7 - oods_values[555]) / (point - pow244 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[555] * value; - tempvar value = (column4 - oods_values[556]) / (point - pow347 * oods_point); + tempvar value = (column7 - oods_values[556]) / (point - pow245 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[556] * value; - tempvar value = (column4 - oods_values[557]) / (point - pow424 * oods_point); + tempvar value = (column7 - oods_values[557]) / (point - pow298 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[557] * value; - tempvar value = (column4 - oods_values[558]) / (point - pow423 * oods_point); + tempvar value = (column7 - oods_values[558]) / (point - pow304 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[558] * value; - tempvar value = (column4 - oods_values[559]) / (point - pow402 * oods_point); + tempvar value = (column7 - oods_values[559]) / (point - pow305 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[559] * value; - tempvar value = (column4 - oods_values[560]) / (point - pow413 * oods_point); + tempvar value = (column7 - oods_values[560]) / (point - pow306 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[560] * value; - tempvar value = (column4 - oods_values[561]) / (point - pow421 * oods_point); + tempvar value = (column7 - oods_values[561]) / (point - pow311 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[561] * value; - tempvar value = (column4 - oods_values[562]) / (point - pow505 * oods_point); + tempvar value = (column7 - oods_values[562]) / (point - pow339 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[562] * value; - tempvar value = (column4 - oods_values[563]) / (point - pow495 * oods_point); + tempvar value = (column7 - oods_values[563]) / (point - pow379 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[563] * value; - tempvar value = (column4 - oods_values[564]) / (point - pow501 * oods_point); + tempvar value = (column7 - oods_values[564]) / (point - pow384 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[564] * value; - tempvar value = (column4 - oods_values[565]) / (point - pow502 * oods_point); + tempvar value = (column7 - oods_values[565]) / (point - pow385 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[565] * value; - tempvar value = (column4 - oods_values[566]) / (point - pow494 * oods_point); + tempvar value = (column7 - oods_values[566]) / (point - pow386 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[566] * value; - tempvar value = (column4 - oods_values[567]) / (point - pow493 * oods_point); + tempvar value = (column7 - oods_values[567]) / (point - pow387 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[567] * value; - tempvar value = (column4 - oods_values[568]) / (point - pow496 * oods_point); + tempvar value = (column7 - oods_values[568]) / (point - pow389 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[568] * value; - tempvar value = (column4 - oods_values[569]) / (point - pow490 * oods_point); + tempvar value = (column7 - oods_values[569]) / (point - pow394 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[569] * value; - tempvar value = (column4 - oods_values[570]) / (point - pow489 * oods_point); + tempvar value = (column7 - oods_values[570]) / (point - pow395 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[570] * value; - tempvar value = (column4 - oods_values[571]) / (point - pow500 * oods_point); + tempvar value = (column7 - oods_values[571]) / (point - pow396 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[571] * value; - tempvar value = (column4 - oods_values[572]) / (point - pow499 * oods_point); + tempvar value = (column7 - oods_values[572]) / (point - pow398 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[572] * value; - tempvar value = (column4 - oods_values[573]) / (point - pow524 * oods_point); + tempvar value = (column7 - oods_values[573]) / (point - pow406 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[573] * value; - tempvar value = (column5 - oods_values[574]) / (point - pow0 * oods_point); + tempvar value = (column7 - oods_values[574]) / (point - pow416 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[574] * value; - tempvar value = (column5 - oods_values[575]) / (point - pow53 * oods_point); + tempvar value = (column7 - oods_values[575]) / (point - pow436 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[575] * value; - tempvar value = (column5 - oods_values[576]) / (point - pow54 * oods_point); + tempvar value = (column7 - oods_values[576]) / (point - pow478 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[576] * value; - tempvar value = (column5 - oods_values[577]) / (point - pow56 * oods_point); + tempvar value = (column7 - oods_values[577]) / (point - pow618 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[577] * value; - tempvar value = (column6 - oods_values[578]) / (point - pow0 * oods_point); + tempvar value = (column7 - oods_values[578]) / (point - pow545 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[578] * value; - tempvar value = (column6 - oods_values[579]) / (point - pow53 * oods_point); + tempvar value = (column7 - oods_values[579]) / (point - pow546 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[579] * value; - tempvar value = (column6 - oods_values[580]) / (point - pow54 * oods_point); + tempvar value = (column7 - oods_values[580]) / (point - pow555 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[580] * value; - tempvar value = (column6 - oods_values[581]) / (point - pow56 * oods_point); + tempvar value = (column7 - oods_values[581]) / (point - pow547 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[581] * value; - tempvar value = (column6 - oods_values[582]) / (point - pow57 * oods_point); + tempvar value = (column7 - oods_values[582]) / (point - pow548 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[582] * value; - tempvar value = (column6 - oods_values[583]) / (point - pow58 * oods_point); + tempvar value = (column7 - oods_values[583]) / (point - pow549 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[583] * value; - tempvar value = (column6 - oods_values[584]) / (point - pow59 * oods_point); + tempvar value = (column7 - oods_values[584]) / (point - pow14 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[584] * value; - tempvar value = (column6 - oods_values[585]) / (point - pow60 * oods_point); + tempvar value = (column7 - oods_values[585]) / (point - pow73 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[585] * value; - tempvar value = (column6 - oods_values[586]) / (point - pow61 * oods_point); + tempvar value = (column7 - oods_values[586]) / (point - pow13 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[586] * value; - tempvar value = (column6 - oods_values[587]) / (point - pow62 * oods_point); + tempvar value = (column7 - oods_values[587]) / (point - pow540 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[587] * value; - tempvar value = (column6 - oods_values[588]) / (point - pow64 * oods_point); + tempvar value = (column7 - oods_values[588]) / (point - pow536 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[588] * value; - tempvar value = (column6 - oods_values[589]) / (point - pow65 * oods_point); + tempvar value = (column7 - oods_values[589]) / (point - pow12 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[589] * value; - tempvar value = (column6 - oods_values[590]) / (point - pow66 * oods_point); + tempvar value = (column7 - oods_values[590]) / (point - pow110 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[590] * value; - tempvar value = (column6 - oods_values[591]) / (point - pow77 * oods_point); + tempvar value = (column7 - oods_values[591]) / (point - pow136 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[591] * value; - tempvar value = (column6 - oods_values[592]) / (point - pow89 * oods_point); + tempvar value = (column7 - oods_values[592]) / (point - pow11 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[592] * value; - tempvar value = (column6 - oods_values[593]) / (point - pow99 * oods_point); + tempvar value = (column7 - oods_values[593]) / (point - pow80 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[593] * value; - tempvar value = (column6 - oods_values[594]) / (point - pow114 * oods_point); + tempvar value = (column7 - oods_values[594]) / (point - pow526 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[594] * value; - tempvar value = (column6 - oods_values[595]) / (point - pow120 * oods_point); + tempvar value = (column7 - oods_values[595]) / (point - pow528 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[595] * value; - tempvar value = (column6 - oods_values[596]) / (point - pow125 * oods_point); + tempvar value = (column7 - oods_values[596]) / (point - pow529 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[596] * value; - tempvar value = (column6 - oods_values[597]) / (point - pow131 * oods_point); + tempvar value = (column7 - oods_values[597]) / (point - pow515 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[597] * value; - tempvar value = (column6 - oods_values[598]) / (point - pow225 * oods_point); + tempvar value = (column7 - oods_values[598]) / (point - pow10 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[598] * value; - tempvar value = (column6 - oods_values[599]) / (point - pow228 * oods_point); + tempvar value = (column7 - oods_values[599]) / (point - pow621 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[599] * value; - tempvar value = (column6 - oods_values[600]) / (point - pow229 * oods_point); + tempvar value = (column7 - oods_values[600]) / (point - pow559 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[600] * value; - tempvar value = (column6 - oods_values[601]) / (point - pow230 * oods_point); + tempvar value = (column7 - oods_values[601]) / (point - pow543 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[601] * value; - tempvar value = (column6 - oods_values[602]) / (point - pow242 * oods_point); + tempvar value = (column7 - oods_values[602]) / (point - pow9 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[602] * value; - tempvar value = (column6 - oods_values[603]) / (point - pow243 * oods_point); + tempvar value = (column7 - oods_values[603]) / (point - pow8 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[603] * value; - tempvar value = (column6 - oods_values[604]) / (point - pow245 * oods_point); + tempvar value = (column7 - oods_values[604]) / (point - pow604 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[604] * value; - tempvar value = (column6 - oods_values[605]) / (point - pow246 * oods_point); + tempvar value = (column7 - oods_values[605]) / (point - pow614 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[605] * value; - tempvar value = (column6 - oods_values[606]) / (point - pow247 * oods_point); + tempvar value = (column7 - oods_values[606]) / (point - pow508 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[606] * value; - tempvar value = (column6 - oods_values[607]) / (point - pow248 * oods_point); + tempvar value = (column7 - oods_values[607]) / (point - pow7 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[607] * value; - tempvar value = (column6 - oods_values[608]) / (point - pow249 * oods_point); + tempvar value = (column7 - oods_values[608]) / (point - pow6 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[608] * value; - tempvar value = (column6 - oods_values[609]) / (point - pow251 * oods_point); + tempvar value = (column7 - oods_values[609]) / (point - pow574 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[609] * value; - tempvar value = (column6 - oods_values[610]) / (point - pow308 * oods_point); + tempvar value = (column7 - oods_values[610]) / (point - pow537 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[610] * value; - tempvar value = (column7 - oods_values[611]) / (point - pow0 * oods_point); + tempvar value = (column7 - oods_values[611]) / (point - pow5 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[611] * value; - tempvar value = (column7 - oods_values[612]) / (point - pow53 * oods_point); + tempvar value = (column7 - oods_values[612]) / (point - pow4 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[612] * value; - tempvar value = (column7 - oods_values[613]) / (point - pow54 * oods_point); + tempvar value = (column7 - oods_values[613]) / (point - pow541 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[613] * value; - tempvar value = (column7 - oods_values[614]) / (point - pow57 * oods_point); + tempvar value = (column7 - oods_values[614]) / (point - pow3 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[614] * value; - tempvar value = (column7 - oods_values[615]) / (point - pow58 * oods_point); + tempvar value = (column7 - oods_values[615]) / (point - pow585 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[615] * value; - tempvar value = (column7 - oods_values[616]) / (point - pow59 * oods_point); + tempvar value = (column7 - oods_values[616]) / (point - pow524 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[616] * value; - tempvar value = (column7 - oods_values[617]) / (point - pow61 * oods_point); + tempvar value = (column7 - oods_values[617]) / (point - pow519 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[617] * value; - tempvar value = (column7 - oods_values[618]) / (point - pow62 * oods_point); + tempvar value = (column7 - oods_values[618]) / (point - pow562 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[618] * value; - tempvar value = (column7 - oods_values[619]) / (point - pow63 * oods_point); + tempvar value = (column7 - oods_values[619]) / (point - pow563 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[619] * value; - tempvar value = (column7 - oods_values[620]) / (point - pow65 * oods_point); + tempvar value = (column7 - oods_values[620]) / (point - pow564 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[620] * value; - tempvar value = (column7 - oods_values[621]) / (point - pow66 * oods_point); + tempvar value = (column7 - oods_values[621]) / (point - pow601 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[621] * value; - tempvar value = (column7 - oods_values[622]) / (point - pow67 * oods_point); + tempvar value = (column7 - oods_values[622]) / (point - pow628 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[622] * value; - tempvar value = (column7 - oods_values[623]) / (point - pow69 * oods_point); + tempvar value = (column7 - oods_values[623]) / (point - pow625 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[623] * value; - tempvar value = (column7 - oods_values[624]) / (point - pow71 * oods_point); + tempvar value = (column7 - oods_values[624]) / (point - pow626 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[624] * value; - tempvar value = (column7 - oods_values[625]) / (point - pow73 * oods_point); + tempvar value = (column7 - oods_values[625]) / (point - pow509 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[625] * value; - tempvar value = (column7 - oods_values[626]) / (point - pow74 * oods_point); + tempvar value = (column8 - oods_values[626]) / (point - pow0 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[626] * value; - tempvar value = (column7 - oods_values[627]) / (point - pow75 * oods_point); + tempvar value = (column8 - oods_values[627]) / (point - pow57 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[627] * value; - tempvar value = (column7 - oods_values[628]) / (point - pow76 * oods_point); + tempvar value = (column8 - oods_values[628]) / (point - pow60 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[628] * value; - tempvar value = (column7 - oods_values[629]) / (point - pow78 * oods_point); + tempvar value = (column8 - oods_values[629]) / (point - pow62 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[629] * value; - tempvar value = (column7 - oods_values[630]) / (point - pow79 * oods_point); + tempvar value = (column8 - oods_values[630]) / (point - pow64 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[630] * value; - tempvar value = (column7 - oods_values[631]) / (point - pow81 * oods_point); + tempvar value = (column8 - oods_values[631]) / (point - pow66 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[631] * value; - tempvar value = (column7 - oods_values[632]) / (point - pow83 * oods_point); + tempvar value = (column8 - oods_values[632]) / (point - pow68 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[632] * value; - tempvar value = (column7 - oods_values[633]) / (point - pow84 * oods_point); + tempvar value = (column8 - oods_values[633]) / (point - pow70 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[633] * value; - tempvar value = (column7 - oods_values[634]) / (point - pow86 * oods_point); + tempvar value = (column8 - oods_values[634]) / (point - pow75 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[634] * value; - tempvar value = (column7 - oods_values[635]) / (point - pow90 * oods_point); + tempvar value = (column8 - oods_values[635]) / (point - pow77 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[635] * value; - tempvar value = (column7 - oods_values[636]) / (point - pow91 * oods_point); + tempvar value = (column8 - oods_values[636]) / (point - pow78 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[636] * value; - tempvar value = (column7 - oods_values[637]) / (point - pow93 * oods_point); + tempvar value = (column8 - oods_values[637]) / (point - pow81 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[637] * value; - tempvar value = (column7 - oods_values[638]) / (point - pow95 * oods_point); + tempvar value = (column8 - oods_values[638]) / (point - pow83 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[638] * value; - tempvar value = (column7 - oods_values[639]) / (point - pow96 * oods_point); + tempvar value = (column8 - oods_values[639]) / (point - pow84 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[639] * value; - tempvar value = (column7 - oods_values[640]) / (point - pow98 * oods_point); + tempvar value = (column8 - oods_values[640]) / (point - pow86 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[640] * value; - tempvar value = (column7 - oods_values[641]) / (point - pow100 * oods_point); + tempvar value = (column8 - oods_values[641]) / (point - pow87 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[641] * value; - tempvar value = (column7 - oods_values[642]) / (point - pow108 * oods_point); + tempvar value = (column8 - oods_values[642]) / (point - pow88 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[642] * value; - tempvar value = (column7 - oods_values[643]) / (point - pow110 * oods_point); + tempvar value = (column8 - oods_values[643]) / (point - pow90 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[643] * value; - tempvar value = (column7 - oods_values[644]) / (point - pow111 * oods_point); + tempvar value = (column8 - oods_values[644]) / (point - pow92 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[644] * value; - tempvar value = (column7 - oods_values[645]) / (point - pow115 * oods_point); + tempvar value = (column8 - oods_values[645]) / (point - pow93 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[645] * value; - tempvar value = (column7 - oods_values[646]) / (point - pow116 * oods_point); + tempvar value = (column8 - oods_values[646]) / (point - pow95 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[646] * value; - tempvar value = (column7 - oods_values[647]) / (point - pow117 * oods_point); + tempvar value = (column8 - oods_values[647]) / (point - pow96 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[647] * value; - tempvar value = (column7 - oods_values[648]) / (point - pow118 * oods_point); + tempvar value = (column8 - oods_values[648]) / (point - pow97 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[648] * value; - tempvar value = (column7 - oods_values[649]) / (point - pow119 * oods_point); + tempvar value = (column8 - oods_values[649]) / (point - pow99 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[649] * value; - tempvar value = (column7 - oods_values[650]) / (point - pow121 * oods_point); + tempvar value = (column8 - oods_values[650]) / (point - pow100 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[650] * value; - tempvar value = (column7 - oods_values[651]) / (point - pow122 * oods_point); + tempvar value = (column8 - oods_values[651]) / (point - pow107 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[651] * value; - tempvar value = (column7 - oods_values[652]) / (point - pow123 * oods_point); + tempvar value = (column8 - oods_values[652]) / (point - pow108 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[652] * value; - tempvar value = (column7 - oods_values[653]) / (point - pow126 * oods_point); + tempvar value = (column8 - oods_values[653]) / (point - pow111 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[653] * value; - tempvar value = (column7 - oods_values[654]) / (point - pow127 * oods_point); + tempvar value = (column8 - oods_values[654]) / (point - pow113 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[654] * value; - tempvar value = (column7 - oods_values[655]) / (point - pow128 * oods_point); + tempvar value = (column8 - oods_values[655]) / (point - pow114 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[655] * value; - tempvar value = (column7 - oods_values[656]) / (point - pow129 * oods_point); + tempvar value = (column8 - oods_values[656]) / (point - pow115 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[656] * value; - tempvar value = (column7 - oods_values[657]) / (point - pow130 * oods_point); + tempvar value = (column8 - oods_values[657]) / (point - pow116 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[657] * value; - tempvar value = (column7 - oods_values[658]) / (point - pow140 * oods_point); + tempvar value = (column8 - oods_values[658]) / (point - pow117 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[658] * value; - tempvar value = (column7 - oods_values[659]) / (point - pow143 * oods_point); + tempvar value = (column8 - oods_values[659]) / (point - pow118 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[659] * value; - tempvar value = (column7 - oods_values[660]) / (point - pow144 * oods_point); + tempvar value = (column8 - oods_values[660]) / (point - pow119 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[660] * value; - tempvar value = (column7 - oods_values[661]) / (point - pow146 * oods_point); + tempvar value = (column8 - oods_values[661]) / (point - pow120 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[661] * value; - tempvar value = (column7 - oods_values[662]) / (point - pow148 * oods_point); + tempvar value = (column8 - oods_values[662]) / (point - pow122 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[662] * value; - tempvar value = (column7 - oods_values[663]) / (point - pow150 * oods_point); + tempvar value = (column8 - oods_values[663]) / (point - pow123 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[663] * value; - tempvar value = (column7 - oods_values[664]) / (point - pow161 * oods_point); + tempvar value = (column8 - oods_values[664]) / (point - pow124 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[664] * value; - tempvar value = (column7 - oods_values[665]) / (point - pow162 * oods_point); + tempvar value = (column8 - oods_values[665]) / (point - pow125 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[665] * value; - tempvar value = (column7 - oods_values[666]) / (point - pow165 * oods_point); + tempvar value = (column8 - oods_values[666]) / (point - pow126 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[666] * value; - tempvar value = (column7 - oods_values[667]) / (point - pow167 * oods_point); + tempvar value = (column8 - oods_values[667]) / (point - pow137 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[667] * value; - tempvar value = (column7 - oods_values[668]) / (point - pow186 * oods_point); + tempvar value = (column8 - oods_values[668]) / (point - pow139 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[668] * value; - tempvar value = (column7 - oods_values[669]) / (point - pow189 * oods_point); + tempvar value = (column8 - oods_values[669]) / (point - pow141 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[669] * value; - tempvar value = (column7 - oods_values[670]) / (point - pow190 * oods_point); + tempvar value = (column8 - oods_values[670]) / (point - pow143 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[670] * value; - tempvar value = (column7 - oods_values[671]) / (point - pow191 * oods_point); + tempvar value = (column8 - oods_values[671]) / (point - pow145 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[671] * value; - tempvar value = (column7 - oods_values[672]) / (point - pow193 * oods_point); + tempvar value = (column8 - oods_values[672]) / (point - pow147 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[672] * value; - tempvar value = (column7 - oods_values[673]) / (point - pow194 * oods_point); + tempvar value = (column8 - oods_values[673]) / (point - pow156 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[673] * value; - tempvar value = (column7 - oods_values[674]) / (point - pow196 * oods_point); + tempvar value = (column8 - oods_values[674]) / (point - pow157 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[674] * value; - tempvar value = (column7 - oods_values[675]) / (point - pow202 * oods_point); + tempvar value = (column8 - oods_values[675]) / (point - pow160 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[675] * value; - tempvar value = (column7 - oods_values[676]) / (point - pow205 * oods_point); + tempvar value = (column8 - oods_values[676]) / (point - pow163 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[676] * value; - tempvar value = (column7 - oods_values[677]) / (point - pow3 * oods_point); + tempvar value = (column8 - oods_values[677]) / (point - pow175 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[677] * value; - tempvar value = (column7 - oods_values[678]) / (point - pow231 * oods_point); + tempvar value = (column8 - oods_values[678]) / (point - pow177 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[678] * value; - tempvar value = (column7 - oods_values[679]) / (point - pow233 * oods_point); + tempvar value = (column8 - oods_values[679]) / (point - pow179 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[679] * value; - tempvar value = (column7 - oods_values[680]) / (point - pow234 * oods_point); + tempvar value = (column8 - oods_values[680]) / (point - pow181 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[680] * value; - tempvar value = (column7 - oods_values[681]) / (point - pow239 * oods_point); + tempvar value = (column8 - oods_values[681]) / (point - pow180 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[681] * value; - tempvar value = (column7 - oods_values[682]) / (point - pow244 * oods_point); + tempvar value = (column8 - oods_values[682]) / (point - pow182 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[682] * value; - tempvar value = (column7 - oods_values[683]) / (point - pow250 * oods_point); + tempvar value = (column8 - oods_values[683]) / (point - pow190 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[683] * value; - tempvar value = (column7 - oods_values[684]) / (point - pow258 * oods_point); + tempvar value = (column8 - oods_values[684]) / (point - pow191 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[684] * value; - tempvar value = (column7 - oods_values[685]) / (point - pow260 * oods_point); + tempvar value = (column8 - oods_values[685]) / (point - pow258 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[685] * value; - tempvar value = (column7 - oods_values[686]) / (point - pow261 * oods_point); + tempvar value = (column8 - oods_values[686]) / (point - pow219 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[686] * value; - tempvar value = (column7 - oods_values[687]) / (point - pow266 * oods_point); + tempvar value = (column8 - oods_values[687]) / (point - pow222 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[687] * value; - tempvar value = (column7 - oods_values[688]) / (point - pow269 * oods_point); + tempvar value = (column8 - oods_values[688]) / (point - pow223 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[688] * value; - tempvar value = (column7 - oods_values[689]) / (point - pow271 * oods_point); + tempvar value = (column8 - oods_values[689]) / (point - pow228 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[689] * value; - tempvar value = (column7 - oods_values[690]) / (point - pow270 * oods_point); + tempvar value = (column8 - oods_values[690]) / (point - pow224 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[690] * value; - tempvar value = (column7 - oods_values[691]) / (point - pow273 * oods_point); + tempvar value = (column8 - oods_values[691]) / (point - pow231 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[691] * value; - tempvar value = (column7 - oods_values[692]) / (point - pow2 * oods_point); + tempvar value = (column8 - oods_values[692]) / (point - pow248 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[692] * value; - tempvar value = (column7 - oods_values[693]) / (point - pow288 * oods_point); + tempvar value = (column8 - oods_values[693]) / (point - pow249 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[693] * value; - tempvar value = (column7 - oods_values[694]) / (point - pow289 * oods_point); + tempvar value = (column8 - oods_values[694]) / (point - pow259 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[694] * value; - tempvar value = (column7 - oods_values[695]) / (point - pow290 * oods_point); + tempvar value = (column8 - oods_values[695]) / (point - pow260 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[695] * value; - tempvar value = (column7 - oods_values[696]) / (point - pow300 * oods_point); + tempvar value = (column8 - oods_values[696]) / (point - pow261 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[696] * value; - tempvar value = (column7 - oods_values[697]) / (point - pow301 * oods_point); + tempvar value = (column8 - oods_values[697]) / (point - pow263 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[697] * value; - tempvar value = (column7 - oods_values[698]) / (point - pow305 * oods_point); + tempvar value = (column8 - oods_values[698]) / (point - pow265 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[698] * value; - tempvar value = (column7 - oods_values[699]) / (point - pow306 * oods_point); + tempvar value = (column8 - oods_values[699]) / (point - pow264 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[699] * value; - tempvar value = (column7 - oods_values[700]) / (point - pow307 * oods_point); + tempvar value = (column8 - oods_values[700]) / (point - pow266 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[700] * value; - tempvar value = (column7 - oods_values[701]) / (point - pow429 * oods_point); + tempvar value = (column8 - oods_values[701]) / (point - pow284 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[701] * value; - tempvar value = (column7 - oods_values[702]) / (point - pow430 * oods_point); + tempvar value = (column8 - oods_values[702]) / (point - pow286 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[702] * value; - tempvar value = (column7 - oods_values[703]) / (point - pow431 * oods_point); + tempvar value = (column8 - oods_values[703]) / (point - pow288 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[703] * value; - tempvar value = (column7 - oods_values[704]) / (point - pow435 * oods_point); + tempvar value = (column8 - oods_values[704]) / (point - pow290 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[704] * value; - tempvar value = (column7 - oods_values[705]) / (point - pow422 * oods_point); + tempvar value = (column8 - oods_values[705]) / (point - pow292 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[705] * value; - tempvar value = (column7 - oods_values[706]) / (point - pow426 * oods_point); + tempvar value = (column8 - oods_values[706]) / (point - pow293 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[706] * value; - tempvar value = (column7 - oods_values[707]) / (point - pow456 * oods_point); + tempvar value = (column8 - oods_values[707]) / (point - pow295 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[707] * value; - tempvar value = (column7 - oods_values[708]) / (point - pow457 * oods_point); + tempvar value = (column8 - oods_values[708]) / (point - pow296 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[708] * value; - tempvar value = (column7 - oods_values[709]) / (point - pow462 * oods_point); + tempvar value = (column8 - oods_values[709]) / (point - pow297 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[709] * value; - tempvar value = (column7 - oods_values[710]) / (point - pow463 * oods_point); + tempvar value = (column8 - oods_values[710]) / (point - pow408 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[710] * value; - tempvar value = (column7 - oods_values[711]) / (point - pow465 * oods_point); + tempvar value = (column8 - oods_values[711]) / (point - pow409 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[711] * value; - tempvar value = (column7 - oods_values[712]) / (point - pow466 * oods_point); + tempvar value = (column8 - oods_values[712]) / (point - pow410 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[712] * value; - tempvar value = (column7 - oods_values[713]) / (point - pow468 * oods_point); + tempvar value = (column8 - oods_values[713]) / (point - pow411 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[713] * value; - tempvar value = (column7 - oods_values[714]) / (point - pow470 * oods_point); + tempvar value = (column8 - oods_values[714]) / (point - pow2 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[714] * value; - tempvar value = (column7 - oods_values[715]) / (point - pow471 * oods_point); + tempvar value = (column8 - oods_values[715]) / (point - pow420 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[715] * value; - tempvar value = (column7 - oods_values[716]) / (point - pow474 * oods_point); + tempvar value = (column8 - oods_values[716]) / (point - pow445 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[716] * value; - tempvar value = (column7 - oods_values[717]) / (point - pow475 * oods_point); + tempvar value = (column8 - oods_values[717]) / (point - pow446 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[717] * value; - tempvar value = (column7 - oods_values[718]) / (point - pow1 * oods_point); + tempvar value = (column8 - oods_values[718]) / (point - pow448 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[718] * value; - tempvar value = (column7 - oods_values[719]) / (point - pow467 * oods_point); + tempvar value = (column8 - oods_values[719]) / (point - pow449 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[719] * value; - tempvar value = (column7 - oods_values[720]) / (point - pow473 * oods_point); + tempvar value = (column8 - oods_values[720]) / (point - pow451 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[720] * value; - tempvar value = (column7 - oods_values[721]) / (point - pow504 * oods_point); + tempvar value = (column8 - oods_values[721]) / (point - pow452 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[721] * value; - tempvar value = (column7 - oods_values[722]) / (point - pow506 * oods_point); + tempvar value = (column8 - oods_values[722]) / (point - pow454 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[722] * value; - tempvar value = (column7 - oods_values[723]) / (point - pow507 * oods_point); + tempvar value = (column8 - oods_values[723]) / (point - pow458 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[723] * value; - tempvar value = (column7 - oods_values[724]) / (point - pow508 * oods_point); + tempvar value = (column8 - oods_values[724]) / (point - pow459 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[724] * value; - tempvar value = (column7 - oods_values[725]) / (point - pow509 * oods_point); + tempvar value = (column8 - oods_values[725]) / (point - pow479 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[725] * value; - tempvar value = (column8 - oods_values[726]) / (point - pow0 * oods_point); + tempvar value = (column8 - oods_values[726]) / (point - pow482 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[726] * value; - tempvar value = (column8 - oods_values[727]) / (point - pow53 * oods_point); + tempvar value = (column8 - oods_values[727]) / (point - pow1 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[727] * value; - tempvar value = (column9 - oods_values[728]) / (point - pow0 * oods_point); + tempvar value = (column8 - oods_values[728]) / (point - pow453 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[728] * value; - tempvar value = (column9 - oods_values[729]) / (point - pow53 * oods_point); + tempvar value = (column8 - oods_values[729]) / (point - pow485 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[729] * value; - tempvar value = (column10 - oods_values[730]) / (point - pow0 * oods_point); + tempvar value = (column8 - oods_values[730]) / (point - pow489 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[730] * value; - tempvar value = (column10 - oods_values[731]) / (point - pow53 * oods_point); + tempvar value = (column8 - oods_values[731]) / (point - pow490 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[731] * value; - tempvar value = (column10 - oods_values[732]) / (point - pow54 * oods_point); + tempvar value = (column8 - oods_values[732]) / (point - pow491 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[732] * value; - tempvar value = (column10 - oods_values[733]) / (point - pow58 * oods_point); + tempvar value = (column8 - oods_values[733]) / (point - pow492 * oods_point); tempvar total_sum = total_sum + constraint_coefficients[733] * value; + tempvar value = (column8 - oods_values[734]) / (point - pow493 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[734] * value; + + tempvar value = (column9 - oods_values[735]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[735] * value; + + tempvar value = (column9 - oods_values[736]) / (point - pow56 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[736] * value; + + tempvar value = (column10 - oods_values[737]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[737] * value; + + tempvar value = (column10 - oods_values[738]) / (point - pow56 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[738] * value; + + tempvar value = (column11 - oods_values[739]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[739] * value; + + tempvar value = (column11 - oods_values[740]) / (point - pow56 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[740] * value; + + tempvar value = (column11 - oods_values[741]) / (point - pow57 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[741] * value; + + tempvar value = (column11 - oods_values[742]) / (point - pow59 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[742] * value; + // Sum the OODS boundary constraints on the composition polynomials. let (oods_point_to_deg) = pow(oods_point, CONSTRAINT_DEGREE); - tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND] - oods_values[734]) / ( + tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND] - oods_values[743]) / ( point - oods_point_to_deg ); - tempvar total_sum = total_sum + constraint_coefficients[734] * value; + tempvar total_sum = total_sum + constraint_coefficients[743] * value; - tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND + 1] - oods_values[735]) / + tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND + 1] - oods_values[744]) / (point - oods_point_to_deg); - tempvar total_sum = total_sum + constraint_coefficients[735] * value; + tempvar total_sum = total_sum + constraint_coefficients[744] * value; - static_assert 736 == MASK_SIZE + CONSTRAINT_DEGREE; + static_assert 745 == MASK_SIZE + CONSTRAINT_DEGREE; return (res=total_sum); } diff --git a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/composition.cairo b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/composition.cairo index f8f2c605..f3f0618b 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/composition.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/composition.cairo @@ -155,6 +155,7 @@ func traces_eval_composition_polynomial{range_check_ptr}( initial_ec_op_addr=public_input.segments[segments.EC_OP].begin_addr, initial_keccak_addr=public_input.segments[segments.KECCAK].begin_addr, initial_poseidon_addr=public_input.segments[segments.POSEIDON].begin_addr, + initial_range_check96_addr=public_input.segments[segments.RANGE_CHECK96].begin_addr, range_check_min=public_input.range_check_min, range_check_max=public_input.range_check_max, offset_size=2 ** 16, diff --git a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/global_values.cairo b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/global_values.cairo index 063cdb0d..b7693f8e 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/global_values.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/global_values.cairo @@ -29,6 +29,7 @@ struct GlobalValues { initial_ec_op_addr: felt, initial_keccak_addr: felt, initial_poseidon_addr: felt, + initial_range_check96_addr: felt, range_check_min: felt, range_check_max: felt, diff --git a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/public_verify.cairo b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/public_verify.cairo index 44d2ae66..7632e81a 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/public_verify.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/all_cairo/public_verify.cairo @@ -12,6 +12,7 @@ from starkware.cairo.stark_verifier.air.layouts.all_cairo.autogenerated import ( LAYOUT_CODE, PEDERSEN_BUILTIN_ROW_RATIO, POSEIDON__ROW_RATIO, + RANGE_CHECK96_BUILTIN_ROW_RATIO, RANGE_CHECK_BUILTIN_ROW_RATIO, ) from starkware.cairo.stark_verifier.air.public_input import PublicInput, SegmentInfo @@ -32,7 +33,8 @@ namespace segments { const EC_OP = 7; const KECCAK = 8; const POSEIDON = 9; - const N_SEGMENTS = 10; + const RANGE_CHECK96 = 10; + const N_SEGMENTS = 11; } const INITIAL_PC = 1; @@ -41,7 +43,7 @@ const FINAL_PC = INITIAL_PC + 4; // Returns a zero-terminated list of builtins supported by this layout. func get_layout_builtins() -> (n_builtins: felt, builtins: felt*) { let (builtins_address) = get_label_location(data); - let n_builtins = 8; + let n_builtins = 9; assert builtins_address[n_builtins] = 0; return (n_builtins=n_builtins, builtins=builtins_address); @@ -54,6 +56,7 @@ func get_layout_builtins() -> (n_builtins: felt, builtins: felt*) { dw 'ec_op'; dw 'keccak'; dw 'poseidon'; + dw 'range_check96'; dw 0; } @@ -172,5 +175,14 @@ func public_input_validate{range_check_ptr}( // and that stop_ptr - begin_addr is divisible by 6. assert_nn_le(n_poseidon_uses, n_poseidon_copies); + let n_range_check96_copies = trace_length / RANGE_CHECK96_BUILTIN_ROW_RATIO; + let n_range_check96_uses = ( + public_input.segments[segments.RANGE_CHECK96].stop_ptr - + public_input.segments[segments.RANGE_CHECK96].begin_addr + ); + // Note that the following call implies that trace_length is divisible by + // RANGE_CHECK96_BUILTIN_ROW_RATIO. + assert_nn_le(n_range_check96_uses, n_range_check96_copies); + return (); } diff --git a/src/starkware/cairo/stark_verifier/air/layouts/dex/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/dex/autogenerated.cairo index bac9c4fe..4e818829 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/dex/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/dex/autogenerated.cairo @@ -28,6 +28,7 @@ const HAS_BITWISE_BUILTIN = 0; const HAS_EC_OP_BUILTIN = 0; const HAS_KECCAK_BUILTIN = 0; const HAS_POSEIDON_BUILTIN = 0; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x646578; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; diff --git a/src/starkware/cairo/stark_verifier/air/layouts/dynamic/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/dynamic/autogenerated.cairo index 1260531e..5acba6eb 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/dynamic/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/dynamic/autogenerated.cairo @@ -33,6 +33,7 @@ const HAS_BITWISE_BUILTIN = 1; const HAS_EC_OP_BUILTIN = 1; const HAS_KECCAK_BUILTIN = 1; const HAS_POSEIDON_BUILTIN = 1; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x64796e616d6963; const CONSTRAINT_DEGREE = 2; const IS_DYNAMIC_AIR = 1; diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive/autogenerated.cairo index cec33c2e..68a4a6fb 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/recursive/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive/autogenerated.cairo @@ -28,6 +28,7 @@ const HAS_BITWISE_BUILTIN = 1; const HAS_EC_OP_BUILTIN = 0; const HAS_KECCAK_BUILTIN = 0; const HAS_POSEIDON_BUILTIN = 0; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x726563757273697665; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/BUILD b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/BUILD new file mode 100644 index 00000000..bf8aab2c --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/BUILD @@ -0,0 +1,23 @@ +load("//src/starkware/cairo/lang:cairo_rules.bzl", "cairo_library") + +package(default_visibility = ["//visibility:public"]) + +exports_files(glob(["*.cairo"])) + +cairo_library( + name = "recursive_with_poseidon", + srcs = [ + "autogenerated.cairo", + "composition.cairo", + "global_values.cairo", + "periodic_columns.cairo", + "public_verify.cairo", + "verify.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/cairo/common:cairo_common_cairo_lib", + "//src/starkware/cairo/stark_verifier/air:cairo", + "//src/starkware/cairo/stark_verifier/core:stark", + ], +) diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/autogenerated.cairo new file mode 100644 index 00000000..9914a65f --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/autogenerated.cairo @@ -0,0 +1,2076 @@ +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.global_values import ( + GlobalValues, +) +from starkware.cairo.common.math import safe_div, safe_mult +from starkware.cairo.common.pow import pow + +const N_DYNAMIC_PARAMS = 0; +const N_CONSTRAINTS = 124; +const MASK_SIZE = 192; +const CPU_COMPONENT_STEP = 1; +const CPU_COMPONENT_HEIGHT = 16; +const PUBLIC_MEMORY_STEP = 16; +const HAS_DILUTED_POOL = 1; +const DILUTED_SPACING = 4; +const DILUTED_N_BITS = 16; +const PEDERSEN_BUILTIN_RATIO = 256; +const PEDERSEN_BUILTIN_ROW_RATIO = 4096; +const PEDERSEN_BUILTIN_REPETITIONS = 1; +const RANGE_CHECK_BUILTIN_RATIO = 16; +const RANGE_CHECK_BUILTIN_ROW_RATIO = 256; +const RANGE_CHECK_N_PARTS = 8; +const BITWISE__RATIO = 16; +const BITWISE__ROW_RATIO = 256; +const BITWISE__TOTAL_N_BITS = 251; +const POSEIDON__RATIO = 64; +const POSEIDON__ROW_RATIO = 1024; +const POSEIDON__M = 3; +const POSEIDON__ROUNDS_FULL = 8; +const POSEIDON__ROUNDS_PARTIAL = 83; +const HAS_OUTPUT_BUILTIN = 1; +const HAS_PEDERSEN_BUILTIN = 1; +const HAS_RANGE_CHECK_BUILTIN = 1; +const HAS_ECDSA_BUILTIN = 0; +const HAS_BITWISE_BUILTIN = 1; +const HAS_EC_OP_BUILTIN = 0; +const HAS_KECCAK_BUILTIN = 0; +const HAS_POSEIDON_BUILTIN = 1; +const HAS_RANGE_CHECK96_BUILTIN = 0; +const LAYOUT_CODE = 0x7265637572736976655f776974685f706f736569646f6e; +const CONSTRAINT_DEGREE = 2; +const LOG_CPU_COMPONENT_HEIGHT = 4; +const NUM_COLUMNS_FIRST = 6; +const NUM_COLUMNS_SECOND = 2; +const IS_DYNAMIC_AIR = 0; + +func eval_composition_polynomial{range_check_ptr}( + mask_values: felt*, + constraint_coefficients: felt*, + point: felt, + trace_generator: felt, + global_values: GlobalValues*, +) -> (res: felt) { + alloc_locals; + + // Compute powers. + let (local pow0) = pow(point, (safe_div(global_values.trace_length, 4096))); + local pow1 = pow0 * pow0; // pow(point, (safe_div(global_values.trace_length, 2048))). + local pow2 = pow1 * pow1; // pow(point, (safe_div(global_values.trace_length, 1024))). + local pow3 = pow2 * pow2; // pow(point, (safe_div(global_values.trace_length, 512))). + local pow4 = pow3 * pow3; // pow(point, (safe_div(global_values.trace_length, 256))). + local pow5 = pow4 * pow4; // pow(point, (safe_div(global_values.trace_length, 128))). + local pow6 = pow5 * pow5; // pow(point, (safe_div(global_values.trace_length, 64))). + local pow7 = pow6 * pow6; // pow(point, (safe_div(global_values.trace_length, 32))). + local pow8 = pow7 * pow7; // pow(point, (safe_div(global_values.trace_length, 16))). + local pow9 = pow8 * pow8; // pow(point, (safe_div(global_values.trace_length, 8))). + local pow10 = pow9 * pow9; // pow(point, (safe_div(global_values.trace_length, 4))). + local pow11 = pow10 * pow10; // pow(point, (safe_div(global_values.trace_length, 2))). + local pow12 = pow11 * pow11; // pow(point, global_values.trace_length). + let (local pow13) = pow(trace_generator, global_values.trace_length - 512); + let (local pow14) = pow(trace_generator, global_values.trace_length - 256); + let (local pow15) = pow(trace_generator, global_values.trace_length - 4096); + let (local pow16) = pow(trace_generator, global_values.trace_length - 4); + let (local pow17) = pow(trace_generator, global_values.trace_length - 2); + let (local pow18) = pow(trace_generator, global_values.trace_length - 16); + let (local pow19) = pow(trace_generator, (safe_div(global_values.trace_length, 2))); + let (local pow20) = pow( + trace_generator, (safe_div((safe_mult(255, global_values.trace_length)), 256)) + ); + let (local pow21) = pow(trace_generator, (safe_div(global_values.trace_length, 64))); + local pow22 = pow21 * pow21; // pow(trace_generator, (safe_div(global_values.trace_length, 32))). + local pow23 = pow21 * pow22; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 64))). + local pow24 = pow21 * pow23; // pow(trace_generator, (safe_div(global_values.trace_length, 16))). + local pow25 = pow21 * pow24; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 64))). + local pow26 = pow21 * pow25; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 32))). + local pow27 = pow19 * pow26; // pow(trace_generator, (safe_div((safe_mult(19, global_values.trace_length)), 32))). + local pow28 = pow21 * pow26; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 64))). + local pow29 = pow21 * pow28; // pow(trace_generator, (safe_div(global_values.trace_length, 8))). + local pow30 = pow19 * pow29; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 8))). + local pow31 = pow21 * pow29; // pow(trace_generator, (safe_div((safe_mult(9, global_values.trace_length)), 64))). + local pow32 = pow21 * pow31; // pow(trace_generator, (safe_div((safe_mult(5, global_values.trace_length)), 32))). + local pow33 = pow19 * pow32; // pow(trace_generator, (safe_div((safe_mult(21, global_values.trace_length)), 32))). + local pow34 = pow21 * pow32; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 64))). + local pow35 = pow21 * pow34; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 16))). + local pow36 = pow19 * pow35; // pow(trace_generator, (safe_div((safe_mult(11, global_values.trace_length)), 16))). + local pow37 = pow21 * pow35; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 64))). + local pow38 = pow21 * pow37; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 32))). + local pow39 = pow19 * pow38; // pow(trace_generator, (safe_div((safe_mult(23, global_values.trace_length)), 32))). + local pow40 = pow21 * pow38; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 64))). + local pow41 = pow22 * pow39; // pow(trace_generator, (safe_div((safe_mult(3, global_values.trace_length)), 4))). + local pow42 = pow22 * pow41; // pow(trace_generator, (safe_div((safe_mult(25, global_values.trace_length)), 32))). + local pow43 = pow22 * pow42; // pow(trace_generator, (safe_div((safe_mult(13, global_values.trace_length)), 16))). + local pow44 = pow22 * pow43; // pow(trace_generator, (safe_div((safe_mult(27, global_values.trace_length)), 32))). + local pow45 = pow22 * pow44; // pow(trace_generator, (safe_div((safe_mult(7, global_values.trace_length)), 8))). + local pow46 = pow22 * pow45; // pow(trace_generator, (safe_div((safe_mult(29, global_values.trace_length)), 32))). + local pow47 = pow22 * pow46; // pow(trace_generator, (safe_div((safe_mult(15, global_values.trace_length)), 16))). + local pow48 = pow21 * pow47; // pow(trace_generator, (safe_div((safe_mult(61, global_values.trace_length)), 64))). + local pow49 = pow21 * pow48; // pow(trace_generator, (safe_div((safe_mult(31, global_values.trace_length)), 32))). + local pow50 = pow21 * pow49; // pow(trace_generator, (safe_div((safe_mult(63, global_values.trace_length)), 64))). + + // Compute domains. + tempvar domain0 = pow12 - 1; + tempvar domain1 = pow11 - 1; + tempvar domain2 = pow10 - 1; + tempvar domain3 = pow9 - 1; + tempvar domain4 = pow8 - pow47; + tempvar domain5 = pow8 - 1; + tempvar domain6 = pow7 - 1; + tempvar domain7 = pow6 - 1; + tempvar domain8 = pow5 - 1; + tempvar domain9 = pow4 - 1; + tempvar domain10 = pow4 - pow41; + tempvar temp = pow4 - pow21; + tempvar temp = temp * (pow4 - pow22); + tempvar temp = temp * (pow4 - pow23); + tempvar temp = temp * (pow4 - pow24); + tempvar temp = temp * (pow4 - pow25); + tempvar temp = temp * (pow4 - pow26); + tempvar temp = temp * (pow4 - pow28); + tempvar temp = temp * (pow4 - pow29); + tempvar temp = temp * (pow4 - pow31); + tempvar temp = temp * (pow4 - pow32); + tempvar temp = temp * (pow4 - pow34); + tempvar temp = temp * (pow4 - pow35); + tempvar temp = temp * (pow4 - pow37); + tempvar temp = temp * (pow4 - pow38); + tempvar temp = temp * (pow4 - pow40); + tempvar domain11 = temp * (domain9); + tempvar domain12 = pow3 - 1; + tempvar domain13 = pow3 - pow41; + tempvar domain14 = pow2 - pow49; + tempvar temp = pow2 - pow36; + tempvar temp = temp * (pow2 - pow39); + tempvar temp = temp * (pow2 - pow41); + tempvar temp = temp * (pow2 - pow42); + tempvar temp = temp * (pow2 - pow43); + tempvar temp = temp * (pow2 - pow44); + tempvar temp = temp * (pow2 - pow45); + tempvar temp = temp * (pow2 - pow46); + tempvar temp = temp * (pow2 - pow47); + tempvar domain15 = temp * (domain14); + tempvar domain16 = pow2 - 1; + tempvar temp = pow2 - pow48; + tempvar temp = temp * (pow2 - pow50); + tempvar domain17 = temp * (domain14); + tempvar temp = pow2 - pow27; + tempvar temp = temp * (pow2 - pow30); + tempvar temp = temp * (pow2 - pow33); + tempvar domain18 = temp * (domain15); + tempvar domain19 = pow1 - 1; + tempvar domain20 = pow1 - pow20; + tempvar domain21 = pow1 - pow50; + tempvar domain22 = pow0 - pow19; + tempvar domain23 = pow0 - 1; + tempvar domain24 = point - pow18; + tempvar domain25 = point - 1; + tempvar domain26 = point - pow17; + tempvar domain27 = point - pow16; + tempvar domain28 = point - pow15; + tempvar domain29 = point - pow14; + tempvar domain30 = point - pow13; + + // Fetch mask variables. + tempvar column0_row0 = mask_values[0]; + tempvar column0_row1 = mask_values[1]; + tempvar column0_row2 = mask_values[2]; + tempvar column0_row3 = mask_values[3]; + tempvar column0_row4 = mask_values[4]; + tempvar column0_row5 = mask_values[5]; + tempvar column0_row6 = mask_values[6]; + tempvar column0_row7 = mask_values[7]; + tempvar column0_row8 = mask_values[8]; + tempvar column0_row9 = mask_values[9]; + tempvar column0_row10 = mask_values[10]; + tempvar column0_row11 = mask_values[11]; + tempvar column0_row12 = mask_values[12]; + tempvar column0_row13 = mask_values[13]; + tempvar column0_row14 = mask_values[14]; + tempvar column0_row15 = mask_values[15]; + tempvar column1_row0 = mask_values[16]; + tempvar column1_row1 = mask_values[17]; + tempvar column1_row2 = mask_values[18]; + tempvar column1_row3 = mask_values[19]; + tempvar column1_row4 = mask_values[20]; + tempvar column1_row5 = mask_values[21]; + tempvar column1_row8 = mask_values[22]; + tempvar column1_row9 = mask_values[23]; + tempvar column1_row10 = mask_values[24]; + tempvar column1_row11 = mask_values[25]; + tempvar column1_row12 = mask_values[26]; + tempvar column1_row13 = mask_values[27]; + tempvar column1_row16 = mask_values[28]; + tempvar column1_row42 = mask_values[29]; + tempvar column1_row43 = mask_values[30]; + tempvar column1_row74 = mask_values[31]; + tempvar column1_row75 = mask_values[32]; + tempvar column1_row106 = mask_values[33]; + tempvar column1_row138 = mask_values[34]; + tempvar column1_row139 = mask_values[35]; + tempvar column1_row171 = mask_values[36]; + tempvar column1_row202 = mask_values[37]; + tempvar column1_row203 = mask_values[38]; + tempvar column1_row234 = mask_values[39]; + tempvar column1_row235 = mask_values[40]; + tempvar column1_row266 = mask_values[41]; + tempvar column1_row267 = mask_values[42]; + tempvar column1_row298 = mask_values[43]; + tempvar column1_row394 = mask_values[44]; + tempvar column1_row458 = mask_values[45]; + tempvar column1_row459 = mask_values[46]; + tempvar column1_row714 = mask_values[47]; + tempvar column1_row715 = mask_values[48]; + tempvar column1_row778 = mask_values[49]; + tempvar column1_row779 = mask_values[50]; + tempvar column1_row970 = mask_values[51]; + tempvar column1_row971 = mask_values[52]; + tempvar column1_row1034 = mask_values[53]; + tempvar column1_row1035 = mask_values[54]; + tempvar column1_row2058 = mask_values[55]; + tempvar column1_row2059 = mask_values[56]; + tempvar column1_row4106 = mask_values[57]; + tempvar column2_row0 = mask_values[58]; + tempvar column2_row1 = mask_values[59]; + tempvar column2_row2 = mask_values[60]; + tempvar column2_row3 = mask_values[61]; + tempvar column3_row0 = mask_values[62]; + tempvar column3_row1 = mask_values[63]; + tempvar column3_row2 = mask_values[64]; + tempvar column3_row3 = mask_values[65]; + tempvar column3_row4 = mask_values[66]; + tempvar column3_row8 = mask_values[67]; + tempvar column3_row12 = mask_values[68]; + tempvar column3_row16 = mask_values[69]; + tempvar column3_row20 = mask_values[70]; + tempvar column3_row24 = mask_values[71]; + tempvar column3_row28 = mask_values[72]; + tempvar column3_row32 = mask_values[73]; + tempvar column3_row36 = mask_values[74]; + tempvar column3_row40 = mask_values[75]; + tempvar column3_row44 = mask_values[76]; + tempvar column3_row48 = mask_values[77]; + tempvar column3_row52 = mask_values[78]; + tempvar column3_row56 = mask_values[79]; + tempvar column3_row60 = mask_values[80]; + tempvar column3_row64 = mask_values[81]; + tempvar column3_row66 = mask_values[82]; + tempvar column3_row128 = mask_values[83]; + tempvar column3_row130 = mask_values[84]; + tempvar column3_row176 = mask_values[85]; + tempvar column3_row180 = mask_values[86]; + tempvar column3_row184 = mask_values[87]; + tempvar column3_row188 = mask_values[88]; + tempvar column3_row192 = mask_values[89]; + tempvar column3_row194 = mask_values[90]; + tempvar column3_row240 = mask_values[91]; + tempvar column3_row244 = mask_values[92]; + tempvar column3_row248 = mask_values[93]; + tempvar column3_row252 = mask_values[94]; + tempvar column4_row0 = mask_values[95]; + tempvar column4_row1 = mask_values[96]; + tempvar column4_row2 = mask_values[97]; + tempvar column4_row3 = mask_values[98]; + tempvar column4_row4 = mask_values[99]; + tempvar column4_row5 = mask_values[100]; + tempvar column4_row6 = mask_values[101]; + tempvar column4_row7 = mask_values[102]; + tempvar column4_row8 = mask_values[103]; + tempvar column4_row9 = mask_values[104]; + tempvar column4_row11 = mask_values[105]; + tempvar column4_row12 = mask_values[106]; + tempvar column4_row13 = mask_values[107]; + tempvar column4_row44 = mask_values[108]; + tempvar column4_row76 = mask_values[109]; + tempvar column4_row108 = mask_values[110]; + tempvar column4_row140 = mask_values[111]; + tempvar column4_row172 = mask_values[112]; + tempvar column4_row204 = mask_values[113]; + tempvar column4_row236 = mask_values[114]; + tempvar column4_row1539 = mask_values[115]; + tempvar column4_row1547 = mask_values[116]; + tempvar column4_row1571 = mask_values[117]; + tempvar column4_row1579 = mask_values[118]; + tempvar column4_row2011 = mask_values[119]; + tempvar column4_row2019 = mask_values[120]; + tempvar column4_row2041 = mask_values[121]; + tempvar column4_row2045 = mask_values[122]; + tempvar column4_row2047 = mask_values[123]; + tempvar column4_row2049 = mask_values[124]; + tempvar column4_row2051 = mask_values[125]; + tempvar column4_row2053 = mask_values[126]; + tempvar column4_row4089 = mask_values[127]; + tempvar column5_row0 = mask_values[128]; + tempvar column5_row1 = mask_values[129]; + tempvar column5_row2 = mask_values[130]; + tempvar column5_row4 = mask_values[131]; + tempvar column5_row6 = mask_values[132]; + tempvar column5_row8 = mask_values[133]; + tempvar column5_row9 = mask_values[134]; + tempvar column5_row10 = mask_values[135]; + tempvar column5_row12 = mask_values[136]; + tempvar column5_row14 = mask_values[137]; + tempvar column5_row16 = mask_values[138]; + tempvar column5_row17 = mask_values[139]; + tempvar column5_row22 = mask_values[140]; + tempvar column5_row24 = mask_values[141]; + tempvar column5_row25 = mask_values[142]; + tempvar column5_row30 = mask_values[143]; + tempvar column5_row33 = mask_values[144]; + tempvar column5_row38 = mask_values[145]; + tempvar column5_row41 = mask_values[146]; + tempvar column5_row46 = mask_values[147]; + tempvar column5_row49 = mask_values[148]; + tempvar column5_row54 = mask_values[149]; + tempvar column5_row57 = mask_values[150]; + tempvar column5_row65 = mask_values[151]; + tempvar column5_row73 = mask_values[152]; + tempvar column5_row81 = mask_values[153]; + tempvar column5_row89 = mask_values[154]; + tempvar column5_row97 = mask_values[155]; + tempvar column5_row105 = mask_values[156]; + tempvar column5_row137 = mask_values[157]; + tempvar column5_row169 = mask_values[158]; + tempvar column5_row201 = mask_values[159]; + tempvar column5_row393 = mask_values[160]; + tempvar column5_row409 = mask_values[161]; + tempvar column5_row425 = mask_values[162]; + tempvar column5_row457 = mask_values[163]; + tempvar column5_row473 = mask_values[164]; + tempvar column5_row489 = mask_values[165]; + tempvar column5_row521 = mask_values[166]; + tempvar column5_row553 = mask_values[167]; + tempvar column5_row585 = mask_values[168]; + tempvar column5_row609 = mask_values[169]; + tempvar column5_row625 = mask_values[170]; + tempvar column5_row641 = mask_values[171]; + tempvar column5_row657 = mask_values[172]; + tempvar column5_row673 = mask_values[173]; + tempvar column5_row689 = mask_values[174]; + tempvar column5_row905 = mask_values[175]; + tempvar column5_row921 = mask_values[176]; + tempvar column5_row937 = mask_values[177]; + tempvar column5_row969 = mask_values[178]; + tempvar column5_row982 = mask_values[179]; + tempvar column5_row985 = mask_values[180]; + tempvar column5_row998 = mask_values[181]; + tempvar column5_row1001 = mask_values[182]; + tempvar column5_row1014 = mask_values[183]; + tempvar column6_inter1_row0 = mask_values[184]; + tempvar column6_inter1_row1 = mask_values[185]; + tempvar column6_inter1_row2 = mask_values[186]; + tempvar column6_inter1_row3 = mask_values[187]; + tempvar column7_inter1_row0 = mask_values[188]; + tempvar column7_inter1_row1 = mask_values[189]; + tempvar column7_inter1_row2 = mask_values[190]; + tempvar column7_inter1_row5 = mask_values[191]; + + // Compute intermediate values. + tempvar cpu__decode__opcode_range_check__bit_0 = column0_row0 - (column0_row1 + column0_row1); + tempvar cpu__decode__opcode_range_check__bit_2 = column0_row2 - (column0_row3 + column0_row3); + tempvar cpu__decode__opcode_range_check__bit_4 = column0_row4 - (column0_row5 + column0_row5); + tempvar cpu__decode__opcode_range_check__bit_3 = column0_row3 - (column0_row4 + column0_row4); + tempvar cpu__decode__flag_op1_base_op0_0 = 1 - ( + cpu__decode__opcode_range_check__bit_2 + + cpu__decode__opcode_range_check__bit_4 + + cpu__decode__opcode_range_check__bit_3 + ); + tempvar cpu__decode__opcode_range_check__bit_5 = column0_row5 - (column0_row6 + column0_row6); + tempvar cpu__decode__opcode_range_check__bit_6 = column0_row6 - (column0_row7 + column0_row7); + tempvar cpu__decode__opcode_range_check__bit_9 = column0_row9 - (column0_row10 + column0_row10); + tempvar cpu__decode__flag_res_op1_0 = 1 - ( + cpu__decode__opcode_range_check__bit_5 + + cpu__decode__opcode_range_check__bit_6 + + cpu__decode__opcode_range_check__bit_9 + ); + tempvar cpu__decode__opcode_range_check__bit_7 = column0_row7 - (column0_row8 + column0_row8); + tempvar cpu__decode__opcode_range_check__bit_8 = column0_row8 - (column0_row9 + column0_row9); + tempvar cpu__decode__flag_pc_update_regular_0 = 1 - ( + cpu__decode__opcode_range_check__bit_7 + + cpu__decode__opcode_range_check__bit_8 + + cpu__decode__opcode_range_check__bit_9 + ); + tempvar cpu__decode__opcode_range_check__bit_12 = column0_row12 - ( + column0_row13 + column0_row13 + ); + tempvar cpu__decode__opcode_range_check__bit_13 = column0_row13 - ( + column0_row14 + column0_row14 + ); + tempvar cpu__decode__fp_update_regular_0 = 1 - ( + cpu__decode__opcode_range_check__bit_12 + cpu__decode__opcode_range_check__bit_13 + ); + tempvar cpu__decode__opcode_range_check__bit_1 = column0_row1 - (column0_row2 + column0_row2); + tempvar npc_reg_0 = column1_row0 + cpu__decode__opcode_range_check__bit_2 + 1; + tempvar cpu__decode__opcode_range_check__bit_10 = column0_row10 - ( + column0_row11 + column0_row11 + ); + tempvar cpu__decode__opcode_range_check__bit_11 = column0_row11 - ( + column0_row12 + column0_row12 + ); + tempvar cpu__decode__opcode_range_check__bit_14 = column0_row14 - ( + column0_row15 + column0_row15 + ); + tempvar memory__address_diff_0 = column2_row2 - column2_row0; + tempvar range_check16__diff_0 = column4_row6 - column4_row2; + tempvar pedersen__hash0__ec_subset_sum__bit_0 = column4_row3 - (column4_row11 + column4_row11); + tempvar pedersen__hash0__ec_subset_sum__bit_neg_0 = 1 - pedersen__hash0__ec_subset_sum__bit_0; + tempvar range_check_builtin__value0_0 = column4_row12; + tempvar range_check_builtin__value1_0 = range_check_builtin__value0_0 * + global_values.offset_size + column4_row44; + tempvar range_check_builtin__value2_0 = range_check_builtin__value1_0 * + global_values.offset_size + column4_row76; + tempvar range_check_builtin__value3_0 = range_check_builtin__value2_0 * + global_values.offset_size + column4_row108; + tempvar range_check_builtin__value4_0 = range_check_builtin__value3_0 * + global_values.offset_size + column4_row140; + tempvar range_check_builtin__value5_0 = range_check_builtin__value4_0 * + global_values.offset_size + column4_row172; + tempvar range_check_builtin__value6_0 = range_check_builtin__value5_0 * + global_values.offset_size + column4_row204; + tempvar range_check_builtin__value7_0 = range_check_builtin__value6_0 * + global_values.offset_size + column4_row236; + tempvar bitwise__sum_var_0_0 = column3_row0 + column3_row4 * 2 + column3_row8 * 4 + + column3_row12 * 8 + column3_row16 * 18446744073709551616 + column3_row20 * + 36893488147419103232 + column3_row24 * 73786976294838206464 + column3_row28 * + 147573952589676412928; + tempvar bitwise__sum_var_8_0 = column3_row32 * 340282366920938463463374607431768211456 + + column3_row36 * 680564733841876926926749214863536422912 + column3_row40 * + 1361129467683753853853498429727072845824 + column3_row44 * + 2722258935367507707706996859454145691648 + column3_row48 * + 6277101735386680763835789423207666416102355444464034512896 + column3_row52 * + 12554203470773361527671578846415332832204710888928069025792 + column3_row56 * + 25108406941546723055343157692830665664409421777856138051584 + column3_row60 * + 50216813883093446110686315385661331328818843555712276103168; + tempvar poseidon__poseidon__full_rounds_state0_cubed_0 = column5_row9 * column5_row105; + tempvar poseidon__poseidon__full_rounds_state1_cubed_0 = column5_row73 * column5_row25; + tempvar poseidon__poseidon__full_rounds_state2_cubed_0 = column5_row41 * column5_row89; + tempvar poseidon__poseidon__full_rounds_state0_cubed_7 = column5_row905 * column5_row1001; + tempvar poseidon__poseidon__full_rounds_state1_cubed_7 = column5_row969 * column5_row921; + tempvar poseidon__poseidon__full_rounds_state2_cubed_7 = column5_row937 * column5_row985; + tempvar poseidon__poseidon__full_rounds_state0_cubed_3 = column5_row393 * column5_row489; + tempvar poseidon__poseidon__full_rounds_state1_cubed_3 = column5_row457 * column5_row409; + tempvar poseidon__poseidon__full_rounds_state2_cubed_3 = column5_row425 * column5_row473; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_0 = column5_row6 * column5_row14; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_1 = column5_row22 * column5_row30; + tempvar poseidon__poseidon__partial_rounds_state0_cubed_2 = column5_row38 * column5_row46; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_0 = column5_row1 * column5_row17; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_1 = column5_row33 * column5_row49; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_2 = column5_row65 * column5_row81; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_19 = column5_row609 * column5_row625; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_20 = column5_row641 * column5_row657; + tempvar poseidon__poseidon__partial_rounds_state1_cubed_21 = column5_row673 * column5_row689; + + // Sum constraints. + tempvar total_sum = 0; + + // Constraint: cpu/decode/opcode_range_check/bit. + tempvar value = ( + cpu__decode__opcode_range_check__bit_0 * cpu__decode__opcode_range_check__bit_0 - + cpu__decode__opcode_range_check__bit_0 + ) * domain4 / domain0; + tempvar total_sum = total_sum + constraint_coefficients[0] * value; + + // Constraint: cpu/decode/opcode_range_check/zero. + tempvar value = (column0_row0) / domain4; + tempvar total_sum = total_sum + constraint_coefficients[1] * value; + + // Constraint: cpu/decode/opcode_range_check_input. + tempvar value = ( + column1_row1 - + ( + ( + (column0_row0 * global_values.offset_size + column4_row4) * + global_values.offset_size + + column4_row8 + ) * global_values.offset_size + + column4_row0 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[2] * value; + + // Constraint: cpu/decode/flag_op1_base_op0_bit. + tempvar value = ( + cpu__decode__flag_op1_base_op0_0 * cpu__decode__flag_op1_base_op0_0 - + cpu__decode__flag_op1_base_op0_0 + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[3] * value; + + // Constraint: cpu/decode/flag_res_op1_bit. + tempvar value = ( + cpu__decode__flag_res_op1_0 * cpu__decode__flag_res_op1_0 - cpu__decode__flag_res_op1_0 + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[4] * value; + + // Constraint: cpu/decode/flag_pc_update_regular_bit. + tempvar value = ( + cpu__decode__flag_pc_update_regular_0 * cpu__decode__flag_pc_update_regular_0 - + cpu__decode__flag_pc_update_regular_0 + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[5] * value; + + // Constraint: cpu/decode/fp_update_regular_bit. + tempvar value = ( + cpu__decode__fp_update_regular_0 * cpu__decode__fp_update_regular_0 - + cpu__decode__fp_update_regular_0 + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[6] * value; + + // Constraint: cpu/operands/mem_dst_addr. + tempvar value = ( + column1_row8 + + global_values.half_offset_size - + ( + cpu__decode__opcode_range_check__bit_0 * column5_row8 + + (1 - cpu__decode__opcode_range_check__bit_0) * column5_row0 + + column4_row0 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[7] * value; + + // Constraint: cpu/operands/mem0_addr. + tempvar value = ( + column1_row4 + + global_values.half_offset_size - + ( + cpu__decode__opcode_range_check__bit_1 * column5_row8 + + (1 - cpu__decode__opcode_range_check__bit_1) * column5_row0 + + column4_row8 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[8] * value; + + // Constraint: cpu/operands/mem1_addr. + tempvar value = ( + column1_row12 + + global_values.half_offset_size - + ( + cpu__decode__opcode_range_check__bit_2 * column1_row0 + + cpu__decode__opcode_range_check__bit_4 * column5_row0 + + cpu__decode__opcode_range_check__bit_3 * column5_row8 + + cpu__decode__flag_op1_base_op0_0 * column1_row5 + + column4_row4 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[9] * value; + + // Constraint: cpu/operands/ops_mul. + tempvar value = (column5_row4 - column1_row5 * column1_row13) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[10] * value; + + // Constraint: cpu/operands/res. + tempvar value = ( + (1 - cpu__decode__opcode_range_check__bit_9) * column5_row12 - + ( + cpu__decode__opcode_range_check__bit_5 * (column1_row5 + column1_row13) + + cpu__decode__opcode_range_check__bit_6 * column5_row4 + + cpu__decode__flag_res_op1_0 * column1_row13 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[11] * value; + + // Constraint: cpu/update_registers/update_pc/tmp0. + tempvar value = (column5_row2 - cpu__decode__opcode_range_check__bit_9 * column1_row9) * + domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[12] * value; + + // Constraint: cpu/update_registers/update_pc/tmp1. + tempvar value = (column5_row10 - column5_row2 * column5_row12) * domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[13] * value; + + // Constraint: cpu/update_registers/update_pc/pc_cond_negative. + tempvar value = ( + (1 - cpu__decode__opcode_range_check__bit_9) * column1_row16 + + column5_row2 * (column1_row16 - (column1_row0 + column1_row13)) - + ( + cpu__decode__flag_pc_update_regular_0 * npc_reg_0 + + cpu__decode__opcode_range_check__bit_7 * column5_row12 + + cpu__decode__opcode_range_check__bit_8 * (column1_row0 + column5_row12) + ) + ) * domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[14] * value; + + // Constraint: cpu/update_registers/update_pc/pc_cond_positive. + tempvar value = ( + (column5_row10 - cpu__decode__opcode_range_check__bit_9) * (column1_row16 - npc_reg_0) + ) * domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[15] * value; + + // Constraint: cpu/update_registers/update_ap/ap_update. + tempvar value = ( + column5_row16 - + ( + column5_row0 + + cpu__decode__opcode_range_check__bit_10 * column5_row12 + + cpu__decode__opcode_range_check__bit_11 + + cpu__decode__opcode_range_check__bit_12 * 2 + ) + ) * domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[16] * value; + + // Constraint: cpu/update_registers/update_fp/fp_update. + tempvar value = ( + column5_row24 - + ( + cpu__decode__fp_update_regular_0 * column5_row8 + + cpu__decode__opcode_range_check__bit_13 * column1_row9 + + cpu__decode__opcode_range_check__bit_12 * (column5_row0 + 2) + ) + ) * domain24 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[17] * value; + + // Constraint: cpu/opcodes/call/push_fp. + tempvar value = (cpu__decode__opcode_range_check__bit_12 * (column1_row9 - column5_row8)) / + domain5; + tempvar total_sum = total_sum + constraint_coefficients[18] * value; + + // Constraint: cpu/opcodes/call/push_pc. + tempvar value = ( + cpu__decode__opcode_range_check__bit_12 * ( + column1_row5 - (column1_row0 + cpu__decode__opcode_range_check__bit_2 + 1) + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[19] * value; + + // Constraint: cpu/opcodes/call/off0. + tempvar value = ( + cpu__decode__opcode_range_check__bit_12 * (column4_row0 - global_values.half_offset_size) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[20] * value; + + // Constraint: cpu/opcodes/call/off1. + tempvar value = ( + cpu__decode__opcode_range_check__bit_12 * ( + column4_row8 - (global_values.half_offset_size + 1) + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[21] * value; + + // Constraint: cpu/opcodes/call/flags. + tempvar value = ( + cpu__decode__opcode_range_check__bit_12 * ( + cpu__decode__opcode_range_check__bit_12 + + cpu__decode__opcode_range_check__bit_12 + + 1 + + 1 - + (cpu__decode__opcode_range_check__bit_0 + cpu__decode__opcode_range_check__bit_1 + 4) + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[22] * value; + + // Constraint: cpu/opcodes/ret/off0. + tempvar value = ( + cpu__decode__opcode_range_check__bit_13 * ( + column4_row0 + 2 - global_values.half_offset_size + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[23] * value; + + // Constraint: cpu/opcodes/ret/off2. + tempvar value = ( + cpu__decode__opcode_range_check__bit_13 * ( + column4_row4 + 1 - global_values.half_offset_size + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[24] * value; + + // Constraint: cpu/opcodes/ret/flags. + tempvar value = ( + cpu__decode__opcode_range_check__bit_13 * ( + cpu__decode__opcode_range_check__bit_7 + + cpu__decode__opcode_range_check__bit_0 + + cpu__decode__opcode_range_check__bit_3 + + cpu__decode__flag_res_op1_0 - + 4 + ) + ) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[25] * value; + + // Constraint: cpu/opcodes/assert_eq/assert_eq. + tempvar value = (cpu__decode__opcode_range_check__bit_14 * (column1_row9 - column5_row12)) / + domain5; + tempvar total_sum = total_sum + constraint_coefficients[26] * value; + + // Constraint: initial_ap. + tempvar value = (column5_row0 - global_values.initial_ap) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[27] * value; + + // Constraint: initial_fp. + tempvar value = (column5_row8 - global_values.initial_ap) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[28] * value; + + // Constraint: initial_pc. + tempvar value = (column1_row0 - global_values.initial_pc) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[29] * value; + + // Constraint: final_ap. + tempvar value = (column5_row0 - global_values.final_ap) / domain24; + tempvar total_sum = total_sum + constraint_coefficients[30] * value; + + // Constraint: final_fp. + tempvar value = (column5_row8 - global_values.initial_ap) / domain24; + tempvar total_sum = total_sum + constraint_coefficients[31] * value; + + // Constraint: final_pc. + tempvar value = (column1_row0 - global_values.final_pc) / domain24; + tempvar total_sum = total_sum + constraint_coefficients[32] * value; + + // Constraint: memory/multi_column_perm/perm/init0. + tempvar value = ( + ( + global_values.memory__multi_column_perm__perm__interaction_elm - + ( + column2_row0 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column2_row1 + ) + ) * column6_inter1_row0 + + column1_row0 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column1_row1 - + global_values.memory__multi_column_perm__perm__interaction_elm + ) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[33] * value; + + // Constraint: memory/multi_column_perm/perm/step0. + tempvar value = ( + ( + global_values.memory__multi_column_perm__perm__interaction_elm - + ( + column2_row2 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column2_row3 + ) + ) * column6_inter1_row2 - + ( + global_values.memory__multi_column_perm__perm__interaction_elm - + ( + column1_row2 + + global_values.memory__multi_column_perm__hash_interaction_elm0 * column1_row3 + ) + ) * column6_inter1_row0 + ) * domain26 / domain1; + tempvar total_sum = total_sum + constraint_coefficients[34] * value; + + // Constraint: memory/multi_column_perm/perm/last. + tempvar value = ( + column6_inter1_row0 - global_values.memory__multi_column_perm__perm__public_memory_prod + ) / domain26; + tempvar total_sum = total_sum + constraint_coefficients[35] * value; + + // Constraint: memory/diff_is_bit. + tempvar value = (memory__address_diff_0 * memory__address_diff_0 - memory__address_diff_0) * + domain26 / domain1; + tempvar total_sum = total_sum + constraint_coefficients[36] * value; + + // Constraint: memory/is_func. + tempvar value = ((memory__address_diff_0 - 1) * (column2_row1 - column2_row3)) * domain26 / + domain1; + tempvar total_sum = total_sum + constraint_coefficients[37] * value; + + // Constraint: memory/initial_addr. + tempvar value = (column2_row0 - 1) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[38] * value; + + // Constraint: public_memory_addr_zero. + tempvar value = (column1_row2) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[39] * value; + + // Constraint: public_memory_value_zero. + tempvar value = (column1_row3) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[40] * value; + + // Constraint: range_check16/perm/init0. + tempvar value = ( + (global_values.range_check16__perm__interaction_elm - column4_row2) * column7_inter1_row1 + + column4_row0 - + global_values.range_check16__perm__interaction_elm + ) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[41] * value; + + // Constraint: range_check16/perm/step0. + tempvar value = ( + (global_values.range_check16__perm__interaction_elm - column4_row6) * column7_inter1_row5 - + (global_values.range_check16__perm__interaction_elm - column4_row4) * column7_inter1_row1 + ) * domain27 / domain2; + tempvar total_sum = total_sum + constraint_coefficients[42] * value; + + // Constraint: range_check16/perm/last. + tempvar value = (column7_inter1_row1 - global_values.range_check16__perm__public_memory_prod) / + domain27; + tempvar total_sum = total_sum + constraint_coefficients[43] * value; + + // Constraint: range_check16/diff_is_bit. + tempvar value = (range_check16__diff_0 * range_check16__diff_0 - range_check16__diff_0) * + domain27 / domain2; + tempvar total_sum = total_sum + constraint_coefficients[44] * value; + + // Constraint: range_check16/minimum. + tempvar value = (column4_row2 - global_values.range_check_min) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[45] * value; + + // Constraint: range_check16/maximum. + tempvar value = (column4_row2 - global_values.range_check_max) / domain27; + tempvar total_sum = total_sum + constraint_coefficients[46] * value; + + // Constraint: diluted_check/permutation/init0. + tempvar value = ( + (global_values.diluted_check__permutation__interaction_elm - column3_row1) * + column7_inter1_row0 + + column3_row0 - + global_values.diluted_check__permutation__interaction_elm + ) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[47] * value; + + // Constraint: diluted_check/permutation/step0. + tempvar value = ( + (global_values.diluted_check__permutation__interaction_elm - column3_row3) * + column7_inter1_row2 - + (global_values.diluted_check__permutation__interaction_elm - column3_row2) * + column7_inter1_row0 + ) * domain26 / domain1; + tempvar total_sum = total_sum + constraint_coefficients[48] * value; + + // Constraint: diluted_check/permutation/last. + tempvar value = ( + column7_inter1_row0 - global_values.diluted_check__permutation__public_memory_prod + ) / domain26; + tempvar total_sum = total_sum + constraint_coefficients[49] * value; + + // Constraint: diluted_check/init. + tempvar value = (column6_inter1_row1 - 1) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[50] * value; + + // Constraint: diluted_check/first_element. + tempvar value = (column3_row1 - global_values.diluted_check__first_elm) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[51] * value; + + // Constraint: diluted_check/step. + tempvar value = ( + column6_inter1_row3 - + ( + column6_inter1_row1 * ( + 1 + global_values.diluted_check__interaction_z * (column3_row3 - column3_row1) + ) + + global_values.diluted_check__interaction_alpha * (column3_row3 - column3_row1) * ( + column3_row3 - column3_row1 + ) + ) + ) * domain26 / domain1; + tempvar total_sum = total_sum + constraint_coefficients[52] * value; + + // Constraint: diluted_check/last. + tempvar value = (column6_inter1_row1 - global_values.diluted_check__final_cum_val) / domain26; + tempvar total_sum = total_sum + constraint_coefficients[53] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/last_one_is_zero. + tempvar value = (column5_row57 * (column4_row3 - (column4_row11 + column4_row11))) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[54] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones0. + tempvar value = ( + column5_row57 * ( + column4_row11 - + 3138550867693340381917894711603833208051177722232017256448 * column4_row1539 + ) + ) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[55] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/cumulative_bit192. + tempvar value = ( + column5_row57 - column4_row2047 * (column4_row1539 - (column4_row1547 + column4_row1547)) + ) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[56] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones192. + tempvar value = (column4_row2047 * (column4_row1547 - 8 * column4_row1571)) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[57] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/cumulative_bit196. + tempvar value = ( + column4_row2047 - + (column4_row2011 - (column4_row2019 + column4_row2019)) * ( + column4_row1571 - (column4_row1579 + column4_row1579) + ) + ) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[58] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_unpacking/zeroes_between_ones196. + tempvar value = ( + (column4_row2011 - (column4_row2019 + column4_row2019)) * ( + column4_row1579 - 18014398509481984 * column4_row2011 + ) + ) / domain19; + tempvar total_sum = total_sum + constraint_coefficients[59] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/booleanity_test. + tempvar value = ( + pedersen__hash0__ec_subset_sum__bit_0 * (pedersen__hash0__ec_subset_sum__bit_0 - 1) + ) * domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[60] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/bit_extraction_end. + tempvar value = (column4_row3) / domain21; + tempvar total_sum = total_sum + constraint_coefficients[61] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/zeros_tail. + tempvar value = (column4_row3) / domain20; + tempvar total_sum = total_sum + constraint_coefficients[62] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/add_points/slope. + tempvar value = ( + pedersen__hash0__ec_subset_sum__bit_0 * (column4_row5 - global_values.pedersen__points__y) - + column4_row7 * (column4_row1 - global_values.pedersen__points__x) + ) * domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[63] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/add_points/x. + tempvar value = ( + column4_row7 * column4_row7 - + pedersen__hash0__ec_subset_sum__bit_0 * ( + column4_row1 + global_values.pedersen__points__x + column4_row9 + ) + ) * domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[64] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/add_points/y. + tempvar value = ( + pedersen__hash0__ec_subset_sum__bit_0 * (column4_row5 + column4_row13) - + column4_row7 * (column4_row1 - column4_row9) + ) * domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[65] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/copy_point/x. + tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column4_row9 - column4_row1)) * + domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[66] * value; + + // Constraint: pedersen/hash0/ec_subset_sum/copy_point/y. + tempvar value = (pedersen__hash0__ec_subset_sum__bit_neg_0 * (column4_row13 - column4_row5)) * + domain20 / domain3; + tempvar total_sum = total_sum + constraint_coefficients[67] * value; + + // Constraint: pedersen/hash0/copy_point/x. + tempvar value = (column4_row2049 - column4_row2041) * domain22 / domain19; + tempvar total_sum = total_sum + constraint_coefficients[68] * value; + + // Constraint: pedersen/hash0/copy_point/y. + tempvar value = (column4_row2053 - column4_row2045) * domain22 / domain19; + tempvar total_sum = total_sum + constraint_coefficients[69] * value; + + // Constraint: pedersen/hash0/init/x. + tempvar value = (column4_row1 - global_values.pedersen__shift_point.x) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[70] * value; + + // Constraint: pedersen/hash0/init/y. + tempvar value = (column4_row5 - global_values.pedersen__shift_point.y) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[71] * value; + + // Constraint: pedersen/input0_value0. + tempvar value = (column1_row11 - column4_row3) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[72] * value; + + // Constraint: pedersen/input0_addr. + tempvar value = (column1_row4106 - (column1_row1034 + 1)) * domain28 / domain23; + tempvar total_sum = total_sum + constraint_coefficients[73] * value; + + // Constraint: pedersen/init_addr. + tempvar value = (column1_row10 - global_values.initial_pedersen_addr) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[74] * value; + + // Constraint: pedersen/input1_value0. + tempvar value = (column1_row2059 - column4_row2051) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[75] * value; + + // Constraint: pedersen/input1_addr. + tempvar value = (column1_row2058 - (column1_row10 + 1)) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[76] * value; + + // Constraint: pedersen/output_value0. + tempvar value = (column1_row1035 - column4_row4089) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[77] * value; + + // Constraint: pedersen/output_addr. + tempvar value = (column1_row1034 - (column1_row2058 + 1)) / domain23; + tempvar total_sum = total_sum + constraint_coefficients[78] * value; + + // Constraint: range_check_builtin/value. + tempvar value = (range_check_builtin__value7_0 - column1_row139) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[79] * value; + + // Constraint: range_check_builtin/addr_step. + tempvar value = (column1_row394 - (column1_row138 + 1)) * domain29 / domain9; + tempvar total_sum = total_sum + constraint_coefficients[80] * value; + + // Constraint: range_check_builtin/init_addr. + tempvar value = (column1_row138 - global_values.initial_range_check_addr) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[81] * value; + + // Constraint: bitwise/init_var_pool_addr. + tempvar value = (column1_row42 - global_values.initial_bitwise_addr) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[82] * value; + + // Constraint: bitwise/step_var_pool_addr. + tempvar value = (column1_row106 - (column1_row42 + 1)) * domain10 / domain7; + tempvar total_sum = total_sum + constraint_coefficients[83] * value; + + // Constraint: bitwise/x_or_y_addr. + tempvar value = (column1_row74 - (column1_row234 + 1)) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[84] * value; + + // Constraint: bitwise/next_var_pool_addr. + tempvar value = (column1_row298 - (column1_row74 + 1)) * domain29 / domain9; + tempvar total_sum = total_sum + constraint_coefficients[85] * value; + + // Constraint: bitwise/partition. + tempvar value = (bitwise__sum_var_0_0 + bitwise__sum_var_8_0 - column1_row43) / domain7; + tempvar total_sum = total_sum + constraint_coefficients[86] * value; + + // Constraint: bitwise/or_is_and_plus_xor. + tempvar value = (column1_row75 - (column1_row171 + column1_row235)) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[87] * value; + + // Constraint: bitwise/addition_is_xor_with_and. + tempvar value = ( + column3_row0 + column3_row64 - (column3_row192 + column3_row128 + column3_row128) + ) / domain11; + tempvar total_sum = total_sum + constraint_coefficients[88] * value; + + // Constraint: bitwise/unique_unpacking192. + tempvar value = ((column3_row176 + column3_row240) * 16 - column3_row2) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[89] * value; + + // Constraint: bitwise/unique_unpacking193. + tempvar value = ((column3_row180 + column3_row244) * 16 - column3_row130) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[90] * value; + + // Constraint: bitwise/unique_unpacking194. + tempvar value = ((column3_row184 + column3_row248) * 16 - column3_row66) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[91] * value; + + // Constraint: bitwise/unique_unpacking195. + tempvar value = ((column3_row188 + column3_row252) * 256 - column3_row194) / domain9; + tempvar total_sum = total_sum + constraint_coefficients[92] * value; + + // Constraint: poseidon/param_0/init_input_output_addr. + tempvar value = (column1_row266 - global_values.initial_poseidon_addr) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[93] * value; + + // Constraint: poseidon/param_0/addr_input_output_step. + tempvar value = (column1_row778 - (column1_row266 + 3)) * domain30 / domain12; + tempvar total_sum = total_sum + constraint_coefficients[94] * value; + + // Constraint: poseidon/param_1/init_input_output_addr. + tempvar value = (column1_row202 - (global_values.initial_poseidon_addr + 1)) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[95] * value; + + // Constraint: poseidon/param_1/addr_input_output_step. + tempvar value = (column1_row714 - (column1_row202 + 3)) * domain30 / domain12; + tempvar total_sum = total_sum + constraint_coefficients[96] * value; + + // Constraint: poseidon/param_2/init_input_output_addr. + tempvar value = (column1_row458 - (global_values.initial_poseidon_addr + 2)) / domain25; + tempvar total_sum = total_sum + constraint_coefficients[97] * value; + + // Constraint: poseidon/param_2/addr_input_output_step. + tempvar value = (column1_row970 - (column1_row458 + 3)) * domain30 / domain12; + tempvar total_sum = total_sum + constraint_coefficients[98] * value; + + // Constraint: poseidon/poseidon/full_rounds_state0_squaring. + tempvar value = (column5_row9 * column5_row9 - column5_row105) / domain8; + tempvar total_sum = total_sum + constraint_coefficients[99] * value; + + // Constraint: poseidon/poseidon/full_rounds_state1_squaring. + tempvar value = (column5_row73 * column5_row73 - column5_row25) / domain8; + tempvar total_sum = total_sum + constraint_coefficients[100] * value; + + // Constraint: poseidon/poseidon/full_rounds_state2_squaring. + tempvar value = (column5_row41 * column5_row41 - column5_row89) / domain8; + tempvar total_sum = total_sum + constraint_coefficients[101] * value; + + // Constraint: poseidon/poseidon/partial_rounds_state0_squaring. + tempvar value = (column5_row6 * column5_row6 - column5_row14) / domain5; + tempvar total_sum = total_sum + constraint_coefficients[102] * value; + + // Constraint: poseidon/poseidon/partial_rounds_state1_squaring. + tempvar value = (column5_row1 * column5_row1 - column5_row17) * domain15 / domain6; + tempvar total_sum = total_sum + constraint_coefficients[103] * value; + + // Constraint: poseidon/poseidon/add_first_round_key0. + tempvar value = ( + column1_row267 + + 2950795762459345168613727575620414179244544320470208355568817838579231751791 - + column5_row9 + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[104] * value; + + // Constraint: poseidon/poseidon/add_first_round_key1. + tempvar value = ( + column1_row203 + + 1587446564224215276866294500450702039420286416111469274423465069420553242820 - + column5_row73 + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[105] * value; + + // Constraint: poseidon/poseidon/add_first_round_key2. + tempvar value = ( + column1_row459 + + 1645965921169490687904413452218868659025437693527479459426157555728339600137 - + column5_row41 + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[106] * value; + + // Constraint: poseidon/poseidon/full_round0. + tempvar value = ( + column5_row137 - + ( + poseidon__poseidon__full_rounds_state0_cubed_0 + + poseidon__poseidon__full_rounds_state0_cubed_0 + + poseidon__poseidon__full_rounds_state0_cubed_0 + + poseidon__poseidon__full_rounds_state1_cubed_0 + + poseidon__poseidon__full_rounds_state2_cubed_0 + + global_values.poseidon__poseidon__full_round_key0 + ) + ) * domain13 / domain8; + tempvar total_sum = total_sum + constraint_coefficients[107] * value; + + // Constraint: poseidon/poseidon/full_round1. + tempvar value = ( + column5_row201 + + poseidon__poseidon__full_rounds_state1_cubed_0 - + ( + poseidon__poseidon__full_rounds_state0_cubed_0 + + poseidon__poseidon__full_rounds_state2_cubed_0 + + global_values.poseidon__poseidon__full_round_key1 + ) + ) * domain13 / domain8; + tempvar total_sum = total_sum + constraint_coefficients[108] * value; + + // Constraint: poseidon/poseidon/full_round2. + tempvar value = ( + column5_row169 + + poseidon__poseidon__full_rounds_state2_cubed_0 + + poseidon__poseidon__full_rounds_state2_cubed_0 - + ( + poseidon__poseidon__full_rounds_state0_cubed_0 + + poseidon__poseidon__full_rounds_state1_cubed_0 + + global_values.poseidon__poseidon__full_round_key2 + ) + ) * domain13 / domain8; + tempvar total_sum = total_sum + constraint_coefficients[109] * value; + + // Constraint: poseidon/poseidon/last_full_round0. + tempvar value = ( + column1_row779 - + ( + poseidon__poseidon__full_rounds_state0_cubed_7 + + poseidon__poseidon__full_rounds_state0_cubed_7 + + poseidon__poseidon__full_rounds_state0_cubed_7 + + poseidon__poseidon__full_rounds_state1_cubed_7 + + poseidon__poseidon__full_rounds_state2_cubed_7 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[110] * value; + + // Constraint: poseidon/poseidon/last_full_round1. + tempvar value = ( + column1_row715 + + poseidon__poseidon__full_rounds_state1_cubed_7 - + ( + poseidon__poseidon__full_rounds_state0_cubed_7 + + poseidon__poseidon__full_rounds_state2_cubed_7 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[111] * value; + + // Constraint: poseidon/poseidon/last_full_round2. + tempvar value = ( + column1_row971 + + poseidon__poseidon__full_rounds_state2_cubed_7 + + poseidon__poseidon__full_rounds_state2_cubed_7 - + ( + poseidon__poseidon__full_rounds_state0_cubed_7 + + poseidon__poseidon__full_rounds_state1_cubed_7 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[112] * value; + + // Constraint: poseidon/poseidon/copy_partial_rounds0_i0. + tempvar value = (column5_row982 - column5_row1) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[113] * value; + + // Constraint: poseidon/poseidon/copy_partial_rounds0_i1. + tempvar value = (column5_row998 - column5_row33) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[114] * value; + + // Constraint: poseidon/poseidon/copy_partial_rounds0_i2. + tempvar value = (column5_row1014 - column5_row65) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[115] * value; + + // Constraint: poseidon/poseidon/margin_full_to_partial0. + tempvar value = ( + column5_row6 + + poseidon__poseidon__full_rounds_state2_cubed_3 + + poseidon__poseidon__full_rounds_state2_cubed_3 - + ( + poseidon__poseidon__full_rounds_state0_cubed_3 + + poseidon__poseidon__full_rounds_state1_cubed_3 + + 2121140748740143694053732746913428481442990369183417228688865837805149503386 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[116] * value; + + // Constraint: poseidon/poseidon/margin_full_to_partial1. + tempvar value = ( + column5_row22 - + ( + 3618502788666131213697322783095070105623107215331596699973092056135872020477 * + poseidon__poseidon__full_rounds_state1_cubed_3 + + 10 * poseidon__poseidon__full_rounds_state2_cubed_3 + + 4 * column5_row6 + + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * + poseidon__poseidon__partial_rounds_state0_cubed_0 + + 2006642341318481906727563724340978325665491359415674592697055778067937914672 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[117] * value; + + // Constraint: poseidon/poseidon/margin_full_to_partial2. + tempvar value = ( + column5_row38 - + ( + 8 * poseidon__poseidon__full_rounds_state2_cubed_3 + + 4 * column5_row6 + + 6 * poseidon__poseidon__partial_rounds_state0_cubed_0 + + column5_row22 + + column5_row22 + + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * + poseidon__poseidon__partial_rounds_state0_cubed_1 + + 427751140904099001132521606468025610873158555767197326325930641757709538586 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[118] * value; + + // Constraint: poseidon/poseidon/partial_round0. + tempvar value = ( + column5_row54 - + ( + 8 * poseidon__poseidon__partial_rounds_state0_cubed_0 + + 4 * column5_row22 + + 6 * poseidon__poseidon__partial_rounds_state0_cubed_1 + + column5_row38 + + column5_row38 + + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * + poseidon__poseidon__partial_rounds_state0_cubed_2 + + global_values.poseidon__poseidon__partial_round_key0 + ) + ) * domain17 / domain5; + tempvar total_sum = total_sum + constraint_coefficients[119] * value; + + // Constraint: poseidon/poseidon/partial_round1. + tempvar value = ( + column5_row97 - + ( + 8 * poseidon__poseidon__partial_rounds_state1_cubed_0 + + 4 * column5_row33 + + 6 * poseidon__poseidon__partial_rounds_state1_cubed_1 + + column5_row65 + + column5_row65 + + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * + poseidon__poseidon__partial_rounds_state1_cubed_2 + + global_values.poseidon__poseidon__partial_round_key1 + ) + ) * domain18 / domain6; + tempvar total_sum = total_sum + constraint_coefficients[120] * value; + + // Constraint: poseidon/poseidon/margin_partial_to_full0. + tempvar value = ( + column5_row521 - + ( + 16 * poseidon__poseidon__partial_rounds_state1_cubed_19 + + 8 * column5_row641 + + 16 * poseidon__poseidon__partial_rounds_state1_cubed_20 + + 6 * column5_row673 + + poseidon__poseidon__partial_rounds_state1_cubed_21 + + 560279373700919169769089400651532183647886248799764942664266404650165812023 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[121] * value; + + // Constraint: poseidon/poseidon/margin_partial_to_full1. + tempvar value = ( + column5_row585 - + ( + 4 * poseidon__poseidon__partial_rounds_state1_cubed_20 + + column5_row673 + + column5_row673 + + poseidon__poseidon__partial_rounds_state1_cubed_21 + + 1401754474293352309994371631695783042590401941592571735921592823982231996415 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[122] * value; + + // Constraint: poseidon/poseidon/margin_partial_to_full2. + tempvar value = ( + column5_row553 - + ( + 8 * poseidon__poseidon__partial_rounds_state1_cubed_19 + + 4 * column5_row641 + + 6 * poseidon__poseidon__partial_rounds_state1_cubed_20 + + column5_row673 + + column5_row673 + + 3618502788666131213697322783095070105623107215331596699973092056135872020479 * + poseidon__poseidon__partial_rounds_state1_cubed_21 + + 1246177936547655338400308396717835700699368047388302793172818304164989556526 + ) + ) / domain16; + tempvar total_sum = total_sum + constraint_coefficients[123] * value; + + return (res=total_sum); +} + +func eval_oods_polynomial{range_check_ptr}( + self: felt*, + column_values: felt*, + oods_values: felt*, + constraint_coefficients: felt*, + point: felt, + oods_point: felt, + trace_generator: felt, +) -> (res: felt) { + alloc_locals; + + // Compute powers. + let (local pow0) = pow(trace_generator, 0); + let (local pow1) = pow(trace_generator, 4089); + let (local pow2) = pow(trace_generator, 2011); + let (local pow3) = pow(trace_generator, 1539); + let (local pow4) = pow(trace_generator, 1); + local pow5 = pow4 * pow4; // pow(trace_generator, 2). + local pow6 = pow4 * pow5; // pow(trace_generator, 3). + local pow7 = pow4 * pow6; // pow(trace_generator, 4). + local pow8 = pow4 * pow7; // pow(trace_generator, 5). + local pow9 = pow4 * pow8; // pow(trace_generator, 6). + local pow10 = pow4 * pow9; // pow(trace_generator, 7). + local pow11 = pow4 * pow10; // pow(trace_generator, 8). + local pow12 = pow3 * pow11; // pow(trace_generator, 1547). + local pow13 = pow4 * pow11; // pow(trace_generator, 9). + local pow14 = pow4 * pow13; // pow(trace_generator, 10). + local pow15 = pow4 * pow14; // pow(trace_generator, 11). + local pow16 = pow4 * pow15; // pow(trace_generator, 12). + local pow17 = pow4 * pow16; // pow(trace_generator, 13). + local pow18 = pow4 * pow17; // pow(trace_generator, 14). + local pow19 = pow4 * pow18; // pow(trace_generator, 15). + local pow20 = pow4 * pow19; // pow(trace_generator, 16). + local pow21 = pow4 * pow20; // pow(trace_generator, 17). + local pow22 = pow6 * pow21; // pow(trace_generator, 20). + local pow23 = pow5 * pow22; // pow(trace_generator, 22). + local pow24 = pow5 * pow23; // pow(trace_generator, 24). + local pow25 = pow4 * pow24; // pow(trace_generator, 25). + local pow26 = pow6 * pow25; // pow(trace_generator, 28). + local pow27 = pow5 * pow26; // pow(trace_generator, 30). + local pow28 = pow5 * pow27; // pow(trace_generator, 32). + local pow29 = pow4 * pow28; // pow(trace_generator, 33). + local pow30 = pow3 * pow28; // pow(trace_generator, 1571). + local pow31 = pow6 * pow29; // pow(trace_generator, 36). + local pow32 = pow5 * pow31; // pow(trace_generator, 38). + local pow33 = pow5 * pow32; // pow(trace_generator, 40). + local pow34 = pow4 * pow33; // pow(trace_generator, 41). + local pow35 = pow4 * pow34; // pow(trace_generator, 42). + local pow36 = pow4 * pow35; // pow(trace_generator, 43). + local pow37 = pow4 * pow36; // pow(trace_generator, 44). + local pow38 = pow5 * pow37; // pow(trace_generator, 46). + local pow39 = pow5 * pow38; // pow(trace_generator, 48). + local pow40 = pow4 * pow39; // pow(trace_generator, 49). + local pow41 = pow6 * pow40; // pow(trace_generator, 52). + local pow42 = pow5 * pow41; // pow(trace_generator, 54). + local pow43 = pow5 * pow42; // pow(trace_generator, 56). + local pow44 = pow4 * pow43; // pow(trace_generator, 57). + local pow45 = pow6 * pow44; // pow(trace_generator, 60). + local pow46 = pow7 * pow45; // pow(trace_generator, 64). + local pow47 = pow4 * pow46; // pow(trace_generator, 65). + local pow48 = pow4 * pow47; // pow(trace_generator, 66). + local pow49 = pow10 * pow48; // pow(trace_generator, 73). + local pow50 = pow4 * pow49; // pow(trace_generator, 74). + local pow51 = pow4 * pow50; // pow(trace_generator, 75). + local pow52 = pow4 * pow51; // pow(trace_generator, 76). + local pow53 = pow8 * pow52; // pow(trace_generator, 81). + local pow54 = pow11 * pow53; // pow(trace_generator, 89). + local pow55 = pow11 * pow54; // pow(trace_generator, 97). + local pow56 = pow11 * pow55; // pow(trace_generator, 105). + local pow57 = pow4 * pow56; // pow(trace_generator, 106). + local pow58 = pow5 * pow57; // pow(trace_generator, 108). + local pow59 = pow22 * pow58; // pow(trace_generator, 128). + local pow60 = pow5 * pow59; // pow(trace_generator, 130). + local pow61 = pow10 * pow60; // pow(trace_generator, 137). + local pow62 = pow4 * pow61; // pow(trace_generator, 138). + local pow63 = pow4 * pow62; // pow(trace_generator, 139). + local pow64 = pow27 * pow63; // pow(trace_generator, 169). + local pow65 = pow5 * pow64; // pow(trace_generator, 171). + local pow66 = pow4 * pow63; // pow(trace_generator, 140). + local pow67 = pow4 * pow65; // pow(trace_generator, 172). + local pow68 = pow7 * pow67; // pow(trace_generator, 176). + local pow69 = pow7 * pow68; // pow(trace_generator, 180). + local pow70 = pow7 * pow69; // pow(trace_generator, 184). + local pow71 = pow7 * pow70; // pow(trace_generator, 188). + local pow72 = pow7 * pow71; // pow(trace_generator, 192). + local pow73 = pow5 * pow72; // pow(trace_generator, 194). + local pow74 = pow10 * pow73; // pow(trace_generator, 201). + local pow75 = pow4 * pow74; // pow(trace_generator, 202). + local pow76 = pow4 * pow75; // pow(trace_generator, 203). + local pow77 = pow72 * pow74; // pow(trace_generator, 393). + local pow78 = pow4 * pow76; // pow(trace_generator, 204). + local pow79 = pow27 * pow78; // pow(trace_generator, 234). + local pow80 = pow4 * pow79; // pow(trace_generator, 235). + local pow81 = pow4 * pow80; // pow(trace_generator, 236). + local pow82 = pow7 * pow81; // pow(trace_generator, 240). + local pow83 = pow7 * pow82; // pow(trace_generator, 244). + local pow84 = pow7 * pow83; // pow(trace_generator, 248). + local pow85 = pow7 * pow84; // pow(trace_generator, 252). + local pow86 = pow18 * pow85; // pow(trace_generator, 266). + local pow87 = pow4 * pow86; // pow(trace_generator, 267). + local pow88 = pow4 * pow77; // pow(trace_generator, 394). + local pow89 = pow19 * pow88; // pow(trace_generator, 409). + local pow90 = pow20 * pow89; // pow(trace_generator, 425). + local pow91 = pow28 * pow90; // pow(trace_generator, 457). + local pow92 = pow4 * pow91; // pow(trace_generator, 458). + local pow93 = pow4 * pow92; // pow(trace_generator, 459). + local pow94 = pow18 * pow93; // pow(trace_generator, 473). + local pow95 = pow20 * pow94; // pow(trace_generator, 489). + local pow96 = pow28 * pow95; // pow(trace_generator, 521). + local pow97 = pow28 * pow96; // pow(trace_generator, 553). + local pow98 = pow28 * pow97; // pow(trace_generator, 585). + local pow99 = pow24 * pow98; // pow(trace_generator, 609). + local pow100 = pow20 * pow99; // pow(trace_generator, 625). + local pow101 = pow20 * pow100; // pow(trace_generator, 641). + local pow102 = pow20 * pow101; // pow(trace_generator, 657). + local pow103 = pow84 * pow102; // pow(trace_generator, 905). + local pow104 = pow20 * pow102; // pow(trace_generator, 673). + local pow105 = pow20 * pow103; // pow(trace_generator, 921). + local pow106 = pow20 * pow104; // pow(trace_generator, 689). + local pow107 = pow20 * pow105; // pow(trace_generator, 937). + local pow108 = pow28 * pow107; // pow(trace_generator, 969). + local pow109 = pow25 * pow106; // pow(trace_generator, 714). + local pow110 = pow46 * pow109; // pow(trace_generator, 778). + local pow111 = pow4 * pow108; // pow(trace_generator, 970). + local pow112 = pow3 * pow33; // pow(trace_generator, 1579). + local pow113 = pow4 * pow109; // pow(trace_generator, 715). + local pow114 = pow4 * pow110; // pow(trace_generator, 779). + local pow115 = pow28 * pow86; // pow(trace_generator, 298). + local pow116 = pow4 * pow111; // pow(trace_generator, 971). + local pow117 = pow15 * pow116; // pow(trace_generator, 982). + local pow118 = pow6 * pow117; // pow(trace_generator, 985). + local pow119 = pow17 * pow118; // pow(trace_generator, 998). + local pow120 = pow6 * pow119; // pow(trace_generator, 1001). + local pow121 = pow17 * pow120; // pow(trace_generator, 1014). + local pow122 = pow22 * pow121; // pow(trace_generator, 1034). + local pow123 = pow2 * pow11; // pow(trace_generator, 2019). + local pow124 = pow2 * pow27; // pow(trace_generator, 2041). + local pow125 = pow7 * pow124; // pow(trace_generator, 2045). + local pow126 = pow2 * pow31; // pow(trace_generator, 2047). + local pow127 = pow4 * pow122; // pow(trace_generator, 1035). + local pow128 = pow2 * pow32; // pow(trace_generator, 2049). + local pow129 = pow2 * pow33; // pow(trace_generator, 2051). + local pow130 = pow2 * pow35; // pow(trace_generator, 2053). + local pow131 = pow8 * pow130; // pow(trace_generator, 2058). + local pow132 = pow2 * pow39; // pow(trace_generator, 2059). + local pow133 = pow1 * pow21; // pow(trace_generator, 4106). + + // Fetch columns. + tempvar column0 = column_values[0]; + tempvar column1 = column_values[1]; + tempvar column2 = column_values[2]; + tempvar column3 = column_values[3]; + tempvar column4 = column_values[4]; + tempvar column5 = column_values[5]; + tempvar column6 = column_values[6]; + tempvar column7 = column_values[7]; + + // Sum the OODS constraints on the trace polynomials. + tempvar total_sum = 0; + + tempvar value = (column0 - oods_values[0]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[0] * value; + + tempvar value = (column0 - oods_values[1]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[1] * value; + + tempvar value = (column0 - oods_values[2]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[2] * value; + + tempvar value = (column0 - oods_values[3]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[3] * value; + + tempvar value = (column0 - oods_values[4]) / (point - pow7 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[4] * value; + + tempvar value = (column0 - oods_values[5]) / (point - pow8 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[5] * value; + + tempvar value = (column0 - oods_values[6]) / (point - pow9 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[6] * value; + + tempvar value = (column0 - oods_values[7]) / (point - pow10 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[7] * value; + + tempvar value = (column0 - oods_values[8]) / (point - pow11 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[8] * value; + + tempvar value = (column0 - oods_values[9]) / (point - pow13 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[9] * value; + + tempvar value = (column0 - oods_values[10]) / (point - pow14 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[10] * value; + + tempvar value = (column0 - oods_values[11]) / (point - pow15 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[11] * value; + + tempvar value = (column0 - oods_values[12]) / (point - pow16 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[12] * value; + + tempvar value = (column0 - oods_values[13]) / (point - pow17 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[13] * value; + + tempvar value = (column0 - oods_values[14]) / (point - pow18 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[14] * value; + + tempvar value = (column0 - oods_values[15]) / (point - pow19 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[15] * value; + + tempvar value = (column1 - oods_values[16]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[16] * value; + + tempvar value = (column1 - oods_values[17]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[17] * value; + + tempvar value = (column1 - oods_values[18]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[18] * value; + + tempvar value = (column1 - oods_values[19]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[19] * value; + + tempvar value = (column1 - oods_values[20]) / (point - pow7 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[20] * value; + + tempvar value = (column1 - oods_values[21]) / (point - pow8 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[21] * value; + + tempvar value = (column1 - oods_values[22]) / (point - pow11 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[22] * value; + + tempvar value = (column1 - oods_values[23]) / (point - pow13 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[23] * value; + + tempvar value = (column1 - oods_values[24]) / (point - pow14 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[24] * value; + + tempvar value = (column1 - oods_values[25]) / (point - pow15 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[25] * value; + + tempvar value = (column1 - oods_values[26]) / (point - pow16 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[26] * value; + + tempvar value = (column1 - oods_values[27]) / (point - pow17 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[27] * value; + + tempvar value = (column1 - oods_values[28]) / (point - pow20 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[28] * value; + + tempvar value = (column1 - oods_values[29]) / (point - pow35 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[29] * value; + + tempvar value = (column1 - oods_values[30]) / (point - pow36 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[30] * value; + + tempvar value = (column1 - oods_values[31]) / (point - pow50 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[31] * value; + + tempvar value = (column1 - oods_values[32]) / (point - pow51 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[32] * value; + + tempvar value = (column1 - oods_values[33]) / (point - pow57 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[33] * value; + + tempvar value = (column1 - oods_values[34]) / (point - pow62 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[34] * value; + + tempvar value = (column1 - oods_values[35]) / (point - pow63 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[35] * value; + + tempvar value = (column1 - oods_values[36]) / (point - pow65 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[36] * value; + + tempvar value = (column1 - oods_values[37]) / (point - pow75 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[37] * value; + + tempvar value = (column1 - oods_values[38]) / (point - pow76 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[38] * value; + + tempvar value = (column1 - oods_values[39]) / (point - pow79 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[39] * value; + + tempvar value = (column1 - oods_values[40]) / (point - pow80 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[40] * value; + + tempvar value = (column1 - oods_values[41]) / (point - pow86 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[41] * value; + + tempvar value = (column1 - oods_values[42]) / (point - pow87 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[42] * value; + + tempvar value = (column1 - oods_values[43]) / (point - pow115 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[43] * value; + + tempvar value = (column1 - oods_values[44]) / (point - pow88 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[44] * value; + + tempvar value = (column1 - oods_values[45]) / (point - pow92 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[45] * value; + + tempvar value = (column1 - oods_values[46]) / (point - pow93 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[46] * value; + + tempvar value = (column1 - oods_values[47]) / (point - pow109 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[47] * value; + + tempvar value = (column1 - oods_values[48]) / (point - pow113 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[48] * value; + + tempvar value = (column1 - oods_values[49]) / (point - pow110 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[49] * value; + + tempvar value = (column1 - oods_values[50]) / (point - pow114 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[50] * value; + + tempvar value = (column1 - oods_values[51]) / (point - pow111 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[51] * value; + + tempvar value = (column1 - oods_values[52]) / (point - pow116 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[52] * value; + + tempvar value = (column1 - oods_values[53]) / (point - pow122 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[53] * value; + + tempvar value = (column1 - oods_values[54]) / (point - pow127 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[54] * value; + + tempvar value = (column1 - oods_values[55]) / (point - pow131 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[55] * value; + + tempvar value = (column1 - oods_values[56]) / (point - pow132 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[56] * value; + + tempvar value = (column1 - oods_values[57]) / (point - pow133 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[57] * value; + + tempvar value = (column2 - oods_values[58]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[58] * value; + + tempvar value = (column2 - oods_values[59]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[59] * value; + + tempvar value = (column2 - oods_values[60]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[60] * value; + + tempvar value = (column2 - oods_values[61]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[61] * value; + + tempvar value = (column3 - oods_values[62]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[62] * value; + + tempvar value = (column3 - oods_values[63]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[63] * value; + + tempvar value = (column3 - oods_values[64]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[64] * value; + + tempvar value = (column3 - oods_values[65]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[65] * value; + + tempvar value = (column3 - oods_values[66]) / (point - pow7 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[66] * value; + + tempvar value = (column3 - oods_values[67]) / (point - pow11 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[67] * value; + + tempvar value = (column3 - oods_values[68]) / (point - pow16 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[68] * value; + + tempvar value = (column3 - oods_values[69]) / (point - pow20 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[69] * value; + + tempvar value = (column3 - oods_values[70]) / (point - pow22 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[70] * value; + + tempvar value = (column3 - oods_values[71]) / (point - pow24 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[71] * value; + + tempvar value = (column3 - oods_values[72]) / (point - pow26 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[72] * value; + + tempvar value = (column3 - oods_values[73]) / (point - pow28 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[73] * value; + + tempvar value = (column3 - oods_values[74]) / (point - pow31 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[74] * value; + + tempvar value = (column3 - oods_values[75]) / (point - pow33 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[75] * value; + + tempvar value = (column3 - oods_values[76]) / (point - pow37 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[76] * value; + + tempvar value = (column3 - oods_values[77]) / (point - pow39 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[77] * value; + + tempvar value = (column3 - oods_values[78]) / (point - pow41 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[78] * value; + + tempvar value = (column3 - oods_values[79]) / (point - pow43 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[79] * value; + + tempvar value = (column3 - oods_values[80]) / (point - pow45 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[80] * value; + + tempvar value = (column3 - oods_values[81]) / (point - pow46 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[81] * value; + + tempvar value = (column3 - oods_values[82]) / (point - pow48 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[82] * value; + + tempvar value = (column3 - oods_values[83]) / (point - pow59 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[83] * value; + + tempvar value = (column3 - oods_values[84]) / (point - pow60 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[84] * value; + + tempvar value = (column3 - oods_values[85]) / (point - pow68 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[85] * value; + + tempvar value = (column3 - oods_values[86]) / (point - pow69 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[86] * value; + + tempvar value = (column3 - oods_values[87]) / (point - pow70 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[87] * value; + + tempvar value = (column3 - oods_values[88]) / (point - pow71 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[88] * value; + + tempvar value = (column3 - oods_values[89]) / (point - pow72 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[89] * value; + + tempvar value = (column3 - oods_values[90]) / (point - pow73 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[90] * value; + + tempvar value = (column3 - oods_values[91]) / (point - pow82 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[91] * value; + + tempvar value = (column3 - oods_values[92]) / (point - pow83 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[92] * value; + + tempvar value = (column3 - oods_values[93]) / (point - pow84 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[93] * value; + + tempvar value = (column3 - oods_values[94]) / (point - pow85 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[94] * value; + + tempvar value = (column4 - oods_values[95]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[95] * value; + + tempvar value = (column4 - oods_values[96]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[96] * value; + + tempvar value = (column4 - oods_values[97]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[97] * value; + + tempvar value = (column4 - oods_values[98]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[98] * value; + + tempvar value = (column4 - oods_values[99]) / (point - pow7 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[99] * value; + + tempvar value = (column4 - oods_values[100]) / (point - pow8 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[100] * value; + + tempvar value = (column4 - oods_values[101]) / (point - pow9 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[101] * value; + + tempvar value = (column4 - oods_values[102]) / (point - pow10 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[102] * value; + + tempvar value = (column4 - oods_values[103]) / (point - pow11 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[103] * value; + + tempvar value = (column4 - oods_values[104]) / (point - pow13 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[104] * value; + + tempvar value = (column4 - oods_values[105]) / (point - pow15 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[105] * value; + + tempvar value = (column4 - oods_values[106]) / (point - pow16 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[106] * value; + + tempvar value = (column4 - oods_values[107]) / (point - pow17 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[107] * value; + + tempvar value = (column4 - oods_values[108]) / (point - pow37 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[108] * value; + + tempvar value = (column4 - oods_values[109]) / (point - pow52 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[109] * value; + + tempvar value = (column4 - oods_values[110]) / (point - pow58 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[110] * value; + + tempvar value = (column4 - oods_values[111]) / (point - pow66 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[111] * value; + + tempvar value = (column4 - oods_values[112]) / (point - pow67 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[112] * value; + + tempvar value = (column4 - oods_values[113]) / (point - pow78 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[113] * value; + + tempvar value = (column4 - oods_values[114]) / (point - pow81 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[114] * value; + + tempvar value = (column4 - oods_values[115]) / (point - pow3 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[115] * value; + + tempvar value = (column4 - oods_values[116]) / (point - pow12 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[116] * value; + + tempvar value = (column4 - oods_values[117]) / (point - pow30 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[117] * value; + + tempvar value = (column4 - oods_values[118]) / (point - pow112 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[118] * value; + + tempvar value = (column4 - oods_values[119]) / (point - pow2 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[119] * value; + + tempvar value = (column4 - oods_values[120]) / (point - pow123 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[120] * value; + + tempvar value = (column4 - oods_values[121]) / (point - pow124 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[121] * value; + + tempvar value = (column4 - oods_values[122]) / (point - pow125 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[122] * value; + + tempvar value = (column4 - oods_values[123]) / (point - pow126 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[123] * value; + + tempvar value = (column4 - oods_values[124]) / (point - pow128 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[124] * value; + + tempvar value = (column4 - oods_values[125]) / (point - pow129 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[125] * value; + + tempvar value = (column4 - oods_values[126]) / (point - pow130 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[126] * value; + + tempvar value = (column4 - oods_values[127]) / (point - pow1 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[127] * value; + + tempvar value = (column5 - oods_values[128]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[128] * value; + + tempvar value = (column5 - oods_values[129]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[129] * value; + + tempvar value = (column5 - oods_values[130]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[130] * value; + + tempvar value = (column5 - oods_values[131]) / (point - pow7 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[131] * value; + + tempvar value = (column5 - oods_values[132]) / (point - pow9 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[132] * value; + + tempvar value = (column5 - oods_values[133]) / (point - pow11 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[133] * value; + + tempvar value = (column5 - oods_values[134]) / (point - pow13 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[134] * value; + + tempvar value = (column5 - oods_values[135]) / (point - pow14 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[135] * value; + + tempvar value = (column5 - oods_values[136]) / (point - pow16 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[136] * value; + + tempvar value = (column5 - oods_values[137]) / (point - pow18 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[137] * value; + + tempvar value = (column5 - oods_values[138]) / (point - pow20 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[138] * value; + + tempvar value = (column5 - oods_values[139]) / (point - pow21 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[139] * value; + + tempvar value = (column5 - oods_values[140]) / (point - pow23 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[140] * value; + + tempvar value = (column5 - oods_values[141]) / (point - pow24 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[141] * value; + + tempvar value = (column5 - oods_values[142]) / (point - pow25 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[142] * value; + + tempvar value = (column5 - oods_values[143]) / (point - pow27 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[143] * value; + + tempvar value = (column5 - oods_values[144]) / (point - pow29 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[144] * value; + + tempvar value = (column5 - oods_values[145]) / (point - pow32 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[145] * value; + + tempvar value = (column5 - oods_values[146]) / (point - pow34 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[146] * value; + + tempvar value = (column5 - oods_values[147]) / (point - pow38 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[147] * value; + + tempvar value = (column5 - oods_values[148]) / (point - pow40 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[148] * value; + + tempvar value = (column5 - oods_values[149]) / (point - pow42 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[149] * value; + + tempvar value = (column5 - oods_values[150]) / (point - pow44 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[150] * value; + + tempvar value = (column5 - oods_values[151]) / (point - pow47 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[151] * value; + + tempvar value = (column5 - oods_values[152]) / (point - pow49 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[152] * value; + + tempvar value = (column5 - oods_values[153]) / (point - pow53 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[153] * value; + + tempvar value = (column5 - oods_values[154]) / (point - pow54 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[154] * value; + + tempvar value = (column5 - oods_values[155]) / (point - pow55 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[155] * value; + + tempvar value = (column5 - oods_values[156]) / (point - pow56 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[156] * value; + + tempvar value = (column5 - oods_values[157]) / (point - pow61 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[157] * value; + + tempvar value = (column5 - oods_values[158]) / (point - pow64 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[158] * value; + + tempvar value = (column5 - oods_values[159]) / (point - pow74 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[159] * value; + + tempvar value = (column5 - oods_values[160]) / (point - pow77 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[160] * value; + + tempvar value = (column5 - oods_values[161]) / (point - pow89 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[161] * value; + + tempvar value = (column5 - oods_values[162]) / (point - pow90 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[162] * value; + + tempvar value = (column5 - oods_values[163]) / (point - pow91 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[163] * value; + + tempvar value = (column5 - oods_values[164]) / (point - pow94 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[164] * value; + + tempvar value = (column5 - oods_values[165]) / (point - pow95 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[165] * value; + + tempvar value = (column5 - oods_values[166]) / (point - pow96 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[166] * value; + + tempvar value = (column5 - oods_values[167]) / (point - pow97 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[167] * value; + + tempvar value = (column5 - oods_values[168]) / (point - pow98 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[168] * value; + + tempvar value = (column5 - oods_values[169]) / (point - pow99 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[169] * value; + + tempvar value = (column5 - oods_values[170]) / (point - pow100 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[170] * value; + + tempvar value = (column5 - oods_values[171]) / (point - pow101 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[171] * value; + + tempvar value = (column5 - oods_values[172]) / (point - pow102 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[172] * value; + + tempvar value = (column5 - oods_values[173]) / (point - pow104 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[173] * value; + + tempvar value = (column5 - oods_values[174]) / (point - pow106 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[174] * value; + + tempvar value = (column5 - oods_values[175]) / (point - pow103 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[175] * value; + + tempvar value = (column5 - oods_values[176]) / (point - pow105 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[176] * value; + + tempvar value = (column5 - oods_values[177]) / (point - pow107 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[177] * value; + + tempvar value = (column5 - oods_values[178]) / (point - pow108 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[178] * value; + + tempvar value = (column5 - oods_values[179]) / (point - pow117 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[179] * value; + + tempvar value = (column5 - oods_values[180]) / (point - pow118 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[180] * value; + + tempvar value = (column5 - oods_values[181]) / (point - pow119 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[181] * value; + + tempvar value = (column5 - oods_values[182]) / (point - pow120 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[182] * value; + + tempvar value = (column5 - oods_values[183]) / (point - pow121 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[183] * value; + + tempvar value = (column6 - oods_values[184]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[184] * value; + + tempvar value = (column6 - oods_values[185]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[185] * value; + + tempvar value = (column6 - oods_values[186]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[186] * value; + + tempvar value = (column6 - oods_values[187]) / (point - pow6 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[187] * value; + + tempvar value = (column7 - oods_values[188]) / (point - pow0 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[188] * value; + + tempvar value = (column7 - oods_values[189]) / (point - pow4 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[189] * value; + + tempvar value = (column7 - oods_values[190]) / (point - pow5 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[190] * value; + + tempvar value = (column7 - oods_values[191]) / (point - pow8 * oods_point); + tempvar total_sum = total_sum + constraint_coefficients[191] * value; + + // Sum the OODS boundary constraints on the composition polynomials. + let (oods_point_to_deg) = pow(oods_point, CONSTRAINT_DEGREE); + + tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND] - oods_values[192]) / ( + point - oods_point_to_deg + ); + tempvar total_sum = total_sum + constraint_coefficients[192] * value; + + tempvar value = (column_values[NUM_COLUMNS_FIRST + NUM_COLUMNS_SECOND + 1] - oods_values[193]) / + (point - oods_point_to_deg); + tempvar total_sum = total_sum + constraint_coefficients[193] * value; + + static_assert 194 == MASK_SIZE + CONSTRAINT_DEGREE; + return (res=total_sum); +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/composition.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/composition.cairo new file mode 100644 index 00000000..f4c9ff21 --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/composition.cairo @@ -0,0 +1,156 @@ +from starkware.cairo.common.ec import StarkCurve +from starkware.cairo.common.math import assert_nn +from starkware.cairo.common.pow import pow +from starkware.cairo.common.registers import get_fp_and_pc +from starkware.cairo.stark_verifier.air.diluted import get_diluted_prod +from starkware.cairo.stark_verifier.air.layout import AirWithLayout +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.autogenerated import ( + CONSTRAINT_DEGREE, + DILUTED_N_BITS, + DILUTED_SPACING, + MASK_SIZE, + N_CONSTRAINTS, + PEDERSEN_BUILTIN_RATIO, + PEDERSEN_BUILTIN_REPETITIONS, + POSEIDON__RATIO, + PUBLIC_MEMORY_STEP, + eval_composition_polynomial, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.global_values import ( + CurveConfig, + EcPoint, + GlobalValues, + InteractionElements, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.periodic_columns import ( + eval_pedersen_x, + eval_pedersen_y, + eval_poseidon__poseidon__full_round_key0, + eval_poseidon__poseidon__full_round_key1, + eval_poseidon__poseidon__full_round_key2, + eval_poseidon__poseidon__partial_round_key0, + eval_poseidon__poseidon__partial_round_key1, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.public_verify import ( + segments, +) +from starkware.cairo.stark_verifier.air.public_input import get_public_memory_product_ratio +from starkware.cairo.stark_verifier.air.traces import TracesCommitment + +// Constants. +const SHIFT_POINT_X = 0x49ee3eba8c1600700ee1b87eb599f16716b0b1022947733551fde4050ca6804; +const SHIFT_POINT_Y = 0x3ca0cfe4b3bc6ddf346d49d06ea0ed34e621062c0e056c1d0405d266e10268a; + +// Evaluates the composition polynomial at a point, given the mask_values and the constraint +// coefficients. +func traces_eval_composition_polynomial{range_check_ptr}( + air: AirWithLayout*, + commitment: TracesCommitment*, + mask_values: felt*, + constraint_coefficients: felt*, + point: felt, + trace_domain_size: felt, + trace_generator: felt, +) -> (res: felt) { + alloc_locals; + + tempvar interaction_elements = cast(commitment.interaction_elements, InteractionElements*); + tempvar public_input = commitment.public_input; + let (__fp__, _) = get_fp_and_pc(); + + // Public memory. + let memory_z = interaction_elements.memory__multi_column_perm__perm__interaction_elm; + let memory_alpha = interaction_elements.memory__multi_column_perm__hash_interaction_elm0; + tempvar public_memory_column_size = trace_domain_size / PUBLIC_MEMORY_STEP; + assert_nn(public_memory_column_size); + let (public_memory_prod_ratio) = get_public_memory_product_ratio( + public_input=public_input, + z=memory_z, + alpha=memory_alpha, + public_memory_column_size=public_memory_column_size, + ); + + // Diluted. + let diluted_z = interaction_elements.diluted_check__interaction_z; + let diluted_alpha = interaction_elements.diluted_check__interaction_alpha; + let (diluted_prod) = get_diluted_prod( + n_bits=DILUTED_N_BITS, spacing=DILUTED_SPACING, z=diluted_z, alpha=diluted_alpha + ); + + // Periodic columns. + let (n_steps) = pow(2, public_input.log_n_steps); + tempvar n_pedersen_hash_copies = n_steps / ( + PEDERSEN_BUILTIN_RATIO * PEDERSEN_BUILTIN_REPETITIONS + ); + assert_nn(n_pedersen_hash_copies); + let (pedersen_point) = pow(point, n_pedersen_hash_copies); + let (pedersen__points__x) = eval_pedersen_x(pedersen_point); + let (pedersen__points__y) = eval_pedersen_y(pedersen_point); + + tempvar n_poseidon_copies = n_steps / POSEIDON__RATIO; + assert_nn(n_poseidon_copies); + let (poseidon_point) = pow(point, n_poseidon_copies); + let (poseidon__poseidon__full_round_key0) = eval_poseidon__poseidon__full_round_key0( + poseidon_point + ); + let (poseidon__poseidon__full_round_key1) = eval_poseidon__poseidon__full_round_key1( + poseidon_point + ); + let (poseidon__poseidon__full_round_key2) = eval_poseidon__poseidon__full_round_key2( + poseidon_point + ); + let (poseidon__poseidon__partial_round_key0) = eval_poseidon__poseidon__partial_round_key0( + poseidon_point + ); + let (poseidon__poseidon__partial_round_key1) = eval_poseidon__poseidon__partial_round_key1( + poseidon_point + ); + + // Global values. + local global_values: GlobalValues = GlobalValues( + trace_length=trace_domain_size, + initial_pc=public_input.segments[segments.PROGRAM].begin_addr, + final_pc=public_input.segments[segments.PROGRAM].stop_ptr, + initial_ap=public_input.segments[segments.EXECUTION].begin_addr, + final_ap=public_input.segments[segments.EXECUTION].stop_ptr, + initial_pedersen_addr=public_input.segments[segments.PEDERSEN].begin_addr, + initial_range_check_addr=public_input.segments[segments.RANGE_CHECK].begin_addr, + initial_bitwise_addr=public_input.segments[segments.BITWISE].begin_addr, + initial_poseidon_addr=public_input.segments[segments.POSEIDON].begin_addr, + range_check_min=public_input.range_check_min, + range_check_max=public_input.range_check_max, + offset_size=2 ** 16, + half_offset_size=2 ** 15, + pedersen__shift_point=EcPoint(x=SHIFT_POINT_X, y=SHIFT_POINT_Y), + pedersen__points__x=pedersen__points__x, + pedersen__points__y=pedersen__points__y, + poseidon__poseidon__full_round_key0=poseidon__poseidon__full_round_key0, + poseidon__poseidon__full_round_key1=poseidon__poseidon__full_round_key1, + poseidon__poseidon__full_round_key2=poseidon__poseidon__full_round_key2, + poseidon__poseidon__partial_round_key0=poseidon__poseidon__partial_round_key0, + poseidon__poseidon__partial_round_key1=poseidon__poseidon__partial_round_key1, + memory__multi_column_perm__perm__interaction_elm=memory_z, + memory__multi_column_perm__hash_interaction_elm0=memory_alpha, + range_check16__perm__interaction_elm=( + interaction_elements.range_check16__perm__interaction_elm + ), + diluted_check__permutation__interaction_elm=( + interaction_elements.diluted_check__permutation__interaction_elm + ), + diluted_check__interaction_z=diluted_z, + diluted_check__interaction_alpha=diluted_alpha, + memory__multi_column_perm__perm__public_memory_prod=public_memory_prod_ratio, + range_check16__perm__public_memory_prod=1, + diluted_check__first_elm=0, + diluted_check__permutation__public_memory_prod=1, + diluted_check__final_cum_val=diluted_prod, + ); + + return eval_composition_polynomial( + mask_values=mask_values, + constraint_coefficients=constraint_coefficients, + point=point, + trace_generator=trace_generator, + global_values=&global_values, + ); +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/global_values.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/global_values.cairo new file mode 100644 index 00000000..90f3e0e2 --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/global_values.cairo @@ -0,0 +1,71 @@ +struct EcPoint { + x: felt, + y: felt, +} + +struct CurveConfig { + alpha: felt, + beta: felt, +} + +struct EcdsaSigConfig { + alpha: felt, + beta: felt, + shift_point: EcPoint, +} + +// Accumulation of member expressions for auto generated composition polynomial code. +struct GlobalValues { + // Public input. + trace_length: felt, + initial_pc: felt, + final_pc: felt, + initial_ap: felt, + final_ap: felt, + initial_pedersen_addr: felt, + initial_range_check_addr: felt, + initial_bitwise_addr: felt, + initial_poseidon_addr: felt, + range_check_min: felt, + range_check_max: felt, + + // Constants. + offset_size: felt, + half_offset_size: felt, + pedersen__shift_point: EcPoint, + + // Periodic columns. + pedersen__points__x: felt, + pedersen__points__y: felt, + poseidon__poseidon__full_round_key0: felt, + poseidon__poseidon__full_round_key1: felt, + poseidon__poseidon__full_round_key2: felt, + poseidon__poseidon__partial_round_key0: felt, + poseidon__poseidon__partial_round_key1: felt, + + // Interaction elements. + memory__multi_column_perm__perm__interaction_elm: felt, + memory__multi_column_perm__hash_interaction_elm0: felt, + range_check16__perm__interaction_elm: felt, + diluted_check__permutation__interaction_elm: felt, + diluted_check__interaction_z: felt, + diluted_check__interaction_alpha: felt, + + // Permutation products. + memory__multi_column_perm__perm__public_memory_prod: felt, + range_check16__perm__public_memory_prod: felt, + diluted_check__first_elm: felt, + diluted_check__permutation__public_memory_prod: felt, + diluted_check__final_cum_val: felt, +} + +// Elements that are sent from the prover after the commitment on the original trace. +// Used for components after the first interaction, e.g., memory and range check. +struct InteractionElements { + memory__multi_column_perm__perm__interaction_elm: felt, + memory__multi_column_perm__hash_interaction_elm0: felt, + range_check16__perm__interaction_elm: felt, + diluted_check__permutation__interaction_elm: felt, + diluted_check__interaction_z: felt, + diluted_check__interaction_alpha: felt, +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/periodic_columns.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/periodic_columns.cairo new file mode 100644 index 00000000..880b9cab --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/periodic_columns.cairo @@ -0,0 +1,1736 @@ +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_pedersen_x(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x43869b387c2d0eab20661ebdfaca58b4b23feac014e1e1d9413164312e77da); + tempvar res = res * point + (0x4cec4cd52fab6da76b4ab7a41ffd844aad8981917d2295273ff6ab2cce622d8); + tempvar res = res * point + (0x295046a010dd6757176414b0fd144c1d2517fc463df01a12c0ab58bbbac26ea); + tempvar res = res * point + (0x60105b3cb5aab151ce615173eaecbe94014ff5d72e884addcd4b9d973fed9fd); + tempvar res = res * point + (0x233eff8cfcc744de79d412f724898d13c0e53b1132046ee45db7a101242a73f); + tempvar res = res * point + (0x6f753527f0dec9b713d52f08e4556a3963a2f7e5e282b2e97ffde3e12569b76); + tempvar res = res * point + (0x549a83d43c90aaf1a28c445c81abc883cb61e4353a84ea0fcb15ccee6d6482f); + tempvar res = res * point + (0x4259be645aaf0a661e7877276fa5559ed7d04349f577595702efed3050402c5); + tempvar res = res * point + (0x71e67bd6a0b1b8518cb06837a78b92ab3dec98c4989f946285042655ffe516e); + tempvar res = res * point + (0x19b7924c29a944ecb61165a663d76d84e5ce44b4617fdbca8ff02fbdea6deba); + tempvar res = res * point + (0x70454f9541d96fc1552f984330389ff616cf80eaf699ba2e82b77f43fd163a); + tempvar res = res * point + (0x479c09d33c38f1c8f73247aace507da354ae87ca5cd4aa096bd3a6229e3006d); + tempvar res = res * point + (0x6fcf0e32e3e99f51d8cdac9c19cc25179eb97f2757844fa0c72e7c3bf453e4); + tempvar res = res * point + (0x4ccee6b6ecd4ea8733198e95935d13474d34cf54d7631fde59720e40378e1eb); + tempvar res = res * point + (0x627cb37206e5ee9da20c04a92cc765e3bd3f3d4e42ad4de0d709f366d446d8e); + tempvar res = res * point + (0x4183c04ef7d778f11e57b44c1a7f354c4497f1e3d420d3fa9f9c27c4bb58759); + tempvar res = res * point + (0x1e2c5c3fb2b47ea8cf33099c610f6132a5dd7099d29b02f4a041fe5947ff53b); + tempvar res = res * point + (0x4d44944716e0e13728fa8b84fde421f0f66a120ed2b7cfcf59f5ff6718b8b6c); + tempvar res = res * point + (0x394d0eed011068acc2f55f541c4d113a9c0afe7269cd7d9711aa7e8be661a60); + tempvar res = res * point + (0x52b5bdbcf28603ba60abcbf52bd4f7b4988ce0b4e2346e4875a3f117d4143b4); + tempvar res = res * point + (0x5975b93cee7a147a93cc98aabbb713f151924c4ede3306bb5e14e5e4d5d5c05); + tempvar res = res * point + (0x787053fc3649b17965b9e6ef5e05e024cdc188e90aef1cbf13ba78542a0407d); + tempvar res = res * point + (0x7cbef72611c8e1e08e52ca202382a8545bc7fe124ec080058988e45771e3b40); + tempvar res = res * point + (0x32bd55700baf7283995407f470139326a670d60a5d5428904596584629a053d); + tempvar res = res * point + (0x3485ad12aa365fac51a6296931abdcb54fa848c587cfbfe5bdbad2d6f6d3bd3); + tempvar res = res * point + (0x7f9850620a3435695ec7a6d9378cfe218ab0e5fa674cdc572fb9c197b0dbd25); + tempvar res = res * point + (0x1c7c40b6e4cd3d473e8f84b8fa63610ac6c7e3f4f0017f3ed84eae8f042bf15); + tempvar res = res * point + (0x1e3e1d970342085c482175cf60d93e1cc2cf96dec12f1d839b9b829cc957b7d); + tempvar res = res * point + (0x2d1547488e174e0a8662decd2cf020dd40718f070c84cf36bfa261aa90f814); + tempvar res = res * point + (0x31b8dd40040d22aae383c1e628e427f7aa4a7b0c3a83f815fd7ae2b36864af0); + tempvar res = res * point + (0x5efc7dfab3ad0b3f01e313c50ced95363d8dbaa9f91f801d6f1f00869467a16); + tempvar res = res * point + (0x724a3072c9f315cba63e5d99034b3218ff29a9bbf04155060ebdd6c848a652); + tempvar res = res * point + (0x2a0c1eade4037c10729bdc8a8f38bb5bf359078eedba633047377a09b6cde4d); + tempvar res = res * point + (0x6aacb14e31ebb5066e78eb597842812d7ad137880a6dd0d065c4acee231b7c3); + tempvar res = res * point + (0x468b88ba32ca1eac6c8d3196eea0561e25770818221ed0da3ae749e2a302e); + tempvar res = res * point + (0x5b52f487f8c3d78fb6ea4be227325a7386c7e95cd5f9b72710cfcc870cbba59); + tempvar res = res * point + (0x2bec10dd6a541c12555ff040b5949407713b4227867f53a435e80847b7932f0); + tempvar res = res * point + (0x41e1c8870eea4b7f4308e8173f97482d80afd055f07b1a058f182a775aef593); + tempvar res = res * point + (0x126a03f3c5cbe523484111d915d6d7eab5edad02a327a383171be09597336b4); + tempvar res = res * point + (0xa8db86341624832893780e36fe1f60490da5768f9aeb2a5803240f29ec5a2); + tempvar res = res * point + (0x751a8c7382e8fc0141b4ec5bf37fa457ab8301640b58cfc3b6a0b8d1a12bec2); + tempvar res = res * point + (0x5e56f3654b68256095b54a7868763aa3ff60a98ea3508039def82d2098d8a6d); + tempvar res = res * point + (0x60a9a4ccb72bde44d8a6c5f1d7b9303cc32013ef621bce1b8af413f00e77ef2); + tempvar res = res * point + (0x4efe82f8cacf9761cac9fefb6c13c1afdaed68ee650c37684bfce323070e480); + tempvar res = res * point + (0x40c43992a86359c71f5b8051d84d1fd6971eb36ab486f321a1fc50a52a02a44); + tempvar res = res * point + (0x538392c6ca2c04b5096aa69392b76ff109aabe165df488f3d1a8e5c4022db64); + tempvar res = res * point + (0x2b783063fa1948abfa91d79d225d52ed2ddd11bf20fc388b1ec00fdb5867921); + tempvar res = res * point + (0x1ec66f3f326120e659b78867bdfd7dac4dd3f1a92ffeaf46d39725de341afd4); + tempvar res = res * point + (0x5f4ed6b86202d76686a0b4c1efdfc93c46dce1b843c7181d1db1f8cd4d6dfb); + tempvar res = res * point + (0x34b9f6e8d5debbb4aea334310dc8d8075f896e7eb9f1c09788c7ec62ccb6116); + tempvar res = res * point + (0x4e57c6677d3bd56b425a3b3a92517344d4875e1710667e3dee1954395269af); + tempvar res = res * point + (0x1c5110241881e087e201d211da338d8377dd228afbd84850b76f3e5dfeb9361); + tempvar res = res * point + (0xa64b536ff29309d613af1c27c7229c3f6c583471c6b589b25026db08d3767a); + tempvar res = res * point + (0x3f6f9a9c3f6e175b59fd8e4268a6ae5734034fb1d7c43f97ef474b75ba80cc8); + tempvar res = res * point + (0x775ad15685181f15e34a6b0036c16fc8d1a9860ced1cc5ece39d19a6add939b); + tempvar res = res * point + (0x7775ec7b0ee9812c8df83957c5b46c316fdac82a2d736d4a6eea6124abc5849); + tempvar res = res * point + (0x41f320f863037e381ff83f2c9f1a8ae2802fc22cfea674d9cfd10171da6dea8); + tempvar res = res * point + (0x67649ac75ea692acb3aa4432d48de15aacfa347a37afdf489cc7e954e4ab100); + tempvar res = res * point + (0x7fd8c6108133b8109f4058192bd614b5de2c50afe7ac08a7bb0e0b12ef04e4f); + tempvar res = res * point + (0x57f8ef270683ea78b167dcbe5bb122a79ba760c95f8103dc4c6e7788fb1ac9c); + tempvar res = res * point + (0x6dc0d996fc95036c8cfa408fb12793bf8a4773d698f55085c2ccbc906c6d2d0); + tempvar res = res * point + (0x6713ddde3f2da61b676f5e4c52177bfc8c1576bc97ab3c48f08ff02d26cc03e); + tempvar res = res * point + (0x16b450dd2bb4712f6412b35603aaa02e7345124e5fd13e919c269f3874970f9); + tempvar res = res * point + (0x5f81b087ad750a0ebddd5239bb3682c84d88326b4679a24890f5fec98df45a); + tempvar res = res * point + (0x33f4151b710663772765df7f95b3710c3e8e81bacdbe3729b0a43b6d19e428c); + tempvar res = res * point + (0x5d122cd95f43fb6fc2373ef7e66072140f0f20d552f186faff2622b55a3e063); + tempvar res = res * point + (0x9b478a0767cca2c6f9b4268bffc9e907eb69b32f8ff7b43fc24edd38a88ec2); + tempvar res = res * point + (0x597cee65bc7c6f0faa3e0aa1958897acf7fd4e4e69569f5d18254b0b8c09aab); + tempvar res = res * point + (0x218bc11c668ef7ae5f04a16dc9933c5bc41c194a439d0af802568e598c54630); + tempvar res = res * point + (0x3394eac0b3787b323686cddaef3af972d7fbbd75940bf7f682b8fe3676cd46b); + tempvar res = res * point + (0x4aeb3836ccb2a9ebf9f1c5b6ee3c42f66c8059cc55188335a47a3583d986018); + tempvar res = res * point + (0x5db68a5c4527fff0ebf61fe064888b0fb6e277cfecca6d206986293256f31f); + tempvar res = res * point + (0x63372394d373e7a2f2fa6405509da05fe9cb546ea2742ac0716bccf50ad9227); + tempvar res = res * point + (0x22d4ed1a29943bc16343e01eab25e45adf74b6a7072e4e26aa8d141f2cac5ca); + tempvar res = res * point + (0xf8ea3b2c0b72747301b2778cc071cb9d2e09bbdd7a386b7931582ab412dbd1); + tempvar res = res * point + (0xf78d4b72e0f5f55913884d0714674dd6f534b211ec5dcdba419347828c7c35); + tempvar res = res * point + (0x5142430fc3f872dd6fefb7e9804e3e63714f71a2f43b155cebc53671f964af); + tempvar res = res * point + (0x72fe5010e70102306b21cc388b7f2ab8b0324b84654cf98032b83a81099e72e); + tempvar res = res * point + (0xfd959b09bb704fe63c73e2331f8e76dc1fbf85c2dc9dcaa0e8108664f7f988); + tempvar res = res * point + (0x4180556f79a47df725eca2c2f65389e27281443847a7d9e84640e6d589182f7); + tempvar res = res * point + (0x2dc12726f7f06ef1adfb10747e5d4ef8052e4e57bad9bb10529d7994ef91035); + tempvar res = res * point + (0x3c62720cac42a262b58765d7c0588231c5c2c9ce9d48f0fd547575289ede8c8); + tempvar res = res * point + (0x5744178090cdd56ae12fdd51b74bc097f23f735b7ca16e415a1854597b1caf8); + tempvar res = res * point + (0x597cbefb648f47e763b9b1be8c3f815a0e8b65d0101e11b5bedc380c10e9f4); + tempvar res = res * point + (0x78e66ae8b3ef57289d92561dbe4ef72f4ee551d5cad363720a78d104a89163); + tempvar res = res * point + (0x3cb89319d8172da012c036c40116fd325d65af69f80a1df8f56ec890e920592); + tempvar res = res * point + (0x29d152196b7ea7446182efe778a2db796f5fab17286405953476ac97f94a96a); + tempvar res = res * point + (0x6348748d43d48acafb8ce688f25a1245df86dd20c3a96c5c85cfc0960ca2fa7); + tempvar res = res * point + (0x3609fff81e15da2a88036d1c2d28814035ce829430fabcc3986c08acdc2d44); + tempvar res = res * point + (0x3241fcabfd99b666b151970558fb59fdfca47ded4caf2af4b15839767edb190); + tempvar res = res * point + (0x3f61241934753ca9c4f4210885b87863abdc8637d4dafe5da4bfa5e0206988e); + tempvar res = res * point + (0x6a16c0b648c72c8d718d53099cb11725ee09fe1b49487d8f55f307a6a265920); + tempvar res = res * point + (0x43ef0fbc56a0a46c7099f5e6d6550a77e1ac023e2201f01bde0a3f5fb0f16a5); + tempvar res = res * point + (0x1f6bf768424619cc2d34c01cbf4e137b6cc33a4a5a3db0bc704f790f86ad67c); + tempvar res = res * point + (0x49eac48d453d5de07fe3f4bdb5aac21e7fe69858afedfbeb0daf175459dd9d7); + tempvar res = res * point + (0x2a390a6737563e9edc22b0b0cce94a67adc10db18d6f978c826f24b8848c6df); + tempvar res = res * point + (0x23e127bf290465acfb7500962d426be5241f0e8c6f844d25aa8e262df6e70cb); + tempvar res = res * point + (0x5e51a00b7437caee2acdb81781212bc3d1c397b477ec784d1a7b304c9f8c687); + tempvar res = res * point + (0x6e52308f62433fe92ca9064e06aa17d793d3ad7bedb9590c8bb9edd3272fbae); + tempvar res = res * point + (0x7aa1d2348e13a031dc4fa20d453fcd59eead9adbccc3ea64997d09a0f58216b); + tempvar res = res * point + (0x1c02d3ffc30c7172a132ac604ad28e89466845c139dba509b896c997ee4ce8a); + tempvar res = res * point + (0x3ea018d81f9118cb5cf251d6c795b4ca4aeeb28d6ea5464fb4807d219453728); + tempvar res = res * point + (0x62c2fa993dee607ef195fb6620051b4df127d933de3a417d21de3b0c6dfdc95); + tempvar res = res * point + (0x2fd6fab5c4d0e6bd5bf5b950632e2dfc3be19c9a80e3bf8934e878003b0816a); + tempvar res = res * point + (0x12f2b0b280b64cb9f6bd77cd5103b7668ae42e5d40ae156607c69043b4da5a9); + tempvar res = res * point + (0x51a3ba83e3f68b2df85f3b9e770b5294312fd634fa48ace215a029fdb5593); + tempvar res = res * point + (0x56f19df91009289c7f5304026cf6d2c26541cd4caf867b2d2ea8a954560ed7b); + tempvar res = res * point + (0x362dd19b8207511079a352fad991df9582315ca2539ed4da5cbb5b82e414fc5); + tempvar res = res * point + (0x2dd7ddf328b439b3047a93c6fff6ef901946438cbb55a4c1fa1848f80baf2ce); + tempvar res = res * point + (0x2120274511adcc680703d33146477a31c42684b5163a628eb3f84258ae78786); + tempvar res = res * point + (0x11076126b67298371103d89e76ec2fbe30b28c5de422e61d3fade2e190450a4); + tempvar res = res * point + (0x1868ebbc59cb1c69b32ea2b3a7ce3f87b680731b96a42403878df0a0e4bb3e2); + tempvar res = res * point + (0x5b7abf66fda1917e0e1d44924cb73d713b5fc16b3a64bd4857d089adfd6a814); + tempvar res = res * point + (0x13df9c113e40f246d806089e437629de52f8a247ece912785004efcafd4ea94); + tempvar res = res * point + (0xbdcc31feec5ca8cfbf7227269d1e120132c51307ec03cc2d59c471e2510a24); + tempvar res = res * point + (0x3b2efe16624d8d0a1beeb037b02f0a4f7e11eb3859852cea1f83ab1752a4099); + tempvar res = res * point + (0x596104fc8bded038e39f0de5e80a2f2b65fd39fa4ab7b3453bbe8a40e06a317); + tempvar res = res * point + (0x5fec9e8e9ad35ec1091706f4f39c0e8a610f58be6c987c2327ce0794af7cb7c); + tempvar res = res * point + (0x5fb45888a7861e18a320bff7b0baee50ef9cbe1b06c78a5a16a6fbda3c6b77f); + tempvar res = res * point + (0x2c15afc87ef81cb58ec29c7dd81b4cfe291e5d33a7b36126289a8ebc1af4eb4); + tempvar res = res * point + (0x1f90c3eb7ed36bec79f803ab1884e5455581110ab713139cdb5207561a89a34); + tempvar res = res * point + (0x7c537f749e37ed15d7e5d5d0f88686c5d02242b6c487ae2c5606d2c7de986b6); + tempvar res = res * point + (0x4db0795b76ed3b5cf3cbc23bc47d20abe9b9f76a2731f2774e6dd5ecd6eea05); + tempvar res = res * point + (0x3a7ada56cb16708c6eee7af3688765728c706a16baf61d0582186a3717ef552); + tempvar res = res * point + (0x4c9b9f2c154c6a8cb1fbf50793787d215f2857d042b21c6f5e2740732cca567); + tempvar res = res * point + (0xdf2e87cea7f46ab09a5011d8afca4e7cb962e008fc991ea16d85c472dcf3ef); + tempvar res = res * point + (0x4df83db997cffc8598b838a9c8373bfff5e109d71ee3bf2a18dc0e621e93d2d); + tempvar res = res * point + (0x17eb7ae4a950bce2abe1e7165594eaa60be7b75cefd8007425a735264a1371a); + tempvar res = res * point + (0x6c8258350c092e7b5cf658a6bed95d620afe0563482911a1435a93bcb0d5beb); + tempvar res = res * point + (0x554563c23e6ec8a4497d670e81940a92ddad53c27e7bbc18de74d2b3734d824); + tempvar res = res * point + (0x6c9568c4a9f64874e71c88cc80576e4083f6d0649f66929612a9bb99bd958e1); + tempvar res = res * point + (0x14e46f8471beb6479fadac1286dc86683c659bf1c77dc96bcb303d48c115d7e); + tempvar res = res * point + (0x5eb4774b76a39af609243ea0ca61eaf03255a02d90be9a83901debf64875f0b); + tempvar res = res * point + (0x3317e8a32e8f82246423237d2a4039eba358a76adb8065751b6d7939fadb85c); + tempvar res = res * point + (0x6cfe464b2a4d4e77c09e0beceb4e368bd93aae5efaddbb92e003afc508fcb33); + tempvar res = res * point + (0x3b69a8579df2cea96435a07c81ae1d9f8a5e0e52433335c3e7ad81b76789788); + tempvar res = res * point + (0x3f26981ddcd3549baf47e3f1242b0bb90d6b7f426ba71d2ce628ceb801f3734); + tempvar res = res * point + (0x40d8fb43bbc7e5c35e4b57fef4e8351ffb118c9d92346f97ff7cb48b0170eff); + tempvar res = res * point + (0x19eec9d276c006f19cfa904a4e2ead857e99000d16e897dc8dc955c57615d54); + tempvar res = res * point + (0xcfff274a78e56ec27e29d01f2e900bd226cdb493a83358f9b807235c9aa407); + tempvar res = res * point + (0x13d4454abb9515f00c3daa6034ed3759ea722a953679c4f857511141b87da93); + tempvar res = res * point + (0x2ea5039159478e68762063624b0f396cb7f1bbfe8c1a159f65f0f663f219136); + tempvar res = res * point + (0x40508ab9b5b8d885f85750bb659071d6cc04639f43070b94a802d41723bd0f3); + tempvar res = res * point + (0x40a9f47d93280a641e7f903b1e608cb443ed5d59f24cde6b92c6631cab1e009); + tempvar res = res * point + (0x5a5085cb551c472af264b5de50ebb7b4bb04539c9afac1339f903b943578eea); + tempvar res = res * point + (0xa89bb9df4a46c56f2f40748d826d50285082118f8995f5e7638a05ec117c47); + tempvar res = res * point + (0x5950e4370508dbfa764621025e9341994a3ac21848f3e39d02370b193ba6937); + tempvar res = res * point + (0x6f20da2f1a25f1fab33e7856067226784ad992f8bb53249ee7bb17e86c82070); + tempvar res = res * point + (0x42271e06f205c1bfc9f9d9411bf835f43941c88aa3dc75f044a0143faa4d5cc); + tempvar res = res * point + (0x411f9def562556de87d47af60354512d9a1261152e7f4636038699d468fc2bb); + tempvar res = res * point + (0x66490371a5dfa3fb85bf3f088b89614b5e56cafc263eec39dc4a1bb39e03433); + tempvar res = res * point + (0x6d49bd35b4e4aa46b7098d306632014b4fbfd84892d6997b58d9463a0ea2c05); + tempvar res = res * point + (0xa9c2bf87d58d3f72d985b4b1129f0a1664caac1ee26a15675d1a5086de3a79); + tempvar res = res * point + (0x46df5faa750270394a4253e63ba3e437550ee216ebf8ddbbd7304940c85ad02); + tempvar res = res * point + (0x6e5bf767f3b0646dc16377f3bb7c17db6069555e100dd2215eb20c4d29fb1c3); + tempvar res = res * point + (0x5d9acf8582d4ccc017af36a8a9863e4383b63893d3fb5d81f7fabf4ba3d1023); + tempvar res = res * point + (0x6933ce3f88628188f7a1b1be5b0506dedadd9559c4766be0e7db1ace3adb592); + tempvar res = res * point + (0x40ba0e2f504aa0e9972018d91be21f56bde16361282915563796c750f8936b7); + tempvar res = res * point + (0x6fd73eabd21a86dd8094dd0ebb5924b1aab0753a0d251571ea93f83ab4bd519); + tempvar res = res * point + (0x2761e32194ddef695d1837c8a3f48a3773ae392b5633bfa0c1451e51e33b69b); + tempvar res = res * point + (0x5519091c464bab5646294ae41d087ddcef8bd0508a94a07890fa07220bdaad3); + tempvar res = res * point + (0x3b160cef807b72e95938852093a3a633e72b61e0afad5099201885b54be4098); + tempvar res = res * point + (0x7692b996dcfecd35db6aa22de10144724c478f85a328ab893c6fbadf43d7a9e); + tempvar res = res * point + (0x3512eb8a3bbded6fad1c19190d857629efc56f93fb4aa527e2958dfcce12153); + tempvar res = res * point + (0x591ad3fb7ab83f8d9fcf184ab793baf3db128cda0de1618932851108771cf0d); + tempvar res = res * point + (0x5f7da39edb0781ca1f96af191cf4c70fe0c121b7b2c92f09b49503bb070dc99); + tempvar res = res * point + (0x4a94669a4901cb5527124a2dc7ff6c278d540da41a95e819d0ca10269f7b380); + tempvar res = res * point + (0x20a06257ccfa90a74adf9bb1130a8385b8c91bc61e18acc30843463e5abaa2); + tempvar res = res * point + (0x7e3c052c620ef7fcf180898d28e39348e96e92ed0634dcae3f5fc64be5094a6); + tempvar res = res * point + (0x578dfc700a95a564b41ba8f33b885ad04209bf5169a4046f603a3d84f792d6d); + tempvar res = res * point + (0x796c9b073e2c56f55601eb1f6147d028553275e9fb792f0b76007c9710459c7); + tempvar res = res * point + (0x8c2c75a2fe00432f77ef57e906f264ea76c439e0c4cb19e87867a6ebb34d0a); + tempvar res = res * point + (0x525fee2e2cdb7a293f50f630a840d5cf5f29a158eadd6fa9d0159951712d19a); + tempvar res = res * point + (0x7991462c103abfc3bc31427227b1fb82f7fdf2be1b39316f46e3baef2fcf588); + tempvar res = res * point + (0x46d1e806178137e82ea97c54d8c15dd45c2a9a0082b18aeb9f849158ffc0ee5); + tempvar res = res * point + (0x25a127bbf961fe2b5bd9facbda706223206c40acff003152cbb3b28e9668030); + tempvar res = res * point + (0x1e3d7c65a8f40b6f8aab1635e3b78d0f798746532f08771267a9b6149632a5a); + tempvar res = res * point + (0x25fc8ba8ab421b6dacf2ce03263e037374e4d61c6ce26422fbcb2e755c0d9c4); + tempvar res = res * point + (0x48294f41052135cca94fcf88cf236437b8a55370c3de81fb0d781aa7b0f8eca); + tempvar res = res * point + (0x8c5762a12210a7fdc96a7d3aa966476d3b28650e7c49fc90f95e49a80d4324); + tempvar res = res * point + (0x4ffe8275d3344b4ae2f7d9992d68598e50f365c0b8a721d723841485fc25c0d); + tempvar res = res * point + (0x2959a6947bc4eee0135bbd0a6f2053b62317a1718bcceecbd507417d31e8806); + tempvar res = res * point + (0x77efd8893058f8e00863205582a5e274c344b9af63b9c40ddd92c97c33b52ea); + tempvar res = res * point + (0x73796a0ce0fe851bc22b99faded48a24a21745bb62603e750f78b854d7c32c7); + tempvar res = res * point + (0x2d2e43c0ad60d4265774479258211274ae32b5e151aacf6f8ac1b7708076f09); + tempvar res = res * point + (0x22b5eab11c9e1e6b8d64d5db4b12502fdf0899497f72ee1a27c8797b617f76d); + tempvar res = res * point + (0x703c768145191a10344e5ca400be8fd249e653d564015d46fcd7096cb723a0); + tempvar res = res * point + (0x4159f8056bde7fd4f72615f7bdd0bb6408256b8b216ca52fee253113d9d007c); + tempvar res = res * point + (0x5fde2cdf0d23d5649e3aead1b2b90ca0309715a029654e8984e43de7bde7b06); + tempvar res = res * point + (0x50372d2aff2ebc566505a564d971c6491095e009d9887899aee0b5017fcb877); + tempvar res = res * point + (0x3333c3d925d8c58b9e4e533531e93046039577cf0e57d011c7ce87c6ef1a835); + tempvar res = res * point + (0x575fb11a4d7e3876ae4c86b80b4b9530e0d3e9db218f4d5644f612348f8f002); + tempvar res = res * point + (0x3481879ec47fc8cfabf38ffaa75311c787b7006e7f9def35e96454263bba4aa); + tempvar res = res * point + (0x5c1e733995aad208f0697e4d2a6e28bec9fddc3e30bd033f2f50a83927baef1); + tempvar res = res * point + (0x2edf44b1f59efb0f36c0fce5edbb7576c89cb9f191300fc5e0240def1b88b9d); + tempvar res = res * point + (0x1d46036b736e06016c817d2b51a0918189881a4f1b7c71d556db583df762d37); + tempvar res = res * point + (0x258ef77b90879282ccc2ffcea5052cad266d77b75db36b7996e5fe7638e9b00); + tempvar res = res * point + (0x4219a0a13e09662f3ec712da51b36967947f6d5a09d8044e3005a7f0ab45915); + tempvar res = res * point + (0x18d0f552fd62f81b6076265c7a3a0b81f6bd37152a2f16c71210021ecf68468); + tempvar res = res * point + (0x31abb6310a44d65ac8c308011d4afab938fdacfbaec14c62b808452310b799b); + tempvar res = res * point + (0x1765a9eca4f4551f177b35089f8befc808613bbcd971a47d485b1c220d0bbb4); + tempvar res = res * point + (0x7fd44af0ef24f061aa7dd5bbde15098dfc3721790ee9bac2caa71cca714ebf0); + tempvar res = res * point + (0x566edfbe3c59cbd43838ee245edfebe292c7163f79b1454b03ef3cf8af23c10); + tempvar res = res * point + (0x14d01a0c81aa61c5a238243e78afe80e5d0d7bf528c3d05a343d0f4470d2b0a); + tempvar res = res * point + (0x38445d5f2de7993c48c9da8e77a87dbe289dc0428b1e4ca87e30b2376535543); + tempvar res = res * point + (0x324db878e3842c25a78e94453c98434c54b41955db62234b0ec5ddde6641556); + tempvar res = res * point + (0x184f23c10c726d4a7036c39466db02c4fe7c3d40bade571fe07acaa282f4c07); + tempvar res = res * point + (0x7fb1cbd7a48f2d44a148bd4d17ccd47c438f4f1b45a02945cf4312afa0d6f95); + tempvar res = res * point + (0x20d2002cba899acc7d333031e0977d8df94557ca0749bef6c38b72dbcd462f); + tempvar res = res * point + (0x75bd5b63008c2e005df64ca189ecce11c060f0df6903011a3d95cf9f7b48878); + tempvar res = res * point + (0x548724b5683cd6427513b4c4f84a6d888b9a03843bc0dbdc501b8752d99ada1); + tempvar res = res * point + (0x38441dfe93fd3133faf52208f3263d4ecaca0643bf9c9d4bc952c86cf280f7a); + tempvar res = res * point + (0x182e50e36b753ff5f95f2bc47a6aac8c6f2e5c3975476252a7c29250eefb056); + tempvar res = res * point + (0x2593b010eb6fe0f64833e4f22f6854c063085e0dd393226e6b5fb20ea7f432d); + tempvar res = res * point + (0xcc060a8b007b2dd0efa786afa5edcb512d83ddcba8ed69c27ccef5769deb23); + tempvar res = res * point + (0x672717b74bc3dca9e53494681a5ffa02edbb0290de1c5209843a16964df7a3); + tempvar res = res * point + (0x53774852c8f84d21eec107e1da7a2ab3f4b5ceba6479d1f902ad404e7dde329); + tempvar res = res * point + (0x96de7b9a7eac739df4d13902971804aaf40f5559d18593be0daac0ff86c636); + tempvar res = res * point + (0x725601ed4fcfdaa392b91e8ea982fc57f1874378ab8d6b55301b3d4b6efd802); + tempvar res = res * point + (0x7bc4fea0ea687295d72735a62a19c1a160a1b9a19342717b527f94770aca77); + tempvar res = res * point + (0x3dfab578cfc7a1581212074e0969db9accb619a043dd7194a253af67ef3698); + tempvar res = res * point + (0x44090861421dbb6b4a325a6832e02986be80f7ea475313ae01a3215c3510346); + tempvar res = res * point + (0x7384363b4495aacafd81d0a139a66afd3243309395e3444fb3f1496832240a9); + tempvar res = res * point + (0x4f6ea70b9090971f8de7071f27b0d036b112211403e0547fb7b7903704f295b); + tempvar res = res * point + (0xd55dad93e837d31e8f120398e09b83ca68f160c16043e1c65d033a19adbc30); + tempvar res = res * point + (0x6cc09dc2faf0903dbf5121b97ef058300b18efcc30c25f55de752d395b568a9); + tempvar res = res * point + (0x2b2091e41b10140bea196a1cc28d7f6db6ae1b55d1f115d882c321221a32eb4); + tempvar res = res * point + (0x11b19b3abd2b297728768027b1370566bd845bfb6f49197a76255c1d8c661f); + tempvar res = res * point + (0x3236ab2e0e0b1b013c2100283e36fe75521bd50091f1c73deb165e86616d80a); + tempvar res = res * point + (0x7351448e92ce6914278e73ceeb080e280c146dbcc21cb35af8d2c7e5560aa7d); + tempvar res = res * point + (0x100a89bccb889f183c2a6ced12bab8ef86403230ae6b23def0b784f73ff296f); + tempvar res = res * point + (0x31e49312e1d59acae36bf3562443259500039a7a77d9a57a44cbbb4a80932e3); + tempvar res = res * point + (0x273647256f95d2e5f98bd7830191abd89dc4ab241fc7fa12b27e16a6bd423c3); + tempvar res = res * point + (0x424396bedfddf4192963ef0f87b3989a99f277fe2c60756a4a60fae4d6dfa31); + tempvar res = res * point + (0x6e3a0355459b8b7c35837f3f19f0d8954907326cb08d7d084f2ed0f4b2af8f5); + tempvar res = res * point + (0x2d88caa65f47db103fb1ca354bf50c93f24bca5001598f716b6c9e5c51d1d2); + tempvar res = res * point + (0x2dca037a615e8cf99f8614f437e953c5625b9b57d95f16c174f63346e31c5da); + tempvar res = res * point + (0x5800bf15808a39f1acfbb193af1ab0c22f18d9738753bd3cd2aeea81982409e); + tempvar res = res * point + (0x4ad97a9b0ab95abc1b8fcff31a48e18fb2391ac95baaacc62125bd87fd75e13); + tempvar res = res * point + (0x5ba49d41f62b6d6903fc455bf02bca54becb6ee7f39650fcd0b717ac396159c); + tempvar res = res * point + (0x959c7bf3885d75ab3ca9480101ff64d62c9f138d35f63c137009c1b3eb39f3); + tempvar res = res * point + (0x6da06ce868c140c8ff9ec1eb0323fe2c8b35b46c8d4f5a27727450e87ebd906); + tempvar res = res * point + (0x1bf01c19527dd1d9094c44e3acee4d1ec8c4192026b6f996776294cc9dbc4a8); + tempvar res = res * point + (0x40d1ae7e7bcddc520ed8c0fd736e9b5147d278ed1b720abf76439377023abea); + tempvar res = res * point + (0x2f26fb29017b5ab80328de8488db547e47c44c0d56f30e330354d5b980e50ad); + tempvar res = res * point + (0x72bcdfbdd09f13eeb0c01565dc6a79999a9642dbcb0c570e3e7621ca94df215); + tempvar res = res * point + (0x140ed138dfc5b5417b25a4512bb991f3fd04cf750e082fd4fb82cc15b645835); + tempvar res = res * point + (0x40ffb20c2a3dba0a0d8b6aa51ccaa1b690aa08670ceee556d76053cd671d522); + tempvar res = res * point + (0x283c74c8066141911634401af10106c29dd77458d059ff3b2dd7aa796b2a559); + tempvar res = res * point + (0x593df80dd238cbdc6398146502310a5cb459b0e7d79fa9bee5cc389385c95b3); + tempvar res = res * point + (0x669bfada09faa64c005321d60752662598d69c517e9ffa462dc1b1af42228d1); + tempvar res = res * point + (0x70cc78b821b198e72f8feeb8f31d81e5a4854de3575a62909e0bb51cee921d0); + tempvar res = res * point + (0x68539d0ccd1737a8b2e540f9165638f86f6c4e44943455d311999b0b3684b7d); + tempvar res = res * point + (0xbb867c323532bde3d5b0e08b1b7531a95a2a1706132dcd8ebb7063cd1b1bbb); + tempvar res = res * point + (0x751a2c218f4feffc61e90939c4d2672a263d3b33528c7c6eb40042640f45146); + tempvar res = res * point + (0x6473d78fc37e48379ef8a9d57e3e92cf4fdad3a1bcc170dd177dbc51c4dc62c); + tempvar res = res * point + (0x7218f86344ea46cdcc372a22a14663105eef03bb0de9da9bfcd10818d36ba28); + tempvar res = res * point + (0xaa17b17cdb757833dd4b1670371ef55345debfb2c1b6bdfae64d8759e04349); + tempvar res = res * point + (0x38cb4173a2b057da41d5d30b55f6d11f25effdc69c14843cc43a9ab269630f0); + tempvar res = res * point + (0x4350a29d7b4b242b20b68f6eabd75b758d8631c192b7da5032181b71740b96b); + tempvar res = res * point + (0x42518069a18922e90fa2fa8fe9bf5e2371a40ea88c25d247e6a73a007105dd9); + tempvar res = res * point + (0x7f43f7128a1b46f8ab168a06df9d0cade82a3193eec2d51e2b83f4f0c7fabd9); + tempvar res = res * point + (0x6e694d9385207d7cc8a7cdbf90eb4ed3be49cabc0e6b8d0e69172d73f4a5c11); + tempvar res = res * point + (0x2782ab60e8e9c6cccd40f438a2d2814ef39f50f02bbeb790bc6df78d75af42b); + tempvar res = res * point + (0x259f8eeaf6cbdabd37b9de029661bdcb219245a7599207d3df08c7cc452a13d); + tempvar res = res * point + (0x9345d2e4fc86ae78c4879ecc3adf9e6c482044052bc3738618247b60f069ad); + tempvar res = res * point + (0x4419f27879dacd62144bde4f904890c6d5b312282335a57cf1b04b403bddbea); + tempvar res = res * point + (0x581755fd25823d2f3b07ac5d8dd1bd5b26eab362cec3f9e03573a2b03f62ab9); + tempvar res = res * point + (0x37622de79f6252ff6bb76900db06504434856faf33c59a1b2e39a4fa60ed143); + tempvar res = res * point + (0x2c4ffe18ae93ab53ff6d7d01a7b5bdc5b08dc8d144e0b917f47e60e3cf723f3); + tempvar res = res * point + (0x42ca1f8224d317275c78ca7762a78e6c51978afe1abcbf535da6d299c799c1); + tempvar res = res * point + (0x6403910df189d75aca61c604de3b0802a4ec2ffadb0ff60f1a01f363d66ea67); + tempvar res = res * point + (0x44094080f29bf84d3d5849f264713647289e9af1534ec38d1a7c3d2d2f1ab64); + tempvar res = res * point + (0x3dd2900899d2219ea16fc41413af028057f0c2a674e1cc65032fe4dcb062d4d); + tempvar res = res * point + (0x5a612887264b1ff8e5239b3e04143dc30d0a80cef1c880fe52ee2d5009092b1); + tempvar res = res * point + (0x5ca2e5676dde96127ca85ff6ac82a8fb35b45651b88bcdbfab7ae5298d427c8); + tempvar res = res * point + (0x4b135ec421e9138d09c709a5d92ba70e6944cd44a7eb7f705ab3612de315ac); + tempvar res = res * point + (0x152b3265b01fa9ce0cdf58c17cd14c2cf3e3fafba140db9e27da4fdde7d3c0d); + tempvar res = res * point + (0x55554f904554d2f262d1db49d7c515414870717c829b73d6c439260a8bba3da); + tempvar res = res * point + (0x3e2b9e4151827bb0d04858df547978536215dc06143674d0d2e788dcdc9c36); + tempvar res = res * point + (0x2c30d5e07853079c9f11624e2431795e2bd8b4bebd8cac92f158306b45b0549); + tempvar res = res * point + (0x4e922a3c7df1c668f86b866cf0c07ee4658e7754f6fc0fb62cb297bb6960320); + tempvar res = res * point + (0x35b787fb9889163a9fb5ab831838f19092aa4ef8d8dabb299045740959573d4); + tempvar res = res * point + (0x2d847968e995dcfcecc6ef98ab27f9f1db36b14ce3ba81b80cc92cf19750f88); + tempvar res = res * point + (0x6785d833096c9d9d06034ba4d7f8d71481d4b680b63693d9fa24ea10d3511cf); + tempvar res = res * point + (0x5617f72f8d0da5d7cafeef9269395ee34f921f5cc8d1a4f4c0292a83cb0b9bb); + tempvar res = res * point + (0x6a1373cca7777e3cfacc6502ca9bc645678445d98acf3d6f5ca6c82cab53174); + tempvar res = res * point + (0x5b07a69abcc274ea09eb67f2f6036b492db1f9b7e0a3497d8f3920de22b3b4); + tempvar res = res * point + (0x74399a1effe3a13a8effe952dd57142c254ebe807a56f13521da38984a0b55d); + tempvar res = res * point + (0x6a399f5bede4f507c7251a7ccd110e21173729f5f9a57eb16a27203d3c5e731); + tempvar res = res * point + (0x13102ce3fef387b552a6b8967f788cc8f8502ef0f2ec293d2b872328f78b6c9); + tempvar res = res * point + (0x2233376db0eee71ed0bc6ec0de23782ca9e244a06b8e515b2855b522259eda4); + tempvar res = res * point + (0x6319176edd9fe726efbcc70108b516e26152cb56329b842a1e14adc2a3e47b2); + tempvar res = res * point + (0x12e828f63839dc0dd62bc23385c0bdd5b11e7b6de2cddeccc47f85027c9862f); + tempvar res = res * point + (0x1b5bfb21e549706eaf5c771448f91d1ce03498029ff4159d8cd11f4b6d523a8); + tempvar res = res * point + (0x223b2c9fcd5a1d4b0f7decaab98bdf87e5083865ef9b6562a261fc75009e725); + tempvar res = res * point + (0x6856abcc37696eadf09ac823f589a05b034ef8f86e41d2c6222f039707017fb); + tempvar res = res * point + (0xabbe74553aa10ee20ec6f0f49f73281124ca34d0b71c2e80160f37d3ae0345); + tempvar res = res * point + (0xf7043785f78a94a68b669cb366c00538eafb8e87b5380c68518d4e23922d6f); + tempvar res = res * point + (0x43a4dbc140986d44a7099720e13ec46817f0131dd109a48fbbcf190671f35d6); + tempvar res = res * point + (0x7fb8438581e1ae31877119b91ef1ea28181ba8c0a89eb356313c8a910295d7c); + tempvar res = res * point + (0x125399adcf39aaf7962e3be41c6f9c7691e45c2c31b937e26257d94b5454985); + tempvar res = res * point + (0x3a3c97667e93fa5cc0531c8a2f6d9f84c4f683133b8941fe1382ca8f6f2fe0d); + tempvar res = res * point + (0x253548b05c44cb4d8f2d97641773cf812f709663fe8f492f5a77bfbc8477d79); + tempvar res = res * point + (0x3e828a46091dc07cbbbb0dcbf390e4b5cc44d086b0ba74051fff237f7d6a74a); + tempvar res = res * point + (0x74a80f191573d77481059c14f56764dd2c11571b2736d355efa299c400f0377); + tempvar res = res * point + (0x76169700b631b19086b8b1737e23f1c59cf1428075904c80db724383d3c6b5e); + tempvar res = res * point + (0x7febfa3ce41434e03eccb6be0099dc31d90e36558dfb6f9d21b3e0be41472b4); + tempvar res = res * point + (0xaee16ac845b8bdb7d9c1c85ca7b0e749a7c47229ba24ba097b4b6b8151cc4d); + tempvar res = res * point + (0x31cac8c51732d8aad5bc41c9a6440d482c2c4967e75a571c31b2d9aaaa64068); + tempvar res = res * point + (0x203db741e5e80c19c2bea387e3091420b918fe1142bcf2bc13ae7e098282fda); + tempvar res = res * point + (0x2449d2be3af1fcd8984a9f857309ab5e0e5c010680e33b03a194c6e902a553c); + tempvar res = res * point + (0x40246dcd91afc0098ab9568a5c97d54e09065c551bc9d26ba0ab6a00089bec); + tempvar res = res * point + (0x50cdaac85b8d8bbf55a920bf8d213e333eba5f2bd92e92c61f3946617222ade); + tempvar res = res * point + (0x65dbe95ea2b7d1894854b235f2cc66e910fd2791ff09b92366c7685c652a8c7); + tempvar res = res * point + (0x18f3259c8451dc5007e94efcc6e90c6951543474925fd28ff35e56890bfb66); + tempvar res = res * point + (0x69021f5cefc75ce473977c2ceae2e7c66a84bb3d734eebf4bf497e56eb69959); + tempvar res = res * point + (0x4ded7eedcfca4ee336fa075aef6a017beab322cf7ddf83bccfba05f1c93cad); + tempvar res = res * point + (0xdcc0df28639fd96570d93a6d1df1cb1dcf6db8a259ab092b34cdb411895aa2); + tempvar res = res * point + (0x2333165fa7f9414f082253b8451638fe1e9da3ba8c1246723dbf9995e49d017); + tempvar res = res * point + (0xc8b65a737b5605606028a064d168ccf32d8d87fcb55c6c853fd95ae0961410); + tempvar res = res * point + (0x71d72b0c23e31d703f0210ecb2b28994ad828417531a15a17a1fd401daca2cf); + tempvar res = res * point + (0x211c3e223a3c9c4a024b490a819254ee133ef9740a4026eb3a036bb9e5c6581); + tempvar res = res * point + (0x621692ad7ad27517f4de4e528e1271719cf5b344d463c86b9cd8424a4fc274f); + tempvar res = res * point + (0x5ab65084f4ee8261bfd290e2d5608fde744be92da2eadd5f2fb909ac3d14818); + tempvar res = res * point + (0x5896811c73c991f479c7af6238b51252178dcf4371c297326bcceeb8ee454e2); + tempvar res = res * point + (0x453705ada0d5db6b0afb289b29db6c9acedb01e742cb0d68705d07f8dfcfaae); + tempvar res = res * point + (0x168f97539fdebde7280f4d33f7d5b469cca77495efd4660f31b7d8018f7f89e); + tempvar res = res * point + (0x7829c898e33552459e8fff13c01f1e0d9f5b098f0de7161cbf97da52914bc38); + tempvar res = res * point + (0x5b23dd8ead53bea28246af5a3a63daabf41e7987fe61255d97f2a57bb6d14eb); + tempvar res = res * point + (0x7b631dfaa76643b5f46a069b8c40038f77f088374320add0ac3c9924a12f153); + tempvar res = res * point + (0x2408fff139dae5eb756ea03ef15a2484f582f7ab27ccaa09fa8154f3bf0024b); + tempvar res = res * point + (0x28aa32bfd8c8d7ffcb0b5dadfcfd1b6bbd69b02de9ac1bee786da98ce76c8e1); + tempvar res = res * point + (0x33eb39eae1db6ea48126be6b300b31f6bbe275845822f9eb293e9f7ac38a777); + tempvar res = res * point + (0x3e549a3d3849a09d8f1c50f84f7caa4aa0a5b8ef6f957dafcd13c7c90e4ea11); + tempvar res = res * point + (0x2f5e865731de5068f289b616b39c2294284c111540abfdbb33a39780eb0bceb); + tempvar res = res * point + (0x4e51def182a5bd5672ced3106f19ecd94b760dcfc68e66a3656d0b5db19165f); + tempvar res = res * point + (0x42f46c19b87a82522476372ae65817f8d53f263674a040531bb37935b289893); + tempvar res = res * point + (0xf0bd4817ef6ef818a35ca3678f88abb078678a1364539bd7886dad527cb28d); + tempvar res = res * point + (0x501f0235f18b49889497cf7c91fe0a1f81d74da8cb1e88bcfca9127392aabfd); + tempvar res = res * point + (0xc11cd155f0a514a5a419d10ffa72405817256ffc8d580b9d3ab002f596b2ff); + tempvar res = res * point + (0x9f712ae0384a87901ad44f53eee9e7c39544893d10b891a92e87e4d78e8374); + tempvar res = res * point + (0x2d511bed457c57d7354252189efd19e4f5c3496c1dbe1f1408ff79c8cb97025); + tempvar res = res * point + (0x6c8d7abe5c83db80647ff904bdbf25bd0e979607d2310ffbefaa1edb7ae1bb9); + tempvar res = res * point + (0x46e747695d9d234e15781125d05b85ce3cb01d676ef8fc45a939d5e6d4e2e56); + tempvar res = res * point + (0x21c86da8be11246b29f17d5f7f3566c20712711e03eba57f0ecace8c4355418); + tempvar res = res * point + (0x7b851f4004fd9f20561e3755d7c89528ddefddbbbcbaa9293e416c0dfbb95d1); + tempvar res = res * point + (0x31587ae13086228663118a1fbfad6d65bb9741d5682abfb43c7524cc6c240e6); + tempvar res = res * point + (0x2ef1cb499e790f2de6129225457520b560c1c3120457e742957d1148bb934ca); + tempvar res = res * point + (0x781fe3d95c096c6df1c9ced110914917e26d0860da4bd769e4682a17540768b); + tempvar res = res * point + (0x7cf92bf7e933187b6ea01019ed1c2d9936e53a9ea89724e00e36672dca1e36); + tempvar res = res * point + (0x290b573a86b30d59fd1301b7985a68fd9bf9dfca5451179bcd13d10eee988aa); + tempvar res = res * point + (0x4d3987a0850d8159f9290a8ae8cf99a0ece9961d22135b584d8fc742d42c15f); + tempvar res = res * point + (0x6247162754e5af6a0efa837daba678811cd749e92d91acf35d732aaf4bfb4f3); + tempvar res = res * point + (0x1e3df9ca8b80529441770e007a27cda52e54307e4f3370a83705e0f3ffc86fc); + tempvar res = res * point + (0x25579cd0082839ce295d9bdb24140a8f2fe19f7d582a4993a88639a0347a522); + tempvar res = res * point + (0x70181ba88ba8d19c0220225ca0112845e23ed7609ffa4f2aea3cd40a40eef30); + tempvar res = res * point + (0x481c8091e40139c67f7e69737f83a6c868e582526afd50b548bcfa5ec2e83f9); + tempvar res = res * point + (0x1a758f2faad6702cac573f8ee11d83977ca75744f52d650a6dff79bd6c5caf3); + tempvar res = res * point + (0x5a87e6f4731da56e8b078bdea4cc3f1fa2059943de95ba404ab38addce3d6db); + tempvar res = res * point + (0x62a78aa9e73bc6da0a8536da8dd43311ccfb52829e89e9e94f3b413efb8ff93); + tempvar res = res * point + (0x4cb8044c471e8cdc896ac725744d1a6942bcb26d50b3641e2a95f57b0e7dddf); + tempvar res = res * point + (0x57d63baf011722f5c5a9c4c60899bd918c3287302c97e91fc6f9f8ba089cb97); + tempvar res = res * point + (0x60de66fa4cc5d53fcd9d027cc06945a96de2f9b4f7d0c81c53a7567fde886dc); + tempvar res = res * point + (0x794e6f83556e5ffee6d83daf40a067363b22e157cdd970366757d5d6a02dbc9); + tempvar res = res * point + (0x1dcd10514fdded828639c9c21d0c8064647947e9ced01014ba8943b1d81bd12); + tempvar res = res * point + (0x7cf749a9a9177ecfa46b901ce91a8ebe103f8920d83713df80efb7fc8868346); + tempvar res = res * point + (0x1ecd644cdd8b92b3c042932407033c073c7da5f3a8726210a443f10af466ff5); + tempvar res = res * point + (0x55b74b3af769611aa4c4fc71b1abed4396b218a9d5884844c937bc38b30bf8e); + tempvar res = res * point + (0x4fc4e265c8471510fe6f0dc99d7be1108eab6200b0845dab07c5a126c79919b); + tempvar res = res * point + (0x37edf969a82e9364a741858bfca74b30e86b1b69b4f33bb4a31666f4b2e7c10); + tempvar res = res * point + (0x2a3ca69d295e5e750b4db8367227f9cb347b3693251ba9761a22d411de1c41c); + tempvar res = res * point + (0x7e9f729b710f0fb173b36a6ee9611a9d309a9dc69a776c08dfe63c64c528a45); + tempvar res = res * point + (0x1e2c3057002cdd12b80fb157887fc066b41436bbb71e328bf79ed2799947c49); + tempvar res = res * point + (0x32124f76e477a3c6f5f4346f8abc19cd481b6f43088ccd1c3e8c634bd90cf); + tempvar res = res * point + (0x5007d334256950aba31d4bedb5decc0ba6ab62a09c41baa8ab8d0eb4cdc170d); + tempvar res = res * point + (0x3a06f0e39b3afd46934c41a79a317f220c6321664cbe236ffe1c191ee0b2c85); + tempvar res = res * point + (0x18db208640b40e1acf69b256f0cf86c76f381ee79fa0bbea47fed2c95b5467c); + tempvar res = res * point + (0xa0c5ba0b916bdf79b70c0d23013443f65bd087aaca62088b0d1f7009dd2d70); + tempvar res = res * point + (0x5dd2afd2e8b09f86360d183e2700f71a4fb5e458c61823ece1a4e60200b82f3); + tempvar res = res * point + (0x5b3102b46125dd26f3ae75c22cb8be10a3c98f269a2e91ce7d595d25c77e6aa); + tempvar res = res * point + (0x2c489389378216a8f4a24999efae5d41af3bf123b10601d2efb419999f329e9); + tempvar res = res * point + (0x28bb7956a08b64ed0ed089f0219b05b282eb25c107731d88867f7a78c3e387e); + tempvar res = res * point + (0x450e38572d5b45eba95a4368d52056640cc18213b3065bb7b373a05561cd44f); + tempvar res = res * point + (0x6931414c4f1e51dd287a8273a71ff946d1502d29539815c6652e6b71c95d013); + tempvar res = res * point + (0x48fdfbe3980d1df8db00fd59b4b529abb0569c82a25c6b23186de11aee23a40); + tempvar res = res * point + (0x680f30c7e737040028b548f49d2110d8889aa8dec6afe1de989e3f1f0c1c84b); + tempvar res = res * point + (0x8955f2b26c2c91645402ea61e0b3bd091758afa740b4478e3fd2d97b7d5729); + tempvar res = res * point + (0x62796f07255aabe16df1ca5ebe7f7be4eb1e9b688defe3044b1fb8eb56765a3); + tempvar res = res * point + (0x29f85ec8df7c753f09bd36309e6d7d65f5d5c327d4c80ca33eca932da5eea0c); + tempvar res = res * point + (0x40f21a24062575a80e5a6b6fa209f04178fce24323888c3fc9a083c6cfffe71); + tempvar res = res * point + (0x29eeec3cf3ff9267792e170045fcbc1358ad5b9c28b97db6f4cb5a131dd1e57); + tempvar res = res * point + (0x6d82291b429009057a7d89082c7c3ffeade1cbb4598b6bd1322c2e2d3c6819f); + tempvar res = res * point + (0x78ffe33137f03476882656c458a984b78bfe509d0ed005657860541fdd16506); + tempvar res = res * point + (0x13f6d5bd19a25ef48bb5a89c64894e9351380c31e98fcb8404c490081665acf); + tempvar res = res * point + (0x36d9f7e5746b465ccd284ac21d5cec14258587d22189b4f85ea87f9b4d7c2ef); + tempvar res = res * point + (0x54730884e1c5c7ff5bff889e8e5846f7e552f07beedb27035c0eaebfe676023); + tempvar res = res * point + (0x7344cd22ecc8029fc605bc46e5f2f60c2910130290257210f9db71f26dfbdcf); + tempvar res = res * point + (0x6a60ae65aaae41d02d6ad44360c269051a870c66a87e430eabd1c2c5dd8261f); + tempvar res = res * point + (0x639a281c19217bb79dde39d86549ffeaa0694283fa876ab39fa6b663869ac9); + tempvar res = res * point + (0x48a07a1f3adb4348f65ca07f7e1ad0b70a6024c4934df5724c35f1930befc90); + tempvar res = res * point + (0x527d59fcf4e21663d7e921cf93b705e95fca41d9d2f88720800586e03bdc283); + tempvar res = res * point + (0x1b07576ead1fa791e38995e423ee788587adb512c1bda749fc0869ac6b40c6b); + tempvar res = res * point + (0x7b59c1f0252efd3b471c3047a2060ccb98cb86148c1b1893af4f86384821b04); + tempvar res = res * point + (0x56e48833c5707aaa1e38a0d644765251c038ac3f89ed4d58fc3b24d03a83e77); + tempvar res = res * point + (0x14d1da51db79b82ff5fc48e18ad84a98b1390d8e61e1580ef5c6100d49da80a); + tempvar res = res * point + (0x6ade2f8ff114a1c0a0f108286f0f0e820073e7fee989a85fe11a97b972f077e); + tempvar res = res * point + (0x20268b11ea1f54c737a14073b8bd83a6151aa30b0d51182446adc72aa2bef83); + tempvar res = res * point + (0x937368e9df8289ef2d93e806914cc9ac730750d1ecc6ccf6c4aa6e6788d35c); + tempvar res = res * point + (0x297d16ecee6310efbcf8a2946e1f03e23ce1eaf88fa6279dced371db9dbc299); + tempvar res = res * point + (0x74d40da7c08b8fbd488137dcb60906f2004a26faf06e6ee4dbe1feceb94d98a); + tempvar res = res * point + (0x5669aa7f25c6cefb4a3e1f5491dc50af7c44ca9f8405864906b353c4c3529b6); + tempvar res = res * point + (0x4a5077d73c41429dcb66a5557cd392c5e8b64f4f93507e5e7b8f1cbe29a309a); + tempvar res = res * point + (0x5974550418ba46ba346cb87069b6c17f9a6d57ce7554827c8191072b4ff8357); + tempvar res = res * point + (0x6fb7a7f6c760b606b4f7cefa186540604099bd229b954096179a12ccd50e323); + tempvar res = res * point + (0x4fe2139f7019584c7f395a18bfca2f5ea89a9300bf208b9dc73686c76e724d6); + tempvar res = res * point + (0x4b45d3cd223171c9e2e8030a3983c2e4b6ed61a560db3a8da8a2bf1da05ae2a); + tempvar res = res * point + (0x223dbf6f82e6f2b2dce8397a7a6d00c8fe38fdd8463fe7612c1a90bb76a16c9); + tempvar res = res * point + (0x13e7cbf6809b1c282b1716db08a549825b9e1f24479288cf615c6557249f675); + tempvar res = res * point + (0x13b2e8b26fec1c97c5fac659532830270b08cc6861df86b3f3b4894175551d9); + tempvar res = res * point + (0x34a45f657061a57b808e337faed21f722e6298262a2df69d6bd34ecf2e29243); + tempvar res = res * point + (0x372a448e249504e459982c7d114b3c79270419467208096cfa6a96f3e5de755); + tempvar res = res * point + (0x5d62087a11238dba183191a31e686ffea34bd393310e7a2b11c75d63ec340); + tempvar res = res * point + (0x5f25fb2b70ae9e334bd288d6768a7b3b6b2f4672cb671f6b0ebd781134609d3); + tempvar res = res * point + (0x1025bf3b6ef4dc8e3637f4dd1cda0ea30ebba8c30ce5638b5f9b5291faa0036); + tempvar res = res * point + (0x7d2b1bf76ecca560b7409dee16ead5b2b3691ff75ef8fe5a844306a7e29b252); + tempvar res = res * point + (0x7cb9fc14dc4bbad427efdb3f5821fc9dd10fe8595577e39645ab9f62e6fa50); + tempvar res = res * point + (0x6f61949d4cbc8298879b470d1fa9aec82261a8099c448dfa4379a597ab01d03); + tempvar res = res * point + (0x336d1ccaccbef10084bc4a18f8c86f699642878a2b5d5af3a3fbe7a773e6904); + tempvar res = res * point + (0x354e8d015485a06adadbf43a6bad63e9330c4070fbf2a704c166e1d278c8d4c); + tempvar res = res * point + (0x45526e767c14a531fbc10f287b2a4203e18daad8a4883a1900a63dccc1a18f6); + tempvar res = res * point + (0x688bfd9b23436077dd139ccf0a7286444429f3a2457ce7e2cc939be2172921e); + tempvar res = res * point + (0x5dd26663ad2931b249bcf054211723be60b5b46de16a61928c0a9326874f3e0); + tempvar res = res * point + (0xaeb2689fd195377c86c55bb52ba2ee27c7c5395d8163355a3c04135b43333a); + tempvar res = res * point + (0x73ce15dc2409ac614aba33d14c4ad294a3a8136eec69e8b34b0b14b92eb240f); + tempvar res = res * point + (0x73a3905fdf4a2f53d66ca4cb99ca729e776ce66d9a474fd71da35b3fa949d34); + tempvar res = res * point + (0x1d60249bd6492637249efa94de232264fa23d62153d7a36e99aaede0be5d842); + tempvar res = res * point + (0x728595451b9c3918b04e7ce1637804c1df21495ad8f188eb46a5f1796e2e3c1); + tempvar res = res * point + (0x5dc73d8837d2fd0c754ecd371e94f0af344396efdb4337a8c7c2a0755838f46); + tempvar res = res * point + (0x7dd917167308b602914680880c9c8c8519f34be930ccafbaca3d126a30c4a45); + tempvar res = res * point + (0x1950cc259cc77027d5c86ea77f51a34cd30ad768676d77a0503f36f797eb4af); + tempvar res = res * point + (0x4d5df514fa9a8bd7515039e59bea7a1a1381a76f475a7dea23549106a7df8e2); + tempvar res = res * point + (0x1d74577e412af12fd886706cdce3c238f2761d096043a084c20d2bd087ad4e6); + tempvar res = res * point + (0x7871f7217ff1c7b739678e28908c4222f492ebf866cbcc410148ad1d143de0f); + tempvar res = res * point + (0x59a88072f92b384925c9091497269ba9f8226c24f740e928e410ae0bfb9350e); + tempvar res = res * point + (0x19c90daa3645b62f461545c7c38ce5bf8b5cdad399f417e0abbaf2b2df0ca64); + tempvar res = res * point + (0x53b86dc3cb8ef3d5920ea35c40e2d05496e45245eca4e0d058e2a0e2d583dfb); + tempvar res = res * point + (0xe00c78bcfc271dcc6556cb1cf6501e16d20b188c7412681c0b2ae0f2cbae05); + tempvar res = res * point + (0x36ac6cfd4f2ef6be5b1e83cf9e36e894b2575a8f4690c14484a17c222ec3c00); + tempvar res = res * point + (0x32cad92232ea7886b829887e6ca4ae084800803277076107b1078feb66e95bf); + tempvar res = res * point + (0x38269de0c80a2d8f4bef1d5e76805d1e412fef7b18886279e98c57a0fe64627); + tempvar res = res * point + (0x217df85b26b6b3bfc67bec919866b6e146621c30685a31e8c93eaa27d5dbaf5); + tempvar res = res * point + (0x4ee32b2ff29b0918618f173c4e5dc3b606a1ca2e0eb989257e0bf78dd2e9589); + tempvar res = res * point + (0x2d51937feb119772693523625e23756d172e996d1cfb82a258580bd51c15e33); + tempvar res = res * point + (0x7c2468c14a7ea994c89e2e4ddd6d2d624b67a96e7ccec4f27a5e0122531291c); + tempvar res = res * point + (0x602aca232b11ad63241b5f401c368acb1e9cfd4e5fc8ae699491d9c51b4db18); + tempvar res = res * point + (0x39c92f0c55d99aa6b082d21129a9402e6b0fe38a639a8140d76ebee9dc45877); + tempvar res = res * point + (0x4fff8b45f7ede0580424c4e2c75213c4c42ec6c68266c8d5d750a2863bd474a); + tempvar res = res * point + (0x3ba2c93d59d6a361b9ac28d93e54d775b040bd7fca9ac72339ea4388c533dda); + tempvar res = res * point + (0x6d567c1dbb663fb2fd92140cf66ea33a19cda580d18c10fe56a62e5bd3f47b1); + tempvar res = res * point + (0x2781266a2070c9d3f045010a32c98ce3e0765446e3ee20eacd73a0dc0c7c2c2); + tempvar res = res * point + (0x7dcfd5001e21e030b006d54c7fe0f7ca97a2c18d4e00ba92c005705a4f0563d); + tempvar res = res * point + (0x2fe4c112d7bfd4ad5f81ecdc4b30cf73aa51df4e4ba6d255a0e3eee283aff46); + tempvar res = res * point + (0x2433d40f2b8f9461b5368cb396f7604999a735414d3537ed6f1451f1fe93cb3); + tempvar res = res * point + (0x72f959288185bd36ca4e23472ed7a2577f8e5f0ef0c0d5df6f63e60f40ba307); + tempvar res = res * point + (0x4c5592288cc342232d76c80e858c08ecbfde64b747637ccc9a2734e90f85264); + tempvar res = res * point + (0x48ed57151b6dc68b039dc327f79bc2c26db62ff957809c5538360facc04d9c3); + tempvar res = res * point + (0x5ebd9b268cc66bb85a5e67a6b9d5fdbeba8b3672491068ef43b688a3a043a33); + tempvar res = res * point + (0xdf6c1013f3076e6044f0a7032e0bf80833f3c7d9eb0c3eb1f3c2a37314d19a); + tempvar res = res * point + (0x5f0cb66613216a1339c1cd15239b7f03c1d4b9098a931f65ae50b877f861880); + tempvar res = res * point + (0x5d5fbd560f7bf1e97190f888fa43b32db1e8070f046d6016b536b94d1473a57); + tempvar res = res * point + (0x33381003a653f0327cbdd8a11252ffe714e1061ee214329cb99e667c835af97); + tempvar res = res * point + (0x7b86849a979796096f7d7b46eebaf00913a082c638c5b2bfdedbcd78c480272); + tempvar res = res * point + (0x5f27bcacc10845ad41cb26244112faa8b91d46d97024445f50ced796ac5a93e); + tempvar res = res * point + (0x31cdca47c96b32e99077a96aa5cd73ec9c4da04212667805c82dff3e498f4ed); + tempvar res = res * point + (0x66a032c182ae70dd4487897d0c79dd860a25d21c61e3aeef8b9fa45349dee89); + tempvar res = res * point + (0x148523eabde5554538a1114351f3d8730d4a4d003311c7b57ce9e709afeeca5); + tempvar res = res * point + (0x62ea67803c421a4bbdc672d556bca219fd24e7145cb3e9113a625eeb4459254); + tempvar res = res * point + (0x2c2c70075ac99cfe68a7354ed29842c5207bbdbd09dbbd225ea93d0c07fd9f6); + tempvar res = res * point + (0x48b0cc6241c99407bb346db57db9cf82b2e66d1fcc1d756889a4f4b4bb8b396); + tempvar res = res * point + (0x506f990d7037060dea08ed53c5b17483ca8a7c58f94ba5e64fae258be4c78ed); + tempvar res = res * point + (0x777be5852ea7798899d4750e9decd1430bdad6a8b0d1827a7a89ce6f1afd89a); + tempvar res = res * point + (0x689fb22cd95d6f1868a4e3cd6ef1bba9f974931f76153e73038ff5ae7d09018); + tempvar res = res * point + (0x560fef0ed77bc94e16b9d9a21bec0ceadf81b26fe683b9c74b31e2d72a4c92e); + tempvar res = res * point + (0x28c74f03f409c942d16a773fde01b3f0bec544b42c1d46944db6253561e1ac2); + tempvar res = res * point + (0x4d62e1ef04cb039a58dd8cb8c37dceb78b10fd84bbec6302c964b899a957d02); + tempvar res = res * point + (0x44094c265809e3d5765071826547999dce8ba7058a7c1b1301294d8291949c); + tempvar res = res * point + (0x4e0f90743d3df3d3c4aeb80e7f6db457620430ff28475c6194c757f81927dc5); + tempvar res = res * point + (0x2cde734d2a82619ba69ca4f5ca5035f699a1e34b47560d761780546c9b04d44); + tempvar res = res * point + (0xf09069dc6a2745587b447ae03ebd6524aa9757f1090a92dc5e7ce8db848195); + tempvar res = res * point + (0x5522f48902001bf41de34be900783ac957fd867cca0f35666ca491ea89d8fb3); + tempvar res = res * point + (0x5b4be8af83915fd955ba32de729f6f2aef6c76501d82ee325d72d620bce8b7b); + tempvar res = res * point + (0x78e74ffaf944c363f3fc42cedaea8a9a450ebaac98bf1327590a11e064bd76a); + tempvar res = res * point + (0x6ade7c482d201c23145e3890086b22ab0d43495f5c83b1672316c10ca52af0b); + tempvar res = res * point + (0x79c066efe4c22c6e9e097e84401e183d3c45c645d986ed640a8faf8fd4dd096); + tempvar res = res * point + (0x21d59ca7451d83d78ab4d9d17a662367ac84b555866ae92d036d71de22872bf); + tempvar res = res * point + (0x6d100d3db14939bb442e5f5ce6a05939f201837007331536440a57c2bf2b609); + tempvar res = res * point + (0x7e5bc177982061f124cbe521c713c24438aa021fe6928d82452e44f6cdcd631); + tempvar res = res * point + (0x179e4b1e4817460085d47376a1971fdcb0287408cc7d11fb62cc3785772249c); + tempvar res = res * point + (0x2a7cd1fb12f896bff4d3db49ee74a51e970e3e386c2c8e7622412a6156a300d); + tempvar res = res * point + (0x3c5581c15733dcc4d548aa0a6e648e075e9be412680a76a556f91ae5f01e44e); + tempvar res = res * point + (0x4a4eb8f57c99e931a666de76c20173adcde82ff59fd8ecaf8b8c05e29b63fc9); + tempvar res = res * point + (0x58fa31f9a4a7e8b238898eb1296ec55e3e2000a48a2edc8e65d260d31bfd7bf); + tempvar res = res * point + (0x2c37f85ac7b1aab52ce3d28bfc65c65b7d4ffd000757c07fc493d183b7bb582); + tempvar res = res * point + (0x461b788a24347588e4f8d4f2d66640f31d6b580223a21919ccef9480987db1f); + tempvar res = res * point + (0x47c3222376f8f18dc6e82eebaab03fcf4c425acd901a7bf9841a3aba54b82a6); + tempvar res = res * point + (0xbece573771924d045b75bb992a87b26ab067a0f2dba4d1a9efbe5029963533); + tempvar res = res * point + (0x67c2a0e19b59921666716fe2b3f9c7f59c4da17d993956eb87eece7ef542269); + tempvar res = res * point + (0x8940bc9dc45fd06ce4046337963c849324bbe5f82632b94972c0ccb205480d); + tempvar res = res * point + (0x38bff358ccfd92418537a9b9858df499d2c44404c1886b109edb14c897e74fa); + tempvar res = res * point + (0x533a5a2ebd098297604e96118f2007ddd12af50edd525e9e5a0b154e620b2e5); + tempvar res = res * point + (0x312411292b7fe7eee015fcfaab65b611bc2b9f9498489fc3c1452862902bbf); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_pedersen_y(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x62b07622f501888a668440d9b856be4b0c3bf12a401fc2bebaeab4a7e1684ad); + tempvar res = res * point + (0x75a127d817aee244517479bab5c4bfc2a0035d43d673badaf64d8adf94353bd); + tempvar res = res * point + (0x14f3359ce0d2891d1bc2b6f4d2d6dd71fe22925b8a09f66147db095a9d4983); + tempvar res = res * point + (0x2d6129632b4fc43e4142abf55fe2d1f3e79dfa01c73d8fb56a465dbd07a9682); + tempvar res = res * point + (0x5115ade709c058be5dc6f406794062642086e431bab03c9a86d53c79aa83db4); + tempvar res = res * point + (0x29f6aa5fc92eab8b8b9871c8449c1f617b808ea9860717f3e5e1678672ec565); + tempvar res = res * point + (0x7e08f9d222cc0764fb5ca69e51ad4cdb7f1b612058568a142bc7a4cdd0e39c4); + tempvar res = res * point + (0x54c5dff0aed23c07edcd958ee3690e617011b87a5fec541725237d4ebf34382); + tempvar res = res * point + (0x2b7d501bedc4e7c604b0e55dd2d8166fa39a541efc24d81d8464fabfef3fa37); + tempvar res = res * point + (0x68e1d50b4d0570e357eac7bc742ec26dac1edc5b179989c7ae8d31791639103); + tempvar res = res * point + (0x707c572424682b685a1ba90dfd7e56f86254862d86e20b5a2d3ca85fe0017ad); + tempvar res = res * point + (0x2cd9a093ece61e554b2bdde3ec474900e4412775ad25456e5be6e11df7b9fff); + tempvar res = res * point + (0x7492aa940f34a027f8fb3700f29cf628c1d05d1675cb7865509f20617a90b2f); + tempvar res = res * point + (0x55e928ba557ed7fe0ecde6d1fbb83d112e6b06a087b4013b9c425fa36eb0415); + tempvar res = res * point + (0x3cdb28a913a41d597915de055aecc59f2b13079d3d8b33ab0a075eeddb1bf8e); + tempvar res = res * point + (0xfd48fb35400aaaf57d130b6143b241db8af174cada72ede8f2fac4ec6688d2); + tempvar res = res * point + (0x133b6505a6afd2e5fada0e53ea51c012e4935ea6d2d02caaa15ffc50a45079b); + tempvar res = res * point + (0x2d2d27711772cafff2cad828dd78d8b213e317e8939cf79164ae64dea577d61); + tempvar res = res * point + (0x60ac57e328ff6938a17d43e6137a55399b95459be60fe980ed8960edaeee10d); + tempvar res = res * point + (0x7b056cb6f172b25e3555d6b1422ff769fd4c07258fa16b03609f0e374012ed4); + tempvar res = res * point + (0xd21afb1901f1b3ad66587a7fb97ee06662edc3bc8c8d32b48625a135ba23a9); + tempvar res = res * point + (0x7784c2e140072fd26e95911df38f9a337107750a72b9ce05a21a0f781b92dba); + tempvar res = res * point + (0x7c1667b8d44d288c4f5150d01c5206d4d5868497630745b6916466c8a5b1228); + tempvar res = res * point + (0x491c2243a95c44528b86167a4418ff9d93a04bde8dd7a5d2b19ea579d295312); + tempvar res = res * point + (0x6aebd7a9279eba43cb1c0b14bb723dde464a86cac92518ca16ae27a8684d9cf); + tempvar res = res * point + (0x709be747b0a69a9523680ff69e6bfea4637bd570ce5c45256b39ff695557da6); + tempvar res = res * point + (0x47275cd67ff3b7637ed55ced299a6142a821ab466a897f1eecfc8bca557269); + tempvar res = res * point + (0x58ccfd44df4e339c65e1423eaad47210f2e16aa6530d3d51f38b70e5eb3a623); + tempvar res = res * point + (0x28218a1bc7586b71ec1989082b8f7ab0efba14569c6f6e5d7aeee1964ab6d70); + tempvar res = res * point + (0x660bd8049bd301d093aab9ae530bedc37467d4ff0a12c89d689d61ef9b9546a); + tempvar res = res * point + (0x4dd38543d129d0a71b1836c6e2eae47fde5d572e32ee9a5791f7ee823eab4db); + tempvar res = res * point + (0x8509234000e130c8828328ae4997d5116117716cca9490e6e63f30b7df699); + tempvar res = res * point + (0x62ad4d764ed0072a7649425270e2b210421c77d3ce98e2587ea5440a591ecc0); + tempvar res = res * point + (0x66c5222dc133e37dfa0566c49d107852d978eb7454489d3b2ada8de022125d8); + tempvar res = res * point + (0xe4d1f1f1f9b379bea473f76bc8f3c4d530335e2d6bd782b42324872767b628); + tempvar res = res * point + (0x6ac2f92bc4c04fd50ebd3e336b53b866e790ace39838aa96a4b791011455b29); + tempvar res = res * point + (0x59d753a23735a336c50466f5ccaab3671230fbdaf55101530e5f562a5efcaf5); + tempvar res = res * point + (0x166b26359c51d067955874f5612eb70806d7b8d5de4d8e0a75e0d57b39b1846); + tempvar res = res * point + (0x2dd27ce7910e44ee00ec3335bd79429846a70d92d482adf81b36a9ff1aaa30a); + tempvar res = res * point + (0x45970c86c25bc9a68f2e2a34969faa2134c95b19230fcfe7436c98f537539eb); + tempvar res = res * point + (0x539cd2c1a28df263709cf0eadef73a600f563ab3d82c27692b1424814cc3e15); + tempvar res = res * point + (0x31eb3b57e6844e3efc1e3975ea393476d8aace5f43ca62b09314c90b8ae9688); + tempvar res = res * point + (0x47359c8dd2b86e4f634a9a50950abde25942877bc5db93d62bf43d2886692e4); + tempvar res = res * point + (0x2d8ae7b28c8c3acc8bef3d4c2a9f5ef1323748de693a9a1ad3ff8601116b165); + tempvar res = res * point + (0x4538fc863186b4babe3b424b4111251bb1e20ba5516be54160cd560ec0d5a3); + tempvar res = res * point + (0x559548517b1025ad61020be3e252b6ddbf1d5d53043231f8850c0da52b8268a); + tempvar res = res * point + (0x3132d42e4a928c08a972e17b2c3b500dbcadbe6190b2e7f5b58300a0c8a38c6); + tempvar res = res * point + (0x5b02adb78afd4e219642a1fc38b2ef9f63926841ccfda072ac17326d3d50f3c); + tempvar res = res * point + (0x75971517855ffbc9657dab30657ed1e3797307bbec1ffe136cb0d8a64ed6eea); + tempvar res = res * point + (0x174a4710688db61da7559255caebf641a268b4df53d45de5e8156d36b4b2ab0); + tempvar res = res * point + (0x295fb60eec46a40a33b1a9532427b42e224c0ac6c50e3c1c5d17c2c16651a25); + tempvar res = res * point + (0x2037a7d08a1c4fa4d5d4f53436a252302840007c09163026637e9cdddc958f0); + tempvar res = res * point + (0x7e9e1c3d4bd3231686c235a495f737a9ec3d633331a95d85e17e90f99a08af5); + tempvar res = res * point + (0x218da336adf8608530fdf8320c4edc00631d36c8726430732038a369548cf56); + tempvar res = res * point + (0x78c7b0512cae47833eb6bf01c1075aafca19eef9b32e37f4f9a9eff315637c7); + tempvar res = res * point + (0x628226c46fe0bfa8aa36074ed0785cb16461ee2945ecee9deaa6399bba2742c); + tempvar res = res * point + (0x2eb6bd70a00ec26418d347df1a444f7ba0972416103f00c771e0f3d50bd8e5); + tempvar res = res * point + (0xdf82eebd6cde9b50958606c6ff83c855c43ce9613fec366c7792cb456ea913); + tempvar res = res * point + (0x4221572cf29651f508bab9eb82545b17cf6f9efd0416b65262e5491ad408e39); + tempvar res = res * point + (0x1d5fc46deed0eb9b56cba1d2bf8075227504aaf6ab1330b346cc3cb84a07cc8); + tempvar res = res * point + (0x55ee57d4096ccf0260baa2a1a2639978d965a786e4fc917cb2426f8a99591d2); + tempvar res = res * point + (0x21706619a453a544bee0ccaceda9fe69f860c894b36bc9cb7ea4455dd88a9ca); + tempvar res = res * point + (0x76ea16625d0cf0c04f096ac7d6eacafd00809ef1d1a3cf5e37dc2a13a02d303); + tempvar res = res * point + (0x6d0d885e8d2530c7a324f7b2ef47db35aa8162289a4420a54f13a82b871d850); + tempvar res = res * point + (0x471bb97187c83c0e7b51ab70022147e8d8ebe25d4081907e7d1bee8d6c6581f); + tempvar res = res * point + (0x12b9157240a237f319beefb6019bf0de1897b9e2d8e5536e3a21d8f9fd689e7); + tempvar res = res * point + (0x2ef7f1dfebad70ef549da1a143c838cea27749807efcb1a0a29cfab16420928); + tempvar res = res * point + (0x519de0df91b17442a8f60b512297d69a1b516f70f67d76eb9c287f06e37c55c); + tempvar res = res * point + (0x2a45de0b79a4e9c53d47f6126d35b1d050775d5fb17f3c3dc22c7b6476608c0); + tempvar res = res * point + (0x27e3cfc87448bc0392a0d6c1b1aa06626636fc703bbcf3717fbe6f0759c4855); + tempvar res = res * point + (0x77a45066995089dbd4072d6817397ce0c7e92b53d19338e9bd7549e954bd961); + tempvar res = res * point + (0x3139ae970d95891aa70cbbf6f172223e07eb521a5149b7e0c9202793f6dbdb); + tempvar res = res * point + (0x25dd21ff92e6f1075df6b5ddb2b774ff963b1b84a985261b1e94ca9eedaa49d); + tempvar res = res * point + (0x13eb9f5362c087af5ee758bf0b589c0e34af337b3c06c788573534e96de30b7); + tempvar res = res * point + (0x6a39a27be962632e0bfb245f65a4d70912d1572e39003d63def5f45bbcc8f7); + tempvar res = res * point + (0x2c11fa8c0ba68518942f1c686dafd32aa26545886d28cdedae00071360df674); + tempvar res = res * point + (0x7ce49a9b8d374e1174ae6ccea7cae8d743404552253f7ec854317722a5efffe); + tempvar res = res * point + (0x6bf518769635f9fa39c1258844d4f62e5fc00b70792944da0a939990492313b); + tempvar res = res * point + (0x6123efb57144c151864b4f717a44cecc667fb2ebc47bf24bda4f7d0ef8f550f); + tempvar res = res * point + (0x2c29d0056cfe7325567a9f2d09d917b37a45aa3cefe20b78c4bda2942af59bd); + tempvar res = res * point + (0x76914b565dab13e76053b7a74c24c005b0930011e48ab26db44b6b49a1e7ae5); + tempvar res = res * point + (0x648c35904fdb8bbf9c0bc9288319c248e17974fbb6616a70acdac004878bb9); + tempvar res = res * point + (0x1cc7ec07c4e1e6626b5263044071687d0ad34ad4d08996a213380e9b728585b); + tempvar res = res * point + (0x154a5ad294d41caedd8d927eac226dea1e2b78f6ed0a6901a00e45ae0ad78f6); + tempvar res = res * point + (0xbd5fd7dcc1ce2bcd7f7415a22115f0c846d16ac7458e6c531e7e44dc664962); + tempvar res = res * point + (0x2b2b08bfc4c3d5941538b2eda43b3cd009656cf83b6b23be56b3041df3dbb0b); + tempvar res = res * point + (0x5e48cfc304417473eb4e587942a76921fb007d8b11ce648d36828e8cbb5d595); + tempvar res = res * point + (0x79c11c262fc2efc9aceafe4a5886713151352e60c4db45826e0e343cc5919a9); + tempvar res = res * point + (0xe2acacfba8f832e4e3cffb6ecf4675df678403610fe91363172229444ac0c0); + tempvar res = res * point + (0x6dbd918c7623bb07b05ca515146ddd7193373250e0836062fd1c430e2b7894a); + tempvar res = res * point + (0x61b210c04a0899fe2a3dc53348507d6f53d4cd3831644e4630eb40564ee5b47); + tempvar res = res * point + (0x1e3816f2a6a4900b65d140d144225a8a81cb3ea22f56de3cbcfe3944fc0e898); + tempvar res = res * point + (0x3c99839cb11fecd878ab9efd1d2ed2a718f6e0df4caac1a070de06ddf1a6091); + tempvar res = res * point + (0x567205f3e5ec69ce7962918c41ed0309c3ddfd85fc92702ce1c207b282f17c2); + tempvar res = res * point + (0x10382fdec78a18047041629179e18ec7dd067bed125bf5fe83f13d637a8ff67); + tempvar res = res * point + (0x43aeb91e6f453d372353d9814a85c21617e6c934c694a0b06100e1e9aec4087); + tempvar res = res * point + (0x2b6a2e9d453e19e3d766f24cb7c6753f84adca0f75f7a871092688bb5ba0d37); + tempvar res = res * point + (0x1f3e3e61713ab64544b28dfcaf4da25b64e625048ca55cc783dff614f5796d0); + tempvar res = res * point + (0x364cf25e248a3f2fc2106025945389328c0ef37848a59ff2afdc685c0854822); + tempvar res = res * point + (0xf9762bf5620ec90d711f12cbe600f29906fcdcdea4f17cf51ffad2e07887e2); + tempvar res = res * point + (0x78e4cf312ec50466bfea965b655e9514d9d69bf0bae566fc88187fe730f70); + tempvar res = res * point + (0x8981cc99962f20f8814162568d9d7edb7fcc637fc6907a98b1d1eece9811c6); + tempvar res = res * point + (0x4e28bfd662fc5e09399fc49a49a622a7e845631244b9472df8c91c4a703321a); + tempvar res = res * point + (0x3085800be446839854dfb7bd9ea67ff139267fb5268faaf153db26b00368630); + tempvar res = res * point + (0x787a6c80d5a23f91cb91d2508633cce6125da76e797ed460256933a4e6a24b7); + tempvar res = res * point + (0x5ad768a2e70b4018e505bb5f6f44d249d9f5ba5f126106cde9be7726cf5c0a3); + tempvar res = res * point + (0x58afefb8e3180356e33794e20db869aba4bd4e5dfc795f8089d6f123025179b); + tempvar res = res * point + (0x4f62f4d968964e4908d16fb9412f8d10eb82e14e83f3e094a02470f27eae006); + tempvar res = res * point + (0x5ffa0d51bff335ad53cfe99165aa64f5ac1b01c360bd0101856537fb03da5ed); + tempvar res = res * point + (0x43fa3aa05db6331941265719fc1ee057d9f3dc81704f81c2ce7faece0fe86c6); + tempvar res = res * point + (0x1e836012f5509ea2f3dfdd474e9e4a96f6924e6619924ee4c6870a5294e26a9); + tempvar res = res * point + (0x41052d90f803f015bee5bd1a5f6e2f78f30439ecbe39861cdaebaa8f7c56371); + tempvar res = res * point + (0x16f6ec82023f48ea80196121afab584b9bce7f01e9515d0a3b489d68df3e2a9); + tempvar res = res * point + (0x4b7236fb7f8b72b2d369effbee5b4bebe7d2205ed72f9831b41c711680cbbf2); + tempvar res = res * point + (0x6620ec871e8a2c03933d0621b13e7f357b7349ea16bb549e7e15e2652692252); + tempvar res = res * point + (0x5b553a6606a3f01d862af22a3309a6df0aadec753fd1e0321b0eb08504c1f12); + tempvar res = res * point + (0x17a1bf17777a3b56a76df412810d05c9e222027aca604791694d3b020ea40cc); + tempvar res = res * point + (0x64fecb621f4dc18fa1b66152f28bdd15b7b12d495c496e77016bf3b979e4b1b); + tempvar res = res * point + (0x7e31ce22d2a3d776ad90e008ce82c594dab9ff2c42708f4f0676000cd86891a); + tempvar res = res * point + (0x43530eaa364a9df353dcfc154bae168e0fa9b51a3362c6cb351d47bb7f6b829); + tempvar res = res * point + (0x35fea15e2101714f172da73da6ddc2077ebd42ada067e7879bba8c2ee1d9db1); + tempvar res = res * point + (0x4509575b94136d744c8679c3028b0db514688db5338c4bcc9f50ccd7d15c95f); + tempvar res = res * point + (0xf8bd8807280892ca46c092b74f845d90f3a6b61b197a0594fa30686ca41a5f); + tempvar res = res * point + (0x51443fc9bbe11d787df4afc59f4366629cfb3a14c80cda1caa1ce6107fd063f); + tempvar res = res * point + (0x22cf3cd9fc0103158f7de369046ac0cff77c44c3f9c6ca942616fe7d59d6231); + tempvar res = res * point + (0x14714592154025f15704e279d2db4c70f545137269ccbd82c11fba275bacc85); + tempvar res = res * point + (0x1d44a3f67a1142e7922f4329f775fec5f8bd2d32ef8ab41a00821e76fbaa89f); + tempvar res = res * point + (0x2d9f309e84716b322c26aa86a3fe3cb6ff230e0968dfc58b869268c751e510d); + tempvar res = res * point + (0x64ff5a81d9e22197bb59e8cb340a0f44e22e226fed168f8b125d850bd727b7b); + tempvar res = res * point + (0x2cf1eefdbf254a549ddf4069288ea075d9aae074aac7853005b57c37c2039e5); + tempvar res = res * point + (0x20d846afc1a11dae8646d542770f294b9c9f21f1196fba567f2f74d058ebc25); + tempvar res = res * point + (0x4ce9244cd3966ce1a6fd7f8b85fb1c8751e35aa53032f8063535665ac3a69f6); + tempvar res = res * point + (0x203ddf8cbfae2898d2d2f183cd0efd1c3f7db1b84b8e96e38f2b87b4bdad1bb); + tempvar res = res * point + (0x37b40695420e59161b338e413a72daa6909f0e4f6f85426f8eeb6bd0dc3a1b5); + tempvar res = res * point + (0x8554877281326c1c7e1f3a2f5e81341554ecea862c2677fa67ab2f88b3b03f); + tempvar res = res * point + (0x619cb05e71db22ca1ef274bd0a7cdaf4fb79b3015b96f44814b490f048d2af0); + tempvar res = res * point + (0x66af1f51f840c438b502c2a5ab689f9b38c2c96df36988710951bf185cb8501); + tempvar res = res * point + (0x5486125e0ed23fdc42a4f8c96cb08d934b6f3b429c4af5f8396618e978e9811); + tempvar res = res * point + (0x41d785e118be2d27a159ed5216de66a84873e1f62088726d9607c6443a14090); + tempvar res = res * point + (0xa6117e45c1c561307d63895569d34fd7e3f2b2ea088dec37dc3a5527deffd4); + tempvar res = res * point + (0x3bfe2f1e8df44829fa27a78c46c223c7e64bda85be60d8a3a5d0e7d36c20e29); + tempvar res = res * point + (0x3daea06a4a96480c4f7fff1082d95836964b63c14281ef942fa9a9890d8754c); + tempvar res = res * point + (0x3678ebeaffc3e64d76141f41be973ff36e8398a6aa0385eddaa0c4183e3646); + tempvar res = res * point + (0x5cc1da57cf1059231e195a26b1323599c95f98e4b302d6e6f4bd41180b56d35); + tempvar res = res * point + (0x4f4cd7f9fd5b694cc5ea6154d0738cdbac3978ce74a7314bcafea3dbc1da61d); + tempvar res = res * point + (0x77bdb42e999e93273fa3cbb7ae7160522231680eccc4d38c1b8a83d2a0420a7); + tempvar res = res * point + (0x4e1cdd107e3116b4ff22720938a201eed2ea0b499bfde301562f5e39a42b066); + tempvar res = res * point + (0x513bd3eda9403f4167249972ce4947f3ac9e9da03a7b9ef557a65645b9616be); + tempvar res = res * point + (0x23d7ed01587af3b9aefeae8a627c6401d36245cafa9367631036d2bd7c47e26); + tempvar res = res * point + (0x1ec8c3c39ec4705944ffa8b3b9b61f73c9ad759cb79a107dd93a125685f5119); + tempvar res = res * point + (0x4d0db05514a8c0f152a8664579c004fb738cd3790214984bc3f21f31d494361); + tempvar res = res * point + (0x2bc791bd7e68342116218ed9bb657b8b54e550022e39af11ce55b29ae49218b); + tempvar res = res * point + (0x7ea13011e0dce5c917be4cd36c8931f5969852109a16d7c5142e8fb3c8b7650); + tempvar res = res * point + (0x11a9029a5c07557ec347592ba7181acafbaf0f0c5c9e81d7e995a4de57fe566); + tempvar res = res * point + (0x359506efbff0e2b81d91cd6a5f808a6c65255e1bf06cc03dbaba94758b3acfd); + tempvar res = res * point + (0x491899cb7600abb42ac8cd91f2c775ec410469573f57c1030ed1582327eedb8); + tempvar res = res * point + (0x7a42c4e98f014e50dba6b25fc32401b7695fadb7bf271fe0a763712ee545c2); + tempvar res = res * point + (0x2f7d26f183c54146bd83514f5459bfd95ac635649d74225c2168a8e7baec082); + tempvar res = res * point + (0x3ab952be650de0c679ddc0a35bac2907a6e58303059d4edb914e74c67d05226); + tempvar res = res * point + (0x2b7f9df93ba787a9a5a7a0a3b5daba02e2ce65df16ada37575735697eda6c1d); + tempvar res = res * point + (0xb04ac19a9f1483b8ee3b763be73814c9621fb3d23e6d874d9093d999d3d4eb); + tempvar res = res * point + (0x4f4df07e55d3ebf0ed955bd9f7c34de001f09a92c1ead17b0c1a485d48a4329); + tempvar res = res * point + (0x1522043741ba933948d7298114b71322258a3d4e7cf2496590c35683dbe2a7c); + tempvar res = res * point + (0xb489643a1aa2c181b4739d45582e2576a6f9bd51c81d300ebdc3a58b79bb2); + tempvar res = res * point + (0x4db70c63a1dac4e5ddde15e3626d009683aa8ea14face2c3fdb6ec97c8a86a); + tempvar res = res * point + (0x309bca858a0f9fc5a468a57981c9c6b7c79636b1f31284938d1c6a21f006a33); + tempvar res = res * point + (0x625a1fce22a9fb7717107b137a0f5ea4ca059008f5cc6fdfb5cb5bb1734bd17); + tempvar res = res * point + (0x6ae2e00f7827692b0d20f483d3c71594f61d50846b52abfee39f6697513c0d0); + tempvar res = res * point + (0x4b5acbaa0f7e360885677439654649256829cdd6d4a6c7ffa904a0683fb5fe7); + tempvar res = res * point + (0x66a63b8ed2255586855fb30333ce0e2ff4eb2b4cd5d2125d8d20cd3fcfc1d04); + tempvar res = res * point + (0x55351e9d60f58241736330de978242e4e40c4209a7879d7ae3823c148abd82a); + tempvar res = res * point + (0x588747248358bf8bdbd990996cb43468c89909cad0f8230cc939538b9b331df); + tempvar res = res * point + (0x67801dffe217a1a64e0b12f405157af52025266fcc391fddaebf3b6c7ab79a9); + tempvar res = res * point + (0x411556b9c89186a2f9f79e55d045295790b28af97fab64e77777e3828532be5); + tempvar res = res * point + (0x5c01501e6a113ccca7cc9c723b1fad6ba60ec5b0a85b7d09c72120d3f733bd5); + tempvar res = res * point + (0x5b0d578cb7aa59ba02b0bb894848b745440c0cf562c2e635312c9bfc305e169); + tempvar res = res * point + (0x3013a9c6094ab0086b1397621f93ac07bf45574ea26b09d3e4587afffe995ca); + tempvar res = res * point + (0x7d9c679179dfab605ca04e1993b37ddff490c440665005698a47c442a1cc10c); + tempvar res = res * point + (0x4f6e24500755d20ec5f28480a41a0cf23baa1aa24202382e9f4ec8ec6d7596); + tempvar res = res * point + (0x4e0a6e0c26f85c74373782bd2924f3bc0f6b4a2914c4f7f8850a79eab580566); + tempvar res = res * point + (0x6caac68bec6ce4eff4f74c1f33dbc027165cc02cec8f69e9470ff99c0b132c3); + tempvar res = res * point + (0x1c867fa9ae031469be012c4f201ed3ad56573a22891351012ad1f7d300361f0); + tempvar res = res * point + (0x1761abb092f6c4e3eda770480fb4ab095e786bc3f1b1f960bc4c95232308b3a); + tempvar res = res * point + (0x4a35c4582c91999a39b553248bf2a39ae5825204085a9e98bd6ddab3bfcc0a4); + tempvar res = res * point + (0x6a4efc048a81614dede6c4f6181253e84f20d4a4f95f973147ee3fcd72077fa); + tempvar res = res * point + (0x65c14f7de75359a40c5f244f78b2920b61087fdbbf59aa507644d94f5bd210); + tempvar res = res * point + (0x9be8b219ca1684dfbef720a3e9f034b319e2d233aed85063924fc60aedf20e); + tempvar res = res * point + (0x7352e8793ed3f6283e492544b2944d6fea715980d8884f6821574d36868b0c7); + tempvar res = res * point + (0x65c04013accf25a2cd1d9eb98689d71694ffb20dced009df5b9af167602b4c2); + tempvar res = res * point + (0x679bf3101f8b2112eefab47d7372f0297507511c7cceb4478f2baf0541740f5); + tempvar res = res * point + (0x162e6e8431b7280f8401ca08922c5452c7237132efe3a481a71b5c97183e9d0); + tempvar res = res * point + (0xd9da926adbb5ffa493c54223f97fa1b0d141129d8736bc4f5768426c7e82a2); + tempvar res = res * point + (0x711628cee8d673863e18f058cf82551ca8351486b9b210873b4e18447e11408); + tempvar res = res * point + (0x6f6131c193cd7b3fdb4d0848df70474ba9e80529097311cd7c13e322205a1c0); + tempvar res = res * point + (0x2512f776d1b3d212be7c2adce1cfa083d1b2b9af1c6f3cc424b266bfa19aa06); + tempvar res = res * point + (0x400330fb079fb4cc8671ea9a996de8f5442f20b9b9a3bc9df8b81e01506c5ad); + tempvar res = res * point + (0x40cfb729788e16fa80b7d937f0088157d18ff2cf7c79b748d0e150c896d348f); + tempvar res = res * point + (0x59786091e2d824242c7aa5dde34ffbac99f6a9a1aa5ecc8a395aa13e8aa55af); + tempvar res = res * point + (0x4adf53e64235d5327822ee3e584674af053e496c5d92a6c8c43e1e8e7d327fb); + tempvar res = res * point + (0xfe9d827d7e6387c7228d92f78574add4ceddddac1fbe71dec1258220c08402); + tempvar res = res * point + (0x37f1342e071f8a087c1405692443305d28d4c11b84d92bd7dedc563fc3ad329); + tempvar res = res * point + (0x74a39339d1d708a9ea407f03d8b0e5ab103c3251596258b78be1bd97ad06915); + tempvar res = res * point + (0x152c16cce8c1c782287b8908a790014fe3c51c57cefaef63e2c8dae5a7a5daa); + tempvar res = res * point + (0x5b32dadeb15d554f39f227de4ad20600eea4b763fa4c90ffa1a41812ae43479); + tempvar res = res * point + (0x3b4b0f9b88e16446a2de79c1d8c34865d5d6e581f08bbbc652ce67d8ac1d952); + tempvar res = res * point + (0x44041800e20fa7a15dd9274ea8283b09c30a0d900d9c165217004e669b39d99); + tempvar res = res * point + (0x5609324fa7ef5213591c8d36c59dd42df8f5f26f84468bb84f843707a5c9c48); + tempvar res = res * point + (0x6235547369b594514d2fa1ca9b06fd25f9d2764fe8b099c7d9671f542a01d46); + tempvar res = res * point + (0x614509129cebd380f416c4c9c7127ee7b53d878860905f047ad722a82147236); + tempvar res = res * point + (0x4f847058896f8e2727ef3b4577e62d5f6a729696b8705fe217b97c73fd1afee); + tempvar res = res * point + (0xfee20b19c4437f06eeffccb05b88c4e236d18f8e3518ba124ab4eec844c496); + tempvar res = res * point + (0x5897638208b8e9509d1128c29af87cf30c57942d47016819435b373c0a309d7); + tempvar res = res * point + (0x1fb19890707fa2e617de7dcea9ad35ce9960009f1e38aa2629c66fa5b8d5d19); + tempvar res = res * point + (0x45fb29b3ac673e9f525332c8bad73d76521985406fc09398078b30339c857b5); + tempvar res = res * point + (0x528d041bf152aa3a0205430412a196619b68c81d7a706fea0fc090e0cc6a105); + tempvar res = res * point + (0x1e149d42cd477212ab7f01fe40f76858f09ce2bdfc397df635ed8a453714e7e); + tempvar res = res * point + (0x75f781602ada44803c0ca4bc8c1bd5064700762d18c309a2b9059dcd8c3dcca); + tempvar res = res * point + (0x1571843ced13a8d342b63c63abc4b83d357eb286af04380edd1eaefcef3f1f8); + tempvar res = res * point + (0x304103a8d35f43cf87d50682e86e473fffd71d13e0c783e596a59a62b06402d); + tempvar res = res * point + (0x2849ac77a2f5398eef51aeb8312dcef8b347b690728d4eb835bf4670301e6e7); + tempvar res = res * point + (0x52a36a173c7ebc96cfc55bda4bbc73bc349657d39ebe096725e9cc4bff01def); + tempvar res = res * point + (0x43e371660fff35e52cd5dc08c9c347d8f7c64a116375d0e6e3ad3512d85a99a); + tempvar res = res * point + (0x76594f29261e2aa9cf4a90b58b0f79c2aaa99d63c4ff64b4806cb8cfb0df316); + tempvar res = res * point + (0x4cbae4979c7a1313c2d0f68b21f5734ec83f9e1a88c78b3976a6ef84a1b6dbd); + tempvar res = res * point + (0x76702a08064b5768ae2979aca07322782191172276f1bcfbc14cbaa3e758dc); + tempvar res = res * point + (0x64f8c462b308a1337bca235add2482fdc3607507b2c9c0f91b9187f5676303); + tempvar res = res * point + (0x2ef5951aae064a7357b1e4ed49f05f17f778f2e8735f8d17b5cfb82faf3b848); + tempvar res = res * point + (0x66e2651e6f5758c334d1c1451d563b2df07b424b5d0125c739ada959479890e); + tempvar res = res * point + (0xb3dd17f46d6b12bf4e5db184d6962c156bef94f9f73861e34d88503fbc517a); + tempvar res = res * point + (0x19412ccd078bf5665579cbd16035a251e08f40722eca4452eedb31732488468); + tempvar res = res * point + (0x719df2a50d9c3f2eb3f0336665f2980e432191e21fc49f488854b8352fd94fe); + tempvar res = res * point + (0x459f095ba3b70f76e493c6afe2d4b6eebd21343f74bfe3390868612fc250fdc); + tempvar res = res * point + (0xdef6a0b2b71d97a59c674c052fe23f7d000a334e180b0793b6974fe29a64c3); + tempvar res = res * point + (0x74e503d57e49daf6939077c0b4a4d68e66bc2425ce53b01b48f146295476401); + tempvar res = res * point + (0xd49f196e60ebea0eb13d85f05cffedff32477e83129bad30bd9dd555755429); + tempvar res = res * point + (0x298215f335fb63a11d31958d950d95c909bb94e144c113cc4ecc08488469097); + tempvar res = res * point + (0x6232d26f420f9b4f119e64762927b5e8a21192575b200081b0545ad4e9a2c25); + tempvar res = res * point + (0x2b51d7f94ec71f3a8e3e20d766a4a7f13d08d758a686ff86dbda48026c7ec3d); + tempvar res = res * point + (0x45fb08bc21969d5ca9b1ec473cc92a4ad911de8b0607ddc12b9ee98c286d37f); + tempvar res = res * point + (0x70c0f7da90cd889d8df06f9774de8a9a20c88e86753506c7afd0e1f6ef15e76); + tempvar res = res * point + (0x1b16d94e84ffd3ad61286f5a79d5a6f7b5b5dd6442aea9013ad21467bf1281d); + tempvar res = res * point + (0x6a81925732161d4e5dc61ed6a10726027fa66d892aabbf46a477f4455072c02); + tempvar res = res * point + (0x13ed29a84c4875ac188521bc40e9258e03d83c9ceb8716c6fbeed065a5df73b); + tempvar res = res * point + (0x184ee38f80fa532983fa248c14c0220c2a5691836e899a5c9b83c975b03608f); + tempvar res = res * point + (0x65f4a97d2b1c90582859966540e839ac2d62ad2ea960aa2af36776b2d07ce34); + tempvar res = res * point + (0xe00ac968fe5a147fef45fbd626c540a194ec3dfb2c1cca7938e037349d4f34); + tempvar res = res * point + (0x96935be4e41797417259166181bb646a619ef95cc8978ffeca81d141d062f7); + tempvar res = res * point + (0x61c61341c83517cb7d112a76864271492473e04130ce4ce23331f7300bd8c89); + tempvar res = res * point + (0x73eba0e9e52c3a93ab6dce26d5858b2d699d8401b2c43253616b5701aa803c5); + tempvar res = res * point + (0x77434256511acfd027b41e03a571a9f56b0442dc675c139a2e1476fe716102c); + tempvar res = res * point + (0x325f10662fc8bd38e591b0e8caa47b3fff46703656b2c5863d39c150d298fc8); + tempvar res = res * point + (0x3c835256339330b1c94cad78cfefda36a949b9c8553d918f3d8547cd1805ac5); + tempvar res = res * point + (0x7340540d0c9f9dd2c1142f03f408ab977afc7371934c62259fdd29f0652f8d0); + tempvar res = res * point + (0x17d8ab17e403b1925b40206c11f8a6a29ed08217e1ef303906ecb354fdda1f3); + tempvar res = res * point + (0x78562cbfb984ebea085472a1b004dbf86e7d99f4809a5020969246a84a9d165); + tempvar res = res * point + (0x60c93d3dac2628ad796e1dc80bc0796d054c991ea23094d699bffb43a630add); + tempvar res = res * point + (0x72bafd4641e6928ca65cb48e8001ee077944201f70d5bed524c69b709410d3e); + tempvar res = res * point + (0x6321e76192ba31cc63bf7c526c8ebbf4df5b705f01e4151068ee3dd658aa674); + tempvar res = res * point + (0x7caaf4f7b073af26c036d8bab5c74fc3f752f9ecc01041787e9ddf773596189); + tempvar res = res * point + (0x66ada08fe725f364ca32c1055e1ab1216967856d6cd8762dd4ea915c2ed40e9); + tempvar res = res * point + (0x5b6477413bac2f0d370c0cdcdec4cea10fd322fbcd7b202d4ccbeb0581fd34f); + tempvar res = res * point + (0x35c99bed31baaf7833ca759a9bea792965a87b42171259ac51b00d872d581fb); + tempvar res = res * point + (0x7ce96f5a3261a977f04ff70ef416a3d5c165100d19f551a6ac514e4d00fb18e); + tempvar res = res * point + (0x1c933d3449f6241d0f9d547db9e708fc2ee3e0598be5f87b675fb6736a15c39); + tempvar res = res * point + (0x687aac173963fe1e01f9e0d50eba0e95e1e8783eb21c0f6c1f45cd42408198d); + tempvar res = res * point + (0x2f2f5447e274a20d9d60615f83a18b2a4db300d5e199d7c8c6c6cfb754e8cbf); + tempvar res = res * point + (0x91cd6c3b8ddd8954a44e8a9cf6f7f183af8e6226849f05e6e6ebda2409e042); + tempvar res = res * point + (0x282ad11848887c771898b5a32ac6ca14cc2510830454aa8e194975e308fe042); + tempvar res = res * point + (0x5455d2de2d7570fbeeb431a9a21187ecc049874b64a227bb543aab4af16e27b); + tempvar res = res * point + (0x2fcabf82bfd2529eac169a520cbdb2a0f8c205c5a9b1f1ac69bd3a44b25faa9); + tempvar res = res * point + (0x33d4fbf9dae7a87cc13db3c95ed3976b50113f072e56a13e675e4af241bb864); + tempvar res = res * point + (0x3cbf28927ecbda443555c9d51f40c294fb6688a17812cb0c85fb6501cdc0709); + tempvar res = res * point + (0x4fefb86cfccbbea031f15d85033f10f92f2b6b689153e305bfa8821935979c3); + tempvar res = res * point + (0x63f4ad31c4d59ee741b1b0ac99e022959df079b5b033ec7a1ecd3b4797f94d9); + tempvar res = res * point + (0x6c74e3b74559e12949b8c3b55369b2d275b2920b4442c536d63f91debd61499); + tempvar res = res * point + (0x45a5b88744e83d901f33da0d0de869381e7a125a6d8bd104cf72ded013ea4c6); + tempvar res = res * point + (0x11243de8b4214dc3220693acfaa6b626cfc3b8c812140779af9b72dfb1b92f1); + tempvar res = res * point + (0x123f50f65a68168d6b43c464270479801376ff6979b94f60252a47d9d7d34d2); + tempvar res = res * point + (0x25446fd382a1b0f5350b91290b2dc35a6dabaf215d53cbb32d1732fc6ebfffb); + tempvar res = res * point + (0x160d7d587f3a17673bf04189e0062c7bab764fb54ebd0f042fec72f953a91da); + tempvar res = res * point + (0x1e0fcefcc1d1c5a69e81c4fdfe7de04d95b53c162a3b64b5956df8e59e1b93b); + tempvar res = res * point + (0x1925470cee5111eb991ccc8b0412be603c0b8df342d7b186a3aaeddae103bf3); + tempvar res = res * point + (0x2848af5bb20ab624881dc9244ea18b1d6939e14270714253a896e57cb0f63ea); + tempvar res = res * point + (0x6c2a98464d6eb4038d55b57632bb283ab091eac255fd6797df41612cfe3ea1b); + tempvar res = res * point + (0x31563499de399383464854a8679e0b073513c5bc46cdcc2a2107f00677e6356); + tempvar res = res * point + (0x6da4d6fb1e6b2f1b42910a9dcc4702912002d7d36ac7100e19c7f298c7948a8); + tempvar res = res * point + (0x3d368784067d457e43cb63b3f526e721fab153949b090a99a128c5744fab4a2); + tempvar res = res * point + (0x266b63657dbde655f034c014a8fb73b77138b52eb0e17eacbf402bb90305f10); + tempvar res = res * point + (0x179f2a40de3db251b95a60431e7cfe2dfa48dc8654bbf81add938e9f2f6725c); + tempvar res = res * point + (0x1118c09adef545b07e209d88b0a645673a103c9e71e8f671e74c84abf1a2a2d); + tempvar res = res * point + (0x6ebb7c4ee2d4212e6d7cea8c16f97c935f3bbbc2f400c9a738f1ebd37eec6ee); + tempvar res = res * point + (0x41d1ca4f756c80f197ba1635314a3dc756f9d8d9406af16538643d3e1021bd7); + tempvar res = res * point + (0x3129daa367a01a45fe3f0ccde215371f59c5643bfad33f4269a6478c8c8b7f8); + tempvar res = res * point + (0x1fefe6ebd886640df863e5f5c25e9b42fbc10adfa7ef07d1fda0eabafa60a6e); + tempvar res = res * point + (0x37e79bd72d714d3de7ed2b1ba79e345f75646bf67efd8ea3050ddb357802a3c); + tempvar res = res * point + (0x24eb6fb4dbac687e35d4168b970db6e7dc76c4c886dce0d4bad2e6544b8e6c6); + tempvar res = res * point + (0x6508b5fcc13191197f91407d5b1b21d321b7f311e55ede9ab8a6975308dcee); + tempvar res = res * point + (0x43e46c5f1cf3b5cac9722eeee991cbcf53af25a4a355a91ea9b8a4d4754d908); + tempvar res = res * point + (0x7393709fd08807a84ca44526a2b8ec97bce5aad1adf00560d04110de6d9eda8); + tempvar res = res * point + (0x690c8328ca161c48f3f8f37570e42095d1a0d9e101b3ec0ddc91426fc22facb); + tempvar res = res * point + (0x41354bad5cbef57b0e7eacebef8f0176f3b70992ea5a418f502242acbc4a1ff); + tempvar res = res * point + (0x3475f32b5bea9dbd19ec199ef34e531b696cac0461e644ffb41a5e99d0735fb); + tempvar res = res * point + (0x33cfe02e240929353f193c6d3387f1117d04f116889f38d9a196abdf986e48a); + tempvar res = res * point + (0x33e7ba5f7e56065e3f8b091578e8e7a7b118116de47237fa5a97e44e97b7f69); + tempvar res = res * point + (0x5526001b8a8c2c6209e40b5d380836bcf63db4ef85c25fd5b72d749b0bd36de); + tempvar res = res * point + (0x64028a3945aa2866db68b304dd0d83d75ed0ba5c2f9d0b47e80d11d8da6526d); + tempvar res = res * point + (0x378113f110b2404e7d185e920249519ded728cb1027fa8cc2843a588886a7ed); + tempvar res = res * point + (0x5f4fd7854cf7b89a3983da1a39839d85c7331c3353b0a8cd218f7f4e1f780c); + tempvar res = res * point + (0x6467afeee167ea95feb4a85c48fabb2c7067de57acd5098692855189e21c57e); + tempvar res = res * point + (0x1e4bf5029043367487394808d7ee7df5ad1ad1da2c4710a1b2444ffde106f2a); + tempvar res = res * point + (0x684a30c1084e8edf34a77bf8848fd2098459f5461bdf3352faf9c8801435b6); + tempvar res = res * point + (0xe3f2bdc2de2b623c56390eb0044adb980766ae1a58d775e003c39724d1d6f7); + tempvar res = res * point + (0x62dae59d425684ef78c1829e0454cd5e76f5d322ea8cb5ae5e911f545beeee1); + tempvar res = res * point + (0x5761ff2e0a250691a66dc36d372afbd6a8016726efe0c418d7899d60d26bde6); + tempvar res = res * point + (0x4dc27c76881bb820eb74814d1b69825e9048b1a3b064e603cca4bd4814b2243); + tempvar res = res * point + (0x5a15d718a45959d16dd6e0b98badbb086e2a9741ac04086f078bc6951506e05); + tempvar res = res * point + (0x23cf69cfd7730dd096fd485b2d8bdfcd89ca6004689bcbcacbeff288f18ff9b); + tempvar res = res * point + (0x4d6c233f7bf3ade219a8e3a89e12d05beb7faccbfa811ebd930c391523f7b4); + tempvar res = res * point + (0x5a347e7937c7a178952905f499babbeda500a820ccfdf7f3a99589687a623e7); + tempvar res = res * point + (0x43394095e27ddb7825c0671833a6ac9784f31626914c902c225f05ce42bbd9f); + tempvar res = res * point + (0x66d91bcc591c880303ee4695475e8a8e402926f0c01ade8880c7b03c76998ee); + tempvar res = res * point + (0x3348152349370ec1c4d753735ef255b50e54aa9a432f48a121c39b8887827e0); + tempvar res = res * point + (0xfa17235a82497674de45bfa59e61a329b2d0e63eb18ab9b74aa46783e04c81); + tempvar res = res * point + (0x45ffc1ad229bf52b2531afadd1c5ba120c57b34def87149880d1e5cb6c5391c); + tempvar res = res * point + (0x37f5f6b25ee428e91e886127b961856d9ebc52740ceb763baa7e71371b84364); + tempvar res = res * point + (0x58281d625ddb432caef06e485bc2b74cc077aea9ba5072198e76542f0c69dd0); + tempvar res = res * point + (0x3e35aebb590266ea1fdd8198cf3c23c77731dddd95d488a9d9f9837e3bd0f6f); + tempvar res = res * point + (0x2850977abc89355540e8abb804da7805ef88b12f40cbd9158ef330b767901eb); + tempvar res = res * point + (0x72fb3298da88c470a2f93a391063810be01078c8375183b57a024c223f2f428); + tempvar res = res * point + (0x53f792c81d26c122898d70ed7fcfd8f02a8f5a9ec8b9868fc4490d3a46b4e8e); + tempvar res = res * point + (0xa7da81afc9f3c93366b6e161b1fc7a497d6c770fb140bf4b64e5fc707cd3d3); + tempvar res = res * point + (0x26601a459facdd83458b56099975d2b7dbbc431d41b53f5dd6ca2901dfaacfe); + tempvar res = res * point + (0x4a048ce90e3a1eeedd4932ff37760fd8b1dc995aff7107bd66318652efd1032); + tempvar res = res * point + (0x287fed27ab81e5f721d2bd5aab0e69f53e94ce5dccc35c2dcc88e12465fadc2); + tempvar res = res * point + (0x414215fbcef7f5af60f320e67a845e4a17b0a0eca39b4e18ba89fbe8a189491); + tempvar res = res * point + (0x208f0c2f5a114b2342f51e919e4fe44c2a42cd06382d9edc4ef58939b249bab); + tempvar res = res * point + (0x5726e3dee7bbc5e5b4f3ad65f0fb17699efb5936d50ad380785f2b10fe8953b); + tempvar res = res * point + (0x6fa8562db8de26797e9c9905aa769e4881304b4f20cb64d718d271c182f44fc); + tempvar res = res * point + (0x2a60396cf912573be2837653283a23702037f614e33e1c6fe2834eee9a1c7a6); + tempvar res = res * point + (0x5b6b3213744858ad659c4c07c9220380d63c01f680986191c8776eb703661c3); + tempvar res = res * point + (0x709a47e72cda4fdf428bb9784f02f77c700086755d4bdb5b229d1b80a2ea4e5); + tempvar res = res * point + (0x75e9c821cdd2e754759306283aa4af8bdbb0ed31f4e978dc550141fd10da6be); + tempvar res = res * point + (0x2adfa41f72ba3b61b9dfa6f017b19682b0b0f8cd86be3d37374aba3ce990a55); + tempvar res = res * point + (0x6e313bf82c34d3af1e7fc14d811dde163ca6e57accbe476875e4a967da00b8); + tempvar res = res * point + (0x78516acc9d32f4e54f8925865c91f70b210f4ebc7533fc624685b3d5daa7b18); + tempvar res = res * point + (0x3b8cca1c3fb2b26b7e206802d52d2ed1c725b8f95407e3ef295a7dd9ee0d45e); + tempvar res = res * point + (0x287ef69d6f69ab853e4f0d24b22e4c15169d12c41706dbeede9fb49c61179c4); + tempvar res = res * point + (0x7c84837e6872bea4f0448183cecd6bb24a8574456ab91173b04b9423be8a64b); + tempvar res = res * point + (0x78f890541865c12169233143f47a056a91dbd18222c5d31bfb2db19162c204c); + tempvar res = res * point + (0x46cbc37eff4616daaa86160d5690f5473e24171441e29705ae564223a351c23); + tempvar res = res * point + (0x309f9698e38823c05e56d073d83ea551bfa80ace08e749aa4c83031a22360c2); + tempvar res = res * point + (0x1a2cd41155bbb7ceee94dbd01bd876140b1698f03b2ff8f8de3ba45b4ea14e); + tempvar res = res * point + (0x10699899068f86fa3843b06693288630b9ac4b87be7b3726fdba32b41caac2b); + tempvar res = res * point + (0x2762878a5f6665bee609c26e750cd886e239c31caf1508d5a2a185b58576b77); + tempvar res = res * point + (0x57f7a737e643bd859d8a53e1b621c09be89fcca7b96f8e42333e46426f26a20); + tempvar res = res * point + (0x7239c3b89513196e3cae91f8df8bd79f08033061ba63c089bd764644907479e); + tempvar res = res * point + (0x38cb4f77410e9a33306f8a4b92b6f76bf239ba44e0ef45dab0bfcb75dfe4141); + tempvar res = res * point + (0x382114ce9d712af864a253d29471a436b83ee4f7b8ae3fe19ec3ab315e18d8a); + tempvar res = res * point + (0x51ceb130c1908fdcfa6896756241fca8f74ab172d98c76facb7b8b931fa8812); + tempvar res = res * point + (0x4f6b918e40f8022d2bda8d53214e8fd84743bc2280231d3ae772844bbcd1aac); + tempvar res = res * point + (0x2d9af4ef0d50851ae1b0cdab3587a71728eaaa4e56e67803c5ff9126e722696); + tempvar res = res * point + (0x4640cb2cbc73d7c9fd2a1783122cb5ee8c68e7c04b0b647d43a35cd4961e4ca); + tempvar res = res * point + (0x1b3104591a23f262051182209c0f73caa30e8631fc4413a5bf97c9d51a70abb); + tempvar res = res * point + (0x2103ea7ff918748c4325a992c561b551b70fa9d97e48a52b3c157799d213693); + tempvar res = res * point + (0x69fb58adef701279dddeff71e1832aea01ae10a5128a9f744a5a945b5fff200); + tempvar res = res * point + (0x375e99f4993200342e6f6ad713711052d518e5dac24681b3999878bbad627d); + tempvar res = res * point + (0xe051fab79733dd773d13f5bec04b1c20252df512d937f6b7352e4c4fa49cb); + tempvar res = res * point + (0x5d72a87fe662c05530c3ec822f925a10c121a44c4adecf24850fa2442cb4abb); + tempvar res = res * point + (0x6f2a9f716b1fa27c35675a57273feb79ffce02286bcb1e253a8e126c2cea357); + tempvar res = res * point + (0x9b419422a2083bf174263351640e009b56d6e2278552f9e7ee6a6004d45524); + tempvar res = res * point + (0x3dee84f905f6a06940783bc3f322a0fc22a984dd244d00a85ea3a4295558377); + tempvar res = res * point + (0x3dbd68c7c5945f48515d975002a1caf1c491c6743f151df31f95c5870c90fb3); + tempvar res = res * point + (0x7d52bb08c1d72a66c3e5c60f6742675ac788ec8b4f2178ff9990a04d22c076e); + tempvar res = res * point + (0x107c8fc81a96a3c13d1ddf04b8bcce0450610c2ee6c127e0f47ce2ed2fa0613); + tempvar res = res * point + (0x6d8f39b47e79d44503aa87a3fdf101b055f89c663bd7ec377d175280f3f8db9); + tempvar res = res * point + (0x6d5a755e91ed732dcf8afd32eac3b4875843bb116430a966ef88f17aad54c16); + tempvar res = res * point + (0x64035ce25716c9c7675ecce40d3cfb65ce3121439e10367fe29f2742cc02d85); + tempvar res = res * point + (0x3e44a162d501fc521774c75994f4b55eb85878f5e867cacb75c7ff0b7efe941); + tempvar res = res * point + (0x1b2441db55dbd9b87c45b1afba238ed28d1f2dfe9725d9a4cae3a45e3d59b63); + tempvar res = res * point + (0x8b54ed775cf8f3dd5b54fcdea07e2bcefae323f6212b8f54877a60e1f8026f); + tempvar res = res * point + (0x338c001d0c722d793cc14219415d61c52de28d33ab8bfe5dd31674784f2b568); + tempvar res = res * point + (0x4ea62ac09b98dcc34b5437f6bdb4fb9a681dac12d1ca7090011c73259dcef4b); + tempvar res = res * point + (0x6a226b1dabca8ff2fbb52f0adcf4267a47e0eed089774157f318b507361a0b8); + tempvar res = res * point + (0x6ba0329f670df105c31eb665f3b6f243ab5de7ed8aa59ce9b0683e6bdfd9019); + tempvar res = res * point + (0x77f62cb2f9db71ba7a9913be0a434ca045a26704681af5353b7c7860be6e774); + tempvar res = res * point + (0x770018fe3435297b82b391a3bd2d09151dd3949545d0ef111cdf9fece9f389c); + tempvar res = res * point + (0x4279b49402fada9fcb602f909bc138c3547baf384dfef9594e2fa488cfdf8b8); + tempvar res = res * point + (0x4dabf5afe371cde17b9fa6c54c1b38d603f345c58d4f66e06fedd8948b402b0); + tempvar res = res * point + (0x15296a7d071a85f1358bb157d5e62b18a11e189415c16f594a18be7276ed2c7); + tempvar res = res * point + (0x79708fbce6bbe1c862e988648dd25347d60c9e0981540dd81ccaf78054a12f8); + tempvar res = res * point + (0x209866f9b8d946508db2df8eb9d30f65ede2c99ec8deb2e5a1b7093e9a62416); + tempvar res = res * point + (0x4ab0da9c66ca2588350bdb85cc745b4c5e7226cf7c4fb69708cddf6e8145f29); + tempvar res = res * point + (0x54578b117a58f5beb0d511ba42110c4696f4fec165acfbbde208a4705045fc0); + tempvar res = res * point + (0x55c9e37b0208bfbbb61e5e0e05c72111421b24b45ea53d3ddfad1cdfd243ff0); + tempvar res = res * point + (0x5889b4a99416f2f954450c60492129c5f7a36f875a56dde5188318e88d6032a); + tempvar res = res * point + (0x5919f2392a53f9b230145d1b5e6da28165dd1d8cc7d28d3310a805ebee721fd); + tempvar res = res * point + (0x43e49d0d9bfd165776eeab9118ea672c24a055a700e35a04426abe1b236506b); + tempvar res = res * point + (0x40e394412097f7c06183ae2997707604273b0a4ec1add0030bd7e115c20ca70); + tempvar res = res * point + (0x6337d741eb226911e37cc48087126cdd89f00941523cda2fa5e965dc4fa25e4); + tempvar res = res * point + (0x64592b7d9a6a922f5cf5f74c56e167ec000436a6b3caec299bcefea25e5fdd1); + tempvar res = res * point + (0x1d608ffab983d8aa17db9385433abb0025c77e27357285448c4ff6a8438570a); + tempvar res = res * point + (0x333793406d06dad0406a859ea2c203aff33e3cd906d6f04aabb0dffbabbc9c); + tempvar res = res * point + (0x3b5f2338d066753b2507a39884bddc2d0c5bef88e4bc3e79288331afe9a6234); + tempvar res = res * point + (0x3fa0ff20cc486bd0b43f96826c66b070a6f6e3df3359ebd2970661f9c679e2e); + tempvar res = res * point + (0x62cea6c83442875da8b98083d8bb18bce5d3d431a3301afc635600578b33506); + tempvar res = res * point + (0x4835c753d4b5059c1b4186516851f562e63e348f8810714cc393be9810a1de8); + tempvar res = res * point + (0xc230c4af49117fa614b1d4d74ef462211a5d55537ac71564ace080dd4b325); + tempvar res = res * point + (0x1917c10cc63bc9f43116c3688542cd867e1a84ce0d3e58dfb0c11c4b0828748); + tempvar res = res * point + (0x13c6580dce66b35fd24183e1635fb6008a6deb6cb507bf48d531273d5b4c2e9); + tempvar res = res * point + (0x6c6dbd58b8657f8588bae8a4d990e6f9b0525af4eabe87512c5f6a655c92028); + tempvar res = res * point + (0x59daeadc724e9c227258a56b000c6a613db617da41bbeb694521c86323c93b); + tempvar res = res * point + (0xead9e7eac2f6c388de28561955e6009f9f1ed098f70516f2bda28597c9ee03); + tempvar res = res * point + (0x54600ac31d014f7241c14e5aedefdc72b839cb0e98b84aa13f031316af48648); + tempvar res = res * point + (0x5370b38ea84ca67c75ab50a4cb8f23f4017175a98b23df9e1c92f92c279e169); + tempvar res = res * point + (0x23ae2f35a2da5ff92426d59ce066e29a525ee1207de1c370023975b4403ac6d); + tempvar res = res * point + (0x5952b292edb661874ff2d3482fb968149f09982bd7a194d2b502ee3dd32927b); + tempvar res = res * point + (0x30c7ab8fe6b61574f49c3d76b3173f76816f31beb33097d425a94beab6caaa2); + tempvar res = res * point + (0x4dbc9ceabbf1c8d5c679cf80d9bfc26ab696135792e83061e98b9c36ae6a4a0); + tempvar res = res * point + (0x3f1908469233dcf5c433790cb3574261ed6debca41fb55b912be7cf34adc187); + tempvar res = res * point + (0x51778c6b175ce13e994dc1604dac3b901990cbae0246b2cec2aecbe96dd2006); + tempvar res = res * point + (0x6a91b3677713dc15cd110c71cb8e174c8ebd8d7df1a1b4120bb4b6b1683ad5c); + tempvar res = res * point + (0x3cfdc71122fdfc7807b2efe35fb6c7691985d2727401eb8a8132d0e0df3cdd6); + tempvar res = res * point + (0x5099f832fdec91fd27af0d221e009ed6770227d63bcee6e1802cdd122751260); + tempvar res = res * point + (0x1793fa490096ddd67530e29cb3e8e9632d1885815be3f9d96375aa5946f511); + tempvar res = res * point + (0x6d4bd8c4aa4a530d965180c18062d6bc440e6e70cbf0836d6af11235c7fde2d); + tempvar res = res * point + (0x3d7587a79c4ae9c24934a10a9c1398c04f3915fb6889b72b361505a85db2b69); + tempvar res = res * point + (0x39007630deec4a6eaf806518c109f4aff9cbfb8826d86f301e562ec560ff89); + tempvar res = res * point + (0x51e4a728ecd68dc30e4a1b5867a1022af5808edafc3cb12d26d43b495528f18); + tempvar res = res * point + (0x7f921548c686f600b302290f692a66e9ececa142f691f9129c7d8bd2a06803f); + tempvar res = res * point + (0x42cdd4f6ecbfd891fedb9ecb6d320f6adafdb274ee15cc11ef4c0436a4e9afb); + tempvar res = res * point + (0x755d64434e4e4233388c34a90438764c568353cfde4311021b45e0f369b0db3); + tempvar res = res * point + (0x4b5e107dbcd02c0dbef4d3a77d66386a864d31109d0d0392847c8919d926fbe); + tempvar res = res * point + (0x373a1f2fbe36dae9a5f2c2b35febe59b53869e1678c8da23bd9e92c3c2ac0a7); + tempvar res = res * point + (0x53bad76d22e1525dcec248b73438d6f444caf75794c26144e26803fe2bc7736); + tempvar res = res * point + (0xaeb135e456ad66bb5bb2b91a4aa429915f6f9951aa15bba78576744a698016); + tempvar res = res * point + (0x111d440a13cab69043e1072b61c1736cf3901941b4c57d7602b8effa7e74b3c); + tempvar res = res * point + (0x5fb8d87e82c3547e32ce316e4439d1aaf3723e4a906c91533ba8dd9631f1661); + tempvar res = res * point + (0x1426a2050d240104b5c07a9cdaf7fce03c2accadb0ce98344ecb4942c434db); + tempvar res = res * point + (0x929eaf221c110efdaa57970581428d66d5866fb9547aab76e89e8971efc91b); + tempvar res = res * point + (0xcb3220da969b95193a25d1d4d76d1cd1ec596040a7b31da7f64164809bdc4); + tempvar res = res * point + (0x3c3ea2cbc8ce544c6c98ad9053cb2c35326f4e502214e5f72c7951474b5a84c); + tempvar res = res * point + (0x68892b41018bc73b541800d91f0bb2a8cd9fcfee8be13bacbaf7dff7aecdcd4); + tempvar res = res * point + (0x2a652d2592f5cc1197a206db79d06e3b74a55b1d4ec03c516a6957e87345cbf); + tempvar res = res * point + (0x1e0c96f0b836d1e2df4e4063d56b78f38f2ad16040d61855b0f664c066d130c); + tempvar res = res * point + (0x65d167bcce20a40b78583e4dcf7e3f44663e0c595e18f48f83ea4230b207047); + tempvar res = res * point + (0x1668b919fcdf512b5683880ed048853e00f456adde728427fcde63ac9f59611); + tempvar res = res * point + (0x1489d6012d4c9701b63f3610034fb5bfca185c7b01222907781eb104e031097); + tempvar res = res * point + (0x57ad5370b26ea1478f3fa0346d2e390e90feda8022c9820813d9ddd0f36e7ba); + tempvar res = res * point + (0x522f83a59f717f37b235c05338a02630ad83c3ed307838f6e795f9705cbc849); + tempvar res = res * point + (0xb6bca44a12ba7914e575f83cf8b9b8bcd4780622806901dcb9530ff9a454f8); + tempvar res = res * point + (0x6fb8324456f1dc4b423220d18d40de524a27dc4f35e4c780a042f6edc95f97d); + tempvar res = res * point + (0x2039c72c1c7c134fb300e82b104394f54a5b7ffe6f7f00e7c3e4ca6640841a9); + tempvar res = res * point + (0x614a280377b9dc732773d969da5ddd8cc125262313eb7b2bd38b7668cdf00b4); + tempvar res = res * point + (0x243a084aa8c82348102320b0ad19ede41b6bd7ffb3a7041339a13f34f6b5671); + tempvar res = res * point + (0x73e8c35fa646fce6bf10c33168dcf3d2e40af17ced70b1929826d0ca4ba2e99); + tempvar res = res * point + (0x64f6f50e51b19d5a90e6d2c9cfc3486dbf2b37c7f949cc4f8ac4dd988e5bdff); + tempvar res = res * point + (0x1365aaaf8c72d7e9b250bd91ee2c2264362e87679abcf2df2b7a4e1eda1575f); + tempvar res = res * point + (0x24a083b7cf164138ea0c468f33317d89c97b69378c906d918123f3ed5a02cf7); + tempvar res = res * point + (0x25ea89f2d7ad620296fda2be181b5a6be626eade8974facd81e53df842c125b); + tempvar res = res * point + (0x2d32dd179cf74693057ede607e0054fbc3e4194efd6415156f3ec909c37ead2); + tempvar res = res * point + (0x3b74f537f03a28e72bae3bf1810f1a2fde1711eacd6bc64bf55f37b3bd9940b); + tempvar res = res * point + (0x575b929bc0caa43939bfae95a6d5cd8d4082be7fe0934be4c08f7fd3cbe89c5); + tempvar res = res * point + (0x7ab2a5ce120c251b658bfe532880535e93cbf88aa60a1b384017195e6715706); + tempvar res = res * point + (0x7a7d5ce80c8498175cdd4408e08cea457517e37dcba08d0a6cd2a4defcce34d); + tempvar res = res * point + (0x6475aad2a1631a6103b238548fe8a03934779ecadeaead2bc20a677c0c71c); + tempvar res = res * point + (0x547ddf1021a2cbacc8081cbe3a5c89b8ae808942513cd6f6ad166b0306cee66); + tempvar res = res * point + (0x653405343098520984b06f707cee84ea765ecc932783cca87058b88d0f2bbe9); + tempvar res = res * point + (0x3f22422d66d77bda123b47b7f5bffe5527f95d331346f6a545c66887ad75ab9); + tempvar res = res * point + (0x1b18b73effab8a483156d16e87be4dfce1250333eafc784d76c6ee145978c48); + tempvar res = res * point + (0x2843bf3d789d84faebdd6ceb0eed3ec0acd959732178b00b4242eb5cff0ef3a); + tempvar res = res * point + (0x592d2fbca1f86935e587f6cfdacd0a221237bd378e2d1cbadc3d168c7a1756c); + tempvar res = res * point + (0x4c35c95cf7170d2ab6b9b6e3c1be66dba2de170638f27975fb5ec12c36a45d); + tempvar res = res * point + (0x405f9011670f0f202814795cdf0251b665e8f39991dfe2282a1dd2acdbaccb1); + tempvar res = res * point + (0x43b4be816239e45b4d22123c840717fe3e8f6ce53238fad4ad56e27c85f3e9); + tempvar res = res * point + (0x3a2c1769a49e0632c149dc9d3f30306f9d9cc00cdb426d58b2741c804c51af4); + tempvar res = res * point + (0x422c03b47f25f698d3dfbb02556367c97b7d8e2657af2e45ebc61845aa2c52b); + tempvar res = res * point + (0x5a47f80b2d6e8c8e89f08c23e4eee09ae23882290a4dbdc5d0b09e713297124); + tempvar res = res * point + (0x2059b2385d435959cedebbb68ab5c484441832a20d67889ff9974057cdbf874); + tempvar res = res * point + (0x6b735de6be3ab4aa1425c328c838ba09dec586718729f1e172554cac036483b); + tempvar res = res * point + (0x3c05c93a63aad66725d8d25e62f76199a1e9f5743577777caa05832f4e79acc); + tempvar res = res * point + (0x4245e03d0378593b2d4230b945a2a147b36ebfdf368f0dd5fc22e3b31ac1186); + tempvar res = res * point + (0x4de104ea20937d5d6cb02c4ab4d7c4d03ab2eb16d1b837ccf0c2a05ea2873b1); + tempvar res = res * point + (0x48876d457eaebe03383add02eb4c0c49a09923757428595a4f3ad6299d69cba); + tempvar res = res * point + (0x6d6ed610ff1347a9252bf835af9666acc415b28796d968ab76353cdc1181733); + tempvar res = res * point + (0x1da9b14257c5c5cbc1a97aff87690dfa51e82af9a11eaf5cb2538f595ea2105); + tempvar res = res * point + (0x416057baac3a1780d7d25b192188b9b3981bdcab0e2dffb2fd95456a5313201); + tempvar res = res * point + (0x1706af2f962881d86f167571fcbb909b6f1e4fa386fca8d87b674335196f44b); + tempvar res = res * point + (0x6d9c76938c974418e62166285ade6564712e6a263357e11d70f3e1f2ae531e8); + tempvar res = res * point + (0x771fefe011becb392f5c379dc9e902c41be8f1069ae3c5e0bf6016b7b1b3f55); + tempvar res = res * point + (0x40cbcae9364d8af8b767a72b260793922cf1ba2a03fedfc60d4eab1d5f00042); + tempvar res = res * point + (0x274b54e6342ced28b28c62edbc8a6cdb44d1530e0fba56e4940e55d806f437f); + tempvar res = res * point + (0x77273f7030b86a46aee79ed44f0968feb0ffccfa0964ffff141e693fd0fb6d1); + tempvar res = res * point + (0x4dbe5188f23eedad88bab99323be5ac9bf747525c23d4c0665334dafd1f0c6); + tempvar res = res * point + (0x3410d8b91297b00cf8d438bea18b9ebd55ae441a2f6bac6623a15e43ad64d4d); + tempvar res = res * point + (0x4195cb2f46ca4e1ef5d93ab3a5decbdc9e74d0bb81d56abcf59304ecf79863c); + tempvar res = res * point + (0x6581a70ec64b4268a4741b4f7de866050d31b69005c782630f4bdc51a1650b2); + tempvar res = res * point + (0x754535ea8702292678b57fbde36c97454994bed59e0d0e13cf8a6c3ef7a0324); + tempvar res = res * point + (0x71034c062fdc1b61e812617b037c5dd1e80d158a92bdae7ccaec162fff4edd3); + tempvar res = res * point + (0x297d52739d69b228b057588496920930df6ada28e5e2a431b65502750a5bad7); + tempvar res = res * point + (0x446d7e2595a1940ab7f6dec4c9f78953de9c0f4c67a130b55f1894779e73ac3); + tempvar res = res * point + (0x5b0a8465067d8f43cac5dbc1145110e1e79e0f32ba1d59d2514405a0a806860); + tempvar res = res * point + (0x5bdc50def36283e003e9ccf2f1bed188326bec8bed554815f9e49062ed6da4a); + tempvar res = res * point + (0x3b591c6de6700576abbe4b4544de71cd3266a5dbb70740762d0c16a863bead8); + tempvar res = res * point + (0x7fe75f49544ac3cf237a17e58179851f5b3e7420330e5861ec505291d9a0380); + tempvar res = res * point + (0xe09e3870dab755cabbeac23076891b510207da569b75bf32d3f63c8ce08460); + tempvar res = res * point + (0x66bb11e034bb55410211b7cd410cf076db77f008bd93f0dc938f089e853f0ee); + tempvar res = res * point + (0x630cb6b8bcbe79e58025a699d489116a875f287fef6f1677b497b8702c3777d); + tempvar res = res * point + (0x46ebc0bdf94c2f85023a0c1b29d229ef7a23e173d310b814f72c73904f6a5f9); + tempvar res = res * point + (0x3fdf21da099da6c005b076001c5a95f2fe26aeff47e2cb9e8e52166a22b643e); + tempvar res = res * point + (0x6c647f1e5e8e93fda4bc0ae5d513cb60558e2b44bf885484161bbfb5e093969); + tempvar res = res * point + (0x688dbf5c443560c219afd8c54a0b26bdc9284925f2cc0adc889c1de024d6ecd); + tempvar res = res * point + (0x3c782f4a1a6d94adf1448fd7feef975f47af9c79bbf7e2d74940673704b828a); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_ecdsa_x(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x22aac295d2c9dd7e94269a4a72b2fb3c3af04a0cb42ed1f66cfd446fc505ee2); + tempvar res = res * point + (0x2bc4092c868bab2802fe0ba3cffdb1eed98b88a2a35d8c9b94a75f695bd3323); + tempvar res = res * point + (0xf685b119593168b5dc2b7887e7f1720165a1bd180b86185590ba3393987935); + tempvar res = res * point + (0x5febf85978de1a675512012a9a5d5c89590284d93ae486a94b7bd8df0032421); + tempvar res = res * point + (0x4e1b2bc38487c21db3fcea13aaf850884b9aafee1e3a9e045f204f24f4ed900); + tempvar res = res * point + (0x324182d53af0aa949e3b5ef1cda6d56bed021853be8bcef83bf87df8b308b5a); + tempvar res = res * point + (0x5d4c38bd21ee4c36da189b6114280570d274811852ed6788ba0570f2414a914); + tempvar res = res * point + (0x529414d56e9f6bf4ce8be38c8f79ffab78b185da61d606c411098f981f139a); + tempvar res = res * point + (0x66d15398bbd83688bda1d5372e048536a27d011f0f54a6311971822f55f9c07); + tempvar res = res * point + (0x52e5e75be2c96802a958af156a9e171dc7d5cfa7f586d90ed45027e57c5fe92); + tempvar res = res * point + (0xb0e39f10e5433b2341ecef312e79ed95d5c8fe5a2e571490dd789dad41a2b9); + tempvar res = res * point + (0x703dcca99c0a4f2b2b7f1b653dbbf907dd1958c248de5dcb35be82031f7d170); + tempvar res = res * point + (0x749e86688f11d3d0ef67e4f55535c715a475ceec08547c81d11de8884436d8d); + tempvar res = res * point + (0x44a14e5af0c3454a97df201eb3e4c91b5925d06da6741c055504c10ea8a534d); + tempvar res = res * point + (0x6cd537aebc479350e63acbcf7b9da84f4b06c6c26a571d3a7dd416a94a956ca); + tempvar res = res * point + (0x5e2909b1136e1d6608663e5cbabb616b28d2fd6f5dfb7cd03c4a7e719b7c53f); + tempvar res = res * point + (0x51170abac6896de6a5b478741dd56f52b1d2a1feea59b1f26d060e09ed98b32); + tempvar res = res * point + (0x1d0f94ce5d9d3beaa42ebed05a2f172aa2227e9a9fee0bf43a3fb068c1ac345); + tempvar res = res * point + (0x785dc572a88712cb4eddcc8a167bb1b62f9a79282f21ee92a0374af76169344); + tempvar res = res * point + (0x39d9d83e0ac884a5ee0f2d227f9eda71724a55002a41938458e45251e121308); + tempvar res = res * point + (0x7fdc637318ea00385719f9ce50848d13cc955eef9f36a90b87e646dac85e3aa); + tempvar res = res * point + (0x72d82458ba49cd6c638f89d2e3a68e49944f486cdfb7d2848e51aa9f99292a4); + tempvar res = res * point + (0x4c484b2cc04747d8d812180ec716f779302231983fa17971b575274c0a9c378); + tempvar res = res * point + (0x62773dee1773834dbb324c4c0d48dcdf9bbf0511547feb1b2ab0f7af7fa2dc2); + tempvar res = res * point + (0x5b0343972ee9e17afaf76adc54e6797d54e6e47a7ea1167654ce076e3c6c360); + tempvar res = res * point + (0x3ca8d84242dd2bd2a5d6e644fa1dc9f5082ee6131b6f0db8fd7d4f87109098b); + tempvar res = res * point + (0x6f4ab1f3bccea47669a4c93da36db05bd6f5197945b5ab29191a703312ed3a8); + tempvar res = res * point + (0x2d626ebcfae2d3618e350c190fc636495fbb04dd4a4e563680fb961a3d30d8); + tempvar res = res * point + (0x42f0a74ce045e8194b7a5cac4e882b1f1a9face49c38fb3383cfd3d960806c); + tempvar res = res * point + (0x34b7ebee71c5876183407c57610a0a8a33d3138ccd6ae416651cd505e5761d9); + tempvar res = res * point + (0x150c633a21f3cfa157978e9561161f3953e180b9588347a0c819e4173afcfa8); + tempvar res = res * point + (0x4f8cecab5f743c7227a63fa7f320930ffa7cc52b0fff6c351d3e9d4c22f9f9a); + tempvar res = res * point + (0x98ad9c2080ba0663fb302025e6224cff41d1d30c5c9101ad77a48a71d8ac); + tempvar res = res * point + (0x58a6d8229d82c192f190e55d28489f621cbcc64e4ef10c1ec5663c5384e60f); + tempvar res = res * point + (0x7850ac1ef437d1b99c026a910b2437c1b877242e605c8f31a456f10e2f78743); + tempvar res = res * point + (0x337092590652e19c23b48de3629ae0bd4157a5a72ecd3fcd17bb93f05814716); + tempvar res = res * point + (0x95fd265a2a87c42af5a20a199e6730ee3f0e3352a38a5e7e84ef46c621903d); + tempvar res = res * point + (0x38ada3df52cd03154d66b7da4a8a01835a461e61a76ac9576649d8c00013610); + tempvar res = res * point + (0xc1bbae3cf2d414dc12119a0c746e3c10e148f8b522d574eff757d44d8b3a14); + tempvar res = res * point + (0x7122e4b28d4ee35902b7f7b8ad5f525b6c70a2f2bb6b4ee4b9f0008845ffacf); + tempvar res = res * point + (0x75275c33b919425b271966642fabd9ea7c917e70e96eda669040935b1d49db6); + tempvar res = res * point + (0x70af32c484244d3435bb65b0ed076f48d06abb45b7765de9c6f26c1c8e9156d); + tempvar res = res * point + (0x47c78a993a13204796a2fca3b20c0f02c0601e7cc59f84570fa026c65796dc9); + tempvar res = res * point + (0x55713c4cc9f91e9f158f70683238853d0bb7cbd8358ff72b01fb60808b5c1de); + tempvar res = res * point + (0x412fcd2551c0516392f685a62b54fb82b9a73bcffd42abecea4482b65aeea47); + tempvar res = res * point + (0x6925415cd4dbae0ea5e9f41edcb503ff6f668da1cb13ec73eab6a99cd96752a); + tempvar res = res * point + (0x3a2a902a0e43ab33c19459984fe116fb215796cb40c48e254de6126b55e9c3); + tempvar res = res * point + (0x552e18bfefab6c3362cec587f0a7433a914f1359e5767b4fe883f1ad902dd13); + tempvar res = res * point + (0x5643c5a69044bb8e86d10d3248ea3f50f8598732b0c517b256fe108294e09f3); + tempvar res = res * point + (0x542f931640d9010e906b7e1e375cd0481740157eb51500ea1e10afe77f26265); + tempvar res = res * point + (0x2a2811098d68a747bebe9ca2eae06b604bb307e5f51a9bdac1636f380feabb5); + tempvar res = res * point + (0x57d53073d66a528c88f24e40011321f74ce5bdbecd6ca319e5e770ae29b21da); + tempvar res = res * point + (0x1a4393bce3924d765902469c715fedeea69adca566859b4c8c412b7d7cb566d); + tempvar res = res * point + (0x6dfc1fb08b981f73911dc43811caa0ed99749c2f0903f87f389c9a0e2a88126); + tempvar res = res * point + (0x224fe4f546c8f999947a5864ed0dbcd64fcac6f774ebce11667c2bbb7d8603); + tempvar res = res * point + (0x1f7d548c5a6f2bc70ff6f8ee47f38221ae25dcb4f9b068054ee66227494f87); + tempvar res = res * point + (0x735f4476c2b51acb4f0dd9dbc4306108e37543538b2cd3cd2327ae5377a2e5d); + tempvar res = res * point + (0x66ec70c796374a71b6aec5520467ebed547f645d1670b990dfa680a1b415cd); + tempvar res = res * point + (0x14ac38a4b82b4c65e4993726b58f32c74988997b8e8f7729fe9032cf187896d); + tempvar res = res * point + (0x27092905558602aec9af09947b70bb974caa3dd7cb1cb991810e15d75194aa6); + tempvar res = res * point + (0x44e3645cc1b135410b2a52a5b92bcb454985033615453a51ac46377885c4309); + tempvar res = res * point + (0x352b933e5d853527d2a4317db613d07117fad8115948957515bc07d72e161f5); + tempvar res = res * point + (0x268c1e10f6f9969291b1d2f54289371a2f40a14cc67b3736e04eb891c1824ed); + tempvar res = res * point + (0xaa81707e389769aeb31cc8b45276af0370dd702ac79461bae0a4078cefb5df); + tempvar res = res * point + (0x67dec5ad6ddb1761ec61d2820533f7a2bb56d66f2fb8ecff9cbe28218990061); + tempvar res = res * point + (0x106911de08ef437acabf58d178db7c81ff4d7de25f3ef5cd2582f44176d449e); + tempvar res = res * point + (0x356591a80d5c2e14c3d8a180c030a9529a8580a4f3be00a5a9eea83d0d585f0); + tempvar res = res * point + (0x40a3ea8c4059a1b9138884234381d6d383e66dd48eac1bf05f5fcddd593c881); + tempvar res = res * point + (0x699e679a8f38a1ecb14c6695a2848c6abbab8a05003e43aa5cf4a9c6e6058f2); + tempvar res = res * point + (0x6b86f825e41b2c9934f71cc2cb08787d1bd4f2eefd2be9c44e37bf387b35940); + tempvar res = res * point + (0x4eb2786b11bc602bbf773564eb9b057d7dc02daaf4359c015295d97b74e72bb); + tempvar res = res * point + (0x7b0ed28b968689517aaa216c0203e57f1cf56b22ff1213561499ae140d37fa2); + tempvar res = res * point + (0x367ea925556a875faedf4d61bd2a95a31067bde6e682c50035bb3310cc54b03); + tempvar res = res * point + (0x781cf0ea1c0ba9cf908656aa2c5a9403d54c26c8ece401a2c13be8d3090f9c1); + tempvar res = res * point + (0x20ffc2b4c6c318bee0cdfdca40b2c10f2c629d3b52472b17c1bfd909cb7b85a); + tempvar res = res * point + (0xe5e89fde76daa211fadf1178785f0c25a94d47a468cda257a895b871a928c2); + tempvar res = res * point + (0x164344bae5b9dca8f384612e7351fecde28adee3d245c98dc2f65509b181d8e); + tempvar res = res * point + (0x4063a6202df9488fe5384aaf7be7610b3e88a9c01486c1b88767ca36355340); + tempvar res = res * point + (0x546f65cf3367a004f10e9a4e47d71f6ec80086cb2be19d7b225825e01eb323); + tempvar res = res * point + (0x72c11bd84cd54152607e4c6e558a28e480a6487e374b865682c167484f8c29b); + tempvar res = res * point + (0x7a5d11f284ee7db72bed2338784d6467e05cae85f333e05c5610c018a57c2a7); + tempvar res = res * point + (0x64c71feb673d2655bb1865f9c4bdfb16b1bcd0f278a911363056674dacb812f); + tempvar res = res * point + (0x62334e7d6094be4431aeebefc420f7e656459d6fc2cb10455123ede054f4cdf); + tempvar res = res * point + (0x5dd4b3dd252fa7eda7b46674369a2f8c5b00a891cf01ada0ea5aada8bfbf6d4); + tempvar res = res * point + (0x3373dcd7d0f0f8bb31ec396e1ec67e1f121121356dba549bce9fd4d3bbfbaad); + tempvar res = res * point + (0x42a6c571001e263b1ec8168805bf4d6cb65935cd0687c696ae3a6968fd28378); + tempvar res = res * point + (0x16f35b8d34d425a85fe48e66632d3e4af27d5d65cb180cb99047fdc2b908ea6); + tempvar res = res * point + (0x24327b5849aaae0d313870c10e8010a115b70a99cf6b92925f51d2f05686287); + tempvar res = res * point + (0x45ba7e524d75c65ab27b57a6e0b90458c9b0eb651935f84898a5d3cd0db9b8e); + tempvar res = res * point + (0x767d8839373a2e97b7e3de1be6f4c18df648806920e92fcc4da9ab6bd8525ce); + tempvar res = res * point + (0x741b0f4e1bf8ed4d6318f5dc5ebba8529089f5ef4a84cd727564c60cc11a96f); + tempvar res = res * point + (0x68682814e1b4dd639cf396a9f60efe5ca035c6ccd75054b8911e8a15230efa7); + tempvar res = res * point + (0x68edfc809bfa6534b583624db421a2cb885d2ce888e6f95eae85ad9cb38249d); + tempvar res = res * point + (0x5d6575134d1b37e610f25e65bc8b0b1ad7fd0cdcaa56fe573142a09707640b5); + tempvar res = res * point + (0x327bd35b3ec38fb121c039f777669426d3d60df3922e688a408a06d4e7ee3a1); + tempvar res = res * point + (0x29a66c93ef1fa5ac4b6f96ed329810085b294a7ab8e16c61b1e225fd7406236); + tempvar res = res * point + (0xac01d3129d24fe9b9209df8bfeb2526bc27e9c27d78f69eac16ce151b13540); + tempvar res = res * point + (0x3a967c407600baaac716275b8fa16a08c22e928d895c762b2843d00496b3390); + tempvar res = res * point + (0x4d111629c799fb16f602183ae372aee382e0b401312951eefe77a1674575242); + tempvar res = res * point + (0xa8a00bb9874fbb44ee3411814dfb9d4d6048f5e3af6f7f09fff4e9f0263901); + tempvar res = res * point + (0x3abd943152451107f59aa81194e7bbbe37c4a86a6b41e20a02f8145dd32fa87); + tempvar res = res * point + (0x580bd7107af3afc93d0cfd1f0bd39f78f06ebe3a900f5d79943c25e980e5653); + tempvar res = res * point + (0x7a615360e826e937db0c91cc1c9196086a3fd608cb01d20186ba1ce856904ed); + tempvar res = res * point + (0x21df6648e6f783b7361a20191b8d399a4373dcbcc83f6b4a9a40bf11956219c); + tempvar res = res * point + (0x2c82b2a99d198138ca2c4229a1929d044b113c1b0f693659712318ca7e7f804); + tempvar res = res * point + (0x6dd74321080cc46d816a963c8a6f5dac42cb11e66c79831efba77433cce0d23); + tempvar res = res * point + (0x1e54c3a5a3beca7932090ff58784aa43261075950feaab0e2a840f3801b81b9); + tempvar res = res * point + (0x3360af40b57c0a951da3219025643a76516f85119dfbb05f61874eb3b56b130); + tempvar res = res * point + (0x164d44fb88efb41e301934bf2c61a20e41c9bcb3f8e784ac5857063b4fc3d5a); + tempvar res = res * point + (0x46efbcd0bd7f06d59a430ddeb9f239d66a24ce1fa72f5dbcc2bab48b707b2dd); + tempvar res = res * point + (0x5ae517bdefe7b6785680842685de0b5cd972a22dae9ceb50a6ea3665feb06f0); + tempvar res = res * point + (0x51f4698c121db3db4a5244334c5180cfba256dc80a59689e2c0f1f8d946e6c); + tempvar res = res * point + (0x67d2681fae96c0b4bf22d10a73a1882c5bf4a5440f8d0458394d514ff7bd18b); + tempvar res = res * point + (0x3dab30754623b91aec7a165cc167e9003269ebab3e551781e4c8cfb73402de7); + tempvar res = res * point + (0x44be18892438118a0b3fc099da7489a89cffd4206678abfd37b1e649ad19178); + tempvar res = res * point + (0xdb0ad3bd8a33b8daf1d53ff8604bbe5259b6620e3b547d5c6f392dbc10ccd5); + tempvar res = res * point + (0x1a36f20817da4dc0c2e8b62fa08ce15cd3cb50419acf5211d6948bd6b28c8ce); + tempvar res = res * point + (0x5fa6f7f2a7a527880a5b58911dd7f3a491fc702f481cee30e67c4980092f851); + tempvar res = res * point + (0x6f682eebabbcbfa3e7084b47b2a01acb693865749df222b4b8dee0ec41903cb); + tempvar res = res * point + (0x1fd7088411b30cb5762147b1d6749942485b36c68ea32f60ab83fdcbe987d83); + tempvar res = res * point + (0x7172b43d0c88348e5453b0b26d54d4a7ad7e99e6b0c4b787341c8d89936197e); + tempvar res = res * point + (0x34369f479f013d44dd5bb0d79d8a9effdb2ca36ce8b3d7e759bf707233c5bbe); + tempvar res = res * point + (0x3054d35b59baf5b0a2078c23322de031b383033837cd6b978b6c060120b7fb3); + tempvar res = res * point + (0x23f0124cd1c3f3605fa1ec36dc4d6cb6e229f8ba8998b138a44595f96f3bf21); + tempvar res = res * point + (0x2300892e3f3c180333d091901ba99ab9e23c7947309b9e88ad47025847ec3a0); + tempvar res = res * point + (0x4182bea2ea16dcacb0194876cd5fe8c79e1a55836aff8aa6074d235af5f7b29); + tempvar res = res * point + (0x50f3e383aaf3533fc91b9633386542798abd69b79af893f47f6603d3cc35ea4); + tempvar res = res * point + (0xc37f91c81a7006d6681cb511dab2e4d83928ccb78d1dc72c4c556e4cd72db8); + tempvar res = res * point + (0x2693f31fd4bb5a1ef9cacdc4f2b33c3d6d965b76e7bf289020ab1b6c6660d70); + tempvar res = res * point + (0x2bebc90c59dc0e37e28c7c7d8254520ce08894637bf1a089aed26012690d119); + tempvar res = res * point + (0x17626d3869adf0fdd3fedd48e9fe1266bb33419bfe9046df43c6409b440980e); + tempvar res = res * point + (0x734438bc30566591da45df9366f936415d29eaeaeab392488bcccb9acf0edcf); + tempvar res = res * point + (0x22a7b1c897f54da39a1db61b345b234969e36ef6ba0ea02f8d8b3e83b5c6242); + tempvar res = res * point + (0x22eef827b9d0b57649233c5d527b4641decab31df78347a20da21c705df093b); + tempvar res = res * point + (0x193185be6e02dc0a07c0dced4ed031bf0a406219cce325e76408123406c318b); + tempvar res = res * point + (0xb10494024548b14df121b738abc7babe56c12acc0490699443426a52f3a4f9); + tempvar res = res * point + (0x375ce3766894524209e2043a150f10ad0bf4f726e3dc5453c3c757e56943a51); + tempvar res = res * point + (0x1b1c82e5c561dc42f8c9c2a9f7db6bacd729b2646892a8ecfae9ead9a338aa6); + tempvar res = res * point + (0x4b540d0085be455b24f014bf51dc7d0eceb8c93bb644a5208fa02dc58c718ae); + tempvar res = res * point + (0x17f2709d2719458a9bf72a2b04463f0a6529fd9368a47715c628ba4e006cea); + tempvar res = res * point + (0x20e468bb2828fb774d5ab538ff7f93ada201c2e392936e05cec29cd5a7a462d); + tempvar res = res * point + (0x29cc816e6be353f6ad5e2c390f37ed3940b0dd67610a7eeb0bcded94bdcf920); + tempvar res = res * point + (0x4d3b0654fd74862a92aa716af33b5ad5ac20dc0460c724d95ca94fe6d8a9d7e); + tempvar res = res * point + (0x7ba5194da963f8224987db2720f16baa604ff62351e66a63c0c9dba00fbc7c4); + tempvar res = res * point + (0x31d335bd885c9cdf2adc68ab45b8eecd2d3588cf85b93206896b2626eb1e369); + tempvar res = res * point + (0x4efcba706a8b7868e32f363efac2696ad0625d046a3ef97917c710515016386); + tempvar res = res * point + (0x56017977a273ad0e91c7c26a702ae4508343e97968295b08447b3cc7f20522f); + tempvar res = res * point + (0x16416cc193a5ced6ff213fc18c86bd6f08d17c576f26b9ebd00d2653bbd6444); + tempvar res = res * point + (0x4237c41364975eb79919303fc0a381b934befe871fdbd72c18f97627292923e); + tempvar res = res * point + (0x1b389d976c22a3bfb42424896c9b135a3794048724c729968f81e04ce414194); + tempvar res = res * point + (0x62fc206aa283139f7451e54cdac873fe86b6e7e89214a3c0318fbcaf6016fa4); + tempvar res = res * point + (0x88f6e5a835dfda9fa2e2ff248d9378352f4a89b6bf5935700da390baebadb7); + tempvar res = res * point + (0x4f9e975176d3aacd79c322d013c854c4b8829d1e469c9b242461f35e8dc6fed); + tempvar res = res * point + (0x6e1143b147dd1bcc56dd43e6a3616c9a4016d6887cf0009ebf9f9796efc944a); + tempvar res = res * point + (0x284c547c04ca83fdb01020cfc797eb362838317f09e5d25e1e4eef353ab7a7f); + tempvar res = res * point + (0x60c327ef73c8468805ecace45a33ccc375fc91ffbf01b4b10a01ffd4b7aaefe); + tempvar res = res * point + (0x59cd87f8751437900e984a009c63fdf7461b177067760f30d4f648ab271660a); + tempvar res = res * point + (0xdaf5a68420fa7ad811f6dc75c5b4e92173a5d89255dc75accb8cec80a9cd91); + tempvar res = res * point + (0x1f573af6e3ad146eeaa582f540de6a8db237ff2f28423660de998a4275bf4d0); + tempvar res = res * point + (0x2830a6edb344b7fa86506557a0b2b0bd900429218fb35e7990951fe4fe869c6); + tempvar res = res * point + (0x58f2e18613b3b25529935a623e7d5c8318ca9ff3fb180f16f7454ca9e348e35); + tempvar res = res * point + (0x42c8f0b5507417eb48ffeb1a7df8808633f193c27df8e2f44ee7bd62cb2c3bf); + tempvar res = res * point + (0x50d603bf9c2a456b828ae476092affde072ecd878877ec3f99ba8f574d263a2); + tempvar res = res * point + (0x413fda31150aa8462deae8a6043fc5624599fb7f638c4d5c5f89472e1223c28); + tempvar res = res * point + (0x13fe84c8ecc2e3fd289560c0ada7a251fdd5fba24c076be4be465feec4262e6); + tempvar res = res * point + (0x2b2a0768e9a5f59e7f33ea449690794c8b409bacd1c808f7ee8065ed9d8648c); + tempvar res = res * point + (0x3030332e9cf430f72159914e59ab9af532bdfdafedc1be39691256c8084954e); + tempvar res = res * point + (0x16617a52bfe5d2fd0eedb0d6411f5fafeb14a4ac17da0cc828c914acb500ce9); + tempvar res = res * point + (0x553f8ab49053432bab53835480b6f4c416eeffb3470fb6bcf122741cac3d71d); + tempvar res = res * point + (0x3939ef0e572dcc3b67f0cb819fffc521df26e50814281621fa6982b1465f786); + tempvar res = res * point + (0x520b18e79de342aa7095ffe56be6222b0d2e44fc3c676a5c994f24e427b45e2); + tempvar res = res * point + (0x3f3ae3871460ac578f5030d925e91c138f3290f8f3cb6d4b560b4b16fbacd64); + tempvar res = res * point + (0xbffb0e4f7ccfff0cee519edd1004eefbc47024f92c4409bbdf688c133ad285); + tempvar res = res * point + (0x62d6874b6dcb1c4dc8ed797b9158da4359c6c49f27af4851a12908ecad2092e); + tempvar res = res * point + (0x511c0ad7c0bfdcfcfaf925895a8ef5e8c5e0d147e29c9cdae45fbc998fce346); + tempvar res = res * point + (0x25199c11f7193e07191cd9b9108aa8b440ce1972dd1cbe5f0cc33b7783203a8); + tempvar res = res * point + (0x3cf3b95ba351a72019ed1bcadab32116adcf079e72800a9d88f15244e7743e0); + tempvar res = res * point + (0x19cf240d04f4859941f9b6af4a7088729aa10307cd08aa75f01cb22e872543d); + tempvar res = res * point + (0x1cd528d070930aef19e0f928fc744e79ff57e227b6aa1bbfce15a79166aefd8); + tempvar res = res * point + (0x475f8af086f7aa4ec3739f754f7dd291dc50decc7c7fb03de8aee3cf06824f); + tempvar res = res * point + (0x28f86fe2d71f9410e14c17195ae19c2c5e623c525c979f4f74dec3ef8848eb5); + tempvar res = res * point + (0x508243aa19e23cdb8ca0154055c05130462908c6a2691ae522e37ab9d6168f2); + tempvar res = res * point + (0x37cf9640e321e7bccf1926d5fea92918d6888c5805e27193722995233a4adc5); + tempvar res = res * point + (0x66336e2e2eeb939818f861fa4aa9b2576936470f511786f8fa3417850a6c2d); + tempvar res = res * point + (0x19a0ff21908842e412addb744b0ca384a54bdde819f6337c4c672f682fea9cb); + tempvar res = res * point + (0x44147236daf669f8a94b7ea353c3dd7e64312ece01ccc1d4dad67916591d50b); + tempvar res = res * point + (0x1d6cb5a655919a581078aa2f8a21d300425026ccd7d047302443d78dbc67abd); + tempvar res = res * point + (0x4d8d9b92b38a45147bc9c87c071672edd93cbf5bdc8d85e608f26f1d82d172b); + tempvar res = res * point + (0x4acd125e74056ca611a1b07369166eb5c02af7a4cbf387b2bd584a362fa9e60); + tempvar res = res * point + (0x3b4fdc8d965de1761e445ee88cb406f707f9d0b1ea3c069d12084c0ccba9b44); + tempvar res = res * point + (0x1f27c20f47daaf01d4627d5e9bee0e9bd2aa5b75807064cd60ed87e307f677a); + tempvar res = res * point + (0x4758304a75f149e24563c2b22459151389b86d36108f5dfe11ea1fc7a64fd7); + tempvar res = res * point + (0x1c1216fe648d287c2645dfc5152e171f25483df5ef112b745c2e59b5d9ee07c); + tempvar res = res * point + (0x24adf288d61c113e28d9a298d2642eb67586019adcb952abf274ebe1d30e24a); + tempvar res = res * point + (0x3e09706cb43c83143c9dc46f97e0e1ab4327de19ced69badaa8b2c80f68fb9b); + tempvar res = res * point + (0x589a2e11637d0c90fe91bb9f4d55a80cd1a2df7f3431e8b8bdce8fe7d35126c); + tempvar res = res * point + (0x5f506aaae7ce6d94712c9e0ab02bd2a4ae09600608d54a8ca381b8e96222cf7); + tempvar res = res * point + (0x3f64b3a307276c6a7169c54297bb12aaeebadec98df6ba1184492a82effe353); + tempvar res = res * point + (0xc3e0400cbde1da659381240d9c84b977eef3cd70e3e4a1a8763a05e682eb3b); + tempvar res = res * point + (0x1fdb038204ac50e87e3e7239d8c1c0572893ba98e031c982e545e6de64cb8e0); + tempvar res = res * point + (0xe0b21e37008355c35f7aee295a8b2b72465866b2bd68e72d36f032c34b38a0); + tempvar res = res * point + (0x2cc90219912af16cf9a39f57f8b8c514f797dd5d49dfed5eabdc278e31106a2); + tempvar res = res * point + (0xab2147a23a826d5f7c6fea5bf889eaafb5531721f31ee0a9f02fd58f09f65c); + tempvar res = res * point + (0xa5d4606609371577b0d17fadcd85ce659885b00245a67b038f902176d99a7c); + tempvar res = res * point + (0xfc76b77f717a5b3ecafafadf29e7f886c8ae67a3a2bb30467c440472349953); + tempvar res = res * point + (0x40fb948f8a4a10d2b2e928a5d77b481f8d3068b47fa388a3ee65609aade1a41); + tempvar res = res * point + (0x13d322a0ecbe1e785921a7aa6f4d1135e0798e72f4c055226205314b8348144); + tempvar res = res * point + (0x20096a7aa30c6c42f1d5f1ed88de275d1d1610f2548711a75fbbd72d373a50e); + tempvar res = res * point + (0x18f9cfeaf2c33e21d7c6fd9e15a3601a2fb3905588868167566e8c1f1dd30fa); + tempvar res = res * point + (0x3e3aa48bb5db9e2b0dc6d294009ecd5d4ff6255dfcdde3f5b4e545032ea9b68); + tempvar res = res * point + (0x425b03b0356b92e66ca816869a76110d68862a0d8ad76f950fdb1d5c03279d1); + tempvar res = res * point + (0x7cdb723061223f33289237c7476e737ef0bbc5e2c1ed9a70566511fc2036ba5); + tempvar res = res * point + (0x18b8b8d0f393950c9a2e674052150a328d214618049c7e2f58cbad76adbfbd5); + tempvar res = res * point + (0xf19faf3accc43b56369dccdec35dc7b49c5b8f8976764886bd16dd2e155f92); + tempvar res = res * point + (0xe08853aabc9eb934b4470bb4ae1dbbe90c61d2093516df998ca7adc98afe10); + tempvar res = res * point + (0x7736291268c775a82caea06004d53edb829be2566fc7c4053b1d850a8116cac); + tempvar res = res * point + (0x1bc1186238f0d39e1c56185a8d2bf00c90c9c89647917d60a5b762932856524); + tempvar res = res * point + (0x6cf772fa8050ad8eb87bc8f0c8fc511622b416fdb084cbc93b79501c96b0bda); + tempvar res = res * point + (0x7417da24519b4c55ec0d698ecaceeb49711aa1e7f7d907102351e73388a0fa5); + tempvar res = res * point + (0x66e1e25d1bcea87acd136f2c33498e3223fbf78bc6cc816ad6aaf68e961da0d); + tempvar res = res * point + (0x60db5bf6f060d82c169a1c4ed6c548d5e8cdb6cfd2e3257c155bf11f48ca609); + tempvar res = res * point + (0x2d5447623584d3a19e9993814622d6369248bc61813f067c4825c9b0a81551f); + tempvar res = res * point + (0xac068a1aae938e26e125b35c88a87130044bf3637bf1acd797103e7388b33a); + tempvar res = res * point + (0x3ab2d353537697d4de9c5c4c0bc31e5e776cb93181029144f6c6d4b5ea4317b); + tempvar res = res * point + (0x6ca2dd473297a2852e68ea2b83faf8f71e5cb471adcc74a858132c6a823f0c0); + tempvar res = res * point + (0x1ec5264a5287f1c6de79b3df3adbfa157e8430e594078c3fba7002a077db447); + tempvar res = res * point + (0x50ee695deb5a4e63c5dd6de35621d1c0c5a496bf41fecbaa929b2b3e23f174a); + tempvar res = res * point + (0x36f446f7e5a51114cbdd3b460431bacb5a42cd61f4690cf5e9d9f13e488318d); + tempvar res = res * point + (0x195f98a85cfe403a7d229a6eb4533a1fea641c331db75a5807711fdf1e27dac); + tempvar res = res * point + (0x63d4964faab567e795024a17032ec564ff221a421bd2e42632d3770c73dbba1); + tempvar res = res * point + (0x68d729620eca6b4d904198a0e6d241953b9b8c874a10b5ede5596146d560979); + tempvar res = res * point + (0x1137975bab819ce0cbc73714305030fcd4a185f71d46c169908460390d56d18); + tempvar res = res * point + (0xf639bcd7777c1ffd41a693ac9f5a051bd124b7edce3d568f14304c9fd90a67); + tempvar res = res * point + (0x2322f8d96071356feee538e0c53d857b1924134b94377af20ed5d0e8b3925b); + tempvar res = res * point + (0x22cf65c6bbbf76765555748cc1ae91c83ea93ca2c8b34a59332567b5b3b0cd2); + tempvar res = res * point + (0xd62eb553de83e5d51f78ddd9480d65870dc426f61153e732eb6cd62cee09cd); + tempvar res = res * point + (0x6afb39d46d5a846e9d58a6ae27e6cdd83bee29c72754cd4cd3d3cae423f5c9d); + tempvar res = res * point + (0x364889e46da58b66c827835a0c2807338eeb4431f2099f490d13bbad0777a01); + tempvar res = res * point + (0xaea6f7f915e4aec612029a9d02316baa3f6297ea4cfd38897f4c9859ec485e); + tempvar res = res * point + (0x5c180e2fbb2b51e053941d0e1611424fe60ced6d439115dd98530c8d79cca4a); + tempvar res = res * point + (0x1ab93f16e576b6a54598582eff5e2cfc33baeeb607826579680636b05046d16); + tempvar res = res * point + (0x4de47e973af27fde9ad29f812de8a04855110118eb73fcdb46865390486a287); + tempvar res = res * point + (0x50be25e516e30f96d8b420a7c494506d2cd21d64f4d5ecb67d58c2ae99bf5e0); + tempvar res = res * point + (0x2aa45ec320ea12beb804e35af3684dc981324dc9bd044592d1c408c052a4322); + tempvar res = res * point + (0x26701dfe3cc76754a4ab893fef59886a43013ea6ba648efd82fd03941fa2910); + tempvar res = res * point + (0x1773ba95dbeaab6e5e9fc79ac153d46be1e57828e92287d698a3f4f87ef4984); + tempvar res = res * point + (0x4e92d5f575fcaac9adedb4e0c3549dc18f61bc40e3752e3506f3761c32c6e3); + tempvar res = res * point + (0x580f9d95c2bd746c9210a87b0f9ed275afee1dde7a41d9ad5e69861ec0e43f6); + tempvar res = res * point + (0x3e2dbef5f162784e13b5ff4c33bcbc444ad1546922b293d6783b5de5c5aba78); + tempvar res = res * point + (0x596f89b6ca79194eb6a87c17692aa491f5b014da3cc7e5f05caf4fc1779c2dc); + tempvar res = res * point + (0x7e84842d5fff1666e01505f62661bcc822dd3fa530ebd1e4089230a4045a04f); + tempvar res = res * point + (0x5626d2ae9581d1d335bfc3863a4eaf3568ec8e70fcdae93f50a15b0cf601b6b); + tempvar res = res * point + (0x68371fc7cb3e0670a73eb3a7e773ddb63f231c26bf25bb1fc1fe6e93a7e3bd0); + tempvar res = res * point + (0x4d215dd42f87632a9cce2cb95081dc731e36796c3d2847dc96a3554231c6aef); + tempvar res = res * point + (0x421fac0e48da8e6355c07f6a64bcea96384848e8ea9a7113ab45f15b1dd15aa); + tempvar res = res * point + (0x679061e5f453c8bb1855dce8f7d61f2cb64b15d2c4e70b969ec4ead3fc6a226); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_ecdsa_y(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x23a2994e807cd40717d68f37e1d765f4354a81b12374c82f481f09f9faff31a); + tempvar res = res * point + (0x49d16d6e3720b63f7d1e74ed7fd8ea759132735c094c112c0e9dd8cc4653820); + tempvar res = res * point + (0x6c930134c99ac7200d41939eb29fb4f4e380b3f2a11437dd01d12fd9ebe8909); + tempvar res = res * point + (0x347dfb13aea22cacbef33972ad3017a5a9bab04c296295d5d372bad5e076a80); + tempvar res = res * point + (0x62e62fafc55013ee6450e33e81f6ba8524e37558ea7df7c06785f3784a3d9a8); + tempvar res = res * point + (0x23b940cd5c4f2e13c6df782f88cce6294315a1b406fda6137ed4a330bd80e37); + tempvar res = res * point + (0xf524ffcb160c3dfcc72d40b12754e2dc26433a37b8207934f489a203628137); + tempvar res = res * point + (0x603e3a8698c5c3a0b0b40a79ba0fdff25e5971f0ef0d3242ead1d1a413e443b); + tempvar res = res * point + (0xa401d8071183f0c7b4801d57de9ba6cda7bd67d7941b4507eab5a851a51b09); + tempvar res = res * point + (0x37d720cf4c846de254d76df8b6f92e93b839ee34bf528d059c3112d87080a38); + tempvar res = res * point + (0x5057b804cff6566354ca744df3686abec58eda846cafdc361a7757f58bd336e); + tempvar res = res * point + (0x76b4883fd523dff46e4e330a3dd140c3eded71524a67a56a75bd51d01d6b6ca); + tempvar res = res * point + (0x1058ff85f121d7902521abfa5f3f5c953fee83e0f58e069545f2fc0f4eda1ba); + tempvar res = res * point + (0x4eac8ffa98cdea2259f5c8ad87a797b29c9dccc28996aed0b545c075c17ebe1); + tempvar res = res * point + (0x6e7240c4a94fa3e10de72070fd2bf611af5429b7e83d53cfe1a758dee7d2a79); + tempvar res = res * point + (0x59fef071cf1eeff5303f28f4fe10b16471a2230766915d70b525d62871f6bc6); + tempvar res = res * point + (0x480d06bb4222e222e39ab600b8aadf591db4c70bae30fe756b61564eec6c7e); + tempvar res = res * point + (0x7d2292c8660492e8a1ce3db5c80b743d60cdaac7f438b6feab02f8e2aade260); + tempvar res = res * point + (0x5a593d928542a100c16f3dc5344734c9ef474609bd7099257675cef0392fab8); + tempvar res = res * point + (0x761717d47600662a250116e2403b5115f4071de6e26e8dc231840eeb4484ec3); + tempvar res = res * point + (0x4b74b468c4ef808ddcc6e582393940111941abece8a285da201171dc50525c7); + tempvar res = res * point + (0x14ef999212f88ca277747cc57dca607a1e7049232becedf47e98aca47c1d3fe); + tempvar res = res * point + (0x47b2a5ef58d331c30cfcd098ee011aaeae87781fd8ce2d7427c6b859229c523); + tempvar res = res * point + (0x59bd7fe1c9553495b493f875799d79fc86d0c26e794cce09c659c397c5c4778); + tempvar res = res * point + (0x3ede75d46d49ceb580d53f8f0553a2e370138eb76ac5e734b39a55b958c847d); + tempvar res = res * point + (0x6e0bed1b41ee1cf8667c2924ebd460772a0cd97d68eaea63c6fa77bf73f9a9e); + tempvar res = res * point + (0x739edb8cdd16692deaba7fb1bb03f55dd417891bacb39c7927969551f29cb37); + tempvar res = res * point + (0x247573f2f3fbd5386eac2d26851f9512cd57ad19773b8ca119d20852b9b6538); + tempvar res = res * point + (0x2f6efb89f27d2c0a86ec1e6f231b225caf2af9be01aca173a15fa02b11fdf24); + tempvar res = res * point + (0x75a0f99a4dec1988f19db3f8b29eeef87836eb0c3d8493913b7502cfedcef28); + tempvar res = res * point + (0x278a7c68986adbe634d44c882a1242147e276fee7962d4c69ca4c8747b3e497); + tempvar res = res * point + (0x675532b80f5aaa605219de7fe8650e24fee1c3b0d36cdf4fb605f6215afacee); + tempvar res = res * point + (0x5599e790bd325b322395d63d96cd0bd1494d4648e3d1991d54c23d24a714342); + tempvar res = res * point + (0x43545892bb5a364c0b9acd28e36371bede7fd05e59a9dcd875c44ff68275b2b); + tempvar res = res * point + (0x38db61aa2a2b03053f5c51b155bc757b0634ce89baace113391369682fc1f74); + tempvar res = res * point + (0x71b2b6b03e8cc0365ac26c4dbf71e8d426167d79f8bd1af44738890c563062a); + tempvar res = res * point + (0x3a663fc27ec3ad56da89d407089bcec0971cebcb3edf0c393112501919643d7); + tempvar res = res * point + (0x1030d58878296e14b1c5bcafe7e817ebe4aa1039aa96b9d0dd7fc915b23f42a); + tempvar res = res * point + (0xcb3335374cc2a2350fe53d2389f04952c4d634f489031742dfccca17be2e09); + tempvar res = res * point + (0x6ae3ee97ea5dcfbb7c36cffd89665baf114fae391c0367be688db09861a8ca1); + tempvar res = res * point + (0x7b16c33c4a8ffcecbd83f382469e1d00a340ceab5e7d9c0bd4fd010b83f4310); + tempvar res = res * point + (0x10f236430f20aafda49d1c3e3759c510fdf0c0c19f89df6d5d71deac88b547b); + tempvar res = res * point + (0x104b04e96151f5103118c4eb556cd79899148fd6656e73cb62f41b41d65e4d8); + tempvar res = res * point + (0x253bf2869135f4bda4029cae2819b2f468ae88530f3ea771090b2727814c494); + tempvar res = res * point + (0x65d50aa3c1d84a3deee14057eec98656a1296cdcbe32250bfdaa50ffac4c5dc); + tempvar res = res * point + (0x76323f8567119897f10d58e1552c98f5a62f03a16d3737e20fc2b0a31a3a843); + tempvar res = res * point + (0xdaee1c7b34ecb34717b7313dc4a299dd1a161447e2e0249426a6fc33a72289); + tempvar res = res * point + (0x2bfd1294f111a5a90842d19cffb97481aefbc09ab6c47d7dcf91ba228019c07); + tempvar res = res * point + (0x4f63db02e10fbe428a5dda8d9093feef46cc19568a3c8ad2fce7e7519004095); + tempvar res = res * point + (0x761a240cd8aa2f135daf0760bfc2c9d5e896e93a45426571cdad9118722e2b0); + tempvar res = res * point + (0x30a2e8ac9e6605fd722dffb4caca8c06dd4a8968a7bf41a5371cb1a07d11c00); + tempvar res = res * point + (0x5ba89e0eb3830039d0f8a9ca00acef15db22374c965b01abc49dee46270a7d); + tempvar res = res * point + (0x7e8659c39d7a102a198f0e7c3814060926ec0410330dd1a13dfadeab4e74593); + tempvar res = res * point + (0x5a00feeb391114d7b976654ab16ddf8360f05671b34d4a97da278c0aef34d76); + tempvar res = res * point + (0x33ff2d848bf237f536524da818598ae0f2516ebee526b77957448973eefacd3); + tempvar res = res * point + (0x4e0a5dd802deed7cb8d06527beb15dad32547bae77141c32473f4c8148912e3); + tempvar res = res * point + (0x776459dfedbbdfcef7a31e0f60c6480fc0676b280fdb6290859fe586d6e6106); + tempvar res = res * point + (0x59d0d8ca9ecda81081dfcae7580ab3c08a72195438c1556000c0c1dbdc08174); + tempvar res = res * point + (0x6eb66d366da57e4ae717307dfc3351579fe857c51aa82b95044473c9ed14377); + tempvar res = res * point + (0xa758a70ba6a0cbcbc65abfeca51359904f790752c3df55d42707253d8dea70); + tempvar res = res * point + (0x2046e1b4fd4c108e8f832f5bcc4dd46abf0d19ef0237beaec29d6c12fb9832e); + tempvar res = res * point + (0x472d99d1a6e1a6aef339eab1af3d53af7a8326e4d0a6bac73c3a159031c3686); + tempvar res = res * point + (0x1b0fa36439192f135c239918bf47ad14b55ced699f4582d929a60dd227b34ff); + tempvar res = res * point + (0x728dd423dbf134972cbc7c934407424743843dd438e0f229afbcca6ce34d07d); + tempvar res = res * point + (0x4e42531395d8b35bf28ccc6fab19ea1f63c635e5a3683ac9147306c1640e887); + tempvar res = res * point + (0x1ea9bd78c80641dbf20eddd35786028691180ddcf8df7c87552dee1525368ba); + tempvar res = res * point + (0x68a8c6f86a8c1ebaeb6aa72acef7fb5357b40700af043ce66d3dccee116510a); + tempvar res = res * point + (0x25c5f348c260177cd57b483694290574a936a4d585ea7cf55d114a8005b17d0); + tempvar res = res * point + (0x339b405bffb6dbb25bc0432e9c726b7f94e18cf1332ec7adfeb613345e935ab); + tempvar res = res * point + (0x23590dabe53e4ef12cba4a89b4741fcfaa232b7713d89df162031c8a627011e); + tempvar res = res * point + (0x534a4f3cf71c93023e473f12e407558b6c24b712204fd59ddc18c7bcddd571e); + tempvar res = res * point + (0x2e1b2a3c32aebc0be30addd8929c01714783aaf01be8a1d35e830646e8a54f0); + tempvar res = res * point + (0x605a244f646a825602891bf9ddffef80525010517b32625759b0bf5a7f2c386); + tempvar res = res * point + (0x4f81a946bb92416d212e4d54f2be5fa8043be6fa482b417d772bfa90be4e273); + tempvar res = res * point + (0x655038ca08eba87484bc562e7fd50ce0584363278f9d716e31c650ee6989a2b); + tempvar res = res * point + (0x44938959c2e944eb6e5c52fc4ee40b34df37905fa348fa109f6875c1aa18000); + tempvar res = res * point + (0x30b11c32e8aab0c5908651a8d445395de52d5ce6a1efe75f2ad5e2c8c854a30); + tempvar res = res * point + (0x4a92733a733f225226a3d7f69297e7ff378b62c8a369e1bbf0accfd7fb0977e); + tempvar res = res * point + (0x1345876a6ab567477c15bf37cc95b4ec39ac287887b4407593203d76f853334); + tempvar res = res * point + (0x580550e76557c8ff3368e6578a0e3bed0bac53b88fefdde88f00d7089bc175d); + tempvar res = res * point + (0x7d7faca17be1da74cf132dda889a05fce6e710af72897a941625ea07caa8b01); + tempvar res = res * point + (0x62be425458d26cfedf8ec23961cdfd9f4abeb21f1debbe87bd51469013358fe); + tempvar res = res * point + (0xd77a8e8eed7ce4931a6d2a4774c21864e2c9f468d080af9aba6756433a1a8d); + tempvar res = res * point + (0x3e850e31c0345726c1ace38537dd88a50c85d6819ae98add1bbd62b618f7a1c); + tempvar res = res * point + (0x375a5d9b11c83d06a04dc9f1908b8183adc6f04e5b2ceeaa23d3b68c973ee77); + tempvar res = res * point + (0x76640613af9ed1a125624e0c38252bee457ce87badb24fc4f961e55883d9077); + tempvar res = res * point + (0x5428ff423f2bbabcb5f54aafa03d99a320b4b255115351f50b229eae5522178); + tempvar res = res * point + (0x6dcfc3a99563a5ba4368ac4f11f43e830c5b620a7273330e841bedec0bfb5a); + tempvar res = res * point + (0x2652523cbbec2f84fae1a17397dac1965127650479e1d5ccfc6bfbfcbb67996); + tempvar res = res * point + (0xa737d6916aa6a869252d8ff294a55706e95e0844e6b047755704e37d978e09); + tempvar res = res * point + (0x2833391a62030808228d14437d6f91b31c0038c14988a23742b45e16f9b84b5); + tempvar res = res * point + (0x284f7815a7eabc1dcf56da511f7d739f1a199f8ffaf3474f645d2fc93327dc); + tempvar res = res * point + (0x1e141c5429a369996563573bf61d7f713cb7d25baadff636ba2756c65a910ee); + tempvar res = res * point + (0x60bdb98c079bd5cef216803b056afce03f6ea41934275c965d6e196240fb953); + tempvar res = res * point + (0x7f2abefac9e7f8109b0a2d25d0bd297059e45dd66798ac8b299f0a3e442dd2c); + tempvar res = res * point + (0x41776c662b44a36c7075097c14b6010cb321591a4eca2866d58252eaf9471ac); + tempvar res = res * point + (0x573b13b32161c11c9b16eff7cf93fa770a3ef667547a27503e39092aeabf73e); + tempvar res = res * point + (0x327319fcc0d34a0d64f5acab00244b43674a60bef754844fb2920c87c90cff0); + tempvar res = res * point + (0x755f0e4c374e2fa4aa7eda10041e2139a4a7793eea44f415c73ad4fcba1758); + tempvar res = res * point + (0x7b9cd3b277f00a75a17961d2d8e46e6a1838c8500c569cdcad08bd4e0cbae84); + tempvar res = res * point + (0x21f5ea8660d290f28b9300e02ed84e110d7338a74503b369ad144a11cf79f63); + tempvar res = res * point + (0x5e4b0ecc6a6c15ed16c1c04e96538880785ff9b5bff350f37e83b6fed446f14); + tempvar res = res * point + (0x3d8506e792fa9ac86ac9739d3d5bf63cfc13c456a99c8581adf590c8d9b72eb); + tempvar res = res * point + (0x1e3b6498f0daba2fd99c2ac65461c3fa519cb738b53cd6f002e97199fa4161c); + tempvar res = res * point + (0x70930735d913d54915fba20c97f07cba8f33eb8f4f81fd869699a10e83264cd); + tempvar res = res * point + (0x16a36769ee50227c564bebce3d9cd7c4ca55702a7c7ccf403075f68f05a0c2); + tempvar res = res * point + (0x3aa748723229eb8b33354e0901f50ad052b6c1006916790c979133c4442be90); + tempvar res = res * point + (0x5db8c52b6adb520496f9edd7105c92df67e8605ff4e0cc59992c3eb651ac7a4); + tempvar res = res * point + (0x4b2222d0aee638c7e5efd8ada791638ac155a01b78f3b532283574653998bb2); + tempvar res = res * point + (0x26a4b2a61f40c1ad77737b99cb27d2f3118622be64f0120907e2589d2f25ebf); + tempvar res = res * point + (0x5820792f23a13d58ddef0607950d422598bb1f21888dace88929fbe7d4828c4); + tempvar res = res * point + (0x3678de28b6896959edf5c9dc0caec59b02dfbbf54811f87939b32d0523f58bb); + tempvar res = res * point + (0x3cd13f84bb7ae6eeccc1012837d2f3e017f069e66cf047172bc70371f5aed38); + tempvar res = res * point + (0x7af8995e2ceed8841e34d44365c7ca14f5980a6a5c67b9813fa7bfd74a9c1b1); + tempvar res = res * point + (0x6d7af6524127a117184a0c12a6ff30d28b14933a4e96bb3b738d2a36db72e84); + tempvar res = res * point + (0x73200d12e733294b5cbb8ffe7fb3977088135d0b0e335135f9076d04a653c58); + tempvar res = res * point + (0x229d7fc2a1bcfbe00d5773f8dadd70a2641d8578fa73e66263b3512d3e40491); + tempvar res = res * point + (0x29889daac66c404d6491ec3a435d810a2877d885df1a3a193697b79b4af39c4); + tempvar res = res * point + (0x171f0638dedf0b69655fa9930bcbc91b257e299a6717bd8ea23ef550c8faff5); + tempvar res = res * point + (0xded0f75cd0a6a5401a954d26880eaf12050ce6458d3254c9dd6354bf66278); + tempvar res = res * point + (0x7fc7d854c9d0b3bfbf826c384b3521af0f29f975613e8ea6dc14f37d8beb54c); + tempvar res = res * point + (0x6d1c3edcf1de16a4e0ad7d8aa099a31fa2cfbf81f6d1a5798bd1ef93ff906af); + tempvar res = res * point + (0x3444c0f008988c8f600270b365ff926f016e49a54ab35bac4f3b3a42a5879b1); + tempvar res = res * point + (0x2a48058c77edcd75dd4323d9bb9eccb854009b1184fd716a8202f8627bb5447); + tempvar res = res * point + (0x56cbe248ebbc2f57ca8b943b219ba245791592f687815293a4499ef598fa9b7); + tempvar res = res * point + (0x658160ea7b654d786dc624b258c691f594e080610c2d41d6ebea0d8e3396849); + tempvar res = res * point + (0x6fcc261ded0ba97b4defc7c9bcd32b5dac89e4c08cb55cef98c6b50f5a3a289); + tempvar res = res * point + (0x7b74edd15d97b289da4040272cfc573f69a8c9a8b36d05e3e50b598508b7f9d); + tempvar res = res * point + (0x19637a12aa8b822c4a3f3551ef6c538043371a12a962de1dc25d67e0a5ee561); + tempvar res = res * point + (0x4c05a7abaaf08f21d93b2257d4f4a3ab2b44f4ac44ce0444418c864ca18470b); + tempvar res = res * point + (0x657060a10db73c4a9b6aa6288dd6164e0b50a4e6efbc2ee599a0cf4fda33b81); + tempvar res = res * point + (0x688c61ee887c1497ffcef82163f1a81bf7778f2c314ffbd325627bf0b25dc5a); + tempvar res = res * point + (0x54ab13ae1984dcc7d38c867a47f4a8cf786079ee07cc94ab5ec1962c21f638b); + tempvar res = res * point + (0xccee381472bb7dcae008316038c87a44fd9295f730e389eff14e86442c41b8); + tempvar res = res * point + (0x610bf9b7ea4557d72411ec90fb677f9a2ccb84c76f003954da4e7f439c9a84c); + tempvar res = res * point + (0x51d6322f7d582892421e977464b49c4e6e64af2438da9a7f21a061c77712dc); + tempvar res = res * point + (0x7d92a463e2aec09eb86f4647dc9ec241904135b5eb53ea272e809e58c0a271e); + tempvar res = res * point + (0x17ab90241b58bd3bd90b8a5c7f30aa9e5afeedbe1c31f21ca86c46c497b573c); + tempvar res = res * point + (0x199d80ad30b4b330fc8a063d1e87307993e1d98822a1729488ba8a586045691); + tempvar res = res * point + (0x601a139ed75acbecf557cd6513171385a119087585111c30bbc1b65cd6d30d); + tempvar res = res * point + (0x77b10e23b08892ab18cc6b14dfda6f4be5c2fec94a12e3622622376edd0d6a8); + tempvar res = res * point + (0x2a17a5c34f9f598deb5bec334fde606eaa5601df908eb5825ecf70f9cecec3f); + tempvar res = res * point + (0x7e176a66dcfd58e240c4546cd760b7e5ad02e4f0265c6a2f38d710bbdf99d55); + tempvar res = res * point + (0x27e76848780aba5b12061bffefff1710995586618a2f32792d62771d31ed519); + tempvar res = res * point + (0x43f51dfe0f1cf290c9a522e2a5e734f79d220be80348438c676295c3d429e); + tempvar res = res * point + (0xf1f93c3d919653f02fba06fcba1ab89497fff53eceff6a7d129887d5a9e3b); + tempvar res = res * point + (0x79fd6f5f9b042ece36af6b10eae2eef9de9c9dd18752eb66868a0c301015dd9); + tempvar res = res * point + (0x1958435eb08883bd69b6a56a8f3103c22f8ae206a3d4deaf4a04118b4dd6a6c); + tempvar res = res * point + (0x329230075f64ffbf631eb0c40b97d71b4dc38a08bd18b638f57e5644680068c); + tempvar res = res * point + (0x219557f1604be8622e697e986c03d2a49e40cce558a264bf4f1ebe06493eceb); + tempvar res = res * point + (0x7238f034b8c57c8b59b0f744ababf9da8229152a051d4f3b3c4995233ac1111); + tempvar res = res * point + (0x201019c76d9aa29a00e6b18a4eeac7b1322b44285c57cf4c0b68a87120b1d31); + tempvar res = res * point + (0x69d95f3c7892a1cf65b45c324be2294c4c5459e05e0feaa0b8bb98cd8bc958f); + tempvar res = res * point + (0x78aafbe80fa5ee9a846e991bf35b81567a6dcbb1b190e7ee47e53fc66422e84); + tempvar res = res * point + (0x15ba3c5a882d4dfe3e23db18368ade6b2d10ef52e34f12ce0d62e7183c10f7e); + tempvar res = res * point + (0x1a4bdaf2bff969eff8cef73e762b6346492b8d0f17b2e42956c526f625241ea); + tempvar res = res * point + (0x4adaabee9ab3c6ee7fc67a2ddc09c5185755dcc76cc3b814a6b71aa7ae542ea); + tempvar res = res * point + (0x2f47cde744314dc0502faffb0387a2e765e4354b0516ee9ab0b97a1b6c33ec2); + tempvar res = res * point + (0x90b2b18b3fc2919a55b71ad6d6fa67dda752bd02c985b59e6554f557fe4a2e); + tempvar res = res * point + (0x6eba866251e1dca38a21c8b3fad0aa3c22a45dd89884c4c68bd7ef67de64f52); + tempvar res = res * point + (0xb8dd33ef8726747fb368aedf80c2f4a720bc1b5220f4a3f0e56e2fafb7e243); + tempvar res = res * point + (0x1fac2f441d05a3b483675200cb1ebc6f4ca6ecc5ae60118fe8745f95217bf8b); + tempvar res = res * point + (0x6d28879c6f75c4ede18e1b94ffff964d08c79038fd9ba2e7873cbefb5f323db); + tempvar res = res * point + (0x28b38e0334fc06af4c94ec4f9434923d4149cc51817526597423fd4692c59ad); + tempvar res = res * point + (0x84add7269e2e41ea57aaed996f4c012ba7003ea2b994670cc0d554b7a8bd2a); + tempvar res = res * point + (0x64d672ca00300ddd5e9c9d2db433d7623bb54c8eb2db51b235a07616f1517e5); + tempvar res = res * point + (0x7f71cb5526600d15d3413ec971ee3b133718224b3cbdc68171a53d7c8684382); + tempvar res = res * point + (0x38e5702bb10256e1856a5bfb03a06b231b89a36e2f84af80bcd2d027153d847); + tempvar res = res * point + (0x1a8d4b2044b8e03b325c353f3f92283013920b92f479064b6e93159d2ed3ba0); + tempvar res = res * point + (0x68384718bd3bb23f32999f1edcb2dbddd8136259e676c4492d0cafe80ffd856); + tempvar res = res * point + (0x31a77aa370bb597dbdd0422612a7dd947aae09a5b0b17d1996f13a85103d150); + tempvar res = res * point + (0x40a9cea0394d15ef057c2923d4185f290fe2347e00529d92f927ef506e3b5e7); + tempvar res = res * point + (0x2a427d70a34b6b5237894f065ef5d60a9872ba444d47d98648b080b8ddb2a68); + tempvar res = res * point + (0xe505592d606917f898c54a7afc45b328be3cd48121aee2e8f05185a3e23e5f); + tempvar res = res * point + (0x45b4e74f19b293bc3d3d172a101e344558fcf4ccfe5eecefe31f45a45614df7); + tempvar res = res * point + (0x68486394265c9dc8fae42c8fd39605d3179c981cb44cbe33740a3deb907bc59); + tempvar res = res * point + (0x2868a08eae382c069047152ee964ac5ebd242b44267e97e578802440ef764f5); + tempvar res = res * point + (0x3159144c85f2c515eb806e5aedd908553057b69c556d226adc6e4511a35423c); + tempvar res = res * point + (0x4387edee6899d4a85883d2f8524978a4634ff82779f150b7b0c861bb315ed3f); + tempvar res = res * point + (0x68c5830832f6270a189b074d7675fcbc1d1c5cc06ce9c478bf8f4d5ac1bf40); + tempvar res = res * point + (0x399c00b8ebb398248bb1f52528d5241e7366b73c2d89f57a11dc82c530cc57c); + tempvar res = res * point + (0x3238aeb8f6bea8bcaaa1bdd5b4f917ccfad8eab031785ccdc648b47d7ea4be8); + tempvar res = res * point + (0x357bf5d87c973292381fa4320114551a837a1d6cb6e2bb0eeba534fb2e01742); + tempvar res = res * point + (0x360274f27df6eeec0b7b65fbb227a8214ac3e55cb37b1970e18489ef5b574e1); + tempvar res = res * point + (0x1cb6e2fba23730f5bf9d8e726569b6e8bf6b5ffe8520339503c5469cc3713a2); + tempvar res = res * point + (0x3924324af1994280f87f289fdae0b9a2d8cb9914ec37d319c18daf029211815); + tempvar res = res * point + (0x3c4ad04a5a057e4411487858dbe16af8e3fc065ef7400749ffdc248bdb25bc5); + tempvar res = res * point + (0x50c92b3e6848a21001be2a268615e1e26cb4918ecb09640efaaf1d8b71568fb); + tempvar res = res * point + (0x47d21828025d0cbab84084965a49dd14c7833aac562b55de808a94777df2ea3); + tempvar res = res * point + (0x6207c6a2fd70c19a10430566c9efaad95eab8cbddf308f0057c81f3155a25a0); + tempvar res = res * point + (0x2d4acebd804035257147ad8d8419a5f5762b4b543c4846ef9acf41856e672ee); + tempvar res = res * point + (0x78f49c214872b5cce18ead0207a165fb741ea818a69cfe9647737323f70f4f5); + tempvar res = res * point + (0x22aa8c5c5ff26f9a0edc768ae32ff4f71a71205b4e83cfa0cc687a1e02566ba); + tempvar res = res * point + (0x5dd2e0680c7eff25211f31d3c30a9f454500d6eb09d46d87a75a42b190203cb); + tempvar res = res * point + (0x5ac4bcdb9c14634ab83c13a30822ddbabc54248cf1177b11cc2aed24d2d32f5); + tempvar res = res * point + (0x77dee5f03389585fad0d1f2a8accfa4cb985344891b8befaee42f3462cb48a); + tempvar res = res * point + (0x737dba18eb055a12d842bfae32fd146dcd2d7bb932a2591aa864458d6d652); + tempvar res = res * point + (0x23bf372b0b59abf250463697ef4b2096eb1c9674613918b4d0c79aa10d9fd59); + tempvar res = res * point + (0x73724274fdd351c378e597da1615dc51058e14994464cb7b318766199ac2a35); + tempvar res = res * point + (0x2e14e83be58cde3ed5f3fec8ba6462493a4a2f0f7d6c846006220eccd49ef25); + tempvar res = res * point + (0x4846d310812d81ffda3731e8289005e2f0e05411e76b1c84332c3ee9e831afb); + tempvar res = res * point + (0x160abeb38bc4f22af5fe618c19c77c39903007900722bdbdeaee059f31544c8); + tempvar res = res * point + (0x264a535ae10091157ed59b04955dff66897af74cae20456bb830336b803ae47); + tempvar res = res * point + (0x316ce6b23e720b8302e2d4bd968c0f140f69930e46a54784a7cee7e0b8a0c8); + tempvar res = res * point + (0x775d95a0beb287c98663a3f9a9c577ffc67c1fe6fbe2db5b08829a2c3eac922); + tempvar res = res * point + (0x2353c4a418bdc1e461be162140cc69c26eb9d99f08924991f85058f87f6df41); + tempvar res = res * point + (0x181ef9cde124459dc0e2aaf93512abd49a10328fb93dfc4d49ab671db64bbc4); + tempvar res = res * point + (0x7ff76956e0cd2b490b47a0a0497df5f874cf47f54c45f08101256429b48460); + tempvar res = res * point + (0x318e5a52d685eaa06e0f39159a344b3d97b52688b671d133954aeff0bc17707); + tempvar res = res * point + (0x7616cfc6834643d4b95ed1cfec036f816a7c3d3b9800f301f98ddf341712ebf); + tempvar res = res * point + (0x59869515fb57ea7733567e5d849bcaa00c00e0f86f4ebbd2c7a6f4c0c77692b); + tempvar res = res * point + (0xb806f4e19770279fab5427b8eaf5bc68bf984d6ccea1e878a7aaf32c9975d9); + tempvar res = res * point + (0x4fb0c93fe30da048576fe5e839483636218dfdda3d05f1d68847a4c0167597f); + tempvar res = res * point + (0x685af2d7bbf30cd0c5c3d41c430a8657eeafeeb4596165faaa73d802087ad80); + tempvar res = res * point + (0x6f617dce150ea148cb8c7488fe4caa920b2000bc8122cce1891e4b76cddc9d4); + tempvar res = res * point + (0x47f02fc512b153462379f4f793c7cab9e659bfdb07d3439d29039f566b7236d); + tempvar res = res * point + (0x4ce0a14a5a9c30a38062eb8870eeb4ff3562db743c0f3eede2e3d3862a2eb7c); + tempvar res = res * point + (0x7b077d27c7007656025224fa4e528b4c4261f43c3da1e42bd1349403af55cbb); + tempvar res = res * point + (0x50f5f6adbf0b9abc6e231b855018f4ec806a4f199cc511bed5c423ebef298e4); + tempvar res = res * point + (0x5fcfeb78685abb1ce610e516ab7e2aa210fd90844c8d1c89cd798f3d71bbcb3); + tempvar res = res * point + (0x4255a568f4597862e1dfe0c391b97059d179d7eb4d868f61364835e5028f9dd); + tempvar res = res * point + (0x206d7f23d0fe1b1c0967486ebb792d7fdf5b1691d2c2f9306e211d3b849526b); + tempvar res = res * point + (0xc61c74cc988663ee09f4c725d5b1f04549bd342d3550ce17427ac75592b637); + tempvar res = res * point + (0x175a904681c7a91856bf7fcf8410d2c19eb8705267914489664a1ea2af5b8fe); + tempvar res = res * point + (0x1bd842a4ec97e1489ceb542bd3161e5a00ce431547bfadfbced954d993b0a11); + tempvar res = res * point + (0x14899e0f97aac917d46ce5e9ddf11194fb846d2c52726af4085f27c570a98a9); + tempvar res = res * point + (0x842955243a56778a332ba9be0b22b2af62efaa50068d3078675fb76c225e76); + tempvar res = res * point + (0x6dff267c3bbce68474294da908df4f5cf2a4160c638f7cb45c098057e968f44); + tempvar res = res * point + (0x72c0dd24a576b47a84cdd1a20227773b5621f85b781c288625e3368e1cf738a); + tempvar res = res * point + (0x728771890334d0c9b0f400543bdc13ea6890497bc87c509a04f8014916c13a5); + tempvar res = res * point + (0x30632b3865a272a1a00270430744ee90b40ff16e1fc44515876ce8e36215ca0); + tempvar res = res * point + (0x76d656560dac569683063278ea2dee47d935501c2195ff53b741efe81509892); + tempvar res = res * point + (0x1dbdc2ea2e555309578eeb2352fbc47c8fd5ed77cc09903b577700f9a4d1be1); + tempvar res = res * point + (0x119bcf6402ad9953851bac8e318d50af699b0cc75e2597aff0a2cc521975aa4); + tempvar res = res * point + (0x7c3234094dff9a45064a5b9abd0667c04dd76c62722984f7f8475e7cc344c06); + tempvar res = res * point + (0x1495d40cf3f13c5fc90653c2b2f02e0b833790c07576286d3127f745ea920ae); + tempvar res = res * point + (0x40f019a18b8097235264cb8efee7d149321a199ccd32ffac43b5a778dfadda1); + tempvar res = res * point + (0x4e23809ce49747990e43b2d976083dc84d67e75cf22e5a76ad5b7a2dca50b3d); + tempvar res = res * point + (0x7f0a3bec1d34f2fd632993a3d9c6432401cec25ad9d6196b909f3672980bd05); + tempvar res = res * point + (0x9460aa25f77fc10cfcc4579e2011e39ce477a32a768aa553201e556ed2bbe1); + tempvar res = res * point + (0x611384709c407d85c93256b6aff04c4ac515450c70cf507994165abfe2347b); + tempvar res = res * point + (0x2065bc7a4aa38d5fe86f9b593ccd060f8d4a5a19a9ca8b182c32199a4bd27be); + tempvar res = res * point + (0x9969a08d753e885857a5696d1cafd39f62bb193acc99089df76c240acd2fc0); + tempvar res = res * point + (0x6df73a948c95439f3230282814ba7e26203cfdc725901e4971ad9cff4db4396); + tempvar res = res * point + (0x1cdf0446663046f35c26d51e45a5233a93c51f4f7f1985dfe130dd67addefa3); + tempvar res = res * point + (0x59cbe680183d1dc3161ee7f945f38ab9461a5293748b2b7be84899e62c9860b); + tempvar res = res * point + (0x5030fda0c29a929e6cd634b9f3d1bf975c363012cfb439cae13495f8ce10225); + tempvar res = res * point + (0x49aadcf98ef59c0e5d2097845949988862b96194abc8c5453f056f232482892); + tempvar res = res * point + (0x319c68159cdf104c2543486ff784860f302187d77effb9a5fefe4e16f0ddc2c); + tempvar res = res * point + (0x575531b404cdba72a63dbbd17aef7d9ae00f73eca7c6dcdaf5e0778c921be41); + tempvar res = res * point + (0x35ca7fa56aa38486833a976804899ba3c97fdaa0a23056cd2dc9bfdbcdd2e31); + tempvar res = res * point + (0x47dc0e209ee8d0b67f63d9e63837ff2ab462c4839bc14a1a3e802327ff0e31f); + tempvar res = res * point + (0x744bdf0c2894072564f6eca2d26efc03ef001bc6e78b34bf6be3a1a91fd90fc); + tempvar res = res * point + (0x73c57ecea0c64a9bc087e50a97a28df974b294c52a0ef5854f53f69ef6773af); + tempvar res = res * point + (0x7dd14b0299ff6064a96fe97e086df3f64a4c7e8b4a58a5bd5fe1b9cf7c61e7c); + tempvar res = res * point + (0x562f636b49796e469dfe9e6748c4468f340e8f69e3f79cfe6925a261198dbb3); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_poseidon__poseidon__full_round_key0(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x7ed6ec4a18e23340489e4e36db8f4fcebf6b6ebd56185c29397344c5deea4c8); + tempvar res = res * point + (0x5f3e9a55edfd3f6abac770ff5606fca5aaf7074bedae94ade74395453235e8e); + tempvar res = res * point + (0x11eaccb2939fb9e21a2a44d6f1e0608aac4248f817bc9458cce8a56077a22b1); + tempvar res = res * point + (0x1b8c9c9cfe3c81279569f1130da6064cbf12c4b828d7e0cf60735514cf96c22); + tempvar res = res * point + (0x7865d89fa1e9dce49da0ac14d7437366bd450fb823a4fd3d2d8b1726f924c8f); + tempvar res = res * point + (0x712a2cab5d2a48c76a95de8f29a898d655cc216172a400ca054d6eb9950d698); + tempvar res = res * point + (0x2574ea7cc37bd716e0ec143a2420103589ba7b2af9d6b07569af3b108450a90); + tempvar res = res * point + (0x47da67f078d657e777a79423be81a5d41f445f9455b207ec9768858cfd134f1); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_poseidon__poseidon__full_round_key1(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x143ce163d9e857b549efa236512d839954411bc04e888aa114215f991ee8a57); + tempvar res = res * point + (0x4430620ab3eb75b8b2c3ee9c8bafd3408efbe93661f670002b3f96d354c2bc0); + tempvar res = res * point + (0x16ba64f5ffc9bcb3a71b49f79a1c26ce608e33f1b6ce5fdfeae1c732b5d0b5); + tempvar res = res * point + (0x26315e8a17d10270d98790f94772ab99b185baeab1e0ec64e783de5c5b35859); + tempvar res = res * point + (0x21052369229137423604dbda64cdab20290c4da86882c0444750eaf0687d1c8); + tempvar res = res * point + (0x67fa64d83009acfaae5a7a0e910d322b5d4dbc825090c1239dc68cd18338ed4); + tempvar res = res * point + (0x17190a2c4fe2fb2a1c4061a3aaa8d89e8a363f653a905e43ab819ff47516c67); + tempvar res = res * point + (0x587584d86e310744ac2167594e87c72847cc1018d766c61b29b572ba4552a80); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_poseidon__poseidon__full_round_key2(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x565a88ff293c0a9c48cb67be157ad800604990d390e1b173e9bdc09abf9f788); + tempvar res = res * point + (0x6217cc4bd0f62fec8a25f305b3914f3c6c2df7701aee105c60cd37ef815239a); + tempvar res = res * point + (0x27a6021b1b06d9adf868d5ba9b068ecdee5e65fe62163095b96f7f4c2fa6c3e); + tempvar res = res * point + (0x71273291cc9fb7c500b008872a8890e1e3917ea2b954d1f4a9af67427323126); + tempvar res = res * point + (0x2fa9daffc6ffa8c6dd8cf633aa7c2d2a113a885f4ba935ff7f0198a4ea056cf); + tempvar res = res * point + (0x71a637fccbfdcc8da4828cb4734b6887fe9ebd78725ceb92d2756ea4e4c86fb); + tempvar res = res * point + (0x646004831088eedddafcec3518108e2033e3e613eb2b2b0ca972f75946901ba); + tempvar res = res * point + (0x7d384f90e1f21f53dbafb1648ecdb97d8c020dbad501b0d79a491587484fefa); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_poseidon__poseidon__partial_round_key0(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x3413bee8966e47edad4d25455e74664d547713650ae8ef6f7f4bd1d56077b55); + tempvar res = res * point + (0x624b1ba9e7d45d86f0a2ef7896a159e8e3d418234f3950ae2c1a1106b4d8e64); + tempvar res = res * point + (0xaba2f20ea6ee9cae2a9a5ffab6bb531cae756025a2039dbb3fdc7f6a7ea66a); + tempvar res = res * point + (0x18e5bd14d527406ed33ef180f4351d66ba350fd42a210f14b13774666960edd); + tempvar res = res * point + (0x6fba7ab30e117b743f154c4c1ef96007fbbff3b8cddbffbaa3cf1620dad0df2); + tempvar res = res * point + (0x641cd514114aa297433e1ebb6f6fe8cf4c5b3816df09b39b38bf3851328781b); + tempvar res = res * point + (0x52208d8264d42061c7107f7945857541692a87bb1b4b4307c17d43193be3ad); + tempvar res = res * point + (0x44e2813694e35f41733099371352f930e87366ded64841028c54de5ae0cf86e); + tempvar res = res * point + (0x58372f1bada3f7d38dee566363d48fc45a542d57a2357a00006f8c4508f3858); + tempvar res = res * point + (0x592bcd7384ba517197075eca669701a6d8eac3bdf21af499e3defd891fc8787); + tempvar res = res * point + (0xaa7db6d9cd63141d64bc671099b444013d3ac056afb7223fdf97319f7bd76f); + tempvar res = res * point + (0x1e8db0feaf54299f9e0daa802e5a00c5b43dc189f622dc9d0d8039fc8f4eb16); + tempvar res = res * point + (0x1125b5ff47f1e0c4105a6b62e2a6dcf3d71812409c77b4c708825299e70bcfd); + tempvar res = res * point + (0x7fdffd1f06d45f58c50609eddb9e4dcdf9845c3e13ae29fa3e6a4134615463a); + tempvar res = res * point + (0x770f2c3dcb1befd2dbdd3e874a40ec38860828877139317823bc60ed3b69be4); + tempvar res = res * point + (0x54beab500732d6102d1d501adac8f41fd04cf465e580d8664009c12e28fc5ed); + tempvar res = res * point + (0xc1e6049a1a088b613f8cb972734a8c4ee6d4bc5a359d5ebf272eff71312c01); + tempvar res = res * point + (0x24c477665b5e4b3843749877bcce106ac76c085f15b0759fe9d8f1d04b723be); + tempvar res = res * point + (0x4d2b779ec13ff444eafa96e2e505999c3f79b06939f6ec492378d2ccb49c3dc); + tempvar res = res * point + (0x6429e4ca7107ea29d85b4c45f4926f82d9d72206fdf33d7e499243b6a9ca81f); + tempvar res = res * point + (0x42240cb9baca23c27a0eb13e654a5af7a490b95b51a152b8a2da5f0752226); + tempvar res = res * point + (0x3c53eb4b33fc6cd4e86c4f3fbe866d358233a54b0f7c626f0ef3164ac48b189); + tempvar res = res * point + (0x5cd8a4ce2b3274c77469ce2c328d9f56ed2bafe7992707f64ce99d42968f648); + tempvar res = res * point + (0x2b23cce09410c815c33da25e53f0204d5d6f474f5f784647a19e9114e4cf753); + tempvar res = res * point + (0x398c6094de25847f31d6458f8bb9c6952ba9092ba7abc54d08050017ae2db64); + tempvar res = res * point + (0x3a8053abe10aed5567dd7d40517596eb747cb829760fbc06f5bc322a0911c84); + tempvar res = res * point + (0x324ea07796ce3412e6f938ef1a2974abcb3f8ff7114fef8e0fef438b6e69b89); + tempvar res = res * point + (0x4d5422ca4881cbaf9e99fe864068190670a6a1074e21de1382759182177eaf1); + tempvar res = res * point + (0x6db31dad71bfece85b88afc622cfdeaa557d4bfb3d3a313eaa4235dc7ec4ac9); + tempvar res = res * point + (0xb375c79888613ea49838515cb5f6842dea48d273b9699855c67d0978f13925); + tempvar res = res * point + (0x2a584b677c86b2a15d48c57df9dad7188545a3a994fef603e86ac16ce1facfa); + tempvar res = res * point + (0x4291c5f5cb048e49b20c5b3caa1fa12b99ef81488aa83663110b12abfe704d8); + tempvar res = res * point + (0x6f2eda70c3c0c744df7d7bdc1ded3d80f290f951649456874904374564edf90); + tempvar res = res * point + (0x489dffafde7fd6ef39e1542159c9d49bfdefe802fe6b358d6ddd1f28942ba69); + tempvar res = res * point + (0x163df55208e1561da127d03f6b63d46e0aa05a1ef3321cfd5711eb4d3fb3ff1); + tempvar res = res * point + (0x293681f3dfad87cd19bd1cdf5c6244a5f943e411d7a035121621f8692fa77f9); + tempvar res = res * point + (0x50c9a8d62edbd150d6090cf1f0831c066282b324ca794df5aca0fbc9e71714d); + tempvar res = res * point + (0x18e0bd645ba4fec89f9991a934891217ba872651494fc08589186d6e6dda88d); + tempvar res = res * point + (0x8bce38b2895c04a0c7620adef3a51a8319fc4e151359a52809b1509f48f662); + tempvar res = res * point + (0x5add69d3f68df10a5d626eed04e8c34e83780c2c3eb9e07bc49ce7f1fe9f618); + tempvar res = res * point + (0x90916a638846883fc6bbc6c241dd630e4346567e5520bffeb17d0b05a17cbc); + tempvar res = res * point + (0x6ec11adaf8da159cac400a273fdd7765371056001451e6441a6cc9da18beb31); + tempvar res = res * point + (0x58e3b2dc12d9ffe27bf5dc6c28a216e5612a7a0775f902c537806d2f60f4226); + tempvar res = res * point + (0x3b09364e6fc149b3063a5442b78165712343e075297108206e246e0de596874); + tempvar res = res * point + (0x2a05aa150252d7f810276589f79dbd0aa619289cd283f72ae0d34f141635a13); + tempvar res = res * point + (0x7e9c35a05ef0ccb7cfe93272e0b46324e97e1512fa4c6e1d30ca2c00dc207b8); + tempvar res = res * point + (0x4a2ae027e432c0863e1749b62e8533e649ed78091e11155d341cfe47168bb0); + tempvar res = res * point + (0x7f610dcb987484937a18dbae85c5b46f0bbc5f2cd845487501b2f1f7bf9357c); + tempvar res = res * point + (0x41b07a5f9241075a4ff1b76a9a529c9315f2435f79bab965fce61c8f616badd); + tempvar res = res * point + (0x301f8e1e5f31d9f0546da692c88e007789002e56c4ccf68f3bd5fba12db838f); + tempvar res = res * point + (0x410d9eaa6c615c482f890e4c738e555ac3e4892272617bc7a0ca80613e27fc9); + tempvar res = res * point + (0x583d1f426394c7610a252cae8485a3e6fe2f5fcadc19fb5097a5c55c0787fd4); + tempvar res = res * point + (0x5bd0655433a76820184b6dd6fa4f3a67ebc321c75d1f9bc7422fac69074e2ff); + tempvar res = res * point + (0x74155a89a923ea1e2a23985156091d435b5b815ae1e9fa573330f01d880e52f); + tempvar res = res * point + (0x7523eb70ea4b345b7be4f151bfff9cdbfd589120b63d0b7a21a5cdc3d36aed9); + tempvar res = res * point + (0x4dda9dce889ee4e52e93f3ccd9f32bbfbad5a8e1768aecab88170f78d5f0de1); + tempvar res = res * point + (0x1cdad5777ab21cdea2c8f5994456ce2253e8b020ef32d4d12714106b7d2f632); + tempvar res = res * point + (0x1871b013899aedb3e2551a73c9f7f4189e86dddd5dfb8db56965e67812ace0a); + tempvar res = res * point + (0x4eecc6622ccb897afcd651f5bb655b47101430a53a29bf743f5b1041ac8ff13); + tempvar res = res * point + (0x5432e64cc316b7f386cf5467af442acb9d986873c5c513bdbdd133259ad54e3); + tempvar res = res * point + (0x1da26a447725d6a61f31012a81300349baf580ddfaada24630d03ed293da28a); + tempvar res = res * point + (0x3bd2aeed72b102694fc4a99c25a5250c234c91b03680ef4212885989ba9267f); + tempvar res = res * point + (0x4ddf2d7e380560d571e765deec379fec8ae4d909848b18b5389ec295140687d); + tempvar res = res * point + (0x47237ffdabc0cba010385bf48714bb06a6a2b9316394603c450330e743124ce); + return (res=res); +} + +// Evaluates a periodic column at a point. +// A periodic column of N values yields these values on the subgroup of size N. +// To simulate a periodic column with 2**k repetitions, one should evaluate at point**(2**k) +// instead. +func eval_poseidon__poseidon__partial_round_key1(point: felt) -> (res: felt) { + let res = 0; + tempvar res = res * point + (0x26f2aa4059eb10ba60302d001cdf4a5482d43e2d7d05bd2b5486cd8c52ab9be); + tempvar res = res * point + (0x722090545903a2f0b654199a04a5db8fc128eb36cbad8255818bf1d5db2736d); + tempvar res = res * point + (0x7510614da9b9ad318575990ca2107d7b8b4e66622a28b08499b7444a86e0d37); + tempvar res = res * point + (0x7658d45c2170beb301fdad273c8aea07d4add3b02890567fa38c0f6b5c1689e); + tempvar res = res * point + (0x38ea9c051a4621f17bf1d34344272953018e378f8b587aabac79157963d7a11); + tempvar res = res * point + (0x794689eb6cd1d1acb82b7d5741d61a961b28a3f5468403a1981ddbc21eca96d); + tempvar res = res * point + (0x4883c98a63a118749cc26ac47607af9d17fb8fd36ccb743e2b6dc13f202a42f); + tempvar res = res * point + (0x8729cd967a805126fa9fd4136a390051c690dfc413f1de62f6fc13123f9586); + tempvar res = res * point + (0x17dae5cd6089cc03cafa39762a14985af1e7a05e9bbf55d3952c86839098c06); + tempvar res = res * point + (0x7406ca984b25f47732349b87565103d2bbf220ebab93085c063ce5ef28e7337); + tempvar res = res * point + (0x30e1c6b719648866af8220a2220904dd632b089e54ca459dcab5d853043fc25); + tempvar res = res * point + (0x26993661e64b45b5787fd8b923ecfb6f681b554191429fbfd96f7010aba3115); + tempvar res = res * point + (0x57455541d2426a546ddc818e996e5e4120a233416ce5da3422b065b60c287d3); + tempvar res = res * point + (0x6ae8114b8a4b0e360f3108b4c4679c6e51d7870c05c3cc5504007a29c118b53); + tempvar res = res * point + (0x5acb7c9ee9cc689cf9ed6c611a1bd730f43c4ea34b94e07ed804fb6d2bb8d4f); + tempvar res = res * point + (0x29a15985dd04254ad523298f35de868c8f4538f2d800d6005634b3a32bb00f2); + tempvar res = res * point + (0x292b8bad037db0033c816ef6752c1bb9d551215a498452832f721cd95519372); + tempvar res = res * point + (0x31a3edaa5ab567b05861b16a6e0da76ea8e159108d2fe83eb73ad7b8f86ef7a); + tempvar res = res * point + (0x2d35fd2bf29729904a91cc5ebd7d79362c34828e0c37e09aa4907de26a45fb3); + tempvar res = res * point + (0x3b1f311a53410f51c90fd8a9189465059ef46149b8fb7930963ead8eabaf53a); + tempvar res = res * point + (0x230279d6296ebacdcc9cfa5bf60e5a1d4ebe3ff0ac8f8bf8318c988f5c99bf8); + tempvar res = res * point + (0x2369e96b64fea009a1f66290a5dfe08010918b4ce3bfc9066739a4dbe133a0d); + tempvar res = res * point + (0x13816f7acb88c6bf0356430faf0c4fed6972a9498b29919af38d9d5f5ae440a); + tempvar res = res * point + (0x787d78882592b85f1de17e47bad43712e69d0899fc94beff77d62d2c4a1375c); + tempvar res = res * point + (0x1619514ce1cabc2996036ec8d3e3476a8a2d9e83be3e8aa7a020ad11b548622); + tempvar res = res * point + (0x176e131cb6830fe0570f692f5cce9f3f37d3444e647a318f35d1138bb580133); + tempvar res = res * point + (0x4a300aa8b63feafeec79c07fe87991c0e85737ae1fbe3aa7f60d285bcf89cf3); + tempvar res = res * point + (0x7845d76e25e1fe6f884a162b379bad9bd7e421befbd911bfd1810a6973ca552); + tempvar res = res * point + (0x32e59ba3c11289dfbca64ae5646d50270c6f78f070e0ed6f1b24f45ce6832a6); + tempvar res = res * point + (0x3779baab792c4c306342b4e6640c4a1c315ff9d08e0fcc97576ef889dd657b6); + tempvar res = res * point + (0x6712fc14a35a8b515bfc975d8cf356c749b04d5d7abc78ba6b2aa0924d6146f); + tempvar res = res * point + (0x4b7fdbd1ae93d05ecb29e4702e1715f462cce519dba31b9f4b87107ada27016); + return (res=res); +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/public_verify.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/public_verify.cairo new file mode 100644 index 00000000..fe80a8fb --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/public_verify.cairo @@ -0,0 +1,137 @@ +from starkware.cairo.common.math import assert_le, assert_nn, assert_nn_le +from starkware.cairo.common.pow import pow +from starkware.cairo.common.registers import get_label_location +from starkware.cairo.stark_verifier.air.layout import AirWithLayout +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.autogenerated import ( + BITWISE__ROW_RATIO, + CPU_COMPONENT_HEIGHT, + CPU_COMPONENT_STEP, + LAYOUT_CODE, + PEDERSEN_BUILTIN_ROW_RATIO, + POSEIDON__ROW_RATIO, + RANGE_CHECK_BUILTIN_ROW_RATIO, +) +from starkware.cairo.stark_verifier.air.public_input import PublicInput, SegmentInfo +from starkware.cairo.stark_verifier.air.public_memory import AddrValue +from starkware.cairo.stark_verifier.core.domains import StarkDomains + +const MAX_LOG_N_STEPS = 50; +const MAX_RANGE_CHECK = 2 ** 16 - 1; + +namespace segments { + const PROGRAM = 0; + const EXECUTION = 1; + const OUTPUT = 2; + const PEDERSEN = 3; + const RANGE_CHECK = 4; + const BITWISE = 5; + const POSEIDON = 6; + const N_SEGMENTS = 7; +} + +const INITIAL_PC = 1; +const FINAL_PC = INITIAL_PC + 4; + +// Returns a zero-terminated list of builtins supported by this layout. +func get_layout_builtins() -> (n_builtins: felt, builtins: felt*) { + let (builtins_address) = get_label_location(data); + let n_builtins = 5; + assert builtins_address[n_builtins] = 0; + return (n_builtins=n_builtins, builtins=builtins_address); + + data: + dw 'output'; + dw 'pedersen'; + dw 'range_check'; + dw 'bitwise'; + dw 'poseidon'; + dw 0; +} + +// Verifies that the public input represents a valid Cairo statement: there exists a memory +// assignment and a valid corresponding program trace satisfying the public memory requirements. +// +// This function verifies that: +// * The 16-bit range-checks are properly configured +// (0 <= range_check_min <= range_check_max < 2^16). +// * The layout is valid. +// * The segments for the builtins do not exceed their maximum length (thus, +// when these builtins are properly used in the program, they will function correctly). +// +// This function DOES NOT verify anything regarding the public memory. This should be verified +// by the user. In particular, it is not validated that: +// * [initial_fp - 2] = initial_fp, which is required to guarantee the "safe call" +// feature (that is, all "call" instructions will return, even if the called function is +// malicious). It guarantees that it's not possible to create a cycle in the call stack. +// * the arguments and return values for main() are properly set (e.g., the segment +// pointers). +// * the requested program is loaded, starting from initial_pc. +// * final_pc points to the end of the program. +// * program output is valid in any sense. +// * The continuous pages are consistent. See public_memory.cairo. +func public_input_validate{range_check_ptr}( + air: AirWithLayout*, public_input: PublicInput*, stark_domains: StarkDomains* +) { + alloc_locals; + + assert_nn_le(public_input.log_n_steps, MAX_LOG_N_STEPS); + let (local n_steps) = pow(2, public_input.log_n_steps); + tempvar trace_length = stark_domains.trace_domain_size; + assert n_steps * CPU_COMPONENT_HEIGHT * CPU_COMPONENT_STEP = trace_length; + + assert_le(0, public_input.range_check_min); + assert_le(public_input.range_check_min, public_input.range_check_max); + assert_le(public_input.range_check_max, MAX_RANGE_CHECK); + + assert public_input.layout = LAYOUT_CODE; + + // Segments. + let n_output_uses = ( + public_input.segments[segments.OUTPUT].stop_ptr - + public_input.segments[segments.OUTPUT].begin_addr + ); + assert_nn(n_output_uses); + + assert public_input.n_segments = segments.N_SEGMENTS; + + let n_pedersen_copies = trace_length / PEDERSEN_BUILTIN_ROW_RATIO; + let n_pedersen_uses = ( + public_input.segments[segments.PEDERSEN].stop_ptr - + public_input.segments[segments.PEDERSEN].begin_addr + ) / 3; + // Note that the following call implies that trace_length is divisible by + // PEDERSEN_BUILTIN_ROW_RATIO + // and that stop_ptr - begin_addr is divisible by 3. + assert_nn_le(n_pedersen_uses, n_pedersen_copies); + + let n_range_check_copies = trace_length / RANGE_CHECK_BUILTIN_ROW_RATIO; + let n_range_check_uses = ( + public_input.segments[segments.RANGE_CHECK].stop_ptr - + public_input.segments[segments.RANGE_CHECK].begin_addr + ); + // Note that the following call implies that trace_length is divisible by + // RANGE_CHECK_BUILTIN_ROW_RATIO. + assert_nn_le(n_range_check_uses, n_range_check_copies); + + let n_bitwise_copies = trace_length / BITWISE__ROW_RATIO; + let n_bitwise_uses = ( + public_input.segments[segments.BITWISE].stop_ptr - + public_input.segments[segments.BITWISE].begin_addr + ) / 5; + // Note that the following call implies that trace_length is divisible by + // BITWISE__ROW_RATIO + // and that stop_ptr - begin_addr is divisible by 5. + assert_nn_le(n_bitwise_uses, n_bitwise_copies); + + let n_poseidon_copies = trace_length / POSEIDON__ROW_RATIO; + let n_poseidon_uses = ( + public_input.segments[segments.POSEIDON].stop_ptr - + public_input.segments[segments.POSEIDON].begin_addr + ) / 6; + // Note that the following call implies that trace_length is divisible by + // POSEIDON__ROW_RATIO + // and that stop_ptr - begin_addr is divisible by 6. + assert_nn_le(n_poseidon_uses, n_poseidon_copies); + + return (); +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/verify.cairo b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/verify.cairo new file mode 100644 index 00000000..3fe1b55b --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/layouts/recursive_with_poseidon/verify.cairo @@ -0,0 +1,81 @@ +from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin +from starkware.cairo.common.hash import HashBuiltin +from starkware.cairo.common.registers import get_label_location +from starkware.cairo.stark_verifier.air.layout import AirWithLayout, Layout +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.autogenerated import ( + CONSTRAINT_DEGREE, + MASK_SIZE, + N_CONSTRAINTS, + N_DYNAMIC_PARAMS, + NUM_COLUMNS_FIRST, + NUM_COLUMNS_SECOND, + eval_oods_polynomial, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.composition import ( + traces_eval_composition_polynomial, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.global_values import ( + InteractionElements, +) +from starkware.cairo.stark_verifier.air.layouts.recursive_with_poseidon.public_verify import ( + public_input_validate, +) +from starkware.cairo.stark_verifier.air.oods import eval_oods_boundary_poly_at_points +from starkware.cairo.stark_verifier.air.public_input import public_input_hash +from starkware.cairo.stark_verifier.air.traces import ( + traces_commit, + traces_config_validate, + traces_decommit, +) +from starkware.cairo.stark_verifier.core.air_interface import AirInstance +from starkware.cairo.stark_verifier.core.stark import StarkProof, verify_stark_proof + +// Builds an AirInstance object to use for STARK verification. See AirInstance at +// air_interface.cairo. +func build_air() -> (air: AirWithLayout*) { + let (arg_public_input_hash) = get_label_location(public_input_hash); + let (arg_public_input_validate) = get_label_location(public_input_validate); + let (arg_traces_config_validate) = get_label_location(traces_config_validate); + let (arg_traces_commit) = get_label_location(traces_commit); + let (arg_traces_decommit) = get_label_location(traces_decommit); + let (arg_traces_eval_composition_polynomial) = get_label_location( + traces_eval_composition_polynomial + ); + let (arg_eval_oods_boundary_poly_at_points) = get_label_location( + eval_oods_boundary_poly_at_points + ); + let (arg_eval_oods_polynomial) = get_label_location(eval_oods_polynomial); + + tempvar air = new AirWithLayout( + air=AirInstance( + public_input_hash=arg_public_input_hash, + public_input_validate=arg_public_input_validate, + traces_config_validate=arg_traces_config_validate, + traces_commit=arg_traces_commit, + traces_decommit=arg_traces_decommit, + traces_eval_composition_polynomial=arg_traces_eval_composition_polynomial, + eval_oods_boundary_poly_at_points=arg_eval_oods_boundary_poly_at_points, + n_dynamic_params=N_DYNAMIC_PARAMS, + n_constraints=N_CONSTRAINTS, + constraint_degree=CONSTRAINT_DEGREE, + mask_size=MASK_SIZE, + ), + layout=Layout( + eval_oods_polynomial=arg_eval_oods_polynomial, + n_original_columns=NUM_COLUMNS_FIRST, + n_interaction_columns=NUM_COLUMNS_SECOND, + n_interaction_elements=InteractionElements.SIZE, + ), + ); + return (air=air); +} + +func verify_proof{ + range_check_ptr, + pedersen_ptr: HashBuiltin*, + bitwise_ptr: BitwiseBuiltin*, + poseidon_ptr: PoseidonBuiltin*, +}(proof: StarkProof*, security_bits: felt) -> () { + let (air) = build_air(); + return verify_stark_proof(air=&air.air, proof=proof, security_bits=security_bits); +} diff --git a/src/starkware/cairo/stark_verifier/air/layouts/small/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/small/autogenerated.cairo index 420ed654..09f0dc04 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/small/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/small/autogenerated.cairo @@ -28,6 +28,7 @@ const HAS_BITWISE_BUILTIN = 0; const HAS_EC_OP_BUILTIN = 0; const HAS_KECCAK_BUILTIN = 0; const HAS_POSEIDON_BUILTIN = 0; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x736d616c6c; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; diff --git a/src/starkware/cairo/stark_verifier/air/layouts/starknet/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/starknet/autogenerated.cairo index d77caae9..aba787d5 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/starknet/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/starknet/autogenerated.cairo @@ -42,6 +42,7 @@ const HAS_BITWISE_BUILTIN = 1; const HAS_EC_OP_BUILTIN = 1; const HAS_KECCAK_BUILTIN = 0; const HAS_POSEIDON_BUILTIN = 1; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x737461726b6e6574; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; diff --git a/src/starkware/cairo/stark_verifier/air/layouts/starknet_with_keccak/autogenerated.cairo b/src/starkware/cairo/stark_verifier/air/layouts/starknet_with_keccak/autogenerated.cairo index daed6599..cf615078 100644 --- a/src/starkware/cairo/stark_verifier/air/layouts/starknet_with_keccak/autogenerated.cairo +++ b/src/starkware/cairo/stark_verifier/air/layouts/starknet_with_keccak/autogenerated.cairo @@ -46,6 +46,7 @@ const HAS_BITWISE_BUILTIN = 1; const HAS_EC_OP_BUILTIN = 1; const HAS_KECCAK_BUILTIN = 1; const HAS_POSEIDON_BUILTIN = 1; +const HAS_RANGE_CHECK96_BUILTIN = 0; const LAYOUT_CODE = 0x737461726b6e65745f776974685f6b656363616b; const CONSTRAINT_DEGREE = 2; const LOG_CPU_COMPONENT_HEIGHT = 4; diff --git a/src/starkware/cairo/stark_verifier/air/parser.py b/src/starkware/cairo/stark_verifier/air/parser.py index 40ec7ee1..4ddb9edd 100644 --- a/src/starkware/cairo/stark_verifier/air/parser.py +++ b/src/starkware/cairo/stark_verifier/air/parser.py @@ -8,6 +8,7 @@ from starkware.cairo.lang.compiler.scoped_name import ScopedName from starkware.cairo.lang.vm.air_public_input import PublicInput, extract_z_and_alpha from starkware.cairo.stark_verifier.air.utils import public_input_to_cairo +from starkware.cairo.stark_verifier.core.supported_proof_params import are_parameters_supported from starkware.python.math_utils import safe_log2 from starkware.python.utils import safe_zip @@ -20,6 +21,7 @@ "starknet", "all_cairo", "starknet_with_keccak", + "recursive_with_poseidon", ] ADDITIONAL_IMPORTS = [ "starkware.cairo.stark_verifier.air.config.TracesConfig", @@ -91,7 +93,7 @@ def annotations(prefix: str, kind: str): (composition_commitment_hash,) = annotations( "STARK/Out Of Domain Sampling/Commit on Trace", "Hash" ) - oods_values = annotations("STARK/Out Of Domain Sampling/OODS values", "Field Element") + oods_values = annotations("STARK/Out Of Domain Sampling/OODS values", "Field Elements") fri_layers_commitments = annotations("STARK/FRI/Commitment/Layer [0-9]+", "Hash") fri_last_layer_coefficients = annotations("STARK/FRI/Commitment/Last Layer", "Field Elements") (proof_of_work_nonce,) = annotations("STARK/FRI/Proof of Work", "Data") @@ -122,6 +124,8 @@ def get_authentications(prefix: str): "STARK/FRI/Decommitment/Layer 0/Virtual Oracle/Trace 2" ) + assert are_parameters_supported(proof_json["proof_parameters"]) + fri_step_list = proof_json["proof_parameters"]["stark"]["fri"]["fri_step_list"] n_fri_layers = len(fri_step_list) fri_witnesses = [] diff --git a/src/starkware/cairo/stark_verifier/air/public_input.cairo b/src/starkware/cairo/stark_verifier/air/public_input.cairo index 2b932123..2ca80415 100644 --- a/src/starkware/cairo/stark_verifier/air/public_input.cairo +++ b/src/starkware/cairo/stark_verifier/air/public_input.cairo @@ -1,13 +1,6 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash_many -from starkware.cairo.common.cairo_blake2s.blake2s import ( - blake2s_add_felt, - blake2s_add_felts, - blake2s_add_uint256_bigend, - blake2s_bigend, - blake2s_felts, -) -from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin +from starkware.cairo.common.cairo_builtins import PoseidonBuiltin from starkware.cairo.common.hash import HashBuiltin from starkware.cairo.common.hash_state import hash_finalize, hash_init, hash_update from starkware.cairo.common.math import assert_le, assert_nn, assert_nn_le, split_felt @@ -20,11 +13,7 @@ from starkware.cairo.stark_verifier.air.public_memory import ( get_continuous_pages_product, get_page_product, ) -from starkware.cairo.stark_verifier.core.serialize_utils import ( - append_felt, - append_felts, - append_uint256, -) +from starkware.cairo.stark_verifier.core.serialize_utils import append_felt, append_felts struct PublicInput { // Base 2 log of the number of steps. @@ -66,7 +55,7 @@ struct SegmentInfo { // heuristic. func public_input_hash{range_check_ptr, pedersen_ptr: HashBuiltin*, poseidon_ptr: PoseidonBuiltin*}( air: AirWithLayout*, public_input: PublicInput* -) -> (res: Uint256) { +) -> (res: felt) { alloc_locals; // Main page hash. @@ -105,8 +94,7 @@ func public_input_hash{range_check_ptr, pedersen_ptr: HashBuiltin*, poseidon_ptr } let (res) = poseidon_hash_many(n=data - data_start, elements=data_start); - let (high, low) = split_felt(value=res); - return (res=Uint256(low=low, high=high)); + return (res=res); } func add_continuous_page_headers{range_check_ptr, data: felt*}( diff --git a/src/starkware/cairo/stark_verifier/air/public_input_test.py b/src/starkware/cairo/stark_verifier/air/public_input_test.py new file mode 100644 index 00000000..5da55afc --- /dev/null +++ b/src/starkware/cairo/stark_verifier/air/public_input_test.py @@ -0,0 +1,158 @@ +import itertools +import json +import os + +import pytest + +from starkware.cairo.common.cairo_function_runner import CairoFunctionRunner +from starkware.cairo.common.structs import CairoStructFactory +from starkware.cairo.common.validate_utils import validate_builtin_usage +from starkware.cairo.lang.cairo_constants import DEFAULT_PRIME +from starkware.cairo.lang.compiler.cairo_compile import compile_cairo_files +from starkware.cairo.lang.compiler.scoped_name import ScopedName +from starkware.cairo.lang.vm.air_public_input import ( + PublicInput, + extract_z_and_alpha, + get_pages_and_products, +) +from starkware.cairo.stark_verifier.air.utils import ( + compute_continuous_page_headers, + public_input_to_cairo, +) +from starkware.python.math_utils import safe_div + +CAIRO_FILE = os.path.join(os.path.dirname(__file__), "public_input.cairo") +PROOF_FILE = os.path.join(os.path.dirname(__file__), "example_proof.json") +DYNAMIC_LAYOUT_PROOF_FILE = "src/starkware/cairo/stark_verifier/air/dynamic_layout_proof.json" +EXPECTED_FILE = os.path.join(os.path.dirname(__file__), "example_expected.json") + + +@pytest.fixture(scope="session") +def program(): + return compile_cairo_files( + [CAIRO_FILE], + prime=DEFAULT_PRIME, + debug_info=True, + main_scope=ScopedName.from_string("starkware.cairo.stark_verifier.air.public_input"), + ) + + +@pytest.fixture +def structs(program): + return CairoStructFactory.from_program( + program, + additional_imports=[ + "starkware.cairo.stark_verifier.air.public_input.PublicInput", + "starkware.cairo.stark_verifier.air.public_input.SegmentInfo", + "starkware.cairo.stark_verifier.air.public_memory.ContinuousPageHeader", + "starkware.cairo.stark_verifier.core.air_interface.AirInstance", + ], + ).structs + + +@pytest.mark.parametrize( + "proof_file, expected_json_key", + [ + (PROOF_FILE, "public_input_test"), + (DYNAMIC_LAYOUT_PROOF_FILE, "dynamic_layout_public_input_test"), + ], +) +def test_public_input_to_cairo(program, structs, proof_file, expected_json_key): + with open(proof_file, "r") as fp: + proof_json = json.load(fp) + z, alpha = extract_z_and_alpha(proof_json["annotations"]) + public_input: PublicInput = PublicInput.Schema().load(proof_json["public_input"]) + cairo_public_input = public_input_to_cairo( + structs=structs, public_input=public_input, z=z, alpha=alpha + ) + air_instance = structs.AirInstance( + public_input_hash=0, + public_input_validate=0, + traces_config_validate=0, + traces_commit=0, + traces_decommit=0, + traces_eval_composition_polynomial=0, + eval_oods_boundary_poly_at_points=0, + n_dynamic_params=len(public_input.dynamic_params) + if public_input.dynamic_params is not None + else 0, + n_constraints=0, + constraint_degree=0, + mask_size=0, + ) + + runner = CairoFunctionRunner(program, layout="small") + runner.run( + "public_input_hash", + range_check_ptr=runner.range_check_builtin.base, + pedersen_ptr=runner.pedersen_builtin.base, + poseidon_ptr=runner.poseidon_builtin.base, + air=air_instance, + public_input=cairo_public_input, + ) + ( + range_check_ptr, + pedersen_ptr, + poseidon_ptr, + res, + ) = runner.get_return_values(4) + validate_builtin_usage(runner.range_check_builtin, range_check_ptr) + validate_builtin_usage(runner.pedersen_builtin, pedersen_ptr) + validate_builtin_usage(runner.poseidon_builtin, poseidon_ptr) + + # Note: This value is also checked in the C++ implementation. + with open(EXPECTED_FILE, "r") as fp: + expected_json = json.load(fp)[expected_json_key] + assert "0x" + res.to_bytes(32, "big").hex() == expected_json["initial_hash_chain_seed"] + + +def test_public_input_page_product(program): + with open(PROOF_FILE, "r") as fp: + proof_json = json.load(fp) + public_input: PublicInput = PublicInput.Schema().load(proof_json["public_input"]) + z, alpha = extract_z_and_alpha(proof_json["annotations"]) + pages, page_prods = get_pages_and_products( + public_memory=public_input.public_memory, z=z, alpha=alpha + ) + + runner = CairoFunctionRunner(program, layout="small") + runner.run( + "get_page_product", + z=z, + alpha=alpha, + data_len=safe_div(len(pages[0]), 2), + data=pages[0], + ) + (res,) = runner.get_return_values(1) + assert res == page_prods[0] + + +def test_public_input_continuous_pages_product(program): + with open(PROOF_FILE, "r") as fp: + proof_json = json.load(fp) + public_input: PublicInput = PublicInput.Schema().load(proof_json["public_input"]) + z, alpha = extract_z_and_alpha(proof_json["annotations"]) + _, page_prods = get_pages_and_products( + public_memory=public_input.public_memory, z=z, alpha=alpha + ) + + continuous_page_headers = compute_continuous_page_headers( + public_memory=public_input.public_memory, z=z, alpha=alpha + ) + n_continuous_pages = len(continuous_page_headers) + continuous_page_headers_cairo = list(itertools.chain(*continuous_page_headers)) + + runner = CairoFunctionRunner(program, layout="small") + runner.run( + "get_continuous_pages_product", + n_pages=n_continuous_pages, + page_headers=continuous_page_headers_cairo, + ) + (res, total_length) = runner.get_return_values(2) + expected_prod = 1 + expected_length = sum(size for (_, size, _, _) in continuous_page_headers) + for page, prod in page_prods.items(): + if page != 0: + expected_prod = (expected_prod * prod) % DEFAULT_PRIME + assert res == expected_prod + assert total_length == expected_length diff --git a/src/starkware/cairo/stark_verifier/air/traces.cairo b/src/starkware/cairo/stark_verifier/air/traces.cairo index 53b5e0a3..d30bcae2 100644 --- a/src/starkware/cairo/stark_verifier/air/traces.cairo +++ b/src/starkware/cairo/stark_verifier/air/traces.cairo @@ -66,9 +66,7 @@ struct TracesWitness { // Reads the traces commitment from the channel. // Returns the commitment, along with GlobalValue required to evaluate the constraint polynomial. -func traces_commit{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}( +func traces_commit{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}( air: AirWithLayout*, public_input: PublicInput*, unsent_commitment: TracesUnsentCommitment*, diff --git a/src/starkware/cairo/stark_verifier/core/BUILD b/src/starkware/cairo/stark_verifier/core/BUILD index 27ed0805..2e0e2951 100644 --- a/src/starkware/cairo/stark_verifier/core/BUILD +++ b/src/starkware/cairo/stark_verifier/core/BUILD @@ -31,6 +31,7 @@ cairo_library( visibility = ["//visibility:public"], deps = [ "//src/starkware/cairo/common:cairo_common_cairo_lib", + "//src/starkware/cairo/stark_verifier/core:serialize", ], ) @@ -49,6 +50,13 @@ cairo_library( ], ) +py_library( + name = "supported_proof_params", + srcs = [ + "supported_proof_params.py", + ], +) + pytest_test( name = "starkware_cairo_stark_verifier_core_test", srcs = [ diff --git a/src/starkware/cairo/stark_verifier/core/air_interface.cairo b/src/starkware/cairo/stark_verifier/core/air_interface.cairo index 16c7d264..26e0dc70 100644 --- a/src/starkware/cairo/stark_verifier/core/air_interface.cairo +++ b/src/starkware/cairo/stark_verifier/core/air_interface.cairo @@ -1,6 +1,5 @@ from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin from starkware.cairo.common.hash import HashBuiltin -from starkware.cairo.common.uint256 import Uint256 from starkware.cairo.stark_verifier.core.channel import Channel from starkware.cairo.stark_verifier.core.domains import StarkDomains from starkware.cairo.stark_verifier.core.table_commitment import TableDecommitment @@ -49,7 +48,7 @@ struct AirInstance { func public_input_hash{range_check_ptr, pedersen_ptr: HashBuiltin*, poseidon_ptr: PoseidonBuiltin*}( air: AirInstance*, public_input: PublicInput* -) -> (res: Uint256) { +) -> (res: felt) { jmp abs air.public_input_hash; } @@ -68,9 +67,7 @@ func traces_config_validate{range_check_ptr}( jmp abs air.traces_config_validate; } -func traces_commit{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}( +func traces_commit{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}( air: AirInstance*, public_input: PublicInput*, unsent_commitment: TracesUnsentCommitment*, diff --git a/src/starkware/cairo/stark_verifier/core/channel.cairo b/src/starkware/cairo/stark_verifier/core/channel.cairo index 67874ec9..5b31b03c 100644 --- a/src/starkware/cairo/stark_verifier/core/channel.cairo +++ b/src/starkware/cairo/stark_verifier/core/channel.cairo @@ -1,29 +1,18 @@ from starkware.cairo.common.alloc import alloc -from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash_many -from starkware.cairo.common.cairo_blake2s.blake2s import ( - blake2s_add_felt, - blake2s_add_uint256_bigend, - blake2s_bigend, -) -from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin -from starkware.cairo.common.hash_state import hash_felts -from starkware.cairo.common.math import ( - assert_nn, - assert_nn_le, - assert_not_equal, - split_felt, - unsigned_div_rem, -) -from starkware.cairo.common.uint256 import Uint256, uint256_lt +from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash, poseidon_hash_many +from starkware.cairo.common.cairo_builtins import PoseidonBuiltin +from starkware.cairo.common.math import assert_nn, assert_nn_le +from starkware.cairo.stark_verifier.core.serialize_utils import append_felt, append_felts // The Prover uses Montgomery form with R = 2**256 for field elements. This effects the // non-interactive communication in several places. const MONTGOMERY_R = 2 ** 256; -// Represents a non-interactive communication channel using the Fiat Shamir heuristic. +// Represents a non-interactive verifier-friendly communication channel using the Fiat Shamir +// heuristic. // In this context, "reading from the prover" means hashing a value into the state. struct Channel { - digest: Uint256, + digest: felt, counter: felt, } @@ -39,148 +28,65 @@ struct ChannelSentFelt { value: felt, } -func channel_new(digest: Uint256) -> (res: Channel) { +func channel_new(digest: felt) -> (res: Channel) { return (res=Channel(digest=digest, counter=0)); } // Generate randomness. -func random_uint256_to_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}() -> (res: Uint256) { +func random_felt_to_prover{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}() -> ( + res: felt +) { alloc_locals; - let (data: felt*) = alloc(); - let data_start = data; - blake2s_add_uint256_bigend{data=data}(channel.digest); - blake2s_add_uint256_bigend{data=data}(Uint256(low=channel.counter, high=0)); - let (res) = blake2s_bigend(data=data_start, n_bytes=64); + let (felt_to_prover: felt) = poseidon_hash(x=channel.digest, y=channel.counter); let channel = Channel(digest=channel.digest, counter=channel.counter + 1); - - return (res=res); + return (res=felt_to_prover); } -func random_felts_to_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(n_elements: felt, elements: felt*) -> () { - alloc_locals; +func random_felts_to_prover{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}( + n_elements: felt, elements: felt* +) -> () { if (n_elements == 0) { return (); } - - let (local num: Uint256) = random_uint256_to_prover(); - local channel: Channel = channel; - - // To ensure a uniform distribution over field elements, if the generated 256-bit number x is in - // range [0, C * PRIME), take x % PRIME. Otherwise, regenerate. - // The maximal possible C is 2**256//PRIME = 31. - - const C_PRIME_AS_UINT256_LOW = 31 * 1; - const C_PRIME_AS_UINT256_HIGH = 31 * 0x8000000000000110000000000000000; - let (is_felt) = uint256_lt( - num, Uint256(low=C_PRIME_AS_UINT256_LOW, high=C_PRIME_AS_UINT256_HIGH) - ); - if (is_felt != 0) { - // Note: This may overflow, but the computation should be done mod PRIME anyway. - assert [elements] = (num.low + num.high * 2 ** 128) / MONTGOMERY_R; - return random_felts_to_prover(n_elements=n_elements - 1, elements=&elements[1]); - } else { - return random_felts_to_prover(n_elements=n_elements, elements=elements); - } -} - -// This in an inner function, it should not be used. Use read_felt_from_prover or -// read_montgomery_form_felt_from_prover instead. -func read_felt_from_prover_inner{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(value: felt) -> () { alloc_locals; - let (data: felt*) = alloc(); - let data_start = data; - assert_not_equal(channel.digest.low, 2 ** 128 - 1); - blake2s_add_uint256_bigend{data=data}( - Uint256(low=channel.digest.low + 1, high=channel.digest.high) - ); + let (value: felt) = random_felt_to_prover(); - blake2s_add_felt{data=data}(num=value, bigend=1); - let (digest) = blake2s_bigend(data=data_start, n_bytes=64); - let channel = Channel(digest=digest, counter=0); - return (); -} - -// Reads a field element from the prover. See Channel. -func read_felt_from_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(value: ChannelUnsentFelt) -> (value: ChannelSentFelt) { - read_felt_from_prover_inner(value=value.value); - return (value=ChannelSentFelt(value.value)); + assert elements[0] = value; + return random_felts_to_prover(n_elements=n_elements - 1, elements=&elements[1]); } -// Reads a montgomery form represented field element from the prover. See Channel. -func read_montgomery_form_felt_from_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(value: ChannelUnsentFelt) -> (value: ChannelSentFelt) { - read_felt_from_prover_inner(value=value.value * MONTGOMERY_R); - return (value=ChannelSentFelt(value.value)); -} - -// Reads a 64bit integer from the prover. See Channel. -func read_uint64_from_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(value: ChannelUnsentFelt) -> (value: ChannelSentFelt) { - alloc_locals; - assert_nn_le(value.value, 2 ** 64 - 1); - let (data: felt*) = alloc(); - let data_start = data; - assert_not_equal(channel.digest.low, 2 ** 128 - 1); - blake2s_add_uint256_bigend{data=data}( - Uint256(low=channel.digest.low + 1, high=channel.digest.high) - ); - // Align 64 bit value to MSB. - blake2s_add_uint256_bigend{data=data}(Uint256(low=0, high=value.value * 2 ** 64)); - let (digest) = blake2s_bigend(data=data_start, n_bytes=0x28); +// Reads a field element from the prover. +func read_felt_from_prover{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}( + value: ChannelUnsentFelt +) -> (value: ChannelSentFelt) { + // Use poseidon_hash_many() instead of poseidon_hash() since the current prover handles all the + // data it sends as an array of arbitrary size. + let (digest: felt) = poseidon_hash_many(n=2, elements=new (channel.digest + 1, value.value)); let channel = Channel(digest=digest, counter=0); return (value=ChannelSentFelt(value.value)); } -// Reads multiple field elements from the prover. -// Calls read_felt_from_prover on the hash chain of values. See Channel. -func read_felts_from_prover{ - range_check_ptr, - blake2s_ptr: felt*, - bitwise_ptr: BitwiseBuiltin*, - poseidon_ptr: PoseidonBuiltin*, - channel: Channel, -}(n_values: felt, values: ChannelUnsentFelt*) -> (values: ChannelSentFelt*) { - alloc_locals; - let (unsent_felt_hash: felt) = poseidon_hash_many(n=n_values, elements=values); - read_felt_from_prover(ChannelUnsentFelt(unsent_felt_hash)); - return (values=cast(values, ChannelSentFelt*)); +// Reads a 64bit integer from the prover. +func read_uint64_from_prover{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, channel: Channel}( + value: ChannelUnsentFelt +) -> (value: ChannelSentFelt) { + assert_nn_le(value.value, 2 ** 64 - 1); + return read_felt_from_prover(value); } -// Reads a field element vector from the prover. Unlike read_felts_from_prover, this hashes all the -// field elements at once. See Channel. -func read_felt_vector_from_prover{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel -}(n_values: felt, values: ChannelUnsentFelt*) -> (values: ChannelSentFelt*) { +// Reads a field element vector from the prover. This hashes all the field elements at once. +func read_felt_vector_from_prover{poseidon_ptr: PoseidonBuiltin*, channel: Channel}( + n_values: felt, values: ChannelUnsentFelt* +) -> (values: ChannelSentFelt*) { + // For append_felts we assume ChannelUnsentFelt is a struct with one felt. + static_assert ChannelUnsentFelt.SIZE == 1; + static_assert ChannelSentFelt.SIZE == 1; alloc_locals; let (data: felt*) = alloc(); let data_start = data; - assert_not_equal(channel.digest.low, 2 ** 128 - 1); - blake2s_add_uint256_bigend{data=data}( - Uint256(low=channel.digest.low + 1, high=channel.digest.high) - ); - read_felt_vector_from_prover_inner{data=data}(n_values=n_values, values=values); - let (digest) = blake2s_bigend(data=data_start, n_bytes=32 * (1 + n_values)); + append_felt{data=data}(channel.digest + 1); + append_felts{data=data}(len=n_values, arr=values); + let (digest) = poseidon_hash_many(n=(1 + n_values), elements=data_start); let channel = Channel(digest=digest, counter=0); return (values=cast(values, ChannelSentFelt*)); } - -func read_felt_vector_from_prover_inner{ - range_check_ptr, bitwise_ptr: BitwiseBuiltin*, channel: Channel, data: felt* -}(n_values: felt, values: ChannelUnsentFelt*) -> () { - alloc_locals; - if (n_values == 0) { - return (); - } - blake2s_add_felt(num=values[0].value * MONTGOMERY_R, bigend=1); - return read_felt_vector_from_prover_inner(n_values=n_values - 1, values=&values[1]); -} diff --git a/src/starkware/cairo/stark_verifier/core/channel_test.cairo b/src/starkware/cairo/stark_verifier/core/channel_test.cairo index 7e62174e..111e82eb 100644 --- a/src/starkware/cairo/stark_verifier/core/channel_test.cairo +++ b/src/starkware/cairo/stark_verifier/core/channel_test.cairo @@ -1,35 +1,31 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin -from starkware.cairo.common.uint256 import Uint256 from starkware.cairo.stark_verifier.core.channel import ( Channel, - channel_new, ChannelSentFelt, ChannelUnsentFelt, + channel_new, random_felts_to_prover, - random_uint256_to_prover, read_felt_from_prover, read_felt_vector_from_prover, - read_felts_from_prover, ) -func test_to{range_check_ptr, bitwise_ptr: BitwiseBuiltin*, blake2s_ptr: felt*}() { +func test_to{range_check_ptr, poseidon_ptr: PoseidonBuiltin*}() { alloc_locals; let channel = Channel( - digest=Uint256(0xf7685ebd40e852b164633a4acbd3244c, 0xe8e77626586f73b955364c7b4bbf0bb7), - counter=0, + digest=0xf7685ebd40e852b164633a4acbd3244ce8e77626586f73b955364c7b4bbf0bb7, counter=0 ); with channel { let (local elements) = alloc(); random_felts_to_prover(n_elements=3, elements=elements); assert elements[0] = ( - 3199910790894706855027093840383592257502485581126271436027309705477370004002 + 3533027684628956165978305876325630627835096878181671876090486602645253128476 ); assert elements[1] = ( - 2678311171676075552444787698918310126938416157877134200897080931937186268438 + 2370447022038372734218915542001411042819539837715200287809352900631960083160 ); assert elements[2] = ( - 2409925148191156067407217062797240658947927224212800962983204460004996362724 + 1778214449671764181199601003651150149450981695342251013132258932091844223356 ); } return (); @@ -42,23 +38,26 @@ func test_from{ blake2s_ptr: felt*, }() { alloc_locals; - let (channel) = channel_new(digest=Uint256(0, 0)); + let (channel) = channel_new(digest=0); local original_channel: Channel = channel; with channel { let (unsent_values: ChannelUnsentFelt*) = alloc(); let (value) = read_felt_from_prover(ChannelUnsentFelt(2 ** 160 - 1)); assert value = ChannelSentFelt(2 ** 160 - 1); - assert channel.digest = Uint256( - 56167004286255481276482511662906702549, 234392798194350380932282913623756516436 + assert channel.digest = ( + 2404923971468808986284442513933980719024739752676849841176381572976693688852 ); assert channel.counter = 0; // Read multiple felts. let (local unsent_values: ChannelUnsentFelt*) = alloc(); %{ segments.write_arg(ids.unsent_values.address_, [2, 3, -1]) %} - let (values: ChannelSentFelt*) = read_felts_from_prover(n_values=3, values=unsent_values); - assert channel.digest = Uint256( - 47547812859369363998814902207770993924, 1608236828616150246586483550494227200 + let (values: ChannelSentFelt*) = read_felt_vector_from_prover( + n_values=3, values=unsent_values + ); + + assert channel.digest = ( + 1848207095114937558943660674287355925302688287066418881756845813317170906578 ); assert channel.counter = 0; %{ @@ -71,8 +70,8 @@ func test_from{ let (values: ChannelSentFelt*) = read_felt_vector_from_prover( n_values=3, values=unsent_values ); - assert channel.digest = Uint256( - 99187703120054526272510070059613554509, 86706774425421007726473690540494703876 + assert channel.digest = ( + 2811328047807283001311630152648722329959705504374865176374307731762269234748 ); assert channel.counter = 0; %{ diff --git a/src/starkware/cairo/stark_verifier/core/fri/fri.cairo b/src/starkware/cairo/stark_verifier/core/fri/fri.cairo index 6eb66718..beb9135b 100644 --- a/src/starkware/cairo/stark_verifier/core/fri/fri.cairo +++ b/src/starkware/cairo/stark_verifier/core/fri/fri.cairo @@ -95,9 +95,9 @@ struct FriLayerWitness { // Commit function of the FRI component. // Implements the commit phase of the FRI protocol. -func fri_commit{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}(unsent_commitment: FriUnsentCommitment*, config: FriConfig*) -> (commitment: FriCommitment*) { +func fri_commit{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( + unsent_commitment: FriUnsentCommitment*, config: FriConfig* +) -> (commitment: FriCommitment*) { alloc_locals; let (inner_layer_commitments: TableCommitment**) = alloc(); let (eval_points: felt*) = alloc(); @@ -134,9 +134,7 @@ func fri_commit{ // Performs FRI commitment phase rounds. Each round reads a commitment on a layer, and sends an // evaluation point for the next round. -func fri_commit_rounds{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}( +func fri_commit_rounds{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( n_layers: felt, configs: TableCommitmentConfig*, unsent_commitments: TableUnsentCommitment*, diff --git a/src/starkware/cairo/stark_verifier/core/proof_of_work.cairo b/src/starkware/cairo/stark_verifier/core/proof_of_work.cairo index 50fbdc64..0de4bacb 100644 --- a/src/starkware/cairo/stark_verifier/core/proof_of_work.cairo +++ b/src/starkware/cairo/stark_verifier/core/proof_of_work.cairo @@ -1,9 +1,9 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.cairo_blake2s.blake2s import blake2s_add_uint256_bigend, blake2s_bigend -from starkware.cairo.common.cairo_builtins import BitwiseBuiltin +from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin from starkware.cairo.common.math import assert_in_range, assert_lt, assert_nn_le, unsigned_div_rem from starkware.cairo.common.pow import pow -from starkware.cairo.common.uint256 import Uint256 +from starkware.cairo.common.uint256 import Uint256, felt_to_uint256 from starkware.cairo.stark_verifier.core.channel import ( Channel, ChannelSentFelt, @@ -33,10 +33,14 @@ func proof_of_work_config_validate{range_check_ptr}(config: ProofOfWorkConfig*) // Assumption: 0 < n_bits <= 64. func proof_of_work_commit{ - range_check_ptr, blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel + range_check_ptr, + blake2s_ptr: felt*, + bitwise_ptr: BitwiseBuiltin*, + poseidon_ptr: PoseidonBuiltin*, + channel: Channel, }(unsent_commitment: ProofOfWorkUnsentCommitment*, config: ProofOfWorkConfig*) { alloc_locals; - let digest = channel.digest; + let digest = felt_to_uint256(channel.digest); let (nonce) = read_uint64_from_prover(unsent_commitment.nonce); verify_proof_of_work(digest=digest, n_bits=config.n_bits, nonce=nonce); return (); diff --git a/src/starkware/cairo/stark_verifier/core/queries.cairo b/src/starkware/cairo/stark_verifier/core/queries.cairo index e1b04dce..4f8fff05 100644 --- a/src/starkware/cairo/stark_verifier/core/queries.cairo +++ b/src/starkware/cairo/stark_verifier/core/queries.cairo @@ -1,16 +1,16 @@ from starkware.cairo.common.alloc import alloc -from starkware.cairo.common.cairo_builtins import BitwiseBuiltin -from starkware.cairo.common.math import assert_le, unsigned_div_rem +from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin +from starkware.cairo.common.math import assert_le, split_felt, unsigned_div_rem from starkware.cairo.common.pow import pow from starkware.cairo.common.usort import usort -from starkware.cairo.stark_verifier.core.channel import Channel, random_uint256_to_prover +from starkware.cairo.stark_verifier.core.channel import Channel, random_felt_to_prover from starkware.cairo.stark_verifier.core.config import FIELD_GENERATOR, StarkDomains from starkware.cairo.stark_verifier.core.utils import bit_reverse_u64 // Samples random queries from the verifier. -func generate_queries{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}(n_samples: felt, stark_domains: StarkDomains*) -> (n_queries: felt, queries: felt*) { +func generate_queries{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( + n_samples: felt, stark_domains: StarkDomains* +) -> (n_queries: felt, queries: felt*) { alloc_locals; // Sample query indices from the channel. @@ -26,27 +26,20 @@ func generate_queries{ return (n_queries=n_queries, queries=queries); } -func sample_random_queries{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}(n_samples: felt, samples: felt*, query_upper_bound: felt) { - // Since samples are generated in quadruplets, we might generate up to 3 extra query indices. - // Return if we n_samples is 0, -1, -2 or -3. - if (n_samples * (n_samples + 1) * (n_samples + 2) * (n_samples + 3) == 0) { +func sample_random_queries{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( + n_samples: felt, samples: felt*, query_upper_bound: felt +) { + if (n_samples == 0) { return (); } - let (res) = random_uint256_to_prover(); - let (hh, hl) = unsigned_div_rem(res.high, 2 ** 64); - let (lh, ll) = unsigned_div_rem(res.low, 2 ** 64); - let (_, r0) = unsigned_div_rem(hh, query_upper_bound); - let (_, r1) = unsigned_div_rem(hl, query_upper_bound); - let (_, r2) = unsigned_div_rem(lh, query_upper_bound); - let (_, r3) = unsigned_div_rem(ll, query_upper_bound); - assert samples[0] = r0; - assert samples[1] = r1; - assert samples[2] = r2; - assert samples[3] = r3; + + let (rand_felt) = random_felt_to_prover(); + let (_, low128) = split_felt(rand_felt); + let (_, sample) = unsigned_div_rem(low128, query_upper_bound); + assert samples[0] = sample; + return sample_random_queries( - n_samples=n_samples - 4, samples=&samples[4], query_upper_bound=query_upper_bound + n_samples=n_samples - 1, samples=&samples[1], query_upper_bound=query_upper_bound ); } diff --git a/src/starkware/cairo/stark_verifier/core/stark.cairo b/src/starkware/cairo/stark_verifier/core/stark.cairo index 99c523cf..b422ed78 100644 --- a/src/starkware/cairo/stark_verifier/core/stark.cairo +++ b/src/starkware/cairo/stark_verifier/core/stark.cairo @@ -2,7 +2,6 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.cairo_blake2s.blake2s import finalize_blake2s from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin from starkware.cairo.common.hash import HashBuiltin -from starkware.cairo.common.uint256 import Uint256 from starkware.cairo.stark_verifier.core.air_interface import ( AirInstance, OodsEvaluationInfo, @@ -25,7 +24,7 @@ from starkware.cairo.stark_verifier.core.channel import ( ChannelUnsentFelt, channel_new, random_felts_to_prover, - read_felts_from_prover, + read_felt_vector_from_prover, ) from starkware.cairo.stark_verifier.core.config import ( StarkConfig, @@ -251,7 +250,7 @@ func stark_commit{ // Read OODS values. local n_oods_values = air.mask_size + air.constraint_degree; - let (sent_oods_values) = read_felts_from_prover( + let (sent_oods_values) = read_felt_vector_from_prover( n_values=n_oods_values, values=unsent_commitment.oods_values ); diff --git a/src/starkware/cairo/stark_verifier/core/supported_proof_params.py b/src/starkware/cairo/stark_verifier/core/supported_proof_params.py new file mode 100644 index 00000000..73f06cac --- /dev/null +++ b/src/starkware/cairo/stark_verifier/core/supported_proof_params.py @@ -0,0 +1,24 @@ +def are_parameters_supported(proof_parameters: dict): + """ + The stark verifier implemented in Cairo expects a specific set of hash functions and a + specific field to be used by the prover. Check if proof_parameters match these requirements. + """ + if proof_parameters["channel_hash"] != "poseidon3": + return False + + if proof_parameters["commitment_hash"] != "blake256_masked160_lsb": + return False + + if proof_parameters["field"] != "PrimeField0": + return False + + if proof_parameters["pow_hash"] != "blake256": + return False + + if proof_parameters["statement"]["page_hash"] != "pedersen": + return False + + if proof_parameters["verifier_friendly_commitment_hash"] != "poseidon3": + return False + + return True diff --git a/src/starkware/cairo/stark_verifier/core/table_commitment.cairo b/src/starkware/cairo/stark_verifier/core/table_commitment.cairo index 6d4737df..2236d18b 100644 --- a/src/starkware/cairo/stark_verifier/core/table_commitment.cairo +++ b/src/starkware/cairo/stark_verifier/core/table_commitment.cairo @@ -2,9 +2,8 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash_many from starkware.cairo.common.cairo_blake2s.blake2s import blake2s_add_felts, blake2s_bigend from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin -from starkware.cairo.common.math import assert_nn, split_felt, unsigned_div_rem +from starkware.cairo.common.math import assert_nn, unsigned_div_rem from starkware.cairo.common.math_cmp import is_nn -from starkware.cairo.common.uint256 import Uint256 from starkware.cairo.stark_verifier.core.channel import MONTGOMERY_R, Channel, ChannelUnsentFelt from starkware.cairo.stark_verifier.core.vector_commitment import ( VectorCommitment, @@ -46,11 +45,9 @@ struct TableCommitmentWitness { vector: VectorCommitmentWitness*, } -func table_commit{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}(unsent_commitment: TableUnsentCommitment, config: TableCommitmentConfig*) -> ( - res: TableCommitment* -) { +func table_commit{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( + unsent_commitment: TableUnsentCommitment, config: TableCommitmentConfig* +) -> (res: TableCommitment*) { let (vector_commitment: VectorCommitment*) = vector_commit( unsent_commitment=unsent_commitment.vector, config=config.vector ); diff --git a/src/starkware/cairo/stark_verifier/core/vector_commitment.cairo b/src/starkware/cairo/stark_verifier/core/vector_commitment.cairo index 4f0cd833..e2b575be 100644 --- a/src/starkware/cairo/stark_verifier/core/vector_commitment.cairo +++ b/src/starkware/cairo/stark_verifier/core/vector_commitment.cairo @@ -1,12 +1,8 @@ from starkware.cairo.common.alloc import alloc from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash -from starkware.cairo.common.cairo_blake2s.blake2s import ( - blake2s_add_felt, - blake2s_add_uint256_bigend, - blake2s_bigend, -) +from starkware.cairo.common.cairo_blake2s.blake2s import blake2s_add_felt, blake2s_bigend from starkware.cairo.common.cairo_builtins import BitwiseBuiltin, PoseidonBuiltin -from starkware.cairo.common.math import assert_nn, assert_nn_le, split_felt, unsigned_div_rem +from starkware.cairo.common.math import assert_nn, assert_nn_le, unsigned_div_rem from starkware.cairo.common.math_cmp import is_nn from starkware.cairo.common.pow import pow from starkware.cairo.common.uint256 import Uint256 @@ -67,11 +63,9 @@ func validate_vector_commitment{range_check_ptr}( return (); } -func vector_commit{ - blake2s_ptr: felt*, bitwise_ptr: BitwiseBuiltin*, channel: Channel, range_check_ptr -}(unsent_commitment: VectorUnsentCommitment, config: VectorCommitmentConfig*) -> ( - res: VectorCommitment* -) { +func vector_commit{poseidon_ptr: PoseidonBuiltin*, channel: Channel, range_check_ptr}( + unsent_commitment: VectorUnsentCommitment, config: VectorCommitmentConfig* +) -> (res: VectorCommitment*) { let (commitment_hash_value) = read_felt_from_prover(value=unsent_commitment.commitment_hash); return (res=new VectorCommitment(config=config, commitment_hash=commitment_hash_value)); } diff --git a/src/starkware/python/BUILD b/src/starkware/python/BUILD index 6fe5f96e..09cfbbf5 100644 --- a/src/starkware/python/BUILD +++ b/src/starkware/python/BUILD @@ -82,6 +82,7 @@ pytest_test( ":starkware_expression_string_lib", ":starkware_python_test_utils_lib", ":starkware_python_utils_lib", + requirement("numpy"), requirement("pytest_asyncio"), ], ) diff --git a/src/starkware/python/math_utils.py b/src/starkware/python/math_utils.py index ca6e2af8..b676f85b 100644 --- a/src/starkware/python/math_utils.py +++ b/src/starkware/python/math_utils.py @@ -1,7 +1,7 @@ import math import random from hashlib import sha256 -from typing import Optional, Tuple, Union +from typing import List, Optional, Tuple, Union import numpy as np import sympy @@ -289,3 +289,46 @@ def safe_random_ec_point( res = ec_safe_mult(m=random.randrange(1, curve_order), point=generator, alpha=alpha, p=prime) assert not isinstance(res, EcInfinity) return res + + +def fft(coeffs: List[int], generator: int, prime: int, bit_reversed: bool = False) -> List[int]: + """ + Computes the FFT of `coeffs`, assuming the size of the coefficient array is a power of two + and equals to the generator's multiplicative order. + """ + + def _fft(coeffs: np.ndarray, group: np.ndarray) -> np.ndarray: + if len(coeffs) == 1: + return np.array(coeffs) + + f_even = _fft(coeffs=coeffs[::2], group=group[::2]) + f_odd = _fft(coeffs=coeffs[1::2], group=group[::2]) + + group_mul_f_odd = (group[: len(f_odd)] * f_odd) % prime + return np.concatenate( + ( + (f_even + group_mul_f_odd) % prime, + (f_even - group_mul_f_odd) % prime, + ) + ) + + if len(coeffs) == 0: + return [] + + coeffs_len = len(coeffs) + assert is_power_of_2(coeffs_len), "Length is not a power of two." + + # Prepare sample points. + group = [1] + for _ in range(coeffs_len - 1): + group.append((group[-1] * generator) % prime) + + # Evaluate. + values = list(_fft(coeffs=np.array(coeffs), group=np.array(group))) + + if bit_reversed: + width = coeffs_len.bit_length() - 1 + perm = [int("{:0{width}b}".format(i, width=width)[::-1], 2) for i in range(coeffs_len)] + return [values[i] for i in perm] + + return values diff --git a/src/starkware/python/math_utils_test.py b/src/starkware/python/math_utils_test.py index bdf29b76..74e13508 100644 --- a/src/starkware/python/math_utils_test.py +++ b/src/starkware/python/math_utils_test.py @@ -1,6 +1,8 @@ import math import random +from typing import List +import numpy as np import pytest from starkware.python.math_utils import ( @@ -9,6 +11,7 @@ ec_add, ec_double, ec_mult, + fft, horner_eval, is_power_of_2, is_quad_residue, @@ -171,3 +174,47 @@ def test_safe_random_ec_point(): x, y = safe_random_ec_point(prime=PRIME, alpha=ALPHA, generator=generator, curve_order=EC_ORDER) # Check that the returned point is on the curve. assert pow(y, 2, PRIME) == (pow(x, 3, PRIME) + x * ALPHA + BETA) % PRIME + + +@pytest.mark.parametrize("bit_reversed", [True, False]) +def test_fft(bit_reversed: bool): + PRIME = 52435875175126190479447740508185965837690552500527637822603658699938581184513 + GENERATOR = 39033254847818212395286706435128746857159659164139250548781411570340225835782 + WIDTH = 12 + ORDER = 2**WIDTH + + def generate(generator: int) -> List[int]: + array = [1] + for _ in range(ORDER - 1): + array.append((generator * array[-1]) % PRIME) + + return array + + subgroup = generate(GENERATOR) + if bit_reversed: + perm = [int("{:0{width}b}".format(i, width=WIDTH)[::-1], 2) for i in range(ORDER)] + subgroup = [subgroup[i] for i in perm] + + # Sanity checks. + assert (GENERATOR**ORDER) % PRIME == 1 + assert len(set(subgroup)) == len(subgroup) + + coeffs = [random.randint(0, PRIME) for _ in range(ORDER)] + + # Evaluate naively. + expexted_eval = [0] * ORDER + for i, x in enumerate(subgroup): + expexted_eval[i] = np.dot(coeffs, generate(x)) % PRIME + + # Evaluate using FFT. + actual_eval = fft(coeffs=coeffs, generator=GENERATOR, prime=PRIME, bit_reversed=bit_reversed) + + assert actual_eval == expexted_eval + + # Trivial cases. + assert actual_eval[0] == sum(coeffs) % PRIME + assert ( + fft(coeffs=[0] * ORDER, generator=GENERATOR, prime=PRIME, bit_reversed=bit_reversed) + == [0] * ORDER + ) + assert fft(coeffs=[121212], generator=1, prime=PRIME, bit_reversed=bit_reversed) == [121212] diff --git a/src/starkware/solidity/components/OnchainDataFactTreeEncoder.sol b/src/starkware/solidity/components/OnchainDataFactTreeEncoder.sol index 0554c9e6..c2dd382e 100644 --- a/src/starkware/solidity/components/OnchainDataFactTreeEncoder.sol +++ b/src/starkware/solidity/components/OnchainDataFactTreeEncoder.sol @@ -33,7 +33,7 @@ library OnchainDataFactTreeEncoder { // Compute the hash without the two additional fields. uint256 mainPublicInputLen = programOutput.length; - bytes32 mainPublicInputHash = keccak256(abi.encodePacked(programOutput)); + bytes32 mainPublicInputHash = hashMainPublicInput(programOutput); // Compute the hash of the fact Merkle tree. bytes32 hashResult = keccak256( @@ -47,4 +47,11 @@ library OnchainDataFactTreeEncoder { // Add one to the hash to indicate it represents an inner node, rather than a leaf. return bytes32(uint256(hashResult) + 1); } + + /* + Hashes the main public input. + */ + function hashMainPublicInput(uint256[] calldata programOutput) internal pure returns (bytes32) { + return keccak256(abi.encodePacked(programOutput)); + } } diff --git a/src/starkware/starknet/business_logic/BUILD b/src/starkware/starknet/business_logic/BUILD index b35de5c5..8266d7b1 100644 --- a/src/starkware/starknet/business_logic/BUILD +++ b/src/starkware/starknet/business_logic/BUILD @@ -11,6 +11,7 @@ py_library( "//src/starkware/cairo/lang/builtins:cairo_all_builtins_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", "//src/starkware/python:starkware_python_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_execution_usage_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", diff --git a/src/starkware/starknet/business_logic/execution/BUILD b/src/starkware/starknet/business_logic/execution/BUILD index 1dbf48a9..f27db166 100644 --- a/src/starkware/starknet/business_logic/execution/BUILD +++ b/src/starkware/starknet/business_logic/execution/BUILD @@ -28,6 +28,27 @@ py_library( ], ) +py_library( + name = "starknet_deprecated_transaction_execution_objects_lib", + srcs = [ + "deprecated_objects.py", + ], + visibility = ["//visibility:public"], + deps = [ + ":starknet_transaction_execution_objects_lib", + "//src/services/everest/business_logic:everest_transaction_execution_objects_lib", + "//src/services/everest/definitions:everest_definitions_lib", + "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", + "//src/starkware/starknet/definitions:starknet_definitions_lib", + "//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib", + "//src/starkware/starkware_utils:starkware_dataclasses_field_utils_lib", + "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", + requirement("marshmallow"), + requirement("marshmallow_dataclass"), + ], +) + py_library( name = "starknet_execute_entry_point_base_lib", srcs = [ @@ -35,6 +56,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + ":starknet_deprecated_transaction_execution_objects_lib", ":starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/state:starknet_business_logic_state_lib", "//src/starkware/starknet/definitions:starknet_general_config_lib", @@ -50,6 +72,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + ":starknet_deprecated_transaction_execution_objects_lib", ":starknet_execute_entry_point_base_lib", ":starknet_transaction_execution_objects_lib", "//src/services/everest/definitions:everest_definitions_lib", @@ -79,13 +102,14 @@ py_library( "os_usage.py", ], data = [ - "os_resources.json", + "//src/starkware/starknet/definitions:versioned_constants.json", ], visibility = ["//visibility:public"], deps = [ ":starknet_transaction_execution_objects_lib", "//src/services/external_api:services_eth_gas_constants_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/python:starkware_python_utils_lib", "//src/starkware/starknet/definitions:starknet_definitions_lib", "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", requirement("marshmallow_dataclass"), diff --git a/src/starkware/starknet/business_logic/execution/deprecated_objects.py b/src/starkware/starknet/business_logic/execution/deprecated_objects.py new file mode 100644 index 00000000..81bd1a52 --- /dev/null +++ b/src/starkware/starknet/business_logic/execution/deprecated_objects.py @@ -0,0 +1,442 @@ +import dataclasses +import functools +import operator +from dataclasses import field +from enum import Enum, auto +from typing import Dict, Iterable, Iterator, List, Optional, Set, cast + +import marshmallow.fields as mfields +import marshmallow_dataclass + +from services.everest.business_logic.transaction_execution_objects import ( + EverestTransactionExecutionInfo, +) +from services.everest.definitions import fields as everest_fields +from starkware.cairo.lang.vm.cairo_pie import ExecutionResources +from starkware.starknet.business_logic.execution.objects import ( + CallInfo, + CallType, + Event, + L2ToL1MessageInfo, + OrderedEvent, + OrderedL2ToL1Message, + ResourcesMapping, + TransactionExecutionInfo, +) +from starkware.starknet.business_logic.fact_state.contract_state_objects import StateSelector +from starkware.starknet.definitions import fields +from starkware.starknet.definitions.transaction_type import TransactionType +from starkware.starknet.services.api.contract_class.contract_class import EntryPointType +from starkware.starkware_utils.marshmallow_dataclass_fields import ( + SetField, + additional_metadata, + nonrequired_list_metadata, + nonrequired_optional_metadata, +) +from starkware.starkware_utils.marshmallow_fields_metadata import sequential_id_metadata +from starkware.starkware_utils.serializable_dataclass import SerializableMarshmallowDataclass +from starkware.starkware_utils.validated_dataclass import ( + ValidatedDataclass, + ValidatedMarshmallowDataclass, +) + +# These classes represents the deprecated transaction execution information. Please refer to the +# above non-deprecated classes for up-to-date functionality and documentation. +# Thess classes are retained for backward compatibility and reading old databases only. + + +class DeprecatedCallType(Enum): + CALL = 0 + DELEGATE = auto() + + def to_non_deprecated(self) -> CallType: + if self is DeprecatedCallType.CALL: + return CallType.Call + elif self is DeprecatedCallType.DELEGATE: + return CallType.Delegate + else: + raise NotImplementedError(f"Unsupported call type: {self}.") + + +@dataclasses.dataclass(frozen=True) +class DeprecatedOrderedEvent(ValidatedDataclass): + order: int = field(metadata=sequential_id_metadata("Event order")) + keys: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) + data: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) + + def to_non_deprecated(self) -> OrderedEvent: + return OrderedEvent.create(order=self.order, keys=self.keys, data=self.data) + + +@dataclasses.dataclass(frozen=True) +class DeprecatedOrderedL2ToL1Message(ValidatedDataclass): + order: int = field(metadata=sequential_id_metadata("L2-to-L1 message order")) + to_address: int = field( + metadata=everest_fields.EthAddressIntField.metadata(field_name="to_address") + ) + payload: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) + + def to_non_deprecated(self) -> OrderedL2ToL1Message: + return OrderedL2ToL1Message.create( + order=self.order, to_address=self.to_address, payload=self.payload + ) + + +# NOTE: This dataclass isn't validated due to a forward-declaration issue. +@marshmallow_dataclass.dataclass(frozen=True) +class DeprecatedCallInfo(SerializableMarshmallowDataclass): + caller_address: int + call_type: Optional[DeprecatedCallType] = field(metadata=nonrequired_optional_metadata) + contract_address: int + class_hash: Optional[int] = field(metadata=fields.optional_new_class_hash_metadata) + entry_point_selector: Optional[int] + entry_point_type: Optional[EntryPointType] + calldata: List[int] + gas_consumed: int = field(metadata=fields.gas_consumed_metadata) + failure_flag: int = field(metadata=fields.failure_flag_metadata) + retdata: List[int] + + execution_resources: ExecutionResources + events: List[DeprecatedOrderedEvent] + l2_to_l1_messages: List[DeprecatedOrderedL2ToL1Message] + + storage_read_values: List[int] + accessed_storage_keys: Set[int] = field( + metadata=additional_metadata( + marshmallow_field=SetField( + everest_fields.felt_metadata("storage_accessed_address")["marshmallow_field"] + ) + ) + ) + + internal_calls: List["DeprecatedCallInfo"] = field( + metadata=additional_metadata( + marshmallow_field=mfields.List(mfields.Nested(lambda: DeprecatedCallInfo.Schema())) + ) + ) + + code_address: Optional[int] + + @classmethod + def create( + cls, + caller_address: int, + call_type: Optional[DeprecatedCallType], + contract_address: int, + class_hash: Optional[int], + entry_point_selector: Optional[int], + entry_point_type: Optional[EntryPointType], + calldata: List[int], + gas_consumed: int, + failure_flag: int, + retdata: List[int], + execution_resources: ExecutionResources, + events: List[DeprecatedOrderedEvent], + l2_to_l1_messages: List[DeprecatedOrderedL2ToL1Message], + storage_read_values: List[int], + accessed_storage_keys: Set[int], + internal_calls: List["DeprecatedCallInfo"], + code_address: Optional[int], + ) -> "DeprecatedCallInfo": + return cls( + caller_address=caller_address, + call_type=call_type, + contract_address=contract_address, + class_hash=class_hash, + entry_point_selector=entry_point_selector, + entry_point_type=entry_point_type, + calldata=calldata, + gas_consumed=gas_consumed, + failure_flag=failure_flag, + retdata=retdata, + execution_resources=execution_resources, + events=events, + l2_to_l1_messages=l2_to_l1_messages, + storage_read_values=storage_read_values, + accessed_storage_keys=accessed_storage_keys, + internal_calls=internal_calls, + code_address=code_address, + ) + + def to_non_deprecated(self) -> CallInfo: + call_type = None if self.call_type is None else self.call_type.to_non_deprecated() + return CallInfo.create( + caller_address=self.caller_address, + call_type=call_type, + contract_address=self.contract_address, + class_hash=self.class_hash, + entry_point_selector=self.entry_point_selector, + entry_point_type=self.entry_point_type, + calldata=self.calldata, + gas_consumed=self.gas_consumed, + failure_flag=self.failure_flag, + retdata=self.retdata, + execution_resources=self.execution_resources, + events=[event.to_non_deprecated() for event in self.events], + l2_to_l1_messages=[message.to_non_deprecated() for message in self.l2_to_l1_messages], + storage_read_values=self.storage_read_values, + accessed_storage_keys=self.accessed_storage_keys, + internal_calls=[ + internal_call.to_non_deprecated() for internal_call in self.internal_calls + ], + code_address=self.code_address, + ) + + @classmethod + def empty( + cls, + contract_address: int, + caller_address: int, + class_hash: Optional[int], + call_type: Optional[DeprecatedCallType] = None, + entry_point_type: Optional[EntryPointType] = None, + entry_point_selector: Optional[int] = None, + ) -> "DeprecatedCallInfo": + vm_resources = ExecutionResources(n_steps=0, builtin_instance_counter={}, n_memory_holes=0) + return cls.create( + caller_address=caller_address, + call_type=call_type, + contract_address=contract_address, + class_hash=class_hash, + entry_point_selector=entry_point_selector, + entry_point_type=entry_point_type, + calldata=[], + gas_consumed=0, + failure_flag=0, + retdata=[], + execution_resources=vm_resources, + events=[], + l2_to_l1_messages=[], + storage_read_values=[], + accessed_storage_keys=set(), + internal_calls=[], + code_address=None, + ) + + def gen_call_topology(self) -> Iterator["DeprecatedCallInfo"]: + """ + Yields the contract calls in DFS (preorder). + """ + yield self + for call in self.internal_calls: + yield from call.gen_call_topology() + + +@marshmallow_dataclass.dataclass(frozen=True) +class DeprecatedTransactionExecutionInfo(EverestTransactionExecutionInfo): + validate_info: Optional[DeprecatedCallInfo] + call_info: Optional[DeprecatedCallInfo] + fee_transfer_info: Optional[DeprecatedCallInfo] + actual_fee: int = field(metadata=fields.FeeField.metadata(field_name="actual_fee")) + actual_resources: ResourcesMapping = field(metadata=fields.name_to_resources_metadata) + tx_type: Optional[TransactionType] + + revert_error: Optional[str] = field(metadata=fields.revert_error_metadata) + + def to_non_deprecated(self) -> TransactionExecutionInfo: + validate_info, call_info, fee_transfer_info = map( + lambda info: None if info is None else info.to_non_deprecated(), + (self.validate_info, self.call_info, self.fee_transfer_info), + ) + return TransactionExecutionInfo.create( + validate_info=validate_info, + call_info=call_info, + fee_transfer_info=fee_transfer_info, + actual_fee=self.actual_fee, + actual_resources=self.actual_resources, + tx_type=self.tx_type, + revert_error=self.revert_error, + da_gas=None, + ) + + @property + def non_optional_calls(self) -> Iterable[DeprecatedCallInfo]: + if self.tx_type is TransactionType.DEPLOY_ACCOUNT: + # In deploy account tx, validation will take place after execution of the constructor. + ordered_optional_calls = ( + self.call_info, + self.validate_info, + self.fee_transfer_info, + ) + else: + ordered_optional_calls = ( + self.validate_info, + self.call_info, + self.fee_transfer_info, + ) + return tuple(call for call in ordered_optional_calls if call is not None) + + +@dataclasses.dataclass(frozen=True) +class ContractCallResponse(ValidatedDataclass): + """ + Contains the information needed by the OS to guess the response of a contract call. + """ + + retdata: List[int] + + +@marshmallow_dataclass.dataclass(frozen=True) +class ContractCall(ValidatedMarshmallowDataclass): + """ + Represents a contract call, either internal or external. + Holds the information needed for the execution of the represented contract call by the OS. + No need for validations here, as the fields are taken from validated objects. + """ + + # Static info. + + from_address: int # Should be zero if the call represents the parent transaction itself. + to_address: int # The called contract address. + # The address that holds the executed code; relevant just for delegate calls, where it may + # differ from the code of the to_address contract. + code_address: Optional[int] = field(metadata=fields.optional_l2_address_metadata) + entry_point_selector: Optional[int] = field(metadata=nonrequired_optional_metadata) + entry_point_type: Optional[EntryPointType] = field(metadata=nonrequired_optional_metadata) + calldata: List[int] + signature: List[int] + + # Execution info. + + cairo_usage: ExecutionResources + # Note that the order starts from a transaction-global offset. + events: List[OrderedEvent] = field(metadata=nonrequired_list_metadata) + l2_to_l1_messages: List[L2ToL1MessageInfo] = field(metadata=nonrequired_list_metadata) + + # Information kept for the StarkNet OS run in the GpsAmbassador. + + # The response of the direct internal calls invoked by this call; kept in the order + # the OS "guesses" them. + internal_call_responses: List[ContractCallResponse] + # A list of values read from storage by this call, **excluding** readings from nested calls. + storage_read_values: List[int] + # A set of storage addresses accessed by this call, **excluding** addresses from nested calls; + # kept in order to calculate and prepare the commitment tree facts before the StarkNet OS run. + storage_accessed_addresses: Set[int] = field( + metadata=additional_metadata( + marshmallow_field=SetField( + everest_fields.felt_metadata("storage_accessed_address")["marshmallow_field"] + ) + ) + ) + + @classmethod + def empty(cls, to_address: int) -> "ContractCall": + return cls( + from_address=0, + to_address=to_address, + code_address=None, + entry_point_type=None, + entry_point_selector=None, + calldata=[], + signature=[], + cairo_usage=ExecutionResources.empty(), + events=[], + l2_to_l1_messages=[], + internal_call_responses=[], + storage_read_values=[], + storage_accessed_addresses=set(), + ) + + @property + def state_selector(self) -> StateSelector: + code_address = self.to_address if self.code_address is None else self.code_address + return StateSelector.create( + contract_addresses=[self.to_address, code_address], class_hashes=[] + ) + + +@marshmallow_dataclass.dataclass(frozen=True) +class DeprecatedOldTransactionExecutionInfo(EverestTransactionExecutionInfo): + """ + Contains the information gathered by the execution of a transation. Main uses: + 1. Supplies hints for the OS run on the corresponding transaction; e.g., internal call results. + 2. Stores useful information for users; e.g., L2-to-L1 messages it sent and emitted events. + """ + + l2_to_l1_messages: List[L2ToL1MessageInfo] + # The retdata of the main transaction. + retdata: List[int] + call_info: ContractCall + # The internal contract calls; arranged in DFS order, which is the order they are invoked by the + # OS. + internal_calls: List[ContractCall] + + @classmethod + def create( + cls, + call_info: ContractCall, + internal_calls: Optional[List[ContractCall]] = None, + ) -> "DeprecatedOldTransactionExecutionInfo": + return cls( + l2_to_l1_messages=[], + retdata=[], + call_info=call_info, + internal_calls=[] if internal_calls is None else internal_calls, + ) + + @property + def contract_calls(self) -> List[ContractCall]: + return [self.call_info, *self.internal_calls] + + def get_state_selector(self) -> StateSelector: + return functools.reduce( + operator.__or__, + (contract_call.state_selector for contract_call in self.contract_calls), + StateSelector.empty(), + ) + + def get_sorted_events(self) -> List[Event]: + """ + Returns a list of StarkNet Event objects collected during the execution, sorted by the order + in which they were emitted. + """ + n_events = sum(len(contract_call.events) for contract_call in self.contract_calls) + starknet_events: List[Optional[Event]] = [None] * n_events + + for contract_call in self.contract_calls: + for ordered_event_content in contract_call.events: + # Convert OrderedEvent -> Event. I.e., add emitting contract address + # and remove the order. + starknet_events[ordered_event_content.order] = Event.create( + emitting_contract_address=contract_call.to_address, + event_content=ordered_event_content, + ) + + assert all( + starknet_event is not None for starknet_event in starknet_events + ), "Unexpected holes in the event order." + + return cast(List[Event], starknet_events) + + @staticmethod + def get_state_selector_of_many( + execution_infos: List["DeprecatedOldTransactionExecutionInfo"], + ) -> StateSelector: + return functools.reduce( + operator.__or__, + (execution_info.get_state_selector() for execution_info in execution_infos), + StateSelector.empty(), + ) + + +class ExecutionResourcesManager: + """ + Aggregates execution resources throughout transaction stream processing. + """ + + def __init__(self, cairo_usage: ExecutionResources, syscall_counter: Dict[str, int]): + # The accumulated Cairo usage. + self.cairo_usage = cairo_usage + + # A mapping from system call to the cumulative times it was invoked. + self.syscall_counter = syscall_counter + + # Alternative constructors. + + @classmethod + def empty(cls) -> "ExecutionResourcesManager": + return cls( + cairo_usage=ExecutionResources.empty(), + syscall_counter={}, + ) diff --git a/src/starkware/starknet/business_logic/execution/execute_entry_point.py b/src/starkware/starknet/business_logic/execution/execute_entry_point.py index c2c22652..abbe7fef 100644 --- a/src/starkware/starknet/business_logic/execution/execute_entry_point.py +++ b/src/starkware/starknet/business_logic/execution/execute_entry_point.py @@ -16,6 +16,7 @@ from starkware.starknet.builtins.segment_arena.segment_arena_builtin_runner import ( SegmentArenaBuiltinRunner, ) +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.execute_entry_point_base import ( ExecuteEntryPointBase, ) @@ -23,7 +24,6 @@ CallInfo, CallResult, CallType, - ExecutionResourcesManager, OrderedEvent, OrderedL2ToL1Message, TransactionExecutionContext, @@ -87,7 +87,7 @@ def create( class_hash: Optional[int] = None, ) -> "ExecuteEntryPoint": return cls( - call_type=CallType.CALL if call_type is None else call_type, + call_type=CallType.Call if call_type is None else call_type, contract_address=contract_address, calldata=calldata, code_address=None, @@ -455,7 +455,7 @@ def _build_call_info( result: CallResult, class_hash: int, ) -> CallInfo: - return CallInfo( + return CallInfo.create( # Execution params. caller_address=self.caller_address, call_type=self.call_type, @@ -487,12 +487,12 @@ def _get_non_optional_class_hash( """ if self.class_hash is not None: # Library call. - assert self.call_type is CallType.DELEGATE + assert self.call_type is CallType.Delegate return self.class_hash - if self.call_type is CallType.CALL: + if self.call_type is CallType.Call: code_address = self.contract_address - elif self.call_type is CallType.DELEGATE: + elif self.call_type is CallType.Delegate: # Delegate call (deprecated version). assert self.code_address is not None code_address = self.code_address diff --git a/src/starkware/starknet/business_logic/execution/execute_entry_point_base.py b/src/starkware/starknet/business_logic/execution/execute_entry_point_base.py index d3eb5621..383948e4 100644 --- a/src/starkware/starknet/business_logic/execution/execute_entry_point_base.py +++ b/src/starkware/starknet/business_logic/execution/execute_entry_point_base.py @@ -2,10 +2,10 @@ from abc import ABC, abstractmethod from typing import List, Optional +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.objects import ( CallInfo, CallType, - ExecutionResourcesManager, TransactionExecutionContext, ) from starkware.starknet.business_logic.state.state_api import SyncState diff --git a/src/starkware/starknet/business_logic/execution/objects.py b/src/starkware/starknet/business_logic/execution/objects.py index 08ecb3bd..fc69e44c 100644 --- a/src/starkware/starknet/business_logic/execution/objects.py +++ b/src/starkware/starknet/business_logic/execution/objects.py @@ -4,7 +4,7 @@ import operator from dataclasses import field from enum import Enum, auto -from typing import Dict, FrozenSet, Iterable, Iterator, List, Mapping, Optional, Set, Union, cast +from typing import FrozenSet, Iterable, Iterator, List, Mapping, Optional, Set, Union, cast import marshmallow.fields as mfields import marshmallow_dataclass @@ -30,10 +30,10 @@ DEFAULT_DECLARE_SENDER_ADDRESS, ) from starkware.starkware_utils.error_handling import stark_assert +from starkware.starkware_utils.field_validators import validate_non_negative from starkware.starkware_utils.marshmallow_dataclass_fields import ( SetField, additional_metadata, - nonrequired_list_metadata, nonrequired_optional_metadata, ) from starkware.starkware_utils.marshmallow_fields_metadata import sequential_id_metadata @@ -45,12 +45,14 @@ logger = logging.getLogger(__name__) ResourcesMapping = Mapping[str, int] +RawTransactionExecutionInfo = bytes +RawTransactionExecutionResult = Union[TransactionFailureReason, RawTransactionExecutionInfo] TransactionExecutionResult = Union[TransactionFailureReason, "TransactionExecutionInfo"] class CallType(Enum): - CALL = 0 - DELEGATE = auto() + Call = 0 + Delegate = auto() @dataclasses.dataclass @@ -130,6 +132,14 @@ def create_for_testing( ) +@dataclasses.dataclass(frozen=True) +class EventContent(ValidatedDataclass): + # The keys by which the event will be indexed. + keys: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + # The data of the event. + data: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + + @dataclasses.dataclass(frozen=True) class OrderedEvent(ValidatedDataclass): """ @@ -138,10 +148,19 @@ class OrderedEvent(ValidatedDataclass): """ order: int = field(metadata=sequential_id_metadata("Event order")) - # The keys by which the event will be indexed. - keys: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) - # The data of the event. - data: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) + event: EventContent + + @classmethod + def create(cls, order: int, keys: List[int], data: List[int]) -> "OrderedEvent": + return cls(order=order, event=EventContent(keys=keys, data=data)) + + @property + def keys(self) -> List[int]: + return self.event.keys + + @property + def data(self) -> List[int]: + return self.event.data @dataclasses.dataclass(frozen=True) @@ -154,12 +173,12 @@ class Event(ValidatedDataclass): # Emitting contract address. from_address: int = field(metadata=fields.L2AddressField.metadata(field_name="from_address")) # The keys by which the event will be indexed. - keys: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + keys: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) # The data of the event. - data: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + data: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) @classmethod - def create(cls, event_content: OrderedEvent, emitting_contract_address: int): + def create(cls, event_content: "OrderedEvent", emitting_contract_address: int) -> "Event": return cls( from_address=emitting_contract_address, keys=event_content.keys, @@ -167,6 +186,12 @@ def create(cls, event_content: OrderedEvent, emitting_contract_address: int): ) +@dataclasses.dataclass(frozen=True) +class MessageToL1(ValidatedDataclass): + to_address: int = field(metadata=fields.felt_metadata) + payload: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + + @dataclasses.dataclass(frozen=True) class OrderedL2ToL1Message(ValidatedDataclass): """ @@ -175,10 +200,19 @@ class OrderedL2ToL1Message(ValidatedDataclass): """ order: int = field(metadata=sequential_id_metadata("L2-to-L1 message order")) - to_address: int = field( - metadata=everest_fields.EthAddressIntField.metadata(field_name="to_address") - ) - payload: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) + message: MessageToL1 + + @classmethod + def create(cls, order: int, to_address: int, payload: List[int]) -> "OrderedL2ToL1Message": + return cls(order=order, message=MessageToL1(to_address=to_address, payload=payload)) + + @property + def to_address(self) -> int: + return self.message.to_address + + @property + def payload(self) -> List[int]: + return self.message.payload @dataclasses.dataclass(frozen=True) @@ -194,7 +228,9 @@ class L2ToL1MessageInfo(ValidatedDataclass): payload: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) @classmethod - def create(cls, message_content: OrderedL2ToL1Message, sending_contract_address: int): + def create( + cls, message_content: "OrderedL2ToL1Message", sending_contract_address: int + ) -> "L2ToL1MessageInfo": return cls( from_address=sending_contract_address, to_address=message_content.to_address, @@ -250,42 +286,66 @@ def succeeded(self) -> bool: return self.failure_flag == 0 -# NOTE: This dataclass isn't validated due to a forward-declaration issue. -@marshmallow_dataclass.dataclass(frozen=True) -class CallInfo(SerializableMarshmallowDataclass): +@dataclasses.dataclass(frozen=True) +class CallEntryPoint(ValidatedDataclass): """ - Represents a contract call, either internal or external. - Holds the information needed for the execution of the represented contract call by the OS. - No need for validations here, as the fields are taken from validated objects. + Represents a call to an entry point. """ - # Call params. - - caller_address: int # Should be zero if the call represents an external transaction. - call_type: Optional[CallType] = field(metadata=nonrequired_optional_metadata) - contract_address: int # Holds the hash of the executed class; in the case of a library call, it may differ from the # class hash of the called contract state. class_hash: Optional[int] = field(metadata=fields.optional_new_class_hash_metadata) - entry_point_selector: Optional[int] - entry_point_type: Optional[EntryPointType] - calldata: List[int] + entry_point_type: Optional[EntryPointType] = field(metadata=nonrequired_optional_metadata) + entry_point_selector: Optional[int] = field( + metadata=fields.optional_entry_point_selector_metadata + ) + calldata: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + storage_address: int = field(metadata=fields.felt_metadata) + caller_address: int = field(metadata=fields.felt_metadata) + # We can assume that the initial gas is less than 2^64. + initial_gas: int - # Call results. + # Deprecated fields. + # The address that holds the executed code; relevant just for delegate calls (version 1), where + # it may differ from the code of the to_address contract. + code_address: Optional[int] = field(metadata=fields.optional_l2_address_metadata) + call_type: Optional[CallType] = field(metadata=nonrequired_optional_metadata) - gas_consumed: int = field(metadata=fields.gas_consumed_metadata) - failure_flag: int = field(metadata=fields.failure_flag_metadata) - retdata: List[int] - execution_resources: ExecutionResources +@dataclasses.dataclass(frozen=True) +class CallExecution(ValidatedDataclass): + retdata: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) # Note that the order starts from a transaction-global offset. events: List[OrderedEvent] l2_to_l1_messages: List[OrderedL2ToL1Message] + failed: bool + gas_consumed: int + + +# NOTE: This dataclass isn't validated due to a forward-declaration issue. +@marshmallow_dataclass.dataclass(frozen=True) +class CallInfo(SerializableMarshmallowDataclass): + """ + Represents a contract call, either internal or external. + Holds the information needed for the execution of the represented contract call by the OS. + No need for validations here, as the fields are taken from validated objects. + """ + + call: CallEntryPoint + execution: CallExecution + resources: ExecutionResources + + # Internal calls made by this call. + inner_calls: List["CallInfo"] = field( + metadata=additional_metadata( + marshmallow_field=mfields.List(mfields.Nested(lambda: CallInfo.Schema())) + ) + ) # Information kept for the StarkNet OS run in the GpsAmbassador. # A list of values read from storage by this call, **excluding** readings from nested calls. - storage_read_values: List[int] + storage_read_values: List[int] = field(metadata=fields.felt_as_hex_or_str_list_metadata) # A set of storage keys accessed by this call, **excluding** keys from nested calls; # kept in order to calculate and prepare the commitment tree facts before the StarkNet OS run. accessed_storage_keys: Set[int] = field( @@ -296,18 +356,120 @@ class CallInfo(SerializableMarshmallowDataclass): ) ) - # Internal calls made by this call. + @classmethod + def create( + cls, + caller_address: int, + call_type: Optional[CallType], + contract_address: int, + class_hash: Optional[int], + entry_point_selector: Optional[int], + entry_point_type: Optional[EntryPointType], + calldata: List[int], + gas_consumed: int, + failure_flag: int, + retdata: List[int], + execution_resources: ExecutionResources, + events: List[OrderedEvent], + l2_to_l1_messages: List[OrderedL2ToL1Message], + storage_read_values: List[int], + accessed_storage_keys: Set[int], + internal_calls: List["CallInfo"], + code_address: Optional[int], + ) -> "CallInfo": + call = CallEntryPoint( + caller_address=caller_address, + call_type=call_type, + storage_address=contract_address, + class_hash=class_hash, + code_address=code_address, + entry_point_type=entry_point_type, + entry_point_selector=entry_point_selector, + calldata=calldata, + initial_gas=0, + ) + execution = CallExecution( + retdata=retdata, + events=events, + l2_to_l1_messages=l2_to_l1_messages, + failed=failure_flag != 0, + gas_consumed=gas_consumed, + ) - internal_calls: List["CallInfo"] = field( - metadata=additional_metadata( - marshmallow_field=mfields.List(mfields.Nested(lambda: CallInfo.Schema())) + return cls( + call=call, + execution=execution, + resources=execution_resources, + storage_read_values=storage_read_values, + accessed_storage_keys=accessed_storage_keys, + inner_calls=internal_calls, ) - ) - # Deprecated fields. - # The address that holds the executed code; relevant just for delegate calls (version 1), where - # it may differ from the code of the to_address contract. - code_address: Optional[int] + # CallEntryPoint fields. + + @property + def class_hash(self) -> Optional[int]: + return self.call.class_hash + + @property + def entry_point_type(self) -> Optional[EntryPointType]: + return self.call.entry_point_type + + @property + def entry_point_selector(self) -> Optional[int]: + return self.call.entry_point_selector + + @property + def calldata(self) -> List[int]: + return self.call.calldata + + @property + def contract_address(self) -> int: + return self.call.storage_address + + @property + def caller_address(self) -> int: + return self.call.caller_address + + @property + def code_address(self) -> Optional[int]: + return self.call.code_address + + @property + def call_type(self) -> Optional[CallType]: + return self.call.call_type + + # CallExecution fields. + + @property + def retdata(self) -> List[int]: + return self.execution.retdata + + @property + def events(self) -> List[OrderedEvent]: + return self.execution.events + + @property + def l2_to_l1_messages(self) -> List[OrderedL2ToL1Message]: + return self.execution.l2_to_l1_messages + + @property + def failure_flag(self) -> int: + return self.execution.failed + + @property + def gas_consumed(self) -> int: + return self.execution.gas_consumed + + # Remaining fields. + + @property + def execution_resources(self) -> ExecutionResources: + return self.resources + + @property + def internal_calls(self) -> List["CallInfo"]: + return self.inner_calls def result(self) -> CallResult: return CallResult( @@ -319,7 +481,7 @@ def result(self) -> CallResult: def get_visited_storage_entries(self) -> Set[StorageEntry]: storage_entries = {(self.contract_address, key) for key in self.accessed_storage_keys} internal_visited_storage_entries = CallInfo.get_visited_storage_entries_of_many( - call_infos=self.internal_calls + call_infos=self.inner_calls ) return storage_entries | internal_visited_storage_entries @@ -368,15 +530,15 @@ def empty( entry_point_type: Optional[EntryPointType] = None, entry_point_selector: Optional[int] = None, ) -> "CallInfo": - return cls( + return cls.create( caller_address=caller_address, call_type=call_type, contract_address=contract_address, class_hash=class_hash, - code_address=None, - entry_point_type=entry_point_type, entry_point_selector=entry_point_selector, + entry_point_type=entry_point_type, calldata=[], + gas_consumed=0, failure_flag=0, retdata=[], execution_resources=ExecutionResources.empty(), @@ -385,7 +547,7 @@ def empty( storage_read_values=[], accessed_storage_keys=set(), internal_calls=[], - gas_consumed=0, + code_address=None, ) @classmethod @@ -400,7 +562,7 @@ def empty_constructor_call( contract_address=contract_address, caller_address=caller_address, class_hash=class_hash, - call_type=CallType.CALL, + call_type=CallType.Call, entry_point_type=EntryPointType.CONSTRUCTOR, entry_point_selector=CONSTRUCTOR_ENTRY_POINT_SELECTOR, ) @@ -454,6 +616,30 @@ def get_sorted_l2_to_l1_messages(self) -> List[L2ToL1MessageInfo]: return cast(List[L2ToL1MessageInfo], starknet_l2_to_l1_messages) +@marshmallow_dataclass.dataclass(frozen=True) +class GasVector(ValidatedMarshmallowDataclass): + l1_gas: int = field( + metadata=additional_metadata( + marshmallow_field=mfields.Integer( + strict=True, validate=validate_non_negative("l1_gas") + ), + description="L1 gas amount", + ), + ) + l1_data_gas: int = field( + metadata=additional_metadata( + marshmallow_field=mfields.Integer( + strict=True, validate=validate_non_negative("l1_data_gas") + ), + description="Blob gas amount", + ), + ) + + @classmethod + def empty(cls) -> "GasVector": + return cls(l1_gas=0, l1_data_gas=0) + + @marshmallow_dataclass.dataclass(frozen=True) class TransactionExecutionInfo(EverestTransactionExecutionInfo): """ @@ -463,12 +649,12 @@ class TransactionExecutionInfo(EverestTransactionExecutionInfo): """ # Transaction-specific validation call info. - validate_info: Optional[CallInfo] + validate_call_info: Optional[CallInfo] # Transaction-specific execution call info, `None` for declare transaction. - call_info: Optional[CallInfo] + execute_call_info: Optional[CallInfo] # Fee transfer call info, executed by the BE for account contract transactions (e.g., declare # and invoke). - fee_transfer_info: Optional[CallInfo] + fee_transfer_call_info: Optional[CallInfo] # The actual fee that was charged in Wei. actual_fee: int = field(metadata=fields.FeeField.metadata(field_name="actual_fee")) # Actual resources the transaction is charged for, including L1 gas @@ -479,14 +665,51 @@ class TransactionExecutionInfo(EverestTransactionExecutionInfo): # The reason for the transaction revert, if applicable. revert_error: Optional[str] = field(metadata=fields.revert_error_metadata) + # Contains the gas cost of data availability (from version 0.13.1). + da_gas: Optional[GasVector] def __post_init__(self): super().__post_init__() if self.is_reverted: assert ( - self.call_info is None + self.execute_call_info is None ), "Reverted transactions only execute validation and fee transfer." + @classmethod + def create( + cls, + validate_info: Optional[CallInfo], + call_info: Optional[CallInfo], + fee_transfer_info: Optional[CallInfo], + actual_fee: int, + actual_resources: ResourcesMapping, + tx_type: Optional[TransactionType], + revert_error: Optional[str], + da_gas: Optional[GasVector], + ) -> "TransactionExecutionInfo": + return cls( + validate_call_info=validate_info, + execute_call_info=call_info, + fee_transfer_call_info=fee_transfer_info, + actual_fee=actual_fee, + actual_resources=actual_resources, + tx_type=tx_type, + revert_error=revert_error, + da_gas=da_gas, + ) + + @property + def validate_info(self) -> Optional[CallInfo]: + return self.validate_call_info + + @property + def call_info(self) -> Optional[CallInfo]: + return self.execute_call_info + + @property + def fee_transfer_info(self) -> Optional[CallInfo]: + return self.fee_transfer_call_info + @property def is_reverted(self) -> bool: return self.revert_error is not None @@ -495,9 +718,17 @@ def is_reverted(self) -> bool: def non_optional_calls(self) -> Iterable[CallInfo]: if self.tx_type is TransactionType.DEPLOY_ACCOUNT: # In deploy account tx, validation will take place after execution of the constructor. - ordered_optional_calls = (self.call_info, self.validate_info, self.fee_transfer_info) + ordered_optional_calls = ( + self.execute_call_info, + self.validate_call_info, + self.fee_transfer_call_info, + ) else: - ordered_optional_calls = (self.validate_info, self.call_info, self.fee_transfer_info) + ordered_optional_calls = ( + self.validate_call_info, + self.execute_call_info, + self.fee_transfer_call_info, + ) return tuple(call for call in ordered_optional_calls if call is not None) def get_state_selector(self) -> StateSelector: @@ -518,7 +749,7 @@ def from_call_infos( fee_transfer_info: Optional[CallInfo] = None, revert_error: Optional[str] = None, ) -> "TransactionExecutionInfo": - return cls( + return cls.create( validate_info=validate_info, call_info=execute_call_info, fee_transfer_info=fee_transfer_info, @@ -526,11 +757,12 @@ def from_call_infos( actual_resources={}, tx_type=tx_type, revert_error=revert_error, + da_gas=GasVector.empty(), ) @classmethod def empty(cls) -> "TransactionExecutionInfo": - return cls( + return cls.create( validate_info=None, call_info=None, fee_transfer_info=None, @@ -538,6 +770,7 @@ def empty(cls) -> "TransactionExecutionInfo": actual_resources={}, tx_type=None, revert_error=None, + da_gas=GasVector.empty(), ) @classmethod @@ -548,12 +781,13 @@ def create_concurrent_stage_execution_info( actual_resources: ResourcesMapping, tx_type: TransactionType, revert_error: Optional[str], + da_gas: Optional[GasVector] = None, ) -> "TransactionExecutionInfo": """ Returns TransactionExecutionInfo for the concurrent stage (without fee_transfer_info and without fee). """ - return cls( + return cls.create( validate_info=validate_info, call_info=call_info, fee_transfer_info=None, @@ -561,6 +795,7 @@ def create_concurrent_stage_execution_info( actual_resources=actual_resources, tx_type=tx_type, revert_error=revert_error, + da_gas=da_gas, ) @classmethod @@ -574,14 +809,15 @@ def from_concurrent_stage_execution_info( Fills the given concurrent_execution_info with actual_fee and fee_transfer_info. Used when the call infos (except for the fee handling) executed in the concurrent stage. """ - return cls( - validate_info=concurrent_execution_info.validate_info, - call_info=concurrent_execution_info.call_info, + return cls.create( + validate_info=concurrent_execution_info.validate_call_info, + call_info=concurrent_execution_info.execute_call_info, fee_transfer_info=fee_transfer_info, actual_fee=actual_fee, actual_resources=concurrent_execution_info.actual_resources, tx_type=concurrent_execution_info.tx_type, revert_error=concurrent_execution_info.revert_error, + da_gas=concurrent_execution_info.da_gas, ) def gen_call_iterator(self) -> Iterator[CallInfo]: @@ -626,181 +862,3 @@ def get_sorted_l2_to_l1_messages(self) -> List[L2ToL1MessageInfo]: for call_info in self.non_optional_calls for message in call_info.get_sorted_l2_to_l1_messages() ] - - -# Deprecated classes. - - -@dataclasses.dataclass(frozen=True) -class ContractCallResponse(ValidatedDataclass): - """ - Contains the information needed by the OS to guess the response of a contract call. - """ - - retdata: List[int] - - -@marshmallow_dataclass.dataclass(frozen=True) -class ContractCall(ValidatedMarshmallowDataclass): - """ - Represents a contract call, either internal or external. - Holds the information needed for the execution of the represented contract call by the OS. - No need for validations here, as the fields are taken from validated objects. - """ - - # Static info. - - from_address: int # Should be zero if the call represents the parent transaction itself. - to_address: int # The called contract address. - # The address that holds the executed code; relevant just for delegate calls, where it may - # differ from the code of the to_address contract. - code_address: Optional[int] = field(metadata=fields.optional_l2_address_metadata) - entry_point_selector: Optional[int] = field(metadata=nonrequired_optional_metadata) - entry_point_type: Optional[EntryPointType] = field(metadata=nonrequired_optional_metadata) - calldata: List[int] - signature: List[int] - - # Execution info. - - cairo_usage: ExecutionResources - # Note that the order starts from a transaction-global offset. - events: List[OrderedEvent] = field(metadata=nonrequired_list_metadata) - l2_to_l1_messages: List[L2ToL1MessageInfo] = field(metadata=nonrequired_list_metadata) - - # Information kept for the StarkNet OS run in the GpsAmbassador. - - # The response of the direct internal calls invoked by this call; kept in the order - # the OS "guesses" them. - internal_call_responses: List[ContractCallResponse] - # A list of values read from storage by this call, **excluding** readings from nested calls. - storage_read_values: List[int] - # A set of storage addresses accessed by this call, **excluding** addresses from nested calls; - # kept in order to calculate and prepare the commitment tree facts before the StarkNet OS run. - storage_accessed_addresses: Set[int] = field( - metadata=additional_metadata( - marshmallow_field=SetField( - everest_fields.felt_metadata("storage_accessed_address")["marshmallow_field"] - ) - ) - ) - - @classmethod - def empty(cls, to_address: int) -> "ContractCall": - return cls( - from_address=0, - to_address=to_address, - code_address=None, - entry_point_type=None, - entry_point_selector=None, - calldata=[], - signature=[], - cairo_usage=ExecutionResources.empty(), - events=[], - l2_to_l1_messages=[], - internal_call_responses=[], - storage_read_values=[], - storage_accessed_addresses=set(), - ) - - @property - def state_selector(self) -> StateSelector: - code_address = self.to_address if self.code_address is None else self.code_address - return StateSelector.create( - contract_addresses=[self.to_address, code_address], class_hashes=[] - ) - - -@marshmallow_dataclass.dataclass(frozen=True) -class TransactionExecutionInfoDeprecated(EverestTransactionExecutionInfo): - """ - Contains the information gathered by the execution of a transation. Main uses: - 1. Supplies hints for the OS run on the corresponding transaction; e.g., internal call results. - 2. Stores useful information for users; e.g., L2-to-L1 messages it sent and emitted events. - """ - - l2_to_l1_messages: List[L2ToL1MessageInfo] - # The retdata of the main transaction. - retdata: List[int] - call_info: ContractCall - # The internal contract calls; arranged in DFS order, which is the order they are invoked by the - # OS. - internal_calls: List[ContractCall] - - @classmethod - def create( - cls, - call_info: ContractCall, - internal_calls: Optional[List[ContractCall]] = None, - ) -> "TransactionExecutionInfoDeprecated": - return cls( - l2_to_l1_messages=[], - retdata=[], - call_info=call_info, - internal_calls=[] if internal_calls is None else internal_calls, - ) - - @property - def contract_calls(self) -> List[ContractCall]: - return [self.call_info, *self.internal_calls] - - def get_state_selector(self) -> StateSelector: - return functools.reduce( - operator.__or__, - (contract_call.state_selector for contract_call in self.contract_calls), - StateSelector.empty(), - ) - - def get_sorted_events(self) -> List[Event]: - """ - Returns a list of StarkNet Event objects collected during the execution, sorted by the order - in which they were emitted. - """ - n_events = sum(len(contract_call.events) for contract_call in self.contract_calls) - starknet_events: List[Optional[Event]] = [None] * n_events - - for contract_call in self.contract_calls: - for ordered_event_content in contract_call.events: - # Convert OrderedEvent -> Event. I.e., add emitting contract address - # and remove the order. - starknet_events[ordered_event_content.order] = Event.create( - emitting_contract_address=contract_call.to_address, - event_content=ordered_event_content, - ) - - assert all( - starknet_event is not None for starknet_event in starknet_events - ), "Unexpected holes in the event order." - - return cast(List[Event], starknet_events) - - @staticmethod - def get_state_selector_of_many( - execution_infos: List["TransactionExecutionInfoDeprecated"], - ) -> StateSelector: - return functools.reduce( - operator.__or__, - (execution_info.get_state_selector() for execution_info in execution_infos), - StateSelector.empty(), - ) - - -class ExecutionResourcesManager: - """ - Aggregates execution resources throughout transaction stream processing. - """ - - def __init__(self, cairo_usage: ExecutionResources, syscall_counter: Dict[str, int]): - # The accumulated Cairo usage. - self.cairo_usage = cairo_usage - - # A mapping from system call to the cumulative times it was invoked. - self.syscall_counter = syscall_counter - - # Alternative constructors. - - @classmethod - def empty(cls) -> "ExecutionResourcesManager": - return cls( - cairo_usage=ExecutionResources.empty(), - syscall_counter={}, - ) diff --git a/src/starkware/starknet/business_logic/execution/os_resources.json b/src/starkware/starknet/business_logic/execution/os_resources.json deleted file mode 100644 index db52a597..00000000 --- a/src/starkware/starknet/business_logic/execution/os_resources.json +++ /dev/null @@ -1,237 +0,0 @@ -{ - "execute_syscalls": { - "call_contract": { - "builtin_instance_counter": { - "range_check_builtin": 19 - }, - "n_memory_holes": 0, - "n_steps": 691 - }, - "delegate_call": { - "builtin_instance_counter": { - "range_check_builtin": 19 - }, - "n_memory_holes": 0, - "n_steps": 713 - }, - "delegate_l1_handler": { - "builtin_instance_counter": { - "range_check_builtin": 15 - }, - "n_memory_holes": 0, - "n_steps": 692 - }, - "deploy": { - "builtin_instance_counter": { - "pedersen_builtin": 7, - "range_check_builtin": 18 - }, - "n_memory_holes": 0, - "n_steps": 944 - }, - "emit_event": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 19 - }, - "get_block_hash": { - "builtin_instance_counter": { - "range_check_builtin": 2 - }, - "n_memory_holes": 0, - "n_steps": 74 - }, - "get_block_number": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 40 - }, - "get_block_timestamp": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 38 - }, - "get_caller_address": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 32 - }, - "get_contract_address": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 36 - }, - "get_execution_info": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 29 - }, - "get_sequencer_address": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 34 - }, - "get_tx_info": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 29 - }, - "get_tx_signature": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 44 - }, - "keccak": { - "builtin_instance_counter": { - "bitwise_builtin": 6, - "keccak_builtin": 1, - "range_check_builtin": 56 - }, - "n_memory_holes": 0, - "n_steps": 381 - }, - "library_call": { - "builtin_instance_counter": { - "range_check_builtin": 19 - }, - "n_memory_holes": 0, - "n_steps": 680 - }, - "library_call_l1_handler": { - "builtin_instance_counter": { - "range_check_builtin": 15 - }, - "n_memory_holes": 0, - "n_steps": 659 - }, - "replace_class": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 73 - }, - "secp256k1_add": { - "builtin_instance_counter": { - "range_check_builtin": 29 - }, - "n_memory_holes": 0, - "n_steps": 406 - }, - "secp256k1_get_point_from_x": { - "builtin_instance_counter": { - "range_check_builtin": 30 - }, - "n_memory_holes": 20, - "n_steps": 391 - }, - "secp256k1_get_xy": { - "builtin_instance_counter": { - "range_check_builtin": 11 - }, - "n_memory_holes": 40, - "n_steps": 239 - }, - "secp256k1_mul": { - "builtin_instance_counter": { - "range_check_builtin": 7045 - }, - "n_memory_holes": 0, - "n_steps": 76401 - }, - "secp256k1_new": { - "builtin_instance_counter": { - "range_check_builtin": 35 - }, - "n_memory_holes": 40, - "n_steps": 475 - }, - "secp256r1_add": { - "builtin_instance_counter": { - "range_check_builtin": 57 - }, - "n_memory_holes": 0, - "n_steps": 589 - }, - "secp256r1_get_point_from_x": { - "builtin_instance_counter": { - "range_check_builtin": 44 - }, - "n_memory_holes": 20, - "n_steps": 510 - }, - "secp256r1_get_xy": { - "builtin_instance_counter": { - "range_check_builtin": 11 - }, - "n_memory_holes": 40, - "n_steps": 241 - }, - "secp256r1_mul": { - "builtin_instance_counter": { - "range_check_builtin": 13961 - }, - "n_memory_holes": 0, - "n_steps": 125240 - }, - "secp256r1_new": { - "builtin_instance_counter": { - "range_check_builtin": 49 - }, - "n_memory_holes": 40, - "n_steps": 594 - }, - "send_message_to_l1": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 84 - }, - "storage_read": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 44 - }, - "storage_write": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 46 - } - }, - "execute_txs_inner": { - "DECLARE": { - "builtin_instance_counter": { - "pedersen_builtin": 15, - "range_check_builtin": 63 - }, - "n_memory_holes": 0, - "n_steps": 2797 - }, - "DEPLOY": { - "builtin_instance_counter": {}, - "n_memory_holes": 0, - "n_steps": 0 - }, - "DEPLOY_ACCOUNT": { - "builtin_instance_counter": { - "pedersen_builtin": 23, - "range_check_builtin": 83 - }, - "n_memory_holes": 0, - "n_steps": 3743 - }, - "INVOKE_FUNCTION": { - "builtin_instance_counter": { - "pedersen_builtin": 16, - "range_check_builtin": 80 - }, - "n_memory_holes": 0, - "n_steps": 3496 - }, - "L1_HANDLER": { - "builtin_instance_counter": { - "pedersen_builtin": 11, - "range_check_builtin": 17 - }, - "n_memory_holes": 0, - "n_steps": 1114 - } - } -} diff --git a/src/starkware/starknet/business_logic/execution/os_usage.py b/src/starkware/starknet/business_logic/execution/os_usage.py index 68855dc6..a02e50ea 100644 --- a/src/starkware/starknet/business_logic/execution/os_usage.py +++ b/src/starkware/starknet/business_logic/execution/os_usage.py @@ -1,30 +1,66 @@ import functools +import json import os.path from functools import lru_cache -from typing import Mapping +from pathlib import Path +from typing import Any, Dict, Mapping import marshmallow_dataclass from starkware.cairo.lang.vm.cairo_pie import ExecutionResources +from starkware.python.utils import snake_to_camel_case from starkware.starknet.definitions.transaction_type import TransactionType from starkware.starkware_utils.validated_dataclass import ValidatedMarshmallowDataclass DIR = os.path.dirname(__file__) +@marshmallow_dataclass.dataclass(frozen=True) +class ResourcesParams(ValidatedMarshmallowDataclass): + constant: ExecutionResources + calldata_factor: ExecutionResources + + @marshmallow_dataclass.dataclass(frozen=True) class OsResources(ValidatedMarshmallowDataclass): # Mapping from every syscall to its execution resources in the OS (e.g., amount of Cairo steps). execute_syscalls: Mapping[str, ExecutionResources] # Mapping from every transaction to its extra execution resources in the OS, # i.e., resources that don't count during the execution itself. - execute_txs_inner: Mapping[TransactionType, ExecutionResources] + execute_txs_inner: Mapping[TransactionType, ResourcesParams] + + def into_blockifier_json_object(self) -> Dict[str, Any]: + """ + Converts the object to a JSON object suitable for the blockifier by transforming all keys + from Python's snake_case to Rust-style CamelCase and excluding the unsupported DEPLOY + transaction types. + """ + + os_resources_json_object = self.dump() + del os_resources_json_object["execute_txs_inner"][TransactionType.DEPLOY.name] + + # Convert inner keys to CamelCase. + + # SCREAMING_SNAKE_CASE / snake_case -> CamelCase. + for inner_dict_key in ("execute_syscalls", "execute_txs_inner"): + transformed_values = { + snake_to_camel_case(k.lower()): v + for k, v in os_resources_json_object[inner_dict_key].items() + } + sorted_values = dict(sorted(transformed_values.items())) + os_resources_json_object[inner_dict_key] = sorted_values + + return os_resources_json_object @lru_cache() def get_os_resources() -> OsResources: # Empirical costs; accounted during transaction execution. - return OsResources.loads(data=open(os.path.join(DIR, "os_resources.json")).read()) + constants = json.loads( + Path(DIR).parent.parent.joinpath("definitions/versioned_constants.json").open().read() + ) + + return OsResources.load(data=constants["os_resources"]) def get_tx_additional_os_resources( @@ -44,4 +80,4 @@ def get_tx_additional_os_resources( # Calculate the additional resources needed for the OS to run the given transaction; # i.e., the resources of the StarkNet OS function execute_transactions_inner(). - return os_additional_resources + os_resources.execute_txs_inner[tx_type] + return os_additional_resources + os_resources.execute_txs_inner[tx_type].constant diff --git a/src/starkware/starknet/business_logic/fact_state/state.py b/src/starkware/starknet/business_logic/fact_state/state.py index 85f62748..e00c5470 100644 --- a/src/starkware/starknet/business_logic/fact_state/state.py +++ b/src/starkware/starknet/business_logic/fact_state/state.py @@ -185,32 +185,28 @@ def state_version(self) -> int: return constants.GLOBAL_STATE_VERSION @classmethod - async def create_empty_contract_states( - cls, ffc: FactFetchingContext, general_config: StarknetGeneralConfig - ) -> PatriciaTree: + async def create_empty_contract_states(cls, ffc: FactFetchingContext) -> PatriciaTree: """ Returns an empty contract state tree. """ empty_contract_state = await ContractState.empty( - storage_commitment_tree_height=general_config.contract_storage_commitment_tree_height, + storage_commitment_tree_height=constants.CONTRACT_STATES_COMMITMENT_TREE_HEIGHT, ffc=ffc, ) return await PatriciaTree.empty_tree( ffc=ffc, - height=general_config.global_state_commitment_tree_height, + height=constants.CONTRACT_ADDRESS_BITS, leaf_fact=empty_contract_state, ) @classmethod - async def create_empty_contract_class_tree( - cls, ffc: FactFetchingContext, general_config: StarknetGeneralConfig - ) -> PatriciaTree: + async def create_empty_contract_class_tree(cls, ffc: FactFetchingContext) -> PatriciaTree: """ Returns an empty contract class tree. """ return await PatriciaTree.empty_tree( ffc=ffc, - height=general_config.compiled_class_hash_commitment_tree_height, + height=constants.COMPILED_CLASS_HASH_COMMITMENT_TREE_HEIGHT, leaf_fact=ContractClassLeaf.empty(), ) @@ -222,17 +218,16 @@ async def empty(cls, ffc: FactFetchingContext, general_config: Config) -> "Share # Downcast arguments to application-specific types. assert isinstance(general_config, StarknetGeneralConfig) - empty_contract_states = await cls.create_empty_contract_states( - ffc=ffc, general_config=general_config - ) - empty_contract_classes = await cls.create_empty_contract_class_tree( - ffc=ffc, general_config=general_config - ) + empty_contract_states = await cls.create_empty_contract_states(ffc=ffc) + empty_contract_classes = await cls.create_empty_contract_class_tree(ffc=ffc) return cls( contract_states=empty_contract_states, contract_classes=empty_contract_classes, - block_info=BlockInfo.empty(sequencer_address=general_config.sequencer_address), + block_info=BlockInfo.empty( + sequencer_address=general_config.sequencer_address, + use_kzg_da=general_config.use_kzg_da, + ), ) async def get_contract_class_tree( @@ -245,7 +240,7 @@ async def get_contract_class_tree( return ( self.contract_classes if self.contract_classes is not None - else await self.create_empty_contract_class_tree(ffc=ffc, general_config=general_config) + else await self.create_empty_contract_class_tree(ffc=ffc) ) def get_global_state_root(self) -> int: @@ -363,6 +358,7 @@ async def apply_updates( ) # Apply contract changes on global root. + logger.info(f"Updating contract state tree with {len(accessed_addresses)} modifications...") updated_global_contract_root = await self.contract_states.update_efficiently( ffc=ffc, modifications=list(safe_zip(accessed_addresses, updated_contract_states)) ) @@ -370,6 +366,10 @@ async def apply_updates( ffc_for_contract_class = get_ffc_for_contract_class_facts(ffc=ffc) updated_contract_classes: Optional[PatriciaTree] = None if self.contract_classes is not None: + logger.info( + f"Updating contract class tree with {len(class_hash_to_compiled_class_hash)} " + "modifications..." + ) updated_contract_classes = await self.contract_classes.update_efficiently( ffc=ffc_for_contract_class, modifications=[ diff --git a/src/starkware/starknet/business_logic/state/state_api.py b/src/starkware/starknet/business_logic/state/state_api.py index ea08bc9f..ee68cbd4 100644 --- a/src/starkware/starknet/business_logic/state/state_api.py +++ b/src/starkware/starknet/business_logic/state/state_api.py @@ -73,6 +73,33 @@ async def get_storage_at( Returns the storage value under the given key in the given contract instance. """ + async def get_fee_token_balance( + self, + data_availability_mode: DataAvailabilityMode, + contract_address: int, + fee_token_address: int, + ) -> int: + """ + Returns the fee-token balance at the given address. + The balance is of type Uint256. + """ + data_availability_mode.assert_l1() + low_key, high_key = get_uint256_storage_var_keys( + "ERC20_balances", + contract_address, + ) + low = await self.get_storage_at( + data_availability_mode=data_availability_mode, + contract_address=fee_token_address, + key=low_key, + ) + high = await self.get_storage_at( + data_availability_mode=data_availability_mode, + contract_address=fee_token_address, + key=high_key, + ) + return low + high * 2**128 + async def get_compiled_class_by_class_hash(self, class_hash: int) -> CompiledClassBase: """ Returns the compiled class of the given class hash. Handles both class versions. @@ -205,33 +232,6 @@ def get_storage_at( ) -> int: pass - def get_fee_token_balance( - self, - data_availability_mode: DataAvailabilityMode, - contract_address: int, - fee_token_address: int, - ) -> int: - """ - Returns the fee-token balance at the given address. - The balance is of type Uint256. - """ - data_availability_mode.assert_l1() - low_key, high_key = get_uint256_storage_var_keys( - "ERC20_balances", - contract_address, - ) - low = self.get_storage_at( - data_availability_mode=data_availability_mode, - contract_address=fee_token_address, - key=low_key, - ) - high = self.get_storage_at( - data_availability_mode=data_availability_mode, - contract_address=fee_token_address, - key=high_key, - ) - return low + high * 2**128 - def get_compiled_class_by_class_hash(self, class_hash: int) -> CompiledClassBase: compiled_class_hash = self.get_compiled_class_hash(class_hash=class_hash) if compiled_class_hash != 0: diff --git a/src/starkware/starknet/business_logic/state/state_api_objects.py b/src/starkware/starknet/business_logic/state/state_api_objects.py index 29c3151f..0f950f9b 100644 --- a/src/starkware/starknet/business_logic/state/state_api_objects.py +++ b/src/starkware/starknet/business_logic/state/state_api_objects.py @@ -1,3 +1,4 @@ +import dataclasses from dataclasses import field from typing import Any, Dict, List, Optional @@ -8,20 +9,71 @@ from starkware.starknet.definitions import fields from starkware.starknet.definitions.error_codes import StarknetErrorCode from starkware.starknet.definitions.general_config import ( + DEFAULT_DEPRECATED_L1_DATA_GAS_PRICE, DEFAULT_DEPRECATED_L1_GAS_PRICE, - DEFAULT_MIN_STRK_L1_GAS_PRICE, + DEFAULT_MIN_FRI_L1_DATA_GAS_PRICE, + DEFAULT_MIN_FRI_L1_GAS_PRICE, DEFAULT_SEQUENCER_ADDRESS, + DEFAULT_USE_KZG_DA, ) from starkware.starkware_utils.error_handling import stark_assert_eq, stark_assert_le from starkware.starkware_utils.validated_dataclass import ValidatedMarshmallowDataclass -def rename_old_gas_price_field(data: Dict[str, Any]) -> Dict[str, Any]: +def rename_old_gas_price_fields(data: Dict[str, Any]) -> Dict[str, Any]: + """ + Pre-0.13.0, there was a "gas_price" field, with the current gas price in Wei. + Pre-0.13.1, there were "eth_l1_gas_price" and "strk_l1_gas_price" fields, with the current + gas prices in Wei and Fri respectively. + Post-0.13.1, there are "l1_gas_price" and "l1_data_gas_price" fields, each with the current + gas or data gas prices in Wei and Fri respectively. + """ + + def _add_default_data_gas_prices(data: Dict[str, Any]): + data["l1_data_gas_price"] = dict(price_in_wei=hex(1), price_in_fri=hex(1)) + if "gas_price" in data: - data["eth_l1_gas_price"] = data.pop("gas_price") + # Pre-0.13.0 block (no STRK price, no data gas). + data["l1_gas_price"] = dict(price_in_wei=data.pop("gas_price"), price_in_fri=hex(0)) + _add_default_data_gas_prices(data=data) + elif "eth_l1_gas_price" in data: + # Pre-0.13.1 block (no data gas). + assert "strk_l1_gas_price" in data, "Malformed pre-0.13.1 block." + data["l1_gas_price"] = dict( + price_in_wei=data.pop("eth_l1_gas_price"), + price_in_fri=data.pop("strk_l1_gas_price"), + ) + _add_default_data_gas_prices(data=data) + elif "l1_gas_price" in data: + # 0.13.1 blocks. No need to change the fields. + pass + else: + # Older blocks. + assert "strk_l1_gas_price" not in data, "Malformed pre-0.13.1 block." + data["l1_gas_price"] = dict(price_in_wei=hex(1), price_in_fri=hex(1)) + _add_default_data_gas_prices(data=data) + return data +@marshmallow_dataclass.dataclass(frozen=True) +class ResourcePrice: + price_in_wei: int = field(metadata=fields.gas_price_metadata) + price_in_fri: int = field(metadata=fields.gas_price_metadata) + + +@dataclasses.dataclass(frozen=True) +class GasPrices: + """ + Values of all gas prices. + """ + + l1_gas_price_wei: int + l1_gas_price_fri: int + l1_data_gas_price_wei: int + l1_data_gas_price_fri: int + + @marshmallow_dataclass.dataclass(frozen=True) class BlockInfo(ValidatedMarshmallowDataclass): # The sequence number of the last block created. @@ -30,36 +82,41 @@ class BlockInfo(ValidatedMarshmallowDataclass): # Timestamp of the beginning of the last block creation attempt. block_timestamp: int = field(metadata=fields.timestamp_metadata) - # L1 gas price (in Wei) measured at the beginning of the last block creation attempt. - eth_l1_gas_price: int = field(metadata=fields.gas_price_metadata) + # L1 gas price measured at the beginning of the last block creation attempt. + l1_gas_price: ResourcePrice - # L1 gas price (in STRK) measured at the beginning of the last block creation attempt. - strk_l1_gas_price: int = field(metadata=fields.gas_price_metadata) + # L1 data gas price measured at the beginning of the last block creation attempt. + l1_data_gas_price: ResourcePrice # The sequencer address of this block. sequencer_address: Optional[int] = field(metadata=fields.optional_sequencer_address_metadata) - # The version of Starknet system (e.g. "0.13.0"). + # The version of Starknet system (e.g., "0.13.1"). starknet_version: Optional[str] = field(metadata=fields.starknet_version_metadata) + # Indicates whether to use KZG commitment scheme for the block's Data Avilability. + use_kzg_da: bool = field(metadata=fields.use_kzg_da_metadata) + @pre_load - def rename_old_gas_price_field( + def rename_old_gas_price_fields( self, data: Dict[str, Any], many: bool, **kwargs ) -> Dict[str, List[str]]: - return rename_old_gas_price_field(data=data) + return rename_old_gas_price_fields(data=data) @classmethod - def empty(cls, sequencer_address: Optional[int]) -> "BlockInfo": + def empty(cls, sequencer_address: Optional[int], use_kzg_da: bool) -> "BlockInfo": """ Returns an empty BlockInfo object; i.e., the one before the first in the chain. """ return cls( block_number=-1, block_timestamp=0, - eth_l1_gas_price=0, - strk_l1_gas_price=0, + # As gas prices must be non-zero, just use 1 for all prices. + l1_gas_price=ResourcePrice(price_in_wei=1, price_in_fri=1), + l1_data_gas_price=ResourcePrice(price_in_wei=1, price_in_fri=1), sequencer_address=sequencer_address, starknet_version=STARKNET_VERSION, + use_kzg_da=use_kzg_da, ) @classmethod @@ -68,8 +125,12 @@ def create_for_testing( block_number: int, block_timestamp: int, eth_l1_gas_price: int = DEFAULT_DEPRECATED_L1_GAS_PRICE, - strk_l1_gas_price: int = DEFAULT_MIN_STRK_L1_GAS_PRICE, + strk_l1_gas_price: int = DEFAULT_MIN_FRI_L1_GAS_PRICE, + eth_l1_data_gas_price: int = DEFAULT_DEPRECATED_L1_DATA_GAS_PRICE, + strk_l1_data_gas_price: int = DEFAULT_MIN_FRI_L1_DATA_GAS_PRICE, sequencer_address: int = DEFAULT_SEQUENCER_ADDRESS, + starknet_version: str = STARKNET_VERSION, + use_kzg_da: bool = DEFAULT_USE_KZG_DA, ) -> "BlockInfo": """ Returns a BlockInfo object with default gas_price. @@ -77,10 +138,15 @@ def create_for_testing( return cls( block_number=block_number, block_timestamp=block_timestamp, - eth_l1_gas_price=eth_l1_gas_price, - strk_l1_gas_price=strk_l1_gas_price, + l1_gas_price=ResourcePrice( + price_in_wei=eth_l1_gas_price, price_in_fri=strk_l1_gas_price + ), + l1_data_gas_price=ResourcePrice( + price_in_wei=eth_l1_data_gas_price, price_in_fri=strk_l1_data_gas_price + ), sequencer_address=sequencer_address, - starknet_version=STARKNET_VERSION, + starknet_version=starknet_version, + use_kzg_da=use_kzg_da, ) def validate_legal_progress(self, next_block_info: "BlockInfo"): @@ -102,3 +168,11 @@ def validate_legal_progress(self, next_block_info: "BlockInfo"): code=StarknetErrorCode.INVALID_BLOCK_TIMESTAMP, message="Block timestamp must not decrease.", ) + + def gas_prices(self) -> GasPrices: + return GasPrices( + l1_gas_price_wei=self.l1_gas_price.price_in_wei, + l1_gas_price_fri=self.l1_gas_price.price_in_fri, + l1_data_gas_price_wei=self.l1_data_gas_price.price_in_wei, + l1_data_gas_price_fri=self.l1_data_gas_price.price_in_fri, + ) diff --git a/src/starkware/starknet/business_logic/transaction/BUILD b/src/starkware/starknet/business_logic/transaction/BUILD index ae2feb91..47f6ab8b 100644 --- a/src/starkware/starknet/business_logic/transaction/BUILD +++ b/src/starkware/starknet/business_logic/transaction/BUILD @@ -10,8 +10,8 @@ py_library( visibility = ["//visibility:public"], deps = [ "//src/services/everest/api/gateway:everest_transaction_lib", + "//src/services/everest/business_logic:everest_business_logic_lib", "//src/services/everest/business_logic:everest_internal_transaction_lib", - "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", "//src/starkware/starknet/definitions:starknet_definitions_lib", "//src/starkware/starknet/definitions:starknet_general_config_lib", "//src/starkware/starknet/services/api/gateway:starknet_transaction_lib", @@ -30,7 +30,6 @@ py_library( "//src/services/everest/business_logic:everest_business_logic_state_api_lib", "//src/services/everest/business_logic:everest_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic:starknet_business_logic_utils_lib", - "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", "//src/starkware/starknet/core/os/contract_address:starknet_contract_address_lib", "//src/starkware/starknet/core/os/contract_class:starknet_os_abi_lib", "//src/starkware/starknet/core/os/transaction_hash", @@ -58,13 +57,12 @@ py_library( ":starknet_transaction_state_objects_lib", "//src/services/everest/api/gateway:everest_transaction_lib", "//src/services/everest/business_logic:everest_business_logic_state_api_lib", - "//src/services/everest/business_logic:everest_internal_transaction_lib", "//src/services/everest/definitions:everest_definitions_lib", "//src/starkware/python:starkware_python_utils_lib", "//src/starkware/starknet/business_logic:starknet_business_logic_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_execute_entry_point_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", - "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", "//src/starkware/starknet/business_logic/state:starknet_business_logic_state_lib", "//src/starkware/starknet/core/os/contract_address:starknet_contract_address_lib", "//src/starkware/starknet/core/os/contract_class:starknet_os_abi_lib", @@ -109,6 +107,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + "//src/services/everest/business_logic:everest_business_logic_lib", "//src/services/everest/business_logic:everest_business_logic_state_api_lib", "//src/services/everest/business_logic:everest_internal_transaction_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", @@ -128,6 +127,7 @@ py_library( visibility = ["//visibility:public"], deps = [ "//src/starkware/starknet/business_logic:starknet_business_logic_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_execute_entry_point_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/state:starknet_business_logic_state_lib", diff --git a/src/starkware/starknet/business_logic/transaction/deprecated_objects.py b/src/starkware/starknet/business_logic/transaction/deprecated_objects.py index d47f9805..d4fff2b7 100644 --- a/src/starkware/starknet/business_logic/transaction/deprecated_objects.py +++ b/src/starkware/starknet/business_logic/transaction/deprecated_objects.py @@ -1,26 +1,25 @@ import dataclasses +import json import logging from abc import abstractmethod from dataclasses import field -from typing import Any, ClassVar, Dict, Iterable, List, Optional, Tuple, Type, cast +from typing import Any, ClassVar, Dict, List, Optional, Tuple, Type, cast import marshmallow import marshmallow_dataclass from services.everest.api.gateway.transaction import EverestTransaction -from services.everest.business_logic.internal_transaction import EverestInternalStateTransaction from services.everest.business_logic.state_api import StateProxy from services.everest.definitions.fields import format_felt_list from starkware.python.utils import as_non_optional, from_bytes, to_bytes +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.execute_entry_point import ExecuteEntryPoint from starkware.starknet.business_logic.execution.objects import ( CallInfo, - ExecutionResourcesManager, ResourcesMapping, TransactionExecutionContext, TransactionExecutionInfo, ) -from starkware.starknet.business_logic.fact_state.contract_state_objects import StateSelector from starkware.starknet.business_logic.state.state import UpdatesTrackerState from starkware.starknet.business_logic.state.state_api import SyncState from starkware.starknet.business_logic.state.state_api_objects import BlockInfo @@ -140,12 +139,6 @@ def tx_type(cls) -> TransactionType: Subclasses should define it as a class variable. """ - @staticmethod - def get_state_selector_of_many( - txs: Iterable[EverestInternalStateTransaction], general_config: Config - ) -> StateSelector: - return StateSelector.empty() - @marshmallow_dataclass.dataclass(frozen=True) class InitializeBlockInfo(SyntheticTransaction): @@ -198,9 +191,6 @@ def _apply_specific_concurrent_changes( f"_apply_specific_concurrent_changes is not implemented for {type(self).__name__}." ) - def get_state_selector(self, general_config: Config) -> StateSelector: - return StateSelector.empty() - @dataclasses.dataclass(frozen=True) # type: ignore[misc] class DeprecatedInternalAccountTransaction(DeprecatedInternalTransaction): @@ -265,15 +255,6 @@ def verify_version(self): old_supported_versions=[0], ) - def get_state_selector(self, general_config: Config) -> StateSelector: - contract_addresses = {self.sender_address} - if not self.zero_max_fee: - # Downcast arguments to application-specific types. - assert isinstance(general_config, StarknetGeneralConfig) - contract_addresses.add(general_config.deprecated_fee_token_address) - - return StateSelector.create(contract_addresses=contract_addresses, class_hashes=[]) - def run_validate_entrypoint( self, remaining_gas: int, @@ -349,7 +330,7 @@ def charge_fee( return None, 0 actual_fee = calculate_tx_fee( - l1_gas_price=state.block_info.eth_l1_gas_price, + l1_gas_price=state.block_info.l1_gas_price.price_in_wei, general_config=general_config, resources=resources, ) @@ -416,6 +397,8 @@ class DeprecatedInternalDeclare(DeprecatedInternalAccountTransaction): compiled_class_hash: Optional[int] = field( metadata=fields.optional_compiled_class_hash_metadata ) + sierra_program_size: int = field(metadata=fields.sierra_program_size_metadata) + abi_size: int = field(metadata=fields.abi_size_metadata) # Class variables. tx_type: ClassVar[TransactionType] = TransactionType.DECLARE @@ -495,6 +478,8 @@ def create( internal_declare = cls( class_hash=class_hash, compiled_class_hash=compiled_class_hash, + sierra_program_size=contract_class.get_bytecode_size(), + abi_size=contract_class.get_abi_size(), sender_address=sender_address, max_fee=max_fee, version=version, @@ -525,9 +510,12 @@ def create_deprecated( nonce: int, ): class_hash = compute_deprecated_class_hash(contract_class=contract_class) + abi_size = len(json.dumps(contract_class.abi)) if contract_class.abi is not None else 0 internal_declare = cls( class_hash=class_hash, compiled_class_hash=None, + sierra_program_size=0, + abi_size=abi_size, sender_address=sender_address, max_fee=max_fee, version=version, @@ -604,15 +592,6 @@ def _specific_from_external( def to_external(self) -> DeprecatedOldDeclare: raise NotImplementedError("Cannot convert internal declare transaction to external object.") - def get_state_selector(self, general_config: Config) -> StateSelector: - if self.version in [0, constants.QUERY_VERSION_BASE]: - return StateSelector.empty() - - account_state_selector = super().get_state_selector(general_config=general_config) - return account_state_selector | StateSelector.create( - contract_addresses=[], class_hashes=[self.class_hash] - ) - def _apply_specific_concurrent_changes( self, state: UpdatesTrackerState, general_config: StarknetGeneralConfig, remaining_gas: int ) -> TransactionExecutionInfo: @@ -805,12 +784,6 @@ def to_external(self) -> DeprecatedDeployAccount: constructor_calldata=self.constructor_calldata, ) - def get_state_selector(self, general_config: Config) -> StateSelector: - account_state_selector = super().get_state_selector(general_config=general_config) - return account_state_selector | StateSelector.create( - contract_addresses=[], class_hashes=[self.class_hash] - ) - def _apply_specific_concurrent_changes( self, state: UpdatesTrackerState, general_config: StarknetGeneralConfig, remaining_gas: int ) -> TransactionExecutionInfo: @@ -1040,9 +1013,6 @@ def class_hash(self) -> int: def to_external(self) -> Deploy: raise NotImplementedError("Cannot convert internal deploy transaction to external object.") - def get_state_selector(self, general_config: Config) -> StateSelector: - return StateSelector.create(contract_addresses=[self.contract_address], class_hashes=[]) - def _apply_specific_concurrent_changes( self, state: UpdatesTrackerState, general_config: StarknetGeneralConfig, remaining_gas: int ) -> TransactionExecutionInfo: @@ -1258,9 +1228,11 @@ def create_wrapped_with_account( return cls.create( sender_address=account_address, max_fee=max_fee, - entry_point_selector=starknet_abi.EXECUTE_ENTRY_POINT_SELECTOR - if version in [0, constants.QUERY_VERSION_BASE] - else None, + entry_point_selector=( + starknet_abi.EXECUTE_ENTRY_POINT_SELECTOR + if version in [0, constants.QUERY_VERSION_BASE] + else None + ), version=constants.DEPRECATED_TRANSACTION_VERSION if version is None else version, calldata=[contract_address, entry_point_selector, len(calldata), *calldata], nonce=nonce, @@ -1310,9 +1282,11 @@ def create( internal_invoke = cls( sender_address=sender_address, - entry_point_selector=starknet_abi.EXECUTE_ENTRY_POINT_SELECTOR - if entry_point_selector is None - else entry_point_selector, + entry_point_selector=( + starknet_abi.EXECUTE_ENTRY_POINT_SELECTOR + if entry_point_selector is None + else entry_point_selector + ), max_fee=max_fee, version=version, entry_point_type=EntryPointType.EXTERNAL, @@ -1332,9 +1306,11 @@ def to_external(self) -> DeprecatedInvokeFunction: return DeprecatedInvokeFunction( sender_address=self.sender_address, - entry_point_selector=self.entry_point_selector - if self.version in [0, constants.QUERY_VERSION_BASE] - else None, + entry_point_selector=( + self.entry_point_selector + if self.version in [0, constants.QUERY_VERSION_BASE] + else None + ), calldata=self.calldata, max_fee=self.max_fee, version=self.version, @@ -1517,9 +1493,6 @@ def create( paid_fee_on_l1=paid_fee_on_l1, ) - def get_state_selector(self, general_config: Config) -> StateSelector: - return StateSelector.create(contract_addresses=[self.contract_address], class_hashes=[]) - def _apply_specific_concurrent_changes( self, state: UpdatesTrackerState, general_config: StarknetGeneralConfig, remaining_gas: int ) -> TransactionExecutionInfo: @@ -1565,7 +1538,7 @@ def _apply_specific_concurrent_changes( # the transaction is an old transaction. if self.paid_fee_on_l1 is not None: required_fee = calculate_tx_fee( - l1_gas_price=state.block_info.eth_l1_gas_price, + l1_gas_price=state.block_info.l1_gas_price.price_in_wei, general_config=general_config, resources=actual_resources, ) diff --git a/src/starkware/starknet/business_logic/transaction/fee.py b/src/starkware/starknet/business_logic/transaction/fee.py index 4740d18d..e58297b8 100644 --- a/src/starkware/starknet/business_logic/transaction/fee.py +++ b/src/starkware/starknet/business_logic/transaction/fee.py @@ -1,9 +1,9 @@ import math +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.execute_entry_point import ExecuteEntryPoint from starkware.starknet.business_logic.execution.objects import ( CallInfo, - ExecutionResourcesManager, ResourcesMapping, TransactionExecutionContext, ) diff --git a/src/starkware/starknet/business_logic/transaction/internal_account_transaction.py b/src/starkware/starknet/business_logic/transaction/internal_account_transaction.py index ee353b44..c0cf6076 100644 --- a/src/starkware/starknet/business_logic/transaction/internal_account_transaction.py +++ b/src/starkware/starknet/business_logic/transaction/internal_account_transaction.py @@ -8,7 +8,6 @@ import starkware.starknet.public.abi as abi_constants from services.everest.business_logic.state_api import StateProxy from services.everest.business_logic.transaction_execution_objects import TransactionExecutionInfo -from starkware.starknet.business_logic.fact_state.contract_state_objects import StateSelector from starkware.starknet.business_logic.transaction.objects import InternalTransaction from starkware.starknet.business_logic.utils import verify_version, write_class_facts from starkware.starknet.core.os.contract_address.contract_address import ( @@ -27,7 +26,7 @@ from starkware.starknet.definitions.data_availability_mode import DataAvailabilityMode from starkware.starknet.definitions.fields import Resource, ResourceBounds, ResourceBoundsMapping from starkware.starknet.definitions.general_config import ( - DEFAULT_MAX_STRK_L1_GAS_PRICE, + DEFAULT_MAX_FRI_L1_GAS_PRICE, StarknetGeneralConfig, ) from starkware.starknet.definitions.transaction_type import TransactionType @@ -46,7 +45,7 @@ from starkware.storage.storage import FactFetchingContext TRIVIAL_RESOURCE_BOUNDS = { - Resource.L1_GAS: ResourceBounds(max_amount=0, max_price_per_unit=DEFAULT_MAX_STRK_L1_GAS_PRICE), + Resource.L1_GAS: ResourceBounds(max_amount=0, max_price_per_unit=DEFAULT_MAX_FRI_L1_GAS_PRICE), Resource.L2_GAS: ResourceBounds(max_amount=0, max_price_per_unit=0), } @@ -98,15 +97,6 @@ def verify_version(self): old_supported_versions=[], ) - def get_state_selector(self, general_config: Config) -> StateSelector: - contract_addresses = {self.sender_address} - if not self.zero_max_fee: - # Downcast arguments to application-specific types. - assert isinstance(general_config, StarknetGeneralConfig) - contract_addresses.add(general_config.deprecated_fee_token_address) - - return StateSelector.create(contract_addresses=contract_addresses, class_hashes=[]) - @classmethod @abstractmethod def _specific_from_external( @@ -139,6 +129,8 @@ class InternalDeclare(InternalAccountTransaction): class_hash: int = field(metadata=fields.new_class_hash_metadata) compiled_class_hash: int = field(metadata=fields.compiled_class_hash_metadata) + sierra_program_size: int = field(metadata=fields.sierra_program_size_metadata) + abi_size: int = field(metadata=fields.abi_size_metadata) account_deployment_data: List[int] = field(metadata=fields.account_deployment_data_metadata) # Class variables. @@ -194,6 +186,8 @@ def create( paymaster_data=paymaster_data, class_hash=class_hash, compiled_class_hash=compiled_class_hash, + sierra_program_size=contract_class.get_bytecode_size(), + abi_size=contract_class.get_abi_size(), account_deployment_data=[] if account_deployment_data is None else account_deployment_data, @@ -246,12 +240,6 @@ async def create_for_testing( def to_external(self) -> Declare: raise NotImplementedError("Cannot convert internal declare transaction to external object.") - def get_state_selector(self, general_config: Config) -> StateSelector: - account_state_selector = super().get_state_selector(general_config=general_config) - return account_state_selector | StateSelector.create( - contract_addresses=[], class_hashes=[self.class_hash] - ) - @classmethod def _specific_from_external( cls, external_tx: Transaction, general_config: StarknetGeneralConfig @@ -390,12 +378,6 @@ def to_external(self) -> DeployAccount: tip=self.tip, ) - def get_state_selector(self, general_config: Config) -> StateSelector: - account_state_selector = super().get_state_selector(general_config=general_config) - return account_state_selector | StateSelector.create( - contract_addresses=[], class_hashes=[self.class_hash] - ) - @classmethod def _specific_from_external( cls, external_tx: Transaction, general_config: StarknetGeneralConfig diff --git a/src/starkware/starknet/business_logic/transaction/objects.py b/src/starkware/starknet/business_logic/transaction/objects.py index 6ffdb98d..b7fc6b92 100644 --- a/src/starkware/starknet/business_logic/transaction/objects.py +++ b/src/starkware/starknet/business_logic/transaction/objects.py @@ -2,14 +2,14 @@ import inspect from abc import abstractmethod from dataclasses import field -from typing import ClassVar, Dict, Iterable, Set, Type, cast +from typing import ClassVar, Dict, Iterable, Type from services.everest.api.gateway.transaction import EverestTransaction from services.everest.business_logic.internal_transaction import ( EverestInternalStateTransaction, EverestInternalTransaction, ) -from starkware.starknet.business_logic.fact_state.contract_state_objects import StateSelector +from services.everest.business_logic.state import StateSelectorBase from starkware.starknet.definitions import fields from starkware.starknet.definitions.general_config import StarknetGeneralConfig from starkware.starknet.definitions.transaction_type import TransactionType @@ -115,37 +115,14 @@ def verify_signatures(self): Unused in StarkNet. """ - @abstractmethod - def get_state_selector(self, general_config: Config) -> StateSelector: - """ - See base class for documentation. - Declared here for return type downcast. - """ + def get_state_selector(self, general_config: Config) -> StateSelectorBase: + raise NotImplementedError("Starknet's state selector is obtained from the execution info.") @staticmethod def get_state_selector_of_many( txs: Iterable[EverestInternalStateTransaction], general_config: Config - ) -> StateSelector: - """ - Returns the state selector of a collection of transactions (i.e., union of selectors). - """ - # Downcast arguments to application-specific types. - assert isinstance(general_config, StarknetGeneralConfig) - txs = cast(Iterable[InternalTransaction], txs) - - contract_addresses: Set[int] = set() - class_hashes: Set[int] = set() - - for tx in txs: - state_selector = tx.get_state_selector(general_config=general_config) - contract_addresses.update(state_selector.contract_addresses) - class_hashes.update(state_selector.class_hashes) - - frozen_contract_addresses = frozenset(contract_addresses) - frozen_class_hashes = frozenset(class_hashes) - return StateSelector( - contract_addresses=frozen_contract_addresses, class_hashes=frozen_class_hashes - ) + ) -> StateSelectorBase: + raise NotImplementedError("Starknet's state selector is obtained from the execution info.") @classmethod @abstractmethod diff --git a/src/starkware/starknet/business_logic/transaction/state_objects.py b/src/starkware/starknet/business_logic/transaction/state_objects.py index 034f8f0b..931b981a 100644 --- a/src/starkware/starknet/business_logic/transaction/state_objects.py +++ b/src/starkware/starknet/business_logic/transaction/state_objects.py @@ -2,9 +2,10 @@ import functools import logging from abc import ABC, abstractmethod -from typing import Optional, Tuple +from typing import Iterable, Optional, Tuple from services.everest.business_logic.internal_transaction import EverestInternalStateTransaction +from services.everest.business_logic.state import StateSelectorBase from services.everest.business_logic.state_api import StateProxy from starkware.starknet.business_logic.execution.objects import ( CallInfo, @@ -32,6 +33,15 @@ class InternalStateTransaction(EverestInternalStateTransaction, ABC): See for example, SyntheticTransaction. """ + @staticmethod + def get_state_selector_of_many( + txs: Iterable[EverestInternalStateTransaction], general_config: Config + ) -> StateSelectorBase: + raise NotImplementedError + + def get_state_selector(self, general_config: Config) -> StateSelectorBase: + raise NotImplementedError + async def apply_state_updates( self, state: StateProxy, general_config: Config ) -> Optional[TransactionExecutionInfo]: diff --git a/src/starkware/starknet/business_logic/utils.py b/src/starkware/starknet/business_logic/utils.py index 9abd7c8b..f670d88f 100644 --- a/src/starkware/starknet/business_logic/utils.py +++ b/src/starkware/starknet/business_logic/utils.py @@ -8,11 +8,11 @@ from starkware.cairo.lang.builtins.all_builtins import with_suffix from starkware.cairo.lang.vm.cairo_pie import ExecutionResources from starkware.python.utils import from_bytes, sub_counters, to_bytes +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.gas_usage import calculate_tx_gas_usage from starkware.starknet.business_logic.execution.objects import ( CallInfo, CallResult, - ExecutionResourcesManager, ResourcesMapping, TransactionExecutionInfo, ) diff --git a/src/starkware/starknet/cli/BUILD b/src/starkware/starknet/cli/BUILD index 305385c0..11c4c866 100644 --- a/src/starkware/starknet/cli/BUILD +++ b/src/starkware/starknet/cli/BUILD @@ -22,21 +22,43 @@ py_library( "//src/starkware/starknet/services/api/feeder_gateway:starknet_feeder_gateway_request_objects_lib", "//src/starkware/starknet/services/api/gateway:starknet_deprecated_transaction_lib", "//src/starkware/starknet/services/api/gateway:starknet_gateway_client_lib", + "//src/starkware/starknet/wallets:starknet_standard_wallets_lib", "//src/starkware/starknet/wallets:starknet_wallets_lib", "//src/starkware/starkware_utils:starkware_error_handling_lib", ], ) +py_library( + name = "compiled_class_hash_lib", + srcs = [ + "compiled_class_hash.py", + ], + deps = [ + "//src/starkware/cairo/lang:cairo_version_lib", + "//src/starkware/cairo/lang/vm:cairo_vm_crypto_lib", + "//src/starkware/starknet/core/os/contract_class:starknet_os_abi_lib", + "//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib", + ], +) + +py_exe( + name = "compute_compiled_class_hash", + module = "starkware.starknet.cli.compiled_class_hash", + deps = [ + ":compiled_class_hash_lib", + ], +) + py_library( name = "starknet_cli_lib", srcs = [ "class_hash.py", - "compiled_class_hash.py", "reconstruct_starknet_traceback.py", "starknet_cli.py", ], visibility = ["//visibility:public"], deps = [ + ":compiled_class_hash_lib", ":starknet_cli_utils_lib", "//src/starkware/cairo/lang:cairo_version_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", diff --git a/src/starkware/starknet/compiler/v1/compile.py b/src/starkware/starknet/compiler/v1/compile.py index fa4c09d2..daaa489d 100644 --- a/src/starkware/starknet/compiler/v1/compile.py +++ b/src/starkware/starknet/compiler/v1/compile.py @@ -1,5 +1,6 @@ import json import os +import resource import subprocess import tempfile from typing import Any, Dict, List, Optional @@ -26,6 +27,7 @@ def build_sierra_to_casm_compilation_args( compiler_args: Optional[str] = None, allowed_libfuncs_list_name: Optional[str] = None, allowed_libfuncs_list_file: Optional[str] = None, + max_bytecode_size: Optional[int] = None, ) -> List[str]: """ Returns the compilation arguments for a given starknet contract. @@ -45,6 +47,9 @@ def build_sierra_to_casm_compilation_args( if add_pythonic_hints: additional_args.append("--add-pythonic-hints") + if max_bytecode_size is not None: + additional_args.append(f"--max-bytecode-size={max_bytecode_size}") + additional_args += build_allowed_libfuncs_args( allowed_libfuncs_list_name=allowed_libfuncs_list_name, allowed_libfuncs_list_file=allowed_libfuncs_list_file, @@ -99,6 +104,8 @@ def compile_sierra_to_casm( allowed_libfuncs_list_name: Optional[str] = None, allowed_libfuncs_list_file: Optional[str] = None, compiler_dir: Optional[str] = None, + memory_limit_in_mb: Optional[int] = None, + max_bytecode_size: Optional[int] = None, ) -> JsonObject: """ Compiles a Starknet Sierra contract. @@ -114,10 +121,11 @@ def compile_sierra_to_casm( add_pythonic_hints=add_pythonic_hints, allowed_libfuncs_list_name=allowed_libfuncs_list_name, allowed_libfuncs_list_file=allowed_libfuncs_list_file, + max_bytecode_size=max_bytecode_size, ) command = [compiler_path, sierra_path, *additional_args] - return run_compile_command(command=command) + return run_compile_command(command=command, memory_limit_in_mb=memory_limit_in_mb) def compile_cairo_to_casm( @@ -145,9 +153,21 @@ def compile_cairo_to_casm( ) -def run_compile_command(command: List[str]) -> JsonObject: +def set_memory_limit(memory_limit_in_mb: Optional[int]): + if not memory_limit_in_mb: + limit_in_bytes = resource.RLIM_INFINITY + else: + limit_in_bytes = memory_limit_in_mb * 1024 * 1024 + resource.setrlimit(resource.RLIMIT_AS, (limit_in_bytes, resource.RLIM_INFINITY)) + + +def run_compile_command(command: List[str], memory_limit_in_mb: Optional[int] = None) -> JsonObject: try: - result: subprocess.CompletedProcess = subprocess.run(command, capture_output=True) + result: subprocess.CompletedProcess = subprocess.run( + command, + preexec_fn=(lambda: set_memory_limit(memory_limit_in_mb=memory_limit_in_mb)), + capture_output=True, + ) except subprocess.CalledProcessError: # The inner command is responsible for printing the error message. No need to print the # stack trace of this script. diff --git a/src/starkware/starknet/compiler/v1/mainnet_libfuncs.json b/src/starkware/starknet/compiler/v1/mainnet_libfuncs.json index d0d13135..27907da5 100644 --- a/src/starkware/starknet/compiler/v1/mainnet_libfuncs.json +++ b/src/starkware/starknet/compiler/v1/mainnet_libfuncs.json @@ -16,6 +16,7 @@ "bool_or_impl", "bool_to_felt252", "bool_xor_impl", + "box_forward_snapshot", "branch_align", "bytes31_const", "bytes31_to_felt252", @@ -24,9 +25,13 @@ "class_hash_const", "class_hash_to_felt252", "class_hash_try_from_felt252", + "const_as_box", "contract_address_const", "contract_address_to_felt252", "contract_address_try_from_felt252", + "coupon_buy", + "coupon_call", + "coupon_refund", "deploy_syscall", "disable_ap_tracking", "downcast", @@ -45,6 +50,7 @@ "emit_event_syscall", "enable_ap_tracking", "enum_init", + "enum_from_bounded_int", "enum_match", "enum_snapshot_match", "felt252_add", @@ -114,6 +120,7 @@ "library_call_syscall", "match_nullable", "null", + "nullable_forward_snapshot", "nullable_from_box", "pedersen", "rename", @@ -131,6 +138,7 @@ "secp256r1_new_syscall", "send_message_to_l1_syscall", "snapshot_take", + "span_from_tuple", "storage_address_from_base_and_offset", "storage_address_from_base", "storage_address_to_felt252", diff --git a/src/starkware/starknet/compiler/v1/testnet_libfuncs.json b/src/starkware/starknet/compiler/v1/testnet_libfuncs.json index d0d13135..27907da5 100644 --- a/src/starkware/starknet/compiler/v1/testnet_libfuncs.json +++ b/src/starkware/starknet/compiler/v1/testnet_libfuncs.json @@ -16,6 +16,7 @@ "bool_or_impl", "bool_to_felt252", "bool_xor_impl", + "box_forward_snapshot", "branch_align", "bytes31_const", "bytes31_to_felt252", @@ -24,9 +25,13 @@ "class_hash_const", "class_hash_to_felt252", "class_hash_try_from_felt252", + "const_as_box", "contract_address_const", "contract_address_to_felt252", "contract_address_try_from_felt252", + "coupon_buy", + "coupon_call", + "coupon_refund", "deploy_syscall", "disable_ap_tracking", "downcast", @@ -45,6 +50,7 @@ "emit_event_syscall", "enable_ap_tracking", "enum_init", + "enum_from_bounded_int", "enum_match", "enum_snapshot_match", "felt252_add", @@ -114,6 +120,7 @@ "library_call_syscall", "match_nullable", "null", + "nullable_forward_snapshot", "nullable_from_box", "pedersen", "rename", @@ -131,6 +138,7 @@ "secp256r1_new_syscall", "send_message_to_l1_syscall", "snapshot_take", + "span_from_tuple", "storage_address_from_base_and_offset", "storage_address_from_base", "storage_address_to_felt252", diff --git a/src/starkware/starknet/core/aggregator/BUILD b/src/starkware/starknet/core/aggregator/BUILD new file mode 100644 index 00000000..96836a33 --- /dev/null +++ b/src/starkware/starknet/core/aggregator/BUILD @@ -0,0 +1,19 @@ +load("//bazel_utils:python.bzl", "pytest_test") + +py_library( + name = "cairo_aggregator_lib", + srcs = [ + "output_parser.py", + ], +) + +pytest_test( + name = "starknet_aggregator_test", + srcs = [ + "aggregator_test.py", + ], + visibility = ["//visibility:public"], + deps = [ + ":cairo_aggregator_lib", + ], +) diff --git a/src/starkware/starknet/core/aggregator/aggregator_test.py b/src/starkware/starknet/core/aggregator/aggregator_test.py new file mode 100644 index 00000000..cea9e446 --- /dev/null +++ b/src/starkware/starknet/core/aggregator/aggregator_test.py @@ -0,0 +1,171 @@ +from starkware.starknet.core.aggregator.output_parser import ( + ContractChanges, + OsOutput, + parse_bootloader_output, +) + +# Dummy values for the test. +OS_PROGRAM_HASH = 0x7E0B89C77D0003C05511B9F0E1416F1328C2132E41E056B2EF3BC950135360F +OS_CONFIG_HASH = 0x3410F9DCE5078BFA24B30F28F9F9107A995E5F339334A7126730A993045681 +BLOCK0_HASH = 0x1C5CA4BCC4C03D843B8C08F9C8628BA7A108D2B62F4C0F6EF224F250679230E +BLOCK1_HASH = 0x378294C261592B32272381910BCB2402A864E1CDF68EDC855CAA24CACF68B65 +ROOT0 = 0 +ROOT1 = 0x3BCBB6FD22F39E772ACE7F905AC64FBF6D7139CAC2C44189D59B37618BB62D0 +ROOT2 = 0x269DDFB6E729A030E3513A7E8208D68BE9AB97852681FB531E7FC69FAC2852A + +CONTRACT_ADDR0 = 0x42593E24F58291B1D7E4FD081AE6DD88D0B198E23C3F722E7E5A7A4C7BCD3D5 +CLASS_HASH = 0x178286A1179F01D8A55F34B8CC651C7DD7B298B222A392197E703C3F8E161DE +STORAGE_KEY0 = 0xB6CE5410FCA59D078EE9B2A4371A9D684C530D697C64FBEF0AE6D5E8F0AC72 +STORAGE_KEY1 = 0x110E2F729C9C2B988559994A3DACCD838CF52FAF88E18101373E67DD061455A +STORAGE_KEY2 = 0x1390569BB0A3A722EB4228E8700301347DA081211D5C2DED2DB22EF389551AB +STORAGE_KEY3 = 0x124A17A64F318C191BAB4FEEEDA0A65B420FF92861FFB021759F05A2598ABF + +STORAGE_VALUE0_0 = 0x15A44BFBB65C4961F54BC84CADBFC542AA8529E293E9FD7D45E3008DD75F376 +STORAGE_VALUE0_1 = 0x31F90D664D5604B8B38C9C442B005B7E41BDA662E6E15A7364220D633153F35 +STORAGE_VALUE1_0 = 0x2456E7A60B3AB8B28E9AB0D9FBF0D437CCDDC9776664AF33FFD6506FC1AB8E1 +STORAGE_VALUE2_0 = 0x20E9DCD4DDB159970BD2D51075C8CC823E68BB04777FABB65879E0EA455AEE1 +STORAGE_VALUE3_1 = 0x3C87090C322CC7E56F05DA6AEE18B28F8DD98A787F5280BD9469B00E08AFC43 + +MSG_TO_L1_0 = [ + 0x3F9A3CD755E1C8D50080AE5C76CACB1C6CACDCDF1C467C9F0A0ABDB684A6E3D, + 0x3795FD47F065CF5541F0EA7D9702450F09898EF7, + 2, + 12, + 34, +] +MSG_TO_L2_0 = [ + 0x3795FD47F065CF5541F0EA7D9702450F09898EF7, + 0x3F9A3CD755E1C8D50080AE5C76CACB1C6CACDCDF1C467C9F0A0ABDB684A6E3D, + 2, + 0, + 1, + 0x1234, +] + +BLOCK0_OUTPUT = [ + # initial_root. + ROOT0, + # final_root. + ROOT1, + # block_number. + 1, + # block_hash. + BLOCK0_HASH, + OS_CONFIG_HASH, + # use_kzg_da. + 0, + # Messages to L1. + len(MSG_TO_L1_0), + *MSG_TO_L1_0, + # Messages to L2. + len(MSG_TO_L2_0), + *MSG_TO_L2_0, + # Number of contracts. + 1, + # Contract addr. + CONTRACT_ADDR0, + # 3 updates, nonce=1, class updated. + 3 + 1 * 2**64 + 1 * 2**128, + # Class hash. + CLASS_HASH, + # Storage updates. + STORAGE_KEY0, + STORAGE_VALUE0_0, + STORAGE_KEY1, + STORAGE_VALUE1_0, + STORAGE_KEY2, + STORAGE_VALUE2_0, + # Number of classes. + 0, +] + +BLOCK1_OUTPUT = [ + # initial_root. + ROOT1, + # final_root. + ROOT2, + # block_number. + 2, + # block_hash. + BLOCK1_HASH, + OS_CONFIG_HASH, + # use_kzg_da. + 0, + # Messages to L1. + 0, + # Messages to L2. + 0, + # Number of contracts. + 1, + # Contract addr. + CONTRACT_ADDR0, + # 2 updates, nonce=2, no class update. + 2 + 2 * 2**64 + 0 * 2**128, + STORAGE_KEY0, + STORAGE_VALUE0_1, + STORAGE_KEY3, + STORAGE_VALUE3_1, + # Number of classes. + 0, +] + +BOOTLOADER_OUTPUT = [ + # Number of blocks. + 2, + len(BLOCK0_OUTPUT) + 2, + OS_PROGRAM_HASH, + *BLOCK0_OUTPUT, + len(BLOCK1_OUTPUT) + 2, + OS_PROGRAM_HASH, + *BLOCK1_OUTPUT, +] + + +def test_output_parser(): + assert parse_bootloader_output(output=BOOTLOADER_OUTPUT) == [ + OsOutput( + initial_root=ROOT0, + final_root=ROOT1, + block_number=1, + block_hash=BLOCK0_HASH, + starknet_os_config_hash=OS_CONFIG_HASH, + use_kzg_da=0, + messages_to_l1=MSG_TO_L1_0, + messages_to_l2=MSG_TO_L2_0, + contracts=[ + ContractChanges( + addr=CONTRACT_ADDR0, + nonce=1, + class_hash=CLASS_HASH, + storage_changes={ + STORAGE_KEY0: STORAGE_VALUE0_0, + STORAGE_KEY1: STORAGE_VALUE1_0, + STORAGE_KEY2: STORAGE_VALUE2_0, + }, + ) + ], + classes={}, + ), + OsOutput( + initial_root=ROOT1, + final_root=ROOT2, + block_number=2, + block_hash=BLOCK1_HASH, + starknet_os_config_hash=OS_CONFIG_HASH, + use_kzg_da=0, + messages_to_l1=[], + messages_to_l2=[], + contracts=[ + ContractChanges( + addr=CONTRACT_ADDR0, + nonce=2, + class_hash=None, + storage_changes={ + STORAGE_KEY0: STORAGE_VALUE0_1, + STORAGE_KEY3: STORAGE_VALUE3_1, + }, + ) + ], + classes={}, + ), + ] diff --git a/src/starkware/starknet/core/aggregator/output_parser.py b/src/starkware/starknet/core/aggregator/output_parser.py new file mode 100644 index 00000000..3a473293 --- /dev/null +++ b/src/starkware/starknet/core/aggregator/output_parser.py @@ -0,0 +1,145 @@ +import dataclasses +import itertools +from typing import Dict, Iterator, List, Optional + + +@dataclasses.dataclass +class ContractChanges: + """ + Represents the changes in a contract instance. + """ + + # The address of the contract. + addr: int + # The new nonce of the contract (for account contracts). + nonce: int + # The new class hash (if changed). + class_hash: Optional[int] + # A map from storage key to its new value. + storage_changes: Dict[int, int] + + +@dataclasses.dataclass +class OsOutput: + """ + Represents the output of the OS. + """ + + # The root before. + initial_root: int + # The root after. + final_root: int + # The block number. + block_number: int + # The block hash. + block_hash: int + # The hash of the OS config. + starknet_os_config_hash: int + # Whether KZG data availability was used. + use_kzg_da: int + # Messages from L2 to L1. + messages_to_l1: List[int] + # Messages from L1 to L2. + messages_to_l2: List[int] + # The list of contracts that were changed. + contracts: Optional[List[ContractChanges]] + # The list of classes that were declared. A map from class hash to compiled class hash. + classes: Optional[Dict[int, int]] + + +def parse_bootloader_output(output: List[int]) -> List[OsOutput]: + """ + Parses the output of the bootloader, assuming the tasks are instances of the Starknet OS. + """ + output_iter = iter(output) + + n_tasks = next(output_iter) + tasks = [] + for _ in range(n_tasks): + next(output_iter) # Output size. + next(output_iter) # Program hash. + tasks.append(parse_os_output(output_iter)) + + assert next(output_iter, None) is None, "Bootloader output wasn't fully consumed." + + return tasks + + +def parse_os_output(output_iter: Iterator[int]) -> OsOutput: + """ + Parses the output of the Starknet OS. + """ + initial_root = next(output_iter) + final_root = next(output_iter) + block_number = next(output_iter) + block_hash = next(output_iter) + starknet_os_config_hash = next(output_iter) + use_kzg_da = next(output_iter) + + assert use_kzg_da in [0, 1], f"Invalid KZG flag: {use_kzg_da}" + + if use_kzg_da == 1: + # Skip KZG data. + list(itertools.islice(output_iter, 5)) + + # Handle messages. + messages_to_l1_segment_size = next(output_iter) + messages_to_l1 = list(itertools.islice(output_iter, messages_to_l1_segment_size)) + messages_to_l2_segment_size = next(output_iter) + messages_to_l2 = list(itertools.islice(output_iter, messages_to_l2_segment_size)) + + contracts: Optional[List[ContractChanges]] + if use_kzg_da == 0: + # Contract changes. + n_contracts = next(output_iter) + contracts = [] + for _ in range(n_contracts): + contracts.append(parse_contract_changes(output_iter)) + + # Class changes. + n_classes = next(output_iter) + classes = {} + for _ in range(n_classes): + class_hash = next(output_iter) + compiled_class_hash = next(output_iter) + classes[class_hash] = compiled_class_hash + else: + contracts = classes = None + + return OsOutput( + initial_root=initial_root, + final_root=final_root, + block_number=block_number, + block_hash=block_hash, + starknet_os_config_hash=starknet_os_config_hash, + use_kzg_da=use_kzg_da, + messages_to_l1=messages_to_l1, + messages_to_l2=messages_to_l2, + contracts=contracts, + classes=classes, + ) + + +def parse_contract_changes(data: Iterator[int]) -> ContractChanges: + """ + Parses contract changes. + """ + addr = next(data) + class_nonce_n_changes = next(data) + class_nonce, n_changes = divmod(class_nonce_n_changes, 2**64) + class_updated, nonce = divmod(class_nonce, 2**64) + + if class_updated: + class_hash = next(data) + else: + class_hash = None + + storage_changes = {} + for _ in range(n_changes): + key = next(data) + value = next(data) + storage_changes[key] = value + + return ContractChanges( + addr=addr, nonce=nonce, class_hash=class_hash, storage_changes=storage_changes + ) diff --git a/src/starkware/starknet/core/os/BUILD b/src/starkware/starknet/core/os/BUILD index e7722c95..aad45b88 100644 --- a/src/starkware/starknet/core/os/BUILD +++ b/src/starkware/starknet/core/os/BUILD @@ -2,15 +2,37 @@ load("//src/starkware/cairo/lang:cairo_rules.bzl", "cairo_binary", "cairo_librar load("//bazel_utils/python:defs.bzl", "requirement") load("//bazel_utils:python.bzl", "pytest_test") +cairo_library( + name = "starknet_builtins_cairo_lib", + srcs = [ + "builtins.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/cairo/builtin_selection:cairo_builtin_selection_cairo_lib", + "//src/starkware/starknet/builtins/segment_arena:segment_arena_cairo_lib", + ], +) + +cairo_binary( + name = "starknet_builtins", + cairoopts = [ + "--debug_info_with_source", + ], + compiled_program_name = "starknet_builtins.json", + main = "//src/starkware/starknet/core/os:builtins.cairo", + deps = [":starknet_builtins_cairo_lib"], +) + cairo_library( name = "starknet_os_program_cairo_lib", srcs = [ "block_context.cairo", - "builtins.cairo", "constants.cairo", "os.cairo", "output.cairo", - "state.cairo", + "//src/starkware/starknet/common:constants.cairo", + "//src/starkware/starknet/common:storage.cairo", "//src/starkware/starknet/core/os/contract_address:contract_address.cairo", "//src/starkware/starknet/core/os/contract_class:compiled_class.cairo", "//src/starkware/starknet/core/os/contract_class:deprecated_compiled_class.cairo", @@ -24,34 +46,22 @@ cairo_library( ], visibility = ["//visibility:public"], deps = [ - "//src/starkware/cairo/builtin_selection:cairo_builtin_selection_cairo_lib", + ":starknet_builtins_cairo_lib", + ":starknet_new_syscalls_cairo_lib", + ":starknet_syscalls_cairo_lib", "//src/starkware/cairo/common:cairo_common_cairo_lib", - "//src/starkware/starknet/builtins/segment_arena:segment_arena_cairo_lib", "//src/starkware/starknet/core/os/contract_class:starknet_os_abi_cairo_lib", + "//src/starkware/starknet/core/os/data_availability:bls_field", + "//src/starkware/starknet/core/os/data_availability:commitment", + "//src/starkware/starknet/core/os/state:starknet_os_state_lib", ], ) cairo_library( - name = "starknet_os_program_lib", + name = "starknet_syscalls_cairo_lib", srcs = [ - "//src/starkware/starknet/common:constants.cairo", - "//src/starkware/starknet/common:new_syscalls.cairo", - "//src/starkware/starknet/common:storage.cairo", "//src/starkware/starknet/common:syscalls.cairo", ], - deps = [ - ":starknet_os_program_cairo_lib", - ], -) - -cairo_binary( - name = "starknet_os_program", - cairoopts = [ - "--debug_info_with_source", - ], - compiled_program_name = "starknet_os_compiled.json", - main = "os.cairo", - deps = [":starknet_os_program_lib"], ) cairo_binary( @@ -61,7 +71,14 @@ cairo_binary( ], compiled_program_name = "starknet_syscalls.json", main = "//src/starkware/starknet/common:syscalls.cairo", - deps = [":starknet_os_program_lib"], + deps = [":starknet_syscalls_cairo_lib"], +) + +cairo_library( + name = "starknet_new_syscalls_cairo_lib", + srcs = [ + "//src/starkware/starknet/common:new_syscalls.cairo", + ], ) cairo_binary( @@ -71,7 +88,17 @@ cairo_binary( ], compiled_program_name = "starknet_new_syscalls.json", main = "//src/starkware/starknet/common:new_syscalls.cairo", - deps = [":starknet_os_program_lib"], + deps = [":starknet_new_syscalls_cairo_lib"], +) + +cairo_binary( + name = "starknet_os_program", + cairoopts = [ + "--debug_info_with_source", + ], + compiled_program_name = "starknet_os_compiled.json", + main = "os.cairo", + deps = [":starknet_os_program_cairo_lib"], ) py_library( @@ -105,29 +132,77 @@ py_library( deps = [ "//src/starkware/cairo/bootloaders:cairo_hash_program_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/starknet/core/os/data_availability:bls_utils", requirement("cachetools"), ], ) py_library( - name = "starknet_syscall_handler_lib", + name = "syscall_utils_lib", srcs = [ - "syscall_handler.py", "syscall_utils.py", ], data = [ + "starknet_builtins.json", "starknet_new_syscalls.json", "starknet_syscalls.json", ], visibility = ["//visibility:public"], deps = [ + "//src/starkware/cairo/common:cairo_common_lib", + "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", + "//src/starkware/python:starkware_python_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_execute_entry_point_base_lib", + "//src/starkware/starknet/definitions:starknet_definitions_lib", + "//src/starkware/starkware_utils:starkware_error_handling_lib", + requirement("cachetools"), + ], +) + +py_library( + name = "os_logger_lib", + srcs = [ + "os_logger.py", + ], + data = [ + "starknet_builtins.json", + "starknet_new_syscalls.json", + "starknet_syscalls.json", + ], + visibility = ["//visibility:public"], + deps = [ + ":syscall_utils_lib", + "//src/starkware/cairo/lang/builtins:cairo_all_builtins_lib", + "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", + "//src/starkware/cairo/lang/vm:cairo_vm_lib", + "//src/starkware/python:starkware_python_utils_lib", + "//src/starkware/starknet/business_logic/transaction:starknet_transaction_objects_lib", + "//src/starkware/starknet/definitions:starknet_general_config_lib", + requirement("cachetools"), + ], +) + +py_library( + name = "starknet_syscall_handler_lib", + srcs = [ + "syscall_handler.py", + ], + data = [ + "starknet_new_syscalls.json", + ], + visibility = ["//visibility:public"], + deps = [ + ":os_logger_lib", + ":syscall_utils_lib", "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/common:cairo_function_runner_lib", "//src/starkware/cairo/common/cairo_secp:utils", - "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", "//src/starkware/python:starkware_python_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_execute_entry_point_base_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", @@ -151,12 +226,15 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + ":os_logger_lib", ":starknet_syscall_handler_lib", + ":syscall_utils_lib", "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/common:cairo_function_runner_lib", "//src/starkware/cairo/lang/vm:cairo_relocatable_lib", "//src/starkware/cairo/lang/vm:cairo_vm_lib", "//src/starkware/python:starkware_python_utils_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_execute_entry_point_base_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/state:starknet_business_logic_state_lib", @@ -188,3 +266,28 @@ pytest_test( "//src/starkware/python:starkware_python_utils_lib", ], ) + +py_library( + name = "starknet_os_lib", + srcs = [ + "os_input.py", + ], + data = [ + "output.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + ":starknet_deprecated_syscall_handler_lib", + ":starknet_syscall_handler_lib", + "//src/starkware/starknet/business_logic/fact_state:starknet_business_logic_patricia_state_lib", + "//src/starkware/starknet/business_logic/transaction:internal_transaction_schema", + "//src/starkware/starknet/business_logic/transaction:starknet_transaction_objects_lib", + "//src/starkware/starknet/definitions:starknet_definitions_lib", + "//src/starkware/starknet/definitions:starknet_general_config_lib", + "//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib", + "//src/starkware/starknet/storage:starknet_storage_lib", + "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", + requirement("marshmallow"), + requirement("marshmallow_dataclass"), + ], +) diff --git a/src/starkware/starknet/core/os/block_context.cairo b/src/starkware/starknet/core/os/block_context.cairo index b777c5e3..31499e32 100644 --- a/src/starkware/starknet/core/os/block_context.cairo +++ b/src/starkware/starknet/core/os/block_context.cairo @@ -1,4 +1,5 @@ from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin +from starkware.cairo.common.math import unsigned_div_rem from starkware.cairo.common.registers import get_fp_and_pc from starkware.starknet.common.new_syscalls import BlockInfo from starkware.starknet.core.os.builtins import BuiltinParams, get_builtin_params @@ -12,6 +13,10 @@ from starkware.starknet.core.os.contract_class.deprecated_compiled_class import ) from starkware.starknet.core.os.os_config.os_config import StarknetOsConfig +// Round down the block number and timestamp when queried inside `__validate__`. +const VALIDATE_BLOCK_NUMBER_ROUNDING = 100; +const VALIDATE_TIMESTAMP_ROUNDING = 3600; + // Represents information that is the same throughout the block. struct BlockContext { // Parameters for select_builtins. @@ -53,8 +58,14 @@ func get_block_context{poseidon_ptr: PoseidonBuiltin*, pedersen_ptr: HashBuiltin n_deprecated_compiled_class_facts, deprecated_compiled_class_facts ) = deprecated_load_compiled_class_facts(); let (builtin_params) = get_builtin_params(); - tempvar block_number = nondet %{ deprecated_syscall_handler.block_info.block_number %}; - tempvar block_timestamp = nondet %{ deprecated_syscall_handler.block_info.block_timestamp %}; + tempvar block_number = nondet %{ syscall_handler.block_info.block_number %}; + tempvar block_timestamp = nondet %{ syscall_handler.block_info.block_timestamp %}; + let (divided_block_number, _) = unsigned_div_rem(block_number, VALIDATE_BLOCK_NUMBER_ROUNDING); + tempvar block_number_for_validate = divided_block_number * VALIDATE_BLOCK_NUMBER_ROUNDING; + let (divided_block_timestamp, _) = unsigned_div_rem( + block_timestamp, VALIDATE_TIMESTAMP_ROUNDING + ); + tempvar block_timestamp_for_validate = divided_block_timestamp * VALIDATE_TIMESTAMP_ROUNDING; local block_context: BlockContext = BlockContext( builtin_params=builtin_params, n_compiled_class_facts=n_compiled_class_facts, @@ -64,10 +75,12 @@ func get_block_context{poseidon_ptr: PoseidonBuiltin*, pedersen_ptr: HashBuiltin block_info=new BlockInfo( block_number=block_number, block_timestamp=block_timestamp, - sequencer_address=nondet %{ os_input.general_config.sequencer_address %}, + sequencer_address=nondet %{ syscall_handler.block_info.sequencer_address %}, ), block_info_for_validate=new BlockInfo( - block_number=block_number, block_timestamp=block_timestamp, sequencer_address=0 + block_number=block_number_for_validate, + block_timestamp=block_timestamp_for_validate, + sequencer_address=0, ), starknet_os_config=StarknetOsConfig( chain_id=nondet %{ os_input.general_config.chain_id.value %}, diff --git a/src/starkware/starknet/core/os/block_hash/BUILD b/src/starkware/starknet/core/os/block_hash/BUILD index 19a4821b..fe05d933 100644 --- a/src/starkware/starknet/core/os/block_hash/BUILD +++ b/src/starkware/starknet/core/os/block_hash/BUILD @@ -10,7 +10,7 @@ py_library( "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/lang/vm:cairo_vm_crypto_lib", "//src/starkware/python:starkware_python_utils_lib", - "//src/starkware/starknet/definitions:starknet_general_config_lib", + "//src/starkware/starknet/definitions:starknet_definitions_lib", "//src/starkware/starkware_utils:starkware_utils_lib", "//src/starkware/storage:starkware_abstract_storage_lib", "//src/starkware/storage:starkware_dict_storage_lib", diff --git a/src/starkware/starknet/core/os/block_hash/block_hash.py b/src/starkware/starknet/core/os/block_hash/block_hash.py index 79a303d1..77288d96 100644 --- a/src/starkware/starknet/core/os/block_hash/block_hash.py +++ b/src/starkware/starknet/core/os/block_hash/block_hash.py @@ -1,18 +1,33 @@ +import dataclasses from typing import Callable, Iterable, List, Sequence, Tuple -from starkware.cairo.common.hash_state import compute_hash_on_elements +from starkware.cairo.common.hash_state import ( + compute_hash_on_elements, + compute_hash_on_elements_without_length, +) from starkware.cairo.lang.vm.crypto import pedersen_hash from starkware.python.utils import from_bytes, process_concurrently, safe_zip, to_bytes -from starkware.starknet.definitions.general_config import StarknetGeneralConfig +from starkware.starknet.definitions import constants from starkware.starkware_utils.commitment_tree.patricia_tree.patricia_tree import PatriciaTree from starkware.storage.dict_storage import DictStorage from starkware.storage.storage import FactFetchingContext from starkware.storage.storage_utils import SimpleLeafFact +BlockHash = int +BlockHashWithoutParent = int + + +@dataclasses.dataclass(frozen=True) +class BlockCommitments: + tx_commitment: int + event_commitment: int + + +BLOCK_HASH_N_ELEMENTS = 11 + async def calculate_block_hash( - general_config: StarknetGeneralConfig, - parent_hash: int, + parent_hash: BlockHash, block_number: int, global_state_root: int, sequencer_address: int, @@ -21,9 +36,9 @@ async def calculate_block_hash( tx_signatures: Sequence[List[int]], event_hashes: Sequence[int], hash_function: Callable[[int, int], int] = pedersen_hash, -) -> int: +) -> Tuple[BlockHash, BlockCommitments]: """ - Calculates the block hash in the StarkNet network. + Calculates the block hash in the Starknet network. The block hash is a hash chain of the following information: 1. Parent block hash. 2. Block number. @@ -39,6 +54,46 @@ async def calculate_block_hash( Each hash chain computation begins with 0 as initialization and ends with its length appended. The length is appended in order to avoid collisions of the following kind: H([x,y,z]) = h(h(x,y),z) = H([w, z]) where w = h(x,y). + + Returns the block hash, the transaction commitment and the event commitment. + """ + block_hash_without_parent, commitments = await calculate_block_hash_without_parent( + block_number=block_number, + global_state_root=global_state_root, + sequencer_address=sequencer_address, + block_timestamp=block_timestamp, + tx_hashes=tx_hashes, + tx_signatures=tx_signatures, + event_hashes=event_hashes, + hash_function=hash_function, + ) + + block_hash = finalize_block_hash( + block_hash_without_parent=block_hash_without_parent, + parent_hash=parent_hash, + hash_function=hash_function, + ) + return block_hash, BlockCommitments( + tx_commitment=commitments.tx_commitment, event_commitment=commitments.event_commitment + ) + + +async def calculate_block_hash_without_parent( + block_number: int, + global_state_root: int, + sequencer_address: int, + block_timestamp: int, + tx_hashes: Sequence[int], + tx_signatures: Sequence[List[int]], + event_hashes: Sequence[int], + hash_function: Callable[[int, int], int] = pedersen_hash, +) -> Tuple[BlockHashWithoutParent, BlockCommitments]: + """ + Hashes the prefix of the block hash chain, excluding the parent block hash + and the total number of elements in the chain. + See calculate_block_hash documentation for more details. + + Returns the hash, the transaction commitment and the event commitment. """ def bytes_hash_function(x: bytes, y: bytes) -> bytes: @@ -54,32 +109,51 @@ def bytes_hash_function(x: bytes, y: bytes) -> bytes: # Calculate transaction commitment. tx_commitment = await calculate_patricia_root( leaves=tx_final_hashes, - height=general_config.tx_commitment_tree_height, + height=constants.TRANSACTION_COMMITMENT_TREE_HEIGHT, ffc=ffc, ) event_commitment = await calculate_patricia_root( - leaves=event_hashes, height=general_config.event_commitment_tree_height, ffc=ffc + leaves=event_hashes, height=constants.EVENT_COMMITMENT_TREE_HEIGHT, ffc=ffc ) - return compute_hash_on_elements( - data=[ - block_number, - global_state_root, - sequencer_address, - block_timestamp, - len(tx_hashes), # Number of transactions. - tx_commitment, # Transaction commitment. - len(event_hashes), # Number of events. - event_commitment, # Event commitment. - 0, # Protocol version. - 0, # Extra data. - # Must be last for future optimization; that way we can separate the calculation of all - # the other fields, which depend on the block itself, from the parent block hash, - # as the hash is calculated in the following order: H([x,y,z]) = h(h(x,y),z). - parent_hash, - ], - hash_func=hash_function, + data = [ + block_number, + global_state_root, + sequencer_address, + block_timestamp, + len(tx_hashes), # Number of transactions. + tx_commitment, # Transaction commitment. + len(event_hashes), # Number of events. + event_commitment, # Event commitment. + 0, # Protocol version. + 0, # Extra data. + ] + assert len(data) == BLOCK_HASH_N_ELEMENTS - 1, ( + f"Unexpected number of block hash elements; got {len(data) + 1}; " + f"expected {BLOCK_HASH_N_ELEMENTS}." + ) + + # Hash all block hash members except parent_hash and the number of hash members. + block_hash_without_parent = compute_hash_on_elements_without_length( + data=data, hash_func=hash_function + ) + return block_hash_without_parent, BlockCommitments( + tx_commitment=tx_commitment, event_commitment=event_commitment + ) + + +def finalize_block_hash( + block_hash_without_parent: BlockHashWithoutParent, + parent_hash: BlockHash, + hash_function: Callable[[int, int], int] = pedersen_hash, +) -> BlockHash: + """ + Completes the block hash calculation by hashing prefix hash with the parent hash, and the + total number of block hash elements. + """ + return hash_function( + hash_function(block_hash_without_parent, parent_hash), BLOCK_HASH_N_ELEMENTS ) diff --git a/src/starkware/starknet/core/os/constants.cairo b/src/starkware/starknet/core/os/constants.cairo index 4f995679..87316e77 100644 --- a/src/starkware/starknet/core/os/constants.cairo +++ b/src/starkware/starknet/core/os/constants.cairo @@ -8,7 +8,7 @@ const ENTRY_POINT_TYPE_CONSTRUCTOR = 2; const L1_HANDLER_VERSION = 0; -const SIERRA_ARRAY_LEN_BOUND = 2 ** 32; +const SIERRA_ARRAY_LEN_BOUND = 4294967296; // 2^32 // get_selector_from_name('constructor'). const CONSTRUCTOR_ENTRY_POINT_SELECTOR = ( @@ -54,7 +54,7 @@ const STEP_GAS_COST = 100; const RANGE_CHECK_GAS_COST = 70; const MEMORY_HOLE_GAS_COST = 10; -const INITIAL_GAS_COST = (10 ** 8) * STEP_GAS_COST; +const INITIAL_GAS_COST = 100000000 * STEP_GAS_COST; // Compiler gas costs. @@ -70,25 +70,25 @@ const SYSCALL_BASE_GAS_COST = 100 * STEP_GAS_COST; // The base amount of gas for executing an entry point. This amount is reduced from the gas // counter by the OS. The rest of the required gas will be taken from the gas counter by the // contract. -const ENTRY_POINT_GAS_COST = ENTRY_POINT_INITIAL_BUDGET + 500 * STEP_GAS_COST; +const ENTRY_POINT_GAS_COST = 1 * ENTRY_POINT_INITIAL_BUDGET + 500 * STEP_GAS_COST; -const FEE_TRANSFER_GAS_COST = ENTRY_POINT_GAS_COST + 100 * STEP_GAS_COST; +const FEE_TRANSFER_GAS_COST = 1 * ENTRY_POINT_GAS_COST + 100 * STEP_GAS_COST; // The base amount of gas for executing a transaction. For example, this includes the cost of the // fee transfer and execution of two entry points ('validate' and 'execute'). -const TRANSACTION_GAS_COST = (2 * ENTRY_POINT_GAS_COST) + FEE_TRANSFER_GAS_COST + ( - 100 * STEP_GAS_COST -); +const TRANSACTION_GAS_COST = 2 * ENTRY_POINT_GAS_COST + 1 * FEE_TRANSFER_GAS_COST + 100 * + STEP_GAS_COST; // Syscall gas costs. -const CALL_CONTRACT_GAS_COST = SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST + ENTRY_POINT_GAS_COST; -const DEPLOY_GAS_COST = SYSCALL_BASE_GAS_COST + 200 * STEP_GAS_COST + ENTRY_POINT_GAS_COST; -const GET_BLOCK_HASH_GAS_COST = SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; -const GET_EXECUTION_INFO_GAS_COST = SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST; -const LIBRARY_CALL_GAS_COST = CALL_CONTRACT_GAS_COST; -const REPLACE_CLASS_GAS_COST = SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; -const STORAGE_READ_GAS_COST = SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; -const STORAGE_WRITE_GAS_COST = SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; -const EMIT_EVENT_GAS_COST = SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST; -const SEND_MESSAGE_TO_L1_GAS_COST = SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; +const CALL_CONTRACT_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST + 1 * + ENTRY_POINT_GAS_COST; +const DEPLOY_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 200 * STEP_GAS_COST + 1 * ENTRY_POINT_GAS_COST; +const GET_BLOCK_HASH_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; +const GET_EXECUTION_INFO_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST; +const LIBRARY_CALL_GAS_COST = 1 * CALL_CONTRACT_GAS_COST; +const REPLACE_CLASS_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; +const STORAGE_READ_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; +const STORAGE_WRITE_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; +const EMIT_EVENT_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 10 * STEP_GAS_COST; +const SEND_MESSAGE_TO_L1_GAS_COST = 1 * SYSCALL_BASE_GAS_COST + 50 * STEP_GAS_COST; // Note the the following costs include `SYSCALL_BASE_GAS_COST` implicitly. const SECP256K1_ADD_GAS_COST = 406 * STEP_GAS_COST + 29 * RANGE_CHECK_GAS_COST; @@ -96,7 +96,8 @@ const SECP256K1_GET_POINT_FROM_X_GAS_COST = 391 * STEP_GAS_COST + 30 * RANGE_CHE MEMORY_HOLE_GAS_COST; const SECP256K1_GET_XY_GAS_COST = 239 * STEP_GAS_COST + 11 * RANGE_CHECK_GAS_COST + 40 * MEMORY_HOLE_GAS_COST; -const SECP256K1_MUL_GAS_COST = 76401 * STEP_GAS_COST + 7045 * RANGE_CHECK_GAS_COST; +const SECP256K1_MUL_GAS_COST = 76501 * STEP_GAS_COST + 7045 * RANGE_CHECK_GAS_COST + 2 * + MEMORY_HOLE_GAS_COST; const SECP256K1_NEW_GAS_COST = 475 * STEP_GAS_COST + 35 * RANGE_CHECK_GAS_COST + 40 * MEMORY_HOLE_GAS_COST; const SECP256R1_ADD_GAS_COST = 589 * STEP_GAS_COST + 57 * RANGE_CHECK_GAS_COST; @@ -104,11 +105,12 @@ const SECP256R1_GET_POINT_FROM_X_GAS_COST = 510 * STEP_GAS_COST + 44 * RANGE_CHE MEMORY_HOLE_GAS_COST; const SECP256R1_GET_XY_GAS_COST = 241 * STEP_GAS_COST + 11 * RANGE_CHECK_GAS_COST + 40 * MEMORY_HOLE_GAS_COST; -const SECP256R1_MUL_GAS_COST = 125240 * STEP_GAS_COST + 13961 * RANGE_CHECK_GAS_COST; +const SECP256R1_MUL_GAS_COST = 125340 * STEP_GAS_COST + 13961 * RANGE_CHECK_GAS_COST + 2 * + MEMORY_HOLE_GAS_COST; const SECP256R1_NEW_GAS_COST = 594 * STEP_GAS_COST + 49 * RANGE_CHECK_GAS_COST + 40 * MEMORY_HOLE_GAS_COST; -const KECCAK_GAS_COST = SYSCALL_BASE_GAS_COST; +const KECCAK_GAS_COST = 1 * SYSCALL_BASE_GAS_COST; const KECCAK_ROUND_COST_GAS_COST = 180000; // Cairo 1.0 error codes. diff --git a/src/starkware/starknet/core/os/contract_class/BUILD b/src/starkware/starknet/core/os/contract_class/BUILD index 40f8ac29..76e228a0 100644 --- a/src/starkware/starknet/core/os/contract_class/BUILD +++ b/src/starkware/starknet/core/os/contract_class/BUILD @@ -20,6 +20,14 @@ exports_files([ "deprecated_compiled_class.cairo", ]) +py_library( + name = "compiled_class_hash_objects", + srcs = [ + "compiled_class_hash_objects.py", + ], + deps = ["//src/starkware/cairo/lang/vm:cairo_vm_crypto_lib"], +) + py_library( name = "starknet_os_abi_lib", srcs = [ @@ -38,6 +46,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + ":compiled_class_hash_objects", "//src/starkware/cairo/common:cairo_common_lib", "//src/starkware/cairo/common:cairo_function_runner_lib", "//src/starkware/cairo/lang:cairo_constants_lib", @@ -61,6 +70,7 @@ pytest_test( visibility = ["//visibility:public"], deps = [ ":starknet_os_abi_lib", + "//src/starkware/python:starkware_python_test_utils_lib", "//src/starkware/starknet/core/test_contract:starknet_test_external_contract_test_utils_lib", "//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib", requirement("cachetools"), diff --git a/src/starkware/starknet/core/os/contract_class/compiled_class.cairo b/src/starkware/starknet/core/os/contract_class/compiled_class.cairo index 289f10dc..86afc53c 100644 --- a/src/starkware/starknet/core/os/contract_class/compiled_class.cairo +++ b/src/starkware/starknet/core/os/contract_class/compiled_class.cairo @@ -6,8 +6,10 @@ from starkware.cairo.common.hash_state_poseidon import ( hash_init, hash_update_single, hash_update_with_nested_hash, + poseidon_hash_many, ) from starkware.cairo.common.math import assert_lt_felt +from starkware.cairo.common.poseidon_state import PoseidonBuiltinState from starkware.cairo.common.registers import get_fp_and_pc const COMPILED_CLASS_VERSION = 'COMPILED_CLASS_V1'; @@ -76,9 +78,10 @@ func validate_entry_points_inner{range_check_ptr}( ); } -func compiled_class_hash{poseidon_ptr: PoseidonBuiltin*}(compiled_class: CompiledClass*) -> ( - hash: felt -) { +func compiled_class_hash{range_check_ptr, poseidon_ptr: PoseidonBuiltin*}( + compiled_class: CompiledClass* +) -> (hash: felt) { + alloc_locals; assert compiled_class.compiled_class_version = COMPILED_CLASS_VERSION; let hash_state: HashState = hash_init(); @@ -102,15 +105,158 @@ func compiled_class_hash{poseidon_ptr: PoseidonBuiltin*}(compiled_class: Compile ); // Hash bytecode. - hash_update_with_nested_hash( + let bytecode_hash = bytecode_hash_node( data_ptr=compiled_class.bytecode_ptr, data_length=compiled_class.bytecode_length ); + hash_update_single(item=bytecode_hash); } let hash: felt = hash_finalize(hash_state=hash_state); return (hash=hash); } +// Returns the hash of the contract class bytecode according to its segments. +// +// The hash is computed according to a segment tree. Each segment may be either a leaf or divided +// into smaller segments (internal node). +// For example, the bytecode may be divided into functions and each function can be divided +// according to its branches. +// +// The hash of a leaf is the Poseidon hash the data. +// The hash of an internal node is `1 + poseidon(len0, hash0, len1, hash1, ...)` where +// len0 is the total length of the first segment, hash0 is the hash of the first segment, and so on. +// +// For each segment, the *prover* can choose whether to load or skip the segment. +// +// * Loaded segment: +// For leaves, the data will be fully loaded into memory. +// For internal nodes, the prover can choose to load/skip each of the children separately. +// +// * Skipped segment: +// The inner structure of that segment is ignored. +// The only guarantee is that the first field element is enforced to be -1. +// The rest of the field elements are unconstrained. +// The fact that a skipped segment is guaranteed to begin with -1 implies that the execution of +// the program cannot visit the start of the segment, as -1 is not a valid Cairo opcode. +// +// In the example above of division according to functions and branches, a function may be skipped +// entirely or partially. +// As long as one function does not jump into the middle of another function and as long as there +// are no jumps into the middle of a branch segment, the loading process described above will be +// sound. +func bytecode_hash_node{range_check_ptr, poseidon_ptr: PoseidonBuiltin*}( + data_ptr: felt*, data_length: felt +) -> felt { + alloc_locals; + + local is_leaf; + + %{ + from starkware.starknet.core.os.contract_class.compiled_class_hash_objects import ( + BytecodeLeaf, + ) + ids.is_leaf = 1 if isinstance(bytecode_segment_structure, BytecodeLeaf) else 0 + %} + + // Guess if the bytecode is a leaf or an internal node in the tree. + if (is_leaf != 0) { + // If the bytecode is a leaf, it must be loaded into memory. Compute its hash. + let (hash) = poseidon_hash_many(n=data_length, elements=data_ptr); + return hash; + } + + %{ bytecode_segments = iter(bytecode_segment_structure.segments) %} + + // Use the poseidon builtin directly for performance reasons. + let poseidon_state = PoseidonBuiltinState(s0=0, s1=0, s2=0); + bytecode_hash_internal_node{poseidon_state=poseidon_state}( + data_ptr=data_ptr, data_length=data_length + ); + + // Pad input with [1, 0]. See implementation of poseidon_hash_many(). + assert poseidon_ptr.input = PoseidonBuiltinState( + s0=poseidon_state.s0 + 1, s1=poseidon_state.s1, s2=poseidon_state.s2 + ); + let segmented_hash = poseidon_ptr.output.s0; + let poseidon_ptr = &poseidon_ptr[1]; + + // Add 1 to segmented_hash to avoid collisions with the hash of a leaf (domain separation). + return segmented_hash + 1; +} + +// Helper function for bytecode_hash_node. +// Computes the hash of an internal node by adding its children to the hash state. +func bytecode_hash_internal_node{ + range_check_ptr, poseidon_ptr: PoseidonBuiltin*, poseidon_state: PoseidonBuiltinState +}(data_ptr: felt*, data_length: felt) { + if (data_length == 0) { + %{ assert next(bytecode_segments, None) is None %} + return (); + } + + alloc_locals; + local is_used_leaf; + local is_segment_used; + local segment_length; + + %{ + current_segment_info = next(bytecode_segments) + + is_used = current_segment_info.is_used + ids.is_segment_used = 1 if is_used else 0 + + is_used_leaf = is_used and isinstance(current_segment_info.inner_structure, BytecodeLeaf) + ids.is_used_leaf = 1 if is_used_leaf else 0 + + ids.segment_length = current_segment_info.segment_length + vm_enter_scope(new_scope_locals={ + "bytecode_segment_structure": current_segment_info.inner_structure, + }) + %} + + if (is_used_leaf != 0) { + // Repeat the code of bytecode_hash_node() for performance reasons, instead of calling it. + let (current_segment_hash) = poseidon_hash_many(n=segment_length, elements=data_ptr); + // tempvar current_segment_hash = nondet %{ bytecode_segment_structure.hash() %}; + tempvar range_check_ptr = range_check_ptr; + tempvar poseidon_ptr = poseidon_ptr; + tempvar current_segment_hash = current_segment_hash; + } else { + if (is_segment_used != 0) { + let current_segment_hash = bytecode_hash_node( + data_ptr=data_ptr, data_length=segment_length + ); + } else { + // Set the first felt of the bytecode to -1 to make sure that the execution cannot jump + // to this segment (-1 is an invalid opcode). + // The hash in this case is guessed and the actual bytecode is unconstrained (except for + // the first felt). + assert data_ptr[0] = -1; + + assert [range_check_ptr] = segment_length; + tempvar range_check_ptr = range_check_ptr + 1; + tempvar poseidon_ptr = poseidon_ptr; + tempvar current_segment_hash = nondet %{ bytecode_segment_structure.hash() %}; + } + } + + // Add the segment length and hash to the hash state. + // Use the poseidon builtin directly for performance reasons. + assert poseidon_ptr.input = PoseidonBuiltinState( + s0=poseidon_state.s0 + segment_length, + s1=poseidon_state.s1 + current_segment_hash, + s2=poseidon_state.s2, + ); + let poseidon_state = poseidon_ptr.output; + let poseidon_ptr = &poseidon_ptr[1]; + + %{ vm_exit_scope() %} + + return bytecode_hash_internal_node( + data_ptr=&data_ptr[segment_length], data_length=data_length - segment_length + ); +} + func hash_entry_points{poseidon_ptr: PoseidonBuiltin*, hash_state: HashState}( entry_points: CompiledClassEntryPoint*, n_entry_points: felt ) { @@ -165,6 +311,7 @@ func load_compiled_class_facts{poseidon_ptr: PoseidonBuiltin*, range_check_ptr}( ids.n_compiled_class_facts = len(os_input.compiled_classes) vm_enter_scope({ 'compiled_class_facts': iter(os_input.compiled_classes.items()), + 'compiled_class_visited_pcs': os_input.compiled_class_visited_pcs, }) %} @@ -203,13 +350,23 @@ func load_compiled_class_facts_inner{poseidon_ptr: PoseidonBuiltin*, range_check // Fetch contract data form hints. %{ from starkware.starknet.core.os.contract_class.compiled_class_hash import ( + create_bytecode_segment_structure, get_compiled_class_struct, ) compiled_class_hash, compiled_class = next(compiled_class_facts) + bytecode_segment_structure = create_bytecode_segment_structure( + bytecode=compiled_class.bytecode, + bytecode_segment_lengths=compiled_class.bytecode_segment_lengths, + visited_pcs=compiled_class_visited_pcs[compiled_class_hash], + ) + cairo_contract = get_compiled_class_struct( - identifiers=ids._context.identifiers, compiled_class=compiled_class) + identifiers=ids._context.identifiers, + compiled_class=compiled_class, + bytecode=bytecode_segment_structure.bytecode_with_skipped_segments() + ) ids.compiled_class = segments.gen_arg(cairo_contract) %} @@ -222,7 +379,13 @@ func load_compiled_class_facts_inner{poseidon_ptr: PoseidonBuiltin*, range_check n_entry_points=compiled_class.n_l1_handlers, entry_points=compiled_class.l1_handlers ); + %{ + vm_enter_scope({ + "bytecode_segment_structure": bytecode_segment_structure + }) + %} let (hash) = compiled_class_hash(compiled_class); + %{ vm_exit_scope() %} compiled_class_fact.hash = hash; // Compiled classes are expected to end with a `ret` opcode followed by a pointer to the diff --git a/src/starkware/starknet/core/os/contract_class/compiled_class_hash.py b/src/starkware/starknet/core/os/contract_class/compiled_class_hash.py index b1540425..dc79c95c 100644 --- a/src/starkware/starknet/core/os/contract_class/compiled_class_hash.py +++ b/src/starkware/starknet/core/os/contract_class/compiled_class_hash.py @@ -1,8 +1,14 @@ -from typing import List +from typing import List, Optional, Sequence, Tuple from starkware.cairo.common.cairo_function_runner import CairoFunctionRunner from starkware.cairo.lang.vm.crypto import poseidon_hash_many from starkware.python.utils import as_non_optional, from_bytes +from starkware.starknet.core.os.contract_class.compiled_class_hash_objects import ( + BytecodeLeaf, + BytecodeSegment, + BytecodeSegmentedNode, + BytecodeSegmentStructure, +) from starkware.starknet.core.os.contract_class.compiled_class_hash_utils import ( get_compiled_class_struct, load_compiled_class_cairo_program, @@ -14,6 +20,7 @@ CompiledClass, CompiledClassEntryPoint, EntryPointType, + NestedIntList, ) @@ -62,7 +69,11 @@ def _compute_compiled_class_hash_inner(compiled_class: CompiledClass) -> int: constructors_hash = compute_hash_on_entry_points( entry_points=compiled_class.entry_points_by_type[EntryPointType.CONSTRUCTOR] ) - bytecode_hash = poseidon_hash_many(compiled_class.bytecode) + bytecode_hash = create_bytecode_segment_structure( + bytecode=compiled_class.bytecode, + bytecode_segment_lengths=compiled_class.bytecode_segment_lengths, + visited_pcs=None, + ).hash() # Compute total hash by hashing each component on top of the previous one. return poseidon_hash_many( @@ -76,18 +87,107 @@ def _compute_compiled_class_hash_inner(compiled_class: CompiledClass) -> int: ) -def run_compiled_class_hash(compiled_class: CompiledClass) -> CairoFunctionRunner: +def create_bytecode_segment_structure( + bytecode: List[int], + bytecode_segment_lengths: NestedIntList, + visited_pcs: Optional[Sequence[int]], +) -> BytecodeSegmentStructure: + """ + Creates a BytecodeSegmentStructure instance from the given bytecode and + bytecode_segment_lengths. + """ + rev_visited_pcs = list(visited_pcs if visited_pcs is not None else range(len(bytecode)))[::-1] + + res, total_len = _create_bytecode_segment_structure_inner( + bytecode=bytecode, + bytecode_segment_lengths=bytecode_segment_lengths, + visited_pcs=rev_visited_pcs, + bytecode_offset=0, + ) + assert total_len == len( + bytecode + ), f"Invalid length bytecode segment structure: {total_len}. Bytecode length: {len(bytecode)}." + assert len(rev_visited_pcs) == 0, f"PC {rev_visited_pcs[-1]} is out of range." + return res + + +def _create_bytecode_segment_structure_inner( + bytecode: List[int], + bytecode_segment_lengths: NestedIntList, + visited_pcs: List[int], + bytecode_offset: int, +) -> Tuple[BytecodeSegmentStructure, int]: + """ + Helper function for `create_bytecode_segment_structure`. + `visited_pcs` should be given in reverse order, and is consumed by the function. + Returns the BytecodeSegmentStructure and the total length of the processed segment. + """ + if isinstance(bytecode_segment_lengths, int): + segment_end = bytecode_offset + bytecode_segment_lengths + + # Remove all the visited PCs that are in the segment. + while len(visited_pcs) > 0 and bytecode_offset <= visited_pcs[-1] < segment_end: + visited_pcs.pop() + + return (BytecodeLeaf(data=bytecode[bytecode_offset:segment_end]), bytecode_segment_lengths) + + res = [] + total_len = 0 + for item in bytecode_segment_lengths: + visited_pc_before = visited_pcs[-1] if len(visited_pcs) > 0 else None + + current_structure, item_len = _create_bytecode_segment_structure_inner( + bytecode=bytecode, + bytecode_segment_lengths=item, + visited_pcs=visited_pcs, + bytecode_offset=bytecode_offset, + ) + + visited_pc_after = visited_pcs[-1] if len(visited_pcs) > 0 else None + is_used = visited_pc_after != visited_pc_before + + if is_used and visited_pc_before != bytecode_offset: + raise ValueError( + f"Invalid segment structure: PC {visited_pc_before} was visited, " + f"but the beginning of the segment ({bytecode_offset}) was not." + ) + + res.append( + BytecodeSegment( + segment_length=item_len, is_used=is_used, inner_structure=current_structure + ) + ) + bytecode_offset += item_len + total_len += item_len + + return BytecodeSegmentedNode(segments=res), total_len + + +def run_compiled_class_hash( + compiled_class: CompiledClass, visited_pcs: Optional[Sequence[int]] = None +) -> CairoFunctionRunner: program = load_compiled_class_cairo_program() + runner = CairoFunctionRunner(program=program) + + bytecode_segment_structure = create_bytecode_segment_structure( + bytecode=compiled_class.bytecode, + bytecode_segment_lengths=compiled_class.bytecode_segment_lengths, + visited_pcs=visited_pcs, + ) + compiled_class_struct = get_compiled_class_struct( - identifiers=program.identifiers, compiled_class=compiled_class + identifiers=program.identifiers, + compiled_class=compiled_class, + bytecode=bytecode_segment_structure.bytecode_with_skipped_segments(), ) - runner = CairoFunctionRunner(program=program) runner.run( "starkware.starknet.core.os.contract_class.compiled_class.compiled_class_hash", + range_check_ptr=runner.range_check_builtin.base, poseidon_ptr=runner.poseidon_builtin.base, compiled_class=compiled_class_struct, use_full_name=True, verify_secure=False, + hint_locals={"bytecode_segment_structure": bytecode_segment_structure}, ) return runner diff --git a/src/starkware/starknet/core/os/contract_class/compiled_class_hash_objects.py b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_objects.py new file mode 100644 index 00000000..3946a199 --- /dev/null +++ b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_objects.py @@ -0,0 +1,99 @@ +import dataclasses +import itertools +from abc import ABC, abstractmethod +from typing import List + +from starkware.cairo.lang.vm.crypto import poseidon_hash_many + + +class BytecodeSegmentStructure(ABC): + """ + Represents the structure of the bytecode to allow loading it partially into the OS memory. + See the documentation of the OS function `bytecode_hash_node` in `compiled_class.cairo` + for more details. + """ + + @abstractmethod + def hash(self) -> int: + """ + Computes the hash of the node. + """ + + def bytecode_with_skipped_segments(self): + """ + Returns the bytecode of the node. + Skipped segments are replaced with [-1, -2, -2, -2, ...]. + """ + res: List[int] = [] + self._add_bytecode_with_skipped_segments(res) + return res + + @abstractmethod + def _add_bytecode_with_skipped_segments(self, data: List[int]): + """ + Same as bytecode_with_skipped_segments, but appends the result to the given list. + """ + + +@dataclasses.dataclass +class BytecodeLeaf(BytecodeSegmentStructure): + """ + Represents a leaf in the bytecode segment tree. + """ + + data: List[int] + + def hash(self) -> int: + return poseidon_hash_many(self.data) + + def _add_bytecode_with_skipped_segments(self, data: List[int]): + data.extend(self.data) + + +@dataclasses.dataclass +class BytecodeSegmentedNode(BytecodeSegmentStructure): + """ + Represents an internal node in the bytecode segment tree. + Each child can be loaded into memory or skipped. + """ + + segments: List["BytecodeSegment"] + + def hash(self) -> int: + return ( + poseidon_hash_many( + itertools.chain( + *[(node.segment_length, node.inner_structure.hash()) for node in self.segments] + ) + ) + + 1 + ) + + def _add_bytecode_with_skipped_segments(self, data: List[int]): + for segment in self.segments: + if segment.is_used: + segment.inner_structure._add_bytecode_with_skipped_segments(data) + else: + data.append(-1) + data.extend(-2 for _ in range(segment.segment_length - 1)) + + +@dataclasses.dataclass +class BytecodeSegment: + """ + Represents a child of BytecodeSegmentedNode. + """ + + # The length of the segment. + segment_length: int + # Should the segment (or part of it) be loaded to memory. + # In other words, is the segment used during the execution. + # Note that if is_used is False, the entire segment is not loaded to memory. + # If is_used is True, it is possible that part of the segment will be skipped (according + # to the "is_used" field of the child segments). + is_used: bool + # The inner structure of the segment. + inner_structure: BytecodeSegmentStructure + + def __post_init__(self): + assert self.segment_length > 0, f"Invalid segment length: {self.segment_length}." diff --git a/src/starkware/starknet/core/os/contract_class/compiled_class_hash_test.py b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_test.py index 9f8b163b..b3352c83 100644 --- a/src/starkware/starknet/core/os/contract_class/compiled_class_hash_test.py +++ b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_test.py @@ -1,8 +1,12 @@ +from typing import List, Optional, Sequence + import cachetools import pytest +from starkware.python.test_utils import maybe_raises from starkware.starknet.core.os.contract_class.compiled_class_hash import ( compute_compiled_class_hash, + create_bytecode_segment_structure, run_compiled_class_hash, ) from starkware.starknet.core.os.contract_class.utils import set_class_hash_cache @@ -10,29 +14,43 @@ from starkware.starknet.services.api.contract_class.contract_class import CompiledClass -@pytest.fixture -def compiled_class() -> CompiledClass: - return get_test_compiled_class() - - -def compute_compiled_class_hash_using_cairo(compiled_class: CompiledClass) -> int: - runner = run_compiled_class_hash(compiled_class=compiled_class) +def compute_compiled_class_hash_using_cairo( + compiled_class: CompiledClass, visited_pcs: Optional[Sequence[int]] +) -> int: + runner = run_compiled_class_hash(compiled_class=compiled_class, visited_pcs=visited_pcs) _, class_hash = runner.get_return_values(2) return class_hash -def test_compiled_class_hash(compiled_class: CompiledClass): +CLASS_HASH_WITH_SEGMENTATION = 0x5517AD8471C9AA4D1ADD31837240DEAD9DC6653854169E489A813DB4376BE9C +CLASS_HASH_WITHOUT_SEGMENTATION = 0xB268995DD0EE80DEBFB8718852750B5FD22082D0C729121C48A0487A4D2F64 + + +@pytest.mark.parametrize( + "compiled_class, expected_hash", + [ + ( + get_test_compiled_class(contract_segmentation=False), + CLASS_HASH_WITHOUT_SEGMENTATION, + ), + ( + get_test_compiled_class(contract_segmentation=True), + CLASS_HASH_WITH_SEGMENTATION, + ), + ], +) +def test_compiled_class_hash_basic(compiled_class: CompiledClass, expected_hash: int): """ Tests that the hash of a constant contract does not change. """ - expected_compiled_class_hash = 0x64FE2D71ABA33FC59ACB622B95157D54989B130F1FB3F9253A655F88B50DD02 # Assert that our test Python hash computation is equivalent to static value. cairo_computed_compiled_class_hash = compute_compiled_class_hash_using_cairo( - compiled_class=compiled_class + compiled_class=compiled_class, + visited_pcs=None, ) - assert expected_compiled_class_hash == cairo_computed_compiled_class_hash, ( + assert expected_hash == cairo_computed_compiled_class_hash, ( f"Computed compiled class hash: {hex(cairo_computed_compiled_class_hash)} " - f"does not match the expected value: {hex(expected_compiled_class_hash)}." + f"does not match the expected value: {hex(expected_hash)}." ) cache: cachetools.LRUCache = cachetools.LRUCache(maxsize=10) @@ -44,7 +62,46 @@ def test_compiled_class_hash(compiled_class: CompiledClass): ) assert len(cache) == 1 - assert python_computed_compiled_class_hash == expected_compiled_class_hash, ( + assert python_computed_compiled_class_hash == expected_hash, ( f"Computed compiled class hash: {hex(python_computed_compiled_class_hash)} " - f"does not match the expected value: {hex(expected_compiled_class_hash)}." + f"does not match the expected value: {hex(expected_hash)}." ) + + +@pytest.mark.parametrize( + "visited_pcs, expected_bytecode, error_message", + [ + ([], [-1, -2, -2, -1, -2, -2, -1, -2, -2, -2], None), + ([0], [1, 2, 3, -1, -2, -2, -1, -2, -2, -2], None), + ([0, 2, 3, 6, 9], [1, 2, 3, 4, -1, -1, 7, 8, 9, 10], None), + ([3], [-1, -2, -2, 4, -1, -1, -1, -2, -2, -2], None), + ([6], [-1, -2, -2, -1, -2, -2, 7, 8, 9, 10], None), + ([3, 5], [-1, -2, -2, 4, -1, 6, -1, -2, -2, -2], None), + ([7], None, "PC 7 was visited, but the beginning of the segment (6) was not"), + ([5], None, "PC 5 was visited, but the beginning of the segment (3) was not"), + ([10], None, "PC 10 is out of range"), + ], +) +def test_compiled_class_hash_visited_pcs( + visited_pcs: List[int], + expected_bytecode: Optional[List[int]], + error_message: Optional[str], +): + compiled_class = get_test_compiled_class(contract_segmentation=True) + with maybe_raises(expected_exception=(AssertionError, ValueError), error_message=error_message): + assert ( + compute_compiled_class_hash_using_cairo( + compiled_class=compiled_class, + visited_pcs=visited_pcs, + ) + == CLASS_HASH_WITH_SEGMENTATION + ) + + if error_message is None: + bytecode_segment_structure = create_bytecode_segment_structure( + bytecode=compiled_class.bytecode, + bytecode_segment_lengths=compiled_class.bytecode_segment_lengths, + visited_pcs=visited_pcs, + ) + + assert bytecode_segment_structure.bytecode_with_skipped_segments() == expected_bytecode diff --git a/src/starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py index d5274b25..c023ca8a 100644 --- a/src/starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py +++ b/src/starkware/starknet/core/os/contract_class/compiled_class_hash_utils.py @@ -69,10 +69,12 @@ def _get_contract_entry_points( def get_compiled_class_struct( - identifiers: IdentifierManager, compiled_class: CompiledClass + identifiers: IdentifierManager, compiled_class: CompiledClass, bytecode: List[int] ) -> CairoStructProxy: """ Returns the serialization of a compiled class as a list of field elements. + Note that the bytecode is passed explicitly (rather than taken from the compiled class) to + allow skipping some code segments. """ structs = _get_empty_compiled_class_structs() @@ -100,6 +102,8 @@ def get_compiled_class_struct( for entry_points in (external_functions, l1_handlers, constructors) ) + assert len(bytecode) == len(compiled_class.bytecode) + return structs.CompiledClass( compiled_class_version=COMPILED_CLASS_VERSION_IDENT.value, n_external_functions=len(external_functions), @@ -108,6 +112,6 @@ def get_compiled_class_struct( l1_handlers=flat_l1_handlers, n_constructors=len(constructors), constructors=flat_constructors, - bytecode_length=len(compiled_class.bytecode), - bytecode_ptr=compiled_class.bytecode, + bytecode_length=len(bytecode), + bytecode_ptr=bytecode, ) diff --git a/src/starkware/starknet/core/os/data_availability/BUILD b/src/starkware/starknet/core/os/data_availability/BUILD new file mode 100644 index 00000000..16551153 --- /dev/null +++ b/src/starkware/starknet/core/os/data_availability/BUILD @@ -0,0 +1,60 @@ +load("//bazel_utils:python.bzl", "pytest_test") +load("//src/starkware/cairo/lang:cairo_rules.bzl", "cairo_library") + +package(default_visibility = ["//visibility:public"]) + +exports_files([ + "commitment.cairo", +]) + +cairo_library( + name = "bls_field", + srcs = [ + "bls_field.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/cairo/common:cairo_common_cairo_lib", + ], +) + +py_library( + name = "bls_utils", + srcs = [ + "bls_utils.py", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/cairo/common:cairo_common_lib", + "//src/starkware/cairo/lang:cairo_constants_lib", + ], +) + +pytest_test( + name = "bls_field_test", + srcs = [ + "bls_field_test.py", + ], + data = [":bls_field"], + visibility = ["//visibility:public"], + deps = [ + ":bls_utils", + "//src/starkware/cairo/common:cairo_common_lib", + "//src/starkware/cairo/common:cairo_function_runner_lib", + "//src/starkware/cairo/lang:cairo_constants_lib", + "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + "//src/starkware/python:starkware_python_test_utils_lib", + ], +) + +cairo_library( + name = "commitment", + srcs = [ + "commitment.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + ":bls_field", + "//src/starkware/cairo/common:cairo_common_cairo_lib", + ], +) diff --git a/src/starkware/starknet/core/os/data_availability/bls_field.cairo b/src/starkware/starknet/core/os/data_availability/bls_field.cairo new file mode 100644 index 00000000..0cfb14e9 --- /dev/null +++ b/src/starkware/starknet/core/os/data_availability/bls_field.cairo @@ -0,0 +1,195 @@ +// BLS12-381 F_r field arithmetics. F_r - the scalar field of the BLS12-381 elliptic curve (where r +// is the size of a subgroup of the curve). + +from starkware.cairo.common.uint256 import Uint256 + +// The base of the representation (see BigInt3 below). +const BASE = 2 ** 86; + +// BLS_PRIME = 0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001 +// = P0 + P1 * BASE + P2 * BASE**2. +const P0 = 75387840085786938186924033; +const P1 = 38837452686214984973159423; +const P2 = 8759297294429794443932573; + +// Represents a BLS12-381 field element. +// +// The field element is represented as: d0 + d1 * BASE + d2 * BASE**2, and doesn't have to be +// reduced modulo BLS_PRIME. +// Each limb (d_i) is not restricted to the range [0, BASE), and in particular can be negative. +struct BigInt3 { + d0: felt, + d1: felt, + d2: felt, +} + +// Multiplies two field elements modulo the BLS12-381 curve subgroup size r. +// Arguments: +// a, b - the two BigInt3 to operate on. +// +// Returns: +// (a * b) % r as BigInt3. +// +// Assumption: each limb of a, b is in the range (-2**104, 2**104). +// Guarantee: each limb of the result is in the range [0, 3 * BASE). +func reduced_mul{range_check_ptr}(a: BigInt3, b: BigInt3) -> BigInt3 { + alloc_locals; + + // Find res and q, such that: + // res = a * b (mod BLS_PRIME) + // q = a * b // BLS_PRIME. + local q: BigInt3; + local res: BigInt3; + %{ + from starkware.starknet.core.os.data_availability.bls_utils import BLS_PRIME, pack, split + + a = pack(ids.a, PRIME) + b = pack(ids.b, PRIME) + + q, r = divmod(a * b, BLS_PRIME) + + # By the assumption: |a|, |b| < 2**104 * ((2**86) ** 2 + 2**86 + 1) < 2**276.001. + # Therefore |q| <= |ab| / BLS_PRIME < 2**299. + # Hence the absolute value of the high limb of split(q) < 2**127. + segments.write_arg(ids.q.address_, split(q)) + segments.write_arg(ids.res.address_, split(r)) + %} + + // Check that res.d0, res.d1, res.d2 are each is in the range [0, 3 * BASE): + assert [range_check_ptr] = res.d0; + assert [range_check_ptr + 1] = res.d1; + assert [range_check_ptr + 2] = res.d2; + // The maximal possible sum of the limbs, assuming each of them is in the range [0, BASE). + const MAX_SUM = 3 * (BASE - 1); + assert [range_check_ptr + 3] = (res.d0 + res.d1 + res.d2) + (2 ** 128 - 1 - MAX_SUM); + + // Check that q.d0, q.d1, q.d2 are each in the range [-2 ** 127, 2 ** 127). + assert [range_check_ptr + 4] = q.d0 + 2 ** 127; + assert [range_check_ptr + 5] = q.d1 + 2 ** 127; + assert [range_check_ptr + 6] = q.d2 + 2 ** 127; + + // Verify that a*b - q*BLS_PRIME - res == 0 (as integers). + // This is done by computing the limbs of (a*b - q*BLS_PRIME - res), and checking that all the + // limbs are 0. + + tempvar r0 = (a.d0 * b.d0 - q.d0 * P0 - res.d0) / BASE; + // Consider the dividend of the division above as d0. Therefore: limb_0 = d0 % BASE. + // The following range check, combined with the previous checks on q and res and the assumption + // regarding a and b, implies that r0 * BASE = d0 (as integers). + // This means that d0 is divisible by BASE, and therefore limb_0 = 0. + assert [range_check_ptr + 7] = r0 + 2 ** 127; + + tempvar r1 = (a.d1 * b.d0 + a.d0 * b.d1 - q.d1 * P0 - q.d0 * P1 - res.d1 + r0) / BASE; + // Similarly, the next range check implies that limb_1 = 0 (and the same for the other + // limbs below). + assert [range_check_ptr + 8] = r1 + 2 ** 127; + + tempvar r2 = ( + a.d2 * b.d0 + a.d1 * b.d1 + a.d0 * b.d2 - q.d2 * P0 - q.d1 * P1 - q.d0 * P2 - res.d2 + r1 + ) / BASE; + assert [range_check_ptr + 9] = r2 + 2 ** 127; + + tempvar r3 = (a.d2 * b.d1 + a.d1 * b.d2 - q.d2 * P1 - q.d1 * P2 + r2) / BASE; + assert [range_check_ptr + 10] = r3 + 2 ** 127; + + // r4 = a.d2 * b.d2 - q.d2 * P2 + r3 is limb_4, which should be 0. + assert a.d2 * b.d2 + r3 = q.d2 * P2; + + let range_check_ptr = range_check_ptr + 11; + return res; +} + +// Evaluates the polynomial f at the given point 'point', i.e.: +// f(point) = c_0 + c_1*point + ... + c_{n-1}*(point**(n-1)). (c_i = coefficient[i]). +// +// Assumption: each limb of point is in the range [0, BASE). +// Guarantee: each limb of res is in the range [0, 4 * BASE). +func horner_eval{range_check_ptr}( + n_coefficients: felt, coefficients: felt*, point: BigInt3 +) -> BigInt3 { + if (n_coefficients == 0) { + return (BigInt3(0, 0, 0)); + } + + alloc_locals; + + let n_minus_one_res = horner_eval( + n_coefficients=n_coefficients - 1, coefficients=&coefficients[1], point=point + ); + let inter_product = reduced_mul(a=n_minus_one_res, b=point); + let c0 = felt_to_bigint3(value=coefficients[0]); + return ( + BigInt3( + d0=inter_product.d0 + c0.d0, d1=inter_product.d1 + c0.d1, d2=inter_product.d2 + c0.d2 + ) + ); +} + +// Converts a felt to a BigInt3. +// +// Guarantee: each limb of res is in the range [0, BASE). +func felt_to_bigint3{range_check_ptr}(value: felt) -> BigInt3 { + alloc_locals; + + // The high limb of the Cairo field prime. + const PRIME_HIGH = (-1) / BASE ** 2; + + if (value == -1) { + // This is the only case where the high limb of the result is exactly PRIME_HIGH. + return (BigInt3(d0=0, d1=0, d2=PRIME_HIGH)); + } + + local res: BigInt3; + %{ + from starkware.starknet.core.os.data_availability.bls_utils import split + + segments.write_arg(ids.res.address_, split(ids.value)) + %} + + // Verify that res == value (mod Cairo field prime). + assert value = res.d2 * (BASE ** 2) + res.d1 * BASE + res.d0; + + // The following range checks ensure res does not overflow. + + // Check that res.d2 is in the range [0, PRIME_HIGH). + assert [range_check_ptr] = res.d2; + assert [range_check_ptr + 1] = res.d2 + 2 ** 128 - PRIME_HIGH; + + // Check that res.d1 and res.d0 are each in the range [0, BASE). + assert [range_check_ptr + 2] = res.d1; + assert [range_check_ptr + 3] = res.d1 + 2 ** 128 - BASE; + assert [range_check_ptr + 4] = res.d0; + assert [range_check_ptr + 5] = res.d0 + 2 ** 128 - BASE; + let range_check_ptr = range_check_ptr + 6; + + return res; +} + +// Converts a BigInt3 instance into a Uint256. +// +// Assumptions: +// * The limbs of value are in the range [0, BASE * 3). +// * value is in the range [0, 2 ** 256). +func bigint3_to_uint256{range_check_ptr}(value: BigInt3) -> Uint256 { + let low = [range_check_ptr]; + let high = [range_check_ptr + 1]; + + // Guess the low part of the result. This is done by taking the 128 LSB of value. + %{ ids.low = (ids.value.d0 + ids.value.d1 * ids.BASE) & ((1 << 128) - 1) %} + + // Verify that low is indeed the 128 LSB of (value.d0 + value.d1 * BASE). This is done by + // checking that the following division doesn't overflow. + tempvar a = ((value.d0 + value.d1 * BASE) - low) / 2 ** 128; + + // 'a' should be in the range [0, 2 ** 46), since (value.d0 + value.d1 * BASE) < 2 ** 174. + assert [range_check_ptr + 2] = a; + assert [range_check_ptr + 3] = a + 2 ** 128 - 2 ** 46; + let range_check_ptr = range_check_ptr + 4; + + const D2_SHIFT = BASE * BASE / 2 ** 128; + with_attr error_message("value out of range") { + assert high = a + value.d2 * D2_SHIFT; + } + + return (Uint256(low=low, high=high)); +} diff --git a/src/starkware/starknet/core/os/data_availability/bls_field_test.py b/src/starkware/starknet/core/os/data_availability/bls_field_test.py new file mode 100644 index 00000000..7c10e35f --- /dev/null +++ b/src/starkware/starknet/core/os/data_availability/bls_field_test.py @@ -0,0 +1,186 @@ +import os +import random +from typing import List + +import pytest + +from starkware.cairo.common.cairo_function_runner import CairoFunctionRunner +from starkware.cairo.common.structs import CairoStructFactory, CairoStructProxy +from starkware.cairo.lang.cairo_constants import DEFAULT_PRIME +from starkware.cairo.lang.compiler.cairo_compile import compile_cairo_files +from starkware.cairo.lang.compiler.program import Program +from starkware.python.random_test_utils import random_test +from starkware.starknet.core.os.data_availability.bls_utils import BASE, BLS_PRIME, pack, split + +CAIRO_FILE = os.path.join(os.path.dirname(__file__), "bls_field.cairo") + + +@pytest.fixture(scope="session") +def program() -> Program: + return compile_cairo_files([CAIRO_FILE], prime=DEFAULT_PRIME) + + +@pytest.fixture(scope="session") +def structs(program: Program): + return CairoStructFactory.from_program(program).structs + + +def random_bigint3_element(structs: CairoStructProxy, limb_bound: int = 2**104): + """ + Returns a random BigInt3 in the given range. + """ + d0, d1, d2 = [random.randrange(-limb_bound, limb_bound) for _ in range(3)] + return structs.BigInt3(d0=d0, d1=d1, d2=d2) + + +def bigint3_element_from_limbs(structs: CairoStructProxy, limbs: List[int]): + """ + Returns an BigInt3 from a list of limbs. + """ + assert len(limbs) == 3 + return structs.BigInt3(d0=limbs[0], d1=limbs[1], d2=limbs[2]) + + +def bigint3_element_from_int(structs: CairoStructProxy, val: int): + """ + Returns an BigInt3 from int. + """ + d0, d1, d2 = split(val) + return structs.BigInt3(d0=d0, d1=d1, d2=d2) + + +def test_bls_prime_value(program: Program): + p0 = program.get_const(name="P0") + p1 = program.get_const(name="P1") + p2 = program.get_const(name="P2") + + assert [p0, p1, p2] == split(BLS_PRIME) + + +@pytest.mark.parametrize( + "a_limbs, b_limbs", + [ + ( + [2**104 - 1, 2**104 - 1, 2**104 - 1], + [2**104 - 1, 2**104 - 1, 2**104 - 1], + ), + ( + [-(2**104) + 1, -(2**104) + 1, -(2**104) + 1], + [-(2**104) + 1, -(2**104) + 1, -(2**104) + 1], + ), + ( + [-1, 0, 0], + [1, 0, 0], + ), + ( + [1, 2, 3], + [0, 0, 0], + ), + ], +) +def test_reduced_mul_parameterized( + program: Program, structs: CairoStructProxy, a_limbs: List[int], b_limbs: List[int] +): + runner = CairoFunctionRunner(program) + + a = bigint3_element_from_limbs(structs=structs, limbs=a_limbs) + b = bigint3_element_from_limbs(structs=structs, limbs=b_limbs) + + runner.run( + "reduced_mul", + range_check_ptr=runner.range_check_builtin.base, + a=a, + b=b, + ) + + range_check_ptr, *res_limbs = runner.get_return_values(4) + assert range_check_ptr == runner.range_check_builtin.base + 11 + assert res_limbs == split((pack(a) * pack(b)) % BLS_PRIME) + + +@random_test() +def test_reduced_mul_random(program: Program, structs: CairoStructProxy, seed: int): + runner = CairoFunctionRunner(program) + + a = random_bigint3_element(structs=structs) + b = random_bigint3_element(structs=structs) + + runner.run( + "reduced_mul", + range_check_ptr=runner.range_check_builtin.base, + a=a, + b=b, + ) + + range_check_ptr, *res_limbs = runner.get_return_values(4) + assert range_check_ptr == runner.range_check_builtin.base + 11 + assert res_limbs == split((pack(a) * pack(b)) % BLS_PRIME) + + +@random_test() +@pytest.mark.parametrize("n", [0, 100, 4096]) +def test_horner_eval(program: Program, structs: CairoStructProxy, n: int, seed: int): + runner = CairoFunctionRunner(program) + + coefficients = [random.randrange(DEFAULT_PRIME) for _ in range(n)] + point = random.randrange(BLS_PRIME) + + runner.run( + "horner_eval", + range_check_ptr=runner.range_check_builtin.base, + n_coefficients=n, + coefficients=coefficients, + point=bigint3_element_from_int(structs=structs, val=point), + ) + + res_d0, res_d1, res_d2 = runner.get_return_values(3) + expected_result = ( + sum(coef * pow(point, i, BLS_PRIME) for i, coef in enumerate(coefficients)) % BLS_PRIME + ) + assert res_d0 + res_d1 * BASE + res_d2 * (BASE**2) == expected_result + + +@pytest.mark.parametrize( + "value", + [ + 0, + 1, + DEFAULT_PRIME - 1, + DEFAULT_PRIME - 2, + BASE - 1, + BASE, + BASE**2 - 1, + BASE**2, + DEFAULT_PRIME // 2, + ], +) +def test_felt_to_bigint3(program: Program, value: int): + runner = CairoFunctionRunner(program) + + runner.run( + "felt_to_bigint3", + range_check_ptr=runner.range_check_builtin.base, + value=value, + ) + + range_check_ptr, *res_limbs = runner.get_return_values(4) + + assert res_limbs == split(value) + + n_range_checks = 0 if value == DEFAULT_PRIME - 1 else 6 + assert range_check_ptr == runner.range_check_builtin.base + n_range_checks + + +@random_test() +def test_bigint3_to_uint256(program: Program, structs: CairoStructProxy, seed: int): + runner = CairoFunctionRunner(program) + + value = bigint3_element_from_int(structs=structs, val=random.randrange(2**256)) + + runner.run("bigint3_to_uint256", runner.range_check_builtin.base, value=value) + + range_check_ptr, low, high = runner.get_return_values(3) + + assert low == pack(value) % 2**128 + assert high == pack(value) >> 128 + assert range_check_ptr == runner.range_check_builtin.base + 4 diff --git a/src/starkware/starknet/core/os/data_availability/bls_utils.py b/src/starkware/starknet/core/os/data_availability/bls_utils.py new file mode 100644 index 00000000..905fec6e --- /dev/null +++ b/src/starkware/starknet/core/os/data_availability/bls_utils.py @@ -0,0 +1,36 @@ +from typing import List + +from starkware.cairo.common.math_utils import as_int +from starkware.cairo.lang.cairo_constants import DEFAULT_PRIME + +# The base of the representation. +BASE = 2**86 + +# The bls12-381 F_r field prime. F_r - the scalar field of the bls12-381 elliptic curve. +BLS_PRIME = 52435875175126190479447740508185965837690552500527637822603658699938581184513 + + +def split(num: int) -> List[int]: + """ + Takes an integer and returns its canonical representation as: + d0 + d1 * BASE + d2 * BASE**2. + d2 can be in the range (-2**127, 2**127). + """ + a = [] + for _ in range(2): + num, residue = divmod(num, BASE) + a.append(residue) + a.append(num) + assert abs(num) < 2**127 + return a + + +def pack(z, prime=DEFAULT_PRIME): + """ + Takes a BigInt3 struct which represents a triple of limbs (d0, d1, d2) of field + elements and reconstructs the corresponding integer (see split()). + Note that the limbs do not have to be in the range [0, BASE). + Prime should be the Cairo field, and it is used to handle negative values of the limbs. + """ + limbs = z.d0, z.d1, z.d2 + return sum(as_int(limb, prime) * (BASE**i) for i, limb in enumerate(limbs)) diff --git a/src/starkware/starknet/core/os/data_availability/commitment.cairo b/src/starkware/starknet/core/os/data_availability/commitment.cairo new file mode 100644 index 00000000..a516c622 --- /dev/null +++ b/src/starkware/starknet/core/os/data_availability/commitment.cairo @@ -0,0 +1,85 @@ +from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash, poseidon_hash_many +from starkware.cairo.common.cairo_builtins import PoseidonBuiltin +from starkware.cairo.common.math import assert_nn_le +from starkware.cairo.common.uint256 import Uint256 +from starkware.starknet.core.os.data_availability.bls_field import ( + BigInt3, + bigint3_to_uint256, + felt_to_bigint3, + horner_eval, + reduced_mul, +) + +const BLOB_LENGTH = 4096; + +// Represents an integer in the range [0, 2^384). +struct Uint384 { + // The low 192 bits of the value. + low: felt, + // The high 192 bits of the value. + high: felt, +} + +// Data required for KZG commitment on data-availability. +struct OsKzgCommitmentInfo { + // KZG commitment on the data. + kzg_commitment: Uint384, + // Generated by hashing the Stark-friendly commitment with the KZG commitment. + z: felt, + // The value of the data polynomial at `z`. + y: Uint256, +} + +// Computes information needed for publishing data on L1 using KZG commitment. +// +// Specifically, let `p` be the data polynomial. The OS samples `p` at a point `z`, +// where `z` is generated using Fiat-Shamir heuristic. +// +// The OS uses a Stark-friendly commitment scheme, while the L1 side uses KZG. +// This requires combining them both in the generation of `z`; i.e., +// the OS guesses (and outputs): +// * kzg_commitment = KZG(data), +// computes: +// * z = Poseidon(Poseidon(data), Poseidon(kzg_commitment.low, kzg_commitment.high)), +// and samples the polynomial: +// * y = p(z). +// +// The L1 side will need to verify that `kzg_commitment` is correct +// and that `p(z) = y` (using a KZG proof). +func compute_os_kzg_commitment_info{range_check_ptr, poseidon_ptr: PoseidonBuiltin*}( + state_updates_start: felt*, state_updates_end: felt* +) -> OsKzgCommitmentInfo* { + alloc_locals; + let da_size = state_updates_end - state_updates_start; + assert_nn_le(da_size, BLOB_LENGTH); + local kzg_commitment: Uint384; + %{ + execution_helper.store_da_segment( + da_segment=memory.get_range_as_ints(addr=ids.state_updates_start, size=ids.da_size) + ) + segments.write_arg( + ids.kzg_commitment.address_, + execution_helper.polynomial_coefficients_to_kzg_commitment_callback( + execution_helper.da_segment + ) + ) + %} + let (da_hash) = poseidon_hash_many(n=da_size, elements=state_updates_start); + let (kzg_commitment_hash) = poseidon_hash(kzg_commitment.low, kzg_commitment.high); + let (z) = poseidon_hash(da_hash, kzg_commitment_hash); + + // Evaluate y = p(z). + let z_bigint = felt_to_bigint3(z); + let unreduced_y = horner_eval( + n_coefficients=da_size, coefficients=state_updates_start, point=z_bigint + ); + // Call reduced_mul with 1 to get a reduced form of the value that satisfies the + // assumptions of `bigint3_to_uint256`. + let y_bigint = reduced_mul(unreduced_y, BigInt3(1, 0, 0)); + let y = bigint3_to_uint256(y_bigint); + + tempvar os_kzg_commitment_info = new OsKzgCommitmentInfo( + kzg_commitment=kzg_commitment, z=z, y=y + ); + return os_kzg_commitment_info; +} diff --git a/src/starkware/starknet/core/os/deprecated_syscall_handler.py b/src/starkware/starknet/core/os/deprecated_syscall_handler.py index e353e6fc..555f5e1b 100644 --- a/src/starkware/starknet/core/os/deprecated_syscall_handler.py +++ b/src/starkware/starknet/core/os/deprecated_syscall_handler.py @@ -1,11 +1,12 @@ from abc import ABC, abstractmethod -from typing import Iterable, List, Optional, Tuple, Type, cast +from typing import Dict, Iterable, List, Optional, Tuple, Type, cast from starkware.cairo.common.cairo_function_runner import CairoFunctionRunner from starkware.cairo.common.structs import CairoStructProxy from starkware.cairo.lang.vm.memory_segments import MemorySegmentManager from starkware.cairo.lang.vm.relocatable import MaybeRelocatable, RelocatableValue from starkware.python.utils import camel_to_snake_case +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.execute_entry_point_base import ( ExecuteEntryPointBase, ) @@ -13,7 +14,6 @@ CallInfo, CallResult, CallType, - ExecutionResourcesManager, OrderedEvent, OrderedL2ToL1Message, TransactionExecutionContext, @@ -24,6 +24,7 @@ from starkware.starknet.core.os.contract_address.contract_address import ( calculate_contract_address_from_hash, ) +from starkware.starknet.core.os.os_logger import OptionalSegmentManager from starkware.starknet.core.os.syscall_handler import OsExecutionHelper from starkware.starknet.core.os.syscall_utils import ( cast_to_int, @@ -31,6 +32,7 @@ validate_runtime_request_type, wrap_with_handler_exception, ) +from starkware.starknet.definitions import constants from starkware.starknet.definitions.constants import GasCost from starkware.starknet.definitions.error_codes import StarknetErrorCode from starkware.starknet.definitions.execution_mode import ExecutionMode @@ -45,20 +47,15 @@ class DeprecatedSysCallHandlerBase(ABC): Base class for execution of system calls in the StarkNet OS. """ - def __init__(self, block_info: BlockInfo, segments: Optional[MemorySegmentManager]): + def __init__(self, block_info: BlockInfo, segments: OptionalSegmentManager): self._segments = segments self.block_info = block_info self.syscall_structs, self.syscall_info = get_deprecated_syscall_structs_and_info() - def set_segments(self, segments: MemorySegmentManager): - assert self._segments is None, "segments is already set." - self._segments = segments - @property def segments(self) -> MemorySegmentManager: - assert self._segments is not None, "segments must be set before using the SysCallHandler." - return self._segments + return self._segments.segments # Public API. @@ -123,7 +120,15 @@ def get_block_number(self, segments: MemorySegmentManager, syscall_ptr: Relocata self._read_and_validate_syscall_request( syscall_name="get_block_number", syscall_ptr=syscall_ptr ) - block_number = self.block_info.block_number + + if self._is_validate_execution_mode(): + # Round down block number for validate. + block_number_for_validate = ( + self.block_info.block_number // constants.VALIDATE_BLOCK_NUMBER_ROUNDING + ) * constants.VALIDATE_BLOCK_NUMBER_ROUNDING + block_number = block_number_for_validate + else: + block_number = self.block_info.block_number response = self.syscall_structs.GetBlockNumberResponse(block_number=block_number) self._write_syscall_response( @@ -141,9 +146,11 @@ def get_sequencer_address(self, segments: MemorySegmentManager, syscall_ptr: Rel self._verify_execution_mode(syscall_name="get_sequencer_address") response = self.syscall_structs.GetSequencerAddressResponse( - sequencer_address=0 - if self.block_info.sequencer_address is None - else self.block_info.sequencer_address + sequencer_address=( + 0 + if self.block_info.sequencer_address is None + else self.block_info.sequencer_address + ) ) self._write_syscall_response( syscall_name="GetSequencerAddress", response=response, syscall_ptr=syscall_ptr @@ -170,7 +177,15 @@ def get_block_timestamp(self, segments: MemorySegmentManager, syscall_ptr: Reloc self._read_and_validate_syscall_request( syscall_name="get_block_timestamp", syscall_ptr=syscall_ptr ) - block_timestamp = self.block_info.block_timestamp + + if self._is_validate_execution_mode(): + # Round down block timestamp for validate. + block_timestamp_for_validate = ( + self.block_info.block_timestamp // constants.VALIDATE_TIMESTAMP_ROUNDING + ) * constants.VALIDATE_TIMESTAMP_ROUNDING + block_timestamp = block_timestamp_for_validate + else: + block_timestamp = self.block_info.block_timestamp response = self.syscall_structs.GetBlockTimestampResponse(block_timestamp=block_timestamp) self._write_syscall_response( @@ -383,7 +398,7 @@ def __init__( initial_syscall_ptr: RelocatableValue, segments: MemorySegmentManager, ): - super().__init__(block_info=state.block_info, segments=segments) + super().__init__(block_info=state.block_info, segments=OptionalSegmentManager(segments)) # Configuration objects. self.general_config = general_config @@ -477,31 +492,31 @@ def _call_contract(self, syscall_ptr: RelocatableValue, syscall_name: str) -> Ca contract_address = code_address caller_address = self.contract_address entry_point_type = EntryPointType.EXTERNAL - call_type = CallType.CALL + call_type = CallType.Call elif syscall_name == "delegate_call": code_address = cast_to_int(request.contract_address) contract_address = self.contract_address caller_address = self.caller_address entry_point_type = EntryPointType.EXTERNAL - call_type = CallType.DELEGATE + call_type = CallType.Delegate elif syscall_name == "delegate_l1_handler": code_address = cast_to_int(request.contract_address) contract_address = self.contract_address caller_address = self.caller_address entry_point_type = EntryPointType.L1_HANDLER - call_type = CallType.DELEGATE + call_type = CallType.Delegate elif syscall_name == "library_call": class_hash = cast_to_int(request.class_hash) contract_address = self.contract_address caller_address = self.caller_address entry_point_type = EntryPointType.EXTERNAL - call_type = CallType.DELEGATE + call_type = CallType.Delegate elif syscall_name == "library_call_l1_handler": class_hash = cast_to_int(request.class_hash) contract_address = self.contract_address caller_address = self.caller_address entry_point_type = EntryPointType.L1_HANDLER - call_type = CallType.DELEGATE + call_type = CallType.Delegate else: raise NotImplementedError(f"Unsupported call type {syscall_name}.") @@ -588,7 +603,7 @@ def execute_constructor_entry_point( return call = self.execute_entry_point_cls( - call_type=CallType.CALL, + call_type=CallType.Call, class_hash=None, contract_address=contract_address, code_address=contract_address, @@ -624,7 +639,7 @@ def emit_event(self, segments: MemorySegmentManager, syscall_ptr: RelocatableVal ) self.events.append( - OrderedEvent( + OrderedEvent.create( order=self.tx_execution_context.n_emitted_events, keys=self.segments.memory.get_range_as_ints( addr=cast(RelocatableValue, request.keys), size=cast_to_int(request.keys_len) @@ -665,7 +680,7 @@ def send_message_to_l1(self, segments: MemorySegmentManager, syscall_ptr: Reloca self.l2_to_l1_messages.append( # Note that the constructor of OrderedL2ToL1Message might fail as it is # more restrictive than the Cairo code. - OrderedL2ToL1Message( + OrderedL2ToL1Message.create( order=self.tx_execution_context.n_sent_messages, to_address=cast_to_int(request.to_address), payload=payload, @@ -758,8 +773,13 @@ def __init__( # Note that a non-optional segments must be set before using the SysCallHandler. segments: Optional[MemorySegmentManager] = None, ): - super().__init__(block_info=block_info, segments=segments) + super().__init__(block_info=block_info, segments=execution_helper.os_logger.segments) self.execution_helper = execution_helper + self.syscall_counter: Dict[str, int] = {} + + def _count_syscall(self, syscall_name: str): + previous_syscall_count = self.syscall_counter.get(syscall_name, 0) + self.syscall_counter[syscall_name] = previous_syscall_count + 1 def _read_and_validate_syscall_request( self, syscall_name: str, syscall_ptr: RelocatableValue @@ -768,6 +788,7 @@ def _read_and_validate_syscall_request( Returns the system call request written in the syscall segment, starting at syscall_ptr. Does not perform validations on the request, since it was validated in the BL. """ + self._count_syscall(syscall_name) return self._read_syscall_request(syscall_name=syscall_name, syscall_ptr=syscall_ptr) def _allocate_segment(self, data: Iterable[MaybeRelocatable]) -> RelocatableValue: diff --git a/src/starkware/starknet/core/os/execution/deprecated_execute_syscalls.cairo b/src/starkware/starknet/core/os/execution/deprecated_execute_syscalls.cairo index 03c36ff6..66d90170 100644 --- a/src/starkware/starknet/core/os/execution/deprecated_execute_syscalls.cairo +++ b/src/starkware/starknet/core/os/execution/deprecated_execute_syscalls.cairo @@ -76,7 +76,7 @@ from starkware.starknet.core.os.output import ( OsCarriedOutputs, os_carried_outputs_new, ) -from starkware.starknet.core.os.state import UNINITIALIZED_CLASS_HASH, StateEntry +from starkware.starknet.core.os.state.commitment import UNINITIALIZED_CLASS_HASH, StateEntry // Calls execute_entry_point and generates the corresponding CallContractResponse. func contract_call_helper{ @@ -411,12 +411,29 @@ func execute_deprecated_syscalls{ } tempvar selector = [syscall_ptr]; + %{ + execution_helper.os_logger.enter_syscall( + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + deprecated=True, + selector=ids.selector, + range_check_ptr=ids.range_check_ptr, + ) + # Prepare a short callable to save code duplication. + exit_syscall = lambda selector: execution_helper.os_logger.exit_syscall( + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + range_check_ptr=ids.range_check_ptr, + selector=selector, + ) + %} if (selector == STORAGE_READ_SELECTOR) { execute_storage_read( contract_address=execution_context.execution_info.contract_address, syscall_ptr=cast(syscall_ptr, StorageRead*), ); + %{ exit_syscall(selector=ids.STORAGE_READ_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -430,6 +447,7 @@ func execute_deprecated_syscalls{ contract_address=execution_context.execution_info.contract_address, syscall_ptr=cast(syscall_ptr, StorageWrite*), ); + %{ exit_syscall(selector=ids.STORAGE_WRITE_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -440,6 +458,7 @@ func execute_deprecated_syscalls{ if (selector == EMIT_EVENT_SELECTOR) { // Skip as long as the block hash is not calculated by the OS. + %{ exit_syscall(selector=ids.EMIT_EVENT_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -458,6 +477,7 @@ func execute_deprecated_syscalls{ caller_execution_context=execution_context, syscall_ptr=call_contract_syscall, ); + %{ exit_syscall(selector=ids.CALL_CONTRACT_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -473,6 +493,7 @@ func execute_deprecated_syscalls{ entry_point_type=ENTRY_POINT_TYPE_EXTERNAL, syscall_ptr=cast(syscall_ptr, LibraryCall*), ); + %{ exit_syscall(selector=ids.LIBRARY_CALL_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -488,6 +509,7 @@ func execute_deprecated_syscalls{ entry_point_type=ENTRY_POINT_TYPE_L1_HANDLER, syscall_ptr=cast(syscall_ptr, LibraryCall*), ); + %{ exit_syscall(selector=ids.LIBRARY_CALL_L1_HANDLER_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -500,6 +522,7 @@ func execute_deprecated_syscalls{ assert cast(syscall_ptr, GetTxInfo*).response = GetTxInfoResponse( tx_info=execution_context.deprecated_tx_info ); + %{ exit_syscall(selector=ids.GET_TX_INFO_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -512,6 +535,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetCallerAddress*)].response = GetCallerAddressResponse( caller_address=execution_context.execution_info.caller_address ); + %{ exit_syscall(selector=ids.GET_CALLER_ADDRESS_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -524,6 +548,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetSequencerAddress*)].response = GetSequencerAddressResponse( sequencer_address=block_context.block_info.sequencer_address ); + %{ exit_syscall(selector=ids.GET_SEQUENCER_ADDRESS_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -536,6 +561,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetContractAddress*)].response = GetContractAddressResponse( contract_address=execution_context.execution_info.contract_address ); + %{ exit_syscall(selector=ids.GET_CONTRACT_ADDRESS_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -548,6 +574,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetBlockTimestamp*)].response = GetBlockTimestampResponse( block_timestamp=block_context.block_info.block_timestamp ); + %{ exit_syscall(selector=ids.GET_BLOCK_TIMESTAMP_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -560,6 +587,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetBlockNumber*)].response = GetBlockNumberResponse( block_number=block_context.block_info.block_number ); + %{ exit_syscall(selector=ids.GET_BLOCK_NUMBER_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -573,6 +601,7 @@ func execute_deprecated_syscalls{ assert [cast(syscall_ptr, GetTxSignature*)].response = GetTxSignatureResponse( signature_len=deprecated_tx_info.signature_len, signature=deprecated_tx_info.signature ); + %{ exit_syscall(selector=ids.GET_TX_SIGNATURE_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -587,6 +616,7 @@ func execute_deprecated_syscalls{ caller_execution_context=execution_context, syscall_ptr=cast(syscall_ptr, Deploy*), ); + %{ exit_syscall(selector=ids.DEPLOY_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -606,6 +636,7 @@ func execute_deprecated_syscalls{ caller_execution_context=execution_context, syscall_ptr=cast(syscall_ptr, CallContract*), ); + %{ exit_syscall(selector=ids.DELEGATE_CALL_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -625,6 +656,7 @@ func execute_deprecated_syscalls{ caller_execution_context=execution_context, syscall_ptr=cast(syscall_ptr, CallContract*), ); + %{ exit_syscall(selector=ids.DELEGATE_L1_HANDLER_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -638,6 +670,7 @@ func execute_deprecated_syscalls{ contract_address=execution_context.execution_info.contract_address, syscall_ptr=cast(syscall_ptr, ReplaceClass*), ); + %{ exit_syscall(selector=ids.REPLACE_CLASS_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, @@ -666,6 +699,7 @@ func execute_deprecated_syscalls{ outputs.messages_to_l1.payload_size, messages_to_l2=outputs.messages_to_l2, ); + %{ exit_syscall(selector=ids.SEND_MESSAGE_TO_L1_SELECTOR) %} return execute_deprecated_syscalls( block_context=block_context, execution_context=execution_context, diff --git a/src/starkware/starknet/core/os/execution/execute_entry_point.cairo b/src/starkware/starknet/core/os/execution/execute_entry_point.cairo index c8357e56..36365ea3 100644 --- a/src/starkware/starknet/core/os/execution/execute_entry_point.cairo +++ b/src/starkware/starknet/core/os/execution/execute_entry_point.cairo @@ -244,7 +244,7 @@ func execute_entry_point{ print(f" Size: {retdata_size}") print(f" Error (at most 100 elements): {error}") - if execution_helper.perform_extended_checks: + if execution_helper.debug_mode: # Validate the predicted gas cost. actual = ids.remaining_gas - ids.entry_point_return_values.gas_builtin predicted = execution_helper.call_info.gas_consumed diff --git a/src/starkware/starknet/core/os/execution/execute_syscalls.cairo b/src/starkware/starknet/core/os/execution/execute_syscalls.cairo index cf45447e..b7545654 100644 --- a/src/starkware/starknet/core/os/execution/execute_syscalls.cairo +++ b/src/starkware/starknet/core/os/execution/execute_syscalls.cairo @@ -154,7 +154,7 @@ from starkware.starknet.core.os.output import ( OsCarriedOutputs, os_carried_outputs_new, ) -from starkware.starknet.core.os.state import StateEntry +from starkware.starknet.core.os.state.commitment import StateEntry // Executes the system calls in syscall_ptr. // The signature of the function 'call_execute_syscalls' must match this function's signature. @@ -176,8 +176,27 @@ func execute_syscalls{ } tempvar selector = [syscall_ptr]; + %{ + execution_helper.os_logger.enter_syscall( + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + range_check_ptr=ids.range_check_ptr, + deprecated=False, + selector=ids.selector, + ) + + # Prepare a short callable to save code duplication. + exit_syscall = lambda selector: execution_helper.os_logger.exit_syscall( + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + range_check_ptr=ids.range_check_ptr, + selector=selector, + ) + %} + if (selector == STORAGE_READ_SELECTOR) { execute_storage_read(contract_address=execution_context.execution_info.contract_address); + %{ exit_syscall(selector=ids.STORAGE_READ_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -187,6 +206,7 @@ func execute_syscalls{ if (selector == STORAGE_WRITE_SELECTOR) { execute_storage_write(contract_address=execution_context.execution_info.contract_address); + %{ exit_syscall(selector=ids.STORAGE_WRITE_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -196,6 +216,7 @@ func execute_syscalls{ if (selector == GET_EXECUTION_INFO_SELECTOR) { execute_get_execution_info(execution_info=execution_context.execution_info); + %{ exit_syscall(selector=ids.GET_EXECUTION_INFO_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -207,6 +228,7 @@ func execute_syscalls{ execute_call_contract( block_context=block_context, caller_execution_context=execution_context ); + %{ exit_syscall(selector=ids.CALL_CONTRACT_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -218,6 +240,7 @@ func execute_syscalls{ execute_library_call( block_context=block_context, caller_execution_context=execution_context ); + %{ exit_syscall(selector=ids.LIBRARY_CALL_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -230,6 +253,7 @@ func execute_syscalls{ reduce_syscall_gas_and_write_response_header( total_gas_cost=EMIT_EVENT_GAS_COST, request_struct_size=EmitEventRequest.SIZE ); + %{ exit_syscall(selector=ids.EMIT_EVENT_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -239,6 +263,7 @@ func execute_syscalls{ if (selector == DEPLOY_SELECTOR) { execute_deploy(block_context=block_context, caller_execution_context=execution_context); + %{ exit_syscall(selector=ids.DEPLOY_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -248,6 +273,7 @@ func execute_syscalls{ if (selector == GET_BLOCK_HASH_SELECTOR) { execute_get_block_hash(block_context=block_context); + %{ exit_syscall(selector=ids.GET_BLOCK_HASH_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -257,6 +283,7 @@ func execute_syscalls{ if (selector == REPLACE_CLASS_SELECTOR) { execute_replace_class(contract_address=execution_context.execution_info.contract_address); + %{ exit_syscall(selector=ids.REPLACE_CLASS_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -266,6 +293,7 @@ func execute_syscalls{ if (selector == KECCAK_SELECTOR) { execute_keccak(); + %{ exit_syscall(selector=ids.KECCAK_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -275,6 +303,7 @@ func execute_syscalls{ if (selector == SECP256K1_GET_POINT_FROM_X_SELECTOR) { execute_secp256k1_get_point_from_x(); + %{ exit_syscall(selector=ids.SECP256K1_GET_POINT_FROM_X_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -284,6 +313,7 @@ func execute_syscalls{ if (selector == SECP256R1_GET_POINT_FROM_X_SELECTOR) { execute_secp256r1_get_point_from_x(); + %{ exit_syscall(selector=ids.SECP256R1_GET_POINT_FROM_X_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -293,6 +323,7 @@ func execute_syscalls{ if (selector == SECP256K1_NEW_SELECTOR) { execute_secp256k1_new(); + %{ exit_syscall(selector=ids.SECP256K1_NEW_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -302,6 +333,7 @@ func execute_syscalls{ if (selector == SECP256R1_NEW_SELECTOR) { execute_secp256r1_new(); + %{ exit_syscall(selector=ids.SECP256R1_NEW_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -311,6 +343,7 @@ func execute_syscalls{ if (selector == SECP256K1_ADD_SELECTOR) { execute_secp256k1_add(); + %{ exit_syscall(selector=ids.SECP256K1_ADD_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -320,6 +353,7 @@ func execute_syscalls{ if (selector == SECP256R1_ADD_SELECTOR) { execute_secp256r1_add(); + %{ exit_syscall(selector=ids.SECP256R1_ADD_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -329,6 +363,7 @@ func execute_syscalls{ if (selector == SECP256K1_MUL_SELECTOR) { execute_secp256k1_mul(); + %{ exit_syscall(selector=ids.SECP256K1_MUL_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -338,6 +373,7 @@ func execute_syscalls{ if (selector == SECP256R1_MUL_SELECTOR) { execute_secp256r1_mul(); + %{ exit_syscall(selector=ids.SECP256R1_MUL_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -350,6 +386,7 @@ func execute_syscalls{ curve_prime=Uint256(low=SECP256K1_PRIME_LOW, high=SECP256K1_PRIME_HIGH), gas_cost=SECP256K1_GET_XY_GAS_COST, ); + %{ exit_syscall(selector=ids.SECP256K1_GET_XY_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -362,6 +399,7 @@ func execute_syscalls{ curve_prime=Uint256(low=SECP256R1_PRIME_LOW, high=SECP256R1_PRIME_HIGH), gas_cost=SECP256R1_GET_XY_GAS_COST, ); + %{ exit_syscall(selector=ids.SECP256R1_GET_XY_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, @@ -372,6 +410,7 @@ func execute_syscalls{ assert selector = SEND_MESSAGE_TO_L1_SELECTOR; execute_send_message_to_l1(contract_address=execution_context.execution_info.contract_address); + %{ exit_syscall(selector=ids.SEND_MESSAGE_TO_L1_SELECTOR) %} return execute_syscalls( block_context=block_context, execution_context=execution_context, diff --git a/src/starkware/starknet/core/os/execution/execute_transactions.cairo b/src/starkware/starknet/core/os/execution/execute_transactions.cairo index cff3aced..2665ff3a 100644 --- a/src/starkware/starknet/core/os/execution/execute_transactions.cairo +++ b/src/starkware/starknet/core/os/execution/execute_transactions.cairo @@ -63,7 +63,7 @@ from starkware.starknet.core.os.output import ( OsCarriedOutputs, os_carried_outputs_new, ) -from starkware.starknet.core.os.state import StateEntry +from starkware.starknet.core.os.state.commitment import StateEntry from starkware.starknet.core.os.transaction_hash.transaction_hash import ( CommonTxFields, compute_declare_transaction_hash, @@ -197,7 +197,6 @@ func execute_transactions_inner{ contract_class_changes: DictAccess*, outputs: OsCarriedOutputs*, }(block_context: BlockContext*, n_txs) { - %{ print(f"execute_transactions_inner: {ids.n_txs} transactions remaining.") %} if (n_txs == 0) { return (); } @@ -213,6 +212,19 @@ func execute_transactions_inner{ tx_type_bytes = tx.tx_type.name.encode("ascii") ids.tx_type = int.from_bytes(tx_type_bytes, "big") + execution_helper.os_logger.enter_tx( + tx=tx, + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + range_check_ptr=ids.range_check_ptr, + ) + + # Prepare a short callable to save code duplication. + exit_tx = lambda: execution_helper.os_logger.exit_tx( + n_steps=current_step, + builtin_ptrs=ids.builtin_ptrs, + range_check_ptr=ids.range_check_ptr, + ) %} let remaining_gas = INITIAL_GAS_COST - TRANSACTION_GAS_COST; @@ -220,22 +232,26 @@ func execute_transactions_inner{ if (tx_type == 'INVOKE_FUNCTION') { // Handle the invoke-function transaction. execute_invoke_function_transaction(block_context=block_context); + %{ exit_tx() %} return execute_transactions_inner(block_context=block_context, n_txs=n_txs - 1); } if (tx_type == 'L1_HANDLER') { // Handle the L1-handler transaction. execute_l1_handler_transaction(block_context=block_context); + %{ exit_tx() %} return execute_transactions_inner(block_context=block_context, n_txs=n_txs - 1); } if (tx_type == 'DEPLOY_ACCOUNT') { // Handle the deploy-account transaction. execute_deploy_account_transaction(block_context=block_context); + %{ exit_tx() %} return execute_transactions_inner(block_context=block_context, n_txs=n_txs - 1); } assert tx_type = 'DECLARE'; // Handle the declare transaction. execute_declare_transaction(block_context=block_context); + %{ exit_tx() %} return execute_transactions_inner(block_context=block_context, n_txs=n_txs - 1); } } @@ -303,13 +319,15 @@ func charge_fee{ key=fee_token_address ); let (__fp__, _) = get_fp_and_pc(); + // Use block_info directly from block_context, so that charge_fee will always run in + // execute-mode rather than validate-mode. local execution_context: ExecutionContext = ExecutionContext( entry_point_type=ENTRY_POINT_TYPE_EXTERNAL, class_hash=fee_state_entry.class_hash, calldata_size=TransferCallData.SIZE, calldata=&calldata, execution_info=new ExecutionInfo( - block_info=execution_info.block_info, + block_info=block_context.block_info, tx_info=tx_info, caller_address=tx_info.account_contract_address, contract_address=fee_token_address, @@ -456,7 +474,7 @@ func execute_invoke_function_transaction{ block_context=block_context, execution_context=updated_tx_execution_context ); } else { - // Align the stack with the if branch to avoid revoked references. + // Align the stack with the `if` branch to avoid revoked references. tempvar range_check_ptr = range_check_ptr; tempvar remaining_gas = remaining_gas; tempvar builtin_ptrs = builtin_ptrs; @@ -467,6 +485,7 @@ func execute_invoke_function_transaction{ } local remaining_gas = remaining_gas; + // Charge fee. charge_fee(block_context=block_context, tx_execution_context=updated_tx_execution_context); %{ execution_helper.end_tx() %} @@ -951,6 +970,8 @@ func execute_deploy_account_transaction{ assert retdata_size = 1; assert retdata[0] = VALIDATED; } + + // Charge fee. charge_fee(block_context=block_context, tx_execution_context=validate_deploy_execution_context); %{ execution_helper.end_tx() %} @@ -1131,6 +1152,8 @@ func execute_declare_transaction{ assert retdata_size = 1; assert retdata[0] = VALIDATED; } + + // Charge fee. charge_fee( block_context=block_context, tx_execution_context=validate_declare_execution_context ); diff --git a/src/starkware/starknet/core/os/os.cairo b/src/starkware/starknet/core/os/os.cairo index 560a85a8..a9958e3f 100644 --- a/src/starkware/starknet/core/os/os.cairo +++ b/src/starkware/starknet/core/os/os.cairo @@ -24,10 +24,16 @@ from starkware.starknet.core.os.execution.deprecated_execute_syscalls import ( from starkware.starknet.core.os.execution.execute_syscalls import execute_syscalls from starkware.starknet.core.os.execution.execute_transactions import execute_transactions from starkware.starknet.core.os.os_config.os_config import get_starknet_os_config_hash -from starkware.starknet.core.os.output import OsCarriedOutputs, os_output_serialize -from starkware.starknet.core.os.state import StateEntry, state_update +from starkware.starknet.core.os.output import ( + OsCarriedOutputs, + OsOutput, + OsOutputHeader, + serialize_os_output, +) +from starkware.starknet.core.os.state.commitment import StateEntry +from starkware.starknet.core.os.state.state import OsStateUpdate, state_update -// Executes transactions on StarkNet. +// Executes transactions on Starknet. func main{ output_ptr: felt*, pedersen_ptr: HashBuiltin*, @@ -85,30 +91,27 @@ func main{ } let final_carried_outputs = outputs; - local initial_state_updates_ptr: felt*; %{ # This hint shouldn't be whitelisted. vm_enter_scope(dict( commitment_info_by_address=execution_helper.compute_storage_commitments(), os_input=os_input, )) - ids.initial_state_updates_ptr = segments.add_temp_segment() %} - let state_updates_ptr = initial_state_updates_ptr; - with state_updates_ptr { - let (state_update_output) = state_update{hash_ptr=pedersen_ptr}( + let (squashed_os_state_update, state_update_output) = state_update{hash_ptr=pedersen_ptr}( + os_state_update=OsStateUpdate( contract_state_changes_start=contract_state_changes_start, contract_state_changes_end=contract_state_changes, contract_class_changes_start=contract_class_changes_start, contract_class_changes_end=contract_class_changes, - ); - } + ), + ); %{ vm_exit_scope() %} // Compute the general config hash. - // This is done here to avoid passing pedersen_ptr to os_output_serialize. + // This is done here to avoid passing pedersen_ptr to serialize_output_header. let hash_ptr = pedersen_ptr; with hash_ptr { let (starknet_os_config_hash) = get_starknet_os_config_hash( @@ -117,14 +120,25 @@ func main{ } let pedersen_ptr = hash_ptr; - os_output_serialize( - block_context=block_context, - state_update_output=state_update_output, - initial_carried_outputs=initial_carried_outputs, - final_carried_outputs=final_carried_outputs, - state_updates_ptr_start=initial_state_updates_ptr, - state_updates_ptr_end=state_updates_ptr, - starknet_os_config_hash=starknet_os_config_hash, + // Guess whether to use KZG commitment scheme. + local use_kzg_da = nondet %{ syscall_handler.block_info.use_kzg_da %}; + + // Serialize OS output. + + // Currently, the block hash is not enforced by the OS. + serialize_os_output( + os_output=new OsOutput( + header=new OsOutputHeader( + state_update_output=state_update_output, + block_number=block_context.block_info.block_number, + block_hash=nondet %{ os_input.block_hash %}, + starknet_os_config_hash=starknet_os_config_hash, + use_kzg_da=use_kzg_da, + ), + squashed_os_state_update=squashed_os_state_update, + initial_carried_outputs=initial_carried_outputs, + final_carried_outputs=final_carried_outputs, + ), ); // Make sure that we report using at least 1 range check to guarantee that diff --git a/src/starkware/starknet/core/os/os_input.py b/src/starkware/starknet/core/os/os_input.py index a8081973..82599bb7 100644 --- a/src/starkware/starknet/core/os/os_input.py +++ b/src/starkware/starknet/core/os/os_input.py @@ -1,6 +1,6 @@ import dataclasses from dataclasses import field -from typing import Any, Dict, Sequence +from typing import Any, Dict, List, Sequence import marshmallow.fields as mfields import marshmallow_dataclass @@ -37,6 +37,7 @@ class StarknetOsInput(ValidatedMarshmallowDataclass): compiled_classes: Dict[int, CompiledClass] = field( metadata=fields.new_class_hash_dict_keys_metadata(values_schema=CompiledClass.Schema) ) + compiled_class_visited_pcs: Dict[int, List[int]] contracts: Dict[int, ContractState] class_hash_to_compiled_class_hash: Dict[int, int] general_config: StarknetGeneralConfig diff --git a/src/starkware/starknet/core/os/os_logger.py b/src/starkware/starknet/core/os/os_logger.py new file mode 100644 index 00000000..25a16cb5 --- /dev/null +++ b/src/starkware/starknet/core/os/os_logger.py @@ -0,0 +1,364 @@ +from typing import Dict, List, Optional + +import cachetools + +from starkware.cairo.lang.builtins.all_builtins import with_suffix +from starkware.cairo.lang.compiler.program import Program +from starkware.cairo.lang.vm.cairo_pie import ExecutionResources +from starkware.cairo.lang.vm.memory_dict import MemoryDict +from starkware.cairo.lang.vm.memory_segments import MemorySegmentManager +from starkware.cairo.lang.vm.relocatable import RelocatableValue +from starkware.cairo.lang.vm.vm_consts import VmConstsReference +from starkware.python.math_utils import safe_div +from starkware.python.utils import as_non_optional +from starkware.starknet.business_logic.transaction.objects import InternalTransaction +from starkware.starknet.core.os.syscall_utils import ( + STARKNET_OLD_SYSCALLS_COMPILED_PATH, + STARKNET_SYSCALLS_COMPILED_PATH, + cast_to_int, + get_builtins_structs, + get_selector_from_program, +) +from starkware.starknet.definitions.general_config import STARKNET_LAYOUT_INSTANCE + +DEPRECATED_CALL_CONTRACT_SYSCALLS = { + "delegate_call", + "delegate_l1_handler", + "library_call_l1_handler", +} + +CALL_CONTRACT_SYSCALLS = { + "call_contract", + "library_call", + "deploy", + *DEPRECATED_CALL_CONTRACT_SYSCALLS, +} + +DEPRECATED_SYSCALL_NAMES = { + "delegate_call", + "delegate_l1_handler", + "get_block_number", + "get_block_timestamp", + "get_sequencer_address", + "get_tx_signature", + "library_call_l1_handler", + "get_caller_address", + "get_contract_address", + "get_tx_info", + *DEPRECATED_CALL_CONTRACT_SYSCALLS, +} +SYSCALLS_NAMES = { + "call_contract", + "library_call", + "deploy", + "keccak", + "emit_event", + "get_block_hash", + "get_execution_info", + "replace_class", + "send_message_to_l1", + "secp256k1_new", + "secp256k1_add", + "secp256k1_get_point_from_x", + "secp256k1_get_xy", + "secp256k1_mul", + "secp256r1_new", + "secp256r1_add", + "secp256r1_get_point_from_x", + "secp256r1_get_xy", + "secp256r1_mul", + "storage_read", + "storage_write", +} + + +@cachetools.cached(cache={}) +def get_deprecated_syscall_selector_to_name() -> Dict[int, str]: + with open(STARKNET_OLD_SYSCALLS_COMPILED_PATH, "r") as file: + syscalls_program = Program.loads(data=file.read()) + return { + get_selector_from_program(syscall_name=name, syscalls_program=syscalls_program): name + for name in DEPRECATED_SYSCALL_NAMES + } + + +@cachetools.cached(cache={}) +def get_syscall_selector_to_name() -> Dict[int, str]: + with open(STARKNET_SYSCALLS_COMPILED_PATH, "r") as file: + syscalls_program = Program.loads(data=file.read()) + return { + get_selector_from_program(syscall_name=name, syscalls_program=syscalls_program): name + for name in SYSCALLS_NAMES + } + + +class OptionalSegmentManager: + def __init__(self, segments: Optional[MemorySegmentManager]): + self._segments = segments + + def set_segments(self, segments: MemorySegmentManager): + assert self._segments is None, "segments is already set." + self._segments = segments + + @property + def segments(self) -> MemorySegmentManager: + assert self._segments is not None, "segments must be set before using the SyscallHandler." + return self._segments + + +class SyscallTrace: + """ + Holds information about syscall execution in the OS. + """ + + def __init__(self, name: str, deprecated: bool, tab_count: int): + self.name = name + self.deprecated = deprecated + self.tab_count = tab_count + self.inner_syscalls: List[SyscallTrace] = [] + self.builtin_count_dict: Dict[str, int] = {} + self._resources: Optional[ExecutionResources] = None + + @property + def resources(self) -> ExecutionResources: + assert ( + self._resources is not None + ), "SyscallTrace should be finalized before accessing resources." + return self._resources + + def finalize_resources(self, resources: ExecutionResources): + assert self._resources is None, "SyscallTrace should be finalized only once." + self._resources = resources + + def __str__(self): + deprecated = "deprecated " if self.deprecated else "" + builtins = ( + f"\n{' '*(self.tab_count+1)}Builtins: {self.resources.builtin_instance_counter}" + if len(self.resources.builtin_instance_counter) > 0 + else "" + ) + syscall_name_set = set(syscall.name for syscall in self.inner_syscalls) + inner_syscalls = ( + f"\n{' '*(self.tab_count+1)}Inner syscalls: {syscall_name_set}" + if len(syscall_name_set) > 0 + else "" + ) + return f"""\ +{deprecated}Syscall: {self.name} +{' '*(self.tab_count+1)}Steps: {self.resources.n_steps}{builtins}{inner_syscalls}""" + + +class TransactionTrace: + """ + Holds information about transaction execution in the OS. + """ + + def __init__(self, name: str, tx_hash: int): + self.name = name + self.tx_hash = tx_hash + self.syscalls: List[SyscallTrace] = [] + self._resources: Optional[ExecutionResources] = None + + @property + def resources(self) -> ExecutionResources: + assert ( + self._resources is not None + ), "TransactionTrace should be finalized before accessing resources." + return self._resources + + def finalize_resources(self, resources: ExecutionResources): + assert self._resources is None, "TransactionTrace should be finalized only once." + self._resources = resources + + def __str__(self) -> str: + builtins = ( + f"\n\tBuiltins: {self.resources.builtin_instance_counter}" + if len(self.resources.builtin_instance_counter) > 0 + else "" + ) + return f"""\ +Transaction: {self.name} +\tHash: {self.tx_hash} +\tSteps: {self.resources.n_steps}{builtins}""" + + +class ResourceCounter: + def __init__( + self, + n_steps: int, + builtins_ptrs_dict: VmConstsReference, + range_check_ptr: RelocatableValue, + memory: MemoryDict, + ): + self.n_steps = n_steps + self.range_check_ptr = range_check_ptr + self.builtin_ptrs_dict = self.create_builtins_from_ptr( + ptr=builtins_ptrs_dict, memory=memory + ) + + @staticmethod + def create_builtins_from_ptr( + ptr: VmConstsReference, memory: MemoryDict + ) -> Dict[str, RelocatableValue]: + builtins_struct = get_builtins_structs().BuiltinPointers.from_ptr( + memory=memory, addr=ptr.address_ + ) + builtins_dict = builtins_struct.selectable._asdict() + builtins_dict.pop("segment_arena") + builtins_dict.update(builtins_struct.non_selectable._asdict()) + return builtins_dict + + def sub_counter(self, enter_counter: "ResourceCounter") -> ExecutionResources: + builtins_count_ptr = { + key: cast_to_int(self.builtin_ptrs_dict[key] - enter_counter.builtin_ptrs_dict[key]) + for key in self.builtin_ptrs_dict.keys() + } + builtins_count_ptr["range_check"] += cast_to_int( + self.range_check_ptr - enter_counter.range_check_ptr + ) + builtins_count_ptr = { + with_suffix(builtin_name): safe_div( + count, STARKNET_LAYOUT_INSTANCE.builtins[builtin_name].memory_cells_per_instance + ) + for builtin_name, count in builtins_count_ptr.items() + if count != 0 + } + final_n_steps = self.n_steps - enter_counter.n_steps + return ExecutionResources( + n_steps=final_n_steps, builtin_instance_counter=builtins_count_ptr, n_memory_holes=0 + ) + + +class OsLogger: + """ + Collects and logs debug information during the OS execution. + """ + + def __init__(self, debug: bool, segments: OptionalSegmentManager): + self.debug = debug + self.current_tx: Optional[TransactionTrace] = None + self.tab_count: int = 0 + self.syscall_stack: List[SyscallTrace] = [] + self.txs: List[TransactionTrace] = [] + self.resource_counter_stack: List[ResourceCounter] = [] + # This segments are shared with the SyscallHandler and + # DeprecatedSyscallHandler objects through ExecutionHelper. + self.segments = segments + self.selector_to_syscall_info = get_syscall_selector_to_name() + self.deprecated_syscall_selector_to_name = get_deprecated_syscall_selector_to_name() + + def get_name_from_selector(self, selector: int) -> str: + if selector in self.selector_to_syscall_info: + return self.selector_to_syscall_info[selector] + return self.deprecated_syscall_selector_to_name[selector] + + def log(self, msg: str, enter: bool): + if self.debug: + if enter: + self.tab_count += 1 + print(f"{' ' * self.tab_count}{msg}") + if not enter: + self.tab_count -= 1 + + def enter_syscall( + self, + selector: int, + deprecated: bool, + n_steps: int, + builtin_ptrs: VmConstsReference, + range_check_ptr: RelocatableValue, + ): + assert self.current_tx is not None, "All syscalls should be called inside a transaction." + if len(self.syscall_stack) > 0: + parent_syscall_name = self.syscall_stack[-1].name + assert ( + parent_syscall_name in CALL_CONTRACT_SYSCALLS + ), f"the {parent_syscall_name} syscall is not suppouse to have an inner syscall." + + self.resource_counter_stack.append( + ResourceCounter( + n_steps=n_steps, + builtins_ptrs_dict=builtin_ptrs, + range_check_ptr=range_check_ptr, + memory=self.segments.segments.memory, + ) + ) + syscall = SyscallTrace( + name=self.get_name_from_selector(selector=selector), + deprecated=deprecated, + tab_count=self.tab_count, + ) + self.syscall_stack.append(syscall) + deprecated_str = "deprecated " if deprecated else "" + self.log(msg=f"Entering {deprecated_str}{syscall.name}.", enter=True) + + def exit_syscall( + self, + selector: int, + n_steps: int, + builtin_ptrs: VmConstsReference, + range_check_ptr: RelocatableValue, + ): + current_syscall = self.syscall_stack.pop() + enter_resources_counter = self.resource_counter_stack.pop() + expected_syscall_name = self.get_name_from_selector(selector=selector) + # A sanity check to ensure we store the syscall we work on. + assert expected_syscall_name == current_syscall.name, "Unexpected syscall name." + exit_resources_counter = ResourceCounter( + builtins_ptrs_dict=builtin_ptrs, + range_check_ptr=range_check_ptr, + n_steps=n_steps, + memory=self.segments.segments.memory, + ) + + current_syscall.finalize_resources( + resources=exit_resources_counter.sub_counter(enter_counter=enter_resources_counter) + ) + + self.log(msg=f"Exiting {current_syscall}.\n", enter=False) + if len(self.syscall_stack) > 0: + # Handle the case of inner syscalls. + self.syscall_stack[-1].inner_syscalls.append(current_syscall) + else: + as_non_optional(self.current_tx).syscalls.append(current_syscall) + + def enter_tx( + self, + tx: InternalTransaction, + n_steps: int, + builtin_ptrs: VmConstsReference, + range_check_ptr: RelocatableValue, + ): + assert self.current_tx is None, "No transaction sould call another transaction." + self.resource_counter_stack.append( + ResourceCounter( + n_steps=n_steps, + builtins_ptrs_dict=builtin_ptrs, + range_check_ptr=range_check_ptr, + memory=self.segments.segments.memory, + ) + ) + self.current_tx = TransactionTrace(name=tx.tx_type.name.lower(), tx_hash=tx.hash_value) + self.log(msg=f"Entering {tx.tx_type.name.lower()}: {hex(tx.hash_value)}.", enter=True) + + def exit_tx( + self, + n_steps: int, + builtin_ptrs: VmConstsReference, + range_check_ptr: RelocatableValue, + ): + assert self.current_tx is not None, "No transaction sould exit without entering." + assert len(self.syscall_stack) == 0, "All Syscalls should end when exiting a transaction." + enter_resources_counter = self.resource_counter_stack.pop() + exit_resources_counter = ResourceCounter( + builtins_ptrs_dict=builtin_ptrs, + range_check_ptr=range_check_ptr, + n_steps=n_steps, + memory=self.segments.segments.memory, + ) + self.current_tx.finalize_resources( + resources=exit_resources_counter.sub_counter(enter_counter=enter_resources_counter) + ) + self.log(msg=f"Exiting {self.current_tx}.\n", enter=False) + self.txs.append(self.current_tx) + self.current_tx = None diff --git a/src/starkware/starknet/core/os/os_program.py b/src/starkware/starknet/core/os/os_program.py index 9bad565d..d5b8359f 100644 --- a/src/starkware/starknet/core/os/os_program.py +++ b/src/starkware/starknet/core/os/os_program.py @@ -17,4 +17,4 @@ def get_os_program() -> Program: @cachetools.cached(cache={}) def get_os_program_hash() -> int: program = get_os_program() - return compute_program_hash_chain(program=program) + return compute_program_hash_chain(program=program, use_poseidon=False) diff --git a/src/starkware/starknet/core/os/os_utils.py b/src/starkware/starknet/core/os/os_utils.py index ffe8383a..44fcede1 100644 --- a/src/starkware/starknet/core/os/os_utils.py +++ b/src/starkware/starknet/core/os/os_utils.py @@ -1,4 +1,4 @@ -from typing import List +from typing import List, Tuple from starkware.cairo.common.cairo_function_runner import CairoFunctionRunner from starkware.cairo.lang.vm.memory_dict import MemoryDict @@ -6,10 +6,22 @@ from starkware.starknet.core.os import segment_utils from starkware.starknet.core.os.deprecated_syscall_handler import DeprecatedBlSyscallHandler from starkware.starknet.core.os.syscall_handler import BusinessLogicSyscallHandler +from starkware.starknet.definitions.constants import OsOutputConstant from starkware.starknet.definitions.error_codes import StarknetErrorCode from starkware.starknet.public.abi import SYSCALL_PTR_OFFSET_IN_VERSION0 from starkware.starkware_utils.error_handling import wrap_with_stark_exception +# KZG-related fields, outputted by the Starknet OS program. + +# Felt252. +Point = int + +# Uint256, split into low and high parts, each of 128 bits. +PointEvaluation = Tuple[int, int] + +# 48bytes (as Uint384), split into low and high parts, each of 192 bits. +KzgCommitment = Tuple[int, int] + def update_builtin_pointers( memory: MemoryDict, @@ -145,3 +157,19 @@ def validate_and_process_os_context_for_version0_class( segment_stop_ptr=syscall_stop_ptr, ) syscall_handler.post_run(runner=runner, syscall_stop_ptr=syscall_stop_ptr) + + +def extract_kzg_segment(program_output: List[int]) -> Tuple[KzgCommitment, Point, PointEvaluation]: + """ + Returns the KZG-related fields out of the given Starknet OS program output. + """ + assert ( + program_output[OsOutputConstant.USE_KZG_DA_OFFSET.value] == 1 + ), "A blob was attached but the KZG flag is off." + + kzg_segment = program_output[ + OsOutputConstant.HEADER_SIZE.value : OsOutputConstant.HEADER_SIZE.value + + OsOutputConstant.KZG_SEGMENT_SIZE.value + ] + + return (kzg_segment[0], kzg_segment[1]), kzg_segment[2], (kzg_segment[3], kzg_segment[4]) diff --git a/src/starkware/starknet/core/os/output.cairo b/src/starkware/starknet/core/os/output.cairo index 1c72ba66..a714104c 100644 --- a/src/starkware/starknet/core/os/output.cairo +++ b/src/starkware/starknet/core/os/output.cairo @@ -1,8 +1,37 @@ +from starkware.cairo.common.cairo_builtins import PoseidonBuiltin from starkware.cairo.common.registers import get_fp_and_pc from starkware.cairo.common.segments import relocate_segment from starkware.cairo.common.serialize import serialize_word -from starkware.starknet.core.os.block_context import BlockContext, BlockInfo -from starkware.starknet.core.os.state import StateUpdateOutput +from starkware.starknet.core.os.data_availability.commitment import ( + OsKzgCommitmentInfo, + compute_os_kzg_commitment_info, +) +from starkware.starknet.core.os.state.commitment import CommitmentUpdate +from starkware.starknet.core.os.state.output import ( + output_contract_class_da_changes, + output_contract_state, +) +from starkware.starknet.core.os.state.state import SquashedOsStateUpdate + +// Represents the output of the OS. +struct OsOutput { + header: OsOutputHeader*, + squashed_os_state_update: SquashedOsStateUpdate*, + initial_carried_outputs: OsCarriedOutputs*, + final_carried_outputs: OsCarriedOutputs*, +} + +// The header of the OS output. +struct OsOutputHeader { + state_update_output: CommitmentUpdate*, + block_number: felt, + // Currently, the block hash is not enforced by the OS. + block_hash: felt, + starknet_os_config_hash: felt, + // Indicates whether to use KZG commitment scheme instead of adding the data-availability to + // the transaction data. + use_kzg_da: felt, +} // An L2 to L1 message header, the message payload is concatenated to the end of the header. struct MessageToL1Header { @@ -30,6 +59,70 @@ struct OsCarriedOutputs { messages_to_l2: MessageToL2Header*, } +func serialize_os_output{range_check_ptr, poseidon_ptr: PoseidonBuiltin*, output_ptr: felt*}( + os_output: OsOutput* +) { + alloc_locals; + + local use_kzg_da = os_output.header.use_kzg_da; + + // Compute the data availability segment. + local state_updates_start: felt*; + let state_updates_ptr = state_updates_start; + %{ + if ids.use_kzg_da: + ids.state_updates_start = segments.add() + else: + # Assign a temporary segment, to be relocated into the output segment. + ids.state_updates_start = segments.add_temp_segment() + %} + local squashed_os_state_update: SquashedOsStateUpdate* = os_output.squashed_os_state_update; + with state_updates_ptr { + // Output the contract state diff. + output_contract_state( + contract_state_changes_start=squashed_os_state_update.contract_state_changes, + n_contract_state_changes=squashed_os_state_update.n_contract_state_changes, + ); + + // Output the contract class diff. + output_contract_class_da_changes( + update_ptr=squashed_os_state_update.contract_class_changes, + n_updates=squashed_os_state_update.n_class_updates, + ); + } + + serialize_output_header(os_output_header=os_output.header); + + if (use_kzg_da != 0) { + let os_kzg_commitment_info = compute_os_kzg_commitment_info( + state_updates_start=state_updates_start, state_updates_end=state_updates_ptr + ); + serialize_os_kzg_commitment_info(os_kzg_commitment_info=os_kzg_commitment_info); + tempvar poseidon_ptr = poseidon_ptr; + tempvar range_check_ptr = range_check_ptr; + } else { + // Align the stack with the `if` branch to avoid revoked references. + tempvar output_ptr = output_ptr; + tempvar poseidon_ptr = poseidon_ptr; + tempvar range_check_ptr = range_check_ptr; + } + local range_check_ptr = range_check_ptr; + local poseidon_ptr: PoseidonBuiltin* = poseidon_ptr; + + serialize_messages( + initial_carried_outputs=os_output.initial_carried_outputs, + final_carried_outputs=os_output.final_carried_outputs, + ); + + if (use_kzg_da == 0) { + serialize_data_availability( + state_updates_start=state_updates_start, state_updates_end=state_updates_ptr + ); + } + + return (); +} + func os_carried_outputs_new( messages_to_l1: MessageToL1Header*, messages_to_l2: MessageToL2Header* ) -> (os_carried_outputs: OsCarriedOutputs*) { @@ -38,26 +131,26 @@ func os_carried_outputs_new( return (os_carried_outputs=cast(fp_val - 2 - OsCarriedOutputs.SIZE, OsCarriedOutputs*)); } -func os_output_serialize{output_ptr: felt*}( - block_context: BlockContext*, - state_update_output: StateUpdateOutput*, - initial_carried_outputs: OsCarriedOutputs*, - final_carried_outputs: OsCarriedOutputs*, - state_updates_ptr_start: felt*, - state_updates_ptr_end: felt*, - starknet_os_config_hash: felt, -) { +// Serializes to output the constant-sized execution info needed for the L1 state update; +// for example, state roots and config hash. +func serialize_output_header{output_ptr: felt*}(os_output_header: OsOutputHeader*) { // Serialize program output. // Serialize roots. - serialize_word(state_update_output.initial_root); - serialize_word(state_update_output.final_root); + serialize_word(os_output_header.state_update_output.initial_root); + serialize_word(os_output_header.state_update_output.final_root); + serialize_word(os_output_header.block_number); + serialize_word(os_output_header.block_hash); + serialize_word(os_output_header.starknet_os_config_hash); + serialize_word(os_output_header.use_kzg_da); - serialize_word(block_context.block_info.block_number); - // Currently, the block hash is not enforced by the OS. - serialize_word(nondet %{ os_input.block_hash %}); - serialize_word(starknet_os_config_hash); + return (); +} +// Serializes to output the L1<>L2 messages sent during the execution. +func serialize_messages{output_ptr: felt*}( + initial_carried_outputs: OsCarriedOutputs*, final_carried_outputs: OsCarriedOutputs* +) { let messages_to_l1_segment_size = ( final_carried_outputs.messages_to_l1 - initial_carried_outputs.messages_to_l1 ); @@ -76,12 +169,28 @@ func os_output_serialize{output_ptr: felt*}( relocate_segment(src_ptr=initial_carried_outputs.messages_to_l2, dest_ptr=output_ptr); let output_ptr = cast(final_carried_outputs.messages_to_l2, felt*); - // Serialize data availability. + return (); +} + +// Serializes OsKzgCommitmentInfo to output. Required for publishing data on L1 using KZG +// commitment; see `compute_os_kzg_commitment_info` documentation for more details. +func serialize_os_kzg_commitment_info{output_ptr: felt*}( + os_kzg_commitment_info: OsKzgCommitmentInfo* +) { + assert [cast(output_ptr, OsKzgCommitmentInfo*)] = [os_kzg_commitment_info]; + let output_ptr = output_ptr + OsKzgCommitmentInfo.SIZE; + + return (); +} + +func serialize_data_availability{output_ptr: felt*}( + state_updates_start: felt*, state_updates_end: felt* +) { let da_start = output_ptr; // Relocate 'state_updates_segment' to the correct place in the output segment. - relocate_segment(src_ptr=state_updates_ptr_start, dest_ptr=output_ptr); - let output_ptr = state_updates_ptr_end; + relocate_segment(src_ptr=state_updates_start, dest_ptr=output_ptr); + let output_ptr = state_updates_end; %{ from starkware.python.math_utils import div_ceil diff --git a/src/starkware/starknet/core/os/program_hash.json b/src/starkware/starknet/core/os/program_hash.json index ec420937..9d283e0a 100644 --- a/src/starkware/starknet/core/os/program_hash.json +++ b/src/starkware/starknet/core/os/program_hash.json @@ -1,3 +1,3 @@ { - "program_hash": "0x615b792bddeb7f4d89a4a1fdba7e859fd3c7372f4eca4e5cf5ab240bd2bf5d8" + "program_hash": "0xa15c784d92588218d2e810337baf6e0d9bcf90c63e7b2ce830774da0c2940b" } diff --git a/src/starkware/starknet/core/os/state.cairo b/src/starkware/starknet/core/os/state.cairo deleted file mode 100644 index 6631cade..00000000 --- a/src/starkware/starknet/core/os/state.cairo +++ /dev/null @@ -1,530 +0,0 @@ -from starkware.cairo.common.alloc import alloc -from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash, poseidon_hash_many -from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin -from starkware.cairo.common.dict import DictAccess, squash_dict -from starkware.cairo.common.hash import hash2 -from starkware.cairo.common.math import assert_nn_le -from starkware.cairo.common.math_cmp import is_not_zero -from starkware.cairo.common.patricia import ( - patricia_update_constants_new, - patricia_update_using_update_constants, -) -from starkware.cairo.common.patricia_utils import PatriciaUpdateConstants -from starkware.cairo.common.patricia_with_poseidon import ( - patricia_update_using_update_constants as patricia_update_using_update_constants_with_poseidon, -) -from starkware.cairo.common.segments import relocate_segment - -const MERKLE_HEIGHT = 251; // PRIME.bit_length() - 1. -const UNINITIALIZED_CLASS_HASH = 0; -const GLOBAL_STATE_VERSION = 'STARKNET_STATE_V0'; -const CONTRACT_CLASS_LEAF_VERSION = 'CONTRACT_CLASS_LEAF_V0'; - -// The on-chain data for contract state changes has the following format: -// -// * The number of affected contracts. -// * For each contract: -// * Header: -// * The contract address (1 word). -// * 1 word with the following info: -// * A flag indicating whether the class hash was updated, -// * the number of entry updates, -// * and the new nonce: -// +-------+-----------+-----------+ LSB -// | flag | new nonce | n_updates | -// | 1 bit | 64 bits | 64 bits | -// +-------+-----------+-----------+ -// * The class hash for this contract (if it was updated) (0 or 1 word). -// * For each entry update: -// * key (1 word). -// * new value (1 word). - -// The on-chain data for contract class changes has the following format: -// * The number of classes that have been declared. -// * For each contract class: -// * The class hash (1 word). -// * The compiled class hash (casm, 1 word). - -// A bound on the number of contract state entry updates in a contract. -const N_UPDATES_BOUND = 2 ** 64; -// A bound on the nonce of a contract. -const NONCE_BOUND = 2 ** 64; - -struct StateUpdateOutput { - initial_root: felt, - final_root: felt, -} - -struct StateEntry { - class_hash: felt, - storage_ptr: DictAccess*, - nonce: felt, -} - -// Represents an update of a state entry; Either a contract state entry of a contract or a -// contract class entry in the contract class hash mapping. -struct StateUpdateEntry { - // The entry's key. - key: felt, - // The new value. - value: felt, -} - -func serialize_da_changes{state_updates: StateUpdateEntry*}( - update_ptr: DictAccess*, n_updates: felt -) { - if (n_updates == 0) { - return (); - } - if (update_ptr.prev_value == update_ptr.new_value) { - tempvar state_updates = state_updates; - } else { - assert [state_updates] = StateUpdateEntry(key=update_ptr.key, value=update_ptr.new_value); - tempvar state_updates = state_updates + StateUpdateEntry.SIZE; - } - return serialize_da_changes(update_ptr=update_ptr + DictAccess.SIZE, n_updates=n_updates - 1); -} - -// Serializes changes in the contract class tree into 'state_updates_ptr'. -func serialize_contract_class_da_changes{state_updates_ptr: felt*}( - update_ptr: DictAccess*, n_updates: felt -) { - alloc_locals; - - // Allocate space for the number of changes. - let n_diffs_output_placeholder = state_updates_ptr[0]; - let state_updates_ptr = &state_updates_ptr[1]; - - // Write the updates. - local state_updates: StateUpdateEntry* = cast(state_updates_ptr, StateUpdateEntry*); - let state_updates_start = state_updates; - with state_updates { - serialize_da_changes(update_ptr=update_ptr, n_updates=n_updates); - } - let state_updates_ptr = cast(state_updates, felt*); - - // Write the number of updates. - let n_diffs = (state_updates - state_updates_start) / StateUpdateEntry.SIZE; - assert n_diffs_output_placeholder = n_diffs; - - return (); -} - -// Calculates and returns the global state root given the contract state root and -// the contract class state root. -// If both the contract class and contract state trees are empty, the global root is set to 0. -// If the contract class tree is empty, the global state root is equal to the -// contract state root (for backward compatibility); -// Otherwise, the global root is obtained by: -// global_root = H(GLOBAL_STATE_VERSION, contract_state_root, contract_class_root). -func calculate_global_state_root{poseidon_ptr: PoseidonBuiltin*, range_check_ptr}( - contract_state_root: felt, contract_class_root: felt -) -> (global_root: felt) { - if (contract_state_root == 0 and contract_class_root == 0) { - // The state is empty. - return (global_root=0); - } - - // Backward compatibility; Used during the migration from a state without a - // contract class tree to a state with a contract class tree. - if (contract_class_root == 0) { - // The contract classes' state is empty. - return (global_root=contract_state_root); - } - - tempvar elements: felt* = new (GLOBAL_STATE_VERSION, contract_state_root, contract_class_root); - let (global_root) = poseidon_hash_many(n=3, elements=elements); - return (global_root=global_root); -} - -// Performs the commitment tree updates required for (validating and) updating the global state. -// Returns a StateUpdateOutput struct. -// Writes the changed values (contract storage and declared class hashes) into state_updates_ptr. -func state_update{ - poseidon_ptr: PoseidonBuiltin*, - hash_ptr: HashBuiltin*, - range_check_ptr, - state_updates_ptr: felt*, -}( - contract_state_changes_start: DictAccess*, - contract_state_changes_end: DictAccess*, - contract_class_changes_start: DictAccess*, - contract_class_changes_end: DictAccess*, -) -> (state_update_output: StateUpdateOutput*) { - alloc_locals; - - // Create PatriciaUpdateConstants struct for patricia update. - let (local patricia_update_constants: PatriciaUpdateConstants*) = patricia_update_constants_new( - ); - - // Update the contract state tree. - let (contract_state_tree_update_output) = contract_state_update( - contract_state_changes_start=contract_state_changes_start, - contract_state_changes_end=contract_state_changes_end, - patricia_update_constants=patricia_update_constants, - ); - - // Update the contract class tree. - let (contract_class_tree_update_output) = contract_class_update( - class_changes_start=contract_class_changes_start, - class_changes_end=contract_class_changes_end, - patricia_update_constants=patricia_update_constants, - ); - - // Compute the initial and final roots of the global state. - let (local initial_global_root) = calculate_global_state_root( - contract_state_root=contract_state_tree_update_output.initial_root, - contract_class_root=contract_class_tree_update_output.initial_root, - ); - let (local final_global_root) = calculate_global_state_root( - contract_state_root=contract_state_tree_update_output.final_root, - contract_class_root=contract_class_tree_update_output.final_root, - ); - - return ( - state_update_output=new StateUpdateOutput( - initial_root=initial_global_root, final_root=final_global_root - ), - ); -} - -// Performs the commitment tree updates required for (validating and) updating the -// contract class tree. -// Returns a StateUpdateOutput struct for the tree. -// Checks that [class_changes_start, class_changes_end) is a valid dictionary according to -// squash_dict. -// Writes the changed values into state_updates_ptr, to make this data available on-chain. -func contract_class_update{ - poseidon_ptr: PoseidonBuiltin*, range_check_ptr, state_updates_ptr: felt* -}( - class_changes_start: DictAccess*, - class_changes_end: DictAccess*, - patricia_update_constants: PatriciaUpdateConstants*, -) -> (contract_class_tree_update_output: StateUpdateOutput) { - alloc_locals; - - // Guess the initial and final roots of the contract class tree. - local initial_root; - local final_root; - %{ - ids.initial_root = os_input.contract_class_commitment_info.previous_root - ids.final_root = os_input.contract_class_commitment_info.updated_root - preimage = { - int(root): children - for root, children in os_input.contract_class_commitment_info.commitment_facts.items() - } - assert os_input.contract_class_commitment_info.tree_height == ids.MERKLE_HEIGHT - %} - - let (local squashed_dict: DictAccess*) = alloc(); - let (local squashed_dict_end) = squash_dict( - dict_accesses=class_changes_start, - dict_accesses_end=class_changes_end, - squashed_dict=squashed_dict, - ); - - local n_class_updates = (squashed_dict_end - squashed_dict) / DictAccess.SIZE; - - // Create a dictionary mapping class hash to the contract class leaf hash, - // to prepare the input for the commitment tree update. - let (local hashed_class_changes: DictAccess*) = alloc(); - hash_class_changes( - n_class_updates=n_class_updates, - class_changes=squashed_dict, - hashed_class_changes=hashed_class_changes, - ); - - // Call patricia_update_using_update_constants() instead of patricia_update() - // in order not to repeat globals_pow2 calculation. - patricia_update_using_update_constants_with_poseidon( - patricia_update_constants=patricia_update_constants, - update_ptr=hashed_class_changes, - n_updates=n_class_updates, - height=MERKLE_HEIGHT, - prev_root=initial_root, - new_root=final_root, - ); - - serialize_contract_class_da_changes(update_ptr=squashed_dict, n_updates=n_class_updates); - - return ( - contract_class_tree_update_output=StateUpdateOutput( - initial_root=initial_root, final_root=final_root - ), - ); -} - -// Takes a dict mapping class hash to compiled class hash and produces -// a dict mapping class hash to the corresponding leaf hash input dict. -// The output is written to 'hashed_state_changes'. -func hash_class_changes{poseidon_ptr: PoseidonBuiltin*}( - n_class_updates: felt, class_changes: DictAccess*, hashed_class_changes: DictAccess* -) { - if (n_class_updates == 0) { - return (); - } - - alloc_locals; - - let (local prev_value) = get_contract_class_leaf_hash( - compiled_class_hash=class_changes.prev_value - ); - let (new_value) = get_contract_class_leaf_hash(compiled_class_hash=class_changes.new_value); - assert hashed_class_changes[0] = DictAccess( - key=class_changes.key, prev_value=prev_value, new_value=new_value - ); - - return hash_class_changes( - n_class_updates=n_class_updates - 1, - class_changes=&class_changes[1], - hashed_class_changes=&hashed_class_changes[1], - ); -} - -// Hashes a contract class leaf. -// A contract class leaf contains a compiled class hash and the leaf version. -// Returns H(compiled_class_hash, leaf_version). -func get_contract_class_leaf_hash{poseidon_ptr: PoseidonBuiltin*}(compiled_class_hash: felt) -> ( - hash: felt -) { - if (compiled_class_hash == UNINITIALIZED_CLASS_HASH) { - return (hash=0); - } - - // Return H(CONTRACT_CLASS_LEAF_VERSION, compiled_class_hash). - let (hash_value) = poseidon_hash(CONTRACT_CLASS_LEAF_VERSION, compiled_class_hash); - return (hash=hash_value); -} - -// Performs the commitment tree updates required for (validating and) updating the global state of -// the contracts. -// Returns a StateUpdateOutput struct regarding the global contracts' state. -// Checks that [contract_state_changes_start, contract_state_changes_end) is a valid dictionary -// according to squash_dict. -// Writes the changed values into state_updates_ptr, to make this data available on-chain. -func contract_state_update{hash_ptr: HashBuiltin*, range_check_ptr, state_updates_ptr: felt*}( - contract_state_changes_start: DictAccess*, - contract_state_changes_end: DictAccess*, - patricia_update_constants: PatriciaUpdateConstants*, -) -> (contract_state_tree_update_output: StateUpdateOutput) { - alloc_locals; - let (local squashed_dict: DictAccess*) = alloc(); - - // Squash the global dictionary to get a list of triples (addr, dict_begin, dict_end). - let (squashed_dict_end) = squash_dict( - dict_accesses=contract_state_changes_start, - dict_accesses_end=contract_state_changes_end, - squashed_dict=squashed_dict, - ); - - // Hash the entries of the contract state changes to prepare the input for the commitment tree - // multi-update. - let (local hashed_state_changes: DictAccess*) = alloc(); - local n_contract_state_changes = (squashed_dict_end - squashed_dict) / DictAccess.SIZE; - // Make room for number of state updates. - let output_n_updates = [state_updates_ptr]; - let state_updates_ptr = state_updates_ptr + 1; - let n_actual_state_changes = 0; - - with n_actual_state_changes { - hash_state_changes( - n_contract_state_changes=n_contract_state_changes, - state_changes=squashed_dict, - hashed_state_changes=hashed_state_changes, - patricia_update_constants=patricia_update_constants, - ); - } - // Write number of state updates. - assert output_n_updates = n_actual_state_changes; - - // Compute the initial and final roots of the contracts' state tree. - local initial_root; - local final_root; - - %{ - ids.initial_root = os_input.contract_state_commitment_info.previous_root - ids.final_root = os_input.contract_state_commitment_info.updated_root - preimage = { - int(root): children - for root, children in os_input.contract_state_commitment_info.commitment_facts.items() - } - assert os_input.contract_state_commitment_info.tree_height == ids.MERKLE_HEIGHT - %} - - // Call patricia_update_using_update_constants() instead of patricia_update() - // in order not to repeat globals_pow2 calculation. - patricia_update_using_update_constants( - patricia_update_constants=patricia_update_constants, - update_ptr=hashed_state_changes, - n_updates=n_contract_state_changes, - height=MERKLE_HEIGHT, - prev_root=initial_root, - new_root=final_root, - ); - - return ( - contract_state_tree_update_output=StateUpdateOutput( - initial_root=initial_root, final_root=final_root - ), - ); -} - -func get_contract_state_hash{hash_ptr: HashBuiltin*}( - class_hash: felt, storage_root: felt, nonce: felt -) -> (hash: felt) { - const CONTRACT_STATE_HASH_VERSION = 0; - if (class_hash == UNINITIALIZED_CLASS_HASH) { - if (storage_root == 0) { - if (nonce == 0) { - return (hash=0); - } - } - } - - // Set res = H(H(class_hash, storage_root), nonce). - let (hash_value) = hash2(class_hash, storage_root); - let (hash_value) = hash2(hash_value, nonce); - - // Return H(hash_value, CONTRACT_STATE_HASH_VERSION). CONTRACT_STATE_HASH_VERSION must be in the - // outermost hash to guarantee unique "decoding". - let (hash) = hash2(hash_value, CONTRACT_STATE_HASH_VERSION); - return (hash=hash); -} - -// Takes a dict of StateEntry structs and produces a dict of hashes by hashing -// every entry of the input dict. The output is written to 'hashed_state_changes' -// -// Writes all contract state changes to output (state_updates_ptr), 'n_actual_state_changes' -// will hold the number of contracts with state changes. -func hash_state_changes{ - hash_ptr: HashBuiltin*, range_check_ptr, state_updates_ptr: felt*, n_actual_state_changes -}( - n_contract_state_changes: felt, - state_changes: DictAccess*, - hashed_state_changes: DictAccess*, - patricia_update_constants: PatriciaUpdateConstants*, -) { - if (n_contract_state_changes == 0) { - return (); - } - alloc_locals; - - local prev_state: StateEntry* = cast(state_changes.prev_value, StateEntry*); - local new_state: StateEntry* = cast(state_changes.new_value, StateEntry*); - local new_state_nonce = new_state.nonce; - let (local squashed_contract_state_dict: DictAccess*) = alloc(); - local initial_contract_state_root; - local final_contract_state_root; - - %{ - commitment_info = commitment_info_by_address[ids.state_changes.key] - ids.initial_contract_state_root = commitment_info.previous_root - ids.final_contract_state_root = commitment_info.updated_root - preimage = { - int(root): children - for root, children in commitment_info.commitment_facts.items() - } - assert commitment_info.tree_height == ids.MERKLE_HEIGHT - %} - let (local squashed_contract_state_dict_end) = squash_dict( - dict_accesses=prev_state.storage_ptr, - dict_accesses_end=new_state.storage_ptr, - squashed_dict=squashed_contract_state_dict, - ); - - local n_updates = (squashed_contract_state_dict_end - squashed_contract_state_dict) / - DictAccess.SIZE; - // Call patricia_update_using_update_constants() instead of patricia_update() - // in order not to repeat globals_pow2 calculation. - patricia_update_using_update_constants( - patricia_update_constants=patricia_update_constants, - update_ptr=squashed_contract_state_dict, - n_updates=n_updates, - height=MERKLE_HEIGHT, - prev_root=initial_contract_state_root, - new_root=final_contract_state_root, - ); - - let (prev_value) = get_contract_state_hash( - class_hash=prev_state.class_hash, - storage_root=initial_contract_state_root, - nonce=prev_state.nonce, - ); - assert hashed_state_changes.prev_value = prev_value; - let (new_value) = get_contract_state_hash( - class_hash=new_state.class_hash, - storage_root=final_contract_state_root, - nonce=new_state_nonce, - ); - assert hashed_state_changes.new_value = new_value; - assert hashed_state_changes.key = state_changes.key; - - let hashed_state_changes = hashed_state_changes + DictAccess.SIZE; - - // Write contract state updates to output (state_updates_ptr). - - // Prepare updates. - local contract_state_updates_start: StateUpdateEntry*; - %{ ids.contract_state_updates_start = segments.add_temp_segment() %} - let contract_state_updates = contract_state_updates_start; - serialize_da_changes{state_updates=contract_state_updates}( - update_ptr=squashed_contract_state_dict, n_updates=n_updates - ); - - let was_class_updated = is_not_zero(prev_state.class_hash - new_state.class_hash); - - // Number of actual updates. - local n_updates = (contract_state_updates - contract_state_updates_start) / - StateUpdateEntry.SIZE; - - if (n_updates == 0 and new_state_nonce == prev_state.nonce and was_class_updated == 0) { - // Relocate the temporary segment even if it's empty (to fix the addresses written in - // the memory). - relocate_segment(src_ptr=contract_state_updates_start, dest_ptr=state_updates_ptr); - - // There are no updates for this contract. - return hash_state_changes( - n_contract_state_changes=n_contract_state_changes - 1, - state_changes=state_changes + DictAccess.SIZE, - hashed_state_changes=hashed_state_changes, - patricia_update_constants=patricia_update_constants, - ); - } - - // Write contract address. - assert [state_updates_ptr] = state_changes.key; - let state_updates_ptr = state_updates_ptr + 1; - - // Write the second word of the header. - // Write 'was class update' flag. - let value = was_class_updated; - // Write the nonce. - assert_nn_le(new_state_nonce, NONCE_BOUND - 1); - let value = value * NONCE_BOUND + new_state_nonce; - // Write the number of updates. - assert_nn_le(n_updates, N_UPDATES_BOUND - 1); - let value = value * N_UPDATES_BOUND + n_updates; - assert [state_updates_ptr] = value; - let state_updates_ptr = state_updates_ptr + 1; - - if (was_class_updated != 0) { - // Write the new class hash. - assert [state_updates_ptr] = new_state.class_hash; - tempvar state_updates_ptr = state_updates_ptr + 1; - } else { - tempvar state_updates_ptr = state_updates_ptr; - } - - // Write the updates. - relocate_segment(src_ptr=contract_state_updates_start, dest_ptr=state_updates_ptr); - let state_updates_ptr = cast(contract_state_updates, felt*); - - let n_actual_state_changes = n_actual_state_changes + 1; - - return hash_state_changes( - n_contract_state_changes=n_contract_state_changes - 1, - state_changes=state_changes + DictAccess.SIZE, - hashed_state_changes=hashed_state_changes, - patricia_update_constants=patricia_update_constants, - ); -} diff --git a/src/starkware/starknet/core/os/state/BUILD b/src/starkware/starknet/core/os/state/BUILD new file mode 100644 index 00000000..bb55fa5b --- /dev/null +++ b/src/starkware/starknet/core/os/state/BUILD @@ -0,0 +1,15 @@ +load("//src/starkware/cairo/lang:cairo_rules.bzl", "cairo_library") + +cairo_library( + name = "starknet_os_state_lib", + srcs = [ + "commitment.cairo", + "output.cairo", + "squash.cairo", + "state.cairo", + ], + visibility = ["//visibility:public"], + deps = [ + "//src/starkware/cairo/common:cairo_common_cairo_lib", + ], +) diff --git a/src/starkware/starknet/core/os/state/commitment.cairo b/src/starkware/starknet/core/os/state/commitment.cairo new file mode 100644 index 00000000..6275de74 --- /dev/null +++ b/src/starkware/starknet/core/os/state/commitment.cairo @@ -0,0 +1,307 @@ +from starkware.cairo.common.alloc import alloc +from starkware.cairo.common.builtin_poseidon.poseidon import poseidon_hash, poseidon_hash_many +from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin +from starkware.cairo.common.dict import DictAccess +from starkware.cairo.common.hash import hash2 +from starkware.cairo.common.patricia import patricia_update_using_update_constants +from starkware.cairo.common.patricia_utils import PatriciaUpdateConstants +from starkware.cairo.common.patricia_with_poseidon import ( + patricia_update_using_update_constants as patricia_update_using_update_constants_with_poseidon, +) + +const MERKLE_HEIGHT = 251; // PRIME.bit_length() - 1. +const UNINITIALIZED_CLASS_HASH = 0; +const GLOBAL_STATE_VERSION = 'STARKNET_STATE_V0'; +const CONTRACT_CLASS_LEAF_VERSION = 'CONTRACT_CLASS_LEAF_V0'; + +struct CommitmentUpdate { + initial_root: felt, + final_root: felt, +} + +struct StateEntry { + class_hash: felt, + storage_ptr: DictAccess*, + nonce: felt, +} + +// Calculates and returns the global state root given the contract state root and +// the contract class state root. +// If both the contract class and contract state trees are empty, the global root is set to 0. +// If the contract class tree is empty, the global state root is equal to the +// contract state root (for backward compatibility); +// Otherwise, the global root is obtained by: +// global_root = H(GLOBAL_STATE_VERSION, contract_state_root, contract_class_root). +func calculate_global_state_root{poseidon_ptr: PoseidonBuiltin*, range_check_ptr}( + contract_state_root: felt, contract_class_root: felt +) -> (global_root: felt) { + if (contract_state_root == 0 and contract_class_root == 0) { + // The state is empty. + return (global_root=0); + } + + // Backward compatibility; Used during the migration from a state without a + // contract class tree to a state with a contract class tree. + if (contract_class_root == 0) { + // The contract classes' state is empty. + return (global_root=contract_state_root); + } + + tempvar elements: felt* = new (GLOBAL_STATE_VERSION, contract_state_root, contract_class_root); + let (global_root) = poseidon_hash_many(n=3, elements=elements); + return (global_root=global_root); +} + +func get_contract_state_hash{hash_ptr: HashBuiltin*}( + class_hash: felt, storage_root: felt, nonce: felt +) -> (hash: felt) { + const CONTRACT_STATE_HASH_VERSION = 0; + if (class_hash == UNINITIALIZED_CLASS_HASH) { + if (storage_root == 0) { + if (nonce == 0) { + return (hash=0); + } + } + } + + // Set res = H(H(class_hash, storage_root), nonce). + let (hash_value) = hash2(class_hash, storage_root); + let (hash_value) = hash2(hash_value, nonce); + + // Return H(hash_value, CONTRACT_STATE_HASH_VERSION). CONTRACT_STATE_HASH_VERSION must be in the + // outermost hash to guarantee unique "decoding". + let (hash) = hash2(hash_value, CONTRACT_STATE_HASH_VERSION); + return (hash=hash); +} + +// Computes the previous and new commitments to the contract state. +// +// Assumption: The dictionary `contract_state_changes_start` is squashed. +func compute_contract_state_commitment{hash_ptr: HashBuiltin*, range_check_ptr}( + contract_state_changes_start: DictAccess*, + n_contract_state_changes: felt, + patricia_update_constants: PatriciaUpdateConstants*, +) -> CommitmentUpdate { + alloc_locals; + + // Hash the entries of the contract state changes to prepare the input for the commitment tree + // multi-update. + let (local hashed_state_changes: DictAccess*) = alloc(); + compute_contract_state_commitment_inner( + state_changes=contract_state_changes_start, + n_contract_state_changes=n_contract_state_changes, + hashed_state_changes=hashed_state_changes, + patricia_update_constants=patricia_update_constants, + ); + + // Compute the initial and final roots of the contracts' state tree. + local initial_root; + local final_root; + + %{ + ids.initial_root = os_input.contract_state_commitment_info.previous_root + ids.final_root = os_input.contract_state_commitment_info.updated_root + preimage = { + int(root): children + for root, children in os_input.contract_state_commitment_info.commitment_facts.items() + } + assert os_input.contract_state_commitment_info.tree_height == ids.MERKLE_HEIGHT + %} + + // Call patricia_update_using_update_constants() instead of patricia_update() + // in order not to repeat globals_pow2 calculation. + patricia_update_using_update_constants( + patricia_update_constants=patricia_update_constants, + update_ptr=hashed_state_changes, + n_updates=n_contract_state_changes, + height=MERKLE_HEIGHT, + prev_root=initial_root, + new_root=final_root, + ); + + return (CommitmentUpdate(initial_root=initial_root, final_root=final_root)); +} + +// Helper function for `compute_contract_state_commitment()`. +func compute_contract_state_commitment_inner{hash_ptr: HashBuiltin*, range_check_ptr}( + state_changes: DictAccess*, + n_contract_state_changes: felt, + hashed_state_changes: DictAccess*, + patricia_update_constants: PatriciaUpdateConstants*, +) { + if (n_contract_state_changes == 0) { + return (); + } + alloc_locals; + + // Compute the previous and new hash of the contract state and write the result into + // hashed_state_changes[0]. + hash_contract_state_changes( + contract_address=state_changes.key, + prev_state=cast(state_changes.prev_value, StateEntry*), + new_state=cast(state_changes.new_value, StateEntry*), + patricia_update_constants=patricia_update_constants, + hashed_state_changes=&hashed_state_changes[0], + ); + + return compute_contract_state_commitment_inner( + state_changes=&state_changes[1], + n_contract_state_changes=n_contract_state_changes - 1, + hashed_state_changes=&hashed_state_changes[1], + patricia_update_constants=patricia_update_constants, + ); +} + +// Takes two `StateEntry` objects, representing the state of a contract before and after, +// and computes the previous and new contract hash in the contract tree. +// +// Assumption: The dict representing the storage changes (`StateEntry::storage_ptr`) is squashed. +// The output is written into `hashed_state_changes`. +func hash_contract_state_changes{hash_ptr: HashBuiltin*, range_check_ptr}( + contract_address: felt, + prev_state: StateEntry*, + new_state: StateEntry*, + patricia_update_constants: PatriciaUpdateConstants*, + hashed_state_changes: DictAccess*, +) { + alloc_locals; + + local initial_contract_state_root; + local final_contract_state_root; + + %{ + commitment_info = commitment_info_by_address[ids.contract_address] + ids.initial_contract_state_root = commitment_info.previous_root + ids.final_contract_state_root = commitment_info.updated_root + preimage = { + int(root): children + for root, children in commitment_info.commitment_facts.items() + } + assert commitment_info.tree_height == ids.MERKLE_HEIGHT + %} + + local state_dict_start: DictAccess* = prev_state.storage_ptr; + local state_dict_end: DictAccess* = new_state.storage_ptr; + local n_updates = (state_dict_end - state_dict_start) / DictAccess.SIZE; + // Call patricia_update_using_update_constants() instead of patricia_update() + // in order not to repeat globals_pow2 calculation. + patricia_update_using_update_constants( + patricia_update_constants=patricia_update_constants, + update_ptr=state_dict_start, + n_updates=n_updates, + height=MERKLE_HEIGHT, + prev_root=initial_contract_state_root, + new_root=final_contract_state_root, + ); + + let (prev_value) = get_contract_state_hash( + class_hash=prev_state.class_hash, + storage_root=initial_contract_state_root, + nonce=prev_state.nonce, + ); + assert hashed_state_changes.prev_value = prev_value; + let (new_value) = get_contract_state_hash( + class_hash=new_state.class_hash, + storage_root=final_contract_state_root, + nonce=new_state.nonce, + ); + + assert hashed_state_changes.new_value = new_value; + assert hashed_state_changes.key = contract_address; + + return (); +} + +// Hashes a contract class leaf. +// A contract class leaf contains a compiled class hash and the leaf version. +// Returns H(compiled_class_hash, leaf_version). +func get_contract_class_leaf_hash{poseidon_ptr: PoseidonBuiltin*}(compiled_class_hash: felt) -> ( + hash: felt +) { + if (compiled_class_hash == UNINITIALIZED_CLASS_HASH) { + return (hash=0); + } + + // Return H(CONTRACT_CLASS_LEAF_VERSION, compiled_class_hash). + let (hash_value) = poseidon_hash(CONTRACT_CLASS_LEAF_VERSION, compiled_class_hash); + return (hash=hash_value); +} + +// Takes a dict mapping class hash to compiled class hash and produces +// a dict mapping class hash to the corresponding leaf hash input dict. +// The output is written to 'hashed_state_changes'. +func hash_class_changes{poseidon_ptr: PoseidonBuiltin*}( + n_class_updates: felt, class_changes: DictAccess*, hashed_class_changes: DictAccess* +) { + if (n_class_updates == 0) { + return (); + } + + alloc_locals; + + let (local prev_value) = get_contract_class_leaf_hash( + compiled_class_hash=class_changes.prev_value + ); + let (new_value) = get_contract_class_leaf_hash(compiled_class_hash=class_changes.new_value); + assert hashed_class_changes[0] = DictAccess( + key=class_changes.key, prev_value=prev_value, new_value=new_value + ); + + return hash_class_changes( + n_class_updates=n_class_updates - 1, + class_changes=&class_changes[1], + hashed_class_changes=&hashed_class_changes[1], + ); +} + +// Performs the commitment tree updates required for (validating and) updating the +// contract class tree. +// Returns a CommitmentUpdate struct for the tree. +// +// Assumption: The dictionary `class_changes_start` is squashed. +func compute_class_commitment{poseidon_ptr: PoseidonBuiltin*, range_check_ptr}( + class_changes_start: DictAccess*, + n_class_updates: felt, + patricia_update_constants: PatriciaUpdateConstants*, +) -> (contract_class_tree_update_output: CommitmentUpdate) { + alloc_locals; + + // Guess the initial and final roots of the contract class tree. + local initial_root; + local final_root; + %{ + ids.initial_root = os_input.contract_class_commitment_info.previous_root + ids.final_root = os_input.contract_class_commitment_info.updated_root + preimage = { + int(root): children + for root, children in os_input.contract_class_commitment_info.commitment_facts.items() + } + assert os_input.contract_class_commitment_info.tree_height == ids.MERKLE_HEIGHT + %} + + // Create a dictionary mapping class hash to the contract class leaf hash, + // to prepare the input for the commitment tree update. + let (local hashed_class_changes: DictAccess*) = alloc(); + hash_class_changes( + n_class_updates=n_class_updates, + class_changes=class_changes_start, + hashed_class_changes=hashed_class_changes, + ); + + // Call patricia_update_using_update_constants() instead of patricia_update() + // in order not to repeat globals_pow2 calculation. + patricia_update_using_update_constants_with_poseidon( + patricia_update_constants=patricia_update_constants, + update_ptr=hashed_class_changes, + n_updates=n_class_updates, + height=MERKLE_HEIGHT, + prev_root=initial_root, + new_root=final_root, + ); + + return ( + contract_class_tree_update_output=CommitmentUpdate( + initial_root=initial_root, final_root=final_root + ), + ); +} diff --git a/src/starkware/starknet/core/os/state/output.cairo b/src/starkware/starknet/core/os/state/output.cairo new file mode 100644 index 00000000..0e2ed303 --- /dev/null +++ b/src/starkware/starknet/core/os/state/output.cairo @@ -0,0 +1,186 @@ +from starkware.cairo.common.dict import DictAccess +from starkware.cairo.common.math import assert_nn_le +from starkware.cairo.common.math_cmp import is_not_zero +from starkware.starknet.core.os.state.commitment import StateEntry + +// The on-chain data for contract state changes has the following format: +// +// * The number of affected contracts. +// * For each contract: +// * Header: +// * The contract address (1 word). +// * 1 word with the following info: +// * A flag indicating whether the class hash was updated, +// * the number of entry updates, +// * and the new nonce: +// +-------+-----------+-----------+ LSB +// | flag | new nonce | n_updates | +// | 1 bit | 64 bits | 64 bits | +// +-------+-----------+-----------+ +// * The class hash for this contract (if it was updated) (0 or 1 word). +// * For each entry update: +// * key (1 word). +// * new value (1 word). +// +// The on-chain data for contract class changes has the following format: +// * The number of classes that have been declared. +// * For each contract class: +// * The class hash (1 word). +// * The compiled class hash (casm, 1 word). + +// A bound on the number of contract state entry updates in a contract. +const N_UPDATES_BOUND = 2 ** 64; +// A bound on the nonce of a contract. +const NONCE_BOUND = 2 ** 64; + +// Represents an update of a state entry; Either a contract state entry of a contract or a +// contract class entry in the contract class hash mapping. +struct StateUpdateEntry { + // The entry's key. + key: felt, + // The new value. + value: felt, +} + +func serialize_da_changes{state_updates: StateUpdateEntry*}( + update_ptr: DictAccess*, n_updates: felt +) { + if (n_updates == 0) { + return (); + } + if (update_ptr.prev_value == update_ptr.new_value) { + tempvar state_updates = state_updates; + } else { + assert [state_updates] = StateUpdateEntry(key=update_ptr.key, value=update_ptr.new_value); + tempvar state_updates = state_updates + StateUpdateEntry.SIZE; + } + return serialize_da_changes(update_ptr=update_ptr + DictAccess.SIZE, n_updates=n_updates - 1); +} + +// Writes the changed values in the contract state into `state_updates_ptr` +// to make this data available on-chain. +// See documentation in the beginning of the file for more information. +// +// Assumption: The dictionary `contract_state_changes_start` is squashed. +func output_contract_state{range_check_ptr, state_updates_ptr: felt*}( + contract_state_changes_start: DictAccess*, n_contract_state_changes: felt +) { + alloc_locals; + + // Make room for number of state updates. + let output_n_updates = [state_updates_ptr]; + let state_updates_ptr = state_updates_ptr + 1; + let n_actual_state_changes = 0; + + with n_actual_state_changes { + output_contract_state_inner( + n_contract_state_changes=n_contract_state_changes, + state_changes=contract_state_changes_start, + ); + } + // Write number of state updates. + assert output_n_updates = n_actual_state_changes; + + return (); +} + +// Helper function for `output_contract_state()`. +// +// Increases `n_actual_state_changes` by the number of contracts with state changes. +func output_contract_state_inner{range_check_ptr, state_updates_ptr: felt*, n_actual_state_changes}( + n_contract_state_changes: felt, state_changes: DictAccess* +) { + if (n_contract_state_changes == 0) { + return (); + } + alloc_locals; + + local prev_state: StateEntry* = cast(state_changes.prev_value, StateEntry*); + local new_state: StateEntry* = cast(state_changes.new_value, StateEntry*); + local new_state_nonce = new_state.nonce; + + local storage_dict_start: DictAccess* = prev_state.storage_ptr; + let storage_dict_end: DictAccess* = new_state.storage_ptr; + local n_updates = (storage_dict_end - storage_dict_start) / DictAccess.SIZE; + + // Write contract state updates to output (state_updates_ptr). + + // Prepare updates. + let contract_header = state_updates_ptr; + + // Class hash. + local was_class_updated = is_not_zero(prev_state.class_hash - new_state.class_hash); + const BASE_HEADER_SIZE = 2; + if (was_class_updated != 0) { + // Write the new class hash. + assert contract_header[BASE_HEADER_SIZE] = new_state.class_hash; + // The offset of the storage diff from the header. + tempvar storage_diff_offset = BASE_HEADER_SIZE + 1; + } else { + tempvar storage_diff_offset = BASE_HEADER_SIZE; + } + + local storage_diff_start: StateUpdateEntry* = cast( + contract_header + storage_diff_offset, StateUpdateEntry* + ); + let storage_diff = storage_diff_start; + serialize_da_changes{state_updates=storage_diff}( + update_ptr=storage_dict_start, n_updates=n_updates + ); + + // Number of actual updates. + local n_updates = (storage_diff - storage_diff_start) / StateUpdateEntry.SIZE; + + if (n_updates == 0 and new_state_nonce == prev_state.nonce and was_class_updated == 0) { + // There are no updates for this contract. + return output_contract_state_inner( + n_contract_state_changes=n_contract_state_changes - 1, state_changes=&state_changes[1] + ); + } + + // Complete the header; Write contract address. + assert contract_header[0] = state_changes.key; + + // Write the second word of the header. + // Write 'was class update' flag. + let value = was_class_updated; + // Write the nonce. + assert_nn_le(new_state_nonce, NONCE_BOUND - 1); + let value = value * NONCE_BOUND + new_state_nonce; + // Write the number of updates. + assert_nn_le(n_updates, N_UPDATES_BOUND - 1); + let value = value * N_UPDATES_BOUND + n_updates; + assert contract_header[1] = value; + + let state_updates_ptr = cast(storage_diff, felt*); + let n_actual_state_changes = n_actual_state_changes + 1; + + return output_contract_state_inner( + n_contract_state_changes=n_contract_state_changes - 1, state_changes=&state_changes[1] + ); +} + +// Serializes changes in the contract class tree into 'state_updates_ptr'. +func output_contract_class_da_changes{state_updates_ptr: felt*}( + update_ptr: DictAccess*, n_updates: felt +) { + alloc_locals; + + // Allocate space for the number of changes. + let n_diffs_output_placeholder = state_updates_ptr[0]; + let state_updates_ptr = &state_updates_ptr[1]; + + // Write the updates. + local state_updates: StateUpdateEntry* = cast(state_updates_ptr, StateUpdateEntry*); + let state_updates_start = state_updates; + with state_updates { + serialize_da_changes(update_ptr=update_ptr, n_updates=n_updates); + } + let state_updates_ptr = cast(state_updates, felt*); + + // Write the number of updates. + let n_diffs = (state_updates - state_updates_start) / StateUpdateEntry.SIZE; + assert n_diffs_output_placeholder = n_diffs; + + return (); +} diff --git a/src/starkware/starknet/core/os/state/squash.cairo b/src/starkware/starknet/core/os/state/squash.cairo new file mode 100644 index 00000000..46f3a029 --- /dev/null +++ b/src/starkware/starknet/core/os/state/squash.cairo @@ -0,0 +1,102 @@ +from starkware.cairo.common.alloc import alloc +from starkware.cairo.common.dict import DictAccess, squash_dict +from starkware.starknet.core.os.state.commitment import StateEntry + +// Takes a dict of `StateEntry` structs and produces a new dict by squashing the outer dictionary +// and inner dictionaries in `StateEntry::storage_ptr`. +func squash_state_changes{range_check_ptr}( + contract_state_changes_start: DictAccess*, contract_state_changes_end: DictAccess* +) -> (n_contract_state_changes: felt, squashed_contract_state_dict: DictAccess*) { + alloc_locals; + + // State changes after squashing the outer dictionary. + let (local squashed_dict: DictAccess*) = alloc(); + + // Squash the global dictionary to get a list of triples (addr, dict_begin, dict_end). + let (squashed_dict_end) = squash_dict( + dict_accesses=contract_state_changes_start, + dict_accesses_end=contract_state_changes_end, + squashed_dict=squashed_dict, + ); + + local n_contract_state_changes = (squashed_dict_end - squashed_dict) / DictAccess.SIZE; + + // State changes after squashing the outer dictionary and the inner dictionaries. + let (local fully_squashed_dict: DictAccess*) = alloc(); + squash_state_changes_inner( + n_contract_state_changes=n_contract_state_changes, + state_changes=squashed_dict, + squashed_state_changes=fully_squashed_dict, + ); + + return ( + n_contract_state_changes=n_contract_state_changes, + squashed_contract_state_dict=fully_squashed_dict, + ); +} + +// Takes a dict of `StateEntry` structs and produces a new dict by squashing the inner dicts in +// `StateEntry::storage_ptr`. +func squash_state_changes_inner{range_check_ptr}( + n_contract_state_changes: felt, state_changes: DictAccess*, squashed_state_changes: DictAccess* +) { + if (n_contract_state_changes == 0) { + return (); + } + alloc_locals; + + local prev_state: StateEntry* = cast(state_changes.prev_value, StateEntry*); + local new_state: StateEntry* = cast(state_changes.new_value, StateEntry*); + let (local squashed_contract_state_dict: DictAccess*) = alloc(); + + let (local squashed_contract_state_dict_end) = squash_dict( + dict_accesses=prev_state.storage_ptr, + dict_accesses_end=new_state.storage_ptr, + squashed_dict=squashed_contract_state_dict, + ); + + assert squashed_state_changes[0] = DictAccess( + key=state_changes.key, + prev_value=cast( + new StateEntry( + class_hash=prev_state.class_hash, + storage_ptr=squashed_contract_state_dict, + nonce=prev_state.nonce, + ), + felt, + ), + new_value=cast( + new StateEntry( + class_hash=new_state.class_hash, + storage_ptr=squashed_contract_state_dict_end, + nonce=new_state.nonce, + ), + felt, + ), + ); + + return squash_state_changes_inner( + n_contract_state_changes=n_contract_state_changes - 1, + state_changes=&state_changes[1], + squashed_state_changes=&squashed_state_changes[1], + ); +} + +// Takes a dict of the class changes and produces a squashed dict. +func squash_class_changes{range_check_ptr}( + class_changes_start: DictAccess*, class_changes_end: DictAccess* +) -> (n_class_updates: felt, squashed_contract_state_dict: DictAccess*) { + alloc_locals; + + let (local squashed_dict: DictAccess*) = alloc(); + let (local squashed_dict_end) = squash_dict( + dict_accesses=class_changes_start, + dict_accesses_end=class_changes_end, + squashed_dict=squashed_dict, + ); + + return ( + n_class_updates=(squashed_dict_end - squashed_dict) / DictAccess.SIZE, + squashed_contract_state_dict=squashed_dict, + ); +} diff --git a/src/starkware/starknet/core/os/state/state.cairo b/src/starkware/starknet/core/os/state/state.cairo new file mode 100644 index 00000000..f012a41c --- /dev/null +++ b/src/starkware/starknet/core/os/state/state.cairo @@ -0,0 +1,100 @@ +from starkware.cairo.common.alloc import alloc +from starkware.cairo.common.cairo_builtins import HashBuiltin, PoseidonBuiltin +from starkware.cairo.common.dict import DictAccess, squash_dict +from starkware.cairo.common.patricia import patricia_update_constants_new +from starkware.cairo.common.patricia_utils import PatriciaUpdateConstants +from starkware.starknet.core.os.state.commitment import ( + MERKLE_HEIGHT, + CommitmentUpdate, + calculate_global_state_root, + compute_class_commitment, + compute_contract_state_commitment, +) +from starkware.starknet.core.os.state.squash import squash_class_changes, squash_state_changes + +// Represents the changes in the state of the system. +struct OsStateUpdate { + // A pointer to the beginning of the state changes dict. + contract_state_changes_start: DictAccess*, + // A pointer to the end of the state changes dict. + contract_state_changes_end: DictAccess*, + // A pointer to the beginning of the contract class changes dict. + contract_class_changes_start: DictAccess*, + // A pointer to the end of the contract class changes dict. + contract_class_changes_end: DictAccess*, +} + +struct SquashedOsStateUpdate { + // A pointer to the beginning of the state changes dict. + contract_state_changes: DictAccess*, + // The size of the contract state changes dict. + n_contract_state_changes: felt, + // A pointer to the beginning of the contract class changes dict. + contract_class_changes: DictAccess*, + // The size of the contract class changes dict. + n_class_updates: felt, +} + +// Performs the commitment tree updates required for (validating and) updating the global state. +// Returns a CommitmentUpdate struct. +func state_update{poseidon_ptr: PoseidonBuiltin*, hash_ptr: HashBuiltin*, range_check_ptr}( + os_state_update: OsStateUpdate +) -> (squashed_os_state_update: SquashedOsStateUpdate*, state_update_output: CommitmentUpdate*) { + alloc_locals; + + // Create PatriciaUpdateConstants struct for patricia update. + let (local patricia_update_constants: PatriciaUpdateConstants*) = patricia_update_constants_new( + ); + + // Squash the contract state tree. + let (n_contract_state_changes, squashed_contract_state_dict) = squash_state_changes( + contract_state_changes_start=os_state_update.contract_state_changes_start, + contract_state_changes_end=os_state_update.contract_state_changes_end, + ); + + // Compute the contract state commitment. + let contract_state_tree_update_output = compute_contract_state_commitment( + contract_state_changes_start=squashed_contract_state_dict, + n_contract_state_changes=n_contract_state_changes, + patricia_update_constants=patricia_update_constants, + ); + + // Squash the contract class tree. + let (n_class_updates, squashed_class_changes) = squash_class_changes( + class_changes_start=os_state_update.contract_class_changes_start, + class_changes_end=os_state_update.contract_class_changes_end, + ); + + // Update the contract class tree. + let (contract_class_tree_update_output) = compute_class_commitment( + class_changes_start=squashed_class_changes, + n_class_updates=n_class_updates, + patricia_update_constants=patricia_update_constants, + ); + + // Compute the initial and final roots of the global state. + let (local initial_global_root) = calculate_global_state_root( + contract_state_root=contract_state_tree_update_output.initial_root, + contract_class_root=contract_class_tree_update_output.initial_root, + ); + let (local final_global_root) = calculate_global_state_root( + contract_state_root=contract_state_tree_update_output.final_root, + contract_class_root=contract_class_tree_update_output.final_root, + ); + + // Prepare the return values. + tempvar squashed_os_state_update = new SquashedOsStateUpdate( + contract_state_changes=squashed_contract_state_dict, + n_contract_state_changes=n_contract_state_changes, + contract_class_changes=squashed_class_changes, + n_class_updates=n_class_updates, + ); + + tempvar state_update_output = new CommitmentUpdate( + initial_root=initial_global_root, final_root=final_global_root + ); + + return ( + squashed_os_state_update=squashed_os_state_update, state_update_output=state_update_output + ); +} diff --git a/src/starkware/starknet/core/os/syscall_handler.py b/src/starkware/starknet/core/os/syscall_handler.py index 6f28c2b1..8e338ba6 100644 --- a/src/starkware/starknet/core/os/syscall_handler.py +++ b/src/starkware/starknet/core/os/syscall_handler.py @@ -43,6 +43,7 @@ safe_zip, to_bytes, ) +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager from starkware.starknet.business_logic.execution.execute_entry_point_base import ( ExecuteEntryPointBase, ) @@ -50,7 +51,6 @@ CallInfo, CallResult, CallType, - ExecutionResourcesManager, OrderedEvent, OrderedL2ToL1Message, TransactionExecutionContext, @@ -63,6 +63,7 @@ from starkware.starknet.core.os.contract_address.contract_address import ( calculate_contract_address_from_hash, ) +from starkware.starknet.core.os.os_logger import OptionalSegmentManager, OsLogger from starkware.starknet.core.os.syscall_utils import ( STARKNET_SYSCALLS_COMPILED_PATH, cast_to_int, @@ -93,6 +94,10 @@ ["SyscallHandlerBase", int, CairoStructProxy], SyscallFullResponse ] +# Input: polynomial in coefficients representation. +# Output: KZG commitment on the polynomial, split into two Uint192. +CoefficientsToKzgCommitmentCallback = Callable[[List[int]], Tuple[int, int]] + KECCAK_FULL_RATE_IN_U64S = 17 @@ -114,7 +119,7 @@ class SyscallInfo: class SyscallHandlerBase(ABC): def __init__( self, - segments: Optional[MemorySegmentManager], + segments: OptionalSegmentManager, initial_syscall_ptr: Optional[RelocatableValue], ): # Static syscall information. @@ -250,8 +255,7 @@ def get_selector_to_syscall_info(cls) -> Dict[int, SyscallInfo]: @property def segments(self) -> MemorySegmentManager: - assert self._segments is not None, "segments must be set before using the SyscallHandler." - return self._segments + return self._segments.segments @property def syscall_ptr(self) -> RelocatableValue: @@ -753,8 +757,11 @@ def _write_response(self, response: tuple): # Write response and update syscall pointer. self._syscall_ptr = self.segments.write_arg(ptr=self.syscall_ptr, arg=response) + @abstractmethod def _count_syscall(self, syscall_name: str): - return + """ + Counts syscalls. + """ def _new_ec_point(self, ec_point: EcPoint) -> RelocatableValue: """ @@ -800,7 +807,10 @@ def __init__( entry_point: ExecuteEntryPointBase, support_reverted: bool, ): - super().__init__(segments=segments, initial_syscall_ptr=initial_syscall_ptr) + super().__init__( + segments=OptionalSegmentManager(segments=segments), + initial_syscall_ptr=initial_syscall_ptr, + ) # Entry point info. self.entry_point = entry_point @@ -863,7 +873,7 @@ def _call_contract_helper( if syscall_name == "call_contract": contract_address = cast_to_int(request.contract_address) caller_address = self.entry_point.contract_address - call_type = CallType.CALL + call_type = CallType.Call if self._is_validate_execution_mode(): stark_assert( self.entry_point.contract_address == contract_address, @@ -876,7 +886,7 @@ def _call_contract_helper( elif syscall_name == "library_call": contract_address = self.entry_point.contract_address caller_address = self.entry_point.caller_address - call_type = CallType.DELEGATE + call_type = CallType.Delegate class_hash = cast_to_int(request.class_hash) else: raise NotImplementedError(f"Unsupported call type {syscall_name}.") @@ -933,19 +943,25 @@ def _get_execution_info_ptr(self) -> RelocatableValue: if self._execution_info_ptr is None: # Prepare block info. python_block_info = self.storage.state.block_info - block_info = ( - self.structs.BlockInfo( - block_number=python_block_info.block_number, - block_timestamp=python_block_info.block_timestamp, + if self._is_validate_execution_mode(): + block_number_for_validate = ( + python_block_info.block_number // constants.VALIDATE_BLOCK_NUMBER_ROUNDING + ) * constants.VALIDATE_BLOCK_NUMBER_ROUNDING + block_timestamp_for_validate = ( + python_block_info.block_timestamp // constants.VALIDATE_TIMESTAMP_ROUNDING + ) * constants.VALIDATE_TIMESTAMP_ROUNDING + block_info = self.structs.BlockInfo( + block_number=block_number_for_validate, + block_timestamp=block_timestamp_for_validate, sequencer_address=0, ) - if self._is_validate_execution_mode() - else self.structs.BlockInfo( + else: + block_info = self.structs.BlockInfo( block_number=python_block_info.block_number, block_timestamp=python_block_info.block_timestamp, sequencer_address=as_non_optional(python_block_info.sequencer_address), ) - ) + # Prepare transaction info. signature = self.tx_execution_context.signature signature_start = self.allocate_segment(data=signature) @@ -990,7 +1006,9 @@ def _storage_write(self, key: int, value: int): def _emit_event(self, keys: List[int], data: List[int]): self.events.append( - OrderedEvent(order=self.tx_execution_context.n_emitted_events, keys=keys, data=data) + OrderedEvent.create( + order=self.tx_execution_context.n_emitted_events, keys=keys, data=data + ) ) # Update events count. @@ -1013,7 +1031,7 @@ def _send_message_to_l1(self, to_address: int, payload: List[int]): self.l2_to_l1_messages.append( # Note that the constructor of OrderedL2ToL1Message might fail as it is # more restrictive than the Cairo code. - OrderedL2ToL1Message( + OrderedL2ToL1Message.create( order=self.tx_execution_context.n_sent_messages, to_address=to_address, payload=payload, @@ -1063,7 +1081,7 @@ def execute_constructor_entry_point( return call_info.result() call = self.execute_entry_point_cls( - call_type=CallType.CALL, + call_type=CallType.Call, contract_address=contract_address, entry_point_selector=CONSTRUCTOR_ENTRY_POINT_SELECTOR, entry_point_type=EntryPointType.CONSTRUCTOR, @@ -1141,12 +1159,23 @@ def __init__( storage_by_address: Mapping[int, OsSingleStarknetStorage], old_block_number_and_hash: Optional[Tuple[int, int]], loop: asyncio.AbstractEventLoop, - perform_extended_checks: bool, + debug_mode: bool, + segments: OptionalSegmentManager, + polynomial_coefficients_to_kzg_commitment_callback: CoefficientsToKzgCommitmentCallback, ): """ Private constructor. """ - self.perform_extended_checks = perform_extended_checks + self.debug_mode = debug_mode + + # Stores the state diff computed by the OS, in case that KZG commitment is used (since + # it won't be part of the OS output). + self._da_segment: Optional[List[int]] = None + + # Callback that computes the KZG commitment of a polynomial in coefficient representation. + self.polynomial_coefficients_to_kzg_commitment_callback = ( + polynomial_coefficients_to_kzg_commitment_callback + ) self.tx_execution_info_iterator: Iterator[TransactionExecutionInfo] = iter( tx_execution_infos ) @@ -1191,6 +1220,8 @@ def __init__( # It is the hash that is going to be written by this OS run. self.old_block_number_and_hash = old_block_number_and_hash + self.os_logger = OsLogger(debug=debug_mode, segments=segments) + @classmethod async def create( cls, @@ -1199,7 +1230,9 @@ async def create( block_info: BlockInfo, updated_block_hash_contract_state: ContractState, ffc: FactFetchingContext, - perform_extended_checks: bool, + debug_mode: bool, + segments: Optional[MemorySegmentManager], + polynomial_coefficients_to_kzg_commitment_callback: CoefficientsToKzgCommitmentCallback, ) -> "OsExecutionHelper": # Fetch the hash of the (current_block_number - buffer) block from the updated state # (was written by the Batcher). @@ -1217,9 +1250,26 @@ async def create( storage_by_address=storage_by_address, old_block_number_and_hash=old_block_number_and_hash, loop=asyncio.get_running_loop(), - perform_extended_checks=perform_extended_checks, + debug_mode=debug_mode, + segments=OptionalSegmentManager(segments=segments), + polynomial_coefficients_to_kzg_commitment_callback=( + polynomial_coefficients_to_kzg_commitment_callback + ), ) + @property + def da_segment(self) -> List[int]: + assert self._da_segment is not None, "DA segment is not initialized." + return self._da_segment + + def store_da_segment(self, da_segment: List[int]): + """ + Stores the data-availabilty segment, to be used for computing the KZG commitment + and published on L1 using a blob transaction. + """ + assert self._da_segment is None, "DA segment is already initialized." + self._da_segment = da_segment + def compute_storage_commitments(self) -> Mapping[int, CommitmentInfo]: coroutine = gather_in_chunks( awaitables=( @@ -1322,21 +1372,16 @@ def __init__( self, execution_helper: OsExecutionHelper, block_info: BlockInfo, - # Note that a non-optional segments must be set before using the SyscallHandler. - segments: Optional[MemorySegmentManager] = None, ): - super().__init__(segments=segments, initial_syscall_ptr=None) + super().__init__(segments=execution_helper.os_logger.segments, initial_syscall_ptr=None) self.execution_helper = execution_helper self.block_info = block_info + self.syscall_counter: Dict[str, int] = {} @property def current_block_number(self) -> int: return self.block_info.block_number - def set_segments(self, segments: MemorySegmentManager): - assert self._segments is None, "segments is already set." - self._segments = segments - def set_syscall_ptr(self, syscall_ptr: RelocatableValue): assert self._syscall_ptr is None, "syscall_ptr is already set." self._syscall_ptr = syscall_ptr @@ -1399,3 +1444,7 @@ def _send_message_to_l1(self, to_address: int, payload: List[int]): def _keccak(self, n_rounds: int): return + + def _count_syscall(self, syscall_name: str): + previous_syscall_count = self.syscall_counter.get(syscall_name, 0) + self.syscall_counter[syscall_name] = previous_syscall_count + 1 diff --git a/src/starkware/starknet/core/os/syscall_utils.py b/src/starkware/starknet/core/os/syscall_utils.py index f64c60fa..7cb36981 100644 --- a/src/starkware/starknet/core/os/syscall_utils.py +++ b/src/starkware/starknet/core/os/syscall_utils.py @@ -30,6 +30,7 @@ STARKNET_SYSCALLS_COMPILED_PATH = os.path.join( os.path.dirname(__file__), "starknet_new_syscalls.json" ) +STARKNET_BUILTINS_COMPILED_PATH = os.path.join(os.path.dirname(__file__), "starknet_builtins.json") # New syscalls utilities. @@ -40,6 +41,12 @@ def get_syscall_structs() -> CairoStructProxy: return CairoStructFactory.from_program(program=syscalls_program, additional_imports=[]).structs +@cachetools.cached(cache={}) +def get_builtins_structs() -> CairoStructProxy: + syscalls_program = load_program(path=STARKNET_BUILTINS_COMPILED_PATH) + return CairoStructFactory.from_program(program=syscalls_program, additional_imports=[]).structs + + # Old syscalls utilities. diff --git a/src/starkware/starknet/core/os/transaction_hash/transaction_hash.cairo b/src/starkware/starknet/core/os/transaction_hash/transaction_hash.cairo index a7c1d7c9..d5eddbeb 100644 --- a/src/starkware/starknet/core/os/transaction_hash/transaction_hash.cairo +++ b/src/starkware/starknet/core/os/transaction_hash/transaction_hash.cairo @@ -137,7 +137,6 @@ func hash_tx_common_fields{ alloc_locals; assert common_fields.paymaster_data_length = 0; - assert common_fields.tip = 0; let fee_fields_hash = hash_fee_fields( tip=common_fields.tip, diff --git a/src/starkware/starknet/core/test_contract/BUILD b/src/starkware/starknet/core/test_contract/BUILD index 9020b3e6..03f42994 100644 --- a/src/starkware/starknet/core/test_contract/BUILD +++ b/src/starkware/starknet/core/test_contract/BUILD @@ -1,4 +1,5 @@ load("//src/starkware/starknet:starknet_rules_v0.bzl", "starknet_contract_v0") +load("//bazel_utils:get_from_cairo_lang.bzl", "get_from_cairo_lang") starknet_contract_v0( name = "delegate_proxy", @@ -33,11 +34,13 @@ py_library( srcs = [ "test_utils.py", ], + data = [ + "delegate_proxy.json", + "dummy_account.json", + ], visibility = ["//visibility:public"], deps = [ - "starknet_external_compiled_contracts_lib", - "//src/starkware/cairo/lang:cairo_constants_lib", - "//src/starkware/cairo/lang/compiler:cairo_compile_lib", - "//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib", + get_from_cairo_lang("//src/starkware/cairo/lang:cairo_constants_lib"), + get_from_cairo_lang("//src/starkware/starknet/services/api/contract_class:starknet_contract_class_lib"), ], ) diff --git a/src/starkware/starknet/core/test_contract/test_utils.py b/src/starkware/starknet/core/test_contract/test_utils.py index d170ba5d..2cabe0b7 100644 --- a/src/starkware/starknet/core/test_contract/test_utils.py +++ b/src/starkware/starknet/core/test_contract/test_utils.py @@ -23,10 +23,11 @@ def get_test_deprecated_compiled_class() -> DeprecatedCompiledClass: return get_deprecated_compiled_class("test_contract") -def get_test_compiled_class() -> CompiledClass: +def get_test_compiled_class(contract_segmentation: bool = True) -> CompiledClass: return CompiledClass( prime=DEFAULT_PRIME, - bytecode=[1, 2, 3], + bytecode=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10], + bytecode_segment_lengths=[3, [1, 1, [1]], 4] if contract_segmentation else 10, hints=[], pythonic_hints={}, compiler_version="", diff --git a/src/starkware/starknet/definitions/BUILD b/src/starkware/starknet/definitions/BUILD index 150c92c6..27fa9ac4 100644 --- a/src/starkware/starknet/definitions/BUILD +++ b/src/starkware/starknet/definitions/BUILD @@ -2,7 +2,10 @@ load("//bazel_utils/python:defs.bzl", "requirement") package(default_visibility = ["//visibility:public"]) -exports_files(["general_config.yml"]) +exports_files([ + "general_config.yml", + "versioned_constants.json", +]) py_library( name = "starknet_definitions_lib", @@ -12,8 +15,11 @@ py_library( "error_codes.py", "execution_mode.py", "fields.py", + "l1_da_mode.py", "transaction_type.py", + "types.py", ], + data = ["versioned_constants.json"], visibility = ["//visibility:public"], deps = [ "//src/services/everest/api/gateway:everest_transaction_type_lib", @@ -25,7 +31,6 @@ py_library( "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", "//src/starkware/starkware_utils:starkware_error_handling_lib", "//src/starkware/storage:starkware_abstract_storage_lib", - requirement("frozendict"), requirement("marshmallow"), requirement("marshmallow_dataclass"), ], diff --git a/src/starkware/starknet/definitions/constants.py b/src/starkware/starknet/definitions/constants.py index 4c56a749..9a59c6cf 100644 --- a/src/starkware/starknet/definitions/constants.py +++ b/src/starkware/starknet/definitions/constants.py @@ -1,4 +1,8 @@ +import dataclasses +import json from enum import Enum +from pathlib import Path +from typing import Dict from starkware.crypto.signature.signature import FIELD_PRIME from starkware.python.utils import from_bytes @@ -16,6 +20,8 @@ FELT_UPPER_BOUND = FIELD_SIZE BLOCK_HASH_LOWER_BOUND = 0 BLOCK_HASH_UPPER_BOUND = FIELD_SIZE +COMMITMENT_LOWER_BOUND = 0 +COMMITMENT_UPPER_BOUND = FIELD_SIZE # Address 0 is reserved to distinguish an external transaction from an inner (L2<>L2) one. L2_ADDRESS_LOWER_BOUND = 1 # The address upper bound is defined to be congruent with the storage var address upper bound (see @@ -81,7 +87,7 @@ ) # Sierra -> Casm compilation version. -SIERRA_VERSION = [1, 4, 0] +SIERRA_VERSION = [1, 5, 0] # Contract classes with sierra version older than MIN_SIERRA_VERSION are not supported. MIN_SIERRA_VERSION = [1, 1, 0] @@ -133,13 +139,21 @@ L1_GAS_RESOURCE_NAME_VALUE = from_bytes(b"L1_GAS") L2_GAS_RESOURCE_NAME_VALUE = from_bytes(b"L2_GAS") +# Flooring factor for block number in validate mode. +VALIDATE_BLOCK_NUMBER_ROUNDING = 100 +# Flooring factor for timestamp in validate mode. +VALIDATE_TIMESTAMP_ROUNDING = 3600 + class OsOutputConstant(Enum): MERKLE_UPDATE_OFFSET = 0 BLOCK_NUMBER_OFFSET = 2 BLOCK_HASH_OFFSET = 3 CONFIG_HASH_OFFSET = 4 - HEADER_SIZE = 5 + USE_KZG_DA_OFFSET = 5 + HEADER_SIZE = 6 + # Two Uint256 and one felt. + KZG_SEGMENT_SIZE = 5 class GasCost(Enum): @@ -170,14 +184,14 @@ class GasCost(Enum): SECP256K1_ADD = 406 * STEP + 29 * RANGE_CHECK SECP256K1_GET_POINT_FROM_X = 391 * STEP + 30 * RANGE_CHECK + 20 * MEMORY_HOLE SECP256K1_GET_XY = 239 * STEP + 11 * RANGE_CHECK + 40 * MEMORY_HOLE - SECP256K1_MUL = 76401 * STEP + 7045 * RANGE_CHECK + SECP256K1_MUL = 76501 * STEP + 7045 * RANGE_CHECK + 2 * MEMORY_HOLE SECP256K1_NEW = 475 * STEP + 35 * RANGE_CHECK + 40 * MEMORY_HOLE # Secp256r1. SECP256R1_ADD = 589 * STEP + 57 * RANGE_CHECK SECP256R1_GET_POINT_FROM_X = 510 * STEP + 44 * RANGE_CHECK + 20 * MEMORY_HOLE SECP256R1_GET_XY = 241 * STEP + 11 * RANGE_CHECK + 40 * MEMORY_HOLE - SECP256R1_MUL = 125240 * STEP + 13961 * RANGE_CHECK + SECP256R1_MUL = 125340 * STEP + 13961 * RANGE_CHECK + 2 * MEMORY_HOLE SECP256R1_NEW = 594 * STEP + 49 * RANGE_CHECK + 40 * MEMORY_HOLE KECCAK = SYSCALL_BASE @@ -193,3 +207,40 @@ class GasCost(Enum): def int_value(self) -> int: assert isinstance(self.value, int) return self.value + + +@dataclasses.dataclass(frozen=True) +class ThinVersionedConstants: + VERSIONED_CONSTANTS_FILE_NAME = "versioned_constants.json" + VERSIONED_CONSTANTS_PATH = Path(__file__).parent / VERSIONED_CONSTANTS_FILE_NAME + + # General config. + invoke_tx_max_n_steps: int + validate_max_n_steps: int + + # State manager config. + max_recursion_depth: int + + # Gateway config. + max_calldata_length: int + max_contract_bytecode_size: int + + cairo_resource_fee_weights: Dict[str, float] + + @classmethod + def create(cls): + versioned_constants_json = json.load(cls.VERSIONED_CONSTANTS_PATH.open()) + + return ThinVersionedConstants( + invoke_tx_max_n_steps=versioned_constants_json["invoke_tx_max_n_steps"], + validate_max_n_steps=versioned_constants_json["validate_max_n_steps"], + max_recursion_depth=versioned_constants_json["max_recursion_depth"], + max_calldata_length=versioned_constants_json["gateway"]["max_calldata_length"], + max_contract_bytecode_size=versioned_constants_json["gateway"][ + "max_contract_bytecode_size" + ], + cairo_resource_fee_weights=versioned_constants_json["vm_resource_fee_cost"], + ) + + +VERSIONED_CONSTANTS = ThinVersionedConstants.create() diff --git a/src/starkware/starknet/definitions/error_codes.py b/src/starkware/starknet/definitions/error_codes.py index 55c43c00..925c917b 100644 --- a/src/starkware/starknet/definitions/error_codes.py +++ b/src/starkware/starknet/definitions/error_codes.py @@ -9,6 +9,8 @@ class StarknetErrorCode(ErrorCode): BLOCK_NOT_FOUND = 0 BLOCKED_TRANSACTION_TYPE = auto() SENDER_ADDRESS_IS_BLOCKED = auto() + CALLDATA_TOO_LONG = auto() + SIGNATURE_TOO_LONG = auto() CLASS_ALREADY_DECLARED = auto() COMPILATION_FAILED = auto() CONTRACT_ADDRESS_UNAVAILABLE = auto() @@ -16,6 +18,7 @@ class StarknetErrorCode(ErrorCode): CONTRACT_CLASS_OBJECT_SIZE_TOO_LARGE = auto() DEPRECATED_ENDPOINT = auto() DEPRECATED_TRANSACTION = auto() + DEPRECATED_TRANSACTION_VERSION = auto() DUPLICATED_TRANSACTION = auto() ENTRY_POINT_NOT_FOUND_IN_CONTRACT = auto() EXTERNAL_TO_INTERNAL_CONVERSION_ERROR = auto() @@ -79,7 +82,7 @@ class StarknetErrorCode(ErrorCode): UNDECLARED_CLASS = auto() UNEXPECTED_FAILURE = auto() UNINITIALIZED_CONTRACT = auto() - UNSUPPORTED_TRANSACTION = auto() + UNSUPPORTED_TRANSACTION_VERSION = auto() # Native blockifier errors. PY_NATIVE_BLOCKIFIER_INPUT_ERROR = auto() PY_PROGRAM_ERROR = auto() @@ -163,7 +166,9 @@ def from_raw_code(cls, code: str) -> "StarknetErrorCode": [ *common_error_codes, StarknetErrorCode.BLOCKED_TRANSACTION_TYPE, + StarknetErrorCode.CALLDATA_TOO_LONG, StarknetErrorCode.DEPRECATED_TRANSACTION, + StarknetErrorCode.DEPRECATED_TRANSACTION_VERSION, StarknetErrorCode.DUPLICATED_TRANSACTION, StarknetErrorCode.SENDER_ADDRESS_IS_BLOCKED, # Signature validation errors. @@ -203,7 +208,7 @@ def from_raw_code(cls, code: str) -> "StarknetErrorCode": StarknetErrorCode.OUT_OF_RANGE_CONTRACT_STORAGE_KEY, StarknetErrorCode.OUT_OF_RANGE_TRANSACTION_HASH, StarknetErrorCode.OUT_OF_RANGE_TRANSACTION_ID, - StarknetErrorCode.UNSUPPORTED_TRANSACTION, + StarknetErrorCode.UNSUPPORTED_TRANSACTION_VERSION, # Deprecation errors. StarknetErrorCode.DEPRECATED_ENDPOINT, ] diff --git a/src/starkware/starknet/definitions/fields.py b/src/starkware/starknet/definitions/fields.py index adfb7887..c6c38763 100644 --- a/src/starkware/starknet/definitions/fields.py +++ b/src/starkware/starknet/definitions/fields.py @@ -7,7 +7,6 @@ import marshmallow.fields as mfields import marshmallow.utils import marshmallow_dataclass -from frozendict import frozendict from services.everest.definitions import fields as everest_fields from starkware.cairo.lang.tracer.tracer_data import field_element_repr @@ -16,6 +15,7 @@ from starkware.starknet.definitions.data_availability_mode import DataAvailabilityMode from starkware.starknet.definitions.error_codes import StarknetErrorCode from starkware.starknet.definitions.execution_mode import ExecutionMode +from starkware.starknet.definitions.l1_da_mode import L1DaMode from starkware.starknet.definitions.transaction_type import TransactionType from starkware.starkware_utils.field_validators import ( validate_equal, @@ -30,7 +30,6 @@ FrozenDictField, StrictRequiredInteger, VariadicLengthTupleField, - enum_field_metadata, ) from starkware.starkware_utils.marshmallow_fields_metadata import sequential_id_metadata from starkware.starkware_utils.validated_dataclass import ValidatedMarshmallowDataclass @@ -41,10 +40,6 @@ # Common. -felt_as_hex_list_metadata = dict( - marshmallow_field=mfields.List(everest_fields.FeltField.get_marshmallow_field()) -) - def create_felt_as_hex_bounded_list_metadata( required: bool = True, @@ -112,7 +107,7 @@ def new_class_hash_dict_keys_metadata( deprecated_signature_metadata = felt_as_hex_or_str_bounded_list_metadata signature_metadata = felt_as_hex_bounded_list_metadata calldata_as_hex_metadata = felt_as_hex_bounded_list_metadata -retdata_as_hex_metadata = felt_as_hex_list_metadata +retdata_as_hex_metadata = everest_fields.felt_as_hex_list_metadata # Address. @@ -148,6 +143,8 @@ def address_metadata(name: str, error_code: StarknetErrorCode) -> Dict[str, Any] marshmallow_field=mfields.String(required=False, load_default=None) ) +use_kzg_da_metadata = dict(marshmallow_field=mfields.Boolean(required=False, load_default=False)) + caller_address_metadata = address_metadata( name="Caller address", error_code=StarknetErrorCode.OUT_OF_RANGE_CALLER_ADDRESS ) @@ -197,13 +194,25 @@ def address_metadata(name: str, error_code: StarknetErrorCode) -> Dict[str, Any] OptionalBlockHashField = OptionalField(field=BlockHashField, none_probability=0) optional_block_hash_metadata = OptionalBlockHashField.metadata() +CommitmentField = RangeValidatedField( + lower_bound=constants.COMMITMENT_LOWER_BOUND, + upper_bound=constants.COMMITMENT_UPPER_BOUND, + name="Commitment", + error_code=StarknetErrorCode.OUT_OF_RANGE_BLOCK_HASH, + formatter=hex, +) +commitment_metadata = CommitmentField.metadata() + +OptionalCommitmentField = OptionalField(field=CommitmentField, none_probability=0) +optional_commitment_metadata = OptionalCommitmentField.metadata() + default_optional_transaction_index_metadata = sequential_id_metadata( field_name="Transaction index", required=False, load_default=None ) # L1Handler. -payload_metadata = felt_as_hex_list_metadata +payload_metadata = everest_fields.felt_as_hex_list_metadata # Used in the CallL1Handler, to solve compatibility bug. FromAddressEthAddressField = BackwardCompatibleIntAsHex( @@ -328,6 +337,38 @@ def validate_optional_new_class_hash(class_hash: Optional[int]): OptionalCompiledClassHashField = OptionalField(field=CompiledClassHashField, none_probability=0) optional_compiled_class_hash_metadata = OptionalCompiledClassHashField.metadata() +sierra_program_size_metadata = dict( + marshmallow_field=mfields.Integer(required=False, load_default=0) +) +abi_size_metadata = dict(marshmallow_field=mfields.Integer(required=False, load_default=0)) + + +class NestedIntListField(mfields.Field): + """ + Represents a nested list of integers. + E.g., [0, [1, 2], [3, [4]]]. + """ + + default_error_messages = { + "invalid": "Expected an integer in NestedIntList field. Found {input_type}.", + } + + def _serialize(self, value, attr, obj, **kwargs): + return value + + def _deserialize(self, value, attr, data, **kwargs): + # Recursively validate the nested list. + def validate(inner_value): + if isinstance(inner_value, list): + for item in inner_value: + validate(item) + elif not isinstance(inner_value, int): + raise self.make_error("invalid", input_type=type(inner_value).__name__) + + validate(inner_value=value) + return value + + # Entry point. EntryPointSelectorField = RangeValidatedField( @@ -381,12 +422,7 @@ def validate_optional_new_class_hash(class_hash: Optional[int]): error_code=StarknetErrorCode.OUT_OF_RANGE_TIP, formatter=hex, ) -tip_metadata = dict( - marshmallow_field=TipField.get_marshmallow_field(), - validate=validate_equal("Tip", allowed_value=0), - required=True, -) - +tip_metadata = TipField.metadata(required=True) MaxAmountField = RangeValidatedField( lower_bound=constants.MAX_AMOUNT_LOWER_BOUND, @@ -424,12 +460,22 @@ class ResourceBounds(ValidatedMarshmallowDataclass): def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: + error_message_wrong_keys = ( + "Invalid resource bounds keys; Input's keys: {input}; Input keys must be {resources_set}." + ) + error_message_wrong_bounds = ( + "Invalid resource bounds; Resource.L2_GAS input: {input}; L2_GAS values must be 0." + ) if resource_bounds.keys() != set(Resource): - return False + raise marshmallow.ValidationError( + error_message_wrong_keys.format( + input=list(resource_bounds.keys()), resources_set=list(set(Resource)) + ) + ) l2_gas_bounds = resource_bounds[Resource.L2_GAS] if not (l2_gas_bounds.max_amount == l2_gas_bounds.max_price_per_unit == 0): - return False + raise marshmallow.ValidationError(error_message_wrong_bounds.format(input=l2_gas_bounds)) return True @@ -442,15 +488,6 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: ) ) -resource_bounds_frozen_dict_metadata: frozendict = frozendict( - marshmallow_field=FrozenDictField( - keys=enum_field_metadata(enum_class=Resource)["marshmallow_field"], - values=mfields.Nested(ResourceBounds.Schema), - ), - validate=validate_resource_bounds, - description="resource bounds.", -) - account_deployment_data_metadata = felt_as_hex_bounded_list_metadata_empty_list # Gas price. @@ -495,6 +532,17 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: marshmallow_field=BytesAsHex(required=False, load_default=None) ) +# L1 da mode. + +L1DaModeEnumField = EnumField( + enum_cls=L1DaMode, + required=False, + load_default=L1DaMode.CALLDATA, + allow_none=False, +) + +l1_da_mode_enum_metadata = dict(marshmallow_field=L1DaModeEnumField) + # Declared contracts. @@ -521,24 +569,6 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: # General config. -contract_storage_commitment_tree_height_metadata = dict( - marshmallow_field=StrictRequiredInteger( - validate=validate_positive("contract_storage_commitment_tree_height") - ) -) - -compiled_class_hash_commitment_tree_height_metadata = dict( - marshmallow_field=StrictRequiredInteger( - validate=validate_positive("compiled_class_hash_commitment_tree_height") - ) -) - -global_state_commitment_tree_height_metadata = dict( - marshmallow_field=StrictRequiredInteger( - validate=validate_non_negative("global_state_commitment_tree_height"), - ) -) - invoke_tx_n_steps_metadata = dict( marshmallow_field=StrictRequiredInteger(validate=validate_non_negative("invoke_tx_n_steps")) ) @@ -551,11 +581,10 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: marshmallow_field=StrictRequiredInteger(validate=validate_non_negative("gas_price")) ) -eth_price_in_strk_wei = dict( - marshmallow_field=StrictRequiredInteger(validate=validate_positive("eth_price_in_strk_wei")) +eth_price_in_fri = dict( + marshmallow_field=StrictRequiredInteger(validate=validate_positive("eth_price_in_fri")) ) - # ExecutionInfo. name_to_resources_metadata = dict( @@ -579,6 +608,7 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: # CallInfo. +felt_metadata = everest_fields.FeltField.metadata() failure_flag_metadata = everest_fields.FeltField.metadata( field_name="failure_flag", required=False, load_default=0 ) @@ -619,9 +649,12 @@ def validate_resource_bounds(resource_bounds: ResourceBoundsMapping) -> bool: formatter=None, ) data_availability_mode_metadata = dict( - marshmallow_field=DataAvailabilityModeField.get_marshmallow_field(), - validate=validate_equal("Data availability mode", allowed_value=DataAvailabilityMode.L1.value), - required=True, + marshmallow_field=DataAvailabilityModeField.get_marshmallow_field( + validate=validate_equal( + "Data availability mode", allowed_value=DataAvailabilityMode.L1.value + ), + required=True, + ), ) # State Diff. diff --git a/src/starkware/starknet/definitions/general_config.py b/src/starkware/starknet/definitions/general_config.py index 0789b6f8..5cb0362e 100644 --- a/src/starkware/starknet/definitions/general_config.py +++ b/src/starkware/starknet/definitions/general_config.py @@ -7,27 +7,16 @@ import marshmallow_dataclass from services.everest.definitions.general_config import EverestGeneralConfig -from starkware.cairo.lang.builtins.all_builtins import ( - ALL_BUILTINS, - BITWISE_BUILTIN, - EC_OP_BUILTIN, - ECDSA_BUILTIN, - KECCAK_BUILTIN, - OUTPUT_BUILTIN, - PEDERSEN_BUILTIN, - POSEIDON_BUILTIN, - RANGE_CHECK_BUILTIN, - with_suffix, -) +from starkware.cairo.lang.builtins.all_builtins import ALL_BUILTINS, OUTPUT_BUILTIN, with_suffix from starkware.cairo.lang.instances import starknet_instance, starknet_with_keccak_instance from starkware.python.utils import from_bytes -from starkware.starknet.definitions import constants, fields +from starkware.starknet.definitions import fields from starkware.starknet.definitions.chain_ids import StarknetChainId +from starkware.starknet.definitions.constants import VERSIONED_CONSTANTS from starkware.starkware_utils.config_base import Config, load_config from starkware.starkware_utils.field_validators import validate_dict, validate_non_negative from starkware.starkware_utils.marshmallow_dataclass_fields import ( RequiredBoolean, - StrictRequiredInteger, additional_metadata, load_int_value, ) @@ -36,6 +25,9 @@ DOCKER_GENERAL_CONFIG_PATH = os.path.join("/", GENERAL_CONFIG_FILE_NAME) GENERAL_CONFIG_PATH = os.path.join(os.path.dirname(__file__), GENERAL_CONFIG_FILE_NAME) N_STEPS_RESOURCE = "n_steps" +N_STEPS_WITH_KECCAK_RESOURCE = "n_steps_with_keccak" +STATE_DIFF_SIZE_WEIGHT_NAME = "state_diff_size" +STATE_DIFF_SIZE_WITH_KZG_WEIGHT_NAME = "state_diff_size_with_kzg" STARKNET_LAYOUT_INSTANCE_WITHOUT_KECCAK = starknet_instance STARKNET_LAYOUT_INSTANCE = starknet_with_keccak_instance @@ -55,8 +47,6 @@ # Default configuration values. -DEFAULT_VALIDATE_MAX_STEPS = 10**6 -DEFAULT_TX_MAX_STEPS = 3 * 10**6 DEFAULT_CHAIN_ID = StarknetChainId.TESTNET.value DEFAULT_DEPRECATED_FEE_TOKEN_ADDRESS = load_int_value( field_metadata=fields.fee_token_address_metadata, @@ -71,24 +61,17 @@ value=default_general_config["sequencer_address"], ) DEFAULT_ENFORCE_L1_FEE = True +DEFAULT_USE_KZG_DA = False # Given in units of wei. DEFAULT_DEPRECATED_L1_GAS_PRICE = 10**11 -DEFAULT_CAIRO_RESOURCE_FEE_WEIGHTS = { - N_STEPS_RESOURCE: 0.005, - **{builtin: 0.0 for builtin in ALL_BUILTINS.with_suffix()}, - with_suffix(PEDERSEN_BUILTIN): 0.16, - with_suffix(RANGE_CHECK_BUILTIN): 0.08, - with_suffix(ECDSA_BUILTIN): 10.24, - with_suffix(KECCAK_BUILTIN): 10.24, - with_suffix(BITWISE_BUILTIN): 0.32, - with_suffix(EC_OP_BUILTIN): 5.12, - with_suffix(POSEIDON_BUILTIN): 0.16, -} - -DEFAULT_ETH_IN_STRK_WEI = 10**21 -DEFAULT_MIN_STRK_L1_GAS_PRICE = 10**6 -DEFAULT_MAX_STRK_L1_GAS_PRICE = 10**18 +DEFAULT_DEPRECATED_L1_DATA_GAS_PRICE = 10**5 + +DEFAULT_ETH_IN_FRI = 10**21 +DEFAULT_MIN_FRI_L1_GAS_PRICE = 10**6 +DEFAULT_MAX_FRI_L1_GAS_PRICE = 10**18 +DEFAULT_MIN_FRI_L1_DATA_GAS_PRICE = 10**5 +DEFAULT_MAX_FRI_L1_DATA_GAS_PRICE = 10**10 # Configuration schema definition. @@ -114,47 +97,53 @@ class StarknetOsConfig(Config): @marshmallow_dataclass.dataclass(frozen=True) -class StarknetGeneralConfig(EverestGeneralConfig): - starknet_os_config: StarknetOsConfig = field(default_factory=StarknetOsConfig) - - contract_storage_commitment_tree_height: int = field( - metadata=fields.contract_storage_commitment_tree_height_metadata, - default=constants.CONTRACT_STATES_COMMITMENT_TREE_HEIGHT, +class GasPriceBounds: + min_wei_l1_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_DEPRECATED_L1_GAS_PRICE ) - compiled_class_hash_commitment_tree_height: int = field( - metadata=fields.compiled_class_hash_commitment_tree_height_metadata, - default=constants.COMPILED_CLASS_HASH_COMMITMENT_TREE_HEIGHT, + min_fri_l1_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_MIN_FRI_L1_GAS_PRICE ) - global_state_commitment_tree_height: int = field( - metadata=fields.global_state_commitment_tree_height_metadata, - default=constants.CONTRACT_ADDRESS_BITS, + max_fri_l1_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_MAX_FRI_L1_GAS_PRICE ) - invoke_tx_max_n_steps: int = field( - metadata=fields.invoke_tx_n_steps_metadata, default=DEFAULT_TX_MAX_STEPS + min_wei_l1_data_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_DEPRECATED_L1_DATA_GAS_PRICE ) - validate_max_n_steps: int = field( - metadata=fields.validate_n_steps_metadata, default=DEFAULT_VALIDATE_MAX_STEPS + min_fri_l1_data_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_MIN_FRI_L1_DATA_GAS_PRICE ) - min_eth_l1_gas_price: int = field( - metadata=fields.gas_price, default=DEFAULT_DEPRECATED_L1_GAS_PRICE + max_fri_l1_data_gas_price: int = field( + metadata=fields.gas_price, default=DEFAULT_MAX_FRI_L1_DATA_GAS_PRICE ) - min_strk_l1_gas_price: int = field( - metadata=fields.gas_price, default=DEFAULT_MIN_STRK_L1_GAS_PRICE + +@marshmallow_dataclass.dataclass(frozen=True) +class StarknetGeneralConfig(EverestGeneralConfig): + starknet_os_config: StarknetOsConfig = field(default_factory=StarknetOsConfig) + + gas_price_bounds: GasPriceBounds = field(default_factory=GasPriceBounds) + + invoke_tx_max_n_steps: int = field( + metadata=fields.invoke_tx_n_steps_metadata, + default=VERSIONED_CONSTANTS.invoke_tx_max_n_steps, ) - max_strk_l1_gas_price: int = field( - metadata=fields.gas_price, default=DEFAULT_MAX_STRK_L1_GAS_PRICE + # IMPORTANT: when editing this in production, make sure to only decrease the value. + # Increasing it in production may cause issue to nodes during execution, so only increase it + # during a new release. + validate_max_n_steps: int = field( + metadata=fields.validate_n_steps_metadata, default=VERSIONED_CONSTANTS.validate_max_n_steps ) # The default price of one ETH (10**18 Wei) in STRK units. Used in case of oracle failure. - default_eth_price_in_strk_wei: int = field( - metadata=fields.eth_price_in_strk_wei, default=DEFAULT_ETH_IN_STRK_WEI + default_eth_price_in_fri: int = field( + metadata=fields.eth_price_in_fri, default=DEFAULT_ETH_IN_FRI ) constant_gas_price: bool = field( @@ -175,26 +164,6 @@ class StarknetGeneralConfig(EverestGeneralConfig): default=DEFAULT_SEQUENCER_ADDRESS, ) - tx_commitment_tree_height: int = field( - metadata=additional_metadata( - marshmallow_field=StrictRequiredInteger( - validate=validate_non_negative("Transaction commitment tree height"), - ), - description="Height of Patricia tree of the transaction commitment in a block.", - ), - default=constants.TRANSACTION_COMMITMENT_TREE_HEIGHT, - ) - - event_commitment_tree_height: int = field( - metadata=additional_metadata( - marshmallow_field=StrictRequiredInteger( - validate=validate_non_negative("Event commitment tree height"), - ), - description="Height of Patricia tree of the event commitment in a block.", - ), - default=constants.EVENT_COMMITMENT_TREE_HEIGHT, - ) - cairo_resource_fee_weights: Dict[str, float] = field( metadata=additional_metadata( marshmallow_field=mfields.Dict( @@ -209,7 +178,7 @@ class StarknetGeneralConfig(EverestGeneralConfig): "fee calculation." ), ), - default_factory=lambda: DEFAULT_CAIRO_RESOURCE_FEE_WEIGHTS.copy(), + default_factory=lambda: VERSIONED_CONSTANTS.cairo_resource_fee_weights, ) enforce_l1_handler_fee: bool = field( @@ -219,6 +188,14 @@ class StarknetGeneralConfig(EverestGeneralConfig): default=DEFAULT_ENFORCE_L1_FEE, ) + use_kzg_da: bool = field( + metadata=additional_metadata( + marshmallow_field=RequiredBoolean(), + description="Enabler for using KZG commitment scheme in created blocks.", + ), + default=DEFAULT_USE_KZG_DA, + ) + @property def chain_id(self) -> StarknetChainId: return StarknetChainId(self.starknet_os_config.chain_id) @@ -231,6 +208,30 @@ def deprecated_fee_token_address(self) -> int: def fee_token_address(self) -> int: return self.starknet_os_config.fee_token_address + @property + def min_wei_l1_gas_price(self) -> int: + return self.gas_price_bounds.min_wei_l1_gas_price + + @property + def min_fri_l1_gas_price(self) -> int: + return self.gas_price_bounds.min_fri_l1_gas_price + + @property + def max_fri_l1_gas_price(self) -> int: + return self.gas_price_bounds.max_fri_l1_gas_price + + @property + def min_wei_l1_data_gas_price(self) -> int: + return self.gas_price_bounds.min_wei_l1_data_gas_price + + @property + def min_fri_l1_data_gas_price(self) -> int: + return self.gas_price_bounds.min_fri_l1_data_gas_price + + @property + def max_fri_l1_data_gas_price(self) -> int: + return self.gas_price_bounds.max_fri_l1_data_gas_price + def build_general_config(raw_general_config: Dict[str, Any]) -> StarknetGeneralConfig: """ diff --git a/src/starkware/starknet/definitions/general_config.yml b/src/starkware/starknet/definitions/general_config.yml index 1f52682c..ff14a275 100644 --- a/src/starkware/starknet/definitions/general_config.yml +++ b/src/starkware/starknet/definitions/general_config.yml @@ -1,20 +1,20 @@ cairo_resource_fee_weights: - n_steps: 0.005 -compiled_class_hash_commitment_tree_height: 251 + n_steps: 0.0025 constant_gas_price: false -contract_storage_commitment_tree_height: 251 -default_eth_price_in_strk_wei: 1000000000000000000000 +default_eth_price_in_fri: 1000000000000000000000 enforce_l1_handler_fee: true -event_commitment_tree_height: 64 -global_state_commitment_tree_height: 251 +gas_price_bounds: + max_fri_l1_data_gas_price: 10000000000 + max_fri_l1_gas_price: 100000000000000 + min_fri_l1_data_gas_price: 10 + min_fri_l1_gas_price: 100000000000 + min_wei_l1_data_gas_price: 100000 + min_wei_l1_gas_price: 10000000000 invoke_tx_max_n_steps: 1000000 -max_strk_l1_gas_price: 100000000000000 -min_eth_l1_gas_price: 100000000000 -min_strk_l1_gas_price: 1000000000000 -sequencer_address: '0x1b7c57a9323f1b11656d289df9241d795c1622ffdd6c6661660944557042dd8' +sequencer_address: "0x4acb67f8e29379b475ccc408fc8269c116f64b4fe5a625644c507d7df07132" starknet_os_config: chain_id: 1536727068981429685321 - deprecated_fee_token_address: '0x7278efe258062e1ca40b9fb32d6e71bc6418a0148d5aed864555b7617a98edb' - fee_token_address: '0x59710ff54ce780319088f1ab07c00348ae53d135aefd286344c05d1492ff47a' -tx_commitment_tree_height: 64 + deprecated_fee_token_address: "0x3c9310766d2309bb2d7b2934fee57f5ae8bd2c4cbb4199c88f2230ed1d5f0df" + fee_token_address: "0x17cbe4265c239101e83ffcd371cb5631101d389b088d962cd222062d9cfddab" +use_kzg_da: false validate_max_n_steps: 1000000 diff --git a/src/starkware/starknet/definitions/l1_da_mode.py b/src/starkware/starknet/definitions/l1_da_mode.py new file mode 100644 index 00000000..18426948 --- /dev/null +++ b/src/starkware/starknet/definitions/l1_da_mode.py @@ -0,0 +1,10 @@ +from enum import Enum, auto + + +class L1DaMode(Enum): + CALLDATA = 0 + BLOB = auto() + + @classmethod + def from_boolean(cls, use_kzg_da: bool) -> "L1DaMode": + return cls.BLOB if use_kzg_da else cls.CALLDATA diff --git a/src/starkware/starknet/definitions/types.py b/src/starkware/starknet/definitions/types.py new file mode 100644 index 00000000..89fafeef --- /dev/null +++ b/src/starkware/starknet/definitions/types.py @@ -0,0 +1,9 @@ +from typing import Dict, Tuple + +# Blockifier typedefs: + +# Class hash to raw class. Where raw class is a JSON dictionary representing the class. +# We use a plain JSON instead of a Python object to save loading time. +RawDeprecatedDeclaredClassMapping = Dict[int, str] +# Class hash to (compiled class hash, raw class). +RawDeclaredClassMapping = Dict[int, Tuple[int, str]] diff --git a/src/starkware/starknet/definitions/versioned_constants.json b/src/starkware/starknet/definitions/versioned_constants.json new file mode 100644 index 00000000..60b8a844 --- /dev/null +++ b/src/starkware/starknet/definitions/versioned_constants.json @@ -0,0 +1,471 @@ +{ + "gateway": { + "max_calldata_length": 4000, + "max_contract_bytecode_size": 61440 + }, + "l2_resource_gas_costs": { + "milligas_per_data_felt": 128, + "event_key_factor": 2, + "milligas_per_code_byte": 875 + }, + "invoke_tx_max_n_steps": 4000000, + "max_recursion_depth": 50, + "os_constants": { + "nop_entry_point_offset": -1, + "entry_point_type_external": 0, + "entry_point_type_l1_handler": 1, + "entry_point_type_constructor": 2, + "l1_handler_version": 0, + "sierra_array_len_bound": 4294967296, + "constructor_entry_point_selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "execute_entry_point_selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "validate_entry_point_selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "validate_declare_entry_point_selector": "0x289da278a8dc833409cabfdad1581e8e7d40e42dcaed693fa4008dcdb4963b3", + "validate_deploy_entry_point_selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "transfer_entry_point_selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "default_entry_point_selector": 0, + "block_hash_contract_address": 1, + "stored_block_hash_buffer": 10, + "step_gas_cost": 100, + "range_check_gas_cost": 70, + "memory_hole_gas_cost": 10, + "initial_gas_cost": { + "step_gas_cost": 100000000 + }, + "entry_point_initial_budget": { + "step_gas_cost": 100 + }, + "syscall_base_gas_cost": { + "step_gas_cost": 100 + }, + "entry_point_gas_cost": { + "entry_point_initial_budget": 1, + "step_gas_cost": 500 + }, + "fee_transfer_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 100 + }, + "transaction_gas_cost": { + "entry_point_gas_cost": 2, + "fee_transfer_gas_cost": 1, + "step_gas_cost": 100 + }, + "call_contract_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10, + "entry_point_gas_cost": 1 + }, + "deploy_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 200, + "entry_point_gas_cost": 1 + }, + "get_block_hash_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "get_execution_info_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "library_call_gas_cost": { + "call_contract_gas_cost": 1 + }, + "replace_class_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_read_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_write_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "emit_event_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "send_message_to_l1_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "secp256k1_add_gas_cost": { + "step_gas_cost": 406, + "range_check_gas_cost": 29 + }, + "secp256k1_get_point_from_x_gas_cost": { + "step_gas_cost": 391, + "range_check_gas_cost": 30, + "memory_hole_gas_cost": 20 + }, + "secp256k1_get_xy_gas_cost": { + "step_gas_cost": 239, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256k1_mul_gas_cost": { + "step_gas_cost": 76501, + "range_check_gas_cost": 7045, + "memory_hole_gas_cost": 2 + }, + "secp256k1_new_gas_cost": { + "step_gas_cost": 475, + "range_check_gas_cost": 35, + "memory_hole_gas_cost": 40 + }, + "secp256r1_add_gas_cost": { + "step_gas_cost": 589, + "range_check_gas_cost": 57 + }, + "secp256r1_get_point_from_x_gas_cost": { + "step_gas_cost": 510, + "range_check_gas_cost": 44, + "memory_hole_gas_cost": 20 + }, + "secp256r1_get_xy_gas_cost": { + "step_gas_cost": 241, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256r1_mul_gas_cost": { + "step_gas_cost": 125340, + "range_check_gas_cost": 13961, + "memory_hole_gas_cost": 2 + }, + "secp256r1_new_gas_cost": { + "step_gas_cost": 594, + "range_check_gas_cost": 49, + "memory_hole_gas_cost": 40 + }, + "keccak_gas_cost": { + "syscall_base_gas_cost": 1 + }, + "keccak_round_cost_gas_cost": 180000, + "error_block_number_out_of_range": "Block number out of range", + "error_out_of_gas": "Out of gas", + "error_invalid_input_len": "Invalid input length", + "error_invalid_argument": "Invalid argument", + "validated": "VALID", + "l1_gas": "L1_GAS", + "l2_gas": "L2_GAS", + "l1_gas_index": 0, + "l2_gas_index": 1 + }, + "os_resources": { + "execute_syscalls": { + "call_contract": { + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0, + "n_steps": 760 + }, + "delegate_call": { + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0, + "n_steps": 713 + }, + "delegate_l1_handler": { + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0, + "n_steps": 692 + }, + "deploy": { + "builtin_instance_counter": { + "pedersen_builtin": 7, + "range_check_builtin": 19 + }, + "n_memory_holes": 0, + "n_steps": 1012 + }, + "emit_event": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 61 + }, + "get_block_hash": { + "builtin_instance_counter": { + "range_check_builtin": 2 + }, + "n_memory_holes": 0, + "n_steps": 104 + }, + "get_block_number": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 40 + }, + "get_block_timestamp": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 38 + }, + "get_caller_address": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 64 + }, + "get_contract_address": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 64 + }, + "get_execution_info": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 64 + }, + "get_sequencer_address": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 34 + }, + "get_tx_info": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 64 + }, + "get_tx_signature": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 44 + }, + "keccak": { + "builtin_instance_counter": { + "bitwise_builtin": 6, + "keccak_builtin": 1, + "range_check_builtin": 56 + }, + "n_memory_holes": 0, + "n_steps": 381 + }, + "library_call": { + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0, + "n_steps": 751 + }, + "library_call_l1_handler": { + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0, + "n_steps": 659 + }, + "replace_class": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 98 + }, + "secp256k1_add": { + "builtin_instance_counter": { + "range_check_builtin": 29 + }, + "n_memory_holes": 0, + "n_steps": 408 + }, + "secp256k1_get_point_from_x": { + "builtin_instance_counter": { + "range_check_builtin": 30 + }, + "n_memory_holes": 0, + "n_steps": 393 + }, + "secp256k1_get_xy": { + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0, + "n_steps": 205 + }, + "secp256k1_mul": { + "builtin_instance_counter": { + "range_check_builtin": 7045 + }, + "n_memory_holes": 0, + "n_steps": 76503 + }, + "secp256k1_new": { + "builtin_instance_counter": { + "range_check_builtin": 35 + }, + "n_memory_holes": 0, + "n_steps": 459 + }, + "secp256r1_add": { + "builtin_instance_counter": { + "range_check_builtin": 57 + }, + "n_memory_holes": 0, + "n_steps": 591 + }, + "secp256r1_get_point_from_x": { + "builtin_instance_counter": { + "range_check_builtin": 44 + }, + "n_memory_holes": 0, + "n_steps": 512 + }, + "secp256r1_get_xy": { + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0, + "n_steps": 207 + }, + "secp256r1_mul": { + "builtin_instance_counter": { + "range_check_builtin": 13961 + }, + "n_memory_holes": 0, + "n_steps": 125342 + }, + "secp256r1_new": { + "builtin_instance_counter": { + "range_check_builtin": 49 + }, + "n_memory_holes": 0, + "n_steps": 578 + }, + "send_message_to_l1": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 139 + }, + "storage_read": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 87 + }, + "storage_write": { + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0, + "n_steps": 89 + } + }, + "execute_txs_inner": { + "DECLARE": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 63 + }, + "n_memory_holes": 0, + "n_steps": 2839 + }, + "calldata_factor": { + "builtin_instance_counter": { + "pedersen_builtin": 0, + "range_check_builtin": 0 + }, + "n_memory_holes": 0, + "n_steps": 0 + } + }, + "DEPLOY_ACCOUNT": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0, + "n_steps": 3792 + }, + "calldata_factor": { + "builtin_instance_counter": { + "pedersen_builtin": 2, + "range_check_builtin": 0 + }, + "n_memory_holes": 0, + "n_steps": 21 + } + }, + "INVOKE_FUNCTION": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 80 + }, + "n_memory_holes": 0, + "n_steps": 3546 + }, + "calldata_factor": { + "builtin_instance_counter": { + "pedersen_builtin": 1, + "range_check_builtin": 0 + }, + "n_memory_holes": 0, + "n_steps": 8 + } + }, + "L1_HANDLER": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0, + "n_steps": 1146 + }, + "calldata_factor": { + "builtin_instance_counter": { + "pedersen_builtin": 1, + "range_check_builtin": 0 + }, + "n_memory_holes": 0, + "n_steps": 13 + } + }, + "DEPLOY": { + "constant": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 0 + }, + "calldata_factor": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 0 + } + } + } + }, + "validate_max_n_steps": 1000000, + "vm_resource_fee_cost": { + "bitwise_builtin": 0.16, + "ec_op_builtin": 2.56, + "ecdsa_builtin": 5.12, + "keccak_builtin": 5.12, + "n_steps": 0.0025, + "output_builtin": 0, + "pedersen_builtin": 0.08, + "poseidon_builtin": 0.08, + "range_check_builtin": 0.04 + } +} diff --git a/src/starkware/starknet/scripts/BUILD b/src/starkware/starknet/scripts/BUILD index 44be08d0..14efa431 100644 --- a/src/starkware/starknet/scripts/BUILD +++ b/src/starkware/starknet/scripts/BUILD @@ -6,6 +6,7 @@ py_library( "starknet", "starknet-class-hash", "starknet-compile-deprecated", + "starknet-compiled-class-hash", ], visibility = ["//visibility:public"], deps = [ diff --git a/src/starkware/starknet/scripts/starknet-compiled-class-hash b/src/starkware/starknet/scripts/starknet-compiled-class-hash new file mode 100755 index 00000000..3fd4489b --- /dev/null +++ b/src/starkware/starknet/scripts/starknet-compiled-class-hash @@ -0,0 +1,10 @@ +#!/usr/bin/env python3 + +import os +import sys + +sys.path.insert(0, os.path.join(os.path.dirname(__file__), "../../..")) +from starkware.starknet.cli.compiled_class_hash import main # noqa + +if __name__ == "__main__": + sys.exit(main()) diff --git a/src/starkware/starknet/services/api/contract_class/BUILD b/src/starkware/starknet/services/api/contract_class/BUILD index b7f4d668..5cd7f101 100644 --- a/src/starkware/starknet/services/api/contract_class/BUILD +++ b/src/starkware/starknet/services/api/contract_class/BUILD @@ -9,6 +9,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ + "//src/services/everest/definitions:everest_definitions_lib", "//src/starkware/cairo/lang:cairo_constants_lib", "//src/starkware/cairo/lang/compiler:cairo_compile_lib", "//src/starkware/python:starkware_python_utils_lib", @@ -29,8 +30,7 @@ py_library( ], visibility = ["//visibility:public"], deps = [ - "starknet_contract_class_lib", - "//src/starkware/cairo/lang/compiler:cairo_compile_lib", + ":starknet_contract_class_lib", "//src/starkware/starknet/compiler/v1:starknet_compile_v1_lib", ], ) diff --git a/src/starkware/starknet/services/api/contract_class/contract_class.py b/src/starkware/starknet/services/api/contract_class/contract_class.py index 39a0a695..e635edfe 100644 --- a/src/starkware/starknet/services/api/contract_class/contract_class.py +++ b/src/starkware/starknet/services/api/contract_class/contract_class.py @@ -3,12 +3,13 @@ from abc import abstractmethod from dataclasses import field from enum import Enum, auto -from typing import Any, Dict, List, Optional +from typing import Any, Dict, List, Optional, Union import marshmallow import marshmallow.fields as mfields import marshmallow_dataclass +from services.everest.definitions import fields as everest_fields from starkware.cairo.lang.cairo_constants import DEFAULT_PRIME from starkware.cairo.lang.compiler.identifier_manager import IdentifierManager from starkware.cairo.lang.compiler.preprocessor.flow import ReferenceManager @@ -74,10 +75,16 @@ class ContractClass(ValidatedMarshmallowDataclass): """ contract_class_version: str - sierra_program: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + sierra_program: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) entry_points_by_type: Dict[EntryPointType, List[ContractEntryPoint]] abi: str + def get_bytecode_size(self) -> int: + return len(self.sierra_program) + + def get_abi_size(self) -> int: + return len(self.abi) + @marshmallow_dataclass.dataclass(frozen=True) class CompiledClassEntryPoint(ValidatedDataclass): @@ -175,16 +182,26 @@ def n_entry_points(self) -> int: return sum(len(eps) for eps in self.entry_points_by_type.values()) +# Represents a nested list of integers. E.g., [1, [2, [3], 4], 5, 6]. +NestedIntList = Union[int, List[Any]] + + @marshmallow_dataclass.dataclass(frozen=True) class CompiledClass(CompiledClassBase): """ - Represents a compiled contract class in the StarkNet network. + Represents a compiled contract class in the Starknet network. """ prime: int = field(metadata=additional_metadata(marshmallow_field=IntAsHex(required=True))) bytecode: List[int] = field( metadata=additional_metadata(marshmallow_field=mfields.List(IntAsHex(), required=True)) ) + # Represents the structure of the bytecode segments, using a nested list of segment lengths. + # For example, [2, [3, 4]] represents a bytecode with 2 segments, the first is a leaf of length + # 2 and the second is a node with 2 children of lengths 3 and 4. + bytecode_segment_lengths: NestedIntList = field( + metadata=additional_metadata(marshmallow_field=fields.NestedIntListField()) + ) # Rust hints. hints: List[Any] pythonic_hints: Dict[int, List[CairoHint]] @@ -245,6 +262,16 @@ def parse_pythonic_hints(self, data: Dict[str, Any], many: bool, **kwargs) -> Di return data + @marshmallow.decorators.pre_load + def default_bytecode_segment_lengths( + self, data: Dict[str, Any], many: bool, **kwargs + ) -> Dict[str, Any]: + # If bytecode_segment_lengths is missing, use a single leaf (which forces loading the entire + # program). + if "bytecode_segment_lengths" not in data: + data["bytecode_segment_lengths"] = len(data["bytecode"]) + return data + @marshmallow.decorators.post_dump def dump_pythonic_hints(self, data: Dict[str, Any], many: bool, **kwargs) -> Dict[str, Any]: data["pythonic_hints"] = [ diff --git a/src/starkware/starknet/services/api/contract_class/contract_class_utils.py b/src/starkware/starknet/services/api/contract_class/contract_class_utils.py index c8dd3ee3..1ef737c7 100644 --- a/src/starkware/starknet/services/api/contract_class/contract_class_utils.py +++ b/src/starkware/starknet/services/api/contract_class/contract_class_utils.py @@ -15,6 +15,8 @@ def compile_contract_class( allowed_libfuncs_list_name: Optional[str] = None, allowed_libfuncs_list_file: Optional[str] = None, compiler_dir: Optional[str] = None, + memory_limit_in_mb: Optional[int] = None, + max_bytecode_size: Optional[int] = None, ) -> CompiledClass: """ Compiles a contract class to a compiled class. @@ -41,6 +43,8 @@ def compile_contract_class( allowed_libfuncs_list_name=allowed_libfuncs_list_name, allowed_libfuncs_list_file=allowed_libfuncs_list_file, compiler_dir=compiler_dir, + memory_limit_in_mb=memory_limit_in_mb, + max_bytecode_size=max_bytecode_size, ) # Parse the resultant Casm file. diff --git a/src/starkware/starknet/services/api/feeder_gateway/response_objects.py b/src/starkware/starknet/services/api/feeder_gateway/response_objects.py index 53e4c9ff..d241af92 100644 --- a/src/starkware/starknet/services/api/feeder_gateway/response_objects.py +++ b/src/starkware/starknet/services/api/feeder_gateway/response_objects.py @@ -25,15 +25,21 @@ CallInfo, CallType, Event, + GasVector, OrderedEvent, OrderedL2ToL1Message, ) -from starkware.starknet.business_logic.state.state_api_objects import rename_old_gas_price_field +from starkware.starknet.business_logic.state.state_api_objects import ( + GasPrices, + ResourcePrice, + rename_old_gas_price_fields, +) from starkware.starknet.business_logic.transaction.deprecated_objects import ( DeprecatedInternalTransaction, ) from starkware.starknet.business_logic.transaction.objects import InternalTransaction from starkware.starknet.definitions import fields +from starkware.starknet.definitions.l1_da_mode import L1DaMode from starkware.starknet.services.api.contract_class.contract_class import EntryPointType from starkware.starknet.services.api.feeder_gateway.account_transaction_specific_info import ( AccountTransactionSpecificInfo, @@ -81,6 +87,11 @@ def transaction_specific_info_from_internal( return AccountTransactionSpecificInfo.from_internal(internal_tx=internal_tx) +class ResponseCallType(Enum): + CALL = 0 + DELEGATE = auto() + + class BlockStatus(Enum): # A pending block; i.e., a block that is yet to be closed. PENDING = 0 @@ -430,7 +441,7 @@ class L1ToL2Message(ValidatedResponseObject): ) to_address: int = field(metadata=fields.L2AddressField.metadata(field_name="to_address")) selector: int = field(metadata=fields.entry_point_selector_metadata) - payload: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + payload: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) nonce: Optional[int] = field(metadata=fields.optional_nonce_metadata) @@ -444,7 +455,35 @@ class L2ToL1Message(ValidatedResponseObject): to_address: str = field( metadata=everest_fields.EthAddressField.metadata(field_name="to_address") ) - payload: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + payload: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + + +@marshmallow_dataclass.dataclass +class ReceiptExecutionResources(ValidatedResponseObject): + """ + Contains the execution resources a transaction uses, e.g., the number of Cairo + steps and the data availability gas usage. + """ + + n_steps: int + builtin_instance_counter: Dict[str, int] + n_memory_holes: int = field( + metadata=additional_metadata(marshmallow_field=mfields.Integer(load_default=0)) + ) + # The amount of l1_gas or l1_data_gas charged for data availability. + # Optional for backwards compatibility. + data_availability: Optional[GasVector] + + @classmethod + def create( + cls, execution_resources: ExecutionResources, da_gas: Optional[GasVector] + ) -> "ReceiptExecutionResources": + return cls( + n_steps=execution_resources.n_steps, + builtin_instance_counter=execution_resources.builtin_instance_counter, + n_memory_holes=0, + data_availability=da_gas, + ) @marshmallow_dataclass.dataclass(frozen=True) @@ -471,7 +510,7 @@ class TransactionExecution(ValidatedResponseObject): # Events emitted during the execution of the transaction. events: List[Event] # The resources needed by the transaction. - execution_resources: Optional[ExecutionResources] + execution_resources: Optional[ReceiptExecutionResources] # The actual fee that was charged in Wei. actual_fee: Optional[int] = field(metadata=fields.optional_fee_metadata) @@ -517,7 +556,7 @@ def from_tx_info( l1_to_l2_consumed_message: Optional[L1ToL2Message] = None, l2_to_l1_messages: Optional[List[L2ToL1Message]] = None, events: Optional[List[Event]] = None, - execution_resources: Optional[ExecutionResources] = None, + execution_resources: Optional[ReceiptExecutionResources] = None, ) -> "TransactionReceipt": return cls( revert_error=tx_info.revert_error, @@ -650,7 +689,7 @@ class OrderedL2ToL1MessageResponse(ValidatedDataclass): to_address: str = field( metadata=everest_fields.EthAddressField.metadata(field_name="to_address") ) - payload: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + payload: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) @classmethod def from_internal( @@ -675,8 +714,8 @@ class OrderedEventResponse(ValidatedDataclass): """ order: int = field(metadata=sequential_id_metadata("Event order")) - keys: List[int] = field(metadata=fields.felt_as_hex_list_metadata) - data: List[int] = field(metadata=fields.felt_as_hex_list_metadata) + keys: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) + data: List[int] = field(metadata=everest_fields.felt_as_hex_list_metadata) @classmethod def from_internal(cls, events: List[OrderedEvent]) -> List["OrderedEventResponse"]: @@ -696,7 +735,7 @@ class FunctionInvocation(BaseResponseObject, SerializableMarshmallowDataclass): ) contract_address: int = field(metadata=fields.contract_address_metadata) calldata: List[int] = field(metadata=fields.calldata_as_hex_metadata) - call_type: Optional[CallType] = field(metadata=nonrequired_optional_metadata) + call_type: Optional[ResponseCallType] = field(metadata=nonrequired_optional_metadata) class_hash: Optional[int] = field(metadata=fields.optional_new_class_hash_metadata) selector: Optional[int] = field(metadata=fields.optional_entry_point_selector_metadata) entry_point_type: Optional[EntryPointType] @@ -712,11 +751,24 @@ class FunctionInvocation(BaseResponseObject, SerializableMarshmallowDataclass): events: List[OrderedEventResponse] messages: List[OrderedL2ToL1MessageResponse] + @classmethod + def from_inner(cls, call_type: CallType) -> ResponseCallType: + if call_type is CallType.Call: + return ResponseCallType.CALL + elif call_type is CallType.Delegate: + return ResponseCallType.DELEGATE + else: + raise NotImplementedError(f"Unsupported call type {call_type}.") + @classmethod def from_internal(cls, call_info: CallInfo) -> "FunctionInvocation": return cls( caller_address=call_info.caller_address, - call_type=call_info.call_type, + call_type=( + None + if call_info.call_type is None + else cls.from_inner(call_type=call_info.call_type) + ), contract_address=call_info.contract_address, class_hash=call_info.class_hash, selector=call_info.entry_point_selector, @@ -806,9 +858,12 @@ class StarknetBlock(ValidatedResponseObject): state_root: Optional[int] = field( metadata=fields.backward_compatible_optional_state_root_metadata ) + transaction_commitment: Optional[int] = field(metadata=fields.optional_commitment_metadata) + event_commitment: Optional[int] = field(metadata=fields.optional_commitment_metadata) status: Optional[BlockStatus] - eth_l1_gas_price: int = field(metadata=fields.gas_price_metadata) - strk_l1_gas_price: int = field(metadata=fields.gas_price_metadata) + l1_da_mode: L1DaMode = field(metadata=fields.l1_da_mode_enum_metadata) + l1_gas_price: ResourcePrice + l1_data_gas_price: ResourcePrice transactions: Tuple[TransactionSpecificInfo, ...] = field( metadata=additional_metadata( marshmallow_field=VariadicLengthTupleField( @@ -828,15 +883,17 @@ class StarknetBlock(ValidatedResponseObject): starknet_version: Optional[str] = field(metadata=fields.starknet_version_metadata) @pre_load - def rename_old_gas_price_field( + def rename_old_gas_price_fields( self, data: Dict[str, Any], many: bool, **kwargs ) -> Dict[str, List[str]]: - return rename_old_gas_price_field(data=data) + return rename_old_gas_price_fields(data=data) @classmethod def create( cls: Type[TBlockInfo], block_hash: Optional[int], + transaction_commitment: Optional[int], + event_commitment: Optional[int], parent_block_hash: int, block_number: Optional[int], state_root: Optional[int], @@ -844,13 +901,15 @@ def create( timestamp: int, sequencer_address: Optional[int], status: Optional[BlockStatus], - eth_l1_gas_price: int, - strk_l1_gas_price: int, + l1_da_mode: L1DaMode, + gas_prices: GasPrices, transaction_receipts: Optional[Tuple[TransactionExecution, ...]], starknet_version: Optional[str], ) -> TBlockInfo: return cls( block_hash=block_hash, + transaction_commitment=transaction_commitment, + event_commitment=event_commitment, parent_block_hash=parent_block_hash, block_number=block_number, state_root=state_root, @@ -860,8 +919,14 @@ def create( timestamp=timestamp, sequencer_address=sequencer_address, status=status, - eth_l1_gas_price=eth_l1_gas_price, - strk_l1_gas_price=strk_l1_gas_price, + l1_da_mode=l1_da_mode, + l1_gas_price=ResourcePrice( + price_in_wei=gas_prices.l1_gas_price_wei, price_in_fri=gas_prices.l1_gas_price_fri + ), + l1_data_gas_price=ResourcePrice( + price_in_wei=gas_prices.l1_data_gas_price_wei, + price_in_fri=gas_prices.l1_data_gas_price_fri, + ), transaction_receipts=transaction_receipts, starknet_version=starknet_version, ) diff --git a/src/starkware/starknet/services/api/gateway/BUILD b/src/starkware/starknet/services/api/gateway/BUILD index 27207d5d..ac929dc8 100644 --- a/src/starkware/starknet/services/api/gateway/BUILD +++ b/src/starkware/starknet/services/api/gateway/BUILD @@ -79,6 +79,7 @@ py_library( deps = [ "//src/services/external_api:services_external_api_lib", "//src/starkware/starknet/definitions:starknet_definitions_lib", + "//src/starkware/starkware_utils:starkware_dataclasses_utils_lib", "//src/starkware/starkware_utils:starkware_error_handling_lib", ], ) diff --git a/src/starkware/starknet/services/api/gateway/transaction_utils.py b/src/starkware/starknet/services/api/gateway/transaction_utils.py index a09e11e3..83ef03d8 100644 --- a/src/starkware/starknet/services/api/gateway/transaction_utils.py +++ b/src/starkware/starknet/services/api/gateway/transaction_utils.py @@ -8,6 +8,7 @@ from starkware.starknet.definitions.error_codes import StarknetErrorCode from starkware.starknet.definitions.transaction_type import TransactionType from starkware.starkware_utils.error_handling import wrap_with_stark_exception +from starkware.starkware_utils.validated_dataclass import rename_old_field_in_pre_load # The following transaction types will only be supported from a certain version after regenesis. DEPRECATED_TX_TYPES_FOR_SCHEMA: Set[str] = { @@ -74,7 +75,6 @@ def decompress_program_pre_load(data: JsonObject, program_attr_name: str) -> Jso def rename_contract_address_to_sender_address_pre_load(data: JsonObject) -> JsonObject: - if "contract_address" in data: - assert "sender_address" not in data - data["sender_address"] = data.pop("contract_address") - return data + return rename_old_field_in_pre_load( + data=data, old_field_name="contract_address", new_field_name="sender_address" + ) diff --git a/src/starkware/starknet/services/utils/BUILD b/src/starkware/starknet/services/utils/BUILD index cf5eb069..ec06405a 100644 --- a/src/starkware/starknet/services/utils/BUILD +++ b/src/starkware/starknet/services/utils/BUILD @@ -8,6 +8,7 @@ py_library( visibility = ["//visibility:public"], deps = [ "//src/services/everest/api/gateway:everest_transaction_lib", + "//src/starkware/starknet/business_logic/execution:starknet_deprecated_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/execution:starknet_transaction_execution_objects_lib", "//src/starkware/starknet/business_logic/state:starknet_business_logic_state_lib", "//src/starkware/starknet/business_logic/transaction:starknet_transaction_deprecated_objects_lib", diff --git a/src/starkware/starknet/services/utils/sequencer_api_utils.py b/src/starkware/starknet/services/utils/sequencer_api_utils.py index 3d3e557d..9eb955f9 100644 --- a/src/starkware/starknet/services/utils/sequencer_api_utils.py +++ b/src/starkware/starknet/services/utils/sequencer_api_utils.py @@ -2,11 +2,8 @@ from typing import ClassVar, Optional, Tuple, Type from services.everest.api.gateway.transaction import EverestTransaction -from starkware.starknet.business_logic.execution.objects import ( - CallInfo, - ExecutionResourcesManager, - ResourcesMapping, -) +from starkware.starknet.business_logic.execution.deprecated_objects import ExecutionResourcesManager +from starkware.starknet.business_logic.execution.objects import CallInfo, ResourcesMapping from starkware.starknet.business_logic.state.state_api import SyncState from starkware.starknet.business_logic.transaction.deprecated_objects import ( DeprecatedInternalAccountTransaction, @@ -92,7 +89,7 @@ def charge_fee( Overrides the charge fee method. Only calculates the actual fee and does not charge any fee. """ actual_fee = calculate_tx_fee( - l1_gas_price=state.block_info.eth_l1_gas_price, + l1_gas_price=state.block_info.l1_gas_price.price_in_wei, resources=resources, general_config=general_config, ) diff --git a/src/starkware/starknet/solidity/BUILD b/src/starkware/starknet/solidity/BUILD index 526ba039..f685f71b 100644 --- a/src/starkware/starknet/solidity/BUILD +++ b/src/starkware/starknet/solidity/BUILD @@ -27,6 +27,7 @@ sol_library( sol_library( name = "starknet_core_sol", srcs = [ + "BlobHashGetter.sol", "Output.sol", "Starknet.sol", "StarknetOperator.sol", diff --git a/src/starkware/starknet/solidity/BlobHashGetter.sol b/src/starkware/starknet/solidity/BlobHashGetter.sol new file mode 100644 index 00000000..c80e079a --- /dev/null +++ b/src/starkware/starknet/solidity/BlobHashGetter.sol @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: Apache-2.0. +pragma solidity ^0.6.12; + +/** + A factory for creating contracts from EVM bytecode. +*/ +contract ContractFactory { + constructor(bytes memory code) public { + uint256 size = code.length; + assembly { + return(add(code, 0x20), size) + } + } +} + +library BlobHashGetter { + // The bytescode for retrieving the blob hash. + // See https://github.com/ethstorage/eip4844-blob-hash-getter/blob/main/README.md for a detailed + // explanation. + bytes internal constant CODE = hex"6000354960005260206000F3"; + + // Storage slot to hold the deployed hash getter address. + // Web3.keccak(text="BLOB_HASH_GETTER_CONTRACT_SLOT"). + bytes32 internal constant BLOB_HASH_GETTER_CONTRACT_SLOT = + 0xd599dde24be23990034c1ef263a0e367ed5609a1c3122cb48d78c560328abb89; + + /** + Deploys the bytecode that retrieves the hash of a blob, using the DATAHASH (0x49) opcode. + The deployed code accepts blob index as 32-byte input, and outputs blob hash as 32 bytes. + */ + function deploy() internal returns (address) { + address getter = address(new ContractFactory(CODE)); + assembly { + sstore(BLOB_HASH_GETTER_CONTRACT_SLOT, getter) + } + return getter; + } + + /** + Accepts a blob index and returns its versioned hash. + Deploys the hash getter code if it wasn't deployed yet. + */ + function getBlobHash(uint256 idx) internal returns (bytes32) { + address getter; + assembly { + getter := sload(BLOB_HASH_GETTER_CONTRACT_SLOT) + } + if (getter == address(0x0)) { + getter = deploy(); + } + + bool success; + bytes32 blobHash; + assembly { + mstore(0x0, idx) + + success := staticcall(gas(), getter, 0x0, 0x0, 0x20, 0x20) + + blobHash := mload(0x20) + } + + require(success, "GET_BLOB_HASH_FAILED"); + return blobHash; + } +} diff --git a/src/starkware/starknet/solidity/Output.sol b/src/starkware/starknet/solidity/Output.sol index 95f56e9c..c682ef90 100644 --- a/src/starkware/starknet/solidity/Output.sol +++ b/src/starkware/starknet/solidity/Output.sol @@ -30,7 +30,9 @@ library StarknetOutput { uint256 internal constant BLOCK_NUMBER_OFFSET = 2; uint256 internal constant BLOCK_HASH_OFFSET = 3; uint256 internal constant CONFIG_HASH_OFFSET = 4; - uint256 internal constant HEADER_SIZE = 5; + uint256 internal constant USE_KZG_DA_OFFSET = 5; + uint256 internal constant HEADER_SIZE = 6; + uint256 internal constant KZG_SEGMENT_SIZE = 5; uint256 constant MESSAGE_TO_L1_FROM_ADDRESS_OFFSET = 0; uint256 constant MESSAGE_TO_L1_TO_ADDRESS_OFFSET = 1; @@ -57,10 +59,10 @@ library StarknetOutput { ); /** - Does a sanity check of the output_data length. + Returns the offset of the messages segment in the output_data. */ - function validate(uint256[] calldata output_data) internal pure { - require(output_data.length > HEADER_SIZE, "STARKNET_OUTPUT_TOO_SHORT"); + function messageSegmentOffset(uint256 use_kzg_da) internal pure returns (uint256) { + return HEADER_SIZE + (use_kzg_da == 1 ? KZG_SEGMENT_SIZE : 0); } /** diff --git a/src/starkware/starknet/solidity/Starknet.sol b/src/starkware/starknet/solidity/Starknet.sol index 81167cb4..436a3206 100644 --- a/src/starkware/starknet/solidity/Starknet.sol +++ b/src/starkware/starknet/solidity/Starknet.sol @@ -2,6 +2,7 @@ pragma solidity ^0.6.12; pragma experimental ABIEncoderV2; +import "./BlobHashGetter.sol"; import "./Output.sol"; import "./StarknetGovernance.sol"; import "./StarknetMessaging.sol"; @@ -54,6 +55,15 @@ contract Starknet is // The hash of the StarkNet config. string internal constant CONFIG_HASH_TAG = "STARKNET_1.0_STARKNET_CONFIG_HASH"; + // EIP-4844 constants. + address internal constant POINT_EVALUATION_PRECOMPILE_ADDRESS = address(0x0A); + // The precompile expected output: + // Web3.keccak(FIELD_ELEMENTS_PER_BLOB.to_bytes(32, "big") + BLS_PRIME.to_bytes(32, "big")). + bytes32 internal constant POINT_EVALUATION_PRECOMPILE_OUTPUT = + 0xb2157d3a40131b14c4c675335465dffde802f0ce5218ad012284d7f275d1b37c; + uint256 internal constant PROOF_BYTES_LENGTH = 48; + bytes1 internal constant VERSIONED_HASH_VERSION_KZG = bytes1(0x01); + function setProgramHash(uint256 newProgramHash) external notFinalized onlyGovernance { emit ProgramHashChanged(msg.sender, programHash(), newProgramHash); programHash(newProgramHash); @@ -140,11 +150,109 @@ contract Starknet is messageCancellationDelay(5 days); } + /** + Verifies p(z) = y given z, y, a commitment to p in the kzgSegment, and a KZG proof. + The verification is done by calling Ethereum's point evaluation precompile. + */ + function verifyKzgProof(uint256[] calldata kzgSegment, bytes calldata kzgProof) internal { + require(kzgSegment.length == StarknetOutput.KZG_SEGMENT_SIZE, "INVALID_KZG_SEGMENT_SIZE"); + require(kzgProof.length == PROOF_BYTES_LENGTH, "INVALID_KZG_PROOF_SIZE"); + + bytes32 blobHash = BlobHashGetter.getBlobHash( + // blobIndex= + 0 + ); + require(blobHash[0] == VERSIONED_HASH_VERSION_KZG, "UNEXPECTED_BLOB_HASH_VERSION"); + + bytes memory kzgCommitment; + bytes32 y; + { + uint256 kzgCommitmentLow = kzgSegment[0]; + uint256 kzgCommitmentHigh = kzgSegment[1]; + uint256 yLow = kzgSegment[3]; + uint256 yHigh = kzgSegment[4]; + + require(kzgCommitmentLow <= type(uint192).max, "INVALID_KZG_COMMITMENT"); + require(kzgCommitmentHigh <= type(uint192).max, "INVALID_KZG_COMMITMENT"); + require(yLow <= type(uint128).max, "INVALID_Y_VALUE"); + require(yHigh <= type(uint128).max, "INVALID_Y_VALUE"); + + kzgCommitment = abi.encodePacked(uint192(kzgCommitmentHigh), uint192(kzgCommitmentLow)); + y = bytes32((yHigh << 128) + yLow); + } + bytes32 z = bytes32(kzgSegment[2]); + + (bool ok, bytes memory precompile_output) = POINT_EVALUATION_PRECOMPILE_ADDRESS.staticcall( + abi.encodePacked(blobHash, z, y, kzgCommitment, kzgProof) + ); + + require(ok, "POINT_EVALUATION_PRECOMPILE_CALL_FAILED"); + require( + keccak256(precompile_output) == POINT_EVALUATION_PRECOMPILE_OUTPUT, + "UNEXPECTED_POINT_EVALUATION_PRECOMPILE_OUTPUT" + ); + } + + /** + Performs the actual state update of Starknet, based on a proof of the Starknet OS that the + state transition is valid. + + Arguments: + programOutput - The main part of the StarkNet OS program output. + stateTransitionFact - An encoding of the 'programOutput' (including on-chain data, if + available). + */ + function updateStateInternal(uint256[] calldata programOutput, bytes32 stateTransitionFact) + internal + { + // Validate config hash. + require( + programOutput[StarknetOutput.CONFIG_HASH_OFFSET] == configHash(), + "INVALID_CONFIG_HASH" + ); + + bytes32 sharpFact = keccak256(abi.encode(programHash(), stateTransitionFact)); + require(IFactRegistry(verifier()).isValid(sharpFact), "NO_STATE_TRANSITION_PROOF"); + emit LogStateTransitionFact(stateTransitionFact); + + // Perform state update. + state().update(programOutput); + + // Process the messages after updating the state. + // This is safer, as there is a call to transfer the fees during + // the processing of the L1 -> L2 messages. + + // Process L2 -> L1 messages. + uint256 outputOffset = StarknetOutput.messageSegmentOffset( + programOutput[StarknetOutput.USE_KZG_DA_OFFSET] + ); + outputOffset += StarknetOutput.processMessages( + // isL2ToL1= + true, + programOutput[outputOffset:], + l2ToL1Messages() + ); + + // Process L1 -> L2 messages. + outputOffset += StarknetOutput.processMessages( + // isL2ToL1= + false, + programOutput[outputOffset:], + l1ToL2Messages() + ); + require(outputOffset == programOutput.length, "STARKNET_OUTPUT_TOO_LONG"); + // Note that processing L1 -> L2 messages does an external call, and it shouldn't be + // followed by storage changes. + + StarknetState.State storage state_ = state(); + emit LogStateUpdate(state_.globalRoot, state_.blockNumber, state_.blockHash); + } + /** Returns a string that identifies the contract. */ function identify() external pure override returns (string memory) { - return "StarkWare_Starknet_2023_6"; + return "StarkWare_Starknet_2023_7"; } /** @@ -169,8 +277,8 @@ contract Starknet is } /** - Updates the state of the StarkNet, based on a proof of the - StarkNet OS that the state transition is valid. + Updates the state of the Starknet, based on a proof of the Starknet OS that the state + transition is valid. Data availability is provided on-chain. Arguments: programOutput - The main part of the StarkNet OS program output. @@ -187,52 +295,59 @@ contract Starknet is int256 initialBlockNumber = state().blockNumber; // Validate program output. - StarknetOutput.validate(programOutput); + require(programOutput.length > StarknetOutput.HEADER_SIZE, "STARKNET_OUTPUT_TOO_SHORT"); - // Validate config hash. - require( - configHash() == programOutput[StarknetOutput.CONFIG_HASH_OFFSET], - "INVALID_CONFIG_HASH" - ); + // Validate KZG DA flag. + require(programOutput[StarknetOutput.USE_KZG_DA_OFFSET] == 0, "UNEXPECTED_KZG_DA_FLAG"); bytes32 stateTransitionFact = OnchainDataFactTreeEncoder.encodeFactWithOnchainData( programOutput, OnchainDataFactTreeEncoder.DataAvailabilityFact(onchainDataHash, onchainDataSize) ); - bytes32 sharpFact = keccak256(abi.encode(programHash(), stateTransitionFact)); - require(IFactRegistry(verifier()).isValid(sharpFact), "NO_STATE_TRANSITION_PROOF"); - emit LogStateTransitionFact(stateTransitionFact); + updateStateInternal(programOutput, stateTransitionFact); + // Note that updateStateInternal does an external call, and it shouldn't be followed by + // storage changes. - // Perform state update. - state().update(programOutput); + // Re-entrancy protection (see above). + require(state().blockNumber == initialBlockNumber + 1, "INVALID_FINAL_BLOCK_NUMBER"); + } - // Process the messages after updating the state. - // This is safer, as there is a call to transfer the fees during - // the processing of the L1 -> L2 messages. + /** + Updates the state of the StarkNet, based on a proof of the StarkNet OS that the state + transition is valid. Data availability is committed with KZG and provided in a blob. - // Process L2 -> L1 messages. - uint256 outputOffset = StarknetOutput.HEADER_SIZE; - outputOffset += StarknetOutput.processMessages( - // isL2ToL1= - true, - programOutput[outputOffset:], - l2ToL1Messages() + Arguments: + programOutput - The main part of the StarkNet OS program output. + kzgProof - a KZG proof which is validated together with the StarkNet OS data commitment + given in 'programOutput'. + */ + function updateStateKzgDA(uint256[] calldata programOutput, bytes calldata kzgProof) + external + onlyOperator + { + // We protect against re-entrancy attacks by reading the block number at the beginning + // and validating that we have the expected block number at the end. + int256 initialBlockNumber = state().blockNumber; + + // Validate program output. + require( + programOutput.length > StarknetOutput.HEADER_SIZE + StarknetOutput.KZG_SEGMENT_SIZE, + "STARKNET_OUTPUT_TOO_SHORT" ); - // Process L1 -> L2 messages. - outputOffset += StarknetOutput.processMessages( - // isL2ToL1= - false, - programOutput[outputOffset:], - l1ToL2Messages() + // Verify the KZG Proof. + require(programOutput[StarknetOutput.USE_KZG_DA_OFFSET] == 1, "UNEXPECTED_KZG_DA_FLAG"); + verifyKzgProof( + programOutput[StarknetOutput.HEADER_SIZE:][:StarknetOutput.KZG_SEGMENT_SIZE], + kzgProof ); - require(outputOffset == programOutput.length, "STARKNET_OUTPUT_TOO_LONG"); - // Note that processing L1 -> L2 messages does an external call, and it shouldn't be - // followed by storage changes. - StarknetState.State storage state_ = state(); - emit LogStateUpdate(state_.globalRoot, state_.blockNumber, state_.blockHash); + bytes32 stateTransitionFact = OnchainDataFactTreeEncoder.hashMainPublicInput(programOutput); + updateStateInternal(programOutput, stateTransitionFact); + // Note that updateStateInternal does an external call, and it shouldn't be followed by + // storage changes. + // Re-entrancy protection (see above). - require(state_.blockNumber == initialBlockNumber + 1, "INVALID_FINAL_BLOCK_NUMBER"); + require(state().blockNumber == initialBlockNumber + 1, "INVALID_FINAL_BLOCK_NUMBER"); } } diff --git a/src/starkware/starknet/testing/state.py b/src/starkware/starknet/testing/state.py index 943b3f5d..6137dfd5 100644 --- a/src/starkware/starknet/testing/state.py +++ b/src/starkware/starknet/testing/state.py @@ -98,7 +98,10 @@ async def empty(cls, general_config: Optional[StarknetGeneralConfig] = None) -> contract_class_storage=ffc.storage, ) state = CachedState( - block_info=BlockInfo.empty(sequencer_address=general_config.sequencer_address), + block_info=BlockInfo.empty( + sequencer_address=general_config.sequencer_address, + use_kzg_da=general_config.use_kzg_da, + ), state_reader=state_reader, compiled_class_cache={}, ) diff --git a/src/starkware/starknet/wallets/signer.py b/src/starkware/starknet/wallets/signer.py index 06ad9c0b..7ccb0f3c 100644 --- a/src/starkware/starknet/wallets/signer.py +++ b/src/starkware/starknet/wallets/signer.py @@ -18,6 +18,7 @@ ) from starkware.starknet.definitions import fields from starkware.starknet.definitions.data_availability_mode import DataAvailabilityMode +from starkware.starknet.definitions.transaction_type import TransactionType from starkware.starknet.public.abi import get_selector_from_name from starkware.starknet.services.api.contract_class.contract_class import ( ContractClass, @@ -39,7 +40,7 @@ class SignerBase(ABC): """ - Base class for sigining transactions. + Base class for signing transactions. """ @classmethod @@ -51,7 +52,13 @@ def format_multicall_calldata(cls, calls: List[CallFunction]) -> List[int]: @classmethod @abstractmethod - def sign_tx_hash(cls, tx_hash: int, private_key: Optional[int]) -> List[int]: + def sign_tx_hash( + cls, + tx_hash: int, + private_key: Optional[int], + tx_type: Optional[TransactionType] = None, + additional_data: Optional[List[int]] = None, + ) -> List[int]: """ Signs the transaction hash. """ @@ -181,7 +188,9 @@ def sign_invoke_tx( function. """ call_function = CallFunction( - contract_address=contract_address, entry_point_selector=selector, calldata=calldata + contract_address=contract_address, + entry_point_selector=selector, + calldata=calldata, ) return cls.sign_multicall_tx( @@ -528,7 +537,13 @@ class EcdsaSignerBase(SignerBase): """ @classmethod - def sign_tx_hash(cls, tx_hash: int, private_key: Optional[int]) -> List[int]: + def sign_tx_hash( + cls, + tx_hash: int, + private_key: Optional[int], + tx_type: Optional[TransactionType] = None, + additional_data: Optional[List[int]] = None, + ) -> List[int]: return [] if private_key is None else list(sign(msg_hash=tx_hash, priv_key=private_key)) @@ -561,7 +576,7 @@ def format_multicall_calldata(cls, calls: List[CallFunction]) -> List[int]: class StandardSigner(EcdsaSignerBase): """ - Contains signing logic for the starndard Cairo 1 account contract from the Cairo compiler repo. + Contains signing logic for the standard Cairo 1 account contract from the Cairo compiler repo. Assumes the following calldata format: `calls: Array`, where `Call` struct is struct Call { @@ -591,7 +606,13 @@ class TrivialSigner(SignerBase): """ @classmethod - def sign_tx_hash(cls, tx_hash: int, private_key: Optional[int]) -> List[int]: + def sign_tx_hash( + cls, + tx_hash: int, + private_key: Optional[int], + tx_type: Optional[TransactionType] = None, + additional_data: Optional[List[int]] = None, + ) -> List[int]: assert private_key is None, "Sigining is not supproted for the TrivialSigner." return [] diff --git a/src/starkware/starkware_utils/field_validators.py b/src/starkware/starkware_utils/field_validators.py index db735759..c605a7f3 100644 --- a/src/starkware/starkware_utils/field_validators.py +++ b/src/starkware/starkware_utils/field_validators.py @@ -400,3 +400,8 @@ def validator(value): return True return validator + + +def validate_probabilities_sum(*probabilities: float): + if sum(probabilities) > 1: + raise ValueError("The sum of the probabilities must be at most 1.") diff --git a/src/starkware/starkware_utils/marshmallow_dataclass_fields.py b/src/starkware/starkware_utils/marshmallow_dataclass_fields.py index b88d6a4f..88418594 100644 --- a/src/starkware/starkware_utils/marshmallow_dataclass_fields.py +++ b/src/starkware/starkware_utils/marshmallow_dataclass_fields.py @@ -34,7 +34,6 @@ mfields.Integer, strict=True, allow_none=True ) - # Class definitions. @@ -311,3 +310,11 @@ def enum_field_metadata( load_default=None, required=False ) nonrequired_list_metadata: FieldMetadata = additional_metadata(load_default=list, required=False) + +bytes_as_hex_list_metadata = additional_metadata( + marshmallow_field=mfields.List(BytesAsHex(required=True)) +) + +optional_bytes_as_hex_list_metadata = additional_metadata( + marshmallow_field=mfields.List(BytesAsHex, required=False, allow_none=True, load_default=None), +) diff --git a/src/starkware/starkware_utils/validated_dataclass.py b/src/starkware/starkware_utils/validated_dataclass.py index 9bac347a..ce1ba57a 100644 --- a/src/starkware/starkware_utils/validated_dataclass.py +++ b/src/starkware/starkware_utils/validated_dataclass.py @@ -16,6 +16,18 @@ T = TypeVar("T") +def rename_old_field_in_pre_load( + data: Dict[str, Any], old_field_name: str, new_field_name: str +) -> Dict[str, Any]: + if old_field_name in data: + assert new_field_name not in data, ( + f"Error while renaming {old_field_name} to {new_field_name}. " + "It is unexpected to have both fields in the data." + ) + data[new_field_name] = data.pop(old_field_name) + return data + + def get_from_nested_metadata(metadata: Mapping[str, Any], key: str) -> Any: """ Returns the value for the given key in the metadata dict, or in an additional metadata dict diff --git a/src/starkware/storage/dict_storage.py b/src/starkware/storage/dict_storage.py index a47590af..53e5f64c 100644 --- a/src/starkware/storage/dict_storage.py +++ b/src/starkware/storage/dict_storage.py @@ -66,6 +66,14 @@ async def set_value(self, key: bytes, value: bytes): self.cache[key] = value + async def setnx_value(self, key: bytes, value: bytes) -> bool: + assert value is not None + # Don't check the cache here to avoid race conditions. + result = await self.storage.setnx_value(key=key, value=value) + if result: + self.cache[key] = value + return result + async def get_value(self, key: bytes) -> Optional[bytes]: if self.metric_active: storage_metrics.CACHED_STORAGE_GET_TOTAL.inc() diff --git a/src/third_party/pip/BUILD b/src/third_party/pip/BUILD index 1c3d3137..94c5af69 100644 --- a/src/third_party/pip/BUILD +++ b/src/third_party/pip/BUILD @@ -6,14 +6,13 @@ load("//bazel_utils/python:defs.bzl", "unify_requirements") alias( name = requirement, actual = select({ - "//bazel_utils/python:pypy": "@pypy_reqs_" + requirement + "//:pkg", - "//conditions:default": "@cpython_reqs_" + requirement + "//:pkg", + "//bazel_utils/python:pypy": "@pypy_reqs_" + requirement + "//:pkg", + "//conditions:default": "@cpython_reqs_" + requirement + "//:pkg", }), visibility = ["//visibility:public"], ) for requirement in unify_requirements({ "cpython_reqs": all_requirements, "pypy_reqs": pypy_all_requirements, - }) - if requirement != "greenlet" + }) if requirement != "greenlet" ]