From 3d44599734e50a5aa2d91ba9dad49f66eb4cad2a Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 09:29:01 +0800 Subject: [PATCH 01/17] doc: update dev overview --- docs/src/dev/overview.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/src/dev/overview.md b/docs/src/dev/overview.md index 285afa3e8..04721132e 100644 --- a/docs/src/dev/overview.md +++ b/docs/src/dev/overview.md @@ -47,7 +47,8 @@ Within the Prover, zkMIPS employs multiple stages to efficiently process and pro Lookup serves two key purposes: - Cross-Chip Communication - The chip needs to send the logic which itself cannot verify to other chips for verification. - Consistency of memory access (the data read by the memory is the data written before) - Proving that the read and write data are “permuted”. - Currently zkMIPS uses [multiset hashing](/design/lookup-arguments.md) to implement the Lookup argument. + + Currently zkMIPS uses [LogUp](../design/lookup-arguments.md) and [multiset hashing](../design/memory-checking.md) to implement the Lookup argument. 4. **Core Proof** The core proof includes a set of shard proofs. From fc83438225e9d7a045b28830d879aa19cefd2aa6 Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 10:28:31 +0800 Subject: [PATCH 02/17] deploy doc --- .github/workflows/build.yml | 66 +++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..c5d48d701 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,66 @@ +name: Mdbook build + +on: + push: + branches: ["update-doc"] + pull_request: + branches: [ update-doc ] + +jobs: + build: + name: build + runs-on: ubuntu-latest + permissions: + contents: write # To push a branch + pull-requests: write # To create a PR from that branch + env: + MDBOOK_VERSION: '0.4.45' + # MDBOOK_MERMAID_VERSION: '0.13.0' + steps: + - uses: actions/checkout@v4 + with: + submodules: false + - name: Install mdbook + env: + GH_TOKEN: ${{ github.token }} + run: | + mkdir ~/tools + curl -L https://github.com/rust-lang/mdBook/releases/download/v$MDBOOK_VERSION/mdbook-v$MDBOOK_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools + # curl -L https://github.com/badboy/mdbook-mermaid/releases/download/v$MDBOOK_MERMAID_VERSION/mdbook-mermaid-v$MDBOOK_MERMAID_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools + + gh release download -R Michael-F-Bryan/mdbook-linkcheck -p mdbook-linkcheck.x86_64-unknown-linux-gnu.zip + unzip mdbook-linkcheck.x86_64-unknown-linux-gnu.zip -d ~/tools + chmod +x ~/tools/mdbook-linkcheck + + gh release download -R zjp-CN/mdbook-theme -p mdbook-theme_linux.tar.gz + tar -xzf mdbook-theme_linux.tar.gz -C ~/tools + echo ~/tools >> $GITHUB_PATH + - name: Build + run: mdbook build + + - name: Upload pages artifacts + uses: actions/upload-pages-artifact@v3 + with: + path: book + + # Deploy job + deploy: + # Add a dependency to the build job + needs: build + + # Grant GITHUB_TOKEN the permissions required to make a Pages deployment + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + + # Deploy to the github-pages environment + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + # Specify runner + deployment step + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 # or specific "vX.X.X" version tag for this action From ff145eee0ba76f3da860ab0e451243dc5a8c4eda Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 12:25:38 +0800 Subject: [PATCH 03/17] add index.html --- .github/workflows/build.yml | 4 ++-- docs/index.html | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 docs/index.html diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c5d48d701..6e37067d5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,9 +2,9 @@ name: Mdbook build on: push: - branches: ["update-doc"] + branches: ["main"] pull_request: - branches: [ update-doc ] + branches: [ main ] jobs: build: diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 000000000..2ff47e0b9 --- /dev/null +++ b/docs/index.html @@ -0,0 +1 @@ + From 881b6b9aa0ebae0caad9c5fc81ae82d3539263cd Mon Sep 17 00:00:00 2001 From: eigmax Date: Sun, 13 Apr 2025 14:59:04 +0800 Subject: [PATCH 04/17] docs: emulator --- docs/src/SUMMARY.md | 6 +++--- docs/src/mips-vm/{execution_trace.md => execution-trace.md} | 0 docs/src/mips-vm/{mips_isa.md => mips-isa.md} | 0 docs/src/mips-vm/overview | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) rename docs/src/mips-vm/{execution_trace.md => execution-trace.md} (100%) rename docs/src/mips-vm/{mips_isa.md => mips-isa.md} (100%) delete mode 100644 docs/src/mips-vm/overview diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md index a1274b8f0..d2e0f1e4f 100644 --- a/docs/src/SUMMARY.md +++ b/docs/src/SUMMARY.md @@ -3,9 +3,9 @@ - [Introducation](./introducation/overview.md) - [Installation](./introducation/installation.md) - [Performance](./introducation/performance.md) -- [MIPS VM](./mips-vm/overview) - - [Execution Trace](./mips-vm/execution_trace.md) - - [MIPS ISA](./mips-vm/mips_isa.md) +- [MIPS VM](./mips-vm/mips-vm.md) + - [Execution Trace](./mips-vm/execution-trace.md) + - [MIPS ISA](./mips-vm/mips-isa.md) - [Developer Tutorial](./dev/overview.md) - [Program](./dev/program.md) - [Host Program](./dev/host-program.md) diff --git a/docs/src/mips-vm/execution_trace.md b/docs/src/mips-vm/execution-trace.md similarity index 100% rename from docs/src/mips-vm/execution_trace.md rename to docs/src/mips-vm/execution-trace.md diff --git a/docs/src/mips-vm/mips_isa.md b/docs/src/mips-vm/mips-isa.md similarity index 100% rename from docs/src/mips-vm/mips_isa.md rename to docs/src/mips-vm/mips-isa.md diff --git a/docs/src/mips-vm/overview b/docs/src/mips-vm/overview deleted file mode 100644 index 6a105d172..000000000 --- a/docs/src/mips-vm/overview +++ /dev/null @@ -1 +0,0 @@ -# MIPS VM From 331f96d931e8abb7d2c4f4c41f770fb72aa583b1 Mon Sep 17 00:00:00 2001 From: eigmax Date: Sun, 13 Apr 2025 15:02:45 +0800 Subject: [PATCH 05/17] doc: fix emulator --- docs/src/SUMMARY.md | 1 - docs/src/mips-vm/execution-trace.md | 1 - 2 files changed, 2 deletions(-) delete mode 100644 docs/src/mips-vm/execution-trace.md diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md index d2e0f1e4f..73427e9b1 100644 --- a/docs/src/SUMMARY.md +++ b/docs/src/SUMMARY.md @@ -4,7 +4,6 @@ - [Installation](./introducation/installation.md) - [Performance](./introducation/performance.md) - [MIPS VM](./mips-vm/mips-vm.md) - - [Execution Trace](./mips-vm/execution-trace.md) - [MIPS ISA](./mips-vm/mips-isa.md) - [Developer Tutorial](./dev/overview.md) - [Program](./dev/program.md) diff --git a/docs/src/mips-vm/execution-trace.md b/docs/src/mips-vm/execution-trace.md deleted file mode 100644 index df17fe448..000000000 --- a/docs/src/mips-vm/execution-trace.md +++ /dev/null @@ -1 +0,0 @@ -# Execution Trace From c6892f8e3eecdf9d75f04ff118af6930ef67922e Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 18:07:11 +0800 Subject: [PATCH 06/17] doc: update dev overview --- docs/src/dev/overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/dev/overview.md b/docs/src/dev/overview.md index 04721132e..26db33938 100644 --- a/docs/src/dev/overview.md +++ b/docs/src/dev/overview.md @@ -48,7 +48,7 @@ Within the Prover, zkMIPS employs multiple stages to efficiently process and pro - Cross-Chip Communication - The chip needs to send the logic which itself cannot verify to other chips for verification. - Consistency of memory access (the data read by the memory is the data written before) - Proving that the read and write data are “permuted”. - Currently zkMIPS uses [LogUp](../design/lookup-arguments.md) and [multiset hashing](../design/memory-checking.md) to implement the Lookup argument. + zkMIPS implements these two lookup arguments through [LogUp](../design/lookup-arguments.md) and [multiset hashing](../design/memory-checking.md) hashing respectively. 4. **Core Proof** The core proof includes a set of shard proofs. From c06fbac2fc0dae0eda468d50299b63008dcb600f Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 18:33:11 +0800 Subject: [PATCH 07/17] update build.yml --- .github/workflows/build.yml | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6e37067d5..3b0d4adec 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,27 +21,31 @@ jobs: with: submodules: false - name: Install mdbook - env: - GH_TOKEN: ${{ github.token }} run: | - mkdir ~/tools - curl -L https://github.com/rust-lang/mdBook/releases/download/v$MDBOOK_VERSION/mdbook-v$MDBOOK_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools - # curl -L https://github.com/badboy/mdbook-mermaid/releases/download/v$MDBOOK_MERMAID_VERSION/mdbook-mermaid-v$MDBOOK_MERMAID_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools + cargo install mdbook --vers "0.4.45" + mdbook --version + # - name: Install mdbook + # env: + # GH_TOKEN: ${{ github.token }} + # run: | + # mkdir ~/tools + # curl -L https://github.com/rust-lang/mdBook/releases/download/v$MDBOOK_VERSION/mdbook-v$MDBOOK_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools + # # curl -L https://github.com/badboy/mdbook-mermaid/releases/download/v$MDBOOK_MERMAID_VERSION/mdbook-mermaid-v$MDBOOK_MERMAID_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools - gh release download -R Michael-F-Bryan/mdbook-linkcheck -p mdbook-linkcheck.x86_64-unknown-linux-gnu.zip - unzip mdbook-linkcheck.x86_64-unknown-linux-gnu.zip -d ~/tools - chmod +x ~/tools/mdbook-linkcheck + # gh release download -R Michael-F-Bryan/mdbook-linkcheck -p mdbook-linkcheck.x86_64-unknown-linux-gnu.zip + # unzip mdbook-linkcheck.x86_64-unknown-linux-gnu.zip -d ~/tools + # chmod +x ~/tools/mdbook-linkcheck - gh release download -R zjp-CN/mdbook-theme -p mdbook-theme_linux.tar.gz - tar -xzf mdbook-theme_linux.tar.gz -C ~/tools - echo ~/tools >> $GITHUB_PATH + # gh release download -R zjp-CN/mdbook-theme -p mdbook-theme_linux.tar.gz + # tar -xzf mdbook-theme_linux.tar.gz -C ~/tools + # echo ~/tools >> $GITHUB_PATH - name: Build - run: mdbook build + run: mdbook build --dest-dir ./book - name: Upload pages artifacts uses: actions/upload-pages-artifact@v3 with: - path: book + path: ./book # Deploy job deploy: From 72d288fd2e0e25639ed9bab330dfead98f2b61cf Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 19:02:15 +0800 Subject: [PATCH 08/17] update build.yml --- .github/workflows/build.yml | 78 +++++++++---------------------------- 1 file changed, 18 insertions(+), 60 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3b0d4adec..c794d79a8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,70 +1,28 @@ -name: Mdbook build +name: GitHub Pages on: push: - branches: ["main"] + branches: + - main pull_request: - branches: [ main ] jobs: - build: - name: build - runs-on: ubuntu-latest - permissions: - contents: write # To push a branch - pull-requests: write # To create a PR from that branch - env: - MDBOOK_VERSION: '0.4.45' - # MDBOOK_MERMAID_VERSION: '0.13.0' - steps: - - uses: actions/checkout@v4 - with: - submodules: false - - name: Install mdbook - run: | - cargo install mdbook --vers "0.4.45" - mdbook --version - # - name: Install mdbook - # env: - # GH_TOKEN: ${{ github.token }} - # run: | - # mkdir ~/tools - # curl -L https://github.com/rust-lang/mdBook/releases/download/v$MDBOOK_VERSION/mdbook-v$MDBOOK_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools - # # curl -L https://github.com/badboy/mdbook-mermaid/releases/download/v$MDBOOK_MERMAID_VERSION/mdbook-mermaid-v$MDBOOK_MERMAID_VERSION-x86_64-unknown-linux-gnu.tar.gz | tar xz -C ~/tools - - # gh release download -R Michael-F-Bryan/mdbook-linkcheck -p mdbook-linkcheck.x86_64-unknown-linux-gnu.zip - # unzip mdbook-linkcheck.x86_64-unknown-linux-gnu.zip -d ~/tools - # chmod +x ~/tools/mdbook-linkcheck - - # gh release download -R zjp-CN/mdbook-theme -p mdbook-theme_linux.tar.gz - # tar -xzf mdbook-theme_linux.tar.gz -C ~/tools - # echo ~/tools >> $GITHUB_PATH - - name: Build - run: mdbook build --dest-dir ./book - - - name: Upload pages artifacts - uses: actions/upload-pages-artifact@v3 - with: - path: ./book - - # Deploy job deploy: - # Add a dependency to the build job - needs: build + runs-on: ubuntu-20.04 + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v2 - # Grant GITHUB_TOKEN the permissions required to make a Pages deployment - permissions: - pages: write # to deploy to Pages - id-token: write # to verify the deployment originates from an appropriate source + - name: Setup mdBook + uses: peaceiris/actions-mdbook@v1 + with: + mdbook-version: 'latest' - # Deploy to the github-pages environment - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} + - run: mdbook build - # Specify runner + deployment step - runs-on: ubuntu-latest - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 # or specific "vX.X.X" version tag for this action + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./book From 3cfdf08f21f7c1ca06f63d65c73e3438a31f94d9 Mon Sep 17 00:00:00 2001 From: Angell Li Date: Sun, 13 Apr 2025 19:23:17 +0800 Subject: [PATCH 09/17] docs: update mips vm --- docs/src/mips-vm/mips-vm.md | 31 +++++++++++++++++-------- docs/src/mips-vm/mips_vm_execution.png | Bin 0 -> 54966 bytes 2 files changed, 21 insertions(+), 10 deletions(-) create mode 100644 docs/src/mips-vm/mips_vm_execution.png diff --git a/docs/src/mips-vm/mips-vm.md b/docs/src/mips-vm/mips-vm.md index de528ff16..981822d05 100644 --- a/docs/src/mips-vm/mips-vm.md +++ b/docs/src/mips-vm/mips-vm.md @@ -1,18 +1,29 @@ # MIPS VM -zkMIPS is a verifiable computation infrastructure based on the MIPS32, specifically designed to provide zero-knowledge proof generation for programs written in Rust and Golang. This enhances project auditing and the efficiency of security verification. Focusing on the extensive design experience of MIPS, zkMIPS adopts the MIPS32r2 instruction set as it offers significant hardware advantages. Compared to the RISC-V architecture, MIPS32r2 excels in several key features. Its J/JAL instructions support jump ranges of up to 256MiB, offering greater flexibility for large-scale data processing and complex control flow scenarios. Moreover, the rich set of bit manipulation instructions and additional conditional move instructions (such as MOVZ and MOVN) ensure precise data handling, while the inclusion of the MADDU instruction further improves arithmetic computation efficiency. Overall, by integrating mature MIPS design with zero-knowledge proof, zkMIPS provides an efficient and stable foundational platform for secure computing and decentralized applications. +zkMIPS is a verifiable computation infrastructure based on the MIPS32, specifically designed to provide zero-knowledge proof generation for programs written in Rust. This enhances project auditing and the efficiency of security verification. Focusing on the extensive design experience of MIPS, zkMIPS adopts the MIPS32r2 instruction set. MIPS VM, one of the core components of zkMIPS, is the execution framework of MIPS32r2 instructions. Below we will briefly introduce the advantages of MIPS32r2 over RV32IM and the execution flow of MIPS VM. -**Execution Flow of zkMIPS** -In the execution process of zkMIPS, a Rust program written by the developer is first transformed by a dedicated compiler into the MIPS instruction set, generating a corresponding ELF binary file. This process accurately maps the high-level logic of the program to low-level instructions, laying a solid foundation for subsequent verification. Next, the system employs a specially designed executor to simulate the execution of the ELF file, recording all state changes and computational steps to form a complete execution record with different type of [events](https://github.com/zkMIPS/zkm/tree/dev/init/crates/core/executor/src/events). The events will then be used to generate different traces for different chips. This traces serve as the core data for generating the zero-knowledge proof, ensuring that the proof accurately reflects the real execution of the compiled program. Subsequently, the zkMIPS prover efficiently processes and compresses the generated trace to produce a zero-knowledge proof. This proof not only validates the correctness of the program execution but also significantly reduces the data volume, facilitating rapid verification and storage. Finally, the generated proof is jointly verified by multiple participants and ultimately recorded on-chain, ensuring that the entire computational process is transparent, secure, and trustworthy. With the nice property of zkSNARK, the proof is short and fast to verify. -**Circuit Module of zkMIPS** -In terms of circuit design, zkMIPS adopts a highly modular strategy, breaking the entire MIPS program into multiple submodules with clearly defined functions to meticulously manage and verify the execution state of each part. The system can be divided into several modules: CPU, memory, byte processing, and instructions. +**Advantages of MIPS32r2 over RV32IM** -***The CPU module*** focuses on common operation for all instructions, such as register read/write, pc and shard processing, .etc. +- MIPS32r2 has more powerful instructions than RV32IM + - the J/JAL instructions support jump ranges of up to 256MiB, offering greater flexibility for large-scale data processing and complex control flow scenarios. + - MIPS32r2 has rich set of bit manipulation instructions and additional conditional move instructions (such as MOVZ and MOVN) that ensure precise data handling. + - MIPS32r2 has integer multiply-add/sub instructions, which can improve arithmetic computation efficiency. + - MIPS32r2 has SEH and SEB sign extension instructions, which make it very convenient to perform sign extension operations on char and short type data. +- The MIPS32r2 instruction set has a more stable ecological support + - All instructions in MIPS32r2, as a whole, have been very mature and widely used for more than 20 years. There will be no compatibility issues between ISA modules. And there will be no turmoil caused by manufacturer disputes. + - MIPS has been successfully applied to Optimism's Fraud Proof verification, which is implemented based on MIPS VM. -***The memory module*** clearly distinguishes between global and local memory, establishing defined boundaries for data access and state transfer. -***byte processing modules*** are employed to manage byte data validation and processing. +**Execution Flow of MIPS VM** -***instructions modules*** focuses on computation for different type of instructions. It can be divided into different type of sub-chips (ALU, Branch, Jump, Memory, Syscall, Misc). Each chip focuses on one kind or type of instructions. Such as ALU chip focuses on arithmetic and logical computations, supporting various specific operations including instructions like CLO/Z. Branch chip focuses on conditional branch. +The execution flow of MIPS VM is as follows: +![zkMIPS MIPS VM execution flow](mips_vm_execution.png) +Before the execution process of MIPS VM, a Rust program written by the developer is first transformed by a dedicated compiler into the MIPS instruction set, generating a corresponding ELF binary file. This process accurately maps the high-level logic of the program to low-level instructions, laying a solid foundation for subsequent verification. -Through this detailed division of circuit modules, zkMIPS can accurately capture the behavior and state of each submodule during the generation of the zero-knowledge proof, to improve the overall security of the system. +MIPS VM employs a specially designed executor to simulate the execution of the ELF file: +- First,the ELF code is loaded into [Program](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/program.rs), where all data is loaded into the memory image, and all the code is decoded and added into the [Instruction](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/instruction.rs) List. +- Then, MIPS VM executes the Instruction and update the ISA states step by step, which is started from the entry point of the ELF and ended with exit condition is triggered. A complete execution record with different type of [events](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/events) is recorded in this process. The whole program will be divided into several shards based on the shape of the execution record. + +After the execution process of MIPS VM, the execution record will be used by the prover to generate zero-knowledge proof + - The events recorded in execution record will be used to generate different traces by different chips. + - This traces serve as the core data for generating the zero-knowledge proof, ensuring that the proof accurately reflects the real execution of the compiled program. diff --git a/docs/src/mips-vm/mips_vm_execution.png b/docs/src/mips-vm/mips_vm_execution.png new file mode 100644 index 0000000000000000000000000000000000000000..585e2179f43e9177ef75349f159f3f0af6808a61 GIT binary patch literal 54966 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 literal 0 HcmV?d00001 From f6b35640334029da39f02489c9e28a7b4faab59f Mon Sep 17 00:00:00 2001 From: Angell Li Date: Sun, 13 Apr 2025 20:09:58 +0800 Subject: [PATCH 10/17] update mips vm --- docs/src/mips-vm/mips-vm.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/src/mips-vm/mips-vm.md b/docs/src/mips-vm/mips-vm.md index 981822d05..8934de586 100644 --- a/docs/src/mips-vm/mips-vm.md +++ b/docs/src/mips-vm/mips-vm.md @@ -4,12 +4,13 @@ zkMIPS is a verifiable computation infrastructure based on the MIPS32, specifica **Advantages of MIPS32r2 over RV32IM** -- MIPS32r2 has more powerful instructions than RV32IM +MIPS32r2 has several advantages over RV32IM: +- MIPS32r2 has more powerful instructions than RV32IM: - the J/JAL instructions support jump ranges of up to 256MiB, offering greater flexibility for large-scale data processing and complex control flow scenarios. - MIPS32r2 has rich set of bit manipulation instructions and additional conditional move instructions (such as MOVZ and MOVN) that ensure precise data handling. - MIPS32r2 has integer multiply-add/sub instructions, which can improve arithmetic computation efficiency. - MIPS32r2 has SEH and SEB sign extension instructions, which make it very convenient to perform sign extension operations on char and short type data. -- The MIPS32r2 instruction set has a more stable ecological support +- The MIPS32r2 instruction set has a more stable ecological support: - All instructions in MIPS32r2, as a whole, have been very mature and widely used for more than 20 years. There will be no compatibility issues between ISA modules. And there will be no turmoil caused by manufacturer disputes. - MIPS has been successfully applied to Optimism's Fraud Proof verification, which is implemented based on MIPS VM. @@ -20,10 +21,10 @@ The execution flow of MIPS VM is as follows: ![zkMIPS MIPS VM execution flow](mips_vm_execution.png) Before the execution process of MIPS VM, a Rust program written by the developer is first transformed by a dedicated compiler into the MIPS instruction set, generating a corresponding ELF binary file. This process accurately maps the high-level logic of the program to low-level instructions, laying a solid foundation for subsequent verification. -MIPS VM employs a specially designed executor to simulate the execution of the ELF file: +MIPS VM employs a specially designed executor to simulate the execution of the ELF file: - First,the ELF code is loaded into [Program](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/program.rs), where all data is loaded into the memory image, and all the code is decoded and added into the [Instruction](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/instruction.rs) List. - Then, MIPS VM executes the Instruction and update the ISA states step by step, which is started from the entry point of the ELF and ended with exit condition is triggered. A complete execution record with different type of [events](https://github.com/zkMIPS/zkMIPS/tree/main/crates/core/executor/src/events) is recorded in this process. The whole program will be divided into several shards based on the shape of the execution record. -After the execution process of MIPS VM, the execution record will be used by the prover to generate zero-knowledge proof +After the execution process of MIPS VM, the execution record will be used by the prover to generate zero-knowledge proof: - The events recorded in execution record will be used to generate different traces by different chips. - This traces serve as the core data for generating the zero-knowledge proof, ensuring that the proof accurately reflects the real execution of the compiled program. From ca0ceba4f307d8640e40abfbb2b599753bf650c9 Mon Sep 17 00:00:00 2001 From: Angell Li Date: Sun, 13 Apr 2025 20:14:22 +0800 Subject: [PATCH 11/17] udpate execution png --- docs/src/mips-vm/mips_vm_execution.png | Bin 54966 -> 137903 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/src/mips-vm/mips_vm_execution.png b/docs/src/mips-vm/mips_vm_execution.png index 585e2179f43e9177ef75349f159f3f0af6808a61..c4f41827bcb247c676177416dd4184aa8c09b7c3 100644 GIT binary patch literal 137903 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 z

