From 49b0adcbcfe48f192039da317c82e2a5788504bb Mon Sep 17 00:00:00 2001 From: "joshcs.eth" <46639943+jcstein@users.noreply.github.com> Date: Fri, 19 Jul 2024 22:28:11 +0200 Subject: [PATCH] feat: site with mdbook (#170) * feat: init mdbook minimially destructive for repo structure * feat: move assets, and wgs into cips dir * fix: linting * fix: linting * feat: note about mdbook * feat: edit wgs overview bc links are fkd * feat: add plausible script for celestia * feat: add back links * fix: rm links bc broke * feat: test frontmatter as codeblock * feat: surround frontmatter with backticks and edit CIP-1 * fix: conflicts fix: linting fix: resolve conflicts fix: add cip: 23 to frontmatter fix: conflicts * feat: demo different frontmatter style * feat: use GFM tables option 3 * feat: standardize requires CIP-n * fix: linting * fix: ignore bare url * fix: cip-15 * fix: full links for forum * fix: rm repo-wide bypass of MD025 * feat: add install clarification * Apply suggestions from code review Co-authored-by: Rootul P * feat: use option 2 * fix: linting on cip-15 * fix: remove unused linting bypass * fix: add used rule --------- Co-authored-by: Rootul P --- .github/workflows/mdbook.yml | 56 ++++++++++ .gitignore | 8 ++ .markdownlint.yaml | 1 + README.md | 58 +++++----- book.toml | 22 ++++ cips/SUMMARY.md | 43 ++++++++ .../assets}/cip-15/memo-length.svg | 0 .../assets}/cip-21/blob-v2-share-format.svg | 0 cips/cip-1.md | 17 +-- cips/cip-10.md | 21 ++-- cips/cip-11.md | 23 ++-- cips/cip-12.md | 21 ++-- cips/cip-13.md | 21 ++-- cips/cip-14.md | 21 ++-- cips/cip-15.md | 101 +++++++++--------- cips/cip-16.md | 23 ++-- cips/cip-17.md | 21 ++-- cips/cip-18.md | 21 ++-- cips/cip-19.md | 21 ++-- cips/cip-2.md | 24 ++--- cips/cip-20.md | 21 ++-- cips/cip-21.md | 21 ++-- cips/cip-22.md | 19 ++-- cips/cip-23.md | 20 ++-- cips/cip-3.md | 23 ++-- cips/cip-4.md | 21 ++-- cips/cip-5.md | 19 ++-- cips/cip-6.md | 21 ++-- cips/cip-7.md | 19 ++-- cips/cip-8.md | 19 ++-- cips/cip-9.md | 21 ++-- cips/cip-template.md | 22 ++-- cips/wgs/README.md | 4 + {wgs => cips/wgs}/da/README.md | 2 +- {wgs => cips/wgs}/interface/README.md | 0 {wgs => cips/wgs}/zk/README.md | 2 +- {wgs => cips/wgs}/zk/overview.md | 0 theme/favicon.ico | Bin 0 -> 15406 bytes theme/favicon.png | Bin 0 -> 49332 bytes theme/favicon.svg | 11 ++ theme/head.hbs | 1 + wgs/README.md | 10 -- 42 files changed, 461 insertions(+), 338 deletions(-) create mode 100644 .github/workflows/mdbook.yml create mode 100644 .gitignore create mode 100644 book.toml create mode 100644 cips/SUMMARY.md rename {assets => cips/assets}/cip-15/memo-length.svg (100%) rename {assets => cips/assets}/cip-21/blob-v2-share-format.svg (100%) create mode 100644 cips/wgs/README.md rename {wgs => cips/wgs}/da/README.md (95%) rename {wgs => cips/wgs}/interface/README.md (100%) rename {wgs => cips/wgs}/zk/README.md (99%) rename {wgs => cips/wgs}/zk/overview.md (100%) create mode 100644 theme/favicon.ico create mode 100644 theme/favicon.png create mode 100644 theme/favicon.svg create mode 100644 theme/head.hbs delete mode 100644 wgs/README.md diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml new file mode 100644 index 0000000..171e999 --- /dev/null +++ b/.github/workflows/mdbook.yml @@ -0,0 +1,56 @@ +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.40 + 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 \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d3af563 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +book +index.html + +# CIPs - not sure if this is necessary anymore. on a fresh clone and build, the cips folder is empty of .html +cips/*.html + +# WGs - same note as above +cips/wgs/**/*.html \ No newline at end of file diff --git a/.markdownlint.yaml b/.markdownlint.yaml index 0a57674..83e786e 100644 --- a/.markdownlint.yaml +++ b/.markdownlint.yaml @@ -3,3 +3,4 @@ "code_blocks": false # Disable rule for hard tabs in code blocks "MD013": false # Disable rule for line length "MD033": false # Disable rule banning inline HTML +"MD041": false # Disable rule for first line in file \ No newline at end of file diff --git a/README.md b/README.md index cba86ba..a510d04 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Celestia Improvement Proposal (CIP) process -Read [CIP-1](https://github.com/celestiaorg/CIPs/blob/main/cips/cip-1.md) for information on the CIP process. +Read [CIP-1](./cip-1.md) for information on the CIP process. ## Meetings @@ -23,29 +23,29 @@ Read [CIP-1](https://github.com/celestiaorg/CIPs/blob/main/cips/cip-1.md) for in | № | Title | Author(s) | |:---------------------:|:----------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------:| -| [1](/cips/cip-1.md) | Celestia Improvement Proposal Process and Guidelines | Yaz Khoury | -| [2](/cips/cip-2.md) | CIP Editor Handbook | Yaz Khoury (@YazzyYaz) | -| [3](/cips/cip-3.md) | Process for Approving External Resources | Yaz Khoury (@YazzyYaz) | -| [4](/cips/cip-4.md) | Standardize data expiry time for pruned nodes | Mustafa Al-Bassam (@musalbas), Rene Lubov (@renaynay), Ramin Keene (@ramin) | -| [5](/cips/cip-5.md) | Rename data availability to data publication | msfew (@fewwwww), Kartin, Xiaohang Yu (@xhyumiracle) | -| [6](/cips/cip-6.md) | Enforce payment of the gas for a transaction based on a global minimum price | Callum Waters (@cmwaters) | -| [7](/cips/cip-7.md) | Managing Working Groups in the Celestia Improvement Proposal Process | Yaz Khoury | -| [8](/cips/cip-8.md) | Roles and Responsibilities of Working Group Chairs in the CIP Process | Yaz Khoury | -| [9](/cips/cip-9.md) | Packet Forward Middleware | Alex Cheng (@akc2267) | -| [10](/cips/cip-10.md) | Coordinated network upgrades | Callum Waters (@cmwaters) | -| [11](/cips/cip-11.md) | Refund unspent gas | Rootul Patel (@rootulp) | -| [12](/cips/cip-12.md) | ICS-29 Relayer Incentivisation Middleware | Susannah Evans @womensrights, Aditya Sripal @AdityaSripal | -| [13](/cips/cip-13.md) | On-chain Governance Parameters for Celestia Network | Yaz Khoury , Evan Forbes | -| [14](/cips/cip-14.md) | ICS-27 Interchain Accounts | Susannah Evans (@womensrights), Aidan Salzmann (@asalzmann), Sam Pochyly (@sampocs) | -| [15](/cips/cip-15.md) | Discourage memo usage | Rootul Patel (@rootulp), NashQueue (@nashqueue) | -| [16](/cips/cip-16.md) | Make Security Related Governance Parameters Immutable | Mingpei CAO (@caomingpei) | -| [17](/cips/cip-17.md) | Lemongrass Hardfork | Evan Forbes (@evan-forbes) | -| [18](/cips/cip-18.md) | Standardised Gas and Pricing Estimation Interface | Callum Waters (@cmwaters) | -| [19](/cips/cip-19.md) | Shwap Protocol | Hlib Kanunnikov (@Wondertan) | -| [20](/cips/cip-20.md) | Disable Blobstream module | Rootul Patel (@rootulp) | -| [21](/cips/cip-21.md) | Introduce blob type with verified signer | Callum Waters (@cmwaters) | -| [22](/cips/cip-22.md) | Removing the blobStartIndex | NashQueue (@Nashqueue) | -| [23](/cips/cip-23.md) | Coordinated prevote times | Callum Waters (@cmwaters) | +| [1](./cip-1.md) | Celestia Improvement Proposal Process and Guidelines | Yaz Khoury | +| [2](./cip-2.md) | CIP Editor Handbook | Yaz Khoury (@YazzyYaz) | +| [3](./cip-3.md) | Process for Approving External Resources | Yaz Khoury (@YazzyYaz) | +| [4](./cip-4.md) | Standardize data expiry time for pruned nodes | Mustafa Al-Bassam (@musalbas), Rene Lubov (@renaynay), Ramin Keene (@ramin) | +| [5](./cip-5.md) | Rename data availability to data publication | msfew (@fewwwww), Kartin, Xiaohang Yu (@xhyumiracle) | +| [6](./cip-6.md) | Enforce payment of the gas for a transaction based on a global minimum price | Callum Waters (@cmwaters) | +| [7](./cip-7.md) | Managing Working Groups in the Celestia Improvement Proposal Process | Yaz Khoury | +| [8](./cip-8.md) | Roles and Responsibilities of Working Group Chairs in the CIP Process | Yaz Khoury | +| [9](./cip-9.md) | Packet Forward Middleware | Alex Cheng (@akc2267) | +| [10](./cip-10.md) | Coordinated network upgrades | Callum Waters (@cmwaters) | +| [11](./cip-11.md) | Refund unspent gas | Rootul Patel (@rootulp) | +| [12](./cip-12.md) | ICS-29 Relayer Incentivisation Middleware | Susannah Evans @womensrights, Aditya Sripal @AdityaSripal | +| [13](./cip-13.md) | On-chain Governance Parameters for Celestia Network | Yaz Khoury , Evan Forbes | +| [14](./cip-14.md) | ICS-27 Interchain Accounts | Susannah Evans (@womensrights), Aidan Salzmann (@asalzmann), Sam Pochyly (@sampocs) | +| [15](./cip-15.md) | Discourage memo usage | Rootul Patel (@rootulp), NashQueue (@nashqueue) | +| [16](./cip-16.md) | Make Security Related Governance Parameters Immutable | Mingpei CAO (@caomingpei) | +| [17](./cip-17.md) | Lemongrass Hardfork | Evan Forbes (@evan-forbes) | +| [18](./cip-18.md) | Standardised Gas and Pricing Estimation Interface | Callum Waters (@cmwaters) | +| [19](./cip-19.md) | Shwap Protocol | Hlib Kanunnikov (@Wondertan) | +| [20](./cip-20.md) | Disable Blobstream module | Rootul Patel (@rootulp) | +| [21](./cip-21.md) | Introduce blob type with verified signer | Callum Waters (@cmwaters) | +| [22](./cip-22.md) | Removing the blobStartIndex | NashQueue (@Nashqueue) | +| [23](./cip-23.md) | Coordinated prevote times | Callum Waters (@cmwaters) | ## Contributing @@ -54,3 +54,13 @@ Files in this repo must conform to [markdownlint](https://github.com/DavidAnson/ ```shell markdownlint --config .markdownlint.yaml '**/*.md' ``` + +### Running the site locally + +Prerequisites: +1. Install [Rust](https://www.rust-lang.org/tools/install) +1. Install [mdbook](https://rust-lang.github.io/mdBook/guide/installation.html) + +```sh +mdbook serve -o +``` diff --git a/book.toml b/book.toml new file mode 100644 index 0000000..c284bd7 --- /dev/null +++ b/book.toml @@ -0,0 +1,22 @@ +[book] +authors = [] +language = "en" +multilingual = false +title = "Celestia Improvement Proposals (CIPs)" +description = "The Celestia Improvement Proposal (CIP) process and CIPs." +theme = "theme" +src = "cips" + +[output.html] +default-theme = "light" +preferred-dark-theme = "ayu" +git-repository-url = "https://github.com/celestiaorg/cips" +git-repository-icon = "fa-github" +edit-url-template = "https://github.com/celestiaorg/cips/edit/main/{path}" +cname = "cips.celestia.org" +smart-punctuation = true +theme = "theme" + +[output.html.fold] +enable = false +level = 0 diff --git a/cips/SUMMARY.md b/cips/SUMMARY.md new file mode 100644 index 0000000..7dc89a7 --- /dev/null +++ b/cips/SUMMARY.md @@ -0,0 +1,43 @@ +# Summary + +[README.md](../README.md) + +# CIPs + +- [CIP-1](./cip-1.md) +- [CIP-2](./cip-2.md) +- [CIP-3](./cip-3.md) +- [CIP-4](./cip-4.md) +- [CIP-5](./cip-5.md) +- [CIP-6](./cip-6.md) +- [CIP-7](./cip-7.md) +- [CIP-8](./cip-8.md) +- [CIP-9](./cip-9.md) +- [CIP-10](./cip-10.md) +- [CIP-11](./cip-11.md) +- [CIP-12](./cip-12.md) +- [CIP-13](./cip-13.md) +- [CIP-14](./cip-14.md) +- [CIP-15](./cip-15.md) +- [CIP-16](./cip-16.md) +- [CIP-17](./cip-17.md) +- [CIP-18](./cip-18.md) +- [CIP-19](./cip-19.md) +- [CIP-20](./cip-20.md) +- [CIP-21](./cip-21.md) +- [CIP-22](./cip-22.md) +- [CIP-23](./cip-23.md) + +# CIP template + +- [CIP Template](./cip-template.md) + +--- + +# Working Groups + +- [WGs overview](./wgs/README.md) + - [Data Availability](./wgs/da/README.md) + - [Interface](./wgs/interface/README.md) + - [ZK](./wgs/zk/README.md) + - [Overview of ZK Accounts](./wgs/zk/overview.md) diff --git a/assets/cip-15/memo-length.svg b/cips/assets/cip-15/memo-length.svg similarity index 100% rename from assets/cip-15/memo-length.svg rename to cips/assets/cip-15/memo-length.svg diff --git a/assets/cip-21/blob-v2-share-format.svg b/cips/assets/cip-21/blob-v2-share-format.svg similarity index 100% rename from assets/cip-21/blob-v2-share-format.svg rename to cips/assets/cip-21/blob-v2-share-format.svg diff --git a/cips/cip-1.md b/cips/cip-1.md index a0c7a07..4c421af 100644 --- a/cips/cip-1.md +++ b/cips/cip-1.md @@ -1,11 +1,10 @@ ---- -cip: 1 -title: Celestia Improvement Proposal Process and Guidelines -author: Yaz Khoury -status: Living -type: Meta -created: 2023-04-13 ---- +| cip | 1 | +| - | - | +| title | Celestia Improvement Proposal Process and Guidelines | +| author | Yaz Khoury | +| status | Living | +| type | Meta | +| created | 2023-04-13 | ## Table of Contents @@ -316,6 +315,8 @@ format. There is a [CIP template](./cip-template.md) to follow. Each CIP must begin with an RFC 822 style header preamble, preceded and followed by three hyphens (---). This header is also termed “front matter” by Jekyll. The headers must appear in the following order. +In order to display on the CIP site, the frontmatter must be +formatted in a markdown table. * `cip`: CIP number (this is determined by the CIP editor) * `title`: The CIP title is a few words, not a complete sentence diff --git a/cips/cip-10.md b/cips/cip-10.md index 601f4ff..1749686 100644 --- a/cips/cip-10.md +++ b/cips/cip-10.md @@ -1,14 +1,13 @@ ---- -cip: 10 -title: Coordinated network upgrades -description: Protocol for coordinating major network upgrades -author: Callum Waters (@cmwaters) -discussions-to: https://forum.celestia.org/t/cip-coordinated-network-upgrades/1367 -status: Final -type: Standards Track -category: Core -created: 2023-12-7 ---- +| cip | 10 | +| - | - | +| title | Coordinated network upgrades | +| description | Protocol for coordinating major network upgrades | +| author | Callum Waters (@cmwaters) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Core | +| created | 2023-12-07 | ## Abstract diff --git a/cips/cip-11.md b/cips/cip-11.md index 188fa9a..0ecf0be 100644 --- a/cips/cip-11.md +++ b/cips/cip-11.md @@ -1,15 +1,14 @@ ---- -cip: 11 -title: Refund unspent gas -description: Refund allocated but unspent gas to the transaction fee payer. -author: Rootul Patel (@rootulp) -discussions-to: https://forum.celestia.org/t/cip-refund-unspent-gas/1374 -status: Withdrawn -withdrawal-reason: The mitigation strategies for the security considerations were deemed too complex. -type: Standards Track -category: Core -created: 2023-12-07 ---- +| cip | 11 | +| - | - | +| title | Refund unspent gas | +| description | Refund allocated but unspent gas to the transaction fee payer. | +| author | Rootul Patel (@rootulp) | +| discussions-to | | +| status | Withdrawn | +| withdrawal-reason | The mitigation strategies for the security considerations were deemed too complex. | +| type | Standards Track | +| category | Core | +| created | 2023-12-07 | ## Abstract diff --git a/cips/cip-12.md b/cips/cip-12.md index a25e9de..be3707b 100644 --- a/cips/cip-12.md +++ b/cips/cip-12.md @@ -1,14 +1,13 @@ ---- -cip: 12 -title: ICS-29 Relayer Incentivisation Middleware -description: Adding ics-29 to Celestia to move towards sustainable relayer funding for IBC -author: Susannah Evans susannah@interchain.io @womensrights, Aditya Sripal aditya@interchain.io @AdityaSripal -discussions-to: https://forum.celestia.org/t/cip-relayer-incentivisation-middleware/1383 -status: Review -type: Standards Track -category: Core -created: 2023-12-12 ---- +| cip | 12 | +| - | - | +| title | ICS-29 Relayer Incentivisation Middleware | +| description | Adding ics-29 to Celestia to move towards sustainable relayer funding for IBC | +| author | Susannah Evans (@womensrights), Aditya Sripal (@AdityaSripal) | +| discussions-to | | +| status | Review | +| type | Standards Track | +| category | Core | +| created | 2023-12-12 | ## Abstract diff --git a/cips/cip-13.md b/cips/cip-13.md index cf84fdf..0d8c9f6 100644 --- a/cips/cip-13.md +++ b/cips/cip-13.md @@ -1,14 +1,13 @@ ---- -cip: 13 -title: On-chain Governance Parameters for Celestia Network -description: Specification of Mainnet governance parameters in the Celestia network -author: Yaz Khoury , Evan Forbes -discussions-to: https://forum.celestia.org/t/cip-13-mainnet-on-chain-governance-parameters/1390 -status: Draft -type: Standards Track -category: Core -created: 2023-12-08 ---- +| cip | 13 | +| - | - | +| title | On-chain Governance Parameters for Celestia Network | +| description | Specification of Mainnet governance parameters in the Celestia network | +| author | Yaz Khoury , Evan Forbes | +| discussions-to | | +| status | Draft | +| type | Standards Track | +| category | Core | +| created | 2023-12-08 | ## Abstract diff --git a/cips/cip-14.md b/cips/cip-14.md index c21ade7..99286e4 100644 --- a/cips/cip-14.md +++ b/cips/cip-14.md @@ -1,14 +1,13 @@ ---- -cip: 14 -title: ICS-27 Interchain Accounts -description: Adding ICS-27 Interchain Accounts to Celestia to enable cross-chain account management -author: Susannah Evans (@womensrights), Aidan Salzmann (@asalzmann), Sam Pochyly (@sampocs) -discussions-to: https://forum.celestia.org/t/moving-toward-safer-and-more-aligned-tia-liquid-staking/1422 -status: Final -type: Standards Track -category: Core -created: 2023-01-04 ---- +| cip | 14 | +| - | - | +| title | ICS-27 Interchain Accounts | +| description | Adding ICS-27 Interchain Accounts to Celestia to enable cross-chain account management | +| author | Susannah Evans (@womensrights), Aidan Salzmann (@asalzmann), Sam Pochyly (@sampocs) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Core | +| created | 2023-01-04 | ## Abstract diff --git a/cips/cip-15.md b/cips/cip-15.md index 8644075..12923d9 100644 --- a/cips/cip-15.md +++ b/cips/cip-15.md @@ -1,14 +1,13 @@ ---- -cip: 15 -title: Discourage memo usage -description: Discourage memo usage by modifying two auth params. -author: Rootul Patel (@rootulp), NashQueue (@nashqueue) -discussions-to: https://forum.celestia.org/t/cip-discourage-memo-usage/1508 -status: Draft -type: Standards Track -category: Core -created: 2024-01-21 ---- +| cip | 15 | +| - | - | +| title | Discourage memo usage | +| description | Discourage memo usage by modifying two auth params. | +| author | Rootul Patel (@rootulp), NashQueue (@nashqueue) | +| discussions-to | | +| status | Draft | +| type | Standards Track | +| category | Core | +| created | 2024-01-21 | ## Abstract @@ -45,10 +44,10 @@ This proposal seeks to realign incentives so that protocol builders are encourag ## Specification -Param | Current | Proposed --------------------------|---------|--------- -`auth.MaxMemoCharacters` | 256 | 16 -`auth.TxSizeCostPerByte` | 10 | 16 +| Param | Current | Proposed | +| -------------------------|---------|--------- | +| `auth.MaxMemoCharacters` | 256 | 16 | +| `auth.TxSizeCostPerByte` | 10 | 16 | ## Rationale @@ -58,13 +57,13 @@ Param | Current | Proposed 1. Crypto exchanges use memos to uniquely identify the user depositing into an exchange. - Exchange | Memo characters - ---------|---------------- - Binance | 13 - Bithumb | 10 - Coinbase | 10 - Gemini | 13 - KuCoin | 10 + | Exchange | Memo characters | + | ---------|----------------| + | Binance | 13 | + | Bithumb | 10 | + | Coinbase | 10 | + | Gemini | 13 | + | KuCoin | 10 | 2. Some IBC relayers include the Hermes version in their memo. For [example](https://www.mintscan.io/celestia/tx/5FED84C1DA596EFC7F9005866573B31CC593770C6022B16B60834F1D22365E49?height=556792): `mzonder | hermes 1.7.4+ab73266 (https://hermes.informal.systems)` which is 64 characters. @@ -75,19 +74,19 @@ Given this context, what is the distribution of memo lengths in practice? How of Observe that the distribution of memo lengths is spikey at 80 and 59 characters. The spike at 0 is expected (txs by default don't contain a memo). To learn why the other spikes exist, we have to inspect the most common memos: -Tx count | Memo length | Memo | Base64 decoded ----------|-------------|----------------------------------------------------------------------------------------------|------------------------------------------------------------- -4296795 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiY2lhcyIsInAiOiJjaWEtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"cias","p":"cia-20"} -1874034 | 59 | data:,{"op":"mint","amt":100000,"tick":"TIMS","p":"tia-20"} | N/A -210265 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwMCwidGljayI6IlRJTVMiLCJwIjoidGlhLTIwIn0= | data:,{"op":"mint","amt":100000,"tick":"TIMS","p":"tia-20"} -78409 | 77 | Yours truly, ValiDAO \| hermes 1.7.1+0658526 (https://hermes.informal.systems) | N/A -66181 | 80 | ZGF0YToseyJwIjoiY2lhLTIwIiwib3AiOiJtaW50IiwidGljayI6ImNpYXMiLCJhbXQiOiIxMDAwMCJ9 | data:,{"p":"cia-20","op":"mint","tick":"cias","amt":"10000"} -65931 | 80 | ZGF0YToseyJwIjoic2VpLTIwIiwib3AiOiJtaW50IiwidGljayI6InNlaXMiLCJhbXQiOiIxMDAwIn0= | data:,{"p":"sei-20","op":"mint","tick":"seis","amt":"1000"} -53313 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiQ0lBUyIsInAiOiJjcmMtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"CIAS","p":"crc-20"} -51378 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiY2lhcyIsInAiOiJjcmMtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"cias","p":"crc-20"} -40568 | 17 | Delegate(rewards) | N/A -31932 | 91 | relayed by CryptoCrew Validators \| hermes 1.6.0+4b5b34ea2 (https://hermes.informal.systems) | N/A -31233 | 76 | Relayed by Stakin \| hermes 1.7.3+e529d2559 (https://hermes.informal.systems) | N/A +| Tx count | Memo length | Memo | Base64 decoded | +---------|-------------|----------------------------------------------------------------------------------------------||-------------------------------------------------------------| +| 4296795 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiY2lhcyIsInAiOiJjaWEtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"cias","p":"cia-20"} | +| 1874034 | 59 | data:,{"op":"mint","amt":100000,"tick":"TIMS","p":"tia-20"} | N/A | +| 210265 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwMCwidGljayI6IlRJTVMiLCJwIjoidGlhLTIwIn0= | data:,{"op":"mint","amt":100000,"tick":"TIMS","p":"tia-20"} | +| 78409 | 77 | Yours truly, ValiDAO \| hermes 1.7.1+0658526 (https://hermes.informal.systems) | N/A | +| 66181 | 80 | ZGF0YToseyJwIjoiY2lhLTIwIiwib3AiOiJtaW50IiwidGljayI6ImNpYXMiLCJhbXQiOiIxMDAwMCJ9 | data:,{"p":"cia-20","op":"mint","tick":"cias","amt":"10000"} | +| 65931 | 80 | ZGF0YToseyJwIjoic2VpLTIwIiwib3AiOiJtaW50IiwidGljayI6InNlaXMiLCJhbXQiOiIxMDAwIn0= | data:,{"p":"sei-20","op":"mint","tick":"seis","amt":"1000"} | +| 53313 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiQ0lBUyIsInAiOiJjcmMtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"CIAS","p":"crc-20"} | +| 51378 | 80 | ZGF0YToseyJvcCI6Im1pbnQiLCJhbXQiOjEwMDAwLCJ0aWNrIjoiY2lhcyIsInAiOiJjcmMtMjAifQ== | data:,{"op":"mint","amt":10000,"tick":"cias","p":"crc-20"} | +| 40568 | 17 | Delegate(rewards) | N/A | +| 31932 | 91 | relayed by CryptoCrew Validators \| hermes 1.6.0+4b5b34ea2 (https://hermes.informal.systems) | N/A | +| 31233 | 76 | Relayed by Stakin \| hermes 1.7.3+e529d2559 (https://hermes.informal.systems) | N/A | Observe that seven of the top ten are base64 encoded data. Three of the top ten are relayers. The last one: "Delegate(rewards)" appears to be the default memo applied via Keplr wallet for a delegate tx. @@ -98,21 +97,21 @@ Observe that seven of the top ten are base64 encoded data. Three of the top ten How expensive are transactions after a `auth.TxSizeCostPerByte` increase? -`auth.TxSizeCostPerByte` | MsgSend without memo | MsgSend with 256 character memo | MsgPFB with 256 byte blob --------------------------|----------------------|---------------------------------|-------------------------- -10 | 77004 gas | 79594 gas | 67765 gas -16 | 78906 gas | 83050 gas | 69763 gas -100 | 105534 gas | 131434 gas | 97735 gas -1000 | 390834 gas | 649834 gas | 397435 gas +| `auth.TxSizeCostPerByte` | MsgSend without memo | MsgSend with 256 character memo | MsgPFB with 256 byte blob | +|-------------------------|----------------------|---------------------------------|--------------------------| +| 10 | 77004 gas | 79594 gas | 67765 gas | +| 16 | 78906 gas | 83050 gas | 69763 gas | +| 100 | 105534 gas | 131434 gas | 97735 gas | +| 1000 | 390834 gas | 649834 gas | 397435 gas | Assuming `minimum-gas-prices = "0.002utia"` -`auth.TxSizeCostPerByte` | MsgSend without memo | MsgSend with 256 character memo | MsgPFB with 256 byte blob --------------------------|----------------------|---------------------------------|-------------------------- -10 | 154 utia | 159 utia | 135 utia -16 | 157 utia (+2%) | 166 utia (+4%) | 139 utia (+3%) -100 | 211 utia (+37%) | 262 utia (+65%) | 195 utia (+44%) -1000 | 781 utia (+407%) | 1299 utia (+716%) | 794 utia (+488%) +| `auth.TxSizeCostPerByte` | MsgSend without memo | MsgSend with 256 character memo | MsgPFB with 256 byte blob | +|-------------------------|----------------------|---------------------------------|--------------------------| +| 10 | 154 utia | 159 utia | 135 utia | +| 16 | 157 utia (+2%) | 166 utia (+4%) | 139 utia (+3%) | +| 100 | 211 utia (+37%) | 262 utia (+65%) | 195 utia (+44%) | +| 1000 | 781 utia (+407%) | 1299 utia (+716%) | 794 utia (+488%) | Therefore, increasing from 10 to 16 is a conserative increase. @@ -120,10 +119,10 @@ Therefore, increasing from 10 to 16 is a conserative increase. **What do other blockchains use for these params?** -Param | Celestia | Cosmos Hub | Osmosis --------------------------|----------|------------|-------- -`auth.MaxMemoCharacters` | 256 | 512 | 256 -`auth.TxSizeCostPerByte` | 10 | 10 | 10 +| Param | Celestia | Cosmos Hub | Osmosis | +|-------------------------|----------|------------|--------| +| `auth.MaxMemoCharacters` | 256 | 512 | 256 | +| `auth.TxSizeCostPerByte` | 10 | 10 | 10 | **How does this proposal affect [ICS-020](https://github.com/cosmos/ibc/blob/0da326fbedfd2c96aad807ed25e6eafd1399db07/spec/app/ics-020-fungible-token-transfer/README.md?plain=1#L46) memos?** diff --git a/cips/cip-16.md b/cips/cip-16.md index 3a6b23f..466301e 100644 --- a/cips/cip-16.md +++ b/cips/cip-16.md @@ -1,15 +1,14 @@ ---- -cip: 16 -title: Make Security Related Governance Parameters Immutable -description: Consensus-related parameters should not be modified via on-chain governance in the Celestia network. -author: Mingpei CAO (@caomingpei) -discussions-to: https://forum.celestia.org/t/cip-make-security-related-governance-parameters-immutable/1566 -status: Draft -type: Standards Track -category: Core -created: 2024-02-07 -requires: CIP-13 ---- +| cip | 16 | +| - | - | +| title | Make Security Related Governance Parameters Immutable | +| description | Consensus-related parameters should not be modified via on-chain governance in the Celestia network. | +| author | Mingpei CAO (@caomingpei) | +| discussions-to | | +| status | Draft | +| type | Standards Track | +| category | Core | +| created | 2024-02-07 | +| requires | CIP-13 | ## Abstract diff --git a/cips/cip-17.md b/cips/cip-17.md index c3c6143..f71ccb0 100644 --- a/cips/cip-17.md +++ b/cips/cip-17.md @@ -1,14 +1,13 @@ ---- -cip: 17 -title: Lemongrass Hardfork -description: Reference specifications included in the Lemongrass Hardfork -author: Evan Forbes (@evan-forbes) -discussions-to: https://forum.celestia.org/t/lemongrass-hardfork/1589 -status: Final -type: Meta -created: 2024-02-16 -requires: CIP-6, CIP-9, CIP-10, CIP-14, CIP-20 ---- +| cip | 17 | +| - | - | +| title | Lemongrass Hardfork | +| description | Reference specifications included in the Lemongrass Hardfork | +| author | Evan Forbes (@evan-forbes) | +| discussions-to | | +| status | Final | +| type | Meta | +| created | 2024-02-16 | +| requires | CIP-6, CIP-9, CIP-10, CIP-14, CIP-20 | ## Abstract diff --git a/cips/cip-18.md b/cips/cip-18.md index 65fa50d..5211609 100644 --- a/cips/cip-18.md +++ b/cips/cip-18.md @@ -1,14 +1,13 @@ ---- -cip: 18 -title: Standardised Gas and Pricing Estimation Interface -description: A standardised interface for estimating gas usage and gas pricing for transactions -author: Callum Waters (@cmwaters) -discussions-to: https://forum.celestia.org/t/cip-standardised-gas-and-pricing-estimation-interface/1621 -status: Review -type: Standards Track -category: Interface -created: 2024-03-12 ---- +| cip | 18 | +| - | - | +| title | Standardised Gas and Pricing Estimation Interface | +| description | A standardised interface for estimating gas usage and gas pricing for transactions | +| author | Callum Waters (@cmwaters) | +| discussions-to | | +| status | Review | +| type | Standards Track | +| category | Interface | +| created | 2024-03-12 | ## Abstract diff --git a/cips/cip-19.md b/cips/cip-19.md index 0e030eb..1de0424 100644 --- a/cips/cip-19.md +++ b/cips/cip-19.md @@ -1,14 +1,13 @@ ---- -cip: 19 -title: Shwap Protocol -description: Shwap - a new messaging framework for DA and sampling -author: Hlib Kanunnikov (@Wondertan) -discussions-to: https://forum.celestia.org/t/cip-shwap-protocol/1551 -status: Review -type: Standards Track -category: Data Availability, Networking -created: 2024-02-02 ---- +| cip | 19 | +| - | - | +| title | Shwap Protocol | +| description | Shwap - a new messaging framework for DA and sampling | +| author | Hlib Kanunnikov (@Wondertan) | +| discussions-to | | +| status | Review | +| type | Standards Track | +| category | Data Availability, Networking | +| created | 2024-02-02 | ## Abstract diff --git a/cips/cip-2.md b/cips/cip-2.md index d49d4ed..c0b1421 100644 --- a/cips/cip-2.md +++ b/cips/cip-2.md @@ -1,15 +1,14 @@ ---- -cip: 2 -title: CIP Editor Handbook -description: Handy reference for CIP editors and those who want to become one -author: Yaz Khoury (@YazzyYaz) -discussions-to: https://forum.celestia.org -status: Draft -type: Informational -created: 2023-04-13 -requires: 1 ---- - +| cip | 2 | +| - | - | +| title | CIP Editor Handbook | +| description | Handy reference for CIP editors and those who want to become one | +| author | Yaz Khoury (@YazzyYaz) | +| discussions-to | | +| status | Draft | +| type | Informational | +| created | 2023-04-13 | +| requires | CIP-1 | + ## Abstract CIP stands for Celestia Improvement Proposal. A CIP is a design document providing information to the Celestia community, or describing a new feature for Celestia or its processes or environment. The CIP should provide a concise technical specification of the feature and a rationale for the feature. The CIP author is responsible for building consensus within the community and documenting dissenting opinions. @@ -34,4 +33,3 @@ Anyone meeting the above requirements may make a pull request adding themselves ## Copyright Copyright and related rights waived via [CC0](../LICENSE). - diff --git a/cips/cip-20.md b/cips/cip-20.md index 104cb45..41e7e28 100644 --- a/cips/cip-20.md +++ b/cips/cip-20.md @@ -1,14 +1,13 @@ ---- -cip: 20 -title: Disable Blobstream module -description: Disable the Blobstream state machine module -author: Rootul Patel (@rootulp) -discussions-to: https://forum.celestia.org/t/cip-disable-blobstream-module/1693 -status: Final -type: Standards Track -category: Core -created: 2024-04-16 ---- +| cip | 20 | +| - | - | +| title | Disable Blobstream module | +| description | Disable the Blobstream state machine module | +| author | Rootul Patel (@rootulp) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Core | +| created | 2024-04-16 | ## Abstract diff --git a/cips/cip-21.md b/cips/cip-21.md index 29b86e0..6bede3b 100644 --- a/cips/cip-21.md +++ b/cips/cip-21.md @@ -1,14 +1,13 @@ ---- -cip: 21 -title: Introduce blob type with verified signer -description: Introduce a new blob type that can be submitted whereby the signer address is included and verified. -author: Callum Waters (@cmwaters) -discussions-to: https://forum.celestia.org/t/cip-blobs-with-verified-author -status: Review -type: Standards Track -category: Core -created: 2024-05-22 ---- +| cip | 21 | +| - | - | +| title | Introduce blob type with verified signer | +| description | Introduce a new blob type that can be submitted whereby the signer address is included and verified. | +| author | Callum Waters (@cmwaters) | +| discussions-to | | +| status | Review | +| type | Standards Track | +| category | Core | +| created | 2024-05-22 | ## Abstract diff --git a/cips/cip-22.md b/cips/cip-22.md index b60d00e..157a697 100644 --- a/cips/cip-22.md +++ b/cips/cip-22.md @@ -1,13 +1,12 @@ ---- -cip: 22 -title: Removing the blobStartIndex -author: NashQueue @Nashqueue -discussions-to: https://forum.celestia.org/t/achieving-trust-minimized-light-clients-through-zk-proofs-instead-of-fraud-proofs/1759 -status: Draft -type: Standards Track -category: Core -created: 2024-06-26 ---- +| cip | 22 | +| - | - | +| title | Removing the blobStartIndex | +| author | NashQueue (@Nashqueue) | +| discussions-to | | +| status | Draft | +| type | Standards Track | +| category | Core | +| created | 2024-06-26 | ## Abstract diff --git a/cips/cip-23.md b/cips/cip-23.md index 8f7ab90..7c6c842 100644 --- a/cips/cip-23.md +++ b/cips/cip-23.md @@ -1,13 +1,13 @@ ---- -title: Coordinated prevote times -description: Scheduled prevote times for consistent blocks -author: Callum Waters (@cmwaters) -discussions-to: https://forum.celestia.org/t/coordinated-start-time-intervals/1768 -status: Draft -type: Standards Track -category: Core -created: 2024-07-12 ---- +| cip | 23 | +| - | - | +| title | Coordinated prevote times | +| description | Scheduled prevote times for consistent blocks | +| author | Callum Waters (@cmwaters) | +| discussions-to | | +| status | Draft | +| type | Standards Track | +| category | Core | +| created | 2024-07-12 | ## Abstract diff --git a/cips/cip-3.md b/cips/cip-3.md index 97630b6..ea4f7a9 100644 --- a/cips/cip-3.md +++ b/cips/cip-3.md @@ -1,15 +1,13 @@ ---- -cip: 3 -title: Process for Approving External Resources -description: Requirements and process for allowing new origins of external resources -author: Yaz Khoury (@YazzyYaz) -discussions-to: https://forum.celestia.org -status: Draft -type: Meta -created: 2023-04-13 -requires: 1 ---- - +| cip | 3 | +| - | - | +| title | Process for Approving External Resources | +| description | Requirements and process for allowing new origins of external resources | +| author | Yaz Khoury (@YazzyYaz) | +| discussions-to | | +| status | Draft | +| type | Meta | +| created | 2023-04-13 | +| requires | CIP-1 | ## Abstract @@ -66,4 +64,3 @@ The Celestia ecosystem is built on openness and free access, and the CIP process ## Copyright Copyright and related rights waived via [CC0](../LICENSE). - diff --git a/cips/cip-4.md b/cips/cip-4.md index d77bda3..174769d 100644 --- a/cips/cip-4.md +++ b/cips/cip-4.md @@ -1,14 +1,13 @@ ---- -cip: 4 -title: Standardize data expiry time for pruned nodes -description: Standardize default data expiry time for pruned nodes to 30 days + 1 hour worth of seconds (2595600 seconds). -author: Mustafa Al-Bassam (@musalbas), Rene Lubov (@renaynay), Ramin Keene (@ramin) -discussions-to: https://forum.celestia.org/t/cip-standardize-data-expiry-time-for-pruned-nodes/1326 -status: Final -type: Standards Track -category: Data Availability -created: 2023-11-23 ---- +| cip | 4 | +| - | - | +| title | Standardize data expiry time for pruned nodes | +| description | Standardize default data expiry time for pruned nodes to 30 days + 1 hour worth of seconds (2595600 seconds). | +| author | Mustafa Al-Bassam (@musalbas), Rene Lubov (@renaynay), Ramin Keene (@ramin) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Data Availability | +| created | 2023-11-23 | ## Abstract diff --git a/cips/cip-5.md b/cips/cip-5.md index b3a3fbc..5f5d663 100644 --- a/cips/cip-5.md +++ b/cips/cip-5.md @@ -1,13 +1,12 @@ ---- -cip: 5 -title: Rename data availability to data publication -description: Renaming data avaiability to data publication to better reflect the message -author: msfew (@fewwwww) , Kartin , Xiaohang Yu (@xhyumiracle) -discussions-to: https://forum.celestia.org/t/informational-cip-rename-data-availability-to-data-publication/1287 -status: Review -type: Informational -created: 2023-11-06 ---- +| cip | 5 | +| - | - | +| title | Rename data availability to data publication | +| description | Renaming data availability to data publication to better reflect the message | +| author | msfew (@fewwwww) , Kartin , Xiaohang Yu (@xhyumiracle) | +| discussions-to | | +| status | Review | +| type | Informational | +| created | 2023-11-06 | ## Abstract diff --git a/cips/cip-6.md b/cips/cip-6.md index 42654b2..a780c79 100644 --- a/cips/cip-6.md +++ b/cips/cip-6.md @@ -1,14 +1,13 @@ ---- -cip: 6 -title: Mininum gas price enforcement -description: Enforce payment of the gas for a transaction based on a governance modifiable global minimum gas price -author: Callum Waters (@cmwaters) -discussions-to: https://forum.celestia.org/t/cip-006-price-enforcement/1351 -status: Final -type: Standards Track -category: Core -created: 2023-11-30 ---- +| cip | 6 | +| - | - | +| title | Mininum gas price enforcement | +| description | Enforce payment of the gas for a transaction based on a governance modifiable global minimum gas price | +| author | Callum Waters (@cmwaters) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Core | +| created | 2023-11-30 | ## Abstract diff --git a/cips/cip-7.md b/cips/cip-7.md index df886b4..d6efbe4 100644 --- a/cips/cip-7.md +++ b/cips/cip-7.md @@ -1,13 +1,12 @@ ---- -cip: 7 -title: Managing Working Groups in the Celestia Improvement Proposal Process -description: A guide to effectively managing working groups within the Celestia Improvement Proposal process. -author: Yaz Khoury -discussions-to: https://forum.celestia.org/t/cip-for-working-group-best-practices/1343 -status: Draft -type: Informational -created: 2023-11-29 ---- +| cip | 7 | +| - | - | +| title | Managing Working Groups in the Celestia Improvement Proposal Process | +| description | A guide to effectively managing working groups within the Celestia Improvement Proposal process. | +| author | Yaz Khoury | +| discussions-to | | +| status | Draft | +| type | Informational | +| created | 2023-11-29 | ## Abstract diff --git a/cips/cip-8.md b/cips/cip-8.md index 85cbfa1..bc8c690 100644 --- a/cips/cip-8.md +++ b/cips/cip-8.md @@ -1,13 +1,12 @@ ---- -cip: 8 -title: Roles and Responsibilities of Working Group Chairs in the CIP Process -description: Outlining the key roles and responsibilities of working group chairs within the Celestia Improvement Proposal process. -author: Yaz Khoury -discussions-to: https://forum.celestia.org/t/cip-for-wg-chair-responsibilities/1344 -status: Draft -type: Informational -created: 2023-11-29 ---- +| cip | 8 | +| - | - | +| title | Roles and Responsibilities of Working Group Chairs in the CIP Process | +| description | Outlining the key roles and responsibilities of working group chairs within the Celestia Improvement Proposal process. | +| author | Yaz Khoury | +| discussions-to | | +| status | Draft | +| type | Informational | +| created | 2023-11-29 | ## Abstract diff --git a/cips/cip-9.md b/cips/cip-9.md index 30bcb06..a2b361d 100644 --- a/cips/cip-9.md +++ b/cips/cip-9.md @@ -1,14 +1,13 @@ ---- -cip: 9 -title: Packet Forward Middleware -description: Adopt Packet Forward Middleware for multi-hop IBC and path unwinding -author: Alex Cheng (@akc2267) -discussions-to: https://forum.celestia.org/t/cip-packet-forward-middleware/1359 -status: Final -type: Standards Track -category: Core -created: 2023-12-01 ---- +| cip | 9 | +| - | - | +| title | Packet Forward Middleware | +| description | Adopt Packet Forward Middleware for multi-hop IBC and path unwinding | +| author | Alex Cheng (@akc2267) | +| discussions-to | | +| status | Final | +| type | Standards Track | +| category | Core | +| created | 2023-12-01 | ## Abstract diff --git a/cips/cip-template.md b/cips/cip-template.md index 7fc42fc..2ac8295 100644 --- a/cips/cip-template.md +++ b/cips/cip-template.md @@ -1,14 +1,14 @@ ---- -title: The CIP title is a few words, not a complete sentence -description: Description is one full (short) sentence -author: a comma separated list of the author’s or authors’ name + GitHub username (in parenthesis), or name and email (in angle brackets). Example, FirstName LastName (@GitHubUsername), FirstName LastName foo@bar.com, FirstName (@GitHubUsername) and GitHubUsername (@GitHubUsername) -discussions-to: URL -status: Draft -type: Standards Track, Meta, or Informational -category: Core, Data Availability, Networking, Interface, or CRC. Only required for Standards Track. Otherwise, remove this field. -created: Date created on, in ISO 8601 (yyyy-mm-dd) format -requires: CIP number(s). Only required when you reference an CIP in the `Specification` section. Otherwise, remove this field. ---- +| cip | XX (assigned by Editors) | +| - | - | +| title | The CIP title is a few words, not a complete sentence | +| description | Description is one full (short) sentence | +| author | a comma separated list of the author’s or authors’ name + GitHub username (in parenthesis), or name and email (in angle brackets). Example, FirstName LastName (@GitHubUsername), FirstName LastName , FirstName (@GitHubUsername) and GitHubUsername (@GitHubUsername) | +| discussions-to | URL | +| status | Draft | +| type | Standards Track, Meta, or Informational | +| category | Core, Data Availability, Networking, Interface, or CRC. Only required for Standards Track. Otherwise, remove this field. | +| created | Date created on, in ISO 8601 (yyyy-mm-dd) format | +| requires | CIP number(s). Only required when you reference a CIP in the Specification section. Otherwise, remove this field. | > Note: **READ CIP-1 BEFORE USING THIS TEMPLATE!** diff --git a/cips/wgs/README.md b/cips/wgs/README.md new file mode 100644 index 0000000..f016321 --- /dev/null +++ b/cips/wgs/README.md @@ -0,0 +1,4 @@ +# Working Groups Directory + +Here you will find all working groups +and their meeting notes and recordings if available. diff --git a/wgs/da/README.md b/cips/wgs/da/README.md similarity index 95% rename from wgs/da/README.md rename to cips/wgs/da/README.md index 0812875..8ae9c48 100644 --- a/wgs/da/README.md +++ b/cips/wgs/da/README.md @@ -1,4 +1,4 @@ -# DA Working Group +# Data Availability (DA) Working Group ## Meetings diff --git a/wgs/interface/README.md b/cips/wgs/interface/README.md similarity index 100% rename from wgs/interface/README.md rename to cips/wgs/interface/README.md diff --git a/wgs/zk/README.md b/cips/wgs/zk/README.md similarity index 99% rename from wgs/zk/README.md rename to cips/wgs/zk/README.md index 1f5a613..9339bd7 100644 --- a/wgs/zk/README.md +++ b/cips/wgs/zk/README.md @@ -1,4 +1,4 @@ -# ZK Working Group +# Zero Knowledge (ZK) Working Group ## Meetings diff --git a/wgs/zk/overview.md b/cips/wgs/zk/overview.md similarity index 100% rename from wgs/zk/overview.md rename to cips/wgs/zk/overview.md diff --git a/theme/favicon.ico b/theme/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..32e9a6a260438090c7e3dcb051549c390b177cfa GIT binary patch literal 15406 zcmeI3dz@9(b;qwUO-$P)CegG>Y(f(%%)RH{0ih0?rY%m``hR2;mql|GZ!R( zHS_uG&pvlQ)>?b*wbyI!Nu>@;9iBS!$Q1RE)J5-2rH)UfQbUFWzlVP$mAaF*5hKF> zV^gVBN2gN58N(E21npD}{dHvu&E52*Z+11E2TStbnmGV#&2ES)jGVW3f(`U)GOyRE#?T-6QIpe(n-kU0!!d1|+ z8kl>aWv<3oSubrjs;@WOc7{Ku_+H?RW6UDxSi3cM#UItO?&b79RLvGfm9yU0%UVyy zTUgEIkE8yv)@$ZD?iJ9ntl|{T5p3w6uUdb8w&f$D6CT}8J;%=$KMUU5v|jaBvaQ4U zegrya0^?dgUHoI{zej!1KjCNGbCf2=t*8Ev-2v=Jne$PNEobsy1NP6w>*!qjt$kqb zI@Z`J9x--CwYf0T_N(s96+aGaWWZfeOShdUp4xuqJqqlntB%_PFCGKly|&NR8n5~O zh~klqnaG?a@T2I9ZpYnN%d~wB7*7D>)=JiGvGbxebMCjlgFS8g8|b+U{=EVpAFeuu zTSd3sOFP!q)vPzyA5}amq~$E;Ed}Sdgim{J*DSd$WxNX|XLhb?BY#eQN)6hXI}ZN7 z5Bxte`|o(O?O4eoJYT_>*IC>aYd=F?dL_Qsv8Dy=!T3t9=vX{HI#^@DeT!|2*5xdF6v9Ey->x?0 zkBj!lzqRfV_Y2^<6yBZ1{+iEX(~wkx2;+XmdZ(Dov~ z_uBPR?+c6gsPB9MZ*Qz=93(+z9u4D^Y`W~X} zgU%lDz_h1Z)A0Ll+Ipek*;>~7YIH7rkI;U9DA)fb`0_jK81`@uZS9hCKjk0B_hMjg z!bT0z7=P5{55wbGg3mhsoA1+^gHHBVS{SM;&_UaxkiG}xo2Z@jO`v^?zIS2wpyyS_ z%+qgw*rX5g-6ekNxBmRk7eB<9wcxuNdnnt6Z9v~4i=t0sIP=RzgTCW`_yS*LuH>Nu zxwxp5YyC3czV*M5?F;!`k`0#r;=3HzE$y;t*+Prf4DBmAhPQq!iih^Mpy7wnw&=G% zbjJJTI{~{Uo(aFz5z>qLT}iwD0x#!Kp6oZ5eUQ!tM~!j#Bk0|1;rrItkWVGLq<^FH zlD>P8BX}Tw`!%OG|Pl{{Q;=Ze43b35?m!<^=G=J?JtrUsmcyN4A& zxd(qLfai^|^9HKrzloN z5W0UVUsL!^3C{D|;y?6^r@ym%RQ?n3x$)oT3=2lq`v=a_3c(V8k?+6v&px}KuW0A8 zF6qhjlnQdBxTK4@+kG?TUdJ!JQo1M# z!_vvP$BaxHKTt7{@kQm^_y^(#GX6E>WkM83Io-m!mV8KG86K}gzGwKuulX43f06H9 zI{U;;f2}h~;rzK{%~FPkG`S%7w|kWj?wyhGOfgU-ZkKO3A`78!>lo+E7<>Z z;hX-b>pl!^J@C!w=Qy5vzkzuRbADB?U+uC($lbQSH7a)HjFq$Q&B7_%8V8+sGNvZ~ zLBAXMLpOhuIprkZ&iF-HZ#w;ZfqggU>kNHMZbR8=Md<{U zi?-ds&Pt~n-()BL>$lX0KQoQ>KCkbplm8C1RLjk+WF+?gRpANyDczRa-#YLYV^<;9 zmr8e3)84oFZU;}Vl;YjkoG)KN6@V09_>*!`3kMkQ@$+yxr zsf0hk{CV`ro*Esjv8-pgA6ah{KmB(xXAiaUKg)IePdg{bU052t=a3UAjp=`4i$R{X4s{sTPK<@#RJ`UN#&W@xL3i7ot(}!n_^mwhIQ*3ufOq8%Oz7ro9_+#1o zxya*M&bVw>O(p!M&DfH$@|PQd`TH?JK32)o^C^cSPm;t_`Lx;-@}z%W%e9?|tP;=S z52fAbIKPUuC0oi_Y(s82cX{PFi`cG{G)H!$h)qp`{kv>a-c2zdG>*fsSODGfq4!aw zAEoEtrVZWXN^h%dU~Hg2?ODi>S91yva9$?(uoWl3zuDMF#pza8zXM4Qbdb z9wQe|C@0|`GrnJbK8{;{9=Q$^pR>koMpvMti0d!n_j2S7Kg-yH-M}1&UL*$_#Itc& z2lKm@Et~*+#TgaKPH@aA;cqDyF&I3Ps|b8oi0eoh3Yl`rgqyR?Ka zI~eT2`hz@l;ap&E=Ilwn_Y$X!5zfKp+Ws2;uGY+XDAm$az9b*m_SxDWdfEH&y*=QY zJPb9sye*Q)gWU&w*7p&ID&H97`u59f8QGD~u#`QRs@PxhF8PY`RkR5Pyj>1G#Mt?X zmfoaVx`?q)F}Ck~AZMN68K;~>(wus2;=5#BzKP%gXAgP>UjjcT?Y;z_ZPGI#E@G>^ zZ2U6x$<_3qVSO&zzClq=YPHUNJ$$yknrr<$@@vQG6@Z85(#rsBgQtzS=lPRC>zCfuUa}(#Mg7{T* z_~|L1E<0_1C;6ZsxiPUF@ts$oZ8vS?RPafi{JDH<{}t0-7^gG-TYNY77DnC;J=ECO~hox_#>}5I?g})8z1%i&@TP;3PpRrmt4kV+do(xp1~i2e<5do zT&1~?sVW~FzzXcMbUm`+A3NbFe@O8Nop~cuk}JM-f6932BGFL_?YM~*)P{VRTwR=& zo@3ol!JC~bk|E{5^vxXhzkcj!aO>`poFjC-$av8yeEZ<%| z{juh=BKmsB(ExJ;MfWb-;ot0z9aeolK3kK(O z(bWr$!cp(fC#R@=4`fBM;jOQsS9JyyFA4@U&60f<4ABNpo-nke-4@BN&Kz_+ps~^$ zNw~CD_%XSbD}0%;cQRHo+=ZOX*4Yr8=sa*LW~}M`LbN^UTXU7q;ygUaeo8m(k=*Kj zoNwu%#maNrxv~R6ySGH`iX&LJ@`CTw^CKg6;n$2KcO@U+ySQHb47``wGxE1BLoMEc zYQf)=9{*9n1b!z4xp9@BgMRN><+SX4^z(6H`)0;}j&hRu?G)~|W1_WWu_x_*33%%n z$C>nGU(qi{4$stH_a9GegWhBOx*qIow6BqGae+Z)lr~+{#bs;QMCz6n1WS2O=G@Mz+khA4px|ehu2B z`%2nt=>eN}3-2NV+on8j#$BQ@iko6M4wLRekG%<;Dt_h+D~CG6${*3rIWYFFUHd3G zDCMp~9;JKSUr5iyU^e{I#0};WTx6TW-dWX~(?~ma zzXick4%@s>%XpGy$<1cUD@HZ~yJYB>t|@2QPM3|7Oi30R!DGkBA48sgY;ZX4BeLa{ zbpF0-llui^so^^a3y(M?FIc_Y-^&-|TY6;w9!R#O2SfQ0zhp-kqnPQ2xGlDD2dX=B zCQpKHbAK+sM)<@F_WIv|eU_iSw&6WtuBZ9LKNFx){siw{`n^Hf1)VPnzRB6>PF{CL zY46n}zi=SBZJ&8Z7x3smP2LAP58f@J1KHY5S#5IPL(V_K&Z$>J%hj3}_!ro7Y*`QY z#puL03_QnEew=rd=KaEG+7?h`qXv!D>fuz(4vZ?L-M%YOUJ4%FK-+83Vsbt3a}#T6 zQyx!m2!5H6e?#vp1`6aQcz<%9WSqHIsvTK<6kbo&H~TV^S~h8YX+(ejx*o0d+JUP( z=(oz*md{4V1n+>nOF4T>Sci#o!AFb%9ppuOIeWhHcHz4~V9Xb7lzn=$W&IV#wwiX? zFTKwU#>l>EukJaRvlgWjS=Sp7Y^T>0ZP&MKy6lkdpG1>%NkEH<2Uv@V{jLpT9>u@V zU%*C@Gr%8&-&2qebiU4Y{#5bA@GDpY@uJ(NJ&NN!kl*-jKMCNsojTY&=?LZI*n^+K z@0VE5cFIQWo$7%8P=*2;L;d4z67Atz*u~*E?&=Dc42E;Ce)xZxfrtJZY;3e&cV+Au z@jG^3Z<>sLG%?|C;qgkzdxY13Y!`y|Y|PEX>%uG#dL8ZknIcJ)A4SP{ir$les5!(SY(()YODRmOdD$pthN8N>U$;C}^}Gne1w58Y+{05Oqd5_ufM z_^rWN^0t&Sg_*J)_2^7$7r$%7%;3L~@;tc3OT`BGFy=kg$$DFxq$fIaS9~0NPcc@0 z^6Au**dxV8TS|lEZ!InIf0(BniLn*nkfc!Oa^JVu7@`O8xL)W<7ki-Q+AY-qRsG`C^@v9ik;^uk5^} zTKULe4SoAiHu7L{{O(frcqQ@0Y9kLBZy|c_X1%@FU7vDF(xJ+mRkJOlkmtA9Q|__b z`rafZ;e;o7=#`vVe!%wwzdy3DwPx*`WDl6co9;7ue%)l2);Ww8}gUz*?otzakp}K=6}w@_XD~+ll_ssRD7!VBtol| zarg}^`2+`%Z>&e>K<%~1}L-U|-meh8ik($p}K zB&XM%t?F1MS7)(3`G`sGL4nP! zq=t{TxuGdW7y@ERvE%dSQX=AKS;$QLSN&NgU{EiAIyH3DDKfKIb$i!zFv#{|jPLO! zvgO$%IP{tiJo9Cjn@Lhhc9F5ESSAE9E@Q`FkSZ^DAjjsZsT{Pag5t{a9x%dKdi_j% ze;NkG-vB$~5=>^T-&vce;BRbsSQ&sAl_et}3=5SUG^Lwy&ElCj)8c}jen#EJ7Ro>W9}(1SV|OfoK~j)})f0}gF7frnSwHGb$Q9&;azq;B@^F|xOl@kppU6r6WSIRd&J2<+FG(uj96BG@g(q518hpDla@< z!wQZMVeNr6%2LV3mgB4%tQqB@Z4{8%PD%=QH>f0x3%~v;tnN1FaN?^k5VQ#%;oF_L z{5<(Q&EX|AC@pEh!Y}se+3!_c(4#6Ny2Z$5YGg7HfCWbQ1<`Jn z*C^eMbSZcagFb=(w92B~H`NZj-v;`%eA^i;eu^7fWa)ufAtQ^ZF;gmi_nai*&=Y}l zYGiklggyCI7f}wlAE?4yeko%5XpczmzXE z9<8{LS62V&$}z|vTx}zRRF`nWsSGYCx>Ska+$BqfRkWN6bbXO_AJ$p0*bl)c1vu^h^`3H=m1s-fYkqS@(L!r?(~1MtO%X^@Fl~H!@0ErG?8AFZ z&=khY!3&>umz@d<09vcbH0};*o_TWLaE%LRvgr*0u~vgvt48>|D5d60fWSRZq?`oxS;8v z#V2?sUSI3TfJ;&Vs)5{s0i@N9iKmL^ViR9xiAWqWHPTbb;q6V-jq;aX1&NCu^X~Y| zi&oy7?^s=n8g9ijCw$v^6@)F48Y@;j+G@4QKekqL`=?1mr6>(#0gQwtCExynjkM=5 zfuSKV4%@I)T>Ul3+`Fox;_R~Y(c1$7tKWLgw;D>p@KmtDh#SPQLND7Kw($Cbfw0BS zlDfma^8zK!3_515)2;v&f7>%^`As( zkQU%vX<1!jb8NUyPx=iQ(KVRLN9##*)g3odVAD!-5>fdzyn|>=2g7_#PIrcmM$3NY zGOY3Y;~TZDh;TFe@NDkh(p7qm>9x1=<%o^ZDkkVDkd>$|bIJLVr&ZSv-?EB3*e|TI zH{>>vx8OY@;4<`Bzn7ISM^5VGn^)4i=D({>SWm(sFi+B%(%FHIrSQJC`)#0~vi7!1 z#?at&Cws4YTOi#6BnR{qbLz3rnZfb3JI=iG$yS1Sm)=&(?6QXQi5m8W7W|hjnB`m$Z}ll21~}rWfbv?LR`p{r~`MjddD z^(x|CWEJO&4b#Kdtb$B>2W$-Kn$7aYJAOY)XPS})7OZ7xBDo@n4rA_uMf0HD(*?MS zX$3^eZC6Zz8Arfj2s~KZ_~&(@*KJD%`shES6{i{-R;@ms$uVpk%p5KC+N6U4?oHbwK&&NNR{&m!JaAvmGV`AWZ9expL3Bi9bW;@RrJ3v55Auq*Z;7qt(AT_Y z5BW*VWH~&0$*g>=1eIJYs}%nEXkqFNS@PH5RAY6I^CWig7~y}0^DArw*zs8_>MDEI zZ^6MK81Ckr&~#O%E}ejZa3?EjWi@>2~0u z0eJY$H&c2rfts3OsEKne_T-}~6V8D|uva43tL9DODcvvUbR5Y7y+u`VR8A#E@+Zp; z_n_1b67n(F!3~-2u`zA^jAVgcNYy%LQ^ZYCjUc0p&}0EGBTXc;M>!1!O-HLt~)7wx~xuqWfKvuqF0b8yPT0uOXN#=`8&C?CKz2p>Z z@HVDZwsBZ~3IRi4!p28*6^MCv_3Wr3Zkb4WNa)fOl>U^TIt89R9v^|Xg}LI{LjHD* zhgv31&t3r$MtFk~`wMibSzZ8h(j9OrUNqRo;Cy@00Z)uJU~I2<%c~h!2d5^EL||eNRSRe4X#X@d%cl;0P1-YqvSiD03vnKXELr;KGDr>MP~T z=bMJk3=vAyKAhmGEoNNt(lX*!qILt87-z#)rJ|ty_Bq-W=0!IzZ!Y$u+JN(0CZQ{o zRI&kI!8Kd4$@02`i@54UB^@DOKK`c~#|Ip$Owf;^Tg$>Btb=f`51WhYx!j`=I4=XB z9+yZja0vREGfDNZBGxWTY>p>?`^Mo}Yt;b;t;G1Q$PO(4MeTbp!91xzWV(=|oqJ=E z>(<$x{J|2Qjnx2A;}1)U1g?Hn@;<@YsoO&RrhYtc>AhGX14VDY_g-J=%pC1%93!wm zZ34+b0w3Tp*3AQXbPECRl9<#Ul!(`q2$zO774Dg3Xg&(i4xJN)(;_fNo*NGJYsgsi;LS>vr0QxK=31^&brtaUBM zfybTYdvMDG?k?r$qt7>dj9M;!Y6nEM1SebuG4}fA3zc{#Nk$bI5RTByrwXgHCxqfL~?b zT&yzX{`@pNE^L_Ry;p-f7bix6N)E$2Sb+$&V&bht{3Kn~;O~#33wO`)B+;%cH3lC# zqoFB-VY;H*+|n=6dzT*pna#>*t%?+iGKb=|n|!!HXsy=QJ%|%rsLOg_W(Z9|*q&g; z64o(;q8~1TWx#{s>ms8++bl{OTAu{dbckHu2eF)J;d7`K0F(T2*I&}{dWDW|b9zf= z^L;>{+~~&3l?%zl5$&a1S71~Yp9$*|rJtyW*dPGo^z|4^;WTh(_p8LB|Fzw zz8po5)v42;U=bA&uEaF#k+K_cUv?L`Fxp3hoC zJRteEBIAxC(+bwp-LKrX0#mdI%qTG`76kUbDAuzmVUy5aB>s%nO6;i@Fa7)*&HX)@ z3k}_8GIhxOkRuKDzDVS!?w6Zx%IGNt56Dl)e_VE2;abT0=dnD5PtIAq6KhXgwz&3n z)3?&mXmfC?-9VHnotgO*wytaHnmpgN4Zj*VwV!tEiA%wRjHdA?H#`h*8l_mhsIIyU z%Es)4(rY%YAdgd=?&@&F2puBjpX#H!`N^=RE7`*z#&ubN4t=SP{(O^cJqRi8If=_Bz{>?z3Up9sINVTw zZb;{xnchEN8Q(=e56OwMPjj86LytR><*vG2cy#vd733dcy1*mrx*Z|19REhHXYxTS zkn-@n+~%GLv)J0(eEVf}YAa0zan(O`M9q`)Nev{ga)G7D=P;Q&CX%*VTiPG|x<*ZF zh1b{^Y`%0~h}S@(+?%3iqP)w-=2ZGZGIby^y!`^4&v_5-84j>)_sJg>p4#)7k}$?=gTbR0&>K6?Il{&ZzqX6 zci5?UwLHjFa-U8Ll*!x}u3ap{A>PQwt()5SL0VQVh@#L=^SO8>j>MBm^5wRcI^-Kr zmT;-j)!Po;<`0d}pk^bn*A@}Mf-F7LXXJBS$_;De<=d!WMBU+2WFD}ymR?=ri7lb` z!wO8x5;IJRO@y{=@4r8>LZoC2lNCf+di@P1S~L{now1oA8@6GwL|8Ay@ik@;)0;sc zE;=y5_3`Yz=S8yk&w>?>drM9dgc4DzN5_*A4<4XV@69TxD#6H?CG_n;n~D{41E~3v zsflQ!wr*4h@!ONEr#M#4At#CaFYn!M>kWAJ2>}b;d-sG%x=C-T!EA_?wd*=uJU8Fo zpSB!F_f>2 zm#m?xVrcHAKZ(vQWn1tHG_9FP9@m1MxNz@zqPDFMYd?zP-tgF_D^M%1E2Mb8i!ISi za_>$L$_?@->nzF4>6d+pkUj&Qd9N*yJbALqn$PL><_B;Cd%2$IU3uUehFE%7vsbfr zEJ8f;6qTF-T)Gr6z+%%%*l@>nBDuf3$B3Vj!q$})33%Aea7d{|dom(Efb zyXOX4LtOX_W4)(UQ+J-xVU!4U*R-~#1KA>&9D7(_Vz^p)261XO*%cnC2aFFmP(SCR zK8?*z7H(~OHDKOfayLBPY1{`4KyFo}&4B-mb@LYhq>x>fi zarf~?b(UB0e%&vxL?T?Po9F$Q@?M?T^w!|3MZqYuP}Uy5owSF9lq(wSgX&O{jGWXZ zuI8}Z{WKg5-@^HW;nmD0XACw^%kHt%Q`$fJ_qJ4~v2_%}p$@|g5S#73L-sDxKzq<*7-%}Q_D<7js0HJhj6(jJDt!pjC^kNE}?$MFN)sbye zH)M*xB=w5kc8HU1sT#xY)Gw*=0lWeeLoywiebW^3EZi<&KlGA6xU(ULoAF&W&l^cRzof z*&)VSAj|d^4faGBhUxxq184i<=3*UxW+ zUho_u#I{R>3;P<^xQVT(5>JESe885!KB;G1Dt~mn>wHhC?I(nm)_vs&<3eD{^dur+ z&+2%SsW~_@4j_}>$RB~73YH(vI-}e{x)i_u9ETWw78`BB+S4oBB#YM^d%Cu5dLC17 zuBJjj%bN7na7^b5cs{|>(<=;~M-&cy8k(L}nlB~xC?2(e9TW(rl)d3KeAzx1B`lDY z3362|IKIY=4SWB>?}SBqt`D1J07xH2sfb2Y$~k#pj0YI=7{kQNI*A=ILU&kz3_1%K zjSN-hQahDhW(`skl|x6AIXBIPoEdZ+aV*am-!Sv%=WIS`>=bv8Yt&+p<;}{xMuX)F z1+%C!?|LHk`aZr62#LyZ(6VdI=9>NMB=PnRJM2U#6c__%GgrfR{1*9-Mf{FH>W%+IM8P7Ftfa8?-SM&!HLrIA>ab(wqjsD znb8#5;qyw^PO+D*bB4)2Oq%)69*UAO{~N`ZZfgfd5kamtzL8W!Wp7q2_wuM{=NxA< z%%)i;oQ^ci2}8((OK#+4vS{Eg>VL5s*H^ylR>2Vk;yIhorH;$uu#h^Ip0x{2ve0Xv zTYe9BuI>}g4g<>fg>hJe-p0AkR!n19k9vct9NSe{?^{2$q$ed$t%3cTL>j`N6XTs{ zGW!U0yi!~>b0_%_@;j9{Sj13ksRED-ANmvrLq>v#^Pcn66CS(x1xyfQZ3I5L@TA-| zc4(^KZqSLUnD9vykTF@ax-?k-aB$Az74g^yXd0HX66xj?x3j~OZ$|f=tN_bVQO!Ed z1zF9<~V8x2PX-2~bb1()7>Inx}3 z^oJ^e#84iz1_(2+oP zvG?KP@&BS?@e@?Ov@&EaMZbamUQOIK?wWTH{jB})yMK)GfqXf7Z$3!z_O3Kf<0yb{ zc>;Btn}Tfh(8D;+J(2ACkiYZ5gI0=C9SEcgiDI`8KNeBD6b{fXbvB~IEmzK}A}ok! zYWphz=jUh3`YSFBu62HhV+u13TU8#!aapanxM}bmPUSv4Mz_^)5HA{ zEsnh#o>#_l3!43Q7EN2p(_ad+fa%I4_lxe%I!T;c+2eU|vd`3k$HG14l{l5}yC(Go z3vB=DFFj`#%lv~0Gxy-`q1N3UL;dmX(yE8NqRb$t9J(|GMb{AhqNhZ7(uAbbHrNx1Jh~nibvEYb$hqp{3dI zztADwk7m6^MtSRGu|TB2oo>Q1x#2=prv6a;+&zZiNm$^6c3_QH|fdg{X4$hU}1*m3&UlF4rgXvG+G`$h8%p55uR@ zc{+KyX6J}oly#lVV~~DMZd7{J(8V-^E%e+^v5mmnC42V9DBZsNA~vw+y>A2?Oc6HS zRCa25jEzcm^`>`E)z0*i#>qAB1WD7MCYGbGs9HXgvK|PL3$D?TM6~Abt@I(0`hceb zncL$R@f+>CjKN&Pj2Q@oRiPYm>GE^y{7D3Od2q6* ztay6K`#Mkz(%+b47*GEYeOVTL#%G-}nvS%%xXc9`7tX11d%tj7Ka;HU(-6|Mj0q6g zI5kZAXv^7Ug7W-7cj_nSTUMoeHU#VG=@p4zzE!nWYf4~0&Fr!Z&BI(aDHfEAYIl1@E95w>Ke3O>*UQ6UHCc*o& zxs`^IUuM6ijHY)PIBUM@SByOD-#9R(BL#Wwyk+$D(GVANpbU4*;rK3M{Qt& zsZXA98PH}O?zJ(J73?4xezmlF-fJ=>wy?fkjs6e%7sK((bV*H&VShbfEW@RwJI}K_IdTtzB<)@M#h;HZ}@uwHYoYM{>l2zXH7q=A+ zOLnnR5vcWIT2>#kYC!N2nbE>iNnO9gwwMGnF1;1|g9{qj0Y{p=jA>wyit-4-FXNk8 z1(`v$gLu%%zXRz@k-`HrQtuEBz%YFg*3ezguq*m@!ZuR zX}`?Pimx=x%+RFkbIzAoM!0R?8_N#}%8MdHo^$K%hYlWM z?Gd>BU$~(OInu&jA14oqHNnR>J}Kre+?+~@qXD`ytr&n#a%$Y_{ZS6GeV?ui2d42(FE)zsA|J$ ziI5X#v>5hPRP7%>(Lgzai7vGu(doRwaDZekXqtKyGUn!to%m)j;E~L&#o{+m4$|SW zHAZ{&I9oIwZ$Qe#e$XIpF|YDkZ<+_;gcbXLaJ+hj%2(}V;Ef^pV_AGb2xkkBzHK-481urKCM994YDoE*8!e7(zygFIRT|!=ToF>bpkk)qR6g3frQ%trQ4ee}uGp44 zsAAY&qW1zPm=%eXP9SQqwVCDB?YstLGnB_)P}7Dz>w7xdYrmfmtvJ?oCX?a0{vyV< z4qd`M&H)>bXnt-v>GH#~lR~#3qJ?4Fqt}4w=cFUwex>aw zICm>1{=%3Qgul{6xJ!e>c1gazO&K?h z*Iu3uS4Hw@zDq(aJ}Z)i1TTkdJoQgWN#=Ykw>bw!_DgJ)(hU ziJsm!=wk*^ndVOr{L_<99SM-^%B@-4e8fn_`SuGKOR7a17j$FlJ2NqaMpH519(&B~ zrECC`>Gx_a&SA)*`?}pc3TnSKd~Day*-o)?3&~8(wG}ey^^Z$So3@v$dn)Ssn^+EG z>G7MxND|FN$^m5!@_wi#m~}gsbzm(Y1U~T~W-JZA*gBS7%zSC(_dKlaF8BGAemt37 zU|I2ajpZEn+Mo2z@K+#a-FC30Ic$gzG}#LbmT`)%k12evl298Zg_4*P)tXjOk=(#e z86Vd3jAcBTctMl)y6(4c1&1!k$e`^;I{!~aKRhYL8D4Ia-pfD2t}(wm>tU&b>90z& zZ{G;VPrRV8C;Hh&m4-Eg{*(f(_Zg{WLM&GFQNiZJZM{DBax#ajA)~JKjMF=X3F$iC z+*y(E99H#fK+}dl4uQNfbNPTbeT(;V&V4bT1nlSP2nbVEqO_-7gUjKjRMyB}(SD?S zlwJ0w-`{7PYqgt5n!3@t zsdMyRxR){akFX7&ch&*?goRSxTve0au@3#JNSE(u?W;oK3lr2-zHQ0qTBa|)AgQ^* zoRWYuD>kYzfA@j=B??sG081~f5YG0lH>z64l1JjV8Tc94#+xWgWQlFB!ntEgMH zrMp&wx^bG8!{Z+5(FvvU5+wu9L8BlR?iy72Ubo=JLFkag+(b&t)#h<0iA#mgHR)k> z0@faB4FzN(>wFS55>8t$p>wq$T%uQ}JZYiVq_X+!!W%a!;d3|)cC*}H=M%H40)M&} zFIM%H_SOYZTB-AKcjSUuX|^JAab{^bCv%(jR@9u$w%loqp8?aRTv@s$Q`^`P8@ZnT zDdOw*T)%KYz$5wRv}eN|lQte=fDX${46J&jY3^S9pXz!LM?s_ux?zeyT4dG-cxL{v zEtNiHliu&ms%%*uKLzzZ)kKDi%S(u6iU>LUWsyU|4>YH}lPL^4y?i+}5_JQ!1F+f2 zEN{uTtB`?oGU?kJ+qSJ1S5eX6)h#C3}1Rwp&~Bv+?eK4EjD^dYgyilX;f2OnjR7;LJ2^<_XBMWDMSRepg}X z**ev#uVgmVD*=vYT@cHvQ0rRTT{sIa|DGHkCdc^{8Y zt?#~|ZL7G85@Xh|QAJLwzRO%Q37^u0{}iWuJI9}}V4Won|mumaSN4y4~IZj-bYD&JMQQjxxyA)s|8A(`)z}F`wr0ynI|D}g0 zeLVEw9hJgv{WM<&Q(3yLgw)MP7YiANO>dxz*RItHQ0;Oy$>kbLh3&lo+Sp9jZz=@B zkm+Dj{y~9s!VAgUoCAu-PP-~;5sIHZv_aF=&*nW}UdkYW#2(Ltk=l)>BNo%?`xu^W z+YYGU=maDOKGM5}HTf?4)Q{G#72DFkerbB=4?dSV_41`}U6veHx;xYh>(ZEn!47bV ze|{Wze|6@F0lY@rgAq(yt@#r?ywJ`SCz-d(c_5simSp}0PaS3b$!0aa}8afULw zk41Mm>4;*QxqgS~lC3sSV-$v(NP?}X%3P&K(5oEWTk2X79y4wuvX{4g)Gc5L{s8x% z;7)aU+uq$Ao0#mDFhd5f*TfemeQ>@Vf1yB_2LBlh8}1(?;Eh95CUsZ`_T2efCv1^O z9;A1y+;!1RhQ#D9(3iA(#@e|BFtKvt)56yd(Q^-PA-B# zV{O{^2T~YkQ~A=BwWc|3ZP1|6uN@5@5 zML{UdP)<%z00b$t_!1!Cblg@Hh@1S}_(_!@{-i%P4myj<_apBGl>jSa+u0#B2!=j< zBt%ENvNFjMSwW32T`d{vSGtfYhaUM!x1ih}RC)P~-OS>;(g2w5(#rt)lV@>3JQJw0 z!~i7F?n{>QKU}U+&TT5+Pqg%KEE^arPnW@w0nJ9yKEG5PIX)*m=qpW=n#OpYw61&{ z4#}*qQ&+6Ao5HFNMLf>oRBZj3l5|Dmx=Ni9@$2=8ZYYOmjKR*r)aTg%dye@A?H9T5AefMRD6rd`o@<#kBGH@#PPM*wk) ze!p(#9^pjoTlMBoV8Q793XXtMQL2BE?wnKk!gS-7a^iZ~D12LH>}i%V2wP?2m#o0d ze!$p?hQo>9{$A(ZvmN@#Nc_{Vxh%JsKo6D73#S)9e9j6}GyuK_l$=}nbG@ePM$1V? z5TNgek&L0(wG6&QyMR z;b8l`j!?Xko8ZsDWJKldJM2B>s~cN^muJTakcc@gc84d)3f$+6!5#JzA^nsqT-IP8 z^s_~_JC=zK&H;iy2M8=E2Qrl>_N{&8rePp=ywhK$p%=ntswfbXvg$yOJXk_AwG7*R@48sqA zXN%L(^acKaLj}dcx4Dc9T%Dd(*UC{J(ZB0|u5&6Vo&dFGqN>@#%#PhbK(x@M`=@)F z&Ej)xF{w4jQKk^YKeg(8U0?b;QHyRNTSoQ3tRZ(?t>}}epvH9Sj}DDcpzn(Bo-f~& zf+;FYukSPNakX<`Vd6}FaE$0$z{F3$IjB_nDlygVf;ES zq<>(X7aCOO`utOu7y6a{37AmKO>66Z`DU=WX$_N2P`gc`>9JV zQ~7%H&+UBezN4LD_b(~3MS(p99M3`eOnA&( zO@v#1g|CBZf<3y8wdkxC4gO;F9p4t#lws7c=JE|EL9dGhl0M}M6Bgyx8B=R|guZ1x zdgG5wJW_54JTM@Bfjw*@g-*e(1*$W9b+_1h&RY&`)SWM}9uqsOpr$3CF4UvgknP6= zt=)pNO=p+> z;GRTkhHj9I%2f_VtGHqULDyJ4Ac@I0!cGll_?ce-D%ev=BNe&#+Lv8%1kbJURKcrz z<>7M!XEY6D^??Go3gS_rqF@fTQl$eHyZFPRXAd3F?T!C7*DSZbp%$6gxmWQ9Oq6q< zny`QLnZj8^wV?83#SH91v%hSEl!|(I#s6DDk_9EI0+R;!sK*$`!xXXIlXr*QLfTgE zGe9hFFh&>$bQ?FAIkp1Ref4&Y5~4=_g|Vsntn9_5mJwt7Gt9b8X;0@F)p97e_!TdD z6l4WT%@8E!UVfN7`$Ie=YJ+ri+ID46CT{(%i6rhD;&Wrimii-fBVIw7OS|HE>OG`> zI)F7OeyP@y{Ed~Ahn-qI+ zhoKLT(uJ%lmo@Z)BZiMCn!lCHVO~J8Txtol(-8Ih5ARoJoAln0Lo!F{SitgN_ zb>9LD^CjVkoS;U+W$l1Qn#R)+|0u?nN>u`9vYP)-moWTv3Ra5&u0_(Z3`5y)vYe;! z9d_|gpwJ^FI(zFYws#!9z6xLKB}6mzkRW{3|DE!1TkCMm5bIAqpGjm9@Te$R&z|#> zDMVmPXbcZ!FD+M6n4pN%oNQx-^-y{1#kz#`7aV?*p+k(nD5{EGSatOKRPt-ni!8^K zpvFFqL*@YE;&@!?W*EH~Vh2bM4d<;sM@^1CU+QWG@(s#~l!PbO5G@ju!R^buBIAo_ z4k0Sg)!9-=(VR%S<~quk0HBVhy{i&9c=;~qudoA6gv^}np?L;kY$w6JooPzz1$7oU zVRhAG^;{)P(SO>Am|7Oc47GF{v1fyOB7Os8L)sOM`S`$>lhG5ml(h3dyj#Q6Q4}yP zy!e4-(XYRD%WCmt0s3)Ttn5*f>uYdTkhc*~YKp1givWy^xOwi1b`6BBKgIF6=2G6w zsYA*Au6-Uzs(!wFH9cI+`x2}UtOl)q?1^&sIFu!K$K^+r^#{dwcTL>V6Fgwuc|&sP zQr)V6Yqb^qvXgDPFoeb?!q7|XW1XFSBHVV*G zWg;oz$>vBwN@rwZ7T}T-yVFXI;5v#G?(99y?7IVm=;#tZd8noM|K5)U@B|pR)_4#^ zpRAtb=knRQst(#aSb~8zz(KJLL+1rU>oxRBu^+(Xr%@m4&R4{3 z0pvuaXlz>9V!CRG**Mlcci`dJWnM1Jwtavh_id`<#?^rVzbz)2)F70FFXYtqQ9}Zk?RyAM{YwFNa+JzAqRQV8NN?a+sWbWftgi|z;!Tzeh({CQ7Qs4 zl^O~&1(8YkC;{U2#P(Z)auUdoK^XEDU`tD*8~Z_Dhw2$B0;AZh0u*~qUmyzX1`nr< z{GqkwZn;QO%y6YliQy+T5hBoPJUt)Yy=m`0`>E!SJ0BH3xq9UFz=)eVUY0--yA!^? zhEFTwUiCm^eiG$9lkt3c4K@TIit^e^i>+i%VJPAr=>5ep`te#p@bsj^cWheH)X~&K z)B&lsy(&k8FTt(LY^)w~gGkh}5x7dZIk!$)=vQlhlo_~`sk7tjgLCH#MsGw_-0KyRGZYtH?YsC7(# zg;jN}%6!b+MAG2UTmx9^Xv5YZZvFm0nRP8Dp4`sxfLTGH3*|Ovmy5HAghzg0O|%7p zXb>i+W8K#>D-mko*_+8ge74T;gH?>38)`Q!(C@dTi2LgTwqH!};Bs1xDG&K$8>_3> z*4NYtp)kpE(J6>sLexCs5uEpPP zHIS41H(z_-rE-5qS7v7nL-&P_iW%qE-t&fdO;cTJDJYs8IyA2;E+q_0_1N*-o4$8y$PY#n@P}7p zNc;){&vheF0T8T=nV`OfNGD`AUdfaZ*FIkW@8{Dt*j*e*3 zdoy8k4r92>{s>y_>Td@T3xrP$W&G9ka+B8GPO;$2=AYHIIvgzS@34BzL$Oa6sR)07 z+dAZeX6DXQ(xqO|d;z&KaJC=hVo?)9=z23^z3<3H(YMi#PE8*zTv05WYmFq{IhZ0> zf1}Yw2>+&Ja}hu}!iOXd>ltEWZ;f}+Wgww=_;4f5j+?>wLjvHc;IGZtdDU5ZPJd;m zu<9^g3j>AglOPs_@CPA`zeEKO9MC##dVWN?K}3UvrKruQ*=4Ee_Ur8ZESwhxk7?4Z z^YyMlc<=wi)kbRy4bdlmt!{C9qjv0C+QoOcj<~nLvFE%fk$x-OkLMnA@jfd|17&p> z!N)r~MetXox^C(}_(gd^0X-{9de`6pD1X@ZL{T%Zp3VmFRb;z9GU!CoMHuFCY24Pw z4t9?U`njk6%VtUut9GQN_Ht(H7|Cl7LE_`QYrnArgJOqyneZuU8WZ}yX5q_^;Hv!JpeDP1Ud1cv2@Su|LUyk&dJLYR zLMAI5!*Xv@(R(QTvGCmY z(Jp@Z3MxzB_Y&-{mdr_i%o7mKbuK)pyayqhl9y_AknpS5Ks$SUV8W-Xq7T@si&ZDF zmq;t1XgU}=bbVUCrRFKUyDJ+;tE;dj64}erJ@*N8mctDMjR!~^F(pR?t-`BV0ON(Y9p{wmh zPiWUy*CW7!>44u5CfR+F{iC$Jz3~dskXjC2)Vyi$yKF zd#~@Bc})*J*p^BBwoqCoy>jq@UQC-GrXQi zs+&{VKQORXio=MOpY>E45aPU?9=_%oRwa@-#~?(^WbrR zAp@Y0_kso0?lZ<2sPKsyFbhcr3-mW$_HG%(bH+JwntxZ zTXI5pRgg{&_ddIZhjCrH>5}?^ku5uGi#l+(lz@KcQEW|yTl71^>$>q>-g{eJU#j>a zv%h^RAknh2*5oEqiv4zZRfC13FX64 zi~GU*ve9=`7qqnksR;YYV)CC#LC73?%@YHkGWiv}U;S}*=q}|XOGO3In`=!0$JVv< zi^=1|Afs(hPF${5gCpACmLU(h5ZJ6`;FAAhF5SqHVR<^UM+OQV(RMIyGky*Bg=xRC7$&)-=DJAS4rJx%1QKX&3g9-BxEfWjO+TRTO3Hud zGxS626mYmYCX(pdQ$5)XTKz?q33#QFdJR6HMZ%P`>H`9eGrV}u?tA=~u(T^-;_HFR zO%lJT9a<^k4p|^QQL*-+_V8Cg??!^*|9qW`Q)Hp##bW%(hN5c@ANT+wG|MMZZ1@qN zXXkFvN6oEgoszbItiI?}KI1fK%*(fL1#@TrsgqVRt!%qB-myjS&k|n7ixTE*z;`DQ zZPOinF|*^xWKI%(k&&rJiT;`jRcevniY!aW_^#c*l|BR&8hip}d1@FUVz~9rpRt-> zsxyQLjuc~cBTt_{+IBF-$iLoa5ud<^%@C(WQNxEK>0}tDRy?$f=?*c^{{MObeq+Ce zx8Ybz3Ae&^Ue_$9_bX0zYVp(@z@Q09O4g2jiq{M|csYo6KW9);CB=XHL892;1EiR| zf8hWwV37uzat6rn*`j;V>emQy7e4D=5?t29TB;XwS0Mf8MeyAyKEr3^Adz0g3Tgdj zE;Q>Y2YSVjXXt9z4OD^L&(69Rcy7<4`yP?wKu;lja!Ao@c95JP7n*$kJRMDP&=}h5 zZIfhS7H9onC~*v1dgyOyA$5rgZ|qH276oq@ekx7fzajZ5tYndNz3!$epIFN8X;7CM z=_UVq+{*=V3=V_L1i&&#N07&xe%%zlQ5|ZcKlD+_f{oauWgbiT2-ZCW4B_^<}12Rfi zy59x_5($^6SSQ*OYS{OqRIE=OX?L(=T|0J}3VFQN>0}$LV%+!ck_<$fkMhg2JQMj ziwrD1&M(1NcgV?BkPh2_F+T0Ceo?=baY*9+GBF(dVuZUO?1W;2frZJx^NU_IR=>uY zp>SG6s~@JMU+6DK6e&MysHs;@ChzGQc*uy?Vq^UJg)w+O9X?32w{?~9Pu~n(Ur&f z_FZ<*SVyZ|KYf2Tl(Eiq zO9v{lD_8DajM<5yCvIwI2W7w@9T138oAiRd>xBL{IzR6>me1!EyRDp0UU3j;8A@v4 zdAuiAkjVe3VJ=tr5f!1%uvyWK2G8YF9Zc!MS9`q;+BuTuyln| zo1A$K>zM0c13Pz9A+>zJ1ZT8)c;GE?$38hAV}p22tP2L8Uv&M3uXI{$RASvD|C)0F zy&K{CA^*c0)xd9j)efVf;q+U_QRL7@i)V0bA1k?sc_}>+e(1G5K~L_1L0q~tu2TQ| zJpnfrau5Di?vCXhYm{GEq2>%ec$Ue=+}%O5E^{xUiym6f0Q?Hd3mjF=u$ie6>uiCn z->sV4qnBuEzy;nGb&LwilM-GO*-fNPew zd3M~uTH&-<)sGVSiiVcmzgyM-a#@;MAK^?SjkJui5d%7i)x*OTYGqaeU?(6*{KZV? z1+ILG(|TCsSvjYyCe!wU(kG}+Gks6niA$m6PPZ#?FqGQ9T3^t4G-qOe;-A=~2t0QT z1(P*n6InIoh~h@4JF70eeFVZvt)RRm`_g(YN9Opz*H<)(JUP6G;5SHsFO5|F&J4Il zb&y6?I+~d2i3Q3lsN4FT5HtyH7{3ox8z|SS^_VPun*iDRjf*7E{CjHrkt%gsjZ)Ue z^85&>$KC)v7Y$p6m~)$}!ySCEaUJQVr2dj?m!Nd&)Gj15ClRUxU*OkXdh25%X*m#G z;$ay+Kls@nd>Ax0_@&n70UF7yH&E2wbu|lgs?;Zoq?B&e{T;VRYVjeAxaFU+jfP^A zjOC6+7*~y?MWBb*KEBN2)bc=$lZ?IGm5uxq%q#lKt<#=tgml037poTjap<(IM~ zt!_HL+e~7CFtvc6MO-OlK)wYQx6+jQNA#=ASjuSUpaUwy-zXo3j#mO3Wp*qpyAEUm zjW!<`t1Ng#H-D-mrX?YYyJTD#p^u>P0wU3o5kk|=WX3DI(~7amiMt1XKx6wtd*a!3 zpuywe4;st;xi{*zR0ZXTYt^^p2dN+#JwRqg12b)GDA~Ja_v-)A^yTqTegFSgWD*T& zp%_cHB3qJuR}4voi0qZ@>)5v}p#@DCvWM*ZzV9KsvV^fOBMjNbHvG=KKi}Vf9uITx zJ@=f~dA^>n=j(M|*IdgAczEWR;1f{Sjrn6%HX7<;1wuJY(eIj=)<`4J9;Uy4rjJY} z&v*`LLu%6zi2+u$dCR3+aM-n5rf^VMjO90FED+-loU`2qMwi%U7B}VR?)NDjdY&=i zIdU23_Tg(*kQG{jLy4Ou_kdUfc~fDx!j8Qo(pV#`MwdpcY8R@pQcGK>wNrn55@wVC zi7BckXAzSKJCB_TZ|(Sy$Z2cp2RL*ha*+ECj z*3hyOHCOfb9^mj8+cr1n74c$!+!5HVHJPjn3u4s~;z|})nqFTSM@>o7 z1P{)1(XcZIkZi`7S( zZxgIrd}Ds{rKk^O(hV(-1nZq&9W3PZDFKmPMhy)hpmwI;_RKCoW7EL@AqElMlRv5# zG2gDCscRO*M|42Rv-H5{O8Xe=4C zYJnHi{gd;436#<^Ay2dFn>iCQ*A>=@E3|->1AFHN0Qb(pw+t-kgOT_j9v+3O_xBH~ zNwQhy?Ax_?R}#Wu?$og+CleV@PNeHDdj5GRZzkpjiAPn!x;y2o;*zq~W0vp5#K-p{ zMyckA&-EEhaLVfhJ^Y4S(iXPbbw5eNwvBk`A@2A3hH*R9-Y zI>o}cpUZ-kon`@?gE;u_oPinc!4T`n{WaVRsoSQ$&TZH~l#Ycbv>}<8B!SqE)u1MA z>?QRQC@uiAEVv?gu}^E)+l7dBkj(;ba&cepN-xlvpD8wMmqb-hE*g(#1mZKi1lC8w zsy-Krb%l*zpo5?l(+i$v;y3uIE6>lb)+SkhoB}~XXq&z1ud4AHIu3$We^>jTVL$aVge;Ihrgl<({GtONT|c|qA$ zRZzq`RJ*(1(b~NJpHDmhBI)%#9+~+#dE!>Iy)((8Zn42D%_n2XHcl?ksF zu{#UdZ*NTnhYJ5lVwPN7sbQe)tLXChRTZ1~?EW^s+~>^HdEC6+>Pjy=gTB2vp4Iiw zE-f_k`hq7=q#8Qx){yK`92OGx*BNS^>z!yL)nGmw9|~HrlNl8sWJL?eAhTtz6pkA} zZTsEO;rYi4HUU~|@K{(ySSK-#zO}zNU_9&C<74%L9BRY&{11IQ4H?aov({rpe&88W zrR~cZ9sPO%dg6f-15Frws79SMe-sj18OS}wCw{fZ56d#O$;{jK5J7-L9ex5qr+OtX zGeLM)o_d^y;ujxNTX%dK+LgLhI4Zj(cF862zaxd#TM!9?o!8`tIr{d95?=I0_EC*n9N&kv!R!o9`Uh z3=qh@0yP6T_HqK1U#J7VH$VMJ< zb%6UuI(gGQa1SYv@QKX%wB0RJUzoO=;%azs;Y)zLy=?Fgvs~H+|KZw5vs|D;G3M9SrQ>#wip7HH98DD>;Djh zA@T%8p=9+#mG!dtkXP;!UQs)>>8GIZZyN*&?SH!E%a;1Kl>u5@{4wFXopF&+QhBFl zcsFz=dOS@}IxYwCj~o(T$tsby6tg*A>MI{djIE%}-_UMV!zCzrtO(`2w%y`-r0dme z|8x;aQ<1n?1ILMNxp5!f*ZTm2u8haM;${AK0~F2d@V;xHi?J3q=Mq?xkpgf;`CF=zG{$vk$pcNo|Y3n*6vO zz(Xm|nI)gV+J6<(lOqb#hk_5XFiZ&!EX(Gsh1j$&4)EI$B%pnNTi~O%KzsO_u-E0< zA`V|*==8-#5iIqa4x>lu!y|-xTQY2Ss7bP>t29gXy>gIc{rK->vFS(n+Nq|k5TVXj zNQbYSseuS8DSxcBz+nJbITrxJvBdOyZX~IX`-UG?08mse!v8B@-l}}C86_a;-{awN z`qQb6_~(h`R1A92tbTSv+-5&!k-!USAl6pV%JQQzUKrbsy!Mlj;)=D^U;q)AoHuq0 z8G*>^#n4->L)cP`%leubcqa1@6_-;Jm+To(eXtC)l)3CYliCEHjZlX$$l5 z7rPi?j<2Ux3ia@X_*0^KU?}g-B4Nf{eJJd*8YF+R~u@%8GlL6R3^+v`SWk z-a!oy2!6hI3PgLCH^;|f6`!iSgtQ5>YU|JQlIjZIe7_G58t0cA|7pNvhIl~Ll#(}k^TCpBsdyNeKj~_{Zy9ZN zoFMfGj$UaW$;Uge(AF$MHFOh$)|Wsr+8*|3sp6s=?Yp|_Fw}ax^^}z7*cr%BqEx_y zA$#qkhET*+>uxfabtUD@`=BxsH@=P7PL8O;v_?BcvD<^QHT{;muX*MCk{}4y(pQa{ z4czXYZ+^4}9lC=4g|;4_fWW0_DNA?q`b;Do)R&6Q?mkW~RB{<4gAzewH$xKqsU-N) z&q`m7Uyk|3uhNH(efa(bO&T8aBe_xVL<&ba|JM0H>XPBN4{)|i{T;10TrCWnWO1=7 zmKl3JleyY4>QD!${xi<`RxH2)+W;qrz_bMll09;8uF}9u;R5Z)uevG|+!wAJxtw(r!wWxck@rxjjvTGx|Z^D~SXD{;(FoApVva{oy*!C1eO>2D=0=7QJEVUdx$1^C3Dd0qmxYwtB-L?Kef+$E>3VUUbXonrfq&<`-B z8(xg4{t_>N1B1X56GQ)<@(;e&h8=G~T8i91&Zr}fYH84&4xI1W8v2vv^$zQ7nf4sd zpVF~Ixs2jJ3_E@V;&OG8KJ%>~4$i?c+=w-(joIO-Ehgs%81xdaj9pA)u3a`R-G41F zCvx*8=mT z{vayUV%a{!p62~G{km}lr3)>%wX_IG)1EWp0qHWPmSRiLkmGYIU}b8gsp>8|z5qFi z$vH{b7F=7jEq z{E|dO#iGj+h>yHbL#+avemiQU8Xiz#=FGEFkK%`kgMOkd5AHz;-Mg^^ z*?P`Xp!?6ZPa)`>H~_}a(0>n}&t({#au|=)!5-es2GYZ!{>ZsY^;!o#PYs#W^-rdM zOuN&qGXBvXG6v;~IFPhqdawgEMQlbT4(^>u=OjLg-99;&V$O$LRHr3^kX8pLomuo` zJUd;k<-zyz^j;XfIWptU^a6@Wm#n^j-ZFd^6!Co9yBU}bwxK_E(N%WsG0Sh)ZV;qF zsw452NCzgahxhF`{2UPg0s()&ug?KfAJ_1dt7F6;()4(nrO87$Lkw+PH{6(d{RBEq zuCML-G_N`?e$r#|*x*3s?fB6d=zL6I?~o*^ww+vjsAVwu0@T^n zCh6a4L+{L8LawThJAY_{fW6zbAG|Ie>Y%#$;=Z2%CGhZbWzVDc{5Y4OJ0iMb$MjS= zKlg&J5=?s+j|w_fD1VU2%e|?^gBP{9A?1G?jHu37nhS@Q4Qgfb*&rXiIzk3DU8)NI z(qMqxP&R`@@eB>gA6uK`CpmE_tt!1z*9hl>f^Us^KV4rVC?M&%U=+mIvj^Wk8z$i& zvM`dNE!O^G=o5+=H{Hmkksqk~T>N2A{=E2*1o=F~c3o=~da$WvW{04Gl&xMPAWtzz zEd@fJ-FxQ)7H|ZwtcD!4+^e9G)aZ^*7X$CGSvFw$FxN|8bwFjo=Z0kMAX(cRGelGP z8zt|_=yYAvkOR`}&YaE1ulz%&)SfCaz?pSN9GSzgILK^1BcKnva%9W1q&}|)N*d!p zr`8Azg-mo{@1&$ZhYaS_j}o$s(}(#7M#hrMYra8gQY+0pxD01!_+iStDwB_gZfp%n zLTih;sy$>2ws!_bcV)NFBk(CqvE77m(Xh9U(2d8@>)9xp2X$q;_O+2a*4WFLq^TFX zHuvFO?~_vYhIqRZg_U%hhT0 zn6)iWaHRqGAEV9~XYJ58TN^NU=7Xl}Utm97k*mp2;CGemmoh_y$xF+<15oBf^d zFcjF;=GUyZvcU4a&0Hye+2Fne z^;PjZ3SdBCR31NqQQ){emFJ74Ejgh_XaP$UY#>ejz}9wS;&HS)J?UI$+)$?oS|xzx zvrwn$YlI4IQkcRc$P=uq;x$d%Mm}wYLunK2doU_A!`4UVRq@Tc^gEruH5{|=QcBbn z{BIvLDmtBvNQR%=9mMEIf^2ed4_zXD z`{j{0wE_cr_Uh<4=vt=dS(F7}MCpdV?d&49I-TK1YE_wNG{)*2WWtJ>lYAbPmC|8f zaQ8dEEJN-nM4|KNQ43p@+)Nh9axY#qzv@= z@=r~YLtCXKa5grDh|5$pm)6&l=Qc-%jQiMUWWkso@ z^7QHZQc@5!cz$@BFyctFkYo2g8b#M}LxEuZ-9;ZeUBZgkTz(`4%Fvx4h?CtV-$=hh zI3)uG`LHRt@fJUG3nSt{=kd;YwX#z3|B&goBqgk`oq87so)n{(Tgz$a#EJ+t(5c|j z`6IyPb8&qQf~x2wr=I#{%ND~^XgP5wz2I0MZ1BsnTJ1We17BHbKNpdUN9!>eB!91~ znlthH<24QiH-YA71PnVBL>HE0qse8MJ7EcjpoDX}Lr$uF83m>GuMus<0LUgae3h}6 z)j{<|EACfEBpoEA9lf5;I{~sPp@~c2(e&tT!4b!gJ;WJHL8_XgXTcYHxUhP#!L+kV z^N^HjX-j$f=twaj=ERp@6V!*cH~aB17z%`@YSAz;u7)!aBhnPwLMQI}l^mMU#wqs- zOHA))zsF}w0hDJ)X}wTCe2GwrFjCdmgOM$;(Y%$?6{85h0s?sP%aV^7MjRQvfbCQ& z8tXMz3VnJ*dm7{N3PEwG1zeaVF{$D88)l)re0GP8d~+aAg-~@JJauV8VomB!bzU7s zq{}TXPj_9ovU9hWGe18NcTs8HpG=4X4n@)lj@~E?+5g75+_fK1A)|oO%8MHDaS2Ox zlrLmF1A|mQesDI6Wg6x~Z1oLf8ug3QcX@mTQ!Ot4CKb7k-&+;3yxtTJcEYn)wdkEe z$*T~^;tc52&~GTCBu{I3;)9|y4w6DvCTE zk^e$*F{0*HAD2&gc$$SV<8_$yZ5vs=uwhH^v%m#u4|V;?ZDB3_+)+-;=h5qJlIPgC zQ>_}FCq9^9f}k)qiT*$gMdI5BDr!5sbfeGze=UIQp$HQ5&=n?WiW*nTdqfT`SO9kp zhqFvQbV{NXq>}V}EY|*Xh-Y5t@W)HHmxa6&RJq`gP+YtoAb`W{a$yV7f;3^>4*{?u zfuG;`*oE(Wmi5*6!y^s|LMu5XvA%0tT+v>^s#ugrl{}4JN9t6JezOAG9Ie_{x?rKo ze5v;63(m(SJAO^J9DasTU#G$u=@&+811?u~N)i;Ks^O%3yL)r+2=`R%Za79lb?DhJ zkWGQjm@slKdu&Igq*;Vbk#3Jx9%cqh#H~rZz`4BdmX&_PI8)MWQ7JtscjEISG@Jld z;i)JLnnAL>%aEmQHQWGrh#XDg#Q_%dG-}glhXEbC2CoDt!ezs=ujTz1INJBqO1hJ@ zEg&zj-_x&;z3g||A$e{rH-4^$cY^lscZJLaTb+uWc(d1tb43wCYYwReOyJ`P>5JxB z>4L-S50ZhOYW^OOH2#x+EgP^ZBrtNC8UEGLnfAmSi7p9{P4MJiDNiTdkm!if2*8^% z90E>BlYp!#hMPggszVoRAB#3VBPd(|o38E!vf+D`W*)h!VO4~z)>p(8W4*?Aj88=6 z#y+L%0!IcxJ6&1<;TM53%ojjv4x%{`!l_oik>%;MD6NE|U6)a`#DSZfdkk(8oQ{l*EB z*(Oe^lE}gB7wvzRX3v(kH33{N`E_0e1<{vFTSH_GZ;ZKWcFXU(jGv;k(6&E4yf>B9b9-_Yt}w zGJReT__v%Aa8?8>d6mbGt3Es43`7h+B^klo^2L`%R$e89p&$urL8nL2O9SFzoCuY3 zI@{Jr!F+Saxzd^(K!4eQ4aRB(zqH}O>ArrlW@m?qu*zWTWUd(|9M0 zb4u#9bw&MNBO=Ik(Z0Z-KH~WydCjpMij4-;Ew9`Zjx(nIzoh1c-nn$C$*q0kozOxN zf{mC$=9*t;9^ADF>Ffp509uUY+u#4NPT?c!%j}hgx=WAJy8V0o)}uiYq&nI~np3-% z0ewQJvu)@->>$;PA@|k*h9q3AF>vv7&8^p4j-qpPoGVqjRc9ReSMnWive>wOO&%gG z*Jg@6HW;rziH!Z`oa4e%`z3uIrt>FB{ZMPjc~y^jjOMMu^$s%d5ebWO$4OOi{5HDA zrNe}{^!qv$TD<-T=LIdV zniU=h*m3sWskeYbMW5%c-Q^ZT_u;)(8g?5E0o(bIUb-1L{e`%npYlQM zd(K;mv+_w>FWt~PJ=(9NvVXc}+xc8)amy%3^a&;5ZPSnYu@dE&q8JZe^o~#7J->ha z3U0p}q>AAXf%*$p?sF!A8`l2HCZ<+eMcwOC#rT$A0O`yp0 z({QyuF-5fR&S+N?ZR;+c8<+cUPJFCQ5|S41R?3_lQbZ@EY*HreT53+@J&M0So(>7*RGoQl-ew1FcZb$WDyfqmPilQ8^{`GQ@Y7=@4VPDmo&TSmFJu~&Jc9(`v@85 zoM9}FD8=fkL$QI~DMQ2+m#}+o3>71VpVK)cb^i4Iu8(@@Gd?d{EO`O)PrneCV1M4N zta_vK)mg)bttbxWzx{dhjEu+{4uim%hR|lii0Y@hqR9p@^m*4ne3i4Hm&C7)c@w#Wh`-_FA-il03twmhz z6_>6KA5(g^kd~j6XqS(?Gyw+h6&xb|6nrhr3j|mccwJOty5#P@D7IQqf$;dgMb;Os zYip_))uA-NQnG6-#?@E#ZtUsw$cB29WrvC~GfRS4fpkaMrE#nbGe) z2QYS?e;s31d0_sO^!k9>e-w1-oi#1yS_b-vp&W6_9YN1iY{gGC`_|D4(Q!_72v$-) zaa@kN{aLLX_;YAECj@)5Vd2FMg+^->!EgVTf}4v!pb7rIL0G?ykFAX4NYDP95}8Z2 zy{uoHh9^0AWdIPheNAwtC59hS?oR0{VDQ%nEbQn7zTXDMX*mxZh~`J*zZIzpFFg!UXYhXZNU8G0`WTuTWN5bszaoG8es94cf~u4 znaz8;uuVTYWI<09h*luw(fpyG)kC$9OHMZ@#C2oiml9PC#?SK7Dl|}7b8Csj`54KN zhh%^&0H~u0sO{Gu3VE2j1T+9}vFj7D_OLG^O+W`yy$zc9AqOrd0vNr4?1;&a*^3w{ zR{pCtgv4H69(g=39eg7MFo~FQHvYnIg@>Oj5vQXCvTUnW$ zm6mAol-Ns(K@U>|K(KcV$wL;JT?bbM&(5;vB}7#PBfLq}AQb602D=SZVnkcW!ssniT2GCAw( zsfi_ciph)ABcWw{jhksxi7t@PKIXH2W!TgUXt>TD<15@HV>?TW*XCULlafJvB8K** zZoNDUWS}zhGfkfrL$IuXs6SWtT$Gl;WTnXM_n(3b*W|(#9)cjX=#It^!-#?&>B{65 zmyt=ifjaY)ixBfomoY=$X?SgUji?m>zVNGkgzAL#4d=%J_*ajaLlS9T#-=y+-a=-A z3oHLlMfK;C1LaF?%(FCV2Skv3@rdPH^;uvIO>oUGj*2O;-S)Cnp4=7aopQ&U<{ltE zys;ZIw)xhJUw?dK`#F}aD#MYvczes^EF>;pbyBI_Fd_8xVP8g_TqA~-$jXUx;OgKs z#9pu9{IUax0Vk1*Qg*65X6L)z`_d4~&>1O<({S{$5hdv0{K`vU<-=C}iED;{1YzfS zWiANu-aP|1q2cQUr3#ts!TKtmU_}C12ID#md&NmMm&_#Z!xh0TK z-puBnO#?}d)tu~2NnTZAFtt{H-&MVk$u?QJYaZ{;lAEILi$Ciy)AjH>@(}d~=4P9l zAu}rVlJ>d!At2$FEv#)Iy&bk{k52DLY4zjyHA(`P7v z2y9DER~PAawCuAAzsA2VSM$Ve^mtN|uA_jov6%%Et~fQG{GY`NSI8#4zw z#TU(pU*lfs2ZSkeY!;Jm|_#dTvtG}L&yfwM(ZA8{2qo{tQh<(nk8-MLC^{V`X zDD!{@&$Ux;UIoII;74-JA7K4Y&)LVO>HZg4TBFD}HnI8X(|XAFkUx zSw0)rgynmIuU{ej-?sAM!XF&SXFo5p`kL-Xvu-j-B}jWh$G<*t zFW*{(vU#_!8zwFIg^X<`kL}jFs8#Le)&Um7Q<+Y*2oaoH{4}EN`)=Hn4Fsq_e%2va zuwz1q69d<;w(o2V^g3nN@f1!it9?FZX^sl%*Mb-?TLjw+JWc+65(P+2!Os!NkHRts zie{Mehky6QA1ItfpiA=88?`BFhn|1fN}&zg5Izf;@XY2F(OU$sec9%hur*uZQZQy= z?YOBr@J|CQH#L$kSJWo&aqZ}9I_A}1?=S`*n4v1I==HdoD^}Gm60!^L7mi^PSA;x4 zc*^XV6mrj4{%HmB@b!fWn;zq+D^>(Ey2+|Z@2U`MaVYXrk>dK(p$&jWGY`k02ci_$#p#}R5`ePg&)X6Opc9Uh@D3v(2=fK$(hoD*r|DBw-Utn$|n3_+s*w> z2ZZ8+c(dK#(`D*s4Y#(R1yUg7y6z$|HMA`{Iu+Xumv%R~k6#$ZUsoz@s0Gfv-!{aO z#_7NT28mUj?0vbGh$8%4obGybnvl&!im~W2KYrPZ0Z5-Y1-L$g;4MHl0@%Y95oq?q6RoUvJK-$p`pRD+~ zDB8&^_djWBAEf-#2Zm0v3`X+t3qODawtkoG(Kr!avyl0|uNkI!9(foxkP9Ne*cRRt-gPimn+U>ZbgGAzy%_ZpB4#XiyJ-D27i+3E}*q zenzAm4mH?ttr)#~Xv&;?UmeI}==A@==Snr|HhgkT@-j_VEjE+fIr%*49YIhJo&47L z=Z3uu;+Kz~L5xOXK!Zd0pI|_S!KesmM)8ehBdBpf-3|xZw!>>nM3evC&s2iO0LJTt z_{>QARd>`2=5)LFajHYkt{f}iFZES<(3<$F(ai$R`if6&h`x(sdiZUzOnn7R*0=d{ zz;hkG5NoI6x3u&4>pH`A#~-Kj3Q(}j*u>&OgFgDPJ1@@4Ot!w*xDuY2je<7$IagRg zmgiBqLR95v8wst&%-VSRNPcCmvR|W_i9FU8V-i(yx zT1f;6r{AyDr1IZ@X3#pXymIh$r$drgJL(qH2gk(1P%k&geur@4y2*XR&*D?l7)86P8G`|1g* zCha$t#_zF9O^@wpSAI*UgLk%cUS&X7^ z_gDkinM;7r?FoSulphDaM(CWKi}nCJ;xpfJWQsa-fKY%##{pQ?xY{S9L%x=Xb2iL} z;NyNzFHtrdeo$~QPYZyDQ4o=3)#jH?EBE+{`LHdogU5eL(#39X5#7vyLcJ5D;6N>W zu8+dmp6)g+F$~6oo26S@WH|)0y^v=2KBGp?*$5qUxz0TJdWE|Lb1~&*`9d&~952cS zQ8<^bkrM~a>devdkRymvG_Me!$G)KYc%x1xF;vt>$spGt73^RNafnLNe+tBJz_Qbq zf21zhyh1?Vilmo#SmRT?YL=1lQV+_@->v@?kJ2_oejQMI=jDDN(tP(7q>}q{59q$u zNLC=FQb}@NtvhcAjQ!)Xse{vZrGUfprL(H2zA8#PgCp!JN*#&m7m@A1#f2 zC?$W&%kKkG0*yPn2A?weBNcL=+!_;fa0y_6_ZofImYZ*2HKRlCTsnxGHFgq0KtcjJOI@bzi4>269Q0q{GeVQFe3S$ng^>VT;U&+<1T0`~$)sNcR`# zGzVJY@|uK~$bs3XRT$qJ#?$uZV|nIjU*Td`Tn=OtAfN^!uxf|-cJH@CPToBZ+AMqR z`U)X`rp~uBh5XIr+ zr$elNW!*MQ|DysuuKD*QS33=Xp-uwnn}Y_u4M(SpY80aj6MI3F7U8o(>v?PCtCeR( z-Qkvva?)qB|dYhQGQA9^cWqO8s{ta(mA%>wHbyT{jaKgQFqC zM+ykK;T>;aJ7a?&(1q53OaO8a>Q6-der5vPN6qvToCM=2h~h?=Rx)m6b^meOk!Vsbmw?ll|vp-s}KJ)k*r0|42JA>%EB6{gmy zz?meWm09bLrX&*wLsxKqLBGS=3+&_Y2XBSS6AjJe%n_wR*cEW_os_bzj{(W2m`((E zD*G=`Q~>jJ#o8qCnIK(Ue<;sD92>f?uWl}>5+(h>qDW!8JQv7r$! z-^m1DSR;5$+-LkD9h+(}$u&OtImN-=Bcov5cAECzDEg$#Di?$_AaN0v-fw<7{-`c$ zXWC(z&T{ikV6!))xpiO2bXNTx6P@URY}q#gn_LgD{Icx27M1u=%)U#`W^lU*g} zA}6|38~cjEf8DPXxO*l9M?DI_7xfYWacMITTJW9^PLI}s!T2{cJqzqyn*ywAr2gYl z0CQEJyAS^STZVms{Q7Zl$SVYc;RaidIbI*;;QwTNBI6&Br3!fuMRL8GL&3R|gC8O& z{$XxI=CZnth5QVNbgU}%r{q2nt);de4zWJ_vR|BBOdG56O^O`%XJqNhyC#`+ zHLT$_yKDT0nc2=N{u32mxl^y)}kVovypJ>myas%Xw0b zVsl4hENhMQrQYI%DeUZ%6^FfFF$QAJ*I@dia6#7GQw^;49d&<&U!OHZU*$OU>;PpY z{{QZy6YT3EZP5+dgnRL{-$G=55u$ChR!uh9#B^MY;N%@t>)=bH=Ozp6IEhz{dJMn> z6{P_O9R5Vc?+n%9{Ob|2rZz=K&Sj?lm+|SRhGOm7Lom=X{xiehcb$nM$^vRh_*9Sv zgzC<3D-?jH@8RuXAn}#(TjOH4h!d$C%j|%#__>3^M|er_o>c%#!-0Lrv1r6j!h1cV z7TGPvjVzfjFC}H9CsmF#8X7|Q>vYAG?SRAeommkQ1*CYB1d?woPL*ihPTYT}P} z;>_;cE7VF0-{!uz8`8Wd-=kmhfAPU}&(J64?x!rPhS|jvl4PC*ZUEE!NTk;1#68nu zr`?Tl9o~^p?GuyL=kZQm^Z|~Pk&O_AL7xDTFJU<}Ur4i=S~Enu>7h==uN)iQzph`s zm?U4#J{!sf3Gy3QJK=J;iOQ<#DbYiy6g~reDE4a}ytE^9ZD=BVku=yxjGXiA64M|K zU_%19Y3tiD^wAbu$IjR1M!8ofDFnc!ZVf9?sVUX|8{ag8i~N%dm60r*-wJ zwZ&srCQlSF#}__`*z)~wXlZSkV2k^ums7m|7jF`|KSEhiE`n7L9-_D1 zaFy1PsnbULKM8W(vo8MS&B~IqG+{QLvKp2>JP@hITdL0&lvOju5axCOL@#cgl(R&rLgxPeS^#tn zgV2cZTJx{&DLwbK2Pam$L~|YRnmU8mu3|!q=9-VdYKN)~2lr$JG(&R0 zD}k>S^);XiC4@)nbb7_UNsmtQw5$+Vz)-}STK+QJQy*yczhw_|kFfVE;sO;7pyY>c z7xrfas^*)2T$i%$!<+=ydEysAuJkRD$cE2Za&z}s5@vMMOw}5gApEPbJ6~#60@6rZ zy7!a8{%W=5TApH|Cxo3Ov(rSzzbA7#+P`UerNAV`Vs_x~VtWy$m3M$?{15F?xm81N zw@Cl54^w*o8_X6%<)eZ6b!ERkpC`$RI!^4cFk7n@sCv51VA)XS%MMpry_ZCh``n^K zJEz-Az^ALoXli=!As%SI@Q}*v{<3PROYmy-1CRZU z7WFHShblLAvui4k$9h3kjn1oDwkNB@B<{NzK-opTzQ%__DAy@Z8=eQdiY8P&p`&i) zhi9KZ>c6-1>k{H|6NrB1Bp`9@e-4n%-}&awy8+E(1}Iz52Vb7PxCCwjih@+1=~RHs zx!`blsa$1v$7d#FBiB>WX@~7R_1WOgPJkcGCZ-5^8mgK~FC4nRQsMb|w?EQ&L+_tp zBuc@wm0@}v6%jy*14SuwUwa2*{*TQMR66u~7vS%gc8ut%C;$B}UR;2`(4-!K&tDzY zj?J7e=6h|5@b?J7qj)6wGyj1g^2N&3D+7SOfyXP(Nlud(6Ud zYxeAXIhe!I?^d#v@Rw{xNvQ04#%trC-jn=A+d!OIQVNV3gyK67>2>l#gDYJ(^5+>N zJNmvP2VJ>(>A(wV@#$yJzV5PG@e%CW`SmqYwUXd^fA9n5d@FN=`4 z&7t;r>S|D;%OuQ&oBCd@E;|k9;?w>bqjqF8u^c5=wE7(sP77Zd-cgbsB@jV(W0M<| zq^ShE+21Fq+;a4<`eri#a8aYCqrjr-ZqtC9vpkOc6~F?oxTGO4jN0 z=~Z71bD$+WwPdBVTOg!XGUTkNc-&g)2X^BjE7PfUrLBARN?dK}z25G`IlVkmt;5{i zMa(Ac=GMpUoodq`j=RUa-#6;t(C+|aY9a#Hq=E!(`Sp#3Xi&&V{AIn0x%4!2d(KLYM}?L47J%=%YRvH>Y(67ODF zJVJoU04;*xY_6v8sE+M@$%T}`P@qd(C7JzegnU8EEZeZ*^3$cR1Ipo@G#M>7|AyC* zlVX6TxVAqeYvZ02G0v&A=u=N8`aE?T^|oXV5!FN}K2L6ST|nK_b;0rpbK_WG<_S;Y zt{aP&eXo1;Y2g?SW^aN9ZBQKCq9fY&i~TAUHKB*$FFwvIFX}m{>@vV!-u{@oG(lSG zP%=l&a~4j8XG?KT{W$s^2Zd8mlkVloor6m|Z+myJ{@>q=T?gb@-wAUdqP~;7-#}X8 zORG?1Wxm(a=$6;H%CdUNPyM?ab#>kggf&a&RS52KX`b-Xh03$22)Hz(3CT$+?0M=8 zsp7;1Zt#w>ix3>Ir8Z5fh`q(Me2^hFdB4r~YGrZdI{>{bxbqvYFI=yMq$0}xkt+I$?WY}K#{FA)7b!X(y z8DSnAKm_=v^!!mmV7H0cQSI1>v^ywQnoj+CqIM$bV7C3tBk%RL3+{$OM@oy#wsUd+ zF{9YucTJ0RlD4`=NtR;AMpJ?=lO7FoOt!+};}kO9A}{nh9Q^?x+&Vv;7R6KXC4s=1 zmoM=|x4CKdUhbc#kA5Qu$b51G@;U1(Kegre(p6omnMt}Tt6Aq_v3Yb*6nt#tSN;CL zOBCEJbg%aZhtbpf8@le1f&i^RC11ayDDk18C{}~XIUU?9jp)z-1Eq5y1!k#J!6yvi z83B<>&RmYm><=3hXQkn}Kb4I@1+YxnxKFxCgGm!s&+u~CS9X$3sJRsbm>j65dDn@s z{*qSdujcM;g>#>&$Y)~ECy~=fX(Nnh+^Rs};H9Szql?eCRWri=@ZAfS{NEn% z=k?TVc`Pny`}n9PD;|_GE5lnFmoFW7&oaa>15)~`b}K0>Bv;#R>59-zct?#06poP% zIpTcRgfIuoQD9~lc&{vSqviPyR$vh5mKQ?e$$!TH;xxr2dl~-?=@VUiBI>FtIbNTB@$?Vn=H%}fU|A(XS&3hQ1 z7Nv91-*D3oh|q<}$L=d)pZnRPgvUAms%IuD0q=I5e8#i*nV8^fwfno`eUfkY>!;B2 z*0r38UhdUPTnciS{`aGkl2Ako`OMRX2@4h{j%mJIXu5Zuy=`>WvY@AMW~;If$Re;v zBWz6bcqgub`#G{((jO)2sF3!jsU<@G<<%|X?dRRdfBpBtI=HykEh}9i3Q=cBlr23N z`rR5|`$9gPJ>Lf8N9J7WR`g;Cb}a=Pr0J zRJ`k~|C|=oOGX=3lgS%~Y2|-F&s{1AQrI=O!*_KI!AF_`>v(3R*D`Wje=WBRJgsu| zoLve20BT=151SGUV4%d*YdQOQZf?SMirbC6-alpaX>t=`huJ70H}}Jn1aJaFd@`;l z>FQdruP_x?w*o6;qHQDc^INa3U)HW0&b$h~h*X7id27J2_1LkqREyP#9 zMf4*m{NrJ#tVAz8%l(+(Q&9JlxEUKC8QZ_O-2bM>ZWvX`|7pHcZJ&mijAE9mIWM?e zdfB%yMr}TL(-s^lSY_K=EDjKm@V-QUJC8gR*+S?O1O>uM6Gt=muIx4fsWfD{HC9?@ z(9*eISud{QGT*O5d8yj`|J%7HHmP^f&Rv#$I8lYhsQ$!uL5?Id8`IPsaAfAc1b>sm z8!y&L5tQNi+|QR#npC9Z0gW}E@Tr!i5g8NH`r6+A*`Gooy@8vz^>DP?Z48xXY*Cl8 zTZdw;5ihO(CnjXEM&=KB{6jCoev6Q6yfV=bl$t+aEURYTUnPW{2cMq&S*HFumhj3; z^5~~zY>x(5lUAVHP|w;V4T&}Y%nWhzfEgZ+u+*db*>63cW~G6xTOS|30$&m!@Z`RmKzX!Pyy3C{>ltyQH(qklJ8EV1v@0No-XgGTnQScXeLA&s zAPS4YlHIwVYSutk+jHcSiZ{XUevJJ_n#|6EdYR^h7k`bGYGp9B8UumAIANaGT&Z94 zOxhw}ZMIR?_OWLhbklzi_NBAkPy%`)ph1ORMuST$NA4hr3ukbROa9PSrz!SV^0Gw| z?NZoR5R->wpdj<}*bCGd(Fui%m7#oH9sw-lN1#MVJaSd;|J8Kefl&Yd|3ogu8PzA^ zj5>tu3TI?0+4GPUG9%-xWEQelHW?v8ot?esoj7Ih-^=Io{rz!&aIg34{kqrd z`Fy^f>+yVo7P?Mrnhle8P)uX!=tk+~=XY?GF82z2K9m^a#mN&uX0n!)=RL%V8(ME? zW>P*r3It+-Y+v&A<8#&ePlYkNA5o$;xzgaxBck4a0jPs|&$unK+eVaXH)e&vD9P+V zT*RP;Urety6hGEY=slCZ%|P72P#^#9mA1hMr*bAR0eFjvzn->jk11dBN*%Y4Q9e9u z8c#gN*C$8@ZGL&v#4$Vr3DU`&v zO*nd60V9duFCnH?e&-jr5IG}vwU1<<%$u(kxC#4M)AgbJRnFlm1&IXRW(j91qRqUR z&61pRM!qLlt=e`#oMKTOzEriCnPFA_pT&c?l)MyW!26w4m~Cxq)4H+@Qp*krD; zq~j!V@Mx;CMnCmYEsW%tY&7bNFE8TNx!9j2Bc*$pN^DY|CUUP@2*xN%8heNHj#Qr= z9QMpzy<{XqTu*P@NZeU{dgxl6wYexMdE7h76{TX;?F(-kqnP;dev*`HhRQCO=Re`k z5+Qn>o~)+k)$)dTD9vV`I&0JQ*Grv$Rb~kVrjDBhVU%9#El|Xoyy6e2Talx~L_)RA z=KokP;Dc3cnsT#SYbGKwOSJ4`i<Cw3Jhy{)1v=tCIh#_DaVNjh z?;41&&f(a{^4Ii-xPB^y(|ak>WYRMRCkwg7B~Z>w4~kXGcwp1gFFUpO{;>)c?8qH7 z%Jmp6D-ajO6lN)J7OnAmqzN!I0(KL(xW}L}MTc13O$nWEDhGO?_77;aU!U(YIJr0Q zDVb3MN;tZK+0Ol|h>b7GP$pwr`+9-;6MJMV>im=D1 z-`?5}Ku}conGZM3Hj8tgnBV{SCX4q&yjOucb|FT;*Au&+g}Cm%ssvqYSBc zq4ldTOl?~x5D(s<*)4c?5Smq&Y6>(Ln& z-~b=|cYyQRL)CVxc(%JfwMp)_a1!Utk_dv+lHG)GXghp|aSHXr?F9vVG6aBGu@hBQ zBI|gR#raE}nmoM8gB)kr>^Fl5ht`QC`wJH25jmE*#n_oKlO(Z{&`xXtaIMd1ZQE@h z)iwQdlbB}vE5K8|^;yyXqrC(aI_F}(7Chy0e44WHuGn~`_vil@@XE}uQto2Vk)3_B z{cC*5h&`dhw#FzP(3C@ChU)1Q1{f!tWfCho5u zIPk2~#g}C%qqGNR<&k`jj&Mmz$2!mG;Se}p5Y^JNZv>m-J+y6;$bT1O;RBf(6#hr{ zPL)X`N9fCxII6QIoRk--t*Oap7cwj;uzL*_A{xLOUAFQaptkE{kfHdIdZy z9pHd&kO#C|ilrAA`I3g}Yb!6mob{d5;Tdt`$R_a{!rQ>Rs7+)a{kI6L7z|1jeG`yv zj-IQl;@9lY#^yKK=;Gf|I&qV>&f8?r?0{2=A?vFF#cF#s^x6V|vKfUlJwMrwL6c`+ zWm+(K+&YR;D~|6e*WJi|MlOC}AQX~ENn^%0fAy!)S)+w(RcY#-6{(M}uk7>pEqOLa zv0vD+Aa)@2rEP!dym)b}-3hHFd*~|Y%Vzq!hcS z@Hb+OI>9pg5UzO`E7h9@e+qWHfa7`}vDpK^Jd^Pq4 zQ$lT0!*0r}0C3376vV;s=DA4m3&Dwoe6}Nvvt)(n)C~L#B*~Zh!9PM#3m3z@F(nYh)1ZR>|=`ONpp# zU2J1cx@=eY(etL|&3ttb0_%9wdZEicGkprZl>9$kwv|+8TcKq6F+o_-4gu-tn0`vkz3?NxU4(NIs8ZjflX$z7;FK`1axRyI2OcQ%ndm(7PEp~Sg zZzPkvhE$&IS%-PcKpQ-o#XL)N+e7=_m)VHBC?XT}RmmgZeyW;-2duFgr{i=kee*(r3AuE3S zLNx@qGp&Dp-$0zvL>$uc470Adty^72ZMmOM?HD|Hn(_s+Ga&$je)fO#EHw+dil1Tj zdD!E)^F(~#*X(08e2qGyp@9AnN&cAgH(!gc9?HU}bqiE(HxRlEf3_yKwz8vr*+l>3 z<2>t9^_X3AWYJXF89B^*JjhZ zJ%gHU&;&QHeii@t?cY!p$S>*Ci3FM686E_;Sj}O`t;W2M-VbW38#=@$t7Z8>$YM^? zZMW`PdS9K1Rg>-p59gX;n{iwWu>T5bYlC#gOPBTocJ1DX1`+iMcZlJ2rtVMG>?}>aHV)w(N3Q?eh9 z6Jz!H@qes;_4{ul?VjC3tnGuub&m6}Xps0BvZtioUNxP2Qgcs$7Us;BEz|e5!DC6e zjF(zwmm%Ar%H*2s_&N@u zI=rE(zPx?!k$aOw0LdxQ1-i-G39g{dv(q}yR}s-zCZ;A%x|JJPaTz7E)GNtLqOAm=hLJce-pU>NI$Q)R_yh5)MF)ueeIK`8yRx*Y7I!GsSsbQ@4FuM2fgS<(I*Ql|5CO?iZ>Z zam7uxET+_1+k|v53@qA5W$@8%QX>Gu!OF}CPs>MSb>|~u@D$Oo-|E$q@*+D z#kuYQJ(^g$jFnrfjxuem21am1sEYS-O8&~vSfn)t9!QzXehMG(TX|@P1ELW(h$va# zR#)*Cy)J@JLR;&(y1Mc_nvAKifOn^2f`wjc5`-02r^OpDuDUAR)?Xf8cTJDF;d4a}aVZNp0Y` zSGX}h3qs#CG;Q^0hAeLwMALIsqFCGjbs>u&-v5;LJ}s*WHWgfld|{EA)$$?+2xWzp z{0!pn;7}_I?SVwrtc`z%Ej<8$00=|)$1AYi0>`TjVSBQX$L7y1gc@>zwhZBW6xv+x zX^^;R<10@s~MTo%&@&dKZO{d2x(5HbA(fTOKXq(yNm(@m~91f}VKmi3>MoND1x zv=ZHJSHggIe(Sy{1KCj=P{oyxUceRDX25Qj!!ALNI^H~(s?bd?<{e=rfT@x^=9z^M ztHOiy$lz$1Apaca@`iuH3O|$pINmqF3TxL!Tz}(qjoX^Z&+BP!dhXmaDyhFQD&$gE z1`J~Z=scXvo3f2%U431crpx#r$fgE&7v#~+{lsSWtyh9&mm9D4<$|Bak|2DeWJ8=q ziU2ZsR`H+KEofT=n&1I?+P&shTIiOfo&A-^HYs5{?R-i!Zaaa$_A+9#_JaY6b{gbm zS-?pkzhB#mFw_m|E-;>HA+~JD`arv)_^n06$y|MKbN|H5U78)n0ldUJO0XD5K)x?0fX{(V7NN> zZRD4!6X!PN>AnuY3(YZn)73iJ3J`ft~b|&X;ycLVzVfj#e&a2N8hEcswECr zqAhm+RQfhOxuUhMhHKBWgz@k^l+SPORc5#~@t`LcE|_QZEG~-@WPH}=fExu7fZKrl z2-(cnLPv;rB8edNKHu)YF$c5egPc&8SW(iUNuqZX1~DF-zo>{H%&5%uPr{Y3J38kT zFlHA}HOD^+sGy)oL^Zt^+k`d|WXyxh2Dq7f6#Jn-K>(m#CIrB2MQW)8lkmMM`DZVM zwx0yjDx+5KDRJLmN&%Ge&}2B+(-r#GQfvu{t>GJX6Wn_Hj|adq?tx@pP>`h{J4hlr zrD24H;mpHxcW3qzSTWM( z&*_mw3@MMPZs=2w3Lx=A08|GsAX#uF==*BGw*i?m)u~C%NxOI*%&l``@ei13U1dRLpWN^&wa;Nv-2^-S|w^W6Z;TNd=#XR zfCp1bNORlcx-$o0hvPrhCGB)0qrXpIq*8_z+FJu93ABuENKCqbr|wwFyGlqHOi=&_ z2>|XwNILqS)rirWA(`PC0Nm2Kd%(Te>WKRWQ$VHb;~y0w`Iawgw%=@yQ&NC~y! zA40qsj(b2x!!wK-58glgo3s>?WubV*Y7!=HY&*W`6$v=K>56Sq0{Z(E-mW zhKG>40}?NI@&1{4^H9B;5N0*N<1Sf2j1kUEr;%uexU3);;vQmI3r#j@H)Q5qT%Ge0 zK;Vu~a`=8b-S*$I1~rh%b!!R06>vqdKO0Ci=|RJF;X9Jxu^^?Fm|vJr;Eb4#L)v-< z3K|~YJvjsg$v~cVT@~ySoMtCHShqD-ILCLamXny75wVO~=N4(<@+DQP1ye&IpHb-v(zf*K<-bH0EZ0BjZ$D9-}OTWh(ADP8Dg0P%dt zf(k;tz7BvVEOsN~%ZVk+>O2`aXm%8VdS2?gpKbcD;&Z9BuPuFkXzO*v)XSH^a0kRd zLE`}tzPgXS3nB*VAxa#<0-C$$z#4LXULk+m4my?NoX z;3(>%@JogB*i()^VwYj46!SB~#v=W&P>N(;HJPq1Hk-%PVXn+VLYRLrNt5l|?NbSE z%ZGFddA3W6{daG{ZoM+-GG{K-RboaP9v4{mRJuW9loup#!IriB)F%!rVL7Ws4S~JM z>NkA^j9k7XJpdtHr*+9KJ{or@2s*?Aj0MBp3z7yPbjcp+^&{;m_O2n|N+ZZ5!kr1a zEG&9@9J5@9pqNyyZ!_T)y@e{M2pY603vQsEGK$r6uXgB;b&+=+@P2%ecuhQ_`iFO& zwzK@9ucN5Vs?X){ULdKL6j;;fZnmwdp%;M3Ze}frc7nRuc8ThEI$dcEd>Rr8B2YdU znPt{5w9Vv?5q>`P=sOsX)}9h+=~CjtC3VHKdNy3p(iA1kAnXMD7a}qMd?s6FM4ML< z8&#zxZt93eSy#!pDYYqAp$um;nt+vK$+}dhtisGk1ce5 z`mRvK}D<+YdT+Jw-C(^2{3fycP>0g zu{rImG_JsnJ$=Lamz0^%hsDhgOo*-UZ|4*#PoKx8xyh@Mka^#sF{O67Mae816U-1{ z*)A_#v)QCPy{&X)5|J5>U~H$~!Mc-n*LQsRWEGpm4sN2{zYUE&4NS6@cKMUqQ)F_C zUZmD+VyiiX5l@`Y9o}U$sZ zHZidlntz!ek8F0(!Ph#lA5LzvoivWI&l|6I-Lj9-pV@A4V4s}*U0KK{#-+xZ&h>M9 znz=7d1>?q6!yXQ5&ZMY%%mVzV1^}>LYN;t)WdCRkKdyh0oWQ$(h?-CF_vVr}8`5iBxs+-kp3Lizo6Ya5TWYgKxb7Q9QsaagCCC+6jf zFu~uunxISu2?HrPnm7cmsqgc5@Ti$<8+cSVaiiY1R*liJWV8R|MI^`H&xuh^{y8V} zZ|A29i@Y-T4}C#ivdSRA&##Hv<(!&ULs7D9`8>pxFv%={!m^q~vArb`cS$KR_4yvs z@cMxhonS?^K)4lypMH^Y&%UGiY}ld$!)sMD(ydBaB&&~KeX@ot7FpeK3QQ34O%(*Y z6KhjRPffC}b_YnQittzKY|^_)6;p<%*{;Z-U;Ues)yMiX$`a!0%5hG1^reh9LBsVd zWl79WyI(MNK*o;AlBvNZCpKJtc>3n-Np+Vj>7Paop>W*bM^2-}4W%;^f!&$Ht8*^V zqK-L?P?hKI*kz;!TYi=`P!L*VxP~<)pi~s|=z~At?W&)fbL55?BZQ;uHxqg9)WIra zcLsz*{lv9KD;^3(69-T>k%#u)6KT=dkCGz=b95Xg%vIRKaLQ;h(UB}7`)TUTH6MYq z$iedfIipAWJ-n6^%kbvMXV$dyJ3KN^M4ug=R-Zq!im>UlLm$cAn5cNrf`_cD5(zJLY6hv$fIk z>4?HfC9DZv1oVc(lMKttRD6708ygA~NU$HtIYRu#Ep1+k{etosN5C7l>n%>0qsE%+ zr^fbrm7a&^Y6)FXhQF>wg!LPGofQn21V^aH4do!HE^gOFtwiDA`&-UOe6j`t7K zIAeBiKn5}Pn*Lq&CnZMl4QRV-i?jht!T9>FB_pJBwZZf5!^_cvS|)bcB}3Ar`J&xXPSa z01^Y1LXxs8kDrf(De!q@f!Lg+QXAYprn`Q)$!J>nU1EZ=tG}FUGzE>jBBrf1x(GoW5(Y5;F;Z4cMUnH*WC5+V+W-h?c~86O`>Fw|BH48Yf< zF720l+Rnm8y|IaUt`g$UdBp~0f}%5pO=pQ(W9ZSmB&eQDDg(pwa!`_QN)8$gFaSyb zKO`Kzv-YN%-1<&j+M)?!txoTflPysPPJY_mY2T-(Yvmw7?Iv7U8o2upr&gRtUz6E{ zb{`r{w_Gz(TVzM9c~PN|0U5qJo?CY~9tUk(3jiPygvG^}BfTih4rPs(pge<}`{v;% zCO};{->cmsjB-KI3L=lGE|pj4Dt^BSGq0J?0aa{Tmba;VfPL}!TB|=zVMex$Yc%@> z*LMJL35Ye&fVXr_<9!l+325Zlc)c&FjkPbgrxBq!*x&kHsW0i0?JsQ)_ z0Q((90{3A-K|gPopp6GH_`Ih6y(80gVOW)}=Pf^=dQ$ysor4l>fhMtOmb_p}dK5DD z3%wuHmb|D*aN6TAUU2OCP@;}EL`^6bk*=AGoR-xv8OUP;F75B%hS9gu^afaQdWCC1 zCrpd5L%+T`Pv0#9YrEljflk$bw+V_&9mpn5RepEK*$qii3eKjB&@# zLWN6Yt`drPP?`Yb90WWC`V$AP8qFXK4klVYDB2`8hgf6mH>>F{RTmqEYx1$JoNTbl z0L+02X`kRuFbTW~?2CM@eqfDuazfet*MSruSXP}wrpFW82=b>FHtVest7{Z83;pz@ zT|}=9*Smt#YS4;|ku%ZjH(#~p=Cz6he3%^4w9P2$olskHm~ zX*qGN@xSn#?8l(HN*7);<1jtU`xXWv1ES?b|2 ze^jNLKT|;KOrK8f0Q!r*s3@Tfj;%Q)eU%BU1`Ae$1gnWgz+qG1D)CoEGt40Pju&-} zi;iajT-WbI^)wvg_Rj2$s64PZ?x=WL@3UJt7nStXH3X;SKxTd}i%PvJ-OQZ-Aq>k> zS8>>1lpl;*V)!RNt6jw_{>u#%veWIZ4J*dQia8KOMov44=s3WhfgAppiy6BRo^v&g z(kzGs{z-9=KkH}upTrkh3ZZQo%Za{^O@ZAdTmf4+pKMH>dQ^6wqLtS+%f=R}(MQ%% z9h9$2wSV&-3FCC}5^@WV)`>>P_5oW(tP+@JJ zyeNV+`QPt%VJp1|pMKxt!qXgiYSP3I>`2j$eG8iurpUn)K#O%+Jl~NJ#H%^IK<;#&r_C~sm#SZkAC#=2j2ZYuoH0C?e$4D>iF_cCUOdZo z2zt|dwC0O8@ue5@VoqinV9mJN?a6HY^*eJcMCn*p$0Dsq#)KsaXZC#-UmJdU_euB9 zCWym&G`!4eI31g+_KO{LHq-!PtX8UD^qpy-I=D@gu15cTyql+C;%K&air4gbYW|Tc ztX&{$yIg)6S4_nHoS{&s=bBXxR z3VB72n#k1|(X|Ie=_by4M{2@$m+uN?ZO#~Dg!T;jS%272XS^Yav7Q^qEECxxj#T~IjE0Mw=Uh9GZpxj9=!^dFhc-xk(HQL4kz;JSC?TmaVS6RA6Wtm~ zwzgy7hdhc&$jkMeb^)FCHVYI?Lj@vse3~%VVIMO@g_;Jqg*a+O>*U{>T<^z;)6cZ5 zcO4}#&3%YWh#sO6j={2U51y}I4eR*iK`J9@O=ZizhUo69Np$~JEU^JSDE3bgcQEdX z1_Px473oj04Y3mXoMO~M+(O$P+L5b?M;`cqHs@<>-G=njfnlHGcg5QE-O>8DBHFO3 z?CV1a(3AHyV%cj^w0Dm7Hr$;w&!oWo<&^1Z!cv1{+U2o5p7!zOKXw!vz)|P=%&{Eo91x6u!InP!FYs9twPWwB@KsUvO@&f1^=zpWdj;^9@g3#P$mL zy8vv~h}&qSFxTF@{oMv+09fie`Rb`_;?h{Mmr1W@gqllm$XCGyFpT#(JIAE>VbNo- z)WIarETn^RE9^AZ%3O*~lrP44=5hbk0iFWOSRTXhIpee z0oZ#Zf)Tg)YxcyMG?Dnu8FMQzpB!e^aJ0hmQRB8Tv7h9K5Mw^S!6jt&3fW#Rj(_*qRv3{DpiT(Unwe*DpmT)hdJxkDgx7{nl+>dM;YDwS|Al^VU_`fZq!KOAU zi8yU~#%o;fXUPqu9DkWo&X;H!3u=4NJoJ8;%@-6QVe)_ES zTjp06fn+EX{POL+G!jMXla|e^i&6uGu~Kp^u=K!i{Zf{)?c9lV50o_Kn5CO(sM}j# z!7R{R6zn$RNx~rivkqHfQ(0lBdA4r)d4}ek*D%wH-9YiG=z(V8Oc=4y9NAqxk+%tb zN1r5suxhe1CUK7ofX(vtS0*1X`69{3fVi=G*N6<>iKE7*@(;phS+d$a!MWF>o>vI3 z6zFnz{xH3Q=erN6N_e?=lWLYSWG9Xan_7<=A8fWazT%z|08=;XJ&v4W6>)ooB=2?q zETQ_>dL6kZtH@M$6l=pcf6^aS)qb69ZHt^(;&r{cC&!{a;5vvXkdW3Wf4~+QS8&A3 zoYib#m>?LYg0?#plbFj~=giG+eqjXNQo380gtt`6cUG}x4&G)f)%1@^0{bID-9LXB zh#!57>Fwk}1&MNVi0$0rETDlnpFwEb>s_{)(IUG*YnuM~o8ZtJ5!Qb`oYN$8z;~Yk zx=Jn}1fJU(cQKOT#D%uf$&8nt(tp7Oz{<266)T?#Z)*l2cfjssSdR_K3ULH3HlSI= z`mQiCqu*w;loMY<{tg!%GTo3-db0l&CN6;CD$?ahcV}s0CvE;-Zl{Zysjt55AtM1s{l z&J1TRmqiML`;`0VW~^{$q!Z@LZpLs1oDcfUl>9e1C+HlqCjIj+99hh`t^b^X;8~QQ zw(tebVyVp()F&7Xl`g55pn%Crh7tdfvsfiTujR+xe>=H14}`Pv`khWIq<)KP$`ktD zSC-tk_w7VvYtCkXEbezRm8{do7A5e)E{@euzUqNv`}bp_VY0W8QI?}pb`2~20Rb?I z;myJO4Y)@4#Lp_&d=B@HD}AJ8nvAq2RXkSVc%4s`V}t%zz|e3o6!(en&A2D|jXpRh z@YX)TW;^!BpWGQkQsMc=+m%u4=IUHv=(_;e+Y!ejIeYKfhk8{~&|&B5?+0w5?n9oE zqbFJJKR*zYxUXGFo!Re^7J2c)Ds`HvK?$eGV|Z(j9bJK!>lE@E2r3nE2XBNg%DJR}Ezkl;EB($@SlwdzF)uexq^s?YPud!0^Y5&W8}J({m61 z4csQ^b&D+C;GOhF)Zc>Uj3X0w%~y;HRD{CbgrY+rPl!B}!PG$G%Hxol9`iBu!)@K095e&yMuW>zD^cpz`FX3*iq&-W)=zxwF=al)czQf%9mD{FiLyS_*Fu{S;5mcwGG2I)9PKYhIdp3%hS zc}}nu^QP&CSs?XIJ2c>(Uq#$#`HA52#TkEm^-P1jh4lHLI)3E`K(d;tZ)!fO>@&D^ zsp@VPaq2eCnqPVXomw=x!ZD3rrKW?kq!StBs#J+s!>+8gHsP#J*_M@qJZ3vfrcpH0tWZ>vzt}(D0}XGuW3m0pOD*aWysWK-J9jQ3)v{e|oWB z!H1h)8OF$n;A3P`e%hOw?cNwW%RlZR0cylSBIR0_kmXuIM=u;a$IHMiTRNH4PD{4N z5Nihe9TEUOS!zA{d+S#=7+T#w`=>6=mH-?!iJMs&i97h98S9klVRoW*hSFU{Kq-^M zWEzfsH6vSTl>*C@vcJ4Lgm_$25*l5vOtukuL)wpcYly=TqWm1!yDfVjwbOK3O733DRe?c#ST z{>g5vOa~K*xRs=H$(SXJI9)KkIL58z3ASF-pbka0(d`#I>%JI|kT+{7Jv(C@ee4JY zF2OT4|5}?>o@cgpJnx8&0cob|G}`5Hm`_WKG}w#wv+o-pzU6H@-FrNm8?eP}xaNn%`P<17rv{Cqk-ALcPC< zpdlG^Jl*%P$;9H|HBH)GvqG!GXc8jD9@^vICwnh`HBbd4Q}qYV2%f?CY>N=vw3bj( zNl7Sa`<`cjM!j-9o5S-cIPFy;IBgEFG2YYsn$9NYyPwSQ;bKn%(y#XiN=+JY?mue4 zL;P|LVNpQ=uqgSB!pu&6bU<@IH&h-RqkI?mL#+{2e@C^Jfff$ts%{`Ud(h4MR+)%a zFm;Rw^wLHg`j#Ep`03w=I@2=6|Cly}Jprw4DTlwg=5a(W``a5*w9bK6L|#A`Z&9F0 z{I^|A;B(J5HRZ>w<;RE^*|UhnG^Q_|Kf)Ffi+x)$s^|UL-rqi z@b&lidEjJBE;$RPE_+gDKWQISYXqa^>Ycfeme4V3b2x2EOg$mVaF6stb7^I?57~{U zeGLtr-#+lhggk+j`+)yuh*ZLM-U%*4px_M*Pbk*eUC{LX#;IHbD>Y@r3`qg7{(eBM z-F{EcD;yrShEF3>a-&Kc^BA%~ztXI`HQ16C)xU0&wgG{Ltoj`op#U}Nej?=B*Lx=@ z_tC)7Mij-e{3uZaN)oyjctMBzfySP2uQwY!hYR4y#;a~anw7zKA8=MpxZ=!?^!3)J zqAAbrbXMpZ9eBYietb8+B-zD_Hs17fz zXAy7RG8}DaD&RHt@M7(gc&UYW+q-&=L534G0TI-bjPkXcsn z)E)GLGxI#-7uHcV?R6Sxh>40M)GW_7&+qzJ%%X~Ddqs~fl{(oXauM=7Dgf3xGxGC~ z)8A*#o~7wLjY^-3%jA@3Yc=2jO*H*PFFx^Pi(>tp&wbpdMAB3hd{d5@o2$N11n7c} zp2$3psTen=33a@>v8TxbXLp`2T_?JOXpMmg9$<2)`ue)#sQsn7E${ zbS8eS*|k#p`q;$}*SbHdbNVuUkj&K4q;r6XmIgdFP>{M35Bj+!@E^&>KF(3ynu*E; zu85O(3LGTrE$HYPGuE&!UQg(8vPbUFTbel5>etj%6qhaaZoxf+iCY)Jy2j#`auY$p zTSk + + + + + + \ No newline at end of file diff --git a/theme/head.hbs b/theme/head.hbs new file mode 100644 index 0000000..8477105 --- /dev/null +++ b/theme/head.hbs @@ -0,0 +1 @@ + diff --git a/wgs/README.md b/wgs/README.md deleted file mode 100644 index a7028e8..0000000 --- a/wgs/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# Working Groups Directory - -Here you will find all working groups -and their meeting notes and recordings if available. - -## Working Groups - -- [DA Working Group](./da/README.md) -- [Interface Working Group](./interface/README.md) -- [ZK Working Group](./zk/README.md)