From cd822ef15b01d47cfea43006b4d69677479039d6 Mon Sep 17 00:00:00 2001 From: Marti Date: Mon, 30 Mar 2026 18:28:48 +0200 Subject: [PATCH 1/8] chore: AggLayer tracking branch (#2695) * refactor(agglayer): fix minor formatting issues (#2675) * refactor: fix minor formatting issues * fix: cleanup unecessary stack comments * fix: add newline * refactor: rename U256[N] to U256_LO/U256_HI in Agglayer MASM comments (#2676) * refactor: fix minor formatting issues * fix: cleanup unecessary stack comments * fix: add newline * Initial plan * refactor: rename U256[0]/U256[1] to U256_LO/U256_HI in Agglayer MASM comments Co-authored-by: mmagician <8402446+mmagician@users.noreply.github.com> Agent-Logs-Url: https://github.com/0xMiden/protocol/sessions/604803e2-68c0-4ffe-acdd-4926707426f5 * refactor: remove (4) size suffix from AMOUNT_U256_LO/HI in bridge_out.masm comments Co-authored-by: mmagician <8402446+mmagician@users.noreply.github.com> Agent-Logs-Url: https://github.com/0xMiden/protocol/sessions/ab585523-16e0-40fd-b99b-e64a472ef9d0 --------- Co-authored-by: riemann Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: mmagician <8402446+mmagician@users.noreply.github.com> * fix: rm unused procedure (#2680) * fix(agglayer): update doc & stack comments (#2678) * fix: update stack comment in claim_batch_pipe_double_words * fix: update doc comments & formatting * fix(agglayer): remove pub proc definition from internal procs (#2679) * fix: remove pub proc definition from internal procs * fix: add stack comment & newline * AggLayer audit preparation fixes (#2686) * refactor: B2AGG: optimize stack management, update format, remove unused imports * refactor: CLAIM note: remove unused imports, update code format * refactor: CONFIG_AGG_BRIDGE: update code and formatting, remove unused imports * refactor: UPDATE_GER: remove unused imports, update format * chore: update comments format for agglayer account components --------- Co-authored-by: Marti * Agglayer modules format unification (#2694) * refactor: faucet account: remove unused imports, update comments * refactor: update format of the bridge_config * refactor: update format in bridge_in * refactor: fix addr order in config note inline docs * refactor: update format of the bridge_out * refactor: update format of the leaf_utils, move EthereumAddressFormat to eth_address * chore: small format fixes * fix(agglayer): fix incorrect stack comments (#2681) * fix: fix incorrect stack comments * fix: rm plan md file * fix: undo incorrect padding drop * fix: update comment * chore: update AggLayer spec (#2710) * docs(agglayer): inline permissions into note type sections Move the standalone "Current permissions" table from section 1 into per-note-type "Permissions" sub-sections within section 3, making authorization details easier to find when reading about each note type. Co-Authored-By: Claude Opus 4.6 (1M context) * docs(agglayer): add Protocol Description section with audit TODOs Add a new Section 2 describing the high-level protocol flows (bridge-out, bridge-in, GER lifecycle, faucet registration, administration) with TODO markers linking to audit issue files for identified gaps relative to the Solidity v2 contracts. Renumber subsequent sections accordingly. Co-Authored-By: Claude Opus 4.6 (1M context) * chore: add flow diagrams * chore: clarify who monitors L1 --------- Co-authored-by: Claude (Opus) --------- Co-authored-by: Alexander John Lee <77119221+partylikeits1983@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: riemann Co-authored-by: Andrey Khmuro Co-authored-by: Claude (Opus) Co-authored-by: Bobbin Threadbare <43513081+bobbinth@users.noreply.github.com> --- Makefile | 13 + crates/miden-agglayer/SPEC.md | 258 ++++++++-- .../asm/agglayer/bridge/bridge_config.masm | 98 ++-- .../asm/agglayer/bridge/bridge_in.masm | 109 ++-- .../asm/agglayer/bridge/bridge_out.masm | 40 +- .../asm/agglayer/bridge/leaf_utils.masm | 20 +- .../agglayer/bridge/merkle_tree_frontier.masm | 24 - .../asm/agglayer/common/asset_conversion.masm | 8 +- .../asm/agglayer/common/eth_address.masm | 5 + .../asm/agglayer/common/utils.masm | 15 +- .../asm/agglayer/faucet/mod.masm | 28 +- .../miden-agglayer/asm/components/bridge.masm | 9 +- .../miden-agglayer/asm/components/faucet.masm | 8 +- .../asm/note_scripts/B2AGG.masm | 47 +- .../asm/note_scripts/CLAIM.masm | 166 ++++--- .../asm/note_scripts/CONFIG_AGG_BRIDGE.masm | 47 +- .../asm/note_scripts/UPDATE_GER.masm | 26 +- .../diagrams/bridge-in.excalidraw | 470 ++++++++++++++++++ crates/miden-agglayer/diagrams/bridge-in.png | Bin 0 -> 276971 bytes .../diagrams/bridge-out.excalidraw | 373 ++++++++++++++ crates/miden-agglayer/diagrams/bridge-out.png | Bin 0 -> 217182 bytes .../diagrams/faucet-registration.excalidraw | 317 ++++++++++++ .../diagrams/faucet-registration.png | Bin 0 -> 182556 bytes .../diagrams/ger-injection.excalidraw | 267 ++++++++++ .../miden-agglayer/diagrams/ger-injection.png | Bin 0 -> 147401 bytes crates/miden-agglayer/src/bridge.rs | 2 +- crates/miden-agglayer/src/claim_note.rs | 2 +- .../tests/agglayer/bridge_out.rs | 4 +- 28 files changed, 1984 insertions(+), 372 deletions(-) create mode 100644 crates/miden-agglayer/diagrams/bridge-in.excalidraw create mode 100644 crates/miden-agglayer/diagrams/bridge-in.png create mode 100644 crates/miden-agglayer/diagrams/bridge-out.excalidraw create mode 100644 crates/miden-agglayer/diagrams/bridge-out.png create mode 100644 crates/miden-agglayer/diagrams/faucet-registration.excalidraw create mode 100644 crates/miden-agglayer/diagrams/faucet-registration.png create mode 100644 crates/miden-agglayer/diagrams/ger-injection.excalidraw create mode 100644 crates/miden-agglayer/diagrams/ger-injection.png diff --git a/Makefile b/Makefile index 03d5211d73..72f6eac962 100644 --- a/Makefile +++ b/Makefile @@ -189,3 +189,16 @@ install-tools: ## Installs development tools required by the Makefile (mdbook, t cargo install taplo-cli --locked cargo install cargo-machete --locked @echo "Development tools installation complete!" + +# -- documentation --------------------------------------------------------------------------------- + +AGGLAYER_DIAGRAMS_DIR := crates/miden-agglayer/diagrams +EXCALIDRAW_SOURCES := $(wildcard $(AGGLAYER_DIAGRAMS_DIR)/*.excalidraw) +EXCALIDRAW_PNGS := $(EXCALIDRAW_SOURCES:.excalidraw=.png) + +.PHONY: agglayer-spec +agglayer-spec: $(EXCALIDRAW_PNGS) ## Exports AggLayer spec diagrams from .excalidraw to .png + +$(AGGLAYER_DIAGRAMS_DIR)/%.png: $(AGGLAYER_DIAGRAMS_DIR)/%.excalidraw + @command -v npx >/dev/null 2>&1 || { echo "npx not found. Install Node.js first."; exit 1; } + npx excalidraw-brute-export-cli -i $< --format png -o $@ --scale 2 diff --git a/crates/miden-agglayer/SPEC.md b/crates/miden-agglayer/SPEC.md index e80ab2d82c..cddf6461fd 100644 --- a/crates/miden-agglayer/SPEC.md +++ b/crates/miden-agglayer/SPEC.md @@ -25,22 +25,132 @@ implementation are called out inline with `TODO (Future)` markers. | **Integration Service** (offchain) | Observes L1 events (deposits, GER updates) and creates UPDATE_GER and CLAIM notes on Miden. Trusted to provide correct proofs and data. | Not an onchain entity; creates notes targeting bridge/faucet | | **Bridge Operator** (offchain) | Deploys bridge and faucet accounts. Creates CONFIG_AGG_BRIDGE notes to register faucets. Must use the bridge admin account. | Not an onchain entity; creates config notes | -### Current permissions +--- + +## 2. Protocol Description + +The crate `miden-agglayer` implements the AggLayer bridging protocol on the Miden blockchain. This section provides a high-level description of the implementation on Miden, covering the main operational flows. + +### 2.1 Bridge-out (Miden to AggLayer) + +![Bridge-out flow](diagrams/bridge-out.png) + +A user initiates a bridge-out by creating a [`B2AGG`](#41-b2agg) note containing a single fungible +asset and the destination network/address. The bridge account consumes this note: + +1. Validates that the asset's faucet is registered in the faucet registry. +2. FPIs to the faucet (`agglayer_faucet::asset_to_origin_asset`) to obtain the scaled + U256 amount, origin token address, and origin network. +3. FPIs to the faucet (`agglayer_faucet::get_metadata_hash`) to obtain the metadata hash. +4. Constructs a leaf-data structure (leaf type, origin network, origin token address, + destination network, destination address, amount, metadata hash). +5. Computes the Keccak-256 leaf value and appends it to the Local Exit Tree (LET). +6. Creates a public [`BURN`](#45-burn-generated) note targeting the faucet, which burns the asset and + decreases the faucet's token supply. + +The leaf appended to the LET can later be included in a Merkle proof on any +AggLayer-connected chain to claim the bridged asset. + +TODO: The bridge currently has no emergency pause mechanism to halt operations +([#2696](https://github.com/0xMiden/protocol/issues/2696)). + +### 2.2 Bridge-in (AggLayer to Miden) + +![Bridge-in flow](diagrams/bridge-in.png) + +When a new deposit into Miden is made on an AggLayer-connected chain, Miden needs to be "informed" of the updated AggLayer state by having a new Global Exit Root (GER) injected - see [Section 2.3](#23-ger-injection). + +Once the GER is injected, any user can initiate the claim process by creating a [`CLAIM`](#42-claim) note on Miden containing Merkle proofs and leaf data (by monitoring updates to the AggLayer contract on Ethereum L1). This will typically be done by a claim manager service for convenience, but is permissionless and open to any user. +The `CLAIM` note is consumed by the bridge account: + +1. Validates the Global Exit Root (GER) is known in the bridge's `ger_map`. +2. Parses the global index to determine whether this is a mainnet or rollup deposit, + and extracts the leaf index and source bridge network. +3. Verifies the Merkle proof: for mainnet deposits, a single proof against + `mainnet_exit_root`; for rollup deposits, a two-level proof (leaf against + `local_exit_root`, then `local_exit_root` against `rollup_exit_root`). +4. Updates the claimed global index (CGI) chain hash: + `NEW_CGI = Keccak256(OLD_CGI, Keccak256(GLOBAL_INDEX, LEAF_VALUE))`. +5. Checks and sets the claim nullifier to prevent double-claiming. +6. Looks up the faucet from the origin token address via the token registry. +7. Verifies the claim amount against the leaf's U256 amount and the faucet's scale factor. +8. Creates a [`MINT`](#47-mint-generated) note targeting the faucet. + +The faucet consumes the `MINT` note, mints the specified amount, and creates a [`P2ID`](#46-p2id-generated) note +that delivers the minted assets to the recipient's Miden account. + +TODO: Destination network from the leaf data is not validated against Miden's own network +ID ([#2698](https://github.com/0xMiden/protocol/issues/2698)). + +TODO: The leaf type field is not validated to be `LEAF_TYPE_ASSET` (0) +([#2699](https://github.com/0xMiden/protocol/issues/2699)). + +TODO: Claims cannot be reversed once the nullifier is set +([#2703](https://github.com/0xMiden/protocol/issues/2703)). + +### 2.3 GER Injection + +![GER injection flow](diagrams/ger-injection.png) + +Global Exit Roots represent a snapshot of exit tree roots across all AggLayer-connected +chains. A GER Manager observes L1 GER updates and creates [`UPDATE_GER`](#44-update_ger) notes +on Miden. The bridge consumes these notes: + +1. Asserts the note sender is the designated GER manager. +2. Computes `KEY = poseidon2::merge(GER_LOWER, GER_UPPER)`. +3. Stores `KEY -> [1, 0, 0, 0]` in the `ger_map`, marking the GER as known. + +Subsequent CLAIM notes reference a GER that must be present in this map for the claim +to be valid. + +TODO: GERs cannot be removed once inserted +([#2702](https://github.com/0xMiden/protocol/issues/2702)). + +TODO: No hash chain tracks GER insertions for proof generation +([#2707](https://github.com/0xMiden/protocol/issues/2707)). + +TODO: Duplicate GER insertions are silently accepted +([#2708](https://github.com/0xMiden/protocol/issues/2708)). -| Note type | Issuer (sender check) | Consumer (consuming-account check) | -|-----------|----------------------|-----------------------------------| -| B2AGG (bridge-out) | Any user -- not restricted | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | -| B2AGG (reclaim) | Any user -- not restricted | Original sender only -- **enforced**: script checks `sender == consuming account` | -| CONFIG_AGG_BRIDGE | Bridge admin only -- **enforced** by `bridge_config::register_faucet` procedure | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | -| UPDATE_GER | GER manager only -- **enforced** by `bridge_config::update_ger` procedure | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | -| CLAIM | Anyone -- not restricted | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | -| MINT | Bridge account only -- **enforced** by faucet's `owner_only` mint policy via `Ownable2Step` (asserts note sender is the faucet's owner, i.e. the bridge) | Target faucet only -- **enforced** via `NetworkAccountTarget` attachment | +### 2.4 Faucet Registration + +![Faucet registration flow](diagrams/faucet-registration.png) + +Each bridged token requires a dedicated AggLayer faucet on Miden. The Bridge Operator +creates [`CONFIG_AGG_BRIDGE`](#43-config_agg_bridge) notes to register faucets. The bridge consumes these notes, +asserting the sender is the bridge admin, then registers the faucet in both the faucet +registry and the token registry. For a detailed description of the faucet and token +registries, see [Section 7](#7-faucet-registry). + +TODO: Faucet registrations are permanent; no remapping or deregistration is supported +([#2704](https://github.com/0xMiden/protocol/issues/2704), +[#2705](https://github.com/0xMiden/protocol/issues/2705)). + +TODO: Faucet existence and code commitment are not validated during registration +([#2709](https://github.com/0xMiden/protocol/issues/2709)). + +### 2.5 Administration + +The bridge has two administrative roles set at account creation time: + +- **Bridge admin** (`admin_account_id`): authorizes faucet registration via + [`CONFIG_AGG_BRIDGE`](#43-config_agg_bridge) notes. +- **GER manager** (`ger_manager_account_id`): authorizes GER updates via [`UPDATE_GER`](#44-update_ger) + notes. + +Both roles are verified by checking the note sender against the stored account ID. + +TODO: Administrative roles cannot be transferred after account creation +([#2706](https://github.com/0xMiden/protocol/issues/2706)). + +TODO: No emergency pause mechanism exists +([#2696](https://github.com/0xMiden/protocol/issues/2696)). --- -## 2. Contracts and Public Interfaces +## 3. Contracts and Public Interfaces -### 2.1 Bridge Account Component +### 3.1 Bridge Account Component The bridge account has a single unified `bridge` component (`components/bridge.masm`), which is a thin wrapper that re-exports procedures from the `agglayer` library modules: @@ -137,7 +247,7 @@ Validates a bridge-in claim and creates a MINT note targeting the faucet: 7. Verifies the `faucet_mint_amount` against the leaf data's U256 amount and the faucet's scale factor (via FPI to `agglayer_faucet::get_scale`), using `asset_conversion::verify_u256_to_native_amount_conversion`. -8. Builds a MINT output note targeting the faucet (see [Section 3.7](#37-mint-generated)). +8. Builds a MINT output note targeting the faucet (see [Section 4.7](#47-mint-generated)). #### Bridge Account Storage @@ -159,7 +269,7 @@ Validates a bridge-in claim and creates a MINT note targeting the faucet: Initial state: all map slots empty, all value slots `[0, 0, 0, 0]` except `admin_account_id` and `ger_manager_account_id` which are set at account creation time. -### 2.2 Faucet Account Component +### 3.2 Faucet Account Component The faucet account has the `agglayer_faucet` component (`components/faucet.masm`), which is a thin wrapper that re-exports procedures from the `agglayer` library: @@ -257,17 +367,17 @@ companion components required by `network_fungible::mint_and_send`: --- -## 3. Note Types and Storage Layouts +## 4. Note Types and Storage Layouts **Encoding conventions:** All multi-byte values in note storage (addresses, U256 integers, Keccak-256 hashes) are encoded as arrays of u32 felts via `bytes_to_packed_u32_felts`: big-endian limb order with **little-endian byte order** -within each 4-byte limb (see [Section 5.5](#55-endianness-summary)). Scalar u32 fields +within each 4-byte limb (see [Section 6.5](#65-endianness-summary)). Scalar u32 fields (network IDs) are byte-reversed at storage time so their in-memory bytes align with the Keccak preimage format directly — the felt value does **not** equal the numeric value (e.g., chain ID `1` = `0x00000001` is stored as felt `0x01000000`). -### 3.1 B2AGG +### 4.1 B2AGG (Bridge-to-AggLayer) **Purpose:** User bridges an asset from Miden to the AggLayer. @@ -309,7 +419,23 @@ Keccak preimage format directly — the felt value does **not** equal the numeri - **Reclaim:** Consuming account is the original sender -> assets are added back to the account via `basic_wallet::add_assets_to_account`. No output notes. -### 3.2 CLAIM +#### Permissions + +**Bridge-out:** + +| Role | Enforcement | +|------|------------| +| **Issuer** | Any user -- not restricted | +| **Consumer** | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | + +**Reclaim:** + +| Role | Enforcement | +|------|------------| +| **Issuer** | Any user -- not restricted | +| **Consumer** | Original sender only -- **enforced**: script checks `sender == consuming account` | + +### 4.2 CLAIM **Purpose:** Claim assets, which were deposited on any AggLayer-connected rollup, on Miden. Consumed by the bridge account, which validates the proof, looks up the faucet via the @@ -373,7 +499,14 @@ The storage is divided into three logical regions: proof data (felts 0-535), lea faucet via the token registry, verifies the amount conversion, then builds a MINT output note targeting the faucet. -### 3.3 CONFIG_AGG_BRIDGE +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | Anyone -- not restricted | +| **Consumer** | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | + +### 4.3 CONFIG_AGG_BRIDGE **Purpose:** Registers a faucet in the bridge's faucet registry. @@ -412,7 +545,14 @@ The storage is divided into three logical regions: proof data (felts 0-535), lea `bridge_config::register_faucet` (which asserts sender is bridge admin and performs two-step registration into `faucet_registry_map` and `token_registry_map`). -### 3.4 UPDATE_GER +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | Bridge admin only -- **enforced** by `bridge_config::register_faucet` procedure | +| **Consumer** | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | + +### 4.4 UPDATE_GER **Purpose:** Stores a new Global Exit Root (GER) in the bridge account so that subsequent CLAIM notes can be verified against it. @@ -451,7 +591,14 @@ CLAIM notes can be verified against it. `bridge_config::update_ger` (which asserts sender is GER manager), which computes `poseidon2::merge(GER_LOWER, GER_UPPER)` and stores the result in the GER map. -### 3.5 BURN (generated) +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | GER manager only -- **enforced** by `bridge_config::update_ger` procedure | +| **Consumer** | Bridge account -- **enforced** via `NetworkAccountTarget` attachment | + +### 4.5 BURN (generated) **Purpose:** Created by `bridge_out::bridge_out` to burn the bridged asset on the faucet. @@ -488,7 +635,14 @@ The standard BURN script calls `faucets::burn` on the consuming faucet account. validates that the note contains exactly one fungible asset issued by that faucet and decreases the faucet's total token supply by the burned amount. -### 3.6 P2ID (generated) +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | Bridge account (created by `bridge_out::bridge_out`) | +| **Consumer** | Target faucet only -- **enforced** via `NetworkAccountTarget` attachment | + +### 4.6 P2ID (generated) **Purpose:** Created by the faucet (via `mint_and_send`) when consuming a MINT note, to deliver minted assets to the recipient. @@ -529,7 +683,14 @@ Consuming account must match `target_account_id` from note storage (enforced by script). All note assets are added to the consuming account via `basic_wallet::add_assets_to_account`. -### 3.7 MINT (generated) +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | Faucet account (created by `mint_and_send`) | +| **Consumer** | Destination account only -- **enforced** by P2ID script (checks `target_account_id`) | + +### 4.7 MINT (generated) **Purpose:** Created by `bridge_in::claim` on the bridge account. Consumed by the faucet to mint and distribute assets to the recipient. @@ -587,22 +748,29 @@ After the policy check passes, `mint_and_send` mints the specified amount and cr P2ID output note for the recipient using the storage items (script root, serial number, destination account ID, tag). +#### Permissions + +| Role | Enforcement | +|------|------------| +| **Issuer** | Bridge account only -- **enforced** by faucet's `owner_only` mint policy via `Ownable2Step` (asserts note sender is the faucet's owner, i.e. the bridge) | +| **Consumer** | Target faucet only -- **enforced** via `NetworkAccountTarget` attachment | + --- -## 4. Amount Conversion +## 5. Amount Conversion *This section is a placeholder. Content to be added.* --- -## 5. Ethereum ↔ Miden Address Conversion +## 6. Ethereum ↔ Miden Address Conversion The AggLayer bridge operates across two address spaces: Ethereum's 20-byte addresses and Miden's `AccountId` (two field elements). This section specifies the encoding that maps between them, as implemented in Rust (`eth_types/address.rs`) and MASM (`agglayer/common/eth_address.masm`). -### 5.1 Background +### 6.1 Background Miden's `AccountId` (version 0) consists of two Goldilocks field elements: @@ -620,7 +788,7 @@ Ethereum addresses are 20-byte (160-bit) values. Because every valid `AccountId` 16 bytes (prefix: 8 bytes, suffix: 8 bytes), it can be embedded into the lower 16 bytes of an Ethereum address with 4 zero-padding bytes at the top. -### 5.2 Embedded Format +### 6.2 Embedded Format An `AccountId` is embedded in a 20-byte Ethereum address as follows: @@ -655,7 +823,7 @@ non-zero, if the packed `u64` values exceed the field modulus, or if the resulti don't form a valid `AccountId`. Arbitrary Ethereum addresses (e.g., from EOAs or contracts on L1) cannot generally be decoded into `AccountId` values. -### 5.3 MASM Limb Representation +### 6.3 MASM Limb Representation Inside the Miden VM, a 20-byte Ethereum address is represented as 5 field elements, each holding a `u32` value. This layout uses **big-endian limb @@ -676,9 +844,9 @@ Keccak-256 precompile. The Rust function `EthAddressFormat::to_elements()` produces exactly this 5-felt array from a 20-byte address. -### 5.4 Conversion Procedures +### 6.4 Conversion Procedures -#### 5.4.1 `AccountId` → Ethereum Address (Rust) +#### 6.4.1 `AccountId` → Ethereum Address (Rust) `EthAddressFormat::from_account_id(account_id: AccountId) -> EthAddressFormat` @@ -694,7 +862,7 @@ This is the **external API** used by the bridge interface. It lets a user conver This conversion is **infallible**: every valid `AccountId` produces a valid 20-byte address. -#### 5.4.2 Ethereum Address → `AccountId` (Rust) +#### 6.4.2 Ethereum Address → `AccountId` (Rust) `EthAddressFormat::to_account_id(&self) -> Result` @@ -723,7 +891,7 @@ extract the recipient's `AccountId` from the embedded Ethereum address and e.g. | `FeltOutOfField` | A `u64` value ≥ the Goldilocks prime `p` | | `InvalidAccountId` | The resulting felts don't form a valid `AccountId` | -#### 5.4.3 Ethereum Address → `AccountId` (MASM) +#### 6.4.3 Ethereum Address → `AccountId` (MASM) `eth_address::to_account_id` — Module: `agglayer::common::eth_address` @@ -743,7 +911,7 @@ Invocation: exec 1. `assertz limb0` — the most-significant limb must be zero (error: `ERR_MSB_NONZERO`). 2. Build `suffix` from `(limb4, limb3)`: - a. Validate both values are `u32` (error: `ERR_NOT_U32`). - - b. Byte-swap each limb from little-endian to big-endian via `utils::swap_u32_bytes` (see [Section 5.5](#55-endianness-summary)). + - b. Byte-swap each limb from little-endian to big-endian via `utils::swap_u32_bytes` (see [Section 6.5](#65-endianness-summary)). - c. Pack into a felt: `suffix = bswap(limb3) × 2^32 + bswap(limb4)`. - d. Verify no mod-p reduction: split the felt back via `u32split` and assert equality with the original limbs (error: `ERR_FELT_OUT_OF_FIELD @@ -772,17 +940,17 @@ Outputs: [swapped] Reverses the byte order of a `u32`: `[b0, b1, b2, b3] → [b3, b2, b1, b0]`. -#### 5.4.4 Ethereum Address → Field Elements (Rust) +#### 6.4.4 Ethereum Address → Field Elements (Rust) `EthAddressFormat::to_elements(&self) -> Vec` Converts the 20-byte address into a field element array for use in the Miden VM. Each 4-byte chunk is interpreted as a **little-endian** `u32` and stored as a `Felt`. -The output order matches the big-endian limb order described in [Section 5.3](#53-masm-limb-representation). +The output order matches the big-endian limb order described in [Section 6.3](#63-masm-limb-representation). -This is used when constructing `NoteStorage` for B2AGG notes (see [Section 3.1](#31-b2agg)) and CLAIM notes (see [Section 3.2](#32-claim)). +This is used when constructing `NoteStorage` for B2AGG notes (see [Section 4.1](#41-b2agg)) and CLAIM notes (see [Section 4.2](#42-claim)). -### 5.5 Endianness Summary +### 6.5 Endianness Summary The conversion involves multiple levels of byte ordering: this table clarifies the different conventions used. @@ -795,7 +963,7 @@ The conversion involves multiple levels of byte ordering: this table clarifies t The byte swap (`swap_u32_bytes`) in the MASM `build_felt` procedure bridges between the little-endian bytes within each limb in `NoteStorage` and the big-endian-bytes within the `u32` pairs needed to construct the prefix and suffix in the MASM `build_felt` procedure. -### 5.6 Roundtrip Guarantee +### 6.6 Roundtrip Guarantee The encoding is a bijection over the set of valid `AccountId` values: for every valid `AccountId`, `from_account_id` followed by `to_account_id` (or the MASM equivalent) @@ -803,7 +971,7 @@ recovers the original. --- -## 6. Faucet Registry +## 7. Faucet Registry The AggLayer bridge connects multiple chains, each with its own native token ecosystem. When tokens move between chains, they need a representation on the destination chain. @@ -819,7 +987,7 @@ Terminology: AggLayer faucet. On EVM chains, each non-native Miden token would be represented by a deployed wrapped ERC20 contract. -A faucet must be registered in the [Bridge Contract](#21-bridge-account-component) before it can participate in bridging. The +A faucet must be registered in the [Bridge Contract](#31-bridge-account-component) before it can participate in bridging. The bridge maintains two registry maps: - **Faucet registry** (`agglayer::bridge::faucet_registry_map`): maps faucet account IDs @@ -830,9 +998,9 @@ bridge maintains two registry maps: correct faucet for a given origin token (see `bridge_config::lookup_faucet_by_token_address`). -Both registries are populated atomically by `bridge_config::register_faucet` during the [`CONFIG_AGG_BRIDGE`](#33-config_agg_bridge) note consumption. +Both registries are populated atomically by `bridge_config::register_faucet` during the [`CONFIG_AGG_BRIDGE`](#43-config_agg_bridge) note consumption. -### 6.1 Bridging-in: Registering non-native faucets on Miden +### 7.1 Bridging-in: Registering non-native faucets on Miden When a new ERC20 token is bridged to Miden for the first time, a corresponding AggLayer faucet account must be created and registered. The faucet serves as the mint/burn @@ -847,7 +1015,7 @@ configuration: - Scale factor: the exponent used to convert between EVM U256 amounts and Field elements on Miden - Metadata hash: `keccak256(abi.encode(name, symbol, decimals))`. This is precomputed by the bridge admin at faucet creation time and is currently not verified onchain (TODO Verify metadata hash onchain ([#2586](https://github.com/0xMiden/protocol/issues/2586))) -Registration is performed via [`CONFIG_AGG_BRIDGE`](#33-config_agg_bridge) notes. The bridge +Registration is performed via [`CONFIG_AGG_BRIDGE`](#43-config_agg_bridge) notes. The bridge operator creates a `CONFIG_AGG_BRIDGE` note containing the faucet's account ID and the origin token address, then sends it to the bridge account. On consumption, the note script calls `bridge_config::register_faucet`, which performs a two-step registration: @@ -860,7 +1028,7 @@ script calls `bridge_config::register_faucet`, which performs a two-step registr The token registry enables the bridge to resolve which Miden-side faucet corresponds to a given origin token address during CLAIM note processing. When the bridge -processes a [`CLAIM`](#32-claim) note, it reads the origin token address from the leaf data and calls +processes a [`CLAIM`](#42-claim) note, it reads the origin token address from the leaf data and calls `bridge_config::lookup_faucet_by_token_address` to find the registered faucet. This lookup hashes the address with Poseidon2 and retrieves the faucet ID from the token registry map. If the token address is not registered, the `CLAIM` note consumption will fail. @@ -869,7 +1037,7 @@ This means that the bridge admin must register the faucet on the Miden side befo The bridge admin is a trusted role, and is the sole entity that can register faucets on the Miden side (due to the caller restriction on [`bridge_config::register_faucet`](#bridge_configregister_faucet)). -### 6.2 Bridging-out: How Miden-native tokens are registered on other chains +### 7.2 Bridging-out: How Miden-native tokens are registered on other chains When an asset is bridged out from Miden, [`bridge_out::bridge_out`](#bridge_outbridge_out) constructs a leaf for the Local Exit Tree. The leaf includes the metadata hash, which the bridge fetches from @@ -889,7 +1057,7 @@ A Miden-native faucet uses the same storage layout and registration flow as a wrapped faucet. The key difference is what values are stored in the conversion metadata: -- `origin_token_address`: the faucet's own `AccountId` as per the [Embedded Format](#52-embedded-format). +- `origin_token_address`: the faucet's own `AccountId` as per the [Embedded Format](#62-embedded-format). - `origin_network`: Miden's network ID as assigned by AggLayer (currently unassigned). - `metadata_hash`: `keccak256(abi.encode(name, symbol, decimals))` - same as for wrapped faucets. diff --git a/crates/miden-agglayer/asm/agglayer/bridge/bridge_config.masm b/crates/miden-agglayer/asm/agglayer/bridge/bridge_config.masm index 7c486135e0..4df7db2aac 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/bridge_config.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/bridge_config.masm @@ -8,41 +8,42 @@ use miden::protocol::native_account # ================================================================================================= const ERR_GER_NOT_FOUND = "GER not found in storage" -const ERR_FAUCET_NOT_REGISTERED="faucet is not registered in the bridge's faucet registry" -const ERR_TOKEN_NOT_REGISTERED="token address is not registered in the bridge's token registry" -const ERR_SENDER_NOT_BRIDGE_ADMIN="note sender is not the bridge admin" -const ERR_SENDER_NOT_GER_MANAGER="note sender is not the global exit root manager" +const ERR_FAUCET_NOT_REGISTERED = "faucet is not registered in the bridge's faucet registry" +const ERR_TOKEN_NOT_REGISTERED = "token address is not registered in the bridge's token registry" +const ERR_SENDER_NOT_BRIDGE_ADMIN = "note sender is not the bridge admin" +const ERR_SENDER_NOT_GER_MANAGER = "note sender is not the global exit root manager" # CONSTANTS # ================================================================================================= # Storage slots -const BRIDGE_ADMIN_SLOT=word("agglayer::bridge::admin_account_id") -const GER_MANAGER_SLOT=word("agglayer::bridge::ger_manager_account_id") -const GER_MAP_STORAGE_SLOT=word("agglayer::bridge::ger_map") -const FAUCET_REGISTRY_MAP_SLOT=word("agglayer::bridge::faucet_registry_map") -const TOKEN_REGISTRY_MAP_SLOT=word("agglayer::bridge::token_registry_map") +const BRIDGE_ADMIN_SLOT = word("agglayer::bridge::admin_account_id") +const GER_MANAGER_SLOT = word("agglayer::bridge::ger_manager_account_id") +const GER_MAP_STORAGE_SLOT = word("agglayer::bridge::ger_map") +const FAUCET_REGISTRY_MAP_SLOT = word("agglayer::bridge::faucet_registry_map") +const TOKEN_REGISTRY_MAP_SLOT = word("agglayer::bridge::token_registry_map") # Flags -const GER_KNOWN_FLAG=1 -const IS_FAUCET_REGISTERED_FLAG=1 +const GER_KNOWN_FLAG = 1 +const IS_FAUCET_REGISTERED_FLAG = 1 # Offset in the local memory of the `hash_token_address` procedure -const TOKEN_ADDR_HASH_PTR=0 +const TOKEN_ADDR_HASH_PTR = 0 # PUBLIC INTERFACE # ================================================================================================= #! Updates the Global Exit Root (GER) in the bridge account storage. #! -#! Computes hash(GER) = poseidon2::merge(GER_LOWER, GER_UPPER) and stores it in a map -#! with value [GER_KNOWN_FLAG, 0, 0, 0] to indicate the GER is known. -#! -#! Panics if the note sender is not the global exit root manager. +#! Computes hash(GER) = poseidon2::merge(GER_LOWER, GER_UPPER) and stores it in a map with value +#! [GER_KNOWN_FLAG, 0, 0, 0] to indicate the GER is known. #! #! Inputs: [GER_LOWER[4], GER_UPPER[4], pad(8)] #! Outputs: [pad(16)] #! +#! Panics if: +#! - the note sender is not the global exit root manager. +#! #! Invocation: call pub proc update_ger # assert the note sender is the global exit root manager. @@ -65,14 +66,15 @@ pub proc update_ger exec.native_account::set_map_item # => [OLD_VALUE, pad(12)] + dropw # => [pad(16)] end #! Asserts that the provided GER is valid (exists in storage). #! -#! Computes hash(GER) = poseidon2::merge(GER_LOWER, GER_UPPER) and looks up the hash in -#! the GER storage map. Panics if the GER has never been stored. +#! Computes hash(GER) = poseidon2::merge(GER_LOWER, GER_UPPER) and looks up the hash in the GER +#! storage map. Panics if the GER has never been stored. #! #! Inputs: [GER_ROOT[8]] #! Outputs: [] @@ -81,7 +83,7 @@ end #! - the GER is not found in storage. #! #! Invocation: exec -pub proc assert_valid_ger +proc assert_valid_ger # compute hash(GER) exec.poseidon2::merge # => [GER_HASH] @@ -104,14 +106,15 @@ end #! #! 1. Writes `KEY -> [1, 0, 0, 0]` into the `faucet_registry` map, where #! `KEY = [0, 0, faucet_id_suffix, faucet_id_prefix]`. -#! 2. Writes `hash(tokenAddress[5]) -> [faucet_id_suffix, faucet_id_prefix, 0, 0]` -#! into the `token_registry` map. -#! -#! Panics if the note sender is not the bridge admin. +#! 2. Writes `hash(tokenAddress[5]) -> [faucet_id_suffix, faucet_id_prefix, 0, 0]` into the +#! `token_registry` map. #! #! Inputs: [origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] #! Outputs: [pad(16)] #! +#! Panics if: +#! - the note sender is not the bridge admin. +#! #! Invocation: call pub proc register_faucet # assert the note sender is the bridge admin. @@ -120,19 +123,24 @@ pub proc register_faucet # Save faucet ID for later use in token_registry dup.6 dup.6 - # => [faucet_id_suffix, faucet_id_prefix, origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] + # => [faucet_id_suffix, faucet_id_prefix, origin_token_addr(5), + # faucet_id_suffix, faucet_id_prefix, pad(9)] # --- 1. Register faucet in faucet_registry --- + # set_map_item expects [slot_id(2), KEY, VALUE] and returns [OLD_VALUE]. # Build KEY = [0, 0, suffix, prefix] and VALUE = [IS_FAUCET_REGISTERED_FLAG, 0, 0, 0] push.0.0.0.IS_FAUCET_REGISTERED_FLAG - # => [IS_FAUCET_REGISTERED_FLAG, 0, 0, 0, faucet_id_suffix, faucet_id_prefix, origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] + # => [IS_FAUCET_REGISTERED_FLAG, 0, 0, 0, + # faucet_id_suffix, faucet_id_prefix, origin_token_addr(5), + # faucet_id_suffix, faucet_id_prefix, pad(9)] - movup.5 movup.5 - # => [faucet_id_suffix, faucet_id_prefix, IS_FAUCET_REGISTERED_FLAG, 0, 0, 0, origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] - - push.0.0 - # => [[0, 0, faucet_id_suffix, faucet_id_prefix], [IS_FAUCET_REGISTERED_FLAG, 0, 0, 0], origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] + movup.5 movup.5 push.0.0 + # => [ + # [0, 0, faucet_id_suffix, faucet_id_prefix], + # [IS_FAUCET_REGISTERED_FLAG, 0, 0, 0], + # origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9) + # ] push.FAUCET_REGISTRY_MAP_SLOT[0..2] exec.native_account::set_map_item @@ -148,10 +156,7 @@ pub proc register_faucet # => [TOKEN_ADDR_HASH, faucet_id_suffix, faucet_id_prefix, pad(10)] # Build VALUE = [0, 0, faucet_id_suffix, faucet_id_prefix] - movup.5 movup.5 - # => [faucet_id_suffix, faucet_id_prefix, TOKEN_ADDR_HASH, pad(10)] - - push.0.0 + movup.5 movup.5 push.0.0 # => [0, 0, faucet_id_suffix, faucet_id_prefix, TOKEN_ADDR_HASH, pad(10)] swapw @@ -167,8 +172,7 @@ end #! Asserts that a faucet is registered in the bridge's faucet registry. #! -#! Looks up the faucet ID in the faucet registry map and asserts the registration -#! flag is set. +#! Looks up the faucet ID in the faucet registry map and asserts the registration flag is set. #! #! Inputs: [faucet_id_suffix, faucet_id_prefix] #! Outputs: [] @@ -177,7 +181,7 @@ end #! - the faucet is not registered in the faucet registry. #! #! Invocation: exec -pub proc assert_faucet_registered +proc assert_faucet_registered # Build KEY = [0, 0, faucet_id_suffix, faucet_id_prefix] push.0.0 # => [0, 0, faucet_id_suffix, faucet_id_prefix] @@ -202,7 +206,7 @@ end #! - the token address is not registered in the token registry. #! #! Invocation: exec -pub proc lookup_faucet_by_token_address +proc lookup_faucet_by_token_address # Hash the token address exec.hash_token_address # => [TOKEN_ADDR_HASH] @@ -213,7 +217,7 @@ pub proc lookup_faucet_by_token_address # Assert the token is registered: faucet_id_prefix is always non-zero for valid account IDs. dup.3 dup.3 push.0.0 - # => [0, 0, faucet_id_suffix, faucet_id_prefix, 0, 0, faucet_id_suffix, faucet_id_prefix] + # => [0, 0, faucet_id_suffix, faucet_id_prefix, 0, 0, faucet_id_suffix, faucet_id_prefix] exec.account_id::is_equal # => [is_id_zero, 0, 0, faucet_id_suffix, faucet_id_prefix] @@ -250,8 +254,8 @@ end #! Asserts that the note sender matches the bridge admin stored in account storage. #! -#! Reads the bridge admin account ID from BRIDGE_ADMIN_SLOT and compares it against -#! the sender of the currently executing note. Panics if they do not match. +#! Reads the bridge admin account ID from BRIDGE_ADMIN_SLOT and compares it against the sender of +#! the currently executing note. #! #! Inputs: [pad(16)] #! Outputs: [pad(16)] @@ -260,9 +264,7 @@ end #! - the note sender does not match the bridge admin account ID. #! #! Invocation: exec -pub proc assert_sender_is_bridge_admin - # => [pad(16)] - +proc assert_sender_is_bridge_admin push.BRIDGE_ADMIN_SLOT[0..2] exec.active_account::get_item # => [0, 0, admin_suffix, admin_prefix, pad(16)] @@ -280,8 +282,8 @@ end #! Asserts that the note sender matches the global exit root manager stored in account storage. #! -#! Reads the GER manager account ID from GER_MANAGER_SLOT and compares it against -#! the sender of the currently executing note. Panics if they do not match. +#! Reads the GER manager account ID from GER_MANAGER_SLOT and compares it against the sender of the +#! currently executing note. #! #! Inputs: [pad(16)] #! Outputs: [pad(16)] @@ -290,9 +292,7 @@ end #! - the note sender does not match the GER manager account ID. #! #! Invocation: exec -pub proc assert_sender_is_ger_manager - # => [pad(16)] - +proc assert_sender_is_ger_manager push.GER_MANAGER_SLOT[0..2] exec.active_account::get_item # => [0, 0, mgr_suffix, mgr_prefix, pad(16)] diff --git a/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm b/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm index 6ebe17236a..f101c90b40 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm @@ -43,7 +43,7 @@ const IS_CLAIMED_FLAG = [1, 0, 0, 0] # ------------------------------------------------------------------------------------------------- # The slot in this component's storage layout where claim nullifiers are stored. -# Map entries: RPO(leaf_index, source_bridge_network) => [1, 0, 0, 0] +# Map entries: Poseidon2(leaf_index, source_bridge_network) => [1, 0, 0, 0] const CLAIM_NULLIFIERS_SLOT = word("agglayer::bridge::claim_nullifiers") # Storage slot constants for the CGI (claimed global index) chain hash. @@ -58,10 +58,16 @@ const CGI_CHAIN_HASH_HI_SLOT_NAME = word("agglayer::bridge::cgi_chain_hash_hi") const CLAIM_PROOF_DATA_WORD_LEN = 134 const CLAIM_LEAF_DATA_WORD_LEN = 8 -# MINT note storage layout (public mode, 18 items): -# [0]: tag, [1]: amount, [2]: attachment_kind, [3]: attachment_scheme, -# [4-7]: ATTACHMENT, [8-11]: P2ID_SCRIPT_ROOT, [12-15]: SERIAL_NUM, -# [16]: account_id_suffix, [17]: account_id_prefix +# MINT note storage layout (public mode, 18 felts total): +# - tag [0] : 1 felt +# - amount [1] : 1 felt +# - attachment_kind [2] : 1 felt +# - attachment_scheme [3] : 1 felt +# - ATTACHMENT [4..7] : 4 felts +# - P2ID_SCRIPT_ROOT [8..11] : 4 felts +# - SERIAL_NUM [12..15] : 4 felts +# - account_id_suffix [16] : 1 felt +# - account_id_prefix [17] : 1 felt const MINT_NOTE_NUM_STORAGE_ITEMS = 18 # P2ID output note constants @@ -153,11 +159,11 @@ const CLAIM_DEST_ID_SUFFIX_LOCAL = 1 # PUBLIC INTERFACE # ================================================================================================= -#! Validates a claim against the AggLayer bridge and creates a MINT note for the aggfaucet. +#! Validates a claim against the AggLayer bridge and creates a MINT note for the AggLayer faucet. #! #! This procedure is called by the CLAIM note script. It validates the Merkle proof and then #! looks up the faucet account ID from the token registry using the origin token address from -#! the leaf data, and creates a MINT note targeting the aggfaucet. +#! the leaf data, and creates a MINT note targeting the AggLayer Faucet. #! #! The MINT note uses the standard MINT note pattern (public mode) with 18 storage items. #! See `write_mint_note_storage` for the full storage layout. @@ -229,7 +235,7 @@ pub proc claim exec.verify_claim_amount # => [faucet_id_suffix, faucet_id_prefix, pad(16)] - # Build MINT output note targeting the aggfaucet + # Build MINT output note targeting the AggLayer faucet loc_load.CLAIM_DEST_ID_PREFIX_LOCAL loc_load.CLAIM_DEST_ID_SUFFIX_LOCAL # => [destination_id_suffix, destination_id_prefix, faucet_id_suffix, faucet_id_prefix, pad(16)] @@ -350,12 +356,13 @@ pub proc process_global_index_rollup repeat.5 assertz.err=ERR_LEADING_BITS_NON_ZERO end + # => [mainnet_flag_le, rollup_index_le, leaf_index_le] # the next element is the mainnet flag (LE-packed u32) # for a rollup deposit it must be exactly 0; zero is byte-order-independent, # so no swap is needed before asserting - # => [mainnet_flag_le, rollup_index_le, leaf_index_le] assertz.err=ERR_BRIDGE_NOT_ROLLUP + # => [rollup_index_le, leaf_index_le] # byte-swap rollup_index from LE to BE exec.utils::swap_u32_bytes @@ -368,8 +375,8 @@ end #! Computes the Global Exit Tree (GET) root from the mainnet and rollup exit roots. #! -#! The mainnet exit root is expected at `exit_roots_ptr` and -#! the rollup exit root is expected at `exit_roots_ptr + 8`. +#! The mainnet exit root is expected at `exit_roots_ptr` and the rollup exit root is expected at +#! `exit_roots_ptr + 8`. #! #! Inputs: [exit_roots_ptr] #! Outputs: [GER_ROOT[8]] @@ -378,6 +385,7 @@ end pub proc compute_ger(exit_roots_ptr: MemoryAddress) -> DoubleWord push.64 swap # => [exit_roots_ptr, len_bytes] + exec.keccak256::hash_bytes # => [GER_ROOT[8]] end @@ -419,14 +427,15 @@ pub proc verify_merkle_proof( movdn.8 exec.word::eq and # => [verification_flag] end -#! Verifies that the faucet_mint_amount matches the raw U256 amount from the leaf data, -#! scaled down by the faucet's scale factor. + +#! Verifies that the faucet_mint_amount matches the raw U256 amount from the leaf data, scaled down +#! by the faucet's scale factor. #! #! This procedure: #! 1. Performs an FPI call to the faucet's `get_scale` procedure to retrieve the scale factor. #! 2. Loads the raw U256 amount from the leaf data in memory. -#! 3. Calls `verify_u256_to_native_amount_conversion` to assert that: -#! faucet_mint_amount == floor(raw_amount / 10^scale) +#! 3. Calls `verify_u256_to_native_amount_conversion` to assert that +#! `faucet_mint_amount == floor(raw_amount / 10^scale)`. #! #! Inputs: [faucet_id_suffix, faucet_id_prefix] #! Outputs: [] @@ -522,16 +531,20 @@ end #! Invocation: exec proc verify_leaf movupw.2 + # => [PROOF_DATA_KEY, LEAF_VALUE[8]] + # load proof data from the advice map into memory adv.push_mapval # => [PROOF_DATA_KEY, LEAF_VALUE[8]] push.SMT_PROOF_LOCAL_EXIT_ROOT_PTR push.CLAIM_PROOF_DATA_WORD_LEN exec.mem::pipe_preimage_to_memory drop + # => [LEAF_VALUE[8]] # 1. compute GER from mainnet + rollup exit roots push.EXIT_ROOTS_PTR # => [exit_roots_ptr, LEAF_VALUE[8]] + exec.compute_ger # => [GER[8], LEAF_VALUE[8]] @@ -548,8 +561,8 @@ proc verify_leaf # [gi0, gi1, gi2, gi3, gi4, mainnet_flag_le, rollup_index_le, leaf_index_le] # gi0 is on top (position 0). The mainnet flag is at stack position 5. - # Duplicate the mainnet flag element, byte-swap from LE to BE, - # assert it is a valid boolean (0 or 1), then use it to branch. + # Duplicate the mainnet flag element, byte-swap from LE to BE, assert it is a valid boolean + # (0 or 1), then use it to branch. dup.5 exec.utils::swap_u32_bytes dup # => [mainnet_flag, mainnet_flag, GLOBAL_INDEX[8], LEAF_VALUE[8]] @@ -558,6 +571,7 @@ proc verify_leaf if.true # ==================== MAINNET DEPOSIT ==================== + exec.process_global_index_mainnet # => [leaf_index, LEAF_VALUE[8]] @@ -585,8 +599,9 @@ proc verify_leaf # => [] else # ==================== ROLLUP DEPOSIT ==================== - # mainnet_flag = 0; extract rollup_index and leaf_index via helper, - # then do two-level verification + + # mainnet_flag = 0; extract rollup_index and leaf_index via helper, then do two-level + # verification exec.process_global_index_rollup # => [leaf_index, rollup_index, LEAF_VALUE[8]] @@ -616,7 +631,6 @@ proc verify_leaf # => [LOCAL_EXIT_ROOT_LO, LOCAL_EXIT_ROOT_HI, rollup_index, rollup_exit_root_ptr] push.SMT_PROOF_ROLLUP_EXIT_ROOT_PTR movdn.8 - # => [LOCAL_EXIT_ROOT[8], smt_proof_rollup_ptr, rollup_index, rollup_exit_root_ptr] exec.verify_merkle_proof @@ -644,8 +658,8 @@ proc verify_leaf # => [] end -#! Computes the claim nullifier as RPO(leaf_index, source_bridge_network), then checks -#! that the claim has not been spent and marks it as spent. +#! Computes the claim nullifier as Poseidon2(leaf_index, source_bridge_network), then checks that +#! the claim has not been spent and marks it as spent. #! #! This mimics the Solidity `_setAndCheckClaimed(leafIndex, sourceBridgeNetwork)` function. #! See: https://github.com/agglayer/agglayer-contracts/blob/60d06fc3224792ce55dc2690d66b6719a73398e7/contracts/v2/PolygonZkEVMBridgeV2.sol#L987 @@ -676,10 +690,10 @@ proc set_and_check_claimed # => [] end -#! Checks that the CLAIM note has not already been spent, and marks it as spent -#! by storing [1, 0, 0, 0] in the CLAIM_NULLIFIERS_SLOT map. +#! Checks that the CLAIM note has not already been spent, and marks it as spent by storing +#! [1, 0, 0, 0] in the CLAIM_NULLIFIERS_SLOT map. #! -#! The nullifier is computed as RPO(leaf_index, source_bridge_network), which uniquely +#! The nullifier is computed as Poseidon2(leaf_index, source_bridge_network), which uniquely #! identifies a claim in the Global Exit Root (GER) as per the AggLayer protocol. #! #! Inputs: [NULLIFIER] @@ -713,10 +727,11 @@ proc claim_batch_pipe_double_words # 1) Verify PROOF_DATA_KEY mem_storew_be.CLAIM_PROOF_DATA_KEY_MEM_ADDR adv.push_mapval - # => [PROOF_DATA_KEY] + # => [PROOF_DATA_KEY, LEAF_DATA_KEY] push.CLAIM_PROOF_DATA_START_PTR push.CLAIM_PROOF_DATA_WORD_LEN exec.mem::pipe_double_words_preimage_to_memory drop + # => [LEAF_DATA_KEY] # 2) Verify LEAF_DATA_KEY mem_storew_be.CLAIM_LEAF_DATA_KEY_MEM_ADDR @@ -725,6 +740,7 @@ proc claim_batch_pipe_double_words push.CLAIM_LEAF_DATA_START_PTR push.CLAIM_LEAF_DATA_WORD_LEN exec.mem::pipe_double_words_preimage_to_memory drop + # => [] end #! Extracts the destination account ID as address[5] from memory. @@ -744,8 +760,12 @@ proc load_destination_address # => [address[5]] end -# Inputs: [] -# Outputs: [U256[0], U256[1]] +#! Loads the claim note asset amount onto the stack from memory. +#! +#! Inputs: [] +#! Outputs: [U256_LO, U256_HI] +#! +#! Invocation: exec proc load_raw_claim_amount mem_load.OUTPUT_NOTE_ASSET_AMOUNT_MEM_ADDR_7 mem_load.OUTPUT_NOTE_ASSET_AMOUNT_MEM_ADDR_6 @@ -755,6 +775,7 @@ proc load_raw_claim_amount mem_load.OUTPUT_NOTE_ASSET_AMOUNT_MEM_ADDR_2 mem_load.OUTPUT_NOTE_ASSET_AMOUNT_MEM_ADDR_1 mem_load.OUTPUT_NOTE_ASSET_AMOUNT_MEM_ADDR_0 + # => [U256_LO, U256_HI] end #! Reads the origin token address (5 felts) from the leaf data in memory. @@ -772,10 +793,10 @@ proc load_origin_token_address # => [origin_token_addr(5)] end -#! Builds a PUBLIC MINT output note targeting the aggfaucet. +#! Builds a PUBLIC MINT output note targeting the AggLayer Faucet. #! -#! The MINT note uses public mode (18 storage items) so the AggFaucet creates -#! a PUBLIC P2ID note on consumption. This procedure orchestrates three steps: +#! The MINT note uses public mode (18 storage items) so the AggLayer Faucet creates a PUBLIC P2ID +#! note on consumption. This procedure orchestrates three steps: #! 1. Write all 18 MINT note storage items to global memory. #! 2. Build the MINT note recipient digest from the storage. #! 3. Create the output note, and set the attachment. @@ -787,11 +808,11 @@ end proc build_mint_output_note # Step 1: Write all 18 MINT note storage items to global memory exec.write_mint_note_storage - # => [faucet_id_prefix, faucet_id_suffix] + # => [faucet_id_suffix, faucet_id_prefix] # Step 2: Build the MINT note recipient digest exec.build_mint_recipient - # => [MINT_RECIPIENT, faucet_id_prefix, faucet_id_suffix] + # => [MINT_RECIPIENT, faucet_id_suffix, faucet_id_prefix] # Step 3: Create the output note and set the faucet attachment exec.create_mint_note_with_attachment @@ -904,40 +925,38 @@ proc build_mint_recipient # => [MINT_RECIPIENT] end - - #! Creates the MINT output note and sets the NetworkAccountTarget attachment on it. #! -#! Creates a public output note with no assets, and sets the attachment so only the -#! target faucet can consume the note. +#! Creates a public output note with no assets, and sets the attachment so only the target faucet +#! can consume the note. #! -#! Inputs: [MINT_RECIPIENT, faucet_id_prefix, faucet_id_suffix] +#! Inputs: [MINT_RECIPIENT, faucet_id_suffix, faucet_id_prefix] #! Outputs: [] #! #! Invocation: exec proc create_mint_note_with_attachment # Create the MINT output note targeting the faucet push.OUTPUT_NOTE_TYPE_PUBLIC - # => [note_type, MINT_RECIPIENT, faucet_id_prefix, faucet_id_suffix] + # => [note_type, MINT_RECIPIENT, faucet_id_suffix, faucet_id_prefix] # Set tag to DEFAULT push.DEFAULT_TAG - # => [note_type, MINT_RECIPIENT, faucet_id_prefix, faucet_id_suffix] + # => [tag, note_type, MINT_RECIPIENT, faucet_id_suffix, faucet_id_prefix] # Create the output note (no assets - MINT notes carry no assets) exec.output_note::create - # => [note_idx, faucet_id_prefix, faucet_id_suffix] + # => [note_idx, faucet_id_suffix, faucet_id_prefix] movdn.2 - # => [faucet_id_prefix, faucet_id_suffix, note_idx] + # => [faucet_id_suffix, faucet_id_prefix, note_idx] # Set the attachment on the MINT note to target the faucet account # NetworkAccountTarget attachment: targets the faucet so only it can consume the note - # network_account_target::new expects [prefix, suffix, exec_hint] + # network_account_target::new expects [suffix, prefix, exec_hint] # and returns [attachment_scheme, attachment_kind, ATTACHMENT] push.ALWAYS # exec_hint = ALWAYS movdn.2 - # => [faucet_id_prefix, faucet_id_suffix, exec_hint, note_idx] + # => [faucet_id_suffix, faucet_id_prefix, exec_hint, note_idx] exec.network_account_target::new # => [attachment_scheme, attachment_kind, ATTACHMENT, note_idx] @@ -1093,4 +1112,4 @@ proc store_cgi_chain_hash push.CGI_CHAIN_HASH_HI_SLOT_NAME[0..2] exec.native_account::set_item dropw # => [] -end \ No newline at end of file +end diff --git a/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm b/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm index c94b00a62b..824ad3da19 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm @@ -10,15 +10,13 @@ use miden::standards::note_tag::DEFAULT_TAG use miden::standards::note::execution_hint::ALWAYS use miden::protocol::types::MemoryAddress use miden::protocol::output_note -use miden::core::crypto::hashes::keccak256 use miden::core::crypto::hashes::poseidon2 -use miden::core::word use agglayer::common::utils use agglayer::faucet -> agglayer_faucet use agglayer::bridge::bridge_config use agglayer::bridge::leaf_utils use agglayer::bridge::merkle_tree_frontier -use agglayer::common::utils::EthereumAddressFormat +use agglayer::common::eth_address::EthereumAddressFormat # CONSTANTS # ================================================================================================= @@ -176,7 +174,7 @@ pub proc bridge_out exec.asset::load swapw dropw # => [ASSET_KEY, PROC_MAST_ROOT, pad(16)] - # ASSET layout: [0, 0, faucet_id_suffix, faucet_id_prefix] + # ASSET_KEY layout: [0, 0, faucet_id_suffix, faucet_id_prefix] # Extract faucet ID, drop padding and amount drop drop @@ -188,6 +186,7 @@ pub proc bridge_out push.LEAF_DATA_START_PTR push.METADATA_HASH_OFFSET add movdn.8 # => [METADATA_HASH_LO, METADATA_HASH_HI, metadata_hash_ptr, pad(8)] + exec.utils::mem_store_double_word_unaligned # => [pad(16)] @@ -215,6 +214,7 @@ pub proc bridge_out locaddr.BRIDGE_OUT_BURN_ASSET_LOC exec.asset::load # => [ASSET_KEY, ASSET_VALUE, pad(16)] + exec.create_burn_note # => [pad(16)] end @@ -222,19 +222,19 @@ end # HELPER PROCEDURES # ================================================================================================= -#! Validates that a faucet is registered in the bridge's faucet registry, then performs -#! an FPI call to the faucet's `asset_to_origin_asset` procedure to obtain the scaled -#! amount, origin token address, and origin network. +#! Validates that a faucet is registered in the bridge's faucet registry, then performs an FPI call +#! to the faucet's `asset_to_origin_asset` procedure to obtain the scaled amount, origin token +#! address, and origin network. #! #! Inputs: [ASSET_KEY, ASSET_VALUE] -#! Outputs: [AMOUNT_U256[0](4), AMOUNT_U256[1](4), origin_addr(5), origin_network] +#! Outputs: [AMOUNT_U256_LO, AMOUNT_U256_HI, origin_addr(5), origin_network] #! #! Where: #! - ASSET_KEY is the vault key of the asset to be bridged out. #! - ASSET_VALUE is the value of the asset to be bridged out. -#! - AMOUNT_U256: scaled amount as 8 u32 limbs (little-endian) -#! - origin_addr: origin token address (5 u32 felts) -#! - origin_network: origin network identifier +#! - AMOUNT_U256: scaled amount as 8 u32 limbs (little-endian). +#! - origin_addr: origin token address (5 u32 felts). +#! - origin_network: origin network identifier. #! #! Panics if: #! - The faucet is not registered in the faucet registry. @@ -248,9 +248,8 @@ proc convert_asset padw padw swapdw end # => [ASSET_KEY, ASSET_VALUE, pad(16)] - swapw - exec.asset::fungible_value_into_amount - movdn.4 + + swapw exec.asset::fungible_value_into_amount movdn.4 # => [ASSET_KEY, amount, pad(16)] exec.asset::key_into_faucet_id @@ -270,13 +269,13 @@ proc convert_asset # => [faucet_id_suffix, faucet_id_prefix, PROC_MAST_ROOT, amount, pad(15), pad(1)] exec.tx::execute_foreign_procedure - # => [AMOUNT_U256[0](4), AMOUNT_U256[1](4), origin_addr(5), origin_network, pad(2), pad(1)] + # => [AMOUNT_U256_LO, AMOUNT_U256_HI, origin_addr(5), origin_network, pad(2), pad(1)] # drop the 3 trailing padding elements repeat.3 movup.14 drop end - # => [AMOUNT_U256[0](4), AMOUNT_U256[1](4), origin_addr(5), origin_network] + # => [AMOUNT_U256_LO, AMOUNT_U256_HI, origin_addr(5), origin_network] end #! Computes the leaf value from the leaf data in memory and appends it to the Local Exit Tree. @@ -324,8 +323,8 @@ end #! Loads the LET (Local Exit Tree) frontier from account storage into memory. #! -#! The num_leaves is read from its dedicated value slot, and the 32 frontier entries are read -#! from the LET map slot (double-word array, indices 0..31). The data is placed into memory at +#! The num_leaves is read from its dedicated value slot, and the 32 frontier entries are read from +#! the LET map slot (double-word array, indices 0..31). The data is placed into memory at #! LET_FRONTIER_MEM_PTR, matching the layout expected by append_and_update_frontier: #! [num_leaves, 0, 0, 0, [[FRONTIER_NODE_LO, FRONTIER_NODE_HI]; 32]] #! @@ -394,6 +393,7 @@ proc save_let_root_and_num_leaves # 3. Save new_leaf_count to its value slot as [new_leaf_count, 0, 0, 0] push.0.0.0 movup.3 # => [new_leaf_count, 0, 0, 0] + push.LET_NUM_LEAVES_SLOT[0..2] exec.native_account::set_item dropw @@ -455,6 +455,7 @@ proc write_address_to_memory(mem_ptr: MemoryAddress, address: EthereumAddressFor # => [mem_ptr+4, address(1)] mem_store + # => [] end #! Computes the SERIAL_NUM of the outputted BURN note. @@ -539,8 +540,7 @@ proc create_burn_note # => [note_idx, pad(15)] # duplicate note_idx: one for set_attachment, one for add_asset - dup - swapw loc_loadw_le.ATTACHMENT_LOC + dup swapw loc_loadw_le.ATTACHMENT_LOC # => [NOTE_ATTACHMENT, note_idx, note_idx, pad(11)] loc_load.ATTACHMENT_KIND_LOC diff --git a/crates/miden-agglayer/asm/agglayer/bridge/leaf_utils.masm b/crates/miden-agglayer/asm/agglayer/bridge/leaf_utils.masm index f9d697c66d..2ef1cbf4a2 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/leaf_utils.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/leaf_utils.masm @@ -20,13 +20,14 @@ const PACKED_DATA_NUM_ELEMENTS = 29 #! Given a memory address where the unpacked leaf data starts, packs the leaf data in-place, and #! computes the leaf value by hashing the packed bytes. #! -#! Inputs: [LEAF_DATA_START_PTR] +#! Inputs: [leaf_data_start_ptr] #! Outputs: [LEAF_VALUE[8]] #! #! Invocation: exec pub proc compute_leaf_value(leaf_data_start_ptr: MemoryAddress) -> DoubleWord dup # => [leaf_data_start_ptr, leaf_data_start_ptr] + exec.pack_leaf_data # => [leaf_data_start_ptr] @@ -39,17 +40,17 @@ end #! Packs the raw leaf data by shifting left 3 bytes to match Solidity's abi.encodePacked format. #! -#! The raw data has leafType occupying 4 bytes (as a u32 felt) but Solidity's abi.encodePacked -#! only uses 1 byte for uint8 leafType. This procedure shifts all data left by 3 bytes so that: +#! The raw data has leafType occupying 4 bytes (as a u32 felt) but Solidity's abi.encodePacked only +#! uses 1 byte for uint8 leafType. This procedure shifts all data left by 3 bytes so that: #! - Byte 0: leafType (1 byte) #! - Bytes 1-4: originNetwork (4 bytes) #! - etc. #! #! The Keccak precompile expects u32 values packed in little-endian byte order. -#! For each packed element, we drop the leading 3 bytes and rebuild the u32 so that -#! bytes [b0, b1, b2, b3] map to u32::from_le_bytes([b0, b1, b2, b3]). -#! With little-endian input limbs, the first byte comes from the MSB of `curr` and -#! the next three bytes come from the LSBs of `next`: +#! For each packed element, we drop the leading 3 bytes and rebuild the u32 so that bytes +#! [b0, b1, b2, b3] map to u32::from_le_bytes([b0, b1, b2, b3]). +#! With little-endian input limbs, the first byte comes from the MSB of `curr` and the next three +#! bytes come from the LSBs of `next`: #! packed = ((curr >> 24) & 0xFF) #! | (next & 0xFF) << 8 #! | ((next >> 8) & 0xFF) << 16 @@ -57,6 +58,7 @@ end #! #! To help visualize the packing process, consider that each field element represents a 4-byte #! value [u8; 4] (LE). +#! #! Memory before is: #! ptr+0: 1 felt: [a, b, c, d] #! ptr+1: 1 felt: [e, f, g, h] @@ -100,11 +102,11 @@ pub proc pack_leaf_data(leaf_data_start_ptr: MemoryAddress) # compute source address for next element (counter + 1) dup.2 loc_load.PACKING_START_PTR_LOCAL add add.1 - # => [next_src_addr, curr_lsb, curr_elem, counter] + # => [next_src_addr, curr_msb, curr_elem, counter] # load next element mem_load - # => [next_elem, curr_lsb, curr_elem, counter] + # => [next_elem, curr_msb, curr_elem, counter] # keep curr_msb on top for combination swap diff --git a/crates/miden-agglayer/asm/agglayer/bridge/merkle_tree_frontier.masm b/crates/miden-agglayer/asm/agglayer/bridge/merkle_tree_frontier.masm index ed613d1bf9..26add7c242 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/merkle_tree_frontier.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/merkle_tree_frontier.masm @@ -306,27 +306,3 @@ pub proc append_and_update_frontier padw loc_loadw_le.CUR_HASH_LO_LOCAL # => [NEW_ROOT_LO, NEW_ROOT_HI, new_leaf_count] end - -# HELPER PROCEDURES -# ================================================================================================= - -#! Stores the canonical zeros from the advice map to the memory at the provided address. -#! -#! Inputs: [zeros_ptr] -#! Outputs: [] -proc store_canonical_zeros - # prepare the stack for the adv_pipe instruction - padw padw padw - # => [PAD, PAD, PAD, zeros_ptr] - - # TODO: use constant once constant usage will be implemented - repeat.32 - adv_pipe - # => [ZERO_I_L, ZERO_I_R, PAD, zeros_ptr+8] - end - # => [ZERO_31_L, ZERO_31_R, PAD, zeros_ptr+256] - - # clean the stack - dropw dropw dropw drop - # => [] -end diff --git a/crates/miden-agglayer/asm/agglayer/common/asset_conversion.masm b/crates/miden-agglayer/asm/agglayer/common/asset_conversion.masm index 298d85eccc..832f1a770b 100644 --- a/crates/miden-agglayer/asm/agglayer/common/asset_conversion.masm +++ b/crates/miden-agglayer/asm/agglayer/common/asset_conversion.masm @@ -72,12 +72,12 @@ end #! returns the result as 8 u32 limbs in little-endian order (U256 format). #! #! Inputs: [amount, target_scale] -#! Outputs: [[RESULT_U256[0], RESULT_U256[1]]] +#! Outputs: [[RESULT_U256_LO, RESULT_U256_HI]] #! #! Where: #! - amount: The asset amount to be converted (range: 0 to 2^63 - 2^31) #! - target_scale: Exponent for scaling factor (10^target_scale) -#! - [RESULT_U256[0], RESULT_U256[1]]: U256 value as 8 u32 limbs in little-endian order +#! - [RESULT_U256_LO, RESULT_U256_HI]: U256 value as 8 u32 limbs in little-endian order #! (least significant limb at the top of the stack, each limb stored in little-endian format) #! #! Examples: @@ -106,7 +106,7 @@ pub proc scale_native_amount_to_u256 # convert to U256 & little endian padw swapw - # => [RESULT_U256[0], RESULT_U256[1]] + # => [RESULT_U256_LO, RESULT_U256_HI] end #! Reverse the limbs and change the byte endianness of the result. @@ -123,7 +123,7 @@ pub proc reverse_limbs_and_change_byte_endianness movdn.7 end - # => [RESULT_U256[0], RESULT_U256[1]] + # => [RESULT_U256_LO, RESULT_U256_HI] end #! Subtract two 128-bit integers (little-endian u32 limbs) and assert no underflow. diff --git a/crates/miden-agglayer/asm/agglayer/common/eth_address.masm b/crates/miden-agglayer/asm/agglayer/common/eth_address.masm index 5a038f07fe..b9cc4a9c33 100644 --- a/crates/miden-agglayer/asm/agglayer/common/eth_address.masm +++ b/crates/miden-agglayer/asm/agglayer/common/eth_address.masm @@ -2,6 +2,11 @@ use agglayer::common::utils use miden::core::crypto::hashes::keccak256 use miden::core::word +# TYPE ALIASES +# ================================================================================================= + +pub type EthereumAddressFormat = struct { a: felt, b: felt, c: felt, d: felt, e: felt } + # ERRORS # ================================================================================================= diff --git a/crates/miden-agglayer/asm/agglayer/common/utils.masm b/crates/miden-agglayer/asm/agglayer/common/utils.masm index ac4e5fbbae..45bed28405 100644 --- a/crates/miden-agglayer/asm/agglayer/common/utils.masm +++ b/crates/miden-agglayer/asm/agglayer/common/utils.masm @@ -3,11 +3,6 @@ use miden::protocol::types::DoubleWord use miden::protocol::types::MemoryAddress -# TYPE ALIASES -# ================================================================================================= - -pub type EthereumAddressFormat = struct { a: felt, b: felt, c: felt, d: felt, e: felt } - # BYTE MANIPULATION # ================================================================================================= @@ -15,7 +10,7 @@ pub type EthereumAddressFormat = struct { a: felt, b: felt, c: felt, d: felt, e: #! #! Inputs: [value] #! Outputs: [swapped] -pub proc swap_u32_bytes +proc swap_u32_bytes # part0 = (value & 0xFF) << 24 dup u32and.0xFF u32shl.24 # => [part0, value] @@ -43,7 +38,9 @@ end #! #! Inputs: [WORD_1, WORD_2, ptr] #! Outputs: [WORD_1, WORD_2, ptr] -pub proc mem_store_double_word( +#! +#! Total cycles: 28 +proc mem_store_double_word( double_word_to_store: DoubleWord, mem_ptr: MemoryAddress ) -> (DoubleWord, MemoryAddress) @@ -58,7 +55,7 @@ end #! #! Inputs: [WORD_1, WORD_2, ptr] #! Outputs: [] -pub proc mem_store_double_word_unaligned( +proc mem_store_double_word_unaligned( double_word_to_store: DoubleWord, mem_ptr: MemoryAddress ) @@ -86,7 +83,7 @@ end #! #! Inputs: [ptr] #! Outputs: [WORD_1, WORD_2] -pub proc mem_load_double_word(mem_ptr: MemoryAddress) -> DoubleWord +proc mem_load_double_word(mem_ptr: MemoryAddress) -> DoubleWord padw dup.4 add.4 mem_loadw_le # => [WORD_2, ptr] diff --git a/crates/miden-agglayer/asm/agglayer/faucet/mod.masm b/crates/miden-agglayer/asm/agglayer/faucet/mod.masm index 0b9c00db78..408c0e93e1 100644 --- a/crates/miden-agglayer/asm/agglayer/faucet/mod.masm +++ b/crates/miden-agglayer/asm/agglayer/faucet/mod.masm @@ -1,11 +1,7 @@ use miden::core::sys use agglayer::common::utils use agglayer::common::asset_conversion -use agglayer::common::eth_address use miden::protocol::active_account -use miden::protocol::active_note -use miden::standards::faucets -use miden::standards::faucets::network_fungible # CONSTANTS # ================================================================================================= @@ -26,8 +22,7 @@ const METADATA_HASH_HI_SLOT = word("agglayer::faucet::metadata_hash_hi") #! Returns the origin token address (5 felts) from faucet conversion storage. #! -#! Reads conversion_info_1 (first 4 felts of address) and conversion_info_2 (5th felt) -#! from storage. +#! Reads conversion_info_1 (first 4 felts of address) and conversion_info_2 (5th felt) from storage. #! #! Inputs: [] #! Outputs: [addr0, addr1, addr2, addr3, addr4] @@ -80,8 +75,8 @@ end #! Returns the pre-computed metadata hash (8 u32 felts) from faucet storage. #! -#! The metadata hash is `keccak256(abi.encode(name, symbol, decimals))` and is stored -#! across two value slots (lo and hi, 4 felts each). +#! The metadata hash is `keccak256(abi.encode(name, symbol, decimals))` and is stored across two +#! value slots (lo and hi, 4 felts each). #! #! Inputs: [pad(16)] #! Outputs: [METADATA_HASH_LO(4), METADATA_HASH_HI(4), pad(8)] @@ -121,15 +116,15 @@ pub proc get_scale # => [scale, pad(15)] end -#! Converts a native Miden asset amount to origin asset data using the stored -#! conversion metadata (origin_token_address, origin_network, and scale). +#! Converts a native Miden asset amount to origin asset data using the stored conversion metadata +#! (origin_token_address, origin_network, and scale). #! #! This procedure is intended to be called via FPI from the bridge account. -#! It reads the faucet's conversion metadata from storage, scales the native amount -#! to U256 format, and returns the result along with origin token address and network. +#! It reads the faucet's conversion metadata from storage, scales the native amount to U256 format, +#! and returns the result along with origin token address and network. #! #! Inputs: [amount, pad(15)] -#! Outputs: [AMOUNT_U256[0], AMOUNT_U256[1], addr0, addr1, addr2, addr3, addr4, origin_network, pad(2)] +#! Outputs: [AMOUNT_U256_LO, AMOUNT_U256_HI, addr0, addr1, addr2, addr3, addr4, origin_network, pad(2)] #! #! Where: #! - amount: The native Miden asset amount @@ -142,9 +137,7 @@ pub proc asset_to_origin_asset # => [amount, pad(15)] # Step 1: Get scale from storage - exec.get_scale_inner - # => [scale, amount, pad(15)] - swap + exec.get_scale_inner swap # => [amount, scale, pad(15)] # Step 2: Scale amount to U256 @@ -170,6 +163,7 @@ pub proc asset_to_origin_asset # => [U256_LO, U256_HI, addr0, addr1, addr2, addr3, addr4, origin_network, pad(15)] exec.sys::truncate_stack + # => [U256_LO, U256_HI, addr0, addr1, addr2, addr3, addr4, origin_network, pad(2)] end #! Burns the fungible asset from the active note. @@ -190,7 +184,7 @@ end #! Invocation: call pub use ::miden::standards::faucets::basic_fungible::burn -#! Re-export the network fungible faucet's mint_and_send procedure. +#! Re-export the network fungible faucet's `mint_and_send` procedure. #! #! See `miden::standards::faucets::network_fungible::mint_and_send` for more details. #! diff --git a/crates/miden-agglayer/asm/components/bridge.masm b/crates/miden-agglayer/asm/components/bridge.masm index 15f10fd4b6..4c38d5a019 100644 --- a/crates/miden-agglayer/asm/components/bridge.masm +++ b/crates/miden-agglayer/asm/components/bridge.masm @@ -1,7 +1,12 @@ # The MASM code of the AggLayer Bridge Account Component. # -# This is a thin wrapper that re-exports bridge-related procedures from the -# agglayer library. +# This is a thin wrapper that re-exports bridge-related procedures from the agglayer library. +# +# The bridge exposes: +# - `register_faucet` from the bridge_config module +# - `update_ger` from the bridge_config module +# - `claim` for bridge-in +# - `bridge_out` for bridge-out pub use ::agglayer::bridge::bridge_config::register_faucet pub use ::agglayer::bridge::bridge_config::update_ger diff --git a/crates/miden-agglayer/asm/components/faucet.masm b/crates/miden-agglayer/asm/components/faucet.masm index ffa33f399e..71927c63d9 100644 --- a/crates/miden-agglayer/asm/components/faucet.masm +++ b/crates/miden-agglayer/asm/components/faucet.masm @@ -1,8 +1,10 @@ # The MASM code of the AggLayer Faucet Account Component. # -# This is a thin wrapper that re-exports faucet-related procedures from the -# agglayer library. The faucet exposes: -# - `mint_and_send` from the network fungible faucet (for MINT note consumption, with owner verification) +# This is a thin wrapper that re-exports faucet-related procedures from the agglayer library. +# +# The faucet exposes: +# - `mint_and_send` from the network fungible faucet (for MINT note consumption, with owner +# verification) # - `asset_to_origin_asset` for bridge-out FPI # - `get_metadata_hash` for bridge-out FPI (metadata hash retrieval) # - `get_scale` for bridge-in FPI (amount verification) diff --git a/crates/miden-agglayer/asm/note_scripts/B2AGG.masm b/crates/miden-agglayer/asm/note_scripts/B2AGG.masm index bc5ee0931b..0ae42e52e8 100644 --- a/crates/miden-agglayer/asm/note_scripts/B2AGG.masm +++ b/crates/miden-agglayer/asm/note_scripts/B2AGG.masm @@ -3,19 +3,17 @@ use miden::protocol::account_id use miden::protocol::active_account use miden::protocol::active_note use miden::protocol::asset -use miden::protocol::asset::ASSET_VALUE_MEMORY_OFFSET -use miden::protocol::note use miden::standards::attachments::network_account_target use miden::standards::wallets::basic->basic_wallet # CONSTANTS # ================================================================================================= -const ASSET_PTR=0 -const B2AGG_NOTE_NUM_STORAGE_ITEMS=6 +const B2AGG_NOTE_ASSETS_PTR = 0 +const B2AGG_NOTE_NUM_ASSETS = 1 -const STORAGE_START_PTR=8 -const STORAGE_END_PTR=STORAGE_START_PTR + 8 +const B2AGG_NOTE_STORAGE_PTR = 8 +const B2AGG_NOTE_NUM_STORAGE_ITEMS = 6 # ERRORS # ================================================================================================= @@ -29,7 +27,8 @@ const ERR_B2AGG_TARGET_ACCOUNT_MISMATCH="B2AGG note attachment target account do #! Bridge-to-AggLayer (B2AGG) note script: bridges assets from Miden to an AggLayer-connected chain. #! #! This note can be consumed in two ways: -#! - If the consuming account is the sender (reclaim): the note's assets are added back to the consuming account. +#! - If the consuming account is the sender (reclaim case): the note's assets are added back to the +#! consuming account. #! - If the consuming account is the Agglayer Bridge: the note's assets are moved to a BURN note, #! and the note details are hashed into a leaf and appended to the Local Exit Tree. #! @@ -37,8 +36,8 @@ const ERR_B2AGG_TARGET_ACCOUNT_MISMATCH="B2AGG note attachment target account do #! Outputs: [] #! #! Note storage layout (6 felts total): -#! - destination_network [0] : 1 felt -#! - destination_address [1..5] : 5 felts +#! - destination_network [0] : 1 felt +#! - destination_address [1..5] : 5 felts #! #! Where: #! - destination_network: Destination network identifier (uint32) @@ -51,7 +50,6 @@ const ERR_B2AGG_TARGET_ACCOUNT_MISMATCH="B2AGG note attachment target account do #! - The note does not contain exactly 6 storage items. #! - The note does not contain exactly 1 asset. #! - The note attachment does not target the consuming account. -#! begin dropw # => [pad(16)] @@ -77,26 +75,27 @@ begin # => [pad(16)] # Store note storage -> mem[8..14] - push.STORAGE_START_PTR exec.active_note::get_storage - # => [num_storage_items, dest_ptr, pad(16)] + push.B2AGG_NOTE_STORAGE_PTR exec.active_note::get_storage + # => [num_storage_items, storage_ptr, pad(16)] - push.B2AGG_NOTE_NUM_STORAGE_ITEMS assert_eq.err=ERR_B2AGG_UNEXPECTED_NUMBER_OF_STORAGE_ITEMS drop - # => [pad(16)] + # Validate the number of storage items + push.B2AGG_NOTE_NUM_STORAGE_ITEMS assert_eq.err=ERR_B2AGG_UNEXPECTED_NUMBER_OF_STORAGE_ITEMS + # => [storage_ptr, pad(16)] + + # load the 6 B2AGG felts from B2AGG_NOTE_STORAGE_PTR as two words + add.4 mem_loadw_le swapw mem_loadw_le.B2AGG_NOTE_STORAGE_PTR + # => [dest_network, dest_address(5), pad(10)] # Store note assets -> mem[0..8] - push.ASSET_PTR exec.active_note::get_assets - # => [num_assets, ptr, pad(16)] + push.B2AGG_NOTE_ASSETS_PTR exec.active_note::get_assets + # => [num_assets, assets_ptr, dest_network, dest_address(5), pad(10)] # Must be exactly 1 asset - push.1 assert_eq.err=ERR_B2AGG_WRONG_NUMBER_OF_ASSETS drop - # => [pad(16)] - - # load the 6 B2AGG felts from note storage as two words - push.STORAGE_START_PTR add.4 mem_loadw_le swapw mem_loadw_le.STORAGE_START_PTR - # => [dest_network, dest_address(5), pad(10)] + push.B2AGG_NOTE_NUM_ASSETS assert_eq.err=ERR_B2AGG_WRONG_NUMBER_OF_ASSETS + # => [assets_ptr, dest_network, dest_address(5), pad(10)] - # Load asset onto the stack from ASSET_PTR - push.ASSET_PTR exec.asset::load + # Load asset onto the stack from B2AGG_NOTE_ASSETS_PTR + exec.asset::load # => [ASSET_KEY, ASSET_VALUE, dest_network, dest_address(5), pad(10)] call.bridge_out::bridge_out diff --git a/crates/miden-agglayer/asm/note_scripts/CLAIM.masm b/crates/miden-agglayer/asm/note_scripts/CLAIM.masm index 036b34298e..715ab6d7f9 100644 --- a/crates/miden-agglayer/asm/note_scripts/CLAIM.masm +++ b/crates/miden-agglayer/asm/note_scripts/CLAIM.masm @@ -1,9 +1,6 @@ use agglayer::bridge::bridge_in -> bridge use miden::protocol::active_note -use miden::protocol::note -use miden::core::crypto::hashes::keccak256 use miden::core::crypto::hashes::poseidon2 -use miden::core::mem use miden::standards::attachments::network_account_target # CONSTANTS @@ -13,7 +10,8 @@ const PROOF_DATA_SIZE = 536 const LEAF_DATA_SIZE = 32 const OUTPUT_NOTE_SIZE = 8 -const PROOF_DATA_START_PTR = 0 +const CLAIM_NOTE_STORAGE_PTR = 0 +const PROOF_DATA_START_PTR = CLAIM_NOTE_STORAGE_PTR const LEAF_DATA_START_PTR = 536 const FAUCET_MINT_AMOUNT = 568 @@ -22,74 +20,15 @@ const FAUCET_MINT_AMOUNT = 568 const ERR_CLAIM_TARGET_ACCT_MISMATCH = "CLAIM note attachment target account does not match consuming account" -#! Reads claim data from memory and inserts it into the advice map under two separate keys. -#! -#! This procedure organizes the claim note data into two logical groups and inserts them -#! into the advice map under separate keys for easier access. -#! -#! Inputs: [] -#! Outputs: [PROOF_DATA_KEY, LEAF_DATA_KEY] -#! -#! Advice map entries created: -#! PROOF_DATA_KEY => [ -#! smtProofLocalExitRoot[256], // SMT proof for local exit root (256 felts, bytes32[_DEPOSIT_CONTRACT_TREE_DEPTH]) -#! smtProofRollupExitRoot[256], // SMT proof for rollup exit root (256 felts, bytes32[_DEPOSIT_CONTRACT_TREE_DEPTH]) -#! globalIndex[8], // Global index (8 felts, uint256 as 8 u32 felts) -#! mainnetExitRoot[8], // Mainnet exit root hash (8 felts, bytes32 as 8 u32 felts) -#! rollupExitRoot[8], // Rollup exit root hash (8 felts, bytes32 as 8 u32 felts) -#! ] -#! -#! LEAF_DATA_KEY => [ -#! leafType[1], // Leaf type (1 felt, uint32) -#! originNetwork[1], // Origin network identifier (1 felt, uint32) -#! originTokenAddress[5], // Origin token address (5 felts, address as 5 u32 felts) -#! destinationNetwork[1], // Destination network identifier (1 felt, uint32) -#! destinationAddress[5], // Destination address (5 felts, address as 5 u32 felts) -#! amount[8], // Amount of tokens (8 felts, uint256 as 8 u32 felts) -#! metadata[8], // ABI encoded metadata (8 felts, fixed size) -#! padding[3], // padding (3 felts) -#! ] -#! -#! Invocation: exec -proc write_claim_data_into_advice_map_by_key - # 1) Get LEAF_DATA_KEY - push.LEAF_DATA_SIZE push.LEAF_DATA_START_PTR - exec.poseidon2::hash_elements - # => [LEAF_DATA_KEY] - - push.LEAF_DATA_SIZE add.LEAF_DATA_START_PTR push.LEAF_DATA_START_PTR - movdn.5 movdn.5 - # => [LEAF_DATA_KEY, start_ptr, end_ptr] - - adv.insert_mem - # OS => [LEAF_DATA_KEY, start_ptr, end_ptr] - # AM => {LEAF_DATA_KEY: mem[start_ptr..end_ptr] } - movup.4 drop movup.4 drop - # => [LEAF_DATA_KEY] - - # 2) Get PROOF_DATA_KEY - push.PROOF_DATA_SIZE push.PROOF_DATA_START_PTR - exec.poseidon2::hash_elements - # => [PROOF_DATA_KEY, LEAF_DATA_KEY] - - push.PROOF_DATA_SIZE push.PROOF_DATA_START_PTR - movdn.5 movdn.5 - # => [PROOF_DATA_KEY, start_ptr, end_ptr, LEAF_DATA_KEY] - - adv.insert_mem - # OS => [PROOF_DATA_KEY, start_ptr, end_ptr, LEAF_DATA_KEY] - # AM => {PROOF_DATA_KEY: mem[start_ptr..end_ptr] } - - movup.4 drop movup.4 drop - # => [PROOF_DATA_KEY, LEAF_DATA_KEY] -end +# NOTE SCRIPT +# ================================================================================================= #! Agglayer Bridge CLAIM script: claims assets by calling the bridge's claim function. #! #! This note is consumed by the agglayer bridge account whose ID is provided #! in the note attachment (NetworkAccountTarget). Upon consumption, the bridge validates #! the Merkle proof, looks up the faucet from the token registry, and creates a MINT note -#! targeting the aggfaucet. +#! targeting the Agglayer Faucet. #! #! Requires that the account exposes: #! - agglayer::bridge::bridge_in::claim procedure. @@ -98,20 +37,20 @@ end #! Outputs: [pad(16)] #! #! NoteStorage layout (569 felts total): -#! - smtProofLocalExitRoot [0..255] : 256 felts -#! - smtProofRollupExitRoot [256..511]: 256 felts -#! - globalIndex [512..519]: 8 felts -#! - mainnetExitRoot [520..527]: 8 felts -#! - rollupExitRoot [528..535]: 8 felts -#! - leafType [536] : 1 felt -#! - originNetwork [537] : 1 felt -#! - originTokenAddress [538..542]: 5 felts -#! - destinationNetwork [543] : 1 felt -#! - destinationAddress [544..548]: 5 felts -#! - amount [549..556]: 8 felts -#! - metadata [557..564]: 8 felts -#! - padding [565..567]: 3 felts -#! - miden_claim_amount [568] : 1 felt +#! - smtProofLocalExitRoot [0..255] : 256 felts +#! - smtProofRollupExitRoot [256..511] : 256 felts +#! - globalIndex [512..519] : 8 felts +#! - mainnetExitRoot [520..527] : 8 felts +#! - rollupExitRoot [528..535] : 8 felts +#! - leafType [536] : 1 felt +#! - originNetwork [537] : 1 felt +#! - originTokenAddress [538..542] : 5 felts +#! - destinationNetwork [543] : 1 felt +#! - destinationAddress [544..548] : 5 felts +#! - amount [549..556] : 8 felts +#! - metadata [557..564] : 8 felts +#! - padding [565..567] : 3 felts +#! - miden_claim_amount [568] : 1 felt #! #! Where: #! - smtProofLocalExitRoot: SMT proof for local exit root (bytes32[_DEPOSIT_CONTRACT_TREE_DEPTH]) @@ -146,7 +85,7 @@ begin # => [pad(16)] # Load CLAIM note storage into memory, starting at address 0 - push.0 exec.active_note::get_storage drop drop + push.CLAIM_NOTE_STORAGE_PTR exec.active_note::get_storage drop drop # => [pad(16)] exec.write_claim_data_into_advice_map_by_key @@ -167,3 +106,68 @@ begin # => [pad(16)] end + +# HELPER PROCEDURES +# ================================================================================================= + +#! Reads claim data from memory and inserts it into the advice map under two separate keys. +#! +#! This procedure organizes the claim note data into two logical groups and inserts them +#! into the advice map under separate keys for easier access. +#! +#! Inputs: [] +#! Outputs: [PROOF_DATA_KEY, LEAF_DATA_KEY] +#! +#! Advice map entries created: +#! PROOF_DATA_KEY => [ +#! smtProofLocalExitRoot[256], // SMT proof for local exit root (256 felts, bytes32[_DEPOSIT_CONTRACT_TREE_DEPTH]) +#! smtProofRollupExitRoot[256], // SMT proof for rollup exit root (256 felts, bytes32[_DEPOSIT_CONTRACT_TREE_DEPTH]) +#! globalIndex[8], // Global index (8 felts, uint256 as 8 u32 felts) +#! mainnetExitRoot[8], // Mainnet exit root hash (8 felts, bytes32 as 8 u32 felts) +#! rollupExitRoot[8], // Rollup exit root hash (8 felts, bytes32 as 8 u32 felts) +#! ] +#! +#! LEAF_DATA_KEY => [ +#! leafType[1], // Leaf type (1 felt, uint32) +#! originNetwork[1], // Origin network identifier (1 felt, uint32) +#! originTokenAddress[5], // Origin token address (5 felts, address as 5 u32 felts) +#! destinationNetwork[1], // Destination network identifier (1 felt, uint32) +#! destinationAddress[5], // Destination address (5 felts, address as 5 u32 felts) +#! amount[8], // Amount of tokens (8 felts, uint256 as 8 u32 felts) +#! metadata[8], // ABI encoded metadata (8 felts, fixed size) +#! padding[3], // padding (3 felts) +#! ] +#! +#! Invocation: exec +proc write_claim_data_into_advice_map_by_key + # 1) Get LEAF_DATA_KEY + push.LEAF_DATA_SIZE push.LEAF_DATA_START_PTR + exec.poseidon2::hash_elements + # => [LEAF_DATA_KEY] + + push.LEAF_DATA_SIZE add.LEAF_DATA_START_PTR push.LEAF_DATA_START_PTR + movdn.5 movdn.5 + # => [LEAF_DATA_KEY, start_ptr, end_ptr] + + adv.insert_mem + # OS => [LEAF_DATA_KEY, start_ptr, end_ptr] + # AM => {LEAF_DATA_KEY: mem[start_ptr..end_ptr] } + movup.4 drop movup.4 drop + # => [LEAF_DATA_KEY] + + # 2) Get PROOF_DATA_KEY + push.PROOF_DATA_SIZE push.PROOF_DATA_START_PTR + exec.poseidon2::hash_elements + # => [PROOF_DATA_KEY, LEAF_DATA_KEY] + + push.PROOF_DATA_SIZE push.PROOF_DATA_START_PTR + movdn.5 movdn.5 + # => [PROOF_DATA_KEY, start_ptr, end_ptr, LEAF_DATA_KEY] + + adv.insert_mem + # OS => [PROOF_DATA_KEY, start_ptr, end_ptr, LEAF_DATA_KEY] + # AM => {PROOF_DATA_KEY: mem[start_ptr..end_ptr] } + + movup.4 drop movup.4 drop + # => [PROOF_DATA_KEY, LEAF_DATA_KEY] +end diff --git a/crates/miden-agglayer/asm/note_scripts/CONFIG_AGG_BRIDGE.masm b/crates/miden-agglayer/asm/note_scripts/CONFIG_AGG_BRIDGE.masm index 12259b36f7..98df2690fd 100644 --- a/crates/miden-agglayer/asm/note_scripts/CONFIG_AGG_BRIDGE.masm +++ b/crates/miden-agglayer/asm/note_scripts/CONFIG_AGG_BRIDGE.masm @@ -1,17 +1,14 @@ use agglayer::bridge::bridge_config use miden::protocol::active_note -use miden::protocol::active_account -use miden::protocol::account_id use miden::standards::attachments::network_account_target # CONSTANTS # ================================================================================================= -const STORAGE_START_PTR = 0 const CONFIG_AGG_BRIDGE_NUM_STORAGE_ITEMS = 7 -const FAUCET_ID_SUFFIX = 5 -const FAUCET_ID_PREFIX = 6 +const STORAGE_START_PTR = 0 +const ORIGIN_TOKEN_ADDR_0 = STORAGE_START_PTR const ORIGIN_TOKEN_ADDR_4 = 4 # ERRORS @@ -20,7 +17,8 @@ const ORIGIN_TOKEN_ADDR_4 = 4 const ERR_CONFIG_AGG_BRIDGE_UNEXPECTED_STORAGE_ITEMS = "CONFIG_AGG_BRIDGE expects exactly 7 note storage items" const ERR_CONFIG_AGG_BRIDGE_TARGET_ACCOUNT_MISMATCH = "CONFIG_AGG_BRIDGE note attachment target account does not match consuming account" -#! Registers a faucet in the bridge's faucet registry and token registry. +#! Agglayer Bridge CONFIG_AGG_BRIDGE script: registers a faucet in the bridge's faucet registry and +#! token registry. #! #! This note can only be consumed by the Agglayer Bridge account that is targeted by the note #! attachment, and only if the note was sent by the bridge admin. @@ -33,14 +31,13 @@ const ERR_CONFIG_AGG_BRIDGE_TARGET_ACCOUNT_MISMATCH = "CONFIG_AGG_BRIDGE note at #! Outputs: [pad(16)] #! #! NoteStorage layout (7 felts total): -#! - origin_token_addr_0 [0]: 1 felt -#! - origin_token_addr_1 [1]: 1 felt -#! - origin_token_addr_2 [2]: 1 felt -#! - origin_token_addr_3 [3]: 1 felt -#! - origin_token_addr_4 [4]: 1 felt -#! - faucet_id_suffix [5]: 1 felt -#! - faucet_id_prefix [6]: 1 felt - +#! - origin_token_addr_0 [0] : 1 felt +#! - origin_token_addr_1 [1] : 1 felt +#! - origin_token_addr_2 [2] : 1 felt +#! - origin_token_addr_3 [3] : 1 felt +#! - origin_token_addr_4 [4] : 1 felt +#! - faucet_id_suffix [5] : 1 felt +#! - faucet_id_prefix [6] : 1 felt #! #! Where: #! - faucet_id_suffix: Suffix felt of the faucet account ID to register. @@ -63,24 +60,30 @@ begin push.STORAGE_START_PTR exec.active_note::get_storage # => [num_storage_items, dest_ptr, pad(16)] + # Validate the number of storage items push.CONFIG_AGG_BRIDGE_NUM_STORAGE_ITEMS assert_eq.err=ERR_CONFIG_AGG_BRIDGE_UNEXPECTED_STORAGE_ITEMS drop # => [pad(16)] # Load origin_token_addr(5) and faucet_id from memory # register_faucet expects: [origin_token_addr(5), faucet_id_suffix, faucet_id_prefix, pad(9)] - # Load all 7 values individually in the correct order - mem_load.FAUCET_ID_PREFIX mem_load.FAUCET_ID_SUFFIX mem_load.ORIGIN_TOKEN_ADDR_4 - # => [addr4, faucet_id_suffix, faucet_id_prefix, pad(16)] + # Load origin_token_addr_4, faucet_id_suffix, and faucet_id_prefix onto the sack. Notice that we + # can use `mem_loadw_le` here: that allows us to reuse the existing zeros on the stack, and + # since note memory was not initialized, fourth element on the stack will be equal ZERO, which + # is what we want. + mem_loadw_le.ORIGIN_TOKEN_ADDR_4 + # => [addr4, faucet_id_suffix, faucet_id_prefix, pad(13)] - padw mem_loadw_le.STORAGE_START_PTR - # => [addr4, addr3, addr2, addr1, addr0, faucet_id_suffix, faucet_id_prefix, pad(16)] + # Load remaining origin_token_addr_[0..3] onto the stack + padw mem_loadw_le.ORIGIN_TOKEN_ADDR_0 + # => [addr0, addr1, addr2, addr3, addr4, faucet_id_suffix, faucet_id_prefix, pad(13)] # Register the faucet in the bridge - # => [addr4, addr3, addr2, addr1, addr0, faucet_id_suffix, faucet_id_prefix, pad(9), pad(7)] + # => [addr0, addr1, addr2, addr3, addr4, faucet_id_suffix, faucet_id_prefix, pad(9), pad(4)] + call.bridge_config::register_faucet - # => [pad(16), pad(7)] + # => [pad(16), pad(4)] - dropw drop drop drop + dropw # => [pad(16)] end diff --git a/crates/miden-agglayer/asm/note_scripts/UPDATE_GER.masm b/crates/miden-agglayer/asm/note_scripts/UPDATE_GER.masm index c11d609db0..070d181ef1 100644 --- a/crates/miden-agglayer/asm/note_scripts/UPDATE_GER.masm +++ b/crates/miden-agglayer/asm/note_scripts/UPDATE_GER.masm @@ -1,38 +1,39 @@ use agglayer::bridge::bridge_config use miden::protocol::active_note -use miden::protocol::active_account -use miden::protocol::account_id -use miden::protocol::note use miden::standards::attachments::network_account_target # CONSTANTS # ================================================================================================= + const UPDATE_GER_NOTE_NUM_STORAGE_ITEMS = 8 const STORAGE_PTR_GER_LOWER = 0 const STORAGE_PTR_GER_UPPER = 4 # ERRORS # ================================================================================================= + const ERR_UPDATE_GER_UNEXPECTED_NUMBER_OF_STORAGE_ITEMS = "UPDATE_GER script expects exactly 8 note storage items" const ERR_UPDATE_GER_TARGET_ACCOUNT_MISMATCH = "UPDATE_GER note attachment target account does not match consuming account" # NOTE SCRIPT # ================================================================================================= -#! Agglayer Bridge UPDATE_GER script: updates the GER by calling the bridge_config::update_ger function. +#! Agglayer Bridge UPDATE_GER script: updates the GER by calling the bridge_config::update_ger +#! function. #! #! This note can only be consumed by the specific agglayer bridge account whose ID is provided -#! in the note attachment (target_account_id), and only if the note was sent by the -#! global exit root manager. +#! in the note attachment (target_account_id), and only if the note was sent by the global exit root +#! manager. #! #! Requires that the account exposes: #! - agglayer::bridge_config::update_ger procedure. #! #! Inputs: [ARGS, pad(12)] #! Outputs: [pad(16)] +#! #! NoteStorage layout (8 felts total): -#! - GER_LOWER [0..3] -#! - GER_UPPER [4..7] +#! - GER_LOWER [0..3] : 4 felts +#! - GER_UPPER [4..7] : 4 felts #! #! Panics if: #! - account does not expose update_ger procedure. @@ -47,22 +48,21 @@ begin assert.err=ERR_UPDATE_GER_TARGET_ACCOUNT_MISMATCH # => [pad(16)] - # proceed with the GER update logic - + # Load note storage to memory push.STORAGE_PTR_GER_LOWER exec.active_note::get_storage # => [num_storage_items, dest_ptr, pad(16)] + # Validate the number of storage items push.UPDATE_GER_NOTE_NUM_STORAGE_ITEMS assert_eq.err=ERR_UPDATE_GER_UNEXPECTED_NUMBER_OF_STORAGE_ITEMS drop # => [pad(16)] # Load GER_LOWER and GER_UPPER from note storage mem_loadw_le.STORAGE_PTR_GER_UPPER # => [GER_UPPER[4], pad(12)] - swapw - mem_loadw_le.STORAGE_PTR_GER_LOWER + + swapw mem_loadw_le.STORAGE_PTR_GER_LOWER # => [GER_LOWER[4], GER_UPPER[4], pad(8)] call.bridge_config::update_ger # => [pad(16)] - end diff --git a/crates/miden-agglayer/diagrams/bridge-in.excalidraw b/crates/miden-agglayer/diagrams/bridge-in.excalidraw new file mode 100644 index 0000000000..94eb00a2fd --- /dev/null +++ b/crates/miden-agglayer/diagrams/bridge-in.excalidraw @@ -0,0 +1,470 @@ +{ + "type": "excalidraw", + "version": 2, + "source": "miden-agglayer", + "elements": [ + { + "id": "title", + "type": "text", + "x": 400, + "y": 30, + "width": 500, + "height": 35, + "text": "Bridge-in (AggLayer to Miden)", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "l1", + "type": "rectangle", + "x": 40, + "y": 320, + "width": 160, + "height": 50, + "strokeColor": "#868e96", + "backgroundColor": "#e9ecef", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow-l1-user", "type": "arrow"}] + }, + { + "id": "l1-label", + "type": "text", + "x": 60, + "y": 332, + "width": 100, + "height": 25, + "text": "AggLayer L1", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "l1" + }, + { + "id": "user", + "type": "diamond", + "x": 30, + "y": 120, + "width": 180, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#a5d8ff", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow-l1-user", "type": "arrow"}, + {"id": "arrow1", "type": "arrow"} + ] + }, + { + "id": "user-label", + "type": "text", + "x": 60, + "y": 150, + "width": 120, + "height": 40, + "text": "User / Claim\nManager", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "user" + }, + { + "id": "arrow-l1-user", + "type": "arrow", + "x": 110, + "y": 320, + "width": 10, + "height": 100, + "strokeColor": "#868e96", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [10, -100]], + "startBinding": {"elementId": "l1", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "user", "focus": 0, "gap": 5} + }, + { + "id": "al1-label", + "type": "text", + "x": 125, + "y": 260, + "width": 80, + "height": 20, + "text": "reads proofs", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "claim", + "type": "rectangle", + "x": 300, + "y": 140, + "width": 120, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow1", "type": "arrow"}, + {"id": "arrow2", "type": "arrow"} + ] + }, + { + "id": "claim-label", + "type": "text", + "x": 322, + "y": 158, + "width": 76, + "height": 25, + "text": "CLAIM", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "claim" + }, + { + "id": "bridge", + "type": "rectangle", + "x": 510, + "y": 90, + "width": 230, + "height": 210, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow2", "type": "arrow"}, + {"id": "arrow3", "type": "arrow"}, + {"id": "arrow-ger", "type": "arrow"} + ] + }, + { + "id": "bridge-name", + "type": "text", + "x": 570, + "y": 98, + "width": 110, + "height": 35, + "text": "Bridge", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "bridge-desc", + "type": "text", + "x": 525, + "y": 140, + "width": 200, + "height": 150, + "text": "1. Validate GER\n2. Parse global index\n3. Verify Merkle proof\n4. Update CGI chain\n5. Check nullifier\n6. Lookup faucet\n7. Verify amount\n8. Create MINT note", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "mint", + "type": "rectangle", + "x": 830, + "y": 140, + "width": 110, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow3", "type": "arrow"}, + {"id": "arrow4", "type": "arrow"} + ] + }, + { + "id": "mint-label", + "type": "text", + "x": 855, + "y": 158, + "width": 60, + "height": 25, + "text": "MINT", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "mint" + }, + { + "id": "faucet", + "type": "rectangle", + "x": 1030, + "y": 120, + "width": 170, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow4", "type": "arrow"}, + {"id": "arrow5", "type": "arrow"} + ] + }, + { + "id": "faucet-name", + "type": "text", + "x": 1068, + "y": 128, + "width": 94, + "height": 35, + "text": "Faucet", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "faucet-desc", + "type": "text", + "x": 1070, + "y": 173, + "width": 90, + "height": 25, + "text": "Mint & send", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "p2id", + "type": "rectangle", + "x": 1290, + "y": 140, + "width": 100, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow5", "type": "arrow"}, + {"id": "arrow6", "type": "arrow"} + ] + }, + { + "id": "p2id-label", + "type": "text", + "x": 1312, + "y": 158, + "width": 56, + "height": 25, + "text": "P2ID", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "p2id" + }, + { + "id": "recipient", + "type": "diamond", + "x": 1480, + "y": 120, + "width": 160, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#a5d8ff", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [{"id": "arrow6", "type": "arrow"}] + }, + { + "id": "recipient-label", + "type": "text", + "x": 1512, + "y": 155, + "width": 96, + "height": 25, + "text": "Recipient", + "fontSize": 18, + "fontFamily": 1, + "textAlign": "center", + "containerId": "recipient" + }, + { + "id": "ger-box", + "type": "rectangle", + "x": 555, + "y": 370, + "width": 140, + "height": 50, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffc9c9", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow-ger", "type": "arrow"}] + }, + { + "id": "ger-label", + "type": "text", + "x": 580, + "y": 382, + "width": 90, + "height": 25, + "text": "GER Map", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "ger-box" + }, + { + "id": "arrow1", + "type": "arrow", + "x": 210, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "user", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "claim", "focus": 0, "gap": 5} + }, + { + "id": "a1-label", + "type": "text", + "x": 220, + "y": 148, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow2", + "type": "arrow", + "x": 420, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "claim", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "bridge", "focus": 0, "gap": 5} + }, + { + "id": "arrow3", + "type": "arrow", + "x": 740, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "mint", "focus": 0, "gap": 5} + }, + { + "id": "a3-label", + "type": "text", + "x": 750, + "y": 148, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow4", + "type": "arrow", + "x": 940, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "mint", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "faucet", "focus": 0, "gap": 5} + }, + { + "id": "arrow5", + "type": "arrow", + "x": 1200, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "faucet", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "p2id", "focus": 0, "gap": 5} + }, + { + "id": "a5-label", + "type": "text", + "x": 1210, + "y": 148, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow6", + "type": "arrow", + "x": 1390, + "y": 170, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "p2id", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "recipient", "focus": 0, "gap": 5} + }, + { + "id": "arrow-ger", + "type": "arrow", + "x": 625, + "y": 300, + "width": 0, + "height": 70, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [0, 70]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "ger-box", "focus": 0, "gap": 5} + }, + { + "id": "ager-label", + "type": "text", + "x": 635, + "y": 328, + "width": 60, + "height": 20, + "text": "validate", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + } + ], + "appState": { + "viewBackgroundColor": "#ffffff", + "gridSize": 20 + }, + "files": {} +} diff --git a/crates/miden-agglayer/diagrams/bridge-in.png b/crates/miden-agglayer/diagrams/bridge-in.png new file mode 100644 index 0000000000000000000000000000000000000000..00efefc85c47a6294c4e71f958938c38126a34ec GIT binary patch literal 276971 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�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/JWB`Y2zU;QT6@6Xj)>Csf~ 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 z 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 literal 0 HcmV?d00001 diff --git a/crates/miden-agglayer/diagrams/faucet-registration.excalidraw b/crates/miden-agglayer/diagrams/faucet-registration.excalidraw new file mode 100644 index 0000000000..c5a235074e --- /dev/null +++ b/crates/miden-agglayer/diagrams/faucet-registration.excalidraw @@ -0,0 +1,317 @@ +{ + "type": "excalidraw", + "version": 2, + "source": "miden-agglayer", + "elements": [ + { + "id": "title", + "type": "text", + "x": 280, + "y": 30, + "width": 400, + "height": 35, + "text": "Faucet Registration", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "operator", + "type": "diamond", + "x": 30, + "y": 120, + "width": 180, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#a5d8ff", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [{"id": "arrow1", "type": "arrow"}] + }, + { + "id": "operator-label", + "type": "text", + "x": 55, + "y": 150, + "width": 130, + "height": 40, + "text": "Bridge\nOperator", + "fontSize": 18, + "fontFamily": 1, + "textAlign": "center", + "containerId": "operator" + }, + { + "id": "config-note", + "type": "rectangle", + "x": 270, + "y": 120, + "width": 280, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow1", "type": "arrow"}, + {"id": "arrow2", "type": "arrow"} + ] + }, + { + "id": "config-label", + "type": "text", + "x": 285, + "y": 133, + "width": 250, + "height": 35, + "text": "CONFIG_AGG_BRIDGE", + "fontSize": 22, + "fontFamily": 1, + "textAlign": "center", + "containerId": "config-note" + }, + { + "id": "bridge", + "type": "rectangle", + "x": 620, + "y": 100, + "width": 220, + "height": 150, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow2", "type": "arrow"}, + {"id": "arrow3", "type": "arrow"}, + {"id": "arrow4", "type": "arrow"}, + {"id": "arrow-ref", "type": "arrow"} + ] + }, + { + "id": "bridge-name", + "type": "text", + "x": 675, + "y": 108, + "width": 110, + "height": 35, + "text": "Bridge", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "bridge-desc", + "type": "text", + "x": 635, + "y": 150, + "width": 190, + "height": 85, + "text": "1. Assert sender\n2. Register in faucet reg\n3. Register in token reg", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "faucet-reg", + "type": "rectangle", + "x": 580, + "y": 320, + "width": 140, + "height": 50, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffc9c9", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow3", "type": "arrow"}] + }, + { + "id": "faucet-reg-label", + "type": "text", + "x": 595, + "y": 332, + "width": 110, + "height": 25, + "text": "Faucet Registry", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center", + "containerId": "faucet-reg" + }, + { + "id": "token-reg", + "type": "rectangle", + "x": 760, + "y": 320, + "width": 140, + "height": 50, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffc9c9", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow4", "type": "arrow"}] + }, + { + "id": "token-reg-label", + "type": "text", + "x": 775, + "y": 332, + "width": 110, + "height": 25, + "text": "Token Registry", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center", + "containerId": "token-reg" + }, + { + "id": "faucet-acct", + "type": "rectangle", + "x": 940, + "y": 120, + "width": 170, + "height": 80, + "strokeColor": "#868e96", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [{"id": "arrow-ref", "type": "arrow"}] + }, + { + "id": "faucet-name", + "type": "text", + "x": 978, + "y": 140, + "width": 94, + "height": 35, + "text": "Faucet", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow1", + "type": "arrow", + "x": 210, + "y": 170, + "width": 60, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [60, 0]], + "startBinding": {"elementId": "operator", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "config-note", "focus": 0, "gap": 5} + }, + { + "id": "a1-label", + "type": "text", + "x": 215, + "y": 145, + "width": 50, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow2", + "type": "arrow", + "x": 550, + "y": 150, + "width": 70, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [70, 0]], + "startBinding": {"elementId": "config-note", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "bridge", "focus": 0, "gap": 5} + }, + { + "id": "arrow3", + "type": "arrow", + "x": 680, + "y": 250, + "width": -30, + "height": 70, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [-30, 70]], + "startBinding": {"elementId": "bridge", "focus": -0.5, "gap": 5}, + "endBinding": {"elementId": "faucet-reg", "focus": 0, "gap": 5} + }, + { + "id": "a3-label", + "type": "text", + "x": 615, + "y": 278, + "width": 40, + "height": 20, + "text": "write", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "arrow4", + "type": "arrow", + "x": 780, + "y": 250, + "width": 50, + "height": 70, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [50, 70]], + "startBinding": {"elementId": "bridge", "focus": 0.5, "gap": 5}, + "endBinding": {"elementId": "token-reg", "focus": 0, "gap": 5} + }, + { + "id": "a4-label", + "type": "text", + "x": 810, + "y": 278, + "width": 40, + "height": 20, + "text": "write", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "arrow-ref", + "type": "arrow", + "x": 840, + "y": 160, + "width": 100, + "height": 0, + "strokeColor": "#868e96", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [100, 0]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "faucet-acct", "focus": 0, "gap": 5} + }, + { + "id": "aref-label", + "type": "text", + "x": 855, + "y": 138, + "width": 80, + "height": 20, + "text": "references", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "center" + } + ], + "appState": { + "viewBackgroundColor": "#ffffff", + "gridSize": 20 + }, + "files": {} +} diff --git a/crates/miden-agglayer/diagrams/faucet-registration.png b/crates/miden-agglayer/diagrams/faucet-registration.png new file mode 100644 index 0000000000000000000000000000000000000000..7f43fa2bee9ca5830e7e297b771139bdbcf643d2 GIT binary patch literal 182556 zcmeFZXIPWj);^Aig~5t5Af1sW9jPMSMh5{ALRSn(mu_egbZk_C5PDF0jnYdQe><}afVTN4%*VHU%ydN&_9txg|F&$ezo^3kxEY#^M(cEdt< z^>}-S^-Y<)u@}cJuC~R*I2Mevv>d&2=;rS+KcBW}6n5d3dHCWEyJS)l%N^FoY{|PC z-QL+bIny~46Vt2xNPOVJ#014G5VLRcyyC(y@W0&i z@5dwAk1AZy`5#~Q{X5j3Pr2NQ`JcYJKcFp1;kMt|e*M3U(@OW@bN0*s`-FrCiXXC^ zIrI2`ow=}Xp80_T;^IgDHxV%hs|#agH8DB$e~?qO_93?Pbm9M5=-&nU6H}mi{|NMd z*8V>N{r|Ovo(+ly)VNhP1Q5`UR$t60>Rx+aH~F?KyUQE`q4Li3wcj|nXH*uCTL?#= zmV2{3YVUW^16yDd$EUUq08OW?BwdT;k`?&WH>&yH7H3D^Lza{a7Z;mNz5~Zu*67Wl zVso%3tKp96MEF9TJy(x}vb}kXiLZ$;dT0Ry(}7QDVo#r4W1aLv(ae_K13|akg0{sl z?}SLZ7CmXQEj!FHI9|l)yqj@i;@@X>%c_w^g zl!IFi5nQrjL0>%G6|+vp;<$tBE*{`2zg1!THuwnJxp;H@x?iAZ+HbQGlC$>gs!h6Y z46`!xWx|i>@QH+orYDZS8dUhfE?m;t*wT-ksrB3k-h5q`sgOw@@+w;jLewYHEXvHM zxDW8vDPs@#^a&p+DryFrW4PX1E>mXSyOKl@JWEs*>!&cqX z*_0u&JF+81nw!Xw;7;7hE%Iw9^s_&9U56Mq4XN%o1r!6HLSe_RXQ0ncu;%P}$K3?| z--L9O%fO|3i$9XIro3tBqa3Km)dcTaSzu>r6esMxdM@yb(T$!@rQwX#wlA+Jqy^{E z>$K{SJYB9Jd4rF?lRR6})I$cQngUUma4nN1evbx=zdFDI%(_opbGgtZ^a{G zo|giPe_7mGbgfr^x$7SH4^C0RfoVZcjP10(+kEs(X$9?AH&o9#`g?ot&o2rX0InK& zllxuQ*u|S(eb`GrvuGo%Z@H)NJl85qA#nW*TY3Z%-z%c2M-920`L(~DohF4D^BF_A;L8i?z+o9+VAq zT*%Unq^7a+s~3jxTNgHyFz(nYY0lOA;m&K)Eyu<1N~AC#QA<`Qi{jUe7wfvqV9V$Q zj72(+ZA<97kQyC-sdsF_CFAA$Bf@;6WMM< z^KUk{o?xr~7-m>TgW<}QgmjW0J|tH@ny+;v)KB`h1SV8b40DUC!>^A8d*qh8*V;Wm zXTGdea$koyzIXT$9HWD!gxl`s5X-Z_V}imtwhrLnb|)Zc?QL7mZ

G zt89x@c6M47@9D~sXBWhhnn0lWc`GlC9Cc6>mjii)TEP!W#)R}&32Q9W_>geIDDx6Q zd8MjVgjGmomnMCwxx*N2W&}>C@YBbUiCasn2kQMIxQcr&T=wfLw^uOBnMChJ-Cd>( zv#juJPw*Z(nrij|6@k+7Qa7~SA6V7X7MVS(DLa@JinrrPIeQ8KIl>q|HEW- z-8qgbEUj*iXnY43T`N|=xKu20%+24c2X_oGd`UajPG8OX*;TeDy261ZbZ<}Va%}(9 zp0&2LzOvSNxIl_q#F-J4s>W~GgIAk>HBP2SX!=CzKcdT^YgDyh4RywPAu6DoAu1G? z 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 z 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

HFg2VLNu zXBhL7!o(QhF@yc{%Q0DWK+QqwrkQA1;5Vmn+Nb^!6DL-M-o-_&!fAom-}b9X z`0$B+G5XyuK^s#nB2HWhv-v+LE0vES2W`2}rGQWS0t@(aG=%_>8o440ef*+0SEGY9 zoaXJn)Yu>y^6u9uC3NtQVzNGDDg0AGM&=dmEHu=t*q_?jkS2;TF>O6BXe@@+x`!VE2D{`9hbIhI+SduBc$O1iR%f1ueqjD#^ixk`JdN z5o-9iI}o3@PhI@NkPw>lja4YxWV)jHw&s3pv<10Lf60RhqHMbUffKu7`{7YIV(tSv zaO06g|I5(bBMIiPsG_g#4z*Aqx(tknaOyCszvV70!Pnq*)i|w`Z&aCUm*-JVCwyGX z8-F}F@m_5@<6P=Hr9+7;p_Ogjd!F$%YqynwC-{U{= z5AN#e*Ks(?YN&OiO7@k)q}>SLP>4wPcD%2yA2jaM2gMbHNKKU9Enut8b<$DYfO9N( zER}R!idTHN^rN&o9y_K65j`&IkQ_?J7`7@9O~ip0xa4qV7r7sg#2r5p@2ff*cs_0!T!!P|B zXj9%iFfd?m5$3QiSQ--}PiSLv)~hNb(L3UjI_&XzTzlb{=s$sy);m;NF^A2q?ce<=L#Nh64@Z%*q3?A5VKM+sJYZ8^+m-_}{bbh_5}J zPr?ox`NGBFPMexPTgAB$)UB$T2DPRRSc}|&T)JM;L%;8W2)C!;#dv4WR^{&W&Tmq- z)*Hy}CJ2jNvumv4Da;>}Na}RFBFVQQeZw@hWx*k0{hMj(eQKsqSb5^wNS~rkaFc!w zz7Irw;zEUn*J^{Tle2brQ$BHCO`!=^J@IwJE1b#S=+p&HJW8MN4ZLqFNq5ML5*Bkr7 z7aIZrCztf|!NLW5Das)Dk@LRu_%6gOWbe%<-mOVoSr?nD3Y6J?ZLQ&K6$#-hcIPON zRKIq|yod(`eIH~hV@ajyieuiKf#=Ec?vl@^++88Rjzr$7IAVM(G%X-8aS^ubw`LhQ zO3t0c?#tm!a4`7S)76g9q(U@MO;dPf=Rz4H1TcMhBZj432F>-g!tyac9NRil({d>{ z4!D((p^U)-Rvz_3eO=rpvSHa?m-@pV+D_;j2UrNwz*hR+ukp=_k}9FD@k^Pi`Of+f z)#iqICV#85g_0{^5&?r5&~Y9A1vAK@`L{6NnQ2JMQHjtU6y2NINv#n|x{J2{bHPCX z`o+mi_Q%@_Uy{GI>1Y+oGg1FK~-=to*f&h23Hs^D{gbNcD<#^ zMU`6BX^)_FH9wJV*AA4%(Sh@XPN%V`wdLBKoq+f^N@lBw6Uh1OP4640)$fD34%yw@ z+_DK3#~KwgX-S8r#K?-u`&0-y5FUaLpG)2n4Z8QI*7mAJ>NzWUP8m8IuMjt%XZ60K zeh%zYy?4LgS_9+afZmV_A}(v5GP9s3d@qp1qpXCR)90B$rTpkuxTEz3p|o#ycb8v= z!=Yz=;?TFalQZ*Jlhh}=iRgvu^k*QWZq$$NBjA+VcM6k93#VJntW%lml8ls;-z%2A zlDYBF-?GZJexsb*x`+n8|3(heR@HjMPT`<9{_#r6&FO}0j*q)gD%l~LXwds7@2af3 zV8Q&9lhUKp*GsM=_r%Ewrr=y@bXEYv%vbuV&G=JIa(>%&wuE}uMPo&vc*Nqdo(PL7 z02}?G*w3Ark%W4n{Rb7eLY6i$zpLy04AE*5c4>SKkky2iWEBN>jTI)1w27nV z14(Voot%5(-NF@SB0{aOfR5y~Lip<$m+j^UQ|y`KIIJk|EC-V3V&&WiU!u<&#sE2r;!V_R~VB4L*ctkzSxZT4?}2GA;+bg%PL0+$$6D4 z#?;3eq8o!GU#0u*luGK)5d}goK^|QN=-_twTFGWg)0B!eYz#cU zZb~hAHCm2t%$Sr*;-iDvcwEw=WR#lhbyUEo4Fuxt{+T z7h`F``~vn0X2+3~jV`9#=_&4(i#CbeWWS0k&;QoInHMQH1Ce6e8?zdDfwK6RBZ{mX zMqRT8hix^%ip>zCaytF*Rg2|ivP;;v*N;($>ogxNe!(AkI|DOm$%WC;1eEmHd=Jz< z1E}iDbbNzZYm4YbqcsWvq@v_*KrULviN^bB=9@qzUFSdPcFGq(JY1>>IR_rr~x^ie^ynmSfH zCRrmHG*|iZklL_r<8e}pn zWgQ2^Qv&>1!9$7rhvodvNqu?TkvJDLVJe8Z30-WujQ*d_E9G|`^jRrmNBL+yeEd;O z9Db?x$TfrYJZ`G$zqBGt(g2r~>S`l+QHAufO?xfUQXCjLSLd*VMIhN~iU+)UyMzO! zr3s;cw7#9Uge;XLg#(7#ZG)N<$6M9h@uB(~Iao(-##Oedm0}ihP?5ZORJTmDUri8lDSy{I8ufK`ON_sowTM!>nx| zu!%07vN+Uu#-$5l_Rn~yI(ZrS-a!Z+G;)z>)2L;ntJPTsmqe{2Y|cH&*>H3XmezZV zD*hFDWNT53jQED6)RqN?*X6sTm)5gewTd`N+2ARG6q1)x)A=onBo8<*tZtF19g~|* zg4yqt1qUxg?-q2De-Sc-jYr9}AVQ=01-7{{wN8b zssUZOkrAcvS|3Q=wH2`Q8_r>EsnMXIHRlQ#44 z{6#TK|3&ZV`Q?P|ir1w_k2;k(ipofYTV4mveEkBY{E}{Bkqg-HUx-=L?QO$bs`yLW zIBjxE!tJEceTqvDr@r4I@vi{}PTR>8jsD-r49bJq;V`1zMI0b;w(jbf?7hYVTBvZ} z^t^80jxmMJB)yQe&}_K=i<%k0d%snY^j0;b2ZXlyrpkQEF9iS(de;21koI!wvvG8E z7?yfin+()6L(W4T3p1%7uY(=tbR0psS0)=^?qX^Z^yUjiFj+yUZED>$Q zAy=;0slm};PA!APasCS)Uw^=Vdepq{YArNBKYxXtE%Q^W|1RY(_B79d3;c_#T+GzS z2xVMz^MhX((L$CPYeYy9k<~3=0tML!{Z>;9p)o2nd@E2c0YDQIWF|KmE%iE|nx4km^ZvLtjpSmBDNpBFx?ly*xF-br zn^LirMZ7I8tPCI$)Bi7gHjNg$n#P8&_?q5kiVKt&M|0n;(Iu#g{KWf&VRq5VG_Oqz zx&{QD)X1)})ilZ2-OhWdCIm^=zHL%ATxW7N}K-(5(b_24JlixgM=119M#l$vyR6^aL1Zx z!<)(Onxc;lsHgThR2rLwt~XO7eAK;vLs@wz6-wI`%N~(okxTc+Ma=ou)1IksVkYv} zL^`ga_?+$38hImKsp9a9b7HzFPlgi5Zk>ooP$J*suW$zr%WAB-MZ>?bHQH#pqMtrI z4{keLgR@;rRk%FYp`VSJXvwh;Z06)fx!Li`^?&N2TJM2ic_9J&He#d0y$nRw=Na|e znET%3isfqEKBw*I739eR+qsL$VODIx2jyDLHf*S$7O7OcMnxNe9N`wW(2<=4X;`$N z!(tu%3vTWknxsOl>w zwNl^u#6)Cb$8H>sZ$8jxN2^sx0^Etmtbuu*OuIuBWY@2L$Vp||upRQ3Fo?tGo!d)? zZR74AWRCWWG~6wseh^ORj+`(^NWE45@s(I8uyU{YA$A^@^#rqg+&}7>J0mb6&$UB$ zI_URt?XRl0ZP|JGV5YQBHQ~^(T`-%0MP0!A!2N(J+yes1l_UCcgKatCK>z ztcWei;k&eb$tb$6#FQr3Ut`KNXQ3_9Fg zEQJ=JY|pcyaZtuo0D)Yy1LX)VyBlxr&PTv$e!^WIxRMVNjjk(mre2~TycB6&UTyE2{{$DV_%-7sxYR1Ue~!>UVr} z2a|19QhV3sAlp5MvU~w=ed}{2I8P(R{DX2;1NN4J@Zr0z>3hrgkWV%Fzl7+18w4Gm z)w;YAK3*ZI(-wUR(E5_Oznmk^72A2%6Qsc8$=6Q*@#iWxfN!aJ2l{Pj79(IVR%5ni z4g5vkFwKV2l?QgDM1x}evOYTeRSjay!VS6X!@LMVG-Aa%>hX?xxf{mnoyy?VUa z3v1H0S^`>b8QqUgS^zlk7}Re21PWeu4j&eh?=x!k;ePeViU`t+sn-cJPO0qCwjM;X z`a`X6xB7)~{8`YK14nUosE}clgIte&zSrBxO%|Q%c(IS*;sF%Y45^>5_Jx@f1 zhJO?89AE#q%y_uCpm8@9_fG9R3+Ev^b$%X+H97t(e4>!E0MDnnKn9nbiUP zDYb<4nG3u~iokR3&(G-C5Ds1Ye$1&7vh4Jb%8E5m zk05jC%QKi~m6jBH=#okc8dpw}lnF<9Pheq{k0<977xsr9`iO;y!dF9;@_#JblW_Lh za^h}(4d3jOHXMk9oK=P_3^zry*9+0UGG#PZVNLHEaKYXn&XJn;8WUbT&NP4I&<4x{O4TFi;Z(qO1 z+Rs^?^HXbRvne*(aDq3OQ-g!Uz*H7W68)bS0BAd-Y-{kw7#hB|p!#Oy1j1A>QYa%d zrL?M)B`&N7cm^MpZz9o1lEd3U4}GjIPFXXcMz!2DBk)NYqn?l<2GUoWe1o`Zj~5*T^g-qf7i zf$c%;F6Hr#v|+57bdudduI9o(ODU6}@L7)40H=Ab8BDvQVOxW$(`)UzD_F|2-eK2D zfilc$TUDp18&o0l4S*1@-0m*&a;_?{;i>VZG=udB{d|O;qWog%vfr7Fq8rY{%uu25 z+bzNw>9aEjyd}0MdWt?xye2Ld&GHdbQjutv3)lrV+glJ*WK-t4~ILAHz40g?~ zn(kOYB4ovFiBkqez!?I<4dsmCCexOqKTQ?@G0`VWS_D*Jj6j~igp90Zo5sHVyUR}-m&4#&TvzE@dEc*VgrApP!phPh zk+OuMn@pGMF%A8#PFEmyo5Si=NdyWX4@rH%NHcfjTBo3)WL5(Lt*~P5C$4w6gkroE zc~$9Wtsn(V@FrEwT!Rwy4Un5-SV|B6=S7_?srM*Y0#Pi{_;c@k<*fa83PS!ZHf){X zH7KI|7H)YB9ap~c2#CbK02ZzE!QMx8Gt_=R$F0uc&EtiMwZd`aP4809c*tPmps8g+ zdeJ`nufXdIhAc$kuvZ&98qB#ru%7jQHf!+`H`gyfdH;S0Jxy*;mo1_?;j%_DpZ1vc ze0%>i(vqS2XyDX?vJ2`&YVTmx$T9qun_)eSa{tA*f3|f!?v!{J7o?-Qe{P^Um`Zo6DM0`vqBdhi=Kj{yXd;f=Ses<(LzAVD05$}! zMx)VJo3Xo=xm08akiB}mQAm6m6b>GISQBtuvEI}}(z=hpr-=F^5mt;2L-APs8dY@9 zuQnG{80x!3`J0+mr!{)6_f&P3q11=<$*2f}Rk0QtBI+AuJ zKEi5v(%cik)lY8x4mh+XWwrt(jSfQn&f9wlc)^0 z7yymJP+9YTd;q{#rbaahLL1K%#~zZwDc>!X-q)dqYx$mK4vJ#`4QqP;cyrHD%oX%q ziU<;MqFPJTJugmiW@tqpC)G#^bFZmigk?HfEjNq(jlr8jUIZ{ay_JTPsa>p7K>m z2T@vz6!P)cX{8eJfi^PQ2+)FA_Ao>P)LDFvWIK*_ca?C@NSOwio;94eM&8$#bw7}F z5MPD7H9-kD7A1%nFgA5`iqPHv`+ITxpU*HNcX#Sb^lGuMw}s{^^WqE4+nMq4OY?(i zSaxKgQ5FdDCOQ1apmtqvQ95}X7U~{c@RQbNl^iOb5bWkbL(35JtxNlh5=XPLqZc zK@X^l)!Lp%M*L%$oQRm6CmuI=IonMq0$&ic@C9dcdDvgls?JXFkfD+1HvY5uol9mQ zOq=j*=76(>^_o@sIPW9ENnF=g5XuJe*zBEa^eRfdo3Gl4&r)q9kAwC=emZ8WdPq1J zau>Tv;BzLu)TU1d&|@gS$cUx-&Y{n!gmkrbOV=LT`{px^)VWSm1gg z46kB8jH0npxk^K*3$bqzg}2{V`AqyVoCqO6syvY4LI(U(^8W@Vo_`yqb2lKH74*po z_Zrrj;y&KnLzx^NE=G#wlH@hdIAYHPox`?}DS`U2EY=f!ZHDEeOm=_~BeoWiot-W9 z$Hq5lI#HmCg%<@?r0aP#FMV;_bUc9qO4bkUawlInHZCD_73u+-aE|Q=JT2XA^ZrGm zj$6G+g+d`R4J3`6t&yC^lX-+TSKpg_Z0q{-rP>1h7z?{5@J22>IP@GBt>(vAh*UT9 zJ>5dgdr$c?LPC+eOpyDSaM873Vr#0AIyL_Ft73@s^l z;&m&mLGGKx<(IW|lrK1Pwp0UF`qHZMXZOEXcQ_Q8loD0OmP)6GKh`=#MeuLbIdpqI#lWiPkX7s?Eg>jA-wxHb zq#FzEMQrm{YnC^hWG*d2rlHTICj4fyC8g*OY>Aw=m|%A8L}$(BI68 zyAs`kaHbc#&OYv-o&Tl9=>KI%yJLvb?NKaw6GxyHj|;k#%)8^E&Rzr}cYf%@Y@@^_ zcWu*P?I@ za}=?H{N&xbMMzA?ofljwxw;DMpaT)#JCFAA-EXl^)XbPD3k_1x`lnn`L%`}_bMMo& z-sz?R0yB`40JhCoq%92>a&y@jbb2{t&(O%OZs8M>s!ND6XA+KX;!T$_n8Y*zj@< zsrlgC=wZshhJ@ErcZFni;Ht=|z3C>VUw{E_egmUtLF}CnZI7Z4bY$dT7yF}eS4n16 z@)_)80Yp$3c^Jwbzx>!Iey`-FZ0bWedSFk`<|A=O?>H31;-fsxDy^`aPiz(-BFqE5$aFa0LxwDm{% z9K3#fZ8;skE-xCC{&VM}Z`UWrXD2kq!IU~Fy@T=6&Yr{hwU-~@3+IkegHe1#caQ|< zGDcCNPLAvExl{#w&CM*%Z=PtubL3C|osH5Jvl3vJSzZxW^sbt6}DA0(oMU5M&^EW>lY32-K43}J^z2BaDSgEPY zzTTd$gv2`*8^D~w_(B;64f;+(~@uSF%OD1Tr#OvE_u%YB~39IKnx5o1=GiJE5ycn@L(&;8+sdcI`316P(aXAA|?qoXMSU( z9>BFb!a%@pjQefZS#p~|wfuO5A+*WB!k5!@uy3q?qFvTi7vrql6|XIjrsLnygu@B)tIUQ$QGt+cdh_4^E3uA*Ayq0Ic<96ERW zM?;v60iGeNgE2#e%FI0=c-Fvgeoc1v{nV$NX(U#k6*WwJzdg-Fnn9n zz+Zsj0M@7D1?$}5PMnDChEkgLUS8I67qsE+U{oMw7fGoIjsaM4L+}jey&0EbLxd)B z9?oG&DZDW)3$gF2RlY((wcB%jb+ZajPzYcEPAcMax5 z+dB!WIIYBqGFC{HIVWl4sRMqf&tX5_0{LAr&Ut2+>v0}wL)=Fw>b25%7M>9s=|vSM z06nk<((EqEU*TN?d32xj19W{4)E3|eF?X51am*GDdnWQ4 z3`)~5jxrZ5d>MqY_1iCGm2-0a#s6b>-~2VuT}>J!H@K$a1Le7LmDI9&;MVC^Hv zSIokYkb?TzghqHe*cN15hEIj1Nvq$BmTWl}k(H%aRi-dQD@A-uc0KrnMxf6V!g#UM z*R9iy=ya4GzlH6S6$rjJd5HN!5-$M6Jv4yG)E)SVp{Ua3;#&%J1B&E)xu&OUfhw=< zk_nRtpNSEI6|0G^#DR$`+w_FFM+^pd1$-t0{|HGr!J-PL2q}CKz)-YAUBY^5&z$%& ztiQg2_m`ZI^A8UCA9J`>v{D>e!1pT1!-;}wh|bLFW=4LMbGyt-aT7At&@DVJ#e2^| zrd^w|D$?RLI_!L$psp%k3VJZfy>>$e99_I!-QV0X4MkGx(YhPwecR5`r`)gqIuJR%KBwjIWtq9IWFet=g{2uXEWIv|eRBp5X$5IFZNg z?;ken1*_}|-P2Rt?8jOg*>WfS`}FSbZ|fk57>&3}Jy))*uPx z+%Y&>@fpjLCba4K`}>X#!0%4hgqBy^iw1TmH_f1n9s?3EYvn<~e0kVB7YtaZ3z26( z1G}}?2#}v4uD(_ogL5z*i7uC9+HVaV%ut?xr6{yaGHpHlUktr#5ZCwD>FoHRqY!cs zSsj!zZ5A787kqN=eINy`50*oZK_|)&V1wA&$C8rC6W;WMAxAR${{C+5_j-Q<1qE?v zI?7@+4Cuo?Njd~^jR#BIT)_y$3ufIW6G94hv`9r+F2BL69nlXFG{Z|$g*&8%64ufP z#kz(4fQv5vF&GOtSz84Vun8*(!|u? zqepnY0k2@>($7M4F0kj%_uMP4{3&rT9d<8v(=8-8YAy^f*m#fB_*_nIg>L2&_Qp3+ z1JXC;$tX6@&f#Qp9NCBMe7nOffuc3WUMQb>%IH>CTP1b4?vk7;9<`nGFeeP^qV>0 z9=jp2<*KtfvM=kVxl9LQu`=f&(*hTYFp6?Y z;y^kM7;003BZy{`?eV$f7N7SmKn`iyg0%h$=L+zz7%*}F#KCDu&ME+WPoj&DO_5tk z#$13*V-^lRG)-$Jb@4(1O}o8);Ocn0CeUkpMNJ%^l}H>2UAOy&DaQBlXZgr#%Jo6` zcX@WUdg7;w$pqc{#zpdrxnj|A;JTU@?^zONgrJWpZyIWtMElcPQQ@A z8e8b?Y5>#0!S5yTAymrWzG1WdEV+5erPF2ojyK+y6QAI`kNc7dO10j=q4E{Bd9rf!(Ne%mX|}@Wb$QqD!AHli5`Sf8e1hvcdUu@lVY10yVruRNS%}S-p|OM>YIUDl7^g~J7kx*Yl?w9l zY<|UZYArqolv<9=i{KE?mq$eB_tW>W7o`yh+o>_P>_8$*s9HJN=-GS_J5x{Kcme^1 zFwR~j5Myu$r)Tg!GW7zfxXYijL{8B(q^QpDbu1ns)q*~2Rcrhpb}}T@Z~=4~bbM3x zOkhFEmpVzsrjC27a<@-Uxd`Psxg8`iZ3ZK9>8kin{N>t(Q-;R8pKnK31>G*i-8-E_ z&c)}&&MKFYFVrS`^jdxP9wa#@8Hec3;Br!VQkRJ6sN_9%Pg~4MU5zE|+1d(5PT=-T zzV~=@G6b-s@Cd#*o0W~97;30CiJ+9IU>Muu!X%p51X)(NNUq)Ll(MNY6+dt!w$m?U zr1-i9$x^?NBzG^@#G2gqEMIRm+?`d(@JHuCuR^gvAEKXyu<6>zzudsDMW1nJ5t9)o zf16EHuxKAg>C~UPoD9?X<-#{+Qh9-18!F{bpZ0N`)?vE73syK+#XqqeOy#2?mFd+o zR1BssP?dn;t>fJLzV+xXnT#<8jmFtumg2TM}%vLYu3N-kj2ELydS0K(bGr$WGc?a5`>R!f@e%^dGP^bg5rPW5F=WkTf4Lk7t_1e;Vc3+cSk) zvFd%$AeGhR6*L`x!dCS+Pz>Ak*Sf$7zfX`yJIeoYC$aPk0)p0A=Ry%3BYR<&uDh7DM%ciF520ngR z3>Hutj!9eDvw#FZsFtt8ojmB8k0CaOsGceTF}j4=+G6wUl=2j@8C(?F21Fi()axOZ zI4J08AaRew4$syoD~J~LkLwAJb+o6B_zb}U#aV-uAjodjDy@2a7VN8VP~Ix)tOamLNZ4HE&ntso zKbTzQqbqC{eZ}2k#pT`6Y{H#;4ZUtNdE!$!6w9r^@ct2YH?jmF<}r}M9(z%quyZs5kGsVz!1uF z80wb=;=&J+SFo~`)l({{rocn%HUh5t*(#)OQ6_^*GnQt>)WB|pA@XY0@BKM`a%Dx+ zW4@0ia0}dbaq2jVRdoU~7W9^lSyyPeRnmsus+QE7y(t809MVvgQU5Kn;|K~Id*$`r)uTLb%ycfn;=TaD5vBBL9YUkQ-_vE9NQTUU za-32~@S!|*O>6V+pv(liORoDYvHOVX_x%Jn)KC!Na%+vh!l2sNG(h?}n@gI4uIZIB ze^F^rE0h~%tNi<9Pg1L>?dd^Kll`r3Gk!qT-p^AW_HDGgdR z&$iK$C@6^WRY$f9m_ED7Ow}Cx5;OfNr*D}Q!%6UBZ`-=yt_e6w@HclUtiSapjeef_P)?&MXzUAFG)-T}xb86<9>)oR4OtkvjB*KRRWR&YOgypeV!blob~ zyweU%zFu2+190U7q;v4ctu~xlTz&$Ns+6LT%323~eRYe7fQ)L`-w^R$mLTa7(nN#? zaOns^w!grKlxm#U@u_ zP3nJglqW`wAk@(Nm`4<+{DORYK1rQt#bzGLW9oTA2VfWJKb$8K_n6h^wjZ<0>*l2_ z_4t(WweN46(^W26MiA4LG!?U*DzE)HVW9Op%gJ1_S+!T!x5Gs9?tJ7pT%WRH-U);K z)77Ac(FpBH5yb>>zWE5fI-!TqESH0vNM9Dk-LUk>EgIvAZGM-m_lL)P-jHVzAq~)< z`@QpA^OEk5)RCx4->Q*3UCwN}lsv&!MxWb-8&C zA|!ptU9_}>u@-DCyU1pjqCCsL>>;nmz<>^HC?y#iAH}#G-#VdiyXe2z#1r~44VlIp zP`wq{w?uFuE@0r!5TjsykMR?0Yw7)qQ{gH)^E*6oAEM8tI^9XkMgwgi8??%2{bRb& zKOAv>_V1XD?Z6V@5&H=#5l%uo3Dv>-@Ee`_=q~72v*K8)KtBBFzv9@1b6-e*F{24! z4(c6{doi5cXYCtmu>8FL5ZSjzD80&Ef+J6&7>>qET%SG{J-Lm*lGV~k%#w`_ctLq) zs=O>{=l#G_DL1b|#x(ca@tfZ$bvWLSLb~6-bBFCO$gOLSWX{ra#iE+f=f(0YkumN8 z`!Yn_96Xs(iPy=dh0RBQ^>eIc{HsW6HFR@DG+nCc#H1TI;4=?u@oU`2hcoS) zbFuS)KP|u`;t$1B`t=+^3|60!a{0}5_71KZI}%lkdlEe7oNeiqrqG18SI22-Q~752 z8t=ej6OP<{HEe6iC$P&c7cO2qxSGAXG%|;O9Cw-jKQF-0z=?B8dWlZ)G%5&w7~j)! zVv_vX-;(;EAvkT15byp8m*Xgh)dPk}pYMF@s@juLIsFtV zIuRLn#HVL;rd;IvCROL%VOPpWpE5A}%$VpYYesG`c6@HHD9tDBI2q%VSR3E06^=AQ z${bP?NJEjNaW3fRbHv=sCj%~MYdu!YIaaA6F-$SP*B6fq=~GasGAqKax3#5H2Lg{i z$^O&g>2%jK{SZS0kEe4Cj{{n}_QZ`F zt3hMiwr$&JY@@Ml8;xz-cGB3kzUevd`Toz$uetW#&sz6dPh!3F)OdPZ)#Q5H8!2b_ zR~SvD&|Ls?ji*Im!b4hwEV?>*VsYY#f{*XZT8d_Gj+oryoZ6TX+|FuiT@ir21`Sic zC$+P|M+-9px!!n#cX1fqKt4$U4NjmLkg2fNps-jft8$m7%Ff4!m_nu_+Wq<_ z^l9|N3O(9+kjWcwXa{qKU^O-cOzoRd&m=u$$B?|}vja+(albuo7#5Lx6CtA1TUL-B z34BpMVdEOW&wB8t-Mpl*=;@k_Y7AX9E%%**yt~@;g?$Ta_~`G-j~{1&F1MDrh+bw( z2?9PoKI6RJuZ6lN1qYcV7c6sK*4kvl2%e^Ct+0NwMQpZPm_=AAUdSZGKlr?TBpP%I ziAaFz^tT`J8ywydhpy>)2`y*wTZwu43pi|XOO_l-onn3%&`#rj#>p>_QM2YSM#upY zTW=i&SNP7o3Trk-v7>&I{Uc0`;WL|C8Tb~TAJEW6?Ns+*(%1AJOr@?EuxbduStNkE z|8<#)eCtC$SREqXjA+V<39WW^xyuh(Xzm2DniL1;WZ|8YsJr`@C`1z)-QR`-@qYwt zC3L1`l*seg_2M>QPvX5S{@`1V`dHQ)ecx+^79CaqYkO=D{ zbT~ogx+Kx|{RYz+WvYFtBlJmin+SpyFB*(Fl4Og1LRb!VK5b5V#BHrEH{x$rTqrX! z$XMiX{**{>RPQ_vDN>udIJ2}1aN3UZTqw)I=I-?iW~SIIeX@HPbB0vR+ zqCZ@f-B*U4Vbd|G_m(!Boo+XjfI}{iPWOi>F_VGnVEDl18d}j-Rw@OHctbS`=2fWm)#VmgRJi#JKPKdLWrURge}hSn1Pr+Tdk$$HKmV`(ArVJC4qTwpj?lq(8%zXxIe*djozsfveu@ zNvAwzvtfcoTA>fM6x)1%LBh0%lwM=2qM-sKo?m$t~7o z-lZG5YC+@>#}^l3qMEx9YLgUihTrpYE({U~gxDv#bt8z`T4cQD<9qM+s}o|dNQXT- z4KBOg+}z~R(b2)WM~0~p*R-kmc6yis>%(y`uzB)*oRB!GNV zv8E5#-9lo5L0spGM)tfjp~(RHVNv{c^7K6HzA5NVrq+2jl{X{k$}Q3MqceF??>nVUsu` z?T=>S`)HKo{Z1c)Ll{;DvKukk6}3Bsg5tVGnby8CxXJ754ULSYYU)e{ar1sz*%KpD z4{Jcjvuk;4%$fC7-|YR#qLNY6R^SxFc-D%k#dSBzmTz5A3tv5+m1YM$?htIk0h4^( zcb*QXa9uas>|+xK%%6HMY4^MHaw=3V)fOVFOd(uPx zeMq^%Pq9r^JB!y(0#5qz2FBgC8hoKnK({8*IJYpnEt0?#f?v)MlEs*+m%71#6=;am zYv7M9>5v<;n=g{nk=js+yIhn_o1H?&j#YUYV(BG+P-ISL_yk_;L(iE@YMEn9O>j<7 zqbx=i8Jsq2390=mCF_*JkdhiVJx<{>wv+v5HBB0ShZsjP89f#tfhj`YF9aI7#Gx30 z4k>8Wu^P;cv?}C-l$ga)WUzGF?gBQRHpTdSU?NzIX4kp*0Bs0?>_7oY+pUw72_wMj zmy7Ex>>v6If&D^E?q7UWtNEth27q<_5g3Mqpm^LsBNWv8j4nTuQ=s(L7I|idm>LB4 zA%@9L?Hy6*8?Pma(Df{pZ}iq<+}rL+=#sO(i`|ue2^AKJe%>DJrj1E zE;6GfKI^C(l@hR+Hs8N1+=W-RrJY74Q@9`_zu5MD{fFdwjq^hvAb2}PvAC~?sd&+i zxS|}k_t;`XzoMahQ@y)M-%wCd6HhnWU3ro0UwW?;OVt|Oluha5@LoovhGy=xriK4` zWcSab6q7N4KygrCh?(W5uKR-v43DpKnoi%>WL-Wl5nH^@;_cp_hZvRwVopcL3sw*O zl5r$OlVk5%urR$HBOi;9NAli~52uyBphAZHz+W8T*GPavw8Z1j@MC1eq9Xf6h)B6y zhj>7tM<rEYoQA*rm%Vevsc%HT5-Jy9Aq&OBrYd#dH%2pqV4EXYxFS}O{-_;m@4G0C3qs-h zHzy;9kNcq5Jl>D6R8Njz;>h2>FYPWS5|ynQLg=(VXeP-dyck{Ww#P;)jAzly2WS|> zRef8AqIY+&_XC{Y*u|jyxdlhe@hWt9aO)tRKp?_99J`=jIh;3pXhD=yjy@;D)$e-% zj_FmZR3Zm<8??BJd}11PCyyVlp#76=Hp{{#mCk!!%pG!xeg4p&F*)v$=#|QJf=2Fn zEO*!nea{BSp`ReVea=107p>#GPLFer1-F9KAu7!mmhJ5LGN=2+jLzucQ}Y3%jb(~h z1v+|J-G6rz5X-!;X!2duhKWC|r4Om1H1vOgdeuAZnQ$V?hZoaitEP+zT@sbA-2W~y zAL^T@bagb76J1wpNZjX@T00;73aqBsuKvvDMhQ_Z4sLWP^D%0zIVULzn^UGth(niV z?TC#5k^O>S`xC#QXlg2vbijly-!!pwvUwP^A31lW@IfUH>vv{t!Gw`jYym3^ToBt? z!Bixk-E(e}tqV2XFV4u)Nqj>@C4$uo0|CrS?bE8vi>m z?|&0s{YHJklJf_*&3eX{n+_KAyZz5{mhXE?CN~qhF-IO$et6(^AwR*~@)_o;dWY_m zrsHfGhxVd5I5;}{x4=Gr8?q}SY5n}+C?<_nZXo%BmYcLny$eBbUo*2dJ08Qye0Ua@ZVxS54Bjf0r z2Xf3b8RhaWdEjVYydInYl>zt9z|cU*U^H$!>KK)ugF}5cxzdd6&=UlCGm7uhFWaV# zmrLWx?DozIE4bIk2iQ)Zmw;?OZ`A9XelExu_PkCC;95SWf(;RJy2$KVzr1X%(h$A1 zg|-Uhk7nXDIQm**%TsRPlcVibz{!(BK z4r~H8+!cvMdbL31kDm=6g$}gob9O>nmIv{)WIm=eGSt^?80*LO8y&2mE5#$NWT`R> z`MXdM=#vI(Wt3-o@bui9RLVeFLBm2@FR~n^KjKD3X$bUVm48$s21{!l7W*y(*ZkQw ztxA20DII1ho5*A{<7I8kLgyCnDHmT7dc0`DJDe@leTP3DGD3Zo!O=&CbwF|bB8%T@ zY&apk%VNJ%4~?3mHfX2NHNxZZJ*l81`ajDi!P$z89bz@pRA(u|$H&V60Q{4kCaM&? zIQX{;T0jtBHCWg))t^O9z=gh zo7P!J_kWj@sPE^se`H8+)`lNoaEiJS_E4q2eFr&4*JjAeCC$f|rc%HVWVxZGYia z+&y|Xmk!73I0+qEgl4)W6;a0Xsv$taRPyu}y8U>nRL4WqS4Lv&D3C zmG?R1d5!J6dQW4!A5_kH;o@g3zp~3Yl1W7%PkbsBdr0dxf*mA=xdI+CANbE?UZR;n z_Z=bI=@voTprD{Z+ra-98t>Qpi_%C4O`>mLx9^ToX-rJafu=DlC*pA+*-#-ub)QXm z)UXsBHXV9TZ&m1^S7sneIy7+XkCF}5j{N_}j3hX^bA}LGOc;iuIcI>6CfN)$@SP=djUyrwly4so!-)98S3vq5T}Iw5HA187#Mb+3uG=&YU7nO z@jyD(=Q3U9k7q^JCHU&u5TX(GlU6h44kr1_97~9Gr zBGX#CIou|n?|^#J)6LEq=s+o@{6+N*xyuGzmP@NU1-PxreXq2Hra50F5B(Q_KcwaHEtw@mHjYFqWu>=Ag?Dl_4 zXW*$D9e@~0g|_vqGguZok?G@)l}=`7YlV?=2Y8dEWL*88K_JUQF0?jax;#uxl=Wsi zA2(yZ&ddjYVG^6AQd;8t6yHP%6&)Q4-#nX^I7MUhZtBGd{15Q>bo-j zlFC=cdO*$+)#a@=ty5<_If|S0+iLR1eD(~TDm_}Nt{bi5vO{9Jq+WN~88bnS}cQ>*)=0U(Q;7&fdwjL;aB5XQl6wq3P| zta7fVz4YYQ*!@`33`YLI0Z^{EjU;=?SUB}|3H~&j4wX(_ zl;hSh#S``P`~nD<6A4k>S4Fvw^hq9!Mh+f(P780p73Jqp8x{cFtN4C8vc&)6NkOIAbI*7>G^uT1+zGv*T^Kd4ZxNF63qj71$C@BW?W4FyhZXr9TUHX9MMlZ zOkw9z?;FJzAeg?C2GH<~9VO97D|uo)WcFlZBbXRJ~hjC~mUPPg=>5BPw>p|a)3Dz187Z2b`kV`nwNuH-AZlHLU zW8LS)V^8`Q!=10LmZEoZ@TzC1LZ+%?2zUb$ezp(m3p6-O7cRMz9DS}6Uhl6FrEf+4 z=Blh;f!>o(He4mQXfsaaPGBpVNQODZD5m#cT70SANBBe&L|lqEs8hBX}h!S-iH;ev56<^8bo#;$^$x~#b4c%u24};&waW$-;4fg)GAYV_^MF={<$f2X81U003AHdNM zHf4z0`yqy6M)~}KREM4KkReBgb}IylNdna3^I>{JvDyCkpQQ;Y4w3z^*{R!GV~@K< zwwRZ*L{X?Hel7_8H&W6W76_c%>+4+5w~qo_mMifEJXf>P32t#eplLL`hxWjjk_YMm8V?S_ssq&k@PM`E7PUqIhIWm>m z`gk@m^!P?Vs%GM_7*rXgj%u6~I@tfjj=9rHw%O|7jK$9?J!Al7_pN@{+2l>jFdCOS zi_HyYm+y3-38o!2-3r5vP69%&#oqOx%q?abS)lAT#rX;3-#zjr*PA*x4n}uLsu;P% zogWUV$`>7qMiR8hJe9OFJsoZS=aMyXs?^UmC~)WCn2Jksyu%w*wxUU=tPBUm@lyl1ZbQ5V_ZO?S9_s_D3uDpw%)?q!5|I|1Vj3lvXEXA z?`y-xHp`1cj8jbQ|sp5aGWQyC{eR4Ld?vs38>%X7-`jFES=bEHlAFZ^wD zWt~bx<>-+<|KPww`RI7=VQMX7VL!D5U7kpl$8plx7&?5o)*fJDSl}m5AJD9CAf#pV zYD(dBKL9`mH18c0bTrAqh{g=%>TMKy!|{h%j2MLm`_CHp1Bb3hI8_C#Ta&?*su8PD zvu?86$r%h_&gy9;m*EP&JGC#aQO->>s29DN!D99W*tcL9h5Dn1-_@ca=HZ)L(?0Gk z9{;BFaE~80r__uPtvO`1R@{Js-oN-){CgWhw<;3*`p9090!* zW&`NpIcM~_l4-&sd;yPK9AZ|^M(Rp6*55c-n3#fMvOED^lh7Wo?-8=?SlW!fins}I zFm!rvhPNu4KQ95$zXf6yXPCYDF)v`q5UV90tb(d6*^Ji!D8I<0`h%KpylaIgUnn`y zvb8_)iJ37I?=Sli7ayT3KGS{&V2LmS_T`EB`Kc zSUQ?a0c|q1BY-vErnIK~E7TYBOsxMA*oXgraHu6HDUft^#qTH>i%L1I;Q>Ny38Ifx z`uDygC@*BwJb4^a)5uIn7HdH6h{9HOQ{cOe9i(1Kv+OlES?qOYTB~x;3g?#nlzTeGn|0=XKiXvYdQ1<&RiR1Be4{WHc6ap=1z8HNTtBSdGluuu`l=M~{Y!+UtX4@m-TIUYEseD}N4fd-&7{z^P(9N{3M0PP6C__$s>c3nsYrBrAcr3xlH z@f_X(ivPs%vc=j}|C=C!w7^Z9Gb9nGHd$1Cbh$BJUdS_kfK(9C`;2vP`{vK`*T~;K zm!WcD(Ig%soNsD;1W=Hqz|W5WP|gC%5cTJ*Cix|^=85x~ozccyC!>1?H_a@jGqdgw z8gE3RAgs`e{+Z;FD@|B2YMifJ`)r%+9%ywo%Mkdy-Jjxo-oA>FEesU3%}_<-IdL#~ zznb?iIc+@O_TgnpnF3nijL@lktiuz?X*-2HY$`Tdfk3Ht|9Q(OR-p*NF%*Cl$NQcP zp~y;~zBc?8_>vLlLJU?E=`S>Ngv*W`+6hy5*2@eE15z=(|EQQzDu^manp;Obj)t@* z>D|G1;l{QYsE9Bh4@cfh$2a5)J??1TjrMYf4H^x~Q+n@;&2cE6R-feLdn;lXw@qFp z3b~iIIA7#Xd&B_H_mhP~2q(*VP#A;-I*#bCE3+UAOjXF5t@fLeT|GQGNNYcMBf3ko z!6X?GuhhO-kZuyi_eT)ARX&H?#@F3){&X}Nzs{z-~<9dF^?DoRU)SM%v;>(8(bYkB{^2 z@yK{$27)@)s4@bm8<>s$2Z|}OfqaO@fO{9G(i77^1Vkz^za~y1naQRb?rY%>r&l0Jq$PPIvV0JkT3pNRyKc03xo6B|Ziq zn@s;>0oI-Tz%x?>kVI}v3dc+s6{ji_jp4LdbF}1q)C}o~<*`#a?R9EL3^$ zMA$5%1#7A(*JCe2P@$$tCV0PL@(WkaqKXI1-m{VVfuMb4HjcE2S-b7R%ol~KjD^8aabxXr58EM@&Hxc zD4r}VCh2PG9@pOU{k$F!&;HmwOz9V4>K%qWRJga!d1^8|YszWo3=f7x4uZLh#H5ut zigGX6C7?r_*ps=`C;y8{AG*U!tTUy3-`jX2PV8J@tv?G&VR7+J>LC|KN`y#8 zu1SD4hka?a_P1lL4GvPSkcvG{P;g;o{J$Jg@Ks8%*DZVKvl9=S1SNE&J(@(CGeGLXrhent*3)WPgYw0;Hxca~ikZ&i~qhcPb#h44|sKzZg zLth_@j@Sx5?`9JW$!%$^&%T8G5gacZG=WqhPZVO#<=DC_26W3^k6(QoO_DOxM{S%d z+SH5y>5jU{k(jPnUaTI&W4baVMsyVdv+$j7?0NV)AkM5kLk$x4MGMu(Ojmt8Ms<+i zv}{$e^a)Aw9kBoR^a+(jN?kN%U_Y={w`X7B^30a`-(7#e)zhpk?z;RW?b7Y6u zAy$pof!YHn@aYd~N9fYmg1QW!;pqjy-Y6B`V?;&Fv9Xx`#hs_O?Gx__gXnPQz&7rx z^}74jAESz(4%fZgLg!s z*bTmTtf2Pgx{OC=MnL{R)5PvC0FNA|&N>Cd@MP<^Z-koVM-8(s9Y2@bl zQmv5Vp`5SFM@>0kMi(Zy)}rTGJ1^ifGe0g8=xkRf>Hi5PP0db`36bEz9m;IMTnZni?tzqO>ud{uEp=L4}W5uo^O$&{hfo z44icwK$1mv-i{ER^jE>#T-+*ZK`+5#XCVB7jFK0T9~^hPnoypY{pIkpB2!kCzQLL^!F?YvY_lD(qMwVIC4c8V-PfqlPe8LI;m>pnI1IQwTG)a?KW{Mx08(1MdYKX-yDCgAFtg4@Nxw?@^E7DNKtp6LZ zdDtc_l=MFaORdzJQP+p5O=18W=-op+?pwrgy1Uex-ESmuzAogE+X9{h|3V1&1<9yn zWBs{#B=ctq(bTU8v6jqw2umm|eVy82PU5!efBP&$CdmC($<##ykLGcN0tf}(>0Kal zF!aFfMl)Q!q!iav{n5%aI=M|3_?f+TDbj1N8z^H~sea%3b!NtVuhi79Nv65P0_rO$ zg>{Mci*Osuwx5aJf2HHJVZp}Mm}^fvM=BkSs2RSXHYbRTwOZQ7?bW64@Ih(99X>c5HMg$VVwXF2mX$4R~!iu%k2g`}$EG#A3C8 z@q(_O5&qff<}}M60Tg3(^kC{7|2w+H66p(o7dNMh%l#n_S#*MpeG^6pSD7N@0Nop& zmim4ws8e%WL?uEbaetGC>cOIE-moZ;7i}eaf1;mhDNsiij1rwym#fVj!WY7<1bkkd z_%A}yTX5Gw6sjs)Ny4KazFordwA};v{lxCyqY>4~wiNCBQg=0(9D@bZ%FYbu=eD_{ z?JPeS)>w?FAYQS|W|foianJLz4xLNjAQ&ZVJK_?}nzQqr`xmW@v$V6yMoW_un;k$h z66qShciVQGo1Tr{V*_v;Cz)gvPn#-ZR0tAWr?=+X45*xX@QS^5+pu=>;a}YWH8WqV zS>N})9FnGm@XF$kb-WrpA6+|#pOUxm^YZ-R@YRcP>==|TOs0|4|$D#2ks(1*P;KSxj~_ky3Ne%om$pxEKTL!99UPL$IBE_4#C8b> z$|~1JF+=;IoE^>e9waC~G+=gSGNO~ywCWl`mo!sJ;b&7p>M(Gw`P_<1CT+GsjQ~G& zGVscgZ^^XXBeYLf( zvx-vN@DRSq6(EEP!2J7rZgLdX6yk9rob4lH1nIdiRjW|7#x6!e7rq*>Ep*!-~j0SlO6_r9^Zl;>+$7j0mC^OSzH z)PV(>&aiyXq&=OaazCDgT08RZ*v7x-!T+#YjDjDwH8=}z%49yMIJB>+O$1#L{p~iA zN?Y5*YGB0`E-`?lgfJVS2Ko}YI#kguClpPhtG&nUGoi}h)F<%zDa5xITNVy9c}Yhw z3Z>&_loe-h`cw`>iSb>4x+-^Tl@0Z%Qri@$$Ac&}V($f4TTvh}di;NxYU$JhRxPP6 zWt%!>efQemt?h%zYsFU^45bF|l}67o*rxmp`(RSE^yGnL5%8llSp(qScVDcb;i+7C z=qfZhtLQQb%8+vE^~z98@z?IYVbG3Scz*7I{&bR$7@t>FVBbTkH$5&?&!o-knZ@=v zLBrxSmdf8mIbAe)zJ{a;j-Hrw<(B`|7i1_*1A}1A=tj{C!NXw}f)fjK`2u+1csgGf zZlHhKU#NnH1N6Cfy>IwkCE?O)LhEvKzx)3_c;M2;s770c+*ie17?hTkq|#%=?ebOl z80snxc~`C)(}1{^xZ3pu=TDsj<`HF#AXVcRBDrEY(%6q$5HiGp>FEY5XR5g1i@8P& ziv{IbQ2ILM=#VTU)si+F)p>96aq=pic~IuU6isBu^LwHO^Tt`;ltLE=LenWtre-9x ziLF6%RcqAXD16B4DFE|_PdWv07`=Z z%>7-wka&*)638{;-Ypsf>TsN42x{Tluq$^}b<*n00;as}A|ajNE_u!Slx%f{rc9O} zM1Ea13YS_1;jh3-8V6#W>Ng&Q=^jUCq}TSgwqViQF+hSHcbUWN|BkZn6i748;ac-Z z+;omR?iAh{o`ns9f0)a~^p`3%X!(4^Y#})h@!TqsCFMqpn)MB$o3Z%~GzW{CWN;AV;1lU^)hDi5am?al93T)lD(A(tr9 z>4jH}XnQOHKxrj*OVA&DR=t;qB7^kkUnGlYfhPfAfu**)zfeIbe#scE5+ozmE&Rdj z5Uzlvfw+_8w&bYIlEBK((es__h@L+gw859EDBM81Q#hl*r5W?ZzqOX~m?{E9o~Rq@ zYIKxMul4Sm>vv44r;#oF$fH47iil^%p3MwjVBuW+6_(+ECjt)I4XR%!!q)?S^;iP= zbZMw^4Ls`yq~H@mB^W{(K?H2`6Fun@S#+}hDi`h1-(EM_siX+!ob#+^LlhiOG|>wN z2rg>LKYWQwxVW1Rhu>dXU`Dy-Vbhd(q{PMFVM~#NrVi2+0|K3@FFH!?Gk@SN1Vt+=rs0VOVJ_w}k$fVTOkegU`nABCM?C&W zF|dt-Rmi{_Vb6-(PRe6CIm%0o^`Qldnqzjk%vxd~;wC83I2)XsMRXnuNnrodbmu&?}LY0`eNUA@qbN=?QXRm2cT9z0f29GM2d2pG!3%EuYtG=m8Wm=}86N zF`YnmU@%51)U7%k{;od({KR}<0P!(7J}?gQ)V=qgM2`RjdLig5mIJBC#SGfU41$k* z=*!*qji8@NWd<~Ny(HRdy^{4i!-xuvh*OV5YHDPie^%yS^!-L>!k|W;D!L2j2d!D1 zD@+PlqwW%LNNeC%$Cta5Aqi+c=_sPEn8tft3}N@Iu7G=h?x8d6Z1g>=?R7fdu65YS zygJ1hx|ZNZhv-v-$*x$c?*swz${`zYQnG_R?xw5=WMl#s2(@tE0W`q8H8Map{Uxz$ z07xXat2HmRmYnl>#Be^UOdr)VF9La}2~c_S=9H^tpjfB$GFvP16MIDm9>#XTfF`SR zpNK@-WB%GV{7U5aT~XoR--=)x1g3$NKrV_wE0SgCOTj0Yo0yu%TNN1E-4sVM7F}YGsY-fJ4?m(` zY7vio<(=RZ4Fl+Lb@3oiB}qJ6{}y*tc?~Bf1S{Bw748sr7_EE&IP~AaFch&MhhOZK zSZGyxik3(Yoc|jtfsZmZq|`Y#>X!{>IG7`gvqF34r|ZqFCJS*MebByRdor5LL)1V>z5DVWM7r>ZmCnR#8l2f_ z8Pg%GOs{jd5Bxqv&>i0oPOysIw zcjy{ATb|jfh#Iopfs1<<$qRbEb|{ovBVK}j5$)5^{6sPpT)9X|*5$gT#$kL8c>PG< z?%@l?v{bA{8d30Y7AlzN(3}6gyuxNERL9{&8FgtbmG_1=sc06@d6N~**kYE}{??lv zVYyD?${xA=`Q9<1RSU9sQe;ZPaPXR3=6y2OTf;!^c!y23el%qQeDy;y?=9RbSva5< zHzf>=a43CR;B7OPk?C;d*8&iUnhKt{^N(d;$$Td$v}AF7ke+do1&>^-^9!s@bD8wN zTTg;I5z!NHB6^->ckC{sW+cMxK-S0Z_X)3<0e;?3SDuwY2Tpl|&?9|r07Oye5cf)E^V|Rv+ndP^}=ZKIrF$ z34YtR(ZF?efoYVQ9B<#adL^g7(7l-&35rP4-_S>M=5~ZzD9H3WZi_m_E}`dOxWisg z#^nTb14!)LK&frYg%im<9Sldm8}UOZJ#hP;NDW$D>uK8{PCu~07`lC11y-5W-pXve_Td!dS&r@m=kW^(&mu$N%%m#B`rd;ufK49Y(4Cw$*L2IBt51R6g+Zy4I2cO=+#QGjODfPu12HWhep5}C z`EY@>7uVt8hC@%FOKP=0P~N=kSw%;ghzIOO^e|Zu=E0{R?99OD4;2xCcf&azPK4@A$or@6~OA9 zy~S*na3O9b@EJ~{tiz%1oY9HYJ*Te7$-X!+hW2P7uNXiY2Nqk6K-zbvQ}e@pH=v-3 z<_lC^NwpyT9!cbN`GTz6sF_a};A)Q_-iIf}tAY=N<`c<=EKxWIIOzoB`e1Fncm0?>~OInB0oy` zA8X(l(Nh>)AXB9~9d2LA^?2BPKD~|a&!BYV!66(m2wl(_X*-WMjy1v57`t2Ym! zy)tPw4uo`$sG82i4NMwyrKcydp>`&gTUR4Wv_0b^mZqor@?c{1(yt%&k^5D zerzP)Sw_$)F6umtxLrC{Nf~Qg8nl3TfdbWLjMLqiohIFdA)TF@q>{gse5t|YrR6Z{ zooz3%wYbX6a(XMYtg0@jO-2|~)TU9eE(d9rAIkqzPl38;w05|2%X^=1cit2W=Ck^Db>lSq{--q=UoWk}$lVe+M*SikM0 z#OUisV_}ew(56!HY6u9rH6(|;g)*p?_-zmI>7*hFZZVAR%*yY9_8Ymn zYpX`QjN7=PV(*GJghU<)|NMzR*bSTHvC;~$DoBGjwZUqzKjV~I#HDJ} zM(F3GSR_vDC#vX41`60mfCnz803c#u&o*&-lQuk{U)^skDh)65Uow3Ob;f7uL2!SruU^`F`d#U#UO$G zR^P16v7v)3E~a57oQYU=0Sk^+)(RlKsAB=q^rCKb73A#Vi6jW`{m~hGLE7bWK1c|o z-&aXi@Tx`+gRQTDV~XP-hZ>={oBbWB36WpG6iXtR7|&#MhXT--&HE*7-}6s$oPNf1rmA7L$|<9E_~wmKXa&<~VD;;0}WL zm0@cYOkHrtHFa#{H2yfSIqpT|HVPUf=jJaFZ*sAw897j)_F zpvPgO$~i;3x?pi^l{Nc!C(F!vEKW)3E}y^cBok1V&#_)rmX)5QswNUw{ZZzQF}uj= z&Ul<$rx+XB>zt>ZCL+TytCtPpMNg9!saH&a;F+WplcnYX{mcP98ASjCpyYQ3dO9Dv z`bNk=rXB~=rW^J}Bf*zNiY$$?K%!NwXG^jkNAe{oIG{wx$tzE_00kt@cB9srpvpl? zrGz{~=A67H9gc?IO|oaO%sQ$0BK-o6|Jv+!k;D1AeG>u;oD;0l^)X%Q{(;J6RR?W0 zyL0lb@(D=K_orAFdYsvp*$m~^eWfM804Sxq^`uhK*wFO36W{1fE&oEdX<=gifs^m2 zQrfaQOz6{(XSSHr)<4&8LLH6gl*CWH=pP*&6^m0N;Q+%&?lDVlF_6zimRJ0?JxosC z`Eul)t5aPaBNBvYDe+MVaeWY0r~AVyGOVm|q9tJa_o^W`nMeM)#WM{m3NZr-eRe8L z(JedTCEE~&>69WZ7$QGQl>8IIh2V~s(sPsMi>F(Sfw(g_Wr_ecV>VFT9M_A!}M5 zK$Af*d@{a)yrOVM?H$r=SHoGOM(mlQX3EmkMxM;&N z3R9!HMg~~vm-v%1lfaHdv>o=<&&zL^?T-b@z|DI(uGzKJ5YK!x-QD>yHaMLvM++v5^cyk@N6Zh9GvK7{+iW57 zB@$aeDX`eST-(Lp3jS}7P)5R3^JMRIH+LI>hyBB7QS&ku2W)CMLBeG7{&g`kWA1$I zF>aK6n2uQJfcR?ERv zX)z+2uM6~W9bKBRx{29+PH8%+<5I2ZI@E7_nBSvqzQ@g&`~q{K-I2!XGzo+hd$xbT z%s|>}YEX_N3S#l6htrr=o_~)fGMT?I3AELeQsP9r?W{Uyr%Bw7XR+Wx>5F)6SF%fi zkJpPhREnIU#NPFd+oeS5^sUki-F!^&+sgw})>cO>o;IhzHeWXw%rxSfQ5bobr(&M0 zsccw|Isrq?SO6Fpd3s=h?rKI6So+Lf#p%s#wp6s@UsNP6j+g6OiM9q?o=$gFKNU6goZibkSizgE}Br1WE)CQlNB&`MyYuXH|Y$W{@En zAKOB99HeUpI!rM9^;hmC-8BRLBWOHc&I^2JAt=FL(68tnb%nuNso3%|nAlOM3(nqr zMQnZ~e^%(DCgvU%$|>)}T2PY){#6WxUm&u9E>0p`;IeFf_L7GDAB7wj{F+dS<2|uf zujE_|d5tGlnI z`O$jI&f85ZO#xYw%4)Uh3(7V(6`DZv2{uTx8f(dXaE6~p`-JrRHHk2K7>d>KrsL#F z)L8^i{g2QN2DooFMQXMSbDj@Y`?;h26?1!LImfid0lJ+ZqWHWY-_dS)KTSb0GCMoG8&vv3Mq(@?o>Kt~!7di|9*7<=tO~?GBR-`7-KjOGcHaD3@o7 zNAo|6=@0b%X3+5oT6o^;sU!ur_-#&Wx=0zxCdP$*+5Um9t4nn*2ynQ`=H$o_1mi;{>&Dptu+ImjU@Q3(qXs1N=J z2t5P1Is7JLsT#&ShJV~^VN_+tuAQ><7)o|(Zbs-NyAwjxI09)Dkn~l^C#J|ZR3ch9 z0+S+}8;!aP;+#LAkX`)3k=f?$g!ns)<|Ic!PTmvawcVZXI(?ZiT@~T<^^ODsjXuxJ zg5Ma)h(=wod<6uFXXienAkuJzhWI1uCOu%JnGP9~z#*Pt89Av-?p_*WRK zDSJdZ^Pn-5o^1rC{~uLv6%|(lG>f9agF^^9ID@+e9o*fW;1Jy1ox$Cm;O_1OclQt= zxD({gckVss{%2nHnm5*B_jGqvbrs*;>-6_M=Z3qrlU`mEovJI;m$X)9%Z(W5yTeST z?z9Gjhl-6NQ9}3l0Y)FAYkYk$g+Se&d!b68hqZiQ_02Lv=#U_o1gL$rR=`hInnNn%R?##e7l zIN?KNxh1fpq)HdI<5rvbQJB=cCTA^DbTg~Z;KZF&D-N2qg;J-YB3<~HA|pF*`@%sQ z(#T3@M@O7Pk*D>s%sK3p$SkPo2!vfFk5!0~Z#m?E@$hy&4VW@6Me&kcqy-i6pHJcX zf3rX}Bfscvco>s>s_CL0RZ&iZ{hhOYQC{rQUx25EuHEbV)?e;%^xLy=)h4g5{uMcghRX2y#Amb zN&clK`LqH<-KrTEK!Ev0-;Sl*|6$tbb4+K+VB3K{d8*>O9QBW^uf^=a$@A^%2TMU$m(f%RmCD)sPeBr8LkSWK{~o` zZi)TR*y+hU)|s?=^(`V$uQ6r&^}W|`c7UY$kv4W>>!%Gd8UTLb-v zO`XqW)pPl`S^q9;7lpLSyO#tOMY+(*Rw%G}ax$<=;r4FCQ-{6s+w+G~Z6c?d<^Pho zgfwfcJlEp(kx`iM@wQtD!XGq3dq?5-3VK{`ymJqY4h~YJMn|JOdhwaEFL%B|PfRmF zeOK#$Q=RP{$anrBhbqU8i-2kyFOds~5^%3$D`HFMrL;kSa#4nJjXmxqnz$Z4_Fl!? zBVu_HLpxIEN#t=fL2t6colhNAoJnXQconEVDr0~33gdvm$?a!e9UgT@7=Dx;8@w`A zk4HUGw5cny70pe(>fa45)XvMw(#?kWs|kqs$usdTSNj(m#qS*=ISL3pOk|8xKs6*U zFdzuJh-R`-lE!GxGiPb$)GDQPfEq07ZP1_o3Tk2Q=0m1*=%wgNt>zOpv>c3<7n8kYKDGL$jvw#4 z*9g|JHo+M}GI$DN5EQZCwY{tFlgT@eCa6`mMlmj+;=j6-KWc6~;8!{P%C3ggv~+b& z^uil@{%fUog7}Wmg5n~mxR}5V&3D1hV`mLVo4(?|Vr*>oUgqL!v#bRNYEs@zfYu;p z{8-QiE(_R;cK|5$#@KIyOOX7^)F;4k0>xFUgpt|NN25Egk+Pk>3wmr|RAl)o#6?4Y z#y(GRcm(b)GO!x*{rd04&V{{_uq~^w(|h+N&miiiRiE+dzkk0?e{Uz98T`)Wwa97S z+#5XO+3$$D*#F3na&2ti?|Wk-g)5cUO_i`FT;tF|ZqnINg26(7^$J(ubI=4Pq?e^R;c@1H-@o5#n7L4uq!2E&8bw1!qybQ(J22+)eFy(w_&JXJ|%RF zlN^s8Ujns%zN*9W#nBwkrMLP0L9QY$StYFGnX_>dqTR~R?omHW@k`mjYIBuqVKvY< zWBv={;yZRB5oD8t^B(^i;$tkOgO8$b8#i>b#p{W!feL_4NGB^?_+$5Ry2Pwd#SbGC z3^sBSuBO`ggwCzGM5yst7@9nuXtWRcgczz}Td^t;HqO&2Vp>7~@I#O&bhsa4_FBi6 zxEhW7#rbBq2GYs}@os^o8s4Jamjt`0{i-TEGW0}RB6bV>9z==(|G=F$o2z%%UxUAx zQea(3I^iO0MbJ~mu2|~oqdUD*l9f|Y?cgCEUG#5Q{gf8?f8xj6vyTKMHm9D^zmeg55%#8u}YamN9iHHQ9Ox}Qc%wS6Jl7@$Nl zwTi7IS-R$LK<=3^5t2DD{GR!QFQ9>k53^0S7tEjo^#AuzeW!^^{35r^iSL&tJKnqZ zacJvfC-y3pNQ=cd*+3Ea^HV7RiDG`b$Pfcs>W1ZsdOCx>ET^{ilG*iq&~G+vTJPw# zcS)Cv0?C|Kp%R6`%hQPT#^_(o-m!}d>OxQ73WtCj;)XO3h^J*P@>kPNK!Z>yZL}98 zYY^V{CN@JZz>Ob&GJuFQ@-I4qCukx{pw4F=PEE;we8hA~Pd{p559o*`v5QV|btR3_ zb@hfSe~N2H2o~~TEca6FAhGy(6s>ElP!UW+A{&%9g2O_GW^aEa<-yOJ{e&w=GWyk- zc=#H-HjHNXJmf$E!m9EGM;)x4@d#3tBogzO$6iy)_O)06`5423gJItult2jCZPiiO zZT{rjg(dwRtn{;C%UBZjm^`=C*b~?38C#!S zuVbHP1pQ4GcvP6TKBLg6T5WcnI7ZF&#4)=wtbHI73|Rb! z7H1~TA_7s~pb6p`zG1RvXm@0eB~vgjo(aN4X)K&(nzB6o&b@|7r2Wi<{V21r{3yrt zJiGjzxOkH25#jF&`VV6-d>pK&?pZ}Rv=#V|$jZsCHfN;I#)L3=lLFJ_n|{uZeXo9K zv!v(PcX_>vRHUqwnsKLy%&d6=w2BA*BZXz@6fZfxA)1dhh(lnVoKMhnIkvfStw{_( zuFFr1v&d5V0-cT|56mRB%gf>&CTM4^OoCYr6s-bFgsCN_)@ zaSh|jTM3y9CRc5V65jb3z`}_1DDL*cAB1=dGhDqV>_1LQP*Ql15r{ByvQz}g$&f8C zFMqFx)WG0ie6Rn9LA5`)MR5L+6-%nclrKeFk=$jso~4T7^FNds;*rqsk@X3#{Vq<0 zu7y8wUB}zx&!#pY&`_BB<#xA4LEzW*M=qU2<;HM1V}1^M}4ntE#h8*HN)Hij3GbBF1*YVyy%dg?dx_Q=|wPvj=! z>Rq3KW^r(~i3;M;SaR>@$m$zQi*)`z)DZm+w7KgYp3kh6)6$uP-t*;Cm116lsDH>n zdZic+*6O#?$G`@8;Hheec1gD<96pT%11@!MSy6X%?6-}j6X(Dmd2P`2;lL0!< zs6i6xPvPi>oDxKpfFJDsA+O9X$ zD+7O=v%kii$_aa<`k`Zdf3VP(1+q(C*;xwy4&vp|)3Hid>2frzsW87N4(C$nQ1i^CSDv|QaY!A z=U(^mUAW4b{jb6QDQ7W-DU>ALz7;^}tUfv2}kh?={*=NlKL5}VSl3-?JfIgfU;UKZHqjslj zvGoV{>S-RfYKLI7^x{*39;&qm*7O}a3!DLQVkE^7QiThF&f(B^gOfQ(%IVU5`Jp1s zR646Eu!)>(5`o*NWO*@{gCIwV*OWH7;samn582vX*+27%dqcrG%!et>?+m94+lz4o z1^>+0 zP0|!qj>*JgB-<=P>!2@Gy)<0xY+pUyAQcc1cH&$;#xM%w3D+OorG`4#PRR}LT_mlD z_TO}T`*q*0FwP3e$+ieNd)~gxuzbAUCd*3JmKsQpI}FJi$E48z7Xyd%$_khJMA1~9 zDFA9{i#(p$jjub&#F28TX75=5j8nqPyrKx@V5!%WLazG3}LP2rJ<`l*{;Cok<*LNVTn9VhL)zk0{j zQ!}LThh1D)F4PDMlLT6j_WA7vx?Sf~kRVelJ$J(ixy5^Qb^o&-D-p5=Fk5RWOYhqX zxY_i<@(ye$9n{<^ONgev5Amp6ohM6E5Zv7~fX4^Fu9n+rlc8Fi8;UeXSE63O-> z8R@o8_P7GLk_m8nH=J=ciqz2*(vZO{m{`|Sg57DFip?^UnG@H!jdeM23?_$Lt`%ys zUw=aIymDpOAXGZ*iEMFGurOBRSYavni#Qe*l?V=olK$YtHWsp5Tz9YH%H}wI&X@k; zx3(IkYTqe1`2Akb&fV20F`%oQASdCV z$GsOfj0*7_r{yB<$it z?wV;S_-j1_*$*l)fW`Hu6uAN1OwI82WkEaRXM%a*Uh&}Aujq-KMA}1ilEBeLmhySExV!a3KC_6C^zr z76|qAb|Y2T4*OiSEHsl?ufQof*HYWWG)Q0COTNSVg3LDKZ>6P2@V05b%NExz*g%3W zE-p%xw3hUWbr#=XvjcI)J{xuiVFe6%J^$>8z(ol*wurR6vdR#BFn&c(d#J`$;o&<9 z*!wy2NBq-EkQ*0!$HYhwJpE$eMUn>nsqVoVaW1)M0J-LM)YaqNl=WnfmnF*IjA+v` zEmk5VY67q&Il9-CZ5G#m$@FE3Y>ML(N-#(a6${@%R5*r#P^y&*HX@OSw;LBxVT7>#W#^v}#}VqLOhDY4&5Q>k}01*f2F0y>Mq+-wA!f?1b-QRjPUlX1d#aC#ZQ^pOeWai?P`O z`gp;_pYJL%7uaCNVW4Mp?7@S)q-qrez1A>1p3DAKSwG!=AYmqVA2Z|zqKH!*+`{BX zNl>`ALf1JvzQZBqf{p7J=LmyF;lVJW8J(L5}W8h zYlf>$Q|6yBU7=5q>TE+N#2D0ADl*<~#P6ig1c}orru}WQ7X=(-SQ=C|H8qBa>ZcnO zqSQcIl3Q+0ftRF{gJK(o>eQEZSE4qYsfuP5*B15+JvOm*h7*u9aojY4(WZZrt4c%q z!gpX-*PC7mG02`wT$Eq!_bgS!u5d5XqBu%xi&AY`CB;b1iSFKA*a1-cuj)`&07Elzz4ha1_eEjQ?wW#8ytCuk;-VJt_&V<{I*{@uLO^tCsjs^U)5Djto zc@%NOJbf^>G@*$I7w4^VHzfl{4UagxCNpK|othbcqa6~FJ}yO$Y;l4{xrz$%IMu1i z^)BAkZ`MfSU7%~~Ul!{(_`U8MN8`hLZ;Vp3fVkXfxFfu{CrL5}4!G${y-&w2%%Kr1 zj`O_Ry69jA)-UdeBfn;c{8igP6c`R}ZZ#pubj6~HFtsaIuiiNBa}!<7ay;PKdD4x_ zS*9A@Z=_Y3lczV-KI3gx|7Rj>knEfJxE(m1N*mgyI|wyp4*uSr^sU?+HGmF7E_cTR zIL14PFM?>VN}irQnv=WXFk0pm!@rA`;cU)&z%S;!QuF#Kw7Od_Bem!zCrPVQ1lQ$D zfJpkf-Orr7S}M+vxk>Yrs$p(VN!)0v{JX;e*tV6Ck>P1mFKVLa@TRXHGL~Kk_N7~k z_3N0RoOiwvlMd5O)Wt+Nk$m$4XQoh2se8^CG=2Km@gA}WE(CNOX|)Dc@-w+s8AZ($ zDqGSQY5&$8ZAea3mn1B>eX$UW?_ZPsRCG8ZAa+wZ863s#tK=xrxY?fh%cI+C_g)7( z?;Kj%<$Js_EHi=1@8S#;r-F`KS^ZmN8R~|zm>>;NNz3}gX=w~1+#aM{xf5H2_OBKz z%~57K3Nc3W)@JiS;fsZ|o@NSkdD>fR2)ou~q$N4ZLr)@s1mFL#N;r^Xg!=Z=-94%_^-!S-9Ge(XI zj$^*K!}0lB&A_j6FkSRknl9h%w#Au;5f1h?aa= z7nVP{$ZkVozIvQqc{B`t{|?%hy-@M&Zx{YdtI-JRN{l&qmUJtcU_IFPkxGzwTYrtO z6@sHzIx3$nWOKQ{s77ZPXFGr776KdHXf$0uHS;YjOmU6?hoC}!#Tt?K4|Bb=WJaKC z#cp6TR8{5c6~!slW)T+44Knz^UJzGn3%>LQt#w-i=TF3(uDbovG~!Mp*c32D-xW;L zgzHaZLmy?sTR!!MbB8>_0~fdj8(ISGu{Fhd*p?Re zAF0Mj&0T&L@?2)uenHi9fkI6BJ{FXWfNAtfq9+L-%ZoukLamdV63f{1l?_*B#dH$2 zIbd`FNrjcS#f@4|s6!w7`k1UzI|dOI6=y{`x~#>4^@SophOCxFb6SgcXD{EHSy0h! zKPdcH+Qbmdc(O0}OHuywa#bS2G9%dv;Pe02E&kU-4m(gWuQ!iY-`(#oW9OhlSBXC1 z3PvRYT>A1d$}4FvCf>T;U%RVE-}G?|Im-c86YO}N#GQrd8TcD* zMJ5p-lTfgKUs~UcrRgi4JyFjm$c6mU`rCVSxNyQLYgD@qJ7p5&U&)t)M@T!LU)9Y$ zvElsRmiG!^sk|XWe8z)W({~avr?Kb@eU_3nbJQ*p@8p~&J|0W?mmV8ijazfOwkOkx z#=Lld7l@QbhbWUfmX-tY6qU()2UY!O{WH43JPA_lj|{92M)cB2K6b1~3EYv`Bt zz9fSPmn9xM`)Im|m(8zOD3KDs z3vB_05*&be>2VGkI*Ap{BQLio@#5d{k6mpWo(|q2TuYh( zFCn66^KsnX$NSX|id~yod~yCOf3)9vhA_)q{<&(5ANnPziT^H;AWKcR!VqMwf@|n? zY9iQzwsx&9yU(P2gxfJJ3L0m&Fo#r0oKd%h!m; zYN+(hE$pP9yD$;K4Z)hxqET31KiKgqo0qmUy#L8@x4G(Z)i6d{lb(-`Neu}4p6RVsV-clQqz8twIxd1RdL9Ftxd4U6W#C8H#G7Z64}@{i1H{GW+ckR(o~cf!3;UV2|W1u870kq zJ=7Bnv;#J$y~xg5c(_~(cKMP-+|pn6;g$5;98fYoH`t(<-dNLbfNv#Ji34C!9{wbA zQkf(+YB7x^($Jd?NB(t^r-#9MaGm&RLr&fauI=7=)5N$V$MExeLt+|s5*_rLvc%M0 zF?qM_7=HVW{Ky-+YQHJ8&Qp_($pQ-}q45>5VCVb977ov6WPrH-^YPWym7HaB)p9(4 z0a-eqw{(T2w2M4t4H+xQI+PNM97+o?K8%dS^hB_;;ONB+P2bd~EKNaFb_ew_m~%Zj z8u#Uog`94;1rr@|>fBrXH}M#{@a1|&2FlK@@OvRsIbKzBNPA8Jb&`LgjAfF^2PXip zvROXpBSBGcrAghAuMuXLac94O6qY#H{=I_!5o3jZL`D92n)MjtG(`&}L#f=*n}GMk z&4$IjvOmeDazigLKQI8iDJyZM)CvU!RofM7?(_ggmTPU^t(@_2qEmI+C`kPGx@*+2 z=)X!c<6%XjILetl@IrlVR~3m{zwX4SwfUE%!^avV9obP*FtZ7bw4MUq%@aNhyP9=K z@nTShul8w_0e9D-*eAzfjO5MKe8ZzkRgxf2bIDzV1-7VB`3m&hVc2_ z{gbiy;J9=}<#6`rp69rt$C}t$bej!6ge#G1CapCuq0R@F$(A3jpET&;u)amC1_u}b z3R~#)k-N)WQWS|wAln4980iP} zo#92yWXED+V%qHV`2OT0pDzjUkPDvaW8wi+&JNaSQ6t#u&T*31>=yo?Jq^-%BMjjN z2FL;aRO-Xd**w-~mzSjeo#qFv<9h3)AmJF)+*M@iiLJa1Q$B&-ceV7c2R?y&baGfJ zs5WM~1{7zwV4b}hd4yE~19Jd_1PhY5O}dSg1mNG7UT;V4Q0%}kv$5fU^sb4cIi}fL z9%aSiboAOCln0JAl%s$b-%R1226)ifXHlE1x7)|QN!^)H{huJL@$3z0vhZX(9cYPE z(umVmW$Rja&uLA2eY6JSZ%9^zcQ1j=OeEP@ZU>2MB7eWs*?z&PBv+kU!cm)!e<|10jaGUM9!12S}8sGCGryG_AjCzlU z#Isjm4Cd<&7PhaPZ~25XbT-_Nn9dI~IN6D8t##A)F`UOUQ+$OWJRtn3Y3<$Yg2&ddR`4v*VBSaZS zuLU8bofo<7XbRN}H4gf*5#~ zsrI7*tW7REJVR-Mx1WR~`AX2}m<(>m{AKCzE5{{H{x>vaH>Ozwg{p0u+$h`iFrJL^ z@Ao4t67@bF@9Kr46boSPbMRmt|KjfHJ~IVVCGMbq-N}=6arNRR6;R|Yx2Uh=D(?ef zep$nrzt=%n714uw<6ampFIUwJnP`1K=TcRRqdddNR7{y*9A^rwCc;`G#;Zo?$=o%Q z{tX>VM8S%lY5I98Nq=vfckPR~HvDj>FTpD`Gj@v99{BTr#6_I8({5aDnZrr1Yt+N6 zr(_w?E}wtifJx*;k<-y}SS>I8-;gzyJyH*k>+(W0HG59VW*&T6Xg5051K9HN{`&J|`kBdBdmc?dqt&LNyIyoT0n+`>R7pNs;`!Hua%@^J}0Z8c^aFqdN-c^5w=<^$$KAZ^;M|DV4?(`++2ga{+LC6vH3w35V<($=E{ACXQ0Hx2x z{Iil3HTUbwvn-jml1tW0Yn=^O!Tx+Mii69u$Yv;gRv8wGPDK8{&@uAUpfM84euW{F z48{O!j0&qEbM(-A%qecYO~=pN5+%WfGH@8}m1sw9beSldTI)_m-H=FFpOc%xOgDTGFnW%zbb1;{01rb(#g86w|_WS_nQ^OBSrjj-3~wN?S&CG zs&PMW@%h0n$7lgN{-xi{H(Q@=k5js>Q7?WQJYs_xoVZhc799C_CVe6{q(rIA`J)apP8N(omiH_g@tDN#Km0(A;hB}AWC?Ij?EmhX#i^rWHwHM&T z7A|0!pc;)t-LZ+>$mcn#>?6exgcM6p&2<|>n%8?aua?5`P+oWanEftQH!H_QrJIvv zW4gSNj8bqdnL~mGmuRQc^c)QVdGr_E)c(C0GM>g~~gqRGZ(6 zS5K(C@>S9Ijd02JCXJbP@eTX30G~S-Ipl7G$3BKwY&j;x=g7>8mxBV*g{b zD$*{3s9Wh7!ECgayFHjLsY$X))%IoLre^cbeAtXXqE5k2k}k5qNeU5p25`K zl6EO}pQQhig(BzKFYI!zKY(Gz%IyyN=xQ5TkYo>Gkn^%+aVv4oMydjA5SZvQt&FXp zzY}U=xP_V1ClenN5iMSTIjC#dn9Nw4uJYC}UUb(e_!CW#i!vo45|yjn&2NE9A~z>V ziqkmjVwjkCpBL5@0^DnZLS{JN)2W?x>IPhzu#@pvXsgbv3fx*>2BH_`X)Uq*ZSB@5 zy_nG&HbxBi$@}E&1@WlnO%VZ20jk}qc53^yM{8&oPMVuu=}6 zh{!kiz z&8A*Fj*0u%JoN4E`&uVZ+UhT-*G6xL88;tVMSC?-ixy*sS`|z~DZrcHtE3f*@#bOs z*P23LUWdZ~YvgfmWMNrv;r=?-ist~2THcsGkl7_~8DXB^0;6G0%hjt>ItXH!wJ1KB zm1^&ph8xk=?Y4NsQ%Td&5{TH}u5=x%wj<@qf`An{Z2Keib9(&BheEaqLN!rMN>`DM zE~ zK1 zwK4_RrHuz%L<*NUTT2E826%GmtI<}ByHnPu?cOk~KvpdEKiG)G0(hd=r}8-Bisx$3 zJ-*5EEJ~^Bo^WK*c6`_%?!RyKH!KToGlVp7~s5Z2nY)wow{+ zO>EjoGneXu<>T=w9P5tKTIg?gBQ=*y%-RE9E7nD>~tBR*= zG+ZUGB0I1aze|6>0;M2~5crF$?YUf=pP6p<2fnAx6@T0!twcfLc=XT@z)E=x6qfwW zt_8Z!?>}df_i(ib$eWR!Oe`!)+&T?`vlRWsJXmr#6cQF?99O-;uxJdijjaE(xUUdr zLyV@`RMmh3rkGbBlwWh%WLBH`oQOz*lumWuOvF~oKxq0v$ruoS96 zQL|UoSMFt_6ZITD4n4OpIs;`8TE5s47+qB+L?QXUkN~3dyBk|koDM)r=?*R(!VURk zg)nq*N-iQ9_fd?Me-;gWvAf&uQGGfp?O&6UzTMHC?G|=Bc#Qi2P#6vFGPext&r_jUShOzLF5FVe`C*_axkH~eDnixzlfW>op;1mxl+L$abJrpH&SBiAkigc5g zlwB(_#UR-z5uee?x*;f%>2d2McGP&KsTwH#)3qG_eAI1@%Dbx=5HvVaZ{x7g{JWNo ze2MF+jBfE%gE{VdUTN5F7r*VhJEPtjjRG6sdka(2lHy6y`qs3S?k-#0wA(4`8|gU*jtgC0|3Ieeg|Y@;%i?~p=sfA?{{X{dt$9u$3BLSRj5`T7^bO~R zBn!=}vw&s7JWwx5A0_5sX_IKuclR?W-j#@=Yu{Iy`Q?3`B@#up?Cq86x)f6Fz50fv zIRO|q-?Yfmhul}o6j073rZLrolMfC@JRMBli1w5^7}kv8wC8rwt$c&0t z&}P%o)kPmjMeValC=z5G__(%9x4<;ABiRYA|_5{!#5>>ezPnR_Re~7OYAs(t*kaY#By3P zAO17Bn9}Sa+qr|Ur)(*lEGTl5>K6Gj?eox9nuVF3m#fNZQ=7x%AtR#KGajzoX~B); zuciVY=+=50XUo6qWgg9#NjZ4#oNkPgRjr5#iGJ-hE4REe^-ewY3pZ?th6 zRTa!Y$@2Cp(EsUpcK;*91qY%(3g{K!8?EnMV5YvUvXM!em_ia34Z``|hp#q>PZpvDE2)X~rf`6cd0%zI)U>GR-G%i7(B8 z3Nn#KBF>BmqM9#i`*Lz{!6iJBxP-BfOfAJ?98F|5i*%ea-hG!b0!6{)ElQpCi|;7D z76jVoX}wQo$t}8uPSC8jt%Bqg6akk7o&|@{;cOU^HN_wTVVg zNFiDkleJj`)70c5uC8}qzv0SCkf-2OXrRh0(W5{RL@V2`_eqN|AFXHE`8^`bDGE}r zvp7OvIoXzoj}2dgf(Z+$k0Vd1w-T4ZFEsHP#MDLWTR(ZkvD!WQ8jOX_Vuf%mxNqtYf+OXbm1GTreF=!o`TiZLfIp>#IE`f}l{w+9$X zE_R^4#(!5g(^TcFRrE5c)`v_dI>pK-qCLK$(srgJrh^(eL2^L>qH?dIuJ|gfp7C(- zo*3<=9#g-SDi!FPXn;&c64)|A!M(!ZOVcZVCj^+>?a)?cQh@0lY)I&PNMf@t&^9o} zn!|z%IWWzgdC(taq+no5)%6JO;O!zd>HL;Oq)j=+@wbNvlytoB)rSpS&&`>3KC{6j z=YIvN2oC_wu(ZNF(%SvAI(J-y{!i;3^z8=Lkfi7P|8g zaai&bf%Y3jyt`bgY|@@JSgNJlzTP&|JLf*hyJ}{rVC6uXmfNB5siQSPhc6 zZFE7>S=>NwM&raZ;munQC%L%m@x`?6qy&d}j?+*Xb<%EjY<+CkBX&$@b z-Cffd;Ra!0Q2!ymn;t7KF#$ma7OtaMBK()lamvuXVo%vyZIJkVniSPHuvVgi?!ook z9ZH@OVIc!m<0zV|Zy{s%s{po~i@1z0A34&c@J1Iydv?A;{3lE4vU?{2!xK`5Kq=1R zC~8f4_F}p`hZvmDtX|b(X)2i@&SE(`PpOKF&xs|GdjI~On)ZL12bXWx<2BvJD3^OW z-V#9Y1pP(pFvQ>AEFK1TPywzIxp@h-RCizmRWU8*Kgk4WEeAXbjC|4th>9mXz``AVDL$`1?`rajK7=A8 z5E1Q;`&BdID%aL=jCyornWVRh7@+^#HV8}lH_`KKZSxnwJLG-*1h;q{icFhC?KhI` zkP@-)NhDTmeEsS2tR&+TXzv8C1Y92X&_YcIm?*OJHk$<|fk_<3*8jAjr8yZ9vB?_} z!z@S|zZCIc=thFD=Y``k+7|%5T3FdGn(Z_X)tAsz(G8l-feubw|9{()GJ<=B?G;Ta zjaIWZ4w8lm&JBsihwPwtr=Qf=J;$V(~JQ-7--_C=t zIFaJ!Wd8`(6Quc-g`P)wO6Dp3Ajn98$>fA1^+>Qmcj)+(St@ta+1>dqRR4`6gSG2V zbUTURvFe>~t|+PK2IYxOt?~31O^g&oMexze>S2gq-W!d;`D|=oaY3}nk-!@msRkd3 zaOr^{=uj#q42-!DH)!|!3r3=%e|A2Db61>yP}WZlF(Ra$R8;?RsruH)h6B~Uzg~2U z-bC4wR6fsgdGvB>c-LMdN%U=EMu@WjoRG$e=`^Mtdd9a`R?^}i9I-!9UAJ8LLEE z7!C<)bwTp8#1}-&W-C3sjdvEe$3O0Y8)2;Fa_Q1Xi|_E>yRa7qc3*4Z}(^NV1*U&I^y+t$M_gdC>XXxFCa9Xx&rGF|g*G zjWV)g1?pP*HWD*B&`vCVpsdG%&p9wrM5ym)@pzgYYp7L%EVq5WSBf3`rv+B~B2(!8 zT06iFjHokoFn*Nb>9j+7As@{ldevXC^GSacHwpUHlztFT0S1VLEta<|q2=kq*0F}( z+0Np>8X5#QOcOdWUpKT`OtfNN#lfpuB5Z01#`#-laGRfVsiqTp3 zAtrb-9uj16a?TH)JzWqEbc6gzXp7%Lc8 z-CNbPdIBFDCjBD(S{k@y+KLhcu8tCrA?FSJt8s|OX!7hjB?}jhiHm@QJ$nC-BkZ@> zIuxB5#`xjfFoLiKebY}aL(feCiKGn~&=)@LDi@&wuS7+f!k`}3COM%9&^+i~p}Bxq zr=NB-L!JiyXSxV|xY&az(+gfT>$j;Df%ZF$xN1H)#aaQ4Vk#{8TR=6W=G7fz)`eR* zL46r6KGgOj4I^hxpZ`+?1={X|Ss8hbXFjDUTa{`}B?9j!7!wW=QkFyyM@!#0p~^HOnukrR%(BgDDxWzQZPpramW7J4WXWEb{}O+u zb=lOTNij$YGV=>lOWk;RIG4q{`UHio&kUXT~N(O?sTVJy}qb=yv-`sNhklD zN{ChLtk(xEA<|t&0it)`wKI;2wN_U*gik&lgwE%KPZUyD(uX-myABnvx4!CpB^nPkT*th_sp3x zJzKfR2xfL|Vam0UwK*N89~2Zt1?ta>fUWqlppanj-C-KOx$|=Aw5M(6X6jo1g~6P4?$F;1K1RHTA=R^9(}4D8S((C{#H9-6P9RN8$V1m zd^*c+r9EW$dN5qt45I-4g9vV(tB}9ly?IA#E0WXOgdx51t~aJ|Ab%Gx6-5xEyLcV4On<#&0@<7pl$oO0R3x)>p3`RF?RBHcZ6;5H~ ze^3U(g=8$g{d8JgzY`0Yh!Ea}93j?Z71{LCPKfDP{fGYvFbsUt0}2`{gNf7sn~92s4Z^MB^I@ zjCZ))7dvvA4%Es^a!tzdj4IwM6fAwRKuL$1m> zdt~#I9p24d1gm7kGIG+TON}Ov`}8J?4vSZH|8`^W)|r;<>AGI@KWM3vTH@ zKkoDxwJwwnnNsk>st7_K1W1icuroLl^aze{wrM&oY_a2>H?^Wdu(p=M|KD2*CcK-5 zAZgJpM?HHL;Q+k3u(YyoGEq-)rUhy|@x@wYB0)%R&IHvSSvXg_T$!I?K)`ymNLyUS zP_A;p!n9VR?ZLAItp>Bd4w{bAZr?iTWLU<-k*PUx7V^AO$HobuZ$$$}_KLaiz5n8O zrWFUZnIEz>M>(66V_av9ft{MgAlYq_=^GO6Wbopj7esc?ZhuIzV7kkLMP0lVA%eZ0 zG%v2Vcq}=G!hBXN@vi!*N{&~p90!*P0BtJd$_A^1|KJ#*BbUd~NrJ2&bCuTyZj+}) ztlZ+Np=dWmL*zwb?9u4y{+93ps~-N}qE+8|7~&<7G-lw8$d6r!RlEcGxR^CL48rB4 z(%cX|8B}ZruiU4=Um5Hc4J|G9;WMpq9E#sP=T$(Z^k!5GMD9qTMvr#KLg&+VUWn65BM$?ej%? z1Clg-S*VEv6iTMtiJB<&-Q5t4DHdzRMay$-p0OO1j|#U-m4QX zv@!qO2%f>^@nnA52rahy$nZLLRZ_Yi^3B+hAuLr}-GSvVD9xrj**VBqlDdy^N{!C? zTC6S!EPFqqdA##78F#B~Y)N|Y-doSQz+Iy;{`s~C$c_!UTRvEq1yf)yXTEeFC%l+S z0Vxs634>K}vWVG>xiN<|KDYnKURo2X9nOyY8C#K9D*wD|#nbfTrA;9`Z;(&q;6WE83 z{@;aIA3Cn}BHX!4dKmNnL)JHjhqZRw#%ydfwi?@RY};*Y+h&8twi?^E)1YBv+qo-y zf9HPZKKFmtO0wSRG3Iy)>nCAl!`SW8LP+D-EEi8iS#zyq)L^g>}z@0M8Eo76=t4#njlS_cwoV+~4=d53>~!HZhsR%4ypZ^|}Ms;fo5q{Uxzb>b5!n82FgFZg@l&^@rSIG??^f4lq3)JDkO6 zP2yd0hp~gx_oGEcxdE6|9I#P1*?G2?_ot{0EE@e`8AhhMNE?#%GTmV+ z1?UBZ7ecD2SkRHj8@z`$rJ}!998-^lUayamMWPH6s{Ft?)r|wfZD1T|#EBTdMBn}h z_#&09>Y@y~3__F^7ffVe!l_cjIma2ul9?jTiENJ5*&^GiMF)gK{KS3c%PN6D%fP0J ziL_Ei-lO=LGZ{zEF@LfNXL@w}27tc|pPRx^rjh)^ts_LJXyQy9dct!sC~wBbOD72Y zB~s*j<9{e`zFMYPS)X(Z2@w(Cg(hB?PY^_rtq73??DibbLs23Qzn8W1k5Z(*@$Ieq zyEkr&_KCezU_%P}KJ1f*+9R6QoonSNtQ%!*jP~5#$=L3`3qALq@OuosR8L2tq(rr^}2!93Y_`m(ir&$8>SKj^&@he7mO85l%GPk4=k5DF#LwjKkTn#R;f)kW*!iA97>p{YjXRPWrBZ+3In>NHZn(Z6hx@(KXUu zxHFF}LZnMfq<$UBD+`5D8Um1=LNqQzP`!zUr7&|(lPywK-eaf$nMqK5Nc|ExMT#YY z7jl0H39E4eavVla5D4wdSdXuJEt^$Wk_IWMf*pSdR|L9W)*e<#8vQ1wc%cxE?fAX(cZ%oz z96>>|Oub1#UcU z{+#I5^Z(GiY#|T{d?BjxU56O%pipI0e2E5J2Xyoj#JZDUC`3I{H!LY2_^+`rhpzK( zBY6KjL-wr9&~C1eH7PWHg%lzdwW`%yg5UDIC#Mr~j-UY77QRJnaGIddNX6G^hW?(@ zE5$+4tn8?IGVP!^0($YeYL~UHC{3i#JiStU~ufUb{BauV# zzr>_8VblGrrB(p73?fU%Cn%YH%KyZEHg83;IGoR5BFt2w*c{x@yr2_>02fM6^3TH^ zu?9IUijG#a1$03Ts=m-GZ|gR4hK9F>AxD0d6-mZFJYknoTCx`R8{7(lPL+6G{T48V zVhQl!U^rp`Jw?F;ttNbeQ)2`8j-XoTM3D$2E=jg()Saz4j$9^8taUpkLbbspB6m@O zL4aJ6bk5UP+#L7FdjLp3e!Mv{zUa6|Rn_(p4#xb^Lv5?Z*={26_WlVIU4awZe>beV zDYj=*aZYx|S;?XA91>&iGi@r_5D)3w^U2?x#6^mgMJ%$o!MNGK1*oOL1Bg?G-W#|| zA-V4T=rZ{5h5i+)sRl+=MH#UuVbLJbKhCq;;Hz!Ax@+HP4Q1qZ+73!AB-7Y2I5(Ro zsa@6VsFUI0)EL0hW*QSnzY$+Nj&Q*6R*UzD(o~*udHIb;E_6#O1cXOMMxybDQEZoo z77f(t4AABojerd6vtRN#A@qM>o*w@$^l-J3`fy3WVsi3PR0jfGKJ}>E^#eN{!J6=c zPVq5g$tqjONR_%+2B#(wGA1qnm}LV2tmC?kf_(5`*zfO*Qp?fbNJ;meM0?9-h`1SzF0MUrP57M;V^J zBsmlwykfllx^8+tz0>QT=!WD8SOA-m@RM}PY6zii#Yr~^$QH5JDfojlu?D*RHh>4F zyhm5%ADlVUAlQDNclp~3#kIk@RrzkS0^*3%R8%^a>;uf}vmq^+O_+_i8a3JDG2&G6?2wPUT1c^_Qdj zXkwGWQCytp5@nfX3cQM7t)OI?!Swsb3Yp1-wkW5|_c<@29|3u%VZSYq7T7QGM%XC0 zfKdMmQOrIWNDIv_m7kx#?UlWQ1YX~tWF_7^WJ>1#spsCTRxHfNYG(j7jQ%0Ztjee> zwqWP`B)lj#FX6W`Ed15v5J`#$4!#7Zo1ZE<>qe;(2U?+O-=Fw;x%5aei9Z|x=yPa=51zKM~+P&q@ zs_X;jWq)Bg_tk+5yWNBQ^aYHT-D{ABt;Abe9huqHl{ zqgE^w_xtY@<7qT#)HO3$2$7vpAX3H}qdGZlybSK`B?Q2ztZ{enP2&6!y#YnHHdR0? zA}BZL&JX$26TdL0ID3*q1=kf$arxw(9knGlUp2=d^fyP>=clmdK>wdfT$^kcaGuqm z-~x4k8l#F9b!-5|l_8W5UgaPM zcBKXM(6Z?Y`A#4r*+NYqHxejtI3^qT6SgQQy9wadTSJb6EVs{u%gJ2DSiERzx8U1 zGk4{tZ8x69=P7M99H9YD@}u#G?HX)Z(>c{N>~AOro-O3KMA_XXqC}~T}&<&jUQKBhS#%` zQFQ+*eEci)0lXqhq_L;;dP;T0-#7(clCkt|2yY01Q4<14%)e4X@cuJ&GXMcQe+>YJ zOY&lq06+c)XGpv~!Um)vZ4tNQO!;@&TUS)HQViA>Cid~0z$;HJdAkZ6KS>eX$ zqy)+eNjW<~CE@Q+GGDy1QQwOOcY2v#qz^63OTjyXSi54$BhxXSpV6KHMShTW1B#kS92}6~M zAnqvu1H!XdzovZt+9d38gR|-o}Blma>aWWsZ$8xWzSp&SF`mT3zWTqg!GG(e_IY*QE_nSqJM%GT6%vBCX8wf91g*bPf6VX@8U0 z?o}-R&2`~mgDcSeYV`6wPJXz4cY=KrBy{k&3KU>DUQvWv5|K7AF4v8FSczZc*I+Qu zKjS?=ejuZue)8WRSZB=>O0cfbeh2X$jm%{K14E(0$Y594Cp6u~N#!sQ%Wi})rkbbZ zHrKgho-)f^qG!++kS9&bTVgC7QlkF>N4Yf{v7L3VQad2e_0ex`xyk>rF~HOWUxsl@kz0dberEv^UVC!Oux+7QkdUS8a^bG6Y2;qlAihMCoSky>ReUKX_79)Tv<0iZu zbq;#=(*@Yw#^gu<)(;${C{itkqLu$Ks^Y-hS$g9uy}Nr!gb1E5L13}|uM0AQ z?L`Q7uNsuBi7r4w53va-urZ7Ql%C;;xIh$zNDwrchrR#kJup&207Hn7Z`PDltz<^= zJE0J38GG~QXYiysU%>L`tljmA`up_Ws{jD#n!lwK*x>0DPWMtr}GF6c!%(Gy43vl|rTh5X3bhB%- zcy1n0atu~Wi^O#Au*vEAx~*wD>B4Q8JUZae6VAS`fAi@LuJZ# zu2tskYW=}!zY8l<*C;$wGWLBSEazGvv&cCG- zb5-^zodG^-yvJyFj}00P6NVzgoGb&KHug&lafADx_;?Tj7}nS3O4f!YKTrWDdTBb{ z092V>jP0023QSDQIr|zF(FznywZ$1#?fb@(-+wSplp}3=If`O4)DggJ2{uCLm7#i5 zayYb@K3MvrKoUi06)(lFFWQF)A+0g5;?d!&*QCk;pyBCnCq{knI~iudAQ1v$8$6x| zn|I#=9mK@MFc+pTPzJ@MvFCsUQ+JZnZYgj?Nx@P#J!5 zMY63d@~b*cAXZ_jYTZLwYV#OB4Y)TD0gD9;%YRwm@<>T!`FYof zmA@p|XOY_~54X=NJ9SkE>>QQ+vV&gImuz^|TaMmWidqs95}_)kN;6?SYPx^6gEI}L zRtOACO>=E8GqV0yum|lxc00U>{pq9yNt}x^`WO(e^C6H?eM1w4MyU+}RQw%^Jp~TG z27-A06Z+zuP%hf;;mlkzDh~X@0!Gl*tW+2e@8Yy4VX$NU?kmUt92^j*PJPzTYim(1`bwxNCNT zqgt%^@~V9MomeXe0^u@_kH`^wjxIH+SAyO=xtb2rU>E-t612YNN|&u@EHOtt_L#)5 zM@hDg^aA?O>!y})ibv>u{D+tltY%L`pSq{l;ql`g;`R7|`HllwvKM<1wB)W%@cq{> zvZgmD8kp_k?2JXY|IZe*pEv}=#zo*8scYYUHL=uT!E8y%K`SUIXfZawxS%?OMvtg^ z0q5uc=)oxoZZ2eEF}7W!iz$o2P$0z{kd%RCqdyH5ZP$}A(d{Eb9;Rxe7KOo zbCjXoalg%$U*Qin6>$=I6E|$H3t!N4eSuIyeF2&z^A9Nst#scU!}FO>xoO161b4^J zcQ_(n_&9x2#|IWXes10$XnMU`hiwO^2_+w_3rYWMf3Q08uV&C_i3CMx4szey?(cB{ zzltyulFqV9PEK~cG~t#ttxCPdny(&-D8CHmN$LADdPv?t`hfcSKVVsZ^k zluoT-i3{pOOp_FMqLWGdxHc8`%#g82?E6p3%E1FW!jLJ*C9nZkI#7#vQt{1b@NcWE zGrAsjt7&Upe@t`46x{BkqEe}?s(qDRe4Nn&-@CU2=^^|x*prK0mh5z+QxHGw_7 z%rga^M`DUPq_)U@F?I4euESu&B)Xg_6A2!{KU)&}5&s5?AF4gTwNu^?-Aq`KPkhO4 zQvDMY19y(4gPi#`jA(Auz{o8>mYl6-9Fl5C1}p2ms*1`y)fy;GV%wG^Iz*hxcGwh+ z5;d{WS9fsQbz~fzLo{q`x3TUQ+&V)%ZA}f0VU6$KNrF4r=(5)_%T&iRk!3fT|C?-x za7d6}=+U9vPlD^-Jxi!&e`LNreFe#EZsF=R^h*0H2SS?w>HQE$m|YA1(k; zFOvCn?^A9NUGRqQ55ZAGcz$w~wY0)|z>cg zGPu?VFf6Z1Epg6F9{l%zOZKWAHAL3i}_SZ+K;ycM~O!|=5)i7fI4-wtk`+!flH z{8bU_JUV?6%I{jgWuW9T*Wk>dhTv^0MuSjeZ!AGohRblk0!zvJOQb$?CAbvZ=YS=eCg9T~SM)&7$+hjzWhB5p z>2Bs`M{%Dfe}AiKkX11u8$VT6uW`ziJWYiK#6Hjl80mH?d0#dZdy*+Ll@W*4i?|CU zGY1XYHy-(erJt7q&(~=$ZoNT7#l*I6ryzsNS^a3}J%!+)C(8H*I(-7Jd6IhoZN$yh zVj>uc$e&5y=0sMaG;l*86|5%%_|(>D3{m`qIn6 zK~Q)_4p`=lxLH~r>$=&h&MiU}kCz$-S;_*JELi(A7!LfeQW(Tw|E+Da?gak<8tNEK zLIBvil1T~52>AdtfW9H?zkLG$`M|)xQ79UT#mToC3FGZ2GVJImkvkr-+y?`W!$yQgLoY3~bd6#SLD_YB{sJoi@vj zVzsDdG20>kaWxGE28f0snm5shOrJ9)#)#UC=vPsE&>DVWQRO<~g_Ssb1 zQWrCl2&e33EqZ$>tZT!C1G$T>3HXNF1T9J3{$j0F-|pU7C2Q`D=cUa*ErGx)D+>(# zqd!F4d_bAx(M?*e%xf2s@*OYk^IcbmrQ!Sbr7&)9fne}TT$?EQcna1SAIK7-Eyg65 zf%}}9~O^vz<)o>^vvfwjl_R(g(CZzBc)-j1~Uiw z<-g&Q3=2ZCa@Tk1<%6(k_j1DG_O94r6poLEk0-XXTt=B7y-10b(VTr53ygkD1_cxv z?SmhxqohA3g21r?D%RNkL+_p-@b78)I`Fa?wC98EVaCN}uxpxqS9o|7%(xOJiOTT5jasnznSovw5WsJ<}s;xERY zBLD>QISptOCaq6DKZ&|bqw6canyfcxA>UlZFR~Z+`m|K?Lf+M?C<*)egqn(I_wjTU zYmMbV{Dw~sLOg@-Mp0Ey3LO2-XPzXuqJZV}C1%}6y8LK(r@WY$n;GmXxeAKig$X}! zNL>#0wNNtlh?jIRW1)1S7OkV*5eJbj6U0`Zcm8J=fTc{=zq?6hFNm?8YWMq4Zx@H_ zAFrw1|uu-OV|SS z)F$COdxA73(H{7%)s1z#TAPBd8Fbkg?+lA=9>vgGLq8mc0ikmOHi=jw#VwrBEAC^i zFwW(9u;?j>`v0OFhQ|n6SU_ZSKH$e>x2 zd-8w%oj|V{Df0P|%JnONobME0bNZCo$a(K|GJ-vkZ1Q;;enx-h&&`-B6&{?v8JI0w zFDbSC{GWEm5uk8hpKtn#kAD?;>h7}^R0J}h3Jk@S&&oCl4n0Wg4vD5m?d0l8G5S1Z zS>s{8v;T(1MS|4ZDN9ICC0bkXUMo61^y@Ui(6R=11;PVgGXuJEi>bWD-cccy!?~Ay zvx6WDOR6;q?heo{)TndVnM-~1W1kx7*)ePJJ zS#^tSi$fQtA-Jjm{*2R{AfS;{8v$L~{9zWthCNGT{r3$f#HW9;S+nS!59y^>fhQ5x0%K6zno_+D3^xp&VkZ7Drg$3j``$9MO4-l0E zVd$>%X}=nc)$ynk*=^qEX{x!(V|Sj3=CwY&FkrjT6BNsZn^+hd&6YgFc%9$Oe;3XR zd+fmb&eg?fG8%9g^WD!FGgyIoch1wz?H1k3{at)L8QUqd8ESvi&;kZi_k7#G@{7x+ zCn+WDn$QOZ(h&nvcMilI)EGajOLeu#?d3pmypK}*BOOM#eKBfJE4JH_!=iX(UwcU~%_80!K96Z~7^5{&`-tMc6 zPZHlB_ZNC=eT=fkOT+Ua$Xk(^2`W5QYRQ^flxVkC_}?9}l=u`;Wrp__W&02u2SdLVXY#J*!7 zEiCQS&Ea~xI6Cpk`{9a#O5Q7Xhj7CDGW6lk7rpl8?`F#NVRniJ%y5*#r6%)`QzMRR z%|TyAm7PJGrgowe?voh}(Jk+K+#fdg)j*B+6NhMNO|W443J!2_zg=yppWR zH*QY)JxoMv;MH-v&ndlFH;~EXe9XCHMGZ0lepO+xgto9kRAJye^eL8H&C715e{j3Q82 zkynTeDMgG(Ux{8#RTe7U?VY{EmuZHuO2XJX7&$aKg5M(hhfZxJH^mBUe5_HI zPTl7Pa{Jg{(a2}h_7&xIS;%+O(9LV!O1WHf1i5|Q%QTYsbnQ#Bw*i_Kht(Q zQip_m!+mxiTF{<&d0wbryAILLbj3`4+Jb-PL>!>~li%a?~N{ zD0L%|x))0mdf{L6l+0?L1&=042f7Z1wloF!u)UO(zD_pa`V?_`uwGt%h!hgr+^L(1 zG5d^SF*97|6G{eot=Np#F)V-Z^V0+VG|!jnIXT#edSpV0Jc^%ghoR1ni8a^@6E>ua z0UGj($iMnaO3!t<5MpfAZiGl8W_)!Ni`}@IeF*Tis!gvckK(cOHP2^^KHKKO_w+90 z^DNlMtx8~^cUdH(X{&c{P~9nDNEM5Gi!(~`Op)tutz8$wL}5UTZ~K~<<)le9>h8pl zThCrL+rHuEq0BZHq+ z89H2J*4UT^b#oQ;rNk~h_}TJVG6OaS;udc`c}7Kl5|L_#&F#THA@KVkV)at zAI-jj-Y_1B&kE=cx5J3eb&DcJBEb{_5!SNM_^^Mt$nC?cTFP;iadXS5q}(4jDbTAl zup-o~Q%fGTrT#X3$sT5x$9vd)%%pupOPw?3NNk8Vj*hq?bu>DHV&LmuF zJDIneE7H%ukZ^@Y_0}_| zI}A$=cbrH?0k@RTwy63%voBnZcv{>RqoQ9<|CUa5w-M92bQ|2^{Sz6Td##tqrAL7BGp%R+f+L233)%y7WT`^C=3;*`v(%8vh zs}~|w(1Y0TJ%(#@-ydCowg8943|;yKCVpjgbuKgYYs0#+ugqZzUD3!)`dLjJE~9`w|M@$Yea zppGE_yaJ8v;&2Pg%|$~!0-y76e@;HWwJ*$Q5e#ji-En_16WlimFY^81rrVpl<4M=y zZ!pxss6w6@%NA>V)@Y2F@#grXv(c!H-bPOxhSr%;xbP+aL7LrCoEXiO?T`z+CQlL1 z8dv$c@8Ssoqsd=GdP*EkQ3yJ`ML;{OlkRCGfe-7GwkKG2oeD3XT&bFwYc;~wMrYa1 zSeUOsvpa@g0HCA|g|0K*QS&}Y7_41*o!2+U5h<97zJdEPn6_ZWR5TT~>BwIys¥nP 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%0D*0$1bL4P7=>mm*HH1%H0}nH)NLJXo2W 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 U(^7-wbHJC};}?%|9~k-kA71cm9smFU literal 0 HcmV?d00001 diff --git a/crates/miden-agglayer/diagrams/ger-injection.excalidraw b/crates/miden-agglayer/diagrams/ger-injection.excalidraw new file mode 100644 index 0000000000..4899e06b26 --- /dev/null +++ b/crates/miden-agglayer/diagrams/ger-injection.excalidraw @@ -0,0 +1,267 @@ +{ + "type": "excalidraw", + "version": 2, + "source": "miden-agglayer", + "elements": [ + { + "id": "title", + "type": "text", + "x": 250, + "y": 30, + "width": 400, + "height": 35, + "text": "GER Injection", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "ger-mgr", + "type": "diamond", + "x": 30, + "y": 120, + "width": 180, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#a5d8ff", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow1", "type": "arrow"}, + {"id": "arrow-observe", "type": "arrow"} + ] + }, + { + "id": "ger-mgr-label", + "type": "text", + "x": 55, + "y": 150, + "width": 130, + "height": 40, + "text": "GER\nManager", + "fontSize": 18, + "fontFamily": 1, + "textAlign": "center", + "containerId": "ger-mgr" + }, + { + "id": "l1", + "type": "rectangle", + "x": 50, + "y": 280, + "width": 140, + "height": 50, + "strokeColor": "#868e96", + "backgroundColor": "#e9ecef", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow-observe", "type": "arrow"}] + }, + { + "id": "l1-label", + "type": "text", + "x": 65, + "y": 292, + "width": 110, + "height": 25, + "text": "AggLayer L1", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "l1" + }, + { + "id": "arrow-observe", + "type": "arrow", + "x": 120, + "y": 280, + "width": 0, + "height": -60, + "strokeColor": "#868e96", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [0, -60]], + "startBinding": {"elementId": "l1", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "ger-mgr", "focus": 0, "gap": 5} + }, + { + "id": "observe-label", + "type": "text", + "x": 130, + "y": 240, + "width": 90, + "height": 20, + "text": "observes GER", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "update-ger", + "type": "rectangle", + "x": 310, + "y": 140, + "width": 160, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow1", "type": "arrow"}, + {"id": "arrow2", "type": "arrow"} + ] + }, + { + "id": "update-ger-label", + "type": "text", + "x": 325, + "y": 150, + "width": 130, + "height": 40, + "text": "UPDATE_GER", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "update-ger" + }, + { + "id": "bridge", + "type": "rectangle", + "x": 570, + "y": 100, + "width": 220, + "height": 150, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow2", "type": "arrow"}, + {"id": "arrow3", "type": "arrow"} + ] + }, + { + "id": "bridge-name", + "type": "text", + "x": 625, + "y": 108, + "width": 110, + "height": 35, + "text": "Bridge", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "bridge-desc", + "type": "text", + "x": 585, + "y": 150, + "width": 190, + "height": 85, + "text": "1. Assert sender\n2. Compute GER hash\n3. Store in ger_map", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "ger-map", + "type": "rectangle", + "x": 610, + "y": 320, + "width": 140, + "height": 50, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffc9c9", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow3", "type": "arrow"}] + }, + { + "id": "ger-map-label", + "type": "text", + "x": 635, + "y": 332, + "width": 90, + "height": 25, + "text": "GER Map", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "ger-map" + }, + { + "id": "arrow1", + "type": "arrow", + "x": 210, + "y": 170, + "width": 100, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [100, 0]], + "startBinding": {"elementId": "ger-mgr", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "update-ger", "focus": 0, "gap": 5} + }, + { + "id": "a1-label", + "type": "text", + "x": 225, + "y": 148, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow2", + "type": "arrow", + "x": 470, + "y": 170, + "width": 100, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [100, 0]], + "startBinding": {"elementId": "update-ger", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "bridge", "focus": 0, "gap": 5} + }, + { + "id": "arrow3", + "type": "arrow", + "x": 680, + "y": 250, + "width": 0, + "height": 70, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [0, 70]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "ger-map", "focus": 0, "gap": 5} + }, + { + "id": "a3-label", + "type": "text", + "x": 690, + "y": 278, + "width": 40, + "height": 20, + "text": "store", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + } + ], + "appState": { + "viewBackgroundColor": "#ffffff", + "gridSize": 20 + }, + "files": {} +} diff --git a/crates/miden-agglayer/diagrams/ger-injection.png b/crates/miden-agglayer/diagrams/ger-injection.png new file mode 100644 index 0000000000000000000000000000000000000000..31bee2211068d37bc2225e6e91b67a41edd95440 GIT binary patch literal 147401 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 literal 0 HcmV?d00001 diff --git a/crates/miden-agglayer/src/bridge.rs b/crates/miden-agglayer/src/bridge.rs index 08b493f947..2ec155232b 100644 --- a/crates/miden-agglayer/src/bridge.rs +++ b/crates/miden-agglayer/src/bridge.rs @@ -116,7 +116,7 @@ static LET_NUM_LEAVES_SLOT_NAME: LazyLock = LazyLock::new(|| { /// - `update_ger`, which injects a new GER into the storage map. /// - `bridge_out`, which bridges an asset out of Miden to the destination network. /// - `claim`, which validates a claim against the AggLayer bridge and creates a MINT note for the -/// AggFaucet. +/// AggLayer Faucet. /// /// ## Storage Layout /// diff --git a/crates/miden-agglayer/src/claim_note.rs b/crates/miden-agglayer/src/claim_note.rs index 5cd5b9f17f..a3c5702bae 100644 --- a/crates/miden-agglayer/src/claim_note.rs +++ b/crates/miden-agglayer/src/claim_note.rs @@ -162,7 +162,7 @@ impl TryFrom for NoteStorage { // ================================================================================================ /// Generates a CLAIM note - a note that instructs the bridge to validate a claim and create -/// a MINT note for the aggfaucet. +/// a MINT note for the AggLayer Faucet. /// /// # Parameters /// - `storage`: The core storage for creating the CLAIM note diff --git a/crates/miden-testing/tests/agglayer/bridge_out.rs b/crates/miden-testing/tests/agglayer/bridge_out.rs index 52c11a6a73..e0a61d3e47 100644 --- a/crates/miden-testing/tests/agglayer/bridge_out.rs +++ b/crates/miden-testing/tests/agglayer/bridge_out.rs @@ -16,7 +16,7 @@ use miden_protocol::Felt; use miden_protocol::account::auth::AuthScheme; use miden_protocol::account::{AccountId, AccountIdVersion, AccountStorageMode, AccountType}; use miden_protocol::asset::{Asset, FungibleAsset}; -use miden_protocol::note::{NoteAssets, NoteScript, NoteType}; +use miden_protocol::note::{NoteAssets, NoteType}; use miden_protocol::transaction::RawOutputNote; use miden_standards::account::faucets::TokenMetadata; use miden_standards::account::mint_policies::OwnerControlledInitConfig; @@ -156,7 +156,6 @@ async fn bridge_out_consecutive() -> anyhow::Result<()> { // STEP 2: CONSUME 32 B2AGG NOTES AND VERIFY FRONTIER EVOLUTION // -------------------------------------------------------------------------------------------- - let burn_note_script: NoteScript = StandardNote::BURN.script(); let mut burn_note_ids = Vec::with_capacity(note_count); for (i, note) in notes.iter().enumerate() { @@ -164,7 +163,6 @@ async fn bridge_out_consecutive() -> anyhow::Result<()> { let executed_tx = mock_chain .build_tx_context(bridge_account.clone(), &[note.id()], &[])? - .add_note_script(burn_note_script.clone()) .foreign_accounts(vec![foreign_account_inputs]) .build()? .execute() From 954a37bc138f4705e5fa01352cc1201af3c6db98 Mon Sep 17 00:00:00 2001 From: Marti Date: Mon, 30 Mar 2026 20:41:57 +0000 Subject: [PATCH 2/8] chore: bump versions to 0.14.1 --- Cargo.lock | 16 ++++++++-------- Cargo.toml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cfcdf4df6b..49fe4de828 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1514,7 +1514,7 @@ dependencies = [ [[package]] name = "miden-agglayer" -version = "0.14.0" +version = "0.14.1" dependencies = [ "alloy-sol-types", "fs-err", @@ -1588,7 +1588,7 @@ dependencies = [ [[package]] name = "miden-block-prover" -version = "0.14.0" +version = "0.14.1" dependencies = [ "miden-protocol", "thiserror", @@ -1799,7 +1799,7 @@ dependencies = [ [[package]] name = "miden-protocol" -version = "0.14.0" +version = "0.14.1" dependencies = [ "anyhow", "assert_matches", @@ -1835,7 +1835,7 @@ dependencies = [ [[package]] name = "miden-protocol-macros" -version = "0.14.0" +version = "0.14.1" dependencies = [ "miden-protocol", "proc-macro2", @@ -1873,7 +1873,7 @@ dependencies = [ [[package]] name = "miden-standards" -version = "0.14.0" +version = "0.14.1" dependencies = [ "anyhow", "assert_matches", @@ -1892,7 +1892,7 @@ dependencies = [ [[package]] name = "miden-testing" -version = "0.14.0" +version = "0.14.1" dependencies = [ "anyhow", "assert_matches", @@ -1920,7 +1920,7 @@ dependencies = [ [[package]] name = "miden-tx" -version = "0.14.0" +version = "0.14.1" dependencies = [ "anyhow", "assert_matches", @@ -1937,7 +1937,7 @@ dependencies = [ [[package]] name = "miden-tx-batch-prover" -version = "0.14.0" +version = "0.14.1" dependencies = [ "miden-protocol", "miden-tx", diff --git a/Cargo.toml b/Cargo.toml index 722d97948d..3da7d13644 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ homepage = "https://miden.xyz" license = "MIT" repository = "https://github.com/0xMiden/protocol" rust-version = "1.90" -version = "0.14.0" +version = "0.14.1" [profile.release] codegen-units = 1 From 596975eb8ac8557892f0a9ae86a4d6e571c9b84b Mon Sep 17 00:00:00 2001 From: Ignacio Amigo Date: Mon, 30 Mar 2026 14:38:01 -0300 Subject: [PATCH 3/8] refactor(schema): felt<->word --- .../component/storage/init_storage_data.rs | 4 +-- .../account/component/storage/schema/tests.rs | 2 +- .../account/component/storage/toml/tests.rs | 6 ++--- .../component/storage/type_registry.rs | 26 +++++++++---------- docs/src/account/components.md | 2 +- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/crates/miden-protocol/src/account/component/storage/init_storage_data.rs b/crates/miden-protocol/src/account/component/storage/init_storage_data.rs index 6a0f560d55..8eaa214894 100644 --- a/crates/miden-protocol/src/account/component/storage/init_storage_data.rs +++ b/crates/miden-protocol/src/account/component/storage/init_storage_data.rs @@ -47,9 +47,9 @@ impl From<&str> for WordValue { } impl From for WordValue { - /// Converts a [`Felt`] to a [`WordValue`] as a Word in the form `[0, 0, 0, felt]`. + /// Converts a [`Felt`] to a [`WordValue`] as a Word in the form `[felt, 0, 0, 0]`. fn from(value: Felt) -> Self { - WordValue::FullyTyped(Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, value])) + WordValue::FullyTyped(Word::from([value, Felt::ZERO, Felt::ZERO, Felt::ZERO])) } } diff --git a/crates/miden-protocol/src/account/component/storage/schema/tests.rs b/crates/miden-protocol/src/account/component/storage/schema/tests.rs index 99161c5994..5ec22680ea 100644 --- a/crates/miden-protocol/src/account/component/storage/schema/tests.rs +++ b/crates/miden-protocol/src/account/component/storage/schema/tests.rs @@ -97,7 +97,7 @@ fn value_slot_schema_accepts_felt_typed_word_init_value() { init_data.set_value("demo::u8_word", 6u8).unwrap(); let built = slot.try_build_word(&init_data, &slot_name).unwrap(); - assert_eq!(built, Word::from([Felt::new(0), Felt::new(0), Felt::new(0), Felt::new(6)])); + assert_eq!(built, Word::from([Felt::new(6), Felt::new(0), Felt::new(0), Felt::new(0)])); } #[test] diff --git a/crates/miden-protocol/src/account/component/storage/toml/tests.rs b/crates/miden-protocol/src/account/component/storage/toml/tests.rs index 221c18c0a6..f445fad344 100644 --- a/crates/miden-protocol/src/account/component/storage/toml/tests.rs +++ b/crates/miden-protocol/src/account/component/storage/toml/tests.rs @@ -752,7 +752,7 @@ fn extensive_schema_metadata_and_init_toml_example() { }; assert_eq!( protocol_version_word, - &Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, Felt::from(7u8)]) + &Word::from([Felt::from(7u8), Felt::ZERO, Felt::ZERO, Felt::ZERO]) ); let static_word_name = StorageSlotName::new("demo::static_word").unwrap(); @@ -831,7 +831,7 @@ fn extensive_schema_metadata_and_init_toml_example() { assert_eq!( typed_map_new_contents.get(&StorageMapKey::from_array([1, 2, 0, 0])), - Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, Felt::new(16)]) + Word::from([Felt::new(16), Felt::ZERO, Felt::ZERO, Felt::ZERO]) ); let token_metadata_slot = @@ -941,6 +941,6 @@ fn typed_map_supports_non_numeric_value_types() { let key = Word::parse("0x1").unwrap(); let symbol_felt: Felt = TokenSymbol::new("BTC").unwrap().into(); - let expected_value = Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, symbol_felt]); + let expected_value = Word::from([symbol_felt, Felt::ZERO, Felt::ZERO, Felt::ZERO]); assert_eq!(map.get(&StorageMapKey::from_raw(key)), expected_value); } diff --git a/crates/miden-protocol/src/account/component/storage/type_registry.rs b/crates/miden-protocol/src/account/component/storage/type_registry.rs index 6db8c9716c..88c884e9ec 100644 --- a/crates/miden-protocol/src/account/component/storage/type_registry.rs +++ b/crates/miden-protocol/src/account/component/storage/type_registry.rs @@ -280,17 +280,17 @@ where fn parse_str(input: &str) -> Result { let felt = ::parse_str(input)?; - Ok(Word::from([Felt::new(0), Felt::new(0), Felt::new(0), felt])) + Ok(Word::from([felt, Felt::new(0), Felt::new(0), Felt::new(0)])) } fn display_word(value: Word) -> Result { - if value[0] != Felt::new(0) || value[1] != Felt::new(0) || value[2] != Felt::new(0) { + if value[1] != Felt::new(0) || value[2] != Felt::new(0) || value[3] != Felt::new(0) { return Err(SchemaTypeError::ConversionError(format!( - "expected a word of the form [0, 0, 0, ] for type `{}`", + "expected a word of the form [, 0, 0, 0] for type `{}`", Self::type_name() ))); } - ::display_felt(value[3]) + ::display_felt(value[0]) } } @@ -676,13 +676,13 @@ impl SchemaTypeRegistry { match self.type_kind(type_name) { TypeKind::Word => Ok(()), TypeKind::Felt => { - // Felt types stored as words must have the form [0, 0, 0, ] - if word[0] != Felt::ZERO || word[1] != Felt::ZERO || word[2] != Felt::ZERO { + // Felt types stored as words must have the form [, 0, 0, 0] + if word[1] != Felt::ZERO || word[2] != Felt::ZERO || word[3] != Felt::ZERO { return Err(SchemaTypeError::ConversionError(format!( - "expected a word of the form [0, 0, 0, ] for type `{type_name}`" + "expected a word of the form [, 0, 0, 0] for type `{type_name}`" ))); } - self.validate_felt_value(type_name, word[3]) + self.validate_felt_value(type_name, word[0]) }, } } @@ -707,7 +707,7 @@ impl SchemaTypeRegistry { // Treat any registered felt type as a word type by zero-padding the remaining felts. if self.contains_felt_type(type_name) { - let value = self.display_felt(type_name, word[3]); + let value = self.display_felt(type_name, word[0]); return WordDisplay::Felt(value); } @@ -737,7 +737,7 @@ impl SchemaTypeRegistry { // Treat any registered felt type as a word type by zero-padding the remaining felts. if let Some(converter) = self.felt.get(type_name) { let felt = converter(value)?; - return Ok(Word::from([Felt::new(0), Felt::new(0), Felt::new(0), felt])); + return Ok(Word::from([felt, Felt::new(0), Felt::new(0), Felt::new(0)])); } Err(SchemaTypeError::WordTypeNotFound(type_name.clone())) @@ -776,12 +776,12 @@ mod tests { let numeric_word = SCHEMA_TYPE_REGISTRY .try_parse_word(&auth_scheme_type, "2") .expect("numeric auth scheme id should parse"); - assert_eq!(numeric_word, Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, Felt::from(2u8)])); + assert_eq!(numeric_word, Word::from([Felt::from(2u8), Felt::ZERO, Felt::ZERO, Felt::ZERO])); let named_word = SCHEMA_TYPE_REGISTRY .try_parse_word(&auth_scheme_type, "EcdsaK256Keccak") .expect("named auth scheme should parse"); - assert_eq!(named_word, Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, Felt::from(1u8)])); + assert_eq!(named_word, Word::from([Felt::from(1u8), Felt::ZERO, Felt::ZERO, Felt::ZERO])); let displayed = SCHEMA_TYPE_REGISTRY.display_word(&auth_scheme_type, numeric_word); assert!( @@ -798,7 +798,7 @@ mod tests { assert!(SCHEMA_TYPE_REGISTRY.try_parse_word(&auth_scheme_type, "9").is_err()); assert!(SCHEMA_TYPE_REGISTRY.try_parse_word(&auth_scheme_type, "invalid").is_err()); - let invalid_word = Word::from([Felt::ZERO, Felt::ZERO, Felt::ZERO, Felt::from(9u8)]); + let invalid_word = Word::from([Felt::from(9u8), Felt::ZERO, Felt::ZERO, Felt::ZERO]); assert!( SCHEMA_TYPE_REGISTRY .validate_word_value(&auth_scheme_type, invalid_word) diff --git a/docs/src/account/components.md b/docs/src/account/components.md index 4adcbcb6e3..769e0c5925 100644 --- a/docs/src/account/components.md +++ b/docs/src/account/components.md @@ -98,7 +98,7 @@ In TOML, these are declared using dotted array keys: **Value-slot** entries describe their schema via `WordSchema`. A value type can be either: -- **Simple**: defined through the `type = ""` field, indicating the expected `SchemaType` for the entire word. The value is supplied at instantiation time via `InitStorageData`. Felt types are stored as full words in the following layout: `[0, 0, 0, ]`. +- **Simple**: defined through the `type = ""` field, indicating the expected `SchemaType` for the entire word. The value is supplied at instantiation time via `InitStorageData`. Felt types are stored as full words in the following layout: `[, 0, 0, 0]`. - **Composite**: provided through `type = [ ... ]`, which contains exactly four `FeltSchema` descriptors. Each element is either a named typed field (optionally with `default-value`) or a `void` element for reserved/padding zeros. Composite schema entries reuse the existing TOML structure for four-element words, while simple schemas rely on `type`. In our example, the `token_metadata` slot uses a composite schema (`type = [...]`) mixing typed fields (`max_supply`, `decimals`) with defaults (`symbol`) and a reserved/padding `void` element. From 4ada5224c894781de04479e094d271da6987c047 Mon Sep 17 00:00:00 2001 From: Ignacio Amigo Date: Mon, 30 Mar 2026 14:42:01 -0300 Subject: [PATCH 4/8] chore: changelog --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c6fc7e8d8..f581f3588d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 0.14.1 (2026-03-30) + +### Changes + +- Changed felt-to-word layout in the type registry from `[0, 0, 0, felt]` to `[felt, 0, 0, 0]` to match the actual MASM storage layout ([#2711](https://github.com/0xMiden/protocol/pull/2711)). + ## 0.14.0 (2026-03-23) ### Features From 73618201409ccb9032fc850ac53369de9dc969a0 Mon Sep 17 00:00:00 2001 From: igamigo Date: Tue, 31 Mar 2026 17:22:22 -0300 Subject: [PATCH 5/8] chore: changelog date and add 0.14.1 --- CHANGELOG.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f581f3588d..1ac405b7c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,17 @@ # Changelog -## 0.14.1 (2026-03-30) +## 0.14.2 (2026-03-31) ### Changes - Changed felt-to-word layout in the type registry from `[0, 0, 0, felt]` to `[felt, 0, 0, 0]` to match the actual MASM storage layout ([#2711](https://github.com/0xMiden/protocol/pull/2711)). +## 0.14.1 (2026-03-30) + +### Changes + +- Integrated various AggLayer-related cleanups ([#2695](https://github.com/0xMiden/protocol/pull/2695)). + ## 0.14.0 (2026-03-23) ### Features From 8d214d6d138351e6f9f98771936303b2545c7d33 Mon Sep 17 00:00:00 2001 From: Bobbin Threadbare Date: Wed, 1 Apr 2026 02:36:00 +0200 Subject: [PATCH 6/8] chore: increment crate versions to v0.14.2 --- Cargo.lock | 187 ++++++++++++++++++++++++++++------------------------- Cargo.toml | 2 +- 2 files changed, 99 insertions(+), 90 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 49fe4de828..9226a9ebb1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -329,16 +329,16 @@ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "blake3" -version = "1.8.3" +version = "1.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d" +checksum = "4d2d5991425dfd0785aed03aedcf0b321d61975c9b5b3689c774a2610ae0b51e" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", - "cpufeatures", + "cpufeatures 0.3.0", ] [[package]] @@ -382,9 +382,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.57" +version = "1.2.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" +checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" dependencies = [ "find-msvc-tools", "jobserver", @@ -406,7 +406,7 @@ checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" dependencies = [ "cfg-if", "cipher", - "cpufeatures", + "cpufeatures 0.2.17", ] [[package]] @@ -525,7 +525,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "531185e432bb31db1ecda541e9e7ab21468d4d844ad7505e0546a49b4945d49b" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "proptest", "serde_core", ] @@ -560,6 +560,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "criterion" version = "0.5.1" @@ -681,7 +690,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "curve25519-dalek-derive", "digest", "fiat-crypto", @@ -1358,9 +1367,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.91" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c" +checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" dependencies = [ "once_cell", "wasm-bindgen", @@ -1386,7 +1395,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb26cec98cce3a3d96cbb7bced3c4b16e3d13f27ec56dbd62cbc8f39cfb9d653" dependencies = [ - "cpufeatures", + "cpufeatures 0.2.17", ] [[package]] @@ -1514,7 +1523,7 @@ dependencies = [ [[package]] name = "miden-agglayer" -version = "0.14.1" +version = "0.14.2" dependencies = [ "alloy-sol-types", "fs-err", @@ -1588,7 +1597,7 @@ dependencies = [ [[package]] name = "miden-block-prover" -version = "0.14.1" +version = "0.14.2" dependencies = [ "miden-protocol", "thiserror", @@ -1799,7 +1808,7 @@ dependencies = [ [[package]] name = "miden-protocol" -version = "0.14.1" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1835,7 +1844,7 @@ dependencies = [ [[package]] name = "miden-protocol-macros" -version = "0.14.1" +version = "0.14.2" dependencies = [ "miden-protocol", "proc-macro2", @@ -1873,7 +1882,7 @@ dependencies = [ [[package]] name = "miden-standards" -version = "0.14.1" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1892,7 +1901,7 @@ dependencies = [ [[package]] name = "miden-testing" -version = "0.14.1" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1920,7 +1929,7 @@ dependencies = [ [[package]] name = "miden-tx" -version = "0.14.1" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1937,7 +1946,7 @@ dependencies = [ [[package]] name = "miden-tx-batch-prover" -version = "0.14.1" +version = "0.14.2" dependencies = [ "miden-protocol", "miden-tx", @@ -2204,9 +2213,9 @@ checksum = "d211803b9b6b570f68772237e415a029d5a50c65d382910b879fb19d3271f94d" [[package]] name = "p3-air" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ebc58ec27a174420348b3f04dba836fa2e5b5fe8df74601087417352757c643" +checksum = "9f2ec9cbfc642fc5173817287c3f8b789d07743b5f7e812d058b7a03e344f9ab" dependencies = [ "p3-field", "p3-matrix", @@ -2215,9 +2224,9 @@ dependencies = [ [[package]] name = "p3-blake3" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3cacb38c29fbee71fe3e5c6c0a1073632e46dc3e93fbdc50ab4e4fac137b525" +checksum = "b667f43b19499dd939c9e2553aa95688936a88360d50117dae3c8848d07dbc70" dependencies = [ "blake3", "p3-symmetric", @@ -2226,9 +2235,9 @@ dependencies = [ [[package]] name = "p3-challenger" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af9bbcb18fe90271668259aacfc43455e328673c2b5c926cff0663edc8653e4d" +checksum = "4a0b490c745a7d2adeeafff06411814c8078c432740162332b3cd71be0158a76" dependencies = [ "p3-field", "p3-maybe-rayon", @@ -2240,9 +2249,9 @@ dependencies = [ [[package]] name = "p3-commit" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14d07b50c6f6d3bc89ed7c54ae0c569fb4caaa58263fd389dc02fb1b0a6378fa" +checksum = "916ae7989d5c3b49f887f5c55b2f9826bdbb81aaebf834503c4145d8b267c829" dependencies = [ "itertools 0.14.0", "p3-field", @@ -2253,9 +2262,9 @@ dependencies = [ [[package]] name = "p3-dft" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17e7ba0dc20be075eab3f88f0cb820a0901f86218a1c46134e7c817d41597989" +checksum = "55301e91544440254977108b85c32c09d7ea05f2f0dd61092a2825339906a4a7" dependencies = [ "itertools 0.14.0", "p3-field", @@ -2268,9 +2277,9 @@ dependencies = [ [[package]] name = "p3-field" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b8533e6c2f4d0cc61fd2ae5299bb83316898e535f47291808d37e4d666ba088" +checksum = "85affca7fc983889f260655c4cf74163eebb94605f702e4b6809ead707cba54f" dependencies = [ "itertools 0.14.0", "num-bigint", @@ -2284,9 +2293,9 @@ dependencies = [ [[package]] name = "p3-goldilocks" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8102a8c85acee1f896c3764bef5fac908e6026dadfc557c185294970cce0746" +checksum = "0ca1081f5c47b940f2d75a11c04f62ea1cc58a5d480dd465fef3861c045c63cd" dependencies = [ "num-bigint", "p3-challenger", @@ -2304,9 +2313,9 @@ dependencies = [ [[package]] name = "p3-keccak" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65d30dd586d2855906a01c3414c155c2d564f6677d1b51f04186dcac080f757" +checksum = "ebcf27615ece1995e4fcf4c69740f1cf515d1481367a20b4b3ce7f4f1b8d70f7" dependencies = [ "p3-symmetric", "p3-util", @@ -2315,9 +2324,9 @@ dependencies = [ [[package]] name = "p3-matrix" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72bb78444459155c2e4711d71abbfef7b04cc2ba1fa83751ccab241b01957095" +checksum = "53428126b009071563d1d07305a9de8be0d21de00b57d2475289ee32ffca6577" dependencies = [ "itertools 0.14.0", "p3-field", @@ -2330,18 +2339,18 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a0a54345917f500130a9986fa5ff9ecbc26f0c6313080b35b713e26ddc8053" +checksum = "082bf467011c06c768c579ec6eb9accb5e1e62108891634cc770396e917f978a" dependencies = [ "rayon", ] [[package]] name = "p3-mds" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd514bf3e9bf9f1b7db2db96e5bd2972d9963dd62430de1e193d74522ae96a6" +checksum = "35209e6214102ea6ec6b8cb1b9c15a9b8e597a39f9173597c957f123bced81b3" dependencies = [ "p3-dft", "p3-field", @@ -2448,9 +2457,9 @@ dependencies = [ [[package]] name = "p3-monty-31" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d9340a650f07a6cd42a4e877017ba7b206df87fe50dfc3cf110f01a3c370bd1" +checksum = "ffa8c99ec50c035020bbf5457c6a729ba6a975719c1a8dd3f16421081e4f650c" dependencies = [ "itertools 0.14.0", "num-bigint", @@ -2472,9 +2481,9 @@ dependencies = [ [[package]] name = "p3-poseidon1" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd56ae3a51ded1b77f7b1b21d0b157ae82b9d5ca8f2cba347c0b821fe771a79" +checksum = "6a018b618e3fa0aec8be933b1d8e404edd23f46991f6bf3f5c2f3f95e9413fe9" dependencies = [ "p3-field", "p3-symmetric", @@ -2483,9 +2492,9 @@ dependencies = [ [[package]] name = "p3-poseidon2" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "858aa1c33ec983dfbb8cfc553a213de19d8fde96485e54e6e952b9ac5e70bd4e" +checksum = "256a668a9ba916f8767552f13d0ba50d18968bc74a623bfdafa41e2970c944d0" dependencies = [ "p3-field", "p3-mds", @@ -2496,9 +2505,9 @@ dependencies = [ [[package]] name = "p3-symmetric" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a9a3b20bb8104e52d45219a78d80654c8ac6a4781be0eaa3f3e999f5ae4b9b2" +checksum = "6c60a71a1507c13611b0f2b0b6e83669fd5b76f8e3115bcbced5ccfdf3ca7807" dependencies = [ "itertools 0.14.0", "p3-field", @@ -2508,9 +2517,9 @@ dependencies = [ [[package]] name = "p3-util" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f24495d9cd64693165a9f1b3da0758395ad6d25d2d44dd740bdb34c2bce0c53" +checksum = "f8b766b9e9254bf3fa98d76e42cf8a5b30628c182dfd5272d270076ee12f0fc0" dependencies = [ "rayon", "serde", @@ -2615,7 +2624,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" dependencies = [ - "cpufeatures", + "cpufeatures 0.2.17", "opaque-debug", "universal-hash", ] @@ -2735,9 +2744,9 @@ dependencies = [ [[package]] name = "proptest" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37566cb3fdacef14c0737f9546df7cfeadbfbc9fef10991038bf5015d0c80532" +checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744" dependencies = [ "bitflags 2.11.0", "num-traits", @@ -3019,9 +3028,9 @@ checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" [[package]] name = "rustc-hash" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" [[package]] name = "rustc_version" @@ -3177,9 +3186,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876ac351060d4f882bb1032b6369eb0aef79ad9df1ea8bc404874d8cc3d0cd98" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" dependencies = [ "serde_core", ] @@ -3191,7 +3200,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -3533,9 +3542,9 @@ dependencies = [ [[package]] name = "toml" -version = "1.1.0+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8195ca05e4eb728f4ba94f3e3291661320af739c4e43779cbdfae82ab239fcc" +checksum = "994b95d9e7bae62b34bab0e2a4510b801fa466066a6a8b2b57361fa1eba068ee" dependencies = [ "indexmap", "serde_core", @@ -3548,18 +3557,18 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "1.1.0+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.25.8+spec-1.1.0" +version = "0.25.9+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16bff38f1d86c47f9ff0647e6838d7bb362522bdf44006c7068c2b1e606f1f3c" +checksum = "da053d28fe57e2c9d21b48261e14e7b4c8b670b54d2c684847b91feaf4c7dac5" dependencies = [ "indexmap", "toml_datetime", @@ -3569,18 +3578,18 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.1.0+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011" +checksum = "39ca317ebc49f06bd748bfba29533eac9485569dc9bf80b849024b025e814fb9" dependencies = [ "winnow", ] [[package]] name = "toml_writer" -version = "1.1.0+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d282ade6016312faf3e41e57ebbba0c073e4056dab1232ab1cb624199648f8ed" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" [[package]] name = "tracing" @@ -3728,9 +3737,9 @@ checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-width" @@ -3768,9 +3777,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.22.0" +version = "1.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a68d3c8f01c0cfa54a75291d83601161799e4a89a39e0929f4b0354d88757a37" +checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" dependencies = [ "js-sys", "wasm-bindgen", @@ -3833,9 +3842,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e" +checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" dependencies = [ "cfg-if", "once_cell", @@ -3846,9 +3855,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6" +checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -3856,9 +3865,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3" +checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" dependencies = [ "bumpalo", "proc-macro2", @@ -3869,9 +3878,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.114" +version = "0.2.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16" +checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" dependencies = [ "unicode-ident", ] @@ -3912,9 +3921,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.91" +version = "0.3.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9" +checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a" dependencies = [ "js-sys", "wasm-bindgen", @@ -3977,9 +3986,9 @@ dependencies = [ [[package]] name = "winnow" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8" +checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" dependencies = [ "memchr", ] @@ -4084,18 +4093,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.47" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.47" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 3da7d13644..aace353325 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ homepage = "https://miden.xyz" license = "MIT" repository = "https://github.com/0xMiden/protocol" rust-version = "1.90" -version = "0.14.1" +version = "0.14.2" [profile.release] codegen-units = 1 From 3374f1d344f775307fc92874f1e9193b85dfa303 Mon Sep 17 00:00:00 2001 From: Bobbin Threadbare Date: Wed, 1 Apr 2026 02:55:00 +0200 Subject: [PATCH 7/8] chore: skip duplicate check for cpufeatures --- deny.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/deny.toml b/deny.toml index 29b7c11c46..af17464860 100644 --- a/deny.toml +++ b/deny.toml @@ -45,6 +45,7 @@ highlight = "all" multiple-versions = "deny" skip = [ #{ name = "ansi_term", version = "=0.11.0" }, + { name = "cpufeatures" }, # Allow duplicate rand versions - miden-field uses 0.10, miden-vm uses 0.9 { name = "rand" }, { name = "rand_core" }, From 5bacd3af1d62f253d0ac4b05b048ac404d7578d6 Mon Sep 17 00:00:00 2001 From: Bobbin Threadbare Date: Wed, 1 Apr 2026 03:23:59 +0200 Subject: [PATCH 8/8] Revert "Merge branch 'next' into release/v0.14" This reverts commit c67e40e985d3e659cf5b792274ade1ad6c45b59d, reversing changes made to 3374f1d344f775307fc92874f1e9193b85dfa303. --- CHANGELOG.md | 8 - Cargo.lock | 16 +- Cargo.toml | 18 +- .../asm/agglayer/bridge/bridge_in.masm | 8 +- .../asm/agglayer/bridge/bridge_out.masm | 4 +- .../asm/kernels/transaction/lib/note.masm | 3 - .../kernels/transaction/lib/output_note.masm | 24 +- crates/miden-protocol/asm/protocol/note.masm | 8 +- .../asm/shared_utils/util/note.masm | 9 - .../miden-protocol/src/batch/proven_batch.rs | 9 +- crates/miden-protocol/src/note/metadata.rs | 58 +---- crates/miden-protocol/src/note/note_type.rs | 111 ++++---- .../asm/standards/auth/tx_policy.masm | 30 --- .../asm/standards/faucets/mod.masm | 1 + .../asm/standards/notes/mint.masm | 8 +- .../asm/standards/wallets/basic.masm | 1 + .../auth/{multisig/mod.rs => multisig.rs} | 3 - .../auth/multisig/procedure_policies.rs | 246 ------------------ .../src/testing/mock_util_lib.rs | 3 +- .../src/kernel_tests/tx/test_output_note.rs | 34 +-- .../src/local_batch_prover.rs | 2 +- 21 files changed, 132 insertions(+), 472 deletions(-) rename crates/miden-standards/src/account/auth/{multisig/mod.rs => multisig.rs} (99%) delete mode 100644 crates/miden-standards/src/account/auth/multisig/procedure_policies.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index 8e9470d4e8..1ac405b7c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,13 +1,5 @@ # Changelog -## v0.15.0 (TBD) - -### Changes - -- [BREAKING] Renamed `ProvenBatch::new` to `new_unchecked` ([#2687](https://github.com/0xMiden/miden-base/issues/2687)). -- Added shared `ProcedurePolicy` for AuthMultisig ([#2670](https://github.com/0xMiden/protocol/pull/2670)). -- [BREAKING] Changed `NoteType` encoding from 2 bits to 1 and makes `NoteType::Private` the default ([#2691](https://github.com/0xMiden/miden-base/issues/2691)). - ## 0.14.2 (2026-03-31) ### Changes diff --git a/Cargo.lock b/Cargo.lock index d20ef323bb..9226a9ebb1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1523,7 +1523,7 @@ dependencies = [ [[package]] name = "miden-agglayer" -version = "0.15.0" +version = "0.14.2" dependencies = [ "alloy-sol-types", "fs-err", @@ -1597,7 +1597,7 @@ dependencies = [ [[package]] name = "miden-block-prover" -version = "0.15.0" +version = "0.14.2" dependencies = [ "miden-protocol", "thiserror", @@ -1808,7 +1808,7 @@ dependencies = [ [[package]] name = "miden-protocol" -version = "0.15.0" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1844,7 +1844,7 @@ dependencies = [ [[package]] name = "miden-protocol-macros" -version = "0.15.0" +version = "0.14.2" dependencies = [ "miden-protocol", "proc-macro2", @@ -1882,7 +1882,7 @@ dependencies = [ [[package]] name = "miden-standards" -version = "0.15.0" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1901,7 +1901,7 @@ dependencies = [ [[package]] name = "miden-testing" -version = "0.15.0" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1929,7 +1929,7 @@ dependencies = [ [[package]] name = "miden-tx" -version = "0.15.0" +version = "0.14.2" dependencies = [ "anyhow", "assert_matches", @@ -1946,7 +1946,7 @@ dependencies = [ [[package]] name = "miden-tx-batch-prover" -version = "0.15.0" +version = "0.14.2" dependencies = [ "miden-protocol", "miden-tx", diff --git a/Cargo.toml b/Cargo.toml index 932913e36b..aace353325 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ homepage = "https://miden.xyz" license = "MIT" repository = "https://github.com/0xMiden/protocol" rust-version = "1.90" -version = "0.15.0" +version = "0.14.2" [profile.release] codegen-units = 1 @@ -37,14 +37,14 @@ lto = true [workspace.dependencies] # Workspace crates -miden-agglayer = { default-features = false, path = "crates/miden-agglayer", version = "0.15" } -miden-block-prover = { default-features = false, path = "crates/miden-block-prover", version = "0.15" } -miden-protocol = { default-features = false, path = "crates/miden-protocol", version = "0.15" } -miden-protocol-macros = { default-features = false, path = "crates/miden-protocol-macros", version = "0.15" } -miden-standards = { default-features = false, path = "crates/miden-standards", version = "0.15" } -miden-testing = { default-features = false, path = "crates/miden-testing", version = "0.15" } -miden-tx = { default-features = false, path = "crates/miden-tx", version = "0.15" } -miden-tx-batch-prover = { default-features = false, path = "crates/miden-tx-batch-prover", version = "0.15" } +miden-agglayer = { default-features = false, path = "crates/miden-agglayer", version = "0.14" } +miden-block-prover = { default-features = false, path = "crates/miden-block-prover", version = "0.14" } +miden-protocol = { default-features = false, path = "crates/miden-protocol", version = "0.14" } +miden-protocol-macros = { default-features = false, path = "crates/miden-protocol-macros", version = "0.14" } +miden-standards = { default-features = false, path = "crates/miden-standards", version = "0.14" } +miden-testing = { default-features = false, path = "crates/miden-testing", version = "0.14" } +miden-tx = { default-features = false, path = "crates/miden-tx", version = "0.14" } +miden-tx-batch-prover = { default-features = false, path = "crates/miden-tx-batch-prover", version = "0.14" } # Miden dependencies miden-assembly = { default-features = false, version = "0.22" } diff --git a/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm b/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm index cb6bae9521..f101c90b40 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/bridge_in.masm @@ -9,7 +9,6 @@ use miden::core::crypto::hashes::poseidon2 use miden::core::mem use miden::core::word use miden::protocol::note -use miden::protocol::note::NOTE_TYPE_PUBLIC use miden::protocol::output_note use miden::protocol::output_note::ATTACHMENT_KIND_NONE use miden::protocol::active_account @@ -71,6 +70,9 @@ const CLAIM_LEAF_DATA_WORD_LEN = 8 # - account_id_prefix [17] : 1 felt const MINT_NOTE_NUM_STORAGE_ITEMS = 18 +# P2ID output note constants +const OUTPUT_NOTE_TYPE_PUBLIC = 1 + # P2ID attachment constants (the P2ID note created by the faucet has no attachment) const P2ID_ATTACHMENT_SCHEME_NONE = 0 @@ -934,8 +936,8 @@ end #! Invocation: exec proc create_mint_note_with_attachment # Create the MINT output note targeting the faucet - push.NOTE_TYPE_PUBLIC - # => [note_type, MINT_RECIPIENT, faucet_id_prefix, faucet_id_suffix] + push.OUTPUT_NOTE_TYPE_PUBLIC + # => [note_type, MINT_RECIPIENT, faucet_id_suffix, faucet_id_prefix] # Set tag to DEFAULT push.DEFAULT_TAG diff --git a/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm b/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm index db367d415f..824ad3da19 100644 --- a/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm +++ b/crates/miden-agglayer/asm/agglayer/bridge/bridge_out.masm @@ -76,7 +76,7 @@ const ATTACHMENT_KIND_LOC=13 # ------------------------------------------------------------------------------------------------- const LEAF_TYPE_ASSET=0 -use miden::protocol::note::NOTE_TYPE_PUBLIC +const PUBLIC_NOTE=1 const BURN_NOTE_NUM_STORAGE_ITEMS=0 # PUBLIC INTERFACE @@ -528,7 +528,7 @@ proc create_burn_note exec.note::build_recipient # => [RECIPIENT] - push.NOTE_TYPE_PUBLIC + push.PUBLIC_NOTE push.DEFAULT_TAG # => [tag, note_type, RECIPIENT] diff --git a/crates/miden-protocol/asm/kernels/transaction/lib/note.masm b/crates/miden-protocol/asm/kernels/transaction/lib/note.masm index 835f4eff48..a2fa70b19b 100644 --- a/crates/miden-protocol/asm/kernels/transaction/lib/note.masm +++ b/crates/miden-protocol/asm/kernels/transaction/lib/note.masm @@ -4,9 +4,6 @@ use $kernel::asset::ASSET_SIZE use $kernel::constants::NOTE_MEM_SIZE use $kernel::memory -pub use $kernel::util::note::NOTE_TYPE_PUBLIC -pub use $kernel::util::note::NOTE_TYPE_PRIVATE - # ERRORS # ================================================================================================= diff --git a/crates/miden-protocol/asm/kernels/transaction/lib/output_note.masm b/crates/miden-protocol/asm/kernels/transaction/lib/output_note.masm index f4bbcc7d36..c8a80d5f06 100644 --- a/crates/miden-protocol/asm/kernels/transaction/lib/output_note.masm +++ b/crates/miden-protocol/asm/kernels/transaction/lib/output_note.masm @@ -4,7 +4,6 @@ use $kernel::callbacks use $kernel::fungible_asset use $kernel::memory use $kernel::note -use $kernel::note::NOTE_TYPE_PUBLIC use $kernel::constants::MAX_OUTPUT_NOTES_PER_TX use $kernel::util::note::ATTACHMENT_KIND_NONE use $kernel::util::note::ATTACHMENT_KIND_ARRAY @@ -15,6 +14,10 @@ use miden::core::word # CONSTANTS # ================================================================================================= +# Constants for different note types +const PUBLIC_NOTE=1 # 0b01 +const PRIVATE_NOTE=2 # 0b10 + # The default value of the felt at index 3 in the note metadata header when a new note is created. # All zeros sets the attachment kind to None and the user-defined attachment scheme to "none". const ATTACHMENT_DEFAULT_KIND_AND_SCHEME=0 @@ -315,12 +318,10 @@ end #! or off-chain). #! - NOTE_METADATA_HEADER is the metadata associated with a note. pub proc build_metadata_header - # Validate that note type is private (0) or public (1). + # Validate that note type is private or public. # -------------------------------------------------------------------------------------------- - dup.1 - u32assert.err=ERR_NOTE_INVALID_TYPE u32lte.NOTE_TYPE_PUBLIC - assert.err=ERR_NOTE_INVALID_TYPE + dup.1 eq.PRIVATE_NOTE dup.2 eq.PUBLIC_NOTE or assert.err=ERR_NOTE_INVALID_TYPE # => [tag, note_type] # Validate the note tag fits into a u32. @@ -329,23 +330,22 @@ pub proc build_metadata_header u32assert.err=ERR_NOTE_TAG_MUST_BE_U32 # => [tag, note_type] - # Merge note type, version, and sender ID suffix. + # Merge note type and sender ID suffix. # -------------------------------------------------------------------------------------------- exec.account::get_id # => [sender_id_suffix, sender_id_prefix, tag, note_type] - # The lower 8 bits of the account ID suffix are guaranteed to be zero by construction. - # Encode note_type at bit 4, leaving version at 0 (in bits 0..=3). - # Shifting note_type left by 4 is equivalent to multiplying by 16. - movup.3 mul.16 add - # => [sender_id_suffix_type_version, sender_id_prefix, tag] + # the lower bits of an account ID suffix are guaranteed to be zero, so we can safely use that + # space to encode the note type + movup.3 add + # => [sender_id_suffix_and_note_type, sender_id_prefix, tag] # Build metadata header. # -------------------------------------------------------------------------------------------- push.ATTACHMENT_DEFAULT_KIND_AND_SCHEME movdn.3 - # => [sender_id_suffix_type_version, sender_id_prefix, tag, attachment_kind_scheme] + # => [sender_id_suffix_and_note_type, sender_id_prefix, tag, attachment_kind_scheme] # => [NOTE_METADATA_HEADER] end diff --git a/crates/miden-protocol/asm/protocol/note.masm b/crates/miden-protocol/asm/protocol/note.masm index c5f3c37526..8962a86263 100644 --- a/crates/miden-protocol/asm/protocol/note.masm +++ b/crates/miden-protocol/asm/protocol/note.masm @@ -4,8 +4,6 @@ use miden::core::mem # Re-export the max inputs per note constant. pub use miden::protocol::util::note::MAX_NOTE_STORAGE_ITEMS -pub use miden::protocol::util::note::NOTE_TYPE_PUBLIC -pub use miden::protocol::util::note::NOTE_TYPE_PRIVATE # ERRORS # ================================================================================================= @@ -186,11 +184,11 @@ end #! - sender_{suffix,prefix} are the suffix and prefix felts of the sender ID of the note which #! metadata was provided. pub proc extract_sender_from_metadata - # => [sender_id_suffix_type_version, sender_id_prefix, tag, attachment_kind_scheme] + # => [sender_id_suffix_and_note_type, sender_id_prefix, tag, attachment_kind_scheme] # drop tag and attachment_kind_scheme movup.3 drop movup.2 drop - # => [sender_id_suffix_type_version, sender_id_prefix] + # => [sender_id_suffix_and_note_type, sender_id_prefix] # extract suffix of sender from merged layout, which means clearing the least significant byte exec.account_id::shape_suffix @@ -209,7 +207,7 @@ end #! #! Invocation: exec pub proc extract_attachment_info_from_metadata - # => [sender_id_suffix_type_version, sender_id_prefix, tag, attachment_kind_scheme] + # => [sender_id_suffix_and_note_type, sender_id_prefix, tag, attachment_kind_scheme] drop drop drop # => [attachment_kind_scheme] diff --git a/crates/miden-protocol/asm/shared_utils/util/note.masm b/crates/miden-protocol/asm/shared_utils/util/note.masm index d0f474b692..066dfcd2fb 100644 --- a/crates/miden-protocol/asm/shared_utils/util/note.masm +++ b/crates/miden-protocol/asm/shared_utils/util/note.masm @@ -10,12 +10,3 @@ pub const ATTACHMENT_KIND_NONE=0 pub const ATTACHMENT_KIND_WORD=1 #! A note attachment consisting of the commitment to a set of felts. pub const ATTACHMENT_KIND_ARRAY=2 - -# Note type constants. These encode the note type in the lower byte of the metadata header. -# See NoteType in the Rust protocol crate for details. - -#! The note type of private notes. -pub const NOTE_TYPE_PRIVATE=0 - -#! The note type of public notes. -pub const NOTE_TYPE_PUBLIC=1 diff --git a/crates/miden-protocol/src/batch/proven_batch.rs b/crates/miden-protocol/src/batch/proven_batch.rs index 32a0bf9d18..eb8aae5495 100644 --- a/crates/miden-protocol/src/batch/proven_batch.rs +++ b/crates/miden-protocol/src/batch/proven_batch.rs @@ -36,16 +36,13 @@ impl ProvenBatch { // CONSTRUCTORS // -------------------------------------------------------------------------------------------- - /// Creates a new [`ProvenBatch`] from the provided parts without checking any constraints - /// except the ones listed in the errors section below. - /// - /// This should essentially never be called by users. + /// Creates a new [`ProvenBatch`] from the provided parts. /// /// # Errors /// /// Returns an error if the batch expiration block number is not greater than the reference /// block number. - pub fn new_unchecked( + pub fn new( id: BatchId, reference_block_commitment: Word, reference_block_num: BlockNumber, @@ -180,7 +177,7 @@ impl Deserializable for ProvenBatch { let batch_expiration_block_num = BlockNumber::read_from(source)?; let transactions = OrderedTransactionHeaders::read_from(source)?; - Self::new_unchecked( + Self::new( id, reference_block_commitment, reference_block_num, diff --git a/crates/miden-protocol/src/note/metadata.rs b/crates/miden-protocol/src/note/metadata.rs index 535ff99e4d..04c36b9c08 100644 --- a/crates/miden-protocol/src/note/metadata.rs +++ b/crates/miden-protocol/src/note/metadata.rs @@ -14,12 +14,6 @@ use crate::Hasher; use crate::errors::NoteError; use crate::note::{NoteAttachment, NoteAttachmentKind, NoteAttachmentScheme}; -// CONSTANTS -// ================================================================================================ - -/// The number of bits by which the note type is offset in the first felt of the note metadata. -const NOTE_TYPE_SHIFT: u64 = 4; - // NOTE METADATA // ================================================================================================ @@ -40,7 +34,7 @@ const NOTE_TYPE_SHIFT: u64 = 4; /// The header word has the following layout: /// /// ```text -/// 0th felt: [sender_id_suffix (56 bits) | reserved (3 bits) | note_type (1 bit) | version (4 bits)] +/// 0th felt: [sender_id_suffix (56 bits) | 6 zero bits | note_type (2 bit)] /// 1st felt: [sender_id_prefix (64 bits)] /// 2nd felt: [32 zero bits | note_tag (32 bits)] /// 3rd felt: [30 zero bits | attachment_kind (2 bits) | attachment_scheme (32 bits)] @@ -50,13 +44,11 @@ const NOTE_TYPE_SHIFT: u64 = 4; /// - 1st felt: The lower 8 bits of the account ID suffix are `0` by construction, so that they can /// be overwritten with other data. The suffix' most significant bit must be zero such that the /// entire felt retains its validity even if all of its lower 8 bits are set to `1`. So the note -/// type and version can be comfortably encoded. +/// type can be comfortably encoded. /// - 2nd felt: Is equivalent to the prefix of the account ID so it inherits its validity. /// - 3rd felt: The upper 32 bits are always zero. /// - 4th felt: The upper 30 bits are always zero. /// -/// The version is hardcoded to 0 and is reserved to make it easier to introduce another version. -/// /// The value of the attachment word depends on the /// [`NoteAttachmentKind`](crate::note::NoteAttachmentKind): /// - [`NoteAttachmentKind::None`](crate::note::NoteAttachmentKind::None): Empty word. @@ -81,12 +73,6 @@ pub struct NoteMetadata { } impl NoteMetadata { - /// Version 0 of the note metadata encoding. - /// - /// If we make this public, we may want to instead consider introducing a `NoteMetadataVersion` - /// struct, similar to `AccountIdVersion`. - const VERSION_0: u8 = 0; - // CONSTRUCTORS // -------------------------------------------------------------------------------------------- @@ -351,12 +337,12 @@ impl TryFrom for NoteMetadataHeader { // HELPER FUNCTIONS // ================================================================================================ -/// Merges the suffix of an [`AccountId`] and note metadata into a single [`Felt`]. +/// Merges the suffix of an [`AccountId`] and the [`NoteType`] into a single [`Felt`]. /// /// The layout is as follows: /// /// ```text -/// [sender_id_suffix (56 bits) | reserved (3 bits) | note_type (1 bit) | version (4 bits)] +/// [sender_id_suffix (56 bits) | 6 zero bits | note_type (2 bits)] /// ``` /// /// The most significant bit of the suffix is guaranteed to be zero, so the felt retains its @@ -367,44 +353,28 @@ fn merge_sender_suffix_and_note_type(sender_id_suffix: Felt, note_type: NoteType let mut merged = sender_id_suffix.as_canonical_u64(); let note_type_byte = note_type as u8; - debug_assert!(note_type_byte < 2, "note type must not contain values >= 2"); - // note_type at bit 4, version at bits 0..=3 (hardcoded to NoteMetadata::VERSION_0_NUMBER) - merged |= (note_type_byte as u64) << NOTE_TYPE_SHIFT; - merged |= NoteMetadata::VERSION_0 as u64; + debug_assert!(note_type_byte < 4, "note type must not contain values >= 4"); + merged |= note_type_byte as u64; // SAFETY: The most significant bit of the suffix is zero by construction so the u64 will be a // valid felt. Felt::try_from(merged).expect("encoded value should be a valid felt") } -/// Unmerges the sender ID suffix and note metadata (note type and version). +/// Unmerges the sender ID suffix and note type. fn unmerge_sender_suffix_and_note_type(element: Felt) -> Result<(Felt, NoteType), NoteError> { - // The mask that clears out the lower 8 bits to recover the sender suffix. - const SENDER_SUFFIX_MASK: u64 = 0xffff_ffff_ffff_ff00; - - let raw = element.as_canonical_u64(); - let version = (raw & 0b1111) as u8; - let note_type_bit = ((raw >> NOTE_TYPE_SHIFT) & 0b1) as u8; - let reserved = ((raw >> 5) & 0b111) as u8; - - if reserved != 0 { - return Err(NoteError::other("reserved bits in note metadata header must be zero")); - } - - if version != NoteMetadata::VERSION_0 { - return Err(NoteError::other(format!( - "unsupported note metadata version {version}, expected {}", - NoteMetadata::VERSION_0 - ))); - } + const NOTE_TYPE_MASK: u8 = 0b11; + // Inverts the note type mask. + const SENDER_SUFFIX_MASK: u64 = !(NOTE_TYPE_MASK as u64); - let note_type = NoteType::try_from(note_type_bit).map_err(|source| { + let note_type_byte = element.as_canonical_u64() as u8 & NOTE_TYPE_MASK; + let note_type = NoteType::try_from(note_type_byte).map_err(|source| { NoteError::other_with_source("failed to decode note type from metadata header", source) })?; // No bits were set so felt should still be valid. - let sender_suffix = - Felt::try_from(raw & SENDER_SUFFIX_MASK).expect("felt should still be valid"); + let sender_suffix = Felt::try_from(element.as_canonical_u64() & SENDER_SUFFIX_MASK) + .expect("felt should still be valid"); Ok((sender_suffix, note_type)) } diff --git a/crates/miden-protocol/src/note/note_type.rs b/crates/miden-protocol/src/note/note_type.rs index 204746d336..d72b953f86 100644 --- a/crates/miden-protocol/src/note/note_type.rs +++ b/crates/miden-protocol/src/note/note_type.rs @@ -14,10 +14,9 @@ use crate::utils::serde::{ // NOTE TYPE // ================================================================================================ -#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)] +#[derive(Clone, Copy, Debug, PartialEq, Eq)] #[repr(u8)] pub enum NoteType { - #[default] /// Notes with this type have only their hash published to the network. Private = Self::PRIVATE, @@ -26,21 +25,17 @@ pub enum NoteType { } impl NoteType { - const PRIVATE: u8 = 0; - const PUBLIC: u8 = 1; - - /// Returns the note type encoded to a 1-bit flag, where private is 0 and public is 1. - pub const fn as_u8(self) -> u8 { - self as u8 - } + // Keep these masks in sync with `miden-lib/asm/miden/kernels/tx/tx.masm` + pub const PUBLIC: u8 = 0b01; + pub const PRIVATE: u8 = 0b10; } // CONVERSIONS FROM NOTE TYPE // ================================================================================================ impl From for Felt { - fn from(note_type: NoteType) -> Self { - Felt::from(note_type.as_u8()) + fn from(id: NoteType) -> Self { + Felt::new(id as u64) } } @@ -59,27 +54,38 @@ impl TryFrom for NoteType { } } -impl TryFrom for NoteType { +impl TryFrom for NoteType { type Error = NoteError; - fn try_from(value: Felt) -> Result { - let byte = value.as_canonical_u64(); - Self::try_from( - u8::try_from(byte) - .map_err(|_| NoteError::UnknownNoteType(format!("0b{byte:b}").into()))?, - ) + fn try_from(value: u16) -> Result { + Self::try_from(value as u64) } } -// STRING CONVERSION -// ================================================================================================ +impl TryFrom for NoteType { + type Error = NoteError; -impl Display for NoteType { - fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { - match self { - NoteType::Private => write!(f, "private"), - NoteType::Public => write!(f, "public"), - } + fn try_from(value: u32) -> Result { + Self::try_from(value as u64) + } +} + +impl TryFrom for NoteType { + type Error = NoteError; + + fn try_from(value: u64) -> Result { + let value: u8 = value + .try_into() + .map_err(|_| NoteError::UnknownNoteType(format!("0b{value:b}").into()))?; + value.try_into() + } +} + +impl TryFrom for NoteType { + type Error = NoteError; + + fn try_from(value: Felt) -> Result { + value.as_canonical_u64().try_into() } } @@ -126,47 +132,32 @@ impl Deserializable for NoteType { } } -// TESTS +// DISPLAY // ================================================================================================ -#[cfg(test)] -mod tests { +impl Display for NoteType { + fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { + match self { + NoteType::Private => write!(f, "private"), + NoteType::Public => write!(f, "public"), + } + } +} + +#[test] +fn test_from_str_note_type() { use assert_matches::assert_matches; - use super::*; use crate::alloc::string::ToString; - #[rstest::rstest] - #[case::private(NoteType::Private)] - #[case::public(NoteType::Public)] - #[test] - fn test_note_type_roundtrip(#[case] note_type: NoteType) -> anyhow::Result<()> { - // String roundtrip - assert_eq!(note_type, note_type.to_string().parse()?); - - // Serialization roundtrip - assert_eq!(note_type, NoteType::read_from_bytes(¬e_type.to_bytes())?); - - // Byte conversion roundtrip - assert_eq!(note_type, NoteType::try_from(note_type.as_u8())?); - - // Felt conversion roundtrip - assert_eq!(note_type, NoteType::try_from(Felt::from(note_type))?); - - Ok(()) + for string in ["private", "public"] { + let parsed_note_type = NoteType::from_str(string).unwrap(); + assert_eq!(parsed_note_type.to_string(), string); } - #[test] - fn test_from_str_note_type() { - for string in ["private", "public"] { - let parsed_note_type = NoteType::from_str(string).unwrap(); - assert_eq!(parsed_note_type.to_string(), string); - } + let public_type_invalid_err = NoteType::from_str("puBlIc").unwrap_err(); + assert_matches!(public_type_invalid_err, NoteError::UnknownNoteType(_)); - let public_type_invalid_err = NoteType::from_str("puBlIc").unwrap_err(); - assert_matches!(public_type_invalid_err, NoteError::UnknownNoteType(_)); - - let invalid_type = NoteType::from_str("invalid").unwrap_err(); - assert_matches!(invalid_type, NoteError::UnknownNoteType(_)); - } + let invalid_type = NoteType::from_str("invalid").unwrap_err(); + assert_matches!(invalid_type, NoteError::UnknownNoteType(_)); } diff --git a/crates/miden-standards/asm/standards/auth/tx_policy.masm b/crates/miden-standards/asm/standards/auth/tx_policy.masm index 8ad6264183..76da300070 100644 --- a/crates/miden-standards/asm/standards/auth/tx_policy.masm +++ b/crates/miden-standards/asm/standards/auth/tx_policy.masm @@ -3,8 +3,6 @@ use miden::protocol::native_account use miden::protocol::tx const ERR_AUTH_PROCEDURE_MUST_BE_CALLED_ALONE = "procedure must be called alone" -const ERR_AUTH_TRANSACTION_MUST_NOT_INCLUDE_INPUT_NOTES = "transaction must not include input notes" -const ERR_AUTH_TRANSACTION_MUST_NOT_INCLUDE_OUTPUT_NOTES = "transaction must not include output notes" const ERR_AUTH_TRANSACTION_MUST_NOT_INCLUDE_INPUT_OR_OUTPUT_NOTES = "transaction must not include input or output notes" #! Asserts that exactly one non-auth account procedure was called in the current transaction. @@ -61,34 +59,6 @@ pub proc assert_only_one_non_auth_procedure_called # => [] end -#! Asserts that the current transaction does not consume input notes. -#! -#! Inputs: [] -#! Outputs: [] -#! -#! Invocation: exec -pub proc assert_no_input_notes - exec.tx::get_num_input_notes - # => [num_input_notes] - - assertz.err=ERR_AUTH_TRANSACTION_MUST_NOT_INCLUDE_INPUT_NOTES - # => [] -end - -#! Asserts that the current transaction does not create output notes. -#! -#! Inputs: [] -#! Outputs: [] -#! -#! Invocation: exec -pub proc assert_no_output_notes - exec.tx::get_num_output_notes - # => [num_output_notes] - - assertz.err=ERR_AUTH_TRANSACTION_MUST_NOT_INCLUDE_OUTPUT_NOTES - # => [] -end - #! Asserts that the current transaction does not consume input notes or create output notes. #! #! Inputs: [] diff --git a/crates/miden-standards/asm/standards/faucets/mod.masm b/crates/miden-standards/asm/standards/faucets/mod.masm index ab2ed1c2e5..57eaf2b416 100644 --- a/crates/miden-standards/asm/standards/faucets/mod.masm +++ b/crates/miden-standards/asm/standards/faucets/mod.masm @@ -10,6 +10,7 @@ use miden::protocol::asset::FUNGIBLE_ASSET_MAX_AMOUNT # ================================================================================================= const ASSET_PTR=0 +const PRIVATE_NOTE=2 # ERRORS # ================================================================================================= diff --git a/crates/miden-standards/asm/standards/notes/mint.masm b/crates/miden-standards/asm/standards/notes/mint.masm index 7780a67052..ca287daf48 100644 --- a/crates/miden-standards/asm/standards/notes/mint.masm +++ b/crates/miden-standards/asm/standards/notes/mint.masm @@ -9,8 +9,8 @@ use miden::standards::faucets::network_fungible->network_faucet const MINT_NOTE_NUM_STORAGE_ITEMS_PRIVATE=12 const MINT_NOTE_MIN_NUM_STORAGE_ITEMS_PUBLIC=16 -use miden::protocol::note::NOTE_TYPE_PUBLIC -use miden::protocol::note::NOTE_TYPE_PRIVATE +const OUTPUT_NOTE_TYPE_PUBLIC=1 +const OUTPUT_NOTE_TYPE_PRIVATE=2 # Memory Addresses of MINT note storage # The attachment is at the same memory address for both private and public storage. @@ -98,7 +98,7 @@ pub proc main # => [RECIPIENT, pad(12)] # push note_type, and load tag and amount - push.NOTE_TYPE_PUBLIC + push.OUTPUT_NOTE_TYPE_PUBLIC mem_load.0 mem_load.1 # => [amount, tag, note_type, RECIPIENT, pad(12)] else @@ -114,7 +114,7 @@ pub proc main # => [RECIPIENT, pad(12)] # push note_type, and load tag and amount - push.NOTE_TYPE_PRIVATE + push.OUTPUT_NOTE_TYPE_PRIVATE mem_load.0 mem_load.1 # => [amount, tag, note_type, RECIPIENT, pad(12)] end diff --git a/crates/miden-standards/asm/standards/wallets/basic.masm b/crates/miden-standards/asm/standards/wallets/basic.masm index 9656713977..57f72ec600 100644 --- a/crates/miden-standards/asm/standards/wallets/basic.masm +++ b/crates/miden-standards/asm/standards/wallets/basic.masm @@ -6,6 +6,7 @@ use miden::protocol::active_note # CONSTANTS # ================================================================================================= +const PUBLIC_NOTE=1 #! Adds the provided asset to the active account. #! diff --git a/crates/miden-standards/src/account/auth/multisig/mod.rs b/crates/miden-standards/src/account/auth/multisig.rs similarity index 99% rename from crates/miden-standards/src/account/auth/multisig/mod.rs rename to crates/miden-standards/src/account/auth/multisig.rs index ddbd9e99dd..196bb3de0c 100644 --- a/crates/miden-standards/src/account/auth/multisig/mod.rs +++ b/crates/miden-standards/src/account/auth/multisig.rs @@ -1,6 +1,3 @@ -#[allow(dead_code)] -pub(crate) mod procedure_policies; - use alloc::collections::BTreeSet; use alloc::vec::Vec; diff --git a/crates/miden-standards/src/account/auth/multisig/procedure_policies.rs b/crates/miden-standards/src/account/auth/multisig/procedure_policies.rs deleted file mode 100644 index c83245cc0a..0000000000 --- a/crates/miden-standards/src/account/auth/multisig/procedure_policies.rs +++ /dev/null @@ -1,246 +0,0 @@ -use miden_protocol::Word; -use miden_protocol::errors::AccountError; - -/// Defines which execution modes a procedure policy supports and the corresponding threshold -/// values for each mode. -/// -/// A procedure can require the immediate threshold, the delayed threshold, or support both. -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum ProcedurePolicyExecutionMode { - ImmediateOnly { - immediate_threshold: u32, - }, - DelayOnly { - delay_threshold: u32, - }, - ImmediateOrDelay { - immediate_threshold: u32, - delay_threshold: u32, - }, -} - -/// Note Restrictions on whether transactions that call a procedure may consume input notes -/// or create output notes. -#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] -#[repr(u8)] -pub enum ProcedurePolicyNoteRestriction { - #[default] - None = 0, - NoInputNotes = 1, - NoOutputNotes = 2, - NoInputOrOutputNotes = 3, -} - -/// Defines a per-procedure multisig policy. -/// -/// A procedure policy can override the default multisig requirements for a specific procedure. -/// It specifies: -/// - an execution mode, which determines whether the procedure can be executed immediately, after a -/// delay, or both -/// - note restrictions, which limit whether a transaction invoking the procedure may consume input -/// notes or create output notes -/// -/// Execution modes: -/// - Immediate execution: the action is authorized and executed within the current transaction. -/// - Delayed execution: the action is proposed first, and can only be executed after a required -/// time delay has elapsed. -/// -/// Thresholds: -/// - Immediate threshold: the number of signatures required to authorize immediate execution. -/// - Delayed threshold: the number of signatures required to authorize a delayed action. -/// -/// The thresholds for immediate and delayed execution may differ. -/// -/// The policy is encoded into the procedure-policy storage word as: -/// `[immediate_threshold, delayed_threshold, note_restrictions, 0]`. -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub struct ProcedurePolicy { - execution_mode: ProcedurePolicyExecutionMode, - note_restrictions: ProcedurePolicyNoteRestriction, -} - -impl ProcedurePolicy { - /// Creates an explicit procedure policy from an execution mode and note restriction pair. - /// - /// Common multisig cases should generally prefer the `with_*_threshold...` helpers and - /// configure note restrictions afterwards via [`ProcedurePolicy::with_note_restriction`]. - pub fn new( - execution_mode: ProcedurePolicyExecutionMode, - note_restrictions: ProcedurePolicyNoteRestriction, - ) -> Result { - Self::validate_execution_mode(execution_mode)?; - Ok(Self { execution_mode, note_restrictions }) - } - - pub fn with_immediate_threshold(immediate_threshold: u32) -> Result { - Self::new( - ProcedurePolicyExecutionMode::ImmediateOnly { immediate_threshold }, - ProcedurePolicyNoteRestriction::None, - ) - } - - pub fn with_delay_threshold(delay_threshold: u32) -> Result { - Self::new( - ProcedurePolicyExecutionMode::DelayOnly { delay_threshold }, - ProcedurePolicyNoteRestriction::None, - ) - } - - pub fn with_immediate_and_delay_thresholds( - immediate_threshold: u32, - delay_threshold: u32, - ) -> Result { - Self::new( - ProcedurePolicyExecutionMode::ImmediateOrDelay { immediate_threshold, delay_threshold }, - ProcedurePolicyNoteRestriction::None, - ) - } - - pub const fn with_note_restriction( - mut self, - note_restrictions: ProcedurePolicyNoteRestriction, - ) -> Self { - self.note_restrictions = note_restrictions; - self - } - - pub const fn execution_mode(&self) -> ProcedurePolicyExecutionMode { - self.execution_mode - } - - pub const fn note_restrictions(&self) -> ProcedurePolicyNoteRestriction { - self.note_restrictions - } - - pub const fn immediate_threshold(&self) -> Option { - match self.execution_mode { - ProcedurePolicyExecutionMode::ImmediateOnly { immediate_threshold } => { - Some(immediate_threshold) - }, - ProcedurePolicyExecutionMode::DelayOnly { .. } => None, - ProcedurePolicyExecutionMode::ImmediateOrDelay { immediate_threshold, .. } => { - Some(immediate_threshold) - }, - } - } - - pub const fn delay_threshold(&self) -> Option { - match self.execution_mode { - ProcedurePolicyExecutionMode::ImmediateOnly { .. } => None, - ProcedurePolicyExecutionMode::DelayOnly { delay_threshold } => Some(delay_threshold), - ProcedurePolicyExecutionMode::ImmediateOrDelay { delay_threshold, .. } => { - Some(delay_threshold) - }, - } - } - - fn validate_execution_mode( - execution_mode: ProcedurePolicyExecutionMode, - ) -> Result<(), AccountError> { - match execution_mode { - ProcedurePolicyExecutionMode::ImmediateOnly { immediate_threshold } => { - if immediate_threshold == 0 { - return Err(AccountError::other( - "procedure policy immediate threshold must be at least 1", - )); - } - }, - ProcedurePolicyExecutionMode::DelayOnly { delay_threshold } => { - if delay_threshold == 0 { - return Err(AccountError::other( - "procedure policy delay threshold must be at least 1", - )); - } - }, - ProcedurePolicyExecutionMode::ImmediateOrDelay { - immediate_threshold, - delay_threshold, - } => { - if immediate_threshold == 0 || delay_threshold == 0 { - return Err(AccountError::other( - "immediate and delayed thresholds must both be at least 1", - )); - } - // Delayed execution is the lower-quorum option while immediate execution is - // higher-quorum path. If the delay threshold were greater than the - // immediate threshold, the "fast" path would be easier to satisfy - // than the delayed path, which contradicts that model. - if delay_threshold > immediate_threshold { - return Err(AccountError::other( - "delay threshold cannot exceed immediate threshold", - )); - } - }, - } - - Ok(()) - } - - pub fn to_word(self) -> Word { - let immediate_threshold = self.immediate_threshold().unwrap_or(0); - let delay_threshold = self.delay_threshold().unwrap_or(0); - - Word::from([immediate_threshold, delay_threshold, self.note_restrictions as u32, 0]) - } -} - -#[cfg(test)] -mod tests { - use alloc::string::ToString; - - use super::{ProcedurePolicy, ProcedurePolicyNoteRestriction}; - - #[test] - fn procedure_policy_word_encoding_matches_storage_layout() { - let policy = ProcedurePolicy::with_immediate_and_delay_thresholds(4, 3) - .unwrap() - .with_note_restriction(ProcedurePolicyNoteRestriction::NoInputOrOutputNotes); - - assert_eq!(policy.to_word(), [4u32, 3, 3, 0].into()); - } - - #[test] - fn procedure_policy_construction_rejects_invalid_combinations() { - assert!( - ProcedurePolicy::with_immediate_threshold(0) - .unwrap_err() - .to_string() - .contains("procedure policy immediate threshold must be at least 1") - ); - - assert!( - ProcedurePolicy::with_immediate_and_delay_thresholds(1, 0) - .unwrap_err() - .to_string() - .contains("immediate and delayed thresholds must both be at least 1") - ); - - assert!( - ProcedurePolicy::with_immediate_and_delay_thresholds(1, 2) - .unwrap_err() - .to_string() - .contains("delay threshold cannot exceed immediate threshold") - ); - } - - #[test] - fn procedure_policy_thresholds_are_exposed_with_getters() { - let procedure_policy = ProcedurePolicy::with_delay_threshold(2).unwrap(); - - assert_eq!(procedure_policy.immediate_threshold(), None); - assert_eq!(procedure_policy.delay_threshold(), Some(2)); - } - - #[test] - fn procedure_policy_note_restrictions_are_exposed_with_getters() { - let procedure_policy = ProcedurePolicy::with_immediate_threshold(2) - .unwrap() - .with_note_restriction(ProcedurePolicyNoteRestriction::NoInputNotes); - - assert_eq!(ProcedurePolicyNoteRestriction::default(), ProcedurePolicyNoteRestriction::None); - assert_eq!( - procedure_policy.note_restrictions(), - ProcedurePolicyNoteRestriction::NoInputNotes - ); - } -} diff --git a/crates/miden-standards/src/testing/mock_util_lib.rs b/crates/miden-standards/src/testing/mock_util_lib.rs index 09fd850aa5..211feed5d9 100644 --- a/crates/miden-standards/src/testing/mock_util_lib.rs +++ b/crates/miden-standards/src/testing/mock_util_lib.rs @@ -7,14 +7,13 @@ use crate::StandardsLib; const MOCK_UTIL_LIBRARY_CODE: &str = " use miden::protocol::output_note - use miden::protocol::note::NOTE_TYPE_PRIVATE use miden::standards::wallets::basic->wallet #! Inputs: [] #! Outputs: [note_idx] pub proc create_default_note push.1.2.3.4 # = RECIPIENT - push.NOTE_TYPE_PRIVATE # = NoteType::Private + push.2 # = NoteType::Private push.0 # = NoteTag # => [tag, note_type, RECIPIENT] diff --git a/crates/miden-testing/src/kernel_tests/tx/test_output_note.rs b/crates/miden-testing/src/kernel_tests/tx/test_output_note.rs index a2ff0c722d..fbcc0cd51d 100644 --- a/crates/miden-testing/src/kernel_tests/tx/test_output_note.rs +++ b/crates/miden-testing/src/kernel_tests/tx/test_output_note.rs @@ -78,7 +78,7 @@ async fn test_create_note() -> anyhow::Result<()> { exec.prologue::prepare_transaction push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create @@ -88,7 +88,7 @@ async fn test_create_note() -> anyhow::Result<()> { end ", recipient = recipient, - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, tag = tag, ); @@ -157,7 +157,7 @@ fn note_creation_script(tag: Felt) -> String { exec.prologue::prepare_transaction push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create @@ -167,7 +167,7 @@ fn note_creation_script(tag: Felt) -> String { end ", recipient = Word::from([0, 1, 2, 3u32]), - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, ) } @@ -188,7 +188,7 @@ async fn test_create_note_too_many_notes() -> anyhow::Result<()> { exec.prologue::prepare_transaction push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create @@ -196,7 +196,7 @@ async fn test_create_note_too_many_notes() -> anyhow::Result<()> { ", tag = NoteTag::new(1234 << 16 | 5678), recipient = Word::from([0, 1, 2, 3u32]), - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, ); let exec_output = tx_context.execute_code(&code).await; @@ -264,7 +264,7 @@ async fn test_get_output_notes_commitment() -> anyhow::Result<()> { # create output note 1 push.{recipient_1} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag_1} exec.output_note::create # => [note_idx] @@ -276,7 +276,7 @@ async fn test_get_output_notes_commitment() -> anyhow::Result<()> { # create output note 2 push.{recipient_2} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag_2} exec.output_note::create # => [note_idx] @@ -303,7 +303,7 @@ async fn test_get_output_notes_commitment() -> anyhow::Result<()> { # => [OUTPUT_NOTES_COMMITMENT] end ", - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, recipient_1 = output_note_1.recipient().digest(), tag_1 = output_note_1.metadata().tag(), ASSET_1_KEY = asset_1.to_key_word(), @@ -373,7 +373,7 @@ async fn test_create_note_and_add_asset() -> anyhow::Result<()> { exec.prologue::prepare_transaction push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create @@ -395,7 +395,7 @@ async fn test_create_note_and_add_asset() -> anyhow::Result<()> { end ", recipient = recipient, - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, tag = tag, ASSET_KEY = asset.to_key_word(), ASSET_VALUE = asset.to_value_word(), @@ -443,7 +443,7 @@ async fn test_create_note_and_add_multiple_assets() -> anyhow::Result<()> { exec.prologue::prepare_transaction push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create # => [note_idx] @@ -480,7 +480,7 @@ async fn test_create_note_and_add_multiple_assets() -> anyhow::Result<()> { end ", recipient = recipient, - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, tag = tag, ASSET_KEY = asset.to_key_word(), ASSET_VALUE = asset.to_value_word(), @@ -572,7 +572,7 @@ async fn test_create_note_and_add_same_nft_twice() -> anyhow::Result<()> { # => [] push.{recipient} - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} exec.output_note::create # => [note_idx] @@ -592,7 +592,7 @@ async fn test_create_note_and_add_same_nft_twice() -> anyhow::Result<()> { end ", recipient = recipient, - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, tag = tag, ASSET_KEY = non_fungible_asset.to_key_word(), ASSET_VALUE = non_fungible_asset.to_value_word(), @@ -672,7 +672,7 @@ async fn test_build_recipient_hash() -> anyhow::Result<()> { exec.note::build_recipient_hash # => [RECIPIENT, pad(12)] - push.{NOTE_TYPE_PUBLIC} + push.{PUBLIC_NOTE} push.{tag} # => [tag, note_type, RECIPIENT] @@ -685,7 +685,7 @@ async fn test_build_recipient_hash() -> anyhow::Result<()> { ", script_root = input_note_1.script().clone().root(), output_serial_no = output_serial_no, - NOTE_TYPE_PUBLIC = NoteType::Public as u8, + PUBLIC_NOTE = NoteType::Public as u8, tag = tag, ); diff --git a/crates/miden-tx-batch-prover/src/local_batch_prover.rs b/crates/miden-tx-batch-prover/src/local_batch_prover.rs index 09a5dc3fce..4e7ccfffc7 100644 --- a/crates/miden-tx-batch-prover/src/local_batch_prover.rs +++ b/crates/miden-tx-batch-prover/src/local_batch_prover.rs @@ -74,7 +74,7 @@ impl LocalBatchProver { batch_expiration_block_num, ) = proposed_batch.into_parts(); - ProvenBatch::new_unchecked( + ProvenBatch::new( id, block_header.commitment(), block_header.block_num(),

8mcP@f{26KK7aW0V`E>ozzKw`(H?D9h~ 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 MntDHHUAX1{KZ)WP;Q#;t literal 0 HcmV?d00001 diff --git a/crates/miden-agglayer/diagrams/bridge-out.excalidraw b/crates/miden-agglayer/diagrams/bridge-out.excalidraw new file mode 100644 index 0000000000..5301ab97ce --- /dev/null +++ b/crates/miden-agglayer/diagrams/bridge-out.excalidraw @@ -0,0 +1,373 @@ +{ + "type": "excalidraw", + "version": 2, + "source": "miden-agglayer", + "elements": [ + { + "id": "title", + "type": "text", + "x": 350, + "y": 30, + "width": 500, + "height": 35, + "text": "Bridge-out (Miden to AggLayer)", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "user", + "type": "diamond", + "x": 50, + "y": 130, + "width": 140, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#a5d8ff", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [{"id": "arrow1", "type": "arrow"}] + }, + { + "id": "user-label", + "type": "text", + "x": 88, + "y": 167, + "width": 64, + "height": 25, + "text": "User", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "user" + }, + { + "id": "b2agg", + "type": "rectangle", + "x": 280, + "y": 150, + "width": 140, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow1", "type": "arrow"}, + {"id": "arrow2", "type": "arrow"} + ] + }, + { + "id": "b2agg-label", + "type": "text", + "x": 310, + "y": 168, + "width": 80, + "height": 25, + "text": "B2AGG", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "b2agg" + }, + { + "id": "bridge", + "type": "rectangle", + "x": 510, + "y": 100, + "width": 220, + "height": 180, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [ + {"id": "arrow2", "type": "arrow"}, + {"id": "arrow3", "type": "arrow"}, + {"id": "arrow5", "type": "arrow"} + ] + }, + { + "id": "bridge-name", + "type": "text", + "x": 565, + "y": 108, + "width": 110, + "height": 35, + "text": "Bridge", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "bridge-desc", + "type": "text", + "x": 525, + "y": 150, + "width": 190, + "height": 120, + "text": "1. Validate faucet\n2. FPI: get amount\n3. FPI: get metadata\n4. Build leaf data\n5. Append to LET\n6. Create BURN note", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "burn", + "type": "rectangle", + "x": 820, + "y": 150, + "width": 120, + "height": 60, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffec99", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow3", "type": "arrow"}, + {"id": "arrow4", "type": "arrow"} + ] + }, + { + "id": "burn-label", + "type": "text", + "x": 845, + "y": 168, + "width": 70, + "height": 25, + "text": "BURN", + "fontSize": 20, + "fontFamily": 1, + "textAlign": "center", + "containerId": "burn" + }, + { + "id": "faucet", + "type": "rectangle", + "x": 1030, + "y": 130, + "width": 160, + "height": 100, + "strokeColor": "#1e1e1e", + "backgroundColor": "#b2f2bb", + "fillStyle": "solid", + "strokeWidth": 2, + "boundElements": [{"id": "arrow4", "type": "arrow"}] + }, + { + "id": "faucet-name", + "type": "text", + "x": 1063, + "y": 140, + "width": 94, + "height": 35, + "text": "Faucet", + "fontSize": 28, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "faucet-desc", + "type": "text", + "x": 1070, + "y": 185, + "width": 80, + "height": 25, + "text": "Burn asset", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "let-box", + "type": "rectangle", + "x": 540, + "y": 350, + "width": 160, + "height": 50, + "strokeColor": "#1e1e1e", + "backgroundColor": "#ffc9c9", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [ + {"id": "arrow5", "type": "arrow"}, + {"id": "arrow-l1", "type": "arrow"} + ] + }, + { + "id": "let-label", + "type": "text", + "x": 555, + "y": 362, + "width": 130, + "height": 25, + "text": "Local Exit Tree", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "let-box" + }, + { + "id": "l1", + "type": "rectangle", + "x": 900, + "y": 350, + "width": 160, + "height": 50, + "strokeColor": "#868e96", + "backgroundColor": "#e9ecef", + "fillStyle": "solid", + "strokeWidth": 2, + "roundness": { "type": 3 }, + "boundElements": [{"id": "arrow-l1", "type": "arrow"}] + }, + { + "id": "l1-label", + "type": "text", + "x": 930, + "y": 362, + "width": 100, + "height": 25, + "text": "AggLayer L1", + "fontSize": 16, + "fontFamily": 1, + "textAlign": "center", + "containerId": "l1" + }, + { + "id": "arrow1", + "type": "arrow", + "x": 190, + "y": 180, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "user", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "b2agg", "focus": 0, "gap": 5} + }, + { + "id": "a1-label", + "type": "text", + "x": 200, + "y": 157, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow2", + "type": "arrow", + "x": 420, + "y": 180, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "b2agg", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "bridge", "focus": 0, "gap": 5} + }, + { + "id": "arrow3", + "type": "arrow", + "x": 730, + "y": 180, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "burn", "focus": 0, "gap": 5} + }, + { + "id": "a3-label", + "type": "text", + "x": 740, + "y": 157, + "width": 70, + "height": 20, + "text": "creates", + "fontSize": 14, + "fontFamily": 1, + "textAlign": "center" + }, + { + "id": "arrow4", + "type": "arrow", + "x": 940, + "y": 180, + "width": 90, + "height": 0, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "points": [[0, 0], [90, 0]], + "startBinding": {"elementId": "burn", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "faucet", "focus": 0, "gap": 5} + }, + { + "id": "arrow5", + "type": "arrow", + "x": 620, + "y": 280, + "width": 0, + "height": 70, + "strokeColor": "#1e1e1e", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [0, 70]], + "startBinding": {"elementId": "bridge", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "let-box", "focus": 0, "gap": 5} + }, + { + "id": "a5-label", + "type": "text", + "x": 630, + "y": 308, + "width": 80, + "height": 20, + "text": "append leaf", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "left" + }, + { + "id": "arrow-l1", + "type": "arrow", + "x": 700, + "y": 375, + "width": 200, + "height": 0, + "strokeColor": "#868e96", + "strokeWidth": 2, + "strokeStyle": "dashed", + "points": [[0, 0], [200, 0]], + "startBinding": {"elementId": "let-box", "focus": 0, "gap": 5}, + "endBinding": {"elementId": "l1", "focus": 0, "gap": 5} + }, + { + "id": "al1-label", + "type": "text", + "x": 745, + "y": 353, + "width": 110, + "height": 20, + "text": "LET root posted", + "fontSize": 12, + "fontFamily": 1, + "textAlign": "center" + } + ], + "appState": { + "viewBackgroundColor": "#ffffff", + "gridSize": 20 + }, + "files": {} +} diff --git a/crates/miden-agglayer/diagrams/bridge-out.png b/crates/miden-agglayer/diagrams/bridge-out.png new file mode 100644 index 0000000000000000000000000000000000000000..19b8665f705577968481016fcd91a0fcd3ad76dd GIT binary patch literal 217182 zcmeFYWmKHYwlxeSf#AUOTng)VHaCes=!97UhuEA*}1aG82 za_>E7XP@!@*ysQEuSbu5`l(tqYt>wHu8R1eD20heiiUuIfGHylP(eUIeSv`R1mijK z<2O|ANm3CIULnW;#MC?u4l_`i^wejn6{L}N+ykVpcMlEx$kpOvFkokkTecHB2LX`1giX$=liIEaQ&;S=CxE#ON+7TrPX`E-PC56 zO9P)HkCQq`bKPt?*Pc2dsejj|IyF?_1A%#`=VRa z|M)GxAL~S*%YHI}km(!7@=pf#uQwr*hwDB0=ks}djJWfu>nqaE_>=MfYEIctVr~EZ z(ti*+QKTm+0a$=1p1;Uj{$a5H_wQX_Ib;5JYlMI|9%zN2)GnU6H{I4R7 zieZGr{{nM;$Ybxn3ix>7AlH9~9z=Ojlw3r?8!Y|*0;-~qgKI|qXR!Xig=7mr-4lHm zK);qF_g^h73iaH773rtQY>zla{<$UK`j3$Fukh}PZjt`~o9O?siFCw_?ygT&Lor`o z+L|eNZzpP2>NMId5Lu3;^OX_QCQ>~DJNxSkEyuPC;SiQAi>%w*Y_Z@mFW7#O|AMZo zD)#>_gJ@*ut7Bcq%{pvnL0iv;U%Nv_fru)|KvG4tB{uG@?YLr zrzL9W>_dhmSv&52wPyNVF33S~&CLIAR4C8a1_9xep!8pe`JFiSqMovS7!j}Hif=K__N+jTT;*qw>(%b=V-~k8w9h>f*9_6zD+X=^3#^T$=l-&Lgcux_Jb^X`3F-vY| zk&g9Ie%!$X7-aswTL!6r2k4KXWh>!o#n&#{l&wf?rD<{o^pUw-zrV9KfcIMR#Omx| zt#(Y)qs)aR(80z5o=Qq(BYI??jPEV|tlpF|1`3M@KplK4TcOIHcA=AX;ovhJaIpED zc@~Kgs~W!eVax~Ub-s-g#5gN$8GS~b_J4v#y#CZvqbb%h#E&y`g6MR?VY!2XY(1Q; z{coxFvzRCfb#lmG--%|u7UfTUB2ABnd@gIw*S}(&e#bMQ>Kpig@2?cq;RRPB15?{X z7swzH&s@FleQV8L{qQ0*0{siVqYJ9^D~W(M$C$2Q6vJU*ZfdX6brYy}0#$VcZpK*J9gI9FA$S30^#Ue9}7 z_%FtGykDkQLK-}1uc~`~4c0{eZSZWs$HBh??kvX2{tGUFAcMM|GRH@c!cZrniEmg3o8qc| zsOPds0P4jIX@F+#vX1pLFVMUT?0o;UBSzwH`{}bN(QiKS{Eyw_7bi+Qb;EJ@mAA@n zr4W%h!f=Ngu1nlNVWUdvXTXdFxazhVI2Sd#a>9VF9h^OJMeqwnkldfkIh^A)=sA5^ zxpZ{~lg%O##gu5CW!cs7@hM$&egFmgsQFluT;6s*6oL(QdfHzzD*JFLdlMq=?7rFA zjbHZY{|PhS*^-Jo$apFlL(#VQbEC)5C{wmQ#_X8z*9cp!hfReB?%wTFAT>W2o(4)} zj|*GiG+fHcOolz!@gehQP4_dB97fS=l zi7p`l(#>3492D>F{nZfN^ii^c(_(nB!X^ju6($C5)6j^)c7zga&KxdmN_NqD3pO$SAYK2LNm%+0I{+o zOH+in;!<+r7`QhQ*ON z&6KLC$zZdwOtUfWqq$&5JD~V{FlC-~oB{y6(8%u8NILj5e6@uOE7^Z69O3fKoFTyV zh)4M)$}d3y_rGS1i26?Mkw96XE*ks=@9a68SJYitzG5JMWp)fzqF;U2x08{InSx$O z9W5(gSSJk!PU*%@Mrvdm5UHU3k9mxe?{^++b66+Wc%C;K=<1~(;@~*Yd9j04X6ErE z1p(?r(PPNzw9@g-ZlQMO@wd&@tfnO|YBoa(r~i9#L`q z36IAB{RdZukt2fJvNk`Ra^gNI6Igj7nKo+e&pq%!fFJ~Tox2jzTa#UcAo-LQ>~IP_ z=VE_zk3(~bnKAuLQlzkBvla%Zg0dmE7sSKn=Q`;+-8$HMhD^~hO#F|^%;@A(s!6Po zD3$g_qSz())1=GhXI1)Se$wv&eJjS801(gUdt<}PvbcIxbu-NFSZk3TZk0=Bx?htJ z%h4}fbsB3G{7P%_;Z|36v|hh63N+K_xLKs3RAhTvDgX+)1aU z%A)z~CLLzPazLp6mQwy76;E~tZs)o)1#&Xpr%hWrQbfbr0oD%x!5WQzq9e^SiCZe6 zt{S6vZ6WRP3~9n)!j^8bS>=OoP9{ndIkaL37L)-C&mv-yI;}Au4CvmVzLO2`bHPi$p-_^d`q2(T z^w|v~O|%vG8-TL?UyKJ9`;X-1{ZXI1;cC+BPyP|hQKYqF3e;{>mL>*vkNeSZ@F)(i z4_}(z)ZSZ0eRrrQmpt;ZYE=yt4$FqjM18L)BG-GsidSH)pCH!4mWOgH1Y9(wU+})B zwQ{Vy*G(f_ zgioh_`H`%mmYEhJW$+6~Vemkr>^;VPVd@egz^`J}Ezd`Ao?Dr`g-6r(MDO?{R zx@e`(Mi*+@H5}!xEp3XYC=egd@%f&tKmGc!K+>FNvNEU+Kzw0I0q!op`{-H3yXaUc_OD-^?*w+9Wm;NJA#lui{4#-F3Gz6AdAB z(i4|0?cm9iV_KA4WWhM5wMK1j_y69Ik;+|7;8$pd5wico^<$6;xvMr}nbTB}5?raE z-5Snz^mUA1X$gDN)5UEwEC5dtzW%7R8C%{k~N z7%B!p&3G!~1*R-D%C&0V+MaFv*bVXV)VqbcfKBc(6bx?fgyOk7widH!c4zU{`CCv| zZ`I;3;CRiM5Jx|VpU#h0O$xzFEq%(>j-Xh-vtd7PHO4ij=YYuR$J#|uV;-f|?T3zF zgzf2V+k2VBKj8QH(fi|Lt``bgQT#*NS(HHt9wzstYWJzd1}V3C*L4&})f*4qiSvI) zHEcW?PCnxK>LPEwu=fkW`=hY=Grx!T32`e+WCdp1@4pwz_6Q^Oz*q%_dfSoT1$LDW z5Rg1gauQk|+r^18!>desxNjuLdR{%E7SJw{kflGE%x~$UQzg3W8GTr zp|sO`n_``4wUZ70j{G3u;FNeG-mf|#ex(+r`02uz1AJRNiTz6v&w+bC)m^V$pOI5o z-c{}Q`p!#nBhKzqluy;#1~srJ6M8s-clj5=bJDkJ4dXjm%fp5W1?6q|8ZHpcS0AjS z<7S+|UPRICv6bU0uMocS)HOQFA$jc=B)jjdo}*C7WD`8~9BYcZXU~Ydaa^A3UYPuk zZ1>@}zB3--G5>D@oGpU4j(&RkSiM~gv9lO_^XxucsLOJ6Umk3Kxe&`=)M|7M!w;=; ze8<$9c}bkqh}Fa2BLCecjOzS~_`OGol!cI+R1|3gY%rFlhwoM0`d&3&G}hHD%~T7n z)#pyObivE=9V?Y8y~_Q~rb2%m$5z5w!-zHu!nv#Bk0V6v2T?mGjYUV1!nS-T_~$S# z{EI8SQDfRAsc= zeQ$O+Ek>?&+nmp)2llGDCBq_141lk6h){AZ&jxFwpE|!F=63qgJJVx~C6zNoe8Uq} zOdWErr8^GN!Xoi1V=nkHrZ zM=^nvMEri>Ytw6qg3J20PmQhH6GZw3F)WtKSEKu|!Db{rsh!v<=?qdV`3!l6x$s9O zi|Hbg?lbzuNy%8K0&;4zBbaOYQT)5)-Ae6A!{^&~_jZyWlO_Bp^jJv{&OFHGj$>Sk z>(G6UPh6&7zEGd{pw?NPVm?WXd}85eFlKNSjfmJO<_<=Hb4mcpc=Gx02QI z1M3n|uV;)tFPTZ=5=i5RM~3qODEX83#IdJsrpC^|H_$=2nN3#nM<`?EX*9m;H4C|4 zzJ}$`MQj6}0%(oq1AgX!hP6L7^7l9^hXz=8gdP252Jp*rOpAWWL`th;*Y;+^BDZ&@ z)7{61Rn44xYw(6`)b~bxbEIb|kuT8{gY3on7QLQzLB^#3WZqzrj(#2Q%C{MqqB$E@ z;InbOpP2MLr3LB`s|MIU)2=o=D`Y9P#HUla91^LR>Su0uu+aLvdKSx~LO*fRhT-Zm zVtI*%Aph?bF0s*X@!JUR82IlD*(v(!^R_5JEzmw9{0vyPIZzCG#vuzz{4{ZTM(iew zAvAh91-MPLe#sEMc<@bJEij4=SPI|8<~}u7Mq6vRuU_r}@%X3ZAt44LqE*<1 zTUf@&-CaQ6#E0X)8;hcEu>1qeFC6CIzpEB0>Q5ToE{_rq6sV248f~`!LOy1?+9tH< z(|ZcU*Tt5qS*v@P9i4e)SrDEgG2_E~ymK!km&EL4^{57(xp05g$#^<1&SHVJma#a{ zt?a^oD1!@*m z&R{z`!o`#rE!O_n;g2#O7#D*A2KCT==B(rzjImqOg$|E~lzch^_q1J8)IQ;PD+~-aDb`ZJIzk%f)NJKi zZ>^FQ(^Se@qq88+J7~1yaP4zL)>U`C640u##(5%g7#S7=52q&1vt7jFDgTWV;H&!j zRD|0r16L=x(llBCsrS)mDsfQ1?>AvL2lSoYDtnDGrEo*riiTNYKIg6Fpgi^DvGR?w z1xKuXyeA)qgrx$6uJC7<_!#<5*1s(0K`aufgBww5d zsrKh8`>v`MWrfgaH=s+F^8hPcbEO{e@Qtf7Pj7 z`z!F|w}&W*13iEDOr6E(msCv$dT5vFE!$w>E%@9Voroo!&Et5PNT4Lf??MDgk3MWY z-`$*(##G2)?856E$0BKL83}paqO)J0fs4FN)xH*5-B3KeQh>ftNqVEHzh7}ND@-Kd zVM%jyQj;tk`0*NZb6&)>O5jt&MY9H^?U%tt>9_qen{w7X%kyy)>Y(XTUQ{7M2oD26 z`l^<~)YBo=_z!y#nzG*2ksx#}S4!v7VTe)1xGtqbJhRi&b4z9?g4UKuamq=>a{ z(5wJ3-E@0hHS85tY^~%3XxT~gQf#SQu<{jjRCqr-#Zc5hFr4%@ZN5@%@aSWa-Jd6q zbT;4Pk*2f!p_CS4!qAr5`2TZDcClL zRU2e7vbg}>o!+wU_j-%G_0`>kSr6TjW^s`fx(6KwKA22PU46~HooQI)$h;+iL^m8X zY~FoIP}kIV;{xZwD-vp~A{{TbeUCF;Cv0-=I~mc1Dp%?=yoprT6-yG5=aFBt^h!V3 z=^JWTf@~n_U^-XV|t#8~F1I9nE zS!!wAfcblEVY@dmHBv$o(*CFNO09kihSc86=f8#KzD$y>c zEx(=F^=YzT9m)%H`}_I(ApWQ%J#Z#R1OAYbL|;ADb3})?KexU4GbCv(g0G+5Hxi?) z4khnz@Z#eHeMjS<6yLGss}V%GOB`nc2~kLXZjl8biN#?5qy-JJPC{{2nt!ojFmAlV zlOjHEN$1*gdFC(mF5lMke)0E_@mj*jYF+?zlTLN{>ik=~M2i~$BQ#s6TLyfZpQmAd z;g4b$?HIBt%7ikoh&B++wm7?K^ov(=2|bBL-&^?!a(x$YDTbYS#}gMNOpEC)Yx!so z@f0g>D1Hd%Sdo`ML(5t}7Ys<8zp0nB`N~bnymHc-Pp8td?3uG)#`hG6;*eitO%k7M zeap#bDY!^B9FM~co(8FP4fmQ)atTfeL-C68tI_ZZ=k}^>)^T>ukg5V6^G19}VQ)O1 zw(}+I-we}I+O3K9Pb8FV75S;nKch3%LR7inNG(8Ci9AOP0E*ffE;8&^I^d(=?gMGM_l;kcQe?@g3#bmC!sq@6%4 z(ZnSvo3SB;31xspJ|3z&e~)pE6zN0!fpi^eYSY1lBNWEo?;`$qL~xE^n|4k&hb3pk z1zV2V&lamniv$x#FLSOFVKL}G%S?8n^s!Wmary140o?_Wg}V2FE(UXq%W1p6u9zP{ znKZ6&yxaX4;QFWC;6gOpZPn-3Ix5nFPdaIi#ohQe3CQpu3I1_659sMEg8rLstI(fb5=Qiw{wWh-tg`=G2Yu2!&he`iNWiB4>0944L}16#5?p<%a&piUwj# zc2ZVXB@JoxkCVzc($(<$p1@F69o^G;X&wDd^3WA-JpI5SnM(2J5UbC^ z8fbgTrKkQRC~q>YiMz+@>J1dC8M61LDt{?^ie&FYoC;c-aBmZf70FL5)Y63ZsOHs= zLc5el8o_PGjDCRE>BmUJn&Ck;RQ;oJH`Tq@l!^0cv!E_H7Aq?f(6U3_$EnjW1RuM1l#A>I%dMS$w9enUd$bZZ*F zqx?aDYUlr!EotZ80?wPO>@{LHIQl<*7qgUI1MEI1R@wA_Sxn&~cm%ED9JrwuHSnh8 zQ_V@78imv>W_UH8bt;x`tM9e)$Tkx0zjq;ZmCF`|O~)hW7SLSJ3-tp?W!~ zoja0aq9v}hhsXx!w|*1}6ui-VctBsQumU~W+_8$rMVr&~xQ5-#F}Ldio1kmuuEPB7 zTLw4T+_c#PGAw`dlSR&$$}SSi!PeMjg}2S>W2_r|8+d~B>6%p-m1}RCL6kBLJ`~(| z2Z`qY2!fsKKsVlR^*CeB?b-fJhU04~MKR@u7dzIPIb(Rl2iOkWee!p>FC~faK|+~Q z8E}*5UYL?+ySW^ukSoI&XxdJ!&f9+6r0)=Wg})Xwc2ND8``W z@P6EAf-57S07p#M+Xc-e@u$!o&;GM`Nwt|a1*8Ago79xzSrY%{7vYaygYr1Z4Gy*Gdp}4e_l|(tC6N>& zp*^=RXX@gQh#^%Z!#P93&6hlt4aqZQrc@GJUgwF5XR1}jm9Psv+U?^ri^bBpbMn)-dr)6rESo()n7=f{T_(E1ovxQCpbSYY2| zrMq#KnezcvPTjZKn<<)cMqliv)IN84Mxw5o;jHA#X?rMpU?E9UQGnud{mO+{`LJ}1 z%Eh0+h0=QB3(L9JXm<$un$RQl1bRaB*U1&NH{&or&&0WAG$&T){#7CT_H{RZ`}U^{ zAO27X12yoZUmEE!WIZ}D-Nf!{8l`FFAhc*kC1;22^0UEDR_|k+TnmgNgAk3mgx3mX zT_cJ3{5>c4h^?{1o2p;O)F6n<=3CrSMtj34d0*y@(u+%(eWRh7lorPV2js;-C(qWEtq~4dX_V0HSIkq#AAkzC3z4a zf-cQKdI!R$xYnA7T3l2h1E|Dsr#I-%v5rouM7-#@6vzDela-@B>>rx9gJ|Ne+W9%M zzfAS(=z93_T7eayr}RP6+LOCzXM#~TI;;iP^8NK7CY2sFr1u?`la5I=TAFCN-7ud} z{)R~h+Nza>Y0CJ6vu9fs+Pl4g?|tlG5f#REy$bvM6dku2^^<(XOjjEj<>82S&PHOt zuv6iPalOgE!07m~lMGf#c1y7=j1_WN?BuTM-w**fH%=i3J(B3(|SpH91#*IT$Q&5q+oP!_C#(x$y@<$-_1@?*K$8zwg=ae|jR zaK<#0okg?1OQb$~N;W1m7AucV6dPzD-YOfN?N5(3-Oe{v=jN8N-P>#6{l;fseH6Ub z_(!$ySjMhVf2iupc8pTA|D$e0ejVuQT|g+#izq%F^XoexSsKS(Uh>}Dm%$%5G;uhh zzV_AT-3yFupUoFI*3Pvmbb#BV8x^=?$R2v^4=NR+!!gS%&B?0uVkgdBCK9e>qdl#` z8z8sLOW6~nLw(5(w9V4FK&uzd!r@Jc{gPpp*jW+>zh9+;I?$1Sc=*lB}N_ZGis-)Lk_-zk)@^K>g$V1s3 zPz=_B4ox}8_#>&4Pj{+iku`S?2^WtOk110PjU2`Xb2POH%rZZX#K+Np{`%zCLyD$> z#sSeHD8>oUn=Y(r^h-5`EG_4H2wcL9^x+dSZ#WmOE$6J6hcSzWQFywRyp(tb@G{a$ zoJ)@Qr*>T|=`Ul(7zOTiotGJ4c@+g>!OOq_xQZpFnSS5mn+V=`o0mSrquS7S2O(3) zyVM-wzVs@D>OoVjRB)Dl5(d_uz~WxfrGO_BZ0F4cd^k5n*von*SteIaJgc9pK+6fIZ{r1Vmt{ao$97^JJD_@Qg)M{PY8cpqt2 zDL;pap}cG9I{S4H##w`n!GJVb;oR>k>&m#raLj4IWwi2QSt-t0V8&3RUbYEPx*Q2{ zLdwH^{6H#n0Q*>jkho`INIa^Vz z3;1lBX-Ug8esVvu8GV8Eyzx}<`~d8JRhyhtum$!$l~*?Uu#>F{jE3=5iRe}vbs5fT znMQ4Vi`o4N{0MQ@@e2o;7(y6p1_ZIb;!4dFhmRC_@ny1yP3db#E&vl~+m@FmIMYFL zlhK5WVLjHo)Vs1u=tWh^Uj>j1#TJzEZs(xp4*x+5PH-QY>B(5emp_=P+N(~Y^^J8G z-!ufF=m{T6@G4|Bj*>y>T15mS(!4{j|IN>cZ#XDuvFc-zig$~=+SEu2cRKf7Kf-3f zOvGK1<==jNH=ZBj;P`mD>*@-ls2b+$M(999j>?E_X06)vx_`S1=`OCtLY@F}ym5N} z!#98Njnj+b-f;G)NJCvsj-Q&wt@z@SS5;@Wqhh~&0SMZD7c=lqOKt06YWtqsSU>%w z5ozNty-@M@i=XR>?7N9|RJ4K(F~Ud>cB3a%jG1W_jYnhvor8EKKd`_$D4G${4bEMA zw_dQ7S1UX%tUo;QLWfZ}`UzbOUYE=se(ah7 zm&Hg*EV0qo?IU5bDv1I0@SV$55>5+w@!jzAi$Dwt^*ovUg8^7OKHtgU2d?xNA`ss8 z(dKy%IaxrpX;oWVBW-LkagX*M-CkY; zD=!a1TreR78)PZ&y|x#ei%(z+3;lS{FX0jw(e!l9^HO01Y_jkEtr&*Ge8)V9w z`)2;Yi07Ou5c={Gf8f2nN^8B-P^mGTeC+G5NkX)u~UKYABlBrk6Fm zRpm1+x--Rwr>?;+c0U1f{zx%Cu|T8b7|o2QX^J*c&xm6k$X?$z6HPLu+!gb*LqR=r z&yUuRB98q5#n|1b0{>+_oc@SMzJ|%gc}TWE-BxdAjB`g$i}fUefA6QZD{r0TJ*5hq zW;#OpeZ%(;W)xu~;a2hPuD3kMr*EeiHjClR7xV?ZchSNgRWsVNH(J=lsGFLX`))VF zW(Fymblyin1|9|HE$Aev{jhJ&KBW|T8r%G-{V9@`)z)%mDYA3Y`~-SkB<$%#!?{=a z*Km}u;R_Q?bBPFJ`!E{F)ft-wyd~2c1s^)e&DkQ8@6wyIku|ORwm=SW$scvkkj`#< z+!k^kA4^v>VvNJrOp}x2q4#NRG^J-@kgr(76{jh&AT)QS4=6wvtV>+gBbwoQd>BbK zuxqUMU?Z7U^x1tH|yH>07X=kudaX;>7f?#yPk#m@_f}4 z_2#PN`hpc}-=B$+u7xq>&%HL*b=e6_=x>Le10=pq851*z3uuI=G>|Bh(qzn$mMGHH zE^O?n?ihV3C$dfJa2)#JNoeaMyZT0TfInx z<+X6%bDmi@Z5zQwJ?S(c<6D<&=I;!=3j=Ue+K@LOsAU1(CMgWfuWyls;auHAjl;}7 zyj*F*9qy@EHi!Do_Te)QB*8qoo?JJ<{q-Ld91+zu{kM}R}yGm*Y z^q`sH<}TmnRe9GGA~rB(H*4@o@ieyKR+bngtupnV&$BFh{f*>duL=AMP^xgFoWKjJ zEv~^B!&;Bzpe_**fq@DB`>b0c7QH5qL}@Ns{tdD^_Irua5LfRyleSW1)?7a@rLeCj zaZ#ZeCil18>pKer&?sv^jZpu=c>~D+^v2gvxPwAm(&IJu`9g-v?j!ezl7_oDBt5~q zxQsa$CGlGovx)jTEnA_?cD*VsvacrjyT?MN*(=@mm!fOVs#Gc@9D@M4K|0pSKJn7+ z<=lHheyQ_BV0EP7pa+qsf6}SjOFJ0`j%S-cI!ZKub-ccCmYSA@jxF2uE#J}3oDB1_ z+P_dX`c?ZKMj+z7q7R%MW-8R2F*Q&GUu0;M0y7TB=4HtWzbFfXGe>%+!CVx|VzYTw zK;i?Iy-S6IP*u~u?u%=#$^n+1H?}+~Lj|f;e!&eHipg;dtVg1N0>jD6a98tl7@2os z{v^{+Z+g=vK~|bAJ#adk(IW?b+uv-frs0}sw*6bN&pyWU)%ao6X9;nJ&*Kf00zZ^$ zHF49i)8pJ1zTT$R>p-82DR`+Ned9uN0fK0aec#)299%@#oCM zUoQ0~IBu|HTf;%kFX?ux;dUX97E7E2_4E7E?=tb@n=yQtmvb~Vm{ctJntQdXz_60j z4-`Sarx~^Jh_H>~a(Mxf)V^A(^wt}WP2$W25e#z>CjnYzuyZ1x=+)SaOwj6SdT<(U z9M%e#0v4NrR@(GrjFDsBs)h2}A>JF(*9OrdPRD3t_iTJ&8OPX3nmx6z)fvfnhM@B+ zxeS!uO*HyC{LeH6PmcT3la`C>U}j`RY|$>YV_nTmr1}Q>OnP&UQj+<#Bl?rE8M(&H zss@c?Fe=fcI@_GOI_)BJ#cOK`D@toGnif+TuhTxFIT$N#9*B3Njs43tet&?6+sbH4q&q-AI`BUPqD%QnH zwiB`s-_sa<>1QWK8AG?7Gj+U&Z|&WJez7Xo=K3yK8?d^-!K9;1d(Q#Brd98uLKPS1 zCl#wv1hk@xUt($hdh{kkq6_?F00n@RxHsZ}=L<VfJYxd6G$WtHYa zju%@(w!IQp(h@`hS4&E_m|9~Slg3U|+~5v=*wnn%FEM8;>_FVK%MWB?(6(hc(MnB| zHuo^Iad0prKg`mUoZkGh8gnCE)YC$A?@=nH$XX_l;uWz+?>IOPWtg0{kDt4#nr%u6 z8#&j|qfb>PMT;hgCA6quUf7TpWvs@G#33S<;=Rqs>_}A<)&6A#XA%}E_ryA-wVsL0 z;*7Sgi77IhCKw8CIQKTY3(U)nw{F0=|tTz%EsYGaMM5{zA&8V7CtsKXnTGmT$z)VU)p${scuWo?JUgHLa}+v z=p!BBB1co3hxx1MS6m|OEHX&kc63@-+m9$$PXbnT&ZV~Vbh-HW$VL;m8YLaHZ<}wi zML)YgRS%6m?$)aaACyZZQ!A!aHtFtaI20JM8g8xv8p31=!rJ33QFhLf>%DX%6~1zs z7Ttb&2V9<`={Dw(>%Wki)!3<1Y28V1@~1npB97+vZFH;{6qm@b5u_Qz7+7~z>yh0Q z%c{MP-)((T##dBet}cV^j^o=CSf2keUeL!VpH8l5&o7P(Mx`acdBab=oJdf)J0Tb! z+T*5ywoPx8k|@kW)+9Hn7-|IL&jd~SIJFkG>$0>QekYcD@VDAFSiD4>5B!VA{FZKT z9}TyLr+M%Hut~h}5Ze(%l2|+azsyFQBbu^XK*ma-vc$O5w37zU=(DeBf!e5>%#_EU zFPJPa7;yN0xD81XKNHrL&WTrzI+#I2{uIYE*CSwmU-dp&1J%&=SqpWO|J=x;LOHWZN+wXCDo;R7 zA(UpPWP;YOs4rMg&g6m zpz_iB=&Kd4>m?l@E7f-hP+y)d5^RJCQ`<~!eCv$@kRhtgw?G!xt-)9M{w!@6f;_^y#-URjOqtq`N2+O1x>WRc#YV8mAb@ z#=UStcN%O9))_AKr5*8+dm3!_(RV$%ZYIryt}zGZaT%s-a}z&q93Q2Z(MR^Y>c_X1 zo$Rj!GN&X+f34@Zpf-Vg)bXD40+DPkM>{0}{7Y3OS7yopulR98HK*UQ&Ab{m8sLqw zNEeAI9ocLjF-_tedIQVSbcCOK5ZT%!y9&UTYf>EOs^oY0(phAQs|hL0-%dL}9a@rz znF+ql0m2BRG@eGwp~d2px>LV@5J;J;R+Bkc^N|kF29=(0$O~=q|V7@or98^d<iXQNL6TmkkFDv%*ivT{dlgArxi~yzHuKO{?1|O7kvr9yN~mCg zOCHf-CU{A$WIbXNi3iRyQVE$p79pW;+}Z@2Q~TKj}s%GVDs-A zM~J9f^dA^XQI%EPE9d4D4!Cl0GvcFNU$|Y@`ct+acF<~52FvGXGu|ZnmC?MA@IOBz zV_m`G*i%V@QD;yG@^?tBaSTMECG>O>^aqENeP+QqqRA*NV}7gr*mOt5grOE|Vq^V4 zQkgExl|5jG`13KnCbE=)+Mr;(x%`h4MTrk|;vY-J23QZ?L;RUfZlzCg}` zr+F<_CxIvOq^cSZO3Mr++uC?3Oh>=5SGnlFU8vy4u43&e8`&fIm714Ta~!j2FRlm} z@gd$Ap3JAZIvW(KTO_u6sTde*VSi>Kw3wmPdTb@u2O;S(1#fW4czI2&nUgeG`-pOc zyq>!aOKm-&-JUbO!`M}IjVUJDKaov3y|EKkEW#U>=aMjMQgBN5Oo!3#XM8?=p2c-I zu9329$}}o9dp+eA>xAoab}!43l1G`ni5hXn3dAhPc&XD+u1ifn+zfUy801~kEPJwZ z$2E<)+x(Unl+xh9#QVZ8y~TPUOJ^l9Bg{kl3*9-Ykno4E)mZO}8?hUzZ|R#H)*`36 zv;H#tvBSO#X|51MvNYX0Nq z9`tv1gceCZ`y)FZ&^}7rABXbiQocBZZEUb%05oTrSoJCMB#A4qdm0558C3e$D*K00u#oEu*U2Uh%7wfeJM9`oeo61t6SG09*P|mJwpIemnZpVz z-yrpY#)Wd}>@yB{RGicMo26emJ7XaaF>d&}3Lddm*6GWYYC6A?EhMq6r||QbfZtvX-aT1h`X^pWYfKlSMR>p^ z{Y17&exuG9`36}CIJnI1OLREi72YC7kwWF0*Uc!?-I0fKC#EMb8JpEg(UaO+js6zz zfSWy8mq9JVE-xo>@HS3EWvdzAi<$VylF1MMYIvrxpC)BkDdYEQc%iSK+l@mEn6u!W zpP?;M*$%4f*K8`Jerqy!_QX%ptd#?WJDpULLkS(apW;?a3Ec{HeF=-2E>i_|`xQ>z zJGDuaPSvWJXSlyIS;mQFPH%2SlYi*Cz$>A&B|P3O!y@5$O?{t`e^|i*`LuC=pku8x zrKs?%Z8gk*XjX-Bn7wM8?rfFfifz(RQnoHfX5rLMyf^<=L)X5cETw40_9Bg+63Yms zHj}b+x^nW1-oM+BGw!+6g&sUiD6(Yr*OapTIma#)_RUQHo^>sMUsB~T4cGpj5=^SCx;S6AYNBZr}Ic9D|(%6)15oEU?_#6Wx2o9=gD1UrYo* z=J(vx&UYN9%MjD*l}Ibjx-&M^U}!iF4NFePSBn{`B72gn9;e4^6vN*nJ`pNpK3zr#=wllFaAF>XCOpc~$KhHzn!QI4J#XQdHhcmWC1 zWC`nn-M# z|Jg@1$pqL6h8_#0qwi*Y34uD>R}P1>u?y>yXlqhI$G^NkDE^#?6a#W7$cl57)~2qb z9-g=qTXg612N>&T47I@QYK3lx=XGx71`GA`Oiif7|Q7Si;N*-p9aZdAbDMh}Yl?3Px%ln0-^HqB)R7m53&k$yN zFJ$^&$}ngR)LOMLe!B{t7-bOq+Qm#Asm{zRTprftt5b`V{yp7;@sT+tHfZi#D?^Mv z--=9&@Xx@J(oMO)aM@}soQVt7>gp5e({#_bk(GVbaTi;4bo#=_OHM+^WTQQ8nRy_K zq6-9}S?5h;n;m=LNY`wg-qbdAev6W(G4>>ViowHh3l_2GtWK_i z4tc8C(_n{KSg-_%^jGYEfW5%Wn2?NgsA` zouGBGeJbh!Em0$(+13MJ`w3B-Fo4^JxsMu7)91$+VG35*zAvNmqF)pvwoS z++dT2DAX8WK(D{qkoJ@dabYw7!ic$kccQ+h+q_}kWRPj@CtZC~)E%ysq}?6xDIJ)= z93iNtHMJ7`?9@X;Hlw~ycNX+$tuQfmQ*cEH9jv5dZ~ElB>!J$FKWdGFx|IwdFSk6biK%0Oh+Ak!a_#KXj7&9O4BC3EG)ZMc zSI*-VHNTYEYK4ez;tf9EUE00572k(OIr%3$`7^)$%m-5psjt}(b*6UFmL>nK|n%j z4k6tsozjhTmw ztk0Ztt+}+0x%`}r!pg@oKPyW;Pp+!TQ#8ap2KBNC36~?RO^L&R`sEL1FIzZ>KPd7r z=ydQ>Wa5m`uDc^ybbBfJgoNrxh2^U$>SSRcoD~nYOuvlXI>vCAh96(lvy6c3>;4@% ze}oF8d>#!Nax4879mbFFdPtNKTNnldN5N~!A^wL(S2M>9lT7flgCiC$SEcVm4@|M<2tV-Q zslG<_4-*v5-dz_^zad+rT+=$MH!EsNGsI4f^M3|?gkvgv7;8hs38h}u}XJG z5y7Lj1O8<3+|cf%!*bbBO+`;&KflI1bfMWJr5{48UwL+fwT7RYFCZ5AGLZ30iAyUe_q$T(_##R@`e8^}Lx{EoJ(H?L&Ma@*Bx1sqa&_@# zNpL{h1=}fcNt5{Z(H$cAcXF5|O;#fLaX1G^#-TF#R~(JQ@_Y4D!}P<$Is+GCHp$7~ z=ij-$!S0wxyLf}rFH-q6vQnwQyn?h?7r^t&pOpp=*k@Xr2hR5jS05&UP|o}#MhV+k zMzM7|z8cViezJnh;f~y7Vhv1UNw`jK!|c!KH{h)z%8}X$1$H+^)#;iN*A0*-hUhuU z+U@l@bO`#5Z>4U^_tFus*5LAEV~B0ZfRmy9%OQLOzI{}F#=ENRVffruG0G~O;cgg; zM~Bi}ewBJ;XdNHyaBfHPYpf3TT(S*s;q&r#l^QQf6R%k}&fXp4QC$t^6y!%9^xWvtn*`spcp6 z{+^lKGk&{UhGTwPulrM;bd=_0p(!(II0e1FzG4B3$BZ8e&SPb%a?$;qsH5*u=+EXh z_9BT?8ZILnzp)bO;6$3{j)Am#NumN&a^A@DZ{uz_7Tk_zrlb(OEPdwl!~UQy8k)C zIL>!UHFZzFHW6W3s_nXj4LH-Y{p*V(=Th=KdA87ML@|?+Jk7<#n75k@9$>#M(XPSb^bD$>gm1r`JTiP@ zW!ES-q>D{Y_)Ym2wWcv_416 z0sCTB??%S3F~3&|LVXsN8kf-%;pnWA1GRLH zKe4ilqs%oe$}FcX3*s_{|L~K4o*PO{)F+Xo8PUi4@h5$qnwg8U(aPN zwC*$NR?iR2w{)DNihjWWimCAEe!Qg&g@gHCzoEp&iH0n=%Du5Sje%sg*E%?uGL@?k zjeV){;fs5U3N8Z8@d+uoAKYfH5GeCKewV~T!f&R7PFrc-DK~@K*U9uVUrDL znWHGa+DHarBkc7PQLd)8Vdl0;|N4#SH&yk!Wk-HD`!$rWm;{lQyorW;Fi6mBpLo5! zIlxnwWC818nEFmBAVhTL8grysewjjq%lP1T(G=lyl}jBWnR}KYo2`5O>RtCh<}7$D z^8|g^NaQ%$ibCNW9DKvCK-(O-LWEKOd2bKtmj6Y*YRQ{peABmKlq$#+P^+$4we5C~ zDV4suE>~$yqYxKfac8mNR&L1`PfZ1~vN9B6W$6L|uj)>h|c941jo%Q?0j8HBVKeugu z?$7jla)lZs8Z)TlXBhkZ*|0*}ProGc5$y685S1F-V1Uf)@tZYSn|bWi+-D=K;?LL* zorS9kuNr>ZC>eo~^D$W&hhHgBfI4Y%I+8ymS4>Kgz#7&pae6qd?9Hk_Sw zndm$%vwDix%bf|rLdShC@=Wkd4M%cT!WxfHaNCa&+v`MFJrVnjrb$VZSh@J7@0M8e zj1ri=ML+G+|5Wui@D}iX?gM4>f{K-RM^FMc>DxIN{}Fr$dbnXudB&VScED{)9Grhi zAn|7g-CFMugDZp`D}hz0E_-EAppKuF`@%N|F&%ufvEY2X><=Ga(9IUm=zPCdTV!s=G(;kxWrfR4~=~A)9c3_WCU@kX%14c)mn| zZOyOnBGF#k`h)zXTqkvqpprE;9g^W9y3)_jv4cz2AuOPEwoV%zDwV4z=1Z-OOM7%D zwW(~crEBaBa~~k^;bBm0H3fEnpkWL}PL*KY8GQtK6IF^{jH-N$jp z3@hgP^+M95M%BZb+afIy&H`;7&;%(dNg1CDqsI%?Jt7uSAA3t6mf67&8N>K093HON zW_RfbZUh=(NS64g4EH2*&aDlYx@58Ure^&7r-x|tr)hodNCL+2WZAKo^J&Z!5wT3# zu}5EY7x~%RzT`L1uknAmER3h7qQ)fln(dvY>I(}73+BmH(kSa?U1B7Q6Tj8&($V^e zB`-18er2^5CVHvg!WDFNTZd!W=6kZGZ0JvNR!|vgoFtl((eT~gTOAIJR#vL8A@0qg z97fu-)l>!I#??>B>dRpa2P$MOa&h7D%JvP>yY6UJ1C^GZy%|VtN>||?pU^0}3Pi6} zj;UYE91)9LGj)ErLyRycS#>F%h61NiveO$F`n|rhCG5=T%xm|t^{VU5soPbrW=kXt z8duBP{zW34Aya;9LV1Qv@52yB7;AIB!Xd{l6ynW|j(gDdmI#2hxA9_Pkm8GfR(yMe z1QmiOrY}%iH12Z&?SXvKtzbR4+W|V__&EW#rOmLyZi}^jukTDZ6}nat>O$y$%-E~y zZWShuZY?g_3O@_M;>dZa#v?89$XO4JW^qLeHQH#n!_j_vpYN~#e02dFczDCG-$BL^zCe5llgQNNRgC~H~y&!HNrt(8a`dYxbh z)}T*r?MOTaW8(|k+EHY5sBPE*X-W!BSi!R!4B{nEEM5{Biw*>k?EAKhE@T|*Y*Qq$ zzNc%wNIAK7EjKPrXj|g2JpRTNfta`(H|3J*%ia0t5ru|4IWt_XgL;D3rZ&#>4h{IO~+>g*_#u@XAjdSbSZHL4J6iNW8!ELj!k?SyyjH>9A{rk9V=wTD>o$yZ z1PV6U^w)+jxw+`d_i)1DY<*^vOTQVaOc=mLq6n$a)c!2yfsNxz{KgT5Y@Ek`kVFkd z?(|rTZN&Ra-Qw$W{A98KCIX)__Ds}9YT`KkZ%qO9nk--u5QPoBLRVE2qgd4XS;BG^ zD5YHV)DW4NOaA*;@FC1p3M$6n1?{*vGqJpL!w&|Vc&^lXvG(XnpF)<(0E1FGv@eCBM)D=L+lEs|#|Z%I^VIy5xYuypm2Wu*{u zO0Ai5i;UmpURmYxkB=3qtD>P%D(p1j@`@dD)#fYB^jut#>BJt^2M%Bz@}-u6dzj(| z-W;86yBM|TemTJ#c)vKv>u&%`3t!q}Y7ARFk;VSjl(|hHW!BrpvHU%GudPgdUEs#A zG40FM)kjZ^vtaX!hF#-tU)6{;rl=Zkkvca0Y;O`K?1wfosiPR<9WR?*WYc9iE;>-4 zh!a&gf}aT0oaIiJcUZ?#)Ds^$@$d8`NBz9;F~0Gn=G|hi(<8Ps=85|rj#-cB=|zBS z%tqDF!09RcV#sVL35XTQ4H?^1-je{x23QymD2~6Q;DZzJdNw~0Q>-^kn}EP}0Ct01 zP&8|d1J!jmSLT^C)%ch7L-G)M=W3zbzc z`|d~t`rrC!Bi5!m;7nz9SRX7lZ9zU1P1ohvxkgG!HCKAW zZ-Nz(L(UR*?)|KBz~8qtiVP{LOqQ*0XoI$-%YKk4vukuEKU&BsT-osaeBRvxv^2C-oe6N*C%C zjh!S%8gKi-cekv(W8+$!2;Vnf)*qI16>4(siW~Sf#^)V-UZ7}=D3eUGX2RWkPjyx^ zV<_4v`XR161Z4DBKN&Na);yiqaVcrD`DQ(eQ(#Vs=7*A(7YYB?&t0-aT+#2?vqg%_ zf(%>4ZJDGFvwK)^bs0NMPSZx$%Ta$81%-lfIilp%jU~Vo2^N`U81Zodc8VS5U_-^*|>*Rye z8q%zA(k=U4GZ2kz&k^E@NkC(tD`)Z&Wf(0*jCJ}*9xisKjE1m}xTrho_eIffF`Q2s z=V{asZSi$`9j~P}kMTM(Ncm2?>2TIgK(iZx*hgL=oC+PsE-zc0KgSt!?s-OU<(0rI z@bbkY!M@(>;G_wuM!U!=`ixAtGD8(|Qq6OTwTv$~TVuZ+IXCd}?7>;w#9G8y+Lle) zIjsdViF2z7)LMytOAD%T;q(*Hx#UvGALk5&qpQriixsv4I>+i^NOL(DoZ zLn!&yK6@wkfe+F^%x$KWr<*Q1A>uAZXVAM{SN3wv5nd!yuZ7)%#fA6Gt44IPy$$-r zl!i_?Q*-9GGWjpT#$mQB~tH!~x6PN9mdMh{(=|JD~ z?#+!x>#fW-9#gw=VP%+!ZOd0mPq>p*{k{0_^F6lMxIr+(ZyLQx#5j;eJ{9dMiJH3F zTp`X>7wGnYC*C?bl4fyHC5tXRop+z@+cMhjQ&kDZ{c$Tk%AWayL9Mi7(2T%*z zk|~LqOz$rc#ZF*o!n;tm|OMuVj~UA*BSygL11RvFZ=1Z(`Y#1Gl($zU|x{zElcP)JLRI_uCZ~Ctw8>ZHdgyu*;d)z)3CcMjw(@ z+O~HNZ9rGZM^{6csf#myES-rQ?`S)-xZ86S6SgXjM(IY?6B$6L&ZsZ}y z6jA$vh4dg53iN!Qz`eCW-oEsDyLBmv^oeZ4|MDO@<2b5j^nK)-+OIu7?1$k!G1So+kNSI2fY3OX7*JoNzpR?#?g~DJ z#&#&77fzv;bcH8ba5@PTZlCKsN3$fK7%2$@d>KU!&L#yhyh2GmfoDXAU3fOgJn-;s zHk6n2VM&X=!c%O4hd(r{zjR#>6g(&V z=6QMPq_^(iy@M^J8!a)K-ZXd>8@)@xIB?K7A&wK$8~(W_wX2yo6Afx?ipZI%J}P%ZSgubNWA@z|}t0lQm> zbJT@-yD%`a6$sb&nVE@K26?X|uX#dVI*%8IpO6vxLcP>OeY7F|{ERG2g@X~;M!3=t z@45flu$hO5l1u#Y=*tIdO+q%Zjm(pV8^bwEZ~BvQ&URwsWX~oJp^oK!w~OP_FB_h2 zGAt!nKo1z&C*eG$>LN$M=Q^f6oyz)@^RahQOqeAltSHHaH^B2smvdTO=1zPT7(XN) zCO_ju{@YAIIQ)g=0~q=21kK_f1WT{3-L5)9yYcwFuCbAXC`Q2A*#6^PG;m7;pv}3~ zttxC{>;5D`x>AoVAf$1V*xJn@)Ev&c#vxi~ITs=N4Pk0V_Qu@R8^{u`9adMRK72$C zRZ^u`Yt>H`mS(=jS&|~L^K)neJjEK;OzI4YW$hPtF>>3zWI2#O}?g0kT_#zPvl;4jXES5+!>E;wn95dho9I z6g!Z>;w8m93GQ+{Q&}gW)v(TKc$lH7#_)CFBaSzA@6py@CdXQ(@p)dtG_p^LA-2*8 zLc=6H=zpZi2=@G8tuwF{yUm&9+VW@*fQ6?G1=lymrzs6C-f)lBzr!TN8N>-RJ*;hS z9$<|QQ98#P*1%UQO>R8lp4HW9y0qs_b`K-zR+>t z2l-WJk(b!UI$sx!s|pnJ=uI_hp?{@x*PR~*YGKPa%tgC6aXjl-8mKW(PuVTiURsy3 z(m<7+r2e#8GyWX;uFVz;tijN%#RlYj-fz-^y10a+%5Fp zRkgpq_E7*6Dp@LZ?a21KJqID7AIuQLlt|&oO_e#wQ-ppffbFX~C9$v**6Mj)uWfeV zJ-`Y~2nNu$W)Bi&es>6=tZ)BQphOz5sW2sW{lpCvh`d>ZdHRcs1qh!rA_b)8P-)jJ zO)h4zZOj7<_9CR2B-Xf%#f9x!OTj=PU`MvTV>d9y)A)rM^&RdPPj`mwGj;BLr}0nl zte1|4{eIEd8i{`zD17>}Y-1$vHW&9nh)6?l8Sqy8cN*E_y^!afel9T6p)T1q-(qpNj`{2W9r2X(+T6vXD(JnY-w*J?;p zS>7DYFtY7^{DWGmYz=JwR)ugM-WLG!?Q z#IE_U&=mAlv{hwSaM^8+7D#2vK7TuyRjE!jv}%z`$CqHd{(FQRE+Wer!BNscO=Nmd z4?|4UFG~FC^996^ubxk8+#z{>)C2#zLdH#etpasn;-52TE=?x;3ts{bF8vIrBE{9e zmiDq2RA?6dn$#fNW5_innxOXtl6j0$$bQD}Iyhw4DvVv6YTr-DM6KB}x>6vM$F1Oa z0Wy&l