From 294a78766d2758ca2ad765ab45a5e665be9830a5 Mon Sep 17 00:00:00 2001 From: ZUHOWKS Date: Tue, 28 Oct 2025 20:41:30 +0100 Subject: [PATCH 01/11] Initialize FerrisShare project with P2P file transfer protocol and basic structure --- .gitignore | 5 + Cargo.lock | 197 +++++++++++++++++++++++++ Cargo.toml | 7 + README.md | 41 ++++- docs/architecture.md | 24 +++ src/bin/main.rs | 3 + src/lib/domain/mod.rs | 1 + src/lib/domain/storage/entities.rs | 5 + src/lib/domain/storage/ports.rs | 1 + src/lib/domain/storage/services.rs | 0 src/lib/lib.rs | 2 + topics/p2p-transfer-protocol/README.md | 29 ---- topics/port-scanner/README.md | 25 ---- topics/tic-tac-toe/README.md | 25 ---- topics/web-scraper/README.md | 24 --- 15 files changed, 279 insertions(+), 110 deletions(-) create mode 100644 Cargo.lock create mode 100644 Cargo.toml create mode 100644 docs/architecture.md create mode 100644 src/bin/main.rs create mode 100644 src/lib/domain/mod.rs create mode 100644 src/lib/domain/storage/entities.rs create mode 100644 src/lib/domain/storage/ports.rs create mode 100644 src/lib/domain/storage/services.rs create mode 100644 src/lib/lib.rs delete mode 100644 topics/p2p-transfer-protocol/README.md delete mode 100644 topics/port-scanner/README.md delete mode 100644 topics/tic-tac-toe/README.md delete mode 100644 topics/web-scraper/README.md diff --git a/.gitignore b/.gitignore index ad67955..0728338 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,8 @@ target # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ + + +# Added by cargo + +/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..4003251 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,197 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "anstream" +version = "0.6.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" + +[[package]] +name = "anstyle-parse" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a" +dependencies = [ + "anstyle", + "once_cell_polyfill", + "windows-sys", +] + +[[package]] +name = "clap" +version = "4.5.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623" +dependencies = [ + "clap_builder", +] + +[[package]] +name = "clap_builder" +version = "4.5.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a4c05b9e80c5ccd3a7ef080ad7b6ba7d6fc00a985b8b157197075677c82c7a0" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_lex" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" + +[[package]] +name = "colorchoice" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" + +[[package]] +name = "ferrisshare" +version = "0.0.0" +dependencies = [ + "clap", +] + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" + +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..f7369d3 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,7 @@ +[package] +name = "ferrisshare" +version = "0.0.0" +edition = "2024" + +[dependencies] +clap = "4.5.50" diff --git a/README.md b/README.md index 73204f0..dab6db1 100644 --- a/README.md +++ b/README.md @@ -8,12 +8,9 @@ Before the project deadline, students MUST turn in an [architecture document](#a ## Topics -Four different topics are proposed: +topics choosed: -1. [A networking port scanner](topics/port-scanner). 1. [A peer-to-peer file transfer protocol](topics/p2p-transfer-protocol). -1. [A web scraper](topics/web-scraper). -1. [A tic-tac-toe AI agent](topics/tic-tac-toe). ## Grade @@ -54,8 +51,9 @@ For example, a student picking the `p2p-transfer-protocol` topic MUST send a PR All submitted PRs will not be evaluated until the project deadline. They can thus be incomplete, rebased, closed, and modified until the project deadline. A pull request quality is evaluated on the following criteria: -* Commit messages: Each git commit message should provide a clear description and explanation of what the corresponding change brings and does. -* History: The pull request git history MUST be linear (no merge points) and SHOULD represent the narrative of the underlying work. It is a representation of the author's logical work in putting the implementation together. + +- Commit messages: Each git commit message should provide a clear description and explanation of what the corresponding change brings and does. +- History: The pull request git history MUST be linear (no merge points) and SHOULD represent the narrative of the underlying work. It is a representation of the author's logical work in putting the implementation together. A very good reference on the topic: https://github.blog/developer-skills/github/write-better-commits-build-better-projects/ @@ -67,7 +65,36 @@ The final grade is normalized against the selected topic's grade factor: `final_ For example, a grade of `8/10` for a topic which grade factor is `1.1` will generate a final grade of `8.8/10`. - ## Deadline All submitted PRs will be evaluated on October 30th, 2025 at 11:00 PM UTC. + +# A P2P Transfer Protocol + +## Description and Goal + +Build a CLI tool that allows two users on the same network to transfer a single file to each other. +The tool should be able to act as both the sender and the receiver, without a central server. + +It is expected for a sender to know the IP of the receiver, i.e. there is no discovery protocol. + +```shell +# Receiving a file on port 9000 +p2p-tool listen --port 9000 --output ./shared + +# Sending a file +p2p-tool send --file report.pdf --to 192.168.1.100 --port 9000 +``` + +## Hints and Suggestions + +- Define and document a simple networking protocol with a few commands. For example + - HELLO: For the sender to offer a file to the receiver. It takes a file size argument. + - ACK: For the receiver to tell the sender it is ready to receive a proposed file. + - NACK: For the receiver to reject a proposed file. + - SEND: Send, for the sender to actually send a file. It also takes a file size argument, that must match the `HELLO` offer. +- Start a receiving thread for every sender connection. + +## Grade Factor + +The grade factor for this project is _1_. diff --git a/docs/architecture.md b/docs/architecture.md new file mode 100644 index 0000000..c9e5053 --- /dev/null +++ b/docs/architecture.md @@ -0,0 +1,24 @@ +# FerrisShare - P2P File Transfer Protocol + +## 1. Project Definition + +### What is FerrisShare? + +FerrisShare is a peer-to-peer (P2P) file transfer command-line tool that enables direct file sharing between two computers on the same network without requiring a central server. Built in Rust, it prioritizes reliability, concurrent connection handling, and a simple custom protocol for efficient file transfers. + +### Goals + +The primary goals of this project are: + +1. **Direct P2P Transfer**: Enable users to send files directly to another machine using only an IP address and port number +2. **Bidirectional Operation**: Support both sending and receiving modes within a single binary +3. **Concurrent Handling**: Allow a receiver to accept multiple simultaneous file transfers from different senders +4. **Reliability**: Implement a simple protocol with handshake verification to ensure successful transfers +5. **Simplicity**: Provide a straightforward CLI interface similar to common networking tools + +### Non-Goals + +- **Discovery Protocol**: The sender must know the receiver's IP address (no automatic peer discovery) +- **Encryption**: File transfers are not encrypted (local network trust assumed) +- **Resume Support**: Interrupted transfers cannot be resumed +- **Multi-file Transfers**: Each transfer handles exactly one file diff --git a/src/bin/main.rs b/src/bin/main.rs new file mode 100644 index 0000000..e7a11a9 --- /dev/null +++ b/src/bin/main.rs @@ -0,0 +1,3 @@ +fn main() { + println!("Hello, world!"); +} diff --git a/src/lib/domain/mod.rs b/src/lib/domain/mod.rs new file mode 100644 index 0000000..30f61eb --- /dev/null +++ b/src/lib/domain/mod.rs @@ -0,0 +1 @@ +pub mod storage; diff --git a/src/lib/domain/storage/entities.rs b/src/lib/domain/storage/entities.rs new file mode 100644 index 0000000..6a43256 --- /dev/null +++ b/src/lib/domain/storage/entities.rs @@ -0,0 +1,5 @@ +pub struct File { + pub id: Uuid, + pub name: String, + pub size: u64, +} diff --git a/src/lib/domain/storage/ports.rs b/src/lib/domain/storage/ports.rs new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/src/lib/domain/storage/ports.rs @@ -0,0 +1 @@ + diff --git a/src/lib/domain/storage/services.rs b/src/lib/domain/storage/services.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/lib/lib.rs b/src/lib/lib.rs new file mode 100644 index 0000000..4f06c0e --- /dev/null +++ b/src/lib/lib.rs @@ -0,0 +1,2 @@ +pub mod domain; +pub mod infrastructure; diff --git a/topics/p2p-transfer-protocol/README.md b/topics/p2p-transfer-protocol/README.md deleted file mode 100644 index 8d57551..0000000 --- a/topics/p2p-transfer-protocol/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# A P2P Transfer Protocol - -## Description and Goal - -Build a CLI tool that allows two users on the same network to transfer a single file to each other. -The tool should be able to act as both the sender and the receiver, without a central server. - -It is expected for a sender to know the IP of the receiver, i.e. there is no discovery protocol. - -```shell -# Receiving a file on port 9000 -p2p-tool listen --port 9000 --output ./shared - -# Sending a file -p2p-tool send --file report.pdf --to 192.168.1.100 --port 9000 -``` - -## Hints and Suggestions - -- Define and document a simple networking protocol with a few commands. For example - - HELLO: For the sender to offer a file to the receiver. It takes a file size argument. - - ACK: For the receiver to tell the sender it is ready to receive a proposed file. - - NACK: For the receiver to reject a proposed file. - - SEND: Send, for the sender to actually send a file. It also takes a file size argument, that must match the `HELLO` offer. -- Start a receiving thread for every sender connection. - -## Grade Factor - -The grade factor for this project is *1*. diff --git a/topics/port-scanner/README.md b/topics/port-scanner/README.md deleted file mode 100644 index a2c94e4..0000000 --- a/topics/port-scanner/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# Network Port Scanner - -## Description and Goal - -Build a *multi-threaded* command-line application that scans a range of ports at a URL or IP to check if they are open. - -The tool displays all open ports at the target URL. - -```shell -Usage: scanner [OPTIONS] URL/IP - -Options: - -p, --ports TCP or UDP port ranges. Can be set multiple times. - -t, --threads Max number of threads. - -h, --help Print help (see more with '--help') - -V, --version Print version -``` - -## References - -[nmap](https://nmap.org/) - -## Grade Factor - -The grade factor for this project is *0.9*. diff --git a/topics/tic-tac-toe/README.md b/topics/tic-tac-toe/README.md deleted file mode 100644 index 357e40e..0000000 --- a/topics/tic-tac-toe/README.md +++ /dev/null @@ -1,25 +0,0 @@ -# A Simple Tic-Tac-Toe Agent - -## Description and Goal - -The goal is to build a command-line [Tic-Tac-Toe](https://en.wikipedia.org/wiki/Tic-tac-toe) game where a human player can play against an AI opponent. - -The AI should be "smart" enough to play optimally, meaning it can't be beaten and will either win or draw every game. - -## Game State Representation - -A simple 2D array or a 1D array of a fixed size is a good choice. - -## Agent Algorithm - -The recommended choice for the Agent algorithm is the `Minimax` algorithm with a depth-first search: The AI assumes its opponent will always make the best possible move, and it will choose its own move to minimize the maximum possible loss (or, conversely, maximize the minimum possible gain). - -A simpler, alternative option is the tree search one: The algorithm builds a game tree to explore all possible future moves. The agent assigns scores to the board's end states (+1 for an AI win, -1 for a human win, 0 for a draw) and "propagates" those scores up the tree to find the best move. - -## References - -[Minimax and tic-tac-toe](https://www.neverstopbuilding.com/blog/minimax) - -## Grade Factor - -The grade factor for this project is *1.2*. diff --git a/topics/web-scraper/README.md b/topics/web-scraper/README.md deleted file mode 100644 index 09a3b23..0000000 --- a/topics/web-scraper/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# A Web Scraper - -## Description and Goal - -Build a command-line application that can download and process web pages from a given list of starting URLs. - -The tool should use multiple threads to scrape pages concurrently, following links it finds along the way, up to a certain depth or page count. - -All scraped pages should be stored locally, in the same hierarchical order they were scraped: if page `A` points to page `B`, page `B` must be stored under a `B` folder located where page `A` is stored: - -```sheell -output/ - |- A.html - |- B/ - |--- B.html -``` - -```shell -webcrawl --output ./crawled_url --depth 10 -``` - -## Grade Factor - -The grade factor for this project is *1.1*. From 20cf7063dfef856606bd96ec8440b9741aff0aa5 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Wed, 29 Oct 2025 00:56:42 +0100 Subject: [PATCH 02/11] feat(network) : create ferrisshare protocol message parsing (#2) * Add initial project structure and define core modules for networking and storage * Implement ProtocolMessage and ProtocolError enums with TryFrom conversion for message parsing * Restore main function with REPL for protocol command input and message parsing * Update protocol command definitions to include checksum in YEET command --- docs/architecture.md | 41 +++++++ src/bin/main.rs | 3 - src/{lib => core}/domain/mod.rs | 1 + src/core/domain/network/entities.rs | 103 ++++++++++++++++++ src/core/domain/network/mod.rs | 1 + .../domain/network/ports.rs} | 0 src/core/domain/network/services.rs | 0 src/{lib => core}/domain/storage/entities.rs | 2 +- src/core/domain/storage/mod.rs | 1 + src/{lib => core}/domain/storage/ports.rs | 0 src/core/domain/storage/services.rs | 0 src/{lib => core}/lib.rs | 0 src/core/mod.rs | 1 + src/main.rs | 34 ++++++ 14 files changed, 183 insertions(+), 4 deletions(-) delete mode 100644 src/bin/main.rs rename src/{lib => core}/domain/mod.rs (50%) create mode 100644 src/core/domain/network/entities.rs create mode 100644 src/core/domain/network/mod.rs rename src/{lib/domain/storage/services.rs => core/domain/network/ports.rs} (100%) create mode 100644 src/core/domain/network/services.rs rename src/{lib => core}/domain/storage/entities.rs (77%) create mode 100644 src/core/domain/storage/mod.rs rename src/{lib => core}/domain/storage/ports.rs (100%) create mode 100644 src/core/domain/storage/services.rs rename src/{lib => core}/lib.rs (100%) create mode 100644 src/core/mod.rs create mode 100644 src/main.rs diff --git a/docs/architecture.md b/docs/architecture.md index c9e5053..b6bab1c 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -22,3 +22,44 @@ The primary goals of this project are: - **Encryption**: File transfers are not encrypted (local network trust assumed) - **Resume Support**: Interrupted transfers cannot be resumed - **Multi-file Transfers**: Each transfer handles exactly one file + +## **Choice of Dependencies** + +### Tokyo + +The project uses **Tokio**, an asynchronous runtime for Rust, to manage networking operations and concurrency. Tokio provides powerful primitives such as `TcpStream`, `TcpListener`, and asynchronous task spawning (`tokio::spawn`), allowing efficient, non-blocking I/O. + +This choice is motivated by several reasons: + +1. **Asynchronous I/O efficiency** – Tokio leverages Rust’s `async/await` syntax to handle thousands of simultaneous client connections without blocking threads. +2. **Task scheduling and runtime** – Tokio includes a lightweight task scheduler that runs asynchronous functions concurrently on a single or multi-threaded runtime. +3. **Ecosystem integration** – Many crates (like `warp`, `hyper`, `reqwest`, `tokio-tungstenite`) are built on top of Tokio, ensuring good compatibility and extensibility. +4. **Fine-grained control** – Tokio allows precise management of I/O events, making it suitable for custom protocol implementations, chunked file transfer, and streaming optimizations. +5. **Performance and safety** – The runtime is highly optimized for low-latency operations, while maintaining Rust’s guarantees of memory safety and thread safety. + +Without Tokio, the implementation would require manually managing threads and blocking I/O, which would be less efficient, harder to scale, and more error-prone. + +## **FerrisShare File Transfer Protocol** + +### **Overview** + +The protocol defines a simple, **text-based command layer** over TCP for transferring a single file between two peers on the same network. It relies on TCP for reliable, ordered delivery, while adding **application-level commands** to coordinate the transfer, manage file chunks, and confirm completion. The connection is **bi-directional**, allowing the receiver to respond directly through the same TCP stream. + +### **Protocol Commands** + +| Command | Sender | Arguments | Response | Description | +| ------------------------ | ------ | ------------------------------------------------------ | -------------------------- | ------------------------------------------------------------------------------------------------ | +| **HELLO** | Client | ` ` | `OK` / `NOPE ` | Initiates the file transfer and informs the receiver about the file name and size. | +| **OK** | Server | — | — | Confirms acceptance of the file transfer. | +| **NOPE** | Server | `` | — | Refuses the transfer (e.g., file exists, insufficient space). | +| **YEET** | Client | ` ` + binary data | `OK-HOUSTEN ` | Sends one block of the file to the receiver. Blocks are fixed or variable size. | +| **OK-HOUSTEN** | Server | `` | — | Confirms the block was received and written correctly. Optional but recommended for integrity. | +| **MISSION-ACCOMPLISHED** | Client | — | `SUCCESS` / `ERROR` | Marks the end of file transmission. The server verifies that all blocks were received correctly. | +| **BYE-RIS** | Either | — | — | Gracefully terminates or cancels the transfer. | + +### **Notes** + +- **TCP guarantees delivery**, but `CONFIRM` adds **application-level integrity verification**. +- **File is transferred in blocks (blobs)** to allow streaming of large files without memory overload. +- **Bi-directional communication** is handled over the same TCP connection; no additional socket is needed. +- Protocol is designed to be **minimal, readable, and extensible** for future features (resume, hash verification, multi-file support). diff --git a/src/bin/main.rs b/src/bin/main.rs deleted file mode 100644 index e7a11a9..0000000 --- a/src/bin/main.rs +++ /dev/null @@ -1,3 +0,0 @@ -fn main() { - println!("Hello, world!"); -} diff --git a/src/lib/domain/mod.rs b/src/core/domain/mod.rs similarity index 50% rename from src/lib/domain/mod.rs rename to src/core/domain/mod.rs index 30f61eb..37d4bff 100644 --- a/src/lib/domain/mod.rs +++ b/src/core/domain/mod.rs @@ -1 +1,2 @@ +pub mod network; pub mod storage; diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs new file mode 100644 index 0000000..6fa8f23 --- /dev/null +++ b/src/core/domain/network/entities.rs @@ -0,0 +1,103 @@ +use std::convert::TryFrom; + +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum ProtocolMessage { + Hello { + // "HELLO " + filename: String, + filesize: u64, + }, + Ok, // "OK" + Nope(String), // "NOPE " + Yeet { + // "YEET " + block_index: u64, + block_size: u32, + check_sum: u32, + }, + OkHousten(u64), // "OK-HOUSTEN " + MissionAccomplished, // "MISSION-ACCOMPLISHED" + Success, // "SUCCESS" + Error(String), // "ERROR " + ByeRis, // "BYE-RIS" +} + +#[derive(Debug)] +pub enum ProtocolError { + InvalidUtf8, + InvalidCommand, + MissingArgs, + InvalidNumber, + Incomplete, +} + +impl TryFrom<&str> for ProtocolMessage { + type Error = ProtocolError; + + fn try_from(value: &str) -> Result { + let line = value.trim(); + let tokens: Vec<&str> = line.split_whitespace().collect(); + + match tokens.first().copied() { + Some("HELLO") => { + let filename = tokens.get(1).ok_or(ProtocolError::MissingArgs)?.to_string(); + let filesize = tokens + .get(2) + .ok_or(ProtocolError::MissingArgs)? + .parse::() + .map_err(|_| ProtocolError::InvalidNumber)?; + Ok(ProtocolMessage::Hello { filename, filesize }) + } + Some("OK") => Ok(ProtocolMessage::Ok), + Some("NOPE") => { + if tokens.len() < 2 { + return Err(ProtocolError::MissingArgs); + } + let reason = tokens[1..].join(" "); + Ok(ProtocolMessage::Nope(reason)) + } + Some("YEET") => { + let block_index = tokens + .get(1) + .ok_or(ProtocolError::MissingArgs)? + .parse::() + .map_err(|_| ProtocolError::InvalidNumber)?; + let block_size = tokens + .get(2) + .ok_or(ProtocolError::MissingArgs)? + .parse::() + .map_err(|_| ProtocolError::InvalidNumber)?; + let check_sum = tokens + .get(3) + .ok_or(ProtocolError::MissingArgs)? + .parse::() + .map_err(|_| ProtocolError::InvalidNumber)?; + + Ok(ProtocolMessage::Yeet { + block_index, + block_size, + check_sum, + }) + } + Some("OK-HOUSTEN") => { + let block_index = tokens + .get(1) + .ok_or(ProtocolError::MissingArgs)? + .parse::() + .map_err(|_| ProtocolError::InvalidNumber)?; + Ok(ProtocolMessage::OkHousten(block_index)) + } + Some("MISSION-ACCOMPLISHED") => Ok(ProtocolMessage::MissionAccomplished), + Some("SUCCESS") => Ok(ProtocolMessage::Success), + Some("ERROR") => { + if tokens.len() < 2 { + return Err(ProtocolError::MissingArgs); + } + let reason = tokens[1..].join(" "); + Ok(ProtocolMessage::Error(reason)) + } + Some("BYE-RIS") => Ok(ProtocolMessage::ByeRis), + _ => return Err(ProtocolError::InvalidCommand), + } + } +} diff --git a/src/core/domain/network/mod.rs b/src/core/domain/network/mod.rs new file mode 100644 index 0000000..72a608a --- /dev/null +++ b/src/core/domain/network/mod.rs @@ -0,0 +1 @@ +pub mod entities; \ No newline at end of file diff --git a/src/lib/domain/storage/services.rs b/src/core/domain/network/ports.rs similarity index 100% rename from src/lib/domain/storage/services.rs rename to src/core/domain/network/ports.rs diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/lib/domain/storage/entities.rs b/src/core/domain/storage/entities.rs similarity index 77% rename from src/lib/domain/storage/entities.rs rename to src/core/domain/storage/entities.rs index 6a43256..47b5e3c 100644 --- a/src/lib/domain/storage/entities.rs +++ b/src/core/domain/storage/entities.rs @@ -1,5 +1,5 @@ pub struct File { - pub id: Uuid, + pub id: u64, pub name: String, pub size: u64, } diff --git a/src/core/domain/storage/mod.rs b/src/core/domain/storage/mod.rs new file mode 100644 index 0000000..0b8f0b5 --- /dev/null +++ b/src/core/domain/storage/mod.rs @@ -0,0 +1 @@ +pub mod entities; diff --git a/src/lib/domain/storage/ports.rs b/src/core/domain/storage/ports.rs similarity index 100% rename from src/lib/domain/storage/ports.rs rename to src/core/domain/storage/ports.rs diff --git a/src/core/domain/storage/services.rs b/src/core/domain/storage/services.rs new file mode 100644 index 0000000..e69de29 diff --git a/src/lib/lib.rs b/src/core/lib.rs similarity index 100% rename from src/lib/lib.rs rename to src/core/lib.rs diff --git a/src/core/mod.rs b/src/core/mod.rs new file mode 100644 index 0000000..d7abca1 --- /dev/null +++ b/src/core/mod.rs @@ -0,0 +1 @@ +pub mod domain; diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..dd251c4 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,34 @@ +use std::convert::TryFrom; +use std::io::{self, BufRead}; + +mod core; + +fn main() { + use crate::core::domain::network::entities::ProtocolMessage; + + println!("FerrisShare REPL: tape une commande protocole (ligne vide pour quitter)."); + println!( + "Exemples: HELLO foo.txt 42 | OK | NOPE raison | YEET 0 4096 12345 | OK-HOUSTEN 0 | MISSION-ACCOMPLISHED | SUCCESS | ERROR oops | BYE-RIS" + ); + + let stdin = io::stdin(); + for line in stdin.lock().lines() { + let line = match line { + Ok(l) => l, + Err(e) => { + eprintln!("I/O error: {e}"); + break; + } + }; + let trimmed = line.trim().to_string(); + if trimmed.is_empty() { + println!("Bye."); + break; + } + + match ProtocolMessage::try_from(trimmed.as_str()) { + Ok(msg) => println!("Parsed => {:?}", msg), + Err(err) => println!("Parse error => {:?}", err), + } + } +} From 7eb0d9f5aa7a578d130da4cc73060061c58b21c3 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Wed, 29 Oct 2025 13:38:59 +0100 Subject: [PATCH 03/11] feat(network) : add string message conversion for protocol and error handling (#3) * Add initial project structure and define core modules for networking and storage * Implement ProtocolMessage and ProtocolError enums with TryFrom conversion for message parsing * Restore main function with REPL for protocol command input and message parsing * Update protocol command definitions to include checksum in YEET command * Implement string conversion for ProtocolMessage and ProtocolError enums * Enhance REPL error handling and response formatting in main function --- src/core/domain/network/entities.rs | 34 +++++++++++++++++++++++++++++ src/main.rs | 14 ++++++++++-- 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 6fa8f23..4944c04 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -101,3 +101,37 @@ impl TryFrom<&str> for ProtocolMessage { } } } + +impl From for String { + fn from(msg: ProtocolMessage) -> Self { + match msg { + ProtocolMessage::Hello { filename, filesize } => { + format!("HELLO {} {}", filename, filesize) + } + ProtocolMessage::Ok => "OK".to_string(), + ProtocolMessage::Nope(reason) => format!("NOPE {}", reason), + ProtocolMessage::Yeet { + block_index, + block_size, + check_sum, + } => format!("YEET {} {} {}", block_index, block_size, check_sum), + ProtocolMessage::OkHousten(block_index) => format!("OK-HOUSTEN {}", block_index), + ProtocolMessage::MissionAccomplished => "MISSION-ACCOMPLISHED".to_string(), + ProtocolMessage::Success => "SUCCESS".to_string(), + ProtocolMessage::Error(reason) => format!("ERROR {}", reason), + ProtocolMessage::ByeRis => "BYE-RIS".to_string(), + } + } +} + +impl From for String { + fn from(err: ProtocolError) -> Self { + match err { + ProtocolError::InvalidUtf8 => "ERROR Invalid UTF-8 sequence".to_string(), + ProtocolError::InvalidCommand => "ERROR Invalid command".to_string(), + ProtocolError::MissingArgs => "ERROR Missing arguments".to_string(), + ProtocolError::InvalidNumber => "ERROR Invalid number format".to_string(), + ProtocolError::Incomplete => "ERROR Incomplete command".to_string(), + } + } +} diff --git a/src/main.rs b/src/main.rs index dd251c4..d4227d9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,8 @@ use std::convert::TryFrom; use std::io::{self, BufRead}; +use clap::error; + mod core; fn main() { @@ -27,8 +29,16 @@ fn main() { } match ProtocolMessage::try_from(trimmed.as_str()) { - Ok(msg) => println!("Parsed => {:?}", msg), - Err(err) => println!("Parse error => {:?}", err), + Ok(msg) => { + println!("Parsed => {:?}", msg); + let response: String = String::from(msg); + println!("Response => {}", response); + } + Err(err) => { + println!("Parse error => {:?}", err); + let error_response = String::from(err); + println!("Error response => {}", error_response); + } } } } From f10ed7769bfc03f481f558f55c931241aebd22a6 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 02:32:43 +0100 Subject: [PATCH 04/11] feat(network) : implement network service to manage channel connection and protocol command (#4) * feat(command): implement CommandError enum and CommandService trait with CommandServiceImpl * feat(network): add network service impl with mpsc channel buffer * chore(dependencies): update dependencies in Cargo.toml * feat(main): refactor main function to use async/await and integrate network service * feat(network): fix reject other connection and send message to sender * fix(command): return correct block index in OkHousten response --- Cargo.lock | 223 ++++++++++++++++++++++++++-- Cargo.toml | 2 + src/core/domain/command/entities.rs | 5 + src/core/domain/command/mod.rs | 3 + src/core/domain/command/ports.rs | 8 + src/core/domain/command/services.rs | 37 +++++ src/core/domain/mod.rs | 1 + src/core/domain/network/entities.rs | 33 ++++ src/core/domain/network/mod.rs | 4 +- src/core/domain/network/ports.rs | 27 ++++ src/core/domain/network/services.rs | 157 ++++++++++++++++++++ src/core/lib.rs | 2 - src/lib.rs | 1 + src/main.rs | 54 +++---- 14 files changed, 508 insertions(+), 49 deletions(-) create mode 100644 src/core/domain/command/entities.rs create mode 100644 src/core/domain/command/mod.rs create mode 100644 src/core/domain/command/ports.rs create mode 100644 src/core/domain/command/services.rs delete mode 100644 src/core/lib.rs create mode 100644 src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 4003251..07d1eb3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -38,7 +38,7 @@ version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2" dependencies = [ - "windows-sys", + "windows-sys 0.60.2", ] [[package]] @@ -49,9 +49,26 @@ checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a" dependencies = [ "anstyle", "once_cell_polyfill", - "windows-sys", + "windows-sys 0.60.2", ] +[[package]] +name = "async-trait" +version = "0.1.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "bytes" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" + [[package]] name = "clap" version = "4.5.50" @@ -89,7 +106,9 @@ checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" name = "ferrisshare" version = "0.0.0" dependencies = [ + "async-trait", "clap", + "tokio", ] [[package]] @@ -98,37 +117,171 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" +[[package]] +name = "libc" +version = "0.2.177" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" + +[[package]] +name = "mio" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.59.0", +] + [[package]] name = "once_cell_polyfill" version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" +[[package]] +name = "pin-project-lite" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" + +[[package]] +name = "proc-macro2" +version = "1.0.103" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "socket2" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881" +dependencies = [ + "libc", + "windows-sys 0.60.2", +] + [[package]] name = "strsim" version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +[[package]] +name = "syn" +version = "2.0.108" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da58917d35242480a05c2897064da0a80589a2a0476c9a3f2fdc83b53502e917" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tokio" +version = "1.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" +dependencies = [ + "bytes", + "libc", + "mio", + "pin-project-lite", + "socket2", + "tokio-macros", + "windows-sys 0.61.2", +] + +[[package]] +name = "tokio-macros" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "unicode-ident" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "462eeb75aeb73aea900253ce739c8e18a67423fadf006037cd3ff27e82748a06" + [[package]] name = "utf8parse" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + [[package]] name = "windows-link" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-sys" version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets", + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", ] [[package]] @@ -138,58 +291,106 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ "windows-link", - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + [[package]] name = "windows_aarch64_gnullvm" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + [[package]] name = "windows_aarch64_msvc" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + [[package]] name = "windows_i686_gnu" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + [[package]] name = "windows_i686_gnullvm" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + [[package]] name = "windows_i686_msvc" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + [[package]] name = "windows_x86_64_gnu" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + [[package]] name = "windows_x86_64_gnullvm" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + [[package]] name = "windows_x86_64_msvc" version = "0.53.1" diff --git a/Cargo.toml b/Cargo.toml index f7369d3..867f124 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,4 +4,6 @@ version = "0.0.0" edition = "2024" [dependencies] +async-trait = "0.1.89" clap = "4.5.50" +tokio = { version = "1", features = ["net", "rt-multi-thread", "rt", "fs", "io-util", "sync", "macros"] } diff --git a/src/core/domain/command/entities.rs b/src/core/domain/command/entities.rs new file mode 100644 index 0000000..4cb7a95 --- /dev/null +++ b/src/core/domain/command/entities.rs @@ -0,0 +1,5 @@ +#[derive(Debug)] +pub enum CommandError { + InvalidCommand, + ExecutionFailed(String), +} diff --git a/src/core/domain/command/mod.rs b/src/core/domain/command/mod.rs new file mode 100644 index 0000000..2c88553 --- /dev/null +++ b/src/core/domain/command/mod.rs @@ -0,0 +1,3 @@ +pub mod entities; +pub mod ports; +pub mod services; diff --git a/src/core/domain/command/ports.rs b/src/core/domain/command/ports.rs new file mode 100644 index 0000000..2ed184f --- /dev/null +++ b/src/core/domain/command/ports.rs @@ -0,0 +1,8 @@ +use crate::core::domain::{command::entities::CommandError, network::entities::ProtocolMessage}; + +pub trait CommandService: Send + Sync { + fn execute_protocol_command( + &self, + msg: &ProtocolMessage, + ) -> impl Future> + Send; +} diff --git a/src/core/domain/command/services.rs b/src/core/domain/command/services.rs new file mode 100644 index 0000000..e569843 --- /dev/null +++ b/src/core/domain/command/services.rs @@ -0,0 +1,37 @@ +use crate::core::domain::{ + command::{entities::CommandError, ports::CommandService}, + network::entities::ProtocolMessage, +}; + +#[derive(Clone)] +pub struct CommandServiceImpl {} + +impl CommandServiceImpl { + pub fn new() -> Self { + CommandServiceImpl {} + } +} + +impl CommandService for CommandServiceImpl { + async fn execute_protocol_command( + &self, + msg: &ProtocolMessage, + ) -> Result { + match msg { + ProtocolMessage::Hello { filename, filesize } => { + // Démarrer la logique de préparation de réception + Ok(ProtocolMessage::Ok) + } + ProtocolMessage::Yeet { + block_index, + block_size, + check_sum, + } => { + // Logique pour gérer la réception d'un bloc de données + Ok(ProtocolMessage::OkHousten(block_index.clone())) + } + // ... autres commandes + _ => Err(CommandError::InvalidCommand), + } + } +} diff --git a/src/core/domain/mod.rs b/src/core/domain/mod.rs index 37d4bff..5635d3d 100644 --- a/src/core/domain/mod.rs +++ b/src/core/domain/mod.rs @@ -1,2 +1,3 @@ +pub mod command; pub mod network; pub mod storage; diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 4944c04..2ef2057 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -135,3 +135,36 @@ impl From for String { } } } + +#[derive(Debug)] +pub enum NetworkError { + ListenerBindFailed(std::io::Error), + TransferInterrupted, + TooManyConnections, + ConnectionLost, + Timeout, + InvalidData, + ProtocolError(ProtocolError), +} + +impl From for NetworkError { + fn from(err: ProtocolError) -> Self { + NetworkError::ProtocolError(err) + } +} + +impl From for String { + fn from(err: NetworkError) -> Self { + match err { + NetworkError::ListenerBindFailed(e) => { + format!("ERROR Listener bind failed: {}", e) + } + NetworkError::TransferInterrupted => "ERROR Transfer interrupted".to_string(), + NetworkError::TooManyConnections => "ERROR Too many connections".to_string(), + NetworkError::ConnectionLost => "ERROR Connection lost".to_string(), + NetworkError::Timeout => "ERROR Timeout occurred".to_string(), + NetworkError::InvalidData => "ERROR Invalid data received".to_string(), + NetworkError::ProtocolError(proto_err) => String::from(proto_err), + } + } +} diff --git a/src/core/domain/network/mod.rs b/src/core/domain/network/mod.rs index 72a608a..2c88553 100644 --- a/src/core/domain/network/mod.rs +++ b/src/core/domain/network/mod.rs @@ -1 +1,3 @@ -pub mod entities; \ No newline at end of file +pub mod entities; +pub mod ports; +pub mod services; diff --git a/src/core/domain/network/ports.rs b/src/core/domain/network/ports.rs index e69de29..60ef1d2 100644 --- a/src/core/domain/network/ports.rs +++ b/src/core/domain/network/ports.rs @@ -0,0 +1,27 @@ +use std::io::Error; + +use crate::core::domain::network::entities::{NetworkError, ProtocolError, ProtocolMessage}; +use tokio::{ + net::TcpStream, + sync::mpsc::{Receiver, Sender}, +}; + +pub trait NetworkService { + fn listener( + &self, + addr: &str, + tx: Sender, + ) -> impl Future> + Send; + fn handler(&self, rx: Receiver) -> impl Future> + Send; + fn send_message( + &self, + stream: &mut TcpStream, + message: ProtocolMessage, + ) -> impl Future> + Send; +} + +pub trait NetworkClient { + fn connect(&self, addr: &str) -> Result<(), ProtocolError>; + fn disconnect(&self) -> Result<(), ProtocolError>; + fn receive_message(&self) -> Result; +} diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index e69de29..aae08e1 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -0,0 +1,157 @@ +use std::io::Error; +use std::sync::Arc; +use std::sync::atomic::AtomicBool; + +use tokio::io::AsyncBufReadExt; +use tokio::io::AsyncReadExt; +use tokio::io::AsyncWriteExt; +use tokio::io::BufReader; +use tokio::net::TcpListener; +use tokio::net::TcpStream; +use tokio::stream; +use tokio::sync::mpsc::Receiver; +use tokio::sync::mpsc::Sender; + +use crate::core::domain::command::ports::CommandService; +use crate::core::domain::network::entities::NetworkError; +use crate::core::domain::network::entities::ProtocolError; +use crate::core::domain::network::entities::ProtocolMessage; +use crate::core::domain::network::ports::NetworkService; + +#[derive(Debug, Clone)] +pub struct NetworkServiceImpl +where + C: CommandService, +{ + command_service: C, + active: Arc, +} + +impl NetworkServiceImpl +where + C: CommandService + Clone + Send + Sync + 'static, +{ + pub fn new(command_service: C) -> Self { + NetworkServiceImpl { + command_service, + active: Arc::new(AtomicBool::new(false)), + } + } +} + +impl NetworkService for NetworkServiceImpl +where + C: CommandService + Clone + Send + Sync + 'static, +{ + async fn listener( + &self, + addr: &str, + tx: tokio::sync::mpsc::Sender, + ) -> Result<(), NetworkError> { + let listener = TcpListener::bind(addr) + .await + .map_err(|e| NetworkError::ListenerBindFailed(e))?; + println!("Listening on {}", addr); + + loop { + let (mut stream, addr) = listener + .accept() + .await + .map_err(|_| NetworkError::ConnectionLost)?; + println!("New connection from {}", addr); + + // Vérifie si une connexion est déjà active + if !self.active.load(std::sync::atomic::Ordering::SeqCst) { + self.active.store(true, std::sync::atomic::Ordering::SeqCst); + } else { + eprintln!( + "A connection is already active. Rejecting new connection from {}", + addr + ); + let _ = stream.shutdown().await; + continue; + } + + // Essaye d’envoyer la connexion au handler + match tx.try_send(stream) { + Ok(_) => println!("Connection sent to handler."), + Err(e) => { + eprintln!("Failed to send connection to handler: {}", e); + // Optionally close the connection if it can't be handled + } + } + } + } + + async fn handler(&self, mut rx: Receiver) -> Result<(), Error> { + while let Some(stream) = rx.recv().await { + let mut reader = BufReader::new(stream); + let mut buf = Vec::new(); + + loop { + buf.clear(); + + // Read one line (terminated by '\n'); returns 0 on EOF + let n = reader.read_until(b'\n', &mut buf).await?; + if n == 0 { + println!("Client disconnected."); + break; + } + + // Trim trailing LF/CRLF + if buf.ends_with(b"\n") { + buf.pop(); + } + if buf.ends_with(b"\r") { + buf.pop(); + } + + // Convert to &str and parse into your ProtocolMessage + let line = std::str::from_utf8(&buf) + .map_err(|e| std::io::Error::new(std::io::ErrorKind::InvalidData, e))?; + + match ProtocolMessage::try_from(line) { + Ok(msg) => { + println!("Received message: {:?}", msg); + match self.command_service.execute_protocol_command(&msg).await { + Ok(response) => { + println!("Response: {:?}", response); + // Clone the underlying TcpStream to avoid moving reader + let mut stream_ref = reader.get_mut(); + match self.send_message(&mut stream_ref, response).await { + Ok(_) => println!("Response sent successfully."), + Err(e) => eprintln!("Failed to send response: {:?}", e), + } + } + Err(e) => { + println!("Command execution error: {:?}", e); + // Handle command execution error + } + } + } + Err(e) => { + // You have From for String + println!("Failed to parse message: {}", String::from(e)); + } + } + + println!("Received line: {}", line); + // handle msg here... + } + } + + Ok(()) + } + + async fn send_message( + &self, + stream: &mut TcpStream, + message: ProtocolMessage, + ) -> Result<(), ProtocolError> { + let msg_str = String::from(message) + "\n"; + if let Err(e) = stream.write_all(msg_str.as_bytes()).await { + eprintln!("Failed to send message: {}", e); + } + Ok(()) + } +} diff --git a/src/core/lib.rs b/src/core/lib.rs deleted file mode 100644 index 4f06c0e..0000000 --- a/src/core/lib.rs +++ /dev/null @@ -1,2 +0,0 @@ -pub mod domain; -pub mod infrastructure; diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..5a7ca06 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1 @@ +pub mod core; diff --git a/src/main.rs b/src/main.rs index d4227d9..ee6e408 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,44 +1,28 @@ -use std::convert::TryFrom; -use std::io::{self, BufRead}; +use std::sync::Arc; -use clap::error; +use tokio::{net::TcpStream, sync::mpsc}; -mod core; +use ferrisshare::core::domain::{ + command::services::CommandServiceImpl, + network::{ports::NetworkService as _, services::NetworkServiceImpl}, +}; -fn main() { - use crate::core::domain::network::entities::ProtocolMessage; +#[tokio::main] +async fn main() -> tokio::io::Result<()> { + let (tx, rx) = mpsc::channel::(1); - println!("FerrisShare REPL: tape une commande protocole (ligne vide pour quitter)."); - println!( - "Exemples: HELLO foo.txt 42 | OK | NOPE raison | YEET 0 4096 12345 | OK-HOUSTEN 0 | MISSION-ACCOMPLISHED | SUCCESS | ERROR oops | BYE-RIS" - ); + let command_service = CommandServiceImpl::new(); + let network_service = Arc::new(NetworkServiceImpl::new(command_service)); - let stdin = io::stdin(); - for line in stdin.lock().lines() { - let line = match line { - Ok(l) => l, - Err(e) => { - eprintln!("I/O error: {e}"); - break; - } - }; - let trimmed = line.trim().to_string(); - if trimmed.is_empty() { - println!("Bye."); - break; + let handler_service = Arc::clone(&network_service); + tokio::spawn(async move { + if let Err(e) = handler_service.handler(rx).await { + eprintln!("Handler error: {}", e); } + }); - match ProtocolMessage::try_from(trimmed.as_str()) { - Ok(msg) => { - println!("Parsed => {:?}", msg); - let response: String = String::from(msg); - println!("Response => {}", response); - } - Err(err) => { - println!("Parse error => {:?}", err); - let error_response = String::from(err); - println!("Error response => {}", error_response); - } - } + if let Err(e) = network_service.listener("127.0.0.1:9000", tx).await { + eprintln!("Listener error: {:?}", e); } + Ok(()) } From afd6866099223759b823e3485fcb657091601f93 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 05:49:08 +0100 Subject: [PATCH 05/11] feat(network) : implement trust protocol execution and transfer state management (#5) * feat(docs): update architecture document * feat(network): add TransferState enum to manage transfer states * feat(network): enhance protocol handling with a protocol trust and transfer state management * feat(entities): add YeetBlock struct with associated methods for block management * feat(network): trust protocol with command handling and update of transfer state --- docs/architecture.md | 2 + src/core/domain/command/ports.rs | 8 +- src/core/domain/command/services.rs | 87 ++++++++++++++-- src/core/domain/network/entities.rs | 52 ++++++---- src/core/domain/network/ports.rs | 5 + src/core/domain/network/services.rs | 150 ++++++++++++++++++++++++---- src/core/domain/storage/entities.rs | 17 ++++ 7 files changed, 268 insertions(+), 53 deletions(-) diff --git a/docs/architecture.md b/docs/architecture.md index b6bab1c..557a133 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -45,6 +45,8 @@ Without Tokio, the implementation would require manually managing threads and bl The protocol defines a simple, **text-based command layer** over TCP for transferring a single file between two peers on the same network. It relies on TCP for reliable, ordered delivery, while adding **application-level commands** to coordinate the transfer, manage file chunks, and confirm completion. The connection is **bi-directional**, allowing the receiver to respond directly through the same TCP stream. +FerrisShare uses an asynchronous channel (`mpsc::channel`) to transmit accepted TCP connections from the network listener to the handler responsible for processing protocol commands. This mechanism decouples the management of incoming connections from the business logic, ensures synchronization between asynchronous tasks, and guarantees that only one active connection is handled at a time. The channel thus facilitates internal communication and enhances the modularity of the network service. + ### **Protocol Commands** | Command | Sender | Arguments | Response | Description | diff --git a/src/core/domain/command/ports.rs b/src/core/domain/command/ports.rs index 2ed184f..6053a73 100644 --- a/src/core/domain/command/ports.rs +++ b/src/core/domain/command/ports.rs @@ -1,8 +1,14 @@ -use crate::core::domain::{command::entities::CommandError, network::entities::ProtocolMessage}; +use std::sync::Arc; + +use crate::core::domain::{ + command::entities::CommandError, + network::entities::{ProtocolMessage, TransferState}, +}; pub trait CommandService: Send + Sync { fn execute_protocol_command( &self, + state: Arc>, msg: &ProtocolMessage, ) -> impl Future> + Send; } diff --git a/src/core/domain/command/services.rs b/src/core/domain/command/services.rs index e569843..4b21a7a 100644 --- a/src/core/domain/command/services.rs +++ b/src/core/domain/command/services.rs @@ -1,6 +1,9 @@ +use std::sync::Arc; + use crate::core::domain::{ command::{entities::CommandError, ports::CommandService}, - network::entities::ProtocolMessage, + network::entities::{ProtocolMessage, TransferState}, + storage::entities::YeetBlock, }; #[derive(Clone)] @@ -15,22 +18,84 @@ impl CommandServiceImpl { impl CommandService for CommandServiceImpl { async fn execute_protocol_command( &self, + state: Arc>, msg: &ProtocolMessage, ) -> Result { match msg { - ProtocolMessage::Hello { filename, filesize } => { - // Démarrer la logique de préparation de réception + ProtocolMessage::Hello { + filename: _filename, + filesize, + } => { + println!("Execute HELLO command."); + let expected_blocks = (*filesize + 1023) / 1024; + let mut state_guard = state.lock().await; + println!( + "Setting state to Receiving with expected_blocks={}", + expected_blocks + ); + *state_guard = TransferState::Receiving { + expected_blocks, + focused_block: None, + received_blocks: Vec::with_capacity(expected_blocks as usize), + }; + + drop(state_guard); + Ok(ProtocolMessage::Ok) } - ProtocolMessage::Yeet { - block_index, - block_size, - check_sum, - } => { - // Logique pour gérer la réception d'un bloc de données - Ok(ProtocolMessage::OkHousten(block_index.clone())) + ProtocolMessage::Yeet(yeet_block) => { + let mut state_guard = state.lock().await; + let (expected_blocks, focused_block, received_blocks) = match &mut *state_guard { + TransferState::Receiving { + expected_blocks, + focused_block, + received_blocks, + } => (expected_blocks, focused_block, received_blocks), + _ => { + return Err(CommandError::ExecutionFailed( + "Error transfer state is not equal Receiving".to_string(), + )); + } + }; + + // Ensure we don't exceed the expected number of blocks. + if received_blocks.len() >= *expected_blocks as usize { + println!("Received all expected blocks."); + return Err(CommandError::ExecutionFailed( + "Received block index exceeds expected blocks".to_string(), + )); + } + + if let Some(focused_block) = focused_block + && !received_blocks.contains(&focused_block.index) + { + println!("Received expected block index: {}", focused_block.index); + return Err(CommandError::ExecutionFailed( + "Block not received. Can't proceed with next block.".to_string(), + )); + } + + // Reuse the mutable guard to update the state without locking again. + *state_guard = TransferState::Receiving { + expected_blocks: *expected_blocks, + focused_block: Some(yeet_block.clone()), + received_blocks: received_blocks.clone(), + }; + + drop(state_guard); + + Ok(ProtocolMessage::Ok) + } + ProtocolMessage::MissionAccomplished => { + let mut state_guard = state.lock().await; + *state_guard = TransferState::Finished; + drop(state_guard); + Ok(ProtocolMessage::Success) + } + ProtocolMessage::ByeRis => { + *state.lock().await = TransferState::Closed; + Ok(ProtocolMessage::ByeRis) } - // ... autres commandes _ => Err(CommandError::InvalidCommand), } } diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 2ef2057..9ad86ee 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -1,4 +1,6 @@ -use std::convert::TryFrom; +use std::{collections::HashSet, convert::TryFrom}; + +use crate::core::domain::storage::entities::YeetBlock; #[derive(Debug, Clone, PartialEq, Eq)] pub enum ProtocolMessage { @@ -7,14 +9,9 @@ pub enum ProtocolMessage { filename: String, filesize: u64, }, - Ok, // "OK" - Nope(String), // "NOPE " - Yeet { - // "YEET " - block_index: u64, - block_size: u32, - check_sum: u32, - }, + Ok, // "OK" + Nope(String), // "NOPE " + Yeet(YeetBlock), // "YEET " OkHousten(u64), // "OK-HOUSTEN " MissionAccomplished, // "MISSION-ACCOMPLISHED" Success, // "SUCCESS" @@ -73,11 +70,11 @@ impl TryFrom<&str> for ProtocolMessage { .parse::() .map_err(|_| ProtocolError::InvalidNumber)?; - Ok(ProtocolMessage::Yeet { + Ok(ProtocolMessage::Yeet(YeetBlock::new( block_index, block_size, check_sum, - }) + ))) } Some("OK-HOUSTEN") => { let block_index = tokens @@ -110,15 +107,14 @@ impl From for String { } ProtocolMessage::Ok => "OK".to_string(), ProtocolMessage::Nope(reason) => format!("NOPE {}", reason), - ProtocolMessage::Yeet { - block_index, - block_size, - check_sum, - } => format!("YEET {} {} {}", block_index, block_size, check_sum), + ProtocolMessage::Yeet(yeet_block) => format!( + "YEET {} {} {}", + yeet_block.index, yeet_block.size, yeet_block.checksum + ), ProtocolMessage::OkHousten(block_index) => format!("OK-HOUSTEN {}", block_index), ProtocolMessage::MissionAccomplished => "MISSION-ACCOMPLISHED".to_string(), ProtocolMessage::Success => "SUCCESS".to_string(), - ProtocolMessage::Error(reason) => format!("ERROR {}", reason), + ProtocolMessage::Error(reason) => format!("ERROR: {}", reason), ProtocolMessage::ByeRis => "BYE-RIS".to_string(), } } @@ -127,11 +123,11 @@ impl From for String { impl From for String { fn from(err: ProtocolError) -> Self { match err { - ProtocolError::InvalidUtf8 => "ERROR Invalid UTF-8 sequence".to_string(), - ProtocolError::InvalidCommand => "ERROR Invalid command".to_string(), - ProtocolError::MissingArgs => "ERROR Missing arguments".to_string(), - ProtocolError::InvalidNumber => "ERROR Invalid number format".to_string(), - ProtocolError::Incomplete => "ERROR Incomplete command".to_string(), + ProtocolError::InvalidUtf8 => "Invalid UTF-8 sequence".to_string(), + ProtocolError::InvalidCommand => "Invalid command".to_string(), + ProtocolError::MissingArgs => "Missing arguments".to_string(), + ProtocolError::InvalidNumber => "Invalid number format".to_string(), + ProtocolError::Incomplete => "Incomplete command".to_string(), } } } @@ -168,3 +164,15 @@ impl From for String { } } } + +#[derive(Debug, Clone)] +pub enum TransferState { + Idle, + Receiving { + expected_blocks: u64, + focused_block: Option, + received_blocks: Vec, + }, + Finished, + Closed, +} diff --git a/src/core/domain/network/ports.rs b/src/core/domain/network/ports.rs index 60ef1d2..fd0f22e 100644 --- a/src/core/domain/network/ports.rs +++ b/src/core/domain/network/ports.rs @@ -13,6 +13,11 @@ pub trait NetworkService { tx: Sender, ) -> impl Future> + Send; fn handler(&self, rx: Receiver) -> impl Future> + Send; + fn trust_protocol( + &self, + stream: &mut TcpStream, + message: ProtocolMessage, + ) -> impl Future> + Send; fn send_message( &self, stream: &mut TcpStream, diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index aae08e1..6a070a2 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -3,19 +3,18 @@ use std::sync::Arc; use std::sync::atomic::AtomicBool; use tokio::io::AsyncBufReadExt; -use tokio::io::AsyncReadExt; use tokio::io::AsyncWriteExt; use tokio::io::BufReader; use tokio::net::TcpListener; use tokio::net::TcpStream; -use tokio::stream; +use tokio::sync::Mutex; use tokio::sync::mpsc::Receiver; -use tokio::sync::mpsc::Sender; use crate::core::domain::command::ports::CommandService; use crate::core::domain::network::entities::NetworkError; use crate::core::domain::network::entities::ProtocolError; use crate::core::domain::network::entities::ProtocolMessage; +use crate::core::domain::network::entities::TransferState; use crate::core::domain::network::ports::NetworkService; #[derive(Debug, Clone)] @@ -25,6 +24,7 @@ where { command_service: C, active: Arc, + transfer_state: Arc>, } impl NetworkServiceImpl @@ -35,8 +35,15 @@ where NetworkServiceImpl { command_service, active: Arc::new(AtomicBool::new(false)), + transfer_state: Arc::new(Mutex::new(TransferState::Idle)), } } + + pub async fn reset_transfer_state(&self) { + let mut state_guard = self.transfer_state.lock().await; + *state_guard = TransferState::Idle; + drop(state_guard); + } } impl NetworkService for NetworkServiceImpl @@ -95,6 +102,10 @@ where let n = reader.read_until(b'\n', &mut buf).await?; if n == 0 { println!("Client disconnected."); + // Mark connection as inactive so listener can accept new ones + self.active + .store(false, std::sync::atomic::Ordering::SeqCst); + self.reset_transfer_state().await; break; } @@ -110,28 +121,66 @@ where let line = std::str::from_utf8(&buf) .map_err(|e| std::io::Error::new(std::io::ErrorKind::InvalidData, e))?; + let stream_ref = &mut reader.get_mut(); + match ProtocolMessage::try_from(line) { Ok(msg) => { println!("Received message: {:?}", msg); - match self.command_service.execute_protocol_command(&msg).await { - Ok(response) => { - println!("Response: {:?}", response); - // Clone the underlying TcpStream to avoid moving reader - let mut stream_ref = reader.get_mut(); - match self.send_message(&mut stream_ref, response).await { - Ok(_) => println!("Response sent successfully."), - Err(e) => eprintln!("Failed to send response: {:?}", e), - } - } - Err(e) => { - println!("Command execution error: {:?}", e); - // Handle command execution error - } + + if let Err(e) = self.trust_protocol(stream_ref, msg).await { + eprintln!("Error handling protocol message: {:?}", e); + let _ = self + .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) + .await; } } Err(e) => { - // You have From for String - println!("Failed to parse message: {}", String::from(e)); + let mut state_guard = self.transfer_state.lock().await; + let was_receiving = match &mut *state_guard { + TransferState::Receiving { + expected_blocks, + focused_block, + received_blocks, + } => { + println!( + "In Receiving Binary from YeetBlock: expected_blocks={}, focused_block={:?}, received_blocks={:?}, binary data={}", + expected_blocks, focused_block, received_blocks, line + ); + + // TODO: Implement storage of binary data block here + + if let Some(focused_block) = focused_block { + if received_blocks.contains(&focused_block.index) { + println!( + "Block {} already received, ignoring.", + focused_block.index + ); + } else { + println!("Stored binary data block: {:?}", focused_block); + received_blocks.push(focused_block.index); + *state_guard = TransferState::Receiving { + expected_blocks: *expected_blocks, + focused_block: None, + received_blocks: received_blocks.clone(), + }; + } + } else { + println!("No focused block to store data for."); + } + + drop(state_guard); + + true + } + _ => false, + }; + + if !was_receiving { + eprintln!("Failed to parse message: {:?}", e); + let _ = self + .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) + .await; + } } } @@ -140,6 +189,69 @@ where } } + self.active + .store(false, std::sync::atomic::Ordering::SeqCst); + self.reset_transfer_state().await; + Ok(()) + } + + async fn trust_protocol( + &self, + stream: &mut TcpStream, + message: ProtocolMessage, + ) -> Result<(), ProtocolError> { + let guard = self.transfer_state.lock().await; + match *guard { + TransferState::Idle => { + if !matches!(message, ProtocolMessage::Hello { .. }) { + return Err(ProtocolError::InvalidCommand); + } else { + println!("Transitioning from Idle to Receiving state."); + } + } + TransferState::Receiving { .. } => { + // Accept either a Yeet message or a MissionAccomplished message while receiving. + if !(matches!(message, ProtocolMessage::Yeet { .. }) + || matches!(message, ProtocolMessage::MissionAccomplished)) + { + return Err(ProtocolError::InvalidCommand); + } else { + println!("In Receiving state, processing Yeet or MissionAccomplished."); + } + } + TransferState::Finished => { + if !matches!(message, ProtocolMessage::ByeRis) { + return Err(ProtocolError::InvalidCommand); + } else { + println!("Transitioning from Finished to Closed state."); + } + } + _ => { + return Err(ProtocolError::InvalidCommand); + } + } + + drop(guard); // Release the lock before awaiting + + println!("Executing command: {:?}", message); + match self + .command_service + .execute_protocol_command(Arc::clone(&self.transfer_state), &message) + .await + { + Ok(response) => { + println!("Response: {:?}", response); + // Clone the underlying TcpStream to avoid moving reader + match self.send_message(stream, response).await { + Ok(_) => println!("Response sent successfully."), + Err(e) => eprintln!("Failed to send response: {:?}", e), + } + } + Err(e) => { + println!("Command execution error: {:?}", e); + // Handle command execution error + } + } Ok(()) } diff --git a/src/core/domain/storage/entities.rs b/src/core/domain/storage/entities.rs index 47b5e3c..2fe089b 100644 --- a/src/core/domain/storage/entities.rs +++ b/src/core/domain/storage/entities.rs @@ -1,3 +1,20 @@ +#[derive(Debug, Clone, PartialEq, Eq, Hash)] +pub struct YeetBlock { + pub index: u64, + pub size: u32, + pub checksum: u32, +} + +impl YeetBlock { + pub fn new(index: u64, size: u32, checksum: u32) -> Self { + YeetBlock { + index, + size, + checksum, + } + } +} + pub struct File { pub id: u64, pub name: String, From 42dbf558bee14d0ef6d7174056524d6600b83bbf Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 15:03:59 +0100 Subject: [PATCH 06/11] feat(storage): implement storage repository to write file during FerrisShare protocol (#6) * feat(storage): add StorageError enum with Display implementation and update StorageRepository trait * feat(storage): implement FSStorageRepository with file handling and sanitization * feat(command): update CommandService trait to include process_binary_data method * feat(network): make command_service public in NetworkServiceImpl * feat(application): implement FerrisShareState struct with command and network services * refactor(network): remove unused HashSet import from entities.rs * feat(main): refactor main function to initialize services with storage repository * feat(storage): add Display implementation for StorageError enum * feat(command): implement From trait for CommandError to String conversion * feat(command): update execute_protocol_command to return OkHousten and enhance process_binary_data with error handling * refactor(network): handle process write binary data and closing connection on sender close it * feat(network): enhance TransferState to track current file during data transfer --- src/application/ferrisshare_state.rs | 24 +++ src/application/mod.rs | 1 + src/core/domain/command/entities.rs | 9 ++ src/core/domain/command/ports.rs | 7 +- src/core/domain/command/services.rs | 122 +++++++++++--- src/core/domain/network/entities.rs | 3 +- src/core/domain/network/ports.rs | 2 +- src/core/domain/network/services.rs | 67 +++----- src/core/domain/storage/entities.rs | 29 ++++ src/core/domain/storage/mod.rs | 1 + src/core/domain/storage/ports.rs | 14 ++ src/core/domain/storage/services.rs | 0 src/infra/mod.rs | 1 + .../repositories/fs/fs_storage_repository.rs | 149 ++++++++++++++++++ src/infra/repositories/fs/mod.rs | 1 + src/infra/repositories/mod.rs | 1 + src/lib.rs | 2 + src/main.rs | 33 +++- 18 files changed, 392 insertions(+), 74 deletions(-) create mode 100644 src/application/ferrisshare_state.rs create mode 100644 src/application/mod.rs delete mode 100644 src/core/domain/storage/services.rs create mode 100644 src/infra/mod.rs create mode 100644 src/infra/repositories/fs/fs_storage_repository.rs create mode 100644 src/infra/repositories/fs/mod.rs create mode 100644 src/infra/repositories/mod.rs diff --git a/src/application/ferrisshare_state.rs b/src/application/ferrisshare_state.rs new file mode 100644 index 0000000..f3e3c47 --- /dev/null +++ b/src/application/ferrisshare_state.rs @@ -0,0 +1,24 @@ +use crate::core::domain::{command::ports::CommandService, network::ports::NetworkService}; + +#[derive(Clone, Copy)] +pub struct FerrisShareState +where + C: CommandService, + N: NetworkService, +{ + pub command_service: C, + pub network_service: N, +} + +impl FerrisShareState +where + C: CommandService + Clone + Send + Sync + 'static, + N: NetworkService + Clone + Send + Sync + 'static, +{ + pub fn new(command_service: C, network_service: N) -> Self { + FerrisShareState { + command_service, + network_service, + } + } +} diff --git a/src/application/mod.rs b/src/application/mod.rs new file mode 100644 index 0000000..0d27030 --- /dev/null +++ b/src/application/mod.rs @@ -0,0 +1 @@ +pub mod ferrisshare_state; diff --git a/src/core/domain/command/entities.rs b/src/core/domain/command/entities.rs index 4cb7a95..e9fd5d4 100644 --- a/src/core/domain/command/entities.rs +++ b/src/core/domain/command/entities.rs @@ -3,3 +3,12 @@ pub enum CommandError { InvalidCommand, ExecutionFailed(String), } + +impl From for String { + fn from(err: CommandError) -> Self { + match err { + CommandError::InvalidCommand => "Invalid command".to_string(), + CommandError::ExecutionFailed(msg) => format!("Command execution failed: {}", msg), + } + } +} diff --git a/src/core/domain/command/ports.rs b/src/core/domain/command/ports.rs index 6053a73..14e2e59 100644 --- a/src/core/domain/command/ports.rs +++ b/src/core/domain/command/ports.rs @@ -10,5 +10,10 @@ pub trait CommandService: Send + Sync { &self, state: Arc>, msg: &ProtocolMessage, - ) -> impl Future> + Send; + ) -> impl Future> + Send + Sync; + fn process_binary_data( + &self, + state: Arc>, + data: &[u8], + ) -> impl Future>; } diff --git a/src/core/domain/command/services.rs b/src/core/domain/command/services.rs index 4b21a7a..ceeb7a7 100644 --- a/src/core/domain/command/services.rs +++ b/src/core/domain/command/services.rs @@ -3,19 +3,30 @@ use std::sync::Arc; use crate::core::domain::{ command::{entities::CommandError, ports::CommandService}, network::entities::{ProtocolMessage, TransferState}, - storage::entities::YeetBlock, + storage::ports::StorageRepository, }; #[derive(Clone)] -pub struct CommandServiceImpl {} +pub struct CommandServiceImpl +where + C: StorageRepository, +{ + storage: C, +} -impl CommandServiceImpl { - pub fn new() -> Self { - CommandServiceImpl {} +impl CommandServiceImpl +where + C: StorageRepository + Clone + Send + Sync + 'static, +{ + pub fn new(storage: C) -> Self { + CommandServiceImpl { storage } } } -impl CommandService for CommandServiceImpl { +impl CommandService for CommandServiceImpl +where + C: StorageRepository + Clone + Send + Sync + 'static, +{ async fn execute_protocol_command( &self, state: Arc>, @@ -34,6 +45,7 @@ impl CommandService for CommandServiceImpl { expected_blocks ); *state_guard = TransferState::Receiving { + current_file: _filename.clone(), expected_blocks, focused_block: None, received_blocks: Vec::with_capacity(expected_blocks as usize), @@ -45,18 +57,25 @@ impl CommandService for CommandServiceImpl { } ProtocolMessage::Yeet(yeet_block) => { let mut state_guard = state.lock().await; - let (expected_blocks, focused_block, received_blocks) = match &mut *state_guard { - TransferState::Receiving { - expected_blocks, - focused_block, - received_blocks, - } => (expected_blocks, focused_block, received_blocks), - _ => { - return Err(CommandError::ExecutionFailed( - "Error transfer state is not equal Receiving".to_string(), - )); - } - }; + let (expected_blocks, focused_block, received_blocks, current_file) = + match &mut *state_guard { + TransferState::Receiving { + expected_blocks, + focused_block, + received_blocks, + current_file, + } => ( + expected_blocks, + focused_block, + received_blocks, + current_file, + ), + _ => { + return Err(CommandError::ExecutionFailed( + "Error transfer state is not equal Receiving".to_string(), + )); + } + }; // Ensure we don't exceed the expected number of blocks. if received_blocks.len() >= *expected_blocks as usize { @@ -77,6 +96,7 @@ impl CommandService for CommandServiceImpl { // Reuse the mutable guard to update the state without locking again. *state_guard = TransferState::Receiving { + current_file: current_file.clone(), expected_blocks: *expected_blocks, focused_block: Some(yeet_block.clone()), received_blocks: received_blocks.clone(), @@ -84,10 +104,22 @@ impl CommandService for CommandServiceImpl { drop(state_guard); - Ok(ProtocolMessage::Ok) + Ok(ProtocolMessage::OkHousten(yeet_block.index)) } ProtocolMessage::MissionAccomplished => { let mut state_guard = state.lock().await; + let current_file = match &*state_guard { + TransferState::Receiving { current_file, .. } => current_file, + _ => { + return Err(CommandError::ExecutionFailed( + "Error transfer state is not equal Receiving".to_string(), + )); + } + }; + + self.storage.finalize(current_file).await.map_err(|e| { + CommandError::ExecutionFailed(format!("Storage error: {:?}", e)) + })?; *state_guard = TransferState::Finished; drop(state_guard); Ok(ProtocolMessage::Success) @@ -99,4 +131,56 @@ impl CommandService for CommandServiceImpl { _ => Err(CommandError::InvalidCommand), } } + + async fn process_binary_data( + &self, + state: Arc>, + data: &[u8], + ) -> Result<(), CommandError> { + let mut state_guard = state.lock().await; + let (expected_blocks, focused_block, received_blocks, current_file) = + match &mut *state_guard { + TransferState::Receiving { + expected_blocks, + focused_block, + received_blocks, + current_file, + } => ( + expected_blocks, + focused_block, + received_blocks, + current_file, + ), + _ => { + return Err(CommandError::ExecutionFailed( + "Error transfer state is not equal Receiving".to_string(), + )); + } + }; + if let Some(focused_block) = focused_block { + if received_blocks.contains(&focused_block.index) { + println!("Block {} already received, ignoring.", focused_block.index); + } else { + println!("Stored binary data block: {:?}", focused_block); + self.storage + .write_block(current_file, focused_block, data) + .await + .map_err(|e| { + CommandError::ExecutionFailed(format!("Storage error: {:?}", e)) + })?; + + received_blocks.push(focused_block.index); + *state_guard = TransferState::Receiving { + current_file: current_file.clone(), + expected_blocks: *expected_blocks, + focused_block: None, + received_blocks: received_blocks.clone(), + }; + } + } else { + println!("No focused block to store data for."); + } + + Ok(()) + } } diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 9ad86ee..467a16e 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -1,4 +1,4 @@ -use std::{collections::HashSet, convert::TryFrom}; +use std::convert::TryFrom; use crate::core::domain::storage::entities::YeetBlock; @@ -169,6 +169,7 @@ impl From for String { pub enum TransferState { Idle, Receiving { + current_file: String, expected_blocks: u64, focused_block: Option, received_blocks: Vec, diff --git a/src/core/domain/network/ports.rs b/src/core/domain/network/ports.rs index fd0f22e..56f4c2e 100644 --- a/src/core/domain/network/ports.rs +++ b/src/core/domain/network/ports.rs @@ -12,7 +12,7 @@ pub trait NetworkService { addr: &str, tx: Sender, ) -> impl Future> + Send; - fn handler(&self, rx: Receiver) -> impl Future> + Send; + fn handler(&self, rx: Receiver) -> impl Future>; fn trust_protocol( &self, stream: &mut TcpStream, diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index 6a070a2..d3abdee 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -22,7 +22,7 @@ pub struct NetworkServiceImpl where C: CommandService, { - command_service: C, + pub command_service: C, active: Arc, transfer_state: Arc>, } @@ -133,59 +133,38 @@ where .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) .await; } - } - Err(e) => { - let mut state_guard = self.transfer_state.lock().await; - let was_receiving = match &mut *state_guard { - TransferState::Receiving { - expected_blocks, - focused_block, - received_blocks, - } => { - println!( - "In Receiving Binary from YeetBlock: expected_blocks={}, focused_block={:?}, received_blocks={:?}, binary data={}", - expected_blocks, focused_block, received_blocks, line - ); - - // TODO: Implement storage of binary data block here - if let Some(focused_block) = focused_block { - if received_blocks.contains(&focused_block.index) { - println!( - "Block {} already received, ignoring.", - focused_block.index - ); - } else { - println!("Stored binary data block: {:?}", focused_block); - received_blocks.push(focused_block.index); - *state_guard = TransferState::Receiving { - expected_blocks: *expected_blocks, - focused_block: None, - received_blocks: received_blocks.clone(), - }; - } - } else { - println!("No focused block to store data for."); - } + let guard = self.transfer_state.lock().await; + match *guard { + TransferState::Closed => { + println!("Closing connection."); + self.active + .store(false, std::sync::atomic::Ordering::SeqCst); + drop(guard); - drop(state_guard); + self.reset_transfer_state().await; + let _ = stream_ref.shutdown().await; - true + break; } - _ => false, - }; - - if !was_receiving { - eprintln!("Failed to parse message: {:?}", e); + _ => { + continue; + } + } + } + Err(_) => { + if let Err(e) = self + .command_service + .process_binary_data(Arc::clone(&self.transfer_state), &buf) + .await + { + eprintln!("Error processing binary data: {:?}", e); let _ = self .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) .await; } } } - - println!("Received line: {}", line); - // handle msg here... } } diff --git a/src/core/domain/storage/entities.rs b/src/core/domain/storage/entities.rs index 2fe089b..9a51347 100644 --- a/src/core/domain/storage/entities.rs +++ b/src/core/domain/storage/entities.rs @@ -20,3 +20,32 @@ pub struct File { pub name: String, pub size: u64, } + +#[derive(Debug)] +pub enum StorageError { + FileNotFound, + PermissionDenied, + AlreadyExists, + AbsolutePathNotAllowed, + ParentDirSegmentNotAllowed, + InvalidFilename, + Unknown(String), +} + +impl From for String { + fn from(error: StorageError) -> Self { + match error { + StorageError::FileNotFound => "File not found".into(), + StorageError::PermissionDenied => "Permission denied".into(), + StorageError::AlreadyExists => "File already exists".into(), + StorageError::AbsolutePathNotAllowed => { + "Absolute paths are not allowed in filenames".into() + } + StorageError::ParentDirSegmentNotAllowed => { + "Parent directory segments are not allowed in filenames".into() + } + StorageError::InvalidFilename => "Invalid filename".into(), + StorageError::Unknown(msg) => format!("Unknown storage error: {}", msg), + } + } +} diff --git a/src/core/domain/storage/mod.rs b/src/core/domain/storage/mod.rs index 0b8f0b5..3ec695b 100644 --- a/src/core/domain/storage/mod.rs +++ b/src/core/domain/storage/mod.rs @@ -1 +1,2 @@ pub mod entities; +pub mod ports; diff --git a/src/core/domain/storage/ports.rs b/src/core/domain/storage/ports.rs index 8b13789..30cea5a 100644 --- a/src/core/domain/storage/ports.rs +++ b/src/core/domain/storage/ports.rs @@ -1 +1,15 @@ +use crate::core::domain::storage::entities::{StorageError, YeetBlock}; +pub trait StorageRepository { + fn open_file(&self, filename: &str) -> impl Future> + Send; + fn write_block( + &self, + filename: &str, + block: &YeetBlock, + data: &[u8], + ) -> impl Future> + Send; + fn finalize( + &self, + filename: &str, + ) -> impl Future> + Send + Sync; +} diff --git a/src/core/domain/storage/services.rs b/src/core/domain/storage/services.rs deleted file mode 100644 index e69de29..0000000 diff --git a/src/infra/mod.rs b/src/infra/mod.rs new file mode 100644 index 0000000..21b552a --- /dev/null +++ b/src/infra/mod.rs @@ -0,0 +1 @@ +pub mod repositories; diff --git a/src/infra/repositories/fs/fs_storage_repository.rs b/src/infra/repositories/fs/fs_storage_repository.rs new file mode 100644 index 0000000..089a72d --- /dev/null +++ b/src/infra/repositories/fs/fs_storage_repository.rs @@ -0,0 +1,149 @@ +use std::future::Future; +use std::path::{Path, PathBuf}; +use tokio::io::{AsyncSeekExt, AsyncWriteExt}; + +use crate::core::domain::storage::{ + entities::{StorageError, YeetBlock}, + ports::StorageRepository, +}; + +#[derive(Clone)] +pub struct FSStorageRepository { + base_path: String, +} + +impl FSStorageRepository { + pub fn new(base_path: String) -> Self { + FSStorageRepository { base_path } + } + + // helper pour sécuriser le filename (simple) + fn sanitize_filename(filename: &str) -> Result<(), StorageError> { + let p = Path::new(filename); + // refuse les chemins absolus ou qui remontent (..). + if p.is_absolute() { + return Err(StorageError::AbsolutePathNotAllowed); + } + if p.components() + .any(|c| matches!(c, std::path::Component::ParentDir)) + { + return Err(StorageError::ParentDirSegmentNotAllowed); + } + // Optionnel: s'assurer qu'on a bien un file name (pas "dir/") + if p.file_name().is_none() { + return Err(StorageError::InvalidFilename); + } + Ok(()) + } + + fn file_path_for(&self, filename: &str) -> PathBuf { + PathBuf::from(&self.base_path).join(filename) + } +} + +impl StorageRepository for FSStorageRepository { + fn open_file(&self, filename: &str) -> impl Future> + Send { + let filename = filename.to_string(); + + async move { + // sanitize + if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { + return Err(e); + } + + let path = self.file_path_for(&filename); + // Use a temporary extension during transfer + let part_path = path.with_extension("ferrisshare"); + + // create parent dirs if needed + if let Some(parent) = path.parent() { + if let Err(e) = tokio::fs::create_dir_all(parent).await { + return Err(StorageError::Unknown(format!( + "Failed to create dir: {}", + e + ))); + } + } + + match tokio::fs::File::create(&part_path).await { + Ok(_) => Ok(()), + Err(e) => Err(StorageError::Unknown(e.to_string())), + } + } + } + + fn write_block( + &self, + filename: &str, + block: &YeetBlock, + data: &[u8], + ) -> impl Future> + Send { + let filename = filename.to_string(); + let data = data.to_vec(); + let block_index = block.index; + + async move { + // sanitize + if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { + return Err(e); + } + + let path = self.file_path_for(&filename); + // write into a .ferrisshare temporary file while transferring + let part_path = path.with_extension("ferrisshare"); + + // ensure parent dir exists before open + if let Some(parent) = path.parent() { + if let Err(e) = tokio::fs::create_dir_all(parent).await { + return Err(StorageError::Unknown(format!( + "Failed to create dir: {}", + e + ))); + } + } + + match tokio::fs::OpenOptions::new() + .create(true) + .write(true) + .open(&part_path) + .await + { + Ok(mut file) => { + let offset = block_index * block.size as u64; + if let Err(e) = file.seek(std::io::SeekFrom::Start(offset)).await { + return Err(StorageError::Unknown(e.to_string())); + } + if let Err(e) = file.write_all(&data).await { + return Err(StorageError::Unknown(e.to_string())); + } + // flush si tu veux (optionnel) + if let Err(e) = file.flush().await { + return Err(StorageError::Unknown(e.to_string())); + } + Ok(()) + } + Err(e) => Err(StorageError::Unknown(e.to_string())), + } + } + } + + fn finalize(&self, filename: &str) -> impl Future> + Send { + let base = self.base_path.clone(); + let filename = filename.to_string(); + + async move { + // sanitize + if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { + return Err(e); + } + + let path = PathBuf::from(&base).join(&filename); + // Rename the .ferrisshare temp file to the final filename + let part = path.with_extension("ferrisshare"); + match tokio::fs::rename(&part, &path).await { + Ok(_) => Ok(()), + Err(e) => Err(StorageError::Unknown(e.to_string())), + } + } + } +} diff --git a/src/infra/repositories/fs/mod.rs b/src/infra/repositories/fs/mod.rs new file mode 100644 index 0000000..fa32d2c --- /dev/null +++ b/src/infra/repositories/fs/mod.rs @@ -0,0 +1 @@ +pub mod fs_storage_repository; diff --git a/src/infra/repositories/mod.rs b/src/infra/repositories/mod.rs new file mode 100644 index 0000000..d521fbd --- /dev/null +++ b/src/infra/repositories/mod.rs @@ -0,0 +1 @@ +pub mod fs; diff --git a/src/lib.rs b/src/lib.rs index 5a7ca06..6ab7089 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1 +1,3 @@ +pub mod application; pub mod core; +pub mod infra; diff --git a/src/main.rs b/src/main.rs index ee6e408..1caf70a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,26 +2,43 @@ use std::sync::Arc; use tokio::{net::TcpStream, sync::mpsc}; -use ferrisshare::core::domain::{ - command::services::CommandServiceImpl, - network::{ports::NetworkService as _, services::NetworkServiceImpl}, +use ferrisshare::{ + core::domain::{ + command::services::CommandServiceImpl, + network::{ports::NetworkService as _, services::NetworkServiceImpl}, + }, + infra::repositories::fs::fs_storage_repository::FSStorageRepository, }; #[tokio::main] async fn main() -> tokio::io::Result<()> { let (tx, rx) = mpsc::channel::(1); - let command_service = CommandServiceImpl::new(); - let network_service = Arc::new(NetworkServiceImpl::new(command_service)); + let storage_repo = FSStorageRepository::new("./public/".into()); + + let command_service = CommandServiceImpl::new(storage_repo); + let network_service = NetworkServiceImpl::new(command_service); + + let ferrisshare_state = Arc::new( + ferrisshare::application::ferrisshare_state::FerrisShareState::new( + network_service.command_service.clone(), + network_service.clone(), + ), + ); + + let ferrisshare_state_clone = ferrisshare_state.clone(); - let handler_service = Arc::clone(&network_service); tokio::spawn(async move { - if let Err(e) = handler_service.handler(rx).await { + if let Err(e) = ferrisshare_state_clone.network_service.handler(rx).await { eprintln!("Handler error: {}", e); } }); - if let Err(e) = network_service.listener("127.0.0.1:9000", tx).await { + if let Err(e) = ferrisshare_state + .network_service + .listener("127.0.0.1:9000", tx) + .await + { eprintln!("Listener error: {:?}", e); } Ok(()) From 40c023711e141aac152f05a10443b9b1796b1fdb Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 18:31:40 +0100 Subject: [PATCH 07/11] feat(cli) : add client cli + fix refactor receiver byte traitments (#7) * feat(gitignore): add public directory to .gitignore * fix(refactor): corrompted transfer * move send message responsability into handler to keep control on incoming data on receiver yeet binary datas * feat(cli): implement CLI for ferrisshare with file sending command * feat(dependencies): add anyhow and clap_derive to enhance error handling and CLI functionality * refactor(services): simplify state extraction in process_binary_data method * refactor(readme): update project description and simplify usage instructions --- .gitignore | 2 + Cargo.lock | 26 ++++++ Cargo.toml | 7 +- README.md | 117 +++++++---------------- src/cli/main.rs | 139 ++++++++++++++++++++++++++++ src/core/domain/command/ports.rs | 2 +- src/core/domain/command/services.rs | 99 +++++++++++++------- src/core/domain/network/entities.rs | 4 + src/core/domain/network/ports.rs | 3 +- src/core/domain/network/services.rs | 94 ++++++++++++------- 10 files changed, 346 insertions(+), 147 deletions(-) create mode 100644 src/cli/main.rs diff --git a/.gitignore b/.gitignore index 0728338..229c504 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,5 @@ target # Added by cargo /target + +public/ diff --git a/Cargo.lock b/Cargo.lock index 07d1eb3..fb86d6c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -52,6 +52,12 @@ dependencies = [ "windows-sys 0.60.2", ] +[[package]] +name = "anyhow" +version = "1.0.100" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" + [[package]] name = "async-trait" version = "0.1.89" @@ -76,6 +82,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623" dependencies = [ "clap_builder", + "clap_derive", ] [[package]] @@ -90,6 +97,18 @@ dependencies = [ "strsim", ] +[[package]] +name = "clap_derive" +version = "4.5.49" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "clap_lex" version = "0.7.6" @@ -106,11 +125,18 @@ checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" name = "ferrisshare" version = "0.0.0" dependencies = [ + "anyhow", "async-trait", "clap", "tokio", ] +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + [[package]] name = "is_terminal_polyfill" version = "1.70.2" diff --git a/Cargo.toml b/Cargo.toml index 867f124..3e8bc4b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,5 +5,10 @@ edition = "2024" [dependencies] async-trait = "0.1.89" -clap = "4.5.50" +clap = { version = "4.5.50", features = ["derive"] } tokio = { version = "1", features = ["net", "rt-multi-thread", "rt", "fs", "io-util", "sync", "macros"] } +anyhow = "1.0" + +[[bin]] +name = "cli" +path = "src/cli/main.rs" diff --git a/README.md b/README.md index dab6db1..cdfcd07 100644 --- a/README.md +++ b/README.md @@ -1,100 +1,55 @@ -# Polytech DevOps - System Programming Project +# Ferrisshare — P2P file transfer -## Rules +Ferrisshare is a small Rust peer-to-peer file transfer toy used for a systems programming project. +It implements a tiny text-based protocol over TCP to send a single file from a sender (CLI) to a receiver (listener). -Students MUST pick one out of the [four proposed topics](topics). +This README is intentionally short — it explains what the project is and how to run the listener and the CLI sender locally for development. -Before the project deadline, students MUST turn in an [architecture document](#architecture-and-documentation) and an [implementation](#implementation) for the selected topic, in the form of a [GitHub pull request](#project-contribution). +## What it is -## Topics +- A minimal CLI sender (`cli` binary) and a listener/receiver service (`ferrisshare` binary). +- Protocol highlights: `HELLO` to announce a file, `YEET` to send block headers followed by the raw block bytes, `MISSION-ACCOMPLISHED` then `BYE-RIS` to finish. +- Storage: receiver writes to a temporary `*.ferrisshare` file then renames to the final filename. -topics choosed: +## Quick run (local development) -1. [A peer-to-peer file transfer protocol](topics/p2p-transfer-protocol). +Prerequisites: -## Grade +- rust toolchain (stable) and cargo +- network access to localhost -Your work will be evaluated based on the following criteria: +Build the workspace: -### Architecture and Documentation - -**This accounts for 40% of the final grade** - -You MUST provide a short, `markdown` formatted and English written document describing your project architecture. - -It MUST live under a projects top level folder called `docs/`, e.g. `docs/architecture.md`. - -It SHOULD at least contain the following sections: - -1. Project definition: What is it? What are the goals of the tool/project? -1. Components and modules: Describe which modules compose your project, and how they interact together. Briefly justify why you architectured it this way. -1. Usage: How can one use it? Give usage examples. - -### Implementation - -**This accounts for 40% of the final grade** - -The project MUST be implemented in Rust. - -The implementation MUST be formatted, build without warnings (including `clippy` warnings) and commented. - -The implementation modules and crates MAY be unit tested. - -### Project Contribution - -**This accounts for 20% of the final grade** - -The project MUST be submitted as one single GitHub pull request (PR) against the [current](https://github.com/dev-sys-do/project-2427) repository, for the selected project. - -For example, a student picking the `p2p-transfer-protocol` topic MUST send a PR that adds all deliverables (source code, documentation) to the `topics/p2p-transfer-protocol/` folder. - -All submitted PRs will not be evaluated until the project deadline. They can thus be incomplete, rebased, closed, and modified until the project deadline. - -A pull request quality is evaluated on the following criteria: - -- Commit messages: Each git commit message should provide a clear description and explanation of what the corresponding change brings and does. -- History: The pull request git history MUST be linear (no merge points) and SHOULD represent the narrative of the underlying work. It is a representation of the author's logical work in putting the implementation together. - -A very good reference on the topic: https://github.blog/developer-skills/github/write-better-commits-build-better-projects/ - -### Grade Factor - -All proposed topics have a grade factor, describing their relative complexity. - -The final grade is normalized against the selected topic's grade factor: `final_grade = grade * topic_grade_factor`. - -For example, a grade of `8/10` for a topic which grade factor is `1.1` will generate a final grade of `8.8/10`. - -## Deadline - -All submitted PRs will be evaluated on October 30th, 2025 at 11:00 PM UTC. +```bash +cargo build --workspace +``` -# A P2P Transfer Protocol +Run the listener (receiver) on port 9000 (default): -## Description and Goal +```bash +# In one terminal +cargo run --bin ferrisshare +``` -Build a CLI tool that allows two users on the same network to transfer a single file to each other. -The tool should be able to act as both the sender and the receiver, without a central server. +Send a file with the CLI (sender). Example: send the repository `README.md` to localhost:9000 -It is expected for a sender to know the IP of the receiver, i.e. there is no discovery protocol. +```bash +# In another terminal +cargo run --bin cli -- send --addr 127.0.0.1:9000 --file README.md --block-size 1024 +``` -```shell -# Receiving a file on port 9000 -p2p-tool listen --port 9000 --output ./shared +Logs printed to both terminals show the protocol exchange (HELLO, OK, YEET blocks, OK-HOUSTEN responses, MISSION-ACCOMPLISHED, SUCCESS, BYE-RIS). -# Sending a file -p2p-tool send --file report.pdf --to 192.168.1.100 --port 9000 -``` +## Notes and troubleshooting -## Hints and Suggestions +- The listener stores incoming data in `./.ferrisshare` during transfer and renames it to `./` after `MISSION-ACCOMPLISHED`. +- If you change block sizes on the sender, ensure they match the expected file split behavior. +- For debugging, run both binaries locally and watch logs. -- Define and document a simple networking protocol with a few commands. For example - - HELLO: For the sender to offer a file to the receiver. It takes a file size argument. - - ACK: For the receiver to tell the sender it is ready to receive a proposed file. - - NACK: For the receiver to reject a proposed file. - - SEND: Send, for the sender to actually send a file. It also takes a file size argument, that must match the `HELLO` offer. -- Start a receiving thread for every sender connection. +## Development -## Grade Factor +- Tests: `cargo test` +- Formatting: `cargo fmt` +- Linting: `cargo clippy --all-targets --all-features -- -D warnings` -The grade factor for this project is _1_. +If you want more detailed usage or a packaged distribution, tell me which format you prefer and I'll add it. diff --git a/src/cli/main.rs b/src/cli/main.rs new file mode 100644 index 0000000..f2a071d --- /dev/null +++ b/src/cli/main.rs @@ -0,0 +1,139 @@ +use std::path::PathBuf; + +use clap::{Args, Parser, Subcommand}; +use tokio::io::{AsyncReadExt, AsyncWriteExt}; +use tokio::net::TcpStream; + +#[derive(Parser)] +#[command(name = "ferris-cli")] +#[command(about = "CLI to communicate with ferrisshare listener", long_about = None)] +struct Cli { + #[command(subcommand)] + command: Commands, +} + +#[derive(Subcommand)] +enum Commands { + /// Send a file to a ferrisshare listener + Send(SendArgs), + /// Simple ping (HELLO) for testing + Hello { + /// remote address (host:port) + #[arg(short, long, default_value = "127.0.0.1:9000")] + addr: String, + /// filename to announce + filename: String, + /// filesize in bytes + filesize: u64, + }, +} + +#[derive(Args)] +struct SendArgs { + /// remote address + #[arg(short, long, default_value = "127.0.0.1:9000")] + addr: String, + + /// file to send + #[arg(short, long)] + file: PathBuf, + + /// block size (default 1024) + #[arg(short = 'b', long, default_value_t = 1024u32)] + block_size: u32, +} + +#[tokio::main] +async fn main() -> anyhow::Result<()> { + let cli = Cli::parse(); + + match cli.command { + Commands::Hello { + addr, + filename, + filesize, + } => { + let mut stream = TcpStream::connect(addr).await?; + let line = format!("HELLO {} {}\n", filename, filesize); + stream.write_all(line.as_bytes()).await?; + // read response + let mut buf = vec![0u8; 1024]; + let n = stream.read(&mut buf).await?; + if n > 0 { + let resp = String::from_utf8_lossy(&buf[..n]); + println!("Reply: {}", resp.trim()); + } + } + Commands::Send(args) => { + send_file(args).await?; + } + } + + Ok(()) +} + +async fn send_file(args: SendArgs) -> anyhow::Result<()> { + let file = tokio::fs::File::open(&args.file).await?; + let metadata = file.metadata().await?; + let filesize = metadata.len(); + let filename = args + .file + .file_name() + .and_then(|s| s.to_str()) + .ok_or_else(|| anyhow::anyhow!("Invalid filename"))? + .to_string(); + + let mut stream = TcpStream::connect(&args.addr).await?; + + // send HELLO + let hello = format!("HELLO {} {}\n", filename, filesize); + stream.write_all(hello.as_bytes()).await?; + + // wait for OK response (simple) + let mut resp_buf = vec![0u8; 1024]; + let n = stream.read(&mut resp_buf).await?; + if n > 0 { + println!("Server: {}", String::from_utf8_lossy(&resp_buf[..n]).trim()); + } + + // stream file and send YEET commands + binary blocks + let mut reader = tokio::fs::File::open(&args.file).await?; + let mut index: u64 = 0; + let mut buf = vec![0u8; args.block_size as usize]; + + loop { + let n = reader.read(&mut buf).await?; + if n == 0 { + break; + } + + // send YEET header + // checksum placeholder 0 for now + let yeet = format!("YEET {} {} {}\n", index, n, 0); + stream.write_all(yeet.as_bytes()).await?; + + // send binary block (raw bytes then newline) + stream.write_all(&buf[..n]).await?; + stream.write_all(b"\n").await?; + + // read ack + let n = stream.read(&mut resp_buf).await?; + if n > 0 { + println!("Server: {}", String::from_utf8_lossy(&resp_buf[..n]).trim()); + } + + index += 1; + } + + // send MISSION-ACCOMPLISHED + stream.write_all(b"MISSION-ACCOMPLISHED\n").await?; + let n = stream.read(&mut resp_buf).await?; + if n > 0 { + println!("Server: {}", String::from_utf8_lossy(&resp_buf[..n]).trim()); + } + + // send BYE-RIS + stream.write_all(b"BYE-RIS\n").await?; + + Ok(()) +} diff --git a/src/core/domain/command/ports.rs b/src/core/domain/command/ports.rs index 14e2e59..0f69f15 100644 --- a/src/core/domain/command/ports.rs +++ b/src/core/domain/command/ports.rs @@ -15,5 +15,5 @@ pub trait CommandService: Send + Sync { &self, state: Arc>, data: &[u8], - ) -> impl Future>; + ) -> impl Future>; } diff --git a/src/core/domain/command/services.rs b/src/core/domain/command/services.rs index ceeb7a7..79cf402 100644 --- a/src/core/domain/command/services.rs +++ b/src/core/domain/command/services.rs @@ -104,7 +104,7 @@ where drop(state_guard); - Ok(ProtocolMessage::OkHousten(yeet_block.index)) + Ok(ProtocolMessage::Yeet(yeet_block.clone())) } ProtocolMessage::MissionAccomplished => { let mut state_guard = state.lock().await; @@ -136,51 +136,88 @@ where &self, state: Arc>, data: &[u8], - ) -> Result<(), CommandError> { + ) -> Result { + // Lock once and extract what we need. let mut state_guard = state.lock().await; - let (expected_blocks, focused_block, received_blocks, current_file) = + + let (_, maybe_focused_block, received_blocks_clone, current_file_clone) = match &mut *state_guard { TransferState::Receiving { expected_blocks, focused_block, received_blocks, current_file, - } => ( - expected_blocks, - focused_block, - received_blocks, - current_file, - ), + } => { + // take the focused block out (leaves None in the guard) + let taken_block = focused_block.take(); + ( + *expected_blocks, + taken_block, + received_blocks.clone(), + current_file.clone(), + ) + } _ => { return Err(CommandError::ExecutionFailed( "Error transfer state is not equal Receiving".to_string(), )); } }; - if let Some(focused_block) = focused_block { - if received_blocks.contains(&focused_block.index) { - println!("Block {} already received, ignoring.", focused_block.index); - } else { - println!("Stored binary data block: {:?}", focused_block); - self.storage - .write_block(current_file, focused_block, data) - .await - .map_err(|e| { - CommandError::ExecutionFailed(format!("Storage error: {:?}", e)) - })?; - - received_blocks.push(focused_block.index); - *state_guard = TransferState::Receiving { - current_file: current_file.clone(), - expected_blocks: *expected_blocks, - focused_block: None, - received_blocks: received_blocks.clone(), - }; + + // If there was no focused block, nothing to do. + let focused_block = match maybe_focused_block { + Some(b) => b, + None => { + println!("No focused block to store data for."); + return Ok(ProtocolMessage::Ok); + } + }; + + // If block already received, restore focused_block into the state and return. + if received_blocks_clone.contains(&focused_block.index) { + // restore focused_block back into the guard before returning + if let TransferState::Receiving { + focused_block: guard_focused_block, + .. + } = &mut *state_guard + { + *guard_focused_block = Some(focused_block.clone()); } - } else { - println!("No focused block to store data for."); + println!("Block {} already received, ignoring.", focused_block.index); + return Ok(ProtocolMessage::Ok); } - Ok(()) + println!("Stored binary data block: {:?}", focused_block); + + // Clone what we need for the async storage write, then drop the guard before awaiting. + let file_for_write = current_file_clone.clone(); + let block_for_write = focused_block.clone(); + drop(state_guard); + + // Perform the async write while not holding the mutex. + self.storage + .write_block(&file_for_write, &block_for_write, data) + .await + .map_err(|e| CommandError::ExecutionFailed(format!("Storage error: {:?}", e)))?; + + // Re-lock and update received_blocks + clear focused_block. + let mut state_guard = state.lock().await; + match &mut *state_guard { + TransferState::Receiving { + received_blocks, + focused_block, + .. + } => { + received_blocks.push(block_for_write.index); + *focused_block = None; + } + _ => { + return Err(CommandError::ExecutionFailed( + "Transfer state changed while writing block".to_string(), + )); + } + }; + + Ok(ProtocolMessage::OkHousten(block_for_write.index)) } } diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 467a16e..07c86c8 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -26,6 +26,7 @@ pub enum ProtocolError { MissingArgs, InvalidNumber, Incomplete, + CommandExecutionFailed(String), } impl TryFrom<&str> for ProtocolMessage { @@ -128,6 +129,9 @@ impl From for String { ProtocolError::MissingArgs => "Missing arguments".to_string(), ProtocolError::InvalidNumber => "Invalid number format".to_string(), ProtocolError::Incomplete => "Incomplete command".to_string(), + ProtocolError::CommandExecutionFailed(msg) => { + format!("Command execution failed: {}", msg) + } } } } diff --git a/src/core/domain/network/ports.rs b/src/core/domain/network/ports.rs index 56f4c2e..f0240d3 100644 --- a/src/core/domain/network/ports.rs +++ b/src/core/domain/network/ports.rs @@ -15,9 +15,8 @@ pub trait NetworkService { fn handler(&self, rx: Receiver) -> impl Future>; fn trust_protocol( &self, - stream: &mut TcpStream, message: ProtocolMessage, - ) -> impl Future> + Send; + ) -> impl Future> + Send; fn send_message( &self, stream: &mut TcpStream, diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index d3abdee..70c3743 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -1,8 +1,10 @@ +use std::f32::consts::E; use std::io::Error; use std::sync::Arc; use std::sync::atomic::AtomicBool; use tokio::io::AsyncBufReadExt; +use tokio::io::AsyncReadExt; use tokio::io::AsyncWriteExt; use tokio::io::BufReader; use tokio::net::TcpListener; @@ -92,7 +94,8 @@ where async fn handler(&self, mut rx: Receiver) -> Result<(), Error> { while let Some(stream) = rx.recv().await { - let mut reader = BufReader::new(stream); + let (read_half, mut write_half) = stream.into_split(); + let mut reader = BufReader::new(read_half); let mut buf = Vec::new(); loop { @@ -121,17 +124,61 @@ where let line = std::str::from_utf8(&buf) .map_err(|e| std::io::Error::new(std::io::ErrorKind::InvalidData, e))?; - let stream_ref = &mut reader.get_mut(); - match ProtocolMessage::try_from(line) { Ok(msg) => { println!("Received message: {:?}", msg); - if let Err(e) = self.trust_protocol(stream_ref, msg).await { - eprintln!("Error handling protocol message: {:?}", e); - let _ = self - .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) - .await; + match self.trust_protocol(msg).await { + Ok(message) => match message { + ProtocolMessage::Yeet(yeet_block) => { + let mut bin_buf = vec![0u8; yeet_block.size as usize]; + if let Err(e) = reader.read_exact(&mut bin_buf).await { + eprintln!("Error reading binary block: {:?}", e); + let err_msg = ProtocolMessage::Error(String::from( + "Read binary failed", + )); + let s = String::from(err_msg) + "\n"; + let _ = write_half.write_all(s.as_bytes()).await; + continue; + } + + // Consume the trailing newline after the binary block if any. + let mut _end = Vec::new(); + let _ = reader.read_until(b'\n', &mut _end).await; + + // Forward the block to the command service for storage. + match self + .command_service + .process_binary_data( + Arc::clone(&self.transfer_state), + &bin_buf, + ) + .await + { + Ok(response_msg) => { + let s = String::from(response_msg) + "\n"; + if let Err(e) = write_half.write_all(s.as_bytes()).await + { + eprintln!("Error sending response: {:?}", e); + } + } + Err(e) => { + eprintln!("Error processing binary data: {:?}", e); + let err_msg = ProtocolMessage::Error(String::from(e)); + let s = String::from(err_msg) + "\n"; + let _ = write_half.write_all(s.as_bytes()).await; + } + } + } + other => { + // Non-YEET responses (OK, SUCCESS, etc.) are sent back to writer. + let s = String::from(other) + "\n"; + if let Err(e) = write_half.write_all(s.as_bytes()).await { + eprintln!("Error sending message: {:?}", e); + } + } + }, + Err(e) => eprintln!("Error handling protocol message: {:?}", e), } let guard = self.transfer_state.lock().await; @@ -143,7 +190,8 @@ where drop(guard); self.reset_transfer_state().await; - let _ = stream_ref.shutdown().await; + // shutdown the write half + let _ = write_half.shutdown().await; break; } @@ -159,9 +207,9 @@ where .await { eprintln!("Error processing binary data: {:?}", e); - let _ = self - .send_message(stream_ref, ProtocolMessage::Error(String::from(e))) - .await; + let err_msg = ProtocolMessage::Error(format!("{:?}", e)); + let s = String::from(err_msg) + "\n"; + let _ = write_half.write_all(s.as_bytes()).await; } } } @@ -176,9 +224,8 @@ where async fn trust_protocol( &self, - stream: &mut TcpStream, message: ProtocolMessage, - ) -> Result<(), ProtocolError> { + ) -> Result { let guard = self.transfer_state.lock().await; match *guard { TransferState::Idle => { @@ -213,25 +260,10 @@ where drop(guard); // Release the lock before awaiting println!("Executing command: {:?}", message); - match self - .command_service + self.command_service .execute_protocol_command(Arc::clone(&self.transfer_state), &message) .await - { - Ok(response) => { - println!("Response: {:?}", response); - // Clone the underlying TcpStream to avoid moving reader - match self.send_message(stream, response).await { - Ok(_) => println!("Response sent successfully."), - Err(e) => eprintln!("Failed to send response: {:?}", e), - } - } - Err(e) => { - println!("Command execution error: {:?}", e); - // Handle command execution error - } - } - Ok(()) + .map_err(|e| ProtocolError::CommandExecutionFailed(format!("{:?}", e))) } async fn send_message( From 42ebb087afc8ad2c8cfc4e0556147736bc05fb91 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 19:02:38 +0100 Subject: [PATCH 08/11] feat(config): add dotenv for environment variables (#8) * refactor: remove unused import of E constant * feat(dependencies): add dotenv crate for environment variable management * feat(gitignore): add entry to ignore environment variable files * feat(config): add configuration struct and load from environment variables --- .env.example | 3 +++ .gitignore | 2 ++ Cargo.lock | 7 +++++++ Cargo.toml | 1 + src/application/config.rs | 23 +++++++++++++++++++++++ src/application/mod.rs | 1 + src/core/domain/network/services.rs | 1 - src/main.rs | 12 ++++++++++-- 8 files changed, 47 insertions(+), 3 deletions(-) create mode 100644 .env.example create mode 100644 src/application/config.rs diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..1b636f8 --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +FERRIS_BASE_PATH=./public +FERRIS_PORT=9000 +FERRIS_HOST=0.0.0.0 diff --git a/.gitignore b/.gitignore index 229c504..34c08f3 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ target /target public/ + +.*env diff --git a/Cargo.lock b/Cargo.lock index fb86d6c..fc04718 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -121,6 +121,12 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +[[package]] +name = "dotenv" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" + [[package]] name = "ferrisshare" version = "0.0.0" @@ -128,6 +134,7 @@ dependencies = [ "anyhow", "async-trait", "clap", + "dotenv", "tokio", ] diff --git a/Cargo.toml b/Cargo.toml index 3e8bc4b..3a616cc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,6 +8,7 @@ async-trait = "0.1.89" clap = { version = "4.5.50", features = ["derive"] } tokio = { version = "1", features = ["net", "rt-multi-thread", "rt", "fs", "io-util", "sync", "macros"] } anyhow = "1.0" +dotenv = "0.15.0" [[bin]] name = "cli" diff --git a/src/application/config.rs b/src/application/config.rs new file mode 100644 index 0000000..5597bc5 --- /dev/null +++ b/src/application/config.rs @@ -0,0 +1,23 @@ +#[derive(Debug)] +pub struct Config { + pub ferris_base_path: String, + pub ferris_port: u16, + pub ferris_host: String, +} + +impl Config { + pub fn from_env() -> Self { + let ferris_base_path = + std::env::var("FERRIS_BASE_PATH").unwrap_or_else(|_| "./public".to_string()); + let ferris_port = std::env::var("FERRIS_PORT") + .unwrap_or_else(|_| "9000".to_string()) + .parse() + .expect("FERRIS_PORT must be a valid u16"); + let ferris_host = std::env::var("FERRIS_HOST").unwrap_or_else(|_| "127.0.0.1".to_string()); + Config { + ferris_base_path, + ferris_port, + ferris_host, + } + } +} diff --git a/src/application/mod.rs b/src/application/mod.rs index 0d27030..aa758e8 100644 --- a/src/application/mod.rs +++ b/src/application/mod.rs @@ -1 +1,2 @@ +pub mod config; pub mod ferrisshare_state; diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index 70c3743..deb20cd 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -1,4 +1,3 @@ -use std::f32::consts::E; use std::io::Error; use std::sync::Arc; use std::sync::atomic::AtomicBool; diff --git a/src/main.rs b/src/main.rs index 1caf70a..b29765c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,8 +1,10 @@ +use dotenv::dotenv; use std::sync::Arc; use tokio::{net::TcpStream, sync::mpsc}; use ferrisshare::{ + application::config::Config, core::domain::{ command::services::CommandServiceImpl, network::{ports::NetworkService as _, services::NetworkServiceImpl}, @@ -12,9 +14,12 @@ use ferrisshare::{ #[tokio::main] async fn main() -> tokio::io::Result<()> { + dotenv().ok(); + let cfg: Config = Config::from_env(); + let (tx, rx) = mpsc::channel::(1); - let storage_repo = FSStorageRepository::new("./public/".into()); + let storage_repo = FSStorageRepository::new(cfg.ferris_base_path); let command_service = CommandServiceImpl::new(storage_repo); let network_service = NetworkServiceImpl::new(command_service); @@ -36,7 +41,10 @@ async fn main() -> tokio::io::Result<()> { if let Err(e) = ferrisshare_state .network_service - .listener("127.0.0.1:9000", tx) + .listener( + format!("{}:{}", cfg.ferris_host, cfg.ferris_port).as_str(), + tx, + ) .await { eprintln!("Listener error: {:?}", e); From 38b4218a1d03fd5cec9b1908607ed577ec92c4ae Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Thu, 30 Oct 2025 20:38:56 +0100 Subject: [PATCH 09/11] docs: complete architecture documentation (#9) * fix(network): improve error handling in ProtocolMessage parsing and TcpListener binding refactor(storage): simplify filename sanitization and directory creation logic * docs(README): update CLI example to recommend a minimal block size of 2048 bytes * docs(architecture): add flow diagrams for FerrisShare protocol (v1 and v2) * docs(README): clarify purpose of README and link to architecture documentation --- README.md | 9 +- docs/architecture.md | 177 +++++++++++++++--- docs/ferrisshare_logigramme_v1.png | Bin 0 -> 203889 bytes docs/ferrisshare_logigramme_v2.png | Bin 0 -> 703248 bytes src/core/domain/command/services.rs | 2 +- src/core/domain/network/entities.rs | 2 +- src/core/domain/network/services.rs | 2 +- .../repositories/fs/fs_storage_repository.rs | 31 +-- 8 files changed, 174 insertions(+), 49 deletions(-) create mode 100644 docs/ferrisshare_logigramme_v1.png create mode 100644 docs/ferrisshare_logigramme_v2.png diff --git a/README.md b/README.md index cdfcd07..eb4d754 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,7 @@ Ferrisshare is a small Rust peer-to-peer file transfer toy used for a systems programming project. It implements a tiny text-based protocol over TCP to send a single file from a sender (CLI) to a receiver (listener). - -This README is intentionally short — it explains what the project is and how to run the listener and the CLI sender locally for development. +For a detailed protocol and architecture overview, see [docs/architecture.md](docs/architecture.md). ## What it is @@ -35,9 +34,13 @@ Send a file with the CLI (sender). Example: send the repository `README.md` to l ```bash # In another terminal -cargo run --bin cli -- send --addr 127.0.0.1:9000 --file README.md --block-size 1024 +cargo run --bin cli -- send --addr 127.0.0.1:9000 --file README.md --block-size 2048 ``` +**Recommended minimal block size** + +We recommend using a minimal block size of 2048 bytes (as shown in the example above). Larger blocks reduce protocol overhead and typically improve throughput for local transfers. Be aware larger blocks use more memory and may be less forgiving on very unreliable networks — adjust down if you see timeouts or memory pressure. + Logs printed to both terminals show the protocol exchange (HELLO, OK, YEET blocks, OK-HOUSTEN responses, MISSION-ACCOMPLISHED, SUCCESS, BYE-RIS). ## Notes and troubleshooting diff --git a/docs/architecture.md b/docs/architecture.md index 557a133..992ac8e 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -16,38 +16,50 @@ The primary goals of this project are: 4. **Reliability**: Implement a simple protocol with handshake verification to ensure successful transfers 5. **Simplicity**: Provide a straightforward CLI interface similar to common networking tools -### Non-Goals - -- **Discovery Protocol**: The sender must know the receiver's IP address (no automatic peer discovery) -- **Encryption**: File transfers are not encrypted (local network trust assumed) - **Resume Support**: Interrupted transfers cannot be resumed - **Multi-file Transfers**: Each transfer handles exactly one file -## **Choice of Dependencies** +### 1.1 **Choice of Dependencies** -### Tokyo +This project uses a small set of well-established crates chosen to support an async, networked CLI tool implemented in Rust. Below are the main dependencies and why they were selected. -The project uses **Tokio**, an asynchronous runtime for Rust, to manage networking operations and concurrency. Tokio provides powerful primitives such as `TcpStream`, `TcpListener`, and asynchronous task spawning (`tokio::spawn`), allowing efficient, non-blocking I/O. +#### Tokio -This choice is motivated by several reasons: +Tokio is the async runtime and is central to the project. Reasons for using Tokio include: -1. **Asynchronous I/O efficiency** – Tokio leverages Rust’s `async/await` syntax to handle thousands of simultaneous client connections without blocking threads. +1. **Asynchronous I/O efficiency** – Tokio leverages Rust’s `async/await` syntax to handle many simultaneous client connections without blocking threads. 2. **Task scheduling and runtime** – Tokio includes a lightweight task scheduler that runs asynchronous functions concurrently on a single or multi-threaded runtime. -3. **Ecosystem integration** – Many crates (like `warp`, `hyper`, `reqwest`, `tokio-tungstenite`) are built on top of Tokio, ensuring good compatibility and extensibility. -4. **Fine-grained control** – Tokio allows precise management of I/O events, making it suitable for custom protocol implementations, chunked file transfer, and streaming optimizations. -5. **Performance and safety** – The runtime is highly optimized for low-latency operations, while maintaining Rust’s guarantees of memory safety and thread safety. +3. **Ecosystem integration** – Many crates (like `warp`, `hyper`, `reqwest`, `tokio-tungstenite`) are built on top of Tokio, ensuring compatibility and extensibility. +4. **Performance and safety** – The runtime is optimized for low-latency operations while preserving Rust’s memory- and thread-safety guarantees. + +Practical notes for this repo: + +- Tokio primitives used: `TcpListener`, `TcpStream`, `tokio::spawn`, `tokio::fs`, and `tokio::sync::mpsc`. +- The code creates an `mpsc::channel::(1)` in `src/main.rs` and sends accepted `TcpStream`s from the listener to the handler task. This decouples socket acceptance from protocol handling, provides backpressure (buffer size 1), and keeps a clear service boundary between network IO and command processing. +- When changing concurrency or channel buffer sizes, review the places that consume the channel (network handler) and tests that rely on the current backpressure semantics. + +#### clap + +`clap` (with the `derive` feature) is used for command-line parsing. It provides ergonomic derive-based parsing for flags and subcommands used by the binaries (see `src/cli/main.rs`). Use `clap` to add user-facing options, help text, and subcommands. Keep CLI changes backward-compatible where possible. + +#### dotenv -Without Tokio, the implementation would require manually managing threads and blocking I/O, which would be less efficient, harder to scale, and more error-prone. +`dotenv` is used in `src/main.rs` to load local environment variables from a `.env` file during development. The project uses environment variables for configuration keys (see `src/application/config.rs`): `FERRIS_BASE_PATH`, `FERRIS_PORT`, and `FERRIS_HOST`. `Config::from_env()` provides sensible defaults when vars are absent. -## **FerrisShare File Transfer Protocol** +Other dependencies -### **Overview** +- `async-trait` — used to express async traits for domain ports/interfaces implemented by infra repositories. +- `anyhow` — convenience error handling for higher-level paths or tooling code. + +If you add dependencies, prefer small, widely-used crates and keep Tokio feature flags minimal to avoid pulling unnecessary code. + +### 1.2 **Overview** The protocol defines a simple, **text-based command layer** over TCP for transferring a single file between two peers on the same network. It relies on TCP for reliable, ordered delivery, while adding **application-level commands** to coordinate the transfer, manage file chunks, and confirm completion. The connection is **bi-directional**, allowing the receiver to respond directly through the same TCP stream. -FerrisShare uses an asynchronous channel (`mpsc::channel`) to transmit accepted TCP connections from the network listener to the handler responsible for processing protocol commands. This mechanism decouples the management of incoming connections from the business logic, ensures synchronization between asynchronous tasks, and guarantees that only one active connection is handled at a time. The channel thus facilitates internal communication and enhances the modularity of the network service. +![FerrisShare protocol flow](./ferrisshare_logigramme_v1.png) -### **Protocol Commands** +#### **Protocol Commands** | Command | Sender | Arguments | Response | Description | | ------------------------ | ------ | ------------------------------------------------------ | -------------------------- | ------------------------------------------------------------------------------------------------ | @@ -59,9 +71,130 @@ FerrisShare uses an asynchronous channel (`mpsc::channel`) to transmit accepted | **MISSION-ACCOMPLISHED** | Client | — | `SUCCESS` / `ERROR` | Marks the end of file transmission. The server verifies that all blocks were received correctly. | | **BYE-RIS** | Either | — | — | Gracefully terminates or cancels the transfer. | -### **Notes** +## 2. **High-Level Architecture** + +### 2.1 Overview + +FerrisShare is organized following a **hexagonal (ports and adapters)** architecture. +The system is divided into three primary layers: + +1. **Core Domain (`src/core/domain`)** + Defines the business logic, entities, and service traits (ports). + It is _infrastructure-agnostic_ and models how files are transferred, validated, and finalized. + +2. **Application Layer (`src/application`)** + Orchestrates interactions between domain services and infrastructure. + It is responsible for: + + - managing runtime state (via `FerrisShareState`), + - loading configuration from the environment (via `main.rs`), + - wiring dependencies and initializing services (via `main.rs`). + +3. **Infrastructure Layer (`src/infra`)** + Provides concrete implementations of domain ports, such as: + + - file-system repositories (`fs_storage_repository.rs`), + +This separation ensures that **business logic remains pure** and testable while the infrastructure can evolve independently (e.g., changing from filesystem to S3 storage would only require a new repository implementing the same trait). + +--- + +## 3. **Runtime Model** + +FerrisShare uses a bounded Tokio mpsc channel (mpsc::channel::(1)) to forward accepted TcpStream connections from the listener task to the network handler. This decouples socket acceptance from protocol processing, provides backpressure (buffer size = 1) so the listener will await when the handler is busy, and enforces sequential handling of active connections. Do not change the channel semantics or buffer size without review — consumers and tests rely on the current backpressure behavior. + +### 3.1 Execution Flow + +![FerrisShare protocol flow](./ferrisshare_logigramme_v2.png) + +--- + +## 4. **Concurrency Model** + +FerrisShare uses Tokio’s cooperative multitasking model: + +| Component | Concurrency Mechanism | Description | +| --------------- | ----------------------------- | ------------------------------------------------------------------ | +| Listener | `tokio::spawn` task | Accepts TCP connections asynchronously. | +| Handler | `mpsc::Receiver` | Sequentially handles active connections (bounded by channel size). | +| File IO | `tokio::fs` | Asynchronous file operations for write and rename. | +| CPU-bound Tasks | `tokio::task::spawn_blocking` | Used for checksum validation or heavy file operations. | + +> The bounded channel (`size = 1`) acts as a **backpressure control**, ensuring the runtime does not accept more concurrent transfers than it can safely process. + +--- + +## 5. **Storage Design** + +### 5.1 Storage Repository + +The **FSStorageRepository** provides a file-based implementation of the `StorageRepository` trait defined in `core/domain/storage/ports.rs`. + +Responsibilities: + +- Validate and sanitize filenames to prevent directory traversal. +- Create a temporary file with suffix `.ferrisshare`. +- Write incoming blocks asynchronously. +- Rename the file to its final name once all blocks are received. + +Error handling is implemented using a domain-level `StorageError` enum, with variants such as: + +- `InvalidPath` +- `WriteError` +- `FinalizeError` +- `ChecksumMismatch` + +--- + +## 6. **Error Management** + +The architecture distinguishes between **domain errors** and **infrastructure errors**: + +| Layer | Error Type | Description | +| ----------- | ------------------------------------ | ------------------------------------------------------ | +| Domain | `StorageError`, `ProtocolError` | Typed errors expressing semantic issues. | +| Infra | `std::io::Error`, `tokio::io::Error` | Low-level I/O or network errors. | +| Application | `anyhow::Error` | Aggregation or propagation wrapper for untyped errors. | + +Each boundary maps its errors upward in a controlled way. For example: + +```rust +fn write_block(&self, block: YeetBlock) -> Result<(), StorageError> +``` + +is converted to `anyhow::Error` only at the CLI or handler layer. + +--- + +## 7. Testing Strategy + +- Quick protocol smoke-test with netcat: + ```bash + nc 127.0.0.1 9000 + HELLO test.txt 1024 + ``` +- Recommended manual verification steps (use when iterating implementation-by-feature): + 1. Start with the listener and the bounded `mpsc` channel; confirm accepted `TcpStream`s are queued and backpressure occurs when full. + 2. Implement protocol command recognition (parser unit tests). + 3. Implement responder behavior and verify correct textual responses (`OK`, `NOPE`, `OK-HOUSTEN`). + 4. Enforce protocol rules and sequencing in the handler (reject invalid sequences). + 5. Execute command handling (dispatch commands to services and capture outcomes). + 6. Implement the `FSStorageRepository` and validate filename sanitization. + 7. Test reading binary payloads from the stream and async writing to the temp file. + 8. Add the CLI path to read a local file and stream its bytes over the connection; verify end-to-end transfer. + 9. Implement and test the loop over `YEET` blocks to ensure all bytes are written and blocks are acknowledged. +- For each manual step, codify a corresponding unit or integration test to prevent regressions. + +## 8. **Security Considerations** + +- All filenames are sanitized — no absolute or relative (`..`) paths allowed. +- Only local-network communication is assumed; for Internet usage, TLS must be added. +- The server rejects transfers when disk space is insufficient or when the file already exists. +- Protocol commands are ASCII-only to prevent injection or encoding ambiguities. + +--- + +## 9. **Conclusion** -- **TCP guarantees delivery**, but `CONFIRM` adds **application-level integrity verification**. -- **File is transferred in blocks (blobs)** to allow streaming of large files without memory overload. -- **Bi-directional communication** is handled over the same TCP connection; no additional socket is needed. -- Protocol is designed to be **minimal, readable, and extensible** for future features (resume, hash verification, multi-file support). +FerrisShare combines Rust’s async capabilities with a clean domain-driven design to deliver a lightweight, robust P2P file transfer CLI. +Its modular architecture (domain/application/infra separation), use of Tokio primitives, and simple custom protocol make it easy to extend while ensuring predictable runtime behavior and strong safety guarantees. diff --git a/docs/ferrisshare_logigramme_v1.png b/docs/ferrisshare_logigramme_v1.png new file mode 100644 index 0000000000000000000000000000000000000000..a991a8b108676fea5f79a7dad464006f8f7f79fc GIT binary patch literal 203889 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

