From f9d523e19ea7537e601cbe82c165a39e4dac6390 Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Fri, 10 Aug 2018 17:26:41 -0700 Subject: [PATCH 1/4] Incomplete draft of simple consensus and detailed consensus challenges --- .../consensus-protections.md | 67 +++++++++++++++++++ .../introduction/intro-to-consensus.md | 54 +++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 content/concepts/consensus-network/consensus-protections.md create mode 100644 content/concepts/introduction/intro-to-consensus.md diff --git a/content/concepts/consensus-network/consensus-protections.md b/content/concepts/consensus-network/consensus-protections.md new file mode 100644 index 0000000000..79ae6016b1 --- /dev/null +++ b/content/concepts/consensus-network/consensus-protections.md @@ -0,0 +1,67 @@ +# Consensus Protections Against Attacks and Failure Modes + +The XRP Ledger Consensus Protocol is a _byzantine fault tolerant_ consensus mechanism, which means it's designed to operate even if all kinds of things can go wrong: participants depend on an unreliable open network to communicate, and malicious actors may be attempting to control or interrupt the system at any given time. On top of that, the set of participants in the XRP Ledger Consensus Protocol isn't known in advance and can change over time. + +Confirming transactions in a timely manner while maintaining [the desired properties of the network](intro-to-consensus.html#consensus-protocol-properties) is a complex challenge, and it's impossible to build a perfect system. The XRP Ledger Consensus Protocol is designed to work as well as it can in most situations, and to fail as gracefully as possible in the situations where it can't. + +This page describes some of the types of challenges that the XRP Ledger Consensus Protocol faces and how it handles them. + +## Individual Validators Misbehaving + +_Validators_ are servers who actively contribute to the process of deciding each new ledger version. Validators only have an influence over servers configured to trust them (including indirectly). Consensus can continue even if some validators are misbehaving, including a large variety of failure cases, such as: + +- Being unavailable or overloaded. +- Being partially disconnected from the network, so their messages reach only a subset of participants without delay. +- Intentionally behaving with intent to defraud others or halt the network. +- Behaving maliciously as a result of pressure from outside factors, such as threats from an oppressive government. +- Accidentally sending confusing or malformed messages due to a bug or outdated software. + +In general, consensus can continue without problems as long as only a small percentage (less than about 20%) of trusted validators are misbehaving at a given time. (For the exact percentages and the math behind them, see the latest [Consensus Research](consensus-research.html).) + +If more than about 20% of validators are unreachable or not behaving properly, the network fails to reach a consensus. During this time, new transactions can be tentatively processed, but new ledger versions cannot be validated, so those transactions' final outcomes are not certain. In this situation, it would become immediately obvious that the XRP Ledger is unhealthy, prompting intervention from human participants who can decide whether to wait, or reconfigure their set of trusted validators. + +The only way to confirm invalid transactions—such as those spending money that has already been spent, or otherwise breaking the rules of the network—would be if more than about 80% of trusted validators colluded to confirm those transactions. In other words, a large majority of trusted validators would have to misbehave in the exact same way. With dozens of trusted validators run by different people and businesses in different parts of the world, this would be very difficult to achieve intentionally. + + +## Software Vulnerabilities + +As with any software system, bugs (or intentionally malicious code) in the implementation of the XRP Ledger Consensus Protocol, commonly deployed software packages, or their dependencies, are a problem to be taken seriously. Even bugs that simply cause a server to crash when it sees carefully-crafted inputs can be abused to disrupt the progress of the network. Ripple has a number of precautions in place to address this threat, including: + +- An [open-source code base](https://github.com/ripple/rippled/), so any member of the public can review, compile, and independently test the relevant software. +- A thorough and robust code review process for all changes to the official XRP Ledger repositories. +- Digital signatures from Ripple employees on all releases and official software packages. +- Regularly-commissioned professional reviews for security vulnerabilities and insecurities. +- A [bug bounty program](https://ripple.com/bug-bounty/) that rewards security researchers who responsibly disclose vulnerabilities. + + +## Sybil Attacks + +A _[sybil attack](https://en.wikipedia.org/wiki/Sybil_attack)_ is an attempt to take control of a network using a large number of fake identities. In the XRP Ledger, a sybil attack would take the form of running a large number of validators, then convincing others to trust those validators. This sort of attack is theoretically possible, but would be very difficult to accomplish because human intervention is necessary for validators to become trusted. + +No matter how many validating servers a would-be attacker runs, those servers have no say on what the existing participants consider validated unless those participants choose to trust the attacker's validators. Other servers only listen to the validators they are configured to trust, either through a validator list or explicit configuration. (See [validator overlap requirements](#validator-overlap-requirements) for a summary of how the default validator list works.) + +This trust does not happen automatically, so performing a successful sybil attack would involve the difficult work of convincing targeted humans and businesses to reconfigure their XRP Ledger servers to trust the attacker's validators. Even in the case that one individual entity was fooled into doing so, this would have a minimal impact on others who do not change their configurations. + + +## 51% Attack + +A "51% attack" is an attack on a blockchain system where one party controls more than 50% of all mining or voting power. (Technically, the attack is slightly misnamed because _any_ amount over 50% is enough.) The XRP Ledger is not vulnerable to a 51% attack because it does not use mining in its consensus mechanism. The next closest analogue for the XRP Ledger is a [sybil attack](#sybil-attacks), which would also be difficult to accomplish. + + +## Validator Overlap Requirements + +For all participants in the XRP Ledger to agree on what they consider validated, they must start by choosing a set of trusted validators that are fairly similar to the sets chosen by everyone else. In the worst case, less than about 90% overlap could cause some participants to diverge from each other. For that reason, Ripple publishes a signed list of recommended validators, including trustworthy and well-maintained servers run by the company, industry, and community. + +By default, servers in the network are configured with the URL of Ripple's validator list site, and a cryptographic key that can be used to verify the integrity of lists published to that site. In case the site goes down, the signed updates to the list can also be relayed directly among servers in the XRP Ledger's peer-to-peer network. + +Participants can configure their own list sites or explicitly choose validators to trust on an individual basis, but Ripple does not recommended because doing so could cause you to diverge from the rest of the network and lose money as a result. + +Research is ongoing to design an improved consensus protocol that allow more heterogeneous validator lists. For more information, see the [Consensus Research](consensus-research.html) page. + + +## See Also + +- For an **intro-level overview** of consensus, see [Intro to Consensus](intro-to-consensus.html). +- For a **detailed description** of the consensus protocol, see [Consensus](consensus.html). +- For an explanation of the **design decisions and background** behind the consensus protocol, see [Consensus Principles and Rules](consensus-principles-and-rules.html). +- For **academic research** exploring the properties and limitations of the protocol, see [Consensus Research](consensus-research.html). diff --git a/content/concepts/introduction/intro-to-consensus.md b/content/concepts/introduction/intro-to-consensus.md new file mode 100644 index 0000000000..7c17e6f5d9 --- /dev/null +++ b/content/concepts/introduction/intro-to-consensus.md @@ -0,0 +1,54 @@ +# Introduction to Consensus + +_Consensus_ is the most important property of any decentralized payment system. In traditional centralized payment systems, one authoritative administrator gets the final say in how and when payments occur. Decentralized systems, by definition, don't have an operator to do that. Instead, decentralized systems like the XRP Ledger define a set of rules all participants follow, so every participant can agree on the exact same series of events and their outcome at any point in time. We call this set of rules a _consensus protocol_. + +## Consensus Protocol Properties + +The XRP Ledger uses a consensus protocol unlike any digital asset that came before it. This protocol, known as the XRP Ledger Consensus Protocol, is designed to have the following important properties: + +- Everyone who uses the XRP Ledger can agree on the latest state, and which transactions have occurred in which order. +- All valid transactions are processed without needing a central operator or having a single point of failure. +- The ledger can make progress even if some participants join, leave, or behave inappropriately. +- If too many participants are unreachable or misbehaving, the network fails to make progress rather than diverging or confirming invalid transactions. +- Confirming transactions does not require wasteful or competitive use of resources, unlike most blockchain systems. + +This protocol is still evolving, as is our knowledge of its limits and possible failure cases. For academic research on the protocol itself, see [Consensus Research](consensus-research.html). + +## Background + +Consensus protocols are a solution to the _double-spend problem_: the challenge to prevent someone from successfully spending the same digital money in two places. For a detailed analysis of the double-spend problem, how the XRP Ledger Consensus Protocol solves this problem, and the tradeoffs and limitations involved, see [Consensus Principles and Rules](consensus-principles-and-rules.html). + + +## Ledger History + +The XRP Ledger processes transactions in blocks called "ledger versions", or "ledgers" for short. Each ledger version is numbered with a _ledger index_ and builds on a previous ledger version whose index is one less. This goes all the way back to a starting point called the _genesis ledger_ with ledger index 1. + + + +Each ledger version contains three pieces: + +- The current state of all balances and objects stored in the ledger. +- The set of transactions applied to the previous ledger to result in this one. +- Metadata about the current ledger version, such as its ledger index, a [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) that uniquely identifies its contents, and information on the parent ledger was used as a basis for building this one. + +Like Bitcoin and other blockchain technologies, this forms a public history of all transactions and their results. Unlike most blockchain technologies, each new "block" in the XRP Ledger contains the entirety of the current state, so you don't need to collect the entire history to know what's happening now.[¹](#footnote-1) + +The main job of the XRP Ledger Consensus Protocol is to agree on set of transactions to apply to the previous ledger, apply them in a well-defined order, then confirm that everyone got the same results. When this happens successfully, a ledger version is considered _validated_, and final. From there, the process continues by building the next ledger version. + + +## Trust-Based Validation + +The core principle behind the XRP Ledger's consensus mechanism is that a little trust goes a long way. Each participant in the network chooses a set of _validators_, servers [specifically configured to participate actively in consensus](run-a-rippled-validator.html), run by different parties who are expected to behave honestly most of the time. More importantly, the set of chosen validators should not be likely to collude with one another to break the rules in the exact same way. + +As the network progresses, each server listens to its trusted validators[²](#footnote-2); as long as a large percentage of them agree that a set of transactions should occur and that a given ledger is the result, the server declares a consensus. If they don't agree, validators modify their suggestions to more closely match the other validators they trust, repeating the process in several rounds until they reach a consensus. + +It's OK if a small proportion of validators don't operate properly all the time. As long as fewer than 20% of trusted validators are faulty, consensus can continue unimpeded; and confirming an invalid transaction would require over 80% of trusted validators to collude. (Anywhere in between, and the network simply stops making progress.) + +For a longer exploration of how the XRP Ledger Consensus Protocol responds to various challenges, attacks, and failure cases, see [Consensus Protections Against Attacks and Failure Modes](consensus-protections.html). + + +## Footnotes + +1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Despite proposals that Bitcoin's consensus mechanism could vouch for the latest UTXOs to save new servers the effort of collecting state going back to the beginning of the network, it currently (as of 2018) does not do this. + +2. A server does not need a direct connection to its trusted validators to hear from them. The XRP Ledger peer-to-peer network uses a _gossip protocol_ where servers identify each other by public keys and relay digitally-signed messages from others. From 37cd8ffba3e12839586e5fcfd6f10fc933c3b653 Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Wed, 15 Aug 2018 09:59:26 -0700 Subject: [PATCH 2/4] Simplified consensus intro: add diagrams, move longer file --- .../consensus.md | 0 .../introduction/intro-to-consensus.md | 27 ++++++++++------ dactyl-config.yml | 30 +++++++++++++----- img/anatomy-of-a-ledger-simplified.png | Bin 0 -> 81488 bytes img/consensus-rounds.png | Bin 0 -> 156443 bytes 5 files changed, 40 insertions(+), 17 deletions(-) rename content/concepts/{introduction => consensus-network}/consensus.md (100%) create mode 100644 img/anatomy-of-a-ledger-simplified.png create mode 100644 img/consensus-rounds.png diff --git a/content/concepts/introduction/consensus.md b/content/concepts/consensus-network/consensus.md similarity index 100% rename from content/concepts/introduction/consensus.md rename to content/concepts/consensus-network/consensus.md diff --git a/content/concepts/introduction/intro-to-consensus.md b/content/concepts/introduction/intro-to-consensus.md index 7c17e6f5d9..857a453ce1 100644 --- a/content/concepts/introduction/intro-to-consensus.md +++ b/content/concepts/introduction/intro-to-consensus.md @@ -2,6 +2,7 @@ _Consensus_ is the most important property of any decentralized payment system. In traditional centralized payment systems, one authoritative administrator gets the final say in how and when payments occur. Decentralized systems, by definition, don't have an operator to do that. Instead, decentralized systems like the XRP Ledger define a set of rules all participants follow, so every participant can agree on the exact same series of events and their outcome at any point in time. We call this set of rules a _consensus protocol_. + ## Consensus Protocol Properties The XRP Ledger uses a consensus protocol unlike any digital asset that came before it. This protocol, known as the XRP Ledger Consensus Protocol, is designed to have the following important properties: @@ -16,22 +17,21 @@ This protocol is still evolving, as is our knowledge of its limits and possible ## Background -Consensus protocols are a solution to the _double-spend problem_: the challenge to prevent someone from successfully spending the same digital money in two places. For a detailed analysis of the double-spend problem, how the XRP Ledger Consensus Protocol solves this problem, and the tradeoffs and limitations involved, see [Consensus Principles and Rules](consensus-principles-and-rules.html). +Consensus protocols are a solution to the _double-spend problem_: the challenge to prevent someone from successfully spending the same digital money in two places. The hardest part about this problem is putting transactions in order: without a central authority, it can be difficult to resolve disputes about which transaction comes first when you have two or more mutually-exclusive transactions sent around the same time. For a detailed analysis of the double-spend problem, how the XRP Ledger Consensus Protocol solves this problem, and the tradeoffs and limitations involved, see [Consensus Principles and Rules](consensus-principles-and-rules.html). ## Ledger History -The XRP Ledger processes transactions in blocks called "ledger versions", or "ledgers" for short. Each ledger version is numbered with a _ledger index_ and builds on a previous ledger version whose index is one less. This goes all the way back to a starting point called the _genesis ledger_ with ledger index 1. - - - -Each ledger version contains three pieces: +The XRP Ledger processes transactions in blocks called "ledger versions", or "ledgers" for short. Each ledger version contains three pieces: - The current state of all balances and objects stored in the ledger. - The set of transactions applied to the previous ledger to result in this one. - Metadata about the current ledger version, such as its ledger index, a [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) that uniquely identifies its contents, and information on the parent ledger was used as a basis for building this one. -Like Bitcoin and other blockchain technologies, this forms a public history of all transactions and their results. Unlike most blockchain technologies, each new "block" in the XRP Ledger contains the entirety of the current state, so you don't need to collect the entire history to know what's happening now.[¹](#footnote-1) +[![Figure 1: Anatomy of a ledger version, which includes transactions, state, and metadata](img/anatomy-of-a-ledger-simplified.png)](img/anatomy-of-a-ledger-simplified.png) + + +Each ledger version is numbered with a _ledger index_ and builds on a previous ledger version whose index is one less, going all the way back to a starting point called the _genesis ledger_ with ledger index 1. Like Bitcoin and other blockchain technologies, this forms a public history of all transactions and their results. Unlike most blockchain technologies, each new "block" in the XRP Ledger contains the entirety of the current state, so you don't need to collect the entire history to know what's happening now.[¹](#footnote-1) The main job of the XRP Ledger Consensus Protocol is to agree on set of transactions to apply to the previous ledger, apply them in a well-defined order, then confirm that everyone got the same results. When this happens successfully, a ledger version is considered _validated_, and final. From there, the process continues by building the next ledger version. @@ -40,15 +40,24 @@ The main job of the XRP Ledger Consensus Protocol is to agree on set of transact The core principle behind the XRP Ledger's consensus mechanism is that a little trust goes a long way. Each participant in the network chooses a set of _validators_, servers [specifically configured to participate actively in consensus](run-a-rippled-validator.html), run by different parties who are expected to behave honestly most of the time. More importantly, the set of chosen validators should not be likely to collude with one another to break the rules in the exact same way. -As the network progresses, each server listens to its trusted validators[²](#footnote-2); as long as a large percentage of them agree that a set of transactions should occur and that a given ledger is the result, the server declares a consensus. If they don't agree, validators modify their suggestions to more closely match the other validators they trust, repeating the process in several rounds until they reach a consensus. +As the network progresses, each server listens to its trusted validators[²](#footnote-2); as long as a large enough percentage of them agree that a set of transactions should occur and that a given ledger is the result, the server declares a consensus. If they don't agree, validators modify their proposals to more closely match the other validators they trust, repeating the process in several rounds until they reach a consensus. + +[![Figure 2: Consensus rounds. Validators revise their proposals to match other validators they trust](img/consensus-rounds.png)](img/consensus-rounds.png) It's OK if a small proportion of validators don't operate properly all the time. As long as fewer than 20% of trusted validators are faulty, consensus can continue unimpeded; and confirming an invalid transaction would require over 80% of trusted validators to collude. (Anywhere in between, and the network simply stops making progress.) For a longer exploration of how the XRP Ledger Consensus Protocol responds to various challenges, attacks, and failure cases, see [Consensus Protections Against Attacks and Failure Modes](consensus-protections.html). +## See Also + +- [Consensus Network Concepts](consensus-network.html) for several articles describing the mechanics of the XRP Ledger Consensus Protocol in greater depth. +- + +---- + ## Footnotes -1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Despite proposals that Bitcoin's consensus mechanism could vouch for the latest UTXOs to save new servers the effort of collecting state going back to the beginning of the network, it currently (as of 2018) does not do this. +1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Unlike the XRP Ledger, a Bitcoin server must download the entire transaction history to know the full set of UTXOs and process new transactions. Currently (as of 2018), there have been some proposals to modify Bitcoin's consensus mechanism to periodically summarize the latest UTXOs so new servers would not need to do this. 2. A server does not need a direct connection to its trusted validators to hear from them. The XRP Ledger peer-to-peer network uses a _gossip protocol_ where servers identify each other by public keys and relay digitally-signed messages from others. diff --git a/dactyl-config.yml b/dactyl-config.yml index 54a5939cda..ae038719a0 100644 --- a/dactyl-config.yml +++ b/dactyl-config.yml @@ -105,12 +105,12 @@ pages: - local #TODO: DOC-1503: replace this with a more concise intro to consensus - - md: concepts/introduction/consensus.md - html: consensus.html + - md: concepts/introduction/intro-to-consensus.md + html: intro-to-consensus.html funnel: Docs doc_type: Concepts category: Introduction - blurb: Understand the role of consensus in the XRP Ledger. + blurb: Develop a basic understanding of the XRP Ledger's consensus mechanism. targets: - local @@ -435,14 +435,12 @@ pages: targets: - local - # TODO: validators & UNLs - - - md: concepts/consensus-network/amendments.md - html: amendments.html + - md: concepts/consensus-network/consensus.md + html: consensus.html funnel: Docs doc_type: Concepts category: Consensus Network - blurb: Amendments represent new features or other changes to transaction processing. Validators coordinate through consensus to apply these upgrades to the XRP Ledger in an orderly fashion. + blurb: Understand the role of consensus in the XRP Ledger. targets: - local @@ -455,6 +453,22 @@ pages: targets: - local + - md: concepts/consensus-network/consensus-protections.md + html: consensus-protections.html + funnel: Docs + doc_type: Concepts + category: Consensus Network + blurb: Learn how the XRP Ledger Consensus Protocol is protected against various problems and attacks that may occur in a decentralized financial system. + + - md: concepts/consensus-network/amendments.md + html: amendments.html + funnel: Docs + doc_type: Concepts + category: Consensus Network + blurb: Amendments represent new features or other changes to transaction processing. Validators coordinate through consensus to apply these upgrades to the XRP Ledger in an orderly fashion. + targets: + - local + - md: concepts/consensus-network/fee-voting.md html: fee-voting.html funnel: Docs diff --git a/img/anatomy-of-a-ledger-simplified.png b/img/anatomy-of-a-ledger-simplified.png new file mode 100644 index 0000000000000000000000000000000000000000..4b9bb662ca00ee20a484403c1b7d921354ddeba0 GIT binary patch literal 81488 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%0DNKfW}?^Subqj}k0ZxZx`Tjss{7 z%?2~;A!3{!?FrX<@SN`_!Xe3@1PMYs)&>UeLg`f-Iy-TI__C+3uK}$6IuX%jO-)U9i;?RPalK1RxnlX9(dp^w zA^VXa=ZzR{a7vL3O~ws_02)HrOwRB08kp~qOplEJ77Fmjdxfq7^guCM1Vp_@`4W^3 zzy)i2{KxX*#fuVSwco#gpQBZM37`t3NxpS;b^MR6uz!K9iB9F)2gtkTk4KrDU0pAr zDDK~9v7W55Xt{`if%e0R*(4Q02Ko=DUv%)K{|$XWr-!@&$W(3jR+Qg+dFjEXI&J=X z5@;YSB$S+sOD=daSYAjN5XE7B3G#ChF|ipiGZWy_EGm8q?6_#iZoPvi?1~k@f+qw* zd|YV3_o+N|=FtCsrL3Z22I%%b1O|%v;yp+<=dhl<6H2Fy{;3zUX>^o#j0YPVJ2`h^ ze4P13$1U*ARNc3?>FisaUu^80=p4f*(Y2$L7l!x1?XmJT6n=5c?ieP(ZlLXqm?9vTI_h$GL0Glik@GW;bS_}crLu4e1m8=KKnyJhG)s`QYd{|6+?%ok_!8h)Tt}ifZPv*<4 zRmxPNU0$uiSEwC;Xp8)EI9JyPLbagB$p=WgjooPShL_5YSs_ zEEmo1j0X|Pq&E=*k^$slAqAN?&w+zUK}&lT7;3-6KVoXXKkI|q2KB?kD%93e1&*hX zjSch4a4yr@c`VVw!U9rMOxAkprtkSeH|>+B%N4|40K0x=0pc9YoSb5IcC5fE9J3a# zQEc`^SC<@R1Mb`{w>Mjp>x!2UztiU9QNI+qI6+ne)<__Pkla<)v7T{YT9#kEiHw>4trg)ePvt@P;T>4fg->e_VnZQuFCu7# zPfc%Z#I13I1_Ugr(z;W|vy`6Xr#C-{P>hU?T{sxmS5?12qHPmz))P}w1uvxr&soJjkv;b)%(Kb zYZ5IByVpCQs5O8U?;D~9GIzC7D^e&&9%|n=fAr@YkmoZ!R4+gV1yC?Hf8_+^G)Btp zsZr0NB4K7@Yu|S_8Z5Qe1vL{i7|N|{3#CtqI|of5B)?_QD5~=#pif>!e+;a>y}%W0 zdX0~d4;~Oua|~eFUg}A>0D&7T6iF@p{~;)CgPnZ1`3^BLnFe!a-Mwtwzno+TS?oBh z52*n5&*T*ggw%w^<%j~xetE}`JBODq=`~nOeFpmO6`EaA=#=D@mioMT15Occ#s}z{ zrH-ZcH>Sv;NMUAXehduy`F8V?=~;*t4r#hhb;bCeI@W}4i2@o5u&_e^s(3HkU-o670~e+qdfn2JnIX`vQvHY~V_kYHruQ zfcsM#{D%5^G|&Wi4{_uz29|t*;Zw+qgjH3Ez!8c$IdO|Y2&Gj_mB@vP3Q5iBlry0? zxQHZ<&CSg{LqlS4(Jd%^P3vQz>c{y9Qz-<(2rTCs|9hB|0gTRGxusP_&580FcXZ?W z{WSkIs~JAr*oKM5o2w-oK5ANVVVT?E_N_-AAg;yF z{POpR#bRkefe@StJxj{~C^3xrUcgbvD=C486Ob=98?`y{@kh4~vNLJ0wxhO-yLm zbYx^?j*8hhIluBix&A;+Q`7j^TeLO!!Su|`TR^FhoE%bqQ3nThh$MQDT|g249J0pi zm_|}mAW8Pl$LBIgQhBo)!CSJ}I5>!pFDozC1Cb)+X(uWiYtLG#C@4a2N?`8nVgu}V zw6IIcb`zN-{!>S&loP)5NY+2H(ubO=^9+k2iv9h>=mWZTh3i(hvCrE!Jd+&Rkcm_Y zBOYXLVb(!^XzueZu7~HftZ_tvi#Zan{D)znSG*)Qc%ASeD-?mLQCY{7f+w=tWwl#Wh~=FwRHBs7h-&n@nZN~rQ7T^{%Rv~3$o74%c@Gt(UZ;cm)zy!N>Od2@u9 zw*iVlfNY>lr$>b6R@7jLr?CHJTM}Y*$Ir`$h}A`#zUxC|kd&rms)Tmv~X z$mFkIzfi8OuH)6NM38ZN*VNQV7MPfr)B$b+K;se!8`R{0FjeBN20eWig`|Xt2<1QY ziXs>p!+_cSMcx;+?`{e;%xS)-5thy7s41E}i0z_FJ*eFx+Nq; zVsdY6f9oK^I>!K-J`D<9+4e8Vczu7QhikRqrw#Flw1J8!v(2x^(vj>}JEOQ%oe9m& z&B5~|8MX!=R;WOw;*y<-c?`I}!9NWALoyWd(?@H^x};&j!G4y834q41^wujor)EVUA3T7-7U#r^x<25sfY^ zP6a?F`((}pU^|DV*`Eg|lZ>yE-PXS7J6AsGioK8SCU}}O7NqLqh+xnXE{2zI60`X|OK;A0`FAzB($wVs>? zchq#LP0UaU`wt&C!IFkiahLPKE|1ler&heVaxbqBvK}=u|IF<47oh(6)z>TExSyU( z!}vP-%~pB|^MG%6y0x32?}txBLt@M{RR^n&QRC6y)rdiNve;7V8bnZL1MkP@*Pq3| zz1d1<(Y@Dzf95NZFB{A63%J=mT3>5WBvIJ<{@=?JR#W+fURE3hwu^enej=FQq2ksq zZ%=64&w`Od^kTo(ENFdNOt@Cb+e1rrW;4Sd{)Xu;^OZD4E&72wIqN}wMUGuCAr82> zOu~Zv_kFe-1c3l}K}r5v*W(Za5H@%r4eD2mze6g}wNf0oHWnY0!0pkjj^;Zj;C6He zf*QU{EcB-~4!k`Q;)kAEJ;A}c%b^Fk!w+hd#_0$H^0rlz#&B#OS*J{i|g3^y+MGRaGOs--^(8Jg~Ozz76&{B6ks%ij# zgBh{fWbO%r1*xCP3wYgDC?+ra&=@kd*sJ-c|7I}i>KVM3VB-S^{=EkKLCK){^ht6WQBAR!%4O1SWNe(qz)EAO9Dh(_ zR*K}+9U*v!Bq1k9WvLwTSG~)A=+E4#@KW^JbCT2w4ZjL4RL;yG?>f*J=14!er^o&B zh*b<{CFRrM%R9Uon}njGV(keW-cORcB$A^k?70JjaHSG|VH zvz`(}iWF0vEgEV9FE+QqVd873E7Terjzr_4eKXtu_f684z#9 z0Bz8ZFV{w)^)=_D4HY!>zq}v>P*71_f+8BJPM{NjnZUg7ZVTATcaVPDT%X{B*no5f zZn2wOhhAs00W{FAf{j}b~|Sv)})sA91RL@qrhA!(IG=@-kNPuNR_@FVGqfJ zT9L_(p_CRtE1>7aryRVusScHx&VqxKlJ;g#-3>Jia?AxptQF$O%c8A|d z{zV6XLny;tyzYk|TUuJA9&Mz_#eJp!*wWOb2O7LKfB+s_el53OoC$h#RtGTZyx$=_ zSPKMd7LeD~s&Kg49>ydNvNavyP#a7GXpvV`6vD%Z=eya?RQntNX}kS$=)xg=JjgJi zT>Hu=2a$>TKf`})?jJw=k_sj*Z%x)-hC$eqqhEJuDj=?utP6O@#*97Il`E~Y=ik|D zgyBz2={pl08Qd9MW1s;!~@*ggiEzL~^-M#(c9L|Ob3qK*#gL=7EFb~D5x#(cl z|4m{cZ6*bWIB<)~M_WPrvnbVlDI6)$M{x^%U+ zUIn;L49eL^F6%(s+2#bLjAxr$TlL;JB-aTEFF{^%aCG#d^7t4U?zdR~*!Bybu)XN$f#a|{CJA z*{}U-A_d@%!-E4809X-S%K7#698d-oW2)MGYgN6c0veS|W7f5yh^(O&*OXf!F-PWP zTpIYFm8sfVsD=|j{A+2gbV>!<=^%Af1T8>OF|if+45B5QDjo4`odZC0M4(KZ%vl8V zu@vBoid^>07}N_ysAZ#jE|a^(r>Cd0F1j5|`@oic1t>5VaPig8;$#YXdI?Yym4r1Z}Z*$(8>wO`*d!Wo{7b#V0eqJq&#}0zPb`E zEG|n!=khL8G1RDY<&M@Quj5KGi$SwQFtjz3zyPzL5AYyJnUb4Zjj8seplLSF<0u2V zoqM3zOiMu_w6~&tAb<#i;*jzxff6F11qE}nvq?;~MJGFq^z>3pH3y04=;&?O`5-x_ zbGn!7Ik?=PR%|;fwzn}=J2wK>N%Pd@>~Ik@qBOP-Kp`{Lhs;F+zIqsdOoH3DGmsq$ zb^!4-~J1D+ti-O`V^qo}ca4N|BL(MCPQ& zu_ZJM%mHMQl#^5SCuE@1E~B4pX%P?Jg%kAkP+)5z${JBl-rn9uw0mm+z{AYaMWIxQ zIHxYchEs@&Hf=`|815|o#4nW6^qkVnvbR*vR*2lFx{?wtmpfR#T4FI=5|ghYYiN4H zUaPTRcYKj);BXh4o|>**-sGF2a{Ga)2Wy1I{=(Z`amQ=&v89tPS>p-7UEcTO^Zh+o zxuwdD8v5IQx(@9OrAzCT8(%5cCaWvQ%}dP&C1Hfa$a^Lj-Y>Tf880R!B2wKh`)Q#f zB=nXt0~+Xr!>(XLhzR!z=t8PO4i&LebG*)Xy4i>esa!~tGsx;mwgyQVbKJs?1gUDu zWssq!XTuLe zYyw(f6iSwoUEfPKR?s|bk@(S|>W=a0L)GEPJ-)F5jijQJx9BoEF=@GiXHo%OY!T9t z+-yB!8Ew2Tw~HuLzV)-o38*CPJnKqpf8^jB@GP|0aGtmN&v-ns>f-m`qiNZEe@1AO z)rZo%o{&aJ(+S2=D8BHPR=>@0q%Ec4J;k-Fcs zTRS@$_MHHFYn!-O0CJCJ{iy+mlSFss-gHrVvrH z+0CIxqYNWkAht>if@*VH5YFg9)Hayi$>xw`8BrOAZKDI-w$iw&R78Xtr23wEV&^l> z&&(tuLVKlC9{mvOLc_w075bm`l1^}q+X%M?G1Zj#uaaX*eWgtLwNs;iQD$jhZ4R~fXc72aLq*GjUt(9TxSP%|vjx&5c8;^m6k zntel9&d}%CG>h=eZ%+m9xfFQnIy;rA9!Jv_F4EP;*Li20$w#f+`O^ArOVQnuXax^h z!@cl=LPLJS+!?kseLE3;ouOH3wK7(k3zbbgbfZ@$T{ntHJ{A=H z{%zs){yhyZuLdNxiY`awaUW<#PcPCHJy?R1*e=49Rh74+Z%n5Ua? zS2!})+i`w*IRgYg&0w|w=}oKTXk{RZk-zHR5Q92m z1*9xdVHZ$k4gWkj-kh}@s4rL}=H^K$bI(0gviB|tC!`*F zt5o;+1uORBUnk5c)pae=SPi141bSl*PFdxl)Nt+53drJqI~x}diRWnKmK_)%KmT3s zzdQa5&1@_+R6B0pOf|$wviU+j-N}@vXqv3#yyHe?MW#+viJfJyWKL|Xo#m)B<2upg zZ`)PGvp=P^%ivmy(v5%S>Alkd_0kvt*Xf&2V6wn$I435O(~|Bf zug6JQlf8Dw6y$uMW=s z$`E?55EN*a8}53*Y9p%i+1pyE*Yp?OA-vespQ0mQl$r(f;dMWt=XQ$_t5Vx*wumx# zIhGCf&Jm@LUuYiZGU2WnYQET^{Vf@P6}K^Sh7>%Y~1 zlBpbHK*MfUAh+h)YTo{wX27BL@Ti-bBdhC)`oj1ff|Ii->@m*PJXas-2qT}bjAUeX ztE0kuxs^J5d=5(0*M>9Bib<7oPmAp`bgQ|3FcNhO>_A<4FYcDli3Q5BzhbxM~4y!sILq&c~UA= zY^Usgs>)%siY6u}&xP#Q6lU-=s$Ghq!b%C#ad`?5z*i7t9gM|A**F{Q$RI1rY!rB! z$-&6Mc2_z=ohLMhC8FcV@vFN_WjmXm*yD(xi7;w``%*PKgk!V{>L3UZc{?w@&5`fV zchiZl71p0rNqhpMd-}`4hl5+yejUwrICRLSsJJ8%9e|aidp1TSwAnwWp3q#&2QBSXHIQ3(_7Kh zfT|=S>lus>ild0ydx!iu8B7qR4eNSpLu}%8-cI&7*%E)+2S1$O*w8KL>h6|PS64Ti zs;P!LmBD+4V7VvZT{2c&^iyf+qBAU-mL{uBa5b#TjA4kzY%-SnEC}z$4BC%7^vk$_ zrZNE;8KPEe`u)R=;N+)Ys7#?|Q1KK*)y?}NoR)RU>rO(6gbbRid5hg`U7ugsIHj0> z{ibES59d=K_s&q;o+iCE+u*BMJG-6VAwT-6n%e0nxCcQSs^KGwkE#H?!9!uaLxH|N zuPH3SdaSkZbdYD7>*0EyLz(*f;k+n=(hBtko%38_TlC2nY!*$!uj=csCh5ChiLDZE z$QSSFe*3C>noQMQoq4Hr+_nj)j@}O1&B5eT4vL4$Oc*L2g|^cTUeJtx9qYFJ)W5P4 z1_pMQ)8fAF+F4JXwU9gq`OsiS3x4&<&B^D?A;-;Ah^+ZD;{qru?AYdksS91w9C}IR5u)UqHtYMaZ$f`H?)aQ5jk3Kk7UhkQ*HxIDSGam`StR0s%k|15{wE0O# z_pIKUB=l@zQPRU8oi*+B;cWe>o$0s;4!MU`=Q)px&3wyCMZdSWkMg-HQ16EEU7a=%FF8Lu-D{`wS?Vk06sDfEM#@ z>`PE|NKCo!$3U6_b1zwl%y^Ej%G16m>zWL(8rlaBL=ih6(sfIKq&5rWtw#%ugU)v1 z&Lx6#$`^=Fm*qSQ+U(I$jGq6jLLcUjDpFjD#9PvplDx^n+?$awWj-q zH0jv{@6@lQD`h_{zUp;vv}x9;VQ3CXQGKDzINRgO)H|mhT*{}OA5B~*APn5@;@dER z0pPao?qNV@n4Th%);ezaF4lOQ79;W?!As2Rkj~1+w%0_Y8^Yt!Li!5HNI|K05C8$X z35kLV-=So=ZH-g3VZ2-q#b!gRx z3sFX0w*}qG5Upw0aHtmlC_aE%y&rnLyT1#&5#jA_!DEYvSr|7XW_$5b@N`$vziOlQ zyaq0BZ#hw+T-=KRzLPdOD)5JqUx+{`TZ9OZVWco5Nos0bVvvFdIfXmvbuDkrHqa5L-Ll#&8w` zkYdY(K?ynmfokbNKOZ0Q*3I(W;nPG-t8!78$qmcR&4pO#F!TK?h^C7m`-W8NXcsPp zC>4ir!eAAk!7_k#&~YiwHU~(>mcr&61y0y^3m~x*0DvO!lSmc=vf@Y-C3F4Ff*cB! zWwy&GEgr3o`LzZl2xxSFyp?^wqi^DEUZ(KR{T9`5g>%}}`2xvCyFpicchB;P3^{%y}X=NYblB9&}ENhgS1Wr6+ zv4NsRV1GfpqFmG1%jH~aaW#UqFQn4p^ESmod&n1trVb(+~Akl!E$u?h#ArO!u@a-Uo=N!V~K_U=!biM)Ou#zZ;|8SmGnZA9lp4e zxNR)VJETpv9WM|~h=HKVXOQr<-6E$(vb@8g%N5Pk(lW80F$s`7Jtp{DZpJ_J7D}Qz zes3~We_tct%0Fo~WOX-!(n~bwnaOv|7=HJmUfZ@}{RzUgpPmvojW4x5r*UwIw(H!) zRdf;iO4Wr8FfgV}_>K6v0ro>5Mq3B`W40*e>xJqW=T4f-Q*KnVpM~u#Cxv9hfeFva zClek#*x$z|NfGv5>&Ab#P>+@9Kt(GW%&sREj~O6#nYv)N9ozGEfG8au-Phr7cg0)s z<&~7aJ)Nu%PKNKn@L_Vap^)-j3??YBiJ*k^cWtzUZK&S&VfIh_q;TzH%BPUbISL9i z*8BdRn|XYaR2p)&ck4DTxl;Ae@Qh!WT&NW-RRlkiTP8?t3W&WJv>>n0Z{>A;pFLWbABR=>6 z+?&zlZa6pFWk19SN9X&hXGMD<}7ujT!R}0w^tSx=FMN! zy=4so{oXb{n&T7shftQ6m9tz2Ysy3WYkoAtDFCq^cIzhE zw`RPQRT}a#3;2Z@bk2JJF(gzkVGnpXWYF|J&y%qc`?DMU(c+^nD6$=swLEpVE^lEB zTY;_y5&gWIOL+^BJ!fj?hp9Ts%0yt{v;}Cz&z0&bH8V|RE)85AH1AglR;ry1Ai6YT zWpzy!$mVSv^*~1eg~FOw27rJW->mIUJD<}Utwk#xseo-}!z?u(Uh!SCV$z%Hk#jc_ z-=Yh9wIn5S(XIC=@KMpV8?vgFt7jx-+4uFa&68Io_i@aoX$&oEUF|66X^S9FpHt|j zH$S>akVe_M*34*j)}3#*)wEAU2;AqKlt=~R_xIdAR8q=T7@e6nci8-4%lCi|Q9tiL z5z5lya(?;2ZfAS#(~rLVFKGn%`r0Yx;2N4`_6p_V?H=mnt6aXOdSjjkOeRLL znvO_Zc`=&XQ4A|lMcI7qeZ(6&Iy(zTS>=yDxOB5=`I5vu(meHrMs1y+k0U;UIl^+@<|(fW5tw$4biMN_nQ)U7mm5JbUCK zbx4v3m|UiJkU+-Jm(zjmsHXnG&Pp`ymbplm;UWRAMDEk|f7+4{G-k?SxK^B;~$nE?SxW zIis#<=F*b!ITzj2C@E0~mRXdNoVz$!BC70}^_LXLgoBTx0cl4osuUrnB-6DWR*p#v{YJ~Cn1wAj^WVl z2>l=4-a4$xuKOCrRul{b1w;&5Lg_|CLAtw??(Q}a0qJh(28m6V(k|KQ5yfM7g zqub-%;}~SmunjyjjZgD!995;B}$srafKM?9M;)p=Q4GakZz2ROjllVf&@+R z6RkXtfOc|c$9#`~(>(_3(i~4bOdACZLVJlU;cx{ifDvdJp2&=UjWJ@PY;WkX783jG zZ!AmFp&P{$3wNU>8^fq<=?FcHX7){nEqA`2mOTEb&A?jeA6gbf0{s|?AvEGe?ZmO+|Hi5m~Ck6Dy1nLi7PkD^nhqcdUguD3QJT+ zm;^HQEk*wQc5I5=D{tA~Pcu+V;ysQLt0r|z^m2#ys9RR7qDtG95ho zye5=D1Xk{Q@DrCQ?yX&j41f6mFL0VeewNEo^j&iEfYRnYjFloj45NxO*i?o69eI8( zSVPup-(@mJ)KH7K=w9LMLnS;Tf4>J=X7!RS*QC-R6bfpQzcV}Uvy|9}UxVAh*#jAn zKjoM0NCNl)M=31Z`O{Z(0n^vJ*e@#B9(a00EK?e75zCrfV%_i{M!0+5XH0q}u9z6# zKqk>-EV`ryMvu#-bAnq9=o-017~jM%`pBtILZ!2ULR5d^o@{2CWp*aDgr!Fgv%@8x z%<)sn7q?OLl{B1lUg^rl|2n~mg#EW(UjVh#?A~RX{K0LK{jX$9G-Ky)y*1v;RM1~U zRmxsj5uNZoIRj)2LKl+6-lYiS7A0eKin=C_586GFTFC#DGOU z+cnM9UIHVxHM;aYKl$vUg%^Ove3m*ZYYd+lSQ9W&vK@QarkG*g*t_gl*&wFVt?^DUae*3Zgc=voLGG>DQJ`>)`cZz#2tNlPmFWlf zo{FSe4O;ypdaf5FxfbkC#XW;FGq?BWapfVa4hKh=&O*M9|-w_sjKdnx50Xf zQF%ypFlznxsyk(CSZPsP4`R?&WOshxXV8ivqavR!gSnR8adv4XR0YstHv}ZyRjqD=uEvryT}u&h@f;G{YeO&3Z{q&oNx(hi__Y7) z_(k16TwX$Wk=4&EM+o$fye=&>3mBGp=4R6b_l+jsf@L|E#!nFXWcqOC6Qk_(isHO8=nkB!$<*Ooe{KHD5GyEeD%1O zo+j?#%T)NSgUr;D9+opIUhJ5=64hP6ilkCm!ZTDW@@EvjDV=Or1OJAEzkL3)DZBlg zKt)N$<$8E{Of$SlX|mL3tnDtst5fioXnRqFry4UTRV~*H&mU!|oxu~04+ji6uTn*- z?!p0~EDBeu)e73gp((V7u>ix7oIY-YZK1sEizXTUAh};++DZx&Qi5dJ*%%4ZU3ws8 z$L9#o?&1vJ;48mGce+aiW_%oQTx!DeORXv*ufQa{%$qs*vxtYUnZqhpLH$z{AYK*z zYlld2k$;t7uz=PmP1UtB_@iG3=IYv@$6_R zGD+(yhK-yk``}Q=tEmNr^<$=(3a&RXN81=|N#rpR_^0%15%KC$Y2rM$`S?;K0_waT5x^`$`zZiC!r7m3r8DGk_Bs;% ztolJ-yGWkb1ITL=inH5;yhIZ@FA$NJRjKDpKq8>v8H zjt=C3*hI00JPUsUIXoGhGst8!7<)U57&*hWlc%_k_zM~gCrPWN|44)e*iLN39u z!Y+CZKPKkdz3KJ0cuMLTN$wVatT3S&{}`zG#&fffh=;atUK=%SFSb0v#`DsA{GU9H zDIgWxs6kOEdjy?C+AtxgN0IvQ)6KXhcBFz!Gfw$(PkwN1NW@c^NtB34kGp$XJ_^BJ za_2ovIcA%wqTuWijddIF8BaP?e#|oh{?rR|?vgk@gq&6qf-+gwub&C3jQ*w|dnw0W zp)-I-z!^R6@>VlUNXxbr9oi&Q10mX$Na6Sac_2L`l_nSV9SlEQ9D;k5HmUsyClUG`s!Na_6Ua^SlTbSAl5_g)bDG zYV~h}9cHPs@;iy)61o2gE<;kF>AFObX(3;!>E@I^wP>IZ3{Fy8nBshRbLv_A`9*U6 zFwP3P^j_nhto|=h#v#V@P|!(dZDOL!^2!ttz)h;Kk6|<#lAkV#NtSlduE^YX5^PnC)FG`R<*u)NpKkj|$fr66eJy$wdGYgxekk#WNWG0iP6^T}x+(8jXnm zWHV$=$!z*O*uI9vJ&;o7LvSxpP-mTNB4KmNu#(dvKIgrpmh9+|V`@zve|VvetJl4t zQ-@ej{T+u6d{{Q#e~D25Nsax4XHTO$1z;9da+?l!Hw9E^`J~h;(Dce)w{7k<=!`D1 zf%op;ugI6NP7&R_DXk^rjd4#t{3YElc*7@VVb*s6sq?CE&VtQr;B;h5q1z@o(~`bj z%pg7_VxBjUaf9xnfp1C%+)mqT)G0m1=Vhi}5SIMlImnbqH{U(S(=sB+sWD$YJ2lb} zsIfMm%k&-`; zbfdC9LifHYGJHFrucm|w$yf$aS*8=+xUTO8lh4N@@p&$!L|8N>*;1G!KvL4TT1R8w zlSlWGiw#I_hXVso)eH1TCh#2RAY{=Y>N~c+<@lQE3nGMO(Vb{1sVsiN4|fhFcs}t2 z&y!a_d_iVN>=h-g0-twGZWD^S2`czor!N8QZY&iy(U1ZBCYt~2hvnfh`XNXkrtq;| z;sq;R2%(D0eI(FRciMcGVTN!ZRpRIOAQcs{sB#8?{6nmLd$LIXODO8~35p0yRvo=h zR~9W1>rkVWpKZOuKZq+`jegjqoN03VxyP&hR?{0T$yPePoR8)F1^^)r~MA zlJqSrRlU}vhqX(C+Clon$w>nmlA`*ULrnEc1q*i$pTSF5IbpE1VP<*;zOW+Rj-aSJl`b2T!>Fk{e3z*x0h9ZvE?9Dg~_wFIr;VXl%x8{5&BB82*W^K&-1aOa(*_ria-!7gy5b)27?M37Q?~Hr~iq7w_ake@N^WUdFS&OeP_bo1 zHgq;wD(2gd{Z@#=&wnDJ?Jt46*8*ryYZ{n^k_r}a<=(Wj@UnEaB)|nLY=Ny^3qnAe zu$LROZNB1OU=)xVHSZ~V&JKow5RnXhQ;udgFfm~Y_on2fHkxNDRrXM~Be+2BJOGm- zBRE1(Sw!fZ5 z8=xqwa!-4BIHki;NN)J=@zxhJo?v4SWEGaO!}5(qB{Mx#FCN4rjmgoKjUy;41|4V4 z*z8|BRMsx z41MKaz09am9oVPcJ_xxS>xMhJYDtNLe!13_)W16Urq2Y$JMiyY&*=m$3Xw=gF=A(W z&ZEv_^P@9#;J$;5+I+)gVUI&i{&=ck8LkzKRIDpPsJqvh%F{M_B;0Cqv%)c6bjkwn}OlB3N!tX z<#y@`&24z$S8rFWiWCDe{V1YR13_?Z+FLP|ZvkI+#^S=UUDD3LU6Ds|NeP+G!Y+a; zp&zW@deInxbdJ^|NmPC($h-e&Zgs3Z_{PkNz+IDf{~NNDI-4BuE*jeZ5wbk{CNuU~ z;5>Vsd^T&(UXDvGu(2Yq7PNqKX;sbb?0Dsp-nPFb#K#Bkx_F(R{+kgS{m#-IY3jHO@1Tu)RL?{pFOWa~x3l{H^pgMoI=H}j&GLF#V|Gff(ZiDB<-W2|9yBMQ;Er0b!K__ez!lBu_GL#AE`U$;OKG@iNX>qAKjP zDlszXMn?}>>ia;$;gXUg%oQmaD{pl4Jt-JCRXt}d%_{7bf7k36yv~M`Nsqfqr8Iy5 zZ*OF@<9|3~y5QCSi{b?NG}`~;5c)sApWW6L$dSkO)M>*|_NUz7*Z6|!xnQ&~-r`II zYkJ>EA*{Ht^Y*@m{CbYF5$uAUIdVT9aAT0KP49#pSfyf@%lXqf;ht6doyCY(gl4-y!=a5o zIWN&(T)&~37IxvInR$BlE5eG@*=wi#Sy|4**eAQzDzaPO#`o^9 zVfH}{zFlQ|_9)R7$bg`5ik?A~YrGEI>+P0euQe&}?p5DTaUAN!JNaFS{nFVzdTvbC zde|%=s!PTP7I^OfWwiUctdlNpdLSXkXt6`Oe5F_!12ho`5CiNKth1|sO>m_}^%<~n-G#;4Cz``%y0c4uBM)7iFPGW;Kxs$#)v@NY3P>)opbKV%KH^5nUMqcfq- z09(0<>*P07KGgkdR+y|gU)l`D^6@nkkZYV>kyw~9!|9A+4)V-BZpw0W9kNv zN#^n6m6GWs>K@kYcXXnb#X0eqglwr$RW9`IU&SZQjAnUy6Z;_!IsDRt4MOJ*U#{&J z=CXU&j4R?8@C)ZX2}#KHdaj}jI+T#O`pF$0vCH6jU0q5S(TWfSuh`Us95{tBIM}=Q zzb$UPUyasV8R+gxl@sCm!x zopr=a^1(=Fxu;Qaswc9-LrGbAd+Wt2`P21`i3y*D-WBOFjwrt%WD&^J%IIqXw*0(W z!Sozd#A#mu=Ta&Rt^F`kh8G_y7!8NWp;|IBI_g3&tSn}QJ)k5PWrM*2$+06^Wv#re z(T0$%9sTy8fg;lyLFe9o>ZIF^{p%jEIQMiQ%)OYh*H{!T({al&Z!YP7&h8{`^JexVt|`k=LSF1b~4b8b`_O?8A#&B^gg) zcmi45lg~e?w;NRm=?sDdcRkiUq|?Nt;+*M)tSLb2tv>6lF=|6)vQ(5x3yWy$Rln&^ zH9J#VD;KsgHCT5#Z+8yG=**5XxBAG%hNRnG+XNHkTGnXa6sX-phOa!fAO8jYT&muZ z;vU)L#i3Kv2R6IZu&N~)udk@=&^@$@Xn%iW>O~w$_(s~IOnpUcGhf;P%NQ2FScKMIS)?g0}!%uvcBCtfyT3Fw4E9Bq7?`FlABki&ih65@Ldpnm} ztw?>Q`Z>>4(nf%Q&DGJJ%7xo0o92o%Ipm3nYiIra|& zzevnab6h;})LQp8mrZuo;$InH66XQkAS12=UyZlL#_dc}}b{=Lqz z@j(=2*d>4)CXduSKsgEcN82qubv!sBiss8^2s4v_F}=~5qhVzY!M=&g|~0i!X~N0?H9g? zXV2|Fy_D`KTTsqESQzpd=PfxIrNEfO4tLPvm+E*RxO$TNMhwc}JX~I2j{SyFQ#GU4 z_0iFE8P0}ypa8u#{IT=ih3!@QN~_vBT~Vd7wq(r|+q|Tb{UquVko2G#db)v6gV_TM zL_Fkjczrk=Di5|Rvj3p$cL@E*%4*F_O*<5`IrZxU;Zj{Jm7>Rj01l6*bq?pHcGBer z`uRyOb1vlnxEZ18ZMTnGe)8uI%4lFX_--bwtb4aRYMZ`Nz9|D#U;(D#&|G|FSu7#x z{@i4CooyfhrSfG$@axVRc(I%QKw@T`*&~2j|oduj}NvwM~irnJOX_?y`H$R z66@uJ!Eb*-w2M}CkN;Ly zg#GN!zXf@t@Ed2x7`Hpf^Tm}KEylv%e{*EW^O>?SJ@_=Y{37tj(vUFr3*!WZAft#)Oob;9gn43?vYj05 z(o|!j1>Uo#heqW9xsZ*_x32BJ`A^Z-O$g&X`R5z-Spuv-gr4l5yyxhs%#NRggH-XK zUxRRzph!<#qCT<~u}}q9W@B%=ub>b9T7RJJSNtHC;1tfT2oOTOBJ4??yxqpDZ^*ZQ zaTNr>O?468zwDa+SEswnhbsf9dRQ1X{^Wt%1T}T1`fZLU0gVam6;WWw&cwos2j7ak zb3Vg`n)WTIlnNAJ(W%|+_Ut2qYnW!HWYqjIr^m{|M^-;h)jH0LMyf)!cc{sHOi zVL!&Ef;D*M+Y5Q#-j}Y066VAW$L_s*u6mM3G#@hWbO2xC@BI16r=N)kIm>(JXIZl} zZi0Ku)ovlj4c6^#!&liN2y@;*mgDi?+UHx9yH!i0#*9QzzVkv)CL}yK_E&@SgB2WS zuhQD6R-jNEH=A$45ICNsF`lc96_qM+f~?bvJXL^;AzUH|W{L7g!i~IXJ%U~{jG%_Y zzW;D5neQ+~aTfm(!E9QN?vO|=A&2#|)W0h_C}L|WpF&e5jMc~qSdmK$oNSm z>64RbAEeJ`Y1BpHg)B43j7)I=$QORR$Ygg&sE#`Qd)I4k=)p$V8VYK^PPOGQ^G3VH z_)`QXuM|(>*gEbS7nf}OmVw{Xk8^eh<$5B0-vL{$^PzII1R{^Ox4ASqC4Ce8T4(23 zlwM38LS}e*%6|N~e02c@SzNvKK+~YnoGZ_u{hi5uf_$el#a8n+k$D7FUKCrrp|?d!1FHCpO7x>j-^caf-OQO=z&2y`L#l z3R|?ak|X)w?#DZL*fUfr)KF5CZx6y?{L=j1ygezL;oqsix5@0vQyPA=2C?DDkQbBx zzEJ$|IUIX=Q`pXU2OhQZi81*@e5ZA6;21jk7+P{k%FwNh(1Mz=h2I@C%e{1%?^ zZ?xMJ$pB3~URgPqPxo22OD^Ke=F~gcbx!?FU@cqTKmF&lWkB9P;iy$#y2!ZDqf5dt z^bQ&|4XJ2!H|(q;AOO3aZ;DUgxMJETo6iCxLb9F8SGx>3iWDDBN6fH^LJY~~;CkPe zudBN|Yh5~zgF0Bvrd=A1HK?4YeatC$@@CWZGz@)%s7G=qQkQjAfs)@$cRb5(Ia~U8 zr|)F_)QW)m2$t!%A7EGMPEAki!mdpJ1lZdm3(NmaOr9;edwchK(p01%TbE%!Cd^kf z#^2V4a7HNsNLxbL;-AsFwOi%*IDL^40Za7HZNY^1UP$!M(MNp(5QHo{(X z*H~wXW}MbX1bk+ue)T-Z(;bI*r!zeyL>eM#BTRZ%JC&)meFT~UXH#~2(qPkqfAP=P z?`H2wJM8>%ey5Ek?LaO5ZniCjc|X!4pe>Dg-k?}?elWwf(YH*cRA2hkxq1`1_2t2t z%j;>MD2Pc(7bktVdO_AygC4K>k-4R15BxthNP}9QI`6EoQF^4`9A7j3IRAm?^&Qug z57pjO;*{>wd1yPMFWu|z397l{+521(UcytPloN~Vf3b7X>fJlBJ9m7al`psLUi&y% z^7F$5uU*H-gdxS6ZA%wPv{xd*S>fqBGKcqY7n#}E0wN<@VEYELzx1OU(e=-3zrWWM zJ-PlF{#)w>8K8lZA$%8Z$5XcSTJ_0^VyF5Tu#W^2+#DKXL06h494on)j4D!5mKpO4 z9LfX-R+iLDCf&OF>ivVbUuH7j4;FeRL^;O_3B5Lw#KQ{&us#Pp+Fh`_C|^J(+1&#(E-UWmm@%iZyj5P`57l($YSmlMK|ki~bf7 zOc4=5^q|oYP0mM;K;(WB)UuQ+9KvAdgjk-IFle8=2BqchI^&@NFRs(00MHfA1ueu~ zydl^+D_3UoiZ<*Ae73Bwn2Qm%)X%`y9@wMs8MeLR%oQgKNAQY?-GNQ>v9_BtSL{~W z2SCxIzrvACMn=Y9xG3jW_1&-S-}bU!aNoHM|NYA}JkUnj#M_}#RB9`JRoiO&eBqJL z*TYI~SACZ%m4*t+%hBquip~dPPv5vhi_F1%tVD@8^TXiK5X!y53EQV#J=H~$G`AE> zee)M-rWmI$#2g97Wo9Z|zzk2P3^L7;PjAf&m_8+HqlF+avWP%IB}yrWVd-K8qLlvDta6Kz*d*;!TYP1m;SpJ zfRM{c2z1^-h$9~M7J>Gvi$C$HMY3A9a79|N46#)l_@ z(V4Q^(c4R%FE@#GZ*!RGI7s696)K`7TsP5ZFkcX?sEY^_!pB*HLiCV;sr{t}1&bt>LReTfTd+_8%*a_vWqBs`g8}^>2ackV^K9yRAo-76N&SUnr;l#y$)arF`HT^*_BSV%W;9n!Vd@yCN^f5D638hO4 z-x66?_^7*nBI|b|+px9eHx$TYB#DWp?pANIhqsYiAeS}x=^4dD%sr})aAD3kyjnWf zn?iLu)#LuPVR+f1ehB9>UZm0tlI~)+r~4}*qoWvjF-+!yYU)}JIy(9reG z+Mt0FAO9S5kH$d{o-9b9H%s|uRnQB0CL<8PkuSGnKx5GFO#r;FXa3$Fktbrd+amk- z?_YxkEvQSshkfWd1qCvTr5~%Wf|djevawBWXBZ@%|1>u8Kd*zGMIgwzw!6z0D+bEq zA(O+l*jQNAu+68~o+1|1?H3(C>})6OJaVbA5Z{l?S{ z5F@_&gq>YK<}+xvq-3FBo4lNYLRxE7cz6@&kbvUNGZ1rsh=(UpXrv6>%qx2OmOh50 zgoIy)LyTyk;=Mmu0fqpe>l+AytyqZ8`=<+*3*E5O2@~W`K_vy=9su3h3l}aB5fdY_ z@-T}=w zF+i79>exOKE(#PW(GVS7G}z3V)?Nm(@7-zAg3Ct`$-!`BVsTMWK>@GU^FcCf&jXW; z5;5ccn}3o8i0ZDKjmobMfeLk=KU$snVd{k?5r znL00)>JoP(YxDO0HShf=A^MZO@jRbmPPxEbI%v4fo%R(sDvrIhqIg37A?|N(GW9s| ztHY$v$1CcX!<4RN`fHsMwPc=*+{q8bhLPN0v2Dg2v8F0rW@Fm3I8dNlEgB$qqPGlJo~8~eDV_>yM<9(4DyOC^!z^C5^*?Z{Vf5m@Qv15l4?0{R zuPp0G#qY1TVqAGF^ZZo>Y~iZ&Aru7#kim7hTcCl?4tuKWm9k%u!T^S(@R;5CL}_{N z>kX{YB88Le$`g>J7spe-fXMqMCzB!)v*WM`3U751Za6a3d@ZrYr)!EpeGY~XF+IJM zx)F$-gVN4#*y0vc=y@6QG5dQZrANHHy!0Tw*5?E}WhH`!ZG(!7SwJ?rIft>Bh`%L@ zEd-ZN3smsqdUrs(=_Sa~faENQqkAhTYH5)`HlqWrr@sDMR-nQT^1H4ebN6m?#+aA) zDk!-$S`Pa@<>{=ndH&V>y_sVCxVEyW&|$>H-1+q+>t;D?-YBJ;WIkIWgFn3#$4O z_@yBJ1M>qJ>So1}pk(6J&Q3ug0Q%z@@_O#3psIVYyPCazOb>S{4fL7Z+^%6_hKmy2 z`0UH}KQVs8u-V91rG~WgrwE3gY_>%Izp{YJ+fhX9&pgtwU%YhqklnYFsZtyL`?w@W zqg6FyFh8#fYjTssrwz6IaUAR5l-V6jnFb3Dni4v`m@O-c$rz7z!@*d3`qizjFc6KrSlUf#dku0qkVfo`~*Q8L3q+$tEtt>s(Ulk%rN+ibcC zB)T`pe_sO4abei!rwgIQ+Y$B;rrKqSk%h8ZQ=M+xY#mioSC1EH5shH7&vGqR#r){nGm!(b3kAg)ZyA-D3Ym^F*_biEvH6+*~|FE#2Zj+1A`b% z*zO3Yi*@hbA267x73DexePfVB=>my(B7O*+?htXs6W-s2d0h({U^hS&A5?_)4iDAU z)ZRdJm0F#Iv1xm>_X;*7C+YWPcx9@p{99UH7Dn7$$nJyADeZ?UG>{A~c0T0pML@Un>CQgP%|=W10f^%T#Xx` zaadGTgcv9O{k610PLwH2|rNAZzq}8GZi$LD!mwq2L zNYsI3(rvgdQc#wM4~axF|E_Vz0!;^vjj2Yx$r6kC&oG7HcEUIQ=4uKC3J^nd*8s^d zN)T^fTQh;=F?xt44fyOSHMKX~jrHje)q4*f)B}n`t_COG;&!6{bJ3%@} zB=%BM$zg_E5G$QGU!Qmf7AUV_&VV3IGVIL`4Ga4>J6jL#9YyxL)Nub93XMkYX_{Pq zN~j^RlP7_o;U^9_tXqWKuf<-fL^vf!whnPf9C0cY*?n1c4);*X@{0Y$9b3CjE+{Mr zDt1xSZB$`LUAM1TjZOthDOeM}HBe&54{l2k@%k)`S!w*GUTAiBTE8WNJ)BW>wnBhf z(M*6sg!;Ilp`oT;KVG3R=#SN8n_~q&M^Iq5)Ya|9rk90}U2z28O3}kg|JO-xevd^s z)h7x4HhQ+pnZL~Pb^NahrjepMO8Pg+&gwPxq|GXEse%{v-l&^g4J--y-5J8KV_aje z+oz=&N8>*Bct&yYzK2r1UPSnD>4g+&+$ovf2ADcSX}4&VM{eKCUi$~yV#w|9?CeBC z468sl9h@d`9FLidH(;;20f|WD_pmTr7z=pI5G}RVCu&0@A|_{N`Q|$lr41pic4x?A zfh7ivpPDc_?e4lP`Mhti1^RKAP*M&Htwv^1mTdN8Ku||JL&ir(o9$_^(h+2DuYvk4 z90?1wFJ$V7m>~I0!Mk#DawZViQC@dd%WSwoZ;09Xgx%Lt@~3WB(rX!c3_(Fb&=Z-5 zuPYW9hznLkvzUJ)5e|RCe-E6lCO}V1mMt56k-#n?7PiU*iWh&L1+xYG0YqVo^8oDY zRk+~=C6IWs2mviEZ78B<#``;hUbpiyAt51%?o`3%@G$il&=eboYXo%z06i%R7mp$7 zKwkLL-7Q5T6k3%bpC@Gq+A>H22IK_W$a|u%qnTJ+Yr}`qDlqW149&_N53TIB<~|9L zR0EJ%Ccnz>{}3eRz`kZ~Ztl*VJ3j^LjE9T-Ky>GleEN?4wnXK8IY22y_{VMpf`POm zI7&#psLRt|sidT)7TLC_MS?n$Jb*3fG0Ce}uiDt#cV)=a^%Oz53lOXqWZobTr3$N?r!G$x`m%PORyT*>Nx#U|=(YLg9n+ZR#rEF64NIDC7?z7;dI&*kjK)vBQRn85WJtH;(*pK6%Y zO+z|!7`-|n)L+UhOH&EV%RolT?aP-h3KEZAi;DWd&uBqdQM!Ek2&oofkalM(hIGXD#AE@% zNU4zj9TcqY;^H;}%7ifKwCupm%?Jq`MeAl2!Dh_ysoLu!IyhQM}8O*#;k0I1#!+v@v4hk@c%g~0$V8mrY3 z?Ahld2|y4I$RfN31Ol7jwHth&zV6+4|lAa}1joS+8|dtl};1+}-1uDj#&%TKx9swpAW-q$xD z4K+Xc^zn9fcHLwP6z$FBD$MEGL@Uq~tSsKN_xA@R8|8dyjpx(|;^Xaisev|rzAnMR zIJKVGjhjXON%HBnYHF$uDSt;5c+*FcswGKZ0Wt)W(@9WS|XAeV^f!c0;}kms~Zf~1_qR`vm)f1G-y%M z0!|?4<$=5>gEC8_wkQomFtn)!#eREL1*+N{UoP@uhqaqGR100{#X#uxTLbToK`-|S+%QiT)+VcsVi+jR%$P9DdO7o7@V+M%lHQwU*pE+A?94}3s5;da)6`vOtyi=*WT5Kt=VP|_-e1DXXfPer7 z>pM_9zJBAzN02}PtnvjEZZ`lFLMaDh{3?WUyYzif(QHO4P=|e5adB}l<-3q#m>Wh2 zugh%wEaS~Ug$409?5APd$HxigQ9hQveD&%@uxr@sWrzq8AclKaKQt5pr3w}yp(r4_ z*WM9YGYA#}A0A-y0H(Zyna6*6G_(cgK@P28Q}c81=f_PftnW zKjsuMVCV8)Na$9Ten30ah4Bz>(y~FQGmRo_v&1wz>pDDQzXeP9kvYNchQKLcp7OpL z8>3v~{`dZYt2KK7saR~*oU~c0`I3^S zrWy?Up%ff|rUG{6P+i@yHtO&K7^J!!SdJ=*zzi+2Tzv`?7~Kfv~ zmvy=ad1fb57mLI09zKg!KJ}@B`f6wC+x7)R%WafIZvPXl%+$U^_!rK2d z+`@cD$2^zl^}4#zX3OOV-);J2%8wo*12nmeCzOX*HgZ*es!L*KP7tHd#c>*IHU)kJ zaWrrYyb6gJ;P@YiZ=vkAv_Jyt;a{$Bmq^t>0H{itT+kMH#t;z;2G=w+dje2W??)^bU6iP0qhtZUT2B7cq^b9h+1)U#FOQ6L zR`#z1AEmTDmfGW-R0R|T==%S_XTpRb03t#NSpvoitXf)H4j{S(KcMbQeh4Wx>_7AD z$@Oe(xQ~*vS-(~r$RP%P(ERu<%NtW5QR-)U57+(VZWU!=dlX5BWBwujv9#13jx z8_oeU3>PEvbK7?|TKz%-rU>(( zV9WvSHBiE0v08cv!F&>sCos)lp&mqj0RCm3VPRy##MfVETr!H9(Rc5=&{79)70GoPr-iio;^JxcP@ihM79-Q@-fS=9 z6UL-wX&@Ymz&{NjhB`!!;+?$Q+zH?qrm8+&0#7y?)mb^H?$7}Kse_>3>iyMbaPEY~ zQt$o0Mnw^TnWyb6OCDAl#1xQB*E6u$V@0ZGcpgCfotzvRQ%I$(wXJIa;}EWwxCa`> zQuxvpH^YQ@bJS{WPL6D|_~)RKGgA+>_vs+*6AI#mTKuYl+jAP7C`R{RwDpti}X`3(YPU$jV;u9fZe}-NkE^TVmlmFq8 zqaf6%;|8HylOzBuw4MV@mnLleiml{T`?BAhAH4Y}eiA zv()zq7=!Q8jpX#_5_&FQdlgj~8CPAWHZ^>uJltC+B=?N~KgsiP&Qxtt|DtVCwb>Ja zZePx?)&?TozN0m5$3b5+o&D|hA9-jSXE7WXzoeyo27bsu&vcIcdSzurWdf2%?Cq!E zBPqSSxP*bDx?Pa?P9TshHryN%oH0XvIv#z)U4DMWMChv7Mq6=32{C?zMiWw5X)qUi&dGj zplkweAs1GoqJh~UKRj(0XQty8cVI<)gIugl_I9s2@1XBRE+q1-#O%9S?5-$-p0)s3 zXxeT}xhq5nks#W7h?kcOc-!LGIDB3s{~scqTUaaUvv_4&HP@5x=&FI5yD^^fwC3!N zrL0{&iP-VicGXW+n;$a%BK0SFHRQ;kO?`l4)o;8!Gjh#_uvx(|Bs{z>RQKjQlflIZ z>y^o=fo2;5_TM!Fg7f{(mv3K+5zF~Zbu-zUTM?Qs&)eCGl_K7C)k!4tN+jrUm zck|5?9Xk~;xz1~)dvW8bjOWcO+`vMOQ1rYqSQheIH8BDnD&|SccP=mbR-cG;K zuvARUFJbs0O!5foW+?n-A0n2BpiZ`jk9CR$Eagv--b53MW)JI@tso`hR|BI%7VlQ- zRzL7vSC_B`YeuC?CxR#SB?|+M1CdSPWlB4ffFAIc0X04X^Q^vN^MI%_CzcD*F`JKB z%-%{@O!sVJK79Ead&u?X1Nypy!$YVJ@W4=QA0*4^>oQf!S?j-+`}o`jdaI_dF9ez< z7vL4Z6i?O;CanVgS02(x{EX(NfUyPKZ1(3l_9 zWL1IU!~b9_Y!y7#@y9)F=(TmwGzDQ4>r^e1Oo4O;7hMFXt#JDS`HG9*}Op z;(k%01~-8#hK7b9#td?UT;JW@#aprQ@zZ5q>`w>v!H7!+A#AXGNR<&j1=(v5zXwJj z>u-)apVPrSDd_%s1Kk6SkPPM0V2IxEO9Vlbep4!3{p4sL^)&A0io8yXEBO zg8Kh0FojX8lkXr{e}{meHJZb|zsxo-?G}*f!}!^+6amsAi3>bFi0J6B zij}fDj0_E1;fip{vnI8gY#S zX!H5Y7x_vj4wyGBoA%*^12OxcX}5R0I|kx-xDWt^>(h0Zfss&iMML zt^^)y-T*(hqLdaNTtNsNo@fT_46mX}m(3)6$ia9io|L#Pcc%bZm&)PUh?Lli`oYSKx zuGTsvuBc;yNl_a&Es5^yOypMUl;j=e5rGTV@)Bj=Un~jQ7(=y=XcDGE9e&SuF$O@a zK%uezNe0NE3PO`fcJUCjF;fPs|NJ4cw?BL|OaJPXA6TlV9vr~q#mnhQmExXi>aDEOj&{~IPjnw=w1P$*M~&i>#!=RFD0nG|G@ z1uiClkFtIwK-37l*{zL(-LV7U*9E~asMv`S7>Gc$RGamQH0PmFqNh)}X&D*Y*2~+i z4z_d~Yifw_<^|#L4!E(UO-S#5+95|pEAH&m%jES$km;B+ToS@gq#j!(iw8E z`bHLZ zBt4zrX;g`Y?}-bZ&;P&6~k)zH*Tw8{dqGZh7T?^Adou#z0{o+l3y=m`b7 zA{DuZW&ITvyT+M$)6Rwn~Cicro%@30P>XCYWiL{!4519tfWwYLcXeQ@t1lT5k=SB+G; zP-IJhpD0>1m$SF4Yb}0uSATyf6vMv&Fd{~;Jpz*<2vZAQ%)pmJ<#!86=&Hd%JZ)`l zu(m*aV#%Qsjs|A1f#j0B484%`ATH(t<_CmeyEcA7AkiNko8oV(Bq{XtQ*#6eas?ug z(*ZBvJTQ2A%;oe0$VKRaCc+(p))jCR^mPOM{lMhcL+A&#^fvIf4bx^&!Mp}oIuDCj zyvM51JaMSvK$_HGv@8rlI<&5G^77*05EjdWLEv@Z7apFL){H4H8srFUFme>IX1!w_XhX!-t6F59Eulko&AxhM%&shELRbN|ss~BJ_UF z-9^Y+pE5RRX}BDpUjI|6;U6gY@8wzV{v_akZ$5chesp_Y_QmxDWA4X8mAYF5ug9|5 zRy9Rd<2irC6o&$h{!)9Qf!)g%59jx(-K``8UBR+KYG)c#hxc%^{3_cJBpjGSQLEZK zD-mbY!F2n`=f-t(tty{@@1CMn#nN)vv)r8RI?Nr68Fj&i%^z}?p}J_Wjjtr zF%+a;KX_ZROQwN~oWZq)6wnZ6!vPza%a1Cz_x$d7jwr#vw<^CmU&yPBK91Vh0s4>T zYs!_U#^7|t5A`Y-us$IodYh?&TAPO!`K_Bcls{pTu=KjZBBSpAt~64)7vmc=Os=OE zIs59Jr^dFUpYIyCnq3Sa-v#4l7TX=#T2GvhwZ;Kl%?Zq}VF6pN!%4OSn;xw*A*Z{0 z&eKWfBblDZ1o(WXgrxWGVhh)z7yKYRp|aGI5+`mC@R#ggm~ZviW_vHfU)z#j<4i$L zeVxT`9{;Cg4mvA#dJ2JT4ZCb6QTz2Z(#hW(_g}S(D>;b_PH(0;De%@c7*>d7Qud{a z-L=J4Z1`B4{^Wi>qysvToCS5?Hel*ZLAGVd_iN#O;8YM}<|=?tat$5V|I`cqcM-?s zAhmaSk3V^PdA4tchW0$bxVTA|PB z$Pj-B;n7u~^eun>V$j>l(aLGk`*;7zyKnH_Zm zPp*2`_KN*f@Ps>ctcg$zXB6}mHtGqT|CU-CL!;s*8__>1pi=z;1K)yZwyC8h)so5O zfARlAsC@Qt+|RH}mNg#cP7VCqX}3vH_oC1El2}gJvfHiYC|f&1_31hS0IIJ}`#Pku z{mn7{whJE*_UsupiT;S*z+Xu}jeCC=YpHp__ z;gWO45Csr8Yqt$=3PPFIahjI8(4YRIneGc=ybTWT;C6a~a%DI}TiN{?=M{>C6xa4B z=pNheEX9H}J_L~Q$w|a<`6e6X(-<(OYJ)(NgF;a)iNS>=N%vnkTRr*YI-$=-f#xrA z^>QUtztaqq-n+P(;n=P zMQf2O@|TXVy7;#h#Zc>6zR&NnLNF+n@%;wVDyP`cPsux%EeDBnWr8BMEaGdX_CvEr zKGl-Y2ndDw@UI$o82^1(Zl{W475YaT*_i=83$Boov|2*N`~O`x1`l(AxyqTkf+yGi zCoQjetlC*?bw(z($d?2|k4{bZW3c|%Sf3&B6SC0UL@M2pqjaT1?4;6N!u8GWD`fZ4 zzulS>vFmM@L`(!JGW-2Y8Qv`dA5Bgnuw_#&-P!2p+jsR2zWqp}>a%pF0s~-mh5nC7ga76K+>M{S zf`WC!{P7R>7ul)zM>VRx^Gl^0@GUP$zhtDHYV3OHK)nZ%=6iG&ra6gMoD539m7w4o z*dJc?iQ={}c;vOvr?nya9XjO4v|+06_6I`7!@7K zp+!;wk?xXGlrE(a1f^bS>4vj5@cDet`2)`R>3CgpU8B70ckgFE&mHSt_qy+`YiO5@ zH2~e%y?>vCfTK2ya z#^>W)5$cc$syTY~pM1me`zs22+9v0J_-EZ;8hlrw5b@M%wcZIOB#R`)Y>G2mq|hfe zbpJ(BOO1zye|~lT9Zn?dlTK&K*0aYh-O! zwm-rMyYl3_5>F3|KG#l>OMfj!K(O+WCGHJ7NnzBjRo1kzO1k5I+_)=&l?h`-X>6^_ zwyeNU=-Jr3z!W+1kO?oG@zY@FCXQR`Qa)T)&^~BKfn47?l51OMMlA96yp@PAK^2=(=lmw{;;^}gN#6<~z^6-YAojE0p~RMpgY05ZMcvbI8; zgC`A7wyN%rPOY4!;T!yTawO+H|(Nv3?C zRgFcU%|!i}?a_rD3KM#NF4<8hzjP7{HKW$M@#bQDyy3#PcNMMQx_3N#s;7VN{p(|T z%$iq{>W@58P({rO;oPqG_4WIa^Zdp?0RjTtQ5=T${Yk@@cB!7(F$`1T9s$_F=i*>d zka-rRT|Kzthp7C2ozoMA?g8W67Z>Mk;BQxc{q5M-9EBJ6bH!naZ7n1vq$U`B8ic8@WHfh63A> z!QW-+Z@ji1J~c$bt(kOVT092pUz)V1iljiUdHVZOdk}LSul&AyORB?h75A3=uvN#qT}cSf4xn<%7bgzqpe^s9D&Q zu#a8U!Mxd@t~Y%4n^9pKJ^D2Sya5DS3UEF4jus-UC(suZVs-#J`I~KvTZqZ%JyA6{1%78yXIU6*zj;n?}D7wxHj4 z!nn}F+cUBMtZ_VAHGm`t7bGlA*!zK8KgmFEiHjaZU7$!_PtnGK;2_n0bo0ES$ro( z(0ifTqABXbawiuZ7neV3UYVc1;Fy#4GN37%i zRB- z8~@?tE_zk7ua^n%$bLU9tMLBatlwD|%?z9Rb`hW6v)f7SJ9*CKC_RBb-Td8~{g>6= zNMfML?tdu^amtmDHK~wFR^l*8LJ9LG$`=5;#em6es43kKEw_FiBd`cm!@^Cs8$L`4CJ`f$3! z3K_94EJnKAOPTyRG-Oy?1l&eDwSbsym6~c++^5P!>6f3Mze5tlU6(jxc)v=y z`drpcPWFx;bhDiqqWqS_LgnI5lU}T|#@5OZR)U_1FF;4s(*UH}nFrQKc^yxUb5$sQ z`t+i=%suV?__gwVC;!n-sSEnnJ#%7i@9EnO&4aM|Pa+;yOp(QShs;uctuCfa~F?h8HKOJo>;uar(HdhgA?XR%5~~ zF|HNGYM@+1b`ARfH05KZ_!zv9Fahg5%F4>f*z+y=e#cZQFqe;9y?S-Lr$hmM!75x2 zbWVbGf}M%P&wCQXCli-MomXB|`JXlR3=wwV!Q3QqKl-k&EeBr#A(Hauc z_Ue$*x1etX@L84LaDK@7()AQ4vt?10| z42`c!?6ldoZh^q{7h0~%Y~A)y5kptKL{MJwr;x&cT>GV&_~8X`H0dFUwvCt>#$A4b z&-@biJm_!DUoCHN5)9dvqo7xK@qhdFO?3>`(#WKPwcN|o(^5ORE9Iu(?tcNrw|MW` zu|v|{-u~bzxo`nhy)Ilc20KdH^&+M)w@ki&f2j)p{T2hdr;%r8hJgo5Yj9r&u=*X6 z5RcsR=btLaqg7a9)snTOTrr58*^7VrV_luxZ!ticWbk&3OaMF~H3_7@L`+x`zwxjO z)7x5K@SZy-3sR<%u)(i{&!4Y@oGANS3?{_%3y#D4O1feuaIB*b70%V(^i2jD;rftw z9G-6p{oLrs>Ch{=!AL({l>I42-#Ox)>+{TD(9oohkkv*tGXJwYm6Pusua*8At?}W{ z;31*h$7Q;7=A{jFWv^$l`b zcMdo@@!rRe9fQUFfFZ-EOox`|fwvcxn7H>nkpxp-#mfP-v8Nqi_S2# z3&ditQdiv6)~5K!)3YCTC!r5jRR+uv$ALgaC5jW2EK8!-h(MJRy;Dgg5io{e5?X4@ z^+Zb?NKmO-;x)#;P3Qwzh2rP%u&#+oGLJZTf9N$RUSD$v3l9fWTscYIvvGaZZZI)o zV5yA8mX?-e!}$Jk1w+vngf?98ClUm3^Di)&n`|rOO zX<7ex^zRYfX}PU#r)Znmr4x+xI_^r$oDW|dXA5=KY(HIe$fxKTpW_q_44dq6!HW%T zdiV7!AH|C{eNO+~Dk$kR%aReP|POFR^6Y5wY%dQ<%8K&}} z4AZyGPg`e*1|#7)c<4}%(IEu{Pi=qwuQx3E@P8<4|Bd#a9RbWh{?!!)YXu$=VZNQVE^OF2Lf6Js|XDWhFLpz?aBnp z6L(il>@aPG6>HcZct2LcrlKDYtF;e+X*9Z5%PG7t}SdJrvUze*BE|zy)#)WyBAX#uQ2)-HF4uB(O0_&^Eucqf%Zln z332g3yYa$85)Q7C%pAF*hF7$=x0eV)pUnTC%)mztD9BUKP$|bNXOcsCb(^D#-A*(* zD0b)kIdDITNK=h-#}(tmTO7Sat-knVWj&xVR-=+aKiwV`f>Mwa*vbKz`UrL@MwJnj zOk^e)XYFRhkRBYYUhMxB)FXYszCb2GD1n#Q56=aMj6!#LkIVY1GyCvK^i5F&oC}$k z3#Z!SW<*#2;>A(b--LLps;Z1g7-Tg;bb;dZ_4W0AM5LGZVCW#hR{}f%z_DK=f-w~! z_I`bal4&Ks{+0zDvPpMpE}}1%ZF?X6TKhk#h@v#&=*qlfPb9AW(8y#V!t0>cg5J!%yU5f;aQZ;a-cB5SMoP~LOaIhS;CNM;=A6I{U z?YSdEc|#aKLCXD?{y9j-=Z%_~vZ+3Sp9rpeNngubE>6zVFp+_>^?R{2Gcz-ia&iWs zaL*frPT0M7uO80ZVlnL{YrWSnr(rNr zUaO?lE}gT>4yQyX)SU|*rx|iH_=rIA%Kx&xD^_dO)+;BCQf~PNNI!Hqc^0jiZ^}Fr zQ-ij4O$Yq4KW_C3OH$xU2!355H3)`~TB31;dWV5LQI7}-(M*}` z>v@VUPvHJF^UHziSkg;smashQkHfAa4-fqxM&fpcpCRyMdHwZ7lb8NK+xdc0=Rfo5 zG-mOUS`uepl`em0=?wn(wfYfqn69}4QCbECLSBL{0|L*bs#H>SePZ1@c6lq|ieGB1 z(@2Mp9<4;;v29_h#)Ws^{@uH`WmG5i2T&@=$^xNaBXR0C7#bP9)N^?7;6d?VjR)$- z=HQ89=$V|fw6yp0pNN0@#>WYUInjRkZ?@DRJVOV(3u+_v+|NTpLgMGv`1tw%qNc8P z-M0P3MMFO=5}0t}o<~1mF~BYb-)aX^eMgcqy28L~2YoKXdPEIn_JFwdsn>uyiDEWR z)h`f=vZ+=(5bTAZ=nMur0vt}#^sb#dw_S&EaP&F^-^;2PBSo;kcU)$oG#nZN@`7Us z$eFW3)ajjoF-<1h4Qkhb<`o7_5%Id?ExW$IQ0VsG+2K^;>>($JV0cP*xH-P7#Dz4b zK{UFpEztSV-@bQGlIV6YLF+XIGO_O?BZ)lh{QMyRClZa+@9OLKGd~^W$JkDpd-vXI z-B3}X1VWIIIxRpBMK9p1xHyRi4=xh@f#MG6=>`*#j)x}*Yx&mu0Q!Tl(5Ra){(w3K z6D75tdXmOvlxFjsmUD(R5L2LWg6R56X!*i1Jw3hs5_@oBAYTWPO)!WD(J^3F$cXp~ zj&<8nm{MM|?&hC|4j&fBD|sPco$$5J2(C(%IVjBZ+RRYXE(D#JjD3vTh|-TfKKt3T zXPGELqm|4ME#>9>R_+4^9b-rUUHYu|JUUgl?|+dDlL|lyPwM8g4Xcq)h5Ibbe})P= z|5j{aRQcwFi`D3in^4iNJ#N26POEQQc;_og36$VA=80b~ad!HBKaC{b&p#d>M7*02 zGmq+Fi;>9u&o7TRn+&f2ld`a~ioW8uX9rvf-hKo~#>1gSiUXm49zE}hlJCLe$7Rqv zH`G%i3X@pg(-VojAi=~kq>aDl6XIW#U?wqrF%xM85&MIEKs30ir|KA>5s0`CbXO3y zb82<8#sNSoMG+5d(Cr8^ZiCo?I^#iFT5r_DP&vJ_Ny9~Tn&JhY#Tm#=JbCiu`_G@1 zpI=?Y``81HOBkQUBTxgk5#@yJmi9wu<>}9#|2N-?tQ0No#jDeX5sZ0g#ze6Yx)1+; zc)Tm|;Bqhr=?)S^G<1d`(oAH?HMnq$Xh&{n@Im9}|Ck1+Jt@yFGDP9-w^k>bwuuKnT7 z!|JJypN9U+1=yi-?(Mms2a5OX`RAXVJ9hl_*XL8G4i2$BrKdkl|DVR1u%440wHN3w zT{+0E-Lkyxm$$_M2nVfsa6WF%mUXc&;ddjl4RLaQ@Pelad9eJ7D9 z1tR)arEiOibRM>xR*e7t@i+8{70ootETOS}b|kgr9Zjlc<{RW}iI~?|wx|I*DKT%+ zi-unbzRP~D6qy7%<0HOX-93WT}Zd)+!lu;)SPcxwfW%Ph2QQM6Q)*{;Fmd zGoqvV$Wy2gE2M|eojDT_5DsXDv$VV( z7gSg8(v;J4X7Aiw(ZC%wkL^q(h)?8X;wZMmbE1ZTn`^lPn+Z z-cxRfGl8j`ks@mgdShMr%H>D7&APR5dX<4(Wnpue^c3F|5fNeUBPzyN(0Gvh#Rh3G zDIRHW9A<*v11)Q6W~RACos_&hUZ8-}qI&)Mzd*uXBlj!tbQp>a4uE$6o%Tp*HXy5d zGWF4;8vP4kIwill`fM1dxeWul_yKZhP}y z!^W8B#1L^1AmxcsvoMDPV`Is%t;WB;e|Wbvoak}FX8xOv@j!K;Rh%VxkCmQWsXVn-VHE&A)rmq&}8-J=;=&mbuHqiG5LjcE6bQT{HUKR+C_{iI0y@Ae9tjvMS}VV|I$XCw98}-6|tgt!};A-E%=@FRD0)I6kK%Aa zwAq0~I!q?9g4MtYxeoAWcB+Qs#)-Hq$OnF6RI>_tV{kGV)(u%G@{Upx3T5~c%nz)Y zm?4X;TQ;ul9E+$t7(oL)VkW2QI$mf=WC$E|l}=d@6yN-f?-{z89UHd-cjM0~&Z?Gl z9c`IO-rL{ryS{NZ5b9F$5t{lZ$E+tM)bw4|FcU@BjvMitzy4kce8X&v_u#$CN$7&f z9DAlXJd|}XGBPw&{cl6!LwVcXp|VV&!7`wdU`qY#NTMF`ujX_c_nda^dJDzPZ}0M7 zdzS~=CzV8|YVnw;Y}>f{e}A#mGbvngpq2l)NIj%4DCHvYViy|(eK#9z!=|GNkj z6uDRaKlx?%}%u?qXB^dK^irQZ7j)OZ?~vM z+uzHt4U7nmFFJd`c)seRyR?U@w)ksZF7FYIa*Oav5zT(bP7Oo#xyxQFLt-s+$*-2y zvYRjD`D*RrRb=ZK9`M_ZH*#}hr)a;je=rn9ds9FI2{nHV*}!Nuos`Wpeq=SGP~ppv zh2>G@-pO*A>Y3`+rwb-x-fjy!h7-Qu8P-ZHvTqwpGGG5Xa14XZq8g)#p{^9JmVP0T z$=vCo*(*PNmY8oBWK3JJ^b0U|#N#ia&eH8~)SV-v4`1Hb5;yKeeY9KIE3q~4Uqabm zg>iH7uZw>%thngVbI{4^K~bY67yIJue7JjKv9hAQ&HNSXw-$l4rWU#Ot>d;;R`^0~ zW+pd-Dbac`G^!d8;(Z=VTuA9A==+IIif49SgCovkI z*H+v7wWxsCP2PrD{o2Xi-!u}OK61oX27u=|SY3Y$~gB$^9p1n8Ncp(%N z(oAi>aUlhwU+`T4BbAu~^3Q4T&FymQjdHi!hFj(o5+Yn)wD{tl&fU%3P#CAs-n~C& zE&fA~Pg{Y*VI9ucg%BQwl{cNOE2@za$?1g7wd=svV+eVA4$^A85p4BtO7VY|r__Wv+vg~${*27jK&wL@NHhml;iaD6WaD)uMcMWC41}U<0Z88(j{&j>g%sIpE56d zbcM#NV}|2|oKLPmwLxEGXOFUewe!ZQQaQSHp|ODz>#uf*$avGK`>d|G%MXTaEY&5q zsEtkhJ*V~4YLdbM7h`MB8YNl#M-e?sK`n%4C(Div!%UI;;LLK2PWw_$3n#mAq8{&1 z=+9ZT3VeXcW^)&JHTLAzH9sHqSF6YyU3FTPEi<6kg4!EJl=h~9HWws`r8W(>%i#lO z!s_MPWIB5?2?hL1`L8!`LM>y;YDTMnUGqerd&aoN6P{0ITOW9}^?|{YD=(8TvzLyz z)MgUnkuK$L{e;JoCjX_wt&kSZ6iJsDn&$E+W1Dw(Wb5wA8{cwER|?&>_GE2!a5$_* zjC6|9-Za+cd-J`8ic0SK;`&EaAtZuKZ_Z+SDVNaJJpNWGrWD| z8)AN0OV8vEpWWsvb2e8lLUwhE^%)2638So*E_RNZhD`VA^pV8eFS9M3Z=Gg&>`h1h zU+ZPh&fmm?y2=cH4CBb^`OCoCbI%usQGvSR zp~$J(U;Jc#j)?`I!4nG^T`5DiGe?3uMOC>YzgvbLg85O}d~4U^!|^U>Ne5I@=o*HZ z2F8N~!e?~IM+Qvh1t#nS{pUyOCnA~Jj1`L3nD-er=W3I8z`d#DEiz&iU8To@`vh4H zn7d1y)$4{==Jy8m`ZZrXU)Yse!g<>vzX4|3JU(qh@zPb=WWMUEngo-L4fkkre48l4 zfg4q=0(PA>>ygfZlh)9e9)C==;nP{Nh0h+iapINsw>Ev(H#bFJeTvPaH<4XP?y|ZT zTgF1ik=RAX$MYyRkC2K{prOI^&p{i*DQll9)676ySv6C75-Dr%77bR-@5}6DU^R~|DaLI%ZJw{US?sD7oh*6j z<9|-X-?_Z+0Sh^+_0w9?M6a`21l`1I@=RI>ckHU|x2Csd@#O|&^1abP7sIP7IUdCi zrOK2Lwz#rVZX9-3=@F&-vy*K>S7&8Aec2sc4&aJC{_{hB@8e+M=1p$4vTql<82z#5 zfrIV5l2=WA!xy^Hvm`$yZC&E`^DHek#|{LlY3Yc&)r&?s^R6b3Jud71Pv*^gd+R26 z#4dMli+$PDIUYMNP@*xcRA{~&aI!Bq$Vgi=Wo2gi@hBlNELAA=CIWX z{m!@)vwYEQX-D|Hkc$GTu4u6b4&5o(-jr7f(4X zb5L-vpLA9Qoc8;H%BEp#KVs>J7u4=^vP&t5%lbd7yXrL3t{Kv9p1y9IPG;+!OSkXG*y{8o7Gkf;}I{3 zZ5r$AhHi^$%C5mAH&Wc|nn}mL&rjHzX6wG3WYu5uXo)crCZc!>ZOZ?ytQ=4FA4U(P zQdAWO@-iuXbVw=FLC;!a3k{*M{C;55n_h}-9X?3ar?eQ{x5!AsjTfDhnY=ZTa6c9= zDMe$`39w|#6eZ*rRuf;zb));Ud-U;YX3a&TG9$#=<~ujzx$E&a)stHoO73WG-r7Hg zODy&``OmV7wmr#7Bb?5AvHyOO`+(8gr`xPK7OgpQXc~C;ua32~aTFXkiAcuIO!mf8 zn19(aG4@5n4>J1S#j;gwE{q&$&2BM;GB`%7xaEQMJ*y4Bp?z`dnY&G9&2mP+GHiVM zkc-n*lEk|CbHAH~ox?W%ayv8R64cjoEtO-=wz#UT$Jyy-&DzRZ zypNEgx2tDn|4#dz zi0c1uo}D%M(eaV-r%p-U7Gm*(hmuNiXpA;)!E!V8dOs#))glSIK*SuAKE~xN?`s-1 zzvAiULv+ULFkDmqirA{0>XplC$~(HkXB&}GHPu#R)QrIXe!S(j+r=#x7vEJ7&Yt4> z_~v`hOAb!4yEeOOjO%CU=XP8iTiU&6a(@;Pr(Vk6T85n83Rh+#kCT+B4wxlIYd>83 zI;CTs+|s>qA5@zg-1UYrRhNc;>hZIo_thlw??2dGAg_?K=&>23{ke53HZ~u-mu__W zVm;1XOwm%{5-d7(;P|>WTyEeImnPg81%;GP7EQurvV_Kok4kdeKXR9hB<`8opSE#F zZc|xX@jH8Y?y=K!(KZiVbgctq#)m%-E|r9m6w_=}{~r-5-$#FwwKH_lh)lBusu`Mi zV)8}C1;qZ=Nuoq@H2&d^C#Tvo;#*y7>I%1$hI<6>)V#G^_m9`}%6VzkM6WtKl}mi{ zdxp*TK|xL%ZJ3zt&B+Z6L~tLlhx2@4+#8+s7)PPPWN&OebE!>l_ug)l-%i74eahWC z%sX2^I)8HVSF6WZ`MqoY+mJQ_!`cd5wJ(Y51icwwxgJTQWl?69Y^f@#T=eCKnbG0) z_sGgAD1tVvlB+JCpF$h1+yxl%L4}USsU3% z?3Qynm;Y>z)oRsd56!HtuU?#G<4pbd&X+Ft@~3F*4#%(-9Zw*|x@b@Tld{LqXe0Qq z`EBz}g$;bl^pT>aP2d>_w~9CvcsQ}cA^2WLWDjeFufy)9K<(vWlNm`5hvrOqi4Oft z;!FRRkJbO1J+v#faOprt;_oc?f8-t!5=EMDXJT1)?}1d6htBm3lD4f_=CE3Y+4ehptv52~M3 zQERgWMjCyc?H3R&egAFip-UQroL@Ih-{E&TIpq_d(3mb0PhR9=lV{a)ZX9l}`x;V6 z5~rGONP%T*Nt8c38}AS;(2}PW(WQd0G3wgpRWAAUHA^vg=c_Xc*DY$aEQ>SWYJY6- zl9!WJ6EUN4L)FKxPE-Frj1-D_G4n(zc;G{~Y71f;t)0AzBj3y616ArCQ>WP=+;}f` zi;(!HppXh4%j;|D5RuFRCpp+aq7 zCH?B$`%{avFyF*)`8U% z`l&=BjQ)ObE8UBjnhFq@7nWMT$u_QB)_aNgMU|~<#%39K1RQa?7GXV7GrCpJiH!B&;0YtUH$2)3?5=`z<=|5Q*v_>uYN{Ge`jWDVP|$Oaq1}8Ik$e7 zL2s6~x;sO2F5&Mzjz29nZs`4QTaPcU^B_QpT*xN1hh{lo^uy`H#CTCxs;yhv>F*!y zpDO29RqsdY=^W@R%H2RqZvC}&>C>~1a|0dvql7*lXECp}-MsXb%}cWs%?!u{rcbeU z6gp7~O_DMeRniG~hT_~-yr)#tP5Y|(K)3IGo}I#zNrlurTR#`y%2uj9yp^i6T%;El z6YP8LEk2ykv!=)IYyZA^cPi40lNQp>hL2?JUphL>slNZboa_yU;aan4L0zTKivD;Z zFC;3zDD`}*cu8QVmxFvpN0K)&(C2@jVZh4D7yf!O<#V>O!1{(;@kKcv4vs`U?5yt> zHj%}s#!A7%(T5s@Q&yhnVF$^-^1oZDR@OGGfxF48-3m=8E$7D@pWmfrW-7aptNOD< zCywwWm(qm@1oM)nzP>(_h=`6KB`qzxLc`P|>Bjy0Ng0`$s@X=WEpHX0wFk45932Y* zpZ8Bpq^6~%?Twf)=cA;eVvtHe83tTD7QWLI0dlPzqC@@0>%=Q*us%UGwNeA18H2~p zs^QeJYdJd?1DX$jYAJMg4*JN*$*D?9yURxiX%7C0N^bPai-xaJb!9qz`olmw8k^!# zb^uGXsCl~EY5toLssIr#Yl|1|7ScfWQA_US#V@4wrM83Nkr5H&jyF-4Rs1kS5%s61 z;?j}5fm78U7dkYjj-SU!QyqVtgkgPRMLY>l$F6nf&Kroor-CQ8@1#iKH9ev-0HTlE z)2Bv1Kfj_1syiADS^!aApcZ_1-|gluid!fABi;lUaxhzuJNSA2_Ea<`N`g`H;aUie zg6njjnJ0y-$6@I5p_nM+hw@b{TEuUf*Yfr_Mx!rQs&V@Pq3gFhJUOeYs(k6mF3C9$ z$F%kxyAX3l6sN_;7frg}KF8yeyhJN?xFuh4$SJq{IG}lgu$}6EU`JmHp$zKO)YM!8 z_|9RwhQc4c6gXDzrt1Y+&jo)oZG#kO4ABRM!hTBHNI*I2FWIQ_v1w*}f=4zlBRtd% zJ_V@;;WsOvZ0&MQ6NkCTRph4#sR0+cvi`x_vx6c)3N;)R)Pzq6+pD1MU1Wmg7YLX} zD6II!oWA-o>OPArLhs)mLrU@B;h=bk@V)3~?a*a9FyWA`{jOJo|s#wk9l( z_HE)k80hA9aua1XlxnmJ9wvi7rcz`-tJ`oh=Y9zG8G{sfpX>Z&XfVa`n0CF5iJ?bL z@#njd6lD-D3^)cN(n0Z46BmDq`cc%Kx|dWA^7{HQ&I>Tb4Kj}A|0a%DbBFGS6UJ{}C&1g-1@DAz}U z*!>d%9D8=}Rzy#6GgNY>b*w4Rqq5JC#l^&i(6US{I3B|z+zeIL>e^Zr@LkhW6-`Z32yP){dRge` zuHL?Vdl=R(?$>#ovM`~k`b+>_* zu1fO4`eK7iy`2so*pt2q-0MDbK6jcP6!wNNYHA~q zFwLMdpODa)uPv5TYrtCWTg>pxkvbO(ak-G`XRpn!u6# z(q%uAjEfSb&c24AmoJCI^q>gw2HbM7DbS|M3RmYk+55Wf$S25?VD}smoQDjsCq2YW z@1uMt9YEan;;Pl0I+k4y%%1cy6={TX% zw&0s-gu{5gZfZzCfc|)1pSNx%gd9H;z13vL2(zNuAc$?SUr52U0>(3EURN&SAYAmT zJ)|IXd$1vrG}?}0?n}@WjyM!y4;&+rdUSg_QJfFKp$MKPp;kzq@6CrMb-UyR2!y(L zm6lUboVYD@?Xn7!<$ZMCzCjaoSuqbdju*hdAcq|puksDKEzhBOtM}Oqx5cX21&i$k zADB602LE7#uYSL1EYg54`l$!Ac z&_lJJ=)Q?=3^knji?AjjYsjF_x&>O4+1Mbn%@5djX4~VWrfuBV(51d*Q0<)mHvhq4k zly!@$Ix`!a93;DA(IbD+dBv76hOeIOF}1asD4HK0ii=dkks`L|>U8A#xeGmz4rh>} z7P3vl$!51*1$V)Eyh{_00tLHPuwq)GE^i;}DItNS)r`tZl!XQZg*HB{l`PDeJ z1*XR>t5_Mpv27DSRI&_O(Io*;dpIjbBH8NgIA zq-+@z9>gEcBJp+T5$SG>jJRb?B>Tgpy7AMUE-p%+Xs>5~=Uh+7*rgK4cIwicYbi-R zu*m4&X_~Oms@m)2xg-{op|h4Thr8N4;y!v2A+KHQ-dsMEJ}FpsCWhKkTpIWV&I-SJ zV|jV`Vg9x8f(dFVSfmg<>=FL%YWk!TD)v*bzPPY+rr2iQAU-8cz0u?iT1hAb8Bd z>FDmU*0BNyhP~qOIgRg*K48^p>ubXZg(r43WZBOekrQTcygm1IgWW4D6e*Cx%t28L2 z7DUzO)>G1^#g0_4zf`Fmf4mE?h%B=eXlUUKsk3oa<>^MxCuj zQ*?GF`f_|}OTR2ETYA+dG^RvY*Dr46TiDChApRo#zpECUW2=_N)cu#qfBCxz%$6#= zJy^5zR1@E&yeTB?6MAz@AZZQhYi6rf1Y9IP^t1@Bj*!+Z zHH%DhJ7)(&&A^sc6#!$#Hyxs2p9yteG|-)Kc>L_ilY5{3`HLVY;e<$skKj$KBOcSr zHBAPI`rYW>F=Pf{`Ne}P2XV|s!pwktC)EhCYkH}D$9b9|&e?BKF8A|3Pbh-?80ba~ zLtBK+no)|NYlXM5K!rL9FYP+)j2H5REWB!R@g%6IpTShmfd3Lkp2YO~QE zKKuqbAzQ8_B&IaVa1_OW(sK_+Y^lLzjjrHZ3bZ@P3QQ1O zl0fM8@R&N(YzUK&D6b7oE?HPiA{nThjdU32|7J%HXZL~dy8$Y4I3dG1f_;JM1Xl= zL=O_wTxtf+ZU=jLrr%#-82*AV=jiQ-1y5IsrJYp>Jv@GpZ$1^APkhM7W#!}IY6dh) z@NyC>jg__BQsofu_K%E=Sl$OCyS|Nqg(ac3&5!)P2p^^?S7rciJs$n@hJoNSl#FJ61i$-OQ$E{i|yKrRTrU$nfkcBdana zhXNyA(XDK|rJ?m?Aq7D;iD71b`8XD2tW$@)!{?dX3!U^+)o#+hY8g<>3=&FcJGYSV z7o$Vnc{`QF(+(}~FO;aL)hI}-%%z3~<~w^?K3vuL6;;O=`EZQte800@Zow}n?;j{)7az}$|)VJDteFVWkC@1Zc1;CAI7JIpx-kFHgp7j?O{-h z=*q9h^g}5H<9@lhHog`-p>+lxzKup583yS-xyEhs*k!F?zRiNj#@|DXgCat8Fs!sP z^qVG5RJ83dE0S1W`q-G5JRy86tqi2iLbX(#oAlF}4I+tmBb{0Y(xJ#; z(p{*j^x@f_viyOd8~VAO1Lk})kmS6F^pw3K_1$oSZf*^8t=+>`?6FG7#lvPVVQUd? zGE~ zChg`nsd-;SwVtWYm@;6HyR`o=nlldftUDfG?f;ANOyF(7*r`Fj@PtC_)Dw%L87|+F zuxaV_=%pU6Q!LKClXK4Pt_ott{&;&mxS{9YZ4~N-kme_0d#GN!_5|&l&1tuPmY+bCuV05%_;7lo+?U8ewJ2N3{nsw9q{8sG@Y+BSKFADg_Al{c7${f zv4p#ik4?SZ%+D_#5fclOeSR@WKyNk(&ugcX2gqa@mW8y-euP_yHP?)2C^Le`dN|RY zjK%(Yr3P%Gz5vdVXKth?*KZ>^Z!Bl7WA#zCk z?0DG3$LFQGj);#Ks+HfSU3(aoy|e&V--7d>g2u(SNDqb^V?Br&Dro*4L2Sh~$3Kc7 zb+9D%JM3D6=6}@VmBb)3AG<^=m^muKWsIFaLqwM0Hr-zc69q|lOec{uPtMR#l=Ms~xwI zy(Z-+9y2q$CoMq|?TeAQRaHTK*ZigwXw;o`A5AIHv#i^`p7KA~FDc8^en@yMYsy=k zD(R`{0f*~pqnA%l{jobxI7aL8?X{lXE?T_(TWR;#)-u#5fx{@|u&A<+R~>ss6DNOo zv?Iduigy4dzkDpyIabk!L)N^ z-2hwTqG{2r8nCIW6+S21uoc2t_4ei}9uu-P_cc-4V{rHGNO}cr699#9hFA1EfB(Ju z{YzBWPD5yTk_+XPR}rzA3=0?%}!XJc1yjB zAgjSa2k(ep3jFWbmlz_seS5Y=pSawM^Oqx?=0XUl1Dj*}z1m))DnwG3SlndiiL|ZXau(4DlIykb7 zT3Cqd<7E>jAdGj%7@8zOm5l=+6uc03PWp`bsQ&;@FxCBTk*T*g)oHUwBBp8l17m>- zVd0rXhiorvItyK1JgeN#7jjNwYWF~-G&578Lb!^~jPF66F2({E*ZaFgh<);Ex{%eT}wkhZfs67jWxq~rCnI#H8#vFo#xh)GKRIT6f$p>TEhVHO2; zU*Et$EM)YDh>Z)AKQo%yUuf*4sT+O zQ<|qEG=CRa`Wao%#$O+cAjPkG&9OQm?S-hrNH9!&B61A(=g+@D+pHN{k7OPe_+i!CPhT@EzxnnWyY>)iVJ+|(n94>U9_@U|srR&ab?!#;%>p&pk0PKw+$LWy zu9mFNuV(?@0}dtcH{!4k%sd8j)=MFyW9&(VX#N@YX}05T zq?8{pRG0ctHgO3FV=RYX3``2w>xzP9{WVFj&qixd@~=g*mQg&3eS$|@x`cRsgsj9SDok5~mr#r>>08`%u(j)BUt zQc=lmI%uwlrE6sM3a=%)fJ$l>2jY>&QuABJ5H0?Cp2X`Ap80%LT2{9C@d1&aEAM~S z&O0ys`XOdYsr99>sHg>k<7AytXiPUp`-mg}N4wYi>G^O^Nr_eDV(G#4+Q{L&qcGa) zK;>pj_i``+;sZDO3nUJS4uiS~;pNvN+NFyf+aK#6_|vb{qkCmRTUPv?taC)Irf9md zZM0%&Ny&Ylg8OURcCyxPcVB;gidaTVm6bc;07PR(QVQhNZ(0Y&JYrM9&@QIoJ>068+gG_lmb{R{mpT959kZW$t15xQ(MF9SuXkgce#4D&NWFx-H}Kq%DGiJIuKoQ) znqldPUf=rCU%DP-E~@SY3kagH^Lm}bj29lVQ8$;JgM;AS+FnaWj9SGdY}VFBliXro zbG~UWs@$9VauHs(-fnw2bOW?fi{@U+ENUz`7B3C6-c@vZgU27i%RBe5*bfQQQ>z+Z zuA;@k(E6gD2_V>KDnOYZIrjky2iCz!4A$s2U}a*GM2PnCf`N28nE(TcuoB_L*ow|O zBr*MDavUJ1qF<$Z%e);10@WWt8`RF;K1iS~KZ#VLLzufzvtrHB$eTI*y)*= zDi;s^hHYw*QYzYc!>lM4U06XfMCWQ9(jB0d8PkKwWdi|gxolqaH^U(1eC(31064m z-ya_!get@P=tI!fmFM}5*h}p|nM_bfGK2*VuTTgVFo3r-q7OkA4wrH3In0RE_2e9^ z^rahw!@mdt)^gL_Q0zzk3J5s!r=B=`_zr-CTZj*35rJ!_-TFITH8E)V9n!aV?+esV z5ok;P156Nxu5l~<*|VW<-!e@jt87}NJwPk85H?*n_tltvdK6aVTAOGS-p&xsdb6@Z z2*eMl^*s3<7t-wdeI>#wf-vi)-U4VbCvZ2;@}rnnsfQt1_mC9(>PI-uX$D(Bt+(C+ zWeZlGCZx=Oh5z%P?^6p%qr>!odzb(ZGXrX03*@j4agQ828Ubz~7z(z4MmsNRLI7A0 z<}G4amK;JGNJeqFtV}+$`}JX$7ripdHddqUoa8(t&(u|Xfg}} zHW~Ed?LH6v=lT%@As-lIuwT43fNivD8Kbe$i?jTim{?;crMg^JhB^1;DD0WK=%Z&nS$>|`1~^Y>`sE*+r3 z;aSN>2AG~oMnOl`-24|msRRw1ldnA{(KKA(_}OAmJ(R~pR#&%|pNtn{;avnVQke&1 znfx^Srx9O8Omkyi#Ca4~I39N4>g03p8)(l~d7cn#9ayeqj9&9ejCO0dgOG0fX;!i+=Kc=y~(xu zSTsiy?hS*AUO^245cOMxUiRPr-ZcXxIRQ0RcP}qh#2ExE?Dph|Buo3q0*(ri^FW%I z1(7j1400&yh-ao;J190)X)=?$i-;q>PBufil;y!GDoOezToAh+X!IaGmJI5`zjHzQi2 z&>We9>Zl6j5UQ)I8~5>cMIqoL{aUr+qaiA80D=i$gXTIXX?b}y2o~dfHDd&q*9k$j zlTI_f(?v}32t%R1nS$(D7>$aZIUQph^oa)L7S8WbkyqCqs{6b zq60hyA&3MKFrr%yQRB#mT_=f3q5J5-8Z3WhLxTcBgl6<`Y3tYHuFy32ZBd(m(1cL0 z;`#GiVYSHy$QucS=O?O3RVUNF=$p3rFkNIA?nX~T~qV( z>gdOQusYi&Sb^Nj2x&GE_d$)2XcvTULwq9fw7D zZwKWdX@t*e4(K9LTz2mGjxcN@i}vJgBio}bu|%I+w^gHv*x;C4h^83jrR zPv}ceAfp@f7Yd4%14NsctL5zb?FW9MP)U?Eh?k5VpA3(R2OPdfT!TV#gU~gQL}UYA zUV-!&o}@~0oOHu}yJNw!@sYJ>1m7nh5$gMjFye{`r--852EPOx#Vv*$KKee{e3P<` z|98EyNwOiXkVm!2Q2GD=`TzYj`L*7ezI|igTwZH^tbG*i8txlyFBG@Lkk;T&+L;Za zHHF4s*gg1@^v?!ii$d)aL8_vlVBKVQxl(O5^8J7P>)Rq$olUAFtd@y;krI=?mU89R GqyGy)GW^Z} literal 0 HcmV?d00001 diff --git a/img/consensus-rounds.png b/img/consensus-rounds.png new file mode 100644 index 0000000000000000000000000000000000000000..b8172c0f0127a2b7a8d23c93d7e191c66058acea GIT binary patch literal 156443 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 literal 0 HcmV?d00001 From 360f98a152ff83a3357234cbd70bbe0cf64f3ff4 Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Mon, 20 Aug 2018 16:35:52 -0700 Subject: [PATCH 3/4] Consensus Intro - revised per reviews --- .../consensus-protections.md | 16 +++++------ .../introduction/intro-to-consensus.md | 27 +++++++++++-------- dactyl-config.yml | 2 ++ 3 files changed, 26 insertions(+), 19 deletions(-) diff --git a/content/concepts/consensus-network/consensus-protections.md b/content/concepts/consensus-network/consensus-protections.md index 79ae6016b1..45d319e359 100644 --- a/content/concepts/consensus-network/consensus-protections.md +++ b/content/concepts/consensus-network/consensus-protections.md @@ -8,7 +8,7 @@ This page describes some of the types of challenges that the XRP Ledger Consensu ## Individual Validators Misbehaving -_Validators_ are servers who actively contribute to the process of deciding each new ledger version. Validators only have an influence over servers configured to trust them (including indirectly). Consensus can continue even if some validators are misbehaving, including a large variety of failure cases, such as: +_Validators_ are servers that actively contribute to the process of deciding each new ledger version. Validators only have an influence over servers configured to trust them (including indirectly). Consensus can continue even if some validators are misbehaving, including a large variety of failure cases, such as: - Being unavailable or overloaded. - Being partially disconnected from the network, so their messages reach only a subset of participants without delay. @@ -20,12 +20,12 @@ In general, consensus can continue without problems as long as only a small perc If more than about 20% of validators are unreachable or not behaving properly, the network fails to reach a consensus. During this time, new transactions can be tentatively processed, but new ledger versions cannot be validated, so those transactions' final outcomes are not certain. In this situation, it would become immediately obvious that the XRP Ledger is unhealthy, prompting intervention from human participants who can decide whether to wait, or reconfigure their set of trusted validators. -The only way to confirm invalid transactions—such as those spending money that has already been spent, or otherwise breaking the rules of the network—would be if more than about 80% of trusted validators colluded to confirm those transactions. In other words, a large majority of trusted validators would have to misbehave in the exact same way. With dozens of trusted validators run by different people and businesses in different parts of the world, this would be very difficult to achieve intentionally. +The only way to confirm an invalid transaction would be to get at least 80% of trusted validators to approve of the transaction and agree on its exact outcome. (Invalid transactions include those spending money that has already been spent, or otherwise breaking the rules of the network.) In other words, a large majority of trusted validators would have to _collude_. With dozens of trusted validators run by different people and businesses in different parts of the world, this would be very difficult to achieve intentionally. ## Software Vulnerabilities -As with any software system, bugs (or intentionally malicious code) in the implementation of the XRP Ledger Consensus Protocol, commonly deployed software packages, or their dependencies, are a problem to be taken seriously. Even bugs that simply cause a server to crash when it sees carefully-crafted inputs can be abused to disrupt the progress of the network. Ripple has a number of precautions in place to address this threat, including: +As with any software system, bugs (or intentionally malicious code) in the implementation of the XRP Ledger Consensus Protocol, commonly deployed software packages, or their dependencies, are a problem to be taken seriously. Even bugs that simply cause a server to crash when it sees carefully crafted inputs can be abused to disrupt the progress of the network. Ripple has a number of precautions in place to address this threat, including: - An [open-source code base](https://github.com/ripple/rippled/), so any member of the public can review, compile, and independently test the relevant software. - A thorough and robust code review process for all changes to the official XRP Ledger repositories. @@ -36,25 +36,25 @@ As with any software system, bugs (or intentionally malicious code) in the imple ## Sybil Attacks -A _[sybil attack](https://en.wikipedia.org/wiki/Sybil_attack)_ is an attempt to take control of a network using a large number of fake identities. In the XRP Ledger, a sybil attack would take the form of running a large number of validators, then convincing others to trust those validators. This sort of attack is theoretically possible, but would be very difficult to accomplish because human intervention is necessary for validators to become trusted. +A _[Sybil attack](https://en.wikipedia.org/wiki/Sybil_attack)_ is an attempt to take control of a network using a large number of fake identities. In the XRP Ledger, a Sybil attack would take the form of running a large number of validators, then convincing others to trust those validators. This sort of attack is theoretically possible, but would be very difficult to accomplish because human intervention is necessary for validators to become trusted. No matter how many validating servers a would-be attacker runs, those servers have no say on what the existing participants consider validated unless those participants choose to trust the attacker's validators. Other servers only listen to the validators they are configured to trust, either through a validator list or explicit configuration. (See [validator overlap requirements](#validator-overlap-requirements) for a summary of how the default validator list works.) -This trust does not happen automatically, so performing a successful sybil attack would involve the difficult work of convincing targeted humans and businesses to reconfigure their XRP Ledger servers to trust the attacker's validators. Even in the case that one individual entity was fooled into doing so, this would have a minimal impact on others who do not change their configurations. +This trust does not happen automatically, so performing a successful Sybil attack would involve the difficult work of convincing targeted humans and businesses to reconfigure their XRP Ledger servers to trust the attacker's validators. Even in the case that one individual entity was fooled into doing so, this would have a minimal impact on others who do not change their configurations. ## 51% Attack -A "51% attack" is an attack on a blockchain system where one party controls more than 50% of all mining or voting power. (Technically, the attack is slightly misnamed because _any_ amount over 50% is enough.) The XRP Ledger is not vulnerable to a 51% attack because it does not use mining in its consensus mechanism. The next closest analogue for the XRP Ledger is a [sybil attack](#sybil-attacks), which would also be difficult to accomplish. +A "51% attack" is an attack on a blockchain system where one party controls more than 50% of all mining or voting power. (Technically, the attack is slightly misnamed because _any_ amount over 50% is enough.) The XRP Ledger is not vulnerable to a 51% attack because it does not use mining in its consensus mechanism. The next closest analogue for the XRP Ledger is a [Sybil attack](#sybil-attacks), which would also be difficult to accomplish. ## Validator Overlap Requirements For all participants in the XRP Ledger to agree on what they consider validated, they must start by choosing a set of trusted validators that are fairly similar to the sets chosen by everyone else. In the worst case, less than about 90% overlap could cause some participants to diverge from each other. For that reason, Ripple publishes a signed list of recommended validators, including trustworthy and well-maintained servers run by the company, industry, and community. -By default, servers in the network are configured with the URL of Ripple's validator list site, and a cryptographic key that can be used to verify the integrity of lists published to that site. In case the site goes down, the signed updates to the list can also be relayed directly among servers in the XRP Ledger's peer-to-peer network. +By default, XRP Ledger servers are configured to use a validator list site run by Ripple. The site provides a list of recommended validators (also known as a recommended UNL), which Ripple updates periodically. Servers configured this way trust all validators in the latest version of the list, which ensures 100% overlap with others also using the same list. The default configuration includes a public key that verifies the authenticity of the site's contents. In case the site goes down, servers in the XRP Ledger's peer-to-peer network can directly relay the signed updates to the list among themselves. -Participants can configure their own list sites or explicitly choose validators to trust on an individual basis, but Ripple does not recommended because doing so could cause you to diverge from the rest of the network and lose money as a result. +Technically, if you run a server, you can configure your own list site or explicitly choose validators to trust on an individual basis, but Ripple does not recommended doing so. If your chosen set of validators does not have enough overlap with others, your server may diverge from the rest of the network, and you could lose money by taking action based on your server's divergent state. Research is ongoing to design an improved consensus protocol that allow more heterogeneous validator lists. For more information, see the [Consensus Research](consensus-research.html) page. diff --git a/content/concepts/introduction/intro-to-consensus.md b/content/concepts/introduction/intro-to-consensus.md index 857a453ce1..483ea2ff29 100644 --- a/content/concepts/introduction/intro-to-consensus.md +++ b/content/concepts/introduction/intro-to-consensus.md @@ -1,6 +1,6 @@ # Introduction to Consensus -_Consensus_ is the most important property of any decentralized payment system. In traditional centralized payment systems, one authoritative administrator gets the final say in how and when payments occur. Decentralized systems, by definition, don't have an operator to do that. Instead, decentralized systems like the XRP Ledger define a set of rules all participants follow, so every participant can agree on the exact same series of events and their outcome at any point in time. We call this set of rules a _consensus protocol_. +_Consensus_ is the most important property of any decentralized payment system. In traditional centralized payment systems, one authoritative administrator gets the final say in how and when payments occur. Decentralized systems, by definition, don't have an administrator to do that. Instead, decentralized systems like the XRP Ledger define a set of rules all participants follow, so every participant can agree on the exact same series of events and their outcome at any point in time. We call this set of rules a _consensus protocol_. ## Consensus Protocol Properties @@ -11,13 +11,15 @@ The XRP Ledger uses a consensus protocol unlike any digital asset that came befo - All valid transactions are processed without needing a central operator or having a single point of failure. - The ledger can make progress even if some participants join, leave, or behave inappropriately. - If too many participants are unreachable or misbehaving, the network fails to make progress rather than diverging or confirming invalid transactions. -- Confirming transactions does not require wasteful or competitive use of resources, unlike most blockchain systems. +- Confirming transactions does not require wasteful or competitive use of resources, unlike most other blockchain systems. + +These properties are sometimes summarized as the following principles, in order of priority: **Correctness, Agreement, Forward Progress**. This protocol is still evolving, as is our knowledge of its limits and possible failure cases. For academic research on the protocol itself, see [Consensus Research](consensus-research.html). ## Background -Consensus protocols are a solution to the _double-spend problem_: the challenge to prevent someone from successfully spending the same digital money in two places. The hardest part about this problem is putting transactions in order: without a central authority, it can be difficult to resolve disputes about which transaction comes first when you have two or more mutually-exclusive transactions sent around the same time. For a detailed analysis of the double-spend problem, how the XRP Ledger Consensus Protocol solves this problem, and the tradeoffs and limitations involved, see [Consensus Principles and Rules](consensus-principles-and-rules.html). +Consensus protocols are a solution to the _double-spend problem_: the challenge of preventing someone from successfully spending the same digital money twice. The hardest part about this problem is putting transactions in order: without a central authority, it can be difficult to resolve disputes about which transaction comes first when you have two or more mutually-exclusive transactions sent around the same time. For a detailed analysis of the double-spend problem, how the XRP Ledger Consensus Protocol solves this problem, and the tradeoffs and limitations involved, see [Consensus Principles and Rules](consensus-principles-and-rules.html). ## Ledger History @@ -25,26 +27,26 @@ Consensus protocols are a solution to the _double-spend problem_: the challenge The XRP Ledger processes transactions in blocks called "ledger versions", or "ledgers" for short. Each ledger version contains three pieces: - The current state of all balances and objects stored in the ledger. -- The set of transactions applied to the previous ledger to result in this one. -- Metadata about the current ledger version, such as its ledger index, a [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) that uniquely identifies its contents, and information on the parent ledger was used as a basis for building this one. +- The set of transactions that have been applied to the previous ledger to result in this one. +- Metadata about the current ledger version, such as its ledger index, a [cryptographic hash](https://en.wikipedia.org/wiki/Cryptographic_hash_function) that uniquely identifies its contents, and information about the parent ledger that was used as a basis for building this one. [![Figure 1: Anatomy of a ledger version, which includes transactions, state, and metadata](img/anatomy-of-a-ledger-simplified.png)](img/anatomy-of-a-ledger-simplified.png) -Each ledger version is numbered with a _ledger index_ and builds on a previous ledger version whose index is one less, going all the way back to a starting point called the _genesis ledger_ with ledger index 1. Like Bitcoin and other blockchain technologies, this forms a public history of all transactions and their results. Unlike most blockchain technologies, each new "block" in the XRP Ledger contains the entirety of the current state, so you don't need to collect the entire history to know what's happening now.[¹](#footnote-1) +Each ledger version is numbered with a _ledger index_ and builds on a previous ledger version whose index is one less, going all the way back to a starting point called the _genesis ledger_ with ledger index 1. Like Bitcoin and other blockchain technologies, this forms a public history of all transactions and their results. Unlike many blockchain technologies, each new "block" in the XRP Ledger contains the entirety of the current state, so you don't need to collect the entire history to know what's happening now.[¹](#footnote-1) -The main job of the XRP Ledger Consensus Protocol is to agree on set of transactions to apply to the previous ledger, apply them in a well-defined order, then confirm that everyone got the same results. When this happens successfully, a ledger version is considered _validated_, and final. From there, the process continues by building the next ledger version. +The main job of the XRP Ledger Consensus Protocol is to agree on a set of transactions to apply to the previous ledger, apply them in a well-defined order, then confirm that everyone got the same results. When this happens successfully, a ledger version is considered _validated_, and final. From there, the process continues by building the next ledger version. ## Trust-Based Validation -The core principle behind the XRP Ledger's consensus mechanism is that a little trust goes a long way. Each participant in the network chooses a set of _validators_, servers [specifically configured to participate actively in consensus](run-a-rippled-validator.html), run by different parties who are expected to behave honestly most of the time. More importantly, the set of chosen validators should not be likely to collude with one another to break the rules in the exact same way. +The core principle behind the XRP Ledger's consensus mechanism is that a little trust goes a long way. Each participant in the network chooses a set of _validators_, servers [specifically configured to participate actively in consensus](run-a-rippled-validator.html), run by different parties who are expected to behave honestly most of the time. More importantly, the set of chosen validators should not be likely to collude with one another to break the rules in the exact same way. This list is sometimes called a _Unique Node List_, or UNL. As the network progresses, each server listens to its trusted validators[²](#footnote-2); as long as a large enough percentage of them agree that a set of transactions should occur and that a given ledger is the result, the server declares a consensus. If they don't agree, validators modify their proposals to more closely match the other validators they trust, repeating the process in several rounds until they reach a consensus. [![Figure 2: Consensus rounds. Validators revise their proposals to match other validators they trust](img/consensus-rounds.png)](img/consensus-rounds.png) -It's OK if a small proportion of validators don't operate properly all the time. As long as fewer than 20% of trusted validators are faulty, consensus can continue unimpeded; and confirming an invalid transaction would require over 80% of trusted validators to collude. (Anywhere in between, and the network simply stops making progress.) +It's OK if a small proportion of validators don't operate properly all the time. As long as fewer than 20% of trusted validators are faulty, consensus can continue unimpeded; and confirming an invalid transaction would require over 80% of trusted validators to collude. If more than 20% but less than 80% of trusted validators are faulty, the network simply stops making progress. For a longer exploration of how the XRP Ledger Consensus Protocol responds to various challenges, attacks, and failure cases, see [Consensus Protections Against Attacks and Failure Modes](consensus-protections.html). @@ -52,12 +54,15 @@ For a longer exploration of how the XRP Ledger Consensus Protocol responds to va ## See Also - [Consensus Network Concepts](consensus-network.html) for several articles describing the mechanics of the XRP Ledger Consensus Protocol in greater depth. -- +- [Run `rippled` as a Validator](run-rippled-as-a-validator.html) for instructions running your own validator. +- [Decentralization Strategy Update (Ripple Dev Blog)](https://ripple.com/dev-blog/decentralization-strategy-update/) for a description of Ripple's goals and plans for decentralizing the XRP Ledger. + + ---- ## Footnotes -1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Unlike the XRP Ledger, a Bitcoin server must download the entire transaction history to know the full set of UTXOs and process new transactions. Currently (as of 2018), there have been some proposals to modify Bitcoin's consensus mechanism to periodically summarize the latest UTXOs so new servers would not need to do this. +1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Unlike the XRP Ledger, a Bitcoin server must download the entire transaction history to know the full set of UTXOs and process new transactions. Currently (as of 2018), there have been some proposals to modify Bitcoin's consensus mechanism to periodically summarize the latest UTXOs so new servers would not need to do this. Etherium, which also uses a UTXO model, has already implemented a similar approach with summary of the current state, called a _state root_, in each block. 2. A server does not need a direct connection to its trusted validators to hear from them. The XRP Ledger peer-to-peer network uses a _gossip protocol_ where servers identify each other by public keys and relay digitally-signed messages from others. diff --git a/dactyl-config.yml b/dactyl-config.yml index ae038719a0..de8aa7feb3 100644 --- a/dactyl-config.yml +++ b/dactyl-config.yml @@ -459,6 +459,8 @@ pages: doc_type: Concepts category: Consensus Network blurb: Learn how the XRP Ledger Consensus Protocol is protected against various problems and attacks that may occur in a decentralized financial system. + targets: + - local - md: concepts/consensus-network/amendments.md html: amendments.html From 78e82d1bbcbd22bed3098b9c8284d9751805418a Mon Sep 17 00:00:00 2001 From: mDuo13 Date: Mon, 20 Aug 2018 18:30:00 -0700 Subject: [PATCH 4/4] Consensus Intro/Protections - revisions per re-review --- content/concepts/consensus-network/consensus-protections.md | 4 ++-- content/concepts/introduction/intro-to-consensus.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/content/concepts/consensus-network/consensus-protections.md b/content/concepts/consensus-network/consensus-protections.md index 45d319e359..98a715bdf6 100644 --- a/content/concepts/consensus-network/consensus-protections.md +++ b/content/concepts/consensus-network/consensus-protections.md @@ -52,11 +52,11 @@ A "51% attack" is an attack on a blockchain system where one party controls more For all participants in the XRP Ledger to agree on what they consider validated, they must start by choosing a set of trusted validators that are fairly similar to the sets chosen by everyone else. In the worst case, less than about 90% overlap could cause some participants to diverge from each other. For that reason, Ripple publishes a signed list of recommended validators, including trustworthy and well-maintained servers run by the company, industry, and community. -By default, XRP Ledger servers are configured to use a validator list site run by Ripple. The site provides a list of recommended validators (also known as a recommended UNL), which Ripple updates periodically. Servers configured this way trust all validators in the latest version of the list, which ensures 100% overlap with others also using the same list. The default configuration includes a public key that verifies the authenticity of the site's contents. In case the site goes down, servers in the XRP Ledger's peer-to-peer network can directly relay the signed updates to the list among themselves. +By default, XRP Ledger servers are configured to use a validator list site run by Ripple. The site provides a list of recommended validators (also known as a recommended _Unique Node List_, or UNL), which Ripple updates periodically. Servers configured this way trust all validators in the latest version of the list, which ensures 100% overlap with others also using the same list. The default configuration includes a public key that verifies the authenticity of the site's contents. In case the site goes down, servers in the XRP Ledger's peer-to-peer network can directly relay the signed updates to the list among themselves. Technically, if you run a server, you can configure your own list site or explicitly choose validators to trust on an individual basis, but Ripple does not recommended doing so. If your chosen set of validators does not have enough overlap with others, your server may diverge from the rest of the network, and you could lose money by taking action based on your server's divergent state. -Research is ongoing to design an improved consensus protocol that allow more heterogeneous validator lists. For more information, see the [Consensus Research](consensus-research.html) page. +Research is ongoing to design an improved consensus protocol that allows more heterogeneous validator lists. For more information, see the [Consensus Research](consensus-research.html) page. ## See Also diff --git a/content/concepts/introduction/intro-to-consensus.md b/content/concepts/introduction/intro-to-consensus.md index 483ea2ff29..89069944f1 100644 --- a/content/concepts/introduction/intro-to-consensus.md +++ b/content/concepts/introduction/intro-to-consensus.md @@ -54,7 +54,7 @@ For a longer exploration of how the XRP Ledger Consensus Protocol responds to va ## See Also - [Consensus Network Concepts](consensus-network.html) for several articles describing the mechanics of the XRP Ledger Consensus Protocol in greater depth. -- [Run `rippled` as a Validator](run-rippled-as-a-validator.html) for instructions running your own validator. +- [Run `rippled` as a Validator](run-rippled-as-a-validator.html) for instructions on running your own validator. - [Decentralization Strategy Update (Ripple Dev Blog)](https://ripple.com/dev-blog/decentralization-strategy-update/) for a description of Ripple's goals and plans for decentralizing the XRP Ledger. @@ -63,6 +63,6 @@ For a longer exploration of how the XRP Ledger Consensus Protocol responds to va ## Footnotes -1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Unlike the XRP Ledger, a Bitcoin server must download the entire transaction history to know the full set of UTXOs and process new transactions. Currently (as of 2018), there have been some proposals to modify Bitcoin's consensus mechanism to periodically summarize the latest UTXOs so new servers would not need to do this. Etherium, which also uses a UTXO model, has already implemented a similar approach with summary of the current state, called a _state root_, in each block. +1. In Bitcoin, the current state is sometimes called the set of "UTXOs" (unspent transaction outputs). Unlike the XRP Ledger, a Bitcoin server must download the entire transaction history to know the full set of UTXOs and process new transactions. Currently (as of 2018), there have been some proposals to modify Bitcoin's consensus mechanism to periodically summarize the latest UTXOs so new servers would not need to do this. Etherium, which also uses a UTXO model, has already implemented a similar approach with a summary of the current state, called a _state root_, in each block. 2. A server does not need a direct connection to its trusted validators to hear from them. The XRP Ledger peer-to-peer network uses a _gossip protocol_ where servers identify each other by public keys and relay digitally-signed messages from others.