From 65bcd2e34509a1f628228630c0886f4cf7b260e4 Mon Sep 17 00:00:00 2001 From: kmurphypolygon Date: Tue, 19 Dec 2023 17:23:53 +0100 Subject: [PATCH 1/4] first chunk of vm docs --- docs/img/miden/vm/intro/vm_components.png | Bin 0 -> 63435 bytes docs/miden/vm/intro/index.md | 38 ++++ docs/miden/vm/intro/overview.md | 47 +++++ docs/miden/vm/intro/performance.md | 67 +++++++ docs/miden/vm/intro/usage.md | 108 +++++++++++ docs/miden/vm/tools/debugger.md | 57 ++++++ docs/miden/vm/tools/index.md | 15 ++ docs/miden/vm/tools/repl.md | 137 ++++++++++++++ .../user_docs/assembly/code_organization.md | 174 ++++++++++++++++++ .../assembly/cryptographic_operations.md | 15 ++ docs/miden/vm/user_docs/assembly/debugging.md | 10 + .../user_docs/assembly/execution_contexts.md | 105 +++++++++++ .../vm/user_docs/assembly/field_operations.md | 63 +++++++ .../vm/user_docs/assembly/flow_control.md | 68 +++++++ docs/miden/vm/user_docs/assembly/index.md | 41 +++++ .../vm/user_docs/assembly/io_operations.md | 89 +++++++++ .../user_docs/assembly/stack_manipulation.md | 28 +++ .../vm/user_docs/assembly/u32_operations.md | 91 +++++++++ docs/miden/vm/user_docs/index.md | 8 + docs/miden/vm/user_docs/stdlib/collections.md | 42 +++++ docs/miden/vm/user_docs/stdlib/crypto/dsa.md | 15 ++ docs/miden/vm/user_docs/stdlib/crypto/fri.md | 10 + .../vm/user_docs/stdlib/crypto/hashes.md | 18 ++ docs/miden/vm/user_docs/stdlib/main.md | 36 ++++ docs/miden/vm/user_docs/stdlib/math/u64.md | 69 +++++++ docs/miden/vm/user_docs/stdlib/mem.md | 9 + docs/miden/vm/user_docs/stdlib/sys.md | 6 + mkdocs.yml | 60 ++++-- 28 files changed, 1412 insertions(+), 14 deletions(-) create mode 100644 docs/img/miden/vm/intro/vm_components.png create mode 100644 docs/miden/vm/intro/index.md create mode 100644 docs/miden/vm/intro/overview.md create mode 100644 docs/miden/vm/intro/performance.md create mode 100644 docs/miden/vm/intro/usage.md create mode 100644 docs/miden/vm/tools/debugger.md create mode 100644 docs/miden/vm/tools/index.md create mode 100644 docs/miden/vm/tools/repl.md create mode 100644 docs/miden/vm/user_docs/assembly/code_organization.md create mode 100644 docs/miden/vm/user_docs/assembly/cryptographic_operations.md create mode 100644 docs/miden/vm/user_docs/assembly/debugging.md create mode 100644 docs/miden/vm/user_docs/assembly/execution_contexts.md create mode 100644 docs/miden/vm/user_docs/assembly/field_operations.md create mode 100644 docs/miden/vm/user_docs/assembly/flow_control.md create mode 100644 docs/miden/vm/user_docs/assembly/index.md create mode 100644 docs/miden/vm/user_docs/assembly/io_operations.md create mode 100644 docs/miden/vm/user_docs/assembly/stack_manipulation.md create mode 100644 docs/miden/vm/user_docs/assembly/u32_operations.md create mode 100644 docs/miden/vm/user_docs/index.md create mode 100644 docs/miden/vm/user_docs/stdlib/collections.md create mode 100644 docs/miden/vm/user_docs/stdlib/crypto/dsa.md create mode 100644 docs/miden/vm/user_docs/stdlib/crypto/fri.md create mode 100644 docs/miden/vm/user_docs/stdlib/crypto/hashes.md create mode 100644 docs/miden/vm/user_docs/stdlib/main.md create mode 100644 docs/miden/vm/user_docs/stdlib/math/u64.md create mode 100644 docs/miden/vm/user_docs/stdlib/mem.md create mode 100644 docs/miden/vm/user_docs/stdlib/sys.md diff --git a/docs/img/miden/vm/intro/vm_components.png b/docs/img/miden/vm/intro/vm_components.png new file mode 100644 index 0000000000000000000000000000000000000000..109cb8d7e8375a594bebc8019d6a1fefe9bd43bf GIT binary patch literal 63435 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 | 1 ms | 60 ms | 20 MB | 46 KB | +| 212 | 2 ms | 180 ms | 52 MB | 56 KB | +| 214 | 8 ms | 680 ms | 240 MB | 65 KB | +| 216 | 28 ms | 2.7 sec | 950 MB | 75 KB | +| 218 | 81 ms | 11.4 sec | 3.7 GB | 87 KB | +| 220 | 310 ms | 47.5 sec | 14 GB | 100 KB | + +As can be seen from the above, proving time roughly doubles with every doubling in the number of cycles, but proof size grows much slower. + +We can also generate proofs at a higher security level. The cost of doing so is roughly doubling of proving time and roughly 40% increase in proof size. In the benchmarks below, the same Fibonacci calculator program was executed on Apple M1 Pro CPU at 128-bit target security level: + +| VM cycles | Execution time | Proving time | RAM consumed | Proof size | +| :-------------: | :------------: | :----------: | :-----------: | :--------: | +| 210 | 1 ms | 120 ms | 30 MB | 61 KB | +| 212 | 2 ms | 460 ms | 106 MB | 77 KB | +| 214 | 8 ms | 1.4 sec | 500 MB | 90 KB | +| 216 | 27 ms | 4.9 sec | 2.0 GB | 103 KB | +| 218 | 81 ms | 20.1 sec | 8.0 GB | 121 KB | +| 220 | 310 ms | 90.3 sec | 20.0 GB | 138 KB | + +## Multi-core prover performance +STARK proof generation is massively parallelizable. Thus, by taking advantage of multiple CPU cores we can dramatically reduce proof generation time. For example, when executed on an 8-core CPU (Apple M1 Pro), the current version of Miden VM operates at around 100 KHz. And when executed on a 64-core CPU (Amazon Graviton 3), the VM operates at around 250 KHz. + +In the benchmarks below, the VM executes the same Fibonacci calculator program for 220 cycles at 96-bit target security level: + +| Machine | Execution time | Proving time | Execution % | Implied Frequency | +| ------------------------------ | :------------: | :----------: | :---------: | :---------------: | +| Apple M1 Pro (16 threads) | 310 ms | 7.0 sec | 4.2% | 140 KHz | +| Apple M2 Max (16 threads) | 280 ms | 5.8 sec | 4.5% | 170 KHz | +| AMD Ryzen 9 5950X (16 threads) | 270 ms | 10.0 sec | 2.6% | 100 KHz | +| Amazon Graviton 3 (64 threads) | 330 ms | 3.6 sec | 8.5% | 265 KHz | + +### Recursive proofs +Proofs in the above benchmarks are generated using BLAKE3 hash function. While this hash function is very fast, it is not very efficient to execute in Miden VM. Thus, proofs generated using BLAKE3 are not well-suited for recursive proof verification. To support efficient recursive proofs, we need to use an arithmetization-friendly hash function. Miden VM natively supports Rescue Prime Optimized (RPO), which is one such hash function. One of the downsides of arithmetization-friendly hash functions is that they are considerably slower than regular hash functions. + +In the benchmarks below we execute the same Fibonacci calculator program for 220 cycles at 96-bit target security level using RPO hash function instead of BLAKE3: + +| Machine | Execution time | Proving time | Proving time (HW) | +| ------------------------------ | :------------: | :----------: | :---------------: | +| Apple M1 Pro (16 threads) | 310 ms | 94.3 sec | 42.0 sec | +| Apple M2 Max (16 threads) | 280 ms | 75.1 sec | 20.9 sec | +| AMD Ryzen 9 5950X (16 threads) | 270 ms | 59.3 sec | | +| Amazon Graviton 3 (64 threads) | 330 ms | 21.7 sec | 14.9 sec | + +In the above, proof generation on some platforms can be hardware-accelerated. Specifically: + +* On Apple M1/M2 platforms the built-in GPU is used for a part of proof generation process. +* On the Graviton platform, SVE vector extension is used to accelerate RPO computations. diff --git a/docs/miden/vm/intro/usage.md b/docs/miden/vm/intro/usage.md new file mode 100644 index 000000000..cfba00ade --- /dev/null +++ b/docs/miden/vm/intro/usage.md @@ -0,0 +1,108 @@ +# Usage +Before you can use Miden VM, you'll need to make sure you have Rust [installed](https://www.rust-lang.org/tools/install). Miden VM v0.7 requires Rust version **1.67** or later. + +Miden VM consists of several crates, each of which exposes a small set of functionality. The most notable of these crates are: +* [miden-processor](https://crates.io/crates/miden-processor), which can be used to execute Miden VM programs. +* [miden-prover](https://crates.io/crates/miden-prover), which can be used to execute Miden VM programs and generate proofs of their execution. +* [miden-verifier](https://crates.io/crates/miden-verifier), which can be used to verify proofs of program execution generated by Miden VM prover. + +The above functionality is also exposed via the single [miden-vm](https://crates.io/crates/miden-vm) crate, which also provides a CLI interface for interacting with Miden VM. + +## CLI interface + +### Compiling Miden VM +To compile Miden VM into a binary, we have a [Makefile](https://www.gnu.org/software/make/manual/make.html) with the following tasks: +``` +make exec +``` +This will place an optimized, multi-threaded `miden` executable into the `./target/optimized` directory. It is equivalent to executing: +``` +cargo build --profile optimized --features concurrent,executable +``` +If you would like to enable single-threaded mode, you can compile Miden VM using the following command: +``` +cargo build --profile optimized --features executable +``` +For a faster build, you can compile with less optimizations, replacing `--profile optimized` by `--release`. Example: +``` +cargo build --release --features concurrent,executable +``` +In this case, the `miden` executable will be placed in the `./target/release` directory. + +### Controlling parallelism +Internally, Miden VM uses [rayon](https://github.com/rayon-rs/rayon) for parallel computations. To control the number of threads used to generate a STARK proof, you can use `RAYON_NUM_THREADS` environment variable. + +### GPU acceleration +Miden VM proof generation can be accelerated via GPUs. Currently, GPU acceleration is enabled only on Apple silicon hardware (via [Metal](https://en.wikipedia.org/wiki/Metal_(API))). To compile Miden VM with Metal acceleration enabled, you can run the following command: +``` +make exec-metal +``` + +Similar to `make exec` command, this will place the resulting `miden` executable into the `./target/optimized` directory. + +Currently, GPU acceleration is applicable only to recursive proofs which can be generated using the `-r` flag. + +### SIMD acceleration +Miden VM execution and proof generation can be accelerated via vectorized instructions. Currently, SIMD acceleration can be enabled only on platforms supporting [SVE](https://en.wikipedia.org/wiki/AArch64#Scalable_Vector_Extension_(SVE)) instructions (e.g., Graviton 3). To compile Miden VM with SVE acceleration enabled, you can run the following command: +``` +make exec-graviton +``` +This will place the resulting `miden` executable into the `./target/optimized` directory. + +Similar to Metal acceleration, SVE acceleration is currently applicable only to recursive proofs which can be generated using the `-r` flag. + +### Running Miden VM +Once the executable has been compiled, you can run Miden VM like so: +``` +./target/optimized/miden [subcommand] [parameters] +``` +Currently, Miden VM can be executed with the following subcommands: +* `run` - this will execute a Miden assembly program and output the result, but will not generate a proof of execution. +* `prove` - this will execute a Miden assembly program, and will also generate a STARK proof of execution. +* `verify` - this will verify a previously generated proof of execution for a given program. +* `compile` - this will compile a Miden assembly program (i.e., build a program [MAST](../design/programs.md)) and outputs stats about the compilation process. +* `debug` - this will instantiate a [Miden debugger](../tools/debugger.md) against the specified Miden assembly program and inputs. +* `analyze` - this will run a Miden assembly program against specific inputs and will output stats about its execution. +* `repl` - this will initiate the [Miden REPL](../tools/repl.md) tool. + +All of the above subcommands require various parameters to be provided. To get more detailed help on what is needed for a given subcommand, you can run the following: +``` +./target/optimized/miden [subcommand] --help +``` +For example: +``` +./target/optimized/miden prove --help +``` + +To execute a program using the Miden VM there needs to be a `.masm` file containing the Miden Assembly code and a `.inputs` file containing the inputs. + +### Inputs + +As described [here](https://0xpolygonmiden.github.io/miden-vm/intro/overview.html#inputs-and-outputs) the Miden VM can consume public and secret inputs. + +* Public inputs: + * `operand_stack` - can be supplied to the VM to initialize the stack with the desired values before a program starts executing. There is no limit on the number of stack inputs that can be initialized in this way, although increasing the number of public inputs increases the cost to the verifier. +* Secret (or nondeterministic) inputs: + * `advice_stack` - can be supplied to the VM. There is no limit on how much data the advice provider can hold. This is provided as a string array where each string entry represents a field element. + * `advice_map` - is supplied as a map of 64-character hex keys, each mapped to an array of numbers. The hex keys are interpreted as 4 field elements and the arrays of numbers are interpreted as arrays of field elements. + * `merkle_store` - the Merkle store is container that allows the user to define `merkle_tree`, `sparse_merkle_tree` and `partial_merkle_tree` data structures. + * `merkle_tree` - is supplied as an array of 64-character hex values where each value represents a leaf (4 elements) in the tree. + * `sparse_merkle_tree` - is supplied as an array of tuples of the form (number, 64-character hex string). The number represents the leaf index and the hex string represents the leaf value (4 elements). + * `partial_merkle_tree` - is supplied as an array of tuples of the form ((number, number), 64-character hex string). The internal tuple represents the leaf depth and index at this depth, and the hex string represents the leaf value (4 elements). + +*Check out the [comparison example](https://github.com/0xPolygonMiden/examples/blob/main/examples/comparison.masm) to see how secret inputs work.* + +After a program finishes executing, the elements that remain on the stack become the outputs of the program, along with the overflow addresses (`overflow_addrs`) that are required to reconstruct the [stack overflow table](../design/stack/main.md#overflow-table). + +## Fibonacci example +In the `miden/examples/fib` directory, we provide a very simple Fibonacci calculator example. This example computes the 1001st term of the Fibonacci sequence. You can execute this example on Miden VM like so: +``` +./target/optimized/miden run -a miden/examples/fib/fib.masm -n 1 +``` +This will run the example code to completion and will output the top element remaining on the stack. + +If you want the output of the program in a file, you can use the `--output` or `-o` flag and specify the path to the output file. For example: +``` +./target/optimized/miden run -a miden/examples/fib/fib.masm -o fib.out +``` +This will dump the output of the program into the `fib.out` file. The output file will contain the state of the stack at the end of the program execution. diff --git a/docs/miden/vm/tools/debugger.md b/docs/miden/vm/tools/debugger.md new file mode 100644 index 000000000..9735a1b01 --- /dev/null +++ b/docs/miden/vm/tools/debugger.md @@ -0,0 +1,57 @@ +# Miden Debugger + +The Miden debugger is a command-line interface (CLI) application, inspired by [GNU gdb](https://sourceware.org/gdb/), which allows debugging of Miden assembly (MASM) programs. The debugger allows the user to step through the execution of the program, both forward and backward, either per clock cycle tick, or via breakpoints. + +The Miden debugger supports the following commands: + +| Command | Shortcut | Arguments | Description | +| --- | --- | --- | --- | +| next | n | count? | Steps `count` clock cycles. Will step `1` cycle of `count` is ommitted. | +| continue | c | - | Executes the program until completion, failure or a breakpoint. | +| back | b | count? | Backward step `count` clock cycles. Will back-step `1` cycle of `count` is ommitted. | +| rewind | r | - | Executes the program backwards until the beginning, failure or a breakpoint. | +| print | p | - | Displays the complete state of the virtual machine. | +| print mem | p m | address? | Displays the memory value at `address`. If `address` is ommitted, didisplays all the memory values. | +| print stack | p s | index? | Displays the stack value at `index`. If `index` is ommitted, displays all the stack values. | +| clock | c | - | Displays the current clock cycle. | +| quit | q | - | Quits the debugger. | +| help | h | - | Displays the help message. | + +In order to start debugging, the user should provide a `MASM` program: + +```shell +cargo run --features executable -- debug --assembly miden/examples/nprime/nprime.masm +``` + +The expected output is: + +``` +============================================================ +Debug program +============================================================ +Reading program file `miden/examples/nprime/nprime.masm` +Compiling program... done (16 ms) +Debugging program with hash 11dbbddff27e26e48be3198133df8cbed6c5875d0fb +606c9f037c7893fde4118... +Reading input file `miden/examples/nprime/nprime.inputs` +Welcome! Enter `h` for help. +>> +``` + +In order to add a breakpoint, the user should insert a `breakpoint` instruction into the MASM file. This will generate a `Noop` operation that will be decorated with the debug break configuration. This is a provisory solution until the source mapping is implemented. + +The following example will halt on the third instruction of `foo`: + +``` +proc.foo + dup + dup.2 + breakpoint + swap + add.1 +end + +begin + exec.foo +end +``` diff --git a/docs/miden/vm/tools/index.md b/docs/miden/vm/tools/index.md new file mode 100644 index 000000000..4a98268e8 --- /dev/null +++ b/docs/miden/vm/tools/index.md @@ -0,0 +1,15 @@ +# Development Tools and Resources + +The following tools are available for interacting with Miden VM: + +* Via the [miden-vm](https://crates.io/crates/miden-vm) crate (or within the Miden VM repo): + * [CLI](../intro/usage.md#cli-interface) + * [Debugger](./debugger.md) + * [REPL](./repl.md) +* Via your browser: + * The interactive [Miden VM Playground](https://0xpolygonmiden.github.io/examples/) for writing, executing, proving, and verifying programs from your browser. + +The following resources are available to help you get started programming with Miden VM more quickly: + +* The [Miden VM examples repo](https://github.com/0xPolygonMiden/examples) contains examples of programs written in Miden Assembly. +* Our [Scaffolded repo](https://github.com/0xPolygonMiden/zkhack-scaffold/) can be cloned for starting a new Rust project using Miden VM. diff --git a/docs/miden/vm/tools/repl.md b/docs/miden/vm/tools/repl.md new file mode 100644 index 000000000..c6fdb8e69 --- /dev/null +++ b/docs/miden/vm/tools/repl.md @@ -0,0 +1,137 @@ +# Miden REPL + +The Miden Read–eval–print loop (REPL) is a Miden shell that allows for quick and easy debugging of Miden assembly. After the REPL gets initialized, you can execute any Miden instruction, undo executed instructions, check the state of the stack and memory at a given point, and do many other useful things! When the REPL is exited, a `history.txt` file is saved. One thing to note is that all the REPL native commands start with an `!` to differentiate them from regular assembly instructions. + +Miden REPL can be started via the CLI [repl](../intro/usage.md#cli-interface) command like so: +```Shell +./target/optimized/miden repl +``` + +### Miden assembly instruction + +All Miden instructions mentioned in the [Miden Assembly sections](../user_docs/assembly/main.md) are valid. One can either input instructions one by one or multiple instructions in one input. + +For example, the below two commands will result in the same output. +``` +>> push.1 +>> push.2 +>> push.3 +``` + +``` +push.1 push.2 push.3 +``` + +To execute a control flow operation, one must write the entire statement in a single line with spaces between individual operations. + +``` +repeat.20 + pow2 +end +``` + +The above example should be written as follows in the REPL tool: + +``` +repeat.20 pow2 end +``` + +### !help + +The `!help` command prints out all the available commands in the REPL tool. + +### !program + +The `!program` command prints out the entire Miden program being executed. E.g., in the below scenario: + +``` +>> push.1.2.3.4 +>> repeat.16 pow2 end +>> u32checked_add + +>> !program +begin + push.1.2.3.4 + repeat.16 pow2 end + u32checked_add +end +``` + +### !stack + +The `!stack` command prints out the state of the stack at the last executed instruction. Since the stack always contains at least 16 elements, 16 or more elements will be printed out (even if all of them are zeros). + +``` +>> push.1 push.2 push.3 push.4 push.5 +>> exp +>> u32checked_mul +>> swap +>> eq.2 +>> assert +``` + +The `!stack` command will print out the following state of the stack: + +``` +>> !stack +3072 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +``` + +### !mem + +The `!mem` command prints out the contents of all initialized memory locations. For each such location, the address, along with its memory values, is printed. Recall that four elements are stored at each memory address. + +If the memory has at least one value that has been initialized: + +``` +>> !mem +7: [1, 2, 0, 3] +8: [5, 7, 3, 32] +9: [9, 10, 2, 0] +``` + +If the memory is not yet been initialized: + +``` +>> !mem +The memory has not been initialized yet +``` + +### !mem[addr] + +The `!mem[addr]` command prints out memory contents at the address specified by `addr`. + +If the `addr` has been initialized: + +``` +>> !mem[9] +9: [9, 10, 2, 0] +``` + +If the `addr` has not been initialized: + +``` +>> !mem[87] +Memory at address 87 is empty +``` + +### !undo + +The `!undo` command reverts to the previous state of the stack and memory by dropping off the last executed assembly instruction from the program. One could use `!undo` as often as they want to restore the state of a stack and memory $n$ instructions ago (provided there are $n$ instructions in the program). The `!undo` command will result in an error if no remaining instructions are left in the Miden program. + +``` +>> push.1 push.2 push.3 +>> push.4 +>> !stack +4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 + +>> push.5 +>> !stack +5 4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 + +>> !undo +4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 + +>> !undo +3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 +``` diff --git a/docs/miden/vm/user_docs/assembly/code_organization.md b/docs/miden/vm/user_docs/assembly/code_organization.md new file mode 100644 index 000000000..7e2eb2c1d --- /dev/null +++ b/docs/miden/vm/user_docs/assembly/code_organization.md @@ -0,0 +1,174 @@ +## Code organization +A Miden assembly program is just a sequence of instructions each describing a specific directive or an operation. You can use any combination of whitespace characters to separate one instruction from another. + +In turn, Miden assembly instructions are just keywords which can be parameterized by zero or more parameters. The notation for specifying parameters is *keyword.param1.param2* - i.e., the parameters are separated by periods. For example, `push.123` instruction denotes a `push` operation which is parameterized by value `123`. + +Miden assembly programs are organized into procedures. Procedures, in turn, can be grouped into modules. + +### Procedures +A *procedure* can be used to encapsulate a frequently-used sequence of instructions which can later be invoked via a label. A procedure must start with a `proc.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�_<2c|U(^G7$ ztafl~sOVHEIR}PmC@*^QmoiO83tCL!+TT01wuR||;u|*@ zFQ@=4hE1I;Xb;%9Ey2#r!4asFT?dlIZwAI{?rHbbl~q8OLYFy0c{W3pxBz<6_devd z3nvFV>Nh3<_PtqF>U8Zcy<8pCEDHObpzp(RCjoaOqvNBUO1FRHI7yt@r*Bs3(>b*` zA|a6FLr(T~aR1f&uQ3zDvVU&VHQ|8ChdO@Xybb;dwfqONRn3J3$=3e9t*8SH$Tnv< zI;4?$C%w}g6%$29*Ru~|b7Y?IWiouWIU(_|#<4@@9@y+U=R}1BmN3;|C)w_7k@8bA z9J|SkaBCQTKDxhEg?u68+HH~UKYM08$%ppkonWTX%vXy%%hmH9taSVpuzb(oRzfpa$i~9Y zzLvc0H23eD3bhhGoZuFtn*MSEnF?4Bqf4v6veKy{_#T(b%NGZXCCztF{HZb*4fH%P zM!I#q=*ZQRqk7ewaI~kSrBPtkPRXId681-5--Eg+_`& z+*j@IP;mE|=k4w466_CCmrpTyJF;(&SHJiDyBS#}{u50>mfUkGWLV(oPVv}dJY^!X zoA;mabnK0%ON2SHs_Km9blo3mmxSH?4iCrfHn=1l_>(v$LCj*tb$B`W`^U^o1AvK! z$bGWFKS{RW|jk3_v(qeLTyZ=1msQ``obWCh(uy=u=G=-H+fkAop zwjvwBvep5Rm;K8$MYHBKX zk$J$sb_$xh*ZRkZ@y~Es5YfDE25n;P47g3~rJu81>z#C>yg5;y_~1q=bszDe@lLev zYPPn=5lJ;SytzJHysTn>=ey@A4>_T+S=xMMUvzxdIerwEA10ROH*Qc(H{`ofx6U0{_ zt5mCN=7n8J>ukB7mse9)DlmK))Q!vZyNTzW=Ci+Tz1>?)13q=^Tp#}OB@}$*iyK_) zyVi%nC5tZPmHpKR)u>c9H0e}rE#BZfbJ6?WMj}q*Kum5oWZ3mf>1(V@*rZd*$oJyl ztBI{50Ufimf@@x+b8jN5Li;zss$RLo!}qnQHyi#vL>( z0|Nse1_vKtD4Rx+}zwM+8!s#{UEvokxBAb(M_5|_h^(* z!!2>PRx`(0o)r(-WsmX^G2RHi=)n<(clDq9u*NKlVj4kkoIa4E0LJLc7Lb6!-))@gd*J|vnO)T7DD)aw9-#YoOl{q%*1OX=m=F>!j~&rQ-KlS( z7o%&5{gG*$$Pm>~K)2Gm!W)v)cwWrbC8zhVW_z%|3cu5{dONB=qrGWNm2wjIL6LNI z`4N|1Ft!b@r2c3}?8#v+6w*;SW*(Dt*hKO~{Kv!jqkT{r5~x09MW zY`Q{2R34oYoOXw{IsRO9LyvSs$(3%81m~ENp%&BLf9A$elW@^4$Q&iy>4&6N-9*Zr_eER~;zUUn0 z6SY#4+lwqw4G%Cy-JC|wEXVE4%S<=urV<#Kz8!A)cPaSCwxXXFb$-`)?j(PfGt88# zWx$6|I@_%C9QQ!vz1&6anhfJw28l#k#Cea9G=+iT$ zdELy}b~5T_Xp>{O7Xl8#Ep-*UvI07YX1?j@1_Xw4d}>Z8mC!K{zDkB@t9e;q04%b<9dfrr{c zxIAU2YFL9G4!oZGzTPy zzMTx7iHF+}DzAHt;UR0v2@wl_Xn)h?hqy6FaHbs5b~@&&{%QZjYbulba)Ht$a&`J7 zlvgg&99rta^Q3I)6&RkXOofGRGIv=TkgM0SSL94gAxOSz;*ZcN%1GJto^t(tQ)ADZ zPo6h65MmbT@ppOug|KJ_^U?$*YeNb|Gy%;|ob9SDrCXjQjgHA%d7fCxt)UtK)Eb36J7ew;6Ei?{{>q-x_8_QVx7YrK~CaC7x^!I&^fwOoY+hG&(^ zI9rh2KrqV>$1YsE76y}%Kc(j@V*^Y?bwM&FG9_qII?rtjs8p7t4mL9!KhYj!`zdl& zWrUNpVm@5|_G0==0n3!gu{Z~HQ!OoM8|shbmu@9PnxyaGZ%Q)NMA`jBIGRoQKeHy9 zFSwGpR8^KmgzZJT<3TfV%{JPDzU_6xt|mRAaIDs?ooZ_AGOcisvkWn|2Jz@W7Tpw= z#KzGxx-~f-ig@ITC^s^X>2+ez&~(|7AzXCS*nx}3qpn=Ie0kp=j!f>_iErOdXZK)O zmxAaS<&&hJVuBQw80pq9h9|#%1$V_aLRH*MH_zM3>IhDT=vl#>JWYwEj~>=gNoWfpin3F99EACO+fu6DC30^ z9&fNaA4;$elf5&s+4`=@FoXTbDc z+UqX$k|QdmYx2XuK(o`Zdzs;Ei0JuGcAZsXYX%*Ir!uGdX za~dVzVi`Hi3#JmNj14ILwxEek9)3C|p(i8!?WD3Vk!1zznb2ta9~Wttsob|03=Bdc z&OlM6akvnnGh~&pWSH>BT$Cp5y0?wYs6dzT*y|l}hy4h1NMInPa^mQs8_!r0E(~;U zf`gk{fzHbPGmO1yNB>3a3cs5uS0h|k{y?Q&xhP;_Nd2q?adw1m&`9tg8V4wnp^C#rZa~4nW2=po10gRTr>q_^Xb=r_ z$@}*VB{r~L5MV4+Gh9&!MBVNa-7;cPq>s+e1CNJtQPrfA*HF_To+3@T(pTi^pNMcs zbJ3V+jxtl)azJ2TkumOXnBM?XuJPMJw3|dw9=oK|4xQ{vqGL*`T&+fesdckaTR)|z z40rJ`d|VXxMn<|`r1rDll<%Liik&R#K`7HRXg}Zo5_rMx64niXN;~#@crrAro-lG> z`qDLivLA|lxE`q=jtOEcH;|Cxs{)`^$53MtGsAc&NZ0j+pJ)HC7T|3G@ZlYdH``)} z1Zt-{cMu05cx-3}>5dD3|MGjuo$t(crrouRQa*)#3yF-#$A7UDdh_0R)pK_%PL-4EtUpatvfOpt_IV-OwDpHq5nEA z`aSKDJoHfwFhkzhPkJ3`cOS8v-~2<_jeAeB#>ir5;8~<#Y2E z5=Yp*%vxtOUkI-`XT!WBFikx}yHxW)@SR%5Pm@3HWL7Ev@4JhzhK4sMIL(47iO`k z!Jv{B`-?a{{7NCUHHl z(yuCYjsy}2j()73&Gus4T!xwPp|lH6CI3c`>&0A135=pwKY+aJ8f$TFxl*}$vfp$X zYh1mn2MsgC&G?ru?U&GdZN7&vI}zbL43&f}bMBK#7=-`(pdR;bb+>1Ks->DzWmE}` zjN%MK@(&*^6_q=`gdWt>W=l8E%aSa^cfQu&=NoZx;L$H8auv31M`zst&=tK2#(Nir zmmr+VNR+kUW(NoCcqEt7yu4jdCgW77hu1L>PM6x!r*+rQSXpIXXO8@8-eYByMHTn5 zIa`anHlyp2X2gX5jhSr$&U=d6$m0{KBz1DhLV{nO;kjcZ+?a>q956F)A^VKfT3rm> zvMF2C`RpwOWE$S7;i!pLyRtQ+ zkMAm_?D2f2mt0#ZlAXX%F&qYYzVLSSZUx3(MJ0Rw?*9H@*s;S;^Bz>c6_T6*e|!+( zAS+nBXwXhI`!D?-0VaUc!A9+m;Zmr4NH_c*T#%Nk-}1mSEzrd_YVct3tZnfq<@d_q zfz#Bk>fhKZa`JmG!L8@WqyCYCymstXiayD2qAivf_Ps|!nIy62#hW)wm~4?{tWG`E zY;9b9-@Ya*>DQv0rmpTeV}pP&5~uOO2` zIQx)Rz1xWU<cfosQ-9*5!qyd8#vC)>2uBqdOhE zUVfNd-Ebqdr{v>K_3qj~XeUfxHk}6K=QBKW&oDour^NgtrwQ$yB31EPH(Ql!4p*L_ z!l5K7kgG@TQV+V*7^ED4KJHO`yjs0#j0LWE>!0u#AE@mg<9xAPtfYzv!dj~tQBd~F zM@UEBx}NaeS$_k63^58m8Y|nubB>fyUV&vdQGcBO6=Gk(Uj^IpWZ9}c!HZk zOHMT|T$%(R00Srw9?`u)nLbcSrMXfS9K*;r9@i-4rMF!dPhdj8oV9o?j-E^TUEOg& zG#LV)M1G_ZXg+DYUDZrjA}RF8f4^bQ3|)TU-1(EF`M16l2C-Cs{aKaI1zmnsn(Xfq z7-A6f?BTWORN)_>p=8X&C7u3qFI2Rd)ubv%)U%)e)&=ANMC`~WmWW(-PqkU$DBJL| zQn%IM;Ght)RfHP+O+TMYJU4Ojp44FT_iqcZQw`mqp3-`_mef=7&DKvp zM5Xy;k`U)!4L;8}v^ha1`7ZK#2|iP~CiCxG#3zhEQb=H&zV&vn%KmEYGl7gQst0xS z_TttU33L0sjEjez9UW^ZB|tH#bsxA4pFT(y+ZISnAf3SH%+ZqQ2ybT-?!7Rif)k=Xl>Wz-9lxA z?;gdh*vA*X)E{8;7Qns)rHoL^+4nbpNKsR?NOx=_gC2ww_u%h-4VH&vkht^Co_(=L zmZP-6ea3EBJeC#!3>m==UER~HM#wow&bTK;V(fpr#t!JuZpm9@2h*JLd`(uWLz zS3i!A4+X9Z2`u;LvyT(@PY;ee5J}Eo#gZy8M4O20Lww6f=h*{_kPXk4>SQaryGx-Y zVw!WUF8rEnn^QtcSw+Hg2wsI4FzD>;Y|)vYdG&;ZL=eR@tW2ZK_MsHG&6LH0GKV)3oRA?bQ+^9H-w-JJT?z7ue?w+YfG@HC`p%;h===L*A z`*)Df_T+o*UHa^}8=eO)i!zkChWQ#lO6Cq!eORyB?M0TW^I&r&f3q6PoHufAb$w6% z?mN;8aL%(}2DM9T0VV*#j#XPK{;{yWkF@ZamE_c2MtAY(}GE{$NIH#`7=VtYH(dkN(e0G}eJ)i|5~V?3?t?MK$nN?0Yq@cE;z!v{rC0K>gDozILrQi z9p3mod;tTWaNfXQt$y2UIm3G;!@uDZR-S#s{yTzIGkC)A?BiHJR=%;AZ-QKN)v)1= z1UG7A7~BOU3u|iC)%A+C@#AAS)0YA3RbTxA{X(ewOxZpxSd6G+!=9JBgUv|#xwB+E zsvnbwR22tYzwIGhC&L?m-`Y>a-w8a%Fs++hK`uZa(fDxw_Xv$^i;*G(x2St3g~6KmRtsr25ZocpV-GBQ zlzDF@O)kaJ@tl>@Wu2mG%MswopPRY51UrrU(I{IBYU31=> zOWq9aJ8|@h{JJegW(4UM5nR^zRc&kBOY0W}G+AKdqQzQu^{-xxY+UuKIK?bk!>Sf9xfcfz?1O=JN( zBNvVsr}w5X8D)MC z8+zq%axR&eaHw4o#H4c3j*Dz>V#ht~F@R7 zE;gw?nK03?c7in&^zrQKI$&IUbzG?E=cFC#qaHtI&<3O7-Y#F3%(r{%;Z7h+#^7`n zaRHe3@4qon%-M12zZFo6vG392JUP5I=V=R9R3=hXM;wc02tJql-0X$akFNT;OjzLf zA^Xo3d;{59tbdD9yMsP2U+KxO_ZUKx&~<%nkD~X)vqKV3sMUi$+BRn2NMz_;%Dmt= z;XiJllU{JTG%rLvt04ZUi#lWO7E~^F2!Ya@8gY{B{PgKuwa=cPzkl{ELLQO@e_fHUFn-_?1yveucU%2)O^!uhXC^!M@9 z9yz-~w`cRk{%F(tGRfclUC_jwR{0@q{O=kMl_9FlTkLd?xHekJ4|PznSZk>YJTlf$ zI2|WVa-c7is=ay0QA_vfN|o~Y^AGs1_wr5n(-fFOdhn!we={F(6%KnU=^itApOJB| z-#(^kL}BFEe4OAeb(e&*ID`3i2Ub$GcoOp}JX$5&uBH$BXljG5d^%P#mB(eGls=bD zDI;%e@UaV<0+$W5+KB(c>#V9^`bY7d<~XvFlKq*sM1E2U4l&u<(ex&%q9U;}xb;@@ zO99r3rZ-hHOWD_t9$q&vRcWXC?I<^*@L1(O{a4r=L>-UkAG}$%`9zfE%!q#_RgaA0 z@=a+$%@s?7XV1I3&)rRsh1t`W;hld-o0&GPL;B0SkdA88#eb(}WP`D$;@E zfKuAL8)w3-L1lrLD6ugZLaAAv(oPPV68Vuwl@Q)+B{>xNR+pq^Ku6JkqA7hYt~4ag z--RWz8`8$Gl@&L0QC8{2Zf#igfsXm*^=I1u+DSB)I~vgv%Z(V2(eCnkVuZY71hQJyq5$RZ~Z$=+lm@pp!*z}O0Y z|BP2d|1B8@-UP?0JLiv8kBa)-&uC+gs=?+36upg@P4v@pi1R*7K)=4e*YE4ypY>CH^+g3ZcdAmd3w^EtHJ)2YrJ_P z!=A>OB@%lVF<2A&2qRXsV--8M;>~tc@zU!HU9f{Oc`jWPUfU6us$!UbS&KtU zUN@d`o$FG?PS0E>FAe7>^{PUjQb#hJemr$zUcTP3cvvujsvV($}bDD1d#Gl7JWQaPpi| zrc(cSW90mv-f=q#Y{SL{x`N07x_J4r2{QYM85=nE_wFQ1rMx@YTj0RFsMVN+jS#O4 zX~}hncnEtCu}rhF_(71Q(O%@2$vN+Qo@%EnH~eLxx=Oldtf2D<-|-8Pnq-xYjXNOl zRGiwKFkz2G&xW#(y1ZIfuCV#O75s+Eqo;=g}_(ptR6vWO^}aNNPAM>0g3Aa7N$ zQTLUjOeptvf+qMeJxz!`O_jmaH+0C5)j3x@_YKeZFbds%pn66?O$({kKIZAM&gqpO$yKUMA7A&9*nlJ zJ9JMo|8JVV1w%cfq@X4zf>^ea!Sbp4DU=Cwp8}?*ZD8v1ZK1+}T+kv9@5vcZA?U}+)lIqY)ja;oliH>DTK_V2NFvRvBbeF@%Pbig z(g02n!&&c&*flpo{pc=&zF2FRcpvk@2Hysdf9KE8Fe|V^p9jW>9ZCWk-8#{Clb0i*zF$)^6EVk9{=|3T-5Lj{{nT?XM3{y zrqr_j02ZbM00YEz7gRkIWZ-b<5E7?#ReAP0&FLz~Lv@BEg`d9?L7dB@4mw8DQ<->l znl7LB9S*X2)}y9Qd+G-JUdv0rS1>kE4)3uHP|rA@^#{!)2Brjq#YoP~qyp{@ZIQax zBJihk_s>xDd4VGP;m7k#uuzqgQ|GB7G0zXRGC}@)58bx4lU!Zv76Xe2xw>$ux7^@! zCogC$U;TDaAJb!(3fGxZG4@Hn`^(bGO7qHy%*)KI0@80k7JA~Nkuphs zYO%H6BU|xD=dL-^peDYhrf6l)U$3aOa4yI;x3>qXXSD3_OxLlK%XSvZNe#cD?pNi5 zFww7pY&HkSpQ;D)rg5*jbXpeST!*q#$u61q9W*m2FwF%Yb4C@6_y;UKqRPIP)jyP+ z=C6IQV)*!K0*4Bl54rja@5rG|=?;-HtzA~sN@^ntDV?V?y6Vbe4zXA(SoUmFS-Kyd zcf;M|gQWrAu6CkTi=^c{MIUV%mv(9T(H1V-Sm<@@ZTN3p@Y`-MSsF=IqSN-5DZp7M zFBKQbRsGy^2A;#MlQOCM&UIQEaC_IXzdy=m`rm56^qK~Pgl6#bgDY&&+~L=v3y*f| z4LCi(lgA_`E>8LM@y#A1&Xn_dCb2>1?%T^HL@=JCiqBB!pbEHMC;l+lyp+4;)X`&# z_|STy$Q;9Iu$5GMDr-A0V{e`K9tq>CjTgXxG9=eF>@3?Zd|iv;9k+KQ9oIj3R3ee- z1|aN5{3&HhStr}65o435#6(kl6QQHs!_n1A&>w@y5y5}e~_*CXuLHDU$R-{x74 zxi|0U>d(|kIe$#}FoV;vDdXnOq5T2QX+)vQbC+R$7oCKr!)C+;cbRiq97Fi2XN{|! z-@;hyw~fbrh<-Fs4k8(7t4?;n@C?cK^w#)+N5=JA&W|YEx^KPG5yN(?@260?Qm7EISEoqJFxS=!2lr*mDL7R1Py3g@$X9`|G zr{h+ZP)U{Y8~W<3Hl7S?*p||H zcwk+Ol@<)KAg0u5l_{M)3$r%E+p5RE-T}x1&xTM0Y!uwi!%$e^RJ^a1cyaI~*E$Nx(eq7UE$T730?=;iyS3iY(N?kISkWJRrd#sA%74Bgvuv}Irg3FiI_H8 zI1K!GjGq*HY|n+m3Y)!e%LCxqBZzLIG$tc(DQLy;v-~YW<0bNH{##^3w|yV673y3& z1!NIY7YgKKDo@Iy6$L;6ZWllJ1EE&LR|B$+A0hNZNA+JH{^?1`rSMI{8o1tHRu0DT z>kl?^R{Fr6PhJ?AzT6q+3atk0=mP=v+T&^S4%)Jrk&%NaH?Tu-Nb8`Cz?o3j zd(ugG7UdC|Zz4Io$8zu9wR4KHiN}jibV3(`3KB-8#~*6VN`A6E^sbS4Us%WhDjhlj zR1kc9Cv;pBCTa#4I`i0&M-EjZ@&ip5S&zr2Mvt&~6Z{rLm{sDCjs0gXU&pzQ;E84A zH+?|8GHW`tY@#7ON6z8)Bk9FDGNOr?1z-ks(=Dmy9ZfDvzmP_HAJJ+?hr&RS10x&! zz02#Wz&<8{t3jBsCFG;H{CjDY2)KVxC;XkuhZQtwXQw9O1u4kvFv=UM>ruem6diwn zDzG<BgGx9FJRb_+wc9J%aa}auU-%L7k33@C+x9RwxcWnz3_ui=bvoms>^Nc zqx7c)e7W@MuR;^bmm`m<_kQRMIS;TuwoTmZ4WFUB_=0QF0s*Z9S(^A`Tpz+hn2lGh zACB35aqd$T4d-HMPa3X1s%D<3koA7nd(DM?^C+ZpIA-_Zoe<5wbI9An6UeS#;qY~` z2$z5?=_RwR{+)O5xWrn#-vu@0JV9_ z6K^~nsM1dU8hoqqamA%<$jCGNnJD|F=i0J8jBtl|XSH9+G+or~Lr^XmnYpz!&DOgh zo2~=6H<6~Vsi{e*y}A6qT7Z}R*2NgkivrEKu;1wI;HaI%hvDHcw1ZGA9()O<{H%*K zKqLI1mi5DeQqR~~B5)14jYjeQxK#RZY8AL<-l|1!LVY~#) z_`zKC$K+(yskNF@M#!O}>iAge{tKyAXX=jX1YJVoicxg_peaA!9=vrXY-0J9mW))d zEtJzEB3jSjX*0rN(tYP}+3d_mRmdiEHCDJ%a|qeeHO!00vd>_?ZSh-vaD0y090f#L5nQ$-d(B* z@)Z3%x4@0*A3uoJs2qaT`ciS&-I)1fL!K&HhqbzN+)kZ`^c%!bF%;%JxgE<*xEPZ;`yQ2+&Qt$mte{oB8&8M zjYB_RVhRJ=2?^8%ttHe6Y*i1sK71gA)>H}cA2y*IH?9%-YHXC;C`U@z+glFkn0Gx6 zvW6hTB_d2?Y6AjL-H%=?s}-B>%G1QOMq*A1AlEAJ2sKgfpmx~Xa%#8i@n9+ztlYzS8UX{CpYf{>!iV@Y&){S{H{ z{g2vwZtB`5D{?C?=E@MU6_^4dk-pxLl?xE&Te~}s;5lS6rl;+iV=Z9~cu*y!Fqr|74`{7RWLKG9AV1u!P|sP!gIxWa zNG*Vi@y3HZf3(wGntDDdF^Qk&?VvJgRW>##7`{}Rqe3P9AJlwD=cIs~ z)~jaK!sl|sii(^527l3;H`TvyXTQ3o^0WY=K=$JoEJpmvZLMp3Dydi~o*7-Gm*Cvk z_W-YfD&pDGQ0 zL_^wXNJ}MAqCHTg6z#M$MB0O^MP^A!O0>6V(X!f-&_bo~f1UUJeg4Pu9LN9n{C~&M z;lO>X>pHLVe1G2W*ZVaN{aSq`^<*)Xz5nK;!~WFbc=y}P|7d02rf}W!kOwIpg<)?F z*9MlLou5ekKVYi39r(41+jgn3vkxnp`ui{>I0SDEfhV(plI6=DnKEq$LzY4uRnjIO+h*V4alS{)?!C_jX7fPSnoYvHuMch#pD4zIB@c z8*PqiO&W8Nly(;ZkjM7)R6H7K2UpT%FaUAPNcxjI4VWGF0%ZT>L;!rtP_I(O?! zVa+Ar2nesp=)dn9`60I1@L{sVPiu0QVKT7aM_tkeM7wNgZvEL;)z{ZIu_U9XE}xR} zUBLMfgXo6k0{hpm=on|N&r_yn!MAtnMuage9(9`dG+em%t@gI zio|X?xlR3ha=5OW`155s#M~*rOpvMc)S6Nj3|g$Y{9_C>9W}B26`z^?2aIXnR9kq8 z88n>l#_|(C0(olJWI2*VE}dVXh@BS0I9ebhb4uyjNxHE2o~<}D4FU>=N*w!quBU^& z(#U}s=YVjy`y!>JCQcCam93HWd7mybacvloY3nhG9YIr0P3BT9zJGt)*624N)dK~o z_ud2oB$ff0J8o?C_{7S>k`G1;jLOx7={C?12&}SkvxLLt;S=SuB66+UsboYxA3GaU zOi(;%(-;?Fg1V7N?ZZurE;k2&ATKB2;|3BAzD5wtxjSGhox!6KPb2`XmPmjP!btq8inue z;EOi{CO0mrrDgx9#$a#lZ7xc|jBOj0X_Nc4*DWShEpkcn%;&ex1YH$#z1HR<(#YKQ ze+A=i2>YMJ-4Q+U{7xz5B%?v5xDV(*F^Al_cdudJuJ=)g%iJ8H&$~W<&zjL#R0AB1g-@jbFf>SSUNiFMKF8S|3;6ckBTg&B>tA<~Vsu(Uk9Z_aY zOG`VkfzPSpK60#NGvbH5i=ruVZ>DGn1{k*T-QC@!vLWWezKiH<0iV1Jn9BBFnapVS z%J5eA+QdhRO^Q$brqUxF;2{1g07Modt`waK5#v_kO2|lv*#~a8-r*^FU}ur(Nq8h9 zAo<)wdTerSGLeyDAo=}7dGYtiyIyOJW1z#49^ZW)y7kfJA99q0_U--R=d6pK{ue=2 z8+slj9MpMl!rH4O@Q3@yU$&;sc3(<~h-DmxJeyhx6(JVQK$i&rG1!b=Mj5zustAR{ zdFtzMtq_*;pt^-L$z%6TVqZ#*Y~Mj{^#^u+3Rt`bO?wE@@%Jz@*a0W>4q6d+Bjg;?{Kg??g~`+$1M9&R{vY zI09k)|3skM1**`})D1ra<*V0&-+vj8P7k$W4Kt)HgkpazEz?Nbi}8|$>u1E(lgV9~l`>HaZ4 zRfPX!=+u_Hp)3DKt&2xbh!#7$Kz7s72g7__5>R^n$TL?X51E2dqmGTgR@P z6n=U=rOkt~-`XmW=k}WkYVgR|%62|rH z4V9eh7!u!o8A4wSSR$6_ZsA>BKaS=S9o)m1tzC zehwGD^Q4fCk@X*?{hbW^WL?f|wBGRcQ5VBCmmU0KZ`+hbp&oa%{r{mejVGei)eK`t=X6y#8Z|~_q4aoG2nD>lCeKw^A` zt8(kQ!;k*l-p4WB3Ux$t)!7-iCGP#b@6?O7Qd37;@7F+!Bc=kJB%+Da zcVf~E-@ra32Ec-RmSw#bER}yxU5wlBbp|OGw_Ll3eG1Sjf(v{2FBU-1-`v%?Qo2RA zkJS_(P{c;}!hHZX4R4-d+;47lHID4XnQMNmXE*39b&v@H)O!A?+c^ZR0nV}8CRx`R zBV``#D~d?5w2Dc+hU`o5Td z&t1hXhDpjDHVQPVj-W-FkVhD(uk2w5=mFQqV4M5KR3qsPRTF*NUAnnA?rsd*uM?b% z4R<&Jv^~>fc}2qf@d7DF~8Bo@S;QT|5R?`rQ#yM3Us#SzN*=gQQLKKC0rwf^%W zU<84>61sS8I1eo6^Gkl`GrAQxe-l27z$fCZYYomO_`dV3fGC@wGO1ou6{*0XDGT*7hZ3%<`Ic%Ngq}9q~Hd6MP$*U@=LNfkF-L0}5Mkw@0D}Or45y zixzo>b`Ojl=Lk59;I+oUm-%$WT-?-O;74Ii#hrDFbe#k!kuF)Nl6?)IEk%_YAtTOt2!F)*ydpcXAw*I2?d*b_@R9Z(Oa?k+2n|}A>pH;zpiQ8_J2xWwV zHDby?Ck9KTg8Xw}lgJ!-%uFJpP{HF^`?Oap`Q?ZvR^d1xEUH>@#USBjj&DvrL(>k@ ziIZt%le_}{c;0eBD9-td{h#c1n#$Yqgq1TObA>dn^wp_CWNg$cs=RQPCIK%4b=YG zX>;U=H)drRDOhq&4udp?Nj{aCZS>lBrNep-y!J6XW~kJJUo{8MZXX{7%wHSkgQaR| z=lF~n7-|7x0Km8a_z>`-__rC(mCbL4&CW{`cduPOTz8c+*<==l8z5+G{62Z{- za@rT9<*j`}rJcBYXjv-!XE{{0@glo>dW3C4IJb3pZvtLQEP{xTW5jD4-oU*$^sfRjsTeEv>{h+_%$zV70TzXv>x0_Ald!p0l552wA@EyU^8|s5J|JZ@o%^D;6WoN#F@*DDpGhlvRwCSH+8ef>~aO^tk>syE41BOYM zIo$qw`*$Lvn^1bm&Kjw=*8KfFJAP#N*CA`Q)>)`jt`qyCLV*jf*1Dx11zb>+V$4BeqPaso$0W^4|J zqZUDbBXD8F2Debywh?y=ek2_S45d68AA=(GMjVf&sr8K$w6()`+qvGy7FMqPTo$yxLs=g*u-TeEISvRtbcE38Z=$J!!DIf(?EN^ByQO z6RmUgt2g6- zGQF)JH4ZT4($JviTJk+?OFn)6%(yXOr=lVa^f;&^k6<#+{I=JcPI>f}e<|O8O1j`-p2B)c(S{YP6*5h*0uyMDQK|F{T%7(*YV&bi`@Q2L8cN##+nN&!D8pR8xH8{ zWfgn06U@M#GCCvU*x9dNUC(40af)YAnOg5mKWum3c-x3xVPEpnzK`=Afqx74Tq$js zN%d(cF52qVpsc(f+{ZUjI~cfrgmc;4msXe*E05tEi#uNsAk;LoP`>}Nqitxd{k)yK zQEW!0%D>#YbdH9LG~!7DAP{yj?7th7pWum2k!7rCq^ zsqMTAO5Bi;kWXK}aEG+p!*i^{drLWcx=r^1o#4RLY<2Q;#ks>f2k{mRB&(EQN%4OK z)sh}7sb-t@e0%bLR{6eC(#Obtr{I4F^QtPfEv`%K0_20jkD7SBs>@*R-bRYS(DrHe z?@p&1GCL0|Nc!*n9BOu3E;qqXm`|Cb@RUW6=gp5GWW_*ty3(HQ+k3@0AJt}aZxah^OSo0O40v9vFj1*{!6Y-md-Gm zA|h46YKhUmQGdWpceQM_P$7UKHFHKNOFjU(S3B`?`6{4WVB2JFTyDvIaDE3VB zT6!n7pm^4Ng%Qqa(4` zqNgf-Dgd-g<1^>~MF87A=$Dc=0%k~nytTvg2$yma!%#KU82|d_??RqkrVsH3F$=^4 zrppI83AFEoc1n8_{hP1nNV!4#Q%QsJ7ka5o3oK1!m;y_|gywg&;7_+$3fjWHd+*+u zg87c=U_Rq?nR+nEUdS9j?dciaI-X?m$Ka(IIv^BvBEu0*?h?;6HnY;h*9IsV5Ih)1 zQYDOc_xDFbr4VoP7lLWfA^XC%ZJm)SFLvQEA_C?+CM_o2ZH>%gt+p!T?fy3beDpR# z{f@OQ8$6pXF`9;TX>75zwKZgLC1F_#MD4{c3kEJpo&!MUzMOk1a!l*h%iJ?Bu9j9Y zID>4DjyaS5F}1bBhDTi#6)rrCj;g{nXq|Sw^NPF^();dRk-+8@){?C)nq-T}J0`If z1o({+;Y2PbzJEh2qTGJ8c||WP)JD~ z;DDCurlmLE+r(uvX9C5UJCpvFL#DEX0Fo$M4n4bpvegC0wnxr_C!4D^tMCH$KyJxAxTgU;g8(#Eeh876BN zcpN@08UR{zES+gopQ?y0=DYtU@!mfRt?ea3gH&ykv1P8=MS`=YbVa|DB|$z5yA6Dy zNs@f4D6k01R?DSKIwmNrorO~%a$UFMO_Ut%XRt(%964e!ke-@KB4Ovn^>Ynbf!z>) z(hK@;DNfT!-g(Z$-Ms`@D0;rF&fUcp+%ns?%GeJts&~CMavP^r0;IS%v^MwIX+{!R zW=V@9tj(kKq`9&9?WW3p^J9C|e-1i>NYIQ7!|jqj z0?c&8vh{VE8NB*bH>;eXQMz_{2o8_yHL$Vr(xKa^v@*f)UtEBF32j4v-H+2V<)oMx z#F7a^#~#($oS<*vJ;$3609*oH+Q>W>9;j|~Fp_#u{ZrtUNfzfWAE~V-5?oQ*QkDk} zr1PODPbB40S7w=X}(eTQrxd;cCiz1`{xIs+h5?>EO~q0znjt!CA;$i7w( z=>^iB&*t@kB{%`(Ao5I8UKl>t{Y{-R=~qMtX4_c~<#x-J#$OW|Z^XY@&r!@f8E&*_ zT{zo*qX6{BXlzG>fZ$;Tw2VpVB2s6rqoqfpseQxt{e~k^BqKK_6N_6-YLFcl4Gcq8 z10sQ9Xxw?r2ObJ=$~iQX9Ao)JSAA}!<^MyRed43#o6lxqQGH|+#ee8vAi-qu`QxJ> z(PMq`AnMn(mmlwR3`&QrJ^Z2}T%Gx+)CiprZZ0wHfAPhGEI!EtVwz3|GYLl&d;}-Z zq*-SS&mMEv)m@;l*QGhZ<0Y+jGh8DH2r-Vk;8UK$&88;FcAs82^uE)&AW;^@U`&1G zpqJAQ{%-WBBT<(+E-B8PScs4Hz5na&r=?Y%TD~lIAJf;*DM0W+liqT%a~I5cHn_E~ zKiSVsI54>x(CypArpRkBV6pKA{~w!EM}yX28M9nx>155<+<)&tCN!lB`!O*>c^J+$ z_V<#K8_Z^|>-pQh3;`mD^)8cXYC8M&^^pLFk`p$Fn;4838l(EswR+=6wg0}92Ir;x z(%n_(#xl1Ms8v$-?WUVi@O)miuB}4g61z z%EBQ-x+>wGy^-~)7Fo$FgTbgeZQt#L?^5&2wU|n6F}%?eHm=+}yPIik8-pMT`n~9V zQu{Vs==WLk9<{yDf7o3`xbHXDsIB9ZzImaFw=6e$_~(Nkd8A0bLam236+Ax_B#@Ny zKu!RE;<~!W+6wf{I982%bFh*AU~hsk*W~4TGNxmH}ek29#plIf}Dfs z2Y@iHeZQ@B`KcgWzFHeDFo~uMotGK<3%jDqpKm8AdcTp5W^IlW2(7PDtZ>gk2_aQwl?A7?fBQ=8tO)!%Z85B;Bgd3{{*4rsW5 zo?16mSj!lGUEMn(MpGJn1FJMNGW?hI@m|{riCnV$AxyI^{GP>%IH1mI4(yRUb^)$~=D3f5b*Ps6nAQ zM~;n#8rBZ+g_l8B#E=RJ9wWkiG)9AA*be)b8_#(p$?Pcgc$45l0}|fyT+dP}$ORiX zM=vk)@9nCNU)b2#=$C|~k#~(OZX5BxgdPIav3-?4!JPDd?=#wPVHw_s_Io<4#p?|V zIt%aLZ^i`y3z=}N!IJ|``R)e;^jf&3@df)f<@k-idX6gsYD4RdFUMmOK$pQN1Ph5+ zWIw}w0>R%unm^6ud5BZ>Y!b#{V>*`wE1rMGa8|lV;bnMwYKKh%J(SNXL9ET3Ivcvr z^S=kqZ}m#19u~W9iSJs2t2v%xrkRzv#341&dj9R#b8tYU>$p@ap5%A=J*P?Yz zaDc@UPXf#=@mQ1}En3x+_5uA2A}SZ1EXXg2T1tSVW5phok`HZSH_gwHL-81c!ZsCOd6JN>+!&wMG7CE z)k=(D;Cigv?Yw04gNk2AYb#zkDE5n>rh>{ot~R{FTJy8~fuSlDJDc|=KE7_=Z!2Iy zZ9oS{^s=>U9km8_X1QIvwEy1f{fMhhP*@21`bsF!Me!8FbU!OQy96v-H=`9?IsY{~ zz&G{a)xWjnx24iTw$eP**^*d7CsIgn-m`x%-658hHKG;Aa-);Pvn^FCrfpD$_zJ&k#=8W<{@(r!S}Gom1ijg~MNiQirWx~Ch` zLv+PBS=Rrutu43N_OPt%y;JkzZD@$3(vTX=pc@r$jjJ1^2JQv;uSpaNVgDG&BZr#_ zP@&PyGrRq68b8BAYKx|3XjqI1a zhFt?h18{$VLzexHl{JI`xf06|1Qd(=oPg=#UQjckADKhwr_Y~|QLj%(_4D+$KxLXc z3!-AepwB*IW2WV!aeCBA22IlfYxRTO<~C8b)hkDrKGRQ(M1G<2UD1lu8&kN$Kn`D@ z;=sSla}#c}hBL!nOeqc>cV;&G7cvD8-e~AsmP%=lVC`?*SJEJssct033F~w}LD4L$ z;tvW;KCAxK*K%uPDj>dvQBm@uqB_Lah)pA+@3vFRTFnUWi(Rsvw$827r%v7M*b$@1 zboWJf)bgjdf~R$l9xi0lxkHa_Z!=fvrejb7T;efhJi0DOA5x0R@Fs?!*RNmW**>sC zx9O2`{=?1(>JN9Em;W@9JH^zWsJwyhp9g%dgdKlX?K-wJ$Zsl|Do1saji`4 zx_p}FH}o$@*gcr~k-S{m>qEU(sT|Rrmy^Q58*I_3`%0&p+`zcw0{dW!vamNNE9%;- z`ULZHvB%P&P1jZw`%rb3Nh(e1GuO)tpFJYmZ+QH$ifC#Ni|FFJ&|a~5jA4|PfaSsD z5Dn*?eAxJ=r1;Gno2BUUMK>&^vRG;G{Xi)wqqK zT6DVNhED36nOzxKXuI8V-oCp;wnb`7TuR+@miQJiQPFj(*_|`DTqev#J$$SW?|eS( z>x3}WXVx~B2IsUaVcw6gvU(F_VS&;pclv|+8S(wa^ueda;x4F=<+GTxva%FS)EVav zslxvkyS9aK;r(3E9GsvF7zyCJlS=%-reQju8ZxyGCwLvNeM6!%y( z2qVV;jv)p--Fw5YtC0Uht_#$3nbX;(CZi&HmEDZ$Naf7-eX(RG?by~TlBlqkcXw;A=bS^jwe1a#BnjYwbiaaKq)Cn-QnT$-GEZE|FQoz zQ(T~{*RJhdqs|FlFa)s<%M=0&K$J35l|1s}1u#)ypG;(^0x9^|%6LVy><|*5pwy#DHQ+Gw0mZiqtzKs}OAHO&Ao2=@>+w7%bJ9 zgL3gH%oeZnR?GVXT?|7)_ntO9%q@!jZk;u3 z*jRP_`@0Lj=0FVEh+Qo52}jEZ>>A-Pb%k(R!tRXlo4|Ap*NDyLs^X@USmbWxy#iVf z1$cXjW(JIYb*0iQmdbZWt`p`zb0`Z&xkxL^l+wZi1a@Y*n8~Q zu@~GDHI}MZeRQG(m`f%up;+cy+`TguwRc(w6#?SCELQ8|oebJzQB8)59E;WFQ4vEY zTQclJ;{fQ7VNjZ{(jJ0^1q})Kf!83@?Z(kM_{$KadPavE-0#dG(0*p#!5Xj2Lwr}$ zwCJ<@SK>JAJ<4scr!b(H+g{n`&H1_UEhcn;#HA;PyfUY9T>Ie-PO*@XyAhPF)FnUm;qVC#B%3pz$*l5;sv`l`O4CP#5?(rd8xI`s*( znl?>8uv~LpV?93`B@2dpM{*A%Zd0U8?Y?U%f*<_qwiz6sj>+fv zuYRq-wcC=?o|v8<-PEK9wKQ6bu^6GyEu+#d-WFC?^rTG9kg6`9qg;LPxumw}48Qjd z*0a9n&RvK06KQ%BZV8nC_Ua3q?@Ba_;+bx6Na_lGd$jjq-=+A?V^2cAC2^CJ{P}tq zWgF9W6>r>IDQl(!7bo$iy|N)kJsUoGDSIKiRU*yklAwkFW}?d9Ki}>L^aYDVpWfw- zalhWd{JOGI881H%k_#qYnL6STK&m2cyAKZ-DQRKLTB zm{BJ7D-Lk*g*+fRC>xC5D1EyitIxZ z4-(x4Jl`xFWWra2pp|51#!ls)*BoKw|1z<4;MV10yHqdwl1Ea8zLyLYDV8#vmk%je z*_xS{=t1hPe_5beFJMYFHg4i+tncoYJs*ziteN9v0U;T|Q&0_orb3X(QMVk>Upw+# zJ31k3F@3COfKh{&<2os&W0D9Xj7u?4y9-Z9M<~0OL3=2{(?qOnNnuDUc1AyiwGcLP zW_627I@2oNmwz9WN;6Sr6W(Bwk>WJe{_temVOceir1h}W#<^mW=6997>w&!9n9CNB zg@L^udrVw|qdQfjo>pib`l-UO^^d6izOg20^x%X!=sX-cov}n4tPa|RSI@dhnS|u6 zm)CZU*Q|bH`ecVOk%2gdoD?f8e-hxUQ(P7Qz23SDkP?Y};P3_|WkA_Za zU!fE6=5+Js+;&U>+qaW%9ubxV+IPc7y zMsS1vjeHey>XopWdx=4XQR>1uvvYyDT$;*~HE8-AoL^-o)?K8O-Bck@C_4B3adC62 znliRn5zg1#1nat|b0MjbnNn^JRD5w<=ODRxHtY~P^5CW8{hj6pN@x|+wsMlSdcog- zg{qJY|sbu2TCTQ=vL#7?~l=x)*)o;A)l&%1Z;;xsAiASgarIkUPb>c$9^ zfI&(e7bjVGR3N=Y74Hnylh}C9c2sr8oIMLV%I({Gy#j9ZRnf2)^pwalvVM9`rym-s zS!OIOq!o(fr_C>3s&Mp{6r)n#is1nR4Y)RNOrwHZx8%2Z+75pGSu&fXU!(L$-Obe% zjy659Pgm^bR+3q3zEiM7kblZ)A{H6Ud$}FMgV*n0XFuj@6k@X^qNaB3Nlps1=lGu( zuYbGx(rropi;PH`5r>damv5ILEJMMrqUSusy}RX^^8Ug;%xCN_v+QwPRF)>12kStX z{J3j6KC0fOCzBB1{jyi?@70;zXpSlxr1psb-P1hQ?;td5C)J zFs~Lpu&aJvl*mE@y%-z_KC8r0Kl?$=8WYJkz6Mx}kyT{Hv;B$wumgOfxsSFyRL)<} zrEXvF=FJoM%vAU>=Skr9l~0(fmPL6r+Bt9ZuCt{gVeI z!wMdnjzyiytv})okdn6CMq@+)uNFi!Hr#@UPKG)V!^jzW?wr~^B1u6RAHaVC|7!5- zxuw%FjZ`=dORb5w2!SSKn)t#=g4#3GmhDe)exC%r_4eZr*b8 zs1t-+B6v&g<$+okZ5hS%$U0S=-cqB;i$WFFb}bWz}Sg z`IhV<#jFJUbr!4ToR@Qh;vmt>;Sm^oYZEF%_%U@(h&bLxA`Zz2w99Ldq| zL|@lJv4u$ZkecmXf9Zvu!b1$R>J}X5U=Goo{W|g&+@)xfWWjF&r(LBJyVU>If?$Ss zk`wq@lC(P{L<7T43}t59_MSgqfM9?xx%>QiErMvj|Azj`Go{pDpExxdZJp(_s0ES( ze|33JsNlPM_bvy+cQkzT%)|GwIz;D+vl+CQq{Kvauk58w zW4y7I-=B33?5wV?HZU}t4`S=`Re~voX9dB!fTKY2@T28byVI>lCmZZPL}+}3XNc0Z z_tn{;TvNPiTj@oGE^OVmuL2hU zO3lIPhPiTJ#CLgBtNZ&wD=UIB*EaRx+t=;qKXk%;OZn_)ZY-|=a^?sxf!M$2%$bG6 zS(XVuiGj+{C0GSYN;2Sv#t8??RWzI&u@|CVNUC2xfCuNvQNiTxtRIiw==t=xA~M$p zSCR0_26F{Rl;}v6YsK65EH_5)J;(_a<{y3xg&AQk@*>XvT*jU_hZ5-|gEhLU;t#B+ zs|5*SiI4QoBh0JcHLl_BLIe!Yvl7}h04E|zZKuA_ z=X#V4Me}Q%Ug|xrNF;*}D=sU1{1-Pt{>z;i7P@u7;0QOzr!4ojxAGiU#lQjiHgAb2 zV_)2p=p)ZvB?tP^UutO7QLP&pwXN757>MbdI<*a$5ZOAMEe10I4;|J(X9sh-b~k@85ICnE$!tITH6X#GQ3($$ z;yb(s!|L8{dNSH%Qu5Oa(MB;(r}o|GsdFoXVc`fwFLqr*n-mi)x3DZdnG$cy2``-b zHeK9xR&_ImHxT{G!kQ1fxRbv>?EhZiBAZ@P4k;c+C)b9MQ&pk*k1Ie^ z>*1wme&k5}-{mWRce}dY?DAM{0MsvssC1KSN-XFzTx&i6PG$$-i<{e3{x>0V`c^d~ z3&_7=Tle8Hf+>%?xdgbB-|RYL;@|@#1Yosum7v(xt&Zr*3BZ+rPMaR&ZCra>M%6JK z5dOVjSq)`D9fq5r(+Q#k33$CIJ9ez##QL4t_&D@DJw5BFd)@|MuHPjXy6i~UGGdkf zGtg64cOBgLba=0a=U5#$F#fZ3H1@%YCU<6&A!(YwcuK5yOiv^!46~sM&Aa-cT@BF*E*kNuJW=rR@Wo~)3~I2wqtc-X8_rKmg4g!xrX|E~;>t!D-E6=E z^el%~1xZ>R}dUU6C`6MbY6)QUi zl*>wKaj$ERU}w{h0>~p~>c2FH2wMzLEii8u=-q1KEkbiVH>GV1oY$NjoM_Za3)}NT zOz#vO5Tq4lY;R-6B)y@8noB4`OTM9z`(*Uey*!>FgTa<$iA^$(t-F|J#-d!qbu`FH zZ11pYS6ZA@sn5M)uwo~%9A+h!(d$<>SoR7I!3IUv^8?!RxTN6DC4OR1qH$(=s-WGbp@ zTlE!(=T+U~9KeglnplRbey&(5-yP8NrxIr{3r*YnStWl#EBX7YDF2I_o%T?=DO`_3 zHWN+agu2smcF$AS4u_4G^>I|}NO8*t#Pl_;n8hi?ns4Wv`G{br`oan6xXg>A%QB|R z4lc|6VD68t3$lOBV@xe=4HXlB`@BPijSuxh#Ucan3hGUY2JG`!_FzWJ_1mpM7Bi)b z<@%s52Cq_Yoz8=EXowMso%Q6QC?Ff6i-_D1)2N-Y5*J3~a!*fl1dHbBiEy|)5%F%Q zR31H2f_b8HEb7BHt>>&SRq{v9h~Zri^q2Pv0}#E;+DLRvnBFl0u75*bf0mnWID~F{ z1}E!nW!SwK7#Q$Bxwtw^E%0^nvSb*`w~!=VktmsyC#?B~1f3jK@;{`sY0RLOuMh2H zV41m?yqV{ovbSosKP*Avmc1UcB|NQ=iM#E1dm_xg?C*M3})WeQDIO zd`j;)*Vy6Q#Fq;@*o94E$@zj$zV}4=i-0a+q_qX+fh1dBpKo)?~SbDCYfQN3;{`=v!irt zl3k8Dn^G=C0bi$H_LhGIykZW4c+Q~d5Wz@@1oMIkfGHF3tnH9g5?V!z*L$hl>cXjh z#O|s6f`Le+pn5a5*!X(o3NBv)F}oisOj`*ww=GMR%lY8R&Km`UghuwyVB)Zg*)_wV1wPn_V; ztGe|l%ig=Wk} z3kASQ{lFO) zHT|&BX2u&owIyM*v1tlD%<*6`CAZBK>CFVhJh|7P=F;qR{DlxxR7FtRB`QU{7tVX! zAL#F=3%UP4F+c62N8cs-z>PzgMCe%7DY1v6iv=$f%`_2=_vC12mU8~6RwI4pYo3kS zBhgW(Cf4y|8rW;PldffS@yXiy>7iFxD%`NRd%V+-d*rJ{16C{G-f7!EJ^wcpFq1R< z4>Y^lL8K)iK!x_?7V7&^Cr+He38@Dx9Af_l&87>1rqpaZ4*OVOE`Xr@bH~Ayy6b&a z29zeZI)n_cT>+z6CqH(js_xfw-%{DSx|d0bYk=S?mR^xG5Ni z1cHV`6!o0gJ;`Q>3JX(#rs(p5HW3>M&TkC!Xn#I0${)Tn{*0R}IwW1c^NI_i(KNff zx6K~G7AUcsaBApI>vk){;G%v1(Bj7-^Dx708;-tu{aSC8qNn`wQN_C2UM-Y;fL(IZ zrquBdVc77}fGtM%J z#$7HZE{;Ko$Ue|oo72@>Jd2chy8+kwuk5q;Vrz>3C-_HSJQg97hdsqM&$fU>Sm~PyT*gcU^JF4M#)u%yAgr~%Ne~$I`y+>sWZ4rYE7e==xCvdxnB{3F! z#4rh@7Hd7!K*D_+!pNT`gT}?5i~jW`M@XM1N`n}gtb6+vqDF|=9C+#M2@Vd{Yci}{ z80_sG`xXH3RL9+23PqVnvj=p!_t8mM<)#gvvph~GuBNt;3j4^*qHk^S0<#7~EWM zCe^Gf4hpQ4oxw;*j3pL#o3J0>j~j*9z7kv}(8kG3tSg-4(dXkhn{mDn9>@ez2T~7g z?3f`Ojlt*d`hl8ZFhlNvalqF)*VYJ&^CG_=bS!aGey+<3p(NO#fjbU%OP8*;K<9$PbzV* zeWq*%^*`I{1?skYO)I$FBF{@AiX!b>EtfyC_F?f zEVK2+nL2%AhDBpBi!Q_O9QQ~!9BoC}$)elXp>hHM$sAwC{FoE-7KZ(F%HGt7jp-Sj z;@5Rij6j6~E9LG~)bsNubSI0tPKd2;I1CO0IuM%8X6yHb?FsBjO57u?@vN>-L5NXe zUo2m-GKWrBdthNj;TLRtXfyIfn&duX^?22X^T~JoKnAz7iuM8AHX&{|Llc!5x_7&{ zx<2vCy&{f7QOty&GeyV8pmfX0!$-1F)R)sj(~sD|oa=r36Y~{e>QbTy+;(S5&w=d$ zh>zF-?l;?e=8Qb;11f$K-qyI@pqmf5WPm|~0u~{uRzy#Abk?U~Cx95n)t36C&_Azz zI1dZU`f5ukQhf}x4?chT84vkckh%KC{yodPKIxq95x(<r+NXi{wU2y5Oe^1>&I%P~G1IkIa0>#y=Qc%I?-Z9H1W#}4RuW6{q~Yk;G+CZqd$htAlcPk%HIeWYNE%t?M0?2nlf z7H>@qw3*)%oD05S7Nr^vUESt0&D*Qypz>RW?QFjA&D4zD?MNqsuy^y=-J{Lv%A@fj z83tn5sEe8MM+Tb4ny(v&{>u@E$BTl)24hX5UOQ~*vGmjW9LWw>BRJ=%pMK?sh;}hC zG5ln@Q!-3HCAX^|W${U}5s4$DK zQq1)FUN|Z&1`sav1s0NAKBiG0)*BR_O;R5H+IZt;)R3Y?(T0~WWWuI4FknBc%;6ao zuz*lJFXajFSvLd6si??+%me@e!EZ*Jvp!smNlAiNyeT6+{W>@y7`r1Dd}Qigloa#X z`BQu%og|Zx?jO^fIZ$ zNl4$=egBZc?*u?%nZr|2G@Bc+raA86!DW(TJ*_f&QyI~CV%VY*da0#jIB%O_Q4QshFtkh9j*P-Ql)!QI zM7$p)UbmDI=8YFl`;)m7CbVGalAKEUIpdl_zChKCU^rb1i{#b70dK&wkl(`r?&NUI zW+Ihxes%b-Ai{l=Z$T{s(GQZD0dGohU!)qiY9dZ_7Baj~d6q_MZKtZ3Pk?3vfhIMl zkeF$u+*RTwfvNgT)7k#-m5sYtA?E)U)_+#!b?r7@CLHJH2M-buL**3~&4J+%^}iL? zGH4XmC9G7n447@10>z=?jypn35Y2$K9Dn~TcH(;s4Gnh>ME~;n{%JoNFtGJ--2F@5 z$$2&V{ihFB(GVX5Xo&O1)32QdmlR<|_#sf!()<3cU*cbbeNa3OD*E8iJgx9|t?0!I z`{3-i_0EirN{lovKMLXojM}1{aluPVGT$lw9{%Tk|MYvYxCxjwVBKmvtqBUme|SEY ztB>6|;r07HWZ{4+S%Rt`jN?QndvnUVy~qqtP31PBDEIsxf_rov7+shWnydd=X8>{s zz45&UnK!=qcg4(NPEHQh6ksXEojac}WzQV#@`1ngOT*1`PBmuXrPc@BCC{jV=Is zsWi|c^GZuOjBfUxuBu#~hJch<=B9IWeWwn?+7+@nY)=z@uP*7{=&77K>HpMkOD<-2 z++|_UPv$K#e?N_z5~sTZ4#sb1W@c8Y@A~|qtc;Ml4?IEx1`N-ig_EA?c-JtnN!S`t z&y7cyoO>G5_KwPaY13Me*9hMyjc6vX-yy{iNe;}+BTjeZe#M7~_nt9&B6yH@qvPCt z*)=?rw@vQ!Y&#b)`zJ@g{TYT$^NkzM2D^EsFhnw55OJWI2&k!D4BouR97seY>=g`f zXQ^9ZQT~&dg1~ejtPebGVOaP9rO6U+uM7CJhv$v@bF~Qg%1uK1A zxwo2A3yUSx4SGD1MMXuzQ)%hx1cgudy;^tI(Q{i8J?Mn&0n!8V`eId*q|BgO@e1iP z@1nIVU{ExIi1J1vDfrp_Ps2bqVcJ%&xN`TYuAdDb1Kp1HKMP5WA#J;gwO@sqmH01 z;sGG26XGdPTKC4RuIP=u0X0SllN9QbHu7q2&%PB>y7uz@s-TJSZ{ltQhtUaM8BodZ zgrmZ{!o9Q`i_V=p$GZMk1cP~`%C`UlE+&o#P*n(pAr6A3*47(9F41B)(iMI9!#a`q zAP9bA7%OsHQDh-EAOBN?D0(cEK;B@Jtow12`Al3?Q&W?0?keX;oBRF8#_L9A)Mr(e z{V|;bIYZ3uh4N9cC%j46xH2f(yb)JT=w-Ye+WS0qT}E zf3rSzY>LFe{n-o-I-u7)$s6zw zsz*`t^VDm6sIH~J&+IwHU9=u~BJ_l!2v7@f@U(W}V1h>sw;!8#&jM1OJbHi?4_q;b zB?IPZ!u0#Y?EowaV5rfGW1)68P>5)ISRP{w5Eo&HOSOK{*Ueo9ihwa3n51OOxx*J1!Ylh z&LIaA1GT0y)Q$psRtkHKGDq?&ZXG-I)}FHC=P?xL#D8Lcr{GUrofs04sF(R48!<|hl^`ULnWMYKUg+k@%mYVAq+Rc2U9VZAz@kzKSN4WarGui$ckPt zZ9|(4@?11zQnz+l@GurJ&u|8I#TA+|?TIRtpNfh;%R;Oe!BT6xW@K=GCVYeMp(zTx zm}$hmvhL`!430YLg)9b(A7AQX8eiQ&+FAvJn6c9!NGynj z568$Qx^*ip5y=J~%bp01kR1}5Kh}f z2186We}6wfWTBA~6B9{j4@m#Kcsz-)zwqY$@@LxYd;?b1Bocb^%CC>#vI_}aL1HIi z2n23S6PRv1uc%~bGry>cNvW+FmA&`mYjU^MVUj&zU-T(eNO;IxpuhQw-!9UxbGWiNb(8_gi#i$j?X@r;}z8wEAW9aC(3DH4yqA#y8ET% zp`uG(m)5)ZSUu5_0(>B4*?@6g3|v6>2GZp9yu7fA6BH-_ftZVEK5l9^$o>i&PAU>i z;t7*9x=lxLj(mGMs|gDS4m6)s!wP^$F;ffvd}jOf8~`V{hvd{nF>pn1$_3aN?I=Tt>p550oT>+E*Q@+ zk*JuWcH6svq=E|78uD>hs90uf#zfAyt7Bh!j7JZu01sDTJX{mEa2Adwi+>XwaW}_KSY5+15laq3< zuE}!$ePQg~i@6%O#~9p-h2ywLq2#0=-@kh;B!j0v>Z^*RNZ;Hk=;f}%BN0Zn`L&9r zgVh53qwkM{#q)O@MkFwj)5p9x6@X*yg3Wz5Rb{t*gN&}7aqQ`wKObq~1Ne*CeA^hx;4lC4j!i2%NaQs!kqEk!nZ`bd!XuL(lXb2sI6$i!f14MZ0|m)#O5(V zV5J}l5gDw)R=lVhxb0FH=ND_hU;jH^`**c=KlY~!<_!)8rlxS}7xixN&x&*NGQ74U zSvhVpa3qi|7`5(UF3X`!jHhzBc-h~T6pzvnL30r0UP9Rq6R)IqF2MqkiUd*MV&G92 ze&GQ(FfwX@dW5UD>J`?Fe%wbo`BY6rP!;FY!*$sYXcwPs7Klj9g*D@poeR zA767E&RVNOU5V(|EdF4>EP0VR?@Ni4Y2}XZxc5PLGcYroQfJ%c`Ocv~wyY-nHakUp zW?O2h{JRTHr%uK3Jv5v(vyU+e(RU9UFNA6O*RJE-fK18|uwEH_avf zpZ2aan(Fo6Zz4lSrb33Dwo@7;LjxgfG8~;14VfUlO?$ z6bkP3?uh{lNze&7{~=x0x)*lYV%Y>!=ryUFWAQZSzH;V7HWUo=Z$AE^C$V@5BVx&* z-`}4;eg8ZYew5H2o|W#|TvP1)?2bt=U{TU5xDmbK?(~2;dcSV^{rlcCVo;84P2WZR z4AfFNu6pFXJEs#t`#y-{o%AAPGGd)ML8Bt>F}F@nRXfvg7yua{H`GM`E)mS^F8EBO zFecF;5Ne_QH0HT`#v*=JkW{OBHNU4litmM7ZFmfTH;CF0P z76msAh#M(;G>QwvmSp1|EEr?d+}4u?%t17ZWQVJ3OpJ{U$H}4$lphgZAX_e>eKL$Q z&*SQ#NhC5ZE;*RNuh!rB(&wwVu8hqDG$&30%R;ly(R1!*_hL9v}V7#Dg8_7 zMAej}u9NO6zfxa}!bLk&GGi;kz7vfTw|i)AaA-Iam70^EhE7KyKWdi&Q6z8F`d?I^ z${m)&DkMOi#CiW5{1jbNvjgCT5EzDJIhx(cvcnrWthoTZR~5MT|8-aKKvD2;Tn(t2f0&gv}p%WCYNk$J&6@(Y8LhP)Lk+W%V~b zL-WS>%vhmTJ=xvWTf_#S%KXYJfY#a$1S$kBkWjefIG|V$9>H)!G}xZrt0}gUdC4X? z$4(6dKXe~q5hub`IINlHEK;G}f&VtrRky<>#6aYXk$}=x-#;s|E0`y*3;M5NnDr+E z{UY)w7|coH8bN^pf76aUjk$W2XePX=)-*@Hd(B5Go##enk%i1;QOwgFUE{x&w_95k5hLj9~-VL7B(fa-c({5N9aFx`aeel*CY zB7f*k1`_QooCr9YU&P(_+j^V4Fkov`8iy4!{OKvXI}zwL9>RO%R45OVg&+msk$2Jk zRpSY4`5Ot2(#>+|QuF|T_P>z^W46avLgqCZ)eS#SoJ zP6wesA@MTfd6Z9Gga|EU`Ii0q{=*%YyA7va@619J6(OGW6t_BNgq^i$6U-P>PX1jk zuTK|Tc$UMXgdg(W4MtMww!G5uEeZ7ojRA6p3qK>Q7dy?82JgCqj!Q03eLao!Wv2?5 zo&2Y#n>byVw05Q2kO7rcVS=w&B~P_T7-pmJd-&yuWT-(ZQ)dli&~U|ei?b#dK=A}d z7-rJTSFfHSH$PMk0gtbMUu^h+^QQVi=B2{^Vz9O)0rlgRNH2jbV zf4DULr@y8Wz(iS9RrSuuruNy5ncRfoubs2i#k@sP(hECiI>hAyaYNDE^ilF7@|^qP zIqW(A(-SB3LP}3hPX`Jc$^chHV;>QQh`ADx9+lC41M=rEo`(VV$v1>bSD(bZkZvE= z?0|FmDux~PjnjEK_`g14d_fhpA)6*%D_m z{+!}hZ+!KegSkUuS+6wV|L`-X82)_o2@e7Qd&oSDfCxiXfwGNII7{N6BX0Pewfy_*vuB zrX*YxaP6JMn4S&lmiRc~ia@HCjBikFGLpMspqd&Unx7kj zPd4OZ8?GFRB*7Xw{+b)ss$ONmH^Zgm5Y0oVS7X3CFTuJP9G9~zRisVSLo-RC&7 zep_<{vsV*mAnN=^0}4RJ!=MN5CqY>HI`4_{gl?3e7rm^ORjCK>EiR8Ye6xtvY$ljB z{=m5t`#%Q_OpAa<0oqDy?vLLTM3+>hKaK-32VIV<$4;teFQ+${VfUyU*fM4EiGQs{ zJH)t^2yoH#>N0hzqGg;du~5%ZJe)6|{<02A>pIn!dWxhm6Mk_F;rjYzdRT`aLHrsw z@i^279)m;yw=CE8z>4j3IzQLSS+sOn_7XeM!x8?i{q}0y$~|Wxn1vW`eWcNil{0Ik zqG*q+PyULV79v8rf;*^-Olrfgna34luPI=tZYZRP4UE=ePyrE-AXpRea`Q^J=6E7+ zL#XwXSNlWpf&H(4=3Y0Dd6OU=PUizwag0hJd(5N=G_qG&&}uAK8dma+CAihO-5lPB zz)s<$bJ7{trM_4dO**v(tYM(DjRY^qyb(H?f7`N3)>5eYPU*w6G~ib$lu#kFTd|Lu z+S*Wb&iCZKTAEA99x^jP2XXIsD#}tp`!8d!j+WlmO899!a!zl%kX!Y_TwXXmJ7MXS zN-MA3&sNL}D!iGAa+aoK_`t1TRhZ(6 zNa+=F-+{&7O;3+XS2kPi!?2T8RTE#g@|7(6NElm3yyeNR`(>4E#j!IDnu_*b|IPn z%}2hbXqG{%5HGiIM;H5yM`@{debmvEt+qFGeO5jBI)v5?0LAg58v72KL7sG=-NNpI zO^0Y@{n&W0e@oLqYo^M!ZHa5e-A=GiG4{8WNHq9lfH>{<$O7-^Mp9vWjU#;+!nEsx zGDnMy(oWd+1?GW_&E5r-RrW#QT+t7&R$S4MJT-eKQF<AdgxZ}uxLDuezX*F5g zyFiYzV!F;i>{$9xzBI=gch{a|dXAo&*Z@>FllF73S=&=xld`fdPZeOY!<-wlszO?G z;BHC~%OC1{z&3*|@VBusn*xatpFB2v$?UGNxA)_AADk5rZPzUktqiH>>7IJfEQ+3< z9-=`*yoA%GybN9cVP(Wd^^PS#|E9ch<-w9o862n*a0i919g@BdEPIvb=`n@-hxxVQ z>3u+;EG=b}9!hW%h|Y-|M^D;aa*_Vcca zrHaQy1hSS%o`}>4ro(MHV6K)(P$(nTiv*Once;7 zBS;zIyHnN4>}c9)sH7Z1l%Fi<`tuwYXWQv_n5XPUvY`<)B~X-tTfr!l{Gr$UT9ytM zKdL?@_H<2nqt8{aglHVmaz2X)`QKmai1N6sxm4xR5nSiB+_l$)xL3oYw=7A=65BR` zZLl4g(5~bz_=$zUg5ruw$QAXte3t&a-)t~c$e3i>hVl~U{d|3i4h*^ifZq6Gq&Cfd z9ILuzL_&KYG7sqvWBHvtN!zsP#4B#td`3ow8E$l7oD>%$mPwCHG^3{c+VR?lYD#cY zZ!Z+Lex~;@b_`xKk+LXT8yk%cJHQUnOYN>fyh?Jv&FVJLlarH$%LZr0gha#XmxnG2 zI#*eFjpD;}foP$_?oM$*1U&p`^^t>lr^fsLs@tHhPHmV-xp!}IAj8SY$!G$CJ{2oD zwolH-?>Y$CAOO+vkDD{grz-Ymw|Ab-AZg%ohNpv!T7{->6#F24h>w?Rz1z{zaaU`^ zfDdxL*lc!4<~WA;`X#Z^=q>qkKTDW?E!=Q=j3YT^IE6#HAS4~Yx(mA=vfrXn< zQeokz+vZ8a8i#B{eMWyov7nNKM}A{al<+wmx^m+B!xR|3&rMHH^C{$ueeO9v?2bk# zIAe^&<5B45@Q6BmgPRjZ_)Dk2R^C4CNo^?8OZ@#6p7jl#^5od7UFQoJ^J_=szhnN% z+97mf1&Ye-&EyLK-AUM{WaJ*6bSSU!_o?=sJDR5fUM)e z$7urqMR42z;|q?eZS_iO(+fFV`I}3B+qQ5Xe+vYynCtYyR|E+jD+*;jxzC3cS3^{h^@K2indU+-vv~wo9FFIi*3DV4ksAtEB9L z)EF|rfpb1p7{P513$!n|?Y>bS(<*oF?*m$5ZKWUD`z;dr-?ZlaGXXBR2=5rCST`(^ z307T?I9a5mf)d@~`zRME_~e#bAmCFo?!oJAkDXu!KR@d9iP;)Hy${%gRMdeIuhx4h zD#1>j`kN=`Cnx>;d|zBnOwCjd8*o$4{&tFU<+tbue^2MvwFWzmuZtg=I3~&MS~jf* z{h>1QbH*n64tp95Tq+JE`w4y3JKsF{xU-ACgyj`~^6=y0SjqF#Tb@zF&QD!&?X7)k zQ+Q6?$1!^Wd1p1dEDCu!;l!>Ou)A0xVl3g>9lO^l6tWA@IX7y{ks`N%LJD6BchT1R z->U9A?%|fk5%gvtv;d0Fvg>D=T-RZDGAn>lEC2a-?v4jdUrjNQ;%T^hQ{9=1!NKm4 zt<$zDpn{zkSoxgw8k5=*%i|0#O>N!aI6pHz=+gM@`xC_bCWt6lbg`8qvl`yL6G&}( zJutZcjIuE8B>S|E>2BN$K#`cpxFjWXPtOC^gjRUDwModpJVqphGzjBc$(QgFO#}Xa z|6bW5K|;XzpRddR^DX3a{`-%kr2qe0{|_r5j5qE-*Hzhz{-5g_nZ#oy->w=wq~>o% P!7t104ATs{%bEWMYjF6$ literal 0 HcmV?d00001 diff --git a/docs/img/miden/vm/design/chiplets/chiplets.png b/docs/img/miden/vm/design/chiplets/chiplets.png new file mode 100644 index 0000000000000000000000000000000000000000..e61ac4468beb1c9793b7c26d9d8c8e92b7190f6d GIT binary patch literal 124152 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