-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 literal 0 HcmV?d00001 diff --git a/docs/ferrisshare_logigramme_v2.png b/docs/ferrisshare_logigramme_v2.png new file mode 100644 index 0000000000000000000000000000000000000000..22da0af9652a89f5ec8651c3ae1990523c317f3b GIT binary patch literal 703248 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

|F7`Y7->3zWdaJ(ZuAB9zEjP>0lHR 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

2rg(~G%hllQ_E^1SC8+%`2jD$& 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⋙zg_uCt+Fd(=noK%+n4M5-XHR0Kudp`G-dc&6 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

yw$J0$0Z)vo&?~m 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

a#-ovTtNy9ldwkz)2DWUutdmmLUb}wGW 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

0bnJ9W2Ea^Ldp?Ks)b^hu5uc(b+9 zpNlkTU-YOcTV>&#&ubM0l!3OWT2J-#t0w|ruJYI*;3esYn%zBNd#SDl`i(+sKmBZr zjFcl2Im#LfUy1J-qcbTKxn}s%NrI);k_(@Mwz)LE)LfbneO(QZ7F^Hh{#7DORI>&e zb3B+?CB~UgmXXB#&@RliOb;q6>>?0+;^(PV9cewkCVN&$>r7}m-t*ah zRMha>Wt1mF1i_Le1{L|~l>H*9>q=7o*^>zC8G$_Vh zHAXe9RLwlqxM=kWkDelAVi;&ItJmJoa=T2fiL-Hk6g&+1Qipf>HK(hX$dP~jePFfe;&jEAD97j8G7I;>d4>SUQ*$8H%O-4Lx66zt$M2k9;Yu3=oP)MHG&^#hz?NnAL?>n4yl8zmu&*u_$@Trk@y~(93E80g+xVrO6Jyp*O_STo zX}lY`gLNXQQ6$(oa1x<*ScfPt;B&s(G#UOOh42~5dmPd*`FEf_*kY?gVN!;lZo4jI z-ooR%&+?rcbKM|}XUguguJ}ni~F`n)2 ziUobu0o=WubX0J2IAToW@lE^FAGgq~ z9XubvoM~B#ET#n*5n}uv@km`OBVde(VLyc;pcO&y<*ov{4i$j}dF9B?8@iNg@KPs%guNlosQwqINtYGz)5eb%z2l*YE)k zkQ$-mlM(#nrEl%kR83f=<(PEFl@_I%UHdRW0J=ilpveOzM{pOefbF7PDkI~3wDRdW zBI>BU_8Y2Nl3xXLmGu`3mU~y`D2szEc)g+OlLs$wH(rf?jEQuEiBDVPZ20!AFMVi4$&J`g96&{iYfqTVYGjP+fjK+6SBLH^(BHy=CUFVUGwhxPbD*CBs4?e6TZ4d33p-q;$ZM0VC&_N$fKr|7JRr2{p&|$>s3e-s``q|N$mmf_eS;C| zYsJn)HR|v$tA}hOhXtRyL$^-Gs_lk7Ycd;YI^L#jW^P4QCsf!?iV?6Q^`ZRcrHYy%hy`xrc7+1(< z%;y-PdE~^32%ESM7Qe;>sT%!sDqTi8SZL>ds!Yku5Zf%qnO~{&;<|DHEKeMCueMvT z*wf$v3d#+7S6$=yML-ONqzr&ynte~qTkLz2_evQ91^FbcxfzS(J&ue^sQo&7+d_T0 z+bI$9B@Mj%Y_aAi+6;z~Zr<&BiiZSRtNI~<&{Q!vj0xtN1jocpb~a<`ysSBVN2SMF@Hs z>1RR}jIx`MJP}DtTwMI!dlT``FR>Z(A~nS8XqyYV{cl5Z0CSOQ&N1Y@>DB(s68}{q zy$?e|Sw%|t_yf~P9P*8#L?@&eRDW9t81~cwq8|Q=S+idYsC75U+y zY)#sFwplfkBmC#(FEz>533@yQtu@P;)zo9;qH)l~f05MWR^?O)K)^hEgiE~t0vtyR z?IEv-Yk%E|jr$hW@=h^@A1pbAnLy+VwydnjPUWHVRJKIEsq}(Fh$CIFdP_pr%9uG|JaJq(Yuy& zX$(QjEOSV5wKDATJuDA-W3G>hvROoj?m-D3|IDi1Z>WrHudicynM+zQ;S&b8bWo;2 zF9Q&b<)De-N6AQ9Krs*yS+vIF04gaziT5{U*ycj0oK7VWTj~MAw>e(f)W7OO0GbLG zQ&P{fk$z~^7O9fv^m>aPtQtVCe91)zc;vhOTJg=xeE?}q7?r9x66mG)_=&zR5T8B3 z;_V%^i;9+&Joqy5Cci+BhLd*;@OfLzajIXIlVI-9z{_g2Ac30yH*EhaKExHr=MegH zr;=IjL|`(_CoIPcu>>B?RAS!1$!NR%6orFU}4W?KczFsWYIX3Xq_#H5B73GxdxPi1_9+uWVq};=OYr5U zlWIl>u(o~#PIQ144-E~a1kyDr)&iri{Vu(#Vx0Ax2H=2C0rvZdN~y|LAMiM*;u?R} zDs9CyX8%fVoL1b1~(SLyHGVKP8)akMPcA~$|>L%-+4`A|3c&!)b~q*|qk z&b(q?mh@0)Yor(NC}5624Uny^^*cnr!l0+KCs!ovpxrBl@ca?Za-NA90!l2pC@kw zOh&HwiWybh#xdEmA_ywfoI`2~+Hd`cz!mhr$-W_ypqwRy0G&mh_Gf^2MZ3m6cVS_% z*Pt)i0!+<41a^&uWX)1RZg^S!J=7z>j+S(jv_n(jG10{BM&7>O85pNZUb4{xktRii zvkX(nscR;Z78RA5^j1V4fO2aAMDB|RBIziU=nBoj#XA>am?z?L;H9B(&`@lnH}qU- zcLNIDNLmUcMYKoCFdT#joOdWuK!;AufsVWm1Q`<43pJ#jY|}S}D?&UtqR1J|BVq+V zk87)a>443!Oy$GR`U!p?^}0Me#X@ShL$2On6X1g|ki?tIa5JC0B<>@FA3!h3BW0wc zI}SH=@Q0?#!;U#}mgtz6hEdkc%<7N0+#7$@s-Yv9%~z1Onz7Ec!;4}2elokkl>394Qz3=1u)iZQ zh4HDER}M<^mw9{s>yIp@?V2Y)(Dt!0CjSOB1J?wD0-+)joi!va;Pb-aL9#<-6a`b4 z!SFZlN&=%;LV=h>ai=`VK>)y35tGSJ8O;n?ghv2)whnCnRRZLrbtwqGyDvt-6HAf^ za(HpLBp)RJjqbziMe07iS>x5?pCY&6k`Ekwux=-i*1OTIW49WSlF*2JZa1Put?J*w z{q8=bj;xWOPU|Dnbf!D!d?8>I{MbU^^e=iOO7t*r%1=5iI1sc-(ckbQQ~C>ec~#mX zqBI7Jv`IZjZt0P@AuYmBQZX>tvI1=pF|F0W7@Y!pz2CABFQD}!{P=Y|9n$5~wF6cI zNVOuMcB!w>Vj+U=RAEC@X4y~yu5}VHLv&dT6)8R_dDR&qd1nhbA#h^MKz}wNQ#7at zka7>x)Q#VibhVc0Sy2Toqz9W%iYDiO@jrWUftgf02JBUE;weiE_4|MKh?}(m?~jNv z6j%?+=UrlWEcjl=gZS8IIElv+NyLC`FA&$r?2M~J3n-#(OgHF;36^RB#t1JOn3XTH z58<;6pGyIXm8LYfEi7QW3S4P$={8Eh>yvwCf!upglF5|hW(t)-N9J}S2Avd!7DwvD z4LBN1!9`j|Lm_+gYFbPnqe(y4FB>Tgi>d}H(|f#9;WxuvMs8>lnJ(9ge{WYzr# zUIQpUFyK8@ht58}m57L376xZ$7Xt~or0DJESin=!3^=BS0^ul(q=kjy0Yy-fDBs9i zs0fdkY;-rae>&j{9yJpP`Wm3LirC$4j>QmiP{bB%es)7&B7=XW<17ZR@foA+*58o& zIG{IIO@N^}Al(a~)gFo;D=feSb_qIi??SC&kj=(m9kd6OM*T4jJulatHgl4Kq{6`d z+<1b!$E+MgN;c;mX1*N{pd9&*k)>`xrWBn~sLu*~dYEj(Ji#R?{4(ZP8`6!wt1x{0 zTg1@#7@;*Je-(6{fkthC$mj%~wT*8$&{&HkaOhZ78aaQ7HMg4MgO08pj}mOLku|&H z?#(zLH@Z?FwE7nKkT565Ittg=vs6gDm7va_oUuRF9}9N!Dm2;fqYzYTSG|?BT=@0` z+<8`7z|$9xY4m27E>my(F|rtD_dwMz6Vu?Yv$`rexY_~RAmG51hhdboBbA_!_#-1> z@wben6Cyu`*O+yBf-O<^6K_He5<(T7KX~-g+?=LTyHWyzObssPq|+WGE#$z|_9bA& zr$U!vwmArByT@I&l* zAICpo3*f1cf}0@_F9_MN_Ck#p`)-{Kr7Vv8nrKD|4pXwUFkW5z) zcmz=xOQb^1`PwruYOy54(IZHG)Uc2~lA;D3tdime_XYkdS7g^BVwR&)%>27Ou+(0c0kP$MeXrW@nhx)U7rzl8vqZt*z zx~5o>^`5`U_ju-P_4*pH;4FN~jtte#;QjZ0r;2~5t{wxdD7z+4%_C4h?-Ka<0)QKq zYqmdxvG^hD3>0k1Xi{JM-sm?t z;o<0#GvXkx*S`s4;0-^QBBl2Ui#u7%<|f<4`K3?ndGJ$t-Jar~=qnn=h75?GT2IW+ zxcJ|*Nd{`TMhFReeR2Bc0bfv2^xKO07YXKTQg~)+6D88-`6?D7E`CcD5NNM*MUcjf za}Pd8-5BwK(&{+Pe)y3?3*9*t2kNU8CBOB0!9YEvCo=_HBP-2+bLu2xxd8p5MWFB( zYcpB-?Mo{;z{;zhdI*SV$-bJVjXEIm@#d>i6Q}@r+mbzy8fp9^6!foIicR2$f6ZLX zv_-Z27KpEy8HbjYvkh}rd>&#hsi;l_9D4jOD*6eb&m3bVn;Dg}Pc$q6Y1U7M z2p^a%%R>gwH?;8Y1JRd2)*ve4TEhJIEC6E2OV==1=#ozWH`rxbK=}CNQ`6qa!ADMZ z3iMEznRJPZ!B99w)E+5dXJKrTj5wI>cKbyIuFYUz7WM;Afs;=!&C0!V$n1Ag+;n-V zAZ)Zy{U>t2cJd(V@5B-Y z<&*!AlS5hZv=2!uo!EkB8R;fn0cm<*0{%l6|K%sR&R_(jm*|fe!=3rP5}pMVH1BTIbO0lg zI%SbQSf-XhQk^<;4pJemT7&b7Itxnzr+Faxt?J&5u9^FQvYXi7R~(?wqG-nU7a)9H zo1$^EI;vca+VBd3_I~N+eP~gKDWIBaC#NDeGE=dbKgCx>ETjg!KQcnj9s60YUKY(^ z-OvRM9-WyM@z1`zIb(PdYGEw#rPY3b&ur^4jm}^GSN4Y6_uZfZul!9#sjFZASI!%X zQ>~B^=H%*I0vHzb>a$^-XRAR<3x!?8?s5uTb5NFQiCezW+n`da`5547e;ljA;6Qza z7`_n13)t_>H5;kWr2s&1^`b{uvYCG7kLK|zC$c}rr^oPNvMs6Plpm0xTS;DcOm8`= z{a_(51Rw4P6h<{Bzm2H2YySyulw=`*Q{_Xd*V(EH;8+3*A+eni1U-^(Nn3SP026F= z3bI~yyJm6U7`DUQPf3zE!HYRGTc?o9{}4QZ>e3j}Y)aNh(8k5%a4bLQJ9$z;L7Fk~ zH^{2!)G3^kH1NvF6pY^&mzK^5?nAW}rG!D2(3pLd4&biwpB zf=_rjY6$iy8zi0~P=WB9V)}oGo}@_Op~Nn;@Z5jG*`R0)=*H}?kT6C#Y7%2gFoi}v z<@Jsy9=HxuHxlr>RiwJihitv|$Nl#r+bLn@*BcwwUo%MjI{e#-D5FVlzjrD?`$Ae| z9SD7a1v1w@39y-fk8=zw!2LpwlHETPRgC!S%0j`bi@M%pGhWp&=5;!SyD~S~I3(ZM2wXdtjPA zfv-xA_}WU>@Y$~4U{!soO8PkmWux0lX3#>E_eC~|US8B+5iW>xXJsKLou3ZLcqxod z?IAx_V?p$Y;`v)oMFd_$X0Dvg8xx6<8V?)$Wbhg`N{wI)awTB2UT+#Fe<-V{=@sBD z4)7OhQrYTa7Fj@w{1AV$@Ww@30kC(?hA(_vMT!*-?0|hj;Ochx{xUV@p6`t`=e&YxE2nD%8}RPH7OoI=y&i_;$BozpC-D zj?W6qFoJ+xMuB?~ySP@i>EEFa1PT~!y-+((g&@*2=<&WKMSQQk*_JPu0gndfnt&}R zc79?8p)xL1%8OY77Wcl5ibZhXUek$}R2S~V@GeUiUJE@1Me6shR!pWwk=0=v!zQEb z49X86uygnt4(s?f>j1%DYqe29Cl5ml4e?)en6xAjbe(^4o16n{s9B8HUD)=%uA?qB z=~8H^x<7Mi8K!pz7zhlKiJj}qWjehZ$X0%J$55C7Hhly8n8v#j_1&`=8Tv&$n<~0Q zW}7^v5f%p9M$VaXr@jJ*qd=X>- zfn)z~WBn@3>iK!$iGy4Qj@}EyQT5mNMxpNCzN6w%3!JoLH`Lh*e>vD3|Jb_wTL_X) zg&s^`>CcpY_&(Cr7i3*E&W}$W;f^DTnC^lFDN-Lo+iGFvx{YU3^MH)v08tYF4#^W5 zO89&lO7a~rs@JE~pDpzswrr6AU1n~ehcamP==^VH(VO!jMF!6(qK$EbG!7UWkCQ~U z9;;Rzu^A&{X}mH~L)+iC_npi}E)huEE5r>mHIwlF6Ffn{39f!M`R33iWgrn*Q0P{D zAD8a)Ie$VuAK!NeCLyEOO_#ZEC>S zVH;CDc9cn}JH8y=JBW=wS@S_8js`auQ!Ymd+rN&y&jAL~1KpnJkx69i3}gk>8I!-SaT0WCE0naig%2&NR8p_a@i!8JtgP%;&7~?yy@LuuY$I1Um(?eCX_7pWp4)1!{htWVHBqwG z)_dGyTAKA0S=4>IiO(@ycCy*`R?Mv&w_S_^PS(QN`la5pZ~Uw0Ek&vi-Cp2HxNRzTk_ExAMFIeGxR7m zH8<}C{TXJ^d(yGFT8c_JK;%YC8=u(Ra-F_XCMk}Q6!_Y%`T7Wmk!PRu>}M+={*$DT z^1xFxtN4`U6y?Zyu4`Xvv__ZA$mFOS*S%ua;m_eJ*vWnr`Ssyu>;3gAbw!&8wrrj& zf7Ek79scZ059W}otNpxlB@CH75Y$I&VrU#Whip!qKXm^*(ORlOsBDm3w#owN)=kQ} znNJKRO~#FnQjV1;e{AY_O-@#jnAk~3!;_ySL{IjY<9Q(hIK3cdIiXQQT@_3Vcd zlY5)@C!pBHoJez!G!_iTMB}IaO@?x0POLIk5KCjy* zW}Asb)FUEFN*8DRi?ms;r&9S73iI4|Hg&Z_d}J~ zV%guntKtUy!lJ}`rZxF2mXeG@u+(Nkr(AGf*V|9a5K5~~SGs$w zk$+}VQuKKBRWCj~gJpJeAeJ;3P6bS_5N}P*aOTwRt1*pvBqdlJSG@Hd&3m&6v|sSr zBduT|Ue`9}#Ua@hg<-6{7^}V@a(G35v;;Vx^LDw!}w||%1l$am@ zi1+Sz+FkKlO`~M&vj&0#j)#R^1DXv=1KL+ip7u(munwF;{B=CsC3!aEbCIrDJ5(fZ zNYH8%_W>E#h&AdHtFJg-McO}0*MiQ<4O;L9(=FMCJ_%48WgO}>plon>n$(SWC)SS0 zrbK8EY6!+p-0RW_YSySP(@68>D3I52d4U%%w1Kf&HIen4_{6(A5ax+XQJ5ATrD3?# zp#MDc;m9W9*`t&9nKmUGe)63Xs+!lGQS#wgOe%yCbZ1`$G@LO^BS&L6#$5f+1|`KS zEXTAt5P8ed5zkAGt@`wPkxW#(iO(Nfu(f$Sj8y)REoJ!K{fTpL!?tt?=JU!|29j3} zGRGg73P)|@loh?cOm2Z;nN+tIRn4cdWG03u3PY>3QmQV)Gw16(A3xZ94nq09zvCIK z0b^S8J`=Q3FiDw`_)~{lwtA+4+<=NVY+Q`*sw&x3MMU_jtwLKl5w9rw5h`(kfsm3V zhf$sOW7OfQvj-tpMg6-17NQ?Q_+`XGUg%Sm%oJo-Wkqi3UaGD?8>wvedPw&p>I)vT z#ZVApWS14wlG^o;NH0UomC=Jduk1&mi|MOfWi5?pD5)!YlQ>+Dx>jsnkt8EOW929i z4X0Hb9lT5?>8<*(?Xwww9j}Fj1<{8kq+y(~Z6bU}+pG$I@aMzk*WW`nmVp+7Cq#Vr zbs2f*l2);bS+9;xO^K}7L*1%BY6I{@%CQ^C#Sc$tGjt|MoQ zHuIc}>abEBt&dzVpRu#1XR*u4t|y;5dg$E905aF2Bgd{tqO+<-wESmB!;8Mpb5%de z{oLNgKd#_TS~D;8vO89`3(ih7*-+263CqsUQ7iqDsWEso`jdz4++?`W+Plari^yc= zrDqG=vD)thhO0`uHmeJx)IO^x=2PZ<2{wWWZU#DKw}yiEc%NOs0I z_@eL{dWl+po!(+-Klk#J%OFM-Oc8$s;gR(jyB}zK6a!K%RsI(b8Uwv37D-jmvS#P7 zV~YFv_P-NUcDDUH2Co;I4P$BiVY@-6!|d*KjqUKw<0;9R4ZmpegQd6bRz7?lAVkH} zLM=7u;^I*1YP@f>%{hi>03D&&eWpV+X#UBrSLGby$33#88t?~FsVkXX+a0#~Oq|_jo$K;X3|x{p zcRKIB2!PpncRab-OYTj3X;l7lvaek~yTkF>=6#K};7@GY(SZ3?CYfxUlS-9@ z(U3>6%?Eay7*ST@3;XG-8E-u862sCPI~UXas9<_Me8{rrQZHFLX==^Mw{a^Jc#v7>QD1B;2F*`yrrQSFgU zXNEe-so2$reSy6-sSx=dtqJ@It}Ph~h zRPg6?3Rq{BO_-B4ePxTJ>PB()q0LcOf#&#?)}17ZM-Q2fti$)pOV+o9s?kg#00|N-_EV=99_VxVMSm zbjr~Vp%vSbXT|7I<))K3p))u)d7$WDMczpU!3B~8Jf7_$puhXCilHU>YcPwy9&`z4 zc{M!Ss>B3W6q8F0yy1>!SFw$AEw$(!&fAyQ7p~Blc5$4h-M1U;N3_k=KXpC)CmR=n zTv0|V=S9p0fh_;S5wyR~qTyg;Ts63g2c1ucRy=G*egid)uqK6$tS`fA&3(x=c+j8V6VH&I;6 z`;^~_@x^QJVDixp5GiBMS3|T@XaJXJdTDp&R&(Y})}r_;!U&NS`BqWk{Az9X3Sd@r zuP&AayNU*g{{3<9erBin0e}gsfOX#1Xudt9B@jKJ6Z^cXV#ejq!v=iIDB8vc|Tq=UNt%H$CrP(DpX{A;6> z9ztl+9NzJrF1$ZO3NAq}xERj20;J#f+r%`0ZlhbxpEQuBeyQ8aI-!q&jo-@j{JXHw zPWq$D&d?H|fu_T-cW8rO2S^dpzAQC5-CHbs8G*xp20p{+`9CduOi?&X*qiGP^Wl@d zk{Yy>5j-Xx$}l{Z5j#cR&5Cx19*sMf|4s&U0N#ai<^vMLIJJ7~yOFBqFev&**YAm} z6YLB6og`n;jrGrYD2#LM>uJ2og>Bt=DI06|`*}M&{xHNjm9YFf-@N&Ghry@3pGUS% z0FX$N`T{Ppl~IuIoK>Bkcabv0fhkV5J=O}gcZmmKQ4j_F6r1eWl5sA z#7E-~?vg_lWFc69RN#^weUW(C|5T-CpF$)_JS*hD1W+EC*otCsiNUFDgx+zdTafme z{M+<%C%+3p_htAcwVwfV92#(S-1+%sppGRwNvZ=3?G--g(>{lEA1I}e=Buq-bwoRA;9R}{zu z48`}COj#Mw;o$%4v7>w=f<9bt8%`obW=46USiY1>|2m9dMtbK!xCL9v3M$ zqF)Qp{#0(!1eTO(O7L9@_LgB%$tcaW23)#ll@Qc01 zrOSn2Ad~4eb#M}R*?&D?Bp9<7Lu*+^CrXQ`K)o8*N64lB5Nu@BZ8gGdzy(Q)+4n0%SC;#yX9qcwv~C0(4vW z_5%x%KD=#ArTsPvPDFN@S#Pb^>jNYRDctRY6#2RJ zn36!TZk2+-{!GDPJ|JnQ-rl```!}1Nk$3D0N2kz^qBsB>Vm7cWjFjN^#iR>5cSh zMxF7~A}ycPl`tHH@mh;U3;Fib&HjNFs25W68}I5jq@EydrAC-r{wS{U_-%jv)Nc1n z%8<8l=*cV4^91@6G}ljw|FV~VzIY)Rmdoj4!XhfC-E>g^X}#AaPrm4Eqv!d3E_k`W zH@;r>10ZNstFTb+Lux=QGSBcFsp~X$xLvx>bBtLwiAC*1LTXCNoP2(I_b4!xGi?$T zbN7Wq!r^Ab+tW)P;Lzs;P^2D?;uF-*JHh&f$_KS;mvIkMt}{3QmRU3(z#-GwA=y6v zW0r8BsdXd8_2A*d+{DDkwQrXri=5Zv=K^!~7JF5XHpV|!io^eH$uKLV3frlP7m{`j zhw&XArhlCdW*-nNz3LQ(E!M4@+TugCmc({$&lRwxRMKW|t(S^g9#t{5y%tMngXqS& z?^pL4sy-e6X4A34HFRA4MU~c&iU0R|{AYbIULajpAQJGPY~5<~%eUp~YOYh%?GDU) zn1B6hb(#(NLP?cs<5eoHJ-X1ZQvj1!QJ_w7?=SJ0Zr?w z+!x*GbU>#?&7ufWw|V%r=siMbK;ZnUKPAg7&)EGJcv5a&{%D{J4|R-k0F+UEr;{J zju>2Di#>6G3s_De%Vl@|iXUGK?XOMslKB99vct)aG0)p2RN(4|70uzxZ+rsjQ{0jt^X+oXvPE`_^X${l((69f6XP6J<@@Ib-(cKl*a|JW3t=3lhzolc1;cC z%)8s?U(X)N&7YLBb526N?@|1}PA3u5Xm^+*ijQ1eeSdkNDp)drRE@Km79LkH3ZG4) z(m2Lu@S{9arR2w310~vee785GNXVxBsoGcYwIIfw*r55$CuYJy2_=h&rL*I2nJ-k0 zHT_}m6U^1+oRQo)_kXQOsQLQFeI<_+8!CeDYftcx@tr~b$AaOIs*~W{zq-u@;N__L zg4-gGAfh)rE6cQz3Qeo&`l{~W!!QtX`^=|K)4lWH#xQ+}{Qfdb2KYv!`Pcr3>!YLS za(Z5{P8&H?8A@J7@j)xW)Q>0al-%CI#lCwcFloPkz284K#lQbkND19&7kj3MFKi&o^e8*c;s$WF|ok0w@sDJgC=+=6`4wcmXSRKq$ z1!A%l32*#zr3T(p~Aj);D0B7K!(9 zH%es9e;Eu62O@ZNLeW7J@S~}!wPQQ;^#csfBL5(9rB5zP$C-2UWa(|K4_)^h#rzpj zunt?R^+s6hm)ywa6=tK+z5JDyx}PfJ(r-V)#h>T?{wg>ye4ZuOm`nqey*Kg!#RKP^ zkr657fuFT}0+Vx6n1h*ek46@+%EY*S6=psmG8keT zWwo7^F-5x9Mf>+*m=5bxUsMJv=%l~xPGr+^|XMwO4FvAco~mQMJ({CCWMrZ?X>%Mqq4WO0_9E)Olt?{`TcU z1jr>S4L~XLml0yCc?o z2nEB&l7`-wU)On^K1e!7n;|WulXpn$@hR}VCBDw1i(YX5lh&ozx*dV0-nC;8+$dru zZ&HKliT~&;yK&;DZ0HL*N7YVMjyE%z)`>1VK1oho%v~Hv-xt*4Jok1|d$|~5QMXdOcn+||06-ub?Xs{Zis>%@d^TV@VCF0O` zUeqN*^RnMLvCyfrk!#>bP>Y0_YG_01fTP3WtH}Fps$Z9_HK|^H*h_@svz2Rs zpx4q_0ZC*V*_0cm(#Z%$@|`ovm?)vO3}=4Jqw8SKY&RkZkBT{>wk+OBTCnt)~ zc0DYdE1=jgLW13c5w72x$;d85jC2AIuNyRwFNQonlXjsPdS5zpU(2QQu%cEXv%_!2 z{g>>0L9ORLP>>YpL#nb#9$!s`dS@%+KMUoTLz2MKe%>>$CK^os#b}+k#p8a#m$NEc zgUDmB#%VI6O*f6n;zcjp>hvYgR2I`y>8-_A#R=|pMU?w-&4Ops{HOeHc6O9qnHbke zfopOJhr4z!()dh(L$4NmlP7IVsUVkBhd1b~VQv2e_wBpuNZD9gvPq!43N8r`J9#6F zy9*T^^Rb{;J+?8ER*6vmRrx7z2MK$|2hPHFC~5>n!i!IR$9XGT_xzk$f{P(9Em<-C z%R@`y!9R*$9Oyq&n)h@?c2_ip)G6 ztAN5%$b&s@R^f#ZH|hDLb7j}xEXVIDC&MbU^ddXb-&G6ZetJzjI=3r!{ae82JjPK> z;JC$;a1y`Wu!j&!wh8qGTU-4J`cxuKBUbd^S#Ww%JE#?8_%{8)vgJH?Up4Vj`pMhFpXD89?2T+B5JvZQ zrALr0n%Cz(!p*7tcESW)?qS35SnXHw=y(jrHU1}Bp?JlAOiWDEJ%ahX6uw1aETYj0 zNbprR7BCoeb+mV1%5J@#5U?CmT}-DV{`Mk67JV+}M0;`dn17n#eSnf&VR3%OXN8tU z1UKd6ub2Icezl)OE2n0xHB=MM39o66dD^bJ-p+Z-ZQ2F$%WXK;)9j_2|Hcy)eRxi= z9aO&^7`X3cL94m>)hqn6x6#2fWjk#monF-8<3XdzzHn!cCop`&*693GGE}1J2z#pDA^wqJNap#x3fEhLR`t4``v>&!Ru3eUlN-nmQg;sfBnqsae#oyjk#zr1W35;$KlGGV3w|znOyBQ zE(3c$fboBPT?JHB+uoN@h7g8UX{5WmQ@Xp6ln$j~kOrk2q@+Q*1O|}qF6of&Zuk!G zUhjMN#kYtx!&27aoW1}1SO2|Va64w7`gbs=b3adq%HhA_6aPXxcb1CIK)5wNq4|!y zU8B}{rKonny|3eI2Jhc$$`cr$*BN|Ub=r_MJA6Y%&?O6upAWlV0F8A%<1F&55b+C8 znK`ZeGm=jagPQJ07-$AKAy{}bK7?g0=8NBiOy;BXSk!D0Mn6Qu@=SHi#^grKGEejAIC--IDMy#-(y`5qVh z+6aC=b8no&f64j;>07uhtMgT3trS`D9H{}yW1}HrApGCq^r1K`P3%iCf~Gp2GDLV3 z__FP2aEZWjzGFV_LuMFdwQe@@i5_l6)*eq zqlQs#GBcgY0jdiVGR^|To&yrld@c9Evp{05a z5CDDET#kJZs&bwI=rc_IyBMe4Bzye zn%XBs%lmV|`RmjqdyFnr!hJi=c!*m|D~M8v={ z^QLz+yRg27BpLVgfq{Wf`(l|DfHB4i289L3LMhq-StwX|^I7XA20T6`7zalJC~sMS zrl4YMOzH(>bCaKhEjq1~`2&rJIdk9d+LZiOE76LR!G=#K-Hkc^z%?*$G8EDU*Z}Fw z#_T{rTP{pN@K+2g6#a|P07Ytcn8XowSl6k3qvxo_i@$`BKeZ|BM{SDF(Cw+f{#j>Xk(@-6tVH*?R|kpY-h#TlArvKW7ifJH>W9E%aSzkF-+>aOX^&zoDL zJ1_VBhA=6Vs$FBljxX{96xf`%eTA9quNnB~i!w1{a(EJ5L#-7*zDE(n-Iq)ReBBz_ z@(c_{C`Wvz@B$4a2YEEBpEHbBT2N=y_&S8`UVAeN0~=wwVbU< z*|ArOoTi?y6aktkhG66$GSxr7x4eS6hpUw3IxG(aT@f$6hwWK8lqAQ#Z{Lyl@dONV zghiA<)9m$-i(G9v1?bACl#o{t84{W%NH|eG*y0&114Sf2k=_BD17hjf0L?g|<*F+c zuh`$!xr#Y&yn_WBeov;l{!NHEFqkBUbkr7F_)AX5g9T_v`dM?#&l@#Bhld(tK9j=(z~yKsa`m4) ztYrtD=fmzBpp{^Bcazzc`p&!BUt?Dqi?dbWW(|?Y2Fm~nI7{QrK0c+>ABF!$-TD69DCbE3fcY_GjtCQ<&Pd#k@CQJUhxI&S z|FElRb8PonU!iOn~-vUsSB4!~l|9*in5S)+0f&)Pl#9%D= z(=1wlVw6zwF0wm_kcekv6${@SaoQnVj1ehteP|eUT+tbR#n)hKge3y#+7SM5hQ)?O3!$k zfU@#i|{q-=HfmsJ}IEGr9z;us>0u_m=?wg$hHTwo^{11nl9UhLUfch|kK;*e}&dmI;QWEf5 z$Pj%PUNaV76SK`)h!_GQqs#$19X~QbaBx(PtYCZb^zsiQABocw*e!B!A*MrTCn<`N zJ9icV2(Sc^%LJ}BUsE@&9Qpy#a>p*F&9Uc?H5^XW`45le32YkKaFwM>GM`%ohe?9M z`dHv*s4c5+heps~UU2DS`KkRJ5dLqE6E;CeOw2!3*AW9=)3>2FF{v5zjkN4|E(Gj< z-;`V?s0bpXAnPvh55hYi5lX^chXK}cEm#r~Y8GF>rWisE9|4NMF2>SgAHcV=fK3dP zfeErVDfx7f_z{p6!xjI=M|mJ1iNnffGsE^1VKHjP@{(@`U*%_k06n|+@=i?hWg*}$ zz#qktOLzaC=YQUEd;cek6SOM9ud9_1fLX{3uM8i32wD4r-I7miC@*xUgYw)DfzFA; z70_gtxO~COYLYp1nxHa#%AjQ8rI)a~cZI;#32cCizJ-X~Blw6Q{%I*fAbPOR@i?-R zSk09;2EXKhidKiY*<9MKR9QW1=WD`MEoj;`9@3z+MNRkDJEzSLcSBKT`2d>vV-5NJ z9S6|@mJVH>01!J{I1yXm{sG02Y#$%$3qHfA7YHzw2r!h0_L{75;E%&ni7<0~0s?7( z&)L1;^zm@88*Sk$zS}yFXSk_;Lf10iS@A)_%{s?zDxJ4z;nZ!hk9|^8IE{+U>46#{ zBT4gmkaWEM&WS4C-EooQiF+X`a>2OYNo-j!pTdLw1Z!#A)%Id}lfhYXU%x@ob>XM< z0iwA;pQ4jWn$?T=dwZUP<(1Mq%L$ z+PtP>89n4_y-e=N);0KvL5qLcnJ1<+#Td~sHFAVgNpH6PiL^KAhjCOqP+4pQsGj~= zXq!nD0VI^nYL5CC9njCNA!3VJ_nAo|M7x_UaAQkxjXnny3gBeiOrREUO%T2M49m;D1w#nx^xcJI^;#Sd8Ey&zf3g0X7o=diQ3mn|leh_Z=Hk0)(X z6fHKm42_uS7v!}w-Cm80G10{@U)+Kp0$yDRGHB?>XSa54mP;X8T=LgOc^z%&W3-OyzABG5wsAoYO5{ua2|%DQXapVymJyz8q_R zjJ8nGDqps-l)fhL-poK1p#jkEEO&GAnJsdlt5K~Mvq~GhSAR^yU zJ7$&rvdFvH8v62^B@QCFujv9leuWgaQe*zwo*tp++wB@{L1+pp9;(m&w*CWm)(W00 z^$Df|2)`~$lRz^r{{;3FNq>1=s?3eDsh{tSFD=b!ws>fogl z80aaxI9tXKh9&(SF*6r_iTZ!S9Li)7)6Mo=zgR|B(*BOcE;S_dtUP+z=`C28Ix4pK zwYYqsqI2NIN;Q`B%WdhSSc*iJ_?{2BXRt2VOspRtpKY>K}bAVN>j6-hwVvr2Flwuwj}cqABsd__bO5S*zRGnx-&M&n2TDST!#Bl#`@ zOesd>g7+tC9H39TB%lF7BP~b^e&TRKV4o26&JQ3kWe6X>mies&V8u>AsH-@$P(yUktmW6^r1C5h09lMyF`7mXsOrn)`efvJGk$kL#8lJWA#m zih36baP9O4$-8Q4LFn>4a?^@0;YY;*(&lU=`g^tl`H!`}ggoHukv3B?Fvtg&HRa7` zRtJFkDqb~Cxa3)GNcn9Pp%UughPF-+l*kX_l7fi36!?Sv%h1&SYQ>K zLfq`&Dlac@vSrwH`UpX~8%&cUX?27pOMXTVlcVvT7?wmBf?Y*~DU1J)znpj)gvF?z z3T*Hwu2o?YMOs`V;$Kax8eB%oB8_F!EGRb{fyZZ1Z8;VQ=vmm-!Au6g^!nFNG>l@gzj0=)N1}VrU^if;H&ZWU1NuLA{LsKsJ^AVew1Gx31@D zrJA1X04`WeN1^*SEO}@Jo0)kzmTkaD{0R*Sc9&Y198~tvxQAIvkT?VNL8J}1QnYwv zijR;X3}AIi*L#(K7oUG(@rno;CcY2mYa4_z5@?A()Ch+>a2bC5bF>;tX9)SiR+$aF zqHc{|1})ws*QC}_(pJBlKw6>oH2f!@`p1Lg6A@x;84cs(W8r!R^XOtd)+wD=C1qbGox(n1a(Hs6Mtb=EQ900U#fMBG(=0D&Vvnvx=kn@E3-&f5T? z``ata`TF;dmXxwj6_B?h|4hI;X^{Jb_pkZ*$92F43n?obKN)zY0^{34l7S|i-x~OA zaF+=ae5e4sZRfVU44|-dT2PTNFnau7ynP2KHD67MpEAHy+a02;qJLzv$9=`>ga>nX zkpmSbZmEz2t^Ii)z!~tz>jSjnnx?(6B&fVx-nW-ezEJ1>J3$YFA17k|S<~+CYQToh z;VU$ZDFkZGcmO>Cn8h1JVGx?8Kph_wBK&O-gc&$gJ%*Bu>@s4$jBNn^6t=jXD|l}d z1^iqH5=~$RDPj#$$^hCN-!~Q(#OE`!S4`>r@x3#r(bObILxZ1j8fNn9t zl7RFEaPEACn9zrjA1g?ihQ1F!F763&8D-c{UkDy3|3C(cYiHFa1Tp=La{O;k@?Xal zFsKepyI#W?gMn!k1lkk@x5CAXb_2S{oV*Y(JW2r7=w2B>UEo<@-hxEZNC8^VI4nj% zSZ4ed)}ta3;3B?4j?pCWMsM=H+~V$D*)oCk{w7-ebtC_H0U?cyeS)TW$p(QiK7zT? zek3%s3vo;%Ob|S_Z+p9#O;aWy=uFJKtsq`{2is!;#pQRX-I>v1uX!|~*T%ErbYufWG%ny&Dsy~%!rH2U$qQ{I7v>}~d*km~a8-qOX~VPOQhf5#B`&@yPwXfK z{fM#VScYCKO{zJ&&c3=n7`FW`*eMX4`$?-(<(@Pr-*qin_1h6`>`7)T$IY@x6Ao9| z7AH@+3-bK;4_f+urrogtj=vbi#QVbBI9#RpG-M{wJj`yF{ZO497uAoFq~+CY)6iex zNPOmLk~y2bU}21&V%;+R#)IrX#N*`ugm$9qbq0&9t*38oB}7|Cwv!cJ`TqG&+~%7_ z15~~?@Ylb=(7(?C*I*&zj~i`ihd&Ni7@sLuabZnT)&!tomKt!$-AvNw?7AT5!MpPk1`un8?y#S;Lpb=^Ow z%~!3iKi!Tzpk@)Jz`QNlm03LM6pyhS*e#_}H?O7H81i3sD*tqhO)vg!fk*)@p~S>E z;eMbw#k-cKX~q3ktHI->&=Y?a8pT1MCh|q#YJ}X%bRxeBXA`xSq(z#R4*;f9m`vz~ zh^6dJi6yr#sp~$IGDs-{V_&Qi{HND32yj|A1am*9l$ehAMJodj*C{}naILV;+nU0_P0-L^f*M32DF=QxYyk3{M9c8&-#?B)+~%iULY3@#IP2t8Tg)R zO?gbQng?9mE3~x3#mC{n-TK5Q!hq`10lfP?o%u0&^S?gdAi&&xnNC9u0K#HF+ZLk< zlcxRNTxrYYJAZa>Z5t6)#&VLuM?EGXB{ErPa#xz%<96W2ra80VG270e;9353Kiu)s z>J*{1)Q2O?5u3`mk{3tLbRbTl=xgn2LA;&f04{HG)y8q6hfDj9o#tam(o+*pp#}?U zpLc?rv#Rga0xP{71aIAdk0;kR5dkw?yWfjU*0e?ZH59!WG(9^I#yu}R*ZP^Sn-*zB z@Hvut$6aUIInDyn+PKRRBGlnJ^9nI9mIRKL_ZF&UewpuG2e7j3wS|u#1hEUOBFYT- zenzWaJ))g}k9s5?j^H2x16VG;i zDlLC(LUi$4{(S{0FV5}e*I%lA)_z5`lN!qJ9u>Z8!%;0Ze!fK=)uErz(d1;(#lz#_ z8sRBRFdQzB+^ljkT5zG6h|{3Ft$jgJeKRC(9D$!768badC352>53y5?t}^}yVbDIR zox$s;{k#DPr8*i6U<2AsOyr_muW=>J=1R(L$JSYkd*hs(gr3Xk7vH-oT0RTP4i*!za({Nhc+izqVDp-I=aWV^Of>xi zE}pXIEgiT_7MKAzS7`{v29(cZR*JwRs2&AVps+<#_B1OQMks6Qxz;+NnBx!=JVvHq1ZHE%#avB9TNj{0fHJ#>?Sfno3!%P)i{Fs>~~5b<`bMrolt3ddi8 zSU{MvUiHNvobIoc`d?mrjDg$}6Ke%$^2JSm9fj&l{j&eedr?c(q+DZv`QrnT+-a=k z3rR@`)R=AivINI$6WHfn{i)`8%g>##HluIX4xe@d`9HjW*v1V*Xw@AI8lnp~J|IID zJfP+GD!#Pkf^ys;;YpCK zr{OU2Lf@y=Uh(6g$0>o_uKN%$M$*`2vMD9xZJv3@Nqgp)t7gx=9d~MFi7<>=AQ7)K zTZ5@QYhf&qzDp<$AK01MtoBx|J)12ML8u%~6z@z;bIpWfKR79v@OCX-8xD_{^b&Sl z_L@`c!7hedt1Q9QN^zZX!nQtLWraVr+Ur@=6M%aX2!X`FN5?#G4#EFULO$M8KK#G$ zAAp8NWdU9%4PKt-i{tu~Dosu^bvj=5f|3B4EK~!8Alo=#2YJZ_4}FcDiu5)&b=B{s@lo*)%)em4_SSA5#7w1s^&7D zIh_8Y;2q3^<%au9DYJ5ffsMsiCd#&Z&x6pMb1p->9G>n7T@~+$bC)1#*x1lV9q7R> zT+gq~YrS;_+Y`VHz^Mm&xnbLCIS{y<{=>-l@6&vV7$%0dJce%rhE{b$oJ8ASigYJx z6+an~s1;auRQ#!L`<8wRgVc_(sm0Y^aU>8D(h=Y@To!W@U}b&L2=Y|OAuM{`x_c|l ztKOd}vl7X=FU)4zcL$F1sbHSK)sNzm&B|%Ny`Qg(t_k~)pb+wb6iaFF7EPt2en@2x zr&Q-%*4o|e8bX!bo-&O_5p(t3p;gLzsFv$RC$^32x$K&3#l)2FKyzOScPxp=tUcR= z_4z9T?43c&W=&+^sM>}0tN@SNjtwO;^NnPEJnQNh!Z)q0)@s5)^8^F|ln5#-_BTC& zyu=9_K5*$B%kBt8HR}{x%=ywhfNNyole2?6_y*0laVYNF&*1IG(Sa<@_>0xWTu*6* z+CAatJg2#pK^LRzQxqkWHfDD_BRFD%r9q^$7h#)7L`VhCyFO0aH&3^?axQq(ChJXjYoyi z9xdc5@2%^N&fi3R*;%`GSOLeb!+vviNevGyG2Gi8a_7liPNtA3wVF%1ub*T8@)g&B z)R43Wb6M;$A~Ooa3<9jUNlT>6&&jnd@$h~-pZ`)O{t5b97+_-jAn-#3@L1G3YLzzg zjUn2a1P#x0^2^N6hE7duJ4v1AugmzkG#EW+uG;GOS!!O68&K zsVqI(1}-HA@d!7m(rTqLnU>&}amBhaGo4$XxUyX+_Own|JA(aOFOS zkYM6vMzUDJKrqnYTsfw+`*kddlR9@P0quIU{$=uHPnuwj!EULX#o8})WwDN|Y?P!* zDLX$r9B)a3rk}xs1V0lBb#O#0hc~*z-&eg|)4krGPw3FE{bXwZ6>4-jChYcDtcB{6 z;>c)8H$FHvK(h#g`elN{;%?eY1aU_F_lGQ7b!2R`WCv_q_xoE$RI_j2R?q}p>i~<^ z*MT|x2+{_1(Y}0e;h#XM?-lSjHn_*J45Dia{hPlJ{pfy9W}{BX!kPk7NJg?C2b6h1fV z2SP5bSQ}K(a$2v}9MY#CVw%OE4G2C&>Gx|x$RR(1x$3|~uoxQ>92VS3=*v}m#g_L7 zGIH>=rlOjr{gR}=BV`W|Xagjyl~x+YZQ8qyYDGFM3V$JDDlx#baWM5bc!+pt$~=0I z_Zi^m_ZPNA5>o&&#M-9!8ny1N*AQXWeIiHl{z46{01iJWZBSQpt z`-7V4)xyy*{-Ck89NHesva%3<-94>Jf3xRaG1s#Ct9lrFbNYP{SFS<`pp zd3m#Ev1!y=#r=!5bWLXH$Ds#-V>+w2NlV;~Uf;0199HGNC-u_lV;*dihH6ptpT z+xErGTtMj0qJ4Yru(`9$9D4R&JNOHwYL38o@|vXoxzoc3r9vPqG%RP zDmXN!Z^UV++GWX$#xa6Q6qEo|L^F1|bhdE>XW~5}!KhMn(UmmrmM_LlUH@t-C+#%W z0bs;9&{s!4jKZ4IM^=Ywr)F@ew9;n0Zl8bNQk8Vwt$Pzxb8ku7QvZJKBT8O-2wLtU zegmZSHEH$vM4F|XctCBwgI*d(xfFD{j2lYvExU5XK0#b3e%-u0Q)|5njd$jodVS~E zxalvHu(L~u+ug05T<@j*n*b{1r)y&Q1qnCd71Kez&bg&GF1GKy%zKi$*16)5Sj`3i zON4pk*@0U8cIve`-g8TJ1~ny5U6gW=Oip8fjB=iWH=EXw>Sw;xDA}Hw;N@j5`9mge zAaGXzx~xE;T*ll;0e6KkJ)}xni5fP4-GV;nSjVpOBf&*4+vh z1{@g!UKi!i#Gg(i2W?5>nj&%P-VY(3J?}j{tNklB*g-|yrJtt9q*V*0Vyvfbg!LYA$Nr`|!HThJ|lWPFYsvz31 zE3KoKPk&Jxn|?8=DYh1CpH9_vPufbFC2*)}Z7Xbwmf@&rq69hNo5)1E&1>kF!a@2N-jWAP5ak8eEFp(2lpLEG%q8)jx71p}`8QqRMt7Zi=AYQ;Bv z{1=@;6r_}>=&mLkJl`7u^~Q>{N!e=f?YMhE43^3L}o;(FLA| zt1@hHSgXgH8p+_wBQc}+P*8rQoguYx@u)%3&`z*={E$|lA#R`b$}7h4cp#l=ILEy{ zShDT;4D~KIXYekY4u)!SfU_#MMeO$mV`EL~CYPA;x$SFA!}P7Ki_&;|UA+eQKh%G$ zu1tUL($D_QYkTS`VcDqkQ1f<*EAQCd?0KnHi#GU>5a!IQpmk`r0v?u5$64{&|3fZu zU~>t}lu@tdSQ6vpwdUH;?)|po9>RMfeK$J%(BA)Sc#2#xIrJdmTCS~N7p_IjZ*0%= z-LA;fOhE&`b4c45O@-GoO-!e%%xGOV)r+LM4R1 zB%6J{!Ap;$Czd{MB6qj^*XN;)cWX!G%%gC9Gv6^c7eCW(9dCU-cKT(tLTg#Z0B@wJ znK;3n^*EGS;bp}zBV?W?mW_v{quZg?48|CHbvo`F$>lS)Z?X?ph zQuf_PiF3Ip>Ow`H^1^P44{ioy>G-}kPP-R$u3Q9h|dYyngfpic}OUHavo2$N#Vh%KM8f}4)hFI&5a7yiOR#NCKwulR|tF`wax9DQ9;8Ir2hvTr!b zJIDdWHB0)ux*4el_d30>}wBpq# zC#_}r%;&X<()u~k*EU5+Jw~5>T6+n5eZb?&dxGNh38N8ybYF$rRm*7ozZ1cKNIndt z8G>SyLEjyeF63Qe0Ofhy=#XrM$v5?W{!&Leou^a?0AG|k5rv=ibFcT@d2AxKh1{;n zD1#k>%uy5MS|ud$>&uP0nkt?J6|N}CZpnq8b_DJA%Jdd^&5r&W@fX#kanKEsW*@Vr zC^dalh&OP~LC0NHLt}G64S4zB&+BPQbNmd~KzN``7QnBz`)56l$cufZQPyvlpOyo% z+b9a?0??DB^UTp1pbhtBLPdnAb(ojTqM0_ z`@k%_#bN9IcPPAx%@&sLPJU<*R)66)aHywm^gk4?W+$2aMvKe$E`b)o<2C@bO4wC$ z8Sd9aWfK`rc@8IE`fD$>!i$ffDK2q$R&HX{O41)SM&Ef)>;v0+qC1}owj%~ z*wdKmPnWR+MbY>5YGc!EXJY`3+_a!j<9NJz42;lfPsngZcS$O(B0rz8a6OC>PxyB*aXsEHS2(GI39^XwnMzzrHsZp0wzTCZgsye!E{~ zJs{yov@smR>ti7FUilqg(K$oz+A|GBB~o1WfOm^)mcBFP{e(T8 z^(BxLn?kezgdETV3Yw5Koo|34&KPKPN+-ag^-NA+;DXLFb)kpKBUsC5_H zcMMomq#WWYRWe88e%U*;z8y{SYbZwbQgt;yo&s8As2c;JuLqjF&S3X6xjE-m9I{I( zQ(Q<;1=}qdN$LzwsBo&me;<=P9E)!xc)x<1wmnt!U)9-@6J zVP^-JoY>bdu;8sR4#k1mKvyK!_Bmi`D1EY!dKue8SNVje(Wd(Kd|mM%KqRcZ2xhB) zyla+xxbJIMNtg(=q%vd-Mm%yrtzNQv(V@ktx!RdiI2Gq*?=u^ZC)QfSv&N&FpwhuJ zlvk*|e)KFBAh#?JE$fS0>1TZ^6Xmf#I10fvx`Tw&YQg3UQ$8uj1vzE~#~3TdQUPyd z)e;9$G|E4mSEk9I=*`F;IG_Saz0k=Gp0QFpmK;}s6K+u>FzAvB2Ekb)c@5Z=VUx6# z?tgj)AQRYYu>UUl4;9OMbLi&S2X>3I{v+jf6IwttiWwwape<5$-PZa>gKV3{VoD;= zugT$1#$_T~HZw5cL`fi^T0Ij|l41O1!@rAM)X;A+&zk}&m6%8SK#)f-lb2#{bwD)N zASdZkl0Ycw$v)v)^6fOR)pC9=q%}rTwqCA!3O6k8Rnt3=hwH|*Y4T_@yPkko`--b) zMx*5smNw1g7nNLV?yW0ZKf1~HY%%=$zzoVN9z>V}dh;}*F{A;Ty|fs#3;F=tL>Ilp z?<7`KShZBSp#4VJYNx|v$8#vz=yw*NX06i1A<9vWI%TBNqy$zxUu;dA#U~D&U6DX( z)w2Xc)4`il?H;~<;^J^`Y-(~Q7nUatQ|4yOJY2Z-cA!#jA)U7(Vi5mw){MZ58tNL}zk0<4HD!cC{ zIfzyNCcX2tk|ua#=&I>`pM`VR%(2mdJAK@;I?ErhotDC#O^2}^k?g>oFkmyt@9J1! zC5X$&F%rzQ5F?U_>iSdy)JlA%Xqfz;^X<={EXlyj@);s3h2>#*Od2u|CI2+&DRWwT z#~y9;%n4Mk@QkD|6n6oq1n>nBYKyaCZfc|}9R*Z10|Qm4Y2KQ-U(F9as{QS0OcZBc zTCo@4pzesCNFKTsBlLlD?8>ci!Px@g8~yP*C!YjaW~;$Q)lxYZ66s`OenYvfMTv90 z&8Sc;rw2j;%=23kRMjh{xIHEX&&$iR*`bkdv>T>hF3hdR8wHc5s?XA9oi_P(LPUuQ zMBnS2(Z!W_7yl^ovN)={ScAEpG-b`VEvltct4`Sfw%0tpzEU~8AVLl>uUtKSf3cA- z`}tb6qBn+R9MhwJX{ZA*nyN+J?(wULPHpNp@;MtvtPV!+pEvjVU8s$9DQ=*T?G5%} zVn@fIJaCAL*fZ8ry1qpLmq`jWyIjwZ@Env{V+N_rUrae(-Sv>{9OE!ZDT!dUFMQY! zKKxF3Zku`Mb0J^x;GxeY8DI&Q#C4gzYkLS z@u2Ch!`NdQpTS4TpFfqS42r_s?Qv77CzzoeF%fldtf|?tIAo1`U`NNnqOe=;(33#a zyNm0ALVjLm!O6^N_WFD`;Ok<}qJLd-+YAoYjr*jo8#O5lTu12L-AX~5Wl2MD1+&$N)ONzCMv@KVaF5`3J(*{FGBT4 z@5O&LMeVs^pa^t2gxR|M_I($f-ED^Fwm-67otL$sS%tKbRNq--tt*L46seXLoOYM( zrjQ&femH09TOr0F26W`^Dv!4)aHzcI>{~1NiBneN<)wUyzx*_DjN}N02ea`6vIir% zQz%+SYt2hF=+ai&gP<3-dQM!PX~&HnHhEstBZXVn9|38d5iNv!OPr4+v!+8w_n};Z z-m>kZ)Nz?t(cxweuHp9zMn4;pQ^)3!)*C5HhZX^O!r~KQ7D2k4j}fXF@pqlUaK}jT zp{8jV`P4%s>a?LB`2s>!)R-6bM4oga3;|w*-W1tB68G~ zyAZh~^yM+($XyY6E8fHlYW=q(<;SRImJ6vGdr6byjTdjiI(BnnI)2b4hK4lJ2B_1R zl(_lzueke8Ek$*uu`sf@8R&gVP;m{@rMv#MgVyxHkWn!n;{X@mwyXeLnMAq3>LITw z5$0ca4OEisrO*v)`Xlyf+JlG~eMvQ>2|d9>^MR;gs6x}YR!LEjX2W)+E#TPnX)x%u zL)IT~_{`v*9fM$EprW<=gfH>^AVS1okb@@%*pPb=iT(eHBk78@s6y7b(KJ1|<^We~ zl(u7e&&t0m|GBfUt4$qaBUKqf5R*e)GXIe1seMwf>eZH+sy*1uSn>Nk> z{!ER8YeyYbquE?;KPjCaj6-+#vS%TOH3?ewS;5C{b2ObARKA~1-SGzASO{Zk)O38U z+5E_vGoFWWr;+7e9r(-dS0cfF^SEhLgg8O5T3frB^DFkJ_13sa%$V3kih5S*a{b>r zPxdShk`1!G@V$pd+V$D$nlS8tT6GbMXo7Mv!bYZb5Iqjc*j?1p(Q0%~3B>U^Dukp| zGGl0Olvj^<1SgK=3P~rer-%ec(9v^`3J=?Vq=y~mqr}R&w$jk;n%mx%oqt!nJG!>k z5zukfva&{tqcc~a#SMR;<@YNK9>fJwjnQmv3%XuE)Tf`o{tyB%|9+Tpao4NbY-xpN zDkwAIe6{aACh4*VXKBv?JC1;9Z@dhWMqk)LNAFpRl!7www7tA2OS9%l$%s6pj2R{8 z&^#aQPNJ9`dMY#sGzyXU)VZG8`ca$~d2>eM|CdmkEn#67-1 zO`;!)WBj$)_`%ptf0sT=e6A6}zOF^N71hfXjv;eA6wkRoOD?jcT9bz4Os!oP0}8FjpTsNHotFFehbPGAEf9B%|oCOuxfy zWT1aEqrKwhjMo5>2jVk;0xmAOI{(OhveH8!+eZ-*p?pjS~{ov7o!T)XJV6`FKynMjK-_!S6MU;7HV zBNnIdDh1B7J!XbWVZQ7zTv(6NW?G4UygwlK|zfr+^} zJSmuy$BR1DyWj?d#QiDTQ(JEg-Ikx%qLx#B|D;uML+**1Q~ywEu(jqQi5TI<$jy(i z&R%Y=BK;{WXYjQ-7k=n%{^2yQxft5=_bYLuz738&!-G!`pcJ$)@XkiWUP2l<=E^FS z)48r{h8Q=^jhN_nirvq{>e}3H@HSe(T@*w_DEa5=!Kb52f8@DxS9S_x%ulS5N_ajNcE3vf(yyD zKW@h1quYs^0EJ4_9QBqS897wY*~ub3Usg+5Ljo0)9VHaaMYRgV=PlubwuzSzVL|q* zh`lf1;9=t-`mugq0)`3PXYG7tF1l9-btoj>M`G^|3Uk3mlf!sbmtrA}NQI7!=U4>$5q7PSQiAq|sK{>h`z@4hF6%<6 z;P-?PHZA~BT-u!F#Q(N`?7n@&GVYtA3^ej_dprL}Z^J(^uweucs`~lbq&fA$p8pCu z>3r8}srB8tx_*4EQtKQq>luhkTF42KGk>vXAv6BCBLf@|?f9cRP*_?B*x2m=8;E-B zqWNM(9BMbr;!O_pZCFS@OpdN%=K(n~LM$S3?~2J{LIjw~dVRb@qX;KI~d8#Cevk>sEQPzhgJ_ zEaY)O+aFtFm9%_xX@?$A_bARM=WON_X5W13C)1S@H84M0+7<)=$7y$3PaKsQiPQycut1?$6jC@nAOR_kEy_(nmX)C>l^Un z3(K}g*l(}jk1_#0n#=~<>>txCuHVtP|7QRw*hCs4uF^r|B@zhlOaWX$koVO#(AgOp z-20~Vl!zAIK~CkpR`WdXV~&%}&P1W!fXyDcuH2aO+ zV9UR!iDV6+isE!=^nSpBW8a!f54?A5 zv5bmhUOPhzkPNE6-RmY(__DpyC6vYJF| z^)(aFw9)azr0re%;-`#75$vRH^)}c{$WfyLEi6y^8e{@S{wFjdrb66oBdeov7G;9y z@}D51w=Ubfy!J&?m`Kr6*16)=YCLLmz=$RgnS z(87a@ukB3xWv87T4^>Pq6LyO->J1*NNPBuWVNeQ=zMl=)K|H_Om#OdA$!SZ!qTZ5;fJA)sOsD_Y z81uggPTsOY2QakU)FTn*E8JrnfcSjFSsV%Hm>GJoA1-cak>Y0E&cyA*i_s>9}vRiwYF~f>`cLuU{uY0%F*4J!6Gj)CZGh}*=&mm1R zygn(6-Ve9ZQ;exmAIWe|V*iMze6IM_{iSdjV5?iT)aku=s;`_kD4Vv-fzawE~mV8~$rfoC^jP!BuL$d3d3mIoXpT1t}Ln{~vGSI;reJ9`{r{1GX z^~UNskxvuB9rxQ*@ECdbVp@dY;)1qX&@lnx?1rMGfFgCf@8;0{4emPJ6GK2g{cBnI zw-*pQjA4%!Y2coxgtZ5uVY>5`hLj%T(u&@BYa$=T$-Sd;ehPzNd;Fn;X%h~}+4IAH zTDBh@!?Jla4T+(IWoG?}!oXq9FhYW)8SM>?>-$)O2b zS?U2z@G-~&B!k;;a!zeZ6E^2Ye3Yvm36Ey=;vJptJbawjI zXZ(wsD#Mx&{l0p?K0&q@zU@SlP_7~NZMQV(X83EM-f{t9O#}Tm)BoF0gOPqr{yJ_E zWjMVz(*_W>%$R`Z=PWyeg!$Og34b2cloiE;z89Wmfk~-Lo9VWV(KI|J=`yuM z7qbOoG?a3SxvO&I<>jMGOH=vf`zTOyS=hJ7#`fHmn@DrADU0}vd~)BPP$&Z^K%0b5 z4a)8v)zkIs@Vr|2w1Yb3(EUs{0p|40#0(Z;oG{Xl`&5DWb+7AiEK@D%fId|m<8Nau zs(fMjsZv12r{#0m%b53J$OYn{UxC$C5y*P-%&iT`n48W6DH5JJ3AKL8M!#~Q&mGqN zd_cE><-Q-@?R^`S^1}I}9iy{Dzc^p>YfiAkRR~*)Fl2|e%Y5a5ume+&P_KgAhB5qfpS;BI(#}`cS-bxyDqGT;fwHdgT0vERv@{Z4@5L& zMJ~!+N;X0w?qSR}DP+Rvd7oZuQm0s7hfTrMfoP%`o#KwriRt2R~`Dl@F+;Vp9om zD?-lrXmI%iGQpMDS#AqXV4r*NcHLL4aCLKQgyveTfBY@U z2~Z1|j`MHs-}J|&QoTjcm+pM|q2YsnlK<0ZU-KG*;|2vk$IrM2ptJuhL|qu!{~&rF z79_e-nfgVw=5pMe+G62t%C_$CmZ@UG7tCFPwXrf?gQ<2$3%zvVE6$N1-;eNPf7i4` zogXcmqK+NQVL&rlSf;Bz;GofzqH>)xap#NhEWc5{(U@$jelkN>5*=!zkIhi$f37L6 z5xSt`%ATAlabfK3WZHy*>U$lxv{(JIma+yT@}Ini(!<~H<0B$$Y3htfmd_w2n8EFe zw)x_wM36kjWGcJGdukvL`u650nywe;iI&x*Dv5|Y3G_!+u;dhWQ>IJ;Y6VH&kVB9J zjyug_x4A`xj-EXU-V*r)Ndjs0uC4^{2jztX^K`})b>Ro)!xy!hjLF%yv#u<5zyJ79 z+JtL$avkBernYa=>F!{pq|K&#t4!a$J%u1QBTOwZ0>U$E*!oCRV|H^5_1#k}<7Lur z#@V>zWI*nBs&I~%40@`*<9O)u>9}Ltp=3~6!$sfaoC>Q-S$vQ{`1a55bk-jYS=f8s zL)m(5m|eBx4uxC+i_rJVlU{r_Dk7pYx9>u+n2IIm|LfG;8Hgg6d<7}(H0M*5Tnfxbig9_$*kJRYOOKPSDqrJ(nu ziK(d-yzfsqJL9vN`Y;b#r;~qFc zA?G0O8aFj5CJvv?@sH9_q56)w>LUD6cNxi`!21Nx8` zRU~msG~u7_6t#pB!-LkC~ zd4w#pt6lya=K<BpIiR}r8quSG>-QE=3y0-bns?E$?i(*N{M(;|*TI8xM zw@&FfNO`U%!wZl9HBs>2%SmqFNnC2YiJR&9Gn=_?N_?Y!vpt_!zj8&z@1N^)Q1y6{ zl9Erzq!j@`I@VLrB!Y}Fh3FA!x^ATVKg`pwUmcY(aP-3k$2IYt@WX_m zD%Qu#zlBUJ+FdW}C2aqy7I~FRS8Hi;An&4jwdnq?K67FfQr+>cMB<%K?@j8vip^}JFEAHNwiL!J#%0;2*AY7M^>SXYmzD0NEy z>q_a9dwL#yjMRQp0{(*8wPa|UAk+MdrBYX+F3oHOz%eOU#R3liT5X-m*o|EiXZ8=0jeSEt8sd}XxO@QC-b z3BWu9mzfnzmKE5%3weqz62yT5=#XqrG$7;me46bM8T$4u3^1VS01Q0JoqmetUY6a9 z3?H?=(`d7d&QTT=*s@-V6RRMg9XRysb>_Go*Ij=RfNwbx9fvLf)slOp*b%F(K+|Ct zk}mx}L?D<99J9XjLLTnqa&S5JK<3%2;Mb8OIpV|jtHTGU2@qHksB?(U8z1Qs7$yat zI=-L>&!Pgy#-Zey@3|H!MuDRu4hHV1NJq_)q zB&Iskk!ow!l>jTi7q_KJGG`ECmHJ3eqQ zNz9L`g_*l#}b|QcS(8we$`RMwdO8*J~~py|20c;i@9-fS&KA_;0%= zZe>g7Re?Kx=`V94Od=uif~>YRq9B}PXRfL?`3h8dM@ra(3C_6?NQSR zcKGfmw!UOaPw})*`WMnG&Uf*-YYKvF41Q$JpufF;NU%}Ed|%{dW4+R`aEX*<+a{OF zw0WFob#_R9gpFcRq$X|@$d4I4h!IpNI@_;DY~bqf@&*8#f8grL57?|&Dp*kmtBpJS zHT4SAtRHU6N16Vh`_#7P1!1y zCD+gw8Zh(lba$D8eA~w?k9Vn6gD?AUGk)`|uSQ1=fJ;afe>ulSxqW54Rz?iTL}=IV zhN5~%oUU}mG#{V@zGsq3gI~MxUT`=!Oyyd<(Z9(`fOiwu@#*M98r6@t{p?z$0<{AU zmp}>M+jY28C}rTHakqHzpxr$ABfheFa)bAlCTa^vVskrLS^0FiOv2-&+JiG8sa4l* z{i^P;gUXVSOMJTiY9;u(0H1^eQvm*bR>}f;|BKkFV8NH_%rHr@Su-P zIn1tv-n>UsllRblvbkwC1u^=#Daz=5o}wSGyX?mad}H3{GMcxUbv@;6x`KS&`NPLA zR@@C*^-wHn`yS8#eff4xRJ_ync4~QSPiY)q)@!Q=g}ksee9hq?Y{<>!^2t#{ zQXxnpiESR7qKyp{E?z>=!(pvB@pw2t7!69FbbSbNLN{Fqjw7_>PL_Grx6@r}ld&J$ z{9UeW{n2Ul_>8*SlMBbVj0D;kveyFy_E6hfl@VDbu8mGT^Y8auEowB z`{{6-mZsxax}>9Bh2lG5Wh%;=j8$sMdH%hVfduIfiaps>ZH5brJ&MC-TSxwU{oTt?)VD02byFAJ zxHR0*a4TMFPVB|Z8@y*Rx#UEmzqZ(n{cAdte~d9}S;`gUQ(6(euDPZuWRD&7Um0tEMGFe zhIj&*&0+j@_*uGSKmP6+L?iyKay)i|2=8kOPq|Bc&p=|BiIpJg)1TjD=+(Lv88;E` z?ad|ezG)4gE>#!qnPAX(D*G9}^(_A5b3ApooVEwb^@w;EMSX|Y+qZu0QoSC_7JhY^ zKWb7XM=wThX|;dn$%50;T{VH8qy6f8Hlcob0vY8l!SNH6?){=WrZv4^1cJ*I^odnO z6QYe@6fWd)HQ5}DbAbn^)F1EGAHS^P3+=AbB5g(CHx}$aaTAo0XC+9W`@hQomIh9P zgUqELxumUYygxIZ-*)$G)nJRp{<#nELhf)6H4V+hOi9@Ih3>QuubfyHVibvC&{&v+ z1j6$+yRX`%)Y1kapbapb_?!-M%KQ2+v)JBy?vD2BuyJukf#xY1YJrFOFD(m6CBx>?LB+r+3~-Pay!mfatE!S~ z7;|cuMVPcj#oVsKR|hTWrn8kMzv17~Kox~8snB56(oHxaI`K7~>DBo^(qZLXzQT3- zQo%NG;%)F5>&s_$3oM%iVq7*~78$kN>Cs9vJ!qaae%CT~a4r6@V*v|+jX$7GT-2=y zQ8UL!RN>9c%=lYRYZqCXjb2U_fZ#qZgHOA=AMI~X7Y*3dA1!aNt0SRU>|C|qsPYPM z47nEQ-X~$XZB@apAF-7YWvo+t-yUT4`af0&ZG=R)LNtiS%UGAV6190nFa zB1@{px(qtwgg65UAn|`j@Bv)mI7G{>Ung=?qEogTTN89tF5!zegqYlX+NKCm_pQBt ziR;uQuqIpIz}M6kv!!|N>rgX7hbK=%+L*5ra)NLv55n>bjt3YeE z)U=YnqlJMolk?N5UI>=F3h5Ap)WpKKM>E&jzCF-r4dVQCZl)91Pp>qVep)|DV%q>% zSuG?=4nltco0!-V2RX`U@WTRj22q83Yp46wGaMu(=Obw^ue#--QaMem9Io(?*s8(7 zL1!u8g5EF0=n=2`!6Wl7x8ZBf>RbJ~B%JnNuJHH22II|8k-Kpig$nhsG>6}HA8OIi z-6y2mYjr4=M)Bim+H`-~Fuki_Wk-vJP0A2LqgU%gQ9wE^!;bqn8@~CG_(vW*!?cf0 z6X`?zxHv|_NB9Dka>=ZC-S!M{e zI(Aa^-t!oH+Vfb#FjU8Jj?8}jW+r11!O$HP1*Fn-k2y%QY}oc53L61ChdZCm>lU#* z5{i{(;t!s~fv93O0Jl`h0_iaQ(4$rm3mTFlmCeh8ARQD1$fT9U0mfdE=IdCNZGARBO)Houmg>V^=6r3{}RqC-+7u7#C6dI=2C6IfT*A7dk)btgLkbZ ze0i*Lw9#$meSJ8AjrW&rJ2EK5iKO{rzG4%lkJE#6E=T~_rUK`1c%-K0qr1?L*pLh+ z)5e$EuPyjDj&{e#^LD}C{_Klv8TV0@5Or63PmBF`RM>}f#I2}Tv(M;B3l48i2SWZY zh5~}4gm;UqU~#Q5I>-2Uj(4|B_^a5{rk~YV3>iJH8dbMVpWlU&K#*Y}xc7!&&_W2{ zWO*;Hni70y{LpVnUx-{liEGcLCS9oveCj=0O z6J?TajT`1R<)0KqaDS?y^sp>OiM6W~ zxZW3WS_htYrtwM-oVq1HwV_{sEG(tof1@inz%TB>8E&)0PSbz*)X36xJ=A_LDKlVL zW67SD5zF-vltpm7=LeYx#Ebko2M6CrHba6t;)>kHcc3O3W0V3?xUb*$GE1tYvHlF#9_ICSg=Ka7A~xs4kUwJcD& zB=|%#NBz~SSC7|fcLkjK^Yytw6Zvd4VO7~WSWHAdJTgwo-gD#ALW2!NYm%bCXfMH^ z6Zc5qAn^RDqC$kbJW|;sxll&o{Od*&qTIQQby7j1Inn1O@kkJj1T){i zGu1tK1hnWj-T=EnB_mc22XP22S=CXv7-qgcCPFwGjkDI)`n>tjUYH(!@jp z{eGT?i%KuH@2)I3IS}ZTUp@c9WV@2pvNZqei($wDO`5aoD6@3Z((!Vcr*Iqe%| zFScLI7Pn`Mq*Uz>AiK#fd?_&*B8bK-Uwhitm}WII^HyL>Z@9UmgEgN<#H@UpW6lHV zDH%~bR5o(tX2WDa@hx8$5>>Sf+K3f_d-(2d0cCCLlDf8{!4({wBZAdtbGq-rZmyDxUYoDYg+x|U zc~b1g6#2F`M~K_4_i_~GGCHsLbZFYF#+pqEx_#96ka@@EmxZLW7H8(MLk-r`Jio7l zHa}wp9n_FUTApdWj#PEliRas51bsi=9I)A16w0-!7rJ8c)oprU&$Muxxxk$L@P6Uu zMU$n%-l(X;G3mVZclJLonzEmpi)*=kwK~Z_r!TI#FYep-%FT;UbBLtm_p7*i8~r9M z`L&YSsgQ-sbmwJQ z%9c*DV|k@Ios2A5Y6-aSz%3TnB#Avg=a|qZ?0rcfv%klxnE41Nfe~NR zrs9#VPuSb=0mFC&KhlzqIrfcO{kfldYnbOWTN#Z!)a_Gb9ultfMf;oT_J0Oldo5|h z^WY}5ZPDEMPQt44dGKw+vnxz2@#)bcSIud$yzw;aKYrezjmGBiZWm3HIE4g&p~xVh z?{2QhkD2fWid(Ww^##&Y6x}afzJyX7rq{cw-25rN$*dDm@93-U)!m&^8nkTRkeMRL z`0>I{wsOi`pR9TcMY3ZCC_I(aD3|^6AX@Nl__nW+m65DEN5BI`4|csPHdf#HW8+JQ ze8=JYubQ5vjOUn4gjW{LulL7s(}kz>6seVl3v~efA&Yak&R?k{Wh;t@^u}U z4n_G6->4=n?#k#&+|+EkeFvzOknYOOty^2Q6&^1oH*0xaG>?C2j@xXHxwgAq&Go3j zs;14UZFbMe+pH;GYu*g~ny{^4Hkp>a*}+rFx`bRSdGoY9+p;j8$W`MorCE!+=*?oH zc7JMbzeALYT7RzHy)umW9du{M}XM%&I z>MCVt@40Q;Uvau>jf@6rOdnlOjgg3@V_~&!+cQ1fbzxJwk=4z3zdVa?bkytg5k)<# zDOaxSx^4!pWn~IyQ4-MDx|o0dste3*Yu=Ew2pN~>rrc|MbQY;6ILsq-RVv3Ovd1zs zI4z-g{|$$B@7@zD%{k-%{j_~z@Rhr2PT7`s^A||=e3LhIMEV()Vm`m{+aww<+)>l5 z@1x26QI@go`1+c{qoP%(oNIH&mP<*otGNP5E5G=a`-yE|zeYD}OGrp$IE0#Pxt7?Q z=AfbfdIYLFLr#<;Kl-_oS8xE6wONrO$1Lj$coKFzyFn;?b}Gi{FszZ%hbxigjzd1| ziuV)$&99eMX?a6W_v!F*Y`zw@G07asK;?4r<>B)DFG=F#jC%a$-HnV!w4PgC?_5bA zlBUSh{0E@8D8YT$*4n8_GL_)i$gRPqo?-`r56csNIJW>7AcklrT2|GF3ocX5{K$X$ z@~=mtrarx%jZjex-5vKHXVfpX8Q1&XkzmQ9zh_Z!;oM&bk6^@`_qzo0>`xwnMneft z$7+ORM7y4jVz-uancyI+WF88u;24cR55Y#td%n40ed_yot4ifQ*DwT$n3 zwJ=3D=j7M1fga`5%nh~}u~Swx+<^kQR(FuMda?V?6wZ}l1+%#ViAPfi^R6`r5{L_WOM-TasK@6&S_Tb z3|2G&hhB{)SM@TFds_pz)493Cyl23^b9VE-%ip<=5ks-sjy6><>y@&wvkxCNkkUc8 zDE*m8Ugz^rDM3?C7dG(rU%z(i+Xl^&tXTAQJ$`)RG5&lZEZ?F@h7)7+*znLDoyE|h zgGN*F|E2+k5Y|$giK%&RM%- z?)h7by=??3WDFQz|A%e82Z<8Sz*BZ50b3LGh?;ww1J5dlc6miL*77A*Rumi>xj zUI$iT`Kb&TMvhRWfr3B2Q^?YYR>#8Ggi8E{WJB7F}&kag2);V1Z zRf!IQGF*959c^;q6tkq6z+O@!ZmEN9|DXwD1(7_)_y0^KkJtr-Na;XyoHu&&y^kzG za}L55jl8$C&wq0(*u>3zAmKm>0vem0v#SIF{=iMZOCjnprLj8vUE%)^q6{Sp@je(H zPY2yqAL{5leSZ0d0bD-ewpvk<(KsneG>wiFLoI8#Cq|yHH(m3N0DPUhx3bt}39aNW zQfY?QanmKBLG^-wti1f)j|;=1{v9IPHwdrQ^gQLwl5%z~3#1WL>=4}@`FS~o4|Cp( zs-T70xo*(9MGIJba}AA#+w;jU(DKo%m+WPI9ZOEUq`SszWmra1L02LRL~j$`8R>k` zVP_o1Wj^^K(HzDtnSM}Sw=@L2UE%^=?v|5OYn(3Bz zSRTwuWxcVg{wQNfVl}kl=O)mL42EdsFlg;we&NY=DO2df3XZr0x!dZ`{LCv9aKQm=o!r&O@^D^GB#^nBs_ zoVgcY+xI4>pL$*qu~{6nij3|ryW_;>9&`VpqhyDj(`Xo6ErGEAQ~`rQb0HZS8TJbq z(XHOc2l`}Epn>w^?sS=M(0Qul^SwDti6JKKR4V{D`I^^H1U3g%?TsBaT&ClQ2oFl_4d$4pzkKIM2%OpcC27rv7VU;P zAt52=N)GKc1^Q^_*DqURuz6}@dKV1T4B0X^TDFQGA> zDCFf!@KM3%QMGffJH$cKNL{l?-Ot{{rx3@4XLv-dsXC3uJf+&xOai2An;Y_`(6B>dd8;|K0(J>0PFiRBj4B8F zK`1;j?0qsB=4k$o%U^0@^x1eMXe8eTN;ecrL35)PA3U-t^XEmF+Ykc5Qur60ib67z zys82(-Mj;=856)8&UZrcuBQ8y7KIE7aMfIl-zk@v!|JFS(%-uJ!fp5lP!R}MBkJ* z-RCT1!95}WB|9&&rbeVo8<4h@!8PXe@re#&OUAVeOWOGhwPQ$!K4VYarD@OvsAZzz zMGnD79R{qN`}FvK3=Za8;4n6vMDJg&m7w|I3YSgA+LG`3W6B zl*aS!v2RpGHj=lwnrW*=24@6Deo1d}?K5T%ZIPYNS@qyBDYa6F>Q2vTrl{%O!)L@| zPuSmjbGo&pz`h@Rl~YL+9E+6t_G7w94)h~`a02H<;{#F=v@f6RzK%x#C?SvSUJd)X zglDn7{Cl$H?`e2V17$8uHH%=87Vy|~P@kSJ%p>a*SJ!u2$lx*SxDxJBI+y6)nl2MQ zGhiI-q>IG%!5rKy1mv4ak`8}P2X{h4ZbD)`W=Aa6^Qu?r_rL+{`VAQ9!!vaO(*|N} zMaXTe(Rb;fy*l%rY%pk<+`2qiEK?^tO5RC^@rzPQ0QJzF;sl-!C@+;|`NK7^6FoL$ zVgzjxL8d1r8}}?C0#_K%) zv6mGBRzuC--m7E)Sh7kG<&R-iVNg>9Iu*-xFdZ!ZSts~8u8Yh+AX%oSC`jA7@{`;o znPnIbp!ix)e8Hz|5!fvHagWV6j-ZpaV%=>3txZ5Y#i;*d3S;?D=g~P3z-XT*Yb9pG zs{w7oHa^qXNIN@UZ~y**fI9;8f7f7Z3iv_+5}XcmiJ_;)IU%G7*Uj%OLUZv9eJqpi zTk~{1nM%>mpFfY-Qewf72WW^67JzPf+_{+=2K{-u_FqMJ-$Ee>IG=g9q~;M@t;5vk zF&UKoG?ExoUH(2njKl?~e}+<$Sdr6`I&UhCP0a()Fn%t)>n6yD{hgOG0-XsY-Y-4| zO+gW$#RsHnJJ~Dwx}acxpiFo^=*>72_v2OZm_mSkZ&! zq~k*~Y7v(kihl=#3!UIaq^8mrvxPWm=8W$@eS3lBERNXW`rQ~l^Dt^x8JPgbl_52^ zo#hw=>4i#WAQu*-Q>Uk3aT_^r*w08;f=-$WwZI*0o?jy1uDP-5ob^}dz^5_dCu230 zwDX|(M-2(z1A65bC=he$r!=+;j)Ue?TxQv4@HAs?ZwAs}h}@rr0pYoh^PmZj)1qom zl^4Dj=wt}EiD<^{`^6__bq)cNhy#Wp@L6AKI^Qb%`L)u`xv$ZOhaNoGZ4 ziwCOE5{V3@^GyX93;%ZuU{EIrI(`DcrM+6>d3}qJl?jJG0 zAW`1m!$L7k!{7A}p+o>oH{M zl1)03CEhQ@>tW6v#SiJ=#0AmPN^Au#Ho^r|f}Aha1302!U#;eOj8-Bx@=N@)`=`2I zSOQL>>v!tP=^)`{=hf;pv4z26vxMOc%pnl3C!WzJcC+d5uP8zRD`nE~9EbS_dROdw z6a-~};b*6sxd0)7Xqhyer8spKAY{6V@Vn-v$v4Ty&fYeX=rV;T1Ue~B{}%|GU_fjy z^|#$@x?=1l-pS{4?=@wMp8Lvd8VL`1J;BqV5*bC&ZPmdFyEN)W5~(Y6=s0oQul*+} zV@N`>^AijX3UdNHk_KDzU8&kU^EB)r+Zb+^`?2u?ZxA!%N8*R)ZM?1qxdakn+LW@~xHNeMV(h#sPoJS>340mA= z^{_&7u@nfA*w5rqJw-*r9DOELLEg)4?SY0ovZwD^RxWC1Wq3CAHCGr80p(j}LeVYd zz2Wg+%vGOo&!2G926!RxPnHd@Ayq}2Bb5$J0AI+0+QALr&T?yRksB$dp=Z;WX?g04 zMz{(<5)0snV2{mqLFR8j7CRXAXXoasMIEQ^V$2^wP5@eOep|Hz+ReI}uuAN&4^dJNPYgn)`G z;;N`yGssA^OS|tZvx4|1 zA#!O<9GKf^8xB|{bjFyEw~>@}y+e4d8Qep_rKP3yP+grFok_W3-%Jr@aOJXgxqbI$-3D_j_{B%aF_C)#eKWlBvI^4U=R0 zGaceAt%*-m`VlnN6%AZjN!Y8vuC`OKf)XW+m)*kN8M5RK|3-?7{Y9&cZf15;05LUX zL@j6?kC#(YqN*q~OD+W3$d6Jo|8P+TK%7YNGTrIW>pB7iGm5^1v=)N9fIMzzx&L#_j{4LMI^q%x=)&kef0C2OArydcFOcj_XYx(t?^>mW_d!zxloFFj{Oqmr0yT z5FM>hqSI^%!q4*VzE;K1exM6?(0I5nU!RBol1Kbj)V*w;Q&?CVKvbDJ`#N=95=IG^ zM{rJDQBhCqQ$aV(1HxVRGxfqXv5~xVcKuKfiX^%WOoA=h0#Um&)K;gdqod;_kp~UA zgD5m^iX8)T4EPoMUNw!3f@f8&=%|m!Fp3(J0slRdGY|;`HLq!Nf#JueuYsQlvpVl; zg5irmGiw}2OTndq8drxq!|!flTQJfGU2qH zGY+=18}Qy=8V$b5po==wH@Y$N9e-!DK;^QOTRu~@lvjM#b*oD%1B9~+M1i=!MG!4% zsAuSnDYG73tp0HmYJ>M=BhrCMVD5Z)4L@nBQ#Eii)=6|HoW>vdOeTbEes2#4Jdm8a zdX)KWir>|+@#9~+PESI!{|*9tg7rc`iDl_Ujfd<7EfBEI`5@UI$R_Y_(t+ zRGv;mSB>nHX1D*1Ib zHl7D&CMGT5;pyq=jW5!mkGTotWBFvFIJAt25V_}TMdHQ+60kYezEFgoYFOApl(j!cgS&F2Y}f*M7js_#RDA&H!`F<3XEXuCPS(q}0tG(*1Y8v` z#oG(%mzN%Za!dRWxSEE<;;A-yf)oKZNei7KO%>YyrZPL`zUCzJ*yn@~h@l7MymC_w zDF2hEzCG=TfHUi(9l5lQ(xyA}*W3TMjR1E62x9c;!YxXOPA*^GBr$@N-}(=X6b=HgKlea{{FaJ~s1vNa83Aa#i-9B7O?^18h;KUf(SNV7-r;Shsp1am|7=fsa$0X0$7 z^r7!X-CK1fqUYEgN=nxnFeUK!;~&350rCS)rU`x&o%A6~2R1T>$MN$C!MI9hYb_xS ziE3j0$}kypO?)h9tGxaw7f?^V454K2^g-CVvGj$9>$D9R$3;FWl|_Tc&nl{_jA)Bu z^Z7FjQ=CxVXp%urR`yU3c0WQL!K(7E8N|`1O{hf;^8~`%L%-(pHE9fJZCyGcj9(7XDvTKBdXv&5L9x&_=5ph1D;|=#V>ete`cyG$WV-<}-zp_`)1NoM1`73AL}13J zSlHdn2DuYCSmczH?>Gr>??j`*nB-=FFqE9nXwhK&xn~(vD{>iVwTOFT(C^*-V_^Z2 zXo(1AkZP@RTKaOSDUh0BaPUy*Yd={BW`waGfR4AYsgvZh34Cu_kK7V|^{=zlA*P^% z5|d7F3)GOFx=6Mu=n(Vq;n``EZRb|R5=m{nZLiG7BK*aNyt zUZ`?S*fGzm7r0zT|23_90jhw9iJzxq(|nZCv4KyNAl6J`v*n zlt>0Klk?gbCkQ@GZ-MFtKP`o|OU#P#*Y!Pqyu`axUh;T5XRG6UtrQiYv8xEoFah~r zQHnz)JR39L?-OLZA9yLW?AH8=LLg#)4OHcRWFHe2yPia=Fb>GwK#iM%N|i2N6?sd< z`h(Oi1Nfc1c*^Ie`UF)3;H>V0Vw&TaNqw)q*|3E6q;;O{Qd9-TVAfN?BlP0=cRwSw ziL3{UK4H7er}(u33_41~5o%I$#=Ev-N{H2u0iLb#x zbPG|}(uzUXSJYaxIglW-vB7dOeihja^o+?ppA$A!LxY9_A32E6o(csF{~&r%FKT=mN#hgYjdozVi_g2I~_I)NBm} zwe*0y)i8Z^3u8I|JlunOy^&1m?ag0{8uek!3b8-EYAz6CnutRdK-gLgmApSb*X;k0 z{)Y3iW_6NfUgdpodt+Rf*8((CI zN;*(t9*!=-k@T32)Ns3Qf9GV_+KK}*)+ULM0Z0Y}``L>SJG}WNGc<0c9d*0G&CQ)B za6J%q8|<#E-)+y6F7V$M68|UQ;|0n4L%SG_6XApl$l9O)fy;o^R$TnH4&}7e0D{$+ zGXM`WqKV`E=P72`Q=r6*osi?zsZR%|aP~Im;@<6oX+L(7s6H`EST_z5n`6bFq9Cke zC5KS#=fqjpUwd;aH!o82G-^y6-}prdoc#D^+x%&gBSK$bKPyXS4vue%lHU9;dLa^= z$<+ikT=_b1UR+hW9;@fhdFHMBm|hLckSKX-9F_CFHSB* z_J2g>6Q$4lhr7<=2p9~cx6Fu)fRKYK5;7a2SM$7zzzhe**`GU&<(RmSICt^#+k(2I z9c@8hDfyF6e*^rUiDwogH@6Zv1N8`v$I&cz^D7GW3yo-6T|?K2;ySJicmu~*1!}C* zFv-scu;XTA6Bw3BSL!{lEA%HJa1z0-@@r4KQeS?RYFj6zTL+0L03St+1o;6AB*`a7 zgPX1c#vc*hLwBl)iNry3Uk5Y56tGiGoJ_M%*n?az`aq2CRnEyu37AHGQP5_Gu+r^k ztINIx{#b|#G({g5h<{?%zuhgP-ULYLM}tC&7+)4p)CN*oN**jF{=fhKKO4;W09Bc> z54hNv#>6K>L=b?~!n_ZsubE!2tgHk9y4Ty@FSKVtj!k$s@Cv2@`FDp=CJ<0-B}ifd z6mh;QO_!2(@}%JO5_o_Nyfbil+2vE&%>#wTR_7GzEC!31IB;Fm(d({Ai#T=N6(;($ zZ6d+C%K;mXuK3KWT4bxg82SVA1@K^;t=&sYKwFx~65uJKI|IfWv(fsoQA4GcEC5x> z!*ci#uzj>0ND>u2?LAOs2?Ib~kSl!XzN^vTh9+h}%ow#YT+VQUio>mVWB_>5B9A?L zGGla=)A7;nGp8EtXfZ^R_b;uhE)!V7XUeY1kLz?gOrhVGNy}jJyA~jxiStxDs%(Zx z6m@?!=19RI3c_c0Dm|AJ4xNgE4y&FM+XN2vVU=Bzk3t>~_0Hskg^}_Wtd3T38v`3UGz)MBTw^_-n4JX2MO7TNm(-xC(gJ;kztinEs|&8NA_3XF#yS zz&>3X$Q87FYi(%>1)=GuLC7Z(+f3l8SL3NtPj&XTh?~Zrr9qt`+x0+NVRgWbi-6h= zJ>Mm8su{x;*v6s3Z(7jpR;x*pU^&2X6OB3cC=`J*gGxr853powKsfcb2M?Vt&5jHyZ(Z}MGzjFI+`UoMag_#94Jgv zy5DvKV`4CrB?RbcIH*Q`TY%0=xPqF<8UgGng(4Jp{ULp3y!|Us9X_}P690?~APF7j zp5co9kOhUW`M&ra3+5XAv7r`Bon=GiyU?70)~;;0i$( zjH6SUgH=wJx%tP1N2V-Ar3Od-S1Uc)-FEx4`(hgXn<@AXJ6fyNELGUE{$HQzH1j5LI}}8NQz?8 zX+yyM_P}6esFaz+671eXa1HpQ9F6=$G$ydF1Q`%CL)%Ji7Ei~L=wd|co_?~LNCt{bUISiebOcSo1y>ambk<-Q(Q-a2xe=fVi1ny&B{3~P2JuMxpK!=99vst- zc-FJ$F5J-7ah;9iv7c#v>?}2WmCR-GCDr4f>yylj=!709rkO1yA?AV<0;ZB8jw}OH zxc-1g+gcRJI?kfgE$DpH9VEyhM*}i!aIUDRNS-vxnjm#oiqEKN<~kDWTUj%k7khIQ#?dutdj`bk!Rbt3O@oVD-<~!Eo=3?Q z6`H1B6RoU|59h?$HOVO`0`g)rWHkG_kXpP#3+drAZ;gXO(PjB)uhQjp;RL;5MAo^| zNd)q%gSGDEposp_)?K-06yZ}d8~0XVKe;R!~k${N z-rgQFoh10IV095+NIKJV1jk%HUeH|A zQV?|bUiU6k4;(t!dG$na+@n~>p`D*!ZSpoG5e)}>dZbQ`gK)p;8GL$0!A!D*rV_zH zHf1k>CGp?P&df*~8m7oJ100+4E!4|RE4+|UXomQ}xl`i28e0<{rl7AU!L6*MCJcV3^V{Dez^XE zL$d%iBDO!DCd>ZVyua#>I=F`8>3E&4tehPCy|kPsLS#h%`Wkfg7V~Mb3kz32bX7dz z+68g0y3NzM0yb5CT}kAJPrOr~*4P!?2P~>+8AO-7fFrp)E5FcXoGOY!Oevn7mmt3vgt=OhyR?My3R20-UG08!D5KH>vRC~tYQS`nYT0y0~_zHV>k04QVX{lv&fCUC0C zAR~_1wDjp9j|J@sA`mW&1N?}IdTn>o@%CM+=*{ou!{b_Z{&l$54JZe)m|s@~pRMXR zd_};R(Y0TA#a}LA80^2oD4mJ|HN&&u*b$GQLUYk7zgAB6U5ziT?d=ptGlzh8$!0U{ zSh}{XUGn6?LfKcbgSQSK$cP5$Ok?;Q73L$sfrYAvt9UH&P~m5*5ynA6_d(4@WFwzE zdm_~>z$T+nwCNS_AsC&<*)%pfgWJdk!UyET|Du?Fn;%34HpowMk9+PWaA=nyyN>|! z$$2WL(a3iF`i*{mp`5BBb%v_$DCWoJJWmU(ZK@!x|i*zUJoHn*GHblSY4%U$h(y zueA(%v(@Yu-)9chN4LidsQ`#e<=}}=KXD#-(Zd_B15YOH}|E&QhSZZ z+9FDc@Y42xy!bv)4YqlIBHwE}XU0jo?YC)$`QkqvE>pPeI1hF62KFVUH~$u~G9u2p zN=DCZf$4?as8fGSXUbiK1aumJs#2q_qG6a?u4b87;BqoZ3OYZGVm1Tc3k`S_+M<2>)5=qbolM&}C}q znrZd7+@l*aHJcq|3LO|#pwfY`OvQvRt)*2*y9aCaHex;~kd2zs1+{|brhw%S0T>1T z9Cjc0pUBXj4oryiS7X-e;dxP|Zrc{_IJxLjF2H3nZg>GDwKJTTm8&X>VzypL8HQRs ze9LUL;Autn-m&c?2v6?vQOjNHckHo$G^W)dOaIyuCUzZ}6Q}Eaw9NzRXYkXydRzHO za-@Q(JpfS`vlPh_p3KBiWCzJy&5M1MspaQ)=rKh~XeHey>0SE(9tYabK%N zhh6H~UL$r*F`W4P)N)PDf75@&aj>Cs1t3#92sonoS|@fcuDo@TjViHx%dkkW z>aE(b%^7$)eJR?^=+(FXRJCFhVR%n8BS1FRpJGL9NJ!x@`+W`XPF4c*#0)q*I0J4J z;Lk}~Fl4G(Fy8KwM1o7PWSW9#$vSBi{&=Kc6!YMY)In?IV2~I^DVF_M^QYEALO@Yq zILJ)LO;u$apijV<1M`OLW%Yxv0Wsegjo^V|nxVhqW1EHou4b8$6Ik1@5&@erj*d8H zhlNd$qkQYW{> zx6f(R;=z*Smd%&!< zq79ggLSq#;R0_R=qPzsoSAB^W>JhmH$Zd4->^wB23ta`UwZ-dl`b^eeq0p)Mhf$Fs z6fqShOjhQp(NV)7DEa1Io7bWmAmaFvRadL^Q9@fxmI;&d0-LUz+~e_B*gL#Ou@M>N zKqo%d*?h|i)hwrAS8oPE9ROltg?_n(kA`IyS+@B}N4a;*W7IV{}FnFVj_Lz{; zMTPA|Ih}IVa2Bn_4&fLg9k7pXUQ)U)axfD-3xY~8AhSd2Nh46}DH~E3{(=k0q!<}- zhsb4*_kwQg989a9tUSY{)-CH{mZpyreaFQg!lpSFY*dj zVm5a4b$WA(4eAJso;9YCMu;qn^G$EgCvG8xOokq}w4N0$3Fm0S5_~H%wAtKPkYns5 z{#;+n%cF{LV)|vY$V@ecve~0Q4Oq>TwRSN@1>`Tq6e!OgCc>8#-+v@n&dgLxtWM@y zHn88ZSbkw(l8z9o@YtB<><(SQGxnk!A;o&EI6UwUFELOF`9Lw`;Vh9@%&tA?;3F82 z%t7XICH-nHoyN@f)#6tpn5gee%Ojmr9__Jl7k0I%Tuw%QTm+^kyqcZup>V+~z;;&d z#m?0%2AAvsBgC15R&>4kC8g4VJbH!P4=*BfD}41oja|9u`N522)`!azsN_nLNi~fW z4>mmOlr#krxwQ!DxSxxB+}*+0j$`h!$Mo`~b!`f?CvVugBIvqcmAm}e?5#-Zl{BAA zn2c|n?bwc8gN|e>_D`s@vA&1TF1m|pW)aN8v^5xfvkBUk&Xi8xxi8A8F&*2Rml&Pa z_D0jCnkqc&<()#NMV;(CFDDu#v8OSs+rH6LiOGPxQFsiS17Exzz46!)SBK4Rvc`L} zS4ASS(GLC%Totk)&M%MOyR$Dp33wTyG7Rp0?-w)C*+BrA9)rMU!ajh*VTN0uT>76B zea{kFGcCV^GOs=(p|)-$srRU)2fVK1hM-c^w=qfr>J1Y|Vl!62=TCF3BKNxf?-+D}XgTVD@pE_6r_cy24%WD~b`$G&!Mx#-dm)swA z%Qqf^+vt(?H35seg3CW41_VG7=F&dd`(m1tftGahc&ke$P5`E}_*pN4i}c#M0ey6+ zRb2~j`MdYd*LAlaX;gDx+6hUH;Y?1Ne`xg3SBWC+z3G5DaX(Q`^3xrIA_iS;<~|Q6 zF&eeB<5xv^AI3#A-11x|$La6}mYe9h)fuFOpB8Bl=0E5SciQ--i5V=aUWxq_o1CsK z(dTs_-<=cr!j*E_zwLF7mT!BVv`a+m$EK;^xqKa#eaUD?Q7&uF5IYk+5{=AF=lust zI}b0?K1@$3aJ%=&B;_zialzTSsbAufpk_8m8YGXh^CK&pH2DpD<2e0*_H=IEb?5>84t$> zwlYNZ&Z#bZK6R}BwA{Xj2J|+hMwv_k0#EIWa;QJOOY`w{L%L*{PhmjiFpw$6exNrA zu)f0c8K2~;H_u{t>%K#X^w_(ge}t_+zoftXO>hNd|0=e+MV`%pzx`%uEpvX4jio@o&A_F2@eNm;_&I8@8IM4KsmoGOxV!TyJ5 zL}UJ(L(Z%Syx0AoqV9EReS)#(hJ+W;Jsb;{AZ5L!$+}Y9s`A|^c#~0HKrZ#sXZ@zo z&LKIb#Ppa!`wI@6pL88U?85>M@5v7lTl$m77>o?kvBHY!$dj3VHheYfFX-}rmHY6m z=z4n29h90`k=nSfQS^)b(Hnt3@jOLWskAE6L=9Me+{bx?ngkclXTUXW19gVUAP~G2 z$u&N0t1T7cO{-H=5o3<`ILx52hBOf?1znvHd4O2=6lxJtF}MCM;1ljk|Dp&1)_5B@ zu$G8s8+wS^?{i696Z8Q%fYc-pz+08AFHtSxPi$UfVtzD|uuL@^OWcGtf2h6uOIIZM zm~ngEJ~c(nf-L?1q~6(KxG2CS@}GAn5i{qMP7~8`KgCB~9GDDm2@k)6VgXJ zYN^NYLc!r<2Z?Y4>^GGVpepVGo_Q)-tUZb!t=iL1@49jWqMPHM`$HBqH=h;fB9`82 zzGj;{yz(#db%Fq%krA$1M;TJbayU_Wj_~<(Ka_<@oE@n6-Und%0S^FWKpCwxr+>Ex zNp$@4lV^zJ3lU2($n^xo1vIeXdQj5^(vkyb2bycYi3))Las($CmNoNR% zYH-=|9>EOz)Ifm8>$>c%-2teVGG56Lo5IfH#b05VF_@rk!T}hu1?%C%Kj~;x^rXN} zoNsUb%4__tSp`lU&k24G2V`?~Z_;Z5Z?Zj7A=$bXP;TJjCqWF7G2enekKI2$(UU>& zFnZpT(5?*QEej=f55Y&7ROMk|S}> zvkx{Lb`#@0PpA-J6nkln|#p_SKG&3jM1dku3vygVY$& zRXPtqM=+jMQK~%LY~xC9v;`f;h!iwLqlDZ_i!QK|rvurgJB^S{ip~mTy`ls!{V3T8 z-WAYZ;NtwHy!qSxYfY@}zSEy1_-_q555&Yf>v92VJFO{sitO!T(BVsm#e>#BbP7!8 z=hABm4Sc;G{@+u1==YkD=@VgSy-I&| zTLUG%CAFTD)Zq)rsd4_oz}>)oZ|tkGTwPe$_p!5VHN}cM9qk?GFl^eBg%UIcdAx%3 z{j0jv-$DlfP{_;zG1J|Wh5+j5ujm}?X?Y_f2x8`l zvYxMKa9FDwH?K%0aN+@Xn{-H-ZH#V%;v6UzmwT=QGqU#61Vi+L7R0G*c!BeGj6_?m4XIRtA?E*c6Rn4sF!zkGI7@O zvWd>*a!wSV>1B;;SELzf@BluEfn=L$raDE+C6zM(YTpMd@~$hO=g$@R=clW<%OBQP zEdEUflueX$;?4k^g)0t7ca0xSpTePZ6=IALQ&Ca1df}d%0hK1EI!Pfr8&#qV1p5Yv z?8Bc;3>{TF+QC_v*ZEF${WAsi7e(4{X>094XtJo%V=C_uLVzwHPxqT7qN;a68brfy zrY?V&N`Ze2xaDCJ#vy-eZ~yH^NqJPG>-_c02zx62XW(lMcJegUi{4fZ>&l;ga-*6B z#vjB!LY@zResHs_Y|ROVEFtO(&E#wOTJFfAx%dM#L!!Sf4PypU(a0jxUTFZ~>A_`- zpBkY{^@i1DgKL1k!VvU?()J`y7FAS1H?gVa=r;qvxVvu=16A3^sU?8AmGZO{loG1=5KR}@%zQLG za>O3R#<=eeL26d==Kotn0v=zo4&Z@wxvun8N4;deV#@E@O!6o3 z{ADxM9zbP)!u`tx@E3Z{Px91iNw#d%Kl_Q|@_&jbG z@xmZLhi9}ustA_$)TBZB_<gSUObSacbYkg1Mw>t#0CBgZnC%cs+)olVY3;ELoI<9abVF&hZlC-C&f&f#K8hDEvma2{v7o7ex)w zX3V`&EG&!5=}lky=`A;I*VI(ZYa_gDXfK9-6IkPC zu8o#KOf9V{m!j|9Tqj4?AP=5%0)TM`A51-+u{<^r(O-hpna7{?+ zHVQq7x}+FJU;PSIlF9^iUw8ICV$W%=ZGk`(2m*8Dk1&)KH^btD4^SY6LR~CC*;SNW zUdNt=fs{uR&aF z4O<{pO=}mircf+o0VH(^M1m{tYXBH;Q1@vV$}BPf!>m^E^%HW!8@Q(^141#2u-}&U zlOm9*MJ%(}uM=UY$Ec{<(LkVs3p?VS18xJ&D&8QGZUvaDp`XQIcI<`g_wGvgn{ePi zfVOwDxC_;PQ%C%|Wdf;jS-nCLZ*OtAzvTMYf(}u>XviVdHyR9BCL?6_reIZuB(d#5 z0aSNd2YeE@H?+*XLF8iJkg557efJ8<$dPW+HS=q`zEWi5xU;W7fMIlfp-AoRMpg>= zrL!RWF-`#qv1R26M6vb(`p8Y78#)hw9@(#49368qW}EZ zzr0zp1U%(ga&~=!1&XIgLi{kv(Tsb}Yf-F5(;F|n`MHfL?C^FwOYn1Ft#xx7fNVPV zX#+7ts#ZF)U+VkZoh)-?$sr6v#X8>SaTVLYSW^Bk2!Mwo_nfA|eK4P6`5o4OLtL>g0Ee?ooS8*x;p_rHn%g=cs6>I z(hOmftt04JL{y83D|m%7AoMDx`9n>j&UvGQPYNk7!;MwDS1abm2Q&2$&7Z6MJ2GZ@ z!|^R~%x5u1#-!Bt7D3lCIo5};?(r)l<%8NK?)?Z53*Hf&5hyb^PU;cEKn*5J_G?Y+bZWnOer0~}q!@WQYw2ZP zXjd@p2Qz|(m`KA(;@7DsWfo^*S4w$}jKP*r@dhIuTOoS7U%GZ#ekE{JIlca|8bodq zD01Wc{O@jZzmEMle#{-h`uZyO>yPKtKAp&4To*E&vopnZ@=Q($n%t8h4JpdSLxyX2 zKTyqjrGaD%0Ar?{DKrlX%#Ui*!gYd5K9*j?Rbb?3-`TqeV#!6q*Tpq-j-xl;zJ2?L z!SVjj#1FMgYVuf^tYY&f_^lTRUuV|<7>5&Lj^QxLd<+3OyC3Ht zFd0Tk@X839ee`L68{}%4C)I1-5w6@J97LkxnKe=Irsj_B=ijo?{&0L=bYMGRqqW~* zo$tOQAY{Li67uE_8>Kls2vId6*A{2VgTbVZ6m~?5%7mR2s_$BlF_|bg$o=eTNIjI| zPnGH#=&6)}5q;XwwYO;7#Lf(=n6!cLF}qM*ubSfY#Jr*;%Et7Jv!~Q{?aaWYseBcI z#WtrkT$}msot&gnsk++QlWxnqcsHR<2qiS zb^#`?LiOUhm_^*!!46t3Ji1&iS$RI2HD_-`?|sP36|K`Bm$f$ft@9n*tb|_fmxi!w zAeV|TTsmh%I+=aws3}L;_=$DBj$q1xt&y!kDKbA|e?%ad# zD;&41-bzq#8L@vwhViGkPkdCxu1d|1CbORIHREgXo1~8Z93GpCGLqmZK8$3l5L^w~ z?;Vz*G3}Xsy69oT#fHd?7!=PJF7xOX7J4SMur3*^z}dXCX%`>8-m^lv*;IHi=jy)M zOtdAIKAcd_hs`f4tSYXWVd0=L(dvxfM01=OyuJQCZ{lir5oSjutLyv7Zi+B>R?1#e z--OXgT~S!U&XH*rTJ~*{YN9bS+C~?qX3%A!v(&x0blgan(_Abe*tU8$@1h)cvV6oa zeu^-zKC0Tj+M`f@X>n2e^1s6TfN0kgg9IltW_{q8%QIAJK-g||3ehhS>$!{`(VFPK zc$tQ7|I97Zc3=+QyUP0okhc?O)j*VQh`GOP4$}DxG(0KavO|4ukSXGMpT#r2k_#^T zZDIEMz1PX5iCx5F@A3_7n8k~ED79=fZi0aA`kr3Oin|@@LMJE$sEohZ`(J zgVv#*_+d*-uNR^vKlRqyR~ju|>rkQL-7>i;pbGO*jOZ#@JunZi zbnjZWc|KTc$FOKSC>c&q`yykgG>jt2_L4!_`Q`TILW>`#S*}Wq^1x95)p;bInn7^_i+`8bs9dVUrh9_KhG)_maL!Z zVLd^!>vuixf&1{gD_l3F6sSVo!?won@M7LMV_UwxJj<^ODC+rev~?uWTzD28#Ch)v z_4ClGEZ8YeQ+z>qo7fKqQIlBbmjml>EOUQ;BBk+L96({I4@Hu^rS@v!h6iX}=S_K}(HQAobEM8AbHu>52PrBXjPV2C` zrBWIRYxPI5tLHE_Ws&t?hE;CWzh1{=YNCvet8&`v~L1wb@P&s0$s)B@QfvL^mJ&+Ty+Oh-o~a}p>O)b zjhyDGG5>bQ#ny`KV)lncJd`nfPQ1%L3`UE40T?rjtqwCU%1+E&BwTQ0YDZ07CEH^f?(){(|N!*4yxeW5`qS)H-WA&51ebcNzKH0$rG&mm}^ zE94eGi9Q~^Me(3lUQ?+;XWAL<93OpDR371%Qz##Tph2sDdDrV$xO39|BIu7eW8{r; z>n0D&?7ZkXTu;3`>?pzbkT3o1fI1@Z|%Cs>3rBqo`&p;$6}ga z;+RKME_CB0f*aYQ_wEP`W%MC+g4I%(H8y%|doR&uY^x*8xt!V9V%E0Au>E;LOP4aw z6zoLoy0Msqd$uxmRw3HtOD%7facW{F%zxKG9Bb6Kitx>N#Ae_-GKw17YLf%gf!-qY zdoAyVpKLUh;bID}9nZ#eyNGoy7hDziX^=5kUcL3i8OE4djkHuLIqoylp~cu?8w=uJ zd2~^|COE;r%HaKq+zHaL0&vQB19V40__ri6zWE;1`MLy^)sshSt^Q zB9GVyGDA4sX2PrkGNq;xw`H$rqM+3(p8Gy@0gxfmE!5yWif9OGc-XkJpeTZ6Jzw zUB%Y9t0G64x;p>p+qWdYD@9o`t5Fpvk*90UemN^$+a{#u=5m(EI~>V#T=VZ6w?rp$ z-IFi)z{RpAgevmKduRegtx41Ob|*yCYlzdE>I}&?(2$daAy9c4zXz##D`@Q=3)9Df z`Inspg!;3i??wI!0sj3c-@8Udyn%zr3u|J_tYJt+Q5EvUY)#a+M3Gx`< z=#ic)A1ja5AC9p*swp3E9|nPvT>)eHBcFFd$+Hv>PRb>AO_3+osnE=H1hYDvTffDW zvtFWwsxJz=sGp$&-&rqTFC|KPFr0VjZvSC3)V`a#Cln`H}=G>awiM5 zWlF$8sVZDLfPrD9o)LJ91 z#(j1ovX+NOi)FET(t8UB(?;4OlySli?DcKnSWJ1*GxS+IKJg2uDmuj!4rY&}{9#jo zMGHBLdsouWL8E|4ZlOlj$AMqbToOR3+W;Xx{(#gCoCJcKpe;^N*O~C!OTU(L5`Yv` z-_KCTj3x#}q@E>!@dv}F2=b39<;T;uv@hLZTmH?CWAsO9q z28jh1>0y~j`AF+}YSd8Xm7-&=0;Bj6s%MsJ5l?JAPmwQg*BxS4_(+dTWfe>8D$}3M z;ok2$Ri=AsNf*_>9yISBSyfW^ z*rRVU7V%C&S@@b_+qUcC`FRfNX@~o4=Ftu9Q72-;#srtol?~x?0Q_oG?Wq;vzVal1 zUOxkca>T_VV#HAXP>#n!g%;$RZpaL9c-Rf7C-fT>uO`5&Ku6b0qbAe#rH+YtWxp-r zkl!m6j#0%hN+Y~eLuS-v`rHG)ZXz@-zJ{x`^e|9G2Q~?yi31TvJC^dWI<6joEXGSt`>EbPk8!y=E|Z9S$vT57&MD3SP`(uZgD-fDeiwuH#D{bkxc zdo#vtX=Fq0`$iZ&>VX-5mZkWB*XJ>t>Ch(=Lt^WvVr}Uzp=045Tt%}c`VD}Tgwl7h zijC~2-8uS_$f9R;W9if)|4^s<0FKcS8mp9WThTE=%el{mE~$T(AK>pE5O{kyHkfJe zJ)VCUcZ-!JlG)H+=Y9_Fx032R&lwtJ67CXJZucngSdWVqq(E-ifINzf2x~%;-Bt%F zDslf0L+;;h*8}EBd`~=4uYOP}zkT!WF6zsjeX}^bsv_64k#lnmDkV+5?<9~ktOX8+ z>qA}kA|iWfsMDgd;wqs+Q(tsPn*g}YJwmX97QvV3<8ROFX?DDpC=AUeGjCkEmm9Es z%~`FydULaJ++i&p&dtVlgH5OTcCv?i-s$_p-92a5Dq-by1NWI}7}C&HcF&Uh(y9%7 zp?SB%lo}~QJ6BrPHI)52>t^a!D5b41XfeSq0^aub?&757=)Esbm zD)*-Y4ur*h0I1T5k5|EI(>YMr|J(H?oQZ}SMCXne>J;KMdWd;-%(VGlL&&IMn`{YX zKuIx!t+fL@y)<~d@bGn0-QRJu3 zGA#6{Mb1;Xw)fkfg|yevM1GiBEfDTlj_eg4k8<{OshEkeJ=HuD^4VW}?PuGGo*wRb z-p>WI;d?iZ%0?2{enN1z$rZpJ#){fFT&rIhx1PhGNRXCeZi9}kBUP-JJD2$@zhreX zXU{LK3hTv*6fP&M4CnT$`kFYI6_$`5=q?1T*(WF9ftz9mBs2YJ5qm&yde_X<`Ghhe%>W7$^0-t6cY5fpV&Y zF;zY^2uR5e93@?30GJAp{#M=_bbo=!{|=kK&X?5GoILX^GM8eiIP9qG^7#A-!>($g z9J71)olmp4Z&-dMW9?I`nuaL*&o5nw(C$ppVZQVP_!m*svbi=KU3j^}(c10DL7p>q za(M!y-+FPY+>$}#ZhQ5{g1E*GjkTb(l+0T?VOcrlmz<`q?&r6VXseUE9_1yd4xuU& zYXLl3hx5py=8Nu%?)LJ2x=oj^+cvf@AM(byiMu7#MmY?YaoEGkJ_HPy+{^S}y||{R zx0t!pzuLY-D;y>0{Bh8AN4!g47o>cV<~u{{xnl> z>4qmF2TTV|`o83J<{UdmE@pNzQ_rOLgot^d`BbvB_Zrew8r;!JN3>%}kL!&bY;)F% z>>K86!&I})oXZmWedmttmiKy3Dwdt|Jm%=%1r%m3nD#nfA9MV^WwSLp*p9OAbk>Va zf1I4OX!c`zC+%jeN%ZcphH+aXW;jh^ppBhtidSba`N4eILb!}Wpj zrOi?w8*d{REX0(Tm*+wEsS^~_>j1ZzAl|B$cKIhR{Ab7q-pb01H*-n!BZ2Y%Gsh}! z#dqOs2IE{&yA`72My1E=pNUus3%?Odog6N5Z36d$nMHc08TaMmpFT~B3AOI#r7l@Z z(MR^H>*5<>M3pPr*oQ0cGvW!LtOYZXai7|3H6(6a8_hHkigj{M42`sMT9Mv*+v(n3GcV;M zC$oE9z_vHH1qEQr+5H5}Ne889OWR?U;*ALv`-)Zh41m%RC06op!?!B=IKFhLz%H5c zvyhg*FRT{n+NNbAdP&rIy+R9xTH@_bn@Hx;-T#`&QaGk=-Lu}@wcZiPS|P^q%-WT0 ztUO9*e6(_Kz3;Vwb;Nq@NBa?_t1uB%tB&}-d|tf}1;ce#iR!J`BFl;U6cOM!Q*DXq z@Yz?>JUnN^PunjqSdAUW>Pp3|&w#wh@RZs%w#Lxd_8Zxv>%dOjM6l!OPTIlAfWs62#w2W;_vnfVd9$sd6_~c^ z>J3nx7NCV!JP&af0pFTsFZLxX-mjRAOgRv^b?&$Q7e=yUJO>=uC^0_4!(RQ4`gk#e z2T!7@tOFmxM4z3%SlNL^6qMU+ZIz^w@bi_eJk1zNDJCj@o<6tgsw-HcE3iOZw)XjS zZl~sK^yw>9o2T~EOr6E4p-k-;)uTIe*jweYg8;C@3Zx?cq6!nk|Q?D5h!(mG8aD$lR?>Ucbkn=O#r$bKLs) zrJk+RYxLz{_a~t4D?3^}>L{fh?(vGCk6WEyyJJ`rEa)6Jz!fSKz8Gd@I=Em@BSyXV zvFJgJUw54C~Z|> z42oPQXsmn#$EipKls!6+!VpimpD5!ft`EM@0kv?;;4^VS)O$1E${-_!$O$D<>816V z)Dz*h?L0kHm~M52vt6~tx7mD)IR=);8QwA?+s|_58CVGs@7JS0={rH zZ@4B+bVbKAtT_F#5>Pl{Zynl==g_GL2pIXy2`Exvq}Q+QdN3Q_2I!cvSx2S7bC6h< zaoQA3dCV8_TWt;wUM=&+5;`Y}NN}l-Zz6MP2A-~&F`bl{M1mYBspEZuc+B2{p9d(P zDgT1jrMd(A?Jw;F>+bEmWH%oAVYWYW+1#8n%gt`3=84=r3a-zH#}Dht9d?qN(`Cz2 zTop0~a?=(?xH+F(o~B6AYYT7k{7_muG28QWg|20nZ1?n>M-{&C&c)`o zx5EfBB{ZL@$E{PlO3Hh3`Hh6(t@i9F?_gz~g@%!i zNu_qq_BwhJJ?Cu;-yyp+(E^Jxg)VTLB>No7Z*0!GY#9^9i5a&C78~1o#!BjjGp)P( zCORA+((Mc_?&Y}^5f2pUC`o;}$sEuMTD4c>0WNh%Dr;{oOLK9$XZTQe`Q#<*k6SIY z8ka~3O^XVb>DRc%))&~w5eWb>AFD)NTot{oV=aWLZQG*lD96MUX>&d|fT!j+wq)MP z!&58oi1j0`K!(=ZjM!Blj-iJNKOTs)YK0wEdVbj2y`R^lu(l3p&4Qr3K6y(d zu5x^0_4>UHOof$9CdzS1WmTmfNrae?%91#j$&b0QYQ1p#%xM>q2OA%9AIzV7X%PKK zTKRWV^wPlMk1rS#lC*0k0M;;Ay8jZ_Ll_J8ZfG<@;omlYjC1y)b8VWSN8K3rtix6&y!_apM68 znehpAc%K`6@YL@S2|_bm(l>pX@HR~18HHf#h&)$1b>j?qvx)cF?#ZX3*~y8X!VzYh zrn9l&uH++=(w}=D_`SKar0snvgOVvRH4uQfaM~3mH!AG%hEHXLrAXf-w4__FdXd2V zT4M)fDiA5q0iWft7PAoqG?u~|Fp(n#5Lay$zCn%E&yX`!rbd@Xf9I<>i62Z}UT`)_ z{NGfSQ0~zj>Gel0m}nI!=>5SHBRB=KBtqEd)%CO@*jQ6xA)i4rlPZik?;{RHvqf|R zPBeQjSS1VM3s>*fyv`}C0#@^{bMhA(jR^6BYKEdxy!l{r|6(8giJkrZ)8ll4qyTA= z<=(7GVugySJnsR7g9Qn-Mb}n=iFgpQV@Y#FWZ*L~KYP?2^-F7_j9)OTR9)9giggN$ zb>9~jKj_Q4%an8z!_;G8PD4p&TFlL1Y>7sW4qsF&d9&?Ua8A?0ZpPa5P=?VHf30dy zw|n(`(U@(Q7|<$|9MeQR0VJ<4ploz&l{5KmRg=gVn2m?f)V$3B2#}Mu-U~OmmE(yJ z-+leOB=GC%x=v~6sN#OkNn+i_WwyVi;j*6CiVKFO*;U?#rBK3eA#Xmz#1AaLSdQ^4 z;=3Cf6LV9J=`PvRhGF^ZYk%~j#@!>@W+CxCq*!4m@(p|snPKj+h##;O#U}I85fLQ_W>BWXGXoA_K zV07%$Q_@aZz#y;%{dsZL)Q7*@L*8|qk~rvG34?)f2E6WpVoLysk3T2ee<)dk@3uKI zU$9cXEK#9Q2+v#Eq88`I#k@y$UzX}X_`{3UYApj)$HTGTb zzM2V$y030AGs~ITWZEm`KexxonlC@ddKEgd5!wk8t%J7&U;}tu2hArAI1@yZNQRWf(yYFTdu(Ssm z9h$%0h`tYM#JngQC0QZq2+YBAKiUlizJAf%VE)rtEAX3&$@#&171T5`HSqWz3HM&u@Aw%wc)qG$mhr^1 z&y1cNaOks>q%vQnmVy3!H`FOP2%Q$w5!P4ql5&4HSC!O#Hx&J zyi+m?&76iUuyKonhm`dq))ar0a_zU9^c#7?lI()0IbulEwTrZU#6v z6IDyyeFk3rV=rthZ_3oU-#zfZfIv^;M^f=wl={{?b6r0du6f50+m+{`M}>C9-*R5I z1j-Mag7@?rF+=Yjqe4kK!$J2%V1!D1yG3@;K&!_t#bxx{_O>)HY?Q z4T@fRJS1+L6_O~xPm+>ks&-1ucJzK3ok!x*+#(D2l&}i3R0?b$FU@1!Nsy~@& z(9;X8n5fo6>WwMajb*~KB9FdQo;Bk;r|*bCRjnZ)!`KvQAFVTHa?ic{6iwFb=nZBx zH3RwU^TsUAyd+43bs&EJ4?y5O0|9dr%gyxH6aDww1`4K5InRiF1<_gLG=*+k}$P{>n7cFQV2K>n4jVGTryla_h2~KtTIej2OE)AX! z3q79*_qqSa^HIF9$?>9$Us%1|d4udOo|OER(2DWvEOh4`Ue0aT?=Nl+@iG|QYl=wX z?pZs$XmfV{Q!5thT5F-9nWl=dJsIzCor%_{4q+`9zqPIjFG8eQT1FW7TQQ^<&)>`j z*EJr+J&)tkZQz)_5P6gM@j~uT9jOlmybHX>m$Mz}T zMCGYeYw#9}8E<*PYgBxu3Si%?XOvWTk2g1W6yl>%9!G8;V}xB)ty~W{De{}s;ptDF zxQyFo2@SNPm;e2b-N(%_}h4y$XtW<^dHzVE~=)K#S+{A-;P$W zKE1MV*tKSJgmzST6oMXaco!cQb%#KOP9!wTfNSZS=Bbd&n`6h*+pJ@up zm@l-c0`8nsE#AMoGyd~Z_llN01Q+;sMlyB04o+*%dI=BhR>U2y3u_fwi67Q}Ql|NLBP^i1!W+wD(Nn7c}UyNci+B;SxcN`qfg z_4~S?LN=&>P<#7vl>w>qOaW_(F8a{;5aP0OpNk8p@c%gPBvcgDA9|`X&hd<@@`m8) ze7x#>5MV6^1qT^T4PslCeVUrnn6I@Te7%*~ID0kn8reoc4KM}*!!|qllkL{Wb-;k! z)p_zoz%u`T3vkHz@C;1aKD~kO-g-XQ@ray|52R<^#_~w9+uR?CHNAJ;B2;$q0djVu ze%w`aSbJoA^u_Z*+yiSYlu>B!3U8FM^9ZXB>rC9I-+%G?{r)r?u$7rr#i(=7XTIjm zo(NUCCeQ+zT7tG%SO2|Hz$vJvbXv)4ngL>b{#ao3uL}moPmbU&0BJKG61;3l33`^_ zl9-_ve?=G96%0t=XJL8V@nu7N@tfw5Qr8%Z#+dB~t(9(fnHdQUvAB6(4a>(m*`9V@ z?@!$^qdZF&O~0)r*|`JXe>E_^fE_Yl13s4bfoWU#Joh3vsy3W=fzAk6)2Ot60JVy( z?tCTd8X(>3Qv$v!M&+aP-@Q@)^1iP`NR|_85(tp|AP3015<;oX zzimdd(Z@)1=~6ggC|<@xq~+IRE>5&*nB6 zjk5q>66#AgxI!KAK6gLq`~V0Wu{RtE;%ZXeMOx@`CYV5B7lx9#^z#7!*}Jb1;#?M* zdgCt3cNW3wlyg&YYTt$+FJQg;^|)`34}^|SHNaki1Dad4Scxn$;{ijy&n`U5A!H=m zz%x0!_OwPNl<2pVI!3aqc;w{d-rVHI-jabNk5qAC&GC%AU9t%;=Z$-ulndUAclI8H z6i!+@IYmGU+Ur0!5e~*kL_CAUm1q0=PHIF7pMY((EEpWr{v`2%ujq%a4iI`Tf4g&@ z!E>~z|2a@?Db1n*kEPBB2k!>EBmsuZeS_n_4mpK_G~*r~ZB0H*FOSY(jjoL1S2gg` z;(oIrp7#o2N?Iv9m!EI!$(M032Nt?HZ$rKazyq(zLTX_gtdU9PHkcLiV6AdXIglf9kyL^9K5?H})O;gR)>acco*a7CzZM8OX8^IH}6oj$hPU-1Pyk zl+Y4-p4}~zo!>rB*_B+F-cYEl%@AqH4YD4*&rhCo9#Z@u()ZmC_iivj)nwE>x4a*r zg;q^{Hwx6$(CF-gNuNtI0K8ImJn%ku-Vh81GbVXR`gD;W__K9j6vQ7g&H(@EuNU=z z3xRXmCL9P@9*z^>;FFQv@MJXH!9WxEOND>P1zw;&C52=I~>*3p10CxM^p zLr(0m4e%PmLf+$`1Cud&vB{kfKkJvVA|wuv#QI(3cY{~C>?G)1q5zrB86o(cpI}wL zJ@r>?aOWAS)kqE=Xwd_U+&Ayv+PJ8^Q`!C@YxhBNiafW3F+^LvW;5+^iYz$|DDvEZ z^dyZZ4AIQ4SM64=K>cSBdITAkwt&eAD_OA48$jL%hHu<}oCdTse2FO)_cMV&(bp=L z1Hh}BAoqr?`)&U-U-(Z}OZE!SfdHcph;X%Ex`N!9$!KN~xB)m}Ihu=K0!hB(Vsc+F zFz1d|0s{(0i0ux12AYA@uu-O7SxHLDtpi}7VF+36=Nluw_YXtu6omsTH`%q*MF((K17_DFBm1yl2 zrz$?PRMOrvGlpegZuczE%JQ_CkCx^E!#cH0^$gXk;cZa>(UHMBJwXl01pmGO1Xr~Z zLf_IF-N*=Oy_=r{az;n}(w_D|zzPnZBk1d>1nAaqfpyk|)#Y!?WP zj?a7A;3iH*chgI93Mfe6rE#q2zmF983yj#z3bZ?^@XHVqC*s|_aC^Qn<@MK5`#K%M z*AbHP^6#`>zK#d7>u3FU-~EvV++mp^*|8mHHI5mTi>(7QbjUQc2PiHnMtfTC^Wnd` z4_RsdGW>&*RJ)wAIa&(g6sY4fM1Jo`0@mEwuMMu6-=0kAnv43(%((_J7crD%~IXOAidZKy`82tN#`yCDqWYEHTRBb(1RZ}wp8rZqp0O|k& za}=;EVFoUT7iOE9hR><%gQA$_ZbZZa@j2iEzq$$Xmp>LPB7xH%eiBIV@qT99{qOeZ zV7a`#sNX1#9I`Q6!qUCs?@~Ns#34xPVb?e9kNN5ZUgjjzQ+eFmfk825#+3An!^9;C zUo^9j{AIu~Ln##v4R!)n@V5j61jY)1U-c~r>zD!7I(J8|RBzOg0R8CZt2p5wO#1l1 zI*8SA%s!l=x@VGd3RVpqWCGPd;w(h@!{zt63kM{^yfuh;oB&ejPJ*PT+92Sj#-u#T zY?;*#6nXH3k$InFj~xex5l8OPeRUyAlDg)aqc7vY=%5*(RxlU>69{ae)yf^$ld(5H0kj;HP89- z)XK@S?JOF2-EO`dqnk|qebDU1{TvmgB9HQ&tP|nE$ic(i6`>Qwv#vE237+}wZ_X)I z#p|{bU*b)DS?6g93XTNFN*lSqjCJ}C#XJ9hm0bxqRa^Tw| zmMLyBXPzpRL=q7>bPbth$Pf}qgd^f0vmzN1GFJZY?sg7eF5myV&vSeBbDXpH+H1Y< zyWVO2ehG&dQvG5U+Tw05qge0f){9S!b>EvFGtTQ%aBVicD7D%RDWC`4FCTRma|#My@_T(oEPrrHzKL_Cj?yFgM# zVqr5^sL(#O^Xp;HnWVzw$vz!?dqgiHtVG50kHBw*>8|~g!Nl#fN5~)(v5P>y16B|r zEYCJ7X_-I$*z&j+K>w#gi$>XW6f+pgB4}Cs?>>n+=Z9MQE9K3};Zc9-kgBQ{DIH(w zA!p#^`DQ+<+)9gO_mUS&3ret+&@E=D5XsuGKNFp(4R5$lhs zDp68S{5~!R2g`W;ru<7EV71N^EH{;Rs#11iai=corZ(v>!TU>|;hqEUuo z8f%y*_bZzz^mq?p?hNT3D}!VqnX@**rsJ25y>F2P7&KG*mhGx;`aa4eb9l78-#BZm znK4(My^Y9xq0~0-hOle?fQ;X#O0H}hzv<2hxkRx;d$P-Jr3Uzy=ZP2(I4F!VVQoDa zH3lYnr&djdN($$~g-6Oe2bnPL0auFU(BVVhidMeJru)UOHcJO{FQo-Y+EY*gEkeIP zJDdx*4Hoo(D1(d< zj_8vJd!rO&ImZ76EDoUAJ9bbf^K9+_WNecwudjV9!?ifT&GcH3C`z0D`v* zbQ)E1ZcdaEsWOEZ)Ev)MjG9Q_`S%%dR5ZP#XfpR634<~9rGo}L&Uo0V)av9C+zGj@ zPN2efn8cuvPk!0HCpYv&ZhtoE^(@QCor3dc4Q*;NysaLH>O?l#c6K<%k?VD^$qgA> z$SbV2NQ8V}lMV{Y4*ui3NsnJ#e%Sd1{ag_@l~ z0#k)k%)L`$B>`M6Aui1Arj2E5_fvG9wZ)8oIN{n@d2!-Oj^(JMgqR-R$$hL0=*~!G zw>NfJhZ3pMN_A|yYn0g8a=v!LQu&5Q?S*nuda(>F-^-{zhQ&3wn>v(yq@su(Pc9l$DHw=PSP2drgc#mR}C1J;n_u z+{KRY@3ETdEo+Yp4tad1H&YFG$6sA}oLe!gngQq2kElnBP()U%2~}D>`J?C^nC_-0 zap3wZqVk}GGt2wx`()|96g%cE`l(vS!qf^7$`Y;7*E-3u%`qE{hwh~>KSC=gzCDGt! zlh@%p?VKkULcgP3!8u`Z%=pq1_C<$Dc@vX#LyYdN907HAK5elC2lel9cQTC@&!_TX zFJatoO}O^4=;Xc0G5T7eD;W-tFHbowBxUO`{sAPHt51>A;X8U6|x^B%2Jfs&l$(w zccik_ds$F&z5VO>z%6@+5=a0v09UR}I7n8J@ZNlSRtoh*Sp$UlB)z~8TyliaBnGzB z6;FYK6p`2Xh!76I^1fyY-rke?4{F&1-A8m>|#mFb$ zf8lA{M>`c|Cz6Bixqt)XQKN6TU+wZ6apHLyB)DCMh1ws6a6CRb{kMA8y`NHd29Y|6 zaf&VXa^w%FlSJjWx-zuWo8-#(7=ZY>xG69|3;hs7>+LiXI<=z)hHOoa$3tl&OG``L zNFPYMi@u|^ch82vgU%nN>lt1>Ki>WU>JyPr2a3ZK4JSKFAw^2Gs{l8mKW0dDo1U%a^Plgj@c zp;SNRo(&GF&0B#niW>+(HsazS@Ly7VZAp2KQjZiMo(K$l27%P7Lgg93=3jtB;*HaUZLqqS7Lj6Vj2Y#_)#R z0KDZW$lwziTqi~{N#Nei{^~f}lpE12iDV4W4@B6b4cV zRcIx84wC_R$~h;&Py<-VRx-e+DL?u0%61bFRKxCsbnAfg+8ivu_RUp^`s&!5f_=o~ zXBD$7x}zT#smA#5oql*FLDoyOuMDwJs2CQeM$4z=M1H>AOuk=+>t+Gn^%ZQW?Ivpo zQaj{n<8$PZ#vkgLXh4K8Q)$}*UjCP8D29_D?ml4Gi7o>3@X51$4UbWWz#Y~lIvM__ zh($JV>BXa+ot;|*hK7c0_>?e;x`6qi!I%Y-H=6EfrcALr2y~n)lj7+d$h*t} zznU`0EYZ1#O@K+NqzXw_WjRNB=*rk~0|2~;YB=G*y%I6rgV1F5mAg}9lZirw5ZcB8 z6bb1kUj`idW{X{lQ^!B)UbV2WZ~;Aan*eaP+(MJ&oduTX&QV0G3G>^)__#d3f=s5y zJ3>pY6%uKsYog8dce+A3Ux}C6Kp9(C@N=Kp@}FQu6c^XaIBQ>DU+SjVgAf!7Qye>X zOc@e{&B;?hf5~-SBH)MboGSnej>n`M(Qt8ayaKVX4hKZiR^NW0#ybz>jdOD~6hi8k zSTFi=&j4)AYdteR&SyVX9Li6&;QtjwRMc?l;ehU?OZVr)@rM^iy4q5#|V6#z(DV{=Vr zL6&6H?BToRQxp!J*#|jQ?~DDLn9pAnLv56gAXdt^71lx=nhX3Dw^?SfCSn+4^ii^5GW#Z0*Op1S~)m z+W6a7^NNa|fenny0h=pPkB}M5x2GA=*;8i$gyNYjU4gOU#GBWzJLOU=Fc^N&DxrT1 zhs}QoKhJ_rBB|GB^4`8ZJLU(uYW0~+u;$OJ+(uyv+5Rgq7qYZOI)QK?;A?}h5ct%p zifi9skBOF=1hZS^7R0~DZhYZNq6VMT`7R`TQecZ=aYa~z=0s^43u+Bkw09VK=c-2Y zju|s6a~BbHLHlY#b#zFsxMz%kHdPKaOr;#?rP$L13^FN!2sDRQ#N~!PCHK~qBD zj1VlM$Jp;xOll=No2`F37hsTGyEHBl(Ie?Ek z8Y}1HQ9c2PJN7mD5L+NSd)(ikA}tQ92@7KrF?a7;WqOS-+$^tq=vZ6|*hOzXnJrAf zIUmpclCrYKAgu|Qq8dHmA4!3V*C=f5A=uT!2#O1FIRRm|Vt`W9mN4vyZt}b!nkMA; zd6%nHVH^V+DjSazAo+%}fINw1Ve>O~7Kq0dUw9`;li!AhZABuP>!QX{gYxL)ow06w z3Vr36{+8BvUl*h*HA_wbsbZ;}omxQovrdJ}#j|%q9?qxxb$xc{e-O1gRCU4p#JLGs zceUs5-@kXeXZH-S%h}?y+LNbyw=L~C_a5)_`5ly+UJulF za!XuKCFH%RQLA(M^yyL8%2P)T6Pt5gQgzAz^YZ|Jl>bbMV+|kt^vr1`Av1Gz>P7*} zKhFNY>k;ZYaW7=hR!@FI8Io%wkY}?TNgbJ=I&&N-F&?w;RkYb&Q(AQ^EPfsk+C{}8 zeuU3VcW)DqZ|Yo|Q}iktEBzTHIj&K6T7g-@-l_$vQ{Wi_mK)u+IC+R*67qumQ)J!U zu7pTzD|DoV-eu|UfqegaIOgF3Q3%be0<#H^AlOtS>j4R?t@269zPF*e3o$_p4ml~Q zY)F@)3J`cyvKTf1x*dq&S4qwm#7MDm!o5>i4&B@m!|kV1sv$}_;Ux_FAL%JV84jJN z9#ezH1cd;PL>z34l6^IXncvQ}fN$wnR}#etm0-v%_oc04SW#O+C>A^!Bx17N+`}QR zd=d)_@B7(!{AE%NShVEjUIU43HgOa+HPVO9&#yi_GP1++l==op@}LB8N*iy`W4FxU z|1=6qXOom852QTk)0%7Peg)loaI@PGCfxc(jIW{f8(TSavI_ zu<>ml{hY(;+miD#xKUyWE*?bs8u!H`k$N1oHi%7LquL;)JUl_Kf|+8Sw_gGBXNq8t zI0Xey-HD1qkbmWDpBs?m11AXwI1OTpoE#hpt_nZ>^LNkR&SKejP~&OJ0InD{h$dteM&&lF5(yM3vZ`4LX@0*GVy^I? zk>^z-hnR-J@(Y6Dle0~R_`|uSuD(8fRaQjgG@#L0w|xEhW+cH!Y6BLcA_|t3{7QQD zpX;~Ud<9-tE1*x`2n!R>@_|4FV_ z14#jRiDbK30GLCDkJvo4*h_E%KEVGiK8qJfM}~)+mH{U<4h?nTOSvN?8)Pns2k{}% zr@;F7=ltybH z-x~dP>rj8J(3~ap2GN;40MjVsjWo1xbK~3WLEv^vVKt$wgB;TU+K84i)_`wsD#F9V zV?a5^9$gefwvJy?lY|1%r@JD3Zd-fE#;XOjM72OYX;I)PT6mh3I?1YI&+tIQBmIR7TuUW7G;3Fql^l@ z?HiLW9T^OlnRfE-dlnE-zL!@om;cS1H~x&#f*UOTOeL)IKztkfb}JI7NKXXWf@t8t zjLnjC?2VoN1XWTi=R>R;;u-40h&+!O2yY9vk4hn)u3B|0><4JUbfd)`RI=1(DEZgn z5mBWiHD_|@d)3Sr*4N_SuAcM4X~!K>ek(;{-}iB#dd~`qm;_F>22(xY z+%QPI1;Q(0(1BKf!FSWnfU;(i`YkW~AE4$Y09LBoa`*sF($-~e<5d8u?2o09@$w5@ z`N;|)$(kF!4It|TuP+w4{Tr41`cQ61EB^IY_T7WpFU$BvL`1TTmNrnI|9_(l?inOc zp|2lnumnDw5>+7G`fC#xgR7t9@2kFbO%Ak))ISKJViyI<=)&9W>6*LNg7w#rSpkyp zl~hB46x}Av4dR2hegAI32?$xqvaFxsrnm3;)#kWDnH_rEl`Ncn# z6*5$_dpY_xtlodzbF%~~engU5m9{OR|Nqy4Qh%iUr)!S*$Nt+;h=Y|;Qc?!sU~mG# zVkGnzGyu#wr=+CrfddB+UZ^uwzFy!u+=Ye+6=h{%1sWO}j8sic4F{0#PNMrsYiesX zo_X7$SF|zR*AnMEjvYUq`t;<$gq(LyUwU|s005sh)&9uHn{t>>Z^8H(FD`m(8XE)3 zo$CpJKo+>kAQVGR$NLImoDWb%uxVbY0v;RaV4^wy?n%zF%F*??R3xd%UYi+T(Mqj%qlo!gK|8=5)gyPK~-OP-$g2PLYs#+EA{sF!Zi&Ok3KTPrxFt z{=(W1vpj5V)ro*|y+;L@2`RZE-h1D*`5ec67LQ`O$EL7pbFz{qCjk%L^-nqPvx23A zL>b^Soy{}tJKJUmJp#ZS+I*G*=uw|ux(Bec-K9u0^=ms((gs^?Cx1!z);4<-8;8^I z3$ijee$?FQ-2;IcCldPRNqD~f`y`dCvG;iD!{lsp`*QarmU4}xN}Y$R9yeADcUUl? z=ANV`?@V_o7)4-u0U4j$b+pMj_N^;4J8|V7UtbzhIV3(=Y%=&ygv^<>slM~qbvsyh z&4@{hNr&3>#KwKas5bvKpnTp(+bU@2CV8_k`))RNwZ9KR#KZZ7+JfSVGAG%El*q2o zw#*`}BFhkQgS(Pt5z;@7rN++?5YWFydI4ngriH_Ajf5?FRm{nvDX8X}O#H_ZFmVh= z%mTm>AR;EEMkxlug*BJ3*X;XztA;zR&jQwFpskT3D;LfuTtA`FFI!m6{N00#`_t5euk~WVXNHh}J zF!J@ABj4a6a(8#Pc>gL=BWns2r4;BWYarkK`dHG;>#*lpT`K%6k8AZ;?$_5u{6&m= zeK?=@F);ex17RxMC!6jMK=jb&X{lWo8X77L8P%bzuv;TpyKI|cBhTK-yJQTi|B{{O zByOa)FA?s~pRGDNivQ&2EN>j^$E50m=?VKjO-w|kgA?>c*n9pXrS7c05kkajs1J2$ zMxgZ2&o@6}RPyu`?#5b5$P~2N7?N)qB5pZRbW6};8DFCZXD{|u@y?)ME`1q^+6$Tc zIiiRZS={dw`-!32`GkG+DDK{yh6t^jke=4abQ^EugkBtp%b}{1YJ(6WY6wC%11GdA zIGUA|pTPZI%aVvlpYus_%+`0jPJ{+BA0iRU7uQ?!%oKP?=pSWg@0I`(V;;2_{)01i zjWqwrBQfcF71%8_pIQiRoHX1Ye@bmo7%}Ya(PyQBNJcF4k-8C4adB~j0JOWUSMLRkn*&8bU&;tL9SrqtX*Gzj_dOZli96O3Mve6{ORu zLAmKBu_NQJrz)O;C37j*n}*kj%}aI$wPy!XAu)*2abW#9AszC5E0ZIF_wX;HssR)7 z*5j=={*z4?Yvj9GWDh$tO1tqy93V?EsRv?N zKA1!{`6Hcb*9FfVc%j)m8d{|!M#AiuFJC%A?coaaZ}UuoE8cAFHq|4c9xo{Xa$Vf) zQ&?dE$ZZzDHZTMYmAfez1b5f(zhoTqA>N)0LJ*zPxD}WtajS0pP9KNDsS$28xHVQx z`c5P=NgKf^&-?ZZH2YtJLW|S08a-!9=qcR|(HY-cH^ZD&2+c#lHVKlM=Kz3m$13H# z(h7MEbmOzy9mL>Y$L#=^5$QKJalBhT&OCsmji3|qsSAsd9s>+JbjF?ET`1u+Nn3D# zk!uY3;$Ex(Nm*xwjNW9A&ZEB{K0I(xAW(+wu{EfyD3#sQObq zYWX4G3mueBO(OM^pQkvz%$VkTpyyL17xNIeT*N<&s`*IQ-qjgwtt;vDJRSsD+UKmr zm&F59cj%r-YQ(La^bOdjxx0DVIX1~QPWg*Yg3QPncK616FyG9x=>>{l$>Ta~xbMHJ zggZ=^yduWE;bsFe#h|=HU&dq7ZmssX?=Up4QgSDHTIxfevFN9V&@2zWOU)m)345VV zKraXpq!UJN@yg1|imol4jHZBT#o;hk1^EQ%bhTKT85$bCDMU#nH{U9cb|^OAB?Mkb z&UgdZ0k{0ndi<a91GZhKURUcS&W3Bz#tbUfx)~nfgA_>~2zXt(X*2RxK#S;PjE6>)x3xz?)S)PNAj*i9K zN2eQ>fzHu7V&buwZqLvJg!EnPzR~^AG&qPjW0jxihmXw>=*~InUu9I&z%5hIH^f;% zR|?bMKG`%milap1fbJ{Q`w*f0WQK!9twR=;yRyJ{S@Zn?%cI$X?B8C+=DV%yMnJk$ z{a<34UY^p+*$-!dEIeU_jGiWRFOL#tixb>4aK4I{Q5U|X9lDMsFJIt4*>tg=LAh4F zj@;bcH|;4pj4iV>eAJ{6Hp6(wRp9=J`V1}E7mEvZE93zlp;Oh?yQ-`hPE!|!?){}0 zE&{OCPE3hNZT))n#L`9tS?pQr*e>0!3@_Wv@UZqs+n)Q{C+)pMaI1tu!)CkO%TRa# zXBakV-k-M>dk$uLEk4@88(Vwr+*p<;a0E( znclyy-oR_ori%g^o@)f1;Mv^?gbnLpHduF^3WQp(!@M26CpZ*Ql={#X;2taQ=Y4oQC8`FTl-gaazSJz9gF#L}=6DSPNk6pf>tRc#oi~d! zv$6_#GIrubQ<0mRy807wyj3Xvt$x106PzF?31~K?9~^xqzR} zK$Vg~v)LGSw#vw{j1xLwxDf6k6;f#1clJ@YfRvHSrEG`1N=d1K+2tpr?-D1P<#z67 zY)w4br-oa-)*B=h!TB^76EpA|?55>2q~QS&YmXRd;8i<17kJiT?#9?T#c?3(d^ZxK zCRoM+23ITrIwEr9rS0E7LQ+glz(8>YoEy36n5j8ZOEj3SoDT&A)MTkPEvc2wTpnQ!@uujep+@f(jO4G$~^eCCZvHRQz2 z9!{ijFQS;_OAJa)9V1{w4~O`eVgyYLll|B6Zw78@s*X6H} zWbwSr1g#|hJa#aNg4BHfynyhQvlFPe06~)V#U9qZ+DPkkpo9)_V`=K z3=GT`4B$l!gJgGH(jWW(Qei~{vX6l}y6-ML{_VCnZ3|Q^BSS(Zgoat;bt0VV zL^2X(B34!Xuv(&sA53NjDk_tqVAI4nl+~0tULG>99 zjA}ms$e|F%mq4$FCBzDrAe`G&U}tR$CK0a=+K^-toNCC1pgoNW@_RyuC?|09d>3)} zyVuAFexGmr+BO~;1lNx;id&OX;oHp7b{F7hjCXS`2LxDzzT22`_kPn6C^XbS^J1+S zMwX^C*ChTea_kqeMjxTM5b<`AZBN>G;4*%y9_WEU&P_jv+j>9g;he#m1#q%u)A8v} ze(eP(lo<}}(%L&X)FxkJVS>|N_uVdig7cX!pMf3xjwY}rK)ULrot>R>&B-tAvpyBJ z0TJN0RXW}}_fn5L?OeUjaMzc`A`fY_+bLN1zwVoP3-&WVt6zS}^o7Pje9crxhYm7H zd+qJ*?`ZDUu0uc0(hv}MqId0 z@avDeK#{)?ZiD(&Eik*)tbCnFc2h)E*~~y^u8Q=vI)V+}aRmu+exuJ?P9pB7zuR~o z?Vv7^PgfaCNfmx9oogE!hbV#yNuG>lcnWy jU+waL3f2ES^dD3w-pN1VURvrRfd5pEpE{PSWFGu~5!8!w literal 0 HcmV?d00001 diff --git a/src/core/domain/command/services.rs b/src/core/domain/command/services.rs index 79cf402..d9414ae 100644 --- a/src/core/domain/command/services.rs +++ b/src/core/domain/command/services.rs @@ -38,7 +38,7 @@ where filesize, } => { println!("Execute HELLO command."); - let expected_blocks = (*filesize + 1023) / 1024; + let expected_blocks = (*filesize + 1023).div_ceil(1024); let mut state_guard = state.lock().await; println!( "Setting state to Receiving with expected_blocks={}", diff --git a/src/core/domain/network/entities.rs b/src/core/domain/network/entities.rs index 07c86c8..690b341 100644 --- a/src/core/domain/network/entities.rs +++ b/src/core/domain/network/entities.rs @@ -95,7 +95,7 @@ impl TryFrom<&str> for ProtocolMessage { Ok(ProtocolMessage::Error(reason)) } Some("BYE-RIS") => Ok(ProtocolMessage::ByeRis), - _ => return Err(ProtocolError::InvalidCommand), + _ => Err(ProtocolError::InvalidCommand), } } } diff --git a/src/core/domain/network/services.rs b/src/core/domain/network/services.rs index deb20cd..2df62ac 100644 --- a/src/core/domain/network/services.rs +++ b/src/core/domain/network/services.rs @@ -58,7 +58,7 @@ where ) -> Result<(), NetworkError> { let listener = TcpListener::bind(addr) .await - .map_err(|e| NetworkError::ListenerBindFailed(e))?; + .map_err(NetworkError::ListenerBindFailed)?; println!("Listening on {}", addr); loop { diff --git a/src/infra/repositories/fs/fs_storage_repository.rs b/src/infra/repositories/fs/fs_storage_repository.rs index 089a72d..91c61e1 100644 --- a/src/infra/repositories/fs/fs_storage_repository.rs +++ b/src/infra/repositories/fs/fs_storage_repository.rs @@ -47,9 +47,7 @@ impl StorageRepository for FSStorageRepository { async move { // sanitize - if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { - return Err(e); - } + FSStorageRepository::sanitize_filename(&filename)?; let path = self.file_path_for(&filename); // Use a temporary extension during transfer @@ -57,12 +55,9 @@ impl StorageRepository for FSStorageRepository { // create parent dirs if needed if let Some(parent) = path.parent() { - if let Err(e) = tokio::fs::create_dir_all(parent).await { - return Err(StorageError::Unknown(format!( - "Failed to create dir: {}", - e - ))); - } + tokio::fs::create_dir_all(parent) + .await + .map_err(|e| StorageError::Unknown(format!("Failed to create dir: {}", e)))?; } match tokio::fs::File::create(&part_path).await { @@ -84,9 +79,7 @@ impl StorageRepository for FSStorageRepository { async move { // sanitize - if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { - return Err(e); - } + FSStorageRepository::sanitize_filename(&filename)?; let path = self.file_path_for(&filename); // write into a .ferrisshare temporary file while transferring @@ -94,16 +87,14 @@ impl StorageRepository for FSStorageRepository { // ensure parent dir exists before open if let Some(parent) = path.parent() { - if let Err(e) = tokio::fs::create_dir_all(parent).await { - return Err(StorageError::Unknown(format!( - "Failed to create dir: {}", - e - ))); - } + tokio::fs::create_dir_all(parent) + .await + .map_err(|e| StorageError::Unknown(format!("Failed to create dir: {}", e)))?; } match tokio::fs::OpenOptions::new() .create(true) + .truncate(false) .write(true) .open(&part_path) .await @@ -133,9 +124,7 @@ impl StorageRepository for FSStorageRepository { async move { // sanitize - if let Err(e) = FSStorageRepository::sanitize_filename(&filename) { - return Err(e); - } + FSStorageRepository::sanitize_filename(&filename)?; let path = PathBuf::from(&base).join(&filename); // Rename the .ferrisshare temp file to the final filename From 10261f86b66781dc9d998a0393ae714933dad857 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL Date: Fri, 31 Oct 2025 11:27:41 +0100 Subject: [PATCH 10/11] Implement P2P Transfer Protocol with Command and Network Services - Added command entities, ports, and services for handling protocol commands. - Implemented CommandService with methods for executing protocol commands and processing binary data. - Created network entities, ports, and services to manage TCP connections and protocol message handling. - Developed FSStorageRepository for file storage operations, including file creation, writing blocks, and finalizing files. - Established a main entry point to initialize and run the application with TCP listener and handler. - Introduced error handling for command execution and network operations. - Added README files for new projects: Network Port Scanner, Tic-Tac-Toe, and Web Scraper. --- .../p2p-transfer-protocol/.env.example | 0 .../p2p-transfer-protocol/Cargo.lock | 0 .../p2p-transfer-protocol/Cargo.toml | 0 topics/p2p-transfer-protocol/README.md | 29 ++++++++++++++++++ .../docs}/architecture.md | 0 .../docs}/ferrisshare_logigramme_v1.png | Bin .../docs}/ferrisshare_logigramme_v2.png | Bin .../src}/application/config.rs | 0 .../src}/application/ferrisshare_state.rs | 0 .../src}/application/mod.rs | 0 .../p2p-transfer-protocol/src}/cli/main.rs | 0 .../src}/core/domain/command/entities.rs | 0 .../src}/core/domain/command/mod.rs | 0 .../src}/core/domain/command/ports.rs | 0 .../src}/core/domain/command/services.rs | 0 .../src}/core/domain/mod.rs | 0 .../src}/core/domain/network/entities.rs | 0 .../src}/core/domain/network/mod.rs | 0 .../src}/core/domain/network/ports.rs | 0 .../src}/core/domain/network/services.rs | 0 .../src}/core/domain/storage/entities.rs | 0 .../src}/core/domain/storage/mod.rs | 0 .../src}/core/domain/storage/ports.rs | 0 .../p2p-transfer-protocol/src}/core/mod.rs | 0 .../p2p-transfer-protocol/src}/infra/mod.rs | 0 .../repositories/fs/fs_storage_repository.rs | 0 .../src}/infra/repositories/fs/mod.rs | 0 .../src}/infra/repositories/mod.rs | 0 .../p2p-transfer-protocol/src}/lib.rs | 0 .../p2p-transfer-protocol/src}/main.rs | 0 topics/port-scanner/README.md | 25 +++++++++++++++ topics/tic-tac-toe/README.md | 25 +++++++++++++++ topics/web-scraper/README.md | 24 +++++++++++++++ 33 files changed, 103 insertions(+) rename .env.example => topics/p2p-transfer-protocol/.env.example (100%) rename Cargo.lock => topics/p2p-transfer-protocol/Cargo.lock (100%) rename Cargo.toml => topics/p2p-transfer-protocol/Cargo.toml (100%) create mode 100644 topics/p2p-transfer-protocol/README.md rename {docs => topics/p2p-transfer-protocol/docs}/architecture.md (100%) rename {docs => topics/p2p-transfer-protocol/docs}/ferrisshare_logigramme_v1.png (100%) rename {docs => topics/p2p-transfer-protocol/docs}/ferrisshare_logigramme_v2.png (100%) rename {src => topics/p2p-transfer-protocol/src}/application/config.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/application/ferrisshare_state.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/application/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/cli/main.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/command/entities.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/command/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/command/ports.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/command/services.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/network/entities.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/network/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/network/ports.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/network/services.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/storage/entities.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/storage/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/domain/storage/ports.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/core/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/infra/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/infra/repositories/fs/fs_storage_repository.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/infra/repositories/fs/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/infra/repositories/mod.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/lib.rs (100%) rename {src => topics/p2p-transfer-protocol/src}/main.rs (100%) create mode 100644 topics/port-scanner/README.md create mode 100644 topics/tic-tac-toe/README.md create mode 100644 topics/web-scraper/README.md diff --git a/.env.example b/topics/p2p-transfer-protocol/.env.example similarity index 100% rename from .env.example rename to topics/p2p-transfer-protocol/.env.example diff --git a/Cargo.lock b/topics/p2p-transfer-protocol/Cargo.lock similarity index 100% rename from Cargo.lock rename to topics/p2p-transfer-protocol/Cargo.lock diff --git a/Cargo.toml b/topics/p2p-transfer-protocol/Cargo.toml similarity index 100% rename from Cargo.toml rename to topics/p2p-transfer-protocol/Cargo.toml diff --git a/topics/p2p-transfer-protocol/README.md b/topics/p2p-transfer-protocol/README.md new file mode 100644 index 0000000..8d57551 --- /dev/null +++ b/topics/p2p-transfer-protocol/README.md @@ -0,0 +1,29 @@ +# A P2P Transfer Protocol + +## Description and Goal + +Build a CLI tool that allows two users on the same network to transfer a single file to each other. +The tool should be able to act as both the sender and the receiver, without a central server. + +It is expected for a sender to know the IP of the receiver, i.e. there is no discovery protocol. + +```shell +# Receiving a file on port 9000 +p2p-tool listen --port 9000 --output ./shared + +# Sending a file +p2p-tool send --file report.pdf --to 192.168.1.100 --port 9000 +``` + +## Hints and Suggestions + +- Define and document a simple networking protocol with a few commands. For example + - HELLO: For the sender to offer a file to the receiver. It takes a file size argument. + - ACK: For the receiver to tell the sender it is ready to receive a proposed file. + - NACK: For the receiver to reject a proposed file. + - SEND: Send, for the sender to actually send a file. It also takes a file size argument, that must match the `HELLO` offer. +- Start a receiving thread for every sender connection. + +## Grade Factor + +The grade factor for this project is *1*. diff --git a/docs/architecture.md b/topics/p2p-transfer-protocol/docs/architecture.md similarity index 100% rename from docs/architecture.md rename to topics/p2p-transfer-protocol/docs/architecture.md diff --git a/docs/ferrisshare_logigramme_v1.png b/topics/p2p-transfer-protocol/docs/ferrisshare_logigramme_v1.png similarity index 100% rename from docs/ferrisshare_logigramme_v1.png rename to topics/p2p-transfer-protocol/docs/ferrisshare_logigramme_v1.png diff --git a/docs/ferrisshare_logigramme_v2.png b/topics/p2p-transfer-protocol/docs/ferrisshare_logigramme_v2.png similarity index 100% rename from docs/ferrisshare_logigramme_v2.png rename to topics/p2p-transfer-protocol/docs/ferrisshare_logigramme_v2.png diff --git a/src/application/config.rs b/topics/p2p-transfer-protocol/src/application/config.rs similarity index 100% rename from src/application/config.rs rename to topics/p2p-transfer-protocol/src/application/config.rs diff --git a/src/application/ferrisshare_state.rs b/topics/p2p-transfer-protocol/src/application/ferrisshare_state.rs similarity index 100% rename from src/application/ferrisshare_state.rs rename to topics/p2p-transfer-protocol/src/application/ferrisshare_state.rs diff --git a/src/application/mod.rs b/topics/p2p-transfer-protocol/src/application/mod.rs similarity index 100% rename from src/application/mod.rs rename to topics/p2p-transfer-protocol/src/application/mod.rs diff --git a/src/cli/main.rs b/topics/p2p-transfer-protocol/src/cli/main.rs similarity index 100% rename from src/cli/main.rs rename to topics/p2p-transfer-protocol/src/cli/main.rs diff --git a/src/core/domain/command/entities.rs b/topics/p2p-transfer-protocol/src/core/domain/command/entities.rs similarity index 100% rename from src/core/domain/command/entities.rs rename to topics/p2p-transfer-protocol/src/core/domain/command/entities.rs diff --git a/src/core/domain/command/mod.rs b/topics/p2p-transfer-protocol/src/core/domain/command/mod.rs similarity index 100% rename from src/core/domain/command/mod.rs rename to topics/p2p-transfer-protocol/src/core/domain/command/mod.rs diff --git a/src/core/domain/command/ports.rs b/topics/p2p-transfer-protocol/src/core/domain/command/ports.rs similarity index 100% rename from src/core/domain/command/ports.rs rename to topics/p2p-transfer-protocol/src/core/domain/command/ports.rs diff --git a/src/core/domain/command/services.rs b/topics/p2p-transfer-protocol/src/core/domain/command/services.rs similarity index 100% rename from src/core/domain/command/services.rs rename to topics/p2p-transfer-protocol/src/core/domain/command/services.rs diff --git a/src/core/domain/mod.rs b/topics/p2p-transfer-protocol/src/core/domain/mod.rs similarity index 100% rename from src/core/domain/mod.rs rename to topics/p2p-transfer-protocol/src/core/domain/mod.rs diff --git a/src/core/domain/network/entities.rs b/topics/p2p-transfer-protocol/src/core/domain/network/entities.rs similarity index 100% rename from src/core/domain/network/entities.rs rename to topics/p2p-transfer-protocol/src/core/domain/network/entities.rs diff --git a/src/core/domain/network/mod.rs b/topics/p2p-transfer-protocol/src/core/domain/network/mod.rs similarity index 100% rename from src/core/domain/network/mod.rs rename to topics/p2p-transfer-protocol/src/core/domain/network/mod.rs diff --git a/src/core/domain/network/ports.rs b/topics/p2p-transfer-protocol/src/core/domain/network/ports.rs similarity index 100% rename from src/core/domain/network/ports.rs rename to topics/p2p-transfer-protocol/src/core/domain/network/ports.rs diff --git a/src/core/domain/network/services.rs b/topics/p2p-transfer-protocol/src/core/domain/network/services.rs similarity index 100% rename from src/core/domain/network/services.rs rename to topics/p2p-transfer-protocol/src/core/domain/network/services.rs diff --git a/src/core/domain/storage/entities.rs b/topics/p2p-transfer-protocol/src/core/domain/storage/entities.rs similarity index 100% rename from src/core/domain/storage/entities.rs rename to topics/p2p-transfer-protocol/src/core/domain/storage/entities.rs diff --git a/src/core/domain/storage/mod.rs b/topics/p2p-transfer-protocol/src/core/domain/storage/mod.rs similarity index 100% rename from src/core/domain/storage/mod.rs rename to topics/p2p-transfer-protocol/src/core/domain/storage/mod.rs diff --git a/src/core/domain/storage/ports.rs b/topics/p2p-transfer-protocol/src/core/domain/storage/ports.rs similarity index 100% rename from src/core/domain/storage/ports.rs rename to topics/p2p-transfer-protocol/src/core/domain/storage/ports.rs diff --git a/src/core/mod.rs b/topics/p2p-transfer-protocol/src/core/mod.rs similarity index 100% rename from src/core/mod.rs rename to topics/p2p-transfer-protocol/src/core/mod.rs diff --git a/src/infra/mod.rs b/topics/p2p-transfer-protocol/src/infra/mod.rs similarity index 100% rename from src/infra/mod.rs rename to topics/p2p-transfer-protocol/src/infra/mod.rs diff --git a/src/infra/repositories/fs/fs_storage_repository.rs b/topics/p2p-transfer-protocol/src/infra/repositories/fs/fs_storage_repository.rs similarity index 100% rename from src/infra/repositories/fs/fs_storage_repository.rs rename to topics/p2p-transfer-protocol/src/infra/repositories/fs/fs_storage_repository.rs diff --git a/src/infra/repositories/fs/mod.rs b/topics/p2p-transfer-protocol/src/infra/repositories/fs/mod.rs similarity index 100% rename from src/infra/repositories/fs/mod.rs rename to topics/p2p-transfer-protocol/src/infra/repositories/fs/mod.rs diff --git a/src/infra/repositories/mod.rs b/topics/p2p-transfer-protocol/src/infra/repositories/mod.rs similarity index 100% rename from src/infra/repositories/mod.rs rename to topics/p2p-transfer-protocol/src/infra/repositories/mod.rs diff --git a/src/lib.rs b/topics/p2p-transfer-protocol/src/lib.rs similarity index 100% rename from src/lib.rs rename to topics/p2p-transfer-protocol/src/lib.rs diff --git a/src/main.rs b/topics/p2p-transfer-protocol/src/main.rs similarity index 100% rename from src/main.rs rename to topics/p2p-transfer-protocol/src/main.rs diff --git a/topics/port-scanner/README.md b/topics/port-scanner/README.md new file mode 100644 index 0000000..a2c94e4 --- /dev/null +++ b/topics/port-scanner/README.md @@ -0,0 +1,25 @@ +# Network Port Scanner + +## Description and Goal + +Build a *multi-threaded* command-line application that scans a range of ports at a URL or IP to check if they are open. + +The tool displays all open ports at the target URL. + +```shell +Usage: scanner [OPTIONS] URL/IP + +Options: + -p, --ports TCP or UDP port ranges. Can be set multiple times. + -t, --threads Max number of threads. + -h, --help Print help (see more with '--help') + -V, --version Print version +``` + +## References + +[nmap](https://nmap.org/) + +## Grade Factor + +The grade factor for this project is *0.9*. diff --git a/topics/tic-tac-toe/README.md b/topics/tic-tac-toe/README.md new file mode 100644 index 0000000..357e40e --- /dev/null +++ b/topics/tic-tac-toe/README.md @@ -0,0 +1,25 @@ +# A Simple Tic-Tac-Toe Agent + +## Description and Goal + +The goal is to build a command-line [Tic-Tac-Toe](https://en.wikipedia.org/wiki/Tic-tac-toe) game where a human player can play against an AI opponent. + +The AI should be "smart" enough to play optimally, meaning it can't be beaten and will either win or draw every game. + +## Game State Representation + +A simple 2D array or a 1D array of a fixed size is a good choice. + +## Agent Algorithm + +The recommended choice for the Agent algorithm is the `Minimax` algorithm with a depth-first search: The AI assumes its opponent will always make the best possible move, and it will choose its own move to minimize the maximum possible loss (or, conversely, maximize the minimum possible gain). + +A simpler, alternative option is the tree search one: The algorithm builds a game tree to explore all possible future moves. The agent assigns scores to the board's end states (+1 for an AI win, -1 for a human win, 0 for a draw) and "propagates" those scores up the tree to find the best move. + +## References + +[Minimax and tic-tac-toe](https://www.neverstopbuilding.com/blog/minimax) + +## Grade Factor + +The grade factor for this project is *1.2*. diff --git a/topics/web-scraper/README.md b/topics/web-scraper/README.md new file mode 100644 index 0000000..09a3b23 --- /dev/null +++ b/topics/web-scraper/README.md @@ -0,0 +1,24 @@ +# A Web Scraper + +## Description and Goal + +Build a command-line application that can download and process web pages from a given list of starting URLs. + +The tool should use multiple threads to scrape pages concurrently, following links it finds along the way, up to a certain depth or page count. + +All scraped pages should be stored locally, in the same hierarchical order they were scraped: if page `A` points to page `B`, page `B` must be stored under a `B` folder located where page `A` is stored: + +```sheell +output/ + |- A.html + |- B/ + |--- B.html +``` + +```shell +webcrawl --output ./crawled_url --depth 10 +``` + +## Grade Factor + +The grade factor for this project is *1.1*. From bb3cdf071d282061ae2c43a2d06f1ebcfa7615d1 Mon Sep 17 00:00:00 2001 From: Joris VILARDELL <73846641+jorisvilardell@users.noreply.github.com> Date: Fri, 31 Oct 2025 11:32:44 +0100 Subject: [PATCH 11/11] Update README.md --- topics/p2p-transfer-protocol/README.md | 67 ++++++++++++++++++-------- 1 file changed, 48 insertions(+), 19 deletions(-) diff --git a/topics/p2p-transfer-protocol/README.md b/topics/p2p-transfer-protocol/README.md index 8d57551..eb4d754 100644 --- a/topics/p2p-transfer-protocol/README.md +++ b/topics/p2p-transfer-protocol/README.md @@ -1,29 +1,58 @@ -# A P2P Transfer Protocol +# Ferrisshare — P2P file transfer -## Description and Goal +Ferrisshare is a small Rust peer-to-peer file transfer toy used for a systems programming project. +It implements a tiny text-based protocol over TCP to send a single file from a sender (CLI) to a receiver (listener). +For a detailed protocol and architecture overview, see [docs/architecture.md](docs/architecture.md). -Build a CLI tool that allows two users on the same network to transfer a single file to each other. -The tool should be able to act as both the sender and the receiver, without a central server. +## What it is -It is expected for a sender to know the IP of the receiver, i.e. there is no discovery protocol. +- A minimal CLI sender (`cli` binary) and a listener/receiver service (`ferrisshare` binary). +- Protocol highlights: `HELLO` to announce a file, `YEET` to send block headers followed by the raw block bytes, `MISSION-ACCOMPLISHED` then `BYE-RIS` to finish. +- Storage: receiver writes to a temporary `*.ferrisshare` file then renames to the final filename. -```shell -# Receiving a file on port 9000 -p2p-tool listen --port 9000 --output ./shared +## Quick run (local development) -# Sending a file -p2p-tool send --file report.pdf --to 192.168.1.100 --port 9000 +Prerequisites: + +- rust toolchain (stable) and cargo +- network access to localhost + +Build the workspace: + +```bash +cargo build --workspace ``` -## Hints and Suggestions +Run the listener (receiver) on port 9000 (default): + +```bash +# In one terminal +cargo run --bin ferrisshare +``` + +Send a file with the CLI (sender). Example: send the repository `README.md` to localhost:9000 + +```bash +# In another terminal +cargo run --bin cli -- send --addr 127.0.0.1:9000 --file README.md --block-size 2048 +``` + +**Recommended minimal block size** + +We recommend using a minimal block size of 2048 bytes (as shown in the example above). Larger blocks reduce protocol overhead and typically improve throughput for local transfers. Be aware larger blocks use more memory and may be less forgiving on very unreliable networks — adjust down if you see timeouts or memory pressure. + +Logs printed to both terminals show the protocol exchange (HELLO, OK, YEET blocks, OK-HOUSTEN responses, MISSION-ACCOMPLISHED, SUCCESS, BYE-RIS). + +## Notes and troubleshooting + +- The listener stores incoming data in `./.ferrisshare` during transfer and renames it to `./` after `MISSION-ACCOMPLISHED`. +- If you change block sizes on the sender, ensure they match the expected file split behavior. +- For debugging, run both binaries locally and watch logs. -- Define and document a simple networking protocol with a few commands. For example - - HELLO: For the sender to offer a file to the receiver. It takes a file size argument. - - ACK: For the receiver to tell the sender it is ready to receive a proposed file. - - NACK: For the receiver to reject a proposed file. - - SEND: Send, for the sender to actually send a file. It also takes a file size argument, that must match the `HELLO` offer. -- Start a receiving thread for every sender connection. +## Development -## Grade Factor +- Tests: `cargo test` +- Formatting: `cargo fmt` +- Linting: `cargo clippy --all-targets --all-features -- -D warnings` -The grade factor for this project is *1*. +If you want more detailed usage or a packaged distribution, tell me which format you prefer and I'll add it.