From 425ed6e382bd79697875c53057b15c41e0458139 Mon Sep 17 00:00:00 2001 From: Cr-bubble Date: Thu, 10 Aug 2023 16:45:57 +0800 Subject: [PATCH 1/2] Fixed typo --- src/Dynamic_Programming/Knuth_optimization.md | 472 ++++++++++++++++++ .../image/Knuth_optimization/dp_order.png | Bin 0 -> 24432 bytes .../Knuth_optimization/equal_explain.jpg | Bin 0 -> 75341 bytes .../image/Monotone_optimization/blank.JPG | Bin 0 -> 110819 bytes .../image/Monotone_optimization/blank0.JPG | Bin 0 -> 126955 bytes .../image/Monotone_optimization/concave_1.JPG | Bin 0 -> 142968 bytes .../image/Monotone_optimization/concave_2.JPG | Bin 0 -> 119445 bytes .../image/Monotone_optimization/convex_1.JPG | Bin 0 -> 147585 bytes .../image/Monotone_optimization/convex_2.JPG | Bin 0 -> 129944 bytes src/Dynamic_Programming/markdownlint.yml | 9 + src/Dynamic_Programming/textlintrc.txt | 8 + src/SUMMARY.md | 1 + 12 files changed, 490 insertions(+) create mode 100644 src/Dynamic_Programming/Knuth_optimization.md create mode 100644 src/Dynamic_Programming/image/Knuth_optimization/dp_order.png create mode 100644 src/Dynamic_Programming/image/Knuth_optimization/equal_explain.jpg create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/blank.JPG create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/blank0.JPG create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/concave_1.JPG create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/concave_2.JPG create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/convex_1.JPG create mode 100644 src/Dynamic_Programming/image/Monotone_optimization/convex_2.JPG create mode 100644 src/Dynamic_Programming/markdownlint.yml create mode 100644 src/Dynamic_Programming/textlintrc.txt diff --git a/src/Dynamic_Programming/Knuth_optimization.md b/src/Dynamic_Programming/Knuth_optimization.md new file mode 100644 index 00000000..3860a101 --- /dev/null +++ b/src/Dynamic_Programming/Knuth_optimization.md @@ -0,0 +1,472 @@ + +# Knuth Optimization + +動態規劃解決問題的效率取決於以下因素:\\[時間複雜度 = 狀態總數\times 每個狀態轉移的狀態數\times 每次轉移時間\\] + +要優化 DP 算法可以從以上 3 種下手,本文要介紹的 Knuth's Optimization 是透過減少**每個狀態轉移的狀態數**來加速 DP。 +Knuth's optimization 通常用於解決具有以下形式轉移的 2D/1D 問題: + +> 要求的是一個二維函數 \\(dp(i,j)\\): +> \\[ dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min} \\{dp(i,k)+dp(k+1,j)\\}, \forall 1\le i\lt j\le n\\] + +其中 \\(w(i,j)\\) 為一可在 \\(O(1)\\) 時間求得的代價函數,我們知道這問題有 \\(O(n^3)\\) 的做法,而我們可以利用Knuth's Optimization 來加速到 \\(O(n^2)\\)。 + +- Note : \\(x\\)D/\\(y\\)D 問題是指有 \\(N^x\\) 子問題,每個子問題需 \\(N^y\\) 子問題轉移,因此有時間複雜度為\\(O(N^{x+y})\\) 的DP做法。 + +Knuth's Optimization 的應用可說是非常簡單,以[Atcoder DP contest-Slime](https://atcoder.jp/contests/dp/tasks/dp_n)為例,我們可以列出這個 DP 式(在此就不詳細解釋細節): +\\[dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min}\\{dp(i,k)+dp(k+1,j)\\}\\] + +可用下面這段 \\(O(n^3)\\) 的程式片段求出答案 \\(dp(1,n)\\) + +```cpp= +for(int i=1;i<=n;i++) +{ + for(int k=1;k<=n;k++) + { + dp[i][k] = (i == k ? 0 : INF); + } +} +for(int len=2;len<=n;len++) +{ + for(int i=1;i+len-1<=n;i++) + { + int j = i+len-1; + for(int k=i;k w(i,j) + dp[i][k] + dp[k+1][j]) + { + dp[i][j] = w(i,j) + dp[i][k] + dp[k+1][j]; + opt[i][j] = k; + } + } + } +} +``` + +\\(opt\[i][j-1]\\) 為 \\(dp\[i][j]\\) 的最佳轉移點,神奇的事發生了,這段程式的複雜度為 \\(O(n^2)\\)! + +接下來我們來詳細解釋 Knuth's Optimization 實際上做了什麼。 + +## 四邊形不等式與轉移點單調 + +Knuth's Optimization 告訴我們,當 DP 的代價函數 \\(w\\) 滿足**四邊形不等式**與**區間單調性**時,DP 的轉移來源會有單調性,可以藉此加速 DP。 + +> **四邊形不等式** +> +> 有一函數 \\( f(i,j) \\),令 \\( a\le b\le c\le d\\) +> +> 若 \\( f(a,c) + f(b,d) \le f(a,d) + f(b,c)\\),則 \\( f \\) 函數滿足凸四邊形不等式 +> +> 若 \\( f(a,c) + f(b,d) \ge f(a,d) + f(b,c)\\),則 \\( f \\) 函數滿足凹四邊形不等式 + +在此我們只討論函數滿足凸四邊形不等式的情況,引入最佳轉移來源的想法,定義 \\( opt(i,j) \\) 為使 \\( dp(i,k)+dp(k+1,j) \\) 有最小值(最佳解)的轉移點,也就是 \\( dp(i,j) \\) 的最佳轉移點 \\(k\\), + +> \\[ opt(i,j) = \arg \underset{i\le k\lt j}{min}(dp(i,k) + dp(k+1,j))\\] + +若有多個點取最大的即可,當代價函數 \\( w(i,j) \\) 滿足以下條件時 + +- 令 \\( a\le b\le c\le d \\) +- 區間單調性: \\( w(b,c) \le w(a,d) \\) +- 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) + +我們可以證明 \\( opt(i,j-1) \le opt(i,j) \le opt(i+1,j)\\) ,即轉移點有單調性。 + +### Prove 轉移點單調 + +> 若代價函數 \\( w(i,j) \\) 滿足 +> +> - 令 \\( a\le b\le c\le d \\) +> - 區間單調性: \\( w(b,c) \le w(a,d) \\) +> - 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) +> +> 則 \\(opt(i,j-1) \le opt(i,j) \le opt(i+1,j) \\)。 + +Lemma : 假設以上條件成立,\\( dp \\) 函數也會滿足凸四邊形不等式。 + +- 定義 \\( dp_t(i,j) = dp(i,t)+dp(t+1,j)+w(i,j) \\) +- 對於 \\(i\lt j\\) 我們可以找到 \\(p ,q\\) 使 \\(i\le p\le q\lt j-1\\),且令 \\(opt(i,j-1) = q\\) + +如果我們能證明 \\(dp_p(i,j-1) \ge dp_q(i,j-1) \implies dp_p(i,j) \ge dp_q(i,j) , \forall i \le p \lt q\\) + +則顯然 \\( opt(i,j-1) \le opt(i,j) \\)。 + +對於 \\( p+1 \le q+1 \le j-1 \le j \\),根據四邊形不等式我們有:\begin{align} +&dp(p+1, j-1) + dp(q+1, j) ≤ dp(q+1, j-1) + dp(p+1, j) \\\\ +\implies& (dp(i, p) + dp(p+1, j-1) + C(i, j-1)) + (dp(i, q) + dp(q+1, j) + C(i, j)) \\\\ +\leq& (dp(i, q) + dp(q+1, j-1) + C(i, j-1)) + (dp(i, p) + dp(p+1, j) + C(i, j)) \\\\ +\implies& dp_{p}(i, j-1) + dp_{q}(i, j) ≤ dp_{p}(i, j) + dp_{q}(i, j-1) \\\\ +\implies& dp_{p}(i, j-1) - dp_{q}(i, j-1) ≤ dp_{p}(i, j) - dp_{q}(i, j) \\\\ +\end{align} +又 +\begin{align} +&dp_{p}(i, j-1) \geq dp_{q}(i, j-1) \\\\ +&\implies 0 \leq dp_{p}(i, j-1) - dp_{q}(i, j-1) \leq dp_{p}(i, j) - dp_{q}(i, j) \\\\ +&\implies dp_{p}(i, j) \geq dp_{q}(i, j) +\end{align} +如此一來就證明 \\( opt(i,j-1) \le opt(i,j) \\),而另一半不等式用相似方法亦可證明。 + +
Prove Lemma + +有興趣的讀者可以參考這篇 [Efficient Dynamic Programming Using Quadrangle Inequalities](https://dl.acm.org/doi/pdf/10.1145/800141.804691) + +
+ +## 轉移點單調應用 + +有了轉移點單調的性質能做甚麼呢?若我們將 \\( i-j = 0\\) 斜排的轉移點範圍列出如下: + +\\[ +\begin{array}{ccc} +opt_{i-2,j-3} \le opt_{i-2,j-2} \le opt_{i-1,j-2}\\\\ +opt_{i-1,j-2} \le opt_{i-1,j-1} \le opt_{i,j-1}\\\\ +opt_{i,j-1} \le opt_{i,j} \le opt_{i+1,j}\\\\ +opt_{i+1,j} \le opt_{i+1,j+1} \le opt_{i+2,j+1}\\\\ +opt_{i+2,j+1} \le opt_{i+2,j+2} \le opt_{i+3,j+2}\\\\ +\end{array} +\\] + +會發現前式轉移點的右界剛好是後式轉移點的左界!這樣一想,計算每個斜排時,最多只有 \\( O(N) \\) 種轉移來源,又約有 \\( 2N \\) 排,所以如果我們以索引值 \\(j-i\\) 由小到大遞增的順序計算 DP 表格,算出 DP 表格的複雜度 \\(O(N)\times O(2N) = O(N^2)\\),比直接算的 \\(O(N^3)\\) 快多了! + +但這樣做的正確性呢?若我們以索引值 \\(j-i\\) 由小到大遞增的順序計算,索引值差為 \\( j-i-1 \\) 的 \\( dp(i,j-1) \\) 與 \\( dp(i+1,j) \\) 會在算索引值差 \\( j-i \\) 的 \\( dp(i,j) \\) 前算出來,因此要算 \\( dp(i,j) \\) 時,\\( opt(i,j-1)、opt(i+1,j) \\) 都是已知,我們就不必再跑過所有轉移來源 \\([i,j]\\),只需要去檢查 \\( [opt(i,j-1), opt(i+1,j)] \\) 就能求得 \\(dp(i,j)\\) 與 \\(opt(i,j)\\)。 + +下圖中黑色格子為非法值,黃色已知,綠色為正在計算,灰色未計算,計算順序如箭頭所示。 + + + +\\[ 計算每塊綠色格子只需左邊與下方黃色格子的opt\\] + +以下為程式碼片段 + +```cpp= +int w(int i, int j); // cost function +void solve(int n) +{ + int i,j,k,len; + for(i=1;i<=n;i++) dp[i][i] = 0, opt[i][i] = i; + for(len=2;len<=n;len++) + { + for(i=1;i+len-1<=n;i++) + { + j = i+len-1; + dp[i][j] = INF; + int optl = opt[i][j-1]; + int optr = opt[i+1][j]; + for(k=optl;k<=optr;k++) + { + if(dp[i][j] > dp[i][k] + dp[k+1][j] + w(i,j)) + { + dp[i][j] = w(i,j) + dp[i][k] + dp[k+1][j]; + opt[i][j] = k; + } + } + } + } +} +``` + +## Problems + +> [Atcoder - Slimes 加強版](https://atcoder.jp/contests/dp/tasks/dp_n) +> +> 給定一個包含 \\(n\\) 個數字的序列 \\(A\\),你會對這個序列進行 \\(n-1\\) 次操作: +> +> - 選兩個相鄰數字 \\(A_i,A_{i+1}\\) 花費 \\(A_i + A_{i+1}\\) 合併成 \\(A_i + A_{i+1}\\),此時序列長度會減少 \\(1\\)。 +> +> 如果以最佳方式行動,最小的總花費為何? +> +> - \\(n\le 3000\\) +> - \\(1 \le A_i \le 10^9\\) + +
Solution + +定義 \\(cost(l,r) = \sum_{i=l}^r A_i\\),可以列出以下 DP 式 + +\\[dp(i,j) = cost(i,j) + \underset{i\le k\lt j}{min} \\{dp(i,k)+dp(k+1,j)\\} \\] +原題 \\(n\le 400\\) 可在 \\(O(n^3)\\) 時間解決,但現在 \\(n\le 3000\\) 不夠快! + +所以我們嘗試優化DP,觀察到代價函數顯然滿足 + +1. 區間單調性: \\( w(b,c) \le w(a,d) \\),小區間的總和必小於大區間。 +2. 四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),左式必等於右式。 + + +因此可套用 Knuth's optimization 在 \\(O(n^2)\\) 時間內解決。 +
+ +
Code + +```cpp= +#include +using namespace std; + +using ll = long long; +const int maxn = 405; +const ll INF = 1e18; + +ll pre[maxn]; +ll dp[maxn][maxn]; +int opt[maxn][maxn]; + +ll w(int i, int j) +{ + return pre[j] - pre[i-1]; +} + +void solve(int n) +{ + int i,j,k,len; + for(i=1;i<=n;i++) dp[i][i] = 0, opt[i][i] = i; + for(len=2;len<=n;len++) + { + for(i=1;i+len-1<=n;i++) + { + j = i+len-1; + dp[i][j] = INF; + int optl = opt[i][j-1]; + int optr = opt[i+1][j]; + for(k=optl;k<=optr;k++) + { + if(dp[i][j] > dp[i][k] + dp[k+1][j] + w(i,j)) + { + dp[i][j] = w(i,j) + dp[i][k] + dp[k+1][j]; + opt[i][j] = k; + } + } + } + } +} + +int main() +{ + int n,m,i; + cin >> n; + for(i=1;i<=n;i++) + { + cin >> m; + pre[i] = pre[i-1] + m; + } + solve(n); + cout << dp[1][n] << endl; + return 0; +} +``` + +
+ +> [TIOJ - 郵局設置問題EXTREME](https://tioj.ck.tp.edu.tw/problems/1449) +> +> 在數線上有 \\(N\\) 棟房子,現在想將其中 \\(M\\) 棟改建成郵局,使得每棟房子到最近郵局距離總和最小,問距離總和最小為何? +> +> - \\( 1 \le N,M \le 1000 \\) + +
Solution + +將房子座標由小到大排序,\\( x(i) \\) 為第 \\(i\\) 棟房子的位置,\\(x(i) \le x(i+1)\\)。 + +首先我們考慮只有一間郵局的情況,令 \\( w(l,r) \\) 為 \\([l,r]\\) 之間只有一間郵局的最小距離和,我們知道將最中間設成郵局會有最小值,因此 \\(w(l,r)\\) 可透過以下 DP 計算: + +\\[ w(i,j) = w(i,j-1) + x(j) - x( \lfloor \frac{i+j}{2}\rfloor ) \\] + +可以花 \\(O(N^2) \\) 預處理好 \\( w(i,j) \\) 。 + +接下來考慮有多個郵局的情況,令 \\( dp(i,j) \\) 為用 \\(j\\) 個郵局覆蓋 \\( [1,i] \\) 區間的最小和,可以得出以下轉移式: + +\\[ dp(i,j) = \underset{i-1 \le k \lt j}{min} \\{ dp(i-1,k) + w(k+1,j) \\} \\] + +也就是說 \\( [0,k] \\) 有 \\( i-1 \\) 間房子,\\( [k+1,j] \\) 有 \\( 1 \\) 間房子。這個 dp 式是 \\( O(N^3) \\) 的,我們嘗試證明它滿足 Knuth's Optimization 的條件。 + +### Prove + +我們要證 \\( dp(i,j) \\) 滿足套用 Knuth’s Optimization 的條件,只需證明代價函數 \\( w(i,j) \\) 滿足: + +> - 令 \\( a\le b\le c\le d \\) +> - 區間單調性: \\( w(b,c) \le w(a,d) \\) +> - 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) + +1. 區間單調性 \\( w(b,c) \le w(a,d) \\) 很直觀,只用一間郵局處理大範圍的花費不可能少於小範圍的花費。 + +2. 四邊形不等式 \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) 我們用反證法。 + +假設 \\( w \\) 不滿足四邊形不等式,則對於 \\( i \le i+1 \le j \le j+1 \\) 套用四邊形不等式,以下皆不會成立: + +\begin{align} +&w(i,j) + w(i+1,j+1) ≤ w(i+1,j) + w(i,j+1) \\\\ +\implies& w(i,j) + [w(i+1,j) + x(j+1) - x((i+1+j+1)/2)] \\\\ +\leq& w(i+1,j) + [w(i,j) + x(j+1) - x((i+j+1)/2)] \\\\ +\implies& -x((i+j)/2+1) \le -x((i+j+1)/2) \\\\ +\implies& x((i+j)/2+1) \ge x((i+j+1)/2) \\\\ +\end{align} + +若函數不滿足四邊形不等式,\\( x(\lfloor \frac{i+j}{2}\rfloor +1) \ge x(\lfloor \frac{i+j+1}{2}\rfloor ) \\) 也不會成立,而這與 \\( x(i+1) \ge x(i) \\) 矛盾,因此 \\(w\\) 滿足四邊形不等式。 + +所以本題可以套用 Knuth’s Optimization,會有轉移點單調 \\(opt(i,j-1) \le opt(i,j) \le opt(i+1,j) \\) + +
+ +
Code + +```cpp= +#include +using namespace std; + +using ll = long long; +const int maxn = 1005; +const int INF = 2147483647; + +int dp[maxn][maxn], opt[maxn][maxn], cost[maxn][maxn]; +int a[maxn]; + +int w(int i, int j) +{ + return cost[i][j]; +} + +void solve(int n, int m) +{ + int i,j,k; + for(i=1;i<=n;i++) dp[i][1] = cost[1][i]; + for(j=2;j<=m;j++) + { + opt[n+1][j] = n-1; + for(i=n;i>=j;i--) + { + int optl = opt[i][j-1]; + int optr = opt[i+1][j]; + dp[i][j] = INF; + for(k=optl;k<=optr;k++) + { + if(dp[i][j] > dp[k][j-1] + w(k+1,i)) + { + dp[i][j] = dp[k][j-1] + w(k+1,i); + opt[i][j] = k; + } + } + } + } +} + +int main() +{ + int n,m,i,j; cin >> n >> m; + a[1] = 0; + for(i=2;i<=n;i++) cin >> a[i]; + sort(a+1,a+1+n); + for(i=1;i<=n;i++) + { + for(j=i+1;j<=n;j++) + { + cost[i][j] = cost[i][j-1] + a[j] - a[(i+j)/2]; + } + } + solve(n,m); + cout << dp[n][m] << endl; + return 0; +} +``` + +
+ +## Exercises + +> [CSES - Knuth Division](https://cses.fi/problemset/task/2088) +> +> 給定一個包含 \\(n\\) 個數字的陣列 \\(A\\),你的任務是將其分成 \\(n\\) 個子陣列,每個子陣列只包含一個元素。在每次移動中,你可以選擇任意一個子陣列並將其分成兩個子陣列。成本是所選子陣列中的數值總和。 +> +> 如果以最佳方式行動,最小的總成本是多少? +> +> - \\(n\le 5000\\) + +
Hint + +> 代價函數 \\( w(l,r) = \sum_{i=l}^r A[i]\\) +> +> 顯然 \\( w(a,c)+w(b,d) = w(a,d) + w(b,c),\\) \\(\forall a \le b \le c \le d\\) + +觀察可發現代價函數滿足四邊形不等式,因此可直接套用 Knuth Optimization 解決。 + +
+ +> [Optimal Binary Search Tree](https://onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1245) +> +> 有一包含 \\(n\\) 個相異元素的集合 \\(S = (e_1, e_2, \dots , e_n)\\),保證 \\(e_1\lt e_2\lt \dots \lt e_n\\),把 \\(S\\) 的元素建一顆二元搜尋樹,希望查詢頻率愈高的元素離樹根愈近。 +> +> 訪問樹中元素 \\(e_i\\) 的成本 \\(cost(e_i)\\) 為該元素到樹根的路徑邊數。給定各元素的查詢次數 \\(f(e_1), f(e_2), \dots , f(e_n)\\),定義一顆二元搜尋樹的總成本是: +> \\[f(e_1)*cost(e_1) + f(e_2)*cost(e_2) + \dots + f(e_n)*cost(e_n)\\] +> +> 問最佳搜尋樹的最小成本為何? +> +> - \\(1\le n\le 250\\) +> - \\(0\le f(e_i)\le 100\\) +> - 原題 \\(O(n^3)\\) 就可通過,這邊要求時間複雜度 \\(O(n^2)\\) 內的解。 + +
Hint + +觀察到一顆最佳搜尋樹的左右子樹也必定會是最佳搜尋樹(如子樹不為空),我們可以用這個最佳子結構的性質設計 DP 求解。 + +若定義 \\(dp(i,j)\\) 代表建一顆BST包含區間 \\([i,j]\\) 元素的最小成本,將其以 \\(k\\) 為根結點,左右子樹為 \\([i, k-1], [k+1,j]\\) 兩顆BST即可遞迴求解, 轉移式: +\\[dp(i,j) = \underset{i\le k\le j}{min}\\{dp(i,k-1) + dp(k+1,j) + w(i,j) - f(k)\\}\\] +\\(w(i,j)\\) 是區間和,這樣就是一個經典的區間 DP,\\(O(n^3)\\)。 + +而我們知道代價函數 \\( w(i,j) \\) (區間和)會滿足Knuth's Optimization 的條件,因此可優化到 \\(O(n^2)\\)。 +
+ +> [CF321E - Ciel and Gondolas](https://codeforces.com/contest/321/problem/E) +> +> 有 \\(n\\) 個人要分成編號連續的 \\(m\\) 組(不可為空),如果 \\(i, j\\) 在同一組會產生 \\(A_{i,j}\\) 的不和諧度,問最小不和諧度可以是多少? +> +> - \\(1\le n\le 4000\\) +> - \\(1\le m\le min(n,800)\\) + +
Hint + +首先想想動態規劃,應該很容易列出這個轉移式: +\\[dp\[i]\[j] = \underset{1\le k\lt i}{min} \\{dp\[k][j-1] + cost(k+1, i)\\}\\] +\\(dp\[i][j]\\) 為將前 \\(i\\) 個人分成 \\(j\\) 組的最小值,\\(cost(l,r)\\) 為將編號 \\([l,r]\\) 的人放在同一組會產生的不和諧度,可用前綴和預處理好,\\(dp\[n][m]\\) 即為答案。 + +但這個 DP 複雜度為 \\(O(n^2m)\\),太慢了! + +所以想嘗試優化這個 DP,仔細觀察代價函數發現滿足 Knuth's Optimization 條件可套用! + +> 若令 \\( a\le b\le c\le d \\) +> +> 1. 區間單調性: \\( w(b,c) \le w(a,d) \\),大區間的不和諧度必大於等於小區間。 +> 2. 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),等號必成立(參考下圖) +> +> +
+ +## References + +- [Efficient Dynamic Programming Using Quadrangle Inequalities](https://dl.acm.org/doi/pdf/10.1145/800141.804691) +- [樹與 DP 進階](https://tioj.ck.tp.edu.tw/uploads/attachment/11/54/7.pdf) +- [建中資培講義](http://pisces.ck.tp.edu.tw/~peng/index.php?action=showfile&file=fcaa846ddcba22c1c63777723152ba9492a9f2218) +- [Knuth’s Optimization in Dynamic Programming](https://www.geeksforgeeks.org/knuths-optimization-in-dynamic-programming/) +- [Knuth's Optimization - CP Algorithms](https://cp-algorithms.com/dynamic_programming/knuth-optimization.html) +- [【学习笔记】动态规划—各种 DP 优化](https://www.cnblogs.com/Xing-Ling/p/11317315.html) +- [chino's blog-優化之四邊形不等式優化](http://www.chino.taipei/code-2016-0402Algorithm-DP優化之四邊形不等式優化/) +- [Kevin Zhang's 四邊形優化 slide](https://slides.com/kevin_zhang/deck-8c1c8e) +- IOIC 講義 +- IONC 講義 diff --git a/src/Dynamic_Programming/image/Knuth_optimization/dp_order.png b/src/Dynamic_Programming/image/Knuth_optimization/dp_order.png new file mode 100644 index 0000000000000000000000000000000000000000..c9fc3bdaef256edd07fafa57ed4bd9a0724848c8 GIT binary patch literal 24432 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 E3z&lIe*gdg literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Knuth_optimization/equal_explain.jpg b/src/Dynamic_Programming/image/Knuth_optimization/equal_explain.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c9fde9da966b7e7c85f6d14d7f20395d32759211 GIT binary patch literal 75341 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 y zYiW`*(Q+^xic3Y&h_`2t>%CLLXFE;*-kpBm`?oJ4M_KDHEParkGO3~f+}K>h^L+(y zpt8ZH!sK}?=oSg^P^QRFGM+Cw@LA-SI-QlE7j&N@`enD{Bb$9&pVeqsgTu;#6s_o3 zm$9rL4Cl{wlEwR{@qC`rRFQnz*>Z3|vzw$pQU_YxP-MFS@jvzc$KM6m?cb&8h{&dj zRV8hJNI^qH5iz!rT!9quUR-wjN|^Nns`)YV#XYp^EuvjDFstHM;=#{op>%e z6!kDxvxiYS>`LyWH2)UDW(OSGRI%ZrehxD=hl^)MftsV*--SfCrlp^$BXga}Rd7d{ zj_z$s@$YXM=O9VwieY?l+$P_iUwain>|(krJq0r?8! znPKO#(VEkNDd5&B4bbc!dAZLo`6|Ee2|qT3GUEbj!P zy-|fkFxy*_Wm~vh>Dej!{8azP!ZeEXixeN{oRQt0$)vrSN#}4(BlL-=*SM400XptM z`VdB3CeM&KG%sp&OnbYuZhpeyipLS`RYzQ6ZPuO+jdd=IuF=?1MtzOTG~pGpeMwxP zqH}MeF=Aja%VCs47+`Gb20CJ$B(ux#>panvS!6l|kEQT$F>om8&Q-J4eLaSm>Mw)_ zx6%)yE-t>{ejmcPsT&1xYja62%3n7&WBrg04Pfygasz#XNXSqy^vWJp z*Du?Iw>U?lKP5;Ap?YdI%oz)ex>Zb5Z22Dp!Ll`Ud({1&XbVWs7TouSB3X0YK#LWU zy=V!-`z3mP3l=sMy>9JrbTs)jh0ptRV|DZ4>Wk@vfkI31gFkLV$F`~LP+#0gc1jSqyo-!t!Ix|zUuxAB8SPqqCjQ5g~y{q zVB=NvEvUQO{N5Yaa2o|S4rW+<*moqJ{)8$4*OzDGIkF#44py~)x9SHd|M{wO`0rPJ z4^Yvn8`jNAOPixuTXef}(Nh$tk@hsfSe^~QHL({TJiKw^<1n4S?sN2k2b<8#^GAIYW; z^yN8X#|BKTn?4>?CR6z~#G4OvQ&$3{dAtMv2Xb1AV{dPNw=C!k@^RU_@0XnjMw$1J z<9Dz7BepxMiwbz6B_%C-ueoiV)tz`! z5WiAzSyyUtr1h$6$>e0~%LLusdnRtlYrDS~2H;3hC45FVgms=kE|C9(lfKTMFF)|- zTiMnlSpGIAePvbB*H}^Vb36m-3U=_P&wjb?6|+v(9=5vN)Upx>~O}yAIrWxN-&TEE2cok%TW;ELbFl{|Tw_5rXd}^LMWL z569d+16EwZv@51Tma|z@$1U##{lEU ztom0$4D=MxK$uYhgrR$IeC7ue;P9CJ58{qg5RW*qH}Lgvrw&UD*BZ>kxRINUs;_3p zuU<@M1LM?tvED(WgZnhcFPn|DmjPLiSVSuRneP8F2mK#b?PaHYDP6t3%CA@!Q0m?Q zOgqq*?<~Z+h4$6^vxpLW4TkcKIp;2f7jsr7j2?f^Gn(Kv$9Yt<$%>=?GPbF0?&6CcvykEk@0zN_>_|wpq*vw^Elt1qItrIPW=wzPT*Oy*R1qH^-ZVza zd$&@w9dq=fB?ISHjtDVOj9I?2kQa73o^!gem;`GfmVEnL@A* zjUX7>_0`FjBQU)SFfkIq3m9)V54{iEt3q+e`s)ifQaj|Hr6-GKL;lHRU`@e(!9LIx zgaG`qtF?bJ>FaxD$bs=;t|jOaJ7e^I407po?;|7Mb+ZklHxBjgX4>-x7=j*7U+;P? z4*j2F-N0;c;!q@Cat&yqv4Pwr1}?0SYo1b3Fo(=*YQHC6(gJud3z*Fl&XrI>Qkc0dJ`;hX!>N(2pIR(@i7>^5llP>TLmU~jE1|0>kZxcX&c|mUtjhzShmWx z8AQad{>g|HF;Y2F4*Y2*O5!Rn`;$IYe|hHSAgDeDuH6oz<;@l4oQJ)Si~X(=fj*r5 j960-)_AY%m`#Es-J*oOWoc$a)`<`@rAI^RboW1ye-L(#d literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Monotone_optimization/blank0.JPG b/src/Dynamic_Programming/image/Monotone_optimization/blank0.JPG new file mode 100644 index 0000000000000000000000000000000000000000..76aeb31fcb88a48bcbe20bc92e811ba3ecca74e1 GIT binary patch literal 126955 zcmeEP2|!G1`#5ceBoBh=~b; zwt)X2Mhmo4%hO>$1nKKTk`M&Vf|!~3AQo`O1pb4993a*Y=Mc0U{6Y{*Jk!U!3$lsxy1TmByB=IDw`MK0exr^)>r`pr_;9}L!|B|rMQ7@8 z&;!;Uf6hz&YdfC~<{jj0-#>G3$%olTX zeyrtGIlFD$4sO`Kee2ZuZ@*LLzaQf@Q!Rp^%GFb4_0to=)(2|mJE!Gfz3Uf9|Nh*J zXIy*tx!Hm{H1KDw?ZLzDpo3O{^X*674^Ex?fOCPvpi@ z4ns}w%qwud*w%jcUU1$I&R6aE?7H1&=gtQ_roKCMOx1qQJ{Myn@GAiRh(Mbl2gnUN z2pxcSLtfBgXgehLjpyY*Jg*74f~UQp!{9wT$R2VB?`!~9rb^fc&UGLc$QD`ytpew= z&|2_EcB-GjyWkkF{?vb~e!mvb1VL&927{6P`!!tx1l?DJAg-+6udP@QLALgF(H< zV9*l)8NP#{r!I`A5brED5w^uFOuP^?FB1zd6Qck^gPvkz`fz+G2>ivw%)-jX&M}LV zYc_ZweJ&t!78Yh!7B;pif@Jaq_aRnZHohe?8`${`c5^H}Bp`b{{OT;RjrX6;Gb|^H z%k4RQf|F~$;DUuh%a%*5SScy5uugHklCtI|tQZ#fwS?<8ZYJJJy8Yl`T6#w2qpZhy`2~eV#m`^7 ztf;K2uBm-nSKrdw*51+C)!oxe8Xg%P8=oLgQl{DkX5PnUfxkbt?2C4RPGDkYWo2RI zm}(aj^U^RlunkzwcCV8F5a5dTuyzYf4!)^F z;9my=6aoem3?~~W_x1zgFtF>4dT0&{6CfrQUI+ux4da>pxu6w*(@p!~ zf%EAK80su6tq^h-fVMMfuz?x*`OhwL0-`mbhdfe%TqNGv#K&`de)qR$nMxZO(DUN! z45(H(m7b`v=*wb0J-Evr)29GaXX!AY_+^l5+1K9_UH0JliZ7&;;ED7Yq3g+rBI^{!a76{>Kr_wN#9t;vJ&qVmD=RQ0nGLBc|2e|sz0RMLnaLrE~ zV2(Egw7PsFZDmH~fO|IYp<}mKol@G15%;sk1fdlh$L5t^sATAl#Y@puMwx0(UZY1v3*0q z6ksat#*-$Jf$B(NK;;Hy92;g*rPxh!7|>!hJtSv8D2yAj016UL%9YZNr_73+2v9mhKr>yPGSJUs9Sv!o6SUkA!wmbzAW93;-Tj6koZTaKqI6mT$z~)%B zQ39%g9#h@n;FI&}>3pT9@AOwZ)84eBvwg5ckuWUNgBdI8V?YkobAJ)gm$r@n6aoEG z^8d@NIKPzq|MCI;xk|oBR2aI@p(VSr`BAIyuEar~wm^|#-#2nN@8HJ9!H&ufLe71X zU|ti>Pr1TxDQ=dJ#$&;`mhTm=H&F7|4P?#1a`7CN3XAnxX|C;iK-E&|ns24&OJs3* z-8Rh)?i)l;YFl;1%)C7Q5+8oP`0%ss2Yx$|s+fgkevJ_JLz7IsHe-E? zh`&AadmPQn05n37rJ*NB8BlRM18Thm{c~=wbw|yy->R^x-cE4j_z2+^19J3N zB(%&ggS#pj5E^(>LgHBvUS|%(7ekuFkZ(hnzuV0`66Tb=0ui}Z;&5WIYa0y4V_jul zJx?L<1odOiG9XatqqL>jNB8-__cAUJO|P{T?S5e%THc^Vu)=jMX(b&XtA>9YqU zOG++|=;{MyZg4@>tJD*mK?k7`HmxY;uN8_!lun({qxed*3vJ|&$lW|J}`8Z$Nhy%{2A9n z!v}(?XcGlbGi!0%#TQ1^i>DLh<82z#FZ_cDn1w@=Sah<&u`cb6bURBIJSaik!31>H zSs4KgNF7h6;c3Ru7yZce_r1+7eVQh7HRX8Hy|i`-COU-^R3&EXcz7h0HI zMCK~DotA;av-3W*AqJ$1{YUeMFIm?v2hjy(Z*C+9I6Qs4)n}@GM*nOw#F$Kx;homi z$`&Ow*AG;vq6aRymn?NweugFyCbYo-9{YQXAYZWxi+rKERihfK*DK1}b-|OsfH|<8 zgYok`8%!kW{-#t*)M;d0xkpf8`|9} za1!SCAjX*)D5~Z3qr&Sp4^)?iShrLM_)U(~_8(0G(g){R%crr1i*5`e7`cbvxVbnUtip3YbZ50RE|f>3sGqelzJ>%>GIPXk?>z7u^>i zgn-H;G*dxx07b+KmWtXZ1PW6;TLqzA&=%B#1a~j>m!1)vRXSw|7nm}tcVg*tN0}Hu z&u79kNgzEaF(vDeZr8T*Tt*TMBVBf!R1w6jZY$lWdjb|3>675P@_e*g!4NN|P9@?( z+)EdF`jr$YZw+0R)4u!OU18f@^EJbIJ(p%*UAD~Kt1=+;p|bfk>@srCera_9@|C%$ z@O`V^F`#=lAEe|IIR_oNh4W`X`vC*p=oE45Gc!(nb=P_Gos%g(XrfK4-yNb;VWucQ$?*ky)T&0~ml)c;gIh)*WXSMP zZR4X`RR?|U4yEesz{z7PFAMkS>sAQ&Ei^giRi&&fa)R4i=iP99#+i}QGsEIA*Aq+2 zf%i8pSCk&!-fZHL%kH4rrrkNzU&;D_=0F?`KVh=uU}^uHO{P2xj}<3`l2J93QJnaU zgZqoO{Y2jOGaW7*F9~U;Psd2FL&=HxWw?R9O_Sx?azzP=*>et!r5w-_bvEg;7UnG( z%)vz>^JtzVY~Hbp#Lmn)QIB_^?kDeCX3f&HdvWv8BB_g!N4Xc)TA+kt63TOx{3=Az zq{Nfjr+gMi4CXF=uP1qFe1%966M9|$SgB)0#uD9i!Lf7X&SYITriZJpbXUbnhooF9 zd}#67m1%c%t?hi#w+D>!w2y3CcWe`Veo9;E=lpJ#%bLY$C-g2SnJn02_-0VUm?cSk zRDfAY%I0(&OU|SD7vsb$6Jx{5g)BGk#BXIW7!Z4xxy>r<#m=>JuFv&iH9of*`eiEq z`KIEZ>qin@LXv2fIN>K2?%~E;=`mMk{LU^G-dZ;7OTS02Z4FQEb=BitVeg4VQH4DB z)Q>BTEjm2dJL|2?X-TO0h^@cZ_+1lTkNrc!Yfe*aux0M4+&10H>SqsJ%(z%Hp?f+2 z$r{EQ`lZ(joPV&sLqg)nQGpkqlOPX&E9L}$t6<=us=_iF#Xhjo=moM@K+{=oJ_Nm zXt6ni=c6$xKXbkH&P(#y^^9!cOs2O{Z2lCX(=`|LVi)LL9aqdJ)R*SR(83)MnM|S8 zmAkz9BAC?F^!CzatS*prdc;C*awqTcb+El<=6K|VSK^zfwOeFU7rvXNP!T)6zCNSV zIskbHEWGzl;wj8VyfcEuf1xXW1YPlSU2DMQ|8GMaWX)_(tc$VZEecrm>L9e}MLcR1 z$u7?(2+ccy)FnBTl`MNcN7^~#?p+n$#T-i?M6S?tvp2c2&aME%5AVbAdzvVXxz5(1 z-%s2;JI!%cj6$hK)-qDnIkrPp`3kpHlJ-=kg+KLKNiJ`N17oh4>4`^lw{EpG+pCI zM?VH^_3<0AW`E4N>+6B(!-5F>`Yf2o~XydGT;LdL{|M4b*gTqBfd8w~o_ zi4bJMCyT!@GV!D49m~1L_2q?A~>V5^tb89ec!kl z(C??cP_USN$BNnKnLuAK*9gHb;h4b~VKF5lx5JA8IWNNEA9@}}Irjs<)os5F>im0B zS)p#!{p7qID>;Gy0xf~#0=}xkGwaC8T?y}iKkU>q(gdC5E(2PZM0po9wmz5vaR;;w zQ8>&HXYHDHw9#oee;1jG9It^d8;oUfRJBUe)}e5O?nQQ!>1c~{zT1|3^#;0uqxgMV zALjKfN>xDbA*EQo@kDZ>XGgNM?R^fit=4X!o~=ysjJ|O1oYEp}+fddcwzIr>oovyy|v}@HaK=D}KA;UW#>#XOB9?`zX)ezJ!X=|vr-!f^# zAg)$As6IEj70udB$so9n`)(X=awqYY4N5(qfY3!by3UVomI__d)fXGNGk&L1o?Ee1 z#%dAY!j4SstgyArr_^{j+}=0^@STqfN<8VDZ`6yglhsQk?=fkP5VBq$ig{n3gAwY> zr_E|9^f^HB%T$`d1IzNu#_@l%as0W+ZgzCAs^(2kqfI#^_WMi1-sCO6xG`aM;KHYi zO4GMqKc6khd-#ZU96vTkIl+e4z!w2;_@|zY}tt)Zm z>6OjA*6Y!( zhi|eV^jIkadYI6Qd*pjW?d)^Rp6uA$mE>e5wH+3s7_=qbY25d=3s>EV8YTB6cI z$k9?`yge-=#%VUQwX82swjTYmI=_Qcx_iLUA@@8@O0r@8GxsH}x78Ef5`84eZr5Kg zdK24nR=v^lp2?=;n#?NgTL!ch$;XOd;U`Y30z3-e_g@}#*|L1SaTp9KJ$>y(I+G|?aUo%w zM6YQ+irb8g$$#K^xR|~T?@l`59dVx%6Rps@QT28)PRVUuU3dDXz^?^>Ujplo2&{ju z&7EB^*hl3iIdxNZnTI{CM6XKb5o_42V#jDLh5bABwhrRfWYA;P=UPYx659{FRN8;h z5>NAcNO__n^hAGKm+5X|LQCgm!3c+V^V{CC7wJ1=Zs*tD-4zUGBL-1K$;)76NfHp783mfjm! zwPgxU`x(6aXPn0oW}q~IR@#~1nUmWmMt z`-j?^f`!i2(p*>7JD(ZoRE>zO+?t4gkGsUSNDlD) zl<7l`4Z!X5#AZ->IG%Gxb*F0#HHoq(=;7(m_L)N@m^4HXAQ_{*o9Hl_J`cn)2+U+( z-{;gc%u+?@t8oRf=4{z$@^A(NN&z|)P;}B~a(1z^1HocRG75Q&1qz)0%whYWQfdi6 zAHo8cSn72k*z=ZgXwF!gUn&UXxC}xvCZd2pP9Az}N;}aH_ccmS`MYKW1u6j_!p0ah z-RA}PzNkOuCwc_Fmry?S?5}(Vzw#OUN?7rKNLW!$mjMW+i=~KfDomX3iYy06Kb->% zsH=X00WpCPuU32LpZEZPt@73#Pl6MyuQa{!OusaN?k{7XpowR|BLhJ0@qY-D*?q;{nAy+EJoaZ?U?NAxb4UmGTWQ|N>64msV)g#T0X@TI z%nay@_c;DdxqtF~rje)tVUnB)u`}qZcFXwVG@-co)hS0C);967NGhfdcivB4o^0zq zciV(|Ktz#{)@_OUi=B(|ak7nCrIk_^mPG|CTcu!a47~t#R z!ivW{rf)GV7-B7LA_Adf$Oi5rcfa^|>OD9QZb_XSlAu#y;bsptxbU z39N8jYXTz2QDiJlfdQ$tGav#M5wPNr>PHjtWT!u>W9t3m$J$D{@pB!vNkq)%egnJH zX#~fq(!l6WZ_eMc`hRAZE>K3}RM$Ol%!3VZ<-n7+;2*EYl* zDs|8<;&cRJhMCa*z#9OPcN)+C?_!c?7U>n|iYUJc$@5zK0E>T*@x=YtbHte@%^7a7 z;y4j2ZF5`IOHLQWCV(!fy4~C0RS;Ml7|`_9LGXK4-M<5&|6A!~&uj*?z<$Epn3ygo z2Pc$FtZsL0RzDG&SC}kaaM5<_1N8o!)>#awqsDa*H*U`hBYYN^$#D=j^3;q#jsZbU z%N_!&vr`j|4XDh)Amr)qeSZ$OMZpm}qjFSTs%KV2@?F9R@SxVkqZr@qpXVq=rwyjA zi6Umu7oRI$R#|lXLNl>f->r3@{i5|d8|@5;66TL;{T6gbMXlNE*)}ZeyEHH4F%NN* z>Dim*ePcad=gH?RdH15C z+I2eU{dTG%qsfkjM(>JZ%`|Oa+l(8NO&E}u2b#u-rfJ!Y?G*BL*~?8`?z7zGP7>S< zl3TQ{^fh6jbZnHPiqpg~`JXPXpxkBYiv-?+Q`%&0`gn zvY0%~prZ|007DK@zXMS^G(J`H_4I1mTKNH~oU^TFv~Qo4-rjOcIr#dSj&-(VwH~?& zL~>gPfAIms4~_oYwc|h3-NhA{y+9F}K-~%!G%QfW3AMKSmfeQ4hOoW&*g~W4PamSF ze-b79U=PZsm)5DYsHL2R5ApR{w4Ttmd`CK$NDqOH{Z*|rH=^srTEsMk=T$w}fhJQH z6;m&Kpy`u@FQy5YXg`b8f3Sgn`i#^Rni$8Dv7)Ir8gBPmNbnCbAf1JiJ9u&D@qlhD zqQQdj`F#KXL`*aE^{I7{R0*0yT-OdAe!~JmKl9dh_u;aUVM+|3uvM0?@zWS)?jNwc zzZ)HVgEN13HLu3rL0;fFlSeQ2wCU^lm<%g-wtEU-CsGbL)KY#m!~9Y zUxFcA5p)pq_6ArbYI^7Y=;HC+Rs3t$xS6Xt2iWQAFfFR)HzS$X+<0*GlDf-gznvv> zeB#m&Kt1n3aP;R(@c$=@nt8Zn(n_cLtF}IE+vAIG*US?X6uTNMjE|_QoDvECA4>{B z=J+`@1!CsY#ufOyQ=Llux=%bDZZv9&^K1~|IhA%+fpv0ghw z1#!z5P&jM^+>H+KC_jiyXF#MOL24-N7PI3_!EQ=)O+>R^x}pns9R+620S=s)m}_ux zVF$-X{x`$F>xn*W$IWen(K8uCmo#fWM$q3`@u*xc&R)sNr&uT002 zfNRtVNbxBVpsymn;SvTIV|x%@$6t%->%oj}0^KuX3|=t}6co-_>PwTfMV{LG^ z!i!L{LEQ;*bRANnjo}z=qD*F?$#iSsW-&q9W?z0QjNPh&Z{`gGh=8b9%#eiI33V=iZ;}3-;B2W6$?gF-jgfWUH`6Y24px7YzhF;H-Q#wBMWy2 z0e$|v;Y%FFm<-FyKEhX}Cx)*08PqP9Zqas`-D>AWT{XuCT}kNc1ru_!af=^|stsx3 zsIj}qv(I1yOr)U!0Lxx%!w$a%)124xE$)Fwi(l>4ac18_3RjQPuk8pvai~9WI|327 z05dsP)tCY8IyOX?@Qyz4GN=HzlzxHG9%7FltM6k#+6w!E$lUjB7LGc*xXpkK{2Cnp z-QXUMB1}eb@yRFa)I2!hQR72x>$Hz>wA$V9E9raK!gEQ@?h)p4%_CR;k|_qmX>nyn zashsbDS8p=Ebxs;ojsm|y2n2#U1qBDTzRG-RUW?yWV4zC^5{K0@U1Y~6)Y?p7?9Z= zQ1C`9ooU6)ao7KUAz*FD60pV{Z%w7LG{HS8RVDj(sEd0E_5<^kxX~uSylZVJN_SRa zo;rt+OB0;juFMe6`bR(?)CE6zzX~j|p@6%^S6DX;8DCJL6L&;v0pFUIOounVhovrN zh(*?kJvb#8>$c8IG?;4Z88r|dYp0QUZ2qogo_bNn61QHkjNHArdTevWvo&X^ZJVo| z(_b$y*_rnI1Tw2j!#gls6FSrsGq|m{D|VTkt?s2y63>^rq;M2AWkk_J;ucN?bP*_$ zk4TrrvRO!SwXmJAn=28&Wur{ib(q@SnUSA*XhEyrx??vEOq(Pe#e{U=13K;_2(qDp z4k~lH%samAiFEy_`cv#9!Uije#l16%Fx1a-`F+>VoR&aOc-FpCok|EWmem42d!5Ku7Z*RVW!Xe5?sd8!< z4a*VgvxcNlbyX}oGxo&Q9S}Qf+|$D^0jLf2LHQzrrc6&^495cep5XI0&@QBujKq)zvTQcHJpEdod4ai z!5q&B8G#g8@=<+6eE((Q;?&WURTg!kr`TLd?;!jIM4A$@;`!Qbc$fTcTSKXvQF&p? z1YtFvG`Y{kM-&crVnCD3WN9Q{4sHiO+RJOda-dNR zr*K^YxM?0C`fNjyn8@1Z)Hqn@7 ztvW^p0g=xIpTVD*tLUkk{j9&tRbNNZ|7lst)?-4@!`q$!%kHjh0-di~j%?2$cd#erAj&llS{9Crz$zkV5KxPzbQAW^HZ) zh-5nwK8)@UNa=lC5Vz{GQTF*xovsiQSsB;pfQU1r?c*tyVlERZhr)Gh)ZeG%`+w46 zyJ(n7P~m$g8PKbb;W>Uzel->8#Rc@GOV@|Jlt)iY5{jPmn-+Lq!W_rPTXSNipHb$( z?<)t2JA`U|)CIh%)t9@EZTj5a{7X&z%hGY5Bm>ZlcwZrAe0DZi?N%FL0;904+R=U` zENHf=O+ODYpagxpDPD$III8uXylk2cY(3#LVOXrMX{-Yz9CwuTS@qb4PklB0%ut1z zsZ}MeF_zC@RAU3;@#3U++EH7RV0?V_JFid1uCE!L&G-$hTx;hUeB&vm$yZLL1vL9n zBAx}K`9x7LqJ_Q&J=x{Nhis90tRnX2Vt@VZY3an&wdl#oaa~)8j`45a?~snJM2NFSOdKOH646OsU|6@RAni#Y}*7$SBNrI?{dYDd)VnCts zEOsG;t_(bg!RP>pwr=Q;UR^(QT84auEM?WSI@spEe(e2{D+kony+iOHmU_Vb_U^BN zTU4KfywTgY|G_!DjAa-XWo^o;)mdS*eUly-?IWMpB!}ho57cF?J1c3k!s>@R;bPk4 ztHWaeSLfodnDO}szHBP$O=-QpLI4S;VUe^tW@E@k$0X^o~HYl3_2M2bVfy5IPWy3(J@u z7TSz708A_4FmOY_Wt|v;X<1V7 zP~nu%<-2}^mT(DXyqg97U(n_ckkU_km4#y?R=_JJV>vJ>;wI%Tb@biGG{kcc{NHEb zPpj%5&U+c3&2cM`r&SaByKxV7u4u2Bif3>EyK__)V(daEYS4$^jw`wNp)%I&e9`eC>xaR2F>Rw=G9|SyafziG z!qk7@2<>x9YQ^{K>&fl3?SIh4TLSWNzXw_2u>$mv2L7G!ZS16-G)Tzp&gAq@V;FN5 z>8KjeA71Npnll;EHUXB8QZdjr*FSFs`C}sac`KJ2Wus>TRnMZJW+BzkP6jMasz!kR z7X5ElzrU*PUw&5vQ;{j9_`T9;l_nd- zNYw3n!0U=<-gGXLlK*b)yf}2Te1VT0VVdx8VAq%B|1JB3>G&Oq5KOxK*4Ml7X)kc^ zr$*2wwG`|$G%Yi(Qquyck*_vj4z9m1l`b%)uLGCbWCs$UHX_6koKN_;~l0b7DBbme+pz*$_NQ9q^2rOtfR>6 zo=OM^@<_jiBabHI6b8+2esX<%v_wp{jR#cM>f9$b+K!fG_MwmbVUqS%; zOvn*1S|w+o0Ew|!d%&%tH-*Uu=qo{>22Kj5bP`_Xu-)%eE7?)-sh|%(=*39wVR>`K zfQ3AqHU6}kDF9n<9~K0oZ_)OY?{K|#EH8u99{f7 zK7dzzR#O*S2#^#{i;K~>*G+cOq(Wz<+xaPUN)}mWs0JSjW$lwT(Buez5%fF$zT=^jotVE+&}OekNHCg_R8LMAdhP0-~in9L{=MQP+f_x ziFoVe);3h|6N#wY&3vEB-4MwkCHylXP)+ zf*Q|N$3#-N)9YlKW=%ebDx_}=krB}08`a{%aDg2Ie5c_P(7(v*FWCQr2Q@`rsZ->& z<^y?c{YYLgRrZXJNSQX>1HivtPZ^SB&Fq>4D^w(<&ip72ls2*+@~C-qGQYL4hUjGbYqv+AqKSUkCf|0$V~_xaQ*o(3DeFs5i@RB@rL=(6+QNp#9;vfXC2y1Ow7k5Kw2? zs$F!f@W8H5@Y1X9>Lg$1|prQ_83xk->W+`&DsQ-*qBL< z+%*3?v%k6;JryL>p508Ka!Vrtzd+ky57+8x%=pg-ZHpcvd1cTPNJ;=U;Q^GV=gtO3 zE&DIziXX;2v@d=}XQ9_&M#T&?o3&ci<=#8leuor3&0Y1!#DOWe)z~$Do)ElwOHDEX zyQ((Yh@6njcL$c*)Ox z%IR1URS@PnerN%CLkkH3GDNqrfI2e?Ev)u35AJx+vi5mvig7#>R9G zT%j-ZK)-xazh-QWcY1ZwPWqi6x=(1=W{SmS5v*D$QM9)P4ZB(X%haz4LmCzOD<; ztFf4ea_9o(3+C!Uw;Urfo)0YcTA0HeVtB+P61r0%S*Kv46x#Id~8}5s7kcN8WkLs%3Zzgeb>H4TMVvn4PMDIvWuNHB9AMT zt_#q+T!@*U>VsW%rdZ!>O|Xm3NakiH^{2J$3$2f;tupFJv>nZxwl(1|IsLDb(*a^b zG^{C5R2(zf-}LffGV!4~T4*sHzgeA+>y{A%=u1hkj@oQ6vCwStb z3AT%PFQVs?&x~G3#<$+si=@9kY4I?1(dzKGezn$eR$|X;as`gptx1no%`?4vYRw{S z?ZG>R+sZrSp5+a9E~TGSUEy9jtBHKRlVwp+(z>_TF~!V*VxW)MFV3HDDk^(45_eDP zZtG`F`-T1f%RQk|?r2xOfY?GQV9mcw)v;Jki zSxo(&V-3Lv;k9gDNy9s|lb4n1<5PKcA8v|R^78rBpt3U|qos={CB~D;fxB;#4ZEHh zEEF`zwSP-ow?H>GU+q{(M?uwt4wbbR8lq&9sS*zS_DyqcbhsI>)cIHfJxjzX58a4*;C@wi>a7-!n$2a0kLhiL)a7QvRGjsl?o5R zOL|_cduHE-=Y%#OlZ77TczL7sPWcy|(JPUDKQtm?o?yNx0_VlRJZy1zJ z&-`x2gdT&Ml+lyjgiDFfsgPG0@XKk@3PsNMv#$2tkN0a`MtL+(_e^8?E)9>f%lyX1 z9#NhX+Dz`HTbIEHd1H@iE%FcszF}u0nqzLF#U%P23-+}95)cI`WkaRm+pxU=dKXTA zDnS!hM$uUZ;GtpoEZQKIh8x_4CWhN%Mg;&akMIJK_tob8?IQZ~iy%{X)4QjbmZfEw z?v)M<2#%oHQ_jNeup0z2zJ-D;P4PDp=?IpT(5o=@saGHd+%t58I=bp<)qu{rie^p_ zPs2Hp@TnpmCWgfd*ZJ~V%EPzpQ{upxcU>?)vdb*#UwZRrPTD_h&xbvp7h7jru^3(K z+!3f=vf^F)iVl>U@hshK<)+N(_+WX~dzq_~>PdX=ktib0yJx3}CKWZv)I_`p(siHM z4mUX=3UJ*cTswS_gSISJ1T^^qdZL~Iokf4Vx-$g3(9>~^g~3Vs0(76TNGczaFQml@ zyc>p?93NEK{tUC_tLf(+N@f-e&62jrz-&^u)66}=>L;$lsX1%_g&O#!GD0Je4UptEIMTO!6`Gjg10uFDa&Qyyu5tbLbO18H zbgE$24+U#eGS4E$6Y=-VJWDr{))201-q`wvq}m>2m?)~#zW>qvEMp&8!`qqjaJs4M zKO3pvnZbANi;d!?Ukg*8O9qv#T!wgn#kK)OO0a469w1w^059~mLwK6I(GB8N6LNI# z*!MB0YPu|-NSn<7+-nHX6O#mh{Kd2gmJ_-z5GD{;fc!;~wMJbhJEZ9h2&Aq7&|iet zR~Yfq161Al0sH&6dw;UFwJA>pwUEqVW3{GUyV{*P*_FYpz26r<{L00(wQcyWQ+|xH za7*vu5~KE1e^IqcRhCwzG^_xpScU7Q>nC3<^^y%!oO@TfnZ?pw>TtGPHm_#1wL}d; zK-GhY-Be*)l{mMr{``t#D!W&u6d!!P$Lx`HbeDQ{wP70H;Gv3ybp!W_A{TR)lApEh z2y0yE;wpWeEBsFODg)|X;%!-{Q^Qwq+85G9X2O1vc4_o_;}tgSM2SNE?nq7!cSC z6F`fBV=ou%W~&NTQNjoez{PN$bOKzu5+0&8(X62V_4`c2(gV&{9Wr7R17c>q6Ra`b zwlDlq15yc+WnfPB=1Yf`QCd``6AswC*DHfdyZ{yTC~5!TH-EIwKl(n?@nbEqBA!9I zHjMUHoPH#!K+G}@%f{N6IhZEyVZz2mkkLf)k9*G+f zPidI-BF@GLdGE8$i%n$5`DJkdUrb1kw$uMCF3ZBPo%kk9;l0SL8_xul=(MH}c;|_K z_*D3kZ?dz8f+_#LPbp-Z^cFPXGUBB@g{uWS5&RJM{5KQw%Ub*>_hvWAy4IuY5`N5A zM0Vlg!1pk$xSbPSY_(oj_lEtmv0Xk*>d_o$X^OYkCCHOrJBb7y(OX_4%=t|CKE?EH z>%mc?Ed8Ck{T)6FkZVh*hFy@4R-Qy1>KVHeb|Crg#`Y#+V%pFoIRZg2Uz(>!wPHXLt$A&PmThDhO&U9dpJ-q}A)vZb*9#BlH07zWH`X}R zw6>ht@`mY17YnBGPGXFbj&>BhPUQ;NLdKaxA711T{$Pvgfk}FQz%|j9Tdn2}yDP1p z;Vq^ue?GiRzF+}Aye9vrsfs-u%#B|2w=z0~6}A&2a47(&fZ!=0TK}`fMUr&ASbn{6 zW}d#EeZo2AYrCRvU`FMW_oyu6)UP9Qqvn{NeKIoA(sE!qFz&G&~))Qc~1V{UOt|_@~l;Gonzl-R1Sq~bJ<%u1Z4U+X~6Vg#vi%zX(@>Sg*_Vw z5VGwr)jfD4OZ_KRhqpB)OM@7!^ey$r6|93$}SkZ8k%ulRdWmdyx&Ue z#$uk7)$R?p6Nw||ofGJVyY%kjT}WDS;Gl8x%0chyFU^TR(OjnPNv@sRAkmeYN|zcS8#UvfUpFU4(YzYr+Dfoh zqqT=?t6tUC-d@%jES#bnNd9mEPCZ-#&PZ29NHTIXSAEpER&BxB~Sq z1qHP5n86ZE->C_v*V` z^y^{jD9->oF!PQs*;z|on2T=HHYR!;p~+3zy1 zUuPBkZuG%t_SjEj`&ZD}dj|9!gr-CCgbUS+E0i#i#};B6MkOU4(m=#+xHOglxicU+ z8#ORAInTF_I+8ZcK&T?fRnU_If<114Lb#yr-$-!!;IrV%F>ON@AboBdNY;@sBXXGK zG6|-IdPmU@!gSVJKQm+mwO#v5THE*Cv?ggYr_K_$6F(_b5mk)du6@pD{Q`18A_|)Z zceCe&En`4Og11tJbD`;=!%y{Qi7N-XgG35kTk!|^-GDaYV1x^ZTa4)k(!|w}BEnPG zAo82a7Rdp!bIWlCw7tQ0vLM|Z5zw*;jte%~KVt``f)3P2A-Q`2upISeyvyhI(l0?S ze*-cLejVFH_XRlxBD-o3@f;mHQ?pN~WhTRMq-5L4cTMlKoM!b7Khi>n?%MHES2;ue z^4s(Ez4hY)S!vM{fkh@;-pYpeZ{Be8ddy??vYaXX59ytv z@wm&X;&7{G3XZZ{0`Yh19~o#hQgbOmR0jay{yfOc{DkfPvfCd)k-R0Vwr{T7+9zT! z`>Gg19d=N3-icQ7B(!BA<(KnqQ0@~oW19}fd9OS#pwtzJmSsR`!t>f|U*!zyO7{0B zo~n#-d7f9TYDL}PX^VyVoa+6e>Cw!=61>g#G{Ztf&N;2DEi$qk(Jhp8-#fX-cS(!y z5ovz%F?|v%?y^tv(qq>Y>qv&6>ky?-XM4VXTW#;QM}IIdVXM=D=*JZU_e-Xz#NwyG(}eB zYsR*<-y-S+4L!)vW>1AooNesf#M-^&C=YY$UZC z1*R2_qTJPs_C(u>(=T7K%Y{l8sJ6wp$mQ+WHW5l=?oB&VMJa0ZOoRim;U9X{fR5X4vyEN{20>mT0tcCIsmmx4af~#Gg9;WY!2pn9nf*SG*y{e zkFyKk1sX3DAB7BA+NFg&?-XDJRSkezC2``qr~4h#rNcd(EMW^SiZt_|F%3MOtg4UQ zr{|LByMFT(ua2xy%<(5o@t!E1plucLrjfFHvphr(oY~B|`UTV$zdqHJJ1}s;aG^-L zQ(iJVm0-ReO>o zFTB&ep>DQ(x6h(Sk1n?$k=$+aQS+~D*}H$xa5MV3$xin70?|7Ihq6WSRv!_mOr7w2 zOgr|;2PsW*^a0^4MJA!lZ%&5K+O`S}45@zPQM4bT?q6z^dif*6nLc`MlptDAn$3+; z#Q$Tk;tW*818)K$iaD+b0f&SDBAV$D*Fq3Rwi@J40>aQJztyB2^_7~&WJI1FvdsJ~ z14=Z5N4cn$)Ry3_<0{hR5nw*~xc&QN^`|A0qZAgUSsb&yxs$A@aoHugbzxu@=VFsh zdj#hw2S$k7-S9GtJ#sB+L+_g>tK}Oa>O_NyO-~=g{xl`_XlK6Usu1z)3x`WrinLEO zTtPYZ@*<$Ntt3>HhZWqKbpSx6Bqsb=WC7R8?cwZ z$6WKa`%LqdKEBQU4lt}?fm#utd}t5hEXF|XO~t*Br0MfIWh019su$Y|{Af8Tk-MaK z*$lpf4j_A;c!%PJu8r$k|U@+s`H8_zV`iPU&F zuF!fhDk*dLh<20@Kk12|LRtF4U6t1=okyufr^L^Ox|oXY?<_rR{%E*gJ3Zh*dUVEe zyp(xdsrB(UAEt(=9my8iL@k}b4yR(J$V~}CDuffsch(5e_t}#b&zD_)YKZI7|5e8 zVQ)PFbog#=8!cd`%<>7btE--T@fisIcQ(SI24tJ(SWBSRfi<|Cw~RyccOcSdkCis1 zbI`)i!hIabnR#Ji&5HRxcGrAXgT$Y1Q>j_&;qJ&giNpkDJiki)gBkqXEcj}mjI9LX zMC~g)Wl1*+uyM*eJmDz4Fh#UU!~6-S35t=Tn`_$0UMhErUpXqh*xgp^mdQO&pjVE+IsS4>Qo_`x=$TO*>txBWb7CjsqJbmVM?Xw$S z<%E7RoWj$17$^v_YNN7ixr+pWZqTAM08;=ePKfAAU6(!cgdR^J< znIj=T)}2)5h&|99q_Zd})6VQ|pqo$E+b1;lq-}T3#p0FeXXDGJ7PO}kQG@3tEz(!B zWCGI1(#CI{(U{M;5?Y{D;+a7_FD(>T*b){`tVr8a6h$bTa_&Oznh_fGE?HH}G?f(5 zYM-@EYv*+xY<;=U1{sc@`qqxUYMt$nXv3YO+e;tsbvlxSSYNMM*t%y- zX+NV=e5Gn1ly(fMz{aZ{TgC~^eL-!*f!QG($F(bzfw}{mn6vvaBZ!d=hDX=w!M|sC zc0*WBjjMwu%z)LDm`ypMY!)lx71l>(7GzI5K%QLCEWY7+#b)fk>$m|}Y>0Oifly?t zIpx0fF5qw95?0pDwdPuAku?h@Yx)^pnpt19Y@o4BwrA>**|I}kAIaRWIO9f6dnYQw zxJbL)Np&LlbR~?sGpE?2$-)-sxj1l9nc&iw{Ten?p=PH`*Xr6`3$<^)%2$bU9q5x zg?qEN%i+d3RSR&u4o+Dcue^*t_~zmDhu;?upvJ4rXtzAJ?zy?r)$`L5(rv4^9L{BL zlfHS=$jmlQH@fiQff!rw@P;YcYgal#9{M{CZOe@sub!`y-D6&O(hZ~dY-W)Z2nzf=GQIF`ceqK zDX2B1KQ=XLRY!kN2+G%LKWJk`A0v$i1Em9Ug)ioD29=k}ZB~l8ajW?K4sU~39;Y%J ztqjt|G#1pJvsq-bufR{KvE-Eoh6zz)Xk;4gOdt|*PK&Lh3i2=7nAv%jkMVZ!)KY#@ z8y~-M#Ab5L%_l`0BQ2}_(;qP$H^mn$GS_TblXE}(j#gQ6`gDWQ*dUP!(gpR}7cc2} zKU#Lz`{dnxn5Ej!2RN78W8E$zQ}3J1p0WI}x#Xo;SylRT6{kyG z&B&ygR9yESN~n;EUXO?d2)EytCaz*?veGuzt-HyPc!o;e2)CA(EKW9=xV3WqeDP=% z#ih#0i)ZNWm48>LSG%iMsh3Mjf%_K(*nYbbLIPk$x4-A6S8whMA?bBBh|t6gzk}$#>H31i+LDJ=0D(`-QZ!&NX)6%df43%2~ad2uAXGQ zD{*0N;y5I887-E3yoJ!IQFwu|*+^9_$~?yC9r1q-AHX2b=>P}hLtv|w@=ZVKVOOef;a-h5!LXAz#e2UaD|#0tSowP zUhCN!lqFx3xc)Sibx{a&XcM`slgye5uekqPnpPCUeBT`cx^PxFI8>SzT*>HDGUZD1 zs1q81fvvvIFhrjnC9|fRYapTvzTfr#i|wetnix9Fc(pEnj#WK$5>0G!qqtAKoXk-H zTuk}^t4fHX_Tno3yKz;(`2trj(}>S|aTSwj@Gs&@VPYLR>S-Gbf`cqE2YW4cs`IA8 zx>x)KtImCx$CK0-iSJd>(Ot9rOTVzR^I|4{va}x!Ztp+BNh$;$X1dn$4`uyX!bQ3J zD6NF4SHU12{t<&1(V`CqQOgKu*UMDavOm;Tp369>qNnt=-fHvt@qt8KUg;d%%m3Yoyh zfteWCIPgzBeCK}Y>3Nv^$XFHX8>Ffj*^H+3rfvRvPyDw(7dI6xEUr0Uc)q;m^hQzh z*&7+twJKVktTFc+nK&kNI0_wbt?7$>AG#QZpFoX*U_j+=*MQ~!J?GD=Cvkcn_Ox|i zOx@{2NKLT?%LHZ+^0R*-rhfS0BFCKe69i#K9V=#jJY~Q59yHYb;&V zWRBB()5H|kJ$w@B{i0S+Gl+S7=^H40`OwHG63V}6>u8sD@60Jck}DyJr5*=@mk85-I*>gDc88Rw??Ngp_ftD6;B>z4{KxU+WXO}P$U*9! zH=$e#+(wfOZ4vUj;QY{+>yzYTLaEn>UUM)&_`ffEwbVXoKU>vSH znTSrkQ)4qAHKmf`=I93}9su31DfKXx1&|w!5 z8Dg*uAEVxV@X#~ka|~A~tq_;)W^q4EEYs(LS6tbqc|xsvaSyJn%k{fnc-eSuC+WD$ zl)RhS5k6_@OGI4^?fuZLBsIlq`szy|$)%Ld3yZ%}O5z;@`jZy>Plyw8y=UjUUa8gd zXi51nGV>^zeS&)i1GD^(>Cyl62LGxOw_+)HSUiHWW`-DH#De*Kq|rji)lzIhGXEnm>Oo48KLGl1nEc8HDI zLmVQCQlZ6Gz}E2(6DkhDLODx;3o#XphF2k1t zBE7jaZO>Y~f^;|d2`(V!qU7cfBWj8A)D?6WLS@t?$UT@qU|iFh6;#T7rMLPe{ZtmC zIf$^f8Z?5Lw2rhlXZ+UDNODCU4^#KN3gu>ktZSng#Mg{@4?x4^!M90EOaS-B;?Eyy zu#D|W2!~PfK{vr#at~h(8B}uSN4(oWmr03rloc(yxNN|LbwYs_YT@U~Om|IkawYEr zmGXt*m+SCe^}Bd7Un8onlQg>Fgmz)3q5q+asL@>zidp{yrZI~cJ&v-=ie|k1)Re;$ zZpS`vvfqM)?Pw0r8&5h`50S+?oCS1gKU@lR_?nkiK6&y&X;G<`qCG>;6ykbUP+<2y z*Lu1mzaF@+RQN&*f_vgVKm@E@Hy9kM`jcjY&RxC2o}Quhyb1ihaGM06%0PBkPk){sdpOY(6d+>$vY>73|XrNf==zxb(M9bz|{ zhuIBOKqoc^HXF}E#c|uhIBjh^ac|=YT;Uc<+Y7|)uMe$KaF1GcS|R8?y+M*xJ-f;? zJjRcmT#eAq?Z>%3%+NsyBQzm4k0Mz=m;yFP@4UflYe zWBB;k-zA$u6qA&V6q@lc-6LTsv0MW~?ISgKrtp|l3WPk6t`-IK_eqt9z2=|Z-M>Q7Ytke(aGog(?Vs)Kb40a*#vFj8gy17!V-guTyyc5((54hgY>~g+!T0L|#R44sY#j8@z^4EQKN|<%TP^pCAl?U~`!DA73vlqW zanL`*iUJ(`Y#j8@Jw5^){0$DQxS@ov7YvXXRre!qV*ezZ1Tgr?FzBDVF$6I9$uJO* z2Vd>O?f*2=zhM;mXOg)<8~kK#AfOHe+5niuY<{ZXnNWU}Am%v8{0pHpLei1fe#qhb zMMvjZV;LIrgAcMrI7rrYX2Ow~!j9f11cN+8znA*dRpF#e>2STBk>($dy! zA>tg-Y=^!xN+ez_vT*9|ZOQt8YM#w1B~;9QOKHc}6Y9dOuLn|o{yTm)7)c2bKo3Mm zOUV&-W?i%)bwQ&2Woscw4HMVr0*Bl#kHOJ(k$eJdEzO2V+b=r0vmT*cvcDEXeSoBM zu4efa?cOxFhoejE!UESFg+bDEp*$1hpPq%})Sr2De4-40{Mf=erQO4wuWhe-jWz^` z86pe~mn;d+2^6ANSwszt@6STtXEXaJ_J>PB+6$?rbRuEro4J-~Ec^JeCBGJRpS_!y z1iV{xld{V*a?EueCakGOeK`bg`vKt(XJ7HDL z6WH1&Tni2z!odAu@aiIpFQTJy3?0e3;>5HX`^)dzIj^Zr`giT_&&Tx^(IHlVa+wB6 zd#((_m+Zk=&1a>a#+OtzH=L_VfMDDubcPM}56Bjb{#6=t@Zc~&r+T-)2l;_X%K~Hm z5IbOa0-jgkyn*v3pm_x_02l~pUI7dM1_GK_00V%5faVpz0AL`Xc?B>47zk)y0So{J zf&?)E3;+fK-ar5YfPsKF5WoOnAm9xIFaQ_`cmn|p00siyKmY@PK_PcO#2t;-qg_Sl zAgw=o4nM!jZHnNCl0Wu|KEIG(!$llY2qYjpFC%Hv6HcMcMtYk{uUVAUW`vY)f$$o? zAMrU;av8sNR4~+z;&-4PpGQc55;m?n5D~V9sw4C7A`VbFY5)`ksjTN$j{2t_y|Z3g zGH-2uWRVK-4WX)bR|yikd?NMNz0VI0g-8Z9I>z1DG|+C@Ez?Zry<6J+^-<~fS1O-8 z#8xOhcv;zrkJTD(>L*bfS5K&Egt>^@xcT?}+`)s|PDSNZO3kv}UY=q_?!5Y`M|1x~ z+kZK`!Xm3^g;(|z@X?t8=(K2+Wm^kD=FX7cP||iYNGVFY>m~gL$7RGoenonIIztOS zC)A?i{KAa0wQ=mTP)1ybg;175Nr8V);{VGz_%D^scqR8!QP0BbU&hr9gzf1sU;WW3 z`3C^$p3K@co@z~K;mhl>v3A7u!V_Cb+=QR4cZG%3Xoc4fbzP6nl7MtE(p5^`rH?Jq zf8gu>MdkhgxNBTI8AF9aX-7?nRh9zN}0hY=E@#dILE1G#aS z=-*T5b~f&qkT>|zt@A}o7ifWgq||x!cI~D7JPZ3DCgBH-`*=z9Q&B0w=EgQz5^MP? zl37V^$sP=D#qSBpj-r-z0S4PR;|ps&!iUYd{I=9mZp7XluTuGik*H8RK7s~)ryUOX z3)7;`6)ihBHTC-TS0eLdmrF-`X1qYgD77&@cda&0`Au*OZHUE81ECGEdH5lyFXjtK z1#=J!jWh+Z3Big3Rvd!Zga8Hr13_#;00V%5AT}X@0l+{In-IVNU?7N12w(s(5X2^a zI~Z8^UC)GH_HHDefD@fhPJNSnudn{ibzKNkbU)J70iDue?~{Nv5P(3y8GNlTe~VfsLvVu>leA_S zT5u=*(M79?j3rbrrv-6cn~}~Nat2N_pCe^Qo0JU{8nnRCShv^~q;&`5Y2AlAnCtv-QJ@%i}U)wp5NrHk9v z(2hKl@xJ!r;VW&0iAeG0?Qh*^Hw;YZ4!G^IXBHhi%YNs8W$uFJP@{}wXa3e-JWs)C zLm+Ns!-m>SSFu9GatWgFv8Pji0@|0e1eJIGPD%zOWSxswHl4V^@(BIbIqzM3Q3?&( zsB`p;aAs7N=Z?WqPYMEUpE^<3KJzX;En|jl*pa5h%5hDE}(0%uYh%crp{P2I6x_+nN@s5k6u2Xv#Rp7sJw`dy{y;RZ7;odUBNy^-Uf|-qC9!Q0d$TNUQ_OHaf!Xbg;6yx z>j`heYkVrnoTtVQ+8En$SW5jILR&tCvw_&XMvgfi+5sMR!h>kUqAPuQ7>_`PWa8_7H#TU5YS4~`{c1`lEFP5W+EOJ#7TTbU5n$$sd?`vt}qCvN~vHd?Pc{` z`Ld|3gJnNxkJB7G+7PIE$yd%M@J zInTqW?uAA~W02mKv%lMsqd(1{3ne3HcCrKGxD{A=`6sGZoe?Sv}z?(@hO zhZZ6Gi=Z!-1Uia{MY8b%kan#!rLD4>LjI*m}BAdS+#Oik0N@mj(*b^@AYMK_1^#ebN!jj zV^U4fdfE27KBdQ)hMS6_v173#8@5HYb~g=5zcjXL*LGLZ0sS()XL-pvZre0>P%QQ2 z4V{!9n6I61XxfDHT1z`wI-a)L#Q`vKa(-G&Cep#sMGk2(S5_5OydiUJM~`Y&XK35k zY&<=87Q-s2?yLtgA02zyUMF&x2Q;0lgB)A32SE#{rzbiOpkdth1|Ft^F53Y8#tv<1 zmKf`#l=rkm0~v*mrNquYy23J(*0eq=OXapB9Pzi+zqOM8;IN6PqZTuQp^d%|dxsF` zmk=t9KzSDtJouzkO}Kqb(@|p4 ztGPH@#3CZIiBL=Ez4XEp()^qNLyObJ14mWgxAnf4wL@mt4$r;#19BIeb?~JTuQI-& z$oNdzvKAb=(xHy)40O5YF(t{b*nwVB4c|+{d|HA3LBmk7Nc9R@#2;K-^Ep}i!ibP* zU-59g58)EgmDg}wr%WE^mNdwIe~i#!Iu{AGr=Nzpp*P7rMa-i5D>$aar5I&rY?~R< z#R9Ys(0?=cwqL>W&%17YM7^{E-5N=aS;fPwpN8tT)({51FvKl)S_;Kc)d4!;yA$=5 zco_Q&S4;K1C->3$tgZ{o#O|kPlDW{psgI6-{O&80P(UKifyza2TyZIkbsw)WN(;TE z)uYuO;+}ep(X$bplgktyX8T;q)rg!&gr2n=%2bj$a2_OOgjG#u4T-pFIC|S%p>KPu z33b$*PERexqLjNlOtxgApA=fxE>AWqs!i=f&f(poOO| zN!3q2rarl7^M$BCd*FFGZ6`7=X;3>sk^4Aa)$G})t=d+R&N-uG%e4}3e^PAZF! zINvf~b#(3$u`5EJ^NR@bM^v=C%bq_kds$MaDjN6d6Vb0S_}x*?rtEYs9$2|s#fcZk z!D=Z{?NN&;r~FtS0`{F98EYeoQ_!`ou)WMEfQQKmHQ4PU95jsX|C-i=uEvSNGo;gb zn02|3WDTUV66^aS5B)I+*$YyN$430*i)b+qqr@Ep)qSV7=alR>vLUdz2vjqN+va~m8&KDjpt#k^)LE8bDWO9*Yu3yc&X=xsFt!? z-ks9;gs9bIod^38W*?%juk~*(2pjsz0JSTeHRoYQPoU;5L3NvJwALw1z2%6cETLA& zP2uJbNVHJVOMSR7TP}TMA1$b?SneG6DB_(g^w`Y4dpYux0ak;OORzvGB=iiJwNFp} z(>M*O<6(4U*+ER*Rh7$~Y=f?wZR?3&LVQ(J|BlSQ?Lzc2iP?&z-=J`hXmJPXzY04o zufsQGa3|p!9_IWgS+{tbavo+<@%n5ntHX1`$qc>H306#ZGy0=J&5g++oyv#N&gsGp zkN0_2j&Gf^lm6mnzNeeP9^8wBlda*Ni#<$Fe|#C*GA%FqDz!sbo?0y@ z8zXBU!x<)8!i~~A%9w|_-C(G`XBWZahV$kr-`+(is}V{-kIjbWnYCKnk)1;QGL(wx z48UIEXj@j*5n2>FB61?T&?N1*t(`cg2U64oO+SYcmlSwg7fQB0P0v>AR(hzI9!g+m!OtP;9Z! zGQ`}tQ0^wDsq_y=e+IsK6N z0r4FUo4v#XUoQ4UG(qG1pG`hdic$o9Q?I5tqZlYbl=wziBHp3zLI-sppzZsemClf zGQl0zh@GTyRAi_5;+9)Y@uWv(f`R&MK>WhQ}q4o}ANxF2K1q)M9}1yOwb8%VwxK2o7_mR9<}K5g~d-bW88&4eC_Yn{*-9j58B@lG+;rvlUB0zE|-Px z@Hj9Y?iC1opaC2|85Y>fGR1vQE>(Ywo%gyiw&zBu*vPV9^3~oWZrV6c*c!)G#IZPh zFQ(QZa>Vf~y(1|iMqh}o>+zs8OId<8l&pP@40bsc<+8}>B5mTcBaH4^d9Bo3)w1&y z5hcZj52cA$w5~>ZK4zYEcI=M8%BQeRUaQ`+-5qkoRO(&N?loRB*XB?4bX_A-LtN`s zD~+R*D_%*<8{>XH~V*|Ms1u#XL#kghrVd;HqoTH zr*+sBB^64B6?WK29}Kdc9Ob(MUBUPuyZ*6B|^L)P7@xnzO$%wW@ ztB~1UkzqCU+N$d1%q%w^rremRPf8`X4a;8N<-n}y3p4*%pX@WA`T5W1O)@KvjVs|{ znhRKZ1nz5xsadw4FD`uyM}AmbD&E+v`9w5i!Mddw?6w^NP6d_Jb8+DhLt{@Qj(_LZ zqISF8zxhPXU8QoGkjRtD_%qCtcNF%nFuHMx)-c!1?I59CIxOOHK03wjT6^6lpEdXw z6^lI|A2^P!(3r3%s7=rBaoH^S$)shpN7xg%@zu1>Je6yD0pk?#hpt=@q53aa!CV)v zL1=#Kul`7p+-6D)?wL9Hoad>;3ms}7J-Rw%>c)fqmDZt~qiUg~o{3ET zFdqwrm0k@Lkr7Vw5Gsx(X0M`&(h>${8Ae?H7k#&Zdq><43LNfYo%iT5Zrr{1VP-Fs zu+i9;HZE7s7Y!tPbIz)ky+l=706N}C{nW(G2UeKz^_WlvPC8yEq&^Y%AlrJL8brcm z7h67V#&1eN2TqhOsNH9CXZ%ccdnp5h8SkA(JgOk2yk3&DZS1_&iTeVN9M=pk5vzH- zC&KEOUDKO|hUK(}fx~PThUvcc_cb~to5jOSK*yTxP>#=43>&xKI4`dj@5;Y_ zc?i=!Z}5CZk?)nAcXXd`DwQ&DXdHUiak1O|23Ems?}nlQHS&ASO{E;{yok?!pc3f9LF4` zq5vu6ehS=?e0FI;>5YTm=NNzd?gvPFtolei_FVjhmHBO4OH*+nzOblALE-2e(vUH+j^#JG4 z=dT_v;ifJzIV9;rv7hT6!w^Z{WG9;(BRNo6Gs!h*PkqO{iEmBv&vYJ+5}$20q&8H? zf5QzQ>j{7cp&IfyUv!q^sm?X1ZexvBnRojvX)hYcqta$d)f+1ML>4_RS2HekT<|ea892O?6RkDYaqmqA zd4+q6zO>X+w&sfCX-w^TA}R-KUO>GdqFb^DX;w#t*XTudt)cSdGm(_+KrS!14SRZmnbZpzc( zWTd=%`LGh5%V1Y@#rSE^_GmX8!|3_>`WpwF49<;;U6{H-Lti~a-<1DJgD_4F zRnuoxy~iMRF-W_V^F}c$mT&n?do7>(4_dxSPE+$G*m>{y4k&a|`9MF=BsizbfH!)u z!52NPQK&34^w68g@3DOSF=znr(FXg*AszW3j*-M3@s3$iMed2MH$hyF~UUkR1`~g0T>L0mJx2eN1)VM@0cUkXJ zU-%^o{%Eij+64aS0?HX6KXUNHVQuk%hv|X^x?-*65_(nr42LeKw;#EI&lR>XIiFCi zdW$<3=@eQn)rZf@2d5QFmgC%nba9Z*Ex-%(0`?E`<)gPHLv zw#GoWAg%H>3qxledXpPBJozIZa)Sd)4Vf-?t__YgJ26lgZNXh#%ic|ROj$v^_VVc3 z#=gQy-x*F>h!(Vv+?Hr^n@$rtcNgJhEBN`*Es4SqcEY6)xo4TSxv~zk06vL@;yUM za*rWXKiG$(-8oCzgJz7X0rAmmm&88+dzN$paq;9op7$BF|DjMGsAe5mj=PN(6wA9< z)bN(lgY%x#6Z!=^q4*g)@wr^!lo?g1dJ~q_Na)mcUL(vcBP{UhPDLzTj#CsbH+$tD z`;!O%^yc3c3Es`Uuf;JGA+~K#0Zw@wpHnV4$sk$N6gVEzlAzRe$)MEBlx6%49|hlC z+lRzju_zq3MFbX;A1GACApLTO)<9VdSz|xeTg76Q@AHex&~{QrQNz~t2am6fa*%a* zfdBy4ITk(U)81C;a$8EguUMz_F1iW8D1yJh_y{BSK4A1O>qj+Z=B7;9o-Nnz$z@K) z&nkVoEq@~Wc{NHR1{q7RB{Ii3a(y}WV4#bpffT7Zoq2n_U|t_iIQ9m|3goZlqZ$hm zLfbx5W12sv#uQu%)lvD7h@S9U@Dhc+pmJkeZNrOHJ=-x6*EQ@>uNq6=W2Jf2W^C%` zNdG9a-^PXeW0{!2l#&Aul9nad3moJ0bJM#@D6fhdo)Fo$thR(KqP?OVcq%^K${yqAZOJ_@ctCZTf_adOP$==Gm8&7b%Z zu0y1d3^u&Gkve)N;$9N+G`&_E|CZFMkgZ=ES?aCyBNXUMB>F0NTDAkgIcOzt#mvcL zXn~=_=nJV%W71EkC=nVbn8J!uFV-`o_HuJW!yf^;&z0k{uTxiYxC^M25zML}NXN-U zVCTpZMks36z{B*kLzeh4F?2R0Eh-^gj&JYI5#$V|&Xdf;Ak%v{j`W91pJn6H#^=YR zz^LOo>K14g$-qv7vi|U9|IJVeS6dX9Mpp&eDYsY_3vnZ#I>lb-h)vvLx&19E(q>m; z(ao+n!kMEAtp}8_OjB6@^S6k!^#9rUat!7v5Yuq93k}OorQkQbA=u9))R5U@g(#FX zVn@0bGo%i(J4+7Jr@n{Q(c_M{zjreZM zQ=@qzr*#>WF45Jz>(ddB4rE) z1{Uj#YlKKp2pinoq*dreoOZ~VqQV{#^=>sngPS`EXIB+J4uOZ$7f~KoaOXXsS3#2b zh?qhXbRaANHz+jQ*$%_vM#k^Kcin(Da$U;9yffReLAql1F1kcoY4aQsXM`3yBZw`I z%rn>whY~uQ7VDj_w~{)#$w9m{ zEbYc^Gnw5QPwQOKmV=set+(7JuXx)-K2eq0P;vL&pbI*aWgIhxGMz6c8hT8$DPWJz zGWbHWnH9ej4d0K$oo3id=vj=L_tr#WDYu$Zf@|J182yz<{{DCW4+1!N@M&}=d&i^G z2MAT2d`K@2xR`cLygMY<&@g3z zeY3EH%De-U#5)yP)-ysYv^Oa3etniG#b9hp#zZEacU%(0j=pr{njVPmLjp%O5#Jfv zE6zb&FU{D>+JtRWi4c}@i zX9MotShmZYIm+l59!AR6^CkEmy)tE-hh70m6Hb?^i2NYTnrum2-mnoMr3cH(GEmTu z@R;+M2Xs32xpT__5@#r150IM;dWMaTNVSl_CK&HQ%8wv)MTKcb;|(sNzN&e&Pl|`Z2-|B z;7EC)V-xPPk2!l6p?2y#j1y$z7iT>dGgn?SXxoqsRhP{hbjgS1c$ht=O_R?Lm^y;%jN7 zR2(q~j-5A}`{%gc>weTK)U8QmR^Yhpu$jReUyj=Y>BIh`V1*^anF&7+JYw3t;Mla7 z^T*(eb=M@QMO_(%>@h_?jC>-0WSvX)Yts6E2I6RkO=-#)n>3-X~ z%cx#bF+AbsON+gumwLM_?>w2GHDQ}Z?gh`{Cw&oWqL{iUggLZ{+|@~DO;y7D5tRFU zc`1rvYIVmD=&MX$HaU=4ql*^H?y=crYmy@kRJs=dNVaaVC}2P2j7GiXuTf`x*BZ5d z<_L&llCqIPGx(&DU=EjSV5ohtr!$4eq*B@y8j-FR1@!oSVLd9US_zy!;)B`HCn55W zrMAozmfHb=W@&)Ujz>uS;A8S{VO8K0+nWHqX;4UCJ7eZ45}0C8Y$_Mwj@~cq@`3XI zOxAj*`n!nLP24aNXY(};7FD4`qc*kK^Zwjs*1~5g(vaTEU3C!Y)F@iXM?n4eu@wC? zaxFl>-)yql$PJ@ZZ_W`34d z@(oYbKcl4r1pEyG*7Fgdmn~7W8TVSwZ%m{T?dhWi!q9Ve`m3a`LA;?C01;LJcl!=I zeNp$WKkkd-D@K6{_{&|E8r(3XdOPiHSH3&n1a$UJKWW%-J7YEJ%j2l5S>`tn97%Xx zy!%i7{F8t8ZS~9kxaUX!fWO^lyN(-1s1~lUYzijT`n>k2x2bR`y4guRwMJ!0AW3r~ z!W|c#9kXmlZRz|z@+CwFp^ylnvkC&@R|%b~pbTz*41oy{@V5w9%e@c#kHsn!y9z`) zG-~)dfMTA_a!ffPEuE`==Ms)3Z+?fb1g?Fb66lZHTLcjJTL`S<-nY+!v?XC{A@T+tu5YzP4G9{>P~yjrUKSyO1Q z8DQgsc1W~1;5P4HB{}07p`j4R#ptigFzX|?2DU*pezjjyKm~lYZtwp^Pu02iu`G$> z>fzzA5S%O9%(`JmjIMWHcN6Tp1jI!m3?OIHNPS9h-+ai|Zh(La`0Ws&23dA2+2e#} zet3!xfg5&4cj}!t{2vh@paOn71gzrTC$W~ex^scBW}K->!7L|YvSwvtCXrOd8 zVbNo9_o@{?XMjGf3csp=FJJ%IHZ8g;R3l|zJTJ`z+3EHGqKaJ>;$@lKZl{WYasLKH~iMG zCuFc#oBN#f)7E#`8`|cTA}{k3;wjztgdNdQp#&x?f!`jU!U%!x@RE;Ui$*AwBMM1b zX99$Ov)`X($1mHrr+|`cVMn=OX|tqf3^xQ*_B+bqH`+vaVyereM@GUrQ)_$9nktoU z;O3zP62jWll%t5rS?-LURs~MNh6c22-t;fO_ksvVMi1%ef)qVh9fZCGx&kXg8XrNQ z!Vrh-A91Ml*{^;VI&shL$Sd=>r2y5bb?A;eDAWWpJGO-Kn`859*%~e;k#c!o+t$~w z+j?7m2P6EJ-!r6WiBBcB zcP;5rXKxWQ`OOr}H6h&#oxyjVgF~jmP4>BpMgbFL?EXteEUYa^1P>-*{nyaAqQvf4amWPeZ=(x;yf2_ z>?^D0+jyrS)bZOba|yi=81@YWAclEiF1YlcAfWwy5D)}Aeme-@A?KmM?i&ci{$C*= z2zUIB5TN8U{y7K;;vN6rLqHJl`0XH|3b~Jc7=ow&S3@9(di-_}SkAq_d@sW#=w=~Q z%(>O%J1X9JWBlCQPJDPy{)~$|18==gB}@~~KO(uPuS$!*MO_g=>dW7zzO3NhSK_Eb z6`3N~SRKB74ZRC;U|~^6(SQ|!5sB-V#;;-BxNKPGcOgKK0QuYLfPWYP0#e}rcLWGH zfqsmDk(f8i*`HNZ{-d&!P&>9|S5ZY9_Y{RudZcm*DY(e3c!zrdOP_PR8EGn0fQ}rS zGl+d|A0!t*_T((clqz~fW=*LV<_Rc)euscCw^)7Nbiu2sRueBRD^9tG z=VV_gez?!|n;j1SC?@i`3n1Hd5CH{b~4>Cm=Oq^bHZz1xnXs5*XJYbD}@~${f@E zq-arS%a~{M_a&`z_XixlKW}kYwf^EMPO^FvI6K_;26Lv+T*7Qrn-diacbof~iatLa zVo)dC<2);FXxCUvc{zi03s>o(7EJ#xD!Yk?iOyw3w(1vB_pEUdVoc^?UNIvODv=vb z3Y}Zg75h#Mn!N~>BP^U^+sCs*T2q=Vn48G7EEGc9H#;C_D3QW8BJ`fmxo5#y*yf7V zI~7sdC}@#pJ|dijb*_YZ#}B8g7w8`) zgyZ?AQwHGR72DV_KhZf|x~1+#xIMC*g+<38paes}V z0L~U`XI)$DhntWfGML@-=QAt1(%-=o)4#llKK~|OBr7(-PF(Q@Ua0E4^?k25niACq z-<@-5OEl$fwUsC=>t2)2zmn4Xu8>soyaAqrgSW!bvZUeLZnp79A`86oz{b$W&X(OP z;kAIabx(lTB5)4DC-WaajE5OcFIQkm!?!g9*y8XZPx;^WH+NA6=I^V!z(-JeUj+t& z|1R~ckk$_)@eiE*;UmAgGv%+pvX4hjkkoHxmv1F+qE?-^ae5lN!d>N9$PvW0=$ggw zryjehd(5Hz#OK%f7U)}YExSS63~%cl9jMIpStjL~9KS$pVj;#($-c((P;Pz(*R-LT8oQpM1Dlnd@% zUDCnf2b^pohTkJNv5+DqqOMUofNV7K#o&H~-oFZ(zkuU^Apx@g8m1>mkRP?Vj?v58 zCB3vrio`NZ z5FzA)euf0L^PuKS@Q>MGgihJgB)C`yC?VU8FiLT{Mk)WBr^^uZxc(fG5x$NK?CN&x z^Bg*UK;1w$S&<&T4I7h|nDNM*t-=s%*?E*+7(Z-HkWd!Te%n7PdoMyC0>ihSgo+!S zK|IW=G71mlOh%W0RXxnAYCiGxG<>v^|AVKWJKOe-o#fTHZM!DepUWnf=FdGce}W9| zX`5E#%g2c^0!;q*@-!vKMbvKN1e>$to$SNaMc;(xOTF{hxY1ZPLBF8rh)YzPIyx-|cSPmC7tT&YOgha8=&;Dh< zj+cz}=v)}G|D+LZ?w+g+XbBDs^}7Jt2IpJ&)^}D8l;rJ4c3EP|H-PF zXu>{N>WEOQJ_w)l%$eoNpRINo5eXNK%BnxvLAkz1S-!j-0 znhsxEG%w?;(#@li$du?Ju)2Mr`_3YvPz$J{Nk<-2 zUL2dzH`DeHb@1?sKr*n}FwR>kFwWzek*XK(dt2|!98l2L^o^G!b52DOSPcZ!V^QCz z{oaP;6QCKvarn-rG9nj~J)nWuJ`6AxVMpm4wOpe9Q*{-7*zS+S%C0ZU?EFBL6~P1_ z{|zSi2V#hV3H}`>_ym|(#=_&YjT3f92_qT>s`qdyTHf_3o!xC9H~K7j@2l%rE*& zSa?Oj+yRZm*;WX_xKXuU7-8#Gv4fd7dVugx{cE_wm_}cbl;YFH*ON*~jO@Y1X0a0` zYBrt#`d1QT+Z~qPqti~PS}yWa|C+>Y4Td22&~ZNPK_g3#5}F;eMOJV_ExGv|ct@dM z^w;3QZXqT1*J59g={(GodL+)jQ;71b-bKMfQS(HAnXws?9+g1q(MrIW88*h^OwQJ5 zJx(A66&{=M%b>lfVD5;gfj5Gao-`wme<8O2l%x^J>VmoWqA;i6*A2~3vB#xTC>t>= zL2L*zD8x{I=3hcS5oWQtx7RKdUoUyNjp^*bvSac;^^N}g zej(RjfY5uTDaF^<5saaACMf{}L7|^HJb%8-pMMEu)wAxTcVB+e9<*c~3|ZFLo`4Z2 zeyW=M6H3FmhPscHbZNz8dYghVH>C{%qK&b_>m!*u+|@>;9`yta@mEP6xu8pv)Up9v RvvKYofcaTA6u*D>{{ZAbyU+jt literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Monotone_optimization/concave_1.JPG b/src/Dynamic_Programming/image/Monotone_optimization/concave_1.JPG new file mode 100644 index 0000000000000000000000000000000000000000..d0c8c59969b592ae3c14d4f348751bb5dec8b464 GIT binary patch literal 142968 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ªpRPzPsS2)`}@0svHQ)QtpV$V zYW`GXn|(3gqG_%*$6n;7!=08jxq);(vvlK~XA*|+oCQO-<#y)dBN{GaIhYF3w8Ock z{i}*(D;fv&72(y(+C>hYbSzU;zUS1eBqZFPW_&f`YJjL(OrpAHNxB$Ke#?!OLv@R5 zWUkW#)OAe`QfAe>(A67vjF4mvi);p6XSA9mO#({q#IKYGd4swLyIT9_pc z#wiX+vZ}5K@wG|mvo>(1@0Wx$Ko1O z-x_j?bOoyyQy0CoqsY&(Ho70hX~wx#HA*Lt_%_XkdMbDqGj~JgPPF%Z6&F?RJODH+ zIGbARD(y=~2 z`LDp+cc%SuTZm_oYwg2A(FEA4XiNqG?jTu40tAbW#Mxj){hl;rT^(8e$8r5X7AYDa z_5%D>GQAARybj_hDKdeARIxkqJ}y0;YpLn&4g2qa&8x~CneH=k+^s6~${m0$_sv-3 zy2S+4b7NaGn!%;bk^#C4wIPcQ@d|{ImFMwKd5CtFL2@g_%{*N zbWY**r73%_-P~)c^WH6+NO8%&oP1;dYNg~yysHQ=PsHdMcg&LMu&`M#hcD5NNtS8b zd4OcEFto3~+0tCrYV!t1J7 z1N5F}DRg!7n~j4)QLh-`U;}(p)TV8OF^&&btj@K}?qG%-_MI!HYY_&)lV4|4kdMh< z**H?||j%X1IXr@aMBuoZwzN#~qI!mEh{lRZ6 zhE0*pMCJ{7A-H;@PUk@bn(%WB?Mg1|9^7)xRR?(m0`(=O`@aN?EB<`Im;>yf=voeB zGdaM@pb>vrnJ_K~IDaPxhJhT&9+v|d%w3h_r<>3*Hp+EZcHu^cdXS{_#iA7p)s7S9 z_Vy=sjv+=w1^l~o5kaH$FpBlYgG-V(pXHNR!R$`zv~*s53!Ty&<030<9%zdHM04yl z>Lp0 zXTMd~aeYg$8BKi!b(r9txHER{-l7kEw`R$dA8O$pS{8R-YtBju63QoJQKD^GoiKhD zbx&}k8vn6W+qC>w53P?tstX<8D>rY_tBUE`c{jK%C1RJIz1?2pyq;*j!e7hBzaSd( z%?6rK6Mr#5&$Lf%*a6W%zK#c`-$fnhl%1b-3SLD_Z(OG=?o`?OM|BE_J5oG(q#=su zVp?^B#%9dz%D_*NNa^VQunfC{;aIJuI)fxdRXsIJ(l4x?lvfh@6NM*!s8F?-%KL$%aIMa!wd^vkjyFv&XvW1q_NOf4u=uG1kQeO0%L>m6?ML2xyV`4-LYn- z%&v{2ydg5pR%!jl_nNYyiO0YHID^eq={2Y6P{JHnssFSW^jefx0v^f1pnPcYT2!O{+$?VCCo)` z?_+>XEjXqPk~9M!sT(QPdx{!ma;1K_DtWh@-8K>E#+- zj%b=K=~Bbc7=l8b$P(5ptKGozl-LDTS&K)VtF*Lqo{NQa2yhW?> z0ea4Qk2#H)E9oLM|A*=EO(~|0-Wq&Y4J>3Jw8pSN(njwc9hnhQT$V2GdUw6}p;Mc= zruf0DLs*6z6&cfa#&dO8TtP%%2{$T$Ri3k^9Wj}($nmf&F^a}S1iOx(I(TQQI=+7< z6vTnC_-%Ti`vKu;o9E)^xJp?KTYSkA)YGA?5AT<-_rAI23+;ZV$;o%9g}~nz5J>)< z-4*dU8)pOUvBKm+fbxIy=SG6pOmJfVAV^f1OJL2bsy;%_z-l)UM_mS(1Puz%S14~t zIdqyI?aTvOOo>qdsE@zgu4COeYyGBy$$x^k5oF8E|Cr@@oW1W1@;+>hyJ3GeyN^LipF-#PZ>P>S)&h_KT&1QF7yqL?#q8C7HPehcu~e;r`wfR`9xY~#+|i;&$eb`oq94zuEUrQ0Co)$%guy&3Ke}$^q!a_ zwFyazK%WynESO$o`KyYnUr##`D1;Y>hKtqZtC+_CFgRUrel>ZMpFy3Y5gWz5XGq#kJuA*%EUxwd%60{iCwkL6*UC&#=~pXiDyugR6Lt zl~mn0ItE*iFAXf*8z&*|**+Ge9=q`NDpPMehA?x(i9i?Ip^rPe3SJ=384HNj@rFTQ z3c@zlb$7J~_3morktqp&+Or~;^{Kp{X`O2nBbAw-W4(Sn_xKwTDwd!6GX%=@Cy09b zXE^2|i>Lszm16FsFe0nUx+hSO+Y{E;#hp!ce8|FWxOgo>e99*_q_!xXTW`4)Y5%~= zN}>!%uL7fK^8#lO?M2AV2N~KfYevfYz`oRD@L($jaG9I73))V-X>uv8#K4pP&4mtk zsEd^>E*kdzW@RF=*XY_WqgRl?X%(Jh!nD+j}0_uo9$->qbu z(iL~r2Xg)=_1~^>#E?d->f;2KdlVk4B(5t5a_-{z)@~xm&c^jW9=XwX6r7xgZ4xa8 zlk^q~>IJ~_*=46aOnxx%iroQ1jkuwHE3^PZ%OY^&6- z{4_oHr*tFg4I)@9xH3J?_oLvxG^QM25N+Kg-gFLnHaGTs0uF4KGPH?uH(pIXPnz05L(&ixAI z{|x5*us0CTP^!c3fW`zzU`)R=B8Q=SDTHq{ZJg>$m$00qsi~XTszA z3kf&wW6p7tbBa#H&YQrpCuI?gN4P*-tLDse=He=H&43r8{y9<@)*pVA<%ey#2j0*u zaFY#f(>iFbz6hkXl?*32i<rRr%JoO{rv#ZI7?A(lzK#H2dF$&oU;PvX7fI&$U5h%U%*+i47eM{Vh}dbeh}GYT8|CV-a|t;%EoELNAFs*|@eGM5>NYV<_rh~U zeIh1QOEh6F59ZjNi|ufq-Tnqdl|#ymg(ipOeo*uo9YVHIAY3?G^)eIN-!-0a`4pfX z%Acy65$&8v0H++p4jpg~;cK$2Zt%qz8|x#!QIYM_;nH}P zxWj!8i&tbU({WsQmqB}@mphTne!UZ z{oxl_zKxszI@3jfk)yB|#L_P1BA0Eu2XvaS-C=a>T(IO{ zr0JdC(D}G#`jOJqmX$+a42>y_!0i-V_UYjYA}|RR9ZP5}&ib@v9=4`j(w_z2ujX^g zQ(wPD^CxM~-$&}H2EE}cR#0p4@o(W30$DyCXNANg%ZM|`E!SySB%_mA=u}MOEx3Y6 zs97ehog66p5m7>nDpKAspgBySccYO@hE+7-bWF1r5uZaIkm>>uH@$&AL*H=s-ElJf zp!g5S(1{JLdQW=Inimarn40-eRmd$?nBg|?fv!S%xF`wRpBYz97|!I4ThpQqR))geO+{-UYc^fy9Ax7 z@7@Pj(z=?dixpqv+wb zJOUV_k<|C`a^wdGy9PdrXgCGGInr|OhDxKso`o-?wGY@-sjK=paGz1P#mPn*)T}yD zTbVR87F<#4{(6Eu{tC`QVfR)z)rq5%YywXiY235FdtMIz2y9d>kuXv|8*sE>hb(zn zc5GeJ&>Uy0bviRIIA{yci$R~r7?sTL{MXRtp^5)9&4szyC3%w%zRhhB8JqME>}LBkWtsq zMY&1u0!S;^1OJ%0Z)3DOuX^&obg;wMOoGYc>i5h)#$s5fE85T1>b6s1-naD?_LEV+X`=rf_sV z;a0=C_J+gyhB}vmE%1^a1XHU8zgq=f9pu48wtF;H0VH8fWV^#-i@8{5$cV2I6Y=oS z$$fI1wfk(|YcLl)F4^iL&-(ZHo_bjCw;bos2)DS50m;No7G}X02{Dava@i*lE1k8O zyn^gvfryBhn1+F!Qk7LFR1y^!>#F~!a_of0M40u=NvtC@nC zf9OTorDj6b!9uN&g+q1t`8FPjem9ooc{x1IlX#&xI;YMQ(=NNi;o`j&F(va`%TMdy ztlx3+x`YZ{x^TDl}Nxpnz$eY zB|s$v3tp*;X80qw_J&_>Jh8yxqF!g_Cq~(GvRlgNw%Al7V-33n9LqL`@@(X0nzZiQ#J-2#BOV)1nH~%fdqi;b zTUVZPO4m$hNIiul$pkNFY{u50DSOk1$bwgkakZI_t{wQn(}d1qmTh$bwUX6BC{tFI zXdzU|$eJ~@ohBv}WetW~@1_*)Se6{veMKPkp&=uS)d=s%UGv6qr@zyt^mXsml5kJT z@I5XdXzA&(*36pPv{_6k3m%(ggB@A$0)$ixJx*(bcXv5qwVL2YY+%dT zBJ&U1Y06vpW*ufkXCM@P1GeIOnZt(oa8-IRYkqVP;m!LeY-pZNT=c)N<@D>`@P8sK zJ~56pF}F2I=StR?%=0*6)R=REpoL0Me?!wgLU+lspKqAAA#Kt2hj`~IZKFA&diUEt zbb!-+C$sF2*!eluJQ9)1T=~ihJ6MWgamR!0qwd%oKcx|6XAshJiF%~j^kn;~262-K zFY5*HvP`O`^RoVhTzv@4HeT)6vRuQ2D!XRh2uhE?m;S9IEr<~5deO<+B)wk};k&Gg zp~DoHYXve#6(d}B*U6Qf)@Ss&k+SBy+9EtpQzUFZl0HV`9hQ!LG*-oW6`O9LLiA0SK=P=s%fgg{_rdZ@2A+^N;Jt+6j*s#dXnlx_ ztY(S6&|&OUr}u8_(>18FtiL^Mkn)-dQAh7Oo}p+TAS`#ka#eH<{E84})R=d2H24Yq z7@jy3PKn#4Ht$9-jkx}0wB2Ye{dW3eMCOZG_ZK8SacCTP&aezVW9#YOVG60oJmmg= z+`V@|li9XD97M$mD!oPpL*A?(Gc5|ZOR3Y+5@y*?t)3UT7bsu{BtEaQwFxb*D7@Y@u9~OGeRe{sd zk~T?$TCL$WqQw1Tw4`O`K_7c|$Mm&+;h=g(-3ZHm-K{NvL!Vh@pQ?aT5z^MRQ+V#J zro~Rv1xLM$-a0wfTCAsUFHfTjYIw=-Gwo-51*L3(et3BKXx7EPzITCVU!Oa-3}J?# zkPmQ~m~gq;e7V`$#1m8`|8`S?gu41$O5G(O=z3BXF^&~s>m5*FQCdvC$M7c~U#`Hd zeD_R$@C^<@ehL--Lv060wyL-F2g~g+WLMJtCl#(=7;9^|cL%45^z&GelwjCogk2F( zfM?9m2u(o?y~&uxG~FB|dLFo~Z_8lcYA+k-`WDH3u;8^85Kg4jJz^DN$QIfxVFV4Z z8)X|a35*oDl@=j|NYC3=k1B4)uLo!mPZu0-Xt8+n9Uc4yPVvGvP_ea)9Uyc52YZAC zzRd`)K?1j;YYskrQ2UM$0B)W`?{#Val}74k%p<8 zVGvjKbxU(8xlQEeuZNzLtT~F)L_~d=Dqq#T@KNu8p8ujA%*!E=e*(AF>?Q`JC5k&ju3LSA7WG^-ajdz5w5 zkhVBGarIQ@=|P@irr=0|t&JZ2N7mjhhaNLTo7<5Q!JvozmZQ}1YC|D7XZO0P4nvAZ z)XPgx=eccsA5mVXP;Par@Yr9H%w4{H?)Zy-5a=*`9&KNt6{)|b6yhR#m1ufje`@N~ zHDdQs-^*raM6ojJ!O;cq2nNQzP zZYhIq737nod1Nnbzve`K;!U1#QaVfICXg-5dadn1_D&1oB>g;V@*{58F1iHcz1;{F zO|kjm*h%y7TUDC&@hdCe>Wls}kOt2=q9j1j0DeO%TMNzP92ix4hL}r&0pKITXMVQA z?V?o4-=yXLt|r_7L~?o&IH?9p_ykg0SRVTFk0GxgWXexm4qwbh(|!2H)B9(-m&^kq z&B#!%V}bL&YMI=gK07jys7DaYRt^2~em3D9aZfRuvlV`skm@E=fJCer9?_-YiL3f( zJg;*%Eqx2y0KEBl7k{8-|i4BrJQ#6i>#wgBkX)-1ZF*2Vr* zmkUwer`va{I5RIZc(IvL20koJO?|47md3%jyXTIL0OrErQCNOImQgFClL*DWnq<^w z%L+N1qMCRz>mJ5y@uDHA2K9w?Cbdk%AmY1w^nsdH^vvh7#~6alMX$}7v!_MpiYq-G z+@Fs*lM^u*!|3kWfp67czr(#>IVvf~q{?n)GDzl)J!SD%2 zCG>d99PL)LDGHle2|KHBSu!EHRk$EPANHd^r-I#wQr725OZ9nN=_dC(0T z=fFsl_Tx&`BOH#^?o>fFjfgS?STO4XkTN5&kbtVO8;^)s7QWUjBqb4 z95V+a*jZ0p>YSz(LU5KHsTfqS66>OAtu)pgd+qK^Mr@Fh}&gjqk;K(jBHyCvEiJSfm#6XHs8dZ=_sfD7*>m>IP=ui5$@2MZccnCXarslC9Ai`NN+sOMHe(K z6wdOpzTzjoV5GjWy|2%}${pvM46_YEbl58=Q9V+50y0Ej{ILPQ#2@L~0CAmH!n-Dd z7JTj8SCS17^VyA(3j*yA(*(5)oxo8%kx^#Vn2tUnRhyRi>_=bg>peO!33{e-Y{zfi zx`ow_vi3Ca_0$8xr43MYyn=%O`QzlScDx6=cU{nu@^=)vsi^f)qcjnA|8!)a_ZP~o z^^|xSN^H>V#MUBg-$$CPcZFwKw_j*%bZ(?SyZ_<35i>PJ1*cwh=v*z6R*JFJRYII| zzCxiRzIHb7;qRg2BOq@_0z_C*g-8NJhh2Yb+FXl=%*0RG2=6+*AYR&pY5@s$x1-!n z9(F=#_Gg5dpr@rMeEe=U7*!O#CNfK`{eXog{!o!f(twRG6QlKiwEA%_v~2XG;-!5gE3u9(7WyZf;G{3*b^Qu{2j3))iJ_#yVhWo&>c&azd zEx9atF7L@zT626!wlU>IBSG_izvU9phB<6HpJf1r|IC#~)VQjC*Q3D5N zgBa8J=MJ$!>l_PQV;al8<*o_$O;%9Z4%-5-g;OWxVN0Ht$;YL%BH!q^wMkHH2ra*f z*w)6p&R4Vg&~!oe2>aG^=#{*b3qgajGD5Cb36Qk0rtiw->@OjcYXX(e!uX(KBVs{0 z5X~Bb#QoO3*p^aa)tBoM$CLGp#>Ko&N{t-r{2gt4{!_HE@eghdv7x=i6r{WMeLQgh zM8ZI=5{Vir5lb+|xI}b(rhDX_r;G(pmeY-mT z3GMVfF8jkf!UW+~yySAmV+*hfn*=TEloOPJE3El!#J!sP&x`f1Jyb0)+a?>Pc+u?d z!C)?I$4B_kC{=r!wC)+)Asm-9Szx9VabNra)c7w zJS45@v76h66<^jH#RTm+TdEoPiaw0x-4m>a)ALpNn!dwIp~9vEz>AQelQ_OSb-lIQ zC)%m9J=LG7dHZubVr0N?A%E}iBpffMR;!|yRTkmzIfdk}7QYyD3_xIeDgiuJ_OFfnCWHC~7ERbXC}~@xl$#gKU$LG~Y%sV8 z*VnL~SbP5f)X8qGzf+RhwTt3 z;5qez_yp%mB$XplfxJ>_S_0`h1%7`p{_Jj6>)(GYMFh+&mEFz!ogw?jaHp;U`&R>3 znjehajm>|(Ha5QhQ-yQ{hYUkJck@9)u*aFwkp+j%GTIi!aSQA#=JZe_KDVUDuAYi^ zBc`Tx_C}}d8xToS5;M5?Ko91@X&v$?m(2`?!%4-338&bOI9I<*i&(Y|2&(ms@Lz0> zJcW4*&jit>#3H`?@xE0NBc?C+p1c|x6?l`RMs>gBTr{zXX7*8EZ}Z#t*15Q9vl`D|w&SlnoHKK4@zMb@*ado)kf=j?t%X7r8Y%%nxKN49haM-#4?Pwk zod*l%BKwN>e{Ds1uzhKjyk*w3GThcLbC4(N`w9|f+M`24te-@D!L|f#i_ZmJ1{4VC zj9gt@dy#y)g`9-dwUcUb%O_JYnZ58Iwvzh&%YR}o|6NBY3RI-RD76t!b)t%Lx*ld% ze5s}n-G50dU8EKVbUP)82sp{kFJb0B8y+o!x_-b$4$0a}uJ)hx>50|%e-`snR&;;< z^19K1o+zyd)kqYT>k?jYvvg@|E(tzN3F^bF*WWmbmL#jCGof?H$^`T(>_r*d<{zNb z%-u~$aVgu>@R4*68c_9dR0&*&2t-PSRN@6tp;U?01%Wz27=FKnROT^UY{ehHvh2){RPL^8Q$ zXe=U&>2G5_58|bnFg=4IuWH}GV@e+0Q){Ef@cAGN;>XlE&DM1{h0r;`WI%Ea;mP33 zDO(avaMQ_>Wnv$K=!SwXGlP2-sB~e&!*YpY0hmQob)ZO*WC(wDe3jz=N8ekez1%rQ zV+Vh4fLu!sd?`A|rQYsS7|{`*)L~Wd*02va{>>pvL{c>NmaTKRD@<_HccUNFMuFhP z<0T@Mt+Q|Ds-YA7el;ke(nMncGvbIW$D9A7-*XNaWwzjt)uTusBsZFSumc&=$&()J z?+k!BTLd6~JO$@OB^rv65!>b44`5p>#o(Mf0wp3UQQotKDuVrRu3~~4B>$7Y7gs;Y z(%k4iLdb>Uw+uj&Lvavwl=^n=Nz-KZdsP0m(`OA62w@T1%~U1W0FWqOCdVjk$(Qm_ zKIv$oDPtRI!Z71DmgD?}jXKp^izOlnjs@!TFuK-m$dF%+NOLn691mMCI)9fe&Nsy2 zYtJ#m*(TD$?P`i=xFt(Y1figqcb($g0xz0K!t2X7v4I>sg$+t0&jFm34leLn7WH03 zIG!Ypp?+mOY+yrG1-fvUj%_+#QA1e{A{5Cs7T%zadHdr7sJokVh(fuAcQKkTOf&Kn`5@OQr zqTPuCqvx=&CYXUX?6(;l=GuLG$R97z2!cLSol5xqyYK(|6QHvn4}WcW<{DOppk^QP znaq1tw?3#)?_4<%{Y+WkBbK#LQRP?u^SBiTe=%Mog+Ev7&%wn zT)x@N;}d0#Gc$wf<(0FI7&Xo7xaJ>Ce87V7AK?J}m+N$)NNMx{!gu}D?pcJUWGSS7kY8XrLKx|ytF&Ctz3*QViz@MbjCCxR62*3m4wHngj4sqG*`IOC3zm50O47FH zlfSVj^NH8ypdA#}e)uSKq}eC62o`sK)ay~(@l}OWOzHRn&G?%Uei;%G*-QgHgX-bG z!IWQ}(O*@Da1Pr%93@^&+*|m?evjItFA{v@>GhL)$t54sEjuM7?qfI67tJe-`8*Fd zf*s*WN+lLMbU`bOuJ&Q?Y4VkwpVFcKD?e6Qq!0W(vUngePGSA&b|Ai1Tz4~d&;=4knV?&v`H5m}27kd-; zl2&JP-VRpOYf3w><`s}Dd*_b5r9CRk;c1q`!)7xDd!D_e2l16|CZ~hrImlX&0VX2a zcc#wSE;?eS3!b)cf2q)Cx_8{Km;SzUrToPLT8b6ewapewKM z1`7~YQmHt20PNSzD{OaF=-_vZ;8SgQSVQ?T@p)2q>9T#QrnD0CoJ2ofsPjgkm{3EXqup#jJ;KcoD!oIr`CJOv{0bpR6 z|1v1RlE9k61HLUn@b8O20T!VRZ}#U^g@Z*!j{VI#NbhbGxD0=@vQV(H;Eeuxul~Ww zW|n4cwgp!lWL%&;@IZJ!GrnRSHT_1$Een|JXz9V`gt12!_yV0l-}^6a<{{RSHxa?s z$EUC_h%a^^H+CTMf*hMf_%ry2=n}&j*&>0tE#m3BZLP3Ygp*^1Gm-7)#sNN}hLmT7 zs$jelEyv=j#~DFF)f2Y+MKO6~Bu=9Ei@I$ASDWEH{UswOM+401-RSN4gO5_0sE$ngdYtn7wIhxaZ9D zEw5FU>Y0eS*!T@ZVeOqjxuSchzPyMB2&veV={mpSMzN6Bjx3hZt)+tWANwRNM?wo} zeIDr+9)4>6cA+g2rBvc>V@T;=J7rKb$N8Xnzl7#Z%GZ$wIq)Ylq}3bx3$fKBM8QTP z>K5^yIWb>_C`)jwKRDLNQ?s95Q?dp+rg9#dQV?T?@u4pi$=-yAcWBLOxV$z|klXv% zzS^oQ_*q%|hXoZa921LF;2DYbINNo*C?Dgh?6_WZm}D!fi!D6FUhQ*NMA2R6^-Mh; zPTTf`U`Cew*t$!B3kP93iMP2@hi~w^v6V19E6NpGt$87Pm_WRqIyt<%% z&2SNsT>1yDual}`Zw)Vov&+3#P)2(xX1f-8I&j3RDqYqc`LvQMc$4gmF#Qoh4vmjB zV+h1Ne`Qe~9#&NxSKa{&hhD(ec@xP9ZUA&BbN>i$E*iovVcT~g$sOo$T4LS^I*7Pu z_al(g(|i!kzN>CJa6=7V1e=LSxoM+&Ksf_d5DL+Emhb_o2La z%qr*YOgXt3E?jtqj#Cx%_{@aS8{wX`i?1j!ve6&&r*ug;k~PFR?_@e%>k-EXwsuI^ zu-S5Fi5x|xDrSZ}N3RD3|>-A`z7 zrVDLux5=-n0TV|WZ#jhPBrTA-cAMXL!+3KCQp!_F5iqhHR3}xav?}O76{g@281X1G z!Htu+f8Ae-KO`hRPwO>{^pmz_>Zz`1gW!pPW}|}&qHl|)tPQb7h4h~Xx=Oe{d&qWk z^{KtY@IK=eaK7u;+kc%+Re=e!rI{XT+&))XXPb=(Z_Z5WmXo0xaa|V`#FV5_Tu64k z-IcZ?#@rl*pdMXX4kZf|wBA}(!wQ-byrs7q!)O4+Kh=v@P;u&0bA-&4leIa(b?UU4 zsnE~27~4jR6dWGG`O}4M4a{lz8b>0R1_a#XBOF?GIHYi+?d7f?-HUZ-Ad*w!lE z7klB4FxGDop}#{D|KH}QpK$Umcj55M>Jf~E=`ISZ1 zLZd{3f&&Hd|4@q*ekwm%gQQr*XXOK1;-#+y3gXsM zH>2GzBiaYL$|qr!pvftU5?-t@u?1D0Mz0*s1`Psm5xA6G!XS%p?>Kz%R`F5!MaiF$ z1WXkH+lPf8WUx$h5d$qC(`G*eRKJJnrtsi|pX5UAlD2>A5%>M0KZ0Wv&5fEwnS5A3 zfPg_rJhf$;1v##5QSkVt8D#P?`R;#q|LW`ie%<_*^p5jugtC5rVde7EnNjRK&AbFl-Mp5PWJ(wAp6tRbkY~M*A``A= z+uPLHc*EgS$~hNry0k;t@hXE4rc!;&T0i8QUt=HFGCmTgBtw_dmYH7^(spCD9!S$HEf~l#CX#m9xKNdFdJ`;?PAx%C1X`(-N}!aS7TpU&GV$TcJ9qZh#$LsZ@eo& zBPKF3dLHLOWh8$n(&6fQ_$OsDVfPV57UD>niHxRQXtz!9Tx+oyeX)y*@{2Fa>29J= zQ7Y{bj_!V5r3`cnyoB`~NM|ZK*G9_F5l1!#Q`Ops3PgS0ypBKtZ<@2OPoMlu z`i{DmQ&haTS^k*+=@{yJzU{9y3bQYZzCua5%h%3Unu*1}1IJHv4z)#}HH2FS z<>p^v-jVzK>2~jzqq0q_rQ(aOO5(F|ym~XzB$eGZX(s28BTvz7+-SB_63UrB>h@Wl zTgPu-J}|>TRDYXzezMM=rY4MT_!h(Kb?6q^0Jv22ux}yV<*E6trXXifX1I+Y#2YFF z!Sj?lh_a^j8+M$0fpR#FmJ8Aa?LBLg`Lw zGsuoLwTof^qOsj$YzJcA)pifI!i!ACBfLhDz~ERzOg0zME+XRG`uevM=Dq)M^Wa-Q zweS1<^~L^@eEx5~1R%i^WZOd!0aCPsvUZ6UIrV3@QkMiz&P8k5Pin%v-877$gPFr3 zB`>s+`(&+aw$HS}&h@fYUHDK^^3>V95_;b&zE`HzRMyvo_vG8$(|>=CYW42>o=B zeDY;KYqa~N)0w!GMuYPa-Q#$h<=|1WQfI3oS+)^Yz6GDz9-{F>{+hinC0EtNRDI&w zQW+wkz=_|3w{`{l=j-B;pUB+h*KEyY%I+`wV0E#((eVpX;6bzSaYY#i*-siDPkobN zWRfE&ECxwLpGU9RDU(V6MX~|O1X^+6`yg)m0RFBibtM8r#U}*! zG&g?Q4Mx2KDN^0?u$qJ}K~r7g`^)dy8VIy62_VS_4Z1OWXUpM^Y)86+qDPaIOPk_& z8mF(xoAXauA9d1I!(hLQOXY!}nuiY;Lm`t;Na7sJ-Yy-{keG{~v`6P>DXa~R z4E9q}KdZke6dF3&{|%F(gmcyUmt-2V8!GndL)*0=Wo#F_f~x%ZSg;=bRZ9=zimV}+&fjmSuuSik)Y2vwBzsdsH%Z5Vk4GuIABim>anknBk-vW?2u7?+Fuw7w?R6>-TnYH@a&%N}IXUy^l z=}Opbm`H3RC; zFhiVZ0_l68qyKV*NRb#N{NuEebYMAPTQ1@+-b0!FiH9e!Pu1Pm@d9LI1slAd+jBYuS zmYJ6C4wmt_J zb+*KE>Dd>$X50&7IXRb^R3J$)pQv#Y=TzeN9pGYfRvZ`z?({qa*&OnsS&({jW`Vk~ z+?3dRoM4Gz8alKC$w_MJWgX`nj^plC=lRgJCb?0dl=7Dq2g&xo^wPptj{bOQM=5&p z4}M|ysIH)e#)lbR4r+9liFJpwj){B-CU(TYlp3}(ib&^wve7?pI`f_J>xbj;pLu6V zWy@d(i^%NWyXmz{*tm-v79ZN@W!}`84-v8(0(wJ|yGkG_t4pn_A@4&7Lv(rQjJA;b zWc>jb2dUG=3k+-JhU7>G0 zxUdMDF&GQL@C--KMz8b&MU;Isi~G7Q>t3%X(buc(46Ksu6vCrZIBm;Ap!RP3gm^sj zsB57$`B1m8@5KF=efu9`SUx{E^d7RA*6Z}9nERo6S)Ev_Qc{N(q|P?>-f?|dx~y-a z({2#NL=g1A>|X&WvaBHFk-%SN>OP1akrR-rPqWCQugV$O zFuf*He~{Fn+G2HZ&GnQJru7wY8f7J%u_-ZHbfKuH#*s^hq?}>q&006z=TfvHer}`T z3Xq*R!(m^%-wEI`F6g0C%7`TrcAJtrMYO0q=f3iT5 ze|h)Cz3p}859<6Gd#EK~W6cMgKB`&2x1{OH^hcf(r79s)%VHXRZAx!dea==lCN23} z>*2Gr$dw}?t?RpTA0O&@aXr9IkWKUGD_ltBxYO9u(_w;8SE6^k7#+;4q-7P`n}uy!$;ZJq^&r<&XQ{_b??p})$ipF;@H-BPvQWFWvt1|f(fazpxXp-B} zt5CU0Vk&F^T30d)Jp@yYTjssIF7xElfuTo)vw$~tSTcKksG`xL@1`Ad#izkoE0J=( z8rpS~P{7szLif1wK08-{Y-bEr@KRZ3DvWWyRm_%4=Ux%oiqnhCa_*uG zUBWQ1FZN+M-^sf-jJq62Pbkgl2@c0_v3@CUY@#)t87d>FZt7y;BLp?&y?XsRiEcR0 zTOOXp=Wb#Yqt(^T1p-%oqm&h0Its7$2e8kUJs>oScr3>7x82Bo#}a^He`szFO7z$H zJ5a(|(&3{r+NUwMJ_xZsa)fLn1TEK-7=Zx%kt)sdX%7T*6n z4|k-C<&F}PLZqa!&Eb^g;r5T??rWr8CSq{~9ScB9tEc?Q1l9^sw3F%=_Z z=e3S%S~;>8^Cnw#KHF*uC3rv^dMn9WIq3rAGpb89BSYf78EF;qtW)8}7sV1NI zZG#<1A(oEJ)${Z<2yY%z!XN3HQ0F%r8=t$THC}H=H#)N#XVhUqarM^=8PZ7v0?Lv? zWYQ7xe$S`x%C!EbhAAD>`ncw?4Nroh$YU>nLeZT@Bilt6*Sb_G=M?@5QSv z#`6n{O^&}(;$rY0CPFlsIB$N8x0<^Wk-;*!zsut|-tvo^sHvN2sKN`my)VZf_?bH_ zJRrMm*ZbD%X)A?UlA0AkORtF5Qr|h0?rN}~B60r^!Df4b5AqflU4lTpC4chX#>1M9H~2y(HIuydZwAQ96Tb;i0&H8 zW6hpx+HCIYf@ZN|37_79{!kvTNw!+H&-KdMU=%7GDK=AI$rxg(Qn?pk1E&``2(QyAcyl5((C1ld1=k>!! z%-Ys%z%h|>*4jc{YPH6jkJ6aG`Q*6D5tI+KM&u!U;rY^z1{=rVA&usnu^l2v&0f&# z@;-H3hLs=n0Y7n)R`l%{8G(0+rDljTs`m#%xi0VCpWKm7&XnHcgO_0Z24qyyZ+TLu zo4LdSmhB}eK1%JfA&7$u_9>v6=xvC&2j6AUs~J(>e(r**S##NFPWg5oO6|#vjQT>YjECt$8C@S8WH|fz(0&L?j*CUj zu_Lmh>xmn`>*yOdWBYpgc=;YXSMe7 zTW?o>$+c;vTc?LlkhMo!Rt3`Vr+vinb9<=Br(VAsJv+p|CRQB03;CbQdwFf|tDq=9 zMF`>v{GOQ?cC*TkdWM3mzsb_~FowUS3NRxMVR-$rpa*6$W(Q9e2iEnTdZoAG{+KCZ z{`G71o>Dqdan@CeG2SY7>(R+fmVlUQZZQE>tDGDqG(Y9zMKV>_BV+zuQ97A#Gl0QP zE$EoP-aJ3Gtl~x%hd43U;*~b^t~Z{jKlZ?ZphUmM>Ni{7GNI`j=@fxqtT&qdqrED* zYq=q23`X$Khfh!bZ6N74V1yiA30v7yfCFh5F*ILWHU8lAe!m*n=-TvAg^nG_M@?Bk zw8HKY!@K1;?FOg1vThC>Q+`1V9n1mb0r&1k*=qfUoD!uD3Jzqg3w#i3AC7KzJK)d?03wxMX-;h@dh@wJ&wv{1#cjayx+8O#+UN!LV^ zVcHSF5@sA{-np@%%zZdr4gv@|MI{wIio-@Yzr@hB1!PG?1lu~AR64vA959k`6j9#` z5?G?Rc+vMcA~! ziL3mgleOG+KQDU`3Vzq<9^75@rJ9U{;c51b=qcb0wTho8y=-!lq&;GzFK3b?Y7R>2 zCK=mL2yv^=F)X@MddQvpIx4&hV{qc>7WKq5NOa=liZby^)5iKLDaurz7Gl5t;9cOm z(c(xnREbtjBQ8Ba{sDPIPg?6y#p4?momMW+$@sbI(F1nI>#vBKTPz-yj3XAjXWU`S zZBhKHtnb?&z}C*;y|~_uTo!I$6|wd5VOUC>UY~(p`c3)&_|LyaSnU?HeK-3v*7@TB zg?;zsuD-PkC{bJAXtW(AQaRi%5fa~k<+Z*YnP|-7fo{Aqly4*1#Anc&xMz@`EfcJx z>sv+Y{6K9-BCWpL2K7hV<|45{x?#CBk4R>-0}1roVCTgueME%EC=sdW6mYu&=kia< z4?sP@7Og!mZWBIni7|*!i8}<@`EN5Yn1ABmf2Fwk--|PTw{9W~NzvnzpzQ4#eCA3Q zQX1>OX1N173jJt5&9X}!PhZeDkR2H2=;(Z|bgv4(c>bXz$gJFGu**>%r3MP0A$oyk zZw-%AdFdI#1(Wf1r)9=R1)eb_vyd;nmAI$*_GXfIvqmbJxS>&4Pze{_y(@-0)8YnQ z5))rbk9HH@U}y7||L1 ztWUFI#Z8C0!+2<_TSLC=0=?f%#9s@uD9cS?)3!N?`it;23(eUaBJ}-gzqA6fyKl=s zX^kTG5abF;m5j}$!$AEw$5)^M2yu4?b|?3Ku4atc$>AhN>uNew=xAiu?3(0jXfbci zOj+w>NKX}>YdJpZ6lUMr?O4-e`xncTjr#l!lCJ6aXr~=W z#Sm4a#fy;z!M6*Vq?>Q;qEcIA#3oC){4$*{bF)LAFFM>YHykuQ@4;LikJTAd?O<0) zkWXq!zMy_1sFWkIT5!CCA%OcxvZlv&UrpB>ZB%G=iW8%Pm)!C~*0Gw5aG2A4?D71^ zHG5q&yO)V41TF;m>n|nN8az-FKeXX5%f)x$k+>F<=Q-1TY-8;2`TQ&zaHhj48HyvK zu^}%+i}PwFm6|M9C1zi9c0KgWxLOr?JO6G9!Vq=x&QFx`zrfi;MuDL%b?}f{4t+mT z_>NSs$}RE01e5InqB`JsVq{Q7a;JIRepbRsY$mcsD?AFV8E37{j_71FLCvu#hwE5D&K5M!5;KJ_7WCj%tU8Mf+vV=;|aBJTXysHR}JNUKA z#BM|G&43e^@>`~B?%XH06AUqF&ooub%9sObpT54>aV|SXVb!!#{YmeSlJPfbKqqw; zP-Hl&0`3<_;w_SVXusjRcN9DS7qS*Ueht{(hzh<}rW&> zo~N6CadOqs7drfK&gO7ol002tAxYE4FP+pgqVtac-?+i_FrIb$l#{evC|C0dL&fBp z{RR~IG)pFW!c*GihpF>pF|XhU*QEm9O%qu%6_{!2xX!XFzrU-Tf9L|AEZcU(tcrrs zD^+U^%Qm(@-1%Q9sN zcYm*KJ=1ZCwhLGNY3{l}&Y23*X!ev@ zlW_0QuI-@NWYv%EqIZm~<8`EsEecP2UrE^5gVrej;>}eE%WJ4czJwGL%X66>T<8_ab0rg8 zr(w{!O_npAlvi6e6_2K$+&eu_!bT)Tl*K$-Jvesp@KN86^8;FUW)fs0WDsS|$Lq~q zIebw)p0y2^(cZr5>r;NSBTP-o3Cke{+mwFsfP&y1*P2l?0C0_lpRtzlla_AVe+6)F zY{-oon_O$_-Z+Q3^v7=eW)A+#1QL5f7T?BOTxV^+f3on}bf!!O3HE|Ogp$q2&dLM$ ziz5ko3giJsjEObIxzCQToievgE1wFpdk7I>I`m-|ZUz%NvT!Fv;O(T*W1ex40Hw&3 zI{kD!CIu0?12O8jhjmZp@=OtY`|k2EB2;XuJXxk;wjyid(QX@ppYow&V~E!V6o|z` zTgv;#0b`oyW7r>^uzoOg|I_f=-!6L2y+(Zjr;i~ZVB8o+aD@`+vN7G)0dWu){Nh&H z9_Yf%dEmM6_gl_4w|(Ej?`At#&0l!SLK~^Dp<4*UGt=<#tEhHRtl~TEhM;V>coZ{< zRzsq0Y=2{bSw%eWEp023*hrV^K`DijB|Wm9GQ3#nG-UMj;fqckw}L1UEdxg`JpXcj zOIBN={`vDLnTIlm;@{(CEYDNdd7xzb6kS{KzJAFK^9UtWis<$8M*O;p2j))mAu8^E zNO68QHgHr@DOd>WRj%W`5oF4kk{NuwH#U=8Mw2BQJG8Aqo-(a=b4dwn)VXQ$I(!}! zC%I8QG7C&iOq-jjx&_@bp;$-dj}$#0>B>#Tz&?*vXije4{bm(jg8XLHu`)WwD;m*AV}jqdt_=hYkY>o&i1 zx3bFFD_oBy37Sy8ym$~LE}neOiJ{FaQw1JW8m?G>M8PjSq{RYn%AoDJ5l!$L4>sous6|S>pwz$X&46v!ot>4Q+pgt^dpX z!QVzDH>_N&{m?))EKD|Ikfub1IW*Ob;qHHEo2v#qLDP_fcgCny9!n^=0p64nE?=6| zXNj}TO5Bd6D)0f>7V3XSt^Oa%fItKn(PDVZaZ455Yw9mAJDcTRyq|ZPkqrpDi#_kHt-p? z@B#34FxBT(!7a@VR|(cT5V#uNtbq9q+;ZlJpATOkcD16Xa6?2Qs2O@hV^kIYF*@ue zdSKn;kM`s^N>?fNxPvpqtyvb`KmhkQ!xm_inEWy`)6{Q6#<=d_$ zP9bb1Q^cdl-aaB&|o0(W@46qD8q+l*!iJC)FN*^>(3DFg1 z&K3-0=b;LEM|=Cw{x2e=AGyA0qYHAvRJ3Ep~9s#0JiIyB3>o} z%3byn(A>_x9K_3-e!cVr*$Hilyd!t{=`1|y3n_P~dp!>|(&7Qmc5wNX#RgCJS;S;&9+(9g%5ki-*S z#Bk%nc~YX5oWFBCF+zDi@C^R_bNeS2gk%EAcn3p=RU91?9C#~BK%N=?B*JF%CH$zd z?yyOgl)ycYre*9iJmYd=Zef;I(Q_eR?{35pOqGpvEnZ>xvhJ8^_Mg`@^@!L1=SBS| zCjKw%B-0M$`3MHKA-!0X!P=BNLkeod?g4P}HOZGhzskRGJpOmyyHA&1oa+E3PdiS08{V0ai72bi2&c3z* zrD3R`*o)y2o#)|QHN$wzZN6ECrf{AiAFGrF`+cgX{kZ$8l#=%w8GNLqc*fwp)pItB)=q{SdRVma=uxpH?ew-)OwDL_l-;ti5RZI=TZuYY6`U3EW%~s5pc6{bn`faiQsrG)%0nr# z@%7bp+u7PV8V{xCbr;fI!xN)7u&+*TkjvR-p2x4~zQkw3hOm;xQ9I>oIp~?Fm?-3Ac*Ohz6{-jS%}f zgJ3fwDKfVQnL+`?EGPG9#;pA44f)yY5|_uUw+QL5jl~@Z-Zs_LK7f|$u3{>$Iwr3F zgD88Zy-`5D^-0pX?YgyxqER{-6R#<(Ih&KaBA(8GY!IWAKgnwY%=*U%$;M*`=Lf|t z`*^Bb50b#PPUKNf+B=Z?e7GU2OxIP+@a<*2-m1Zm z9EMZu4$7bJT05O7F^zdzXOp<9`a-F5=zYKWh6kTtKhNNMW47q!>(}vagO)R&UMAA% zBo|68osZL@dWGW37}LeZChpm&G0pSbT~{76M>&0M7Nt?tVQkwr-=ehry;*H?x7@vx z*MPhVSy`#$vdcv`VCk19IePPTb|3;)sHgb*gNv2$gy44r91UQE zAI7$xpcix%L1gVJ&iROM&hlH9`Nn(-+XS&ueyJa{~hGxY{UHc@cj4u;|Qia~AT z0o&REq}tOMu}AIa6v8*TxBjF;Qv-uTI|X^^yZg5;^lRV$EFMtw6bRTp`Q=rnx>Sb9 zbR8&Hy zefMLH$;HD>1$xpiTwATj&CVo`(VV0ko+3s8zkYNsjXny5lFo-uw>4WzF0X(~F3se@ z>D19U@G6wP)bj=c|J)#p{n1+~zsUX%u^nleC5E)pmTaM$8cL@F$$G#TV;i<( za%Cc!HR8nhqSze*Ww&KVIq+-Qpma+c4h}6Ky!PSWg7&+?H=2MAAvM%5VgWl&hUtZ- zrU2_AqQM4PizOHBGyI>L7)fU<^zvh>yveton_%^Oi z8=T6(+^frV2;|6#^qLUj)8~^Scoce7XeQny&yee0&Ac%i;8a>`Nt>wec50MQ%5wV> zeD1}rESr`MZA*gi^r^|hX+8Yd=7m?lJcGdlQ4 zZ;=g~rM=k`nLW?g#z4qTb1X0IXal>3YOWw|z`{*$u1wX|k!|~CCa|hP(O<19y&cG` z!5us>FZWz^m3Mzro!@z#bwMZqWO435X!Qj|IG7ukqzt2~l1eSoY;aXxNwe%agO*$- zWZd2BEl zt61xk&<&8>f-P8%89gtYqSdSBgas9%liS2J9g>hl?@S!yB>R!$ATOU%F&iLC%=q0s=a46Z| zZ`v*^IfWq)vUYjdXnOM1h65YOOBjN!wW1|Qh%AY6zzwKkxT> zpL5>lyw2+|m52U@9sXMYOCKf^N~P)6G*_mC(h|52&l-T>bt?2kR?Q$nm(W70Ly_;& z0vII_wUMoEQLR*}6YDH{{Fk9*i#l8vP*x-#whIh}k*bk>S@1o0J^<(w-O!1KAK%(@ z4;%^Epnu$BNM9b4;f5xRdJOdGHG%Iw>NTMVOm7!O0OlS44=b4}^=7+vn67j)w{f zsp#6Z6cs9n40UCJy_tzF?&?Ag&o+M4<43Q9Iar7Ck?SBp2dlMf5HS zq}gYWAz46wUZt<5@8c=~#qjk4VuogR%b(nF0f1?IHIy%F1w>-hS~+}t*llekIf@Kr zx>HwlW~D9%!>2PJoI2Hfu9=t~^%1m>(8XT?dvDZuwAivH{-7c-E&i7XWIu0Fz)Ec*~YQ{i{f-D6-(z97w66uP*9DY;e}MAtQJ|=qUGHfb&7uV zhD;y^$-TRJsaV^{6LUgO#ou;j{$YorBQ}00Ua+3%5L0l3d+Sig1?Dxvn!i2oi8pv@{lSs%1S}vFvGd=I5Zj$qNr5;?{{EF*y)O zUSYPn|9a_h-3yDVgCS0HzZ#Giu(Q*GF5(L69=HfjKpN=fNCYUnTUhL?^<;TjL$WWO z`%SGe`njj-ahi45MPb%G;Pxo+b_cY26K+mpY(O$EUq98c`|xHw^=;?@I}@XT?KQzt zd;;%xT+cwwy1%Dg=FqmOr#v3)k|~f(X?6cRswLxBO-)wV^NyOY)5;Ozy?_d;(T`J> zdCVctxDNKpdAFNtqSu!pcb?{_BDn(|Ug!-|m2%(hRzBnLZt(K#m|n^5*4@2F+>FcL z`)*Y|h+ji<$=!ewcDyCGJmj>rL{$K~B#Fv-usCRHQZUn9Hbs&@bgz59?7(buy{2m- zyC>|PkT+qsj1l6#a>+qn=cAL(YG*a?w+@*|x}PC@1*a`b6uC1w_VIb;H9=wc+*lVK z7tf;7_veo+ieGr6OK*3O;Id5zCKsRIJz4Gw9NGm6LD9Xd_h>|hgr6>bD0edZ;(6|g zAbGs1>sEI z-ilYmHN(?7^2a*B4DbzT{w9J;86?=cJ%L2qg|`wGaQA6U z9C_c*qf5_67gd2UZzD*vo?P13Cma5Lf{2sEwPrOhb1P;gLbQAuoDzOd{GU`WR9X%1W+a)47Gif3&# z)UIVG0Z#3A8Rt5%_oXtJu1}!0YKXJ950Vkh~$F0JbH<|PrIWWQIEA@wsi-ckMD2!6`VVTqT6{KCQ?NpUeuqG3z5r?8nhCv~+ruKZE?ZBSCi{RAa5Va(hcfy)ps`HR4T>O8rr!e!=l2w$J?3W6%!-Az z#*;uqQ1}EDRq}%QbFS1~g-};wxX_n935wa`r?zVB$G*FfNs~m^s=Uyi-!jhl$2Um7 zI-kn-O3WAqli&A7ofZ_RO_OLzwDxBMg2&Fxw^c9aDy;ym|1LiJ@&x+;ZPgl0qK>&*Ol~Z$2fc&{NG#ic)9aF`{AL_&@GCgI8iyu&2Gy7`FDR%3 zK&dDwv-KpPv!QBp1p$e53U1N2k8!T>U3r?+=q0bBfv55+hNE zq=r_9bF`9=eBe$F?_8n^)+4c*48Qn157H;a} zzlU*Vw-|eNNNAkvfO8aw>K1zj4s5oduicVXRJw-&Q@+(BG>VPZ8Y{M%B^Sg)XaI~b zPh&QylFxvc0g=QW6!i)n|Fi)Q_)BMXSf$!M_}Ze5%M|hN2*dn|xcnfa1kPY{R+^!< zt0k=U~}JgB~|Q!z}rb&PLr0?&%RH)$%(tY|wQWmjq++%9a~^FE`!baRUEcOH5i? zv)WEDD2ppNN?$DP@ZOtRok_vHbNi4Vqk2E-ysl81M&exqP0N(xpWEL?3%Gio&)#39 z7Q>NRJ^yfbJVP+TwokRA2YrUz_WDWXm8FiRd-oYzdf)77j=*Qf*N`r+$6Qr-dqmm9 zTJW87uBzDm8bi9aHa8_nU~S^sh=UQhUWG1R1<~vmnzv#ON_rm;TD3o_y|^kNGM=Pe zfxkAifhPDzPZia8O#(+hA2@x(Afize3*80;cN#@3R}lF)8`z99i4ZRyyLZ3|mInps zIA4W8rLP7Nl8E=XPU*beT>p~T(m${b2w?X50VznAH0&(u_(6}k#18BNTOuP3qct#9 z|4RL51!wNBKslx~gWQoDK{GyI&W)sRA={WmXdVNJr?IwfmmXhZJk!`T+xLi_oRW3N~*J-Od5E(H=4 z3^=FmK2?65G$*g&#Z_Dk@pi3dsl>$;*82}h8$4*&j~@_Ni>_AR9$DHLPbWCN z=UA~QH(>KaY`R!4$!BX%3~nk};KBz=U`}q-lUH{RXWQl;v*>C@2Vz&hxjSE>GjNCg z3XL0-8-oaGWqN5Ek>B`?%Un-Q?=<`UK97zPw417%WKU7WCQ%}NKFo}@7%(MO`bcdC=uF?xUt@Oe1p4lqhH~gv4xqaHGZ9_5pbx+JWVAqpEw28&PEAxw4$F`=L8-Jv$^Q#xz{s89~`XRot2|y&{ z%!c`j_moy2CndWEwPIE70*$HFhq-pM+5dB?5?2}|max~#Y}R8})7p;Se5bes59$T_ zEQ~)zPQGIQzJO?GbzkR{EJshFx`i=-keHK?z;E~lF~s9XDJ^zHb=|MI;4n- zWXkm3bTl3St$Tk;nCa@~i`i$m7T+*l_AGtH&aI}z8w%E;y0pS{)kg=`+1ostxfSPo zb{CJ6D2|_*lfLezZri#8x*HNS8};_nv*_*6Lw(+3Yq2wHm!7y?R`KXz)3W9clVFo# z6En@04y3BnmV)r;N~yl*Qr=4v+ zqtlFBj-8`)j#e5Vd|JQqpzf3|-pto<_gO#}?M#chx&A^jK_%UO4!PZ)xLzi*Nm}&9 z>EjL>nDUHU{EE#i0H*aIZi|F?x?#{}34+{QV}Y|dPNO(`1Te+;Td-9w0d?~lVa51fp& zb+#*H6v8j1{(yCmkD~_zGHmt`o$ABR1Sj>ZfcX^Bn%xRbth&fh=B3Cjl;Oh77mDF1xK)GEI6MVy`~4No}ldXW=)bW=LoG1qI&pX?6s4K+E?$*}gJ(!i8q82?Pzb z%(u+-fI{c4K-%aE3!1bZD56Bs@QL{ec%jQTg}~^AppLuAJ?qZC;FWC~XO< zV@Dc)iizi%O5sg4Nbwi(KTvr(=WX|c7Ah{nF$yD);oF_{yj*QX;jQa^pbs)yhm5)C z52f;j6ln))RQo&}L^v5_!qaG{AIIZUeU^If$e60o=xGh9G3%2ZoO7e2B;B_@axyWIV>`*F_4{MV3V1HvMod&y%j64p|b zSM(34hY42iwjQuzB1u?J-A#Qn7JG1eMN2-$--&8u9(==`QItsxHs%VrprjF;T$i*V zndePt%u`2HA^=@FE?c!oQgBDHDPDqPi`rJ&#YNdT6ezaB0B(sNqy|cdTD0o`Ukk6n zydp7(;0Jx!7gQhtjHy8tO$!BG*5~Abre^?@stVxL><;czVx8Fd*@4*_uq5cxzBL*( z0N^}ty&%dy1e7dwpN)}%w*ZgG4K#S4b(#yHuDTcEnOdNOySovZy)CbUV?|;w8r!5~#ymtYi3|B2WptQJC~ycll|QL73^X@mF>VpG12@8rRlW&#^G@rbl$2~*Q1jl$7TL#EVWZGT7skAj)=Y>S9+=M1?m%p?afjK>RZ{bb+S!WtPz$1i>Ju_7pVFM) zb{+vRsw;uu^L0xGW(g*(1xh9EGP(=oU70&YiWM@lRNiVVs|TI`Y+PX`k$sOGP4=}@ z8<_xOfj0vXT@rwR(EQeg+PW@6&37QMi+<`*j2`qLf>%XRV`W1?gM<$y1$InO27u}n z=#Q65jkuIDbgAsvOHGF_W#2V&=&s07chwSGM)RqyI+R|R%GB)))>(T^Y^0agMxRC#{c-j=Fl&blwXrb8~7n9?tE`$Gb&z07c4>MBGVt7f`` z58u&!^XIOt>SDV|oQLlnx{+E`tg^KY^ug1iO{!6!(yN1;Nz&=G&nTa{=z`X+M`zcb zaw~LMx&Kj{s_F6cfjd_9E{|bR*f0+oF}%_u#uEIrj;8k}G>dK54~msarc4yT;;F?F z+mPE_p7HK#!TTpI%{xMl^Du3%S|zpO(p}!S3(+FgP}EX3OyBxY@3xGQD-!hliq8*T5F|~d7dHTw zEQ7=}>feJjQ>q1S1biL15nzh~N$?QMoDU`sU5hF}H<1PrD9{JJe2ZcN!*#^S*4Qs` z{VM~D$3-^JRcodm)9L1AbhRqBt>H?3I0>@6e`+88wTA9GF9Y>v+bI+@CN} z*(M&Gs&LhFOceQa6D$vR+n1Pn+um}?k3^s7YxTg7SUMAp-*0C`h-5 z`O#(8%BIPS%CakOckfzdD^l8HE!wm?d$rc3p zcklH+*OB(WN=K(uPsxu~6f501r`C^;qinTD&Q;#hL~P&nW8~L0EwypRCmBgi6nP=a z&K*s1k+&83DxcexTVljbMlEt5%Ui<-?3F!52}>W5jH&yN@(9%(87>oFB4X5zsmT2KOW~)wLFclLzo4qPvo^{^@g0Bq* zr7*{O%0B$dM|CW8EwNWK^@*3K#hYT2Jm(KJL8!%`NMITMC{S1dz?^;5SeT-uOo@T8 zF~T48huRK>G)DDwj8KWW0X2A6OXFV5EMKWOe#-Q2+`SBhO0!9g#Uwai_5(KFE0%0| zryU2XJ4bojx`x5u=a2s-+wfNo0?8D4mo>6v_)(V0+Y6K)LJ*^fBL?LhE#(ehDTA_x zPAP-`3INEGZ|i8%W741aQkt?Xh2b(OF?yckq&H@5x@%p#0`gO&tD<^Ul<(>`mk4k^ zdMb`Rxh&?CZTI`4$Kz!?2O`r@-HHU3J*bL$pn|dWfw;x+Ap>F-Fh#or&-XbVlJ)SF5;?Coc#Yy>qG~KCwK1NZK4ays{Hu5iOki!W zqQGBFLo2jbQKe>EJS(WC@!74NJ!RW>d&N$*C+o3KyD-Rc!Y#2Q_(h9M)J)L^Xug#XY@S>(j3ESE3!`3t*^)`Zg-@*=q_E( zK&RBqPB6=nCTD2V#HNv5H=j1te?gg4XR5PpMff0M=N&*dkCmzQ+(GfZ^sMh@kt~6V zXHJH6S>iU&*X>eK7f)8p4ONZoltQn;1&7g>!&5-`kh1}O<>irlg=41qa>{4kt+DBf z6DAyj^(mYyY(ze2?K>@WNWIYnmY}0+^zB9JF9o=G#|KTUmA=V<6=caX93tPlYP}wXTj=LYRDNBN5hnm(eL3R;XmTghS&Hq7^$C#07X$ z3H>s_rY~vhVP>%EutDuY5{#SDTkQ4B#e&BHz8xNq#Oq&y)%n)#y}F;UmgXLaS3f|6 zx5+luDXpe1E9tlBIgzLRpMt= z%{S_$T*kw9Jd5ZG6gB(>4(mhEO zGt*{8-(K{p4{vSB$ZZoRKwVxY>BKWhmD8kT4+S*Sbi~MI&3fhP+iZ~Sec^Y|v#X49 z&ih@`>2^Gt%T@0;;5jGtY^mid*!8`6H4;Bdwy=Wfy%h;yT>G~~ab z>}b>U2-qvRlX?T3(wTzp<;6zY`oEH$8kVSAtY7{YX>i`Hctd%f-S-!&IAyCtRM!!diyn0~s)6BCE8vK+p zHk?B>VR+N5`kWUM3)gZ^4OHvaSMO8wsnvEVP0^q6{6bxKXM}bxzUodVp3%hLE3}xm z?8rmE;#T5~x>IlJo<(_KTk|3Ppn%dR4(wFmEDdhmO;QO?OC`P0+XQ7-xp^7iociLO zs-@DD7jbALED`$DNGcpK(T6xesN4Jl-T{3I*2nNQ*s7_62%|>rs!X&8F0sbfbe@|f zxt%BNketCtYSyXCw19|tIlAt_L@->neY$3c%bQl)S!wqj~IgPQ!9 zn6w$fsdXm{(rOPk^q*@fgJ00)X-+JS;KmLdhLFTPkzct)$DejYB!QosS;J zJ-`@8X5eQb>KD!;qHfwGY`wMo+=K`r)+0x=3FbWAr@E%!PSIDD+Cb7MqM$FHRW}Z9 zo2yr{ck8~?(`6ScUqrr55D!^@;K{DJ5uRBZviA5Qf|}YI%0VpVc5R>gS*p*80E6aG z)_Yir?GA(v!`z_JD7Rz(O_bZWZe#KOl=`|EccGSi^ypoz1hN^|#ZyTA$T-kG^ysSx zFD0GraQcR*$Fz3 zpY%y5xmv$u_WSi;;qYs}dGWaDc7^%rXy;nms_msyP?SK3eY6>`pJ3#{G(`|)s zDvtYHIYE()Klb9TXe%;P-B1GM;gBTkys~Ju>Iv`8z-3jIr53#oDXG~RLMhR-voCku zog3A5+(at(Wzv0S&4>&;=0{}MfAt0#-vpug){TMcPX+eP5)^*)YOq91h^Y=ny-x`# zhRrG|^>|Jj@P{HLa0uAy))Dk^XCy!Q3p;~d_4FAG_b)7G`B$K?zC(1_HB3REaOfe_ zT(6H6uU83lhK13amBhgL(W92c;Hm^gXwUSbVZJl_Xuf4y*G4-=L%*S9!NE}lXx~U% zsCP+Q*Q%~s<-$I+crK`lrboV2>(vk(t%Zkw`}vhEY^VBTArx?`$1j9pI|-xDcif0^ z3!(lMu%2&~9O3@dPm<#|T5_;#$#JhGGPrd9#ga4Of~fWn1Zw{)YA(N3c7VYGvg7nc z>qvaoIw&3+;gkUQK?$&C%e7CVokjSS7N6rkHqzn@+aInR>=NMkfq;BlH3k$_GqPXN zcK5P0-uB?BZb@O?vlDsK$L`x9z4Ma_48Dv75CW)ZlI7uz{)+%Vr6*%R1%v;9?&9q; zY+v{N@wxw0`2C~k3>mDCYG;J#h|q*ng1%LB0Nm<&2jPz-M?9T-<2ZKi=U00_J`V~p zNuUr@0u*ABM%H0Y{?FE7exKSI;p}{oogZSd2%nrCz9nqZsj({Sr@%8u4`V{!4=l0! zPsI?2-JK(#*x(8vPV%s&;XTA|3D8clrqb*IKvUWk-7ac2h>rI$0egN%S zWGCS^%!@Yq%fEuVGi1EKj= zHCdpr0TB}&y1{DEnPrkBPBx{Dc)v|)$2^*R?E(F1vBxj&@Q%Id!?Ng|f5teUHgi9% zyaP@4Du;-PUGRh)fE+Dx*#wACrF@u-YQVF;oW$G-km@5Z$OEwEU+eFOZSJI=JN;b5m%x#U%otiMg81Us?&t-Tk=#= z8_%vkOpR1Zic(aN^Uf{Z!g?N)h*Wu+Ur&yn9e8Qh>j>h?<+IK;cqCGG9zC@G*{bBU zSMLiz1rMndgmd-+AQ9mPMB#&D8Pi(L0ZzD*PGxcLCsDhBCdP#)z3E#^Mbb{Q>|y5( zW{d&(LBuST64GJ%U3*ui91Nsq^SwA0^UfgRazLBeQ^#G3DX=i44?s}6Dq(mhPzihb z;>whQ#A-o;mJkW$1)T=1oE8JEzJy-cE*+Bb0!lG!BlRw=gh=lQG&iMK23Ju%K(EI2 zb%=2n!BqtlnMof{h4f*&&nCr!mX$3@_7RluD0pR*bjf#kjEA1F7>V3E> z8Wd&-U}#8b0FGC$hY61W9`EGVafW20k zqI+jjFRC&Y-;)e**c>3eU1!uE_S9aW%CQ+8cN*Q~TncjnkXmYfhxXxq>6eVWQEw9P z!v-u!UlD(D!K-X}-RfOXeKn>F-+yvx(V=FO{q8S|PrbY|dWm>q{#+Xr$a1GqlPw{_UG@`~~A{8&@r~z*F1$uQex$ zPoGp?RVVym;B=trL!}q`NyTJar=$hgpf+F0*co2kDp63fIv~YXq7rD+fFa=3RROr? z|5IMlWYm=em1EVYB5$4QtFPRHpIc@dr3zwT#ayjE^X8bZ=J`t?dDmVL^LNQUR8)#DG(7ikSc?-+%2S6mhPb^*3 z9pL@9V7ZtJ(LGCyNmNi;6shvm^$5f6UOK2q^rWc(*TCf-C@YyJG0CpCXhYx~C1UOMFS=6br2tEvY{RxxZ;Y+LyFbfd5 zH22SJ7po5H0iY-D)wKewsdQ@=9i$5K+vk@lCTe^@()Qq|5Sld#30w} zr`?}1%uO&h-K?~dOrkT8^m-6z43wn`eImYA`bd;6{wi`G`O>E-(a10V^N3vb(~T^b z?_Rll{nZ||wj<@8>u-;EtJWkgK!cr%2cUH5FJaREOX<>YlM!ihes&3}FC8dKwXn`r zku{pVknez!BiyG`j8(DL52zIRc(&0_LLXp|c zCuCcW4zw!0#K#_eeoD%LP+s7cZ`|tGHu0VLMD1C39|cDQmAh=k-Vw4`v=F;!?b>%~ zy^9`i|CGlO52c9?Q4<2prsH2?Cj2j@Yrj==OX+RH>P_nlum2bIHiEKJ=@2VW>BD(P z9>B7^$iYwm$|CsEHC$hn3}A!enTiQOMNT%N?iI}@8=yO%p$d|4lEF>Rm+%Jlt1Hy} z*FO=kcpka2d-KOM#n0fp6 z)kcZX7CTY9po_!6gP)WyMhRi_`cL^UjY$-5^sCy9qFTVRWD%`hWzN##eMy|5{yHV|A1TDab%IOu`apfL1+uI) zXH*z8*OI?N$9H#)Z%Mf1i;#nIy*hWqxM)2y!X0P$)EUh#QFp0`n?(_nI4>wt-@0p( z@hjk!M=7;_SuCyV%h&tj`&|H*Z3QDjW8|4(m|cV*YfgUPu0Y8p#iY{1TEJl%w5C6ep*?t+^@Cr>D{zGub8 zDaUdv5_vO#O#SoG3gjJF+TqY?k*r!g=wjiwNyj&X8O3!m3@+8BpNsS&S`ZEG`1BJG z(z&?FgxJ_+vlFY`3BC>RMB1JRo7PQXt7KD#dWnq47rE6CK6CglVho%5PjX)B)XT>ktKGxg&37X4UruiX!v zEgr?FTu4dKa8IqjxxSmKN0+{yi_Lxch}=e{>-Y5A-tUp~ypytot2<&B|C3^4&E|Yk zMwwB9f@I$=l6d)hFAIuCdnpQYEV z+Gp=aS4deC=mLaVJ`2;`*oxe%BktTM`rj0RT}rV&e>p8j1ZZ@B|(v;pPs9Bmrp>M zBC^$1D@4+($|p>j-6-v!j`XaKv3(R*&?VvS<0&BC=9Zao*Z5t4!*agRbm@39@ z1&w+g^E#8j11HYi(!P0qM#{ZM_%6%H>{S(KBHi?>n)}e^xuHeLhmZGdZ;jsH0$9ed zP8C~EPmkVn(D}fu&FQ?I9h{tkkwqcF!GWT<PIeE(1Ib<)t!FtT>vTlsadam=99h#c>WDBCT`JAIS8-%t_bc#8! z1QimAT%24xf3Mk$O2Z;^u?;d|YIn`At14OD*AqZ+|?r4>ivL96MiPq7OdBL?^#}xW$Ob@rFyRSJvuCTKRigTN-H^ z(=njUI<8v4UlzDZg2}V;^8e7mnvMHkI3KJE7#yW zwa4IHORrdbj>C-ODKSUn71qCGYLuMaCG%jvU(i*D=Uw^!mU#}_3og5CE4rV-vBT@I z<79JvO;0(0oUcQ9*V0C-#Kuf`dv&3MC`Bi=^XXf&f(k5;&+NAgGG4rcwF=dxvzIk@ z8CJa#IdHXdNpi&TEUWxQ7HxP0O_KPUzM!R~{kZ?$g)cx$a^CuX|jkSl4>#yDtnE9-41U~L$#VrG}*XpuL7k{l2(8(ETr{sd7C`wn#T@ASmiTamQ- z08~1@&8z}8bNDPi`o~WRfpPMf`-dWn_C80g7DI3%4r|W*lmy_|IBnw}B?5-SSX$rS zqUd)bV62dg&U1cl@cStd@DlW{+I+!zY!B97qN5`FG|cXGrurwn&c+r50a+iv*V*sz z`&h}4%{$^X?Umr;&7M!IkBK4W=Yb|ij3>{f_B_TL4&c2EE%v4sd+QaKHk>PN@t=oX zgYf1#1bWJQBX&=K*C4QKc+hhvvc2*IcK1!(;*s4qO+XtQL$|1Tb?0XT*;=6zIAO*T zMBN2fzA0<(PrQGWvhm`D+tu?j`lU$2U7?Lt>bJdaIV9x1k&Ar|ryF9|2B0C*>Mn5c zA$WFkq#=aFyb_UU0%9?I1`+P}ISt(iO|f_Y)L~;qn-PE0S66Pf34muiG1{h+ z4x_qrbq#XR9eI=ciTn`pG#X|BL~2?dM^qZ7rxFy!5Y7TLt0m$TMVr}QIEd(aPhjdH zgcY;^D>y*cGN=GrE3k3$Px`Ky4kd=&1CjeqTD3#$Vs!g}{6x=a>f#+uDQRxVPttNj^5O&%<+kWe$*W2z5Nx|=g*~rlQZ>Q9j@KAO4dc8 z4SOA|mf{W8O9W}ui~JID_UG?0M!Me|109DJ&4TGE)@3O8VAfUJFt`d~_G`-B_sIKU zo6`z=`i1&)j^JYTtUNIT?If_<;GeW(zGviPce$XFga#jUgn|CiN3Auw*3b6!i8ud|w3yfXy{Z@q>tsVG!d3 zXgY%H0~T!_6bwr6@J>Gct|hB`TF%usvm20<&VkNooYz)!zR7xE2H`X=JBr@`1|v*Y z8`Zelfpf(TIH}Hxb-w{#wg|Ny*bnzmU2SCJd@}#88%(HXHm+hS?bc(9=nx))Huq z=)O>#Ar*SVTce=TBTax2wTz7iA>w3E2yqUu)O$nW`|Q!L;33_wqr{=$e#n{$ni%YnQ7mOY9z!#lh8m~=#d|YI%(J+@$FA%L2+*%w=}ZD2 zPLS`I6eLY@_GvRs8AP1Shoke_;V#;I_~Fr4kp!5dnKZ>J+^|m9E~tNY3iqM+YMoS> z^-JFmBwuUtH&IjAs;2!MJa4v)i16k8ufPj&RzS5J6e5#pOzkJ~y3Sb{5?;X~j z$SOzhvYhZtln9XP^g9FU@EU07uVA$MOsL???1Db740I3WF}xRWyQ3<534x#qF}ipz zYv^6jBW|tI&ysF|-XQz75r$?0N!#dPK8QfiHEWcn<+BLtbPQSfo1V%seA^cGh(F&} zW!9+i=KB8Wc(H#vUi`=#j~K57d%T8!GTw2Y$|;blKarAPx2Qfb{Z6#R+SyIP)DVAr z)iA7cVeNW~moXB?D9{axv#Atpi)YV|BL=(+DO7vZTR+ z2bT^B1dzxnNKdG#eg_lG{akch3#1NDfkI^&Kpa4u9?p9F0Id+c6iUZ+&@lyrh>NIJ z4{Tc(5J43AJgo`Ft|4Y(C;<$tPcNay_4}T=^N*i7Fy@(_;-lW>-spF!+wjMu9rMjG zv+x(c$#KQJMnf1k^T7NUh1Rl(Z$#9uPR1#=>f3AhqVr;stp;>W+1qY1Y2+H5Bn-{+ zR8;HVI<`Mpy?@;^IdWTHO1oQL5nWM1oDvupx_#gIRgl}OW`ltJB9xOEIQPuZ-C^xP zb4b^n$3qF2g4bKv+c@M=gXmYw2V zd#)I~Ie{FOB!(aGIR(y#I8dyStLRjb1^R%5v-vwVci>qRc3}s&ue~vq7v?uiA<_kw zkGPiI?IxUNJLcMhQ~{XZEQLfD7A#H|hRIl4rq5|4)SB#()hu=DAhY3Ocg;J}okTbFQRzrKLYEU~UF zazH4WMDGJWUS7cc87|{p#)F>yFxDw#HphaB9Vpt=2XTgn_w0O}--BxhQ@1d*2TrlZ z(XU1&4zV$vP8^te8^T^+$cGcLLOZ{)|A312rrXfOsri%22B2y)DlBkxP_`Ahte zgA8>%d4itFG{=vqM)RKMcPomFc@Lpf+s6U97)pkN}&->x4%TAJ}2t_ zpiSy;=)stE``=|F5t|c)o)WDIS7pGSC!5)#K}aW_3*YfKi^gndjAYzJk1H4<-z6Bo zGu{82V4ypK&WM?DSJvN7DkvXB*c;NcXUMeM3G&DHa;)r`BYl39Tbh7Z#q}8oz&FhlK zyfpjB^q(iP{I(d+HyvOH7^B>cA@Kn220BXni@U*gL;nePV_IrQT*}Kkb~>ue(Bsec zRG}2HZ}Ht~fZ63~Vks~u$A`>Gs$r2|~zmFXJ z9oZPOg}%)XB^!2x&0R|NzVATnzpqi4m1b_RUd)9nqzeL~;Wb_0;|V2y$fkJsQx5rl zG3=i^lT7AvgBmad&?XTo+C7=|^~r%9m9i+sbgwoh^tD;AJ8*6koj%@WBBZOrhR%H_ zdSh=4>?775PpMP6fPI^S;yw<9BZdfH5M>L;GYk+8+3yjK-=U5FO*qC0dnLd*cOB;E zLnP1^Ge1X<4?FQ}DXqM-FXZw#k+Z`#LGV@vU?gf{ZAF;njfhTu+1Ol)fFDm>4#cqZ zaEtcS_rG^y|}Zu(%RFJooT8 zr{Dj42az9WOva0bCc-%>X32_zP#iGt0f$~LVNPj?q(oJjXwDmFHGWt~<2t1!!^tXO z5V0##6YcDyQKxblerJH;3U05Sq5LAV_03C00Tg4? z-G@Hb{`m2pzIfN7`zUf5VK$)|6$p_+(6mOB&TU6E01f!ReyQQfK}1Ybs!5JqU4{De z<;&eKZrN)X3@}!HY1=ipCgPG{KAVEB44A7>LBr8Bwx@cT*}k{BVf>j*3g&v=K{>)v zF460b)!|ge&r5t;44__Vek^ICiAM_dJq<`HT2*b%V$`MT6}Q$l@c3C?I$^xMqbzm=t2nvyra9RpIZ9o` zxq9l<1;*O24*KwG%|PNR7 z04JFi$}@m32_;JhK*Xg`7n1}q>L{{%GpQ#N16)#oZ4}tZ#auv_XLkF*gNU3VggZb+ zBzXYJXAqSl^gsaP{*%8Cf~OEqbK8UW*ZJbJq3&w4fo1|g3R8deaewE$O`cdSls|~5 zm59bj>Iw@H=>vqOM-X_?LB#*@H|39D^4EsZb|&`uR6J1d_B*JjN?$!oS$S8bh>{aI zsJ7^7wXedu6OCpO`)1#}bcv%R$V<_cxZ*<-Q&Pi))GKumVq8Bv8h$xiM=7N0L1OwxY|h8wEY-r1~@}`ZttIAYmKDsgQi2xhn^22k^oZYtjbdh zHuxrhW&!{;#XcXwH(rWP{(31eKPm-7pYw#khUti0Zx`tXEc3zeTmU490mp7OoTdSH zxXI@XV0={}m%`3r(hQJ;h*Vi<&!zCnl_`mKA^gyB#&?@_nAecFY)oGFJ8jMHXg7R` z_g%0z{L->?i!NQ7`@$!lPh=~t4P&vn)uIIvN=TcN#s=43smPhH2?MGe|Mc*(9q89r zpP^F?V*u6di2Z-+@c%spK&-McR1sTL=#%9$xugl!$ze4QA}a6CaQZ*)gUnb~hj!_` z>@Ypz?e$Ed(+6;*YI9NuR55r+*KMa+0?i260hO6(HZU9!u047Q{Tu9cRFQ5c~d}Gy7ix7T+u* zQVcT@BP9{B=ekhG`ua4>4QCuR3|P0J2Co*(L3FRd{ugE!gzA#y9H;Bt9WMb+)PvsU zJO;qfa3bt1im+VsIdVQi5^aJ1sTo&Gx{M19fMgC9(+&orJj8Suk~|JeT&w8@Z0XSa zBpq7cBOSjv^8QxokYIoV;rMn^uu(}jlwwI&IJ}n_coL0GoQ3FmlxpDacfvN)0Oyi7}X#qa(_rbZ18ofo9Sh*zdhytJ9YNA z3dkbH8R)G*3VMuuz&~0(GScdCF8+&vd_cYPfdUa?D-bJ&6pw>M4E5zTP>pv*Q@Lhq z9ahd!NJntIJRZ^w-Jl16U{!;Nn+Q`CszCFS|5mGwAD1NgX5%8xmJZ>O(oqStM>IBD z2%NWe209)C=dg;H6o)B9eo9pH$@d?|!b8D6|0eWj4pv6QL53nThzME@4v|uZIyEPv zv1`s?o|7|@?WOInAmOz)*C2%cJF|!r98Gsl9^;TLA8= zzoO>)+VwK6yjS$p(QkK7e`nMFVflDEo_s6^hnK%3AJVi!fFz4bL-l=tdS#!4Iq;OY zrh6*)pU@*r?Iqd@vgKnd@&a-eC5qHGF7j~P6#Q?P@INdaXU3Bb_R;n)NyiFWX+|=E z4=TmOxu29r7B1*Pdxb@KF9Bn$3H9`Y@g#R>G;b&hXf5s zz``48P#@4RQQ^liH7ClTI&sc^(?NvS&Hxs=U+W?6^+ixxX&t^}^O#ruLkRiraL1UL z`mqu9PpadKU8!=aP>K5C;ST8xvw?;BfHEKw&AMkIIf&qtO99=l1)(Si=ni4F?vNVR z9WmddJBnH0hy0g2}bV)x-5`}E0EC@Xxy2$bb2?>d6p_YZ-RmJW4_A2F)O zKX;Vh^>l@}dh5&4ElIpKFBb|3<9A)-smu;v%TJ2Xi@ciS|F<^i$X9yWW1K!_GQAnP^vpZc}bt+i7`b zzefN6>E#?N@`vNDSQ2S!;-_@$+h?HbE6fI33GI71?MH2!9sleu`mPlk`$A*)@M|*Z zie=ifyZm5VQ)RXrwSW*shQ%87sS+x;7cl(yt zuJLGvRT9je&dg;vzSs?CaH=AP$;1lW4w`ihLxU&lp>DNeZ2bpmMCZ|}Dbyz++Kv04 zh3ldf;v>!#!j&gA=<=?Q_Q2H|-C;ICWw_84jgwiiR;ZdhZ%3^`M7mE2{s?QYVrEl+ zSqZ^a*_EP-PRE6-KXu%zn2xW+=yg1J0{~O1@EXUHdQPp^J6FOL@cfR4I&7lfQCFrq zM(aQfs>C3IU!^3l4BCe?N7u$MRRQs%j@g&bl|sa7pwniv`}0o|*d)7Js6#%7>5uF$ zqrr#NPajHu96<^!j7cT*PKq7o=iN6vhz;z|@xz}3-bgrRMKZX@c~%Tlg|roLK@rY^ zPr=2mecP#Pn6eDa`_}3;`L!i$bd}{8rz!(FC!g4KSENa>S@OXZGfP7SN%d`x`6##O z5OLKBRftw$STU#*{XQb)GBnchx&1f0L4Rp8*{Wnn&oVA_SVY;keTBTN|Kv7XZ^ypQ zecb8KsY0=$Fh!6Q6?b_}8{~XQVed4L|JUC2$3uPp@y}(tVcdpVlYA-m1Yf4pAr=j#%#e6hf^zD;qyF*afp9&xy;r(;k4a$AqJY_PY0 z0~)(CFB&|%AHKv!Z{zB~b2qo*nU>0l0_&p7G#Wj{s&qlgMteaySIWIQV%ygUPa)YEz<+;sMo4&3&&wd(2sBvpUrq5!%yFT(@ zPz&4n}WX{E`PPeO}R$}G-kl?Pl? z^;hPtopSF66E&kYA8nXW8h9_@8l9_Dwc$|Ad(;~bemNcHEL;CP&@wH#>E#?o%*#EFm@wjw0pplM3yj~cie9)dMPZtm4k`U&>w0M~$A5yCbWz`I-~ zoSj$^R`uKl)Slr@YpCNgMMwbz2P$(DTKs%zCxO=J4-;c{U$C-uMUqV)YH?7!& z+2^WK5oyBctC}oLz+r#As>Ak$LnUi~he}xxY%pij%b%H2qLcBfs0~~etjC+>7Bqa? zNY7tYW=B~0?gv}HU&)`oA|`}aX!ijZJ+Z$|%Z4QQ{r&rSDec;XE__2@n3%pF{~_8L zPXFOvWh@BAM)bJJE`NoaY*_?s=s{y~*V|XWH%c!Y)IndlU;2LA8cgSj*@V>LCqT+&mp_r7(VEb zbn!J<*m#}ky?$GA^dqzsxrR9m#q}E1cZKl|a~PAySC9Oj>cl=g?bGGqYxWr=&07-f z-Z-}P7|$VQ5kx$Ks)27Rp(RnRWx;Mn`S~iFr%Cwz8Dh>UK8M<36oIAVISeOwbV&&V zA{nbcZD>gxH9{k=YO(MO7IzFh-6zr!{-MiI=`WRM2gU6$!AMl#q@QeNnlKZqI!UN+ z^}u=WV7y;VpBLh1hD!ieQbCon7)u_srvNWq(?hv(}}s}8(r*f7Bs5|c#Pm5x=!b9 zpogG$OK`E(u9>D&go~Is+tFW#sOh5`NQ`gv=&3{UhJAF%;*t&nEw8MyX!BVmkVm0( zq8My8Sk);Au5E(+g-Z~{%hTa=z~*v{RuA+0YE?K((im;wx^k7`I~bLcD*OVr=4W9dhT5)q=Ld*p(uUeW>m zDZAHjw8s68HWhX|ap&@{ z$J*88W;0ddh=Vp~Y}9@$kTB~8grUBQ?pm`49|N%Pi0542g-7h-UR-!$7uyO?nvSYi z-{xC1IVs!SC1R5YlK+t$b}{~$&FSfyjsA9A>J+=j*$M`Dmp7B)nD?b7wc!?P@>8N;a=WIknEU zt><}5R1`hphzi)Qi2YjE=IJ%BNc{#LSwmYgX9XxASsO?Y8paST6~+^qJa$zpt15Yd z4|=YC`Mss4o*7FkvR2l3)@srg{&8yJ$2%>HBS(85{HFP78U2ceYYMlXZFyEz7-y}u z^v-Ri3?1~NLW3-YDeAlYztD(wD>mr=tNfc{Zq*$ph*%NQJ{n#L9B0*|kV@kYS)qgS ztK3_74s0(JKKFLM&>%-_t=3x4gk<5t?)K%wG0CeoF`bslTk#-c^faUJNLA(C+a1j7 za>6%mFwVd0dKS&z^}qY04h|)bxJy0bdDUMnrUy4*sXmL_xkXUZ@(xfr zjQ-3QEz?L4@Z3d6+Y?sK&hZy$4H0&P|17+txw2~hZl|zTbJ*6KYG6XX7x&0jJ$8ro zQmA>Xj1odao~_IK&cZ#%@xoAG^9+m@=%gy0Ca#uXT@qM#OW@Hh0gw$Tc1mE-Ex}D( zEWm2NUlwq3_dYDGlWV)NIU(q@5M?^K*k|Su$9>N6lqkMAZ1KK&W6cO7#dr&nsim94g*(1AIhV)3DtuGtCl6o1 zDKIQOQ%vLgT&zM=vTmY&gdG5lfq^zL8nuYVqUd3b%#n*{L^m&*r;N$T~3U z-GzwU7`gHv_m+E(jkwAlL)A#!AGA`S4tHP=91UGZcJ?a_RLe zLqbi${xGRrh?LU_)#RNbWIVBr*m{F1ZLOrYubn#TIMR-z)l4b$Tc$d9{6yrqo}QUp z5Ej@>DI!UkRi_jJ@4wko5#j{05<5Fmgk#+0$dbliW94sPHx(hYW{wDHn1DT3mr#wGte~Ql=^Id&iGZ~G-7AC_ z9Yx6FHVK+g!LOiARGj|=b`)`YgN#WyT*SN|m%Q3F)c|qxPSy(GI(z)Il#@7rrUbnM@mV1B=!yNAiwi#hVoj2a2B5hE5N;99 zZxiAb_+z%&I1=JJ0HD@Ka5@SUAw(wJ)tilNCZp(tFZGAXQ`{kbECH(A!R1zz1dWnY z-bk5fA+usvX`dltMJZDvWL6wfR+KV%L1x7vWko5I3}jXuQdX2Q9YAKqA!S7=A127G kIHas7iNc~N%i9~!5A*?I9zn2Tlq2bbA?0ssI2 literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Monotone_optimization/concave_2.JPG b/src/Dynamic_Programming/image/Monotone_optimization/concave_2.JPG new file mode 100644 index 0000000000000000000000000000000000000000..233de3066fec3430b8ea4954f27457911a15574f GIT binary patch literal 119445 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 WnH9w#H@%WupE0Hex#^YMD*p?J1cNUC literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Monotone_optimization/convex_1.JPG b/src/Dynamic_Programming/image/Monotone_optimization/convex_1.JPG new file mode 100644 index 0000000000000000000000000000000000000000..6290824da8b1f11e60e0da6703fc713134fa0097 GIT binary patch literal 147585 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%0AFe?_~}WG6x1cI z6YzC{d7SqbgzM9f836PA@XbPIBy2XHTdlvdAbSx>8!PbPEs*+$A>yA1-RI^ebiabl zit2_f04?>*E$w6Ee43%3Cl5FU)>21J@|VZ?ABsxPMf0XY7e zBY*~}s2y&Z;a!r-##8Lq9G}Iz{EChJWVRM3*vz(b0=ic413=fxY1N#R<=rGs@z%qS zcS$3jJT4A(7yxk3lTHaTZvMjnJ419BT?d?mrv&1?ifVK*(_8umo;O{(h)zBRH$+eK z_w|nX?3@F{pA*LWMtERo6B$4OG%LmTVb3ZNhvSbj zPad-(rrq3%%#5XSpZWBL7R43Rqz{vdXk+blREwLOr9-dA6@5udmZ=PT=BhBszg=N6 zE>NR_y0oSi+bU6Gp}Tapj{YkMOQS^td(IDA9h&q;iYxB$ z>z-`6;g1RN#VrHd`v{pni~QYJuzQ!G-5Xe(Ec^B{D)M*%4BwJYC{8SyYz&U) z@1f~s&!h8ApH@eHSr?yO#J?h2s|&8b zkL>=KNP~_7AiDIEVwKLLoEaUetwDBCjS)P^<5Jr5c45-CLdtIPhV)-}{<9p7pL|*> z11jHmWKlq`$lLdr#=2&rAo&57<2$aoTt5!vNqps+J7EjX>E~Zm^FS(Ep5-1T-QEQ~ z-?04>!EL*K(EX}7R`s%}Y4mf_I{%Y*Z#(r%yhuAY81*PHL%Juv>pBV5CYERt9TDs$ zD1F;@v#y9cx47GuqJ&im%NZWLUzTEO2TaklbUq<`;_%HJ4USv72YL&PgN({YsvRo^O>DGhBG% zJh_4fp>+g@v4f^HVXfJwvhU!I66s#ph>CXEFi~P!7l&~`jz-mxo9%0NtZE}MA+1d8d6K*kMK1*FDuYm>@SwN9>B{Qa8x^xNh^xc%5O z5b?CYg7?Iw3@51!V}gHSX82K#5HZ)~B_10#bbD#Z-|;`Ss($mu@uC`zHdC1=$;U#( zvNRhhEX@t~72cVbl^pF)zIh?Lsk)USO7d_yb!vSC=|JTIYhMh13}!HwPLffpbvvLK zl9s@ieU7E-z_ED32N~O(vzFq5u@6skaByqu>o-n~myT~AC*yT+`&li?j~dLA5m z!`vEhu@}S}!nw0QY(lul)cQ%NNnyq7)2&(j-vw^JjLV!Gfv@a_*<<%xCeScyAYy}* z_@aV`FGg|2)i2NA4=;PwPl(B8^mbV{43fJlrtb9sPb+|(qI$8w{KPLl_FuvSQgook z;M;xr(BtL5m^iE=)dz0Z1lbaO{?a6ztl;i!F&YC#aKn+SH|1%gRed zYut@v>a)2Rh{=1{C4h^#c$jxfa(Br<;uNY}E$?+RaSOrPdeYoX&Mp{UZ{b2vC1G2u zhJ!r?Gj4d+ck&)#$Zn$?nrO`uC2;m{+?MK$_9v;mO1M6n?s)O$q;|DcvE397?TE=s zMP!NF4PSKW!`nLdnwodvD~ZPIuI9bTI*7_dCff!@a;+m(gv*|r+2qO{ow{i0+H>6G zTx8vj<7e)#O;x(CK<};pQ74K^Wv3iJrLaU|JBe~|@9Fg)ZO^54z6}a{^`A1XZ9t}|s0U3?)Cv%?s5C010yu06dD*G;&7c>iiI$Ni7Hdn0%q4KI|ZlL;AR)w>Qa z9n`10#FNvRJuVj;PI()<|3GKU`qRm#0hB|;a+0pvwhLQLbg~$=*rKB@e{A3tDJmg; zEL?NTZ4_fOESIO2zbd#o(HdlxM8pmVmN`v5bQl)T9k4%d-&&%w=;euLoU7hSi#9)` zsyNlH7!7hfVdB&+_~FW{OBQ^S1}ojHtMX zBJdi==0Z!X8bgv|8fgoI0Y!8;F2h^$0t*XepS`wGt4tr>^|twgCKbwL*IGTv_j^hZu8hKti96BZ699kD9J{yO#Ni%arTPb&CD z|GaAgbYxC;U@CVLzgIxutb%*9l2g|ZZc-GOZ;UO<5#{fM zJxMdV;bz*I4OvU=4G@Xd=UAlo;GUb`hf#&_W={`&_2H(8%+OWi5}C^0u z;LEcqpTH)x!}3)AmxYIY9jN#Bkpm@NA3RJYhhWbpSR-~{Y{7rvEDz=a40p0>dFJu; zV?uhX$CnL_-|{ycY0Vat4J*EW@ys};3=@uDCR*eXb~Q%ieZcwDNxRfuSCMAIiX7Kw z!=p9>x20aVKYcJZf@tI78C`jqxgtCcuCExw+;Z93{G`@sQ(VyT085)pm#Gxko^UIr zL{p38*~TDhSezNCLeGxdw8&bfU&5H*=xL%YR*S;Dju zPLx83DY7MG-{+%^5~flVF-gce*>_Xc%D!jc_jNGL?)RpX>ee~8dw%EM+x`AikNNm~ zKJWME{eHi;=WCNtm1CK9^^x*Rvkz)4Ge4A>D|ZliJzI~dY!ORi3Zhr^(1p-g=WRZ6pt7sHk3tQMg`EccaVlG}lgJ^1}r+(=C_-bdDRYvrd)>S5h6EJ-b$d{b^Pv^fJPs9waj!9J7wsC}U&F51T!@%j2ke@%@_ATW zQih25N5^XWWO+A>Uc311%b?fynvp-&cV_l5c9z-k~VICc^jeiL} z?@;6waSl+JWJBVPG&!1$K)D~MPKgv-Ak|Z94Wu9TpSX*9*{S8f#`2WHq2#&W2KGk; zUNkqn;P%?DHvZC_2^l;Z(;! zR3|ci2|E1GTNgm}<;Hg$r$C#8>I!t8#tweZ$52qu(Y`KsMJ`Xl`zS=^evZhH91 zYBz~+V)2;!oV-~w-eL@WYeH6h?bg6#FB=!Ycv~e7SqMd;?R793PMfquBH3O3#TEYsg#-Eo`^Me zM2J}!nTt?M#=dVQ`{li&i~P5#+=bNwxW+$ zt_ApSYp>JGZ|Y#-E>p|Dse>gYdI!afE_T^`K6gjF9gWORFPxH#M*U0lxAJTQ< zQBG&O*AWd5o{tu)4e(bHG5Ai zSB(ARI24Hds6=xbAKDeF=byeuL(}Sontk*P&0UGQl=J*wDL}K#L!6)|!;DnTthH1y z%=8TxsJ&LKSd$d5bnfP@G?Une#)PC+i@o+N-pq*1_LBFfCdCVJEuPiNkO}E2`*M7; zbg}re9>2#^h>wqHQ39$1bHAY;I2Pd)50 zCpB)}o|n#Y^uY7zlFQI~{4VHDh4`9Gzde*%3$n8)pH7|4e%u|YfA{s*iFUsq`XA;6eV_Nf-m$2;j=puWAu2(qh5LQn zMKkpk!@Uj@XQj0-yiyqB>&IM2ZWWQ|Cl=2sHwyQpSd_l$N;`ZW3h6nV#CC&tx zSZs=g4ul3{fcN^k=jl@U2N!{F5Fdh$6{`Mu;CsoRxFmg6Szgi&cD86;mK3JW!uP~6`gTbF zY46>=_gK}0CKIC#XBa^{S@FEpW_!9>nz_|;h7V9$TIvzw6^ChDIm3bkHTCS&o$jgl z?Bdm(STC94D36-Tjj6u2H-4LkWxoRnV-Ds?DI|lYf}=dOCy6by$0t*o(|uA|*jkJE z(`#Rdja!}!J<6#&;$iN;mixni<$eeB9e942kbl#VFAV9Rsm2%i1V#`_WB%i_{-)D}yjue}0I_ON` zU>h(nG`m39_b}&bWtHfy_TA}tsDQTld^*2ZQ%&3Z;maPYTIoBv#v(*aBd=+C?G4(G zI^Zcw#Cpn- zK6Yp|VpgXwUr~!MnOo?@@hFPE6G7sXP3hZ%>P%iLWwnp3NLQ$=m*^D?R5ODp#}6Db z4i`#l;K_&^y_4vIdu9{crmRvOB=^t5Qf~PJ^dfIn!ZTUn&B1K)W|(7|1N*)#&)<+` zD(_5-UWsBJL41ua`yKj+SP~NuOOmh_rR=!zp7>G3c1LmW4$2qEnD~kg9XEfQ||ShpLfk3j2GXk(Z^#&T#8N zC-ih0E7H>^9PR>_zO8)Jte2pA5i@BUfJoD;=foA_1S*EL(#Toh&t}#g@@Vk0SDVhyC zb-ZnZREc7f=9+lpL>Yd1ve>}}8=jMuTYAr=C#)I}@c!W6d(&SsE;r%?t6R$?<#?UE zF!i@v!|X!aGcqW8qc!(gUu-RV=@;zLEEM{Tr!Trz{mQcg2t8r`nmCJXNog6kx2O3U z_#VTq@euUO^}uQfvuw={fW9p3b*9a3x zbW_c2x%@gO0Q&M@vf6dTemROn8~QzkyzFN6#&c(yxnm-V2dwRyb5`-Zt9B3}ANzk9nYRO%yISh`@JRNU+M-Pyq) zJ1ov!3qax!h?^ahi-J1OA*dSmwju*?q0tkfzHabk6aL8B8vxiY13*YbSvLCdEP%H2 z^Cu-~>trC>JWLHA9^$xO31l~(*9Y#fFfTO_@;?MJ856qRFC;>)WqH#vv+pC+F$3sF zy75}?LeArDuTCp6$5q4x85p`F88#{)yRl&5l?UN-G!STF-zv=yk}xk3x#^zVEEGDX zM^R>+=i#UTbuVHW5N-wFNI7xoKeK;ifpf)*-YS0MyRR) zh{7);8#uYyc9z~auD`9eLZ-i8jN0sH)GCcMxP{s|IacERVhcIRp%p#Y`e)c$n zn#_=a-J$0q2C^kofOp8Tw|mI^?8E;JW(>R_kRk1<0QsDrA|6X@d>V|Mb#S_%2=Z6^ z4|Uv;`Awex){cquW06N4u?QKvf#&SjdGN;QQ_>pB!!)(fu>8kS%Hw9pvs&~m3cet8 zx`j?r!^b1Kxw~-#GZ1`=g&>ckQjvF{{CCy3fncb^jD7$rlq`ZO2kD4j_^>-fBH}gx z3VIL@RUQNq08jzQ6}9pPLaLeyy+hQI=V8-$)OJ95dB?Q;&T;iE#S%JRv%yhzCVyK=rW^kd;P;b)IfC+$L?}kq%9k3$xcg!_IzHmG< z9yv`$ph-+*43dr#1v!J4O*^K`aT6(kGyJkE5Y)b>2@1Gv|2_&Z;zdfT3QoWvqI$DNANwJ$x*Ua0jry54C-rCR%BaB}hz<~UYR zQc$&uL{=J0H13NImhJhIy47EjQ-A3phMV2@D4V;+POg1*mvRV@7}?#F(NgYc0Z5FA zI93G#y~h^@&DYW7>G{=&L2e*TP-m&TVgJ=%jOcnd{w^9)Gq)zeZp3QWw6baN#%+AA zNxjx}Cf=v?&YLy0QZpM4Sm<^_g$?C#m*Pa$z4ko)e(&qHK3B}8c-rmk*sO8 z;VZSKuEtq}bDVa8v95czURB83p8ufBh6s-1G*%+_q@ohhzAM5)=RN`f3fB@1&^#ojV zVLZ{_Uol$)dg=XOK+%6;K#SjR1{Dz&X6FY_oGap)wu)q-Sc319k3S9RMp^@t2E~PR z^6Ku*TjPF=BG_}%yQ?>Vjb&O_`PGLUth!6JGIMD_PrTHt>GL#$n+4siCJvZWJ-6Jnp!d) z^w6gBxNmf&h^qopI|)sI&ARPC**z=4GTL^C?hX`poH?Dvab1c@ z=!<{%-RlLt|19f0|- zk$dC{Qe(|JriWN)6y#)hlj3Wp@9tn20&!Y)xgw`ls?VMlW4HBrQa2CdoW;H&R@?N8 zCz8;c-p5^ztC*v}mB0$Dg(x$aE+l`s$Ur4U$#L`7SJi^_3Yt|iAj2WVbe9#7=l;|^ zwkjE}N{;Mb-==sV+bbo|8j(1IAx)-(^;4p=e!7ii)Lnq?2B7PS8t67p%{Xt3UJ<>d z1{%okpwk41XUavo#`s%*?!kiZhrISv?*i>VUz+h9&)JdRx)n41UQRL9Ox31eC#d>a zWA8a)u=>}-_QZ>ULzgRD)%zm>zi@?{_u5}A3S^S2gCm8zJET( z(>d@J{rtrbBB1;u7v&4AZdzHFJPJ*uXhfGj9yaHC*y}P&J5~AhE`rT|`j4yeX=nfP z27Pw2F|yfy5<5f2ZQ#iu zlI~RmK1ID*x3bSXa5rc8**8M9J3#fpK#84AlwF&mQVP^V(od2NDQk~|ND&Jxjiff2 zFn#gY)p?i-$-LgOa?u;3bZ%@z9akEfS;%o0-VB&!VOk@Ih6&h1XJwfGr*XYJh$7Kj z^4!FTsJ&c4!RCXCM4`_4Z$7(69v9k69Jc z`5XIc#$NjG(mWqub-TEFq$JW=g0$-ry12($)rY&|I9l`B_EolGrJbTYN$jQ(n)IPS z3~fzN*Jycc3V?WtJ7#Cz?Il2LMDDZRhkAAhZKz!5!yz*>QaN~Kx1m^*#pRfeYQmm; zHomYKI>wbZ+|UZzu;b93h7(NHp5_EM345JKS4xZ%oYj3p?md2e!$bZqQ9NR34z)Qz z_YNbj#Zr3bJj{*K*mptcdiYuPJ*tu>!FNBrPVFDiWH*VytRK47djf4~KEQj%i+=X@ zWIqcDP~9y@;ENBngDzj9Fp)EF(t*F?)1`9@m)6oQyj`etlYb}@s+2(_?W1|o695kW z2+_5*7BLV4Z{k4Z&%?C#K_B3genXh)iojU~_-iQk38IgMsAyM78c?I~v3x|-m%*pJ zsC-!_)amdaU7&`2{ocpmy-*(u!Ip^{20A8>KLvo}ApKpz>>pieL z@Oin;Ai8*Jp@9(5PcPG)TwI8S5z$|+h*J52zWZ>iuU7(CAFKLRr$BkSiMoKmZTA9W#4^ zISxT^Ty1Ux#`?T4C)R)2!G%>I0X*XS5x+eli<9{MQu?Pu^ZC;0QTQ-8TF2-c%O&Z~ z)wBm*|9IgTI3G@n=i@*JX+ZJQf%%&*2SbW=7Dj^A4&X6$aY1;Cpnx`4sio z`Ku!#gIH2{4LbMuY`Izyowr6)EfuM7869W(7DFdtvx^4KE3*#-WewGJ`*N0EcEiVw zbW8>jz1edg2=DE&xO2Yes&l1)-zk*2Ul}6B+S;DWN2}LmU({$<BBP4(Uc9F7Yao95FO=3%tH zhm{7{4M%ztt4Ga6gLujP>G+WVJT7ir6Ox2HrURTJe(2q1i zgkm+?@)}oWOSeo4zYkHRkYyxZ584^G4{(5LZz4K&@F4P`C7i>|DhiG z(nJ+fuFm~bzSasRO0f$Ex+{DpAiMIL_P$FCFpwhw z3I+qPsIjk+?g!8Z)33ht%UuhY(l#M%97GoTRNP?cPhax2SSri4=nBAgv*}rgUq+=X zj=De(jDm(2-Y7fW&2k$`pTRp`S(TT}c~mBe&_Xls&+y+(t`{|9@e@$s#R?^V?8#y5 z8QN|)NzW_NR(%(VS|xWdeTHUU*wwzn+I+P)Ns=V)rT`y1KDX}(?B;#vOFbF~XI8olvl%V)8*+Q<&VEfrp3)Ck`G9xAe`Wash+w*L+X5!8LWu0{1Ci!#HSw zn(#q1m&YfhqD7(})rZ`TDRdW|JVrmki5nqy7jhk@fg<+S7LTlk1^9ow(-U!r^ zQ0f(!hix_36DLc#+Z{bCWI`_ z4h?5c-GVN&e*J8Gd&5lun4zsPhxdFgvF2g=-j)0&IgdRg}b}4>hhv%xqQ~mB^fC8uhQd zVP8CMpN;L?ddZWh>Z4WYuC2%PRovL02NQiCBfZSyyCjDHGC%lT)S=AW*3ZNIgX(eP z01S#)tM3jZT@99c0QI!-xpUZ$813IF>8{|WByf~KI9bA+kcBX;rQX}yczSVhneI}R zCzZ?4*dgn&$2KM>;7;~!Xi$?^b-tD^kTRU$pzhQv6(|dV}`B2i+=}UW*W)0;QQ+wR&^3H8+>YD<+*JT#KoyBMTIqDc^GQVjz5E`7s1qtp=y^A$)h2S@eWq zMJ)ah_v3csCF-92w^BD?rRF1RTikW?+jq2wIO z<bBw2Zfk> z;FaD`B6WI&up0eHI);${Sz_l>_?{8DbwC-jwnqBRB?{I17bx`mK<{6bLK$^2K}bei zZ+|M1at9hZ+K4$u^qB!JPiA7r;eejYDwoWKA`(l8JvsNj3Ytpc!ws*xAy1=;VAqIb8i5|S}X8Ah@bbIcJDfiw~Slg&S4SFrzj;+qtRG9O7^THG2I?7 zT9Djgz8BZRb$0pvxyP%R%H*=1ISlD#xa5qStt_nWb-C)!wzP!|BvK53CmQBqg3}`bG0v5 zuREgJQ^C64x*_>JzAn0RyI@l41C8gc&5A7DSntFG>K~olm5fQJ-VUKPcylw^I*q9p zp6Trs1ZLxd+`XdOJeAkoIGwQ_3Gvaf!q2R70!M^Qqz2OCowZjgo@LW&X&`EKo9QQc zC&>q%IHz%(LxY2{Y7I?w5C3InU%yDETKIBA@9Dr#Eqakbz;K<|&p+>_*_G?QF;Kz4N z?L*wf)%Q$YDcH>YW+?wd?Q2Z(%G`sQlP}(iaIn`JxgOYBXuYC^I&>+*X{E@)SCwI( zb!yOFk;!Y!?QCb8$*~;94_Rq$p*>b*tEe%83V72jo4$u8ZxBgavgN!A59O|q_Bxm9 zU}cr;d5JpWwN})nB;41x%XTI&cXR0)SU51x-W{B#XD9(UG)V1Id}Sc+GLp2>9z$W) zg9gPKIIM0B7P%?b6RK>#9Q`HHyYh#<27eS4|Er1b$WN9k%9Q#^d_(^zzJs*>4dNSh z5mnR9mx1>xdO{V+JUJ8P{nq(Iz$4ENG!nzs-_7s*k?=aPFRBdXK}5XKQS_v)HSf$6 ze&K4Byegq?cZ*O`w*p^YPeXRk^6(GN$*)>7(N7?wjx|?wn0#~0gzIBlj`5Bdty={n zd3Qn`JGDf(gq1>^GNU*!mRe??%6BZ7$A7FeFdSwZAG?^B_OPaJ`2*!_ZMALQA5uB$ zZ$?Sj6$h&hl57jfY;)HM@5bZK#~n&<$(%*lk$b$U!4jpzMj4M~)K1mPDQmEuYzp)* zYL{&6$x2W3O)z}IJi=q-?ZZ$kqjlW&St)D88s(u0BWqVd>(qBM6JB}34O_O`MYb=O zT4r$Mv^#5ESB4e*j!KBOGl;)a*|=)d#qaiH`te#$0o*RKoiw-S=0UAzjSWUre$Q|- zjX6x$98ap4x-0Kf)-wfMMQd&W0%wG=92Oc5U%?vAcG)J~M)~=owd_%H3v_hAwxDV2 z8v8TnVU)7FCW%^iwtY#IT_X55cs1(1IRF7ylD%OaKez$dW9wZ;=n58+^ju45X7?at z7`O`<5|O$i@;vniN;9bMEQMcco~^jHA8}gnazc>c`f~9e_{VYjFyP5WygWHJ7?X`M zN86qRc9e7q`LCK&bdWH8I%nY!>a-}5fMb4x1O-~>B&yqJ>3Jz7)#eS9I>j<@MqTrs z@uQydo#@JrCYIwFc|>2^1O;xO_X+g%90tekwJMLyV_&76XWcgb;O)mw$20BO!*zYWl`_5pdzvuZ^m2&Jz6Z~l zqNhKU@EpHcevEQhTSLX_9pf{R=H7yOw+46BQ4O~D_Ej`~>|wCgi%0lRF#_pas7OcA zYrClXzWtc&O;hD`xUaLbpS4%M0)aO-E2uVnb-^>XdHCl>P8LNkG&lOd%R&sfDv z5}~Kn1c6q9ySREv{ip#h$$hdclefKomgBc`VyusKtQ2fiMMTP?x|!Eh7RuOVxi_Pq zxuM&16WKfs18a+_?P5fUj8SLaw!!!7UKnm?z;E8OPByY2jFQBU(ol|f!?Ig;c*`9O z*JP^W5=k~m_;})#_CfU{A3|eXZ_Z#F_Hhh5#VE&1hReQxThtU(|MBo5rMQbvD$-A^ zhDN@&2J{DBH~yWZz46gL!Gdi*8xO-*5Vyh$;Hj$VhPx@k@sze4v#R~C<&h&b8J8lA zUD)J?S7Tfntp{!|Bn&bEnnf4R&9CYuz!(HpTFp z5mxS@EfjI8EI=*A-#obD`1)48M2^~?x9buOcl)r|@1)zO@nZH`+IGj-Dwl@MxG#_? ztGya&r9MEEKAYWB9iuk^jIkaILeOHdw3RXi%#$G;*gND8S?e$UfQ9|_dSpxDe@QF; zFM!Pdd9oHjRU?-rNu7vSPlyjZ+PnPM^d3M%x7-R))t;<_K z;-ck~vpZQWLN~=~@4b-flTqt9{JcMoOnAqnT!8Q2;cI^e^vW*nDk+p>@0Rq6CxnPx z79T~Xyy4j5c~n|mPW%}!p+)t@!z@{HO6%6AgKS|>7U|;;1->osUOcNjca2f5!Mc*Z zyK?7esB-2XD#WEa2W8MG&y?ut4<+SXsE~N44sDy&0ZQwKc3R#^B^h%w-ziI6-<+O3 z>SFWAtgx+)4!?5Ooi`-%{0EAXW`^6Hj*dte_842iaf>O=RQcg*)dgV4Qh+%Pd>3%Ry%tmRn_dmuu#K(DI6zJp|NmQz$5TJx=pErRy(G@ z#o7NDw+f}y*h(S!=9Da7LFl$R>e@KDkg0vQ4mQ0QXq;F>ormo$GdFtTrTU^a=1|O8 z4L&<}xu`2!vO->JrP-|B@#yl#a#Xx$VScWJdT^G>)7=@_`^PL#g7ty_Mg;J$7ek)Jre5)yZYYty`qt%XzDc$ob1MuOOWlyOb zT5R@LycNT|9A9?3*Rw_+P&!~@b297^`Nn=`pb!8ngK+@z>)^JV@FX7((hnA_?B*`q zvHOuvetgLjTFEOyk!@q#i@0=|Yco7;?Iop9@F`9D67ahWwhe`*2s`kphgRB1`r3&oY*O8lbTC2j<1!QoT_6U-Vvm0Sv7EGk^j3a0Z>J54ES$ z9#)W9Gt!?b=U6hRvm}OvMOpZno1OGD>hrQDhaLcouP>#?F&d(uVt9Vx>jmhYekpyC1bA@E)s<-rI@}t z9nYVbk+$p*(d$D;$E?Kk)7fL|E=za4Z0xo>ozOWtD{G$LzPm1mEjsr$Su9mJ?R*On zYStmTMIDR})U=DiI>yjcn^PX2uydC-ay5UYtLSL5Er3&@?@}ulP3N|g#*OGxZQ`Ym zbR3Lg>W%<{b=wFC_9*f*!J1>{VL9&t{&tHUP^>?~JY>a$8(Wl>KbHw7z{!*$pk{4A;mC<=vxsxl*#4tgkZj%(k+{7OxFp8sZI({5Z7b zv|01j)fVQKVSK(TVasxt$G?y*9v?4FSt!G^f?11x#Ib`gAxghtCg+(huT4Wky_hQ< zvz)-QQDqpnuVZ!XJz{0N`EyW1pZFiZZb0rcY zVvA?1axR4Lcw7=Gh5h&{rSqACY+$CG>F?$%V`Yv-=RK>9Ey2O|8#{{k$1yEXqBEex z3%^q$_8p+az_)Y(+@!;+W`!6|3r_qF$;pE#;08>^H;I^Qi6#tc5nU46P4uoPzjS`# zF1oI|^|=4hw-4S3Dqb@uNS#s@Jku0vsJSzSaR|BrpW0mxDlVnNLAk1OTM(5Qpd#m& zbL894Ui`I^$s6iL;(+}LB4t+678K(p&2i~=+eYM+xEYQx0$vrScz7%GqW;W;mn?YT z6#J&R0lgDp>X`PROHKQX5}NQTn!6}mSsfrZr^O8BO*0JwuyKPv4d(7jHmqqL*&bk-ZN_b&V|>l_@!G?x#m{6orU{S?y*Zj|DFE5H7C^Sg zK&0lOc!#6t;p~Xt4RC8{BO%w0C+sH;@c#v$`G3g(UpiBZ2knn2Z?Qg{z?(Tq@x0s! zfhQ+vGb)YfZg@i;qxb&R6>4lpkXbaMc8@8T zb=~yDSL}K=U!?O8^2Gg~#Eh7Sv3fcOYwHHEt4?TJx}0)9Qnom2UiTg=#ulfCt*yEY zY%_+QAet```>fK2!*F{g^Df-x7q?NTc#ByI%*!2WxZFpSN zKtQ8qKkw6v*2HtFvL6~no{{uM-3VP1P2Bl1mT7b3HY&M3bpN(z9@=R2qGcF;&)0rz z0uFYSoV()Ck+O&`#Cj*qnnQ4wq1WdNHZ;GGASI5M?1eV#ZS>aVNeT{#4`DvD{WH~Y zlGCX-u(*+SBn`G0o{~t}3cWv6j~EpLjOBUB1)|lhp(3hD1EI#|_V=9V$AI?#jz9Vr zm2wMw(6EgN9mm}-caC~1>lG`r3=+Sfk<==oRjwXnRh6o)Vyty9Kac17&7z1Fp*`;| zalDJ`dUUaSJX$ovGL915xdO)EA;mTrVJK$$8FK8wy6go8oQfOEHlo6{LrCE0GR7UO zY^130hrZY6_)&E*#v;U&C@B2bh#20@i2A-h>cXp~N3bN$lnychV8m77&)0kY=(cq< zUHTENMQzGsQJXqX^MiUru9$qo(K-JWj$RGA8n*zH_BsCq{Rrs&@CXK3w1X*Z0zmXO z(1!Q}43Rbg4X$=w$V(^o!Qd^9pzu0);2nZ$1L_rIcaRsV^7q2&(xApi+XRh46q;h0 zhw*@#E0%L~k3bxWX&&YW^0U&xD-Nr4Pyt?40#f|`e9$*s^#fG?G3Bht5aIY!1=S8W0ld6{V@N~QCNZjVXoKkP}>yPqHbZ`_ohACw0)8cmHY zcqt_#JV+zpkOFj90osA*>u>)5oQa>y}R)& zJ}Jn1GW`*q86sizx8^*YPx^JOYqDJ5)yUR2{IXSh#5G}$(pD;l6KBTpp2a#g8a^|` z4std%#snP&n$$;+q7KrlZ^pL+;MC&*gwK+TSM3^&cHjn{+U(hTAn~dkIS+$%1B$fE z{q(2JbarTL3!-mYYaaGS3P)^1n4isX71X=AaGebVPzT}Y44_AA@sO)dNC6lEKA8<_ zD`H91dJqM@UX(7Wm>S(G_js}D3vPCyBE^?6mLADL{NRavD1Van0ynTUG;c%Hwb^r^ zii;>qGbl%`Koqfg?S5HVONGg}KG3jS*wKIQ9EC4J+DDlLs)Pvq95r5J25kBfH|A@e1UT6h*%SKp7v{?FdKun2p< zU4(g<(4R~b`mqcYvYNuS-G? zA^bU7dSEa7`}dp~%fX3Gv&5;>?dP6TG(ha>GRt|`PLP5A3XJf>H@RAgzLQT>AvLz& z90QDJW_32ze;(!?-r|fpLhwdb(yz+Q=ZWVL8e9o%!^N3;oSC79s%CLOneb>`WUPRk2rkiei@bUviF29MdrBI~% zYV(k-@mHiH^GR-Z`$ici&;s%RKg6Q5d>vV!nU*Tcr#1)I4tg zW>K@m_kOc^#rg%^gKjrF>n6Le=p;nHh=0{!n46`N89z&U`||1C^#!4z_ICl3*V~Hm zXJ<|NGyTN(zpOJ?R+68SV}IS$HfNsdsM*vD=bXaU_Q;Ui*TBE`Rul+N9KIka8P8xX$+efk|L{s3k9Dcb)}_J> zojfq3cj?gp-Hbnhyw!Yjt~%LY^D^fZ*nU&k`{zge4;Kg@zPanV=P4NH0odg#hJfcs z0-l3%$6`j6)SU-A2t%Om_~T$=brPMMfQ(KpH#Oj?Vkn3G!#@k}tAp7dE(n5QJA3Rz zj3~Rt=3$nYak8^##>kZG9@kT;a(jhh$GS$-tH>6%DV8JcIE3pUs))PgjM-NisGni~ zzZ~%R*-HQ7ArvQAkyap~h0Z?=FK4-0NhY(vmi*K(*Z{;`9`So!;KrmX+9RKqaP!d* zc6*=O8GxFPM}W?<6Vz9XHi!%y@CVKR>aj?>8GoWExn~bu?o*Bt4CO@S03I&?ZaB>o z2-@nTMqGZ!)Lb7K!&#DDH3NmsFi8+f25#6MUcm@FH5*QUs#3oj)_|rvIa=>9;XeY` z{<0rn5l8>ZYw#V)S3u$2fxg{X!!W(oa&+_PCP5JVvXukpL(cj?6#Vipo+E$-V&E&g zTM~$55W^MMU<`kh)L1o{Vi!ZL#`8D|Rd`Q9VG{zW?w3g9P1nEMF9zRk7Si%>&yj@j zk%c4lX(uk4w+mF~NUjRj$k=Gvch06{P^h4ScyC3(5jFNh$SAET`GQ+cnuHZarTEiBao?lIA$+Pt0y0~MP8WkFb z6YwCCGMw3s?nq^MI?E$Up9AbLyltcxUHzX02rtvnh~CElL;Gkm4U9|g1zx8BcwKD5 z%_l$4>wfh(ik~~9Us8opkQ*-oe-K|u^Gra@*gc*BxdwFvd2T=4U6pFOS7vBELGkVO zuUOXS^T*K+Fwy&`O6n0a60c$>gQ|(u$(mo9m;}cTr)7zR$VWI?vt&Rqb(yF@^&~qDAYE7lz4*9dRmHX0uO#vA$dmTN7vX{N}9EIN0gD@r<0N6M~TNYvL?Om?a=iU6IAJK z6>(~L#w%yq_3T5!nV_ONw=}n;nY@=o-vXkgV3%{&+NU36XF7D72PsD-wGEZnA7A5e zUsVoipAC9+F7PZhKVJFVfS^s=!MrYl!X@y<|Jvbq-@P$=GK!8Mu#guz8dpD_CUs28 zn|!>6qjb=+&`#Kg2!$Vc`2U@v-hUQEH$Kz?!1JZjO4_m|{+#eH@aJDW*x;|6eQ<`; z{h(2a1t#?p8{P$ZMnzAy+EbPF(KB*ov)CB^o#;^i?M|SlLW5`@}8pKnkRMV!| zFAWq)uHAF@D#G1Ci3eJ6e{)^GIt%l*QALUbb*$TQbB-n-MgHF0c3d#PJ0TYukDHV> ziizUL4sWm19}iZXho#AJcPZXdy&bVtee7fo4%X?zs#;3&p-ar6xF$>AbfMC56;Q<~Y6e?9aF^Gp;J{%0;{m0NmK4ngRP;;g=IFHeF8718$DZ=;-8ZxCK4{#T zJBhl8ch*=_)80%?0o{Vnz3X|57ZG2*Vmw;Utp*B~i6Nhz?gU!qqAGLaD^*6~lPVK? zY};oYlm&su7BU~oU-f{Ea%%M1opU{mb)nW{Bgl7+Kk#_wwEp zvc()P#+#SPFhk$R`caJQ6;X%BnaEJAn*4Z4q}HH7*YDzLEWrfcVjUUCthW)!JBv%L2fbJ=|Tm0l>G;3D~*+T(8nnpaLo zIrNH~Y*(YSHg>wP+%J_VdlVC!FF%8EY$9V?=;HWz5za2snS2SZ&wurX*F%eNU|TpF$0&MQ6SUe2e%97fAIgVMR}vrE5|s4J{Q)(J2@;2QA@372 z18lp@4B0Jf@rt(+*V?wlssqa9eA25i(4(LflSJq9?C#? zigEUvDGC?F8x!0EHQg$^PVr83OM3U$r(WJw&RzBhV!3eV?TBA0l~SOsXUSI{;a!Ba zK9tvfW(JWZd$jvEQP{O2*<_)I8bN(%_qc)P5d{;cKo!gzd2#RVGLHDd8|PUrlvLwh zB>)RcB>KLIpq-t!TlLHcIlQUUjg02G<}=tmCg>+3j%;s3`H*XW!+D*n9V4tl)VCHV z?VedDj;wWdkm1OY6+1BdP;CNHF*+v@8(ykce9TG69+6yHSc2lqqa~%UIqb*!d2LBt^lNxE8FI1Qr5!U-I4o5hQNs91~!x?#n2?bf9=TNZ5Av(`xjCv`bx=MR=?93n} zChkUZ4?gxE*4Fl09x5CQJ4k96uJ-wm^C?Mi3m%j`l< zcIZhPWVtnG5#%P`=5c!!aBa;CjlFxPO{~IZ04x7=2$?b&d1M`yah;6*>=a=b+TrxH znBe3u9qZ>mCu%Aj&z2T4mRUm8n;e);yH1N(gGQ(wB61oZEAA-k&qEfiyEk&4CH{zO z9bwu$y~lP26OQJBj0P}G^~mv&p*(Nhj&aRBRL(~Ewy@HdABrLpuij9bOg}9DBmucb z9BpwUV7=~JI*V0SN%%}~ms+&RfobI{)p1#leq-d;*(H@RlIrXtOXZ+7f?~dA~CunJV+HaH? zS+f?i*{M@uz%8Bq@=Xz8HH)x&&;w+JEK<8yly`#UQRhhf?{nJbz+PBq; zxN+mRw46@AXOUah)m8Ev;$0I}NrKuEYDCztzavWjnFXhk6mYodFDa4)7T}Wmpl-Uk9y;c^H4Kls>40kE) zy`H@7^zzc)P8!J!K23rrIElSU>gJgZkx8VLBV625Cj5+OuYO} z`{L6eRwm+29zIBh?%3s&6L_b6Q^aVC_jFzv9gpX_);+-z9&{%8nR@V4QqBW{@B+(Q zFzH!WwGn~a7Y^X4PY{*Rn+n|ZY54+A1i*;K>RgN5?vj64F~=#2egY_AqCPZH94$2K=!{$ z{p0^b+5dk#Nq+zq!1qFa4XhZ?M7?1t|JmcyfG+k8O8#VuUcR%_H(ZY6V%<5f0~e5I zbtLqpqZ7RDI`MTCN4y}04xF!Fj#A%ZZWI4dWpkZFXJhXLzBf*BTg+sQ_Xr71HGwnZ z0jU$CdW`j+U2Efs6}IVrsB9K1v@?rP&)bE34gU}ZPT1+Zni-l(DaAd-kypj)ROi^`4@#)wca}LY3DiKII>{lVfYv zHRGPh{GgcSgh>~A2*e<4I~V_CAZ2o+gAPAx!U1w2avocI|C*lLtaT3NK!jzCOau|5 zFqoy6cQ2yFETA;)klh;jT(uEojuEGY?D|ciTOQWzrtj(Yq32mY)hx4KKNXBCH6n67 z9^wVrv|iNn)x9a91x2%Kmd`#EeAiaN^1dWpg4l7FbYZX}z}8EDhD&V*5sUJps;IFY zW6OWiIIeNe8cEjb2pgTXIgsWsg==?ufUff}CzS1MeU-1~5ZDXtGk#>K!mjhoLH!{m zcyHs8d{$V>surTw0&#Zy4j(&7Hv$B$ak69)L3765M=1W=5j5yqXBm3-5J1p0T)#ok zus-CZe*r=Jzu_tS7Crt`1nn<~+ke!d{t5QVa1Y^SryHUyr|){g^@v7&_S=AR!n6tNfF7z-5s_hBCbLAG+X~@EH2r6vGUL;)vR>6+YRhEYPS{0J` z>@_*z@kTng1dH-tWKGNL%gFlZ;vK(Q>b<>cp?BChL7x>Ij6*sKdxZEn-@ngPaS+~r z6vQSs6Se1I+t+rGNef`FXAaK*k)@8@&N&Zr)xR^BMPi)s_+oo3o!Y-x;$rFf&n^o_ z1R#|A8eeC(JOSA)I1;}WZk8tp2$mfnvy1`MgshAe`WI?K*3s0zoAs|$VB%jEBPc5G zpB~k!1+aJZ>cjcpg`5A0Ao;utuup5nxCKe#5XOzvAZg4(lK5~9s^l>4?3I)+*zi{m zT<1otg?jk_LqSTy$@>~_Kbwa!kTJRihzav*UJ{ZQ_3(=sv1ANz@a_Q~V-&z9GUs7u z4s*|ZqvU^nfT2@>z#(r<5t*&X=NZ6?F>u&Fh90Q7N&W*8T12f{}kK^R=j z9K9eALtd`o$=wMmlW-D@e!eov|3wekpB|hA9w+wIzJ5MGe+n~vdw)?NU16;ic_t7b za?0gY(|U-RjIC>qU-ttSDeSpIWqt=~RXfyJUPAYg=rVziPt=hsxIpn^z;8Yfr)Qpj zN4aZYzdFD9Kj&O>bK`z=Ftg{QN57o00mNy94eK&9({K*&mKr}8!rlvZx?O05#beFN z&osM4p(`ctAbK}j6VzzTR|KiMQcwr3)<6A6vAFmYM-ng~-dX@N;~@y1HPgoVa$&o0 z8suP&u=`6vCSSn_t3DF-fUM%ik;$KAm23~Kjf~MMfF|x$^HPvJsDSTg!*KYQXE}`^ zbEl#aHz)xVwCcrnyG_k=w3WCi9mGPz<3su&Dz}lYqPWnN*TlSI29U~oP{9>6Mjjn= zrQbx7gy9SAdqc2LmH9l3KOD4dgCUYrC&iTV%>GE2)B$!|m!EJM*1aeWXp#?FxZkUt#4NTKmlhf`pvEuyX(AFTCg! ztk$^leqZV{v`hy&xdgOt^>6o(oQM5-Q-%N0(Pg;Ni~=HmwX7k<1oIk!FhSG*Uwc;` z7vuWHCsCGaxRxlIdv6FKB#G*cRQ8aBWDwdA3Q6@!C{mFnTPBi_gi0h$d!e-NG^V1x zW>U>G%R9d_Whr;Kam&s9^_P!n=6#;`dCqgrdCvKs@39SfinHueiSC4b8KiroDxsf7 zPVku>>L~>OoP!ABFtEUU7xQ#t`la{6ZtEAn8#>$N-1?omLu+@&Vv`@{F|nD%sPITg zz{dsF{}vdSaA%g&kPX<4$iNr=Q)%Xs22GaqA!FF~ueakf#=$W@4Ez&vL&BWj&7Tyi znQ1^^yhRcMi0{VIvE>fW0?@S8C#;wY)QH$2aC%xeUUQb9 zZ6=`PKk>;0t62VM!#<6s12a|qa;CdqJo+zvZ?Kf%Bty1C9%^pYv|xYzV0J~_nny3Z z&CUJsTe(F~Q%L`Ji*ye>`Hy1xVY3GtQqQ_SC~(V3G2F;rlE}HI$uTL4So|86o*h zJ?SMrzXWS=Xb>W|Gn_x4A;NAIQVn1j-m`?^9Nu79*9TEFscxtBn*HUZ!@x_Y}s*6*xRnMQ#nt*{$ka zQcdT#=rvcHy*`gjpH+>#Eda+6&-+hg%*P48;>!Y1>Y7^H%D)t4U4YC8glMcj$TAXgy@rjBR7S>DLv;a_&)(n|8i>tq2=+Mns(nfBkS_`jlYT8av;f$cyhTUbluE=P7 z5%$P)!xp#Up0b7B(R0dGf=*L8F9X+R`s){!QFiTEpou@~Z-AE`Cvp@oreqtJYsLXAK>D@^!e_EWm;lm%yX@MUO$o5T4SVnRV*+` z_USh7MxEKK(%nCYGX-kBTP<2o2BdnV!}-r=I`X^^gexMhTLc?|Mbz$1xOD{N6bP#wiqRwgz7UXeflM*RnI~ z+oj+BF4T^{KsF7O+CORfQ(F&TW&&4#5y@$pM<$QXed zJ!oqXLl{UHXfrlp0lw}|V*dHTo_6_$kG28-zccf@ zWz^C|T~x>1HoH)eF?Y>U#Y2ac8{&6vwL!NZ^;XP&HkGt0K`$U5vn5Q&Qj7kWwfE^h zYL&+s;@GzncZK?<4sTQmIz_cJ7-OPsglaZSo)vXqvFfg=Y~)tcB>ReHjSs1WkiOYW zBBT%GgIdxDX(=}Q6WLE1)dP<5a1`0{16;dZtPKLv4jZ~TV(LGUvFwn{Cenrbq+13T z4I}vNefym0VtZx%-kL)J<*66#_>gE<4`_WTm0Og})J-b?T+@Vi<*aYA#V5R2RCufR zs`PcyyX3DN@ApjApe(OUO6B?%IloL~-E&`6ZLM*0jPkEgy*&7X`u`KcNkzMg|@>2w%;`yb}{hIq4~AO z_*0o`eK`^q4U3g*vi+q_RXWUei+O=xyK?KDOr-#;)=JYM%S6JUKUH%-BQ!Ug-#j$- zCGwhbt8tw&)=bd+b#HI~i5zZ+4pJ;#j^n6+R9(RIDd*4#&8&LGI>v-6&M7Tbv08~a z2v^*q7Vi9|{Os+AJHKcQI&yhxocx*P=S=^Il6jN+E<&4JNVtZWy?LfkokyNwzkrq* zJws+-+N37!8(8HO#^8OMUL91s@2+N1GtDl1xcLOi;8&bnm*C^)U(LJA&1%r{7|Bsh zSGCwUZQa~c=F;dMYtfh2t)JCKUJID^{MII)+NZUpn;$pYiO(ypleyWfNUbH`WC|yg zEPlM{fx$$MtFx6Kwg@0&Ufm$9Mr{HA^5kd1SyvPsuy{$g{luTmIt zH(Vk6${+9I@kQlXEA1x+r-<&kYJpCS&vu)HkA*ggbV^6dVEE1D}(iMB=l*}JA| z4Vky{CQjU6wpV1f(sq3E+XIzz_M;~Lz*ro7eUP@YqDlhp)~!`jT+h5deZs+qm+gq2ll*LXN- zprT`m6K|4^bo7u}70G88&ZWKc3()bHmLqyfsC>1Ut@J1YPpLitRrseg_m@1S z|B-Y;mjyS4-Vz34!^|+{E##w?_svfoytZN52%W7XO$x8b$EECEz3FK~&E&GoQq@Iz zLhQ$rP4}v9)fM7wPmgw8nmuMl`OYi)FCn05Z5>3~ztv24zOJrbm9clJerUiF;>)pW zb+P0V>&Iw0ue!46=KIU**6r-e${9NC&hyB#qqu9bb=05j47zwcxLzmJZaP!bZ@&{3v=ay)Xz4kXlspBY&xstRchxvkiL>0ke9LU9w*fz=&HI#hrCT; zcRF@SJ%B2{{&~LGX|*TK<{}HW`{N8m%ob$DE}dGG7;vgsR!4g2b?>w3bViJ>)EcH_ zoB>imzjvrcJyllX{>l7jqnd{YIVHXCOO;1VLu_pc0lStiS9Oq5kFN}ERL{@gXkD{d zD7}b$sQi@Y{qSHh)eK5cJ+NTha(^+?B7WLU2>SpzD{IeeE~ zRapYCG$m?T3!?DuNJz4HTvNj$XL6^s$1Aq{@5kGAe;F0-k4uFFQ0Y*60J7BskWGZ& zBkvuOSBEXouj4u^APs#3#FV3~H$^H|J}*}h0E!eAjVIJkt|T_r@^H@&D$BB68-@t+ zda?Eb(AF(`7`fLUUt)&5t}3@bA~E^Jt^thOMFH5z z>WDw6mM1($?^O=-GVY`NL%Vfs*~af%D}cryyGRk3&bB#V=s|cf|CPTn#~!z(=hLC1dUjapi6Q_$e;=FXuQu230?$yZ$a>*6s&WrM?iF0RRnz z#MmdH`9%|BJ$VIfyL5gwbzLhPUrRPsyp@ly4J!J_ga+5@p?ar&xJNFg@S)Utu_W+N z!DdeXMQvslcQJcO7^g{>U5>ip2xdSDa^)G&XX61$T{DC7J|C&O3OH)}8-;u#`vwF+ z)FFjv>Sjn=I0J~f>5^r0HHneNhfu3$0y16gG{zzTgt}lmx$FT-(F6eX*Pbt7x2_N% zBP%G8y3L}{3g&$l8~VEclP7k;jQ8s%%DdoWkl{iTezUHaDW(=M0rE^UVu8?pIN*uT z#tonmV;uc7v?4AKBfQVA_@GU{0hdt|GOhA%um)L1$F@_x5|`mtI5qY6xtF}d-U{zlQV zx5KCP>PMigWtXj*=AR<@xVg9K%c1*6hia2ZqMQa|@~T`NrStn~XsQ+`UUJS>89T!J zbabj#+8XE9zc05Qwy_N0Q)-g$hZyzgif>+Uod_)nV&-gT$MbL=3!Zq?`Dt2sOI_z) z;`8)=7<=eG?NwbokFUO4BQY6PVQWyVw2O$J)rDoK-#T<4)*Lig8LfuOtt%smHDEG; zbl{_URiYJAE8j4-6dP^;Z?0M+)IhjX!ACh}_E47McWSsDtKL<+~t z=0YguuqBwqh5?~Kv$qHvf1Z$GB_N|M0mJPALysPr_fuHbcnbF z;c(>SbCYJ}kD6Z5cZ=H`QFrH|XDuBsreS|hLrk`d&Lh3aJ+kGJZkVTb*y)Msx8xY9 zuZ~+g^d1^HYuv;j>VP|HQ74movmlMf(kx>}-s z?rR<_YLQ zpY@B$s-T^ZnP7z!Hv7spw+bY*214%RuHp*@yQy1~SYEDXy7yQrx+5ngz(DF^4Pd^{_ z`R5-$RA>_LVY`7oev^=AtH2em0nY-g!4a94YEFf^%|`@}j)&2|e5I*=>C@2~_7-;U z;WIoh@3-JKG~Ki=c^RVQX2w*)Wm%}5~LLhnP+%(J$>KTT$uC0fOOmvMuCmFdH zV%bcC>k8Qd8**S~6Mj4LZX@@IFPeJf%bl4djoD3VzYLu*&yVu*@ikKvj$Rz*I@W*Z z=**fz?u0j1QV`r{8@OGXGg0+UI7v4)do=yjk_I(KyK}|QhIhW*{U`e1@60}wIDl1` z)QFV7Vc1Ky>aD`f|DfVeeQmREj?9=$FZQ%Tk(@Hw=j&4lq0l+#=ekdwxQ!wXfz%Y7 znL(V{IUm>k=vz-7ZYO)i0r4Gnne0ExFRJCnRORp3_WK3k#;#2$b6XHK|553xnU)7B zL+K>FFWt&lWnJz$cIK-~9^=gRQE+Y?3*O2g;WsW`nf#_gOiK+YMVlB}j_?=b2#`+x z|A4E;3479ScyF=4woWN)fc*Fqy|m|Zi*p)wDUGk_x4Ja$jj4fI_VK+F7f>fj=r-@m z$LfX_jx6~tGX0(IQQ8Xj40%!?QxoQB0$7czRiwi6SIXmQcLxNs6TmSVbd`tOOJvva zaDlpPtHEy>1Gsw8`?+u}>8tKsp}=MEa5=v0eeee~T9V~|=sk209B7ZvX#I&!Q?1+! z$S@uvRGt$}g?5B<8juBO9T^KH6y}kjAHvFe>L_$g#9w7Cf{-aN3*N+D$2HqiXqwy= zQO$yf!8a}vE`tt+zq1I}$qWiKclD@wrR()dz!;B63XhQNiFgupNOUT90KuT3TyrFB zmpXALIeVg{fY0}F2JvvWR}+wkcXs+$%~<-Eb+;Z_uM+P`HaR~ zyZr3v{nIJ+Qwm#)i3}cL)9o&!{1zYEAYdsVS{~9jgSiFJz>puRs%^;|7r&#_);FsA zI-``06)eIWg9L(qpT8En^_+eg?iu3y8Rp3XA0)1DlvqE6ghkf!>lJ5g z$LbXHDjpr+Hp!5#HjJ`c!?O7Wq2vEQke-eSi+m!nz8{fQ9$LE@No*#JkEhfIWYOAE z%Lm;>rI1;zogr=ul$0B?I#d$p$X1{wd*Z@v9p zCK;Ovby-|Qv)r6{y7Bj((#&oQA^Sc#Y4KGATOZ;F>l3+oPNJUI4;6 z{5ufV|4%`wj$D?%6z^ zuKoP0k6iVBL9Eb59cP99|EW;xm{w^gD4&eaNBZz~SD(<&ZB^S`efr?mGc6$eW&(mz zNaFSjNJ>Fo->@I1iE(u^8`PbHjv;!V(b>3>WQheBTbSJeEDhX&wjl8=$U_NW7h5_(|a9r2U@(Nhyl%L1{<6PjiSq{v>&F0 z@on;Lt{k_KH88bDJIp6>ZGx5is^u(;zB!p zpcD^!1V|cJ9IyhG8m0XzBsQeI@A{{e66>Q9kY^KZM3rklTSA-nFizP*7_^cj!GXN-gm z^q?5lFGry2Axs16yuV8d{;kP>d)z68>%6evTvD3=W5ltUnGl!Cg1XHe2bIbH(qZ}b zbie12Zm_XjcV_iVHc4u^( z%gOL2j9>6Y5^N}jXG8o5`N}WY@uk;L`ktE76`|;<`d4eDsjHsqUJ1ny%QM4dgWXvp zwqN(mFmfI5HegGpk3y;@af#m0zDveGA@tJ`TIDykA|RmQae89$xUyww`RkJKbFcR0 z$~@H1%zJlEYI(-uOKkI{1>4KG^(2mwK}fx9-raIy%`v208g4yyP$ns(L?Ck9&SH&E}>-eXK%Y_dB#R^}Nx4PSE%Eg$jm*E+~){ATh6 z(WVG;gBZ9wk%PfV_>!J^dGO}>miP+*2WF4<&Kr-QxbqkcQj2l;X-zcrzMw1vZq{> zaKx>7xUhwWLr0~0Bb%43U4$OVJ>@o|-mc2P#M<xm<^C<~<;O*vw$P$00xO-c zLb%b!uYgODH@Dg@gk1K@;Vm}Lq{*0;yZwMZp$W=knBkLLd##q zaj%3>Si>6?*i~>5(g_RXRIB^J)s8eDp?>WzM5algB6f7rB8&z1xb&JTbTP&dd*uSIH^-pW!5JflbQl9 zMox>EWESi%ewJ!-AX6ucBGe#0IX613YM|tmcTHwSZ%Y@1dV{Yu+7jGSzrL1hSmfzRR3sv!owBpi9bv(a3 zwVD`SkAiFsCLNX<556$~ly#J>moo>wAeNX!th({XUqg+Z8L~Wve2Q4!Iv1~FRff-F zL#ma+J$e^3U*7TQefNX+-7(0)ibnw#0CXp&AWTC2;$Junbau(q8k8TVL5mfOEcCh*vGG@HQo@Gd^Ro%zU`?{yS`)2~Ta%uAS!c+F z1Ya&jU1-p)PKQ)CIu8J(Wi2`*jXCHUk$Hk~J1eeTQVrMgzs`gQCeS502lptj7^k6i zpwcvcj;w_JJNj(GV~~y%zH}HLWs1|G9kW`;rK2ZB))~_AQEMQUKLPmLoQWj-H^#4+#bhsqx?O8?pZ@lM4db= z8-6%a9a9{Ff?g3=3R*wkn#h2XNh<>_g5$`u*o*^D%>{M$>&)V}-PnxTc4O`k78!t8 zFxOaPqiuAm-I3xf2z75XByoGq;wz3#WS3O`st+wq+N+N#cFQ4v(^!n=`2 z#JH9M>XmEGZwBc(>*%0gD;EN+JmL$Z9F zFs~=D@nd4)TocGpm2Dd)zhM%iTVNH1^`ohI9c`2rpKEwYWvoQ{=q(Zz19o|dlKlq8 zB}|>KKjp!hOFDjNtT9IgJcISO0ObIPp7?D09cnJDGqIR7ftt$g)u_uZR=_5E1Sa0I zU$_w}T|8)In4_&fmo5n@N}ZgNJaxY*JlxSlCO`ugnAzXUimbIm4JhQlDy(_)~f@eSvLr@JZSEOmP_6SOdU$MhN(DJ>fxE&P-moJ zKsKQA$jor{Fq!Da@y?tXNGyrfr;@~oBXW!gh8`O_XVMo=1v%tW@RrjLJTYxZSvLLH z!G&7x02{E7l!>uXA?Y!d;|mPjRS~n|CBwt=Cr3{hiHq%hNMhQo65&Zei%ocToY z=I!4FL*ax|Xo%+7X+m(phD;lR(x2nhV~Yu_0rAkt(3gjEUnbN<0QSDL^$MIm1kUb*_<}G&0|3gBGf;aShcrmS9t-L4a3g($tJVJi>4_jR`yK$pEwTp ztzn~wsRLQY;j7L~A#2#UvT9%diw7(L;@DN=b=_+Uzi^n5Uljld$CSypM!HOIo^~y7 zvd&18{fTeatYVG`#Ji0k1V6n3{+>w0gf#PA@goi`xxGDh5WB1{LeG!(J7lm59NKNd zDqsixIlJ&rRz(aycs28&nZ(k-K{9*Dge}6Dp&Z**2*}MC6QO=lQPJG!r?%?noDZ7r=@Hx=C zzee~%Fn3;=&D1la%OuDXhOF1x`LHx(#h80*WM3+VhFvxhRvLW6@3G&k2S@L#O6zb> zat7@iRT$}S6KV8{?&f2y^ZUL#kpaS6TrVn-sqS_Iz+f3tl2A8=+fnL|mmySl)z*(P zIi{>T!c}L5vEe0A;na40$wI}V4 z@U{)#V~hW#GaMDp7xmHMJFy&BWXt1d_BgBoL>&;<-NHlpo>dWw=V%4zW=63})B^{P z3*F`sEObT3zHzAfFeBucj22ryze<;Oe=TK&`;b|H@*N+Bf0@Lt8#)|yl-lGl!(O)C z;eI%!%e=1dd8fZ|_BPsFNsJSYWu2N8GH*W~RB#Q(#cfYCE*=H$;b5C^eDfZ@1Bv_} zbzthuECX(tC_<$)N>Tvdw+F8G;y7yog-v~Mc5~RS>S3eeu z_G)uY5kAbkyq75)Cz_E?K7aETEqEbOO7(OTR5f`nBQ*^q!4=RwIF{2lb1*%)!d&1m zz#HC^i26IewGM)zIxHdz>>Za)Wk$(7fS`X!mB-Mun&?I~*Cx2ndoJ>`-^|0MyRD^0 z_BP=MZIpIceXc|QRBJ4%1~Mo+;}Qh(pnh}+p!U+*R{DMTo=}wC%GnMwHiubjmER8? z>M+bqr$py0_S~4z|4&9F{8+=?7f+L2tecQ}y~_BqfJ^dMf`&bbs5YmNU&q~{cyfp3 zLym1pVtU$`+CGCQ&IbYE`sS0j;+sbo806@3hiBiFexq#@I*!;BIm2Gu@N%?(pj4_6nv`;b4^vOYj*P-tPyeJ=+USt|iSd~pMQd>Dwh)L5tSDYrRYLJk6H9%mVs6%m4yb?2J7wtt{ zB6c|yI~?i_T`ba>=~37VUqZiXZtZA4%zSJqB8VzFddkPWqWV3FL%EWtbC2hoGe7v>2B@Ci;;_T;2~vUuEUuR64q zERHeS1%QE5w zO3(7se4`m>w~f{7;nen7?3VutzO?jUZhx|Pv|1KtY{BFf%hDIKp zs$?J_vG|a&85vZaHI+tM$k>F^v#&WvIlD0P>-OAo=_mlE2XXt8W#fbDKxnsGeA1}_ z>y)ET+$Tz_9}RrDK|m~{>@K-%R92k$t^*-WBSTVN`G;!!b z-FB&Le7vu;_ejxB_ejSxi+4fJR|mTc3?X~&1aQO(@tk>9l;C|F&+UW?fW!n2fnI7Y zV69Cb-Ox5SpW%WziF!gE{|V`kW0votosKtYFC7~kQYdh1M*XqpA!eK`54U6q&iV%)(~%j7p5g31g^y7fE*^``$=JtQrH_ehcgFsl%EOt+ z&7m2_Y`6zKefJ*#z@dr1&YQVlZVMw?-^_G#XU|CjjjNYyn$4-g!YO3#jD@)Jj=aKG z7O^8g6;;oWXQMhYM*HdUds5HGVv%Gry?GA>yQDN_7NJEl z=6_oxeq7{Q=dp*!U_&(}8}_w9XP>NZiVXDJ-j*yznr!*i|fsuDGy zh=#b44w8mrqnL}RIV9hzf~*-{_q-Ga4?g9!3DMN*fB(d`yiMa?>V@k7oyB6iv4>BF zKl0*6;orxb(+AcXH?CrZ?Uc&3d=M7fUCJ+v${y z8vC+{UUOyjjU!@jaO<@_%xSvo^b-dSTYN9`Si|jOd zeX3j0$h51>CB+q+GT-PdQJ*{f_axO-`jH|QnoO4@t~W>R>MJ|oy3DMgEs%{KyXNF? zs9i&a-8gx>ZB0RKmJtx3(2njOuj7xs#n<-?nuRGJwNnq*Je#>e^ko<(RJ6IJ4ew7A zj81r=;o_~bwOopa+geysE#dH{>Rn(<%j7PV=}wq>yYnMVqETQkaum;HZjh_-B1X+# zoF$aj#Rsz!UShb694*y3civ<98-<6&?5YXx!7b?iN4wpj7|AIbL4)wm=qA?|1@&^* zJv4QGxvy#CEv?_dS&Js2 zp}Datdo25#6@)okpM?&%3sg%FslA-{L}RwW=@T;9DK4&iO)F!U$ltI+@#M`2zH0rD zd)cb`O|Fv`zFqXJ*U2X$B_|GDcRI1kn#M5LdUooJv)9~XhblPYPO4>iw0xq8uU>L(Z;mLJ zJ>A|QS^eRYL8Lsd`89WfxNM|kQDvkts~B7E-!vwJZLt7KJUy7{jl?PZ&&ag6i0!!!B8$VaA>CMWpAx>ExLW!{}q=`nc z2qzpSnHFdVNV2By(%o}7>V<~zO%>5YI!bPRQsfnVe`_|jb_n%9qN*Y_(c*?7RbzR* z#G$8(&w#k38(OJnk+W>}&2^&69e?Mn>o{s+{qWy=JJ8!)wV`)qkaNgvk0WbUgDYtB zOLr&xkiz*9nE=i<2BEDTzR^AH@PIf_KrAM@VoT=s=z;2e=d|<-CdLAR6p74DbrK21rT_ zJC5|~&%;Tp6@>O=E(JlxI?%DFli_qfCK|f=x&lQb^edu)Pb4?X7ES(AG|>DfAQ~P& zEE+wD%kHN&zF#y_1&M}bi)ggh8b#lsHG1-vJ)+?w7z)#qwCoX$uZTuZ((>0A4bj9l z2IXvv8%lOL(dugaxIO7XX8-z&QlA_E&-%U8OjBq8q=Ca6Bqg`pMGKnE{U7#NgT|*UTs)5pv>~pM`~7 z{`J{oFATb0_Uz?wr-f%c4?SAtYPDDA9%;DE{5`oLR36R}LdA4_f7JsQ>KEOkFc(Ms z0mUjJmv}hGoqUvyRpO)Fi|(N@CT}3?ds55AmT(Pw#Sf5w`)GSYxp~9!S%q0;c;2Fa{KEoR3cR+>z?5};!;eTJo z3&uRj@0Z&8{lVB^R0K^+1eVA*>kw#aN3WH6X>@|{8#6OH_4+J-myiVYJ>*`szu8o%3lQU_@(~d147&UA_M{xx1YBDI5}FSuZ{K-L!iRt?yu7|S0 zM-0y4=fm=|*HrLZ{=AirrYpPINwLN}=O5Kg#&3*bbXmY9X#TGWncxNKo}WfvN{EyI z-F-2;^^m%bcSJ0lM@-X6*!SUp6v1C9(P+ce3Y0kl6uTr}u?Kr?==u0BYho-Kiz(5} zHSNi9vo^hBm7aJVGfm7{w2p7Fp0!$y0UxbKQmfTayZl5HjLHA)$HUjlfsr82iJS*o zF4_3afJX~dJ(_NodF(9pGT!&^7`T7IrgnVD6E(&Ok>d7axr5`@8Y>z;$4Tz=T%Z}% zd`l&v(0$6;CPWF@@*=3DE%Mjxz0mx zo$Bb@^4AipOZJ-~F;9o}-689_dQ-1?24c_m28jtJam;UW`d+M}m^{f5*z`*fH$*0P z8b;yaZmz!yFf4@CfJ4FPXDNV_P9|_|aR?x!DVXomtn8)5Xe`13#Q9Z2 z{$GOme<7}N-e|wWe-}a}@ojHf;2o6m4EnRaMFKSMVPSfYNVHV4s4nMucp{fW0`7!nm4POOn;fgM>wY+a9WAEr7r6p%r1qiT%2m=RCizGn5JzRx_jZFmmwRKnF8 z_h?4F>G}jc6Kq7;n^bQ9i{#HQim%!;+nJ-78ckviRYKX#2(Uc+et1)866*l>F2VD7 zPc!-JJYdO4PROShQqlReII8^H;8k6N5Bp_pzjl<<=b?u*whk@XWk2YImz!GHgfgM* zp3U%w$Hbu7J>ow&Vk#>YkT|G0VKAb=k?uVvBHS~m|$RZREd z1G8!gv{Xa{E!P8|u&xv^#zt*+`&&O)`SAz4KgbP)4UX<-DuSfl2x^tIk~2Shoxgi0 z|FSU&X;22p!#QOZEUsr7uG$o4(7&(e4p(^`6qNZXA9db1QGe;X)GtKV57v^|o zIKHy|iTb=US3ax^P|$xmgPr}0udV)HUiGiC0&0w}Gh#oSRNK~*>iXr0{4895^Mi!k z*2T_HCi)j;f4!i6DRw!u`@X`qa2HGt4-d52(^tehkJ)tle?W010fP ze!u(VeDw!{6s=SrhzcP76z4dU<9Yfb0=)l~VYcw0<=HKhIV^b}PoWIty<5r>hUm_MEr)(B@0Rr?A&bN1Zp=-1bf( zwVLryTJ*Dz^QEHb_U7fQhos9~k;m@py*T3@&_}t1(Q5BYJq;;6;<+L2(7_GPsa8ui z`p6x>1U>>OaJjTS ztMhRLfe!4q9LG-*_rastJs!-LrPG6X6_Q69ZM=^TjZNOmeiI39uP``|-d-^t;x;H1 z^FCmFtzyjalqZ791GR5}5~wQAHL zCY^+lCzBhjmWgWql~t5aZd*)h7BaFo2L57KjZp#^LHRt8R_|drGq{(7BV3*YC3*tL zpn!-ND)`Bj3gjxR3Z^B6D;K~`+#eT3*X6h};I5y_I*y}!T=@0 z!t33cef3}!u;H*b2Hc2sunG(xi9=uHfm>i%5@vIr#}P6ie|_iZlbZjLKA{XpW|?w>M_9`Ihs2i-wgQ-K`f zD@*DCBW_2k5>W04ppO;6r38B~l*-)4)nahb*Jyd{SEQjc`{VHkL~r;*GrWF0-1)Dp zs9?184?^2|cCnRIx|{6c4}#EocClOS;t#^bdUml}?cxvOx_Wl8TkYZx;;(vkv0Lrp z57vV9>|(dt#UH#__UvM}+QlC%vFh2yZncX&_r?Fht-t5K_+Qw?p8Mi|VHeZcCfG0? z7xW24I_;n^0w^rk$ozrT052uVybYw4n{AxgeA>%sfalxvQUWWl6DIV%tfI@Vl$3Px#FR+jz z9DQIY{r7&ok?CBl;4(VHd(C$GyBHhI0)3>&M?CevuvKwLs~Af0#c|lD?-KdD`^yahmMPiMZ}Iy9qGx+h`8%J|T{K24T{4b1aDneD*-4T8 zJeYV!*020FUu=S~1QE7M{m;p>xiu+^`r s@WqG&IokBz7e}$C6;ge6I%rm4jks-caUKJ!iRUOjm@wb95as3n54!d2Z2$lO literal 0 HcmV?d00001 diff --git a/src/Dynamic_Programming/image/Monotone_optimization/convex_2.JPG b/src/Dynamic_Programming/image/Monotone_optimization/convex_2.JPG new file mode 100644 index 0000000000000000000000000000000000000000..5431f93b4896e62dd54e5ffe36a1ac2434455037 GIT binary patch literal 129944 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 Date: Thu, 10 Aug 2023 16:57:51 +0800 Subject: [PATCH 2/2] Fix some typo --- src/Dynamic_Programming/Knuth_optimization.md | 69 +++++++++---------- 1 file changed, 31 insertions(+), 38 deletions(-) diff --git a/src/Dynamic_Programming/Knuth_optimization.md b/src/Dynamic_Programming/Knuth_optimization.md index 3860a101..2f1758ab 100644 --- a/src/Dynamic_Programming/Knuth_optimization.md +++ b/src/Dynamic_Programming/Knuth_optimization.md @@ -1,20 +1,16 @@ - -# Knuth Optimization +# Knuth's Optimization 動態規劃解決問題的效率取決於以下因素:\\[時間複雜度 = 狀態總數\times 每個狀態轉移的狀態數\times 每次轉移時間\\] -要優化 DP 算法可以從以上 3 種下手,本文要介紹的 Knuth's Optimization 是透過減少**每個狀態轉移的狀態數**來加速 DP。 -Knuth's optimization 通常用於解決具有以下形式轉移的 2D/1D 問題: +要優化 DP 算法可以從以上 3 種下手,本文要介紹的 Knuth's Optimization 是透過減少**每個狀態轉移的狀態數**來加速 DP。Knuth's optimization 通常用於解決具有以下形式轉移的 2D/1D 問題: -> 要求的是一個二維函數 \\(dp(i,j)\\): -> \\[ dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min} \\{dp(i,k)+dp(k+1,j)\\}, \forall 1\le i\lt j\le n\\] +> 要求的是一個二維函數 \\(dp(i,j)\\):> \\[ dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min} \\{dp(i,k)+dp(k+1,j)\\}, \forall 1\le i\lt j\le n\\] -其中 \\(w(i,j)\\) 為一可在 \\(O(1)\\) 時間求得的代價函數,我們知道這問題有 \\(O(n^3)\\) 的做法,而我們可以利用Knuth's Optimization 來加速到 \\(O(n^2)\\)。 +其中 \\(w(i,j)\\) 為一可在 \\(O(1)\\) 時間求得的代價函數,我們知道這問題有 \\(O(n^3)\\) 的做法,而我們可以利用 Knuth's Optimization 來加速到 \\(O(n^2)\\)。 -- Note : \\(x\\)D/\\(y\\)D 問題是指有 \\(N^x\\) 子問題,每個子問題需 \\(N^y\\) 子問題轉移,因此有時間複雜度為\\(O(N^{x+y})\\) 的DP做法。 +- Note : \\(x\\)D/\\(y\\)D 問題是指有 \\(N^x\\) 子問題,每個子問題需 \\(N^y\\) 子問題轉移,因此有時間複雜度為\\(O(N^{x+y})\\) 的 DP 做法。 -Knuth's Optimization 的應用可說是非常簡單,以[Atcoder DP contest-Slime](https://atcoder.jp/contests/dp/tasks/dp_n)為例,我們可以列出這個 DP 式(在此就不詳細解釋細節): -\\[dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min}\\{dp(i,k)+dp(k+1,j)\\}\\] +Knuth's Optimization 的應用可說是非常簡單,以 [Atcoder DP contest-Slime](https://atcoder.jp/contests/dp/tasks/dp_n) 為例,我們可以列出這個 DP 式(在此就不詳細解釋細節):\\[dp(i,j) = w(i,j) + \underset{i\le k\lt j}{min}\\{dp(i,k)+dp(k+1,j)\\}\\] 可用下面這段 \\(O(n^3)\\) 的程式片段求出答案 \\(dp(1,n)\\) @@ -39,7 +35,7 @@ for(int len=2;len<=n;len++) } ``` -若我們知道這題可套用 Knuth's Optimization 要運用... +若我們知道這題可套用 Knuth's Optimization 要運用…… 只需將 **\\(i\le k\lt j\\)** 換成 \\(opt\[i][j-1]\le k\le opt\[i+1][j]\\) 就好! @@ -89,18 +85,18 @@ Knuth's Optimization 告訴我們,當 DP 的代價函數 \\(w\\) 滿足**四 若有多個點取最大的即可,當代價函數 \\( w(i,j) \\) 滿足以下條件時 - 令 \\( a\le b\le c\le d \\) -- 區間單調性: \\( w(b,c) \le w(a,d) \\) -- 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) +- 區間單調性:\\( w(b,c) \le w(a,d) \\) +- 凸四邊形不等式:\\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) -我們可以證明 \\( opt(i,j-1) \le opt(i,j) \le opt(i+1,j)\\) ,即轉移點有單調性。 +我們可以證明 \\( opt(i,j-1) \le opt(i,j) \le opt(i+1,j)\\),即轉移點有單調性。 ### Prove 轉移點單調 > 若代價函數 \\( w(i,j) \\) 滿足 > > - 令 \\( a\le b\le c\le d \\) -> - 區間單調性: \\( w(b,c) \le w(a,d) \\) -> - 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) +> - 區間單調性:\\( w(b,c) \le w(a,d) \\) +> - 凸四邊形不等式:\\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) > > 則 \\(opt(i,j-1) \le opt(i,j) \le opt(i+1,j) \\)。 @@ -156,7 +152,7 @@ opt_{i+2,j+1} \le opt_{i+2,j+2} \le opt_{i+3,j+2}\\\\ -\\[ 計算每塊綠色格子只需左邊與下方黃色格子的opt\\] +\\[ 計算每塊綠色格子只需左邊與下方黃色格子的 opt\\] 以下為程式碼片段 @@ -207,10 +203,10 @@ void solve(int n) \\[dp(i,j) = cost(i,j) + \underset{i\le k\lt j}{min} \\{dp(i,k)+dp(k+1,j)\\} \\] 原題 \\(n\le 400\\) 可在 \\(O(n^3)\\) 時間解決,但現在 \\(n\le 3000\\) 不夠快! -所以我們嘗試優化DP,觀察到代價函數顯然滿足 +所以我們嘗試優化 DP,觀察到代價函數顯然滿足 -1. 區間單調性: \\( w(b,c) \le w(a,d) \\),小區間的總和必小於大區間。 -2. 四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),左式必等於右式。 +1. 區間單調性:\\( w(b,c) \le w(a,d) \\),小區間的總和必小於大區間。 +2. 四邊形不等式:\\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),左式必等於右式。 因此可套用 Knuth's optimization 在 \\(O(n^2)\\) 時間內解決。 @@ -276,7 +272,7 @@ int main() -> [TIOJ - 郵局設置問題EXTREME](https://tioj.ck.tp.edu.tw/problems/1449) +> [TIOJ - 郵局設置問題 EXTREME](https://tioj.ck.tp.edu.tw/problems/1449) > > 在數線上有 \\(N\\) 棟房子,現在想將其中 \\(M\\) 棟改建成郵局,使得每棟房子到最近郵局距離總和最小,問距離總和最小為何? > @@ -290,7 +286,7 @@ int main() \\[ w(i,j) = w(i,j-1) + x(j) - x( \lfloor \frac{i+j}{2}\rfloor ) \\] -可以花 \\(O(N^2) \\) 預處理好 \\( w(i,j) \\) 。 +可以花 \\(O(N^2) \\) 預處理好 \\( w(i,j) \\)。 接下來考慮有多個郵局的情況,令 \\( dp(i,j) \\) 為用 \\(j\\) 個郵局覆蓋 \\( [1,i] \\) 區間的最小和,可以得出以下轉移式: @@ -300,11 +296,11 @@ int main() ### Prove -我們要證 \\( dp(i,j) \\) 滿足套用 Knuth’s Optimization 的條件,只需證明代價函數 \\( w(i,j) \\) 滿足: +我們要證 \\( dp(i,j) \\) 滿足套用 Knuth's Optimization 的條件,只需證明代價函數 \\( w(i,j) \\) 滿足 > - 令 \\( a\le b\le c\le d \\) -> - 區間單調性: \\( w(b,c) \le w(a,d) \\) -> - 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) +> - 區間單調性:\\( w(b,c) \le w(a,d) \\) +> - 凸四邊形不等式:\\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\) 1. 區間單調性 \\( w(b,c) \le w(a,d) \\) 很直觀,只用一間郵局處理大範圍的花費不可能少於小範圍的花費。 @@ -322,7 +318,7 @@ int main() 若函數不滿足四邊形不等式,\\( x(\lfloor \frac{i+j}{2}\rfloor +1) \ge x(\lfloor \frac{i+j+1}{2}\rfloor ) \\) 也不會成立,而這與 \\( x(i+1) \ge x(i) \\) 矛盾,因此 \\(w\\) 滿足四邊形不等式。 -所以本題可以套用 Knuth’s Optimization,會有轉移點單調 \\(opt(i,j-1) \le opt(i,j) \le opt(i+1,j) \\) +所以本題可以套用 Knuth's Optimization,會有轉移點單調 \\(opt(i,j-1) \le opt(i,j) \le opt(i+1,j) \\) @@ -405,7 +401,7 @@ int main() > > 顯然 \\( w(a,c)+w(b,d) = w(a,d) + w(b,c),\\) \\(\forall a \le b \le c \le d\\) -觀察可發現代價函數滿足四邊形不等式,因此可直接套用 Knuth Optimization 解決。 +觀察可發現代價函數滿足四邊形不等式,因此可直接套用 Knuth's Optimization 解決。 @@ -413,8 +409,7 @@ int main() > > 有一包含 \\(n\\) 個相異元素的集合 \\(S = (e_1, e_2, \dots , e_n)\\),保證 \\(e_1\lt e_2\lt \dots \lt e_n\\),把 \\(S\\) 的元素建一顆二元搜尋樹,希望查詢頻率愈高的元素離樹根愈近。 > -> 訪問樹中元素 \\(e_i\\) 的成本 \\(cost(e_i)\\) 為該元素到樹根的路徑邊數。給定各元素的查詢次數 \\(f(e_1), f(e_2), \dots , f(e_n)\\),定義一顆二元搜尋樹的總成本是: -> \\[f(e_1)*cost(e_1) + f(e_2)*cost(e_2) + \dots + f(e_n)*cost(e_n)\\] +> 訪問樹中元素 \\(e_i\\) 的成本 \\(cost(e_i)\\) 為該元素到樹根的路徑邊數。給定各元素的查詢次數 \\(f(e_1), f(e_2), \dots , f(e_n)\\),定義一顆二元搜尋樹的總成本是:> \\[f(e_1)*cost(e_1) + f(e_2)*cost(e_2) + \dots + f(e_n)*cost(e_n)\\] > > 問最佳搜尋樹的最小成本為何? > @@ -426,11 +421,10 @@ int main() 觀察到一顆最佳搜尋樹的左右子樹也必定會是最佳搜尋樹(如子樹不為空),我們可以用這個最佳子結構的性質設計 DP 求解。 -若定義 \\(dp(i,j)\\) 代表建一顆BST包含區間 \\([i,j]\\) 元素的最小成本,將其以 \\(k\\) 為根結點,左右子樹為 \\([i, k-1], [k+1,j]\\) 兩顆BST即可遞迴求解, 轉移式: -\\[dp(i,j) = \underset{i\le k\le j}{min}\\{dp(i,k-1) + dp(k+1,j) + w(i,j) - f(k)\\}\\] +若定義 \\(dp(i,j)\\) 代表建一顆 BST 包含區間 \\([i,j]\\) 元素的最小成本,將其以 \\(k\\) 為根結點,左右子樹為 \\([i, k-1], [k+1,j]\\) 兩顆 BST 即可遞迴求解,轉移式:\\[dp(i,j) = \underset{i\le k\le j}{min}\\{dp(i,k-1) + dp(k+1,j) + w(i,j) - f(k)\\}\\] \\(w(i,j)\\) 是區間和,這樣就是一個經典的區間 DP,\\(O(n^3)\\)。 -而我們知道代價函數 \\( w(i,j) \\) (區間和)會滿足Knuth's Optimization 的條件,因此可優化到 \\(O(n^2)\\)。 +而我們知道代價函數 \\( w(i,j) \\) (區間和)會滿足 Knuth's Optimization 的條件,因此可優化到 \\(O(n^2)\\)。 > [CF321E - Ciel and Gondolas](https://codeforces.com/contest/321/problem/E) @@ -442,8 +436,7 @@ int main()

Hint -首先想想動態規劃,應該很容易列出這個轉移式: -\\[dp\[i]\[j] = \underset{1\le k\lt i}{min} \\{dp\[k][j-1] + cost(k+1, i)\\}\\] +首先想想動態規劃,應該很容易列出這個轉移式:\\[dp\[i]\[j] = \underset{1\le k\lt i}{min} \\{dp\[k][j-1] + cost(k+1, i)\\}\\] \\(dp\[i][j]\\) 為將前 \\(i\\) 個人分成 \\(j\\) 組的最小值,\\(cost(l,r)\\) 為將編號 \\([l,r]\\) 的人放在同一組會產生的不和諧度,可用前綴和預處理好,\\(dp\[n][m]\\) 即為答案。 但這個 DP 複雜度為 \\(O(n^2m)\\),太慢了! @@ -452,8 +445,8 @@ int main() > 若令 \\( a\le b\le c\le d \\) > -> 1. 區間單調性: \\( w(b,c) \le w(a,d) \\),大區間的不和諧度必大於等於小區間。 -> 2. 凸四邊形不等式: \\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),等號必成立(參考下圖) +> 1. 區間單調性:\\( w(b,c) \le w(a,d) \\),大區間的不和諧度必大於等於小區間。 +> 2. 凸四邊形不等式:\\( w(a,c) + w(b,d) \le w(a,d) + w(b,c)\\),等號必成立(參考下圖) > >
@@ -463,10 +456,10 @@ int main() - [Efficient Dynamic Programming Using Quadrangle Inequalities](https://dl.acm.org/doi/pdf/10.1145/800141.804691) - [樹與 DP 進階](https://tioj.ck.tp.edu.tw/uploads/attachment/11/54/7.pdf) - [建中資培講義](http://pisces.ck.tp.edu.tw/~peng/index.php?action=showfile&file=fcaa846ddcba22c1c63777723152ba9492a9f2218) -- [Knuth’s Optimization in Dynamic Programming](https://www.geeksforgeeks.org/knuths-optimization-in-dynamic-programming/) +- [Knuth's Optimization in Dynamic Programming](https://www.geeksforgeeks.org/knuths-optimization-in-dynamic-programming/) - [Knuth's Optimization - CP Algorithms](https://cp-algorithms.com/dynamic_programming/knuth-optimization.html) - [【学习笔记】动态规划—各种 DP 优化](https://www.cnblogs.com/Xing-Ling/p/11317315.html) -- [chino's blog-優化之四邊形不等式優化](http://www.chino.taipei/code-2016-0402Algorithm-DP優化之四邊形不等式優化/) +- [chino's blog- 優化之四邊形不等式優化](http://www.chino.taipei/code-2016-0402Algorithm-DP優化之四邊形不等式優化/) - [Kevin Zhang's 四邊形優化 slide](https://slides.com/kevin_zhang/deck-8c1c8e) - IOIC 講義 - IONC 講義