From 69aa2bf4e913126d9a8a5e0550e6b499cbd32b78 Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Wed, 26 Jun 2024 22:38:59 +0300 Subject: [PATCH 01/11] distributed systems: introduction --- Distributed Systems/Distributed Systems.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 Distributed Systems/Distributed Systems.md diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md new file mode 100644 index 0000000..8ac631e --- /dev/null +++ b/Distributed Systems/Distributed Systems.md @@ -0,0 +1,19 @@ +# Explanation +- *Distributed System*: A collection of independent computers that appear to the users of the system as a single computer.\ + +## Why do people build distributed systems? +- to increase capacity via parallelism, +- to tolerate faults via replication, +- to place computing physically close to external entities, and +- to achieve security via isolation. + +## Challenges in distributed systems +- They have many concurrent parts. +- They must cope with partial failures. +- It's tricky to realize performance potential. + +## Papers +- [[MapReduce]] + +# Sources +- [MIT 6.824 - Lecture 1](https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB&index=1&pp=iAQB) From d8ecefce496d5a8d4e6bf73bf8ae07524e5fd987 Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Wed, 26 Jun 2024 22:39:19 +0300 Subject: [PATCH 02/11] distributed systems: MapReduce --- .../MapReduce Execution overview.png | Bin 0 -> 87279 bytes Distributed Systems/MapReduce.md | 118 ++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 Distributed Systems/MapReduce Execution overview.png create mode 100644 Distributed Systems/MapReduce.md diff --git a/Distributed Systems/MapReduce Execution overview.png b/Distributed Systems/MapReduce Execution overview.png new file mode 100644 index 0000000000000000000000000000000000000000..561a933f92b1fa627d21191851b7282193d2dd68 GIT binary patch literal 87279 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 U6Y$W0kY=i$)= list(k2,v2) +reduce (k2,list(v2)) -> list(v2) +``` + +### More Examples +- Distributed Grep. +- Count of URL Access Frequency. +- Reverse Web-Link Graph. +- Inverted Index. +- Distributed Sort. + +## Implementation +- Many different implementations of the MapReduce interface are possible. +- The right choice depends on the environment. + - For example, one implementation may be suitable for a small shared-memory machine, another for a large NUMA multi-processor, and yet another for an even larger collection of networked machines. + +### Execution +- The Map invocations are distributed across multiple machines by automatically partitioning the input data into a set of $M$ splits. + - The input splits can be processed in parallel by different machines. +- Reduce invocations are distributed by partitioning the intermediate key space into $R$ pieces using a partitioning function (e.g., $hash(key)$ mod $R$). + - The number of partitions (R) and the partitioning function are specified by the user. +- Overall flow of a MapReduce operation: + 1. The MapReduce library in the user program first splits the input files into M pieces of typically 16 megabytes to 64 megabytes (MB) per piece (controllable by the user via an optional parameter). It then starts up many copies of the program on a cluster of machines. + 2. One of the copies of the program is special – the master. The rest are workers that are assigned work by the master. There are M map tasks and R reduce tasks to assign. The master picks idle workers and assigns each one a map task or a reduce task. + 3. 3. A worker who is assigned a map task reads the contents of the corresponding input split. It parses key/value pairs out of the input data and passes each pair to the user-defined Map function. The intermediate key/value pairs produced by the Map function are buffered in memory. + 4. Periodically, the buffered pairs are written to local disk, partitioned into R regions by the partitioning function. The locations of these buffered pairs on the local disk are passed back to the master, who is responsible for forwarding these locations to the reduce workers. + 5. When a reduce worker is notified by the master about these locations, it uses remote procedure calls to read the buffered data from the local disks of the map workers. When a reduce worker has read all intermediate data, it sorts it by the intermediate keys so that all occurrences of the same key are grouped together. The sorting is needed because typically many different keys map to the same reduce task. If the amount of intermediate data is too large to fit in memory, an external sort is used. + 6. The reduce worker iterates over the sorted intermediate data and for each unique intermediate key encountered, it passes the key and the corresponding set of intermediate values to the user’s Reduce function. The output of the Reduce function is appended to a final output file for this reduce partition. + 7. When all map tasks and reduce tasks have been completed, the master wakes up the user program. At this point, the MapReduce call in the user program returns back to the user code. + 8. After successful completion, the output of the mapreduce execution is available in the R output files (one per reduce task, with file names as specified by the user) + +#### Illustration +![[MapReduce Execution overview.png]] + +### Master Data Structures +- For each map task and reduce task, the master stores the state (idle, in-progress, or completed), and the identity of the worker machine (for non-idle tasks). + +### Fault Tolerance + +#### Worker Failure +- MapReduce is resilient to large-scale worker failures. +- The master pings every worker periodically. +- If no response is received from a worker in a certain amount of time, the master marks the worker as failed. +- Any map tasks completed by the worker are reset back to their initial idle state, and therefore become eligible for scheduling on other workers. + - Similarly, any map task or reduce task in progress on a failed worker is also reset to idle and becomes eligible for rescheduling. + - Completed map tasks are re-executed on a failure because their output is stored on the local disk(s) of the failed machine and is therefore inaccessible. + - Completed reduce tasks do not need to be re-executed since their output is stored in a global file system. +- When a map task is executed first by worker A and then later executed by worker B (because A failed), all workers executing reduce tasks are notified of the re-execution. +- Any reduce task that has not already read the data from worker A will read the data from worker B. + +#### Master Failure +- It is easy to make the master write periodic checkpoints of the master data structures described above. + - If the master task dies, a new copy can be started from the last checkpointed state. +- However, given that there is only a single master, its failure is unlikely; therefore our current implementation aborts the MapReduce computation if the master fails. + - Clients can check for this condition and retry the MapReduce operation if they desire. + +### Locality +- We conserve network bandwidth by taking advantage of the fact that the input data (managed by GFS) is stored on the local disks of the machines that make up our cluster. +- The MapReduce master takes the location information of the input files into account and attempts to schedule a map task on a machine that contains a replica of the corresponding input data. +- Failing that, it attempts to schedule a map task near a replica of that task’s input data (e.g., on a worker machine that is on the same network switch as the machine containing the data). + +### Task Granularity +- We subdivide the map phase into $M$ pieces and the reduce phase into $R$ pieces, as described above. +- Ideally, $M$ and $R$ should be much larger than the number of worker machines. + - Having each worker perform many different tasks improves dynamic load balancing, and also speeds up recovery when a worker fails: the many map tasks it has completed can be spread out across all the other worker machines. +- There are practical bounds on how large $M$ and $R$ can be in our implementation, since the master must make $O(M + R)$ scheduling decisions and keeps $O(M \cdot R)$ state in memory as described above. + +### Backup Tasks +- One of the common causes that lengthens the total time taken for a MapReduce operation is a “straggler”: a machine that takes an unusually long time to complete one of the last few map or reduce tasks in the computation. +- Reasons why stragglers can arise: + - A machine with a bad disk may experience frequent correctable errors that slow its read performance from $30$ MB/s to $1$ MB/s. + - The cluster scheduling system may have scheduled other tasks on the machine, causing it to execute the MapReduce code more slowly due to competition for CPU, memory, local disk, or network bandwidth. +- When a MapReduce operation is close to completion, the master schedules backup executions of the remaining in-progress tasks. + - The task is marked as completed whenever either the primary or the backup execution completes. + +# Sources +- [MapReduce: Simplified Data Processing on Large Clusters](https://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf) +- [MIT 6.824 - Lecture 1](https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB&index=1&pp=iAQB) From d4e0cfd11b725b0fc9760b1b6b1de2b565db913d Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Sun, 13 Oct 2024 17:25:42 +0300 Subject: [PATCH 03/11] distributed systems: gfs p1 --- Distributed Systems/Distributed Systems.md | 1 + Distributed Systems/GFS Architecture.png | Bin 0 -> 59059 bytes Distributed Systems/Google File System.md | 87 +++++++++++++++++++++ Distributed Systems/Untitled.md | 0 4 files changed, 88 insertions(+) create mode 100644 Distributed Systems/GFS Architecture.png create mode 100644 Distributed Systems/Google File System.md create mode 100644 Distributed Systems/Untitled.md diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 8ac631e..a9c43d0 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -14,6 +14,7 @@ ## Papers - [[MapReduce]] +- [[Google File System]] # Sources - [MIT 6.824 - Lecture 1](https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB&index=1&pp=iAQB) diff --git a/Distributed Systems/GFS Architecture.png b/Distributed Systems/GFS Architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..d41007997026f2e61d5517edb8283ed428a511ca GIT binary patch literal 59059 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 Date: Sat, 11 Jan 2025 21:39:52 +0200 Subject: [PATCH 04/11] distributed systems: gfs p2 --- Distributed Systems/Distributed Systems.md | 2 +- Distributed Systems/Google File System.md | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index a9c43d0..031b99a 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -1,5 +1,5 @@ # Explanation -- *Distributed System*: A collection of independent computers that appear to the users of the system as a single computer.\ +- *Distributed System*: A collection of independent computers that appear to the users of the system as a single computer. ## Why do people build distributed systems? - to increase capacity via parallelism, diff --git a/Distributed Systems/Google File System.md b/Distributed Systems/Google File System.md index 213a1e3..7e061d4 100644 --- a/Distributed Systems/Google File System.md +++ b/Distributed Systems/Google File System.md @@ -79,6 +79,24 @@ - Using a log allows us to update the master state simply, reliably, and without risking inconsistencies in the event of a master crash. - The master does not store chunk location information persistently. Instead, it asks each chunkserver about its chunks at master startup and whenever a chunkserver joins the cluster. +#### In-Memory Data Structures +- Since metadata is stored in memory, master operations are fast. + - Therefore, It is easy and efficient for the master to periodically scan through its entire state in the background. + - This periodic scanning is used to implement chunk garbage collection, re-replication in the presence of chunkserver failures, and chunk migration to balance load and disk space usage across chunkservers. +- One potential concern for this memory-only approach is that the number of chunks and hence the capacity of the whole system is limited by how much memory the master has. + - This is not a serious limitation in practice because the master maintains less than 64 bytes of metadata for each 64 MB chunk. + +#### Chunk Locations +- The master does not keep a persistent record of which chunkservers have a replica of a given chunk. + - It simply polls chunkservers for that information at startup. + - The master can keep itself up-to-date thereafter because it controls all chunk placement and monitors chunkserver status with regular HeartBeat messages. +- This eliminates the problem of keeping the master and chunkservers in sync as chunkservers join and leave the cluster, change names, fail, restart, and so on. + +#### Operation Log +- The operation log contains a historical record of critical metadata changes. +- It is central to GFS. Not only is it the only persistent record of metadata, but it also serves as a logical time line that defines the order of concurrent operations. +- Files and chunks, as well as their versions are all uniquely and eternally identified by the logical times at which they were created. + ## System Interactions // TODO From 606ba3ad5aa594fce1057213bb9aff7701c61efb Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Sun, 12 Jan 2025 13:38:00 +0200 Subject: [PATCH 05/11] distributed systems: replication --- Distributed Systems/Distributed Systems.md | 3 ++ Distributed Systems/Replication.md | 35 ++++++++++++++++++++++ Distributed Systems/Untitled.md | 0 3 files changed, 38 insertions(+) create mode 100644 Distributed Systems/Replication.md delete mode 100644 Distributed Systems/Untitled.md diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 031b99a..1a48b23 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -12,6 +12,9 @@ - They must cope with partial failures. - It's tricky to realize performance potential. +## Concepts +- [[Replication]] + ## Papers - [[MapReduce]] - [[Google File System]] diff --git a/Distributed Systems/Replication.md b/Distributed Systems/Replication.md new file mode 100644 index 0000000..61cc90e --- /dev/null +++ b/Distributed Systems/Replication.md @@ -0,0 +1,35 @@ +# Explanation +- *Replication*: creating duplicate copies of data or services across multiple nodes. +- Replication can tolerate **fail-stop** failures of a single replica. Examples: + - Fan stops working, CPU overheats and shuts itself down, + - Someone trips over replica's power cord or network cable, or + - Software notices it is out of disk space and stops. +- It can't tolerate defects in hardware or bugs in software or human configuration errors because they're often not fail-stop and may be correlated (i.e. cause all replicas to crash at the same time). +- It can tolerate catastrophes (earthquake or city-wide power failure) only if the replicas are physically separated. + +## Approaches + +### State Transfer +- *State Transfer*: primary replica executes the service and sends *new* state to backups. +- It's simpler but the state may be large, which means it's slow to transfer over the network. + +### Replicated State Machine +- *Replicated State Machine*: primary receives operations from clients and sends them to all other replicas. + - All replicas execute all operations. + - If all the replicas start at the same state, execute the same operations in the same order, and they're deterministic, then all replicas will arrive at the same end state. +- Often generates less network traffic because operations are often small compared to state but it's complex to get right. + +## Replication Levels +- **Application State**: e.g., database tables. + - Can be efficient; primary only sends high-level operations to backup. + - The downside is application code (server) must understand fault tolerance, to e.g. forward operations stream. + - [[Google File System|GFS]] works this way. +- **Machine level**: e.g. registers and RAM content + - Might allow us to replicate any existing server without modifications. + - Downsides: + - requires forwarding of machine events (interrupts, DMA, &c), and + - requires "machine" modifications to send/receive event stream. + - [[Fault-tolerant Virtual Machines|VM-FT]] works this way. + +# Sources +- [MIT 6.824 - Lecture 4](https://www.youtube.com/watch?v=M_teob23ZzY) diff --git a/Distributed Systems/Untitled.md b/Distributed Systems/Untitled.md deleted file mode 100644 index e69de29..0000000 From daae3ad4bd6dbec296590cefc15506c73edf058d Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Sun, 12 Jan 2025 16:23:07 +0200 Subject: [PATCH 06/11] distributed systems: linearizability --- Distributed Systems/Distributed Systems.md | 1 + Distributed Systems/Linearizability.md | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 Distributed Systems/Linearizability.md diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 1a48b23..5845e59 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -14,6 +14,7 @@ ## Concepts - [[Replication]] +- [[Linearizability]] ## Papers - [[MapReduce]] diff --git a/Distributed Systems/Linearizability.md b/Distributed Systems/Linearizability.md new file mode 100644 index 0000000..969d9f0 --- /dev/null +++ b/Distributed Systems/Linearizability.md @@ -0,0 +1,20 @@ +# Explanation +- *Linearizability*: an execution history is linearizable if one can find a total order of all operations, + - that matches real-time (for non-overlapping ops), and + - in which each read sees the value from the write preceding it in the order. +- *Execution History*: a record of client operations, each with arguments, return value, time of start, time completed. +- *Strong Consistency*: when a distributed system behaves the same way that a system with only one node would behave. + - The term is often used interchangeably with Linearizability. + +## Notes +- The definition is based on external behavior so we can apply it without having to know how service works. +- Systems can choose any order for concurrent writes but all clients must see the writes in the same order. + - This is important when we have replicas or caches because they have to all agree on the order in which operations occur. +- According to the definition, reads must return fresh data: stale values aren't linearizable. +- Linearizability forbids many situations: + - split brain (two active leaders), + - forgetting committed writes after a reboot, and + - reading from lagging replicas. + +# Sources +- [MIT 6.824 - Lecture 7](https://www.youtube.com/watch?v=4r8Mz3MMivY) From 163eba5c0cf70817ac3cc899b8659be42d655c3f Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Mon, 20 Jan 2025 20:29:41 +0200 Subject: [PATCH 07/11] distributed systems: CR & CRAQ --- Distributed Systems/Chain Replication.md | 52 ++++++++++++++++++++++ Distributed Systems/Distributed Systems.md | 1 + Distributed Systems/Replication.md | 2 +- 3 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 Distributed Systems/Chain Replication.md diff --git a/Distributed Systems/Chain Replication.md b/Distributed Systems/Chain Replication.md new file mode 100644 index 0000000..c81ac90 --- /dev/null +++ b/Distributed Systems/Chain Replication.md @@ -0,0 +1,52 @@ +# Explanation +- *Chain Replication (CR)*: a form of [[Replication#Replicated State Machine|replicated state machine]] for replicating data at the [[Replication#^518c94|application level]] across multiple nodes to provide a strongly consistent storage interface. + +## Mechanism +- The basic approach organizes all nodes storing an object in a chain. + - Nodes form a chain of a defined length. + - The chain tail handles all read requests, and the chain head handles all write requests. +- **Writes** propagate down the chain in order and are considered **committed** once they reach the tail. + - When a write operation is received by a node, it is propagated to the next node in the chain. + - Once the write reaches the tail node, it has been applied to all replicas in the chain, and it is considered committed. +- **Reads** are only handled by the tail node, so only committed values can be returned by a read. +- CR achieves **strong consistency**/[[Linearizability]] because all writes are committed at the tail and all reads come from the tail. + +## Types +- **Basic Chain Replication**: This is the original chain replication method. + - All reads must be handled by the tail node and writes propagate down the chain from the head. + - This method has good throughput and easy recovery, but suffers from read throughput limitations and potential hotspots. +- **Chain Replication with Apportioned Queries (CRAQ)**: This method improves upon basic Chain Replication by allowing any node in the chain to handle read operations while still providing strong consistency guarantees. + - This is achieved by allowing nodes to store multiple versions of an object and using version queries to ensure consistency. + +## Advantages +- **Strong Consistency**: CR guarantees that all reads will see the latest written value, ensuring data consistency. +- **Simplicity**: CR is relatively simple to implement compared to other strong consistency protocols. +- **Good Throughput**: Write operations are cheaper than in other protocols offering strong consistency, and can be pipelined down the chain, distributing transmission costs evenly. + - The head sends each write just once, while in Raft, the leader sends writes to all nodes. +- **Quick and Easy Recovery**: The chain structure simplifies failure recovery, making it faster and easier compared to other methods. + - Every replica knows of every committed write, and if the head or tail fails, their successor takes over. + +## Disadvantages +- **Limited Read Throughput**: All reads must go to the tail node, limiting read throughput to the capacity of a single node. + - In Raft, reads involve all servers, not just one as in CR. +- **Hotspots**: The single point of read access at the tail can create performance bottlenecks. +- **Increased Latency**: Wide-area deployments can suffer from increased write latency as writes must propagate through the entire chain. +- **Not Immediately Fault-Tolerant**: All CRAQ replicas must participate for any write to commit. If a node is not reachable, CRAQ must wait. This is different from protocols like ZooKeeper and Raft, which are immediately fault-tolerant. +- **Susceptible to Partitions**: Because CRAQ is not immediately fault-tolerant, it is not able to handle partitions. If a partition happens, the system may experience split brain, and must wait until the network is restored. + +## Handling Partitions +- To safely use a replication system that can't handle partitions, a single configuration manager must be used. + - The configuration manager is responsible for choosing the head, chain, and tail of the system. + - Servers and clients must obey the configuration manager, or stop operating, regardless of which nodes they think are alive or dead. +- A **configuration manager** is a common pattern for distributed systems. + - It is a core part of systems such as [[Google File System]] and VMware-FT. + - Typically, Paxos, Raft, or ZooKeeper are used as the configuration service. + +## Addressing Limitations +- One way to improve read throughput in CR is to split objects over multiple chains, where each server participates in multiple chains. +- This only works if the load is evenly distributed among the chains. +- However, load is often not evenly distributed, meaning that splitting objects over multiple chains may not be a viable solution. +- CRAQ offers another way to address the read throughput limitation of CR. + +# Sources +- [MIT 6.824 - Lecture 9](https://www.youtube.com/watch?v=IXHzbCuADt0) diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 5845e59..8983999 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -14,6 +14,7 @@ ## Concepts - [[Replication]] + - [[Chain Replication]] - [[Linearizability]] ## Papers diff --git a/Distributed Systems/Replication.md b/Distributed Systems/Replication.md index 61cc90e..c2acbfb 100644 --- a/Distributed Systems/Replication.md +++ b/Distributed Systems/Replication.md @@ -20,7 +20,7 @@ - Often generates less network traffic because operations are often small compared to state but it's complex to get right. ## Replication Levels -- **Application State**: e.g., database tables. +- **Application State**: e.g., database tables. ^518c94 - Can be efficient; primary only sends high-level operations to backup. - The downside is application code (server) must understand fault tolerance, to e.g. forward operations stream. - [[Google File System|GFS]] works this way. From adbbd633799743ca1a9e0c549f7d4ed2e1c2fa8a Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Mon, 27 Jan 2025 01:03:26 +0200 Subject: [PATCH 08/11] distributed systems: distributed databases p1 --- Database Systems/Database Systems.md | 3 +- .../Centralized Coordinator.png | Bin 0 -> 140007 bytes .../Database System Architectures.png | Bin 0 -> 55329 bytes .../Distributed Databases.md | 104 ++++++++++++++++++ .../Naive Table Partitioning.png | Bin 0 -> 68057 bytes Distributed Systems/Consistent Hashing.md | 12 ++ Distributed Systems/Consistent Hashing.png | Bin 0 -> 68663 bytes Distributed Systems/Distributed Systems.md | 2 + 8 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 Database Systems/Distributed Databases/Centralized Coordinator.png create mode 100644 Database Systems/Distributed Databases/Database System Architectures.png create mode 100644 Database Systems/Distributed Databases/Distributed Databases.md create mode 100644 Database Systems/Distributed Databases/Naive Table Partitioning.png create mode 100644 Distributed Systems/Consistent Hashing.md create mode 100644 Distributed Systems/Consistent Hashing.png diff --git a/Database Systems/Database Systems.md b/Database Systems/Database Systems.md index 18618d2..79f9ed1 100644 --- a/Database Systems/Database Systems.md +++ b/Database Systems/Database Systems.md @@ -1,6 +1,6 @@ # Explanation - *Database*: organized collection of inter-related data that models some aspect of the real world. -- *Database Management System*: software that allows applications to store and analyze information in a database. +- *Database Management System*: software that allows applications to store and analyze information in a database. ^1ec6f9 - Designed to allow definition, creation, querying, updating, and administration, of databases in accordance with some data model. - *Data Model*: collection of concepts for describing the data in a database. Examples: - [[Relational Model]] (most common), @@ -22,6 +22,7 @@ - [[Query Planning & Optimization]] - [[Concurrency Control]] - [[Crash Recovery]] +- [[Distributed Databases]] # FAQ - Why do we need a database management system? Why not just store data in a flat CSV file? (AKA Strawman system)? Because there are many issues with this approach: diff --git a/Database Systems/Distributed Databases/Centralized Coordinator.png b/Database Systems/Distributed Databases/Centralized Coordinator.png new file mode 100644 index 0000000000000000000000000000000000000000..455a2a47341f0df463cfcd941cc3a8d2569892fa GIT binary patch literal 140007 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 <*s1jESOGkR;aXI%WnL4#7 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 yYhIZ1;3L8N`|r48W7EDe6 literal 0 HcmV?d00001 diff --git a/Database Systems/Distributed Databases/Database System Architectures.png b/Database Systems/Distributed Databases/Database System Architectures.png new file mode 100644 index 0000000000000000000000000000000000000000..ca4f79b93f7bd90e7ef14f4cf7619d53be804647 GIT binary patch literal 55329 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