gXU=-e&{9P3u+*!ZrEhinr+kh6yL>@2@%eZO<4Bo%;agS7krVsutQ7Ig0>m_Ps063;>0D=-G^_g7*v?^qu#lZL=1l`$;I6qVJRu_zghJ?CU7j&-JC`gpe{^ej zR4NO&Eqx`L!Xwuk8}qOMCkCV8is#R8JgHpV!#9KyhL0#OG-Z!_8vGb61N=j?M?6R^ zG@g#%L>g8ir3ZhSPUUNCbWhRSIc8iN<3WEo8cVyr_}DxrG0{V+f_CKT?)9@NDX~Y` ze;M1WafAnW*i}T3F*p}aY_s@~RK{gEDbEOJ3#j_O&MEDRz^e#umR937n^QJ^Y2qdO zsr%~J*<^&L5KAgraNl8T)TdqZ(Hm};Ztu6EYmekS$zL|{%uEN+2+jNn5IEV9)S|*` z0nU%nIH{4#IS6j{k+~=itNxa3%yu$m!c(yS%M(HAyNr9LXTl@{q9Ne+XW64 z$K${aF5p6J+BO$FoTkn9C<%VG|4+v?mj16Z*Kps(#CxX>O!;W9XkDgYV9B+^h#XeP z{|(Ntj`Smkt`_{M#)du#90H9PvG#Ge?D~+RrNK9Vl3Y{V2!JrRmXhU+v;^J-uDlYS z%n=~48-zG+3HsPRVW-FOk9d>)O=27L@eb?0Wedn2t!rQ20kos<&O?Mt5D1lGWTWCw z-Lv09(fNMKs_YMLlNR4ZoU4YZKAl)TfTfARJttTpCxl(rQ~|lEp^mi?JasO%xSIgI2GHx}R52{S;C6xcD`Oj$=Z`k-j>^hydH zsPkh$Q{NF=?^8OFL`a3jN;}^fh#J^|#peP<#_zGAoYF_=V83WO?zO%Tv`UVWycZ~< zmNhr%QA$H!A#Hki9QBZHYz;y$6zWI(Jf5Iw8gV7jOJx78@mKr9_@@f`~i&S{khb7%<+&0i_ zYEvk&a{)-0IY{^-$!;JN&^Ns=n44>S|3S??`tzc@R&QT>(DVcOdES>T(@&Aq#{iw6 zqeR%(%{R8mG)I{L5CFDTjvb3W>hK~r3zM|h>w>@+vcUXILX86fY}u^j;|;k9qK5N)p2 zzk~e-fSP<}mQT3au2odD2c#NRNZrKJcvm9Q(3jJ<@Ml@wH~N6Yb3Hp{+1_8-+0CK5 z<<1T`j@fLx>@Zi%=0}24s1c!zZB3jB%Lw)7Z*UH z`XeD95sOC{@Rn1(xPo5ou6zfNKz2|`g~EOuho(8CObJ;%ViuU%w~XmPEWe%#<>i*Y3z%y)9taw9j|6iy7QNV;nCQ1Zh}Et*?qyqJdx)! zkFacVwKwKtH+G53D+PW}M+SNV%gxZw-z}wM<0-@#>J0vXlpf4ORc`0r}x&7CZyle+YD=HM~zB(MW7fpir_dbxC+ zv9CzjeC3b~1^F_tPLO7Fnn`TFu$FsO9};~h!S?60%L7}iwy^?SknM7^TU{(!u$X(i zuC%+>bJNG;(cOMLadTfinXa+iBXSLyV*OnT0Ny@(Q}vw7o%B4b=Az*TMs=VNxs16t zimSqb?n+_G6*7{hQn)Zb$Ji~S1T9WD1P_1#D3Uh-$u}Zxsp`dVDARR|KUaW~8F6NX zF2(Qd3t-{PW}G7?@hsnn0!d65SYC7&yp)~m0(*}RmkG*LHfLM4<9#nbKBkM*1m732KD1v=$bDvy?A%^i0LrX z$jrrt2c$ilu>$feIqzATz+;X=BwO;pLX<1{mc;MsjlBc5;gLY2t1D2K*5xnIB-=@C zsmc3pTHeB0nd>Yr@>lq~W6XkpWK-ZaCByH1Z4`k$@MLP{Kx33Ia$Jz+RQ0NDd&e#4VVssT}C>RPm9zQN2HyK1xboPGBJvuyO&S+I})Ei2q ztKzZofdjgYVeD9X?3c+=kGZAy{ zuen;NCMeM(6i2-4m%Dc|U^=^mTT3qdbc*BZ)W)%;<>QnUB{H8_%(MFPInh~a*o?MUJzAoq+ztGKIn%_-5694#i5D?V zO6H{i*n+!u$%rSJ)PjJ08A!x-MduGd&5!~vK`XG&jzV9-4oTzZKxXq7Fw6`Ml73{{@5FgrDz z=}JUkk#l>w2*Xb;_mO01ZoO-Z@q1UJj$nl0nMYTh{Fc}ysNyMjvIxIK==-!u@m?74 zFl@8VB{~^IKo8=6N|G9x_!`tE-qKgFHogq0#0lGjv=mNXX#oG`Hy@!eKiFy#SHk}c z4IYQ@iAn}0W^GLnpS^o*qc}4v{pnzLTKo&}kNE`FF!@IQ!W#gYTf#?vVO;0(wOJ=oKI6d$2*@ zR)Pk^t2aeBc+lU?_uXYvc>)qdWuw7e^%wNVDKO4^iZ6!{=`Cr3!h&)9AT5LDgd=Ti zR9{_;lY=nSL}}sicYM5@5gqpoWmp4Ta~AO1@B6| zI3HppFEYC8`Hc&mJkklkV;9=yZsnB5bCzw;yxT_$WXj(j?UeE+rCsmO)-~oV%N2vZ za*7eJiN*8{g#7z6NJAH>?C$D^6t z;xuN+V|a_?6sSJ!ifk>^~~90aVj#u5;qW^-nS6E9W~MTc-c~ zBym_)9r%14W4^2sf|8erJRHyxKL5G|%XSFGhSJKYRIqaQZ^P|k)!C@i2)(U414z1# z>1}n2ye{$8h#byNNis+=+(Y+ax7#Y>jh5Y766`L3mlf?3IR_T*-DfQ(w#CFBP;u&>biG514>q9?Bu-wV1AaHDsBULH%8|1lNBO`tIaaJBno^5 zb28MlI#R5qeO0bIY$38LHl#Mz4DDtNjW7eM)RHpwDa8sX-<6ChVQIkvdA#@jDgYOe zFiFL{hwlw8OaBCwB<>s`>#Z;VHwW&6{kD=1VjadI{Q7>2Jl10HOM}J?OQO$C1~Q`I zeg$hLN)fVknyyFddSgIMo3HGZ)N{J3{CDOjr5@@QQ91IPC`nd9>$-tlrUlXNT54+V z3`@+o@ONv+IA{Eft&3Ux9vbG>ciuXONH`s-08#|63Y~|B@G7$4X>9jhQyjXX;%spw zvr${7#?+6d&{vf-X-+{0+q%lG8|C}4mYLc)Xh8Rif$z2yBR9qJN+=x(TJacn!LrRc z-#1`XT3alWkgQoYCHI9ssp{qFp-_fZK&to^h&7DI2cRl7p*PKOcg4IpFKI9(E+qGJ zX}@;#pFVsW1rKD_e?%K6L`QN)yWM%P+O9B@sB8opbAp#i3miE0sUoDI;qdh#y`k~v z5XxpamWvri_=J~&!$XJWQ9ykdNhaEj)ZH;d&!0Y?eqZLxso2o2a^OO>y9WL^rC^~k zG47!8d-C4*sin3SCi2VZ`&5@HY!zn=v!`sIH~saM$Bf;a0DdaJ?{}EbW1m)n2N#`d zUQv=d;SAPDaL3W#SWw@J=@~)Dy6U0sV9cLBkOS;)4|NsWbVOk)pj9D2&bC6-8Q+Jq zk@6+Mw`9T)RbGH{qozs9YwqH1H6rf#B|wO6fB!IqTaYe3lMg)_x4!sg@lV#EPti}y5U)Y@HN-KUklV z+Op=;?V)HjdxD5j$oHOM>FS+Rm-m|dY`NU0Oz1FGz?RG`FtOC+cZ4MRT?!>S2#wbf zi1xU&z(`uTtwRjqQPwM2qV}f$=Sw${60*SsO|jYm5_YriF3OFm2Cje;lEb{wtws_ zwzsVoe-w8Xw95WyhZfgpg$&y-9iG(hxX7RIkdVxNMW!Y@(7c4aq_BbN8lw`vDeIvg zA~Mx|}XvF9{OKIGW6 zTu4or9ffCkEKhd~%FHd%@EZ0`LlZ-X6Xtem+QWCfcKL{~7KoL1#>*c^wH?Duro?pZ z0N~wLW(t~F-u^vM#L0As{<(qB)s>u8hA2J^KYik@hdcl~{RJrv$Ap*r+n;f!WuvL8 zi9XmE`R2q*>o2~-a!m$-t$q(VNh;^Db+6nU?_Eify|f$nV*kJM@9K}C+(3Zvg-+9; zJh0zE#qkm2OpH4n)1VE5mA;?ZwV_}Fe2yc9h}8!x2bhklk?HtdZ0Ag5iDTRb?nq-a zIr$0k_k)#F+j&96=!M%B3lfTa0u1Nn3T->DMn+%x3)Qh1D#p_crMJ zyQEQM0u<-3U;M$p7GhCKB5M67toOXrqZh+3`lIh7nW6$D`B@}AGS2D>Gwd83REEN4 zGl{i5?SFj{23{VaZ)I*fg&@yY*AO<)!@Bpc8rw{OsCo;CqKF{&m(Yjj@PyFF2&7c| zQGWh*wM?!5b=D-%i7!~2t5iv?H-OQz;qKNlVj@oqy*3h?&R7@H6}B8haAonlD1IE% z*OD8DGRKMI*dD1uyD;n><+XX(93vYLHSkYXkM^3waK;w>s`#eJo*1e1HT)qfSxXL# z0g8c)V!YXjJ|F*pnARMnucZ$;D2vh9htkgKS-oH(#_I@FllC&llAIdXTXs9I4!}X4 zU7iyQZWqYCFFfi+W%EK&#g{v4+ovcPF-?FOCmK8I`vZu2?K*FPcgV+OFozI$Rf>8# zf@d|DAOZ@p1~dE?)^eQ@Yi17Fe%e0gNP3|`y)BkVq-#r84(L8F5Sv27c(h?edo&9H4~Iq-(R6Iy^YX3F;%QF4&5dNxb9 z9|Uyy2V$E;`XYGru4~=+47sVJ@bAAU@0NJJ0A{6Vl-J<)g*2~(P$ij2JTx%~S~^ai z1>Jt7!WGtS?{Dhpfe&;=FnQ-#%z@Iy5$*F-#2i7O=YLiIswZ5e zVHVG`U_(imymy2!l5+v)sC=)W4}xUCiU#u3>U3OGYA;$J0NeI9OaX)>C5R87YtXKg z)D^QIo%2$hY4tQ4d%!VKswF3pYD$Gvp=QLE6KvCXTIxxtIHCliIwGD*Q8eiTBG3r} z5c_(Etv#6K__MF5uK#X2?*!N~waW*>@=$U?oML>gW1gunCmlpUF)M-PT(1=(auTj^gYWnBsKecsH2-v`$wbmRQL8B<-s z2hhzSG4gMoq?LW6OzR|wsbVAd2ksWWnz#@8I5olM5VpKq=jLU3Nf!j0{OKaQ-Malr zaBjUpK4@~z-(7Yn-vUtA#B!DlVa;D z5T8Z~B+1j)%5^-r<$1<;ILlW!*W+`^CfLarMjsF8431h;i=Mvr{f)8UYS7L{m7@pz z+q#CW4i?{tFv=xQ+Fzcz=%_b_<;j2Rjp_A98z?XxkIN?`blduutOw8KSTA2+Q1XV$ zo3pQiiHgA9SgAnEZK1IL9c76C;sf>b)E9Yt&h@+TuQy@`f;6Pc<+6Mt`coGKEgT(Z zJAW-)aQ~)*zEdY;Pun>fn1h&GJR1!Zd^&TaDNb;HZ*vFmzW2yYx<)HKQ{T&-XiGxP z>TwbQIS8c3XmH@|fy&~3Riti>gP*e^V4)lVKj%yR^9>45=dtx;-yPDwNf+uoC}xp< z-5kZE&)fE_FFp8!|6>?AKf*+s+H=KBQN^MfRNbGr#|;FjoUB)hsE47^03sw085V7zOplPbm4fzDN)E zXz2XmbHUcFADf$MaFs4(#Hl11j)5=ogYhmM6!RM)D+{#!Np?JrHL2ONW?^rkzE9sV zs||Qt#(daNOxH$3TOiLYhP;$ipIZ*M67_1w$(~B#Ya>7a71a_o)*8z8GUXg@K;K(X znKtL=*7A%A)yOV!W3{B!^g6S#9#}8;Ke&K|xX}riUo)#(7|g%Wgl3|0`r1Ypz*+0X zm<;ji@B%zb0-PRq>MJk{9+kOw`fyQqAs`d&`A4Q|UTzBir@c21r?PGPhO=4~8q5vI z5K$sUnIbEav7#grNl`KsAtbCu$y||&R7fQXi856(Btt4mLWWQjB||CS?^uTAdhYvu zzVG?oZF}E;?rUqiwzkrF9_MlF$3Fh{-_EmlmL}3pjY9@N2Av`UYlV*V8iDSFM&qZd zOE<6d5H>v44L6syP?5Ym|4|C~abzkUojAwoPC-rMgXYI-ShBFlBUCU5=?{*LRP}6u$!X| z3?Tdz3{?-uAL}EfNX8RieR+m0$MDh7=cwFv7s_8=PRl#~O7?XC^+M&Y88z$t-txRx zU3cV_E*!$>bRc<7X4EIv{?IayiHSeAmQuoFr7Bqws2#VVkr2p}^d@MN7eQAWSa2eC z@M9wrILXjJl1zq!G9_vK*QaS3vai2hbrI*3rDXTaxRKWpdEnQHZDEsmFa?}^B6naB ziH`^wqz%ZizrWtRQ5TgwdEPav<_!%4mFQ9s`KJ6AjkMa4DLbTk5y-N9-g!8!+Gj_0 zB*&JgIsdk{hxY~6Wid}%g4(|vJzR>SgC3|pTF|r@l>0b+St^xZ(Mg&xdBU&WgyIJ0 zzE$|fQ6i{+?*DP2UHJ->>=dtXq zjPAkJ7_>*}&-(x79EOF?)E)cy)y=qT<)yjPEY+SgKV1vD8j1Y{nsaV+*^+^R$ba`N zyJ)g5fCh@0-I(KGlKy_hHf1*n$rgXPMSz17RE&heUKw1(TC zgQec%Y;Y8Y}aeWXk4i(U4Wsi_I?Svg~MyR60?8NVh>7STjLQ< z?U^JS2Xcro()^4TlwI5AxQNm3^3ZPAAhYwFh&kpy$zkHu-P;bmXlrLzG}7hvpT>A& z#s7~tZk>7Ay_k&S0uH2rZ*o_LKMfq&HbACIaOF6CP_bXJN27v&tC116|7yldivC|; z5_~I*d{*-QMKY%NEUUpHPuKMNY&coFk&ZYTSC90#+08j^eysPp5?`R~9Ig8aF0Dqr z_mA~UwmGWk;4qvI7_H>?7ht@x89uQ13+J{T)K#Cmdd*0iSUFYF=;WOOd{M9q3v^1P1$t4Jw}0SYUZk1YPup*sUFSqHb{bHxaT{{2bTm= z!6trcv+h1E%5w3$nCN(LvR9pRQ3+@#t#$k)-b0aiPEaHx0-U_^RyD58WSJ1d4Rgsg zZ9L)e#gAj@L-($I+!8fj7^DRj_ef~WX96?saGWDV4kRFxLy6=1H12YF+ZT6l$yKlv zAGeIXTJRW{3vPxE>oJVi;~PW=n+@hUxzu~Mofun~bMv~JCU-7g2IcPe$J2xhLMN@y z2%41gBf~TBSHf9XZ56v=wb^8=4jKoMt-2_5H7S;DS#_beTxvef7Zy>#(FLLn))zh2dP0lkt3 zhuXXJ+EEsAs8bn-`fpacQQYs~id)wR5mVZ^>5AN}0h1!6NDKAN*=lW<4<6m5X|r9T z*Lc|`R;*(xq-mew>qvTv37K7I>hTvWV+}O`e3o1d36$ONvYIpwRqbb5!VYC{y zZWUp74x>B~7$K_W6=w*!Mbi&EzbMB#Sq_XYDg1(ml$cJ$}COG_c|opC%f3ol zTKR3o^y-;{YPyu{a!IzpM@0b;l4V~d`mHj5EANxCS6Du4sF&5|#wD<$eJD^CVneYc zE)tfkqqXcMxM*BN^93rpPo8?^&NF>(9_ni!x175eMl)a~!KifS3wI31eN;1s1z7Iv zvGzra+v)|uar1KF-gHl~kI^Vm+ql-`Yv|{T>rZhAXH;2At*4x(dRXpK#j8ST>1@!i zj>A0g$x&=2q> zoD}C=PEqsf4TU42i`)^Rw&h9-{yU;0uit5P=oGFwm#u3) zw<3^*yu@DtFS*vWW1BX`gnYxmhx5#JKCcD}wcKFrCiJs~w>vH4+k5UWQ@Mh}>2!h|Z5SYM8 zY-=w;2442b-VtND&Dve~YStmOKfSN2u4+!ZE`8R^eIRgK?Z$lFPmjaNoLc}b_vaa< zi@0OALZVCU4sgR7hWo{5F3DQ*B;Ay^Ip4a?=%*MoYb<{Tcru{GGfK`%UK$4EMS;7~t$tmKQJX6` z4Rq#oyl4)^MR}^Q@9)sy`f1@Pt$vS^a45gJT9=Ckri31cV2@Ahhy;jps*#sg+(`GQ zCN0dLw(rsQQ+hchDm>NT`}fBcG9HCo<1V?Qwc#{>HbS{gfL6jsdc!;yU0G>Ad&v)t zPT5-#irB#)wgqZUj2vSFxuk_$h>SohoR57{{TFJ|Dk5JisZv9W zH5b;y&kovzCW*)A2e#zCjIlQvaesd7qy~u7dpS+-?>qlG zWk-XmV&mUa0z?u*K}?1#s&=Jn0r%aANy3SD+@c9vJ(;CQF6nZLY%Xb_`mxOD{=O}X zcjRUZ;;K6A+?8_XW)=t4@I!zyneIqtOnaUNEKN45V6wuCC}ab-z$t2a+Rm#>>5vRf z{-Vn5iGO&?0g0tQ>s$(od6d8m)tdb1>!yvJ@%BDz>(}V=>wMLvoN51Rs$m6s=FQ&C$N!L0On=^eRsbx)=eNG)WgTfDbupPWZXug??^5gtTTc=4hdd!)#x5(qclS zU9;^h3%41?XGa^)Sx?Lh2!n64E@I)#>B0G+k%-4dTgOrs7t`=VOv(DAP*mO1t}Cu~ z4`2fqTV`i^nmkU^N9M9><%%LvmX#EMK@=)@Jql|uuLu3t2J023AOM5796trc@v&#h zN>O?Z4_4f%={E`Tj$aE5@+-cm);fSA=S}6)UuV}}Tyc7t?#0=dKx*mvEJ+~H5nP5+ zU5bA$3$OXX{$rp;$o5;@R>d1#64jHn-*P#LTM4kZ_UEhAIXtkt)Rrhq-X^Z?$ClIL z;k+OEQJAfpUaOtS%TV~(2o|31A1WdDx81W9TJnS9?h<(N5K7<)Le&~S9}X(3XMdjE z+FYXcyncOo2KY7_lKuqE{K8LW@G7&^U7}JL1b%5gY6?kZM_?4Fi8D`0Fw}7OS$v^S zRlEa)D~`3BuCjQ0T@?91{7NEt+WIjn*o*+S^Y<^&VB*Uzdhu`Z@+sqZ#P&NyE$eqh zO#;_wNU*%C;-2fI@p!;A{cBO`9O$tKK!Z5b}j1QX(jr}aYWJMU&K@=LB z;kh%mSx3Z^eDiePMIyk`oP(1+{cm{?wMq-E2a^eUrR0iwUgI}Qg}hIv=0rCgkj^T4 zTw3zpe`W7Q%%czYO7ue9Eco`dzK~c*ci5!r7XswVln&lCj03frj9c%} z&Fv;m2ee_bn}OhZ`4OvOt(%|nC3}a2;sJ$9C_4z_^e+6>6z#9!sx0ZR!9sQ;Hizu_n1?@O&8WOd%3jbO zIbYNDh;MIy&~DWg*+w0p&6n}5;wL@`e(8u48JErK6=KU2jpg&*=2F-G;>ceK+SkCT zic~`oPbNYwZ4cf3aUEq17h!uvf~(Bv3*%G>3xjf;Aw!wCd(W^ZoK?t{w z3q3ss30XmI9sgECu2Io5lpMKrpC>I^CPQ64*usM#BItFp1#(X5oDU9j#;AAp3E!7w zTu~yY^i1OT5GcMlr!{eW?j1}7W{08GJVvjuP+99o7V={v-4U}&f1HXBzFtc-@2Fwf zO!V*To)wqCJ?6*pdS@@Y8@g^8mtg*gpnowX{p_U}kibaO!r{yUV#Wr%GpWAAJ|xRf z=l!FMfELKC``zeEB%{4Z7a37aWMZaWLv9YKSgzadB%_GitL@o&uZZAi&f|jXAhFy+ zV5$hFbdd{@-!1O73wbO#`)X-3Ft;ctcn^LD=sHpdO%icv5@@YhQ z)gO{}wK6zubJuMZP`i6@mWSyZ~}vR;Yz5iclmDI0UwB5dvrMcN{_q_}=23n+r)zeV2R&I%wu*&7E9QfHJ)D*;S-rBHV*G zzQlE?Io1VUya@0&mtwBUp3Y<0Xajh2;HY$91DqKOh1<0K{Z|Bt(p`C42E0~JdUj$Zi z0png~a5qlAe<$X8{ixuEDzfAy|L`eslh#Z6rJ+?zTH&A7Uh(~F$L)ypxt#7D+{hh; zA;PkIE<2wTu{#|gXZ%1}_r~T8$_w8guSY#I=rZV?Oo4(DC+trUvZ#;h1C5i(FyC12 zZ)1Qw-(gU68=S8LrL4h9!N0*$w7^HC`uzrTy135Psr>FtJLo#A?^OBl-~PN-kX4jc z3QrSxc`6{2P~1Y{IELH6SCV(<05U_ohRpKXtaTwX2Vg!IP@?G~qFcXUrdMl%EO#i8 zeg-MwCF%kNaJ*4PZp~lr1C3&Elv{U$xYE@IQtnS|T=hBey4?JtmA&6%&elE6*dKzm7;QBz&+%bRgFgqvCe!<|IM5Q-q~?=%laa z%J*cTOE`VQ76Bj4@L45m#NU&VpKD4>E-M%}iqidCK9D|4KrGACZ(o0pB(nU%Z!qk( zo#nOeJi9^!m8*tU)rMb_kx&qyZxqiOvDfHgqO6bheNl&F$%#|fK3Rd5#zmz@oFy-y zQrM&h4Ci$WoUm`dY4Em&wdeN`mq6%>a}%~eLcdNa;dv5rCQ(w~R{!XG79G0?YTQsVszp+KaYNg`> zOwmZH|BD-7;KI=*jZ0x8rue2z_l39w_r}wQio??lnumtO}cXu}k_0qmCaSnQDOnH2> z_h5Bb>4vG{2NT!g)Nbgi%wD?P^s>TLs~@-)q)zqX>Rx&F=&*AI`%M+Q-|x>``73!x zUVW0Re{-4>l=O4cITgA-p9*Ietr7(JCf~gbAqB83oIXAv)Z9NPmb=?ddDLE!1^Wr( z+AE}nZBBJXW2dFFTHr2!CPM(f`I@nC0gx*~|SHWwRRb-q1y4yqxak z`EIX`60C_HLr1h)QqUprctsTmR~MDqspSH_s*i>Q`TMU73VSwaa5^e3pIYmPDnzuc zL6I!c0E9-H4C9Nd9@?cLJ8$EG24l8?BY$?6%;M_W7h>K@#jfy^rv<8?A8w>i+g+dSS(SBg59v-xXlaBRUj&R` z1ew>wK3jSbNEnant^iJ6UUNoxc;z85J%mT+)^I7fch-;rQ@aXR0s1Ic{bW@~+*!Fh zVQs9R_`N=FUJ*h0v)Z?STPkQI2QU(@bO#}f$-NqH1#fFNvJWa|)~Jh*XxmQF5r1u# zS>BRfSXN1*B}(p+M%d38nBH>fw8|ed1QLnm%XLEU9vcGiK@Z4k8?=NG-)ghPsREJeA5Zt!kTT55eXonf zOJB}^bEpQ@M#)zpl32*j}Gneyw*cLRu+R5)*9iQe1&+U(C0yqf{d;b>D62^(UiOvGF1(zdZ9=R89^? zS3Xrj3w!c*v>}il6`@sjx@klzsgxya{`OUMyc&Iy;zRExyKby_yMBDKUjXH+d1uC~Xh z(_duXq0_!I2}2`GFtDoy9X02Or}hypr4_fGsbo9gZAZ9 zCq5ua3`<}LA}11LVO$msRdS0nbGt=dqNl> z1QX;d)X$APpxlNrg1}E!ZsdlITr5UjK|dtSPheyLLFILA`zbBudq-5!$p10JhsR67 z^UT9=S^?2VO|ud_NB;Rei4k>l&wX~#q4l&Sf74qsO)jtE#}jD(TThU?S~T|`4+zE* zsltNdu!Kjka?8 zE5TpUu6w)!v!Y1SqrR$YFrCz)+8k>|Go2emcv1Y(WHfBlc20CPTh{9ofY)no}O zkw!bY{g<-j7W*gfx0^RADGXs=siAw^5b-EM`tdJVe2luCYoPblMl#621@(;Qh!8F2pZ&1m z!ki1jnR5z<8Y5Oyy#MM5+Xs(F6?j2oG{mBQ-YDV7YQrV;xVfXZlU0;XnkzAVX(>Qb zJVO@t_U}^TrMG9IeigL<7^&CX`pV*=l615m>%seuLuCfz&W@_~SJ<7xJe2jAUm!(b z&_mJYzgW8m#f~H?b5Fe3hj1F6dvw@vvU<>Occ|fjbc~49aVl)S7#XVKjh53*04=Ya zdBvlNt)uq-Z4^bcF>>gRMC4H&5m}1cm+JFq>N3X!B2jdYmDu+S`VM21WgMC_UC`iH z3?sie;_2kGlKE{REm1vVDwJFfdLt>J2_7C9M}wGS9`~rcL07?Ehhi>5DS$w6h+uA= zRB==^i@yw{8Z}1NT^~@uw@|ZWdo1qurCxrnIz)974pg8QZGz&YZbTKR@d#~Xcn;n>W6G#(`7fn|1KTn=_t!o$ z6Js~n>T~B_WVCfguR0Wg0`K#AdoGJkVdw3(c`>~I+v?c+x5~5W>KP&`$1DtYZ8xP= zii$`rTD$A&+-J#a^Nns+NjHkSPqmlOzk7gXafTu9YyX9MTtTxIC9i@KmI>TRCyuo6-hivER=a{+V5`&&RQH0Pd2Pg9~<+NY^m$!C%* zM2>vZX;81~5AOZ*bj`?8u%_6`DO9f$t2I80g^JO8C+8yjwp+b25pNDwc`HTM%UOIX zA0%&c(`?HEz*>}K&5;`P#*@8I$Y3v2 z#m6UH+Qg?*>PQ-b-jzCF9Ct7TE@I#9Dety2*3S5hQ^yzwO5R1gI-Rwb{mAjx+9KK% zoWw>b!DW{4o@?;7gRiqp*cdGmey`rfM)b@218rI>pVWKOMElEP!`vG!$ZZG#eO2z| zQ`@1wMWm}Os<6>-@~q;%KG(6GV&z=q%0joi8WQ@8wMC~f@p^Co;0X+I*2!}p{i*oH zcah$B24ufA+KgUec3PFgrma*Tnib-qmuQQvLBs?4>w2p#Qz#(14gx!|O0eqpV&)@o zHvf1L3{nX8ND&Pdb2{G6A_51gTrmZJFn$1T`~k2m0`7Lx#r2;9@;O*LA>hmR*Jsa_ z+pU9OHhK#mE9!BpF^NLpMzs63xE-s;&z^OnR8`^(J5TW=nH+#DP;27BJKSW;=tFGh zWEDM-vIDd3_AvEH^V>`saleBJ0cmR5mLcl7^XIjY;Yo{}4lLdFXKymqMg)@l6GA^MGDhzB!dvs5x)^lG@MV zY`^oN7=K_Ko}cac!y1?F4EUuAPy(0gNOl4Yfo!>Pd_E@0HC1YI1htk%7A=h2&W(bP z#g>TXda6P|KB1OD*UJ&(6iYQS*Klvm-H+?CLe3;VB31lm5J8*)SYaXf_Vd09yGk$* zQHq^H(r4)e77(kae7uU$WQs%m_Y^TO$*D77J2X-4jpyhdi zWVF3J2W9JyBW}-x9640GX_rB);JNovKqB5r-z{ne;b0&pHLXRLV(M^+^90eK3jMS^ zFq|JeZz4yoe#M|IAbynB1Wb_j9&!-LTiaH|IG(=dJu}CNVXyM}r)=8m zf)=_0X#CWJRU98t!MoJ89-W{|KE~|1v5C6LAJbmqbPlTp3n(tFD&5<`FaX!iEPejO zR(t34xP?bBXpR@yx6|NE;&s1wOKe=H+zp2x)C|-4m@O_o9Ww>L&Ry;85%)(%a8%If zF7#DjGsUnW85dR`@tUG{(eV}3gHn6!G3((!{UJGhwM$TOdr*T);B`4fHn9sr4-;h=c-qhOp3j8zZFLI|(9iJ8_l6p&vcA|YzC`iszpWEJe-AtY|V6H@M< zZhUKkS-(d%$tLc#F3h^(2iMI+z+ZyNN@qvr*uAEIV~;aaz*W4`jF;Xq{Tj+mf6l2> zn)~;YV%}*uG4J+qpJ&OXe+#pm3#OIbbso(@&X1?eacI2#NRTNAL6Rbs?>#b-4gB&$ zc+sl0PSB-T)CeL*JbRy(E#846M^}7?xQ0zgAqCCZ;k_JbLt%iEZL?9lefQVYZe#t5 z=I3j0or%WRNn8CYw;c24^igeIg_Po)X@Uo6eTQBnU`hTGe|f7P1>_1lUR+X?{XIjwTryG1UPpZ%95c_-Uc;x9?;G z_zpD-KiizC$B-b#n%5quRqVn+uVIH|s-QH-i&WqlL^C-e_Qt&9TfjnjCbrCHXaImF z$8?Nfh0!!sJ#qWoxX40YXCBln-E3tAW}Tmv=K zs;V${w&4ni}BnE-*ZA{8B(T+a0@!qUv20C zAJCkCUIBh=aM4k0FrN}8M(yftf4Ll^4>Q4+G(BU(iBaQ2HrlX;qFC>-3$rmLNv{wp zG*X?`TeQc&h!)#651(^^N`?v_`AAye4PsQYF6eDtGGRSa#4F)gUy!rW>w98_h<$pZ zTs%|1nkur$_g0scn8DW4^U;>Xjmu@>-Ugn15%-#%r=${}$S@C;bCE3_TsOxF8OAQ6cc+N(8)7%xx-t@VNdH~>-9 zhD+Q8vbfX0ai`O6ZJIj%6ZD@v@Di>>rm=A*?xtfXj5f}uDYH5F4C(}#;orWxkH416 z%KL~09Bvb)Tc6(f^rRN9_L-ddKY2!dWY!jAT5RMi`dbCMHJ2$ko;p#PH_OtGkiI$K zcJFn{hOu+T%WrKU?M5NEFSb+Sc6`GrZrK{RYWzu@18fvZ&K1A5>)5m4d`ws1h~ogm8IWmzFelgWF=TI za?ltea|UP;zV#p2M?5>mSH|v}G8RVwYN(Bqyqz)kkmR^(?dE}is>qy7gJrE7fc9dmjJ`^6{3o&`{G%G#*h=Zn6RYvZxgZ4tLbS7`z0O z_}WeLs}qF5I60q$KLG8gavW++eIzg@Q~B$7IoloAZjY3pSv_Sx=eu~L{7>RJ&OGeA zm1(AEvAe0W)Osr&Y-1u>^lf!kYK&gG;v7GkY=6k4Nt9;`@1jUm02SB_I~#%ta??AtSJ`bB6~$JmD2eE;t0{nntq zLAmu@Ch9N>HEtIEW6BHqr;3vRtec@vLXZm3`t`Swxo3v#kjPDQwbVF^!-%CwRdjr{ z9K#;q5AO_qI2zKA{J6UKvOVRO_abO^*W32)I%b0Bj|(H~x#I}Q#ZMaXP`@v%e01pB zq9setkgmF_T(8j}ZDb$B>0^-t*uVn7__by{9&iiuP%iMsllmF~^v+Eu#} zZXXvCLFIqnGLsp8wA?8VT|2nNw1WeC^U#Q1p?LD^xajF^KrX;V^Oh)Okkb@M(@u;y zG)p7w%4j?n5f1tiK4FW$u>lyP=rdTl!*=)&Y1%~YZWGfq8g3$A#=oJAvpA9l9OJIy zP*D;N&y}||$OTc)gtO3naLBK8hOHbz z*XgsJr{+go`Q$e0)-ueRL^p!vB9Oks{P~4~TELE>raAxqVG9qCFceH*bAWpCM+ZjR zZO;#*t|Yk{oPYxbg5a`%5jDZ_`S$Rv;AGzx%K~&`HtU<6B4%haEZJS-CHemOGw5NvF0U%08R&$xVOU2#TCy z#LXE6wxekjW!_4;vB%J2pc6g$9do!B?WDuF$&s`~(o@iRXak_5pJ{%FX>N-jkWlj) zRN=fQJR4QHv<02l=B{zwIQAyP@8tA_t!HuJNV(8!&DnYMwmj1!0jX5y+2TFe4 z5M|1XC*NM+m9d#(@ASRlm^@!{ESI^cMOf6wSo4_EN7*vpBzDZv6xnWE^l zF#jy`C1m{8(MqPzn7d2_WA3jdqVbSiK(MCY2>)hwjJXldk*|!ILZRwyvO+)ROMo+z z9*ibc^insjpKyrB@(~JNhxIhOJ?d|&aX5YnW4`VL9LlF~7faZCzkXQt{Q2`HKfg23Pf@A-O zV?}jYNNy9RC~H?A^fHnydwr1U#uZ=3oeR01yoaL9GZ*oOYe&_>FTYT#4tP3imGmA; zEmJ-Xy(ySs_`x_-y6-`cZ36*vF%ROZ4aF0BOib& z(6$0VJ`cWnux?y(Sa~ne&>p`FRi2mV_P(IxY<=&1iY0Ti1hym1@mSX)bP`>I&lKD} zE6}J4&2mBJ?b(Q~33&q%LsN=f)=;{`U!;ELLsrkgotte!zcs;7O~Hkhq8-vF9-kF% z&pRP6f&<$Qs0>NL-C9yO!G+;8)ruvlK9V(@ZSKHj$B_fagqvv{Xd=>C9ik#MC?s6y z9fbSetZgjyXt<`7xnJ!1qb^}IpBo5l3UN%^OsCvB$=obHgeqH43^=X#qrG9n2-wU8 z#R6(xuIZ??d=7Bl!`u($ImGxtEJQc!JSJ>|2bW$u!u;#o?5w@2TvXN;6A_u#vk|?z zMHsi&bev~H@tqTe%w0D=pAQ;^xk&w5yZ=rX_u0nZFu}g&--4)bq_R-5W@n;%oVb5c zkBL{05>@&AQ=cY0Cm|nQSIzL{OPt<4*xx`V$4UL@`^pT{V)sI{wB(K9*jnvki)-~p zR}DAVWj%*lWqnTrM(C7ep0#vbW3f<%H(CKw;*3OTA<}MqBsrWeoy!c?;X)uEt4b1! z{{FDVg<$7RHT(v9sj#_XGxIB~#MtAaJkdo{@`OOh3IKstZ2GYMB6H7s@SFhO8E!Pc z{HffFIDS^OcHVqIH?&|LOa39MNxl5W3vE42&+D!egvjln%WM{kGS{LVKJxchffZmc zYGNBy-cCq32FWf%B@*cxO?RbTq@A;CHKmeiJt~*;WU4j}`O2@bAj&C&`I=&A!_!f<2{K?bqekC9Fzy;p`m7?l# z;8|xjQp82rUl)m33#N>zTZnX>Rdi`7?$of0u-x{kp1J9M`M=nZEUzei2N5)AM7HM) zy2+j)&pnU0DC&PYHWF=edGX%J@pH)kH66X2N`L<}46C7_%x&&)PYa|T3LC(-|1&Ri zBU9&za6$vKKvt?3ECW{qBbfg9mBs|-Z{U;|O7j8l+x_tFZ6p80zZl9NT?M>zp z>Y2xyKX6(OI_RX5F=bliWO|7C6H>bHYIQ4-C8u?;1_~<6!2u3m>6*_nZFkyFFeGhK znfZA%OHaPsi~YrAW%*0z`+?23y&|~WdM$FOo@yyguFPYkR*NIpbHGkDYO}sTdKLqb z>PV?Cbz=iY@4Uoy7It1JJVAZdQ7|gP|IE^di|m{7Cvya%MRX(9X!)GW(Scu$yg`a714E=FOH3a!qa)}te zroeEX0U@L~RBHH7QY+8`+~m*Q>xtT1dPdhmAHqgdqq;VSq)1PKY#}5Q$Y?ll{Bo+g zHzrLI@YP+r#&}Tcr84sy^=6}1BA5A|OC(g7;Y25AHU*I6Y_%&03>M_P@kXAgb=sO6 z;~%WGgaj>nZm&0pl3V!YDx524w9gj7r8Y`eTYQ-*9QRfO{|!#!Muy3T!!#t)&WtW6 zik=-iiE0i%8hrRA`S#wsVB{vJn+Wx4r*LP<*e#%6qAZu?b2pO{fLw<-jOpx zkbCX3*1hrXqv}EUw(b+VC5&|7wnk(c%In>iHtdk)JB-%T0zhx)kg7v_E#J7qXn2uA zO3vm^Sqr}+ffX?I)oM?>EvHE|7ym9jnW-swqYxbyPc_J*vYtDck7^jPx67>y`~yys z%z(qZ>m=2%;^J%go+AsQt(lH$&C06p-RO(;)rtn%)>`yf9U>ff^&QcPU3#C zcaF}CeOxIEEa%oi;=lK2wpss6^P$c9Nzc? z)_7y$`zO)4k)}Ieq8tlhWOS2))4PRt8yNg%{dW!VhxW{_t9>c0uC1?Bb0KJ8aenXsVENlOr2 zJTH-QAY%FV08<-q{%ETRIn5(kNSrRzQq8nl&^=UP;;Dq&*$EVa0p9wIzw|l<`Be7-cV`YTD0TrDwTN<*c*jE zN}BY@WGo93`*}((v@?Mo!EopLlL~kPdXosAPwdX!ZaBGx;KdcTd-nokO%(t3J;-|o zBh0t>h5i+@4`G&1_SI!NXMERS|3>xLqFyM)^jZzy!EijEeMlWQz&MQdi)EA7)8C-F zEUzE%fu>FimHoq6GVaG2{-kuY-r}wALhkHc06SjkoAKo6!WFlD9E`_5YPIx^Uua)8A&1S7(_ruM={d7wEl_c3Z#bFq z3$0>`)KkU5@r5%NH)dFAv3^+P6jdcXW`zE)KQ)r|{?|Vr`;$dh@Yq>6f~&^0%)j{! zqLRr>i}9~Nz-|f~l7H;_3Z@qN*B_^-Rg6pAzxfTF0^7{j-MA>|-~8p6eHf{r{jY!E zKU?xId-E?_;$T20x9`Lp%ehD#mO32-a%e5;wAN{53g*p@dAO$S4SBxXkNkY|P8nWR zFnqPGm(@o@J~Y(JpozIK5h$d-!_#L=`y+!@2&&ffLVHCJ*${Sv`K#Om5oHvh_48NG zL2`8nR03&OwdE+bcRuXc3y2u$yd@du8r=6?fN_{D`Jn!{C!`%ISTZEW84aVhD^t2m z2jz(?aM}BN$?_w=diO%3_PsltDm0aV-?I4nP(-)ec947w*-MX1VvmJDQylDhhQ zuKbtXD831=;l|_?$5A=WKQuXq*B_yqZ-9mSJDVWVGvYM6@egngW##We>GjVQ|2!4` z%LycE5aO)tCUswwK+M{e5IwD|?oS#1mEt_u8d-#HCSk-&=3hjH2P=GoNi!$0vYA~O z@2#Qle?P7`H_aKpF+cI)o^-YnWz-0v)3 z>ZDO8#*@!fxl&)Wp6E>mLK7IbZDJ)D^mGl}(|mb(xp;PCrgQT(;3pa$6`@FX`NTdF zH}@STX`E*{WM+>;Un7~I@#g_bKGL&P+G8E2HWJX~;?BdEdYD#`3wr0}`(7tXdu)Gi zkn`P7uB`VGutS30-H+`%)jmj;sTizjex5e3baD=WlgigKUwM$~HeFCV z?B0n`+f3xX=;WN^k6aE!MoeBW|I?>0?TU@4#kLLdGM=9Jv_1Of$zOG@)?*ICJX9P@ zKfgz+*Z05+6HAR1KckO6S$V>5@c{$*Z;;`8dIMX9+M|JvG5cdTdk4E18f5O)9N&a;A0Wvo zJ)p0>t=feEZN8Ys*#irH`d#iJ_4Jl@z`@hvmGf3jPEoDYKivH$Wrw=?*MsX1e?MRG zT|e*2P;%a1FM9npZIXB$cX-KfCaTNgn^3TYowp{x9UX!v71349f|U` ziz?&IkN<)Bcr5|HQv}=N=Xvjmb~6!#fRfs&&f#Boyw72oYVn5?ew04$cJ1#nlZ&FZbWwu7Ao>AW2nKa|G*Jmmc3 z92Dsk%rkyql$mK)>ZR5+mdyuhfzKg)G_-FwX2n!6%jCq}K*@o%*JWApwz1Ps+R*rj zZV3-R?N1wo^~^V{6wLwB-g;@DHd(o0X01ad?He+Jrw`S8N?v*s(f9p5pgw8*RhAyD z+81>r`(8hSZfs7gSY7(};6;|mayuxIq0d|M0(^fz@cnJXvcuCVGC8WR{kFxUKB?Vy z?$+D($(L1OEKGyc;Tg$-?H>Te2`lfay!y01;)6k{V?w@cS4w1r()v@hiYx2?dG%;k z7RXnAxz-{$`sXw@c5lVXRY-NG+p(K$uKhS_7g|?Qq%=+6jyQ&mEonBT4tA_+JW#T<9RA(JER-5Lk&iCJ>I(d z%S$1zFRE)djLFC7Rm>tN68H9%8%7+r77HskdOgw2T^k?lE(s6FX(A1+N*E9#)ptRE z&HIq(tC25Wxtz6=_;7M{RciF&75ehMq&SJxMgY$SrJd3HH`o6LK9e7isr>{`9A-;R zIFN!A>hh6%?VtYS{tqFF)wh zuJe-^GE!2oDLs{35oRmm4#rpO;YZ(Xi*U_?dQLhJU}0M5iDSuS@7Z+ z4k+Gda5Pr<^vMIev&ZT(GkeC^E|;aKzYR`~9W4YPWqf;jZ+IcXkh6BbH70u9|uPn)S;9SN713`0_TLL?FMG`R-u~16*|t5N zM;LP$9ZD+FBX?Z<*pFPsI(C6W80^uhLdoGCJQg?epSRwS;Cu9F?$gIEy(oLq;!6Gd z2}hd2G$PpBc`Z(a{DHE<8je+kZC?CBX?x@_h{(rTR=s%A``ga$ z#fsZYWpc9MZrxEl;_2am36P8mEs~(S6wLQua?CL6x{sX%cFml)cO(_E3)NvWormA0 z)#>$K96=oauu+rfb%^p^R`v3aqGG-;?bf8%gDR>SFoGaJqSeabRuK3GF6qOgNvV@_ zT$|G!Y_@sHpKw=qC6s>zbf!~k`}cxaS;7}sO9f5Y`G_2ca}##0hZCoNA|YPy)lUK? z4k%^q^?A`gFk>vD81WE`Z@@9U(wuBRwoMARWn?x+*``9sWKeB0xk@NWvUj&b7^8)Om zUcxipE&q4l+vJ?WFL!Vj!UWHjambQP9VuP$K4l0w`*zXqYyNqVp{o$5eLcDT=|8XT zcrZwQ^9*V4B?&J#O@z$-mmjBng%QXSaGCi}+xCy$;6;8v<-$7sJOAb1j%?LPXBKIge>wW&Er7H{J`#Pq>>msGhkVeMBkLYum;QPJ zl4Rma$RhuqhTZ=BBAUpWMoT5Mj|8G^R`81QIgd__DZNwWUm$(*&@ow-bG}E z|Le_tcbqz(^Esb=&iDU&JkI0fe&6r+^}ep_wVto%>vi4NRh8v-5mFIiVPWl3ke61& z!rJDJg@rwjza6e5vIObEKiH0Ha*|kC4F|@su*3wMWX?L-Tr{D^k%!A1 z<>!$YE>Z1ef4@Lo*Xw^bJZVcMEH4Lq;B1ehx19>WG$w ztue~g5&l%xfd6rG!DU`a_zS)e;M@H3q5$7fxN^eI&e}xFnAg}`lyfk&Ggm?xn^?n$#uw2u;uR3u9Msrt^9nZ?W-Vq8m=~d!f?QCyaL24~ zV=+8jX3iGICXVQbH^*{9p{$)O?0$XG2xV()VuThgdPGA92SlD5i$-5EMOmYlhrVD3 z8u6<;kPGTR?K5&!%fi^neDmI8Jc65ZL9WZ2SeTh(-pq|zv5g_-X7oxN%?&}lHlP1V zQkxrz*-i%(3dY+a$gN*vZnC*3Wnzu&HfA5u?*VQ4$DjSa8xG&?<6jx>w6eOaE02w} z4wr%fm&Ivzejx`%c3$4iJ##U%c1G{Hl7gx_tl*5&<~NQ`ZW#S`KsnnQn;^2{2Fr6b zw{S91w=*EAH#99^QXyLSJNZ-Ez+j6o1 z>7M%Gh6^YsCzK65iMinfdPpY}@-Fnm;b9ZBYX8QDZCv_&sr@25ITP>(P7ZFcdd!I2 zXr02C3O8B;uD|FV9~b(X`4*ky6+mA!MC-cQ_puSD@kjIl?m?^5@6R9cv_ELwZ;Bf2 zueM0q!5JJg50{+-3h~JQnz%QlD`{wCWwxOuQYdQ_;sR|^wxAyW6-4i@xc}#-Ij-tkH}Nszx(Ae=)vI8{EF){urfB6N% zqpi;o&!BbnltWaO9rZfpo5`XK>C^A6~TVQOf}+8O?0hQDb`8xHIDx9t~w`Yw_0TFlPH z!NdFOgpnO>#{Xe6LgQx)kMmd7Hw;MJqHjMb7tl6#h(|KDHo1t79+Ll9Ao))^_kTix z{#4GGn+t97XsyCHN{m+h`+YID!0*5DpLWInYv+jxYg?3A=Awy_vlEabKO&)Dkj@`q z*M47rH^=@B&$!hCZiK&oLRT@=m;f5yp|ymU2mN`AE^~9EbE&P!;?GC8VBF>wDg7j! zf6Tr7{|Kj|nUBAVQ#VcFpU}50`h)?cTh$43?LQo0FyFRz9IzgEMa$_@Yi7|p|j_T?CVj{#~J&Htx^GzL-wk~2hV zFPH(*h#%tQ9}(B)D44NqE}|2+@0A?Bzp-O~G!Oen$H#2XKQ{h`Np5b$A6fMO+=74R zN*$d{>_CVY5J_(Sjbx8os)&en{^c@5?thkMLB|b94S9cn)&HH$5MxY#Me2e3X9Dr3 z`0%f%f>57E^Mk-CY<$p0*uhPPaf1;=WcUkPi1oLsL8>HE`?zn z?!P~K{DgF1^Kdyp=^nZG13~i- z0ojc#SoI(1>fUVL{=0nu-=s98Wao@X-UT^E@UIK|f7;~D`-8LK!Bi8sND6byR*Z!S(SIH}Vfrbz$O+D1{GXMR z(9hN3zlfaBz;%n99NmyZU&t|^|C2Vwi|Jwd>)8}Kz1|`#8w*FH|2u;EA&J7Ia(_KR zp?Qxjg5u!d_$fF+V;|C0`yc8bG=w%B=rKeZ$&ij4Xz@o`nP7T)(Fd2{FstCZll$EGl75^!`Q#saJtFJ{u9-n zKiuttl&$~%+0%^{-Y9_ljWe*A;>a(@jkm67<6F#`=glwB4Q9ytm1@3q{v@8PghwSaWEf7J*S6h=TUzS$HvIcVNA?fNmL=kFoA1Rv zd^sRng7^>%-I2=@8u-{6kIZMVFE}#bA1)81S7Rvh3plEShg-V+NyhAY&{E@ZJ?jRc zOVec?x}ino6JKUt&P+ZTJ}@9MeB5gFtB0p;Z@K4+9}y0*4;C&R7B;>F*2bTg=|2nk z>2nnwCdOPre|Z&4GW6;%_ibFIE_J0{V*dO z2A?J(wj{r8Kg=shj{4W@rz75v?Wcd9fbqZ&>&F-E`t{VYe4pXd&EY5>`S`;EBu1OJ z|1cw5S*#?Avyucme%NlwP=PNV)fv!YP1+579Y4u<=@Kb<~!+eHnc4FzXh|bK+b}lGF~N zZ=YX&sbzKa`qY)D*q&{`sUp7m^xNWV@d)2-J8HXKd*g(}?eTv#bNLV-!K8%-kx$kB z6#7S)6FhQGMe`BZM@lGb&IQwo>gao~I&0?`Uq9gZhMS=6B>AtTA<>S1k<8sJ*8Xbj zrRk#CD+j;PS#j_9)EMeD$KW;`Wi}XD@y+D(6H>ZgDS#avHm9UYn$>h??(0*GgD0=~ zD2Lm$KcZ|s*7{r}bL$J_!zCsqRRs0N+A?licjowyMIXI?Ce5DK^@IKFY#nFr3B^FS zM9Zz>y?27nB}vfq&Hm03*X&dA$Ay9~rt?bnEl*@eGATt@`w@`!;rvQ*_68uY=os#{ ze@)Ypd9DD*@QrEu!!wz;s8OXi^V~a6?a@E6MOmLw`@Zwn|1w-3l|RO=7fx=ShMMjv zE6JgLlEv`3sL^vbmC)hGsNV7e?!k56S3)O-^Mpv$lY5wvwH)`Y4(U>QFx@xHfyk=v zLAG7vZ3O5E!EVycFUgw{nG~JuhWse@by|`PnXY& zYymHe4@wO!iOO-9ml+3x%~?@i?>wmQZncfDqH8hLUQkH!imXc8Wnp2{BI9}XhrgULo6|B!bI+MfM6`O zz@Wlw_7#~*^{eY-LtR$c^V=TXYYSUs#9`YO9+tcFFg69opycCVrt^Cjo$2mH_MAhN zY38GPIkHP<1Dz({oi=@Q_ajAofZwY|kw-xq5)C}J@IPS8n@$rJpfR(OeHxT&-*+FB0h3L=ELwC@%6;rD ziD;SE;>&~4-kOW-XCFTcDC5v8zUWIuD$eP{bM}Z(-FY=T0?aC35zx(%%Eepz)0fS4 zk%+Ej-_m_*ev`8MQlIaR!IIup+etgAehQJ;pndWUJkk3+!WriSgA&Z9Wt>TbE_;uq-fdenC`Nx>u)0 zF`Fk>Zoe_Vn5YhY@r0?7mu*jJr*(@%ivn{^tdQda!VFR`P0eRYPsr%Zo-m|JV8(Nh z$4ZKPc~7(7fswN;Jm{`wzf@QLwjI0gu%FAnn-Od9t)GI`A&u0FoLo0_=Ji2uw&JSK zl@tbdDsNCImbgrfKbqTreQkB6?u9>5D(Ene;R{@g_xYJionHIcbEK~AUI{;KX;gRA zS*qgj*!zO)M{rL?XoJ{_wR+>%srM#}pFi?=F3+ugQy*CV*3_G=ohvKsI<3n}JF;^7 zO;oP>e#|ao`T7wUE02!dxL+$wmWslD>zoKCi9MjmHbs!3<0j%U(zbIP>? z?xRUOmTgA{8ng6D-YDjm_r+iAzwW%2UNP`GG?Lq>DuBj$61-{90U@=g2lUR}=lncg zlJ_uARAaV<`azTWRWfGfJDs^^)K6U7watW#GW`-9lXmUz`kFB{Qu?KVcS@FXwJgNg z^3vO}^m&4^w-2>q#G0R4s5`1WO*p=`IB>twJmzirW24u*)vJ84w~dcK=IHcNO$bwu zsS@j$Ra{LESKwb@j>@(CHb9G!99C+}A`QvUpDVEC=WIn)th#ik%hpA(*VpANTl(wA z2-pOvX9RtRF`-&NIk1a~=|~=`t=KRQ-5=YWVq%gM6;z6gV7`oL#6n#a(4jmAW3%pT64k zkpISqJ>P>#&I!8PlAJ6Ky8ilm&7`d6PWngo7^OXPo_uF7Zm+2$JBPRUR?C2#l`C(j zr$zgEfn+0LNz2}c7Y_(npY5i~HIL2T$*Pm7=d`TPuXLX@iL|&$-D{#fllMZlSz|np zMa#V$dDf3w`Hy+F=X*Xtg&v;`uwah%wxM>npw4aOS4^{w2)QTYA6xYyRgr>{&%DVi z#cRIk%5P3mn5yG$Q)}~X&yO@BE{~EdI&i|t+=Wf*vnT@z%goD!9nuqI(n_>vQW>P& zJ4tS-B~h>&)HO$1U+TFJ{<88I%e*o9xDajpduyg4a5_oykiRa}$!!DH(;a(?>k z_3u`Djt7letTZcD>L-YKj(4RhKX;;OW|fn!copEKZ8${EW3ZWo82+H-XlI_I zaB)&h+-R!R(EU?UY7716YN$jnc{^pst#Po-S!$uEYR;?tgsUN+%*})Koop<|gf4yM?Ytb&@@tP_(;6ye=~Eba(8lp%y(B=WF$x-b;0} z0|(dN4Ml9TX8EY4iT7cz2)4sM5j8?g?4rAdOUO9qa5o`ZZ#Te+TO_YX;x9EE;PC2p z?zkSWd3K7Nw8D~da7xS}q9EuaCngGsK@{>(tyhggqH}YV1A{xSS;L(e+hT>`#stpZ zwXX$MwX*WxEOBn8#MEeq-12{jK};6`Q+>HAK#g~8u4UrToRe0&=EE~lN?Kh7C<8}Q z$$l-~pxC_<4Gy=Ce89}{87stBtB=54u8Emwek)Vi*=RlsQlf7V(s2&& z@DIy9aF~DsqkW&1v64n;?2F0$=33r2QI$pNyVnGi5^pC0mKi6`OWzLBuEvvFMBU-Q6X$D8|u$MlT$zxTAi0AkENHP0&olIhs zG30nBA;6+MNz|LW+@^a`@AGYB2Uq6}*7F3@>1V!dKWc<`J2!|C*A=5m^8Nr)$R}$w zsah1X3CqBpRI_H69)f@GQ1Y5y+(Ahy{^>D~8n#fK{2{w-7$l_uNJ_2pQ^hQ-Xk~ta zS>^bQ->KMRr?bkw>a2g3K782gI#!(o;~?8Mg=ct}C8;sPl0@;mXz;gSQm-VLlY4>< zF7&BA3W!a`Pk4aY>gt`4`@WK9d&2)DO5yd54YzC_SLs7aygKR?WZMYcSa3OfbG1qWxU}w=lh{!z%hn>O2 zbn%%wc_(d4XJnU#IK8#Q0tWV|%WTtH!=HR#!0D|#z>N_(allQ;eGpOSxPH=)I_~BW zWUHpZkDFDo<__`Z`l-8INzw0%n9t)N*a1>W4coH$cAu2Pd>EO~sp>*zQx;4ucrr~n z?rwRMLrhMqfPvSNi3Lo*wnx>o9sk>?ocJvju_ZrF?3{@G-+o~YxJd%^Ml%dL^e<&j zcIL`?eH%FVdXTA7<76L_(wf#s*FeImH3jrMGf_kvvOAPZo`!A!>O^?*tD`I%$;w?zeiPw*4g$`e_y_jL^y6K zL78ihn;b{!XGx)@!P_Q)sV84(n_OloQcAN5`62%e{}5v1i*KIr;fc|;4{jrIc!ANX zzs$rQ$%XeNDG$U7qT)w2USN`PX@j6C#mesG`H3M&r3BPXcI-Y-?Nq;i>8eiKoulf5 zWeYtR9fb~QcQ#%^UTigH%TN~ zLZ0%V*`5J+R`LAu+}JGSG|JOOBk|w1`;K6y1_a42QlLeS(Wy${@S48iQh)FX7JwtG zQvLlFIu97=v*Rg0;$uF~JQuo|*T16HnZOBm>u1{)~^)L+~a++#ue2&26bh#jC%Jg9VeI0+f-D z2gm3(+=lPlM!c~`%(*sVF$4+53{(cj&7!0*2#3YG-K%y^UZ7e~0{nA{sT+$YbiI@&<@ljwrjDLsW zv2hJ)^H@x%=-0DC>SEW>`6Vo{njUW2efw%1aeBCq^82z%PlY3mMK_!K`mSiZjU^=jW|kh>edyt-?4I0jYw$!kHxZDp!p zD9*KqWOcP6PGl%0R1EPV(qb!bnJK!O(2>$ve=i6^i}fpP0Eq}L}5)^*Ng>M&Y$WQ9i>cxk&# zbul6YnA=g|kA7r>g##hHoQgmRMF2bZp;VgRqD6WxmF3k0LWl@C4&PkddXmwy}LtXmpMKIxB@3p{%F{dSXxi3B^qX#eQdl|$_&Nq|fFY3MKQMA6cQcqQaq|l6! zx)<&nJG@nq2-Pecj<$LuxH{F9w~Y*!PL&QvxKce-OS{l6NxRNFV12p6ky1`a zdEyD-l^uIzM^nSG#{DI#@PQtvAYSc1CHS!T<5lXx@rT(Bcdr$0T17alQ}g7`6%B$> zs@n(GK3_8}Zmt*XwHDC&xVgU<@kfW*A#>(y?L(E#pAoRVzJoOtv2rv%($G1I?K!qz z)cxsbK?51nsW36mWepwNuN!`)PreVb&~V7j?{<>jW>V_c6_c~QizsU~DcD#s&jGmva&0Zv+8=x zR1U`*zPw7qmD~}g)RtzxljYeIRgJkGRSK;=NwA`~ZTh!#&!@2;4j+)CSH;3f@cbIp znP>v`H;aS-t@7D$9BHKhL;$l&KpcJghBsCgKl2sg*QSdnvUI1vnfmvnpH6whSA*~f zBxw~|^!JlbRot~W+N;!!bwcp&ldmj6<7DpZYoFF_XV=8nUau3A-(u;i3Z`bx zE?<5SHJ&kV-CN#m9iAnpGTNvUv06s>23WOe=DD_O%hq%62+x%-TN$;cQ1UUsb5&DL zs;r}J%A8hYt7XeZo=v^)$1;{3i!4%42wc2;St0~~lmdnDYTxG4#KUiJ6d#d`A3%6G z-+rjckaLbig`6!|Xg4Br@|!rgK68+F%1Ww1rczboa7Ll}2?1b9x5>^sX((5)ckD9L zh|Ng1w1%8cBOBPQoQpFT80H>@eaJOaiIZqmBA-(`-QM(6f!uAr^Qm>GL&Z(GyynxQ z-N7o3CPq)#PNrpA7TLVd=eOE7!D=9PaB4Jx{mSVwU4cun9K^osU%b~s#|qqcZX1~< zKQe>Z_FxDonCnrZ4#PN|#lhPufrPg?J;xM_cD2cj0?hN2t#L%TT!iitxQ@;` z1$xmIix7lF);7Cu^={Uq=u~$sk4YfqSW8B*OW^&9w)#=|gsezPVJGtx2KPMWZjFP^ zkqx7B>NGTM{C6P179N^g90<*h!FeF$6jf}oDh`2UA!a;!M8M}0@ev&CIAO2ncofy* z-(HFbtSJp_+P^hyzX|I>|2bKi9;@s!CKb{7JA9CqFYMG6FuHDQoE-CDG|NSJS4);b ztC9{?R}f?I^Sb#C1I~k9i%BFGgm>kX!<%=ty*6cQR??Zg%2hlZR)5x^*N*@TrvcX~ zdJ*yHX|WE37aF6et|Cf%iypF}tGs!95)x@vS%CKeIMDi4Gc+S#2FglQ>Nm!VrUDu~ zHNd7bdz}KD2_HC<`>ka8j>S>0RlH`&n*CSZ60#^=?g#7!5GXN#>vZ4OHgUfDlUL*} z9dkBhARb9DjhoVY>vxGtevG!t;!bgM>$#X}?#7^x_}E<}O}liQG(PoQ`ZP3(7fpa@ z;!dO%Kt~|scw&!~`08A1eROFlZBp1m?AUT~PuZmy8u1N*y^@hIGarpEqcHHeDfM>X z@<}1&eGdTdJtRF)ps6C^YF_efw$9OQzx(`Yvx$cF74P+Iq{x)q`)nhS2i*3deIN!5 zYwm5HO&@j-utX&7ie&pEvr5meoo2}*N)D-VeXbQNaYBn8;2Ot-PSnFfALBYP_aMMQ zW6pjP5(tCtjM;G-XBJPb0pd7XvHUjs4H1@>JFeIIN^gusuKQUbI0>D3DN$1KIa-{0|ogf@fjdYoG$?p?RVR**v-?q_V2?QpDG!E}|xYghATXeXw@B zulM?bcO-AaF)0XK;>IuOOX1$jj7?d3B2fZ1(R1T(S>Np^K=J^IeE^Me?uI|}XwehM zh9q#THBIIG%^|^9Bt_!m1Z}EE5ntR5)_nOH;4zll%qpf74Z6le%=B2kVK9BkTGQ=D z%`_czrN?RB4%F`UU0)1c4^vkbl0gFcovXSp&VWZd4%Ox1#M zKU{bT!lzVLj@OG>z}Iib^a6-`mkaTR=DBs&B-7d??Pynt=2KW(SYPX%74-fhn5=#b zA+4jh3@?x3Pc|h<LI}HJc<%&ffG+>E`2H!%oXe3j~Ev*qCnLbsxGMB zOuI3ya_pmDklR&}lYJ|_>*auaTZ6{OwzIKRql(9v`e3h!<^7&P68nZpkLBxzX-Pag z2&|lVzCW9`ph5F4ae(%k)r((@`&kpy@$nD~%7-=Ngol2(d*mli=NCCooN=^Gw585s%eU@4 z1XwttQEcT6=OUJ(_-Nu4X~FA4(}e?rtOiSgqxLkym5PG55Lo(xF0ll))+)Ywdu(76 zsu7FB;NMOWolBlh%r|_w9e{{((*ENB%1oD=A$u5tfJ&iv$)WaW+TCq6d&Ixloo;@i zNr_GV+C8iHllS^1H|RNd6Ws_ol3KCrCk|oJ#aPFNj7JiW!2I8k?B_ENdy4AScS6y|_e1w?E6<)~kO6{OY$Jh2=p47fn{pm!q&hcD7xY-`UEAw}7r}I8@jvlX|^l53RM!{-MN~!P~qhwR>}odJ%#_M+&Az=Z)*N^1e5^d8s}|aHP@g z_*Ep4+y)-#z~Q5NIL0GZi+lRP0aRZp;a^H0X<*kY)&Odb*7UTzjV|NYS?2*Ajm;+SJn}7UIU+4-KN59vvS%dOgEFoMOtF zY_Iu;iGmlJ$D)fr1`&!%>$BA}MM!E)W;C_#qPbf|Nu);TD{%qWNh$)l)ATkYS_qLK z1pRn_cBPIC8i*>%JM6Dr9IIkQ65UdWu%|lSoWJZ$Wd{7+ARrR6D-k<~cSO=P5&PEM zX08MKWGV#U)777(ra(c5W~%jQ0?RXvN6Ik*N&rHMKv<7m89n>NAT(!-bUjc4NplW%81i_o&gc@ zrkCNT8Hp_RT^UmGURGyG(HBcHaOpHLC5zy@Z)2&uE3^4rq1{L9L#HakY3yUTjjmEw z-UxiEW#FkPfa=jL$XAhDm|M?m%6*Y_CvBO_`W+YVEiIN|Yf2X46c-CZ(Kx`+IY7zv znzbfcgQaiB5hh$;YV_6@0~oshWD5QUEf4_e(oB1SKCyK>P#P49+S)9Gchr?h$af8~#0OwJARBkvjy&3+a>&u!cFSjLjK1YbHuKlF zh)ZQ~*QRiH_gN-jj-^}X1dti#iIXHIo})s$2b^jX05Zu&JINXUP@ANayXPx~ z?-iaDJgczsMkIme@V(NdLFrE7Y8>okt9>~>dtk%>7?IwT-~XtTi~w{-0xTZucC@Vg=3T)8w~XTk*%i9l@O-=Qn+&W5UUwrKOmzsl9c^Ao z(zWeyPPebTHMf&OvWF-3fbJCu0_5RnWwH%7Y#j zclD0a1wcVL(vY#FS`WU9+?aRx!2RJtVK>JYek8a&Cw$hTuk-c6^3Zgw62raCyJV>q za+GHy4%>`hmaxGc&CZ({u-(kYK(hrd&=Zee5pFBIpx}O$h#p0$ygTbeq94|3I1@IY z$!B{2A|1@~XXS^P^V>sf%&FmqI9ATm&zG&C*~QL=KFjA^o+YDMyxVYFXVAqXvxrWk!Z z_ev6gzn*qEZJwKhmc`~VA3*xHf>vw@je z=?d#Pf_u#Yc1XI2A|nT~t-5;(w`1?y7Y}F3e+wYT(PotJuD3M(3}LAnI;He`c<+*| zOL?l6R5>@xP*7qgPt+6wt?L}hl78^gt&Hpt)CQ5w#UzYP{Bg1!9E^_2!_ z_1-&JlG%yZLq#S*rdjqyU6u7^=0imeE_tj};{E=Ri8UGI-X-?{9485#wM6tcC z7MJBhDX*EOXE!uy8ELiu*dAXA(93NKhYewNQAlk<_vGxDYWg0_jzZn3*{JTxi&M3o zZ#hJ6ek8yRRP_VwICCAB8Ds6hXTAamPAWy? zA_FF@H{g&*R6@QO+5n@*d530T1H_htO$Z@QK>Tw$uu|E=wjVSRO9su!a+&9kB_Lyx z2TX}HfobMF)cM4j$*0o;jkqSyFXQn*cNUTiYOYnf-DWk@Dmmtv!UoD94DTN=wBH~J z96&LK@Mnt1e9^KUQW_Ov6hFa$OqZZoSreAN4K|E#7qVSmFx_u9R7+*MQ;zl~qDB3cH&XRVT#^%<$66{qT!7lBOP0AY*lCs!4s3f&FS~A`YKZvSMM{87 zr3*cm93Veagl3pQpp`SJZ?;~7@W}?`ANRuOX!pA(M)i#V3vL$lxKH@ZP6otx1?}gS z1cae()?4Ig)>&wu5=1Si94(0QdS-^ybi5YQL*ItzTBc^j>P-=LoF>?hLwOiPv)LPo ze;FKW0N?$C(rBI2^@|S_BG*fccYi>lfMkI5Qdg@V8@>!mRBKMVti(yKl&a2tZ8uGE z!m%LbvLM2;(Z(~6GO9~Im9LE7za^Vys~p86lW*H?DLqi^Jn^bM#S6hvP?KI3_I}ij zPz20uu9NTRk=8Jz9NYqX@qj855ypeqJ|=MDXFwQd?bSAtN?~xqR8nlXXuTOZG^bIR zfv?VOTzNL5=|+S)1oef;tS7lc!BqUU0oB;swg-gN@}G$(th`RfTni+>t{F;hyx3)m z1;~IqA75UpgA`>#mNv5xW`2w+dP4_1l0owm1>m(^i}r#@E_)TEYEJ!x7=Ql66jkKI zxEoDY=D5mo-A;qntIP8|=1qykV|RmX;#;82=wo_{udsis%xFe8xt8vegtAO6|M(ET zar4B$))ryKv}+OVS_<2oz~HqMy5E6mdV$5S+NEkB>I1#(65m&+b))G<4|SZ2_Vp(9 zb7lRs%~q#IwJV&*O`Vo4_;)oTmc=h-w+H+8vF|)FF|rZ+0l{4G(;iGl3qUIq`l{~tH%vdKj4QVAM!9ygi7qrK z$F;=?&sT(sEmz~0wa{=oZ`)7qyDL1cTrhva)Kgt>VY1Wc)leWg>#5QF5X+T7WY;ZM z`@}%lVzBFrXVs8C7T+U~ElttyLm&!b`8V)fe2MIleLH{0Z#Q%)Csvp;kskvzfNtV% zC1ggMy~Pmo9d|vUk}m%j{>SLT%wW*tW_xmm~ zC&a;Hknm$>07NssL@k!}ETFHXu~Cw$|p5D9rR zo{_*)o5wh!&m2SVfg-DTQriR)0rqmd!uCB5kZxG$(jo*+<0vrPy3U%LDDZ zJwQf1wf(v}@sa(YBhN{d3&CA&wjk{;Nk)4#|8Bx>aw9NmL&fVh2xoVYO^^%NXtUD* z45&pTIL(3p5hMbLP$}EsBD?T*c$X`9U3-v2)rp%t2pxI=L3a-~(A`GBy5OtVCyCrk zzMnBkijEgHEJ^_{1QdPq)JfCR7X*k&X+dYC30RT?s#00}%X{ zA7w)H0v!BjWuLWi8g6nJ01xz>)x3XTx5$PdDfFCf0{5xNQSoiIuvx7qf#6M?h!%9< zFd?;WZKf7m@!ZR_T^3KYg%W(gD3l`j$eE{iAFf@miCoB zQ{*U;2B*t`03^xN3O%ueuK;F!mW2iEV#kAh!-EDW){EN$SigZ3!mCm*pdc0IaTt^z z>&#`g`f6!@zL*KMG&{uOJgza;l6oVzx|M~s{@gBG2UaM&GJrILv5Fv=BGCtsTks}w zW8#Rb%9yCpzxWZaGvDSMo5zi_^1xyYLNdoUL92J)N|sXdcEKSYCR2Q4U(hom?Pohc z&!hn;6X!-to`S8A3TE|Zx@8_d$bR|*xn@2jPTG&p`<{YKGFre!r@3qwrBxJC^pv@= zPXV&v3rBfFBwfIRL$&`l@M$%`5wJ4I28Dt1l^uq#Svd z+sJsJDwxM((e8^#eP+l98(@`}zfM^-WNV197nH;4fsU@uVt~E*y`wr#gGzW&5vdcB z^Hdw{x1qug$6O}Qeu>I@Ejr((KEXbL6kfG+O`{g)zr9}iG7__1z~DZ=l$vr=XCa7^ z_tX;7)LY~VOaN()>b;6H@9PSY9v-O7z$vV-4RP(}&pLZ6{-b2|x#gPE&3SHLOc~lV znZ!wv<%%k8&?ejcX%R)BHMi14sM75$HHaT)e}7} zjdmJ)Wy+4~sdR+tX>g6L3MZ!}tH|X)s&2W-NrT6_>V3|@LNC>2xhQ1&czS1ML62qo z&IjU+)CnOPvK`a{ub5YNz8=9|Q|4|Va1wAh``trs#6K1rKl(mpNu38gknWK9DQC+4D zQUsJNuCq=?$ZmndkH*RTbyUVarKl@YM;B|`O7BV1a=e|g+2YgWJhcM3%nkzlwv%*i z6cefg5BPhvD-udm6Xa;_t+avV@R92rVbZ4sJ-Oci3rNLI;kz8^{ zIZoKQ;&f5^mD3_3HoPp)CT$~58&btdQgxF*bz(kEt)9Wj3I5m1Y@`hOQpl%@uQxeb zUf7Q?;XV>j77~q?N5IXKEG7hk)O;v%9D-A7VNiIkd{GeKk2L!<9RG5v2zbm?t!#aA z`t(1Rsm9n0$b}p@3QgB{ppGTHuUv+05USAOLv@iiLfS{KQvFY|)El-QA9;dX`B5_c za*v3sS-@kT;k{x2ThRk3YBv6P&?1;r7k?I1{;Tnc^;D{cuK8qL(m1jD&L}iI^V#1I zdPpiAJZwI3ZJMHPn>)w>Fb>3eTOZgkfzRCFAZ zqV6s~kB4N4toy}Y1mE-#6?;MZnbxS;pEYnzr|=FL7m!!PU<8thQrS#su#{A=t#<}V zYrjl!4qZdibOYP5?3pL`4kO?d4n~P~{Q}M@h$e9;`ToSg6 zJF?)=(uU)`uO_!gL@Q?W`S6wPyKbRdUKrgaidW0JLLrSoTDWdda09}5R%hF#t7 zmUKbS>bVyI`cq2R*K|arPC_WAQ-w+q?bM;)M2aW;Z2jLulSV2~ylTR=0&otf6F6TI zr%PWaZvv-KQ)oYMZzCPcvw43;*k#h(FDb&%Ul$IY7`LULmTenrWEq|djDXsbuw!`& zp+siPLwCS(FZ{ z8N<1S{5MC{@9$4C^Vb_Qr}+iG}^W#Qy09m zh=&hakknG?A*U0%WaZY+rcf9-CRbFwzI6+MlCZ1Wo{*svF1^VZnLt}FIt~QdQ*S>uXJ+waF zfLqstHW&{kuuASPw3ph@NdE?zM@CcbHNp2%32>r{ond_L8`q`$vvX$MAw9P8Ny%Kx zxjku@PZy-3I&)Gn$5pxj`cxi;;jtFik0jNw~H>tO+S>AiRZBhs34egW^5b+y}ee%QZ&F z%nj#Qy6d?b3aMD@kc3ywi=rqVY1zo}SaMjZ*b zpCsCx``Kse<$c?#sAjI(7LwA_DYDQ-;cN=S%(5&Qh)N%Pb-<#f3&Z3Mcp5L>%boQDbs1KYFh4>gX^> zUiiM=ZbbR|zXaWytHU8bBy5tao~Dd7BP~(k(|k0R<(_ky4L-#xzaJavHi$$rFn=~v z#%p3wIzcE)j)xgU;VID0);i+ zL+i+4_JEtB%U09Tbh{z_5`vDaI)&t%X;bu$0fcDRrI}6I zLvwIrZEKz@631cB+6Y>Ep(U#J7Nep=$(hi#@jIqLh*#G*1z9sUk8OG=6o59?X)c;a zg0SCOF@lxlD_`HEBB6DqH}?72>6UG6T3NbBk;CA$qVDq0@m1HY_O8)+$A^s*WT=+1 zORkO*?nR2OZ*01Y^FBDWDh-|DT@qU5zisjSDCj)UX=PZq?)np>$*M?y-J#AMh_81u zy_x@MB+fNn=)mgx-Zht$tWo)%whZ-pVKLnJOYIt;$CgWOGRQ^HbheJgxCbmlfBumE ziK}d5*_0=@X93hXf&6Gjc*ES~4f-PTp`JS>VTvg-w4tg3GhrOZsDrIOK!%{R&{p6o z95P(ko~js0b+gp+?E~4A$0OrK$|?0!q{~+AJeS2md`CchNya=w$1qcMh;}e2L$vzC zHU(}hnz$9f2DKqANYlE@^at&Bj!IRYb9o`-H1@AZ5YH#;sZqiZdR%R;_qaZgU8cJd zfb2RB{&$F8QRp*Lue8!F7BfY2EF*O1mYik~hzx}EU1!4~4k&7{UTdUg>Z^VCc6a+c zncdKcWu#1l+gH&W$7hi6{%c+lO}ErN((a#?lIWmADo?aqYAby5&%&QPq)8{i{N6|a zrf-40EmEkXP{St(4&w+|zf*lD&?oX4UDF9l*VCEQ|TY4!ZBf zdsTyBmg`oZ`<~}qTCjCn{CJJ%{caCDuNuZkdH5X%ldqGV%9q0ZRm2cVi^$ao>e>`m_ zJ1ws)7wy4Vv)Iy&WLsn!!70sft+Qzq8EX>Dy@0j(9rX*cNfHgm8 z+gm80PLy*mei$)^--mgQ{SohQ!cj)l+LvLF81QyA9X?HtM*4#S{j&J1$U|@8A~5)6^0%)6DsiSDtE>;$2^t8h#p0^VE$GN?bI4SgeT_F9NK7y)h3 z0zHM=B`%rBffs1aGHsYrUx79ogh$zZMBm2wcbiW&jxbqqk(pOydp?&%pB6=SaqXP!5dUE3LT$>>Ze+SOFkQyi z!lTh(0Z>0~3cktje*IoY9;&b_TsZTZ_ru3j&;U=Oapvj#SgRbcHmnr-7n4ZrmRF#m zyo0rkiqxH@0Xa1QO^%V!O4r^74uhJK$2edowZI#E1@e&Q70u6Msm>3u4hTD?liYRB z5brSXE+cWVEP#%zfkrq_R^O&{t^KSGwfzw)GGtEvKz*<}Ee{Zhwe6UPbK`8@aN=h$ z@yhPNJ^L8l7(YYFrUue(x23sOm9lpAxfgmXr4RLvHeS6iDk~Em$W1e!+kZ-KMOSt% zxnEUoZBo7uIrs)AVvz37T09C}Rc5}a(b&M_ZX8ejnwMQ!d*j77lEn`1Rjs9-g>vTXvait>D$x=b`8~wDDOhA8U7Dcb7^v z_Le}G-;a&W zhgYc<4oD!C%jtMm`Eo zyPk=3h<&o8z#`?OFPwGE`_gY5>_6POKqWQef>@9~xb7N3Aq*t4PCJsjeZx=R+p-@U=_Kiq7guy# z`;ell$xv3 zlJFOhovAyNdweBcCVp|_urK_&RY17JP1-h=uNtG^Q$sCcpX4Xk61I*-!*87MN$$C+ zMOkv}k=}|2Pw}Y}u&`ti)>f-MM@s-ctpeLKEtU#CA;2 zs6@>)_6z)f&AoS2l}Yn1Du@aqf+!-OfFdYa$r&VPBuh2{N|q=YR0Jdn2qGCICnaYv z5e3|&O$HGp2Z@qTHO@ER%=z8B?pk-9KhFFyYt3f%yZh~~uCA_no~NV}9}t_x)$>1I zx?K)8qrOCXpS&ch{6U*fL>#W`7HQ^bbw=4>(TKhVVGiYuHh_ihia(s`$}E5YrGU5M zXNtuQ#&h7F&)BHagHOOQg>w!beQ9<5N+MMeinW#j$ZLokE|8e`eY0HW7+lV6K}ydU zaZM2_+7=jpg}+|N3{Sjpbm#Y+O7ac7g}IlVR! z^~h70AzZdBgr6S;1Dp&zF7eE87jHGT8l~BbUC}*j3csE)J@)SBM!0|l|ISXH&Bz!i zHjg@mLC%N*^BAsRt-4j&`899sma}eCZm_LK(Csn z(V4qqG3HU(VQys+QE!!CBEwD}z;-hboI~wyFIK_pSaBnu1&#X(j0;R!DecO(prmvk zc2sh*Pc{ecu?zO0TmWVZ7F^)NNPGj5-z7-2gn`{HrLzf}XE^v$1fo&+N$K1Nt18?vfbH%dw33fXk-wIL8cy=C9}xwAqO) z&$*W9;tV6Fj_&7k;_||5bBPihn;oP8Z^U5 zH>h2BBNnLfHxL9`Jx%cuQ%;y0AKB|fRj>z=)0)T&WxNJ^xO;yP@{H77o95)>ES~%= zVGVinGBV4Er43aL=~2y4F)}wuB))V%NSi!8!dve;_2=pkr?`Rph{N1`7U954@BZeB@p-C}2oFI;I_MzWu0}@Z?QJ zoN{n&0ZqBL0-6dJ-#$V6#(o<={t05+Jf`w(YwYU5aooC zx3d(5Y~7DZ%6w)~Z9%L{cu`B?qMU8=0YLgMZl|lHgmS+aP({Z(RYYH5Qe z@qN$65c9CbM?24bxI3>S@s!K<>6I_#9aS3l5==+3{i9sb1>~|6oYZHg>t^LqJaGrEu`5a zA#5(OlFUc&kW~x7EF~LRT6yoxW180!oWM7{*v}!M0 zH1xW86&b*5$ok&J)mgpU;c_!w)7o%3m%UCPNReH7bvdlq?e}#5hW$3I%|C7mGY21nM*&pMp+OAXT9P^R{=sBJsSXM5nBweH4kVX8JZb<@+FP}{u9<; zfy}AIV^@FC2r#lIE(mn_-CXm{j9Hj3>){zQJROO=Wmj+Y@X=n-dpx^rlPzFNYQh({lo~Hu2 zE~kC;jEx1Jq*q!E!+||lp+hfWW&YaBe8jHUJcB_nNG)BwpIJbvAna82)EPy+$hhN_ zWTt?%$tbcM=n34DN)PIHwQrt;%K?-!hE5z!(ssAbEDq8z;&eiWhaUrmH@CxZ)`8TO_RQ&BRV85^BT>PBw?m0o2!57S_tmBYH)xEBM>Em7V_++S-DFr7g+4qlS7jggm=(ET} zl_UkP4Nv6FH*~XA%N7_Ef^Vv1k%kcef6o;Bv2B)bYHWCpj8|wUyDLj*v@2tOEd8uO z{>(bK=cY}(d;UcWD}bNVj)JOUyWrSejnIS1lxSp{15%aC^)mFO)k{r|tq1P(oaKK* z)H*+EO90LN8JX5&0WV-#W814|Ox8HO79s9?!qH;DiGh5O1=PVs;d!2EA74-0Pm=vPV z^0Wt=t^PRshmZE-R?QKN%SQWaM$%oGzqbQwe-jpJ?gDKxKJkjiD<|AMcewE^3b}1A z!qulODxo+6CfeLT#uXiqzZvTM;;lbM5PP3Eb@L83OOqKC4^(EV1ja)p?gJ7u@Tc)r z6=$0-YZHUrY{b{ozo($J;<|fP+ce(2^!@H~RBZ%YJ6l%TMcI)9F-m(>e(D=L6?~Q1 zG|nMXA4m?i^%SOMLw;~wz6s|=KFg&Ov?OP7E_8RUf$-YOO2U4XPE^AK!(05ymngAO zE2ty^w>c?dn#rudIuv#MeLx5OeLx#LBBB=Rjh*MSpSn5SogKx`tGZue3qNg&fs+J< zpd5BT6#*TT{xx2BVBRDLJf<{?6lsS+uYh`s)nIk>yBSmG)6g}l4v-(vu-nGjm^y4c zSoVnHUj2zeliUZ|_8K9Ws$^r)n#Tr4ZIuqQ45)?xJl+Ov=Nt06a3w^zZp5_Xx%+qU z;?c%G*+^ddTdEu|og_}zi!PA4OFTdEQgr7#@iJtO>Th0>5=-obE%BwTwsdMOX6h83 zv@9T1IIpbsYxc6*HMjh-dU}wq;X-Sor?uW>96J=*~{moEo{g zyPbJy6XIl6*Yv-xHiqulmsLopXrXq0?@We|0SHVOG9IIGyGG}FCp~(K6s}_mhis=b zr|@5*dbvS`En|BKph@PRN0GCsA?n`7=IGGH2|5iE zM<3^KmvfuVE&aL+(n!29zEjnQkDj=;&NTej(KoPYtac=hnlUkIIDO=duITE%L&VJ% zZKK?vy|zenR5y(`g&V`6cPt`qvT7z{xX$~q@o<%MPHT(ZCH2+nuqeCvd}i%DuH9S+ zKk;j%m(y?;L5hddNZMg>c*r7t+*UJ;IBGeps3~Q!f?*M*P2kFRJ!~@R{Z!*HVw0fb z+k9PUDYbD7qHD4%*x^e-%9x@~mRyof>$mJ>qfcC@D zC0t-=1@aA{KpXrSGIFHV|7AbW*wl$bnMlu9Ud__ zn;Tq4+*9^5P$_A3D<9_wGfm0nqR~kXlNoW~Qi)=KoUeew)u+oymdT{==CnAi}zD472udt9JIPX zh*6c=ZRtiilJ|i0Mg&Mz+^vmrn|)fN-;WW@6%}w$#~$j%2+hXyd;Fjp>9v0L?RYO| zyHMw6lr;8z-K<|wN2CycTtn1~(68JsEZmSnYGygj zn!@NiK$crx-KUz)n}~`B$tyqLF+6Z(e{T zn!{ijv$&X4c(9igwpq$2KCYq4Z#`H4`PS)wzfNz)F|InJe;kB49Em3n%?dt z-#vSC_9jk-w!Ll|nF~x>>F1t@Nsg_6R)z?wW_Sc!@$@Ru6$)I@ElkLGv}yb)1DQ_~ zzGBoyZM&h3(wWX}GSu$vDeZj^GG964Og2BJH*PI|*&VLDH7NVcaIJi-P4u*1@N21b z>#Wxus;{Q{E4Fy0QWcAd-Qv-GAJZ@u5n9i4PZj5J zm#R#3&?)hOz*PL84Nwu|7&*!r)TvV9jI;8oxL*xjCb!~c60$Az9u6OyEDN&%3uEa$>VQFcgp40&%h2Q+MC$`GjLc7!qpm;u1>?R z)+I3cu?Nd#2s(jx)9~%SC?xii4?V6<gWE`Lbci ziUH-M^j2#^I~tFNo%ZVvX7{NtN9tv&A%zqLH5i*`;`(y(@6QXm+d+^ z>$hS4Ob3H`1%vUc6&ba={5b);$sBD*w>$Y2TmBMXc)y%klIWGt>KNWwiXn}0Jq4$+ zrnHxvR((r%g<9VE*9+2-hdYP(QY|O?_b3Q{#V{t&UGxxc*Pf20nie&xX@d#hY&W=Q zW&;Bv`Xo~=(i|vg)ogb~Ok_w$^R5m778R|Lq!C-Gu*+)3MpcXa%*j42EZeMdZAD%Y zWVAQ{l$dVA+~lk7O+Yz;angpB_%#yh7WC}*hL9+?jn&(I{Y?R0(xgdIC!dTDYf0q1 zCur8Tu5vDvF}BAY+O#*-^iO5hzR(mS;E)AXd`fR^oZDn>E@_jEFX<-!b*@mmJFP{( zB-tlw#>)D6wy&r^HFs@Sk?dRTI%WzGK)X1>d^av-a(t1QHPti)mfqhN#Y8$M`g8So z>9kxnTr%E~{09rLFyHXfO92E9GEX&CWZo=iZl4zlsj1w8H7}3U+n%hE7B|~qi6zw^ zaOFFde%hb74ZqsnmO?*QgfgA*G8%p-{aK406551m+wLE%P}*yHU`Y1xn`$*(FrPTc zQ0c8N2$ik~Z7s||DYp;r-nXkbeA||^OKUCI$c3kz;_T6bM~nhO>ZfsA(WKk^AE6S( z6aShX94ZV%@Po8dk}vhlG5u&YgYt_0R8q;4Ob)2F_a!uY%^e^q1r~iAg?lTYj-|lG zrJZ0fPwF62*ZiWHKU3tUMva^k8BOdd7dg}G-?q?{X#96dNbZU>zy)`InSK8f(mg@y zX-FzabcvF&`&D+f!5Gf?Tk(T@!ih@Vkz$%0&`=(BTT$vH-up$ffBpTEzB_==9Q2)L zyIvzsbzhZp;SQ=T+@+v0tpT{Uz`JyGmRHf#7uK{ zH=F9DoksLQg#O$xcd>+KXLn@3+BvBfisF(^<%(mrYXAe7DXf17AQKGcjbXKmztvQ- z`EJ=Du)2{x;v38`TwCNJsgDYdR=ks6nP9$@1luT@70YJPx}45ztv!uane4x-jDJ00 z{rlc0n!RssKlYI{Q65}L%HhhmE0&Y4p`DlK=+7Tt_yT1mjIZyQxnnUWs#iw<;TPkv zB)UJjZ!Z#-eD-XfNM*l{5d>xDH$mj;DjZofV|kHyyPJmpjmu0bTpwtwxhHlwo~N9A zJND}XMN*W;I&OZ0%n$n;KhX}a`1~Y@2KVAmPNvm}H#MK9{GR8j171CzCX_z4!q%Z! z;q&x)tua(t2*A%;t1hD1`4!^HwJVm+KXcUy3a!;XvtW{O0$Fs<2_9RSgHUQ3-eEKQ z0D^s~=iQb*d@%#utCc5-lNa+Xi9>=-hBT1K`h%X_paF##i(2Feo4@Nc9X9C z5~Nl+la)OV`iDWzP2Jo~BJ5}`MBIZSa|LyR0Tu*81E|Ezm2v|#3PaDb>Rz4@HxL$d zoC^g69|euQi=lfITF%c;?K9r#j!?}U;~jpSA_Oq)G#V&#VLm)UjjjV4z?J`5i176wuQfCFzNVWuOPkr0raYul5qnNy zmK969n&>=#4AJ+;kBR=ikz-Z4HD{JyZUk*8Kwv^dOO$c0mH?1sH;`=S%EqM#=1h^% z{$PpkZ?w*f@X@VyG@IOB+XBP!bNi>^M7owS%eiM_S{Z>@X7WsBFp3%bd`^RJx^xyW zBd6j%K5k(xZ3Ibv6CTBk@eN9C`>mAY5*H}=LDxJ;w#x+qp1qtXvRgq)LmHkyBeQ1W zTN{SBnKBrlm%lys`YMX&{=*Ra{Pu;Q9%9eu>y@_oS(5<}Is&prDW5PD&K2txiw=w_TB6L=BbwuVww}x339pOgnbyZ12<9p3 z&&fL_bonkI#z0TUlzm%=BY830VqL2t?}qyhm<9FH1jR@WMa8~wFO70P=1%2T=)+b7?)YjkwxL|75q|D(l%cEPUu8_<F0Dq`rH*CxSEV^51izV9$jck*R4vqH z!+Lat#u+H2Cv#RvtI#w$(w!ON`%tp`d~Pkt3R|B!T44Um{%vdU>U5W8u8dD)OIIu8 z|F)JBKep#>6tWXyf{f+}ee*EjZTim%I&c!xxx7+5oSix!F+AHJIhKX)sMmH!kq{KL zsSwsAo1L*6bkyW;QF6d*o}kMW3AKO0G=F%aY;$$wcr|cjTXu+o_gb+onq952{DoHa z&-QY$wWV9u_U>x{05LE%=iTTit_)%&TB6W)H{Ko%{H7of;N3Hs@~9$lSv5a|!{BbF z#?-4kr5C|hBb42yZaRn~eHbH)U8zx|(LZ`y&)0UMH150fN%|W&@s7TQ3Pqs3$$Z1G1 zo2INJ)vW)a#Kz8~=U)2sF_0PJQRgpa)vzt!I$vr)FLKwF*4uVdHkD+pe<-)eq^j`95S4kAvMMqxrU=Kcf{ zYMI~ET?O;?u`#^{geih2vTk;Ynm9()PW3DcRNVP;2MPI;xl|}5dJvjOCHC}vD>cRp z;ZX_fl9)$V0Bs|EfFf^~4KAqW{&0xf)Pj%WQXo71orLnjO+u`bN%a+TW>oH1s zFIL}DXNy-&s$~5sD4=~RKdzndqr}dUz7ytz=h$TR;FiqLtF4I&A#X3yd; zkOc%UeHmg{)`(|sTe~g`YfwMMYz@Sy6xXf%;EoFYJdp;=$uTM(qSIHSLcrnl^D|>% zL#|AFPWu@`PDzrTY4sdN@Y?CXsZEQxBTSIRz(q%cNwLz0JYJ;kIDMwAgYi*`l|hxh zOUdiqubNX*rIFZ|5>ZOmvx0>4w)K~Fx_n*F`WWgv6Q`b!TGtCol%Cq<#n~;m2k9u2 z`zqM^a{Wh>Uy6muN8a6-((FIlyynd{kWS`E86IbRKizz0FlxO|Bt$1dyde#-N}o!}#%*BR|c zbI~`P^Q|*TT|NYxxfsV#QPXdXRT5TCOEL&|uh%r{L-9aZ+ug*qO^63FR$1Odm9+e| zK;M+|Gnbo%R__yhvSYt>wy(urAG*;TFMM{$`KAo+JdN^aOPZHSL+&sr1saHJ;R_AN9-{d0k+@IF* zR_9X%Q?*V%CMpd;$#)ld6AlAw`%XC zFeKsu!L!3ayG(7L*J1;YPm9UWj5XVW&Osf)%RP8(LD=a_$5FLI{buo)!O4fXg(Y^ zaBi^F&P?b9c#rwvSL--f$GMd1i>qcSFTQ05(Kzi#i@ov08&ejSegCawak}9g%Co>|Z;VI#YM+=`)Izgjc?DE)(xB5&J(EfTNW&JF!E-=+J@g)8pz{ zZXl_agU(m0Mk|0RD~27t3X-98?D(AH-Qhr@|LWAYsItFr%LqxrEGwnm5!FUp2Kj2Hyq*_oSdYZDof+*~ zj@{A4y@f@lJa(6-%!_4nbB@abYa&f83s3Z1BJZCU;o>6vJc%EyAkr~)xO-Uir|FCoVpt2(3rQ`c&XCN-6_s?7gCq6J&>SXj0Z`> z#EhN3<3j>rSFLPf@927aPpsQ#jC9ylx=axg%F@fW>Pi>TNV1yn04Y`{^Fxu)PWJuV zFV_^-p1)R!^4$hetFJBdkfeLqqg(G@ZtMOBbfe^XuG_BtNwAsye1Es!IN-C3=KfQ6 z=-yiBAVzfIPU52{&)+J&XLSBz#nyS>I0MmKkAZu(_HpY_*D>V@$L#Hb;FiMv-mcPv z)D&w>@$kBvyr7v0_7T>}%DBidSB3Xi0iBy}d*Y3!GkYadZ zT65pXb%Xl8)FWY=oih(`^!&eH470D!&J<8=3*-V#lMvaM{(eN%yfXtbl?&uNg->rsD8*Ta~ zKZh6g+C&K}-CeibDohvS2ZV*UifiaBEc%*{n67g5bCx`qIGxfe?5y5twp}O7cDGiy@erB-5o~c;S+By0 z-J$rWYn%S@@pg4yIEF(XWcDA}&RWa<6g8UyEB$psUv9Od;%Gro`z>}hUuK1m(UR@o zamY-kXYZ`%51f>pKiEmJ04R(9Lm^xOw1O-(?B zUyi%ww+j`w+4zu5W+C+*ljR++ly#YlHzxYmxAq!QU@jF^V-^gz0oyNU;Cz9F(%#)*{ZyuffmO4=JnXAlAkP|0|8MBh`Ba73axb>uo zh-78W$tH&!dJez48C<#Mbv&i#rcP&GA}}SbmaJ&5mJdG{yQx;h80kiFw!;~g;VbV3 z5DH+_@o<#^Wx8aI-U0GCD*y(h zOO*BVAXdHduTZ&{Waq>oMti>X5$JUE6vU2SvOs3 zt)w{=H^XPmIl^^yMt+qeoU>L5 zsK2W`_kNjf&Ah>Mx~_szPJSU%G;?53HPu|(&KpjN>fsKxbo*($yYwcX@bY)XR4?vZwF{0*)rZ(C9oK7+~S_dKTPiEX|8WPHRfUE#XJq`Z?T{)i6VgZDXvkf-6}5gR#k~Ldqxkmmy~g5smkX%a zfQoo7SnmbMYe|@{bG`3~W8Pk!{=w?I8ea46y$@?t$nRz6wo&DzwfQuPlAsd)bO)l| zpJyGb-Wsr>B`a_w*;Z z%0+E0E8Fk@abP#hqFzH>ZK@KkWFVir5$(P?5p^YI6`H6STN>sa)nVqTI^=J-d*O8t zcinHrNpX2_M(lAlg?lXEjNFp?&M4HJAe^pRHRY)GHs{DI?=iFWd_A~su}j8N@@}Fa zE+hfV?qz31cX`f^&MrGnJF^Z_eHW#qq=vD4#9*e}7xG%tjN*B|j4g!&@Q(ccJA<<1S&u#8)Vu+*&l(stnJ?Z_c6STF?Sz5 zmJOStAKYXxx)Lo&a5SNlY;fq>osYM&dH+05`Gnxyy%L{b!=8&p0xCHhF3x{c!L6$M1Nz1o`a!_BO}FP_TTthjQ+EUt+P z+EOABl%5=&aC}(IOF0XgX7DKYYqP#I9#^5F?T}B$8t@xo@}T&r0`2AYZ=KcI`}BVL zO?&On%+k7pSH9!I_Ephu{^*_9j;l{sGMTX(gN^F>Lwl55<()*@TKR^os3~YiM~9@z zvYQ;K@OFa+)2aT|7ImzQ3cwfS<>l4h|G3;lprNhZ0)z`GQO!v|?YcB`5yR-6E|Y`F zcvl@~$?*Be(|1~Ok)QafhqmIWDB3CJawj0d3O{ zM~sJacw++)Fw`oS3}L$HvR*F-^O7YzI9 z>sG}9NSTA#P<5@Wi4Fzu5|f!jM99_Aj#~k;5|0#)$gZ-?_ZEFBn2(wSVPkqb5nn@lfYJ1y$9TAcDi2Mw!WQ_4WX_waen0K^lfq;k-vrZ|H}uVV~Lww8f^{ z;K{BYPiGIb@(-#NS~IK$!Fw&hTX>{w*MF%Og$~5afJU&jHhdCi{ewG!R(nh{=Fd}t zztFPDkyhJZ<_}=Rz3h^wKLaj*;Qs44%~`?q`c*C`RDP=E{P>i z%Bx&CpWbTSRS{^1NtQ}h!0}v7p^*c^lI#{KwTfyMcH9cCR)F5w`J!j$3c25R`kcpa z2OHa!|4ab2VMccLC|IfH_xBoXg$j4s&AT#QqNXee!VX|4^$ah&>5!Xb={Fn4OB%kU zY@C|)Rfj0WFI#@5iKMs0GG^m@?yzsWw-+x4;&W~5`Y|?MB&2W1H-uR%YT1ECeH&&lc=?xeEm$SXw z%Yejbgvfk+{;VtNqXLozg-5B1MGLfE-^B?Zpe7GrXw1~hn|*;7d>_x=xD6OYr0ym< z9IWYDc(&xUn3kbn?W1^)Q%v}1Mf)K*Y{aqmm^hm9nK5H|lP|hHO_m|2#ZA|O zX++te)6f0bZnY@CL67bE4v<(fSvg14Mi4s1kDX}3`%2}&k=OM?Ea|vp`OmeaHBghg z%fs&5)}>R8*krKZu7<#5{qB^|zg*5~i69McFCADNlQr!RB|ObE z?nkKbh$KLF6;~BdR>l&%bxBX|?0k%1)ZhR|_AIk)PE$*(8Op<{DhVRP?hSMG6o$It zg4Lk7Jk!kqO>h`lS&bRkg=pwmPt#%wb0k*CPFiks+qwu{gIeu7mxAcSg!f zlKsV5{;Aqb7=DMGhG(UI4Kxo41b7;H?=tero>j4M2NB#r4{Pa!{sA>5bGP3U1n9j@co_P%bAG>U9Y&={`Of59knh4!? z*T>EEiXN!aiSNfwOiT=KVDpU@TS-kAOtw6Qi>!uf+@a!SxV^*kup0GpLEUW)%Yl@O zTHW0TaNRP=klasumaqy-p6&iMk?*Sw~`A3i5N1X@X>|kh%1=9`R?@5hu5d!sMLuX+` zp(-76j6ppxxWjHJk#OHx4Hv6zctQ}%V79fxq11NrJm1X}L(j}9KpIWao9Tumka&O! zJ$HY0Q!+#L)*J9O1I#UfhVxk2h+p4(G^LAR0qQbgQ^mcZ$=?%2V?6%%3aG4dMR(qp zH*I53iJxl?n+}XlVA+&2GD*fl5iQRfB zn&Da*l_aM&&4HIOTy6gWFSkTV3mT6u(mU*>F{AFIDs0_f^%pYN%*N7<9HvdK z5nRT!h(x3WhRhYK;^M&2VcgeAveBNhRinT?!hWz3c%mfRM^-BWA8@Br)@>is_8FftDLQ~#hn3wCht&RbHvz*By< ztul<}C&XS55&a-fQ+%NmY|jKI3**h>bYR?!5S*l*u$rBIoKjM3>QCt1|7RJ;b{)L` zJUjQl&%Tz@aL!N3i+85?Y9>Ao9XbzGn<-DZH3ywQk8W-~=`H||7LYxT_Kh>iZE1Gm zDW3Q+UNb7!SFcGj^bQ8j^7HG|^`mH+@y1TkVged4o4UUx+BPp9^1AoO8D6+|g3Jmz zEb%xNVjl?8smu82aq($MbisFWksX;m4Zic&|1aNJ1GH;f0KiZZGdd|SZ#-Dz_W(VF z@D!Pl9zD4T$XReVRdtM)T%i-sMV?Iv&Xr$$0!D<^U2ViTht8jV0E`EHj8>+;^ule!PFJVBi54F8(=Mv1C)RE79L1hclF>===S|+;Bmb1JK3q*)mF}tDtkO95hb8guolno1@V12f}a{0G`14yAQee znp6_m*lx-qr?0c6_D+JWSF?=*4+vCZ;f;NBVh8fXQqhLBjSFKnj1~a>R1xqJcE3 z!j-RfC?P=jt~&Jn1d!5wVE9hQ^Q9F|=h#3fQq_0oByvUGkHPzot=X59K&0oo;S1o=Hl4$` zGIiYEzzottF^P3JS?~`2lnE=6KZMNGbx|U|FNF)e?CsAfI9lgzySs)BICy6#yj8>M7PiW-1Gka#)dF7pq%5yx|F~r@ z>Q6%9Y#rZT3g9MZXb378d}bV!T#Vk7aPSdV|oW25D;iq zLR7n5GreqVJt4+ve|G~y>_JlPV&_a#xDFu^iky(pMui`Ij4-U*WrzIZzhAg@wbcm3 zBd4xxS2ze9!^JPVk{F`%E%lkp2sNi`(^_rY`1J1M3Jooq?Au#OA)()f#8E||QzB^> z?YR$dn33s6z3xkda0(jQ7Ql@zhT>4J^dWEcv)`hH-Tk(JvQ#hZnx3<{cAV>F4O}X# zeN$pY!Y5_4)zrqSoj^F84(ECna-V}|X)$({`}YDoAcdVQXzc-e_kFjV6pS_At8H#p z&B~p23nVdGQ^@a5iMv1h2u(($Xx@qd=00Vysb&1Za8-Hf4-;s!a4$6Z_<=lWT`UFq;XrqQU3G4!}8PP&6*W&vAjh{ zK-j4U^t4t7Q_q6>K$5yIRf;@)br_wuv=k6}-q(-IbwIH@0Gr~|C+F~KZP1@8y+lN< zL7k!lnqbWNFdhsrG#rMmY*CdV;$7G#&@ymG#dMwT;3y)&KR%@xzi_nzut~QMJ|R6r zi%}rKc4s*p<5pS+*Qx)XVF=)X+Z>~Ju2AO$>jsmxg^k_RC!n_ir5Kbzn5&uoYZQrA zI760pNLHiRT>JGupF5Ei5Dj^PuMGHmAKZU{Sq=V7(`BhEmnpKtTl6m=?P2 zGCTdr;Qbm&zPYX-6%RmSALBU~Gb1c_D&G9^!BEH&Sba`m(#U_sjyy zZx`qEMVN!pGBHifR~uieJV9Noqrh09fg7I&-bogMRd#nf)AlmxvWuFrRY64*4#&f$ z7x2%+-`^P^{SVve)Tm}4Fy4p4Q;DyF8=BJ_uv}#KOM3^d4n0!ZKXjFyy_8q>k_3$9 zJo!0LP2BK~U#LPy7WjJ_SgoBhL3gbopA~TB#xa)ZGC1%uUb(n$20=SM)PTow{`MGL z?C!yf2Tn7&QdYq3oCYH5hFf)ZUPW_!ogW?y$3}nD+H*T*qpAwBf3gk17cO9F-Ovoy z!U}J$IjzqjYBXw$t!7}r3Iz_k9`8D|SM~6a+%Me!mqDnq3AzkfE8O~w26qll5K{|m z^vDuw{)AdgVN|@}PIkvbOcI?id`vb=qc^O5>f1fmIm-cTdtQ^)0)8>^9m+vvi^iI_ z9wrtVZJmK@xjbaA?0%gF0c_ga6?K5aOD!tuifMI)il!p5?>bt%9xyMR&R0K=+M=8a z1UVB!g)#-ER-zrC*>9sF7A{nMWwD@zEgYb_701M&lYo~P4obnPxDD@;nRlp!Yxtkrccjy z3WTg*^72y0t@zapWFORBfCX!xHA!$5!aGt3?=nlzKghQFhCESbM#d7*Mfip@ zZiRObTr=;3KeDL0Yq)^{HEtVOFUj_#HXeEn_tlS3%QS`zs*uJ|gmOw8nAoQQ!!3 z9(;mYh_6-Mjt!O=PHb?Zf>L6J@xgVV#cRCt``2>6d43bLOs^Um{^NPWPJJ5+X@STT zoluZERDi=aoc~lY+VS|88N`yK&askRx%kdy%`BShVc3RD1LU)=eEIT4F7~+qvdk+- zP=h9fBAoIyCl>jg2t%Xqc?(}yD*9TLg09_6vi31H*cv4nNW9L(-@u zrmZmb!xE12abcbtiy?nLzNQBYGq-0~v$o}nnlp|=(*Gh&lklf&a0_hrQcm{oJ93uYkOi_}Z%YSdX~tcl;gvkp6$)!ZNzq!| z!xeN|h(J*!6BARF@lxrCM#h7F}@e*9g8ZN?CL$>sVRURnd$l8eChGha5F)!?9z)STTqIVSQ{92grq>o1$Ymj@v6YSDE`G`eIkct0O7ZDy{m7qFROq@zkM-K1550*obRFXV+hktx5Mh)@7vR`}VDKXl8 zT$JQO_Zx{niLxtH_TYOdK&F0U9~yl%LUr>#VAz)d)8RVOnE?5-66r%91a`37#x83! z6WyJF3a89>2C2vU5JYoW4+}jUso8Bx*c<^kUj+*s=%C(43oD{{Th&OP#P31F3t&v`Gy8j(e$g3)$;kT893j`fv z$m>7;?qfKXx_^=(03y>>Y?$!A1Jt|oU*2lUoSLSJdL-`**oqv|&_6vxh8HJ?;VIfZ8h+;Y=%>d6mysV_u488n} zoH=dZjQhx~KJkxDhidiAr&*bpmPxB2L`UVl4R?dF%%&vj zO2_%-Fa^(_*G^qV(f)yj{6HuCEC;$KKRW)~f0*6l7a{17npRO1!fdMV0pGg?PA3%x z{W}YomMZPG+WmHGYXdnWo4$0mBi)ykPxC1WJQeNaS)1$Yj2Y@QjzKv|7NeS2N%l6J z8wP*O>lRdBOyy)qkHU^%7`@^GR8&7`2aqeh{8r)GZglZA1>RZn8wN3Xzwad)HC#W6HzZGRY00f9*~0ewgBO(3I+*E`jAw*@58LKR*OFaqq-G_dRHqz&q>oBt3ijpC35*bLfAP zYk&Kg7I+z!*_$74{OecX1rPtrk$4$H1Q_XX_4~hn1yUCO8i!aN2b?J_0ueTU|GAA*16q?9G|#BV?OU(;sV^Z)<= From c9a79cb3ad78c513a2ba62c5287b64a7a8288b2e Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 20:29:32 +0800 Subject: [PATCH 12/17] Create mdbook.yml --- .github/workflows/mdbook.yml | 60 ++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/mdbook.yml diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml new file mode 100644 index 000000000..38e5f3653 --- /dev/null +++ b/.github/workflows/mdbook.yml @@ -0,0 +1,60 @@ +# Sample workflow for building and deploying a mdBook site to GitHub Pages +# +# To get started with mdBook see: https://rust-lang.github.io/mdBook/index.html +# +name: Deploy mdBook site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["main"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + env: + MDBOOK_VERSION: 0.4.36 + steps: + - uses: actions/checkout@v4 + - name: Install mdBook + run: | + curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf -y | sh + rustup update + cargo install --version ${MDBOOK_VERSION} mdbook + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Build with mdBook + run: mdbook build + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./book + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 From 876190747d7fcff20b9b0939331e412b3be6052e Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 20:36:15 +0800 Subject: [PATCH 13/17] update mdbook version --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c794d79a8..b345567e7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -17,7 +17,7 @@ jobs: - name: Setup mdBook uses: peaceiris/actions-mdbook@v1 with: - mdbook-version: 'latest' + mdbook-version: '0.4.45' - run: mdbook build From 58c69c1496226ec4a7ab2674c139953846fd4070 Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 20:38:48 +0800 Subject: [PATCH 14/17] update mdbook branch --- .github/workflows/mdbook.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml index 38e5f3653..eae1ab576 100644 --- a/.github/workflows/mdbook.yml +++ b/.github/workflows/mdbook.yml @@ -7,7 +7,7 @@ name: Deploy mdBook site to Pages on: # Runs on pushes targeting the default branch push: - branches: ["main"] + branches: ["update-doc"] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: From 304e3aa3f4931047a6520bcdaec699e252713dc8 Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 20:39:33 +0800 Subject: [PATCH 15/17] update mdbook branch --- .github/workflows/mdbook.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml index eae1ab576..38e5f3653 100644 --- a/.github/workflows/mdbook.yml +++ b/.github/workflows/mdbook.yml @@ -7,7 +7,7 @@ name: Deploy mdBook site to Pages on: # Runs on pushes targeting the default branch push: - branches: ["update-doc"] + branches: ["main"] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: From 184a9964bab28a85d5c3ed3ae023d53f8bfc9f9c Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 21:21:19 +0800 Subject: [PATCH 16/17] remove build.yml --- .github/workflows/build.yml | 28 ---------------------------- .github/workflows/mdbook.yml | 2 +- 2 files changed, 1 insertion(+), 29 deletions(-) delete mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index b345567e7..000000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: GitHub Pages - -on: - push: - branches: - - main - pull_request: - -jobs: - deploy: - runs-on: ubuntu-20.04 - concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - steps: - - uses: actions/checkout@v2 - - - name: Setup mdBook - uses: peaceiris/actions-mdbook@v1 - with: - mdbook-version: '0.4.45' - - - run: mdbook build - - - name: Deploy - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./book diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml index 38e5f3653..bb0fb07c2 100644 --- a/.github/workflows/mdbook.yml +++ b/.github/workflows/mdbook.yml @@ -41,7 +41,7 @@ jobs: id: pages uses: actions/configure-pages@v5 - name: Build with mdBook - run: mdbook build + run: cd docs && mdbook build - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: From ad886ae0b52c4d9e654a53111d3cd22a7fe4777d Mon Sep 17 00:00:00 2001 From: Jingping Yin Date: Sun, 13 Apr 2025 21:25:41 +0800 Subject: [PATCH 17/17] remove index.tml --- docs/index.html | 1 - 1 file changed, 1 deletion(-) delete mode 100644 docs/index.html diff --git a/docs/index.html b/docs/index.html deleted file mode 100644 index 2ff47e0b9..000000000 --- a/docs/index.html +++ /dev/null @@ -1 +0,0 @@ -