From f048b64318ceb6c48bfd2df4eec6aab4d85fd9b9 Mon Sep 17 00:00:00 2001 From: "alex.sharov" Date: Fri, 9 Jul 2021 20:21:13 +0700 Subject: [PATCH] Squashed 'interfaces/' content from commit 156e93e git-subtree-dir: interfaces git-subtree-split: 156e93ea05f776e36f89e0827d8e4ef77905bb79 --- .github/workflows/rust.yml | 51 +++++ .gitignore | 2 + Cargo.toml | 27 +++ LICENSE | 201 ++++++++++++++++++ README.md | 34 +++ _docs/README.md | 138 ++++++++++++ _docs/staged-sync.drawio | 1 + _docs/staged-sync.md | 103 +++++++++ _docs/stages-batch-process.png | Bin 0 -> 83515 bytes _docs/stages-commitment.png | Bin 0 -> 61030 bytes _docs/stages-etl.png | Bin 0 -> 49802 bytes _docs/stages-ordering.png | Bin 0 -> 12190 bytes _docs/stages-overview.png | Bin 0 -> 16305 bytes _docs/stages-rpc-methods.png | Bin 0 -> 19284 bytes build.rs | 45 ++++ consensus_engine/consensus.proto | 163 ++++++++++++++ db_tables.toml | 49 +++++ p2psentry/sentry.proto | 160 ++++++++++++++ remote/ethbackend.proto | 63 ++++++ remote/kv.proto | 88 ++++++++ snapshot_downloader/external_downloader.proto | 40 ++++ src/lib.rs | 166 +++++++++++++++ testing/testing.proto | 27 +++ turbo-geth-architecture.png | Bin 0 -> 179413 bytes turbo-geth.drawio | 1 + txpool/README.md | 45 ++++ txpool/mining.proto | 103 +++++++++ txpool/txpool.proto | 61 ++++++ txpool/txpool_control.proto | 57 +++++ types/types.proto | 46 ++++ 30 files changed, 1671 insertions(+) create mode 100644 .github/workflows/rust.yml create mode 100644 .gitignore create mode 100644 Cargo.toml create mode 100644 LICENSE create mode 100644 README.md create mode 100644 _docs/README.md create mode 100644 _docs/staged-sync.drawio create mode 100644 _docs/staged-sync.md create mode 100644 _docs/stages-batch-process.png create mode 100644 _docs/stages-commitment.png create mode 100644 _docs/stages-etl.png create mode 100644 _docs/stages-ordering.png create mode 100644 _docs/stages-overview.png create mode 100644 _docs/stages-rpc-methods.png create mode 100644 build.rs create mode 100644 consensus_engine/consensus.proto create mode 100644 db_tables.toml create mode 100644 p2psentry/sentry.proto create mode 100644 remote/ethbackend.proto create mode 100644 remote/kv.proto create mode 100644 snapshot_downloader/external_downloader.proto create mode 100644 src/lib.rs create mode 100644 testing/testing.proto create mode 100644 turbo-geth-architecture.png create mode 100644 turbo-geth.drawio create mode 100644 txpool/README.md create mode 100644 txpool/mining.proto create mode 100644 txpool/txpool.proto create mode 100644 txpool/txpool_control.proto create mode 100644 types/types.proto diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml new file mode 100644 index 000000000..c80241c6b --- /dev/null +++ b/.github/workflows/rust.yml @@ -0,0 +1,51 @@ +on: [push, pull_request] + +name: Rust + +jobs: + ci: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + + steps: + - uses: actions/checkout@v2 + with: + submodules: recursive + + - uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + components: rustfmt, clippy + + - uses: actions-rs/cargo@v1 + with: + command: fmt + args: --all -- --check --config merge_imports=true + + - uses: actions-rs/cargo@v1 + with: + command: install + args: cargo-hack + + - uses: actions-rs/cargo@v1 + with: + command: hack + args: check --all --ignore-private --each-feature --no-dev-deps + + - uses: actions-rs/cargo@v1 + with: + command: check + args: --all --all-targets --all-features + + - uses: actions-rs/cargo@v1 + with: + command: test + + - uses: actions-rs/cargo@v1 + with: + command: clippy + args: -- -D warnings diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..96ef6c0b9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/target +Cargo.lock diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 000000000..9d9ea6848 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,27 @@ +[package] +name = "ethereum-interfaces" +version = "0.1.0" +authors = ["Artem Vorotnikov "] +edition = "2018" +license = "Apache-2.0" + +[features] +consensus = [] +sentry = [] +remotekv = [] +snapshotsync = [] +txpool = [] +db = ["once_cell", "serde", "toml"] + +[dependencies] +arrayref = "0.3" +ethereum-types = { version = "0.11", default-features = false } +once_cell = { version = "1", optional = true } +prost = "0.7" +serde = { version = "1", features = ["derive"], optional = true } +toml = { version = "0.5", optional = true } +tonic = "0.4" + +[build-dependencies] +prost-build = "0.7" +tonic-build = "0.4" diff --git a/LICENSE b/LICENSE new file mode 100644 index 000000000..261eeb9e9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 000000000..85ed4809c --- /dev/null +++ b/README.md @@ -0,0 +1,34 @@ +# Interfaces +Interfaces for turbo-geth components. Currently it is a collection of `.proto` files describing gRPC interfaces between components, but later documentation about each interface, its components, as well as required version of gRPC will be added + + + +See more info on the component and descriptions in [Components](./_docs/README.md) + + +# What's in this repo +- Protobuf definitions +- Wrappers: + - Rust crate with autogenerated client and server based on [Tonic](https://github.com/hyperium/tonic) + +NOTE: You are free to ignore provided wrappers and use the .proto files directly + +# Suggested integration into other repositories +``` +git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces master +``` + +When you need to update the subtree to a specific commit or tag, you can use these commands: + +``` +git rm -rf interfaces +git commit -m"Remove interfaces for replacement" +git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces +``` + +Unfortunately `git subtree pull` does not work if we use Squash-Merge for pull requests in this repository +and also automatically delete merged branches. + +# Style guide + +[https://developers.google.com/protocol-buffers/docs/style](https://developers.google.com/protocol-buffers/docs/style) diff --git a/_docs/README.md b/_docs/README.md new file mode 100644 index 000000000..62eba7ecd --- /dev/null +++ b/_docs/README.md @@ -0,0 +1,138 @@ +# Erigon Architecture + +The architectural diagram + +![](../turbo-geth-architecture.png) + +# Loosely Coupled Architecture + +The node consists of loosely coupled components with well defined "edges" -- protocols that are used between these components. + +Its a reminiscence of [microservices architecture](https://en.wikipedia.org/wiki/Microservices), where each component has clearly defined reponsibilities and interface. Implementation might vary. In case of Erigon, we use gRPC/protobuf definitions, that allows the components to be written in different languages. + +In our experience, each p2p blockchain node has more or less these components, even when those aren't explicitly set up. In that case we have a highly coupled system of the same components but with more resistance to changes. +## Advantages of loosely coupled architecture + +* Less dependencies between components -- less side-effects of chaging one component is on another. + +* Team scalability -- with well specified components, its easy to make sub-teams that work on each component with less coordination overhead. Most cross-team communication is around the interface definition and interpretation. + +* Learning curve reduction -- it is not that easy to find a full-fledged blockchain node developer, but narrowing down the area of responsiblities, makes it easier to both find candidates and coach/mentor the right skillset for them. + +* Innovation and improvements of each layer independently -- for specialized teams for each sub-component, its easier to find some more improvements or optimizations or innovative approaches than in a team that has to keep everything about the node in the head. + +## Designing for upgradeabilty + +One important part of the design of a node is to make sure that we leave ourselves a room to upgrade it in a simple way. + +That means a couple of things: +- protocols for each components should be versioned, to make sure that we can't run inconsistent versions together. [semver](https://semver.org) is a better approach there because it allows to parse even future versions and figure out how compatible they are based on a simple convention; + +- trying to keep compatiblity as much as possible, unless there is a very good reason to break it, we will try to keep it. In practice that means: + - adding new APIs is safe; + - adding new parameters is safe, taking into account that we can always support them missing and revert to the old behaviour; + - renaming parameters and methods considered harmful; + - removing paramters and methods considered harmful; + - radically changing the behaviour of the method w/o any changes to the protocol considered harmful; + +Tools for automatic checks about compabilitity are available for Protobuf: https://github.com/bufbuild/buf +## Implementation variants + +### Microservices + +Erigon uses gRPC-powered variant; each component implements gRPC interface, defined in the protobuf files. No language dependency across components. + +**Advantages** +- it is possible to run a single node spread on multiple machines (and specialize each machine to its job, like GPU/CPU for hash/proof calculations, memory-heavy TX pool, etc) +- it is possible to plug & play multiple variants of each component +- it is possible to write each component in its own language and use the power of each language to the most (perf-critical in Rust or C++, Go for networking, some parts in Python and JS for fast prototyping, etc) +- it is possible to replace components as better version in another language is written + +**Challenges** +- deployment process for average users could be clumsy +- managing multiple sub-projects +- testing interfaces, extensive integration testing is needed + +### Single binary + +That's when each module is in the same language and compiles to the same binary either as a static library or a dynamic library or just a subfolder in the code. + +**Advantages** +- simpler deployment process +- simpler component compatibility + +**Challenges** +- have to settle on a single language/framework for the whole project +- less flexibility with upgrades + +# Components +## 1. API Service (RPCDaemon, SilkRPC, etc) + +Each node exposes an API to plug it into other components. For Ethereum nodes, the example is JSON-RPC APIs or GraphQL APIs. It is an interface between DApps and the nodes. + +The API Service's responsibilities are to expose these APIs. + +The API design is not limited to JSON-RPC/http with `eth_call`s, it could be something completely else: gRPC, GraphQL or even some REST to power some webUIs. + +The API Service connects to the [Core]. + +In Erigon, there are with two interfaces: +- [ETH Backend, proto](../remote/ethbackend.proto) -- blockchain events and core technical information (versions, etc) +- [KV, proto](../remote/kv.proto) -- database access + +## 2. Sentry + +Sentry is the component, connecting the node to the p2p network of the blockchain. In case of Erigon and Ethereum, it implements [`eth/65`, `eth/66`, etc](https://github.com/ethereum/devp2p/blob/master/caps/eth.md#change-log) protocols via [devp2p](https://github.com/ethereum/devp2p). + +Sentry accepts connections from [Core] and [Transaction Pool] components. + +Erigon has the following interface for sentry: +- [P2Psentry, proto](../p2psentry/sentry.proto) -- sending/receiving messages, and peer penalization mechanism. + +Both the [transaction pool] and the [core] use the same interface. + +## 3. Transaction Pool + +Transaction pool contains valid transactions that are gossiped around the network but aren't mined yet. Transaction pool validates transactions that it gets from [Sentry] and, in case, the transaction is valid, adds it to its on in-memory storage. Please note that at the time of writing, Transaction Pool component +has not been split yet, but this should happen relatively soon. + +Miners use this component to get candidate transactions for the block. + +Separating tx pool in a separate components, makes forks like [mev-geth](https://github.com/flashbots/mev-geth) unnecessary, because it could be just a separate tx pool implementation. + +Transaction Pool connects to both Sentry and Core. Sentry provides new transactions to the tx pool, and Core either sends events to remove txs when a block with them is discovered, either from peers or through mining. Also, Core can re-add txs into the transaction pool in cases of chain splits. + +Erigon has the following interfaces for the transaction pool +- [txpool, proto](../txpool/txpool.proto) +- [txpool_control, proto](../txpool/txpool_control.proto) +- [mining, proto](../txpool/mining.proto) + +See more about the architecture: https://github.com/ledgerwatch/erigon/wiki/Transaction-Pool-Design + +## 4. Core + +Core is the passive part of the replicating state machine that is a blockchain. Core maintains its state and reacts to the protocol messages from the +outside, with the goal of synchronizing its state with other nodes in the network. This synchronization is achieved by applying or reverting state +transitions. + +Currently, Core is the largest and the most complex component, and it has its own internal structure. State transitions are split into stages, +and that gives rise to "[Staged Sync](./staged-sync.md)". In the staged sync, we consider two forward state transitions and reverts of previous state transitions +(also called "Unwind"). Forward state transitions are split into the invocation of functions in certain order. At the time of writing, there are +18 such functions, representing "stages". Reverts of previous state transitions are performed by invocation of another array of functions, also +in the specific order. See [Staged Sync Architecture](./staged-sync.md) for more information on Staged Sync. + +Core connects to [Sentry] and [Consensus Engine], and accepts connections from [Transaction Pool] and [API Service]. + +## 5. Consensus Engine + +Consensus Engine is the component that abstracts away consensus mechanism like EtHash Proof Of Work, ProgPOW Proof of Work, Clique Proof Of Authority, +and in the future also AuRa Proof Of Authority and Proof Of Stake mechanism. Note that at the time of writing, Consensus Engine split has not been +done yet, but some [work has been done on the interface](https://github.com/ledgerwatch/erigon/wiki/Consensus-Engine-separation). + +Erigon has the following interface for the consensus engine: +- [consensus_engine, proto](../consensus_engine/consensus.proto) + +## 6. Downloader + +Downloader component abstracts away the functionality of deliverying some parts of the database using "out of band" protocols like BitTorrent, +IPFS, Swarm and others. diff --git a/_docs/staged-sync.drawio b/_docs/staged-sync.drawio new file mode 100644 index 000000000..d2a1824a5 --- /dev/null +++ b/_docs/staged-sync.drawio @@ -0,0 +1 @@ +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 \ No newline at end of file diff --git a/_docs/staged-sync.md b/_docs/staged-sync.md new file mode 100644 index 000000000..88a9874fd --- /dev/null +++ b/_docs/staged-sync.md @@ -0,0 +1,103 @@ +Staged Sync (Erigon) +--- + +Staged Sync is a version of [Go-Ethereum](https://github.com/ethereum/go-ethereum)'s [[Full Sync]] that was rearchitected for better performance. + +## How The Sync Works + +Staged sync consists of independent stages, that are launched in special order one after another. This architecture allows for batch processing of data. + +After the last stage is finished, the process starts from the beginning, by looking for the new headers to download. + +If the app is restarted in between stages, it restarts from the first stage. + +![](./stages-overview.png) + +### Stage + +A Stage consists of: +* stage ID; +* progress function; +* unwind function; +* prune function; + +Only ID and progress functions are required. + +Both progress and unwind functions can have side-effects. In practice, usually only progress do (downloader interaction). + +Each function (progress, unwind, prune) have **input** DB buckets and **output** DB buckets. That allows to build a dependency graph and run them in order. + +![](./stages-ordering.png) + +That is important because unwinds not always follow the reverse order of progress. A good example of that is tx pool update, that is always the final stage. + +Each stage saves its own progress. In Ethereum, at least a couple of stages' progress is "special", so we accord to that. Say, progress of the _execution stage_ is basis of many index-building stages. + +### Batch Processing + +![](./stages-batch-process.png) + +Each stage can work on a range of blocks. That is a huge performance improvement over sequential processing. + +In Erigon genesis sync: +- first stage downloads all headers +- then we download all bodies +- then we execute all blocks +- then we add a Merkle commitment (either from scratch or incremental) +- then we build all indices +- then we update the tx pool + +That allows to group similar operations together and optimize each stage for throughput. Also, some stages, like the commitment stage, require way less hashes computation on genesis sync. + +That also allows DB inserts optimisations, see next part. + +### ETL and optimial DB inserts + +![](./stages-etl.png) + +B-tree based DBs (lmdb, mdbx, etc) usually store data using pages. During random inserts, those pages get fragmented (remember Windows 98?) and often data needs to be moved between them to free up space in a certain page. + +That all is called **write amplification**. The more random stuff you insert into a DB, the more expensive it is to insert it. + +Luckily, if we insert keys in a sorted order, this effect is not there, we fill pages one by one. + +That is where our ETL framework comes to the rescue. When batch processing data, instead of wrting it directly to a database, we first extract it to a temp folder (could be in ram if fits). When extraction happens, we generate the keys for insertion. Then, we load data from these data files in a sorted manner using a heap. That way, the keys are always inserted sorted. + +This approach also allows us to avoid overwrites in certain scenarios, because we can specify the right strategy on loading data: do we want to keep only the latest data, convert it into a list or anything else. + +### RPC calls and indices + +![](./stages-rpc-methods.png) + +Some stages are building indices that serve the RPC API calls later on. That is why often we can introduce a new sync stage together with an API call that uses it. API module can always request state of any stage it needs to plan the execution accordingly. + +### Commitment As A Stage + +![](./stages-commitment.png) + +One more benefit of this approach, that the Merkle commitment (hex tries) in Erigon is its own stage with it own couple of buckets. Other stages are independent enough to either not be changed at all when/if the commitment mechanism changes or be changes minimaly. + +### What About Parallel Execution? + +Some parallel execution could be possible, in case stages aren't dependent on each other in any way. +However, in practice, most stages are bound by their I/O performance, so making those parallel won't bring any performance benefits. + +There could be benefits in having parallelism **inside** stages. For Erigon, there is **senders recovery** stage that is very CPU intensive and could benefit from multicore execution. So it launches as many worker threads as there are CPU cores. + +### Adding/Removing stages + +Adding stages is usually a simple task. On the first launch the stage will launch like it was launched from genesis even though the node might be in a synced state. + +Removing or altering a sync stage could be more tricky because then the dependent stages should be considered. + +### Offline Capabilities + +Not every stage needs network to work. Therefore, it could be possible to run some stages, especially during genesis sync, no matter if the node has a connection or not. An example of that is indices building. + +### Risks & Tradeoffs + +* Malicious unwinds on genesis sync. Since we are checking commitments once per batch, that could be used to slow down the genesis sync significantly, if we sync/execute everything but get a wrong root hash in the end. After genesis sync is done, this is not an issue because even though we do batch processing, but in practice at the tip this architecture becomes block-by-block processor and is not worse than anything else. + +* Batch processing doesn't allow most of the API calls on partial data during genesis sync. Basically, regular geth at 1/2 of the sync will respond to the RPC requests but Erigon requires the commitment stage to complete to allow these requests. + +Those tradeoffs are related to genesis sync, so in Erigon we are focusing on reducing the need for genesis sync (such as off-chain snapshot distribution) to minimize those issues. diff --git a/_docs/stages-batch-process.png b/_docs/stages-batch-process.png new file mode 100644 index 0000000000000000000000000000000000000000..7501442c0886c19c905e2c9d8b1ab5aa7dae7b13 GIT binary patch literal 83515 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

ejbRd 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¬xV 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 literal 0 HcmV?d00001 diff --git a/_docs/stages-commitment.png b/_docs/stages-commitment.png new file mode 100644 index 0000000000000000000000000000000000000000..d84708816ae3598a64cee0a0a5b680737eba2bbd GIT binary patch literal 61030 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 literal 0 HcmV?d00001 diff --git a/_docs/stages-etl.png b/_docs/stages-etl.png new file mode 100644 index 0000000000000000000000000000000000000000..13d5e9dd3a807aac72784847cfbafa5bd7a73057 GIT binary patch literal 49802 zcmeFZby$;a_%{xSC@PA9J~T*}ATeSfT_Z+}7(<#7gVAijXbTe%q)VldP*NHbX~_vl zDAFZJ=X(tW^?Cfh$MOD-xDZo}Fuoi==^Jg6Jz?id8oSeK&g#D-70>j7w1N#}$_V zpN*rd8<(IwmwKfzRz7(HJX?CHlu00X_kK9zJ0nK8OxK zKbN2kKOcC3@bQWWiyHhGZ)R=j@N+^TUOq6vS-6=6#=*_e)rLz@7Q9z>aI?gM|KK)w z)zAhn`rwbB&xBvdMC2T}lyP#xS|TmYRWX1DMPWW6UVdJFA@IRjRhSN3jY~idTw^hI zmf)X~rG=d%=}UT+F0L3y2k-@c2x&aHrEO+q=7RZS3et}7KSyqF8VnX84JLhH>1JmA zW1A3tn1vvZsGB;52c{q@FQ6~y3Kk=car1Pt{4oY?iN{!M-xX8<4E@PDFa-0HR~8xu z{6bJGc_hqAgkMol*i*+=kTi*)f{31zIoP}`++I-=!f%E3)U;D2m^%u<9Yl2D!U9OF zfD;a@Bg=5$IE-M0hRDgQ>#Nv1 zL;3NFsvFVW93ud66I8ZGK}odBs+p_dMYXUF{8$+SA*`MO3QIt$I61ouY6|E> zm6e?I%~c%T5PbS7b~Z|KNEb9-38SGUgu&XX$ztrV0wMzKpk9R!sH&|qem z9-n}tpccQaj1xr8Nx)W+k6%_u34w)a=-6YeJq489@dl0-7(CX(z(7$8>!ghJ)K&uY zy9o0OVwDJeM? z7e(r$_|ZrM7rX%+iba`;s%n^NieLrIZ1{8?b%g~Cu-fK&YH&vn2U%HlGlHwIin5lo zHb&i54dH6%V&;Z`=%Qqha%O-4Ck0srcQ<(%H&0~)B|aQNnNL?q7@^=~DT}j}wbqld zl!IVg6=X$GXki6qEg>_gn>h}q>!hh>4b)3fT?weBtd@rgRs{=J7qS+#w$*^}Yiq-l zlyESZoeo?N3=)9AU36T9(0Gik0s;(o5GIJi)Z7IL3TSt{s)LX@M$S^%)!D{PpWvp3 zMC%GF+hR0T?43kZoiyz=JOtF$&0UZv8(C)oGYfMqQ4eRN7GRyCkf@silHdp?1jZ(d zLOE)Q;4Kw29Bj08P|7kk_AVAKcB*RTz$j(SE%7L{2f@jXU@iy4*xFi(V9;jj9+t`i z$|CM^a4npuwV(_FDvY<*fbt2eDXZ&hBP>Pu94%~-cHrw~9*T-GGU}pMmda391wAXM zrW0I4S;5u~iZl?G7vOV730vzbp#`nwF;ID7oQ9^Lxq`Eml?opOEsAhO8VK5`SZJZF z^n?gD<|sRYh^&T#C_zI-fghu&Oi`Lz=_)Fi&~h;DvRjx>B;chV4V;)qV^UlwyM?$q`9n~ z1zgWbMNnN)$kk3uUq{PQO%N`MAfWUSGU_NxcXLNKjDfr?Ov%k&N#EIAR$Uv8<(D@z z7Zib*Ib!Ufib`h67&8M$1z~=Ew6m2pieO1VIG{-q7k~(%EYSM$THuYoo~tt)=Y;TZ z=Es@25pcdu+~spQ8_mSA%vyAvz`{x!VMuSZ^frC zqGhjPr>&u2hSiZHXyRqe%;os4p=yq#{XGzR#7x!<4%LSuY!E^aZK$K7nhXToRznG4Wzg#2%3Q`(&H`@F zZ!V;Vu~gNEYaq?l9NpZsEL4;Uf=;&lFj-e84}vycRTHCQt?aI+Yr`+13FKhqW3TU{j2Fk-(-Ax4H1~t>tvUl->>DxQ-skw-#+bb!Wo6AD&G@)inaC28pb9ota zS>U@wQNp5dB`aBi3rZhtNALio2m&osw6@Vu#ArY?1e^smWYLxycp*`6S5OU003#e+ zJw?q#;Fg}w&M2_9tS~|pI21*DJt2L4PgN*ROJB%d1EHW{r^n}FCU5C(hfryH$pbeVO%F!GLhN|gV0LD8DgG*U{dksw)v=iQuGzVPOfKQhnt1g2= z*a%tZSZG_|f&u5zaS z&^s}_#Rar#`a>T1lsS!vs_S=Dlpo7KhTV9$8Y!%G?x8IE^-zhm%9%s&7Nx3`mW1o$ zeWn{KM!XZYCh#*7OK~HYo7YOV+NQ*tp=Vy>p6=gEPDv|G_VWdyYufgyDZ_v@oIQjy z;1GQ>y7zG?k4Xxr{kyvTZ2n{v`$gewA27_RRX^Ts-%1Xb)_*O7DZH?FO&SsaS5>TU z3QtOL>y@EQZb5ro17BkEmv#&AA9eH$+^?w@Lf5cfZnc$G0)RujcP>a)35ub?8}(4T(Jg5Lz}S z_#QMq;E$z}i^<3_gkZ9@AM_}IwM>}ky0=%}rQAct-@pA}y3XxwdWaO)lYAw-AuPYM zofZ}YCTcC$XC&RN?gL{MSxg9ja_h}8Hn#f;uPC;~6?lL)NX%_uO!#*miCzIKbq#9F z93=_VVLxrq9DG-_+d^hKFD*U(At0@1d#?_FUXi_*eu@7-ys54Nq-+^{JMag!PRV5C z861J}>Kvp^>Qe-$Yk!0k=eL!r`S~cb$x)p{xu>J+k+qQq3RixcJS3eQGgf+Sxv|cj zVtb!QDS{3v;dEXz9Cmp#(5l>j{9^&SVA2q3u>5??%R=t%ukT*>e|U+Uv{nB>O3~~- zXF2u2wkwZJGfr}|-4}h%UlIFib9>J}zHy6-7Dsii3S}|-Y+LHpR$v#xjGCo`YZU7r z=QsGD+}M$|f7{;W#_@SavJH|5<2a;6$K#%-rb%*E2g6wz4#iyEmG^*_e}5JWN`G6~ zOa%e!VrkCy&a#sGVpp5>TM#=|RGmSwZiO3v-{wdXB^0dOL~lnJzeZa5rOadHot4Qb zS}2zr8SY;b*}fxuoQ-a!T>ehXF9>pDvjpMF%)JwZBx3soxV4&4 z0aq@7Kkl@_(F(Mr)Mq6Oo4Zaz@owe_Nt zV7~0Y$R_qb=A$Fc7sNF6i!U6c`R)lxkXD#HOKVf3-g1U=l9P6!#tP^e=aoto{5Xq` z%nl!EzlBy;N}VBOST%QyH^lZ{FbRF8mq;)UNcq8<+5(i^e; z%Td4#gK73R{@UTrYE>uLm=?B$ev39_j%Vlg&O(4X1h=$kjDS>;BAe0P{jj$1#Q0yE z{V56m#Dla!t1D!!-jw@cD~EUG^NXfhptSG=#w+Xt+7y(@l0r-nsy`eBY29^sf2Vd0 zsykMvLqY&oWo5mCer;ywO8yiZ)BWj};*{$Kz=i#xT|28uGXQE*`9;g*s(Zj>my&_ zAjK^oKlOW+)%7#;m)OdXm7HeTk_&SQ={x>=U3XwU+BKBN?qu!5+gq1mHis^mRGtn9 zpy!gid8kG2{=M>xGBVLmcm`>Hdg|p$vMOJ1zk4>1?^C{FIII%chcyroGg_=y|49a$ z&)&I6EVqd-#30A0jC)CPJ&UQggiY^Ssf3u0TQq4%G( zua1e6%=zp;_;46V9JhSRfBKi&Ef@P!#cd=oa6HzXiBQ3b)jb;NS91&O#(TcHp0+`C z|3RbQOsJNHRLGS0l0uKMTp6+k9yuq}6I-L2lp1C4mID3m8*Y{DrCb?e)mm!d2X$Na zD6n6Edr#SUuO$h5?rlyUhsO^^rr3R5zTIZ^&i46ScCzpH>AAsIbkE1z_Bu}?dweI1 zD!7o(72kcCm^oQi99){4>b?l6zf$PcPynrzbm*;Ais|oFQbCqnAsq2g;8jp8ow&F1 zWkF=?4A=QS_LTGeTw$r+W|DdqL_4EzOOW@R)8%^9Ipz&=<{6SZ z_W6OsWpX#mA+-|5{5|zvKXsXwooVRG4=HSm!k_hEx#bO~e($Zj_k1iL-DBy~;8x#M zJ9*JCI-Nyg!9yg!?|5+UC9XTCLUsMH54F>p6?^b?`|`hr6Z<1;2)GF3&4qB0{uP~f z8ZqpI^DA-{H*0&{A)y*l9;hH@Da%(KHjGyszu5JgOcWcKO*6XK4VEG*vC3oX9|ZI4 z*Ni>AJ_)*9$tQ3-^**=rD>y&coog&MkfXlmYaHEK-_6fwON!+Vj(xO$hV3ft!Ls5^ zuB}ShL`X<2AFYi&llG=V$ta`#wcOWxIC$r&zkmQc4CaRztQA$lJVpPp4k42 zTRvZOQ6+?H56>CNN-i&7SsGt8h3)H)arwbNrc2dAO3YhyWWW4xb>d!!oGZExnc51r#4NOx&q*Fb z=}p68g&2|SSkq$gSz}gGv$K)c_o=1Ihto$s@dPhSVmpnBonyWE?E)@4%`m%se#Hg# z{(9YQqP5$wXMS`x?D=A}=2`;%^0PxerGeO<=SW|J0z?E)6nA%mu)A=?CF?Ep-m1GP zeu+8L1YBamV%hrALLR1Gy{iacM9q3dDECsLH@}8eGm7)tzEAt*jMl^mlZxVupLC1_ ztPh92SoJVT)627(vO*QF3uZ8#JYU?Ni?JFlWjsFkHeUlDxhCFk#v-*@ZV0(Jg}qTQ z*taTwnCY^u!W1ba@|$_ zEW0wFQq%f1!eDynv(WjNt^%B$Zbaxyg~mzaDWpxtm*LW!X}YBHsM#U!iSB2_p@GL1 zRv2%v)hkK1dym)k^?LfFn*KeYu_v?|3Y zPHe%=jfcS85jb5|U*75WVsXg$Tl3u)tLbK`ooSH_9~Q^Hw^*c^J52lL64g4sY2Qs~ z>Mz0_|6Z!SHvEJrRhTI#sN5)fWNUdYsby~Ch-!ln8aM1H%bhUZTR7r>&&ShWjbW`o zmx%BjFPTN8An3=46UIlp&_{p9Ag4yH$~`-Q6)<7>dG&*&Gb!pGT*vQ?)7;x!w!0hc z6J=mz+xje`AtwLBr+;9ttM(BNh1bqB3(QOiPg$v3I(DZQ6_hV97C z8k#fOtX1Fn-^=qJB4FCbk1h$x8PVA>UY;seESy7R*~rj;e;4R7hDfHyy3a_A&dyQL z3tB-s;zga`U9Rb<`8H0MV)KAv*dUW3w9?GTPB+({0ZA`1Yf<9Ck8q<(Px#_@r7gB0 zlW<`Ds=|e=8kI3@XiZnDu0f=~ zn?uwRe_CJoBEhk|Y__kkvhVts`h@ztWo98iD>6ez@1_*7r(tx`MdJc>)sXKweYRk9 z-HEeeUV>K2YHMzc6~kj*jx>d@h$D?c(jEiv+#j-v z%pP}bY&?}^7d_kag+nxhIITvWv;J;Z%zI)|IXykOL8|K@-^8 z>`tSv3sTJIBQDWpi^a!#uFgX<3`($ZYpN=1^NO+rmC`=_OxWiaj+`fmzPQEl#rU;* zH;k_dRX)kr#95_AEU%_dj1{UD&XAMOCVCgU_nRHRYD>mgs8hCLJl0WhZGNnUfBcJl zMNsn_?Fuokg&F%Yc>kSK7apejBzLN;Ppk1Lk8guy*aaZ^)Nsh!Z;-iKl|pPnV7zyD zVScXtBEx>Yv&dG9a6&#i_2TjaFEd1UT0XO#-qV3T;ha+dA~-&J7&TRBjO5GA9h^wY zIfXMalFB(|_{6CoIAW_(y)S+-yrdRUoa3&zcJaC6<>)s^$B2tE&P|%|NlDa^AMiMB z|C=pqjkL2LG=7Ht9{?Ss5QLHd1iQk}(py%=gU_@}FF1C@w&I^l{1C||cXfl7A0vPF z-CvH2jKY^g^QmIgC`aMl;&J#C9>Mx!a3wDoY{JUk{pTsdE{Zok3Q~jvPu(wch`Wo8 zNgC7yCC>5Mh_&YorVYY=W6y3Rg-MaWYMIXuc5kj&t-4sTul$R1{Il+*_n%lJJ=YuB zUL~H)et0z{)@$`_ZT);xq$7OOa6TxhkGE`*iMC?R>RL~!mlsmNtLbzGA~%e?QVD3U!91Pa5r9+gc_*F zT@D*4J!fRrb*Jj<*9^fqqGMueK_+D}F* zJovs<1;C-T+3pJwhHn{^Q^c5u0A!3EI_QVu;^|q$5f{FH=}*DcY)&uboVrpx^I+J0 z=|QXRv~a%iC4d?w?<|)44&pI>{o07L^THSsLY?Tj(IQC{5o65nNs?<+Yt0nFMX>rB zJ9OT@SB_mZPR1TQXONR}h_DF{PV*@)S)$JOeTomRef+wn(U-e?E!xJY>Y@>cbD>$S zqn}Ew*S`zeD#I*Iby1>3z31929#m<^J-?zm9(#_KS)!WozanV|$B`zE@Tv4PQ7Z zOUAAwd5eAD$C321w=4fBg3XWRKd9BMhlE;ZK6E@Ksx3!eu*OF()Y^seTscWU_k~l? z;yVe*ek$3&vi@4j#WC>Y6Y`#j?6RTuvHU#WHoUvUs_)=1Gf93%EG(z3o8rPq7`BIm zVHdOtMwHg>L)O;D2l-pS4KuV_51cJ=J4XmvUH|6(6~ta*Vo*3Yjh*t6+LZ#p)s+Q>l=e0of7g~{l!r|vpYGOrpyl?NE2uWk{tHu%+q~wyH zcMQ)|dduY)R-9&L_2@3}X|9x;o3m?Ei|U!q;m-4FmZ4wjJcB6Kv-F&QyeMEhxo@sJ zmbF&3c_Fk_uYw`sooN`#Uk{?O4A4{Hzfys{jd zD+Fn+@Hy?$>yzS6A1OobW;+$U%@(OGV)jz7X5hWT2M1st-uWSwR{t`^p$Ao_dbEGW4(-+7K0Fv~(d%eyUwClF z{jlf85P2&=X)UJi-AeuM!!}q#BqhXR78X{%qonEv$d4%YY^I9oHm*^L=ted~Uu&?V zIT|S0`?@?RmnK?ZZ(SN|`Dq3=lM@m8}Ill^q9o&Ish(}+m- zeveM9;Nnn#RnbsW@4kk$^Wk+-A9VUb;!kw3uD_WICqT)W_f0i##LqlijF)4XT)EoC zJuG$lG;hqn+FbaBxkhUXF4YLO=*?QD;~^TpuD8(dLtY-RI~ZdZW^2=(v0-m@@|$+B zyI}Lkj)#DdV6^>?nW^lpqWu~MH4bEm0_gyiYI9i){shC>P zXu@v4m#CsmMxtk_S4jdP*X#*Zl7ZW>1xOznCZe`JIOVE`?Q6hnFmMyjiyhaxM5kHe zaHfS(-2U0>6Y?)F4I{zDoLFIID8BW2QWe0K@vDB|iXp;QS0t zB9i+}oMdjAUD=(^Z1${^71PO2C-c+ zUQjU+I+oe29SaG$XK+3+oS!|#F1kp=8sC|v*K#qB8>e`|c}f-8YDXZPXApBl3AV)? zjjc6&twU^?&DF{-_nOq0TtWG+F4||H8xQ3iH&#};aU%SPwfC93ky#N&RFxx?EM?>eNo@>R5^MAZypr-ks3{fsy7wp0-E}vlqb~?~O<)pX z91j%0^5v`W*7stT6}NE)tHrK<{P`zv!ifnv*@9AO>WMt`dj#s{!Y8t0c_qx%D}v8w zq-meJU?BajeD-l1fWfa#;?GO*7-PoI=@mReke98D+o+(RAfxf#{-wj(utq8GQu zVN%LtfPhr+XrbB*?YFSf* zEVIO>oU1EuE0?RfTKb9YrA-}z+uqxqM|>%?4j zuay!SSqeJstkmO)u~cL6V>rE(&ZMC+@*~kjCwN_BuZxsx5Vl5GGW07SUS4(b>dIdV zd6?0uIG=xY?_8aPz2p7TgWnA_?h_fA$Ktz%V7QK_tnY|7_32Ot4SU{oaQD6wQbp7Z zb#miUR(gFJddHmw4j|~;F4HYJE9a9Fwgw6#+Txmo}!WMgIQztyXfhL>kUTB$v zBd0`Jv4}--4y*Tiwwm9P!cvw-JWr;`cfvrQxKYO&%%m}U(5W2Z3Cs$E?S%d)$CpN&};Nm|2o{-x1cZJ3}f8f^9SM zL#51?GpRF;hfI)O$9h$ zPQs>VnsgkfI@m)}DL@ve?SS7dmW3Pu=RX<#FuJA_9y70V8;4HTp@=s&oaR&|?^g%w zB(ktDY$r{o+N3Jq;fuX@kpBJgvvc3J&#wKC97yhM7iXQk3<^al6olT+oOpwj0*0dP zBJjUTEwFtcX>yacj$EYuVEXV^HSw2)3{+8U^}T)Pw;1%DZV@N+hxPuWN&vHp%+1&2rVGI zd*k<|L0J$KnY+zSjP3c0F9nNmqWqm8wP@@g1pPvKcu-X@e0{cc-(TVy$OvJ1WS?z9 zYd`*%s%;`B*+2;~P%HV!uL*y@3PA(bbA~ zZCqPBtn}~luXY4>v0;^NbN26=otz4E)7BPo>hB*f-v|29e~6A|xBC6ZG6C(NKnsV% z$7TOis~vr)A|1}eK7R7}@A?xGLvmml%0_?xct8Yv>?^1PIq`Qsf~`A2goH8<{{7>1 zMPM0@H}Bm1Ssd80n4b2oijwh6QPt3B(Ys_B)pT9p3 zsAu*?yjDs3jgB2w12Wjy0ZG@dFEjm}AJ}ui&(xcxX#aP!BnE)8_Gg>Fm$gY8D*}=( z9D3Gz?(h4B!GJ8-*(LuLJOGJTNNpD``eP^l!fCKLCnxaEA+(9Vim1PPd9ZH^`>qRO zH-5^g=-90n9twD-%RFUA;)Q~Jl$z?gZo#T%ESj(~h$our=TKkYaTM4%)JD8TNi{D{ zc5!?M2oW6J)Mx5GMfaBCj?s^8SxhXMsEdJ(9XoM?Q}?M}I5?D3%{C}ZwycjhcI?=f zv(c)jP7i%(vT*Te=7;7jU1#d?L-59xjV@84T+t6G-hNkkJm8HGP4+)=&PZConr3dz zw*@dBmLPp|LQlCb6?;Rvm6C6g|3g_ zsfZov*f6PZ(e32zGnWun=AGy-D_PJQc*mhy)L`7}ZlL4K|0Og|62JKF^{V>}{e)J9 zbJRjQ8~q-^RE6Uo_kj`%(312cG&g%=L8s}`(NsU6Ow!{An8bZ#xcw@O^DG-r)4Z1B zDi*4LJv~$)#Asa`!+gy7^OMWnsdrAikMD>ulJs7FR$$wqA}c3nxxPG$NY`Y)vKXe$ z?(bhg8N>uVy|K0w$t;e4U+(!m+3EAE#qj~D3aIOPTtocgT}qVS^+Qj!74wD)Myl>U zIc)r<>tNp4($q1`M$6pd^!+SpQKj}^Pf!pOKJ{$rA!Y0lmfjyQsyc@vt;r~KHgW6R zkm{)i;*7d3@_d;V8RX9vk!#r-$bDsW@wYp2jKl@6%!g@6vj0=qL)OMhiM{y9?|sW) zL=&Dk7{z>v+-2JBdV{ZBzzG^2&cYa7XE28eipIaNs@rj@N=);&PN_TF%Ia^j->?F2 zlZEeC@BZLDE*+?&lZ$#2gxfgY+Tj#O3|9i^KCJ9 z6hSbz%Nb2-LSQduD%X->4^HDp50e1FzJsIAYQfe7!+g1xvevB^@;)3@*B5Scc{HHH?D#{n&NA(?@tA0K-!^}4q{mfI)p zc4Hf-411*32#G&zteSavm1_<<%#cKVKic@3&i^#&RFMUu2rW~EaWsH{L2nNO6X!vc zxLE#c!uW|rl@`Q}$q(T=6W0jo2SH2e7fB4Mh`_%y!BOt?w^KI)Zut_JR z->r(AAm-Mms77*nElzIs(RBv{!T&=pkuc^A4|d!%4r0B`<$2)i+>%4G?OKPN(b@fM zrhWi6tp)Q-{HWuC5Y1~?dKx8YJr}!}svrjjtyhfFs7=zcEw71w0PR6ABXWtHuFq7i z4^CZD)jYYm!MM=#m}OiRsLL9_)ZKpf#(uV={M)sA0A#x0|LXMLo%XXTV9XmeQ7nIt zkp3iicjWBF{~@^l@6vw(4*#zVH$L?OzfnqDdU-gG$7yvQQ{ugnmw$BhXQga^aw!PP znPG@s@eW)L(2Wg#Ppp~_IT)EEn)`kJ;{-)-nS12GfN9q=vuh8}YRUSpj-5fhaC&^= zlJRBK+UD9!)liW5G_14eM=vp;dhr-AJfcVI?wKZ=5v6U!g|i3srXI+IMZAx*6sJ~h zvpg|b()Rv6ESlfqW<#`~l5KmsnQ>rXU_H*RC{HpJp`LL09I*ME%gY1T@;qk0BxCDJ ze=6W^%DJmMtq3-4Q-3!bgdT+;)q4>9>Rh#bIXL0<kO_HIZ83O~ z>qSr+9fbgzwn8TCX0pL>?nir;k~zBB0j@#o z$HvA6k!fl~8Ok#-H6XzAiimbkpdqCajHL9}ly;0_XIBFUDO8EfA+QT<_v!CgH8yCd zoBYEnUd--3{Yk*Inrum}g+nRmR-gCn-J<|b&gx4Ye}GRm8S;1`G1nI1eB*ioSEHJi zYzt+VK6^MNgODv}zxVh1pZvBqQr`u#`s$xY=3FcUm>@+$bEm)Xqb`U$IUK50J6JaW za$?zHLJMOoE^p9Ib5ynka^1Z;XTJ52fnjqF?}QgI?*B=*@2r=j&&*yM zK7B{P+n<`)bMhyi1bx?_Pgvxu+dn%P8RiqvO?U8i->utMrEL$Qo8nNs#^s|q_^r*2 z=fbF^*7OcP1w0szJkm5f2w;Am?TF_8S znbfD5(v-ZPl9Cd(GB*^KN4?XS2tcR*jz;|sbV-n5Kpr^VGeKfLyZymC4ERB@RnQ#s zZaq=5jIrFPOlaivS;>;(GiV$H%219G-0A}qO0)Y*|YD78JM4a3x5#o ze`@dhlJZ-i<;UkVQ%AMSOkYKw*OEh5zO_cd2uMC^!!ID!q%#7Ns3LQ!`74PEcTeK> zg_kB=$hx=MO-Hch%OuA%NDJj?>dAG4ozbYP^jT{V)*{|r?bc0{Bq=HIn-@Si>|sa< zE%o8U!p%8ER32J+m^P1o*P_=bR#_=PBJgeFW~(e7;AEq`cj?xfOij>_Vq+ z!HhV5k}n{W>gB;xypVurH(%~M%oIYg_dwLQ0`HZ%;S$3VmnXp=K4>1_@AcHEeYfKy z`G!B${?&b$4UYWHmhHzAmdpHEn&)4KT z%dMs-5^ryiq)3wia;3Er)0bBhGR=Q+CZA$eX@-VT7zR>9pQ8JaL!>k=YnvLyZHN`( z`j*8)e8@24SkU;`kl1mTmM02N9``-Bs7W>`v_(`9aG1XGlFPGijw7C%E7XG23=5Bl zGS$Ck;RCVnhQ!=5MwkM~nTMY;I1Xu!7bliCMP5pTIDFENfndy882GezZQSJKi|qKO}m zhU7}Jjed8YrRw(&A9OAqm)>nR@m79>%r!p7!os_U>QKmOg*(fLHk*S$pTHwka)F0y zYgqj*+I40rx8k$zkx^8hlWq#f4}Q4|MLv1m;yTh)>)!8Uz1h9hrXf{geM3D_vN!H@ zGfuB{`fhS(_<3D{-~HzscyJU=N6KXG2`+nkW!W%O%u)l9rG*tG zrnooJ&D@Y&c$AxeoRu)j?rQOVX6T@BaP>?l0Y(^I^@trIzS7t zr68=g4o0yw1C&2t0)(~6Z;Xj|^*p4sKqa$E^p=>y3{(doa*ZXrUN|RF_lUVqUj!Yg zb4TETMFJWLm!AZr8}CuNHVGtEKNu{U+{D$^2-`T;~pJ zU?fWoi6yMtEK$F0Z`lxM*P5)%J<=Nc=1lR6TxjOLO?J7P??w8(IdZEuOF!Xz>}#{b zro43?0jiz^15a81`iRs;pi{-vYWe8eFG)P9sGnq+BFQT}lM`Yxi5iJgewEaU{eD|M zsA30Z@(iPW@xJT>))Zob;K(6!SgkzPu@ZHYhS6%ea?-l@QOSN$J^#4+O*vMfkyh2K z+#(|apGPya(~{w_!iXG0DC)WS4bV&5v3d3Iv>5;aLx3ehr;ZXw9IG}uKTY+$+2A4fFezSyRnL#=q6wz#&2 z5Pf~DElqV}b)m5_me;5h9hT5S^Pf=Ylt~7S6jYMrf+DM5I1e@~AgGS8OsYu)E)m|` zI%?IKZmbfpi^P6K%H@3UHK}0Zx}Jo%xC_#kc;S38F5Z4QpS!FR!!d2CE3T((#CHP3 z4+)b(tEs~i#ipUjOR@;p9DiVKswpbraoNM)`hYty!cTtu?6kL(l;!?fh;#)WLuneC z;fR`BJR>x6;Dzr-DfZI~{voeasw%n$BXsM`~+J)I?W1kS4WP_a02vNR$LE@i)Fs#b>XpNY|ihuGARSB>shu zpvDqce>f?sKr)#VXoyY1WzVl5tBU+o;;LFfSojJ&p_;)#{hnM(H*Z`Vt{nFXx4vt! zzZeB-RPReB`R?4FkyCNaktXI`y?XU)IMVomuzmM?lDQAo1V;iZfB|hVdirg0gaQPO zFw$Wkh%_X#b!mf(tat|7NdAW_Y_wPW<1Q54?u|&+YZ^MNWF*ZHwXxXaC}7ulk)F@g zA6@rQxzv4z7aXiTjDxzC>J4^jP&OqrW6PtWV;*BK#+Jw8OWiKx45<~tlMUp5z&w&R)R5fOlBSpV$Q>b9$a&;V@Yt@* zHL79f=}*vTarc~t1c{!8v)OvtF(l_OtW{{M+k!hc#^JQFiUY~Z2cKHkI+@HC$z$*y zoE@GMqauN?p$Y`^f8}I)1ZaFeea(DR$uZ_2MXt7iY~bLA`3dtjT~&Tn7mdq5UglPd zGJS=Jhm#P?_jKcmQk^XQ7Q-rttwg!HzI5*KQqS*Js4{%^`pQV+@Z)@Wp+gVKVj^1Th+bhbR?>2HaG4$L0C_B&Fce*O%js0B8bH znG-lN5}*VOO6l0lJ^pYydzP!b{>9p$f)tB@HS#dZ3$EZE1$;X^{A zhNW&9;M75`GYiFm%rSg`?aF(*@;*VLEW?C&d&M9U^CG?8q7vT`4Ry6DaT^P@5jPA5 zHHEuWrK^&|c1Ed*V{=itMm;s&0BAk@_RZ<|y6y7Q&uJIPc(tBf$6Qf6_1hzuzgV-J z;BN*0YPk5mr1c`x{TaI~c1w^aHgXIT2!ZF3FnS>;H=er;hKd`8)=8y(HHQR@>WzA~ zbAfi+4!Y!V*Y@fTy7X~@jrxFz3I|4FX{n(UvFr%|ivKY#%E=3lptR7)t$Vo|*OO+Q zF^@(Munk@bZvNX?+HaO5C1s2!>$f|`vkSleHME?Rn)z5P{)!uaTuFilW5=&ulMUPc zT3>RR`_69x{A(TnYu7+_*(YN4KNP?Ru7QswMbAR0|C(M>{y!1&zl-lO@&9kO(~e%V zfAZUN;)joZ%(o71NR%?s%QfbCs+S!Ke3mjAoh(Pt5IHJc9l008!(;%{5M_A#4Be*@ z1=ucxET~A9)RNL5kg<}=9ktRH$9M5jz(Z53^@yl)#osE=78DOA3 zLKZN8@`F@+mPwT{$+D|97GpvEV;iI;;fkkmo?hc~IlO;?FIvM}p4*zPGlz>pNF_MwXA^?ybE58YhwP`;S7?Kapg!EdftR z@K*X5sR3jEyYXM4xc1aPlHM=AHYfJSMZ~Ndd^`qN1DUi&QR#l}Hb((Q_de8#*~) zE+g+RzCCCad57IIMgB30v1c-caO$ zp=OR06?DWT>RJQG`vaV$JVTmrP~N~V9qPwEmsrEq2{)ZP_M}iX~znY+kGumulzR<0h z4LPjXzh=+SFAXWM*MrY}ZHQ^;{zyvrzg7BgKIT5Ftydd6@$Px1YzCu9E)=(THLD-5 zX}n?+{>iZ9Rzdm|M4shmlc_$|ql+Pi0pRdk9R%x;PmNuNNmHB)ILs{e-Xd5+QFL58 zN!Eg-fyoEInP@7DSR9l(sb4X4tHH1Uu0q#*#%N}LvFvp=sc9NGD4C}n9A(8bbRG)- z_Uu@md9MRKzfTJ3sN7a}ps8Pd%VF7es~FpL8k`a>b_}1K-xGktgow4;91livE4R0Eah8*|nO_B%o8tss4E z4-G9zzW(u)`xU1kG4p`(xbq-Jv_Ei%RV`G#lw9@=BOSjQ2&bP7pkJvIM~{wiQv}g{ z7>r|?nSYU1Bb9fy#+PnX^mk~(DeIqn_9!gtOBID{>Ck%d@q%rwzUj}h zG{2lyBST7&e+y6k*5I_WnfGF0Ky{~28oJhGUyANEK5Ee2dyS=q)N#W$OF{V5Hkin= zZ^7f=PZ8bXkrrj>xy~g_d#l`AcT>bKAMzC0RLbGQ%{YIHm$Z!XsSiKCnqH&uua%|U zK##^KOL_k7>TEBG1M+cK((F>5H|;KMX!%IkNELKWp-WHG8kQ3)71FOov`H za@TaoG47_Sczlp#GIc;iU?~Yn#J|GZCLJ5o2JtFV_~^1{qa;b|(aj9#FqZ8Ulg$#S zQ2XE$7S?~~DqEmiW7F>C1;+h`B?P!0R+O`&jxJxuagmNWnUng}>s zU*Z0!V)}hLEcBAQaBVop-RxBbYmyl}1g5DK988Ey{#_2hReb^#%Ar`(3jy#lbr`J0 zyJ-A)Jn0Aup(_1<9c~oZq|!nGweL71M)KOp5&kT!3!=)qr&m8X@q%4iv`*xu9z~71 zNl1A~URS1u8|k+lU_9g!lH<;y|4R0pK(YIw<5hdg9FtQePGfoK+PGR_pC=q7Cfgnu zoz)5sBb5Jp2e-iQ)9^gIUyUo_rJwhs$F^~ak)}<~+@>g_M)hAR0J^&R$r-6B^|w0w z?vH5-Gia59@qM%(29sGXodfQaZ0oSPz1H~Mb3Y4$E)8$Xcl&A(oYf62CuX1jY7p{2 zkk#!iU%813#Esp&;LjE^{(mb7)~>}|_RK55v?-DfpYp95L*KuD&q;i_)8c2!3QS|| z9+$)}CtKl*a*p%OXP}vaK(k=_haofJ#;jts6K#%LAzZc-;0Lw!c!sfEo0fFLv7@ zQdH=^{{wYNt{IpI1*H(uF;==(QnFGoi_6x=Qawmg7_xc$e(IioK6oIf!-%kRNCUzz zPXLwf-P%w6c;z=zX`ObkQl~~q41=+(LpI%Hb}u5gaWCXVJUCp69?D2-$u+Jpm|snz ze_|-**#zZH^&6dof>h`*fH1U8FXQ$>9 z9np_Lwe+6u^MnMynTn;lTSqw>F1Dqo4c8b%1I)DT&YS2eL-ggY)p4)Q%xZQrOR?hx_B};F`K=^7P2D~|Gt1HKZLZqdEQ=GvsSG#9ju`8KBZ96x%e!k5J3m}i zjRFSI#NhZ#Ej<(-;or&*E2iwGDVHdG&3PpWbljV=(L zB-A~YGhFHnJ6Qk2!kj?caeA0iV&$)@IOikx^fb1R1PXF;azv%~$~=~0ZKvQTbz=Xw z*TQY+U2_C(^0!2i?Jc109Cz~Xzpn7x=iiioR{1drb%RpCAEEZ=+jFGuZGLvTe|i5M zgOmacUL8ztvHD}p-82^V9JE2)q0ZR7@f%^_-nte*d8|tJg?D%Q2MN-506fxGg8`KZ zVW1%9nnYfRyp*P>+ddoof7tuVuqeCkU!@ckQ4~;+QbJnk1_7nJV?d?5K^iO+q)WQH zq;m+BF3F)mYJj0*XgGT?pZ9(K=eo|P^WmH?T)@D6?^t{7Rlncza>=Iu@38wlXOP8di`M=L?wvy#U z&=?MI!EWR`w0xlCl( z(su`gquJXVdC}|vNI3k^0zjLiFYA%vltZkj* zI89^R*7lH5MSojLt{PEWV4<|X0Da$EC9z{%Oyp!aNf%1<0iZPMIi07CO%wz>_^4|I z#%31hufw|~c3rI^9X#`GVPsp4O%4FAJ721QT06cPcpy0P*ihP2ZQ3lu%ph(c`_MXk zPKux{Wp{GLg+51(Aw0mTpOfR5bdjMski^E50Oki7J&nk>h>M9Ory@R)ODb8 z(u3BCJ%_fupMiF*X2aKYe^(b^v{ucZBDaR_#f=?1yB@W(Aj9ElyCN%{>J^-ybZXcg zU*8$3Zf1~_(QQ@QF7Eic}AW@B%+F$iC`SaC3S=BKiANIji79wB`WP z2$IpV7Q1^*5?$JrdDrZNG*0SFLTBOolWoP!wbZZP*3zBEAR`zK=V-QuBV-WL>MmQ1 z<&s(7Y%N<^Gvum7K6jsTs!X_VsW?vwo`%!B{SbzmAsdEEUH4rFwlfX(K@ zI;^{D-q-p%zACV#MQXFRI8e%uceM5OZta8f%e+<}SVr#*)xln8xU!oq4hfmTcJ zqNAbB;vkgwmbq;u0hz|;a=lpRW^}1l1W~DFNcMnPYy9|V+SBjJMJC4yigi7C^IP%9 zSW=TT@tg(x$1|aeYc2c`(z4GzwevG|oOzMXr?1~Cz`BE3BRgUVPuY1`HCHSg)GlZ| zSR+=N44mwa_*R6UsyIMIZU3PlPGNU$v2Xv+Z9ZpdF+QN6=jQW&|48Hqh(Kqo^YFKg;(%CQL@MOgq9(MpWUNnz0g+e zkjZwtg@TqubK*tSh;r?7gQ(4o^7$3cQw&&s_ck~8%7-fc|0=y$N0C74-o_sB_7cHB zYCJNoyc9kTwdg&%x}|BAnA(sCP@Zg=A8PD-YPzD?W3G_&Yn>d-IGH(H(l7W46tmXI zx)hQBx4!H6ukbSki~hI4Sc&X*jmk26$Oi>MXL2(N4_ zZ-moFj{7;SjRE-4a=35f%MKRUjzAz8FOd;fc0*A#fS^8pHADDB=0U*@Sp$_wC*s3x zR>`vE;kgilY=qUGnSae*hn_9PUE$4nX7b0$uM603tV_%Cj^j-K7upbT44Ui+u-#(A zJWq2mj8;qGD%r@|>QZ!gyM9-$T&HVX_+nNK%d$jkELF}?iEYkN?f$!{tlJL!aW+J{ zpztA(Pr&%&QQ=CeGlP2V-8Re6`GCxGIrUS8f!^_7VSK3tQBcpGBtg;kdu^-5Q zsXE}}_(7=DR{8K$)2gcD>a4iw$UOE_!t$=oYf=r`nV1bOy?M7qojHIjm%u~eGA_^W zpySt7@2_EBhWLO>qg5;dZ_%ypl5|3p9A-W?%4<>!>Fe5CnqkGbX8qRdq=6=B#*dY9 zfeJXX5<-Dy`GUryS-L2H^_q2v(9!#sp_B{s;A(g;R2<>dYD#}?z|4QC^R4}pOdTiI z+GK=Ej)IskK5lTDA7RTAMA(6ui`s!`gbNN)d!U_BduwQO=S)^DF2G64ye}>7%68lB zR46inA=MKeLlOmFt{IO?=#X)LHC3~qy{hWfbsfW7YmgY9|2G98FZ%s2LxvX zBQXqh-$-H6ugCFhurE#)=QMlul`4drepk%2ei+5G=+Hwf31xRoJwhV7@ot6@tVjqZRjU{XqLxy*IWfFhh;&vm~- zr1OUG>zb2IyCSpZLG^@2?Zk{h-A{u~af$^AH0g2pc`=Lwm5T&+GiebxbQ0F$v`zz^ znk5mg)%>OcIZ8>1Zac&Fh$iVZDQ#9$2=P@n$JaGRZ&H@F+Pk+>6WFCx{c=v{JN>B) zHAZD|KSrfFe7+=cIR}T6)7;SV61#g_jA7nKRvX9~WQVFe?zHTc8kn!L_a%I~mbW;k z6JcFhSGNJV=`zKyk_?pfp(WHESL3lU?T$S`^AtQ~Y&X2b6*2v7Jg1D^<$XYZjkIfudU?c4!MYBz} z%ObmF*74dZNI!mzN-3y4$c6_Lp>Q|r_q-ckU667_M6aT9X{I@o9=30RdG80?wK3XF z*BSQ_R6Q9ld81RlD@LemReZvEmpif`Fl2W$GAy=z3-hFA@(B`H>Q@O{bQ9%6Fp3Pi zpN-4k_i-hLhPo>Hc6l&BnhrgO<;;0!st#+ASx=Mh&VOH;d`5p!=b#-8Hfr4cXfR8g zD8R5Qma3;AQ#DcWR`T1gm3DA{RjcO{U(Jo4mpvl^C$mflcx9A)eA-x7ZjnFsy=lXN z1qDuX9RZj9LXg|hMsty2CsEz%1^+Wo`Zqt_UWL$HHv40;o51j_pTvCm>eXZPUQk}u zMyTr+yfA!vGGT?P=tkmwW3}GqO8;4ibGGYVW&sDgdp$0{OxF4WjCjuzXKs(93YeV8 z4*g9c;9q)BC1&&>P=)ZQH=H|v3QFF0P9LUT_~pKcpt<@5R`&Sa^`Dr zR_Ho8Z$xsOgb|>oT@pAMX{vdez12=uQNW|m1&;6Cd-vi*AL)XCy$?_f zf7N+3GxB>Z+I%<*sem+RKDTM0O)B9ntnP z5A#WN)SBetgGptcCS2Tu*00quMrb5>Qs!woiEHZSp01_APIp5GzimT!LG9gq{{cu( zwjJ$n$vij!bj_9dos5S-6~ocJL{R6nkfO@{lwzkx|^a zuYf+YM-F;cPu}BHVWQhDwV)I95adfIdR9nRhAXG-1~@wfK&p@^p_NDITqmUwrHI-!UbR(Tv4CsI+WUmp-`|l)`%)*OV6Q-j zw&1l{T$=iMX zxY99M!!%3-9S6iaLTqN5T0yvn^6uTwW#Kw870>Ejy>^96YcFiOq{6760*em5^~R=0 z^bOpoD(1Dz*Y51pJ~RT~a$;f$4v!+Qxm!(hDncFIiC@3_@Znu3qKib!pgW($F}_Y< zd_*E$T0?(1H4D$wg&MlEwB=A_P5SF zZ1}!AL1c;EZuKFaa^<8?yzcn%NSjuLGGaXzn% zR%Gp5>C`ffHY1kR@JoA0p0h-5;W z>MT6S_cd47hIQLiGVcm@pEQ_ghoQV!uR6Z8U^znYk3f9`fna z2Q{?7g0}A>7w~fHv++IK${2|adew@l>ab127*tf70$dumza5F$2lO%<9Z{>8jop>e z8lx)C@VqA&GxdDehtxk*t(bSjcVaqYaAh^z(up&4ra7Pmll8*DWcz7Qq*y>C@Vr{> znCqyV%GUJTRcb^{ZtNZLo_v2VFlmBT2GcAXic-!~5X)AsdrYUA&s6Pb89wH`HM%uu z@r@E``7p5VcvEk2cn#a6fBUK{uM_ga@<^dfx*MPD>gu)^b^x;c&{DH*aD?wEnlL5E zU3@ZvJ08xwIyu*q{>5E!eqJ(!-ib77@8mwMR&7WP-?Y0{sgX}DZ62}OL&1FW@@}a} zMyprp2cp1>bIS@VP#-w*T94N64wicBe}~4TH#L}V|B`sl+wj?`6KK&wBzJF`n4pcj z;mL!oyZt^^Y$XR$l2h3wbLs2)dl2;myzNv9zG7e^p1yzCiUx$ zuqW*WTkxST_FPab4z|Syc_}^x?%}i1-7tyr9|WdI=T51$(s3h8zq~To6#|1?^_%BbU8jMn%FHb70fNE z$w}ec?TslK#o(h?$-`Gl``jow)GU^-eK~tDmv~Ea`2ugbRrv9tqtq~35B-g5fw~LQ z*7p0lerda2o*AXz$QYmR;swUx2L8c8gLNs#xEOGt>M9>iiNO@*CG#yjQ5COxBP0R) z4!4{9+bc`V=5pvLq$C~Unc0n2bb4rEMswR)p&{H-s@x{Xgv}nVtY>I3 z(S}UgjF^`n%ca&iY+<#UxP(B=E?v45!Yl3d*fqw~s;63d{c&iQ_rX5RjoFlf`HzWG zGW$bUBu;xeOg_q2y;w{huj%fPSh|$2-x|_sDP=OOL$aCrTK{5r!s!?T<|TsQYOO(u zg)m30D*MGW`QT}e`sEP`xOAR;<=ch*Qn9QYSWI*RkMrkJ;@yicq^F+fH1GI?7g3eZ)N<7Th0o->2fi22Jcu- zb<$;sV;AZQvJ~&jE*X2bM>0u8CoXg`1>|3RvrBt^{?1O;eBuKMY=%*5@pQ%!>hIUz z?*>RMz0k2suU}N6S^g}7V`)aa*yq!dYGXC(t6f_p>3*cClBo<5uZ-km0q#onLls@c zSt5fD>gHw3+$%37ADQ%xP;A7FvW2W@aWr;+MkdFyS@x@pI=s4?r~6=6Y~O70?xA}5 zVoe&+ou2P2%^hfrlO8+owORN@W-^Yby|@uRR_1|45;Lc9eM+tgI%dPq;aPqS%Grv2 zSWg^mvOGKFPo%0O-S1{eZ1EZ_5t6lfAG^*5HeQyIgPjjyRkLI@cq9_Vi*V((B*^WJ zVG`JC%pju-xg2x7!o!=`nIyp=z4OK9_d|5MW(s!^8xs>BbWoKOj@S3K^Izm^q!1hPV`2*FB`RYJj(sD zu69%^8WB?|^Rrq41mrv3U!Dt%tc^@Lv^ol$oHGlLz|V=;zl1rrj_%z_@6^^CCHxUA@>3z4~jlsZ%E%QOMp>4WM75bB)a$V1j?3JoVu5ag=)z!13_5~b3vmT4i=_gh9 zl{#&mXOS+PQgH|6!zv4cCsUBaDkRrH|D1O%i*v7fmI8GoPNv}lsDKQWqB2KJPxvYS zkWr$WDZ#T|m)fH-z}Dt);Wq20LG@-?`(q~u{@U)?)0U)Hy%kR+7AI#c7kBrH9Vfoh z#FJPO)KoFZm_?SAgUTys^KajVGNvD*kzTI|hHW^KRJUDaO|Uv{dz^~wbhhwPf)D0t z=SB2a?r$7|j zwB07HDDdnNMJ%&?k?k`LZcnK69X^$lSZFkP)>ceEjcKBLFf%Ayo}jrTLZK)}4(Qe& zinu{le8rwH2K5AT+R`6l((evUr0`VfpbPlt;D=BTT$VBx-@bC)CE$EqijQ2i!`-V$ z?(=a7IrLbKV#9KN35OxKfY{0#j2T_%*Iy_%@sCQT}xCjTntAWUjZd9XCfRq*Bur?$K01&ynp z###^+Iu{(x$IV>~;XySU^XCW6+7>~TwPuH-@$HT1-|w{hw!86P>7Wcc+% zbf0lLWK}9G;`3uasZ0&Nu0Gn*kI(2Whf+6g@e}00 zjnmDa**3qzp)xvISd81gljp+bh`57IqMfd3vuMtP$FM)+#O<;9(H>e}yOF0eqj~Q%#=cE%FV6j$cwAi~vYT{~i!Ff9P(dNl%Q_HL4>h@hF z!@NaLT?4Jc*R_NKH@7mYPSnz-CC5UbO6dp{YyPiR(KuC6dy}xuQZpoTNt}>pv zM5|4z^ZJ=n9)ImyeB6Y1K6w`BrsG_ew*t<)rO&BkQMCDG(I!@^`8pKb9W4Q{w;w*; zi{G4YrSI%;Id`FB;lq+4>8Yt9iMOO71t8gTl8hg7o=d<%m|H7vnH$Xa)OBw^87Q%6 zCg}TOAFuW*WumAYf6CJmd*QQmm5@^Z8$XVOxvjzX6XF+BmA$5nB^!@kcslviOkO0y zc`G3J%tpGq$G+i_&0844EtT@j&`!lv+;Zu5;9D${SQ_Xz=0q!!D7{#KDum*ctsj53 z^WEt4%=R6J@Ua0qW%#`vRXSUPXnM%k2OS@#eF2LENws5(04s^|hA-xdiGwMPj94H^ z@Rg*b&E;>8icEJTTVuJ4MWeFPpJ&8KhWR>cmRLW$EofujVQ0l>4Vxe~xU|j3`~(sf z=;J}wXUE0`(Ih6c#wl3aHB7v$a2j^$+8vp!TZb9h^=oEGiB#;MCS2dD`8zTLpKWZ* zF_SxvgsYTbxByQy|$-BkPguV7s!m!+SIC`!e2FYba3QNIE@ef%E4mV0k zyFGq{Ou*%cJ45)D)|dYNQnVdgmmjG|2q>V>vF$KTkFKgT$K0RqTSz)ln4d&AAYkIO ztb}{$$5oP8tS^_!6HbEA47=7jb|(f+~oeZDZa@9yoATS0u8-s_` zR_#EXRoj+E^ZC4RwtF$0z|GgQHiK-D zsXVNkIi}-UN*FaH)o?Sl(D7kL*d14BbK2~kWyB;}mJP{TUtXLv5hq>ar$Rx!Lb435 zdslyWTIAuFC9q7hhtxQ}C-CeDKM+$rf@*JH=&(6;l{*j| z7JJ!?)e33?Qf=SRaXhFp-Y6(?Jl5=K6oD*?vHC1ND<)q=#*OL^%CV*ewEErTLK`vL z-Zi10O@4oQ;jT2~LV2(zBV8jy(@ieC{{B$3?K?ZE)XvT-Pv_>p^p-riUI|sbj+U$w zE*sYY?>JIjtpFze#_}fwUA@?iiQuMAO^M;na7Fv09n#1#343GtWoDb!m4px&v-Z22 zIMkjj4igTHOb*BnliLR!=Sf_ts>?h$>xb`9}kD|T0c@LYwnoZe?d>Kx@Eka+PyPa(zD_?@r?<(`Y@+EqZ}$Y z=`shwmL+C@R_zAEbx#W1kaIMKwLN^jZEi;HuFEmKRgDl1dWd(GWpQ-!qasPeB$c?n zFt8X}YAX@h{_PS2qn6ab~-+A(Agd>Myw9NcdS_0dN#o|fA z{N`#)Qjy_+ZIp4m=jo2o=E-P5i&nwah}!Ydc6w&MU}FzGF`PiVF>Y4TjAkgKLFZ)q z^n%;^#6{=jB-w|f$kkz5i)htI2yfX)d<^bx#VB&Rrocik>Tsqm$E)h+|@+?T?8 z5V^U|@7=95WC3N}?AEN$I*4su$8C`u^PQ1Yl}}|SEmu|qm<4w;OTXEUc{;IXfu?>Y z&Ssd1)F`uaC6nkR=0V8hsGO|sV+(`rmdMnCMTv~XN35cY>q+Rzb0__|*G8%o3{Zx; zR>A8{KhN0C*QXRgXx{x*0SF^a!D9B#x_cv+mC=u*M<#WoI8KVG)3H`83uv`EB&&dk zkMnW_ZaMSX9A)wiRu``PWL>luBCVnl_2`Q?=O8OQ65o>>)84mcfDlcQ)tcq)-L4#t z#F6EIviI{D{3?268T|Zm@mx$iaD`=%cw~=aKPKjOv#uM@J^#(ls9Q4lIhDbBDAZzo z1Nwead}n0GpvChLAo4_)zkq1himml&?MI7hJ^s_BVqAlx>H?{s@gvKZ>3X8B#nj<0 z0!OLt`wg||RB{t&z13#KyrL&@xV4{1(L0#eN6Rh4y5`k(-)tGS5++E0YUmb>Jfb66 zLr_33h@MuRtk=V-%*vLFdOFrp&oA(la}+vAGSuxgQ>i@B5h15Q?Rz(SpCy~sfDWnq z!Q&{wU9sC+s`j`$I|$WA49U_O1S~&f>pPqhX|$Xq7GI{))2&r|^k!CJOQe;_?)dh> zfvaM{Ggjhj;}&ms;<()<2|5mYkSqh;q(1=xy4S^HPL{X@-P6n~?dF0v=jh%cvHas$ z-WuG53CmXTTgAJTHD{S6NJp_WV@N?pD{!xzha|}ipS9}<+NNgYyC-_nrdaa?`2 z+Zw^>bCbQ9;J*4-0cJ>9joSm~D)*xo35R%{%qKQVM$DznUr%&bTnsOU>`x=x{=PHWb?d5v&agl`X{2gxIyr%O4y@|QVrkX*vxfvTMu4~tlxJ;Tz)z;!qddTa;F{o3T-$@MJz# z{nt3Fsd8k`0}Bl2jcoY`j}HVNs;dHL6R%yaJ&P7;RnN>;ZI?7oWwbA>$rTtiOvHQH;c3O|c*La`Mj2)$lEKNZ z7$U0C=caS0#dB!KwpkG0jtID4JS~`Imgh?PQZPb*??7QVnolxnZpE%rA@1?bB`QkXeOv9l%}Vs-IB?gZzEw<5V$J-)a7V(+NXB&dyeE?s6ZVeD$Mh!uxx zU8@nUi2jm?(D->PeuX$w-PeG?I;cant3_ZTS%^5=lhFvNzozg%!M<<0bb0PW4SyS(qACA6pkm! zbeVK~Ps~?Y?XYPG?+kS3q(@y=Yj!g%EqBgXg%-?qKPaHTHui_uj`HpU{g!J0&MJ4e zfEv0F(ljiVV_e*J^B=|^iUr)+9JQ*Wa+k*|$k!^DtvyC+RW}0|GhmEbP*9S%Gabo% z9rSuLOjEqbr6mNvdTiK6$?CMgM7-Tc@o9&cz1YrG;P8c94@J=pfx`w238SI!NX=35 zt(;M8R$XIZ+QOr0GQ#UN6CJ1f(U73~9s(-T52(tc5DRgfZ(ATFJfo59_p|twh{pzd zugWE`ty)wc7wuC$aO@>b^JLPvf4I96@p#KK#B=b3WXpEN1*h}c-r8J+#_VG&xt%p? zT{og}dUnGMN>XDv%{ZrRk>ZybT@F>#-HpkQ;;V3?hn&TlYq)`zxG1xD@-2nMZC!}l zaof6sIgBPycO_ieBVU)}1`pHwyPJ4uSxkv`w-9ivzPAo6TZhamJEE7vC#AnU1d*#{ z2gBaIRQSQbu|w6><7e}T*3)8GY+d9j#m|V?V*8ot|1;Vig8z+dHuO+Ipir9a{=tx5 zU{oDR%4tMjy&=Gn-5BK`UhyMf3{gmVGJFhRHB^8(LKb<;bF87Kp(l>lNivX>KNWBx zp!f@-IGJ4{$@aCFT3%+_rNO^PoOpRzh#(+BTt%yBeGNaF!O?SyrXL z^@buW*Coqa2GXF@S2~+<*eD=N_`D~4&dGcvs=|;P~ zkr=T4#tx%gSU8b^?R%!|Fba{(1vuS2>-Dw5<179LLbdTM3Z`LQRQ#(JCh#lyuuob1 z)bm_qtchGd^Txo*%c4nqn0+1{OFW8Yeyy2zH3(2xe7#AXwFg%GORDgjONyYx)EN*Z zSO}E@z6RtF;DA%QO3HV?pk~t-Pz*>BFzcKF>aURU4Xx^?Jn{cXnwEb{15~8~z&9Po zlk}*g9hmNB6S37hB&qw9_XYDS=Cduq9Gj*{B3Q%0aNgWql#ImV1_X*c=ZgQ#Afe zdGz=1Q7lFQ8v3-Axolhj(y59q8@ZYd32kG}n#pgw?~OBZPv#Z1hK!J+Ye>9+Lod?< zd{;I8(}q`vc)5OE+{Jc>hKIN9JJl+jX9R6WFx+oQhUW}~lr-36d>9NbayU_pOJKK) z$i*gc94Nbyo{^1wDRrMJTvxG~DvWT{O=@bK)=z(X#@{VRzEE-|53x7Qnqkqs2-1pQ zd18iC=6A$!AvaewL%Y~>p^xq0okp%-YE4%gEe zBfyLooFw8yO{CTiFtq@S-a23Xv;mEnxlcXTQF}WrEQCvKtS;X@ivT7c0cx>_IG+H# z-W(9V$m-Rq_AbP3j~LmoWfRm@towZW?#Mcks0GuRtN?eR3L*_giJX-{Jz_?cNGVGOxBppaSFC{}HFU?S!YWIFA^D`h$k;ssZGso=({Fjo8y=g0jJajyilwSoL zkD22ZDYq9h5~3X#i^RhgV`qHdj{~|F4v(~kZ=l+I*ely{y?Ui=G*vlE5yh7y2~Nag z_#KC|*=f@PC^8zSY3aThPQT?yNh|ziN`94gJ2d503eopL&i5S2$dTpAy1M=xH95AC zJUgn2kXpwD`R%sOd<&O^Z*3*{q-iLkAO3GFqxG4qIZ(+-XE;d@XDKy_>>80k20zn{ zw#n6&Q&eOYan0Cn*Bxea)8|ix^4WKLzCxm+uTjwYctBD2@vcdYq}U@fYh@+jjWmzr zgW;!XNW6jT-&_h(BG{istM`(|5#1U{jk^ee8Ucv6MGZh@8#q>D$%abuqzY74Xcj(i zG$$D85o^!bvA4C|j!hZ)1}5{a+>vvTsf{SLKWV+%X)VBnaOHevJFG$ z9HCtAi;qnA^UdH3RfN%Of^kJG9?g%`qHg%+KoHJxB?&-sczhN>osEfF8Z16(#8v6u z6t2Kt;tIDWAWk_1Un-ZiFOEDwG3$Xcj^SsUJXv{9x*=a?AiMck{m%}Gl3>mxz?^1U zPYvx_+8`=~B_R*qq6ilt0}~E+{nS0i@}Q7sI<6T@nmn$% ztN0LaolwNb)M?XvcWrnte51Tl$F2>U0>1-2T&+$6L|mJI{6`$rL4n=*?jU{yN{*Ia zO7cv;e9{b&n7qmFvVAR1I<%{T}_@?;9 z9D34+_{B@n6X{JpZ7uYqAhYsi3og@`;41RhQTuzE_z2>dE`4*CA<7-_%1H-PD(ucW zY>H;zM&6G`SDi}s7Hk80q3s7xLV?2QrAjVR7zQ+H? z1^s<|g`T7F1R4RL51t!0YJ@2z_nrz%pr_DE5b^fK(3`9egg>`(vgkWRy>@rY2UM%5 zuHoVck^FQCe@|HG+(cfG-nnyJgA$^Tlu^=2?f~-k=>fb(e?ZcI%Pw#i$+@E2aOxNT zPWJzK-v7bB*Lz|xJ$c-^=cF4-qQyBZ*%^J}f5c~0+M7VJ_=XuQk z`sl~!{nx;{5G}>tIQ#Lxz9>RK7U6&U?@zmW`sLxVf9@sKr@&@M;rUR6E(}^_(kRq? zaB%PfYVcW109EIbrCylapQ#{{tyaKwfqAyXBSgV7_|(M zSXh)W3Lm(ExqZM6xLvB{`$Ta0DM4~Fpzd<_*=e{#Db%fSft}#-@3Rxjkm%h5RF~Z5 zTswT$RNfItW4%uEwo5vU9S;>P_bLXv#8Z8I|2J35)GcpNa4HFC*X}6kTtX37Q&J_u zSfTkpl7F#`Le~AmD`J1nU-Lyk?WE8a$-MS)QxV0FPfmLt8o%h^f2KO7%t0!y%TiGC zH%Ang@Dvyg-u3Ggz;d@2b*4pO^@3u(bh@{z(qWuGhGmBuR{6?(?qB$^saxkE^{>yp z)Qk3edDp9+{nCPiKjwV?b-!_xe39Xkb1kLdh!p-2w!gotuLea@P=wU#*;@bC7eKdw zA?9B4>^{M-w}Ey3>#ts@c}-n9gFA<2~eDZLal!7$tqi#^OBOWHt?frjJ!nW9-IW*ik45wJ+L@rRDw;nK|3_1@5I~ zWXkpihOGfk_)JDu<7k`GnX3BnmcN)f&K9BvtdKL!Ubs-9Ta>|RaG!??4IK(;{X$Zx zAkZa_^6#gEUyFj`%elBIHMBY3xgf}4;J!*+<`uA{Q$REXmK^?b%GZEUg*m;{#SUYP zh6Kd%(PVVR?&i2C+(wBjU&S5S{Y4qjZalWPUMW8Y(NY6t_mmCxd0{`<> zo#r z8!Ak}c?o<!&J_BUsTw?OMLA@n4K)BLz97`m`i3XzpZzy8z>p zm(FgHktB@^2_=Pf3dWKO19@@8a*&(?b14WeQnqh({cdaz^w&D!JE1i`xPwMkuY!7>1R^Sfa&vLjH$4wBcJ z`+!aEF?w1IheZeolJa*6@cpzxyzBAExro$PNUTc-);h-5?$hYiLGIakOp?n;d$Dmb zlBA=r`U|}Qg$v%9evz~Av=~adrI*`gx;+@UXqlVJ1N3NtA2fre-ClJN%Mlt^U2|w9 z<%I{vC6_aBZ>DiEUlmGpTp1yFw8jbubjVv?W8X*xff^Jg^;PGgJ>U8SBVT3em`1Q}5Hft$47mORI4=iJQ{*YTFQwwj(&LsFP$qPb zQtEbUn79N*1oLs@ojhL|W(_3<8(^)6d6k6s-d2QV*z|s}ct-l1s1JAOHEXe_AS|M2 zUx6i(kno8s9iCZxq0}iM2fpyp`+{N^8Sg#oJT$;R7K&ob1@`X>1y5?N=zF~Pr1_V5 zR)&kk02W`*XV`ORK<)i%`{j$2G~b-`GiDvX1AiZNV*opH>5IQe4QSL##`2JBN7ueOR61Un4m$(K-g^?Z z94dZ;+@I_w4$gOaqr^JS8i?o0@jei+=IxvO0B!;pC;lDdYCFY)|~HrP{PR=t&)c}g@GSD_!8$_qj1qjKdH(2#so}wpP)oi?l)GRI!7jKR`O%CHD z^c<&ukyB&Dp7VT!sU52H4ChXXg}fqBR3imJ{uuq_X_01c#^s35`$ePQk+(%eDD{k8 zT%{727@vZJFO+>*RHx!TP_qSNcSU`=*95G!?=p)@AH)^*St{RE?c`vr)B@n(V(ON=RiecHg`z2@QaP%EXLqX>cxI4h2yP>T=?OpFnpZuZy2PSa`9q4g6>&@y9Fr@tt=C zP`@)S>nMVw-&fL~@6beni}3&d`~UK)DJr3?;}CFL^fRErQFIJ^Oo=ddXzfq)n;uvY zl@?;Hzun*Fi^k_D07oN0XCpqcDE)1KlX-+FPP3ydlwFi`c@Qh0sJ_o8SkH_BIMVI` zS={oglE((W7Ai1uf!sT@g|4Kz6uv9M8bRxwJ&osa8aD;qOBb zof)$A!$7d&#y!G*6CzuG5K0hm*GI9GPSu}p4vPXd`#CghY(QT8zkkhr?TSx0l;C1a zz?8nzXL=KW4yP|Kph>%s^wnqTz+UVqvZUS25}fC85R@VlT|=74 z1M^p^K+lE$=d5(Wtp4d@0b@u2>INFhu;?{iSsbe@zQbeR^3Wgy%<$R}8bH4zB6RAu zdD3C5KfIDHu#7x)I9b0mBKg#PZxESnTdO-|0t|BDppAqS2%^sca^f&>?SrC=)RZOR zX8;}NiMj1k^1Shqt9vgZOs8PGDhiu#AgtM0kr`6 zh#qSZle8G0py7ow^YgGJ7o-hOVlqJ`5`D&K;Wnve!GYN z^o%gVKpx-A)ROKGdCounfC&tP348V59}Ql8F#t>1PD$e*Z~T1#t$~y8AYuL6as2HX zpKbejFfg{n=$N+Oq&dH&;mmjQk^;Le_0sj{1OqKVPw#XLw>Ac&jhq|^kpG8E zhFU#Y0`ji8*}*O8VI?B?rKREGjGB`JL_9ZdCBS8l>P}wx55EVsIQ6Y)Un^tBT;ge6 zC1C3_`K(t$A>d;R2d2{4fwLiV|?I zIy&0w-ULY{sTVIQ4yhABHxKuipOCdQq*}T3Qht38rV`xzm)ML%}iFbBXwxh@R6dcR1iK2l~>Y*b=YYE))aZd74ZX*9gv zxW4Z3xqk{G2-G~q05Vja1to!3Wy6il^Vv*#Tk^^$Os$N%VuQh;M@ZAEHr3|Z!qWgh zcyF!-D=Of(P@CF+y#jP5LUonvBIB`|;L|8I4F~@#x>^Y*-JcDWqf|QHYqdO5?Eq-kt*osMCN^?fHZjy^dJZa?Cw(KmgBR)rdO=ZW zI0QFhAMZnscpoy|Dtn2OeK?s$iE%I##c3VFY9wpYllAOa% zW+^sKL^5irg5wBZ%|ct<135$h{wFrK`UVJ`Mki3@U!b=F709-S0qSuHka|o5zWI40 zkvC^b??`UyXVUq&;JM}C!q05)SjU?$Ka`@lI?8j3ROKh4IeLE1Dh>b#wn>I*y)eu}K;8pYSDH4UoPxHYEN2VW=@Ysv91(n;*N%lOOK>59>@(rN;XVYUWLqe#e zMqJ%<%R!*vf<1=Ly;+d;0&SGazK($&9;Re#Ak*(lz(@z2CVU(=khY6M3V=wd1UvRw zsrY{ixwa1wKZKB<$4V4E>GAO(%Mj#WrlJ;#c+&45|3XOrt#W@I8Zr>cUV7y({IA0S_rf8# zBcWCuw|_tH9}oEx0{F+Te_!tFwE(BKMr?=mKYaWMT+jkT_iz5ooq!r3pn10LKWvKq z9~wNn$%ES;m*djof4P`YH$% zjeb=Z-){C){}+FqD*3Iy8#Dvy??VH;IKd!}^0l>0x6T9A2nsk5cCjm~0vj;9O2p@l zpSm=t<{ZCRDCcwBzZY6OsUDC}Mo(Q&aNCr4IXXVPPyn}Wey#V@P@WnAma$IEjkE04 zFP$uO3DprbWNPBQg`73qZ0w_Y{CkVKCi5F(jD>tRM&qASoB#6r6Rv}!%PRBe(O+kC zoy;2*E>Ms9T1Hc`#cnCh(EYVcSFa3vH3Ib@xd%5mep=FA-4{W^A}T$R{MW0&4Zasx zpZMriDk$Nzp$p@*(gD4r#A7YuUrZOkH(%p8|5QIhy=V+AVI{Z)e;eiX4i{(J!leLn z2o+EB!eE|O8X(7X^rjwPU7Q8~U2R;$08~l=$1_x0q2F%A3n6l#CQ*I*aA(8Z z2u@t`XU)1ufBwN#z_~9=<2^I#e=qJI$+pe~N~W2E1oKZe?$3wdJ14NrRVmGdf4%O{ zi^-?dfes3=;JFm=4-4k^U#x;L4&OeLd$3g{M zzaK;&dWX+tte?EGQ(4D){li5z37|Eq}=VvtQ{$v{I`s z8eSw>WT;UWZ+gcBLncqAPgT$l(OZuY8jfz9TaVWR&2lTsWxr>-4WRnHf}Gb0N`;?} zekA&_0wC}B=}H3t4?Wv=7$#^A8;-$Lxv(Qo`11muz`KYo!>mFS9_o2Aw4A5JMW^c^ ze>TzonvdjE+0vUiz>!k){FqcMe6;V)z(LL{mtP|)6AFK8Ft=$CY+>f;e5foCS2sBM z;2r8?@&_n~^a-z$)DLmGb1#VFzW;VjaZT=Ujhw2*2>he1Yf+-6RbCxW=7nF2bQvQJ zCuDvc(Vp*rs4wPqB9yf=c)+=)s@wkx%+i}8Xue3oTS3M2M_XRtgyC`7vS?FFYtcVT zx}EyJ+Pm_2D7!YySRz>xd6i}CNt!}3REii&2&L?8$S#x+hO!h{#+JQkkg{Ye%NT7h zV;R|!T?{j1ov~#9&a|ob&F}m3`{(o5Ge0xudCqyxeV_Z>_jRtzw}caQ$dFNjd%e6a z$1QBF^ionXi!zM8^*iNy&XY3``>vHbG^P;06p^hO=320 zo{arbZUDId%@(ztg$qiBAiSj7I1p`WvvAtcG0IH?AW_>Me{} zI@f&pfJNhfPu$SosV<}F7dozMc6tsJVi-HB@GbP=k5PGeM;0c%X@z7eyT zp#x;b7^6V&uP$-Jp&Hg{YzB(GfS?$usdW3D0YylC}majW?>$`5^09App?!L+Q zhm9Dubv(6f-cy=E*u((_0rz=$T7k;^^_$=P_7R9k{UaCo+t>d4pbuobb%&$=5b}e^ zK?2E4L~r#FHJ|wp&r1CWL|$L%6HEEUHu3C$eLTF}zvj^<9Ww*-;r}oEUxPF7{}=v; zxpw@2Y~iAR@vUCNu@OIn{AMdiJtniy{oH=5#eYlGX$yTf6KDbbtdd5+t7cS;K=;v8Mo-~!NXVVjqeuC0}6>f{*{|}Kqdu%AIokvjU@lsTC1;vlqhDu zJliJwtt=KZZa$3rXdyjXb74!(XLjgtXFC59sO(@@MT#F=UwtXEpM})FW62|M%_r(iOMEMuJq~aZh?VT#$Y=;~ zzn>CV;urNF$kyn+$3S>$DPNDS*Icjr+{_vEQ~HzYc)tW9*Z3d#>5=-mac|Wfr;E)d zP=%y!D_3}eMW(O6s@RWVZfBTP3ie%iKLtIgy~d57t%uBTek>$7K!% zDrKWR%0=rRC0UFnqabB6S_#6P=&M!xP?B;fcLM3P&j-14+D%3;izz&+?EE1<{IxMW z_j@e#wMaUlXOYDf-;>6Sg(|TpqwZIP*H?+yp!M5TTGDUmGi$vvOJ7>3A(z=(H99AW zBC4JlWS=>PGZf9bW4$dZvS4;Tu5X1E)pNjym}Br`iJ6W;1}TX&F2sbmMa}Q@l~-Y# zP~7V+FBo}wi>}tYB{bTrXzP51R{AUba~FkSW--#LlBw$ZL0JS5s?rj%!< zJgbO0s%Ip5)6fEEDf}YEzD+F3!KJN41VVEdIb01(`u~k$MyUuwqf;2hRry;L>EPBpLVv~ z*m-SNLgU`2JdQC~9*0PX_&}71Whv=G$msRd6VBoeHqmCX3*^Ma^9z#}#jyjGfyHm3EelBdt~b5`7?R7#gP0bAFDoK=V#Iu$~aT+Rd(= zRHY;8HXkOS%*_k*VAfegUqYkT&n10};>{wCm!1-8$@dZSCP~UxMpcvM_PA1kU*DQV znnJ91WxJMWX;GZ!tXj$Z1|J*rPhDt})@M_PJ_G?PqdUdW6SxKFFyw^wWZZg>QJp|- zWvk@E5Yt8+(8NSIOo_1Ts&vh=kr4$YawZM1oYQuWpP^Q}T=bw73EM1pgkE|{tZn{r zXBx;P^J8YMH!9kb+g;@#v|#TcH_-o0{<;IkaiuEkS46gkG@!R?p#RFO@n6Fj=*Kd( ztba#P9JLTQ*@~4gX6ON+!bl)%V9Dq6{wR&+&W&gK^=e=rZBVhP~HRXT3<;J@PHwOWc9ZYMJI-UTvq$Q+L z_)j?W_tnydTB$Sg);Ia%qj5|}f?$pP1nP&H`>(zc^h|+Tsw?UWZTZ!!Z}c4*3}QJi zCX~aUx(zZh#*kO|z5CJBg$`m$&9*~!L+^G)_*Uw3=7R&4KRS$zre8}eQjcpi|J$c3s^WHrD@J#F_ zgL0E=>?5SIXY#opC(9aY!A{WNEb`*qle(sjy8LfL0WAT2$c#He{B1e@`4vF522jH} zE6JN|Aq>C>UA4ox0ZRYlP$UDJU=J)w{#o?2n+@H0|D25_`KAdKJWy!gr0d;UL(LyR z;nbcn&nQxR#sMU%mQHFBS*pg2#QhZShA6-=6{S&Lu`Knt9W|HiW?y-WJXVPcBM-4# zT3%0<%BNCP0KEV;$~6GxPqd=c(k&E60<8QyLKeHc^GeO+0^!X9By2&XVp41`d|A9Q`YKv^ zV9$mq055Bw)N_gCdaTx6iJ^xCRw%E2zE^@CHCzF zq+90Ry;8dmJBJhr>VcVnr9YqBhwX~)0{8?P77}a-?m7|&%Ut)0Rau%9l5rp?lx1AB z^1OE14+sTtb-PhgI)Wd-0#ym~agJ86$d2zqOK9kN;P20xB()3LKa>LtN`iX-Bgi&QhnVqSR9$n;}um@~~QF;7{ zTJZv_gyyVZ4VQ9v^73oX7Ayi`IBC}6T@5YEM_5)&6%YmE0n@>ik4Zxllv4?XZwXCw z8&jg1>*c-?>`BGj;j1pimCI{;JUyqMy2dX$?dIYVEh4V&S?4EH)mu#%*>~-_JwL(T zuaS8wVK^(zrXEg7k=-ZPP?g#5K^bn8XvHQwLUQ7V7l2wtT}PT$lJ`_(TBFB!0K?XI zgje8}(}J{K;Y)g^22?G*<1LI^w4ZaL^UBeh(dw?mMi}h=UsB4t%UYQ}vc`<8r2X7a zKSXX>K6a5V77!P1#|+oT)@Y4j$w!>m0uB~-77_~Cjptm zc-GvinM1q;OLRejOGTO{B$ zvH8A-hj#O>w1vt)Eu#?M;s7T00xnu9AL!a%ZPl+@A}HaaM6y<9}rEwm8(v&U_RMwJ55p5kWu4;SC9 z6*|bf1>sWNmR|4NxOF4ozjbE ztI}q2i_0>4&(@U5llJ6zm3)>h?qhg;6ym!FtOo46WA_Rnj}L53KBO9SY}fh?K4g&2 zWC(Nk7>iCLjMR!GiCjBu1U-ti@GG*Ni0CpI+$2-T@4_I`NH zhIVdW(e)%e@pbKSr>RYq_D)yBSzC0MUbauqrvM4D-@r!K=-o9|!WfeAo%ROR-!u6Cn`j!xiKu2M=UK6N>R7anUgmiX?(bp_uuZ43#vnE_+2 zP3@s~%gLP>oA?+h)4sVFfH|3#rSf4GF`^a0v;|nHa+#Gt7Hi$i2y8Ss>yG+#drMuj zNH9uK6mNe6-+W|oyfUNR?nBi4f_rpsQb)JXh#7NO_^!joK~*!Ul}q!%H*}jv`+b}& zVP`WduR`T|PI(C`VJLrx7TVj)UON5!1?8`esKDQT`<~Me9}*g(w09;-rVdK*t6Qd@ zXI6^HmO7wlO;`pe)bs0WFJ@2~>tq~9Ud*tEdiuUT#anWr8D{X@?A-%LDs*z4^C27;ib&6P zf1E>YGz?2R?W@z;5V>S+ZS|hf`TKnkf1+~9GU3T%_jgMkfDV<2S--K=(UNYfZR`HoG4IWAz$m=ybJUhAfNbN2>6tSz zDVAr5AC+&CklTDF7$mJT(_7$L;GDof8ir zpI!5fxHLM}_?4mIhi9FRkp{%=j>~CzE!m^|H@r`u9=yGE5SAI!+aOln+JG%~?KCjH z0aO zhDDAeX=owzOdQaS3up=QO>^52PwKz^gFJ3Q8=T>31B3tbH=zACNFSfhQQuF@9A7ey zFW=JG{Rg@FG6Yk~rM literal 0 HcmV?d00001 diff --git a/_docs/stages-ordering.png b/_docs/stages-ordering.png new file mode 100644 index 0000000000000000000000000000000000000000..c4fd8e869a692639b3050a1940bc572309cb3ad6 GIT binary patch literal 12190 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 Gqy8IwjIkO3 literal 0 HcmV?d00001 diff --git a/_docs/stages-overview.png b/_docs/stages-overview.png new file mode 100644 index 0000000000000000000000000000000000000000..629820b86e3d8a5e7910d3d74f32e6e58182b41e GIT binary patch literal 16305 zcmcJ02Q*yWyFL?1NFqv#AfgjQ?=40h45QbOiEi{Z7-bL=LV_p}UGy$dqo?bgXh9-6 zL-ZiSe^0*ecklOocir{>-MiMcmYFmA?6c24`|SO`&-=X3ex!|nk)NYGM?^$KuBNJ_ zOGI=k864M;o&ldD{nC5ji`Y{ara)BQdwm)FP_i*rv(?lj;s(d0M8x4JA`(Is@J|Q+ z!R1-RM5n+vF`+CA@~^X}lCw_z>zJs9P_dbBTak$9w6T}6v6r*2Ey~G;h+SCmk0W*= z0ee?ZFLq%ib|E1PH#a_Ol!cv#g|jE0i;Wj30_UAwtx>ip8|y#n2nh%Y@(PIY3W(?n zNU{sd3krY_5dl64VKLJ`>RZ^^xcu3mD4zgm;HIX970SiS)zh9`SONT2bMdlq0^gt* zd}`@|4`c8zD1a0cMT&EQLwPqhCmSOhOE?PjK}AeJluwXPP!ycF30KwE)L<7<1jkM& zM;q`3v$1k?C0t}^|w2_`bTv^Q+tGysHdHZ8W=Pc2P;oeT|Wg~Pf?7crl=qS zE#Zu^5U^0Ua`muNLs&R^i;I}3Sy|ZW86&h@J)PjTmQE7dR*I4;zJlIPMxf&=ilTZh z+QKMJcO7kO8!aypVP79L9bF|6F(+jYw1A1av89!+vZD&h(pm>@0qUz6TS&r8ob>cz zx>nXYR*oW07)vjduY!w`qm8etp1i${wUvO7i>j%(pCL?9!${d$&B)!uTfolKz)wH} zrlBvUfH76KaB+o!#@yB1FsAapf)1K)2KM@XVvY_NVS8V1b$yhvpCMYv*hs~~#}8rU z?Bd}qFJ`1_r{kh2sx4_?r!1tRErK$#aTXObR#kUVM|p{0jMS}!e6&@K1Wnu=jZxOF zVs>Z`YkdqHC1eP*HdaA9IC`ohM6{Ib9Ie#d-GmgiOiZ1e;V$~BdMYYH_Cj`&BGx8w zF+!(AO$1$Fj$Ya}rk+abDmKFGLJImiHfmn--bQwCP{BY)0wrND=8J(ldBBV$;bQU{ z8p`VK9v*NFS5rkW!BiwnJoG)BbQIADO(Q)KVS9v{zM>&aPgC2#6s~V-B4&lQP*qX3 z6gM<5HdWNq5)%>?Lt9#Th)9a4X&a)fT-B_=t5I+?(6%wQQ<6|3%v%*T3k^kAXAy08 zWhWFy-`-N&1EFZ5rmy3!f)Il%S;M?kt#q99FenctRdshgEm32XvaOnzj)tQ#e|K$MC`!roK+2c^dwx> z!AVsGv?2m#En?&(0k`zC(Ng#E@|3qwLD+l46r9m+u42w^0;(b|hT5(Upf*a?N5f9d zNW;|7*vClC#{^>nvvpSTwN;l_xASq7R~9!gwz1O}^3wLQQE>-1(zJF2pI}@S^qfWD z#wK7HDp=d97{EOJlx)3RjomeVS1^=RFm-nkws#fth50&&5k^Eq9q#OFY2z#=DyRdj zg^H)1ri8b*ytTH0IL5}_*4Eq0R!K>b3t9h49rwmuS$dXD-qTQ8WVl{2tADvECMu0kdl zNjGB$5q&sVfC?rkQwMD~PjC+W0H0`#h&VWMbn)^AzkK8g>s^>ICH}R>e=m6O`%fb( zten0ozD`6WS*NBXukTBYOD9XX@^K`1;{sFG#mLvMNDHs&T)m}#pNHq5SxrQ!Sdzb%{XYGM`b|gf zf4Knqmh`Lj)eG!o^8aiJ!QuSRB9e0|S@wv9f=nzoGGJ5rElH2ai>$34{oAwP>Vr$9 z#hGUlU5`Jg694Yh{lRbY^YAB%OsbI6K0=w81={7$WvOdbeYYzYGyFTB!ftSB$!sbO zbQznstd3SB30i$>7oQ2x^OF2^!E0!GyH{GvwkKsibM_L1vOOM(#>@2OmNYjv1i;IX z3*E_9Xn4#G*}3(`jb|sv`>i9Ly~>0!aOc!czsS##y0XQahx_?8lp?pZRHOIy(VF^4 z23f!A>)vA)iM^YrArDxzwK?_DUsv@?!K0QuX^8+x(#J<}{r4z5s!iY$OShe-!`feqzS&byP za_x3SUg4SJlskA-YEq?w-Hbv;+domyqX_g=*n6=M^;%o(+2cwE1;3 zbHc~p@-zFyzzZ5CPRrrurhN}`8Z9Ju{L|{-_-F&SWTUM7V6AbZMaXGP;9#Tz%RYlW zD%)8ef_;i+NWJ+kaDR%^F3tTR18#MyvChmNSL01m9eA`S2H*;-N3E-K`|IyM>htj*P7;&#Z*v1sL}tK-CJhGnK5uGnpQ z$;C8J>**#;?UqoW*hst7`}N8$zIbwaF{Rd7E{h)|-Tc>1pO^dfBh>CXyu#xB!|7n+ zQ%!9*{JVu&F^_gM+kQOWe)e;^NRM+P#j$*|yJ9ng`CGczpxWMRtG4J2_XVe>)$+#P zNym!jHH@%mcgdZ)a=WxfB|1NCy%sIm-2}}UiP#Kx(`G*N2H#JZo$gbq1QqM(mQP^TaT{kafgq5sx|5jabEt<7c8+ zNiW9+UyP>_u@5!kEYnOC%Sb-K;aeWk*?wNB%f6{!Q-{+Y=w&mxe! zM4VOJR4s~3a*&bTZHeV1&^yfgaEg6>*J2lz-xdq%2eGJSu(eGa*|incyaTOj8N3}- z9G|>gRkUHfQdJ>Uyt^{8{p^;>>^JLtS7Eb`OsIT%_eRSR-?y8^_A9~5sxPE`FL7wR z90d0sJo?UfvXqRfm}a(~s<=P(oB+ImTb9)^arv=4T1Yrh zOw(Iv7n}aXXRCwryEXR(g#psbUYZM;$2**;sfL=(=GrsDY_6lCbm53@evZ9dmkS~` zotKZ2nz{^%ccW}C50|fsv_cQmBHbzH%j%}p14ctNwsu{A&c$oZ4Z`_rf^6CJyq?4} zcI%r7vZfr5syB+QH>{R>YZgxD1T{SB@8WO0b(S%}jpg=P%3$awsr6uAPC3%6Y=5(j zk-zv3x(;eSg!p4F?hxkUj)^gntdRaRs=ryQyIambZMAB-d4HP6cG)OTR?X@DuTUs4 z+2!F5k?jx4=@L_GFq$i=MS0n&U!Q-&tY#H`SusvQBG-_W@yX>H1sQ(D&rzk>jogUL z+f(b*B^4@a7e(h+rC+XGTTx6&&g8en7ZmChRS@-ORi@OW2w8o)Ajn#j9gR!(nNDt3 zLDKx_mEMR*F6ObF%Aaymq`7;9;$-mvUhnb)!kZ9&(tsUEFG=Dv=eB(qF{0D(DEWB# z42tBpQyj~HjyZ?7Smt`;CM=&tkEegEXg&5j>MmyQ*&WwE8|HP2Ik21qnq^ONPFAIu zUT3X(2$8W&>D^mbZgpM8*DcSfd)+wkD&4A=iMjvs*>t`Vl)Zqo1BPx!!qeL?xIA9t zibLmUQ^gR%bp)MkTm8QL$`ocXUAAiIndZrJtLRNJmoH2Bb)VMl$Cn%nR#SQ%#ZPZ- z3pak55b@e(p1Re(_G1aDelVUTe@d%Bk`hdxca()inT~uqpZOa$p9`Lu#4k^HLw-B- zTn#zJUQ74H3q&ejRnqIE)Cr8ev)ytsMK_dA+uwaDoiXZZkTR2Y zKI-a3=*Vc|bB59n5+;_P&0Uh3TC%Obz6tT}T=AySOVg%8)0Maz<0>S%vd8p9=Szmj zyAhAY%3V;-X&Qpt6S($#glxZ2+|P{{Lj#>h8?8u}yv**$MJb_@R!H)cEq*9K zfe6CR0^A_1HKCBD{S1Hr&n7@-9#dl8O`WEoF zl}y3d4#-sCh~!)YM^%1Y3U2S? z+VRbk!_n3>PXU9yQx_%P@P!#lqN{ajqQ2kztY2al9!yWt&+jsPN|#`lNG}nOI)`I& zLYDk~Wytz>`foIIHoQ%bcA{qbDisnJZQXG3)WKh1*Y87M=GYlJy0!GzAN~!Kfs>(*y zEu9FFzbYCQ@Yh1Hm=%A3ge%X(lnep#1F@%!pO~(Zt8)ojmm;W!i zU$cG1ttUm4fIu+#-BFv5kyk2#|1oLytHGPqxtOEm$Y*6|E2M~^Sf0>}*JgtH z@j1~_>J8{s4&e45E73;jknX?*3*&5uNwbjIhB*lZlq4@1A7rW0>2PXm9O*11$MU|} zT^;TE@aWR~w{XU1<5hO>#olz>dylSXygah1C0~INfGP#KsT~vBj#t|3wIxe>E~o-a zF$Vx&(vX&%`N~KMjlbDa(wI0gk+m8TK8{@=8}^K7kG0YO{x(u6>-iol52xq%Pfvuf zzkF$>yb6J*SK({=p&+?Cte1zyA1ZT8bto`RkhGi}`(sv$3g-BO4x*a&r~N&^gTqgb z@p*`JsR2IU$iWv#UFf&VBwK{(d+J8r!$@!!{gDSRnVGankDk7Ymvo*Gsh^GH$pygZ zbI01)D=Sh;W)_lniucyP)PL?UYYC`-Oed=Dx3@-no)jK0T%t^4qar9w|xM7NDerSaAFRIJ|Q{3CTCr z=#%u66{en0ke-8l_eJ-q>|>JIT;w}rx%M zd-pEiM$`7ii?+-T5h6_5r-<>)u%pyHXek)*m6)jD)sz?w3_m~$Dl zRIJ%aEe6pU<+muInCpoKBPMita zU?8#(`7V%LypE4Y^t)9=Kfj3xQMN)>1W9%wGBP46mw_o5@0LYPNep=i<=C@o6ivQU z>-37Ey1{=ff{K-hjF?mc`n9;Eyt1(myu1-a4jP)9rUY%B3wx5vq^%Fp8Q@obpfno- z2At&XX;PvP9I3vYTx}|!{}HaP>mfP4_0J#QCfPrbkwTfSK_(b$kPasoJfW>&^?R|h z#U$C;$ZS)&1VP1)1x64qx?D*nXi*5j;QvpLJ!P2VtcV{DnjC})3;8Y zx$siY8bjn&&;69QoTM5#jUF|x&2$JN*ZZ*>)fs~&)9Yb&G$Rc&Y5kBFJ!^_sgPA#I zc!WQIN*z6Q6KacLcrO;kyw*>6LSC*Uz5Z-u z*7*b<0oT;)6}Y5oBew<|2xhn1R0BGl zpa1aV0k;B_l#Mh@vz3ixktq(W?x&@O=dS2L3~=EL9RYJsVY$wewGz*%%Df`4@Inq1 zWA}`3brz&cNdm*vLJIdl7nW&OcqhPx1La6{8eYPMXrZu9HZgH_7s=2Cr3 z$~GBeYRkKz+3-{~^LC(RSa7xi(-#sDLfCwJ_n^{cN@{tyD8A~!KoMez#;)Y-Tc+4J zsPPV5{hK5$Eo3aFU7!8*BdQSVBc0ohpKmQsH~T-1)Y4(5B!^76)|@n4@8{5i`zw1Ns)~D&H0L2U`3d>_jR&!GQFK|cltl8F$uX^xqdihuXYHwA#VhMZ!T z{F~1Q90dnuVZ3C}aR9A^Tb77@Kh&$_&hb6Ue6cK?;p9dWW_z|&F^yOH@N^(GN1(2O z;Z9Ul@#(jgP@Oa6M1c;~zy+but~^t2@!pB=Ke4^c#Wr;eT?_`~O$c=mF-3opJe-Qo9? zn~PPP128)Q;GIu!f1QbTs^?@BO83-}lg z*+pr3AI1S9UpK6 zlNhaHND@LsQp_2QEy|!U`i&WxM8ORm_|kZJ!5g}cIa#xliqgPk1?Xh+})C*gxiHfzIi~j}Si4sGd(Or!4Md>wx#V%>UB}uN9R?XE; zy70U%4f^?>aV|j*K{aKsEZ#a$^9TSJCLhRBlJi@S37Csn9Kbv{hrMK+G$uiR zP_?}{w>!ck#k(8HQy%-^JWVHXt8-&kF*O@UGJyKJR8jSFQSJoA@RC{aVMK=9a&El! zyD&1bw$1NtU7$C7GeIZK`0`d6JkB-fk^yDPI`#->w^6^4;z&*Hy)kXB5_5wWH&GLx zENs`AtsFJ?`g?Rdpqh;M>gTA(Us@=#ln1#1R;ddRQOZFBw9?+CWb~Wy_(_Q4a#|m+f)%?LCEDg3DAx2VdhFOS9i@T)pRFCkSU9CcCiDu_~Ac0_n@&T(i7GpM{DYzkc zth*e_rM)c7s~v4iqBnCei=XEY+U#!f>C@2Ljh5L`?b9&Wb!j=UtpMIU!~J$M4KiTh zljBHnqTO}LjW3>kyN`uYc>)`T)uVR}F;U*MrS1w2GTe2WS)(Q1`Tux(wwdwdXPa1akzRozcb>aaGq@!N zf3&}UmH+Nqx@WKC9#(E}+%6MG3;T>6Y3jawZ{rbX#t**c9o^LFHpZZ}Wb@$W&t-S~ zIWq$)_qV$E{Q=?HV0Tycdmv~$!`-(zioa#-4#0xEsnd0!i`5z#fLu*2cYiG_yFT_R zXB1GF$h3a!nURdpPVu40bLuUCrA>gNH~aaQl8SMxg?rcaTMWAT_I;^Ii}9xuU6~zd z38rNt`o2S73cn{k`2(lW=%1*5E%SH+{}|=|)%pa#pL9t}M(0N0j*hfPA!{O?msg(z zN>@jRSuy-#&EoN9OwbsW8pHUIa|6AIJyZA%ze0v5B8a4Gi(S#NAOtp^_FLtZwk#4~ zA^l1&{)H(MdsuX>Kz}-L-yAiR|HKP7F%pfP_z-_gd)8=g%!M%!Ri=!bi|tOskv_cZxU+w@W?8>aKJL zf+fD^`2HbzS!fY5TJG3)^>J}%(MCDJTo=X{4Jq%YNTo`zzs~u!SJ!$)xcDZFF|az| z_+SxRxwl=I6J42UOEN5lTDj-Y&s7D;*d*EB1?0$-yC?&B18x(TSf})9o33XjXH6J1 z$X9+w(+aC}FO}f$?jkich6N1@OhXZ^=3t_Yu>Axc=o&Yv}*9}43G0D9t z5tjM&9MQXPwB!!vLeAc}NuZvWo{iD9{Mv#`v!ptZ7v8OSq*i8HBSHt(Wnl?>0*uqiT`XQqzbg**$1gLdAWG%e?+60m&b(R$+~ zgE6`%7hyHDioGsJKa)J1ZYsJ|P_C!Xi3p9h29$TRrP#r%#_kOFPqda|m#EV#Q_`N@ znDPDoM9A_3X(ONRsKiP``<#TB{5C(vYpZFyH=Y2wb`uT}a03Nwpp=2FbH^T=K5;0F!7Zal&Wg2Z2WWu&2qnRm61%GZ?{pgyk?6YD=JFtN%GQA%7d#VS->sU(C;plz`W8e zZp*{Yqm}fA248~sT-sro=gC|(TD`3NWcbO0fV2Due#KT(POu@3=~7OErs72}T<$_1 z{W05FbMa!E&*Xt|ip0*uHA$ih>Ikl5gF-ia&Oy>CX@{`}v)Ec^m33y7y;Us<&o`r*S% zt~@ZKEL4a3?2hb};EX4Q-!cHtyZ;1qU)<%(>5u@>{Vn!(y!<7% zk64o0O|AYb&|}I72(h^|^@nnc8PX3=iSXjlHS36ERM7hH={P9U9mqrw z7@^d%mmk9aj&F&G_X%_q5~fP}cYw&57Y@I1b#JP8A3o!TBG~}{(y+kfl^ytn#H-5Q4+)?;1mE5& zeP+QLku0QqxUzB6>PtafGyA+1?0d+7@^a7dXCr}Dv!9pF@@ z<|nwMvwJyifzvN<1qx6sPM_y*(ms6LK?OO@kpN)%cr7NKP@v zJo5hzpr1|ewb-#Ps_Kzw{o7qy&k0eOc+5WHbV+JwjgesiX|KukfZLqeDMq(7w(4n) zo>IuJKL{RM9AwJWI<@^{=k2w#@qCo0ArsN&-aFZEBqoKjkbkVhEaX;6G6CyxUGiOe z5w4rjw`i@u-5IWSZQ~<0?A7O3$txjQIM_XeE%&vwuJktm&JRgR`8fk5TF=>=4v=3d z0co4#U-11}%nZuVJ@#7EQ|bL--5@fQ-X}1gFff>xydKc0BtaHJ4TACnqRJeTuhvqA zf`GY71St$@$D)f;OH7#c`o-GDzEX;(9GWTZFD>5JHa-JLEHglN8hhlN+6}zO&CoOC zo#JZiVEsg@65(}~UbErYLO>oNFM((3AmOR7Ofp}O*P^h7m`$}8DqlKNhzg;=bRI1H zTlc6&s7akPZM8jd<`q8pD_h{k@#|BKcI?ID-B6V$bnF2A7JFr`2NWX~o(o!Wr}KYE zx*_Y=&Q*}cVq}g^Of*>x1o^3u2dYwDD3U**+_`^2Ic)&t(DAB}!Xy#V*T>{yKMAfMS? z`5L>Pq^I52S2qE4NW6rQV0Pc85B@HJlm`rqn8 z9uH1$gRD`PMK}Y8mK?qsU(Om$$Oz68!2P%P;gg=rg9A}fS9#;UM@u92rhJgU6VL!q z?PbgbrOXiG1=#f-7e9|F^k@em#S`Iys~I(I)7R2ZO6nXgyCXghxIw360%24)?N_o? zu<&A48@#53n_d4ANz+#>u@he6ieX{%Q_fMZcw|=j<8Vrtrs62NbOE4Zxmg2IJ1PX+$X4s(F z$x2B@>5DD?)%~E8qnW+ct@*C9OWr#Ju&(|Wit_;Ehd*YNy9+{Nxnu#0`%cqMCd1$S zR?F(<2)=uN$v@dEWi3V2v2;71b0{xov{!cD3_!7kRM%$|w|_zb$@HRt=YgJ<>`3&j zm0rIU${^76UV1JzcWz^OOV?yXaF`}k3wQ=X?y~;)aCN@4s<(1}K*nnr4TK6}fm39g z1#Nenm+0L#o!Wgx=L~H^M|y;w#J+# zK_|zRSiBzwM15u7iyS$J$A`06{gUqb6$OBzy~Y!M11SQq?*=w9e<)v*etDv%1pV`u z|1Yg{g+`F8A9Dl=q}CuQoLzB~m-@iF2j^`js!`rMI-}T?oB0UgiT{N2Jpj(PgW9g? zh#ozLF92f?N9Wf%Pa3Wa7Xd80_Z)4ydqu1>j1X_bm<*80;9XZbDt`dEmswR1e;fPW z=GE-7W2=Iuq4!JY`a$0MgAv|Fub^thYY5n|L8<2}X2(D}Qs+oJB6tMeqcZGv$wU3+ zC4Ev&J%G%mYz#-AThj|YH5q-Sudi=>R&Pk0zp8ds8hu&FpnqThEaLHtYsk^wUmcv8 zV-+jUi`VE9!lkA_;GX3NN!~Hoi5g>U>E|D*V=o5|auZCjG1D2D%x5iA->nzknia$y zGGp|JWsOPjV5ng98Ka(W{>y zAs+Q-Wo8EMCCiqtXY#$%d}dP6&JnJUSys8dLbR%HM2^HB2*}*1&1hcd;8zyw z3-boASICluZ*AXzo~BTPslFl`Sz9UJs_()YK;XY(K{CS1pL;9@mwfr?0>U;r3>{e* z-P`ppDef(G(NzK~R|ue}BFCV6z|VcY3s^yr<>MqQ&!5iBOIm=jam)fdvUi&S`Xaho ztDy8y9(G}u-=KfFQmRbT$8jX9f_NZy&H8XZ9}esL7yg!()fkm1*4^BwB0JtdVh(D# zZ-X4h+9$b&3|(<~?eKnz<*mWhx+!m<>=-rosiD8JY^zA;b#{ExwROrRKWqO8Gvzg; z=^bu1WhUQMBt0tTG}b?@w~ORXF8TCLnq*dm2!9{@=uT=u6Yx`Jw zo7}NHpQ-zdtI(55sl_DH#A=5C{L@zk%XCTwLu6P2Hb2sMUp6TCa(MBsX2-IvG~oP; zt4*{t_m|M-(nYLw1~WYQ8=ATWCgMA47Xf;|5}5dCy|837=LQJb<>ymTfoIqOuD0!D zAMynhNmOm(Z_i*mAs0d843V#C&D!Gia<&9rn#lhheO zhrT$k5scNpm&HbN4pM!jt$#^D3c=Klt#;JdCq5XHST8L#&UK1Wd8rO!}{_`(EW0vt#IgN z(xnM1vExSyn!0C5U&G#@@v}Ds*|^z=Cy>mjxT_@UaOjciy&)U;9es~~aLGg=x&Xx9 zI&HJ{TU+s;c$@MPz|?|8_K_gh^w*Sd)@6Xf;qu8c|0J2i0LiSuonrY9tbOw|z~H*t z929?Rg$N?Z92`#@ADRFBA6Q#m9*A--Cv=?pTLL*4ssV(6pK`OgIR1{c|L?mW0!{Be z*k0^<6LKmKXzg?j4L>nnP#8H=J>_teF7A4l>yR5m$jjbGkXM<@w_1;Xdvq}bLj49y zSYQV}g@F3y(#t1gT5^F=sPvdu-;{}wyB1bVZr?bv=RbiecvNe5Um8r6rJx$zNBR93-AhoBAch3%;DEre5Nr4J8R>@QH>xezfY=>DyCW9a_E2o zc|AB^+VS93rIViOEcuRbY)AFOh(#&lohU-${UfmMH?NuuJ~{s(IcbtFBA1Rc`3Rhdgq^PA3=kzojY z`}Q$hIL2GDhM`d=<(l(h5j-5L*7Kn18!(P!$aH4+*C052XC9>5`UKj)$11?-Ne_vR zl>fTjC&#Z+nM;^g(0+aq$nS~K{s3f7X&k;ao#hlx+kIxZ0tl$_9{cFqhfCG&9?dWB zy@g-^ykEop3nY)`zNP>=2xj6PI4KYLQvz)+0WuKZpzI08Bx&8$r}(|Sfsm$wpmCfA z*`xb*qJVyBG>PZ<0wj0<5h=XgW|9Yn+nf*?ub$~3%;(n{pal=yWtbR9jJOkcXC7c` z(|-ZA+5f44nUn;WGi+HAi7R6&a`_Q zqd^r-TajrVom_kVXiOQh_3m#{8{pgdenpBz02j5UeZP~}*MQNKBQf#s6(Zp_bl`B7<&1$4c4BQ>MG%|0KX5(7XyjSTi5(C&n zKLFgf94jF zZG4ZBs~yeW;r~tAB!4#7-U8%uzFFmya4c%>1+vmv^q?)qRIW3Vlq(?)s*M9YPt?b& zU?JW#oGj)u$H5l(ui1gZl2dVgqPP#>DQ#KE(3K#PwrVYj#{i(qS#GdsO;9gNMbRAq z*tO$5=`8M_NvpGi#jhec2VZY~qL&p`fBtiwQD&!KF@sjL8tLdEG&G+Vy$lljzu07j z5AD-G1FCLRdaIokhe7KGa_W6g)#+9G^)~dZKZBIl%bAgm0Kl~4HWzwQ%c}4|T*p4E zGXDn?mHhe6Umglrqep)j6fF zAfcq5TYYkT#QB+jr30v3xZQaV-bma{%x|VE(4`ZxznAm;DSV))gbrvOSzMcUpZ)qq z5%h9K^JC<~Q_UX*FAw)~JK+T_DFcS6$=WhT&BsIbF+HTVvuQzJ+eSrGuw$;R_&K0w z*=>!aHK}Q9NZbNM^DU6HQZ@Sy(vt0ui4JXeICtQ-xCh1rmkWG#Zlp#RJ@d zqXEOTfdF0M7JqJj=P}pXp9lPMA|YC>wETE3`F3E#1v-&-7u#IKGI%zF4zAB4A}#r4 z(fQ9%oe5lnKn?5F;duj$UkK6RX?&bw)winzd%CylDU-PsV7gKs9B%@hwZ*@vb{g09 zGQE#LH}8JF(TPQ{!lm5%nI{hFwH2PTX;+ z{}^MqJj5tD%wXP#UbSVoU1gzVIpL7ku7>>8q<`B$#q?QA;8EoG7_7SiE-h6A#BGn; zr{~*Rm$IWuLyJ6;$wNPsjwA^8O62GQUb?xhwNI`M=uowVLFV@`Z^2OE0-?*3K&x_3 zuGaO+N4cEonDWV6ScHLxHjFhQpd>=)Wd$J_mlJc_l&|%dhxC&gpwSq~FVmy(a?X~r zPCkPcLMQ0g*8uIp(4~Uo#g9c&J%1> z_$B(Ms{+=ePQ{fxo*PO>~&& zc1w*6OeSa=K;X0blP(FO0-Sn5T!T*~gB%LzB|MU5f$}S6p7ieehiuP+e~UK06F**V zE-knL_o}&D`K$zZ5|3`dHtRq}@vzMQ1%o`npk`jiG(Qvj(F2d`^5yk;$N^XmbMV-sP>!#Wcv7bZr;X`m+|Ho;_fL-`7{_601F z*0z}DgFwuJT6U{48_9zF_>`aNkbTQQgP4IG$egMzDS50QqKsAXM zPL;CpVcwO(&eNmwB`kbMP|60`nPIzj{aG3ju41megA#I@H488Pa=G#}&*}fNK_plh z;MDY@bA;UbU!f``7U0@%6^iP>3H}w=zM%!>z51u`|FsYpCQ>7a8IfcbhO6N$mEsfgDS_y zS!4MGTF401SQDm7#PPER;0r}jBgF=2om0)Vzr{@?rl+khhLnOYJmi5CtY~p!RcUC07KxxEIf2sX#U^Os&-^J|*WSnEFbu z47v0Y2)7gJ3j=b{cH*Lk5_$@cKuN*RE^i zMPnZ!CUe*ZI4Q;O)Ofl_K4h;LH_L<68TtOul+}=eEIv&jW&w~#)aBI7yd;)N(4&Gq zJzRywIiN=yxmx)t5o){(H(TZ5oBxFUkeAP8_na)ZlF_@N6j=zIRtG>Vw_IBe@Q0TyKrNCIjyFGeIJ0&QEV8x<{tot@Gfud8cpZRi1UkOOi9_QQ^C zRL5pKGf6S~A2PpPm%v~K5&PJ*pyPw=JN?vPt%#G_2MuE}2lGkcgKzaCmuSQ%sCA)P z+#xqX?%!tCznZiVuYJ_EjjCQr90ZFAy_Yknnt%1TOA@I98#F+!GU7*41~rrkLQ>wa z!j0Kz-nRyv8xVai*S*kAyojeRUQrl(P8ku2eWZr|So?e|X3S9bw9j)wTiyosyTp5h z?NMMGO?wP>hqWHKsbUpCkT7X0K=x;XT4ex7DdfMmrY-$E@&aD>-9tq~%JyJr!Vdh* zM|SlH5Y#A`VIpp*K}5%6aA_KO{Xl9WZ8?|&qZohfo?`}J?$aLD%8ozwd>2ki{6^=opXyq$$wM z;$cTm_c&W!QF2l7p+&C=s#!XqT~q`rqzm#?yu+ZcFUoI+`6NJ@*I=JmlRGYau0Zl% z;zT3>f^TfycN{2B2%G!>78-0}s{@{DuPQs69!N4bzh6r8t`dxw49d8nZSk|qBY3Q!wFh!PEO%^ zU&qg-uPC}20ZRgUG+A-t8)+0~~aSNId)< jjG01695{f4eDmaNj{&c=?Xf-)_)}9xD3vSRyZ`?HM4^lv literal 0 HcmV?d00001 diff --git a/_docs/stages-rpc-methods.png b/_docs/stages-rpc-methods.png new file mode 100644 index 0000000000000000000000000000000000000000..e8f1e7967fb55b851ba58b4f4a3769a6c303c202 GIT binary patch literal 19284 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

4?3C2<0CwcJRX;oNzh+43I!?cqEnn&I~NcwFs^ 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 prost_build::Config { + let mut config = prost_build::Config::new(); + config.protoc_arg("--experimental_allow_proto3_optional"); + config.bytes(&["."]); + config +} + +fn make_protos(protos: &[&str]) { + tonic_build::configure() + .format(false) + .compile_with_config(config(), &protos, &["."]) + .unwrap(); +} + +fn main() { + let mut protos = vec!["types/types.proto"]; + + if cfg!(feature = "consensus") { + protos.push("consensus_engine/consensus.proto"); + } + + if cfg!(feature = "sentry") { + protos.push("p2psentry/sentry.proto"); + } + + if cfg!(feature = "remotekv") { + protos.push("remote/ethbackend.proto"); + protos.push("remote/kv.proto"); + } + + if cfg!(feature = "snapshotsync") { + protos.push("snapshot_downloader/external_downloader.proto"); + } + + if cfg!(feature = "txpool") { + protos.push("txpool/txpool.proto"); + protos.push("txpool/txpool_control.proto"); + } + + if cfg!(feature = "consensus") { + protos.push("consensus_engine/consensus.proto"); + } + + make_protos(&protos); +} diff --git a/consensus_engine/consensus.proto b/consensus_engine/consensus.proto new file mode 100644 index 000000000..2bb7d1703 --- /dev/null +++ b/consensus_engine/consensus.proto @@ -0,0 +1,163 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package consensus; + +option go_package = "./consensus;consensus"; + +message ChainSpecMessage { + string mechanism = 1; // Name of consensus mechanism, e.g. ethash, clique, aura + bytes mechanism_config = 2; // Configuration of specific consensus mechanism - format is specific to the mechanism + Genesis genesis = 3; // Description of genesis block + repeated Fork forks = 4; // Description of forks (upgrades) +} + +message Genesis { + types.H256 chain_id = 1; // Chain id starting from genesis block and until the first fork + Template template = 2; // Genesis header without values like "uncle hash", "tx hash" and "state root" calculated +} + +message Fork { + string name = 1; // Code name of the fork + uint64 number = 2; // First block number at which rules of the fork activate + types.H256 chain_id = 3; // Chain id starting from this fork until the next fork +} + +message Error { + uint32 code = 1; + string description = 2; +} + +message Result { + bool ok = 1; + optional Error error = 2; +} + +message Template { + types.H256 parent_hash = 1; + types.H160 coinbase = 2; + types.H256 difficulty = 3; + uint64 number = 4; + uint64 gas_limit = 5; + uint64 time = 6; + bytes extra = 7; + uint64 nonce = 8; +} + +message BlockHeader { + Template template = 1; + types.H256 uncle_hash = 2; + types.H256 root_hash = 3; + types.H256 tx_hash = 4; + types.H256 receipt_hash = 5; + bytes bloom = 6; + uint64 gas_used = 7; + types.H256 mix_digest = 8; +} + +message Transaction { +} + +message Block { + BlockHeader header = 1; + repeated BlockHeader uncles = 2; + repeated Transaction transactions = 3; + bytes total_difficulty = 4; +} + +message GetAuthorRequest { + BlockHeader header = 1; +} + +message GetAuthorResponse { + Result result = 1; + types.H160 address = 2; +} + +message VerifyHeaderRequest { + BlockHeader header = 1; + bool seal = 2; +} + +message VerifyHeaderResponse { + types.H256 hash = 1; + Result result = 2; + bytes finaliseCode = 3; // Code (in TEVM to execute at the end of the block to finalise it according to the consensus engine rules) +} + +message HeadersRequest { + types.H256 hash = 1; // Hash of the highest header requested + uint32 amount = 2; // Number of headers requested +} + +message HeadersResponse { + BlockHeader header = 1; +} + +message VerifyUnclesRequest { + Block block = 1; +} + +message VerifyUnclesResponse { + Result result = 1; +} + +message SealBlockRequest { + Result result = 1; + Block block = 2; +} + +message SealBlockResponse { + Result result = 1; + Block block = 2; +} + +message PrepareRequest { + BlockHeader header = 1; +} + +message PrepareResponse { + Result result = 1; +} + +message FinalizeRequest { + BlockHeader header = 1; + repeated BlockHeader uncles = 2; +} + +message FinalizeResponse { + Result result = 1; + types.H256 miner_reward = 2; + repeated types.H256 uncle_rewards = 3; +} + +service ConsensusEngine { + rpc GetAuthor(GetAuthorRequest) returns(GetAuthorResponse); + + rpc ChainSpec(google.protobuf.Empty) returns(ChainSpecMessage); + + // Core requests verifications from the Consensus Engine via this function + rpc VerifyHeaders(stream VerifyHeaderRequest) returns(stream VerifyHeaderResponse); + + // Consensis Engine may ask for extra informaton (more headers) from the core, and these requests are coming through the stream + // returned by the ProvideHeaders function + rpc ProvideHeaders(stream HeadersResponse) returns(stream HeadersRequest); + + rpc VerifyUncles(stream VerifyUnclesRequest) returns(stream VerifyUnclesResponse); + rpc Prepare(stream PrepareRequest) returns(stream PrepareResponse); + rpc Finalize(stream FinalizeRequest) returns(stream FinalizeResponse); + rpc Seal(SealBlockRequest) returns(stream SealBlockResponse); +} + +message StartTestCaseMessage { + string mechanism = 1; // Consensus mechanism used in the test case + bytes config = 2; // Configuration specific to the consensus engine tested +} + +// Test is only run by consensus engine in the testing mode, and allows the test driver to inject the Configuration +// (which includes chain spec) into the Consensus Engine and reset it's state +service Test { + rpc StartTestCase(StartTestCaseMessage) returns(google.protobuf.Empty); +} \ No newline at end of file diff --git a/db_tables.toml b/db_tables.toml new file mode 100644 index 000000000..a23bf28fc --- /dev/null +++ b/db_tables.toml @@ -0,0 +1,49 @@ +PlainState = { dup_sort = { auto = { from = 60, to = 28 } } } +PlainCodeHash = {} +AccountChangeSet = { dup_sort = {} } +StorageChangeSet = { dup_sort = {} } +HashedAccount = {} +HashedStorage = { dup_sort = { auto = { from = 72, to = 40 } } } +AccountHistory = {} +StorageHistory = {} +Code = {} +HashedCodeHash = {} +IncarnationMap = {} +TEVMCodeStatus = { dup_sort = {} } +TEVMCode = {} +TrieAccount = {} +TrieStorage = {} +DbInfo = {} +SnapshotInfo = {} +BittorrentInfo = {} +HeadersSnapshotInfo = {} +BodiesSnapshotInfo = {} +StateSnapshotInfo = {} +HeaderNumber = {} +CanonicalHeader = {} +Header = {} +HeadersTotalDifficulty = {} +BlockBody = {} +BlockTransaction = {} +Receipt = {} +TransactionLog = {} +LogTopicIndex = {} +LogAddressIndex = {} +CallTraceSet = { dup_sort = {} } +CallFromIndex = {} +CallToIndex = {} +BlockTransactionLookup = {} +BloomBits = {} +Preimage = {} +Config = {} +BloomBitsIndex = {} +SyncStage = {} +SyncStageUnwind = {} +CliqueSeparate = {} +CliqueSnapshot = {} +CliqueLastSnapshot = {} +TxSender = {} +LastBlock = {} +Migration = {} +Sequence = {} +LastHeader = {} diff --git a/p2psentry/sentry.proto b/p2psentry/sentry.proto new file mode 100644 index 000000000..9b6618533 --- /dev/null +++ b/p2psentry/sentry.proto @@ -0,0 +1,160 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package sentry; + +option go_package = "./sentry;sentry"; + +enum MessageId { + // ======= eth 65 protocol =========== + + STATUS_65 = 0; + GET_BLOCK_HEADERS_65 = 1; + BLOCK_HEADERS_65 = 2; + BLOCK_HASHES_65 = 3; + GET_BLOCK_BODIES_65 = 4; + BLOCK_BODIES_65 = 5; + GET_NODE_DATA_65 = 6; + NODE_DATA_65 = 7; + GET_RECEIPTS_65 = 8; + RECEIPTS_65 = 9; + NEW_BLOCK_HASHES_65 = 10; + NEW_BLOCK_65 = 11; + TRANSACTIONS_65 = 12; + NEW_POOLED_TRANSACTION_HASHES_65 = 13; + GET_POOLED_TRANSACTIONS_65 = 14; + POOLED_TRANSACTIONS_65 = 15; + + + // ======= eth 66 protocol =========== + + // eth64 announcement messages (no id) + STATUS_66 = 17; + NEW_BLOCK_HASHES_66 = 18; + NEW_BLOCK_66 = 19; + TRANSACTIONS_66 = 20; + + // eth65 announcement messages (no id) + NEW_POOLED_TRANSACTION_HASHES_66 = 21; + + // eth66 messages with request-id + GET_BLOCK_HEADERS_66 = 22; + GET_BLOCK_BODIES_66 = 23; + GET_NODE_DATA_66 = 24; + GET_RECEIPTS_66 = 25; + GET_POOLED_TRANSACTIONS_66 = 26; + BLOCK_HEADERS_66 = 27; + BLOCK_BODIES_66 = 28; + NODE_DATA_66 = 29; + RECEIPTS_66 = 30; + POOLED_TRANSACTIONS_66 = 31; + + + + // ======= eth 67 protocol =========== + // ... +} + +message OutboundMessageData { + MessageId id = 1; + bytes data = 2; +} + +message SendMessageByMinBlockRequest { + OutboundMessageData data = 1; + uint64 min_block = 2; +} + +message SendMessageByIdRequest { + OutboundMessageData data = 1; + types.H512 peer_id = 2; +} + +message SendMessageToRandomPeersRequest { + OutboundMessageData data = 1; + uint64 max_peers = 2; +} + +message SentPeers {repeated types.H512 peers = 1;} + +enum PenaltyKind {Kick = 0;} + +message PenalizePeerRequest { + types.H512 peer_id = 1; + PenaltyKind penalty = 2; +} + +message PeerMinBlockRequest { + types.H512 peer_id = 1; + uint64 min_block = 2; +} + +message InboundMessage { + MessageId id = 1; + bytes data = 2; + types.H512 peer_id = 3; +} + +message Forks { + types.H256 genesis = 1; + repeated uint64 forks = 2; +} + +message StatusData { + uint64 network_id = 1; + types.H256 total_difficulty = 2; + types.H256 best_hash = 3; + Forks fork_data = 4; + uint64 max_block = 5; +} + +enum Protocol { + ETH65 = 0; + ETH66 = 1; +} + +message SetStatusReply { + Protocol protocol = 1; +} + +message MessagesRequest { + repeated MessageId ids = 1; +} + +message PeerCountRequest {} + +message PeerCountReply {uint64 count = 1;} + +message PeersRequest {} +message PeersReply { + enum PeerEvent { + Connect = 0; + Disconnect = 1; + } + types.H512 peer_id = 1; + PeerEvent event = 2; +} + +service Sentry { + rpc PenalizePeer(PenalizePeerRequest) returns (google.protobuf.Empty); + rpc PeerMinBlock(PeerMinBlockRequest) returns (google.protobuf.Empty); + + rpc SendMessageByMinBlock(SendMessageByMinBlockRequest) returns (SentPeers); + rpc SendMessageById(SendMessageByIdRequest) returns (SentPeers); + rpc SendMessageToRandomPeers(SendMessageToRandomPeersRequest) + returns (SentPeers); + rpc SendMessageToAll(OutboundMessageData) returns (SentPeers); + + rpc SetStatus(StatusData) returns (SetStatusReply); + + // Subscribe to receive messages. + // Calling multiple times with a different set of ids starts separate streams. + // It is possible to subscribe to the same set if ids more than once. + rpc Messages(MessagesRequest) returns (stream InboundMessage); + rpc PeerCount(PeerCountRequest) returns (PeerCountReply); + + // Notifications about connected (after sub-protocol handshake) or lost peer + rpc Peers(PeersRequest) returns (stream PeersReply); +} diff --git a/remote/ethbackend.proto b/remote/ethbackend.proto new file mode 100644 index 000000000..d3e309a09 --- /dev/null +++ b/remote/ethbackend.proto @@ -0,0 +1,63 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package remote; + +option go_package = "./remote;remote"; + +service ETHBACKEND { + rpc Etherbase(EtherbaseRequest) returns (EtherbaseReply); + + rpc NetVersion(NetVersionRequest) returns (NetVersionReply); + + rpc NetPeerCount(NetPeerCountRequest) returns (NetPeerCountReply); + + // Version returns the service version number + rpc Version(google.protobuf.Empty) returns (types.VersionReply); + + // ProtocolVersion returns the Ethereum protocol version number (e.g. 66 for ETH66). + rpc ProtocolVersion(ProtocolVersionRequest) returns (ProtocolVersionReply); + + // ClientVersion returns the Ethereum client version string using node name convention (e.g. TurboGeth/v2021.03.2-alpha/Linux). + rpc ClientVersion(ClientVersionRequest) returns (ClientVersionReply); + + rpc Subscribe(SubscribeRequest) returns (stream SubscribeReply); +} + +enum Event { + HEADER = 0; + PENDING_LOGS = 1; + PENDING_BLOCK = 2; +} + +message EtherbaseRequest {} + +message EtherbaseReply { types.H160 address = 1; } + +message NetVersionRequest {} + +message NetVersionReply { uint64 id = 1; } + +message NetPeerCountRequest {} + +message NetPeerCountReply { uint64 count = 1; } + +message ProtocolVersionRequest {} + +message ProtocolVersionReply { uint64 id = 1; } + +message ClientVersionRequest {} + +message ClientVersionReply { string nodeName = 1; } + +message SubscribeRequest { + Event type = 1; +} + +message SubscribeReply { + Event type = 1; + bytes data = 2; // serialized data +} + diff --git a/remote/kv.proto b/remote/kv.proto new file mode 100644 index 000000000..1ee34111a --- /dev/null +++ b/remote/kv.proto @@ -0,0 +1,88 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package remote; + +option go_package = "./remote;remote"; + +// Provides methods to access key-value data +service KV { + // Version returns the service version number + rpc Version(google.protobuf.Empty) returns (types.VersionReply); + + // Tx exposes read-only transactions for the key-value store + rpc Tx(stream Cursor) returns (stream Pair); + + rpc ReceiveStateChanges(google.protobuf.Empty) returns (stream StateChange); +} + +enum Op { + FIRST = 0; + FIRST_DUP = 1; + SEEK = 2; + SEEK_BOTH = 3; + CURRENT = 4; + LAST = 6; + LAST_DUP = 7; + NEXT = 8; + NEXT_DUP = 9; + NEXT_NO_DUP = 11; + PREV = 12; + PREV_DUP = 13; + PREV_NO_DUP = 14; + SEEK_EXACT = 15; + SEEK_BOTH_EXACT = 16; + + OPEN = 30; + CLOSE = 31; +} + +message Cursor { + Op op = 1; + string bucketName = 2; + uint32 cursor = 3; + bytes k = 4; + bytes v = 5; +} + +message Pair { + bytes k = 1; + bytes v = 2; + uint32 cursorID = 3; +} + +enum Action { + STORAGE = 0; // Change only in the storage + UPSERT = 1; // Change of balance or nonce (and optionally storage) + CODE = 2; // Change of code (and optionally storage) + UPSERT_CODE = 3; // Change in (balance or nonce) and code (and optinally storage) + DELETE = 4; // Account is deleted +} + +message StorageChange { + types.H256 location = 1; + bytes data = 2; +} + +message AccountChange { + types.H160 address = 1; + uint64 incarnation = 2; + Action action = 3; + bytes data = 4; // nil if there is no UPSERT in action + bytes code = 5; // nil if there is no CODE in action + repeated StorageChange storageChanges = 6; +} + +enum Direction { + FORWARD = 0; + UNWIND = 1; +} + +message StateChange { + Direction direction = 1; + uint64 blockHeight = 2; + types.H256 blockHash = 3; + repeated AccountChange changes = 4; +} \ No newline at end of file diff --git a/snapshot_downloader/external_downloader.proto b/snapshot_downloader/external_downloader.proto new file mode 100644 index 000000000..ca245a3ed --- /dev/null +++ b/snapshot_downloader/external_downloader.proto @@ -0,0 +1,40 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; + +option go_package = "./snapshotsync;snapshotsync"; + +package snapshotsync; + +enum SnapshotType { + headers = 0; + bodies = 1; + state = 2; + receipts = 3; +} + +service Downloader { + rpc Download (DownloadSnapshotRequest) returns (google.protobuf.Empty) {} + rpc Snapshots (SnapshotsRequest) returns (SnapshotsInfoReply) {} +} + +message DownloadSnapshotRequest { + uint64 network_id = 1; + repeated SnapshotType type = 2; +} + +message SnapshotsRequest { + uint64 network_id = 1; +} + +message SnapshotsInfo { + SnapshotType type = 1; + bool gotInfoByte = 2; + int32 readiness = 3; + uint64 snapshotBlock = 4; + string dbpath = 5; +} + +message SnapshotsInfoReply { + repeated SnapshotsInfo info = 1; +} diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 000000000..9c0e43c20 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1,166 @@ +pub mod types { + use arrayref::array_ref; + + tonic::include_proto!("types"); + + macro_rules! U { + ($proto:ty, $h:ty, $u:ty) => { + impl From<$u> for $proto { + fn from(value: $u) -> Self { + Self::from(<$h>::from(<[u8; <$h>::len_bytes()]>::from(value))) + } + } + + impl From<$proto> for $u { + fn from(value: $proto) -> Self { + Self::from(<$h>::from(value).0) + } + } + }; + } + + // to PB + impl From for H128 { + fn from(value: ethereum_types::H128) -> Self { + Self { + hi: u64::from_be_bytes(*array_ref!(value, 0, 8)), + lo: u64::from_be_bytes(*array_ref!(value, 8, 8)), + } + } + } + + impl From for H160 { + fn from(value: ethereum_types::H160) -> Self { + Self { + hi: Some(ethereum_types::H128::from_slice(&value[..16]).into()), + lo: u32::from_be_bytes(*array_ref!(value, 16, 4)), + } + } + } + + impl From for H256 { + fn from(value: ethereum_types::H256) -> Self { + Self { + hi: Some(ethereum_types::H128::from_slice(&value[..16]).into()), + lo: Some(ethereum_types::H128::from_slice(&value[16..]).into()), + } + } + } + + impl From for H512 { + fn from(value: ethereum_types::H512) -> Self { + Self { + hi: Some(ethereum_types::H256::from_slice(&value[..32]).into()), + lo: Some(ethereum_types::H256::from_slice(&value[32..]).into()), + } + } + } + + // from PB + impl From for ethereum_types::H128 { + fn from(value: H128) -> Self { + let mut v = [0; Self::len_bytes()]; + v[..8].copy_from_slice(&value.hi.to_be_bytes()); + v[8..].copy_from_slice(&value.lo.to_be_bytes()); + + v.into() + } + } + + impl From for ethereum_types::H160 { + fn from(value: H160) -> Self { + type H = ethereum_types::H128; + + let mut v = [0; Self::len_bytes()]; + v[..H::len_bytes()] + .copy_from_slice(H::from(value.hi.unwrap_or_default()).as_fixed_bytes()); + v[H::len_bytes()..].copy_from_slice(&value.lo.to_be_bytes()); + + v.into() + } + } + + impl From for ethereum_types::H256 { + fn from(value: H256) -> Self { + type H = ethereum_types::H128; + + let mut v = [0; Self::len_bytes()]; + v[..H::len_bytes()] + .copy_from_slice(H::from(value.hi.unwrap_or_default()).as_fixed_bytes()); + v[H::len_bytes()..] + .copy_from_slice(H::from(value.lo.unwrap_or_default()).as_fixed_bytes()); + + v.into() + } + } + + impl From for ethereum_types::H512 { + fn from(value: H512) -> Self { + type H = ethereum_types::H256; + + let mut v = [0; Self::len_bytes()]; + v[..H::len_bytes()] + .copy_from_slice(H::from(value.hi.unwrap_or_default()).as_fixed_bytes()); + v[H::len_bytes()..] + .copy_from_slice(H::from(value.lo.unwrap_or_default()).as_fixed_bytes()); + + v.into() + } + } + + U!(H128, ethereum_types::H128, ethereum_types::U128); + U!(H256, ethereum_types::H256, ethereum_types::U256); + U!(H512, ethereum_types::H512, ethereum_types::U512); +} + +#[cfg(feature = "consensus")] +pub mod consensus { + tonic::include_proto!("consensus"); +} + +#[cfg(feature = "sentry")] +pub mod sentry { + tonic::include_proto!("sentry"); +} + +#[cfg(feature = "remotekv")] +pub mod remotekv { + tonic::include_proto!("remote"); +} + +#[cfg(feature = "snapshotsync")] +pub mod snapshotsync { + tonic::include_proto!("snapshotsync"); +} + +#[cfg(feature = "txpool")] +pub mod txpool { + tonic::include_proto!("txpool"); + tonic::include_proto!("txpool_control"); +} + +#[cfg(feature = "db")] +pub mod db { + use once_cell::sync::Lazy; + use serde::Deserialize; + use std::collections::HashMap; + + #[derive(Deserialize)] + pub struct AutoDupSortConfig { + pub from: usize, + pub to: usize, + } + + #[derive(Deserialize)] + pub struct DupSortConfig { + pub auto: Option, + } + + #[derive(Deserialize)] + pub struct TableInfo { + pub dup_sort: Option, + } + + pub static TABLES: Lazy> = + Lazy::new(|| toml::from_str(include_str!("../db_tables.toml")).unwrap()); +} diff --git a/testing/testing.proto b/testing/testing.proto new file mode 100644 index 000000000..54c3f547b --- /dev/null +++ b/testing/testing.proto @@ -0,0 +1,27 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; + +package testing; + +option go_package = "./testing;testing"; + +message TestCaseNumber { + uint64 count = 1; +} + +message TestReport { + // End of test signal + bool end = 1; + // Indication whether the report is about success of part of the test, or failure + bool success = 2; + string log = 3; +} + +service TestDriver { + // Returns number of available integration test caes in the test driver + rpc TestCaseCount(google.protobuf.Empty) returns (TestCaseNumber); + // Ask the test driver to start the test case with given number. As test case progresses, the driver sends reports via the stream + // Test drivier also notifies about the end of test case via the stream + rpc StartTestCase(TestCaseNumber) returns (stream TestReport); +} diff --git a/turbo-geth-architecture.png b/turbo-geth-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..2c79f75f14935d8d8289bc9609ac768ce7fc1e56 GIT binary patch literal 179413 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≥y$uTJZ7Rzv2PR7cU2c8ij14 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 ZI>h4Df3C)A4+Z~Sx}dI@d(JHIe*v_WqSXKZ literal 0 HcmV?d00001 diff --git a/turbo-geth.drawio b/turbo-geth.drawio new file mode 100644 index 000000000..25efa8b23 --- /dev/null +++ b/turbo-geth.drawio @@ -0,0 +1 @@ +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 \ No newline at end of file diff --git a/txpool/README.md b/txpool/README.md new file mode 100644 index 000000000..0ce884239 --- /dev/null +++ b/txpool/README.md @@ -0,0 +1,45 @@ +# txpool interface +Transaction pool is supposed to import and track pending transactions. As such, it should conduct at least two checks: +- Transactions must have correct nonce +- Gas fees must be covered + +## State streaming +For transaction checks to function, the pool must also track balance and nonce for sending accounts. + +On import of transactions from unknown sender, transaction pool can request balance and nonce at a particular block. + +To track existing accounts, transaction pool connects to Ethereum client and receives a stream of BlockDiffs. Each of these represents one block, applied or reverted, and contains all the necessary information for transaction pool to track its accounts. + +For applied blocks: +- Block's hash +- Parent block's hash +- New balances and nonces for all accounts changed in this block + +For reverted blocks: +- Reverted block's hash +- New (reverted's parent) hash +- New parent (reverted's grandfather) hash +- List of reverted transactions +- Balances and nonces for all accounts changed in reverted block, at new (reverted's parent) state. + +BlockDiffs must be streamed in the chain's order without any gaps. If BlockDiff's parent does not match current block hash, transaction pool must make sure that it is not left in inconsistent state. One option is to reset the transaction pool, reimport transactions and rerequest state for those senders. + +## Reorg handling +Simple example: + +``` +A - D -- E -- F + \ + - B -- C +``` + +Transaction pool is at block C, canonical chain reorganizes to F. + +We backtrack to common ancestor and apply new chain, block by block. + +Client must send the following BlockDiffs to txpool, in order: +- revert C to B +- revert B to A +- apply D on A +- apply E on D +- apply F on E \ No newline at end of file diff --git a/txpool/mining.proto b/txpool/mining.proto new file mode 100644 index 000000000..cdb3a3f2e --- /dev/null +++ b/txpool/mining.proto @@ -0,0 +1,103 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package txpool; + +option go_package = "./txpool;txpool"; + +message OnPendingBlockRequest {} +message OnPendingBlockReply { + bytes rplBlock = 1; +} + +message OnMinedBlockRequest {} +message OnMinedBlockReply { + bytes rplBlock = 1; +} + +message OnPendingLogsRequest {} +message OnPendingLogsReply { + bytes rplLogs = 1; +} + + +message GetWorkRequest {} + +message GetWorkReply { + string headerHash = 1; // 32 bytes hex encoded current block header pow-hash + string seedHash = 2; // 32 bytes hex encoded seed hash used for DAG + string target = 3; // 32 bytes hex encoded boundary condition ("target"), 2^256/difficulty + string blockNumber = 4; // hex encoded block number +} + +message SubmitWorkRequest { + bytes blockNonce = 1; + bytes powHash = 2; + bytes digest = 3; +} + +message SubmitWorkReply { + bool ok = 1; +} + +message SubmitHashRateRequest { + uint64 rate = 1; + bytes id = 2; +} +message SubmitHashRateReply { + bool ok = 1; +} + +message HashRateRequest {} +message HashRateReply { + uint64 hashRate = 1; +} + +message MiningRequest {} +message MiningReply { + bool enabled = 1; + bool running = 2; +} + +service Mining { + // Version returns the service version number + rpc Version(google.protobuf.Empty) returns (types.VersionReply); + + // subscribe to pending blocks event + rpc OnPendingBlock(OnPendingBlockRequest) returns (stream OnPendingBlockReply); + // subscribe to mined blocks event + rpc OnMinedBlock(OnMinedBlockRequest) returns (stream OnMinedBlockReply); + // subscribe to pending blocks event + rpc OnPendingLogs(OnPendingLogsRequest) returns (stream OnPendingLogsReply); + + + // GetWork returns a work package for external miner. + // + // The work package consists of 3 strings: + // result[0] - 32 bytes hex encoded current block header pow-hash + // result[1] - 32 bytes hex encoded seed hash used for DAG + // result[2] - 32 bytes hex encoded boundary condition ("target"), 2^256/difficulty + // result[3] - hex encoded block number + rpc GetWork(GetWorkRequest) returns (GetWorkReply); + + // SubmitWork can be used by external miner to submit their POW solution. + // It returns an indication if the work was accepted. + // Note either an invalid solution, a stale work a non-existent work will return false. + rpc SubmitWork(SubmitWorkRequest) returns (SubmitWorkReply); + + // SubmitHashRate can be used for remote miners to submit their hash rate. + // This enables the node to report the combined hash rate of all miners + // which submit work through this node. + // + // It accepts the miner hash rate and an identifier which must be unique + // between nodes. + rpc SubmitHashRate(SubmitHashRateRequest) returns (SubmitHashRateReply); + + // HashRate returns the current hashrate for local CPU miner and remote miner. + rpc HashRate(HashRateRequest) returns (HashRateReply); + + // Mining returns an indication if this node is currently mining and it's mining configuration + rpc Mining(MiningRequest) returns (MiningReply); +} diff --git a/txpool/txpool.proto b/txpool/txpool.proto new file mode 100644 index 000000000..61bce1b0c --- /dev/null +++ b/txpool/txpool.proto @@ -0,0 +1,61 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package txpool; + +option go_package = "./txpool;txpool"; + +message TxHashes { repeated types.H256 hashes = 1; } + +message AddRequest { repeated bytes rlpTxs = 1; } + +enum ImportResult { + SUCCESS = 0; + ALREADY_EXISTS = 1; + FEE_TOO_LOW = 2; + STALE = 3; + INVALID = 4; + INTERNAL_ERROR = 5; +} + +message AddReply { repeated ImportResult imported = 1; repeated string errors = 2; } + +message TransactionsRequest { repeated types.H256 hashes = 1; } +message TransactionsReply { repeated bytes rlpTxs = 1; } + +message OnAddRequest {} +message OnAddReply { + repeated bytes rplTxs = 1; +} + +message AllRequest {} +message AllReply { + enum Type { + PENDING = 0; // All currently processable transactions + QUEUED = 1; // Queued but non-processable transactions + } + message Tx { + Type type = 1; + bytes sender = 2; + bytes rlpTx = 3; + } + repeated Tx txs = 1; +} + +service Txpool { + // Version returns the service version number + rpc Version(google.protobuf.Empty) returns (types.VersionReply); + // preserves incoming order, changes amount, unknown hashes will be omitted + rpc FindUnknown(TxHashes) returns (TxHashes); + // Expecting signed transactions. Preserves incoming order and amount + // Adding txs as local (use P2P to add remote txs) + rpc Add(AddRequest) returns (AddReply); + // preserves incoming order and amount, if some transaction doesn't exists in pool - returns nil in this slot + rpc Transactions(TransactionsRequest) returns (TransactionsReply); + // returns all transactions from tx pool + rpc All(AllRequest) returns (AllReply); + // subscribe to new transactions add event + rpc OnAdd(OnAddRequest) returns (stream OnAddReply); +} diff --git a/txpool/txpool_control.proto b/txpool/txpool_control.proto new file mode 100644 index 000000000..0283a8c63 --- /dev/null +++ b/txpool/txpool_control.proto @@ -0,0 +1,57 @@ +syntax = "proto3"; + +import "google/protobuf/empty.proto"; +import "types/types.proto"; + +package txpool_control; + +option go_package = "./txpool;txpool"; + +message AccountInfoRequest { + types.H256 block_hash = 1; + types.H160 account = 2; +} + +message AccountInfoReply { + types.H256 balance = 1; + uint64 nonce = 2; +} + +message BlockStreamRequest { + oneof start_with { + google.protobuf.Empty latest = 1; + types.H256 block_hash = 2; + } +} + +message AccountInfo { + types.H160 address = 1; + types.H256 balance = 2; + uint64 nonce = 3; +} + +message AppliedBlock { + types.H256 hash = 1; + types.H256 parent_hash = 2; + repeated AccountInfo changed_accounts = 3; +} + +message RevertedBlock { + types.H256 reverted_hash = 1; + repeated bytes reverted_transactions = 2; + types.H256 new_hash = 3; + types.H256 new_parent = 4; + repeated AccountInfo reverted_accounts = 5; +} + +message BlockDiff { + oneof diff { + AppliedBlock applied = 1; + RevertedBlock reverted = 2; + } +} + +service TxpoolControl { + rpc AccountInfo(AccountInfoRequest) returns (AccountInfoReply); + rpc BlockStream(BlockStreamRequest) returns (stream BlockDiff); +} diff --git a/types/types.proto b/types/types.proto new file mode 100644 index 000000000..5cd2a094b --- /dev/null +++ b/types/types.proto @@ -0,0 +1,46 @@ +syntax = "proto3"; + +import "google/protobuf/descriptor.proto"; + +package types; + +option go_package = "./types;types"; + +/* Service-level versioning shall use a 3-part version number (M.m.p) following semver rules */ +/* 1. MAJOR version (M): increment when you make incompatible changes */ +/* 2. MINOR version (m): increment when you add functionality in backward compatible manner */ +/* 3. PATCH version (p): increment when you make backward compatible bug fixes */ + +// Extensions of file-level options for service versioning: should *not* be modified +extend google.protobuf.FileOptions { + uint32 service_major_version = 50001; + uint32 service_minor_version = 50002; + uint32 service_patch_version = 50003; +} + +message H128 { + uint64 hi = 1; + uint64 lo = 2; +} + +message H160 { + H128 hi = 1; + uint32 lo = 2; +} + +message H256 { + H128 hi = 1; + H128 lo = 2; +} + +message H512 { + H256 hi = 1; + H256 lo = 2; +} + +// Reply message containing the current service version on the service side +message VersionReply { + uint32 major = 1; + uint32 minor = 2; + uint32 patch = 3; +}