JrmA4@j02Kz_sMSa5zyTC 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

be}t56v*;*qPYwO-IMA-?yrcj7et%+*1OgZWSaj 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 literal 0 HcmV?d00001 diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 8983999..bc8d7fe 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -16,6 +16,8 @@ - [[Replication]] - [[Chain Replication]] - [[Linearizability]] +- [[Consistent Hashing]] +- [[Distributed Databases]] ## Papers - [[MapReduce]] From 3a843bf8473b1046aac878b684253217faacf18f Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Wed, 29 Jan 2025 01:06:00 +0200 Subject: [PATCH 09/11] distributed systems: rename gfs to the gfs --- Distributed Systems/Chain Replication.md | 2 +- Distributed Systems/Distributed Systems.md | 10 +++++++++- Distributed Systems/Replication.md | 2 +- ...Google File System.md => The Google File System.md} | 0 4 files changed, 11 insertions(+), 3 deletions(-) rename Distributed Systems/{Google File System.md => The Google File System.md} (100%) diff --git a/Distributed Systems/Chain Replication.md b/Distributed Systems/Chain Replication.md index c81ac90..000c168 100644 --- a/Distributed Systems/Chain Replication.md +++ b/Distributed Systems/Chain Replication.md @@ -39,7 +39,7 @@ - The configuration manager is responsible for choosing the head, chain, and tail of the system. - Servers and clients must obey the configuration manager, or stop operating, regardless of which nodes they think are alive or dead. - A **configuration manager** is a common pattern for distributed systems. - - It is a core part of systems such as [[Google File System]] and VMware-FT. + - It is a core part of systems such as [[The Google File System]] and VMware-FT. - Typically, Paxos, Raft, or ZooKeeper are used as the configuration service. ## Addressing Limitations diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index bc8d7fe..d327c85 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -14,6 +14,7 @@ ## Concepts - [[Replication]] + - Primary/Backup Replication - [[Chain Replication]] - [[Linearizability]] - [[Consistent Hashing]] @@ -21,7 +22,14 @@ ## Papers - [[MapReduce]] -- [[Google File System]] +- [[The Google File System]] +- VMware Fault-Tolerant Virtual Machines +- Raft +- Zookeeper +- Kafka +- CRAQ +- Amazon Aurora +- Frangipani # Sources - [MIT 6.824 - Lecture 1](https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB&index=1&pp=iAQB) diff --git a/Distributed Systems/Replication.md b/Distributed Systems/Replication.md index c2acbfb..0f511ad 100644 --- a/Distributed Systems/Replication.md +++ b/Distributed Systems/Replication.md @@ -23,7 +23,7 @@ - **Application State**: e.g., database tables. ^518c94 - Can be efficient; primary only sends high-level operations to backup. - The downside is application code (server) must understand fault tolerance, to e.g. forward operations stream. - - [[Google File System|GFS]] works this way. + - [[The Google File System|GFS]] works this way. - **Machine level**: e.g. registers and RAM content - Might allow us to replicate any existing server without modifications. - Downsides: diff --git a/Distributed Systems/Google File System.md b/Distributed Systems/The Google File System.md similarity index 100% rename from Distributed Systems/Google File System.md rename to Distributed Systems/The Google File System.md From 80baf15e023140dfb7f43c034ae5a4aff2ce4269 Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Wed, 29 Jan 2025 01:22:57 +0200 Subject: [PATCH 10/11] refactor: move distributed DBs to distributed systems directory --- .../Distributed Databases.md | 104 ------------------ .../Centralized Coordinator.png | Bin .../Database System Architectures.png | Bin .../Distributed Concurrency Control.md | 18 +++ .../Distributed Database Architecture.md | 40 +++++++ .../Distributed Database Partitioning.md | 35 ++++++ .../Distributed Databases.md | 23 ++++ .../Naive Table Partitioning.png | Bin Distributed Systems/Distributed Systems.md | 2 +- 9 files changed, 117 insertions(+), 105 deletions(-) delete mode 100644 Database Systems/Distributed Databases/Distributed Databases.md rename {Database Systems => Distributed Systems}/Distributed Databases/Centralized Coordinator.png (100%) rename {Database Systems => Distributed Systems}/Distributed Databases/Database System Architectures.png (100%) create mode 100644 Distributed Systems/Distributed Databases/Distributed Concurrency Control.md create mode 100644 Distributed Systems/Distributed Databases/Distributed Database Architecture.md create mode 100644 Distributed Systems/Distributed Databases/Distributed Database Partitioning.md create mode 100644 Distributed Systems/Distributed Databases/Distributed Databases.md rename {Database Systems => Distributed Systems}/Distributed Databases/Naive Table Partitioning.png (100%) diff --git a/Database Systems/Distributed Databases/Distributed Databases.md b/Database Systems/Distributed Databases/Distributed Databases.md deleted file mode 100644 index bad7fda..0000000 --- a/Database Systems/Distributed Databases/Distributed Databases.md +++ /dev/null @@ -1,104 +0,0 @@ -# Explanation -- *Distributed DBMS*: a [[Database Systems#^1ec6f9|DBMS]] that divides a single logical database across multiple physical resources. - - The application is (usually) unaware that data is split across separated hardware. - - The system relies on the techniques and algorithms from single-node DBMSs to support transaction processing and query execution in a distributed environment. -- An important goal in designing a distributed DBMS is fault tolerance (i.e., avoiding a single one node failure taking down the entire system). - -## Parallel vs Distributed Databases -- **Parallel Database**: - - Nodes are physically close to each other. - - Nodes are connected via high-speed LAN (fast, reliable communication fabric). - - The communication cost between nodes is assumed to be small. As such, one does not need to worry about nodes crashing or packets getting dropped when designing internal protocols. -- **Distributed Database**: - - Nodes can be far from each other. - - Nodes are potentially connected via a public network, which can be slow and unreliable. - - The communication cost and connection problems cannot be ignored (i.e., nodes can crash, and packets can get dropped). - -## System Architecture -- A DBMS’s system architecture specifies what shared resources are directly accessible to CPUs. - - It affects how CPUs coordinate with each other and where they retrieve and store objects in the database. -- ![[Database System Architectures.png]] - -### Shared everything -- A single-node DBMS uses what is called a **shared everything** architecture. -- This single node executes workers on a local CPU(s) with its own local memory address space and disk. - -### Shared Memory -- An alternative to shared everything architecture in distributed systems is shared memory. - - CPUs have access to common memory address space via a fast interconnect. CPUs also share the same disk. -- In practice, most DBMSs do not use this architecture, since - - it is provided at the [[Operating Systems|OS]]/kernel level, and - - it also causes problems, since each process’s scope of memory is the same memory address space, which can be modified by multiple processes. -- Each processor has a global view of all the in-memory data structures. -- Each DBMS instance on a processor has to “know” about the other instances. - -### Shared Disk -- In a shared disk architecture, all CPUs can read and write to a single logical disk directly via an interconnect, but each have their own private memories. - - The local storage on each compute node can act as caches. - - This approach is more common in cloud-based DBMSs. -- The DBMS’s execution layer can scale independently from the storage layer. - - Adding new storage nodes or execution nodes does not affect the layout or location of data in the other layer. -- Nodes must send messages between them to learn about other node’s current state. - - That is, since memory is local, if data is modified, changes must be communicated to other CPUs in the case that piece of data is in main memory for the other CPUs. -- Nodes have their own buffer pool and are considered stateless. - - A node crash does not affect the state of the database since that is stored separately on the shared disk. - - The storage layer persists the state in the case of crashes. - -### Shared Nothing -- In a shared nothing environment, each node has its own CPU, memory, and disk. - - Nodes only communicate with each other via network. - - Before the rise of cloud storage platforms, the shared nothing architecture used to be considered the correct way to build distributed DBMSs. -- It is more difficult to increase capacity in this architecture because the DBMS has to physically move data to new nodes. -- It is also difficult to ensure consistency across all nodes in the DBMS, since the nodes must coordinate with each other on the state of transactions. -- The advantage is that shared nothing DBMSs can potentially achieve better performance and are more efficient then other types of distributed DBMS architectures. - -## Partitioning Schemes -- Distributed database systems must partition the database across multiple resources, including disks, nodes, processors. - - This process is sometimes called sharding in NoSQL systems. -- When the DBMS receives a query, - 1. it first analyzes the data that the query plan needs to access. - 2. The DBMS may potentially send fragments of the query plan to different nodes, - 3. then combines the results to produce a single answer. -- The goal of a partitioning scheme is to maximize single-node transactions, or transactions that only access data contained on one partition. - - This allows the DBMS to not need to coordinate the behavior of concurrent transactions running on other nodes. -- A distributed transaction accessing data at one or more partitions will require expensive, difficult coordination. - -- *Logical Partitioning*: a type of partitioning where particular nodes are in charge of accessing specific tuples from a shared disk. -- *Physical Partitioning*: a type of partitioning where each shared-nothing node reads and updates tuples it contains on its own local disk. - -### Naive Table Partitioning -- The simplest way to partition tables is naive data partitioning where each node stores one table, assuming enough storage space for a given node. -- This is easy to implement because a query is just routed to a specific partitioning. -- This can be bad, since it is not scalable: one partition’s resources can be exhausted if that one table is queried on often, not using all nodes available. -- Illustration: ![[Naive Table Partitioning.png]] - -### Vertical Partitioning -- *Vertical Partitioning*: a partitioning scheme which splits a table’s attributes into separate partitions. -- Each partition must also store tuple information for reconstructing the original record. - -### Horizontal Partitioning -- *Horizontal Partitioning*: a partitioning scheme which splits a table’s tuples into disjoint subsets that are equal in terms of size, load, or usage, based on some partitioning key(s). - -### Hash Partitioning -- The DBMS can partition a database physically (shared nothing) or logically (shared disk) via hash partitioning or range partitioning. -- The problem of hash partitioning is that when a new node is added or removed, a lot of data needs to be shuffled around. - - The solution for this is [[Consistent Hashing]]. - -## Distributed Concurrency Control -- A distributed transaction accesses data at one or more partitions, which requires expensive coordination. - -### Centralized coordinator -- The centralized coordinator acts as a global “traffic cop” that coordinates all the behavior. -- Illustration: ![[Centralized Coordinator.png]] - -### Middleware -- Centralized coordinators can be used as middleware, which accepts query requests and routes queries to correct partitions. - -### Decentralized coordinator -- In a decentralized approach, nodes organize themselves. -- The client directly sends queries to one of the partitions. -- This home partition will send results back to the client. - - The home partition is in charge of communicating with other partitions and committing accordingly. - -# Sources -- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" \ No newline at end of file diff --git a/Database Systems/Distributed Databases/Centralized Coordinator.png b/Distributed Systems/Distributed Databases/Centralized Coordinator.png similarity index 100% rename from Database Systems/Distributed Databases/Centralized Coordinator.png rename to Distributed Systems/Distributed Databases/Centralized Coordinator.png diff --git a/Database Systems/Distributed Databases/Database System Architectures.png b/Distributed Systems/Distributed Databases/Database System Architectures.png similarity index 100% rename from Database Systems/Distributed Databases/Database System Architectures.png rename to Distributed Systems/Distributed Databases/Database System Architectures.png diff --git a/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md b/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md new file mode 100644 index 0000000..b0be509 --- /dev/null +++ b/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md @@ -0,0 +1,18 @@ +# Explanation +- A distributed transaction accesses data at one or more partitions, which requires expensive coordination. + +## Centralized coordinator +- The centralized coordinator acts as a global “traffic cop” that coordinates all the behavior. +- Illustration: ![[Centralized Coordinator.png]] + +## Middleware +- Centralized coordinators can be used as middleware, which accepts query requests and routes queries to correct partitions. + +## Decentralized coordinator +- In a decentralized approach, nodes organize themselves. +- The client directly sends queries to one of the partitions. +- This home partition will send results back to the client. + - The home partition is in charge of communicating with other partitions and committing accordingly. + +# Sources +- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" \ No newline at end of file diff --git a/Distributed Systems/Distributed Databases/Distributed Database Architecture.md b/Distributed Systems/Distributed Databases/Distributed Database Architecture.md new file mode 100644 index 0000000..46d2729 --- /dev/null +++ b/Distributed Systems/Distributed Databases/Distributed Database Architecture.md @@ -0,0 +1,40 @@ +# Explanation +- A DBMS’s system architecture specifies what shared resources are directly accessible to CPUs. + - It affects how CPUs coordinate with each other and where they retrieve and store objects in the database. +- Types: ![[Database System Architectures.png]] + +## Shared everything +- A single-node DBMS uses what is called a **shared everything** architecture. +- This single node executes workers on a local CPU(s) with its own local memory address space and disk. + +## Shared Memory +- An alternative to shared everything architecture in distributed systems is shared memory. + - CPUs have access to common memory address space via a fast interconnect. CPUs also share the same disk. +- In practice, most DBMSs do not use this architecture, since + - it is provided at the [[Operating Systems|OS]]/kernel level, and + - it also causes problems, since each process’s scope of memory is the same memory address space, which can be modified by multiple processes. +- Each processor has a global view of all the in-memory data structures. +- Each DBMS instance on a processor has to “know” about the other instances. + +## Shared Disk +- In a shared [[Disks|disk]] architecture, all CPUs can read and write to a single logical disk directly via an interconnect, but each have their own private memories. + - The local storage on each compute node can act as caches. + - This approach is more common in cloud-based DBMSs. +- The DBMS’s execution layer can scale independently from the storage layer. + - Adding new storage nodes or execution nodes does not affect the layout or location of data in the other layer. +- Nodes must send messages between them to learn about other node’s current state. + - That is, since memory is local, if data is modified, changes must be communicated to other CPUs in the case that piece of data is in main memory for the other CPUs. +- Nodes have their own buffer pool and are considered stateless. + - A node crash does not affect the state of the database since that is stored separately on the shared disk. + - The storage layer persists the state in the case of crashes. + +## Shared Nothing +- In a shared nothing environment, each node has its own CPU, memory, and disk. + - Nodes only communicate with each other via network. + - Before the rise of cloud storage platforms, the shared nothing architecture used to be considered the correct way to build distributed DBMSs. +- It is more difficult to increase capacity in this architecture because the DBMS has to physically move data to new nodes. +- It is also difficult to ensure consistency across all nodes in the DBMS, since the nodes must coordinate with each other on the state of transactions. +- The advantage is that shared nothing DBMSs can potentially achieve better performance and are more efficient then other types of distributed DBMS architectures. + +# Sources +- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" \ No newline at end of file diff --git a/Distributed Systems/Distributed Databases/Distributed Database Partitioning.md b/Distributed Systems/Distributed Databases/Distributed Database Partitioning.md new file mode 100644 index 0000000..50cd28e --- /dev/null +++ b/Distributed Systems/Distributed Databases/Distributed Database Partitioning.md @@ -0,0 +1,35 @@ +# Explanation +- Distributed database systems must partition the database across multiple resources, including disks, nodes, processors. + - This process is sometimes called sharding in NoSQL systems. +- When the DBMS receives a query, + 1. it first analyzes the data that the query plan needs to access. + 2. The DBMS may potentially send fragments of the query plan to different nodes, + 3. then combines the results to produce a single answer. +- The goal of a partitioning scheme is to maximize single-node transactions, or transactions that only access data contained on one partition. + - This allows the DBMS to not need to coordinate the behavior of concurrent transactions running on other nodes. +- A distributed transaction accessing data at one or more partitions will require expensive, difficult coordination. + +- Types: + - *Logical Partitioning*: a type of partitioning where particular nodes are in charge of accessing specific tuples from a shared disk. + - *Physical Partitioning*: a type of partitioning where each shared-nothing node reads and updates tuples it contains on its own local disk. + +## Naive Table Partitioning +- The simplest way to partition tables is naive data partitioning where each node stores one table, assuming enough storage space for a given node. +- This is easy to implement because a query is just routed to a specific partitioning. +- This can be bad, since it is not scalable: one partition’s resources can be exhausted if that one table is queried on often, not using all nodes available. +- Illustration: ![[Naive Table Partitioning.png]] + +## Vertical Partitioning +- *Vertical Partitioning*: a partitioning scheme which splits a table’s attributes into separate partitions. +- Each partition must also store tuple information for reconstructing the original record. + +## Horizontal Partitioning +- *Horizontal Partitioning*: a partitioning scheme which splits a table’s tuples into disjoint subsets that are equal in terms of size, load, or usage, based on some partitioning key(s). + +## Hash Partitioning +- The DBMS can partition a database physically (shared nothing) or logically (shared disk) via hash partitioning or range partitioning. +- The problem of hash partitioning is that when a new node is added or removed, a lot of data needs to be shuffled around. + - The solution for this is [[Consistent Hashing]]. + +# Sources +- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" diff --git a/Distributed Systems/Distributed Databases/Distributed Databases.md b/Distributed Systems/Distributed Databases/Distributed Databases.md new file mode 100644 index 0000000..a8c0e84 --- /dev/null +++ b/Distributed Systems/Distributed Databases/Distributed Databases.md @@ -0,0 +1,23 @@ +# Explanation +- *Distributed DBMS*: a [[Database Systems#^1ec6f9|DBMS]] that divides a single logical database across multiple physical resources. + - The application is (usually) unaware that data is split across separated hardware. + - The system relies on the techniques and algorithms from single-node DBMSs to support transaction processing and query execution in a distributed environment. +- An important goal in designing a distributed DBMS is fault tolerance (i.e., avoiding a single one node failure taking down the entire system). + +## Parallel vs Distributed Databases +- **Parallel Database**: + - Nodes are physically close to each other. + - Nodes are connected via high-speed LAN (fast, reliable communication fabric). + - The communication cost between nodes is assumed to be small. As such, one does not need to worry about nodes crashing or packets getting dropped when designing internal protocols. +- **Distributed Database**: + - Nodes can be far from each other. + - Nodes are potentially connected via a public network, which can be slow and unreliable. + - The communication cost and connection problems cannot be ignored (i.e., nodes can crash, and packets can get dropped). + +# Topics +- [[Distributed Database Architecture]] +- [[Distributed Database Partitioning]] +- [[Distributed Concurrency Control]] + +# Sources +- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" \ No newline at end of file diff --git a/Database Systems/Distributed Databases/Naive Table Partitioning.png b/Distributed Systems/Distributed Databases/Naive Table Partitioning.png similarity index 100% rename from Database Systems/Distributed Databases/Naive Table Partitioning.png rename to Distributed Systems/Distributed Databases/Naive Table Partitioning.png diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index d327c85..62c7be1 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -12,7 +12,7 @@ - They must cope with partial failures. - It's tricky to realize performance potential. -## Concepts +## Topics - [[Replication]] - Primary/Backup Replication - [[Chain Replication]] From 261c2737e995e5db6ad8f89917be5dd3a3f10cb7 Mon Sep 17 00:00:00 2001 From: xUser5000 Date: Wed, 29 Jan 2025 01:51:25 +0200 Subject: [PATCH 11/11] distributed systems: distributed transactions, two-phase commit, & CAP --- .../Concurrency Control.md | 2 +- Distributed Systems/CAP Theorem.md | 26 ++++++++++++++ .../Distributed Concurrency Control.md | 29 +++++++++++++--- .../Distributed Databases/Two-Phase Commit.md | 34 +++++++++++++++++++ Distributed Systems/Distributed Systems.md | 1 + Distributed Systems/Linearizability.md | 2 +- 6 files changed, 88 insertions(+), 6 deletions(-) create mode 100644 Distributed Systems/CAP Theorem.md create mode 100644 Distributed Systems/Distributed Databases/Two-Phase Commit.md diff --git a/Database Systems/Concurrency Control/Concurrency Control.md b/Database Systems/Concurrency Control/Concurrency Control.md index 936ae3e..d2986fa 100644 --- a/Database Systems/Concurrency Control/Concurrency Control.md +++ b/Database Systems/Concurrency Control/Concurrency Control.md @@ -1,5 +1,5 @@ # Explanation -- *Transaction*: execution of one or more operations (e.g, SQL queries) on a shared database to perform some higher level function. +- *Transaction*: execution of one or more operations (e.g, SQL queries) on a shared database to perform some higher level function. ^dae2be - Basic unit of change in DBMS. - Must be #atomic. - Transaction starts with the BEGIN command and ends with either COMMIT or ABORT. diff --git a/Distributed Systems/CAP Theorem.md b/Distributed Systems/CAP Theorem.md new file mode 100644 index 0000000..b023756 --- /dev/null +++ b/Distributed Systems/CAP Theorem.md @@ -0,0 +1,26 @@ +# Explanation + +> *The CAP Theorem*: it is impossible for a distributed system to always be **Consistent**, **Available**, and **Partition-Tolerant**. Only two of these three properties can be chosen. + +--- + +### Consistency +- [[Linearizability#^7f4541|Consistency]] is synonymous with [[Linearizability|linearizability]] for operations on all nodes. +- Once a write completes, all future reads should return the value of that write applied or a later write applied. +- Additionally, once a read has been returned, future reads should return that value or the value of a later applied write. +- NoSQL systems compromise this property in favor of the latter two. + - Other systems will favor this property and one of the latter two. + +### Availability +- *Availability*: the concept that all nodes that are up can satisfy all requests. + +### Partition-Tolerance +- *Partition tolerance*: the system can still operate correctly despite some message loss between nodes that are trying to reach consensus on values. + +## Insights +- If consistency and partition-tolerance is chosen for a system, updates will not be allowed until a majority of nodes are reconnected, typically done in traditional or NewSQL DBMSs. +- There is a modern version that considers consistency vs. latency trade-offs: *PACELC Theorem*. + - In case of **network partitioning** (P) in a distributed system, one has to choose between **availability** (A) and **consistency** (C), else (E), even when the system runs normally without network partitions, one has to choose between **latency** (L) and **consistency** (C). + +# Sources +- CMU 15-445 Lecture 22 - "Distributed Transactional Database Systems" \ No newline at end of file diff --git a/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md b/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md index b0be509..1687a37 100644 --- a/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md +++ b/Distributed Systems/Distributed Databases/Distributed Concurrency Control.md @@ -1,18 +1,39 @@ # Explanation - A distributed transaction accesses data at one or more partitions, which requires expensive coordination. -## Centralized coordinator +## Coordination Approaches +### Centralized coordinator - The centralized coordinator acts as a global “traffic cop” that coordinates all the behavior. - Illustration: ![[Centralized Coordinator.png]] -## Middleware +### Middleware - Centralized coordinators can be used as middleware, which accepts query requests and routes queries to correct partitions. -## Decentralized coordinator +### Decentralized coordinator - In a decentralized approach, nodes organize themselves. - The client directly sends queries to one of the partitions. - This home partition will send results back to the client. - The home partition is in charge of communicating with other partitions and committing accordingly. +## Distributed Transactions +- *Distributed [[Concurrency Control#^dae2be|Transaction]]*: a transactions that accesses data on multiple nodes. +- Executing distributed transactions is more challenging than single-node transactions because now when the transaction commits, the DBMS has to make sure that all the nodes agree to commit the transaction. +- The DBMS ensures that the database provides the same [[Concurrency Control#ACID|ACID]] guarantees as a single-node DBMS even in the case of node failures, message delays, or message loss. +- One can assume that all nodes in a distributed DBMS are well-behaved and under the same administrative domain. + - In other words, given that there is not a node failure, a node which is told to commit a transaction will commit the transaction. + - If the other nodes in a distributed DBMS cannot be trusted, then the DBMS needs to use a byzantine fault tolerant protocol (e.g., blockchain) for transactions. + +## Atomic Commit Protocols +- When a multi-node transaction finishes, the DBMS needs to ask all of the nodes involved whether it is safe to commit. +- Depending on the protocol, a majority of the nodes or all of the nodes may be needed to commit. +- Examples: + - [[Two-Phase Commit]] (Common) + - Three-Phase Commit (Uncommon) + - Paxos (Common) + - Raft (Common) + - ZAB (Zookeeper Atomic Broadcast protocol, Apache Zookeeper) + - Viewstamped Replication (first provably correct protocol) + # Sources -- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" \ No newline at end of file +- CMU 15-445 Lecture 21 - "Introduction to Distributed Databases" +- CMU 15-445 Lecture 22 - "Distributed Transactional Database Systems" \ No newline at end of file diff --git a/Distributed Systems/Distributed Databases/Two-Phase Commit.md b/Distributed Systems/Distributed Databases/Two-Phase Commit.md new file mode 100644 index 0000000..1933777 --- /dev/null +++ b/Distributed Systems/Distributed Databases/Two-Phase Commit.md @@ -0,0 +1,34 @@ +# Explanation + +## Mechanism + +### Phase 1: Prepare +1. The client sends a Commit Request to the [[Distributed Concurrency Control#Coordination Approaches|coordinator]]. +2. In the first phase of this protocol, the coordinator sends a Prepare message, essentially asking the participant nodes if the current transaction is allowed to commit. +3. If a given participant verifies that the given transaction is valid, they send an OK to the coordinator. +4. If the coordinator receives an OK from all the participants, the system can now go into the second phase in the protocol. +5. If anyone sends an Abort to the coordinator, the coordinator sends an Abort to the client. + +### Phase 2: Commit +1. The coordinator sends a Commit to all the participants, telling those nodes to commit the transaction, if all the participants sent an OK. +2. Once the participants respond with an OK, the coordinator can tell the client that the transaction is committed. +3. If the transaction was aborted in the first phase, the participants receive an Abort from the coordinator, to which they should respond to with an OK. + +- **Notes**: + - Either everyone commits or no one does. + - The coordinator can also be a participant in the system. + +### Crash Recovery +- In the case of a crash, all nodes keep track of a non-volatile log of the outcome of each phase. +- Nodes block until they can figure out the next course of action. +- If the coordinator crashes, the participants must decide what to do. + - A safe option is just to abort. + - Alternatively, the nodes can communicate with each other to see if they can commit without the explicit permission of the coordinator. +- If a participant crashes, the coordinator assumes that it responded with an abort if it has not sent an acknowledgement yet. + +## Optimizations +- **Early Prepare Voting**: If the DBMS sends a query to a remote node that it knows will be the last one executed there, then that node will also return their vote for the prepare phase with the query result. +- **Early Acknowledgement after Prepare**: If all nodes vote to commit a transaction, the coordinator can send the client an acknowledgement that their transaction was successful before the commit phase finishes. + +# Sources +- CMU 15-445 Lecture 22 - "Distributed Transactional Database Systems" diff --git a/Distributed Systems/Distributed Systems.md b/Distributed Systems/Distributed Systems.md index 62c7be1..cde07d5 100644 --- a/Distributed Systems/Distributed Systems.md +++ b/Distributed Systems/Distributed Systems.md @@ -17,6 +17,7 @@ - Primary/Backup Replication - [[Chain Replication]] - [[Linearizability]] +- [[CAP Theorem]] - [[Consistent Hashing]] - [[Distributed Databases]] diff --git a/Distributed Systems/Linearizability.md b/Distributed Systems/Linearizability.md index 969d9f0..431b620 100644 --- a/Distributed Systems/Linearizability.md +++ b/Distributed Systems/Linearizability.md @@ -3,7 +3,7 @@ - that matches real-time (for non-overlapping ops), and - in which each read sees the value from the write preceding it in the order. - *Execution History*: a record of client operations, each with arguments, return value, time of start, time completed. -- *Strong Consistency*: when a distributed system behaves the same way that a system with only one node would behave. +- *Strong Consistency*: when a distributed system behaves the same way that a system with only one node would behave. ^7f4541 - The term is often used interchangeably with Linearizability. ## Notes

c+ZDo9VzOLmI>x5OJQuH8;%-IWJO|_Nr|JLpDIGz zumgB8jy5dqAJvw+_9hBGCF1j%TYe1H91g{Aras6c8~@ZdX*-`P@}`G8w{MGC(BVr; zB_$)Xqk=Z}#tEK3Yw>Z3Gsh6Xkew?epl-t-bH67#>C~HCstEsh@Unjl!aV+aW@t50 zSD%t1N_;CVFK_;vUs4PY z;jTpI{*D%)Hk3oLmXZWsK=2d24i8rNakM@9zn`DW`_SM=UP|sHldC6+0Aur^FtVyJ z8$MzAY(sd{eFcV;Y(Pg{5^Uq^n7@Qb~s z!y!??(nX0oE9sgP(;KTGLywqyQ=X^2)LpgQEN1nHRhMC^DJVMd3S`bh(05l%4Y8Rs z<0e*fF|f6XgqO|e@UGXvb>fAN26?n7ijRnUWJdWL$Fi@J6GcBp+cCRx)uCj^tSDPTvRC??73d)&v!CJ(WRuoRRWO^j| z#ct{#S&ymnOsv{AL%Pza>sJ2MLD2 zR#^CL{kh>_^)EIu(c8>}{wZCG(v`!VTivz&A*9$(e zaNyJOyA{@($cdK_vlGSfQ!Mxm{~f2Sfqu)ctVA+xWLfRjLqyhB!5a z2MhQZ#W2EzOe61S9mX2YhR^QlARAf0B+8_?e2pT5rI?HH? z(bB7=*kT$K?n6J94Ax4X?H7v>P$G1#yo_^3OH)w$M?{>q5K<`00 zr#x4yJTIq{G52lqG4cseI?nvsmEGR{{toE@&l|Zo*kUR3no#jt;69o@oi6dk5xy8* zP{LocUC)_be?d0x1IBLJ+TPK>uwJE8Khk~2N)y{JW#unxWxZ+x`hTU=l3Rm_9{(QM4B)3s?``fAc(iZz*N>09_vz?t_DjIGWV~rL9SZ zj_t%2MSb)mqtaMk62Ny^x{yQMin>ORHB zjP01bql0w9E_o`l=#b!5M?oDJzuwXu9=q=b)g$xa<5{*STFFtLM4a?plLyGdf_j`V zY+cx-2YkcYvrZpb_a?}m5DcT{sj(b1EnX_EwjO!ZfEMSyQ5wKfTYtL8c_dvaTV=i@ zf63tg+0W2qIOaeNjQIPL=ifM7CXJi zS}FT&#eq!7Zf<)vB6hsRN2FDNe3s>r+Z9d~<)Md}3MjT+kuI1t?EQo;G&=rbN)bs! zPRuj%?5s9>zN0?Z<)!*<{pYFuVxrgaZsQV*2Lz3E8TCh#N3aU;>&X6&Kzm|KBBeJ7 zc_Q%kd%#``wXeJ+Nk4WNMsf)}BebcXeQ62iU1yiq-Koi^ujii#niV(E*d1PMM7|Be zSGVL!MtgJ@=A$5q-kre3Br2sbxiR5PX0SG6hx^ERsq0no75T}lB5F7hyFIIOEW=jx zd|pMJOLRHwqJOasSw%UHZ?WbQg?&U=|b~=h|EEX2U$yo{w;Vi`}bqoQ_3tiwo zc6xsPE>+YZ^d3L3+)jE?H3g>>< zEs0b%!H9$=_Yrk8GWOl*pi4FMB|+nVOhffJW-MrZCHbiFwW6-Z2j8oP=LI+??d4YV z9~e8!(^6B9jeG4%Y16K{x?a!h)fBQnyafRqt2AXPq}W z_ljLp@%rSTaei8ckqPZ`JZqNnd-IXhJGZDIPxDmF!FR%cBgQi15SJ^>M|N1cCm4l} z5!~$-tUA3P=DyQ)wX(Q4DCj`=;HEc2LM~~%rlzJ#H9I`kia>7@t`iih_}=SL_x{KO zlVw^Rr|fJ*;?&*Jq`l@JheLTZx#Qj^a@$e#^BNWEJiL5^g<~Y9u=7Eu2N2%Z*gVQ! zCxq@AVTsaHPMWgl!nNEhW)C1~rt>W<)cz8IeB8(Lvi|mY(^?b5`7d|YcPzVuz1sqU zKellsWu!4H+BOxrPB>xH^hOtYp2-k+s+*<#Uc((9PgbQA61QsWDzJxBSL+tiP zkw3WrIjX7ongNmR1{oPN1PNsKxc2ksR6x6aU~FunA zma^gG2>snZNbQ^#0R#4!|^yt?iy68??Y0`lL*;XM$rdjA!7lfRsx4&9D z9p7W*QU;BHvKqIIGY!n9DebMX|$64+rqHH78V|PR!C1cbXV2c#k7aT=zPH9`i+u#Sgl|5Jn2zQCiW?} z%|fPNXgvSjq)L~AL&{EC*Wn|3F6x+Do5x9hqGi@E>1jz@vxABb*O5WN%n@)5WMZXa+JR@KV&-;dXnr=3h2>_0D&d?JPm#Xhfl*qYkyD~MF>*Azu_ zwOf(nOW=mUa7k3d6BOr`UP_?R%ed^PMVc!O9h`V)Y`vb3*Gw>c+VAzXwOf<38ZnPF z--u4J?Z1{>Vd5h3JUBduy>t{G&FWG&t)F+h0ZH6fF`if;A+~Q&bH2NsK@Hi zUG}Paoi}{t59Tfc?Bjd5>G?#Gf6oR@vRUz|Do*c-LNH0VPsBU1y}f-fCRUpfxj(0Q@9J<@r8Tx~Io(E~!gj|ekfmpwV~ev! zw(~}b>ub+}QgnQpKHf8@yXRwH9^b7$Tw6WKOgxfMN`2ucf#5GC=FDkN94wEpJMusz z-Me`u_H?+*%Z+8<>}lrpiF>NnT{2Q_2E8{|G=?hCEFK%jhr>homPvIaUD(W_Xl%tv zLWcW=vZ}OX6T2hFvxwT7I?{>7Jto?%#Hoq&t%T`~s|LO=jAas^chRfF@%EfuXc!NA ztK3cSJ~({i^EnSkn(;%sLEg;}yJDA%VZ%ox2slfZ7r|yr6a0f)_-%}vXOGeq zGFUm;-r+$9Qe<`N<5UK9M2P}%^*;BU+a3Banb+HwzC#unniqDZ80IXoT(E0N6=if^ z>1rFkdJ}o;xcB~PSYYvO`vqpJP(l`@IhnbHEGi0^WAESL7J5S0LlNF?VDWVuJ-sDF z7B?`62CexSK5VXq7WF%ab`ctu%9pZOR}g1&H65!{kCc?td*{)=7r`!HOMiCc|+2kS${Q%iYgGD(#w z3fcdMz4wgDGTXLV<`e_xLt{iA(MN-V)e9Xd-5?Cdm~hpl>s$zpvwN9mT3m*zQ}qgBp+2wdSRqydhRZ`+lrqd(pDZ z;`p4`F19Li7F!(8xbuvYeM?^?SutP2LxVq{S^6FC$lBt#z0y-nQgMxjS7el*>o2&! z6PZ7qekR$AUEfU1>t_gaeME?A#U`W2KA}RJ(bi1~280eRK0!`>6jg?}$3jXsrA0s914zCr?=M>Dd&AEp7ZM{v=(sKjeW1S7+9OX-mB8)IlCt$CtJ(?ht-Nxs9k2|FKp>wTMx3x7v7_GWi)d9+L14g z!%fUZH-8SYNafJ+rjj@2)Bi}wqouRs`7Lkk z81?;oQ}RpAi??naysf!ZUQxG|;31)BNpM{-3YoRzaxb#sx0)=mFfnXN`&R!FAd;H!exrM(u{AJ<7*-dyfJShK-6R(NPNAhWG~(tb+AP)qNcI&9zT{?P|V zr&BjG`E;ID5Vue)g}BWCzHj^)87jW|kN+ZmCqne>U*ET64*m3x^)hcyDYN*N77?*g zqk8m{^_MG^Ke$ev8m^agyJ)86bzhcke!#e8Hu&;L*b5@A=fPJ0xNJO5l8Ksmj zwYb{nGl!fU9arXjo>Es*`aSb2XJWGB{3Wl`J0Io4d+zVQcGIE6jMq}J{L%yA#c{WH ze`wf?H~vY&8uNUMYOLhb*Bzr<4<*!obbc<*c`P7v%SK=SU_(ZnqZV6WXs7B_N2jtu z-MP@T_g<+Q8iW_6xwdIdMRvhQ?s;om*vj*8`0{XveZ|x7xtGS}7afiltpBN!x~%vk z-}L%s$jJ5D)O&7>Vv%+LyWTCX-?KVlorR7QO~KLE^Yz|1u`*KIGO!1RI`i*N8>{@4 zut(F$v}5h6xNr5Ta@W#?R*Ij3r;`j+YajACjW$IRnC0l+PjnKT1B@q2^wx1+pCk^Q44?Qw45QKDV1f=^oY7BSKu^qOs| zO-o~F6!NKfxc~ci+0Ea0E!=zcX0}B}#>rgj71D{J?&hS+Zl9hVWE62UX^io(6PL1I z=-EYM{iDd?aUL5@Sk7p98+CrxndP*x-ZJfr-S4+8Io6A??GFohbAxPyo=8wSrY_sR zDfufX{$u(7JyZW9H~%{-D>Q_j4C4MbjQ-ar=`T0jw{;?tIxIAlpVFe^eAdsPYnOR= zasppAQ&Zn$7Q4oA;)JX;u4bs=;NXZ6U^A<~G_u>s)@8f7jGKt2({i=E{L(>A;kLA& zQ#$Fkttr8SxwYXP3@hAY=SHucIYay~c5jnt-!|DJU+Ob6qII>!rL3$z#z|6)(bhAG z%2(Ib$w^Dg$kcOio#ecEep*u3ZEu%NsI0N2$Clxfc`lV{bS#3YzvjG*s(kMx*3t# z{A0fU<}#NCj{7vcalBtgp{)f%9znO(+A8I|bV@*UK;6ttLhr^?>13r7N(_lAsY0QM z=x?&JgT@KQ#>Q-Q2N_e9ZPJy#T{|5zzUnVb$g3c6Tjj^Y3z50G(R+C@Pde-9ToTte zlc>nSt+@{slND2x%=i+A4YNlWonD89hJ}X;33jL?D<*3wtA@%Z%rl$TtDmUr<)NpF z3}7QYOlrhSLQ=x6BpqxlC4Bof8UC3r;@gv4G5Vo~C*YB2#B|?6$=0ziqhDhzEIC)! zTG%vFWk$LNxh7Qlu^;7YZ<>-G*&A&p*f1aCv z&-DK~)BWZ4S^0V|#(y?;QHWFjW(dHZx!0Q^savEx>>$R?A4BAdB39-%?_E90I*>NE5|1{KK)-%?rg6{{b5Y8XS3wC?0S+0 zA0y?xrl=UKsFziwb{{+!ONTol7;$Zp+cP zxXoKrwpurmGcxLS)cu`;+5@u)7pvMV*IR#&5PwKuYa=h+a(g2M-!GDi0GktWV&_*H zw)Jnusn``SGxTh(--uVd#+s0j5GnkAv^&wDmQGo>Zqv!|_K0?g`*?kM9ow8V@GQIlz%F1-ON47-f=65MXm)cJK z$XoXk(Es5Xr$A<*D-{vFqg12J|?omKK_*lFpY|9%oAm~}5p0i_q zME+fNE>+m|`iO^rB}o1|Yu|&JRjiwzxV0}%^yS~Ye%%1Ks>D$I{l}i4Am9wJf5HPR zD=B^V&o`%^8T)<~#!dj4Kk4Di6?mZQPp7oJcf9=lvK}}?}^w@zB;|$mouT| z89}9(FJD{cA)IT~(<1B2asu4Kc|&llp7r)+c^yTLU^@qo;c zUd-xEgSYGOcbz}}ex#ZH%Vc+#HRY|g8slPa*K5njUu*9eP}k6C$(X#6X;s^mCu-J~ zG(0@4Z>$m(sbVxT*i%jrJb7|c{zqTFH9;=b<${ci&(h={A`TXpqUV>}6giY7{T?z2 zI&+AM$`}Mad|2qz6UM}(Jl>Z4Q@g$S>(_5Te#o*`9^StFs+XAa8b(M)N&V{=^V_$E zCdaCV=3a4aJl;K}QknXw;>2eF>;L6IYL^#u`Q3zy5dr*=jrZ)?*~R3^DV@$ZS7ots zVdzyHN?C1nEl~k`gMx#H1`lm)E;p|fQ|{ldXx+CeA|Rl9o2}9YS$?vMm!2;r)BN~t zaJ+x3Z^bFvGp<^$4pDYRY2N;W&Nk|rm*0wjEjAUfpI}fJG$?l$Xc$+5sA~4X4 zFkMN>#CD7=q4ya&H>dW8H9%lA4^bgqcS=@_f7!6xLH-033kesd`=m(s%EC@&o$oID z?9%%QRB&E6al?+6MLPbR@UWHrcWo8z(6BHSM+Zl{)WJbRYhzyd_DA-Z_gW%tzcuNoKaKt$%Fp=y0={r8Ll= zLQs`XiN@e3E{j@*t`5`$tx8-&k6!VRA-9XW3)~$FD)%( z+|0Q~-B+C~%%X z+(IKG-GCbt5ha0%rw<-DV9HJ|cY^nW4!@aNW{hr+Yj4yZde?DT;LJZhlkZZ@^@#Hh ztES?%CZmfHKioefJ+-GOmtLKh@TG5^pG{8ZxkQvV8U^p3ZAik(UJ%^7*YN?F1FN?z zgP2;p;?>F@#U3Nm*-hC6E03L~FDRCbx@ag3RiEDT+f7JBq)5r$qPZx!VnB>Hr;i(} zC|Z>N;+r8M^t@KG5<;oiZCUS{Y3D%YH5(hsXU}AK*&D911uCci(kL$riHj?h+n(BX zNlr_fbH7gOt{MKo(&aw8hDVf)Bo`_D1_b?XrnX+adi?6w<3>h1^Q5@~Yh>kQ)6z~^ zTBJn_EMARdpZF>~2-#Fd25kKxM=(^{(6CSqwb#m7@A(A;0>2sBu9m;wJ3D)C78Odt zN}{a2&hPzn0d#*;r~frW`~N6l{*93Tr{e3sqV*HU@18YeKsi8p!JdR<<-_0jv4aF( z0TUjhUS!07>)&&kb`SAij?h+{5WkaryDousAR&=@bdHYr{o=WxM&fspmqccVuYlb| z#!W(U*YHH#HsZe=`|n@z-*fTbaY5V)|Gh{4pTmn#vmMWGs;In*j?ScQ1^5dI3GEXP zk{*HyUQb{D+^r8Jg&W#jc=hH>tDYjG+qc`Z^e&T;k<~Uf9mE$6O-=|K8(UXSZB5P1 z69*>ZaUETHI+u0HlZJ+d$CS)_83Y@8dv)xzTx#m;xj8wTpYP0i|Neb;cGL5@I}FPc zojgm5Bh@jy=i)Pt?s4U}#%~5)s2!ze8MA|bxctsf@k&2N6gBZe84)GSeJ0Na3hv+k zgPxuq#qa%x4<8=nP`brkQ(dii^Jc1QX5GL>;-?FQQ$4$V{$Ou<`1aXCgLd4YdP*zb%2xV`qixgRnfBW?5H7Thl5_Q=|HD>J@ za@1xmN$)&2U48!)<+tvYWnY+|N82+juBN;Hrp)KQjA#C73>7bxnN}5S?g0I$T1za1* zuqkeDzfc{_S!_S1Z)H{HMewX`wBDAd;elW5GC#~`+H{32&!V}1CEKzwfQ0w#%? zUEbcoA@Ypg{ozrX-mkUmizi3yuF8e+3fYe~SeI{B96c9$>fB#ncnrh{9`F0>vn401 z@X%u)-WgP`%sPo*x^(IK^@b=>H?=D<*WGdF;{0&!fKll)yjA$&qet0+Ivl}f7!D=V z`Th|c3K2McIzuj;pU3~S?$fZaw9M2h{3PbdBY~N|EH3`) zw08ATd3kxfbV(uVJWep==jDlF{YD$(Jlx$8_b$!B;eDR#at6&!^FoJcX!0#OUwWO} zS{Q3aXnO~I`t)fR&FPImjf~zgYkPI|P7IQs-=YAsf7YNvtKbd`KA4r&0KRK~W-%sy ziw+uH_ZwV$=rl!eSr?DUJYoxa^RK{IDk)o7r`}5QG&zUx*dJL7Q zD5{6%!Ue2t84`uo(v@IKh?fqos;Zipu-LrxIXF1Dv$IpX%w33^Tfy!}@rSCfAsk|2 zGRz^C|L_7t4-|OWXrDZ=lan(Qm-S%mrhWr1Gy>D@PjqjFgcLhXXRmg5beQ-J7htJy zG-h*sIWg3AuSc&2tHkp=Ha4NWrcE913|2$jAZRgNa8C;5>Otgno~K|bD=TwxaiJ5c zdBru}ni?W;y`?M9d<@>cQuP0ZN9Wq$C%{@X+_H}fq)xxq+PT2IPYASLt z_dFva62A4S#4IDvLeK+1!DLCT*hmiXxfHU{EV-7frL`il)B_C-@U^%q#ZO(t&J z?|69N(4mSiUuIYr%m&Rx>A4(u0WnxqkGE0$jHUTB_l08TGO3x?N7(|8{2ThaXSz`v*DB}wm5K8T2_|fymQv* zh|&3AX};Ta42?OTupU@5Dp7hlQ{Ie*&oi=@$@98#SVaFb-mQr!pPiZM_Z5&pNa1(G7l)>LHYMs`pB;b@3Yb8`Xzpxt znH&7p*x1;fp*=vx$iQGCx~x*@vA$GbGoWu^z$aOvo;kz6yN~hd`-rXf(#`4X;dRSt zJSPmha!n_@@=|rnFZdkZ3M~tp?9PuC^SW^4$VIy=LN9VxB!1RV+11ZD>JG|+X>n+F)<=eQ*ZfrS-yPysJFScXklS% zdybx8B2^`QrS{fd<_jB(?Yi?7<*vRRIk)S-1+tfi7TYOtC@0EC^2Qa}|8DvA;oO?# zz~JDQ^0?FI&b<_9I)O`bFs^bhLfJ66_>+wK*^y|kt%YUMSRGxMMv3!mce%&#(9oX4XD-IgehXiIRkFu9kl*S@0W_i7(eVQ~ zgOPk`fNVSG$R6joa=Y90QAX@03X#IWAt3^mUA+8l?d{7o+~tPci05*%))Z{=rlzJ} zzkc1ld-oNWW>dE+^0kqXQJz(g@T>EtO>ePmnL4Gyc%wCIk`f0_0vH@hQ_buxahV6) zmq6f+jg4KMA89u4^A3oU^q=a=^U;}DT3*)8HF>esZJWm#oFEsDZWB(2oABtSym@nL zZDA~gTX(84t};bAb@%y}IKy+eP>g;W>1Xk`GTrKMxHXb;)#*rc1gA#1r-z!F+O=!f zfT9RUS6DkeH=Nr7KSv1JsReU~)HqFaTq36xuwp3hqZF@Vk9Jo~lxJL`U0q%E*jgR& zrpnXUoUa#)KJRi4+IMwz%H_vWGbqlMgig%-{QPvA&l?sN7QL;FRn<(Ly!?F1 zojWxO?!>S>Cd2MSMl5h$G?SP2OHCbbh`EgLNDVd2f;Yhwk7#l5*aTcw7=((>=O>=Sn7o@LU6S5oL?Zd5A zkcG`NG1Q!>fGy$%@CU7Oa$3e}0GNDxxa#`&fBg8NlBR|iI}PK19cO0;+7W+FyV%j2 zD#n_a)#Kvg)ZKfE9QN(o2WTxu0JWwlV}S=w-b|SB-(hEK+m@zohgpe;h`=HPbaBJ( zQ=MvXzywXH!u8ooW+6XT@8^flirX>x`}pi4^iqmHQA|GXv6c&dG*TDYYPN{CWp zM%<*8sT03^i`T5B3aradnIm|lKHC4u6I@7c+VJKQwlEl1N3QUgJH17qkDuQKmpMam zaq-39t=+k%&1vc&$DS-$VL`zaVrY)HPlIZJYVz{fHIcHqG3zQ7v1YP- z1PRxDVYCqmxO&Le3p5K1kRjyI!Gnw!+yyx}&@;_YPE|o)dC31D+BnHK6Ek$nqe4T~ zu``iq=Dbp#=i)`YU|rPWr*+FL%*?9$wn9N17(^Up(^Z^C8}4}}3LbZevFa`91k=WL zC!=I)sD;;rX=0?}^XCUT$Ic_Nign|WD$+g&+`oSx2|6G6U|bufr>D2z`4*p(ZJp$~ z);F1IX-YvsQBK$r*-VbFuCB(M0rAQ`H<^$r@bmcXSal@jD1pemU7U$nh6RC^ncDuQ zcp2npyjIq-EBEY-7LM&4J&L>LdGY$4`ua?aW!j38YllnnQ%RxK_384?4fUG#+*~ww zDjmk#W_hN66n-u;8Er|X_QCbpzHMP3Lj8hPePtfJl`SnT6&1!CE3;;Ku3%mh`q(V?dEfvu%XR$x{AshDMGoUDa-P6y zMn*J*QzgPVuS!aS?NEuMEO-$SA!~Pzho`fZ1YHO^_qjm|ksNt)q%(fsk&%&hEGAF@ zw-qo{qCjh&Zu(JZC*+3=gfnh^eY%Qvr(@nX2C?{ju+hR4k1`-_Yv!3PwyNsBGd>s< z6}3FoV-V^~#}{j}_3W9S-_pXuG4F=c*G5GW-E-&Q-y|&!9GE!^?DscN7k?^gD<(f3=fdeY;UOWa5)wOnzf@KVn73IVE&*x)#JJkW@HD4-T?OVaR5s4j;gj&Z zCr_Qy!Y6B;CX6LUcX&(3zbs3|yI68I`Eky%aTXIy*dX;Y?=2B(G^0sZiZUnZ zMjQ$weo@g)@D7}C$I=hVSqAhJI}!ID(|7#J*4oSEUL=3^M2IY58(rwwi?j5_b~X+JKd z>jYZ{4x-M-QH#e^=Uf*?fBn+$J#R0ipkUqf_8SN!vUqr8q^SMqbxb|#KhM3Q3#}$( zX*@|WNl7M{>IEs&FHiPiB3JteTauEEnS^HtITK_NOv^spd2n?01mik5TZ8*ro^@mF_V5QR z9dgEf9?Ohkbz+r;P+7K4Y^u@L+GsgD3zn-EXylnS_8It|D{`9d^`=5Wwy*qi zniN&eE{`@oFft2iGXblcY&8Y z^Esw5;dbGUJ#<%Cq3YPHGEq@|5NLZK@i8a1&0fip+dZ?`9 z@|1QMtG87wM1y{^u{IdWS0zi*HS&&nZ>)`HmRzwybf=M2S5@7ywWT{}NKT)sm~4`| zj9AHeBQM;ygKH;dg3uHKj=ezTSIVg(k#E_(w6QvW_3G7-)7r6Q+HGxZ8>FU_=QQlo zPpfBpTUszw#wRAWr>gpw@?N*HIz4WZ?M2vHcz)T!;*_Y%^sir^>S9LIct($_zrqW* z`vOCjqf!2%`~u51egVCTT3o`PNlsU%+_R^%GqmS^vJ!_WPdd^;_BH!h8e_cnRb018 zWs6SCPFO}F@>1leI?0wl_wujhTwo!RUV@W&bM1%5#utpwOXtM7Fea*VjuUF0ckoV) z!J*Cll{O1i(XSfu00P#%Z;kFoNB7}zl{u89rFV8W&RW+rhc~r=&g48>3thZOlhA(nw%n$SHMkuLBsz*CuRoq)#rxnJXc~YaT2a>p@H$C91|sLs)YNQVSEOK>m}5?-1aW5Iar<;f@hS*9ozL_MoJWtwV&DsDBiP|4qJ}8hs~L+j+A_2?bs`mL3&@`* zCbE0r1kf=4JmDi^?;VFqH@FwDn4Bez%v@!k*@9oJuB+=B%Ek*=1xiYPAbWUtIF@k^ z#TtebZ(vH7s@r*=N_@pB<(>a$SkHh_5JP&wI8j4yO%t~KheqGd+Z~AIaj6bEnR`c% zj2^|ey$52%11QN`Ri=(x&wLJXz5Hf~NSd%Z>_{d4=hiNQPoe(Tovsw&+M>9F2HEAf zH%`lBT|Tw+v;o54=4VQ=2C2fDs;W1n3x7O(4^^+BObN6IU!dlM0e>-JD1y$;CVjes zt_vmt0{KY#tdf3N{g8!#;*uf9xw)->etL+XG_2*pQR~s4WFmjYCKA%q)3H$`{IlIX zJV^ieL(nfSJVVJBVs2Yns788ku@m>MCRTUPkVt4xG~7CdT$&dM8}q1t0Wm(u;Wrqn z38^v6#`J*Kgnr#~#qE}%6McASsEeChNKlXo;iCI;j}w^byX!Z!pVt=XV0FQ zsJ{thG3SF&j+b-){QP(!-p5AJ?uZeK#!`fqRq zL$=xoPdBZMoFFMqOS8bs)KLLh0>W!TMVvAoJRmKO*Q<*VLhd$hXP1+e-Ld=dMe>-D zo=&AMUX`*6>{kgt1|hvqe-?4BjK=w=rKjU{Kb>P)syZhk?Rz&XC^gj8`K*4t<}cMO zakc@!7_xQ2N_%ZCwgW_|#1||~zuf(6oc2&#O2)&L@`qT>E; zn``?0#tn##<1(+5Qk1^c)>@+Kvm5@-;+>{juA@L%2)ZYDr~gCH$(w54{1VmQzqgp| zTE5^iX~Zjw>9#IMNyT~g?2Dcf zWkto8LBy{wW%+bYL*q86da|;zpgkacn<~vizs1aopqvJax!Qf;_gVcf zxx%MYGt11na>p>zj$n`XrzSdXJVDtha)=mLqhzRcjoS|QBk$(=rbR|FYTtlrVBe>t zr1W-E)Sa*5)F0)uw3B>SiE>!uHuM;Z4gdlc+S_LoBB=11=*~2C9@l-VF#m&%mv1i7 z7jJum4Tz0s1#Xky=PARw(MK9tBTi3CEe^(#?J%xVblJ-TMTXk(FV@Z)xOrFjgKLZ4 zN}seNtPE>P zqY&^ec}cD8srOtR3b_`@*7$Q~W(IY9YpSZiK#VH%QRW`Hv9S@FdFQRdtj|2jY_hK} zlH>2{s(CZDM+(~9kM!>=_ws@!FlOVYk)CjnpWt%Mn+nb$v^3DMsbuz=8F=&>A_B%R zTpz8VoACB+1M?#GV8|T#&%V*IU%$lbzeS39ZACv1q0Lqq8;XNGk!{5}W-61c7GIaa zx=%bsC0*L>=Wa^M+n4sBuYeZ_LC=n<|Fd5ZoYHUR5CP&U{^y337dZ=rF0Z8tTG5`H z8XB(H)j+Cw8as^7JK*{A-J5+cK>CnbyZY~yBt^{4&o3@FY3r=ihXvOR<$m4UGxJ>i zgh5073olk*y!(2yw0WL|Zq7>AQl_~#G=RqXrPuCTR#x&p{i@vu4;Rpy{4fzMoaiP@3jP((k*}Pbq`|6Xix)5?qZxbT`L|pd;=%uiV zVmVjWO5(O8Gy~rK1PjQ~6dnC0M7qqKoSY1*v1{i}Vb_JErP`y!8#?hV!T|5mnhacP+Gy z3=J11Is-R9G&?BkL{`w}kZ&}XZXCKm*Kr>L*Q0~u6E3G0R_pE6#6(1jSuQ^^kWHcv&;FwYB9PfDPZ@e+ze7YY0Dyvax7RsI36jjML=%UcBi$Ac0*PGfIK=s)o};>th3xptXw^gzi9jL;GhM78U$zJ6}Rv!rZzL{ z_=z~&6QY`|bTdI#@9|N0;qfyG;tzKMnHSpf0V40>SQ~>0!VUS-UV6UjNw$*Q+3^Vp zJ2$BgBdnHR8Gp~{Z{>f0{$Wdow#bDGQC^cbNG+Wmag=e=I_a$S3RhxbQs%+Z-z+Jp z7Z&8xAa$U|5wAj=kL}Ze@L+mR*>8pYg9@TyHk+`uTwbEpgENUJ)lgtTC{d#gijMXI zQio92+|xSUmuF5x=(U^t&BDQvqFe5XosPY?u{7DeTF*h#iju`K-V=HQ0&=oBk&-iI zW&BxhVSQ!YTe|6BntP(lFUYmp<2vp;ySSL1BEI^(PJ1NvBqygPs>#QXDnbDb9lh@`)^v5?*P8$?&G*QO zWzxYM50GNd>R$n8N7H~Pn?kf4Ki_V?d&};Gnhe{uL#Nbk85ubYR_)u$pF%`8H79*I z43b4`*%0)P_Mr*-#~**7h42FcImCncgIxhxkK_QIP*(<>rf+Q&o%25H^C5E=pK#GH zgI(g&a_%mMg(pv+CQ9d!TF}+s%P7oi^+Rw=F4mfKYxzarnYg5+CwsF_*Y_g3S9p7S z<4>Kxy*&Paj1qOO3)D)49`3DQ9*TGHoq70+s$~zbge>LP!>;5PcW%c^khK6u&;>dg)0N!K7a!UG3d3SOxLWT96sACBVGr!?Wn0PI)a% zxCr`uvc9RyT%0J$irwXs)y z)I@qP@_nol(5yYsN}RZ0PdcWR3-&tQne({Rl8v4HHuPnCH%30QptsiKJnk!Z9OZkU zvi6;&C5&7$&_+Xb%so|+wvc>5Yj6CB&2@`Qwsv-W@*_T;zaFjQ!%S6cbJ>m2Y`=$M z{@wHe!dY4iwR&N9IbaE}2HXV_PZ{J{q>)!aK}7AYoUv>#A~4aT?v!>>(EBz%#p~At zqN8>7^?!j8m6nvOc;q+66^ObmnFxH<0S$H0{@S$aVFCFgGt=7Eb`Am@;=_blaG=tk zok;w)KHMYSu*v~-H@)mN$u_qzcVv7^i_$m$ELif(m-{_O`h@!u`CYl`%n!%a2IN&o z1+*qAMB_!oTbt{443f;nH&2g#+b&wlh+Y!`;yl=0ns0Q)ujWUW0SC<&6lQyz`p`2j zdX0LuYuV}1`|neTp=)8P2AwZC}4 z@+&q9FVVv}v<*5odDbb$qhXCMK9f-Bs%P^T)8{m*O|~jHihgGM2kbd;-~g|6FR|N! z=zA;hStUbDeZ3$H!p{WTF-NZ*1dYSxw~Tn&GxRx?lFoo}3%gJK5Nb1JWHD@vy$YfE z7Iz+_usyMJjPuB_*UU;Xd!UMC_63b=dV3AU4LbWq^>iyxRgoMc0|LNOceo0*UPNiS z(VXfIl0WS9QVt5zyUTh-96{3Yb&p)TQX`YE$NVua@9kywjH)U5CcER7Ee2^(hrfrB z@@`Cs5HzwXRBL9g-deFMwjJ8Zco;na&XQajM>LGmEcp9$?%9?Dmi;DI+sEh2@MUpN*luFw3jLOtyA)kQ6IaV zVAK3&mKV0SyQ?ePP0e8|PL+J_vBM6C@}ek`iINg)J(RiMrV%&&AVI_YV_;+y45bh7 z6S-$|^oe=EKfC}Ay(cd@*$6w?FL*CN^6#vDsD$4#F*(U|?i@7MuYFrilU)wzOSvX) z^BOv{P(I4=Rg&Asv@ch(v8M;XcDpw0D&^r8!(F!hw!m{Hk<)mC>l(Dgof=^E=j@-^zw(5`Um z8l?ZG_;uw3CFdK9>cCiAz2_pjo9=K=@ zHLAH^?oHp~k|TFx-A%?9XH%6(F^Q?u{C09dXuqTHI|uLBty?&xJiNLC#{9 zw-%^y0o|>S-HvD9|G1O6t<)%3k8)>Yf=cQb?U7I8Izf&Q%+B)g5S47?f?|hpiD>5% z%Wi(pXu`w~N9Y>R5c2KE6t^thkqC|b#coj^Pq`i=4)zdE8vOF5csVB8&TbxD^m~+O zFH-&?mBd;zxFb7o(540240DB2Jj!f-NQ1!OP!4D zG1i!D`}TK!tY9I;;#tICIG^7W;))E8RiE~U=i?t%!VI-PA@P8CORlMh2f>m#4{c-F(}pT z?C6k%@{JCnrDmdR=%*Twj5lvSeEj&a zx%sA>z$dG22Pda!RCuT!(ADaJ<;7K(4+`CxZ@s-yIwLWowJz`*aruk}MMlb5@BC5b z;pXnX0ljV200Jit4x|6oF;Zp2FnMwgrEtlYkx{u^YG>{D=rtArFVnbPSRiATiZpk3 zufxV9;y5wdp2;jq5XKrIUEVe{gim12&h6J13VxhaSt=|lnv16WVxxuFs;Z&P-LIVr zBgKH2{?k`EfR}h~^;Nh258GbFQFC5G$NJ-al;_|HN4@gSyDmIQXnZ_i%TOtwc3Le9 zn%*E<`H5~6Xulv!H9KXyEn5{`PC|HshJh7yyt(uME7P2LxY7pdX98y%x`GoO?@)I# z3*NbfK0NEuqaEdKQ0z#ByU}Jva|2ma8T=?AmDo7MJn~wi@#7r;dN!BXO55_(aj6R_ z1tXp8c=zCf*IiGW745wt!NHAY7Eu3r=gf9}Egjw4S64R$69amsNChK;Qy(9Y*<0}# ze;0K4-9jn0(EtY&M9h8SYs=I1u5S`=E0FCzd|gpdoE2gXepxHZ?2Zi~Z6EG6t3_*5 zaW(eCs5wtbF&ljG+Aj_UUMkPo6B3l2o~=bt8UbY*3sNl5B8_4FSdQn*V3gMyIk&!dsPeb=EsckICBAG;X@ z14QH4;fd>u3a4s9YiY?Cn#h;(@CKYuB-n9s>z2tneQ`&ZfMCJS#?Sw1@#t+hXi=%d z>ES5(;_+k2D_5@A+w&4)es~Aqsz=|%JR1flc<9{Ph>=%oBfeyOmgbpvn5;UN*6A%AM zMwa6!313$MB1K&Mk7CmpYz@R1Wq-?)AX4l*?~pWT!Kqw=b4e%#$gik>P=YJIv;#)x|2@^T-ZkG@9! zqC9$Y+a2_c7VdA~MJHfIOcaMudziQTi3Y)Lj2>V%{|$uELZiXXhxae&Jfl*KlkkP? zgp^SvvN$tSU^lWia_P%c>NJ7FGBP!pWoyq`U0P6xcRsjE!2-P&mcSwQQH=E5+PH^Ju41|Ko#JW3O(DLs97X8D#d>_rI7 z36XR7X($^+Gpc?~bMrh@#kl6OF7cDW(p?2rEiLva93~3+A#1-aW(<{;$m9loeCzIZ zgKcQy`+-ddh<6E@nbTm?K$PA$mq;BW>TM#Th)qu5Mi=UBXb)fOmhs?LSmK=ze__7j z`)F{)A50Mzmq7^O3s2vA2Ve=A&pThY(>X7!>bF&Ucc1`LBYNqAA|k5Eibm*mLOmm@ zGu+%v@{(geN`(A4xws;Q?ASzRCjdQoVTfpai`$!sno-*rmDF;=mYXQ0-iVk~;oG-^ zNVTwfBo;4Xn%}d#Zl|TCg*J|wuSq?Jjuq}&;)IuQN&@6y)%hg}Aq7hJr@olm#>Pxy zo)H8S{TnC>Hu|_M!5!Ct`siZh)~nIi2VCu+hM1L&BGhiI>3HN&8WZtsobVc)Tqx?? z86Vfc`h`#WRem;D+5xEs%7W>}>1Wk7HM@50Dt2AuAl!e>G&?(sT4h-5qMF!4@qGsm zLhgD8Jgc>_ZqW7Gj31FO+`1ao&UO6w@l&TJ(BHw+;4;p^=!5)PV9$iNneU--U6GI| z^W$y=Pg+r^9+Xi~Xy5X8%}BkD5`n0IO7hT&uUig|j5K#^s|~`P)8!V9#fMIVo=K9< z`QU~-;^x6yXmm9}>U#2od~*60kP-dxmHM|WPlM4m#?F|)LZ!L#d?9`c`wWx`d;8p_ z9j{)$K1@rSJhBc82(F>2tIMN5%E!mY!SPJDjkp;vDCd^olL1;L+Aw8%M%t7a)C-m$$TLK9&U+L5)x-h==|D8Yk(|gu>%01TKOIYjfe5emcDHy`~@6^l{o4d9P&`3cS8_8V9E7!Oh`&21QhDJwL z${fG!u&(HK=68j*0Feh&E(Q1r;}_@@JW`RUaf&RukAEa+5~!lk_^gT`hc4OTv5 zn!iDmAkERO@XC?wu{P*783uuc7ZIH>Nb>mVQlQ^J!WY^|JQ-KnOFb& z$Kpz(jqCx9(9?_$^acSYG<0y{(5;D<}PQyWW|@nL9FX9p=J2_9rI+=sMck zwF(CIVi1EIZERK{cCS+W@z#9FmS}i`NDIFo5`J&FS9Ek*7_b;xh!|nD9`y3`i4*4N5Yax%d@x%{mQ%7>G{MUjwN{FHCHGf(Hr~ zB_*XN-Gh(L4ldh2kHRMak2}8F+EhI0;?|Q>Q{%i^S+#RQn!CDE5)(rrB7QVBepI+A zV{V>`dKDTE;Ya^*mM>s03JTL8_dS~wi6OnQurgvixX5yag2A=vi0Ee-fnpBV+o`73 z*0>qIz+wE5*u9UpN}5W-bk9QTY;A6~yK|?XUFr?cJ2%%JJ-m%S9~}njBGm(f;$JQ; zE#c$q7s88m&+)&(JvpD!SJL%=>&ti8P*z1VFR z9UK-RJFR{zisR(c2*P<(U0vNWB|em@^UKS4O%bAbIMJpd{gSYzRAlqP92ftFYT zRWAWA0EB4ME-o%IaP4?7%Q3&xPlEKrlYOkY<7;?F!g3!Bbi%sTRB`X#ojr4A2Af0+ z`-j;7aDMU5zLuc9u(-H-bX%-rz{?xvMXk~63uB*Y94NI-8}W`-{W2uDG9|A4<5G`z zphZe_$LV(E*ngc6wl9gY=2N6nX^`RG|KQ`Oi%#ts4Rfd#^wiX!L(VB>*$!2sU@KGF zJrj zrG3W*8YfP`PBOQ&6vb=0Ux9^(XCCm$>^^e|2U28ZzoYCzJe3=M+b>!w_UE#905l6@ zT-?FW@5e0W3F<)i*!}nTIK25n@VKJ$!qMVfh{f`l`A9|*@amQEty>LXSNXlJKE__~ zgPEEAMjeW!hHRLi5Z#+^ts9oI!`JZy7Z=ALqghn zd$$tBHcuWoa(8|1014WG$c(56Z6Fp#du_RV@}>Y|-o0lJ?t&+~>$N$qiyZ))Tr|8~ zzrhCw&V`hPVKs0k%=F!j@AdV zE1+>(p@iVXZz5Si3wHE-1_Y&&Dy~)+rI=n-`1mnXjhG9ZCW7a%t*Xidb*0vJrmj2_ z7NQ4Q%*zuZ1X|Rv@sNCv7GtIllc;f?RoV!D@iFYfrMsI0sQ zYdl=R>gwuxEI2;Y)!khe_Gt*c4H`;ij$Ud6`U;-%s10PZw!IN1Bd04I@*ot+D0*>;hW1MMz8#DN06 z&yTi!z+oQfeUJ*F+Pn+YD6&7ftOODfj`I|#b^Vw`i%?Q}cxpmTuY>Vk zzjTmpG62;d1l+VII6H+(te~I(btmbEsu!#<$&4k_(bJ=CndiFr8-D_Nudb%Hn~rys zNW^!Z2MtBM`%%6}cN*4T2n0VL?%2!l8nPE3o(2XCY!e;KzoOzfczdDL+@gSD>Nwr& z8%Tiu;EZ|@K46lD=4N{n39!^gp8_vI{UKjV!-k`>f zMkn)qIL3KtqpX5VT)d@bnV7EtL7`3m@vLXoKRX%crgajd8AphxV zu-M4ppqhrpA0!UbeO?3)Y#b62ZdcN=I&8Z8b2x3u(K4Efrv*fd!DeJ&V1S+R;K65< z52hTH>6*DGFq|mZ7)Vyu){x5arT?u}WCzP2){&%tVuFF1+Q7u*iPIhuP*g0DlAOqc z87W8^d-iN6k&%%(H3*C`GdIV;_mDh#^a!1J?*Me}KxX=fP@5}hYWj3y8wumo5jI(& zmfuTs5CJ;y{%e6>VTyL`-rdsPPPuCrZoP`98H&m4R2E`tOkth;sq(<&RHDiDed2ez zsbB>~HWCpLLH0B^Hz$FB?kp#_N3@*I>w5E$in4Me&zZx|doSmEH=?ZtKpAmV27M2T8ueZzS!k zq@vPWU_StQAuis&1G?b6B_FCIbr-_XKBOHuLDjX~D0d+omx z?cd16)0<(j{5Fczlxob4U|!;Vv>u|UqB>D&X_hGOF1(89Y~B9KNPT&+Wu}i zNkY=9$NMRV^!~PcnVHR!cr|VU2^##%DEimFW0I#A1;k5u-t98(4f?ck*NG|#`VM9ZQ#e- zw{LfFZ~#yL-0BUL=q5*SQbOb<@3#pFf82$aO7+Q2-^GQ60$L#4ZW1xV29M+ms2a^{ zFq42J0a|$T;^Igj^MhE+Jv?7z;&`L7xri7mtnm@C2fg)j!38kYchVBe%6gldsY%LK zhv`!iDwug43wQ5`%bz7s$}`@-`O9(Y$2Z~&F?P3?ZOq98!3a-F0w>rg^^+3kV>ofK zn-WGfV*`WBHz`=aTS!S74y5(x6_l0-)$DuMTMo$z=6X0GlBCn^3sH zWHUKQY!$&3a<38GcH1o^eBK%m`fayhiItO+Q+o2`LN8jyf8Os`i%qx^cP&kh#kyp6 z2MKZLlt9I8A6i<1IHZK^w6!Di^7t};AKba!k3M->_J+uNkB2hf!>=yx z#fn0dNiIXV#U?W~HMv#_C6znL&^9|XuDP`lxkS<0L&}&bVb|0~hL9x*B}A;Wp)4x7 zTSYq0?4EP}KmO`7K8^Q%f4ArRT)wYPNpGM0YfI?-bYhQ^c>)6}1~&Gyw8ff7f?yC$hfo|F!FN(oVMcwpz6jyDLuX~- zRNsJkX!JX1n)1MP$Fg0ALyv{bu_f{;~FNsf0|*kzm9 z>|qeT_A4#hHhy8US)b_p__0Ny>A2BVYF1iWj9jv6fa1Br{$;;nFQ#INMR4P1Uz%HkIWlsi1Xy3kM7rpC7K9Y_E5g8dN%`Fwxno>ch-04HPk%Ow6#mC!W?i8N%z1wRH7#f*M%4xwK69(~l|9Lg zp{M-ecgD6En+C@wYmmxj1ph*Dm>I6@WLI4k6&39rnXGiMnTT%@uAw&?UNvjjN)byW zoJ71DGP1La?6k)l%4C^c(gbc6HXZh|EUCyRA%*5&3pv;#`ySnI>!{c z60oM9hU8eL)YuaoX`(UEd;;StmS5)@pV!sa9v&V(a`(iF>YII} zww*?IrFYms5uGgYXa2i}kOMY0;N(^wC|>TsG>?2P+NoN= zX1DvZ-S)c`@aE6S7a1ugXRdsp5rWsCM{PSi=e)jdCAw^<&5n@EUEE+*wzuc#Tc!pX z29~QlWH$8lC^y^~C)e+e4<=&Z7e*D9m8D#*Fg+6&dB@U#`6%cFf%e=&TP)x?PHi}O zJTRuwtsi%>PZ~R_(4u;qn~OLc&##MLgns=`jdC?2^EYp5M$yac4;@-Y0H^mmJ-{#} zGIF!~wx!CFtKY%j^=Z-v7DFNLObJd_+G3d$a5RUTL$(FIm%*&L z!F>~~o8HJ;VRiJV5)A}|i>s?f_53{)%mxP9Iy!QZPTk(G^I^A;za>yrDUf@0YcHMw z;qoyO&aJ2=JDr`^y7MF!YFGaOu18I+50og}wrJAurf7Ckg-MpSd*qBG5;Z6wfDLcV z=o?0O&qE@@eRCd()7uYcI}y zG?`l=yyeb}J(Or5ZT&T>@ohxRQW9)T)NPB^c(+DZXrLo@knWc+L)h#E_~0vf*o*KK zuGz)2UcVg}J$~Xud*dlG{hg~kDQGy>!$O3+in%?#w){b-RiCgDk>-#abKKVlfl@Osy%0<8WPl(Z^ON- z)FuM_gIzh)1~>PnB}2htI?%<_%1TVjLe*vH8;eBh{l{(uA)#wyzUvU*(#mRS3=Y=w zE7qdsH34~tOBS*XTi9B?FUJzS`}hSy%43zATD@AK?B+)xhPP9x;D8rk4#A7G)|4H0 zyW_Q-fW$7$@S2+bqyyo=)XZ#2P4wc_dL46i`^^q+`o)Y5{wquvUH)c{EiJ1hD*nX8 z;jYP>H!!18djW?3p*>x~aCBgH3+WW9{AkR0!2a~{uyLpoE|sB|-hqVKFRuk!oQ>*Cd*tl(NMN6F{tf%3-7it z5Zc7gLUz~tgMN(`eewGC*6DxY%)s8 z3V}e_rKR(pZS377rI6-!EHjkD75#>)mp{EtKhOg2gWq$_$~34zSVi#SiIYrOMreQ1 zUm6h+L3ki`APl8MeI_#}ltz<)2(1wY1y&x-u-Jh01h~G@Np4LNSgYP z9j$jv0S_+~7DQj?8fcPIQiy|p0|e828KyJA{G|!m9!_bg!jKD?E{9T3Dd^1f`Dq;d zmo6G7yu5xzkpl5lXpck&4Jw;)rmTJR4#Y_b=mlR8OGi9=8mkeJlcct8)D=@xQx}Yf zNU^;SqStpKpIl(a<%5$sT}BsrOkfBY{)holp4D!XZ>RH0H zgC*uYD4|CeRp$Xg!UIR8Hvp517Ev@cZ|3IW<)2rxkGZ*INbAbUmGT27w~ zjTv1E&J_8~fFcKLrzd*vgdlEvuRky2V95_~{>CovV}7VYXoo=C%Y3<%MYW#6yg|I` zpsQ3-`qAEe=UN8+F|=W@8aY?5zTmq*KsJR&djKzY7Rvm+TBFOw#PV<4K!TKo;m}qx zX0#$oV|O<%&ujL>@9fdI?Ch6N=k`2Pho+z|&{{(v%sv40R?O#TMwLV6>%G|V@ZoU? zY11VbO@MY((PP!~!oVRa`fvav5MwjJ=n(J@h1(rPfFR8Fy5-Sx)9qbdU&rfYCN8z& zU{+S%(@+dT4fX?h$@*yi#u!Wbb;$H!tqvpk4&B%9`OR10jo+1&mFXY3O?1M0i(VHv zF(x+OuBwU*4xUAO2G+P70n=#I!bHPYx0tkt56vTf?C$AVgk=zC5iXPaxj9q+LFj~+ zugL{Xt_|OoB$OmSw?jg$t*ZlMFjV{2$jB^UAa;5S+DyR5*1#q@J3CEiwAa185zt~$ z`NEzUUHKup|Mz~_H#-)=bm7C;G_cqMT5AapblJeqPg~X1mky-0K#O@#KfVw#v9Ree2UCU-AAIOZU>dcTWcgN5SWU+>)HK z^1IQ|r(fLEQuXdJNRn|&e2s9>RnEL{7S!{@8)}llpx`nv+n_pO2@e8h>{uAz{V|>> z{Wd`xbiCykgq8!gUa=B(+?hXb4ay78Rv@PbKNj?uRhs+6q5erqhQCSKI_$g4VkGZ( z3)NJ{%S*GYB2s%(V^J>D&ekQM=+w#N0xW7sjt#03A|7y^&N>mK0WAqQ%VR+>z>a!I@U&2NBrBmf`4JZs;NN`aIb{PHEgH6nN~eAYVB5#f zo|WCcT@#`?I5;?$8g6z{Y+Ycv@Cx8A=v6)4ncH+7)ZjI0*udg|cMAsJh5zG6YN6em zA|N&Bry%b2$>fnP{&kF*%$PkeBxF3KCk2%6tl7zv!k<8xw$Ge7Q|zMdFP)bN(HDGC z+b;@(f#s<2zTf{CbEhM-FfWg;mwEsG{h}Tdhxl88)Ykt|HCdAF39A?F4j(?jWd2d$ z4E*!T_OJ78$(iC?hPiTdCPFNY{GBCe~Ll}G4b%6)|GPoi61p4F1lO% z^g4X#VPITaJM5GWa#$cRU7#U;amuPGZRLM{$*cL(@oJVS^xd|VdL){#Drfc{9|o?M--p_=kI#3l~-GC`TG*^NzVDWHsRF>e`%TT g>1q7`{+CZQS*g(Abyp^Rgl+b0EcTlh(>;FpHvK8vlsA;pr zBN+&kK1GM-;bM(*T5|T;tR)$Zb2eXP;6Ny6TmFGk*F;n>Ojd z)9d=xe@sMr`Ul5Adeo=u)+-I1r|TegRJd%!n{T5-Pz6k`5#|ZpqOAhc|aR~Ioa-5rCLaceAN0t#+!M>Fzb1W=G&KGu;KZc z>&6as6f(E1J-=L;nmUN?bUHvS(&S&BcYJb9YvBhB+BpX zJzdYAefQ*DBO;RU?uY}v-pXGFH6{$;lMv>=e;@Ho?f7)}emg!WhK7X6dkb=k@N$+}vDIr$p2+pPSwMoE-Au z`j44E%gUIjsj2Ddn=Yoby6o+uDvGt&vol2+IEKFr(+_M9A1#3^Y!l<;Bt-9`w0M&s zPGYN$_llDiyFHUui{fMZjbT(sW=H$h*S>z68;(XA1OC90()*%XtR9n=W))Iyif=SN zHWnKj3#@ipT0y~w-V?OFfRJ|$)79znlT@MKBw{d3neHtf@+4Y}Q z1_lN)@rcg_%5i+vpd>AiUyh&kg5pV*@#!6;m{2+Z`-1Bs!}w045-mr>xq68 zrycT%s!SSXXOWWf+tAO>y#Ws}k(VTfxXtJ(7W}LTwO$rWnA|uXFqI?oyd8FJ^MRVW zy&r)|q%U)DxHKs_N*lk^(Ef#y^Vu1_ApR}q*Pci+LTs>t z5|)envd~i)LuEG^OlC3ceyyOYnmEHp1WZtUeSJhlg<(&jGA%@r`mK$P4d5C` zNJ!}D=%uCIInTBU29DJAnCboRkFCvnh}Tn#e6SLOD@AAy;I0}XaVLkHMc2)>74j{l zkeVIJmK_ra=I~I>z1phQmXr6=q;fv{T743x*I&i7G?oWGx^N2~R68@!rIY$R;oTX9~2m26#*(+}+$>E4a8^HaPDe93IZk%^7Kw78PN^Kvd&q>gM>^ zNs1agMJ0xjvJ+#{Lqp0s1C|!E1$i&)^HWI&T&(Xb%r})N`>&S!PET_mJrhEH*0dP1 zn;v@`yr}fLp*Zabmr4Yzqc`tLc)KbR8bZWx^`f#f`R=G_W3NB-XYOQqV0f?5wyF%B z7iJ5Mn{!JD1e5EY?olE@ zIyY^4_d3_9 zz75RaV06-ge9s?+mXVk@{Ba0_;HPwdUI>RLuypgd+S$F&y4ar{sN{Fvn`nJ}NM)H? zSfCd~;FUDqtmX=h#Vn7&TCAB#-5JT_pQ=Fi!%iZQS;{z7ijGrkx3-E%h(am;@ojSh z3tXUlnvIE<7}*~!_=DLSN;5{tE;#!f`BivD1(S`KvcAHaG)Q3 zR;|VR%PPv|rxH#KR&r$s?>B?%1o?N%@W+B0vTpQKE#2H=75Vq*v!+v2|5sj`mw}ayr{pwAe9f(U6Sm8ZAC*PH3Yo4#AordS&E^l=F+BD60Z_5OU!+u5v zaUYaiHyoyE4GEFVTnP{f3HfxHg-`N2W>*GYn_q1xDvE(oso%#0<|v?9uRF0{L!deF zJ7EF4IB*Z%~$=8^pTAGnV1RV>@+x$N1p7rJ1gJbBchJ}iL zx91W4@8BgQBp_>PzPE?9hlhvZI1H~|yfCx1<)Y^=uZh$xZc4i(NmLwjyBRH2diIk< z1}TlGZ$7-Kxvm!X>Jp-6dbHKQu-Mxb*vNfliDbInS7|8WD)*!EfZvd%iL7lC2hS%# z7D6N=$! zdnu8Mlb#zdNy%wu*4b+gYgXgU@?vcZbA8{3A=_kmQFp#E7G{=#qe8VULH@At%bGuAW~+maQ(lS-RqDe06NDap_^ z63BQZllh}h(kT$<-4ytYX77Lx;8!7%H_puudjoyld1r2Ff)GWhgY9;e$Llvn*9pc((nUVG zdjya*M^i<=x-bA=#pqLXzZY__d)*)^8qAvrjo{gR5B(qPGgbQI$I97=5LFhTP2Fm& z3?qv*5;8Ku)SKrhC?hbT<1Z|@W^YH`7M!jI<1o30;v|^?vd3E_!>!o1k$c)sdVb+hSeQA-TjS2x zYJf58{BAKpSF&>9aPZ5Ghl9(}%{b~Vcfa1goMG3faLb{|x}lOliyqe45qSrqP38GB zdSoDo`N8+sRhhN4=6id44SS+ExVZM6cmqF<0{AjMzLO_9B!u~$jULarM`9uXAFCEa zC+ZLH$+cst-Cm0Yo&8}Z;9011J5P%>&WIZck<2}~vn$RT<3=UK`wbtmlzd@q0**Pq zv*d4!Hr{+=Xk;r`R%N?0^HR_T4HJWWxN&$gMIb%oXX&t;S3((AeFNSy z19+gHQ*duE+@WU`EicK+93GU^uOdzS=94r9Oeos>FCtjV(r0=ky{n@`vfzDs#wHFm zj!^e{k0TXTVNp_)DG-tFU10=M2XDZ@Bcxd6>fV53ysjYQvL<6}Ow1i`mZFr0Vlk<4 zmSjZvt;+9~O(VPfA*}S>e@<7jc@rP~k^ZSMTyCIp5v<7qo|h-J+zJp~{JfY|MzNbXdc;{=nvpVL<>|jG{Zh~{%xm0PG>`82CrUpa zQyzCw(N|*AOEjrb_^NUBD(3Q8`h@TH-3m@OtFY;&KFbg$s8!yhxO=_Rb;G)~p#Uo= z(9mhlU$8#&>Kia(DT+i#x^^k)ClZKFh3=>*^kES1dW`>o54p`H?Mg?W`w|lOstpU^ zDs9=dKUMPTb%J?1w`BD6Ru6Z7frRZTEG(?ApSimCm9DIbmA-fzww)5Ug;QgQJ71lU zzB3cc^jXqN`7Mn7%UaJ#RBp#MiK|n5S!+rkYjpS_E%NoiG*l|$1YfB!EN*>s8)lMP z!wOFc#!M({Nn2Rl7<)Cg|Mx%!-SC`AaG>VM$Q@~7LNww;7=fK8N&^4bdA&uj+tt&2 z+5)RIY4fkzXGc`@m%ID}iH-FHhGw3g(~=~%KKCl0wj8!)oSov61b>aO)_v>?cor(z zvWd)TfHxo0MoU}JoIXGEtrnMrpg;c;YZ}@7NsHU`nwqZdUl^wAJ}*yyxJ@2ZmFO(g zzFWeA(Q3VR|LbcTTyAGtYU-I*Ute$U=Bg@3ZS93`q#~W*t=vlKn?uaGx<)M&IKpz>vdZuET1%1yZxcf{jOG9IVRc<<7`B!r3En4$m`RpD3?$v3)WyPYsB1$sH;FG~vQBZOEI%36qO^h+m8|zO~$a0oHCT%o(~z~a{$3){bHOB{Uu&5L6Y*|!V ztK=rCK7FcDF8a@n`ewpZfSKu{1xH6F!n`ZDvoA7zuOp|?{zTA&!6$Y0H+A*~7w0F9 zwtToun2elH|7oi9n5}+LT?KwVi3!vT6-UQ(OiiKkFn??$5Do}H^lhoQN@2IJs18=i66OnV%(NjSRCL?CqVL z?Op7h9h~hI3kFwFQMSj9eaE;4zKhS7@Ka;}0n0E;${eE=6|{qr)@R&oM~Um#^?Uci z8IC^5alru`aP+4$$HgRvGY1Fy#YH6It^3mO@Ko3AXxHTI;?V5k;^ffKZ2QtM@XO*N z5CFS67AL2s+#Yt2#(z^c-{8ndah05$7+xQuy17k*Z$Mw!>gk_V7GD4q9kY^!vy8ri zyS{>kvx>F5n5@3OhK75BmBZwA;O5cR8@vtNw>!8-*RDTcapOGNasAQ*ZhpSgsrBv$ z^^X;_an?|1#tjv5-e`6MEr{rwF$3s7_eDKCOvze1{q?I7IQs+VUzKwW$o9Xxh87no zsDCq2_bxAw@G<}9@-iz=*Xg;)HbUkXTc>O_?Ks zj&Z5>SMLWjK}H(;0HY{P-jMcH5fKO( zGRpJob9;#n8k$5w5&Z9>q8UdsDgg`NLaOpIevz4tn|y-R9p z?&AI6+FOYOA_QnsMzoGQOHEDHy_j{LdNEbLs^1e6OsVa*~S!_lqC4^(!~Jr2jbR$ZNLpnNlCdnl%G#cj!n!k zu5iUlBgDXPsW23eh>Q%2Bs$ulCJy~kcj97UffFX$xwyE|lk|B(y#hh+*}pS#wsL*a z)GSqikFOCZX6$j_lGwMwx-x$rG* zLVvfoakk>@3^j09Lal^I=>&Iv$Mx=3yiw5}-I;PMPaIpn)UCwzA;G#>PEt&Bc< zwd0c|NN@Iu97h&+cfZIR@~p9uQ7qExT;f?d+&o%e-(6qF$J-%%b3pQL<9KtE5renK z%Znd4*4D*=(qjNv`CSwVxw#3s#tB_r*uXCw@QXD^WMu^#;cdgC^{&SYYJYk^_!B(g zrmLhU;dgTC$oo1mvA%6HnHU^w`T2*gUAb>h>;2&&%E4YS0;yDNZEbLEZBO#3j(KH$ zJqK4UHB~J))zi5=%fRp0yPRU(b3V)ATKJgX#&zx;N>ZjsKx6bXkW3JO`R#%T2vTaS zWap~g<(-|=X9!;eJoA!>dPl%vu+#f9)5eC;z;h+7(fUVJ)aB?X7&wBsErfdO-F%k?yOZyWxbg37KgxT_MlHGKLQSigJA&Ohyq04 zmGhsI4D&AJ$ICFEJJAd|u5X0Yhlkby&+bKnpGV<=Iaz6&T9c5{;9t_|4g)@BzIeAm z$ldEYH(@V2G4penJ0&hACLu9KM_HLN>L{2s&uhLtJY=n!A;u$e$`1FaBB;S|*RsVv zgH>S3*XV0W9HP6sJua@p&haw?5Hs0Rg1DcY`3Y_GxeY>pX)UnG;cRknXdR4>N`#M1 z%wb@rZuadXX(-t+nMtqzc6fOBc;|I;=n0GH#P6TOy}g1C8`mv}yFlDt`wjgQh5L@y zvTT~&c^}R-mZEDGdBPwr>Qb|@D@=T}vG>c{yLUSE*`3?x_kaJU2x5W;Q2|WeR)DW` z(EYWh=8IH?oE*l9J_c<_~N>ca<@iC-xZ}3TeD!+Zx+Y$78<@GDfP5sQ|b|hvp+=Fo(ke`N` zl?Alc=T?`{1zj@C*~KLynh={r$V1twZY?Xc92dJ=-KcW~h^}h796Cjlxj8136eLp8 zast7ovlj69^q$HyG+P$PD~yc}GBe2+ff!q>B4BF-Mw6#W6ae5dl7iKJCfQaWo8a=C-+n_BK`ir|OQr{9}jhX~%12r5r~U`JLbV6Y#~1 z=3rNfcfI^JY2w%ulHFyNDnYs)QW?YAB)fW^yT6685c#piD3p~A)IEPAYUB+9K~Z)< zjg3z$g*mY&ay^bxuM%ek@`cZ;1ox;MiTgX0$@a$cDh&2uWzKU3GowogyS^TEWJ={X za7&(Pqz2p_D7CO+s;a6YBi+*sRa8|kuC|)BYGH>%Z%Nw`Y8e`6T?SuRm>d5^x)a41 z=-2Owx+1VfSEeQ4@E=JI`fPb*7hHn$ArTG*raEtKZqD^kuufm(qp*I#%sv+r(-lt@ z)kqrt@s>wM)Oe)>L8ObVLH`5dZh=HpZFP0np${P;-`X%=Dbd@NaTNac{o4Cs51MBKlofNfKunP#X?1k^G~HEVmuWZLdcBtv znfj(vycG%MZ|lvekVi-r(ah+l%Pkb|k`KuOvOa4p6)$iBtr69a-m)18!-bZ6t@lS) z&7r|v;*T?PGlSpR+#e>{7DhIas_YuZ*ea(==Ux8%R;U;iYH5MGF4+%#J!zIN+q(eh ziyDgZ=Dvv>oJLVVbg*syGSc)mm{|Mn-wCnI8{eHOU4A$l@vXHS-k^TS6cI7eCg5Tb z?8e?VU{VbXG;S@MPb|M(`R<)XNJ!|sj_&v?82QQ>SFZsB&2<(rKs3s&3%3Jd?fL8--8|-Zkl2;878Ko0c;FeQXb1jZAFNdjv;ADjuOh)L+ z`Z_7+bCpSY(iq^b@lF-k1ix^Xha|292T*a}Ru=!qQS<`Y2@bCYrmbg^?T}$NL1Gy7 zyWREbxRz1U1BI$3OXZ#;nQYg`HkOuEe-i1obp&&D8*eHdXGZqTwu$vq66Mo7Nm`<{ z?Faveq5Kyylyhp#A|3nwF_bb7oZ(Jb?fCfgwu3(?3+`YP1=Rb4eOVm4R4h~eE?AM~{x0I+{=?W(|HYQ4*ZR7s?!UE?W_am(~(6h6= z@q6K_=;-Z5R~=j~o17U?Rjz8S)oe=LR#K~$mi#dk@ zAZPNlXzMiimk>3SRH@46Zl7vsrF@X`g-6aHdIetaNydz?KxJbw0_} zYGSe#7AaWI%_msBF?DheE3q}xJNE9sBoB9nr0`1lY`v^_u?_y;d*Y?Ws{d~Ic6OZ`bA5SOK{eQ~r)Eo+GQrNo6Gk1-PExDZp|~uN|qa*gdXp zK0gSre$0uB$PON`ZK20m1>hDO;CrV~HE`%vw6tz-Ngk5p(`Y$w*uC6lCe@(4oSf1H zo#sDO^GjsU*87DX=F0c0TPTr{ZWz4phF4aUtY6U47?XInV_cr&I(%!ryO1yd50m|O zHMT<%5>%Qmx6}dyn{`<{-l(bNHy+j5^ix#aFODPP>|KZ6MGI+YC~GrvdYGD;-u{Wz zqLO{bz{v}*mX>)GsYfzcY#S1TUX-YRJ$v!5{rFKZO`7hPuJYkR0ybXfu_!oobt~HB z?;&Hm=dBMd#zP~ia{J@!cSWWP4J)q_q-i+O<~Xb-nXE33b0)(WAnxO31~32b*Nn9r z_I=nqhN(VIKFXV4Ub> zI)$eW8U)I#!2$pJqJk3NlLUFpcRMZ;W+d7=X~ezf$D{J{n^Yb)5*P|x)Gn1i| z&5f^B9K$HUp#D>gnn)*Z4ryWeYM%saELhxN(;35P($Ngd{}ff`>;y&{%zOlqmqWF!i@xt=fq`0CO#tBU^wI&B5M(Nv_;-(k zP_1P4J*UU2UYU%{qK>jQ0gqKvnQk)q#s2k=!hV0Oo-01ynI*dpbWEW;J4wk9?q|p$ z&CSi~&m05(NtW#g)ipKEr>#stTI>{OvZ;Hh)Us*$7|TqAig?i0e(t(-o0*%dV&#++ z=S|H-#bIS;)%z_b*2%+_Y@kwGAtTOv?ORnk{d2VE|E~NdcFsawx0CgS zCWDGmEIz*Z9%7BRLZsqWAhd6lr+d>&*OfnhC|kV-$H?UmNzSXNsj*PHBo?Jc&j=FL z^8}wcMmOCaHM%Z3C(Q&@{RcL z^LGA7sk!$#^k)tc$jv$Wg7&Cx5I1A_JID!yj$=%%>3apfEY=&C|GY}92zXW)R z_}}wI2OUO-^`~43sr&4F-plx^E8a7Fe*WsM1lrf?2_glupkkdyRjan||0V@SA9?-@ z6FIp|^+PFun(!5JhN&a%C#GsuJ4^;4qTG72rO^Q7D6h%P;4aqM`fX!CIUH_1yg6-3 zEWqx*7inPYH!+<+MfG5RzBAe$fD$gi4b)pWAY7hjZDM;#x?ERmy+J|90_Q6X2H3?3 z4fV$JH5=(KQ5+n@KkY-IM}kYloSd|-uDB4zg7~AO(#XiYni>~KVTq-cg|eFJBmqwK zj#C37$~fk`PgfTgDXcs$H|H-A9+vWs4~-%e#57#={@9JLUE7bAmg-y)v9tf&-y?YS zN(Qc(-uIJ{Ho?K*&MZ&KLxm z9=ha1@cG?-Bg$lO4ZZ?0;lria^z-L#u+uzaS4>|i{VG5o3`E5Z695%WlntDNK*Omy zITKex+DkAP-cTC&5r~eYz5eY*Wxfi^+Qe)YGd(2qT3*YMrZ`6OTbr9c1ODzXuWMh& zZSAof8=u1qrpY0Jw89t|3>F{1v5rO084_alH+p{yY7bk5Y_L zLQD49{VE*b1pwSA;-TG#31T-7j2l4I>!S681AM4oxTLhjme#Qs-9Y6GcOQIu&|{}v z>&CrNK)nedGK-7-e|%^)9-%)n#Bal|s;$-WT9yT>Msr0jDk>82yeJUs>iWBvW;Z8< zu7o`3O=lgCVcanzc;TV=Ce%KcU4@NDe@6ta1ghKzGLAYtSGI+WfKD|)K{r5bqtzEg z1To_DusZ5`AEGW6B-(p=)CoMy94aUP>0F(qL|jHxI-wF4ZZHy|uTcYC?zqxS<+MJ% zAf#9IRMUiF0<+4?b@RPI>imH4&=y$ha(`*tdMjI;(b+e;T5l|ajDCtusCVIV zEYKN>x9xdJESMI{^SFo4#u!QXtqXZ?EAi{s0Ly9HvY$UW>DL9*9IU1WL-PzREG$BL zr-nzX&1l)#%>d^XHOf{*e~F$Z;1~<=mX0mfo|W9yz6XctXe4hzKuNdqOh&5j?&x;8 zYftLn!0ORzx*wv!Y^YHv$hf~+`;$ou*tIicRbL`{(+<)B z@hd*?FFtrCG63}EEsqS0j}HwmO-;`B4Y$mDfSRGYI!enEGuj#&N*XHjOZLqrUsi3Y z$T%I0L_NA+jwgO8Dxw3!;TH`xnH2@Ic1R+IB1+yON*Wp}28#VL)$40@KI7)|L`0tH z$jIfi01;r<4hWO?$B|50nwnkWuF`>PyZJ|51RC7AskRMiEH~yC$Q^yEX_5w?wzLgC zmDmjT+Z;vIc<=D9s>G5v)3ZUuH}==vJ1!heh9X)ogCrU;0U_x8oILBY21+G8T{7R` z)#Xv)fupH4DJUptfZaw5XohWpqyu+Dt}P6-w77(eQnBZqV~yPrM=ng%A8fNE#6_bc zdWRU~K1t8|GB^MD5f65jyCa;MppBQNWYOtisC<>{&tjr3smH6HXl%=L1r)U7c@g1J zQOs{W-{Rp(iV_UD^ODQtPXftTIG}t9+3%_4iZLE2=rKtIX;tM}O)ocqa;lT|1MH&+ zqKF70?vjVG7=ZbO9-EIpco-UD;ZG4W=S}bTZESEg%h_5v|2aF$aGc!;#WL{n7Le`t z4vmZ)8Xm?i+7{PJO$h=k{_2B@(=^3By=~!G;@sh}Q00O7b z`EL;d+0@8LfJQZga~NlfM?PsXAAmS?CR>)I>wC5z_R5~EuC2ZOVOf4@e`jWY$qw{I zb$Icu3ATj02;2f zZMkJ&Xbv7)$-^^zyxG=ycvyNu@=MSo(Q0GM*crUfsa#ZVM!%7MF$f3=*&6(=q?$se zijpEeuBxWR>3XCM$O0u#bI>$bzuyM)J$ze4ReyGADIU!URl&5APJ$Ac8fHsN%N>r) zC9qYQ9_x2#Ja=SFrN0ab*;(>DE-9f=;F?UqDJtAAEZQd^n9S=EoS5WFR8z*qzG|Ri z6*`s#ChzM@tWIP<_%EOvncJ6^)!DnVVKFITBY*L%{b;??iQl)alv7Y6YC>Had6 z+=fv3^_Jh4)Co1N+PiYE`{mTD*I+7Idiwp7pX4y0}&~So^@wR}G@y8hdUBvV;v$O^LR_rS#^z;dK{E+vIQ^X?^ zPs7U1g}H51BrUri-zqU0^W?6rg_X7ZH9iSox@&gFq#EX7$=bL#U#r6aBDzwMWl>RB zXE&%%&|dHIU{)z#4x139igpGp%8a`j7fTb9QuRYXvD*Yzq)Ne`f|qjgT3USI*}2)8 zT1#$wjYNQcoJp{2>saKVq-5pgg*e&iNlN-%SI3#L&jEVcAi(aDedpm3Lr0el;-!KZ zxVUfvl3U6i?|6RlD>O8(zne)gpPOZStTGn|f)z((2S<#7n=P&-HxVn4I+s^F$nT7l zs@7~%KL5J?r(%KEp6*pcV|@s^--G)>%sfEw^H12@ROEcK*e9qto~iZj0a|AY;+K|) zk8Bu+hoge{teW{3_x1=bDvKx0_V-i!`-?0r2|q1ol1rsIes>gq`{qsg`3WD%eGgq8 zqTJ<5046b?%Rvu`TDN>dclQ+33Rch`c6WCWkG?-092giX0NQ_&7q-*Hv%RnGNzOeq ztemcX2h@s+qXC`k_ggz=tq0#xFo*&qCSEdXWJu9R#T#ZA4vr>scf4sRH0C);wfysdjwwP`er`A ztcjmXzFrHo#v$29cCQTxlhBPJ zRx5difkgN^;H5y8Nz*DQ=y{y83lph3YFO8Nu7RiC0SQJ6f9G(#IGvQJLd2ICr~6q^ zSzAF-5$M{n2q_WGIebw^5INP?*FH4VwLC({{F{lNpWMT!Zd_wwe05{vd_7vI<$O%0 ztoc%N=l5tkDOrMa0{2h(N_t#eBD!7~*C|U*@#ttr*3xEuTklRG-{|2rID$GJK&o>G z)6!ZlJ(}@s8!S#Fk9K(Sm1C_OAYFUHyad&BbOOYS*!WeQv<>-IGQ2Nm`{JmCE@uoI zT}xh~hrdK4pp?qbSWYmmuY@pB-IizPU4;6zyZ(KCU0~HPr!sjyJAFP9+(`Rmi>d$Y zMbKLTyg&c(OwQXoduHe8QcO+e%`nQ>DuZjQsn5$3Bl4ES#HJ3teygt#bERiTqCbkV znGDX<+Af#WE;ZP%cl$S;XM)%75O3z1RJ4>F=ncy>7n%FJoX3;6@@iaWOCpNhMJs*pYlP#D3vvb`Kewb8qO$_#X6ZQtSD+e?6Fs#5p|rQT_TWbZR7p#l8;_RnD?VRp|cmHqq8sU8Zx{>#*-nW zK03%s_p?BTLvnM7`PS+8H#gyW?awMaDs!WMdq*p3=_YMdTnS~5ER(4mJJy1xgir3y zM#4GDF)HZ|Rf&gV5K-8CG%u3W50Ap!$G3E%in#UltY#ao)J+({>!Lu!n|D2s;c?K; zRKEV}k$%Df=oy?87uQ!p#rJDPuz~(UZhP^FkdX0+U98Sg#DTt0?KJAYKh(JA%8{RZfDrHdIZvH#QKfTi&lSe9p~(x0><)Fpd=`1{9hZQ+dH z@cb%E9(eO+_cypg-=d2kg(czczLVFF0}yNd5Ncc&YfevTD=hq3E@!f9XJ=MSvzgnD zTCcj((tdHYTJ3QQCtAWA$jqsta?+X6J{QCT;wlh&FI{S01#ax_s;VvLOqyMI)aTW- z6c$cxq&t&IjTu)_E!)rEY2gTvUJj#o<1u)DCH9WB*z1H+MJ6si#zVcK#fa)yfOF$X zs;D>@`7TkbHm17%oygQTty_5g!*&|VW;s`Vvi~>(P{NDpt`O#K?(GPcbU9rWm3b|b z1oA#R^Ai20%%6%hRPtfXCJ%${qzH@RFciV1^V!B~BS0MwFOfr0G;@XMuqpu0LjUJk zy1utXyT+MRj?T`SZUYGh*m^5&b&X3;uWFOw`sep(XHNY2c`?u<0^!}nKoI#x0U36e zl>D&rzEvR`vPRWe*TC&e;znHG0FddXk5^&pTo-?9+4bLXe)%%_RJb9;d2F~DD24$} z6E$CIZ`Vf3Z8r>rZOZPRPZ80iSz%!*3r%ZdV_|Etubdq%9UU#bb+X0hFJzOVqw~Y7 zvKt%2TVYo}gau>3B8(YWoHL!=DQ_h_uRL}$H0IFtY22_Y`-BNJT zqL?_wcOUaKbtJs^K}32~XBQXe7Z-1f^2?54JZU1Bi!#BAx4c=Fe=Sl30@9ck?pWFa z13bwP^z;A~QcX%KP@SV4Ps{5#^1k&B>&IhSdU}Z2@`Ir3Jq#}3iHW7~!LMwFd)muu zr$$gd*IIG>6xIpxbAEz{2*0QDG|mQ=4d9IfCh{2Q=x>TZi2B{<+*(?x=!956`hM$) zNWN}%nGY+2WC34!SiX3Fi=46`+hQ|#N&ou`nx`LmAw#BG!i_mb&dJc%z4_jkTR7Piyce7;jZcMuvC4%n#^oR-rK zM&qIKBQ2lm-3^G^#{TEd4GdEB&RmXLo#Ccz=;}FuD4sO({i7%$Cnf(wrzJLaGtAJL z7to-5bswC7k{zz8bN%}ppG~WstJfzy2|*}uPx|rYd0^1F9Yi%#sID`=KJeH>9+Q?i z!&R_o6HZ4ZaCmqi1HbAycqtW&CeyiNmKPQ(-DM2K#3Caj`#U;RGCzli$crs5039%J z_kkr$L2c;g&(flRh%WQ!o}XR>rM>_mUeiu|MLGQVey-WIrr)pixWl#sX`5%O*yZHHQc(qzyh z_r5No#KlD$5sz?u)%-#(m62fs5MhAuKSSo=;_w0$6E&pMXRLuXfwCu(=fx&x?npFdc3jmwOn<@ai z;CvAYRMrd(CFxuXh04-uYNoiR67oz}Am3wv9RV~?#mjmcZf7S(RJmzFEp|FTIRR{a zd3F{Sf%lG={14i&-ZN&Zifr=@X6fVm)V^5O#NFhMq9a;wSmm_c*d84@4R` z#R!)^8cYZG{w+YKf%o-l@NvtnjgBE3Qm6E4RlQ~T5|7_o&W#mW(Fx^Wn)?Yu33CfX z{jubwrRS#@VR$&(D=TX&dXHVE`Sut|(6VLU_uliD8$gyu15dTLGt$!X1J%jrZ?M+Z z+NAu{qN1wnY7DqDI>+P%;4pvxQq;S50jw5!K7E05e}PiB4yUD}(Z=f&9uUq-dk;Yd(ElDIEB~JTu;648%s(4=?H6CYp9@Sfv5JfiXlDOd0G!oG-lNHbgT>1{5x+0;y zdc5+@sNatw>;yMcGZcB;N0tG-fFZq;lkVN;FR{9#2{;c1$Md0OBR~%jAi4uh9cbH( zV$l(9cO}2H;Qsx~KpUQ2=-jZPX_u@ojzA?3XjH z6`J#t`=jU5E8$mD8r>3mMd{**&}22C=IX~bsOf3Gf$cJjws}3 zWu>YW+Rv~s0*Hg%!7-E_R0U><7Z(c^Q<6ft(fkV1djJRqzYw#IAatgtYgX7*;*xE| z3?Cb<#9|s3jnhp4reK}zvS7u0W@%=q2yPZ}Q9$$WU(MSg52}M0u7h)SO|{9Bi@QoEex^R9r@@Gki}* ze|qpPCBL>x-Bki0B>?^6UBn6^*(oe*ogr8({oE<(_UyNYll>uo+B<@S#lK==pq-=t zxdOvn-T(}twzh({qCJG}ac49wZ2{8315e|&@5Tcw02R?6dXUVI&%YNm>Pw;K|Jw^t zopsg455K5B2Fa$qpF#i{e}QH}ApB^gMxFJ^@X?W$_G`rGOdIc>Hx)xuHD;kR6CI*0 zaj~-aYp-|om9nRZsI7MOBXW$CGVV?Xf{%br0GT4eVLA{swQYq_@XJO_7u9NDXXb>9 zDiFwl?#aVLD;@23hX)Z#H9(dK@+C-}fWy(#1JKbNDAYY25)nk-gY9Ux z$u!Y}sabm@nusI=^!4gZULGwrI!ioDy{b7_a^`AZ01w0HU$EngiFV>y%UL$rI!g%$ zlvcSdbJr$q-MTma#3LJ)D%vi)(|GtbWf8Xx2Ja$vn|m291C$uR#;cowW2AGnZ?4nB zZJHhSFE`K$T{sG~LPD@;$orUU3qR8q7FrY)-prBYeWrHeB{KXJn@sNrF%Sjhr0HQ8 z51?yPQK10a<&6ZF*!8V+C2+`(^0#mt_|@_QLE0aHtfOk(6^4EK&HSxb=x46G&r9)x ze-F%(zJeOfZMQc#c0o!wVivJ2&0TOr z5B~bR6KJ@4%|&Y=iaFi}O58o2^)}XsOnh@Wwx9vPusZ;Tsl#PcISa%Ei?Ij94@TKL z5SjRPm#dmdV4GMw`c;MTry_AVNl9RnbI@<>keN4K)o7rKK$e_4T>+^^;Cb z0HjWDPA`iNZcGganoR*>5$Izxt+z#Mqwk6|77lPzI1Z+^UHn3iit|zfr_CcbFE24( zq>&Y?i31yfqQ)xv8O zNTovM+6}QPMFf#it(iX`_&$S{k(v23w?{%^;;XJ%Hh^{IJNDI8n?9==hRWHD=EF)L zSwNNq7%@~f#}suIIG^BFm{N%of=BnUZX+Cg6-rqG>~M7-C3w=C3iBKbzY(*KI~td zhFQpYb^iHWfv%_Dec^7ayY@fheg|TmpP^@Ne&m!fmgQR@!m9zS#wrWhAhDF@? zVos~2pNk0Vp!n{}%lEruD0usPDlaT&jB^|z-6+snSoq85g;clX5bpe`shVxw>zx`g zwUIOyVV2jpZ_U}~mZxm~Ueq#(1{reA9yJG-wYt=BW3!*9WkIZU{-$PBQ zS&W#>1{9B|2}$zi5>iE(oapB46LZqmhZ9rXb93%msjC$}SHunn&N#u2uk31fy~0_f z`xTe#D>v%;a_GVEz3Z4?IJll&?=cAz`~|od`AEx*7g^xDcw|!|A7wvDv!uz&q;VCb z3OzV&$`?JR2sn;ao3A6@HFu5P$E9jDvFSeoiYI_`MT1bgxLFcoV?*gt6K&@K;!?=bk*^6zVH9RaJ1>>V7hyH$Cw&sy1ToZaTwD*U1Lml z$F#BOoS5mJZhnu?_x1DgmzU?9=f1DFulu^**ZX4fJaB4gBzN0UlixnKr80F}IWeJ~ z7;0-X$ap`UZSSH0`+CQ)wB6_u&NQZdebC)S+LIO7#4EJlJhCg`jQTmheR+6PnW>?! zZhm25Zhl^XkI(sUl$O1H&o_Q@jq-WiKS%gtJfgHFPf;*Al6*pAj}#3 zp*%Wx*ruMhw##{Pddg8*tWnx0fdz6CSR?wks_2sQ9r^^_L|WU4xB=iRSGWL1rjD6pF_D#WG>U?56GZcI~bA>0n!3 z8dqZG(Lij+%S#5C%#qCIqea)A9x0BTm(CAuq>+bO-8msDImzjW$JI`GG9+75Gg9xk zzpQc779Vx#5#@ETdIO6tVr4q4QAk~IyCxfts}}c!6qk6thSE>EBSb0kBnbq@oJvky z^+}Bx!-$e*W^?VHhJhfAbH;J5+W$77UdFas3y|bUC5>iiR_vDz*C?H|aVO3(Q-B9g`zii36b4{gFG~oVP4E5PB5YiGkoLBYd?_G#GR_{66g=Mjpy4#W%xT|V zxO>GvTZY%qNt-&%uo;#9nHL=Zv&ixatgI|HV6}mqEQ6d}jcBF>Q#0=$1~zt71h%qb zICy7Lq)wv1$N!!aq$2V9qj_8vt_s?oU)irr!G{+y@>!UIuB6tOl!}75WIR7on3A%pw8Fup0Vq4y?+6< zqfFHI6%OzL9Su+`iHe-nxU6C^Y- zHKh)`JDxT0jeZ@Qi?rqRoin!4&-)#5u!p~&?D;WNT|SNvs8zHE4Q&IoE@1}9({_hUsk-WlN0_@hF?^28s+RZVD?S2+9PMCQe@^?U0!RO)p z4kXw4fM{G=Oepmm*V8|#EBiP@Z7<_^V}P!E&#@Jcgz*EmY0-zPHHrJP_s8Ea*^!EZ z*d&D((addJ(^|4-YBd&6T--J~R{|AE?7oUCmrmjbeZz297H_v(n5w>9c9oK?df%{w zU+*4G9dPzD0{@yI2pHeNyvlrYFYP5n_!1~PL1bov=N(Ml(X6{x^#gewA*%A?dOKd3 z$!M2L*6mc8N>nzTOrTeF18IS@OX6!*Qh+_-7Y9`KV%HnvtQ;A2R^zm*xB#%f;0^%* zCgc|1(eXZ<_NL9@Xe=!KZQI`!AU;Z2{QhC}O-i4iGZ#e&)S{T~I#Jg*6fulyj7~ za1$%OKu=Lq;;4cER9j?#unqsmo|&V-xt4zm!;Y;RyAE|>(^hpkemD0=tvIeY2N7&@ z5Bi`=nhnwnybL7HLyi3~ulVIN3Qf*OWfS-fc1!&1+l!m)m^~#Dew(SkeUTCdwU{O~ zG+Z)5i&$ma9hdbDH#LO{sr?3SZtR9eMv^B%O>Mk=ZFTqoI-U2kKLatTv&GGvc7qU{ zovYu)$LD=OcxbDvwXvS&6A&;guHa-X7flR2w0oB})LYK+zRDb|>_jg&QWKlMli=l2 zCt0o4lJ$Q1r4Vfma!od3{(P792dmL250gK1p5yUmktVo2Klv~<4Qq?y7QLy*HI0n!ClgY*rcpi9Mh z^77)r0T29D4I-aB*%7r|Sr>JRW6Sc2B+FYRh0m;{I8LL*ZoKl=`d)Nr=jipT=4#C!ek+^>u~6;!y>TE%?6fULE^lJa0_hY z*=DwNLI@q?n&wG57~7+rI+~magFj~@>`r&1$Q|3p1H0xl4YfT^woqxDX?e{mth)&Q zVG#YQHT|h*&%u71_3~ay!{Vm2^G?)$fp0al0)mE}$?JOp;u#Tg<)&R8?m}ByiWt-t zq(bDKf>Tvji7D_12uV}oaPg^$3GwiHsili^=+a1Oe|P?YVOjA7XHP<|DZrOG@t483 zn>TL9#`-YNneD`lV7h7y1%JD(hoJ3IK_<(00(`<4Jif#rf