From 01a2e31203b548f63a793b0fd975786cb1f23b79 Mon Sep 17 00:00:00 2001 From: Yudong Jin Date: Wed, 1 May 2024 05:56:35 +0800 Subject: [PATCH] Add the initial translation of chapter "sorting" (#1321) --- .../bubble_operation_step1.png | Bin 0 -> 11251 bytes .../bubble_operation_step2.png | Bin 0 -> 12772 bytes .../bubble_operation_step3.png | Bin 0 -> 12662 bytes .../bubble_operation_step4.png | Bin 0 -> 12581 bytes .../bubble_operation_step5.png | Bin 0 -> 11032 bytes .../bubble_operation_step6.png | Bin 0 -> 12775 bytes .../bubble_operation_step7.png | Bin 0 -> 11740 bytes .../bubble_sort_overview.png | Bin 0 -> 27110 bytes en/docs/chapter_sorting/bubble_sort.md | 59 +++++++++++ .../bucket_sort_overview.png | Bin 0 -> 43157 bytes .../scatter_in_buckets_distribution.png | Bin 0 -> 17639 bytes .../scatter_in_buckets_recursively.png | Bin 0 -> 37145 bytes en/docs/chapter_sorting/bucket_sort.md | 46 ++++++++ .../counting_sort_overview.png | Bin 0 -> 30527 bytes .../counting_sort_step1.png | Bin 0 -> 21734 bytes .../counting_sort_step2.png | Bin 0 -> 21000 bytes .../counting_sort_step3.png | Bin 0 -> 25992 bytes .../counting_sort_step4.png | Bin 0 -> 25860 bytes .../counting_sort_step5.png | Bin 0 -> 26026 bytes .../counting_sort_step6.png | Bin 0 -> 26126 bytes .../counting_sort_step7.png | Bin 0 -> 21272 bytes .../counting_sort_step8.png | Bin 0 -> 16518 bytes en/docs/chapter_sorting/counting_sort.md | 86 +++++++++++++++ .../heap_sort.assets/heap_sort_step1.png | Bin 0 -> 23764 bytes .../heap_sort.assets/heap_sort_step10.png | Bin 0 -> 18100 bytes .../heap_sort.assets/heap_sort_step11.png | Bin 0 -> 19456 bytes .../heap_sort.assets/heap_sort_step12.png | Bin 0 -> 21022 bytes .../heap_sort.assets/heap_sort_step2.png | Bin 0 -> 20697 bytes .../heap_sort.assets/heap_sort_step3.png | Bin 0 -> 22261 bytes .../heap_sort.assets/heap_sort_step4.png | Bin 0 -> 20159 bytes .../heap_sort.assets/heap_sort_step5.png | Bin 0 -> 21991 bytes .../heap_sort.assets/heap_sort_step6.png | Bin 0 -> 19357 bytes .../heap_sort.assets/heap_sort_step7.png | Bin 0 -> 20906 bytes .../heap_sort.assets/heap_sort_step8.png | Bin 0 -> 18400 bytes .../heap_sort.assets/heap_sort_step9.png | Bin 0 -> 20489 bytes en/docs/chapter_sorting/heap_sort.md | 73 +++++++++++++ en/docs/chapter_sorting/index.md | 9 ++ .../insertion_operation.png | Bin 0 -> 27207 bytes .../insertion_sort_overview.png | Bin 0 -> 24752 bytes en/docs/chapter_sorting/insertion_sort.md | 46 ++++++++ .../merge_sort.assets/merge_sort_overview.png | Bin 0 -> 25986 bytes .../merge_sort.assets/merge_sort_step1.png | Bin 0 -> 8581 bytes .../merge_sort.assets/merge_sort_step10.png | Bin 0 -> 14895 bytes .../merge_sort.assets/merge_sort_step2.png | Bin 0 -> 9346 bytes .../merge_sort.assets/merge_sort_step3.png | Bin 0 -> 9922 bytes .../merge_sort.assets/merge_sort_step4.png | Bin 0 -> 10210 bytes .../merge_sort.assets/merge_sort_step5.png | Bin 0 -> 11245 bytes .../merge_sort.assets/merge_sort_step6.png | Bin 0 -> 11992 bytes .../merge_sort.assets/merge_sort_step7.png | Bin 0 -> 12223 bytes .../merge_sort.assets/merge_sort_step8.png | Bin 0 -> 12346 bytes .../merge_sort.assets/merge_sort_step9.png | Bin 0 -> 13181 bytes en/docs/chapter_sorting/merge_sort.md | 73 +++++++++++++ .../pivot_division_step1.png | Bin 0 -> 31804 bytes .../pivot_division_step2.png | Bin 0 -> 31803 bytes .../pivot_division_step3.png | Bin 0 -> 31739 bytes .../pivot_division_step4.png | Bin 0 -> 32538 bytes .../pivot_division_step5.png | Bin 0 -> 31685 bytes .../pivot_division_step6.png | Bin 0 -> 31883 bytes .../pivot_division_step7.png | Bin 0 -> 31756 bytes .../pivot_division_step8.png | Bin 0 -> 32688 bytes .../pivot_division_step9.png | Bin 0 -> 14662 bytes .../quick_sort.assets/quick_sort_overview.png | Bin 0 -> 26189 bytes en/docs/chapter_sorting/quick_sort.md | 100 ++++++++++++++++++ .../radix_sort.assets/radix_sort_overview.png | Bin 0 -> 46860 bytes en/docs/chapter_sorting/radix_sort.md | 41 +++++++ .../selection_sort_instability.png | Bin 0 -> 15511 bytes .../selection_sort_step1.png | Bin 0 -> 11421 bytes .../selection_sort_step10.png | Bin 0 -> 16798 bytes .../selection_sort_step11.png | Bin 0 -> 8307 bytes .../selection_sort_step2.png | Bin 0 -> 16574 bytes .../selection_sort_step3.png | Bin 0 -> 11707 bytes .../selection_sort_step4.png | Bin 0 -> 16781 bytes .../selection_sort_step5.png | Bin 0 -> 11726 bytes .../selection_sort_step6.png | Bin 0 -> 17086 bytes .../selection_sort_step7.png | Bin 0 -> 11636 bytes .../selection_sort_step8.png | Bin 0 -> 16896 bytes .../selection_sort_step9.png | Bin 0 -> 11610 bytes en/docs/chapter_sorting/selection_sort.md | 58 ++++++++++ .../sorting_examples.png | Bin 0 -> 16395 bytes en/docs/chapter_sorting/sorting_algorithm.md | 48 +++++++++ .../sorting_algorithms_comparison.png | Bin 0 -> 59466 bytes en/docs/chapter_sorting/summary.md | 47 ++++++++ 82 files changed, 686 insertions(+) create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step1.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step2.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step3.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step4.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step5.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step6.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step7.png create mode 100644 en/docs/chapter_sorting/bubble_sort.assets/bubble_sort_overview.png create mode 100644 en/docs/chapter_sorting/bubble_sort.md create mode 100644 en/docs/chapter_sorting/bucket_sort.assets/bucket_sort_overview.png create mode 100644 en/docs/chapter_sorting/bucket_sort.assets/scatter_in_buckets_distribution.png create mode 100644 en/docs/chapter_sorting/bucket_sort.assets/scatter_in_buckets_recursively.png create mode 100644 en/docs/chapter_sorting/bucket_sort.md create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_overview.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step1.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step2.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step3.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step4.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step5.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step6.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step7.png create mode 100644 en/docs/chapter_sorting/counting_sort.assets/counting_sort_step8.png create mode 100644 en/docs/chapter_sorting/counting_sort.md create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step1.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step10.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step11.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step12.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step2.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step3.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step4.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step5.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step6.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step7.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step8.png create mode 100644 en/docs/chapter_sorting/heap_sort.assets/heap_sort_step9.png create mode 100644 en/docs/chapter_sorting/heap_sort.md create mode 100644 en/docs/chapter_sorting/index.md create mode 100644 en/docs/chapter_sorting/insertion_sort.assets/insertion_operation.png create mode 100644 en/docs/chapter_sorting/insertion_sort.assets/insertion_sort_overview.png create mode 100644 en/docs/chapter_sorting/insertion_sort.md create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_overview.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step1.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step10.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step2.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step3.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step4.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step5.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step6.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step7.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step8.png create mode 100644 en/docs/chapter_sorting/merge_sort.assets/merge_sort_step9.png create mode 100644 en/docs/chapter_sorting/merge_sort.md create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step1.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step2.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step3.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step4.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step5.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step6.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step7.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step8.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/pivot_division_step9.png create mode 100644 en/docs/chapter_sorting/quick_sort.assets/quick_sort_overview.png create mode 100644 en/docs/chapter_sorting/quick_sort.md create mode 100644 en/docs/chapter_sorting/radix_sort.assets/radix_sort_overview.png create mode 100644 en/docs/chapter_sorting/radix_sort.md create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_instability.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step1.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step10.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step11.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step2.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step3.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step4.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step5.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step6.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step7.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step8.png create mode 100644 en/docs/chapter_sorting/selection_sort.assets/selection_sort_step9.png create mode 100644 en/docs/chapter_sorting/selection_sort.md create mode 100644 en/docs/chapter_sorting/sorting_algorithm.assets/sorting_examples.png create mode 100644 en/docs/chapter_sorting/sorting_algorithm.md create mode 100644 en/docs/chapter_sorting/summary.assets/sorting_algorithms_comparison.png create mode 100644 en/docs/chapter_sorting/summary.md diff --git a/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step1.png b/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..7c53d16c7101df7d5fe89efad61c0867c8641c0e GIT binary patch literal 11251 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step4.png b/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..cc63734ffda0a6b834c5e18e178ff429f926eee7 GIT binary patch literal 12581 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%0AE81n4)owgS#B+9%-1=80XO>)yI{-BYAzOy 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 J3Te|%{}26hAO-*c literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step7.png b/en/docs/chapter_sorting/bubble_sort.assets/bubble_operation_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..49e1ee3b00faf6f1675ab7f663868c530af62367 GIT binary patch literal 11740 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 F{T~T#a+d%A literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/bubble_sort.md b/en/docs/chapter_sorting/bubble_sort.md new file mode 100644 index 000000000..31b5b96e5 --- /dev/null +++ b/en/docs/chapter_sorting/bubble_sort.md @@ -0,0 +1,59 @@ +# Bubble sort + +Bubble sort achieves sorting by continuously comparing and swapping adjacent elements. This process resembles bubbles rising from the bottom to the top, hence the name bubble sort. + +As shown in the following figures, the bubbling process can be simulated using element swap operations: starting from the leftmost end of the array and moving right, sequentially compare the size of adjacent elements. If "left element > right element," then swap them. After the traversal, the largest element will be moved to the far right end of the array. + +=== "<1>" + ![Simulating bubble process using element swap](bubble_sort.assets/bubble_operation_step1.png) + +=== "<2>" + ![bubble_operation_step2](bubble_sort.assets/bubble_operation_step2.png) + +=== "<3>" + ![bubble_operation_step3](bubble_sort.assets/bubble_operation_step3.png) + +=== "<4>" + ![bubble_operation_step4](bubble_sort.assets/bubble_operation_step4.png) + +=== "<5>" + ![bubble_operation_step5](bubble_sort.assets/bubble_operation_step5.png) + +=== "<6>" + ![bubble_operation_step6](bubble_sort.assets/bubble_operation_step6.png) + +=== "<7>" + ![bubble_operation_step7](bubble_sort.assets/bubble_operation_step7.png) + +## Algorithm process + +Assuming the length of the array is $n$, the steps of bubble sort are shown below. + +1. First, perform a "bubble" on $n$ elements, **swapping the largest element to its correct position**. +2. Next, perform a "bubble" on the remaining $n - 1$ elements, **swapping the second largest element to its correct position**. +3. Similarly, after $n - 1$ rounds of "bubbling," **the top $n - 1$ largest elements will be swapped to their correct positions**. +4. The only remaining element is necessarily the smallest and does not require sorting, thus the array sorting is complete. + +![Bubble sort process](bubble_sort.assets/bubble_sort_overview.png) + +Example code is as follows: + +```src +[file]{bubble_sort}-[class]{}-[func]{bubble_sort} +``` + +## Efficiency optimization + +We find that if no swaps are performed in a round of "bubbling," the array is already sorted, and we can return the result immediately. Thus, we can add a flag `flag` to monitor this situation and return immediately when it occurs. + +Even after optimization, the worst-case time complexity and average time complexity of bubble sort remain at $O(n^2)$; however, when the input array is completely ordered, it can achieve the best time complexity of $O(n)$. + +```src +[file]{bubble_sort}-[class]{}-[func]{bubble_sort_with_flag} +``` + +## Algorithm characteristics + +- **Time complexity of $O(n^2)$, adaptive sorting**: The length of the array traversed in each round of "bubbling" decreases sequentially from $n - 1$, $n - 2$, $\dots$, $2$, $1$, totaling $(n - 1) n / 2$. With the introduction of `flag` optimization, the best time complexity can reach $O(n)$. +- **Space complexity of $O(1)$, in-place sorting**: Only a constant amount of extra space is used by pointers $i$ and $j$. +- **Stable sorting**: As equal elements are not swapped during the "bubbling". diff --git a/en/docs/chapter_sorting/bucket_sort.assets/bucket_sort_overview.png b/en/docs/chapter_sorting/bucket_sort.assets/bucket_sort_overview.png new file mode 100644 index 0000000000000000000000000000000000000000..4a3886e8dc310d84b8e1cc93ab5109cac6737ae4 GIT binary patch literal 43157 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 z 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 sort is a typical application of the divide-and-conquer strategy. It involves setting up a series of ordered buckets, each corresponding to a range of data, and then distributing the data evenly among these buckets; each bucket is then sorted individually; finally, all the data are merged in the order of the buckets. + +## Algorithm process + +Consider an array of length $n$, with elements in the range $[0, 1)$. The bucket sort process is illustrated in the figure below. + +1. Initialize $k$ buckets and distribute $n$ elements into these $k$ buckets. +2. Sort each bucket individually (using the built-in sorting function of the programming language). +3. Merge the results in the order from the smallest to the largest bucket. + +![Bucket sort algorithm process](bucket_sort.assets/bucket_sort_overview.png) + +The code is shown as follows: + +```src +[file]{bucket_sort}-[class]{}-[func]{bucket_sort} +``` + +## Algorithm characteristics + +Bucket sort is suitable for handling very large data sets. For example, if the input data includes 1 million elements, and system memory limitations prevent loading all the data at once, you can divide the data into 1,000 buckets and sort each bucket separately before merging the results. + +- **Time complexity is $O(n + k)$**: Assuming the elements are evenly distributed across the buckets, the number of elements in each bucket is $n/k$. Assuming sorting a single bucket takes $O(n/k \log(n/k))$ time, sorting all buckets takes $O(n \log(n/k))$ time. **When the number of buckets $k$ is relatively large, the time complexity tends towards $O(n)$**. Merging the results requires traversing all buckets and elements, taking $O(n + k)$ time. +- **Adaptive sorting**: In the worst case, all data is distributed into a single bucket, and sorting that bucket takes $O(n^2)$ time. +- **Space complexity is $O(n + k)$, non-in-place sorting**: It requires additional space for $k$ buckets and a total of $n$ elements. +- Whether bucket sort is stable depends on whether the algorithm used to sort elements within the buckets is stable. + +## How to achieve even distribution + +The theoretical time complexity of bucket sort can reach $O(n)$, **the key is to evenly distribute the elements across all buckets**, as real data is often not uniformly distributed. For example, if we want to evenly distribute all products on Taobao by price range into 10 buckets, but the distribution of product prices is uneven, with many under 100 yuan and few over 1000 yuan. If the price range is evenly divided into 10, the difference in the number of products in each bucket will be very large. + +To achieve even distribution, we can initially set a rough dividing line, roughly dividing the data into 3 buckets. **After the distribution is complete, the buckets with more products can be further divided into 3 buckets, until the number of elements in all buckets is roughly equal**. + +As shown in the figure below, this method essentially creates a recursive tree, aiming to make the leaf node values as even as possible. Of course, you don't have to divide the data into 3 buckets each round; the specific division method can be flexibly chosen based on data characteristics. + +![Recursive division of buckets](bucket_sort.assets/scatter_in_buckets_recursively.png) + +If we know the probability distribution of product prices in advance, **we can set the price dividing line for each bucket based on the data probability distribution**. It is worth noting that it is not necessarily required to specifically calculate the data distribution; it can also be approximated based on data characteristics using some probability model. + +As shown in the figure below, we assume that product prices follow a normal distribution, allowing us to reasonably set the price intervals, thereby evenly distributing the products into the respective buckets. + +![Dividing buckets based on probability distribution](bucket_sort.assets/scatter_in_buckets_distribution.png) diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_overview.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_overview.png new file mode 100644 index 0000000000000000000000000000000000000000..fff7c78141f8a1e6cd761f43d19053e867def5c4 GIT binary patch literal 30527 zcmbTeWmFtZ6fHV4xVyVca0wnXxCeI#9!StY(81l^3Blch1!r(~cMa|?Z}Q!H-;ZbO zt=l!Lr>0l;seN{xv%9LMXTnsKWzdj`kpTbznw+eZIsgC%t%4>HVW4mKzgW$oA0AZ| zH9o$*z3uMq`nUMq`>A~mS{ExgQvXvE78a(NrXeIG)X~wwsyzDCS=_nOS-iTCGj;R) z^77%shmFk*O-;?s(~a@*@%zX7ypf;FE6Y#MPjmBgMMXuXxhBIK!$w9%W@cvV8|&TO z-BwmsmzS5)($bARXTib2$H&L2s;YK&cH-jV4z1_kiog1d^m=%B)YsR0dwUNJ4b7e% zKmPQosHi9{E$!{?U0q$>+1c6N-pR_!(#g<{jEvOJ(sLUcpg7^d|96! z85xO>kN5ZYcdu}3ZEe-l)7#wIn%kdyeR-PPopf<=IZ;5qxVuP8OIuuAEFCS0iHT`y zYL4uTNXXwG7#L7gRNOh+shg^;8m~-&q{OzySmj&E$;tWp`X1fhPfkwO)YN45WqkIW zpPrs}baY(axI4H!xPG{Py*PS!dTpL-a&vP#zj}Usxb0i(tDLG(vY8f$3q8I*{@MSt zs;cVe&!1+$&%&F-@cf1$5J-N0eo9J8&vXy3=Gf}d%HrR}xbE2C-$9a+l4(WD!g>== z%{dQA_Ad)V^Q*U}T}`eL>-Vvi_d(h|@tgONrae79gM)+5qs_l(e?R_C^X$4v>`2sc zns*JKd%ZsMulGATeSFzoDC#eKED7Fk_SwF^Y#MF4y}ccqyS9e> z=^DOBFFklY-cA0KoS2vh*?#C5-1t?s@{sN_FnPJOwB*p=(Z19c7Z>+f85=)*6`8#g zmAM!`IdmUxq+EWSu`s1xd9uE9|I}B#dGQ>Wy4|t2=~O8Uhl21Y6uZecWVX!TmW)X;u`Kt z$6bEV%m9FMUrGo{K>w=$dz;DahS+~s4!r%w(tsw(|K=7X!jJi%ol9SP*#A!(c(+HC zd}f%zpyH3X3$WBw`7HbriAqiZI|eIlhoQf!dIOYwVr(-9?Kj%DlyIj`cfKk&J7w1a;ZZZFW(NWRe+j%=Hsy zOZWQDVs07sIJt!2u*eWIuuS+f>?cwAw!8g>)5JsKB|~cWpXN&iZqT#-*f&aY0&vn` zd%@9(4@iYypS|3r(MsUauv%j$-T4q)tax8>0@VD>#ALz^z%yw3JIlhh<(FJ�W+M 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step2.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step2.png new file mode 100644 index 0000000000000000000000000000000000000000..b054b7bdbdc85067609874c1f40a6556668e45ee GIT binary patch literal 21000 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step3.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..63987089b918691f77bfc74d8758170aa2a666d6 GIT binary patch literal 25992 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step4.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..afa7993d11adb5369ca347ba548af04b815f5322 GIT binary patch literal 25860 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 H5C8uF=~7HS literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step7.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..5ab818a65c3d8bedb05d78182099e5b4b9175a2e GIT binary patch literal 21272 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

-S7OHKovQh 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 Um9i0~EBZI3qh+Xx)4)Xh2VI{DF#rGn literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step8.png b/en/docs/chapter_sorting/counting_sort.assets/counting_sort_step8.png new file mode 100644 index 0000000000000000000000000000000000000000..33ed7550b8ee057a6a1419f158379fe620fd9175 GIT binary patch literal 16518 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/counting_sort.md b/en/docs/chapter_sorting/counting_sort.md new file mode 100644 index 000000000..ddd958ef8 --- /dev/null +++ b/en/docs/chapter_sorting/counting_sort.md @@ -0,0 +1,86 @@ +# Counting sort + +Counting sort achieves sorting by counting the number of elements, typically applied to arrays of integers. + +## Simple implementation + +Let's start with a simple example. Given an array `nums` of length $n$, where all elements are "non-negative integers", the overall process of counting sort is illustrated in the following diagram. + +1. Traverse the array to find the maximum number, denoted as $m$, then create an auxiliary array `counter` of length $m + 1$. +2. **Use `counter` to count the occurrence of each number in `nums`**, where `counter[num]` corresponds to the occurrence of the number `num`. The counting method is simple, just traverse `nums` (suppose the current number is `num`), and increase `counter[num]` by $1$ each round. +3. **Since the indices of `counter` are naturally ordered, all numbers are essentially sorted already**. Next, we traverse `counter`, filling `nums` in ascending order of occurrence. + +![Counting sort process](counting_sort.assets/counting_sort_overview.png) + +The code is shown below: + +```src +[file]{counting_sort}-[class]{}-[func]{counting_sort_naive} +``` + +!!! note "Connection between counting sort and bucket sort" + + From the perspective of bucket sort, we can consider each index of the counting array `counter` in counting sort as a bucket, and the process of counting as distributing elements into the corresponding buckets. Essentially, counting sort is a special case of bucket sort for integer data. + +## Complete implementation + +Astute readers might have noticed, **if the input data is an object, the above step `3.` becomes ineffective**. Suppose the input data is a product object, we want to sort the products by their price (a class member variable), but the above algorithm can only provide the sorting result for the price. + +So how can we get the sorting result for the original data? First, we calculate the "prefix sum" of `counter`. As the name suggests, the prefix sum at index `i`, `prefix[i]`, equals the sum of the first `i` elements of the array: + +$$ +\text{prefix}[i] = \sum_{j=0}^i \text{counter[j]} +$$ + +**The prefix sum has a clear meaning, `prefix[num] - 1` represents the last occurrence index of element `num` in the result array `res`**. This information is crucial, as it tells us where each element should appear in the result array. Next, we traverse the original array `nums` for each element `num` in reverse order, performing the following two steps in each iteration. + +1. Fill `num` into the array `res` at the index `prefix[num] - 1`. +2. Reduce the prefix sum `prefix[num]` by $1$, thus obtaining the next index to place `num`. + +After the traversal, the array `res` contains the sorted result, and finally, `res` replaces the original array `nums`. The complete counting sort process is shown in the figures below. + +=== "<1>" + ![Counting sort process](counting_sort.assets/counting_sort_step1.png) + +=== "<2>" + ![counting_sort_step2](counting_sort.assets/counting_sort_step2.png) + +=== "<3>" + ![counting_sort_step3](counting_sort.assets/counting_sort_step3.png) + +=== "<4>" + ![counting_sort_step4](counting_sort.assets/counting_sort_step4.png) + +=== "<5>" + ![counting_sort_step5](counting_sort.assets/counting_sort_step5.png) + +=== "<6>" + ![counting_sort_step6](counting_sort.assets/counting_sort_step6.png) + +=== "<7>" + ![counting_sort_step7](counting_sort.assets/counting_sort_step7.png) + +=== "<8>" + ![counting_sort_step8](counting_sort.assets/counting_sort_step8.png) + +The implementation code of counting sort is shown below: + +```src +[file]{counting_sort}-[class]{}-[func]{counting_sort} +``` + +## Algorithm characteristics + +- **Time complexity is $O(n + m)$, non-adaptive sort**: Involves traversing `nums` and `counter`, both using linear time. Generally, $n \gg m$, and the time complexity tends towards $O(n)$. +- **Space complexity is $O(n + m)$, non-in-place sort**: Utilizes arrays `res` and `counter` of lengths $n$ and $m$ respectively. +- **Stable sort**: Since elements are filled into `res` in a "right-to-left" order, reversing the traversal of $nums$ can prevent changing the relative position between equal elements, thereby achieving a stable sort. Actually, traversing `nums$ in + + order can also produce the correct sorting result, but the outcome is unstable. + +## Limitations + +By now, you might find counting sort very clever, as it can achieve efficient sorting merely by counting quantities. However, the prerequisites for using counting sort are relatively strict. + +**Counting sort is only suitable for non-negative integers**. If you want to apply it to other types of data, you need to ensure that these data can be converted to non-negative integers without changing the relative sizes of the elements. For example, for an array containing negative integers, you can first add a constant to all numbers, converting them all to positive numbers, and then convert them back after sorting is complete. + +**Counting sort is suitable for large data volumes but small data ranges**. For example, in the above example, $m$ should not be too large, otherwise, it will occupy too much space. And when $n \ll m$, counting sort uses $O(m)$ time, which may be slower than $O(n \log n)$ sorting algorithms. diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step1.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..ecea70a3d3573e37db2d15aeb34a1249cf3ca6d1 GIT binary patch literal 23764 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 YfKn)LwPnO$+&=|M^6F2^WRZdY1)vr@^Z)<= literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step10.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step10.png new file mode 100644 index 0000000000000000000000000000000000000000..e3997706aa584fc5c8355ff6954a9c9d2f5bcc55 GIT binary patch literal 18100 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 TORVcE<3IwQu6{1-oD!M<(dz36 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step11.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step11.png new file mode 100644 index 0000000000000000000000000000000000000000..a857ddca4feeeb86eb498e04b118f7a31fd6695f GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step12.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step12.png new file mode 100644 index 0000000000000000000000000000000000000000..ee9c1a062e5176049d5399cdfe73e4cfb24241ff GIT binary patch literal 21022 zcmbTdWmFtN*Dl(_AcI42mmtC2T>>Gv1xS!Vf?GncV1rw54<6jz2@DP)NN{&|ce%XZ zIo~;V-TUXP(?4daR@d59z5Cf!Tb>S8Q<29+BSixM08`fz4n;bSX z006P7DQUfZetr%O4c*+_6cG`*y}j-3?!LOZ@@w`jC@5H6UDZy}dU$wfZ*Sk<-xn7b zzqq{U?CgC1{=K}sd~|g5#>R$`k&%;=)AaOodU|?dV&dZBVq;@tadGj^&W?qJg}=YQ zx3~AtpFbrfCG+y~=I7^KU0t)XvdqlPWMyR!4-d!3$JN!<_4V~5A|fUyCtF%tR8&;r z;^Ia|MuvxntE#GcdV1{b?JFuO!o$OV{rY8WZ0zCT;pph7tE;=bysW9IIWRC#S6A29 z*B2HRHaIx=@87@D(o$`0?Y6eI*(^ZaiXDPq2qIoS?O@8Tbb+d>abUpXL3i<)Yeq{YYJyN5mM(m2U|b2Y1@r3eyXQZ>Sw}RkkiM-Ab0_*kLtF1>4IH zizD#3ZZ<^0KXi}$KG*b>1UQ0&W%hB`S2CVFX!pduBr?M$Bh*$Pvv_G1gV_-Lujm1t z3p#;_17Da+{Bt~svYSJ9j)4JH|B@@UO4;TeBRcwWZ)5Gv()sN`8!`Muh#XcF0k(7i znc?EVfBo??0>S}=Wc?=XmtnZG%>uBsPdI>P4gE5nB%UM?_ZkLZh4V=Q!EXT&`P3o^ zgF_meym0e&$Dv?+SL)8kiw*{Sm|(BF_8be(d=U}W3$p!vvrh5K2MNU4^tHsZW=+Wx z7-vaZqq&jX0!vgKN$W}yf02UVcLmp8OSTLx~6cGbV4Wo}&90DLKA@#V? zpqB-0PT{Iyyv(pVeG(|!yL0i1q+N<{FCs=a)$z?-_+NJ zhagD;;Z{a`;Cd}`e{g4_C+mm+_zvyoY3Vg zZy+*nxfB$12l}6gK8X?&#QCrGnU5Xfi_QMuUdAK#ALo(%I3q{C@p8(*IjnZsp!%ei zWrpuV6lAi4UNu~(ec!o$W=`PWXK<0Fi;-Qb%cSal)0?z?CjarjSM$Hk3{KfpoWhk_ zRIC}f&=t`5V&%<_>lCv{-G?1PN+MW5SLh{=wkzXT9qqwVU#=BGhHgy#K??)`gT20M z!7BBmT!Wgi-|Z3iTLe%Ro6mPwn9K8n63;+zke`6ci9SC7KjHUsT^=|?4WN9XzZhu`+uzgoV)`36%th04N=Jh zZRlKESEvIzK|1Mrw=p=N6Epsc4@Q+lW`o;gC>Kik6+pZXmCt3Gl1Zr>K|C{y;?5+OEMfN^ zFTQKF#9UD#&2tOKK9T<3^SYb6DGBnMk*;wy1wps8Bz)6aPXeXl10Hklx^U?Fshe>6 zuqhxvd5MjP1AEtHYKNV%fcxr{C!+=Y<*q3#d3yHAn_qud z`RV7V)ztjWp)^#O+Az}-iJhVTnU+G1NjE<0VRzrQfq`!sLav$*%=|5f$lR{uWT zshl7DBd2B=t*YQN1O;)6tKNnNe}LG)gwnck~s ztGx*ZJwSh&qr(Z+w?_cVNq92W#wS>+W>++dTB~x*r-4q~-0zY`+Wus+uWjVSgMDp4eciaNes_SlwPU!u;<| z;N!{fB%~7-+&a$lA0cBi611del+@z^OjFg^BCu5m_qJ6Q&OLDTrc!%I64CL%-R@W9 zHpLnPY|>NQhY;DZMV}qp+(ASi4Qg1L*pW=RMg^zk)D;olZXhw)Aka9Qc_~wZf-23g-u^7CA5{ilO`pE;d0utDRc=oOkzf#jA_sb4vWo!M5DZDcKO@~GhB>mJ<3AnMu>L9D zlk=Fb>r5!Gc_&|n`q^RbTDxlA4jheMLO$~V$(`9Omob6Z zBjjzQ*|*qjsHAWMl2w-}D)0EL~dXb*h{orGh1@#5*Tb^Y@W~ zdk*c0?s7XM3`CpvRJ~4BPRt= zJl3PO$l-I*Sa(Bns6lla;cs?rA83xBnLB@e4*fV2G9)x)ccdirzg>p^Ukm;$;!{%n zVW{Mxb7hCVYz*XQp{9w#$(%i`^TH zu9E_zKb-`qbTJClP-cH=qyp=IfHe#4go)kp^M{`l(Xek>~`@DPHj*Vp;WMcZ(S<7j_GHDVR@8 zNkJ{Xo1}`osY0X)xG_MvpJSHSW@hI}_(Ke5i=Z0<2bkD#N4=%ze*`kPi%i1_rJMW6 z{Q#_l55#b3yE{SqDnH3IUssACIdsrM0j^B297q~+`l+7c46B`Rvs*+oa;I&~t~nDY zEZ(ZM&ktL!7dy*f9{B1RK1v`a27yw%=f|K%uBAQsZK`+}R=$t=Gp2wgv#+a!<^C-Y z&MHqEQyg=m1EJ|IuJ!GhL=YTKO8K*WzMHSG4}qt2Y%rPEG7k|;qYnOZR-NW%-QUBs zaRA@%^$QE&a2h#hq?Whj<{&hN z;d;QQ@dv`gxastImHwKbW(RD$GYok6ID8OtCjC}|(fY-S1K}oga7j|3vfSXS6n2vd zmqLZ^f=bMz_p(XZ@w`8dbm>-*xrz}VEMwkjcuhe#?W^5uUy?Gpe6C|Ig=)e{b!wK~ z3mVN`2q(Wa68Y#%MAc>COdN1DCmxqnuaTcuuY6N0F7U;peB$=%p;hU)6`YDkWQGYR zaG(yrXm0+k>;rYE6d;gHEk7DS!|jPec8Y#r21^00kq;Mo8wNsuc4S#aN14ZA98 zLN{Y|#s$t#{+eGJI~?&RQ_2IvP5LQBO(1%hbcjUVS0G1J6Vz>`b(=eUFb7E==SznF zWsGw$a2%Qw%hyG79zYq_g5=Mb946xGcB8w1 z%o{%amfm z4b`XJw204T1q-%R?2RE20S*{aGXebv@%DAVH`)l2Qc5@21jgBYfF5@fJQCX zpe}G0Ok;S#h30DjIg?kCG~GVf)C`~r#aa~q`y?aZl8Xy!^Ew0uxyZr9bwM)}DSnDK z``XB**j!_pr7zK7;W3{(vG$Z3)dA89I8F>JTkIxCN%YMfFYN97_nd!kk_Itd9xt(8 zY|99ta9htIJ)se$))4XJhiKq&2U?~FuRCDoCiGj@4QZ2SSJ=gVy~QV}Qc>npGiI-; ze?yBh{Xn|8BuZA)&ZluR2yMWPJjnB4_a@_;i<|107*myc8EH7^fTUHH`u!Hy7Zs-; zVE?|8->IL=zvj~5m?~->aKc2sRpP@L24-OBYr0gm@7C9eNh7`qr>_RKi%Y%0KoF*! zRL17nM`D#sZuRD$4R0e3+%A0UTp?+L0ij~wta$K%&N8K} z2%z6qv2yb1wqFikx2USsf8ADyl~)8!4DwPXfg7DwzqfEW_zNA$t;3Xj195z;r!Ql^ zEh00J$ATZ=o&ZP*p|IV>ijLFCHab|?vkKR0R7`5z?0uBSg)qEGAyZG-!;?hPOP0S1 zUvkm7MXJrN7uIEr!eM2`ol-ikd}sLbxF2eUES#0-SY6QD(Xy`0E^(vsw1MehvqLPW zNaZm(QPE;Do;erZ=P$pOmz75i0gyL9n z8=Fx)dwfYC5Tx>A>^`j3*bmIGx7BDq*_h1Gf684h z{wgNV{K3oK+LIAu;%ckafO=Z2=Wk3>XMmv+l(~&>Ng_k?-Tnuf032z^fBl?Bq_^n3 zgd4x!lBa3s+N1sL&moeQgUwFYB5$m`Fza{~nenEUcf+W%KD8rjB$fSw_)4 zb;x0S!)`Q-r7NBsjUad@f1X)Oq`JnVT(fdE3N4Ex{uL}sMElL(&)R5Y-2?$tyNfW39rcFtxz)Xc&nFXIi5jL!I&b`0RKa~Ay9{0I zq>Q=>1}vEcjAV`yM)=M)s;%?0RKfs5!PkpE-qaM&Cf}!}F%MeR$j|}*`!|B?=n)CC zH8?SbOcNBC09GG&x2%NZW@6wE+mgTy31`^=Fh(aQ;LY&l`;t$Df=$BU(E9L*nAr245uuAAcp3FVC40tuK3 zC8^V7aW<&YXwm$BQB(Vetzp^UUgD|?#!Lu|I(5=r;YK2cFs+IO29o#D8SU(^6TQ*ZkEWpup z%I1PVv);h|A^6Gwx70+W8GF$D)9#g$V~Eq-^FKr`XbwymiuKT;zi(N z1B_)LU4(K$_YeEMifFV}c%5L)HW$VX6Z!I&G28%Njv!^>Cw%zpVtd}A-b763hO!_L z=%J+i?3dw)TG{lge5E;Je(lC#TY%osB(_tJcA3)q3T=>qbSb0E`~IRmh10vYcMeHE zqpa8WqkYj67n*40(Fd4LJ@jT~35&a#qUso1R2{Fv1tOyKLs5_nE@pnX;D^=Rk7Hj~y zLhL>XsrQ>MR;Pz?PGzW_QY*F8Wg;C-CqFhXdbRX8S5Yc_M|iKOIAqM$?-4R$TN-1i z-blIjQOlLPBlzo^VdK#eQpYz6kijLxOzl^GWKw{965g|!zgL(L? z6XU}UUuDU1C8ps!l(zLL@{nqeKemcGbf3WGyMVAcVXbozjc8OS@!~vsbyWiqYRsbj zbf2wG5_q`q4l&^Zl@^wSUtRdmnNCX%)Y{%8^qH!k%VCL$y#`U-oJ?`xCSc;^*$Ff# zHzvaAdie%?)S^QY{Wxav%PP{D0YZ;tub|6mJVa25dF7S;8`_DDMV-b$9Kz%8uo*qB z>jiy3{?F}SKG<^F4FkzEsx{cL!-M#NcVeJ4L>ncDhjRD;wB?Stpw0Y+klAj+jSz=Y z4upRPH2)1P@n}Shj7o8ZeRX>?DC_pdA|2sV_t`%huMY_ZcXgwP%;7qPHcB|H@FKcW z9x19ys2^s1MU+&j6I8Uumwv*%Fj;ZMgK&%0cRZIP13t6UL=s_0{PUk>(4}RRB9h}O zQzZntc$_2);4L70WtA3`NOM6;4?dTz3^{i!?0;At#bhOuXQj&P8IyEhMVoBe3K$M| z_i36!{`IT{whU$UDz1@ihRQMM zh;vvgPs4pJ+uO^47B+eE?%Q{4oSDzBPPoC6k$=~HHKH+s>DFThBJ}Mj1tNL<-{;rj zvcSmRRRlj(&9JYeQ(>P@T{36|I~&+^-Y}(3f*UW_eaMewWcNk1V_gOFYRf8E!fkt; zg{Y-Fkf^1&ZzP}mc0)E=2ako?%e*2)*bCUjM z2)J_)dIgTxXCF>Y!#IegM~=z;jv$lD`*r4ZOHBcsd(yCi$V9n4u^lz*xhP|st^oqA z({~94n8o>*H823dJyD+d-H`nm7P)3o^JV{-cGYi&XL3GG=DV`dTsTe}MFz7!8CO}g z_qSL16J!>UhZ;0bn|(#B*n>m*KH_0@BOBvwI=^hO;a~_7{Qk%f^#kzyVYaJ57{lNk zOa03JR#ZvB)&zSr?`$_jin{xuZ-)y`VGj1MpnhEg(*KIhIc*<3Aw1oTUOe5|cR>R| zI}jrFi#A=qK3=}JZE8?vM3XZd$nW(~65(kZ;&J8LT6BPfmKgV|`L!{*-C5ZA(!mBe7}4gnH);h!u6#FLzU;Q+ys zuhB$q$2_XfTEOAa2q>4?@nHZrI;$Ml{@1L%bUt?H4oIUtT;t!E1B)_4i<1r;2`okjiL$T{ldXtPbrxT zeWMh5zMt}_G}-ksQL}JFc4AM%P~O=5_#}bannI`WtXrss3YE(2zMuNJ!Z)lVY62H6 zK~%fz{ERgdvvs=)iswjP>^lP~Rev2+lI&MSJn6dK2_lg^Absmx30Vp4K&B7S^_6n} zr4lPa;Wr`L$)iY_-T#^zhey>H`xXfFoDfq*Qu~7NE)MHQBK$5j)s`kvLltIVXi7J1 ziu5jaJ~_*>^e?iScuQEE7T!~V>>J91xLGG%{^$@m(F0}cb2iWhlpD2sGo3uVf2sn| z|rsW$uqgtKWUEaTfJe7R;Ce+ z=48WmXX*a*b%(^k!OLz|Uy^akR4KnHgpc-?2WBz(8Zg%eeD5DBCdJN7Lyz|lAN3a zr;SS-62z%!vLd%ZR*(jH6j$KBa@*l#W07|x#(4R|{dOJ-IfA}@U`ZJ6m&OIE@VAoq75j`jZwrG@DzA?(DHA4Uqi znl~qc*n$<7!K|s<^T1rz&9f39fdPA{dbR+&AzYLK!<7;m^NC1EK{Bx-Mu?Sfui2(+g4&L8O;fcQ^X*qq`>hWs#9Et2#X^qCc3;hR%QDw&G)o3@a^ zO;@gsE)H8)_}&KLCzto5lSqHBhK(rwRzY^`bMw9bsmF+LutqodSG;r?xh94Xne#hC za}qMbnCPe8bJu;w4;|^XZk-=Nt)i-m%^7}4w|L%X{-XutP5v}0)eV9$j=v^%T*=nO zN3p&mpwdxDN)m?gir*f%*NmGOV=D!1uf7d^rDW+%MBW$R^#DqN38fz|S?K_X%7%+N zwk>yV$B8Rs`;YU;}sQS8bLGffBt#SdCYWo(nOLQ7Qhv5w{sjoP35pok};ELhbITGpRy zixm0F@g{~9^{yTbs@*QJqKxQeD1QVf^j>Fc@r_~2_`V%D_Mu&jK0Y^l?4kJ5JcC3{ zm0Q>ZofTE7!g{dnL)COI6HUQ;f&x9TTf9~@jQgYyK$5Y<-5!1;oY%f+GEn?2^ES#! z27c2!4KY8OUsm-4KyekWyD?xofyC~107@fb#(W9|zI&E74H-EQ%fVNL2STswq_srs z`}6Qgg2Ml*UY9ID_b}v{@3oWdEepYn;!}Sl`yO)GakjHD27C3A3nH%tfF75-9v
u(C5_6}yI2&OK2~V*lY@&53$IQEm&R>sDF#zhtm493Gdju&DVDrcpSk4Ghx%3fGLi}y3w4kNDq9@RuoO(NdQ zB7aryFK+y{sul6@M+!Wwoc z$-Rhski{p;KRMC|o|RA+cnDjv+TMzthMykeG&=KIN9+DojY`1R$jXDG5=+ja)?I%1 z{?dh(AzaHK)f-Uq<&EtZGv&fbkyPODsqr_P`*E3+B}_Z91kre$FqaQ)S(~W~)0!ue zUwm!gfTvG2Ut&QRnmdvi2+{GJC5uB$(;%UtzjR}DT@pHz z3jUz&@)<%wh-$KDjIu5pIZDhdx@htEbkzXDJ5RD$zlQDHW@*wYBqY-((3>X*ZUxmu zH1t@6MfATC01s*2_(lInarMgUdQ+)}Yn4%;ymH1$X3)ph#F;Q3w6Ddvi2#8K5za5m zYGzVc*AY%Mv|LG>J%cN4Jwr-~Da1vX+25hn;x|5_Lwjy4DOIfev<=?*)+3x_!(Y8R zcjWxnDA{9lOtQrC4w5p}-Pk&wSNAZMb=GFDqt{2~1+aO<7#(D(%1=H%VKe&b;+v+la^%9N?G!&$1C%LD5Ov$eQ_P-`c9vp6Gp?8YIsoxwEM61p$Z@r zc29K6lVhQ;tv=>$KOeB!b-`1eF%zo)BliC9D16Ol?{|f1!jezlhdMm$#6lx5Cj~Or z>cy3PW(DAl{Y0-ly=t9gaJlL|Z9vn#q|W`fP&eOPP`kmfsDmMqyc(pLBqmr$T9%pM zDbGO(?NRTO>M%Of>?&50Kp4krvHXfgWZxnk^4qEFJ!;8&f+c7wO)$Clhb4+AikI1)*2dlLP6zgV@siF?{tB)Pvtds)V+p{U<7STm$q^QzL8E8 z%fKq2jFJZ-7&@flRZN#4sL8Z;2KU7g7!u>R_sHMbp|SSqUp0Rw;xO~p{`?>9c;EQr zQ7Qe2lamL$@Sc46GHWs0zy(9Bj6+-d^mXz8$oexYl4GwC)(fwJ)Aj1aQTebV3mSf( zT%_8|8t$R9Lbq{YH-ChFT-l8R?RycJ0dYbe?}B|32Y3H4Zfra%LY*S?Ux4^w-nm1BA1k%?QEVVcgOl9{J!iELLHO_>Qe&1OFjz>@82FK{&s1h*w}Wt zzyApMm`-D@+#VwLNzz!-km&Dpo&@SWznZk0#)XfKffw9g-Zu8$k0xZ!Ug0TG-v03} zmiswFqaP2gr0}>&fHwNQqtyH>IM{yFpN%AkA3U1!+hjG8Wp3VOz4RmKn>gISB@oBM zv^&KHupl?qPQwtFOI9^4=Usir7VXRe%QnuoMLr4IW&t6-IuI8VQzrKQE^r4`RMDV%&> zmuK$|mXR>Tz=9S(Q-cD3MBSb<2hhn8))N5XrEn+gtTG$Jn-Cg7*(RK_5=Xp^!TLo) zjvq!mk4?xZUNYa4{$r>+oa>};43U`w!|^rvs+sz`Wth`r{B>y6hmt?*A4;Ue+92v? z9srmHM9x`B`D@G0_)3%}WjAX{tjnD8jB&xWtO%6uvOpkx5KdLvh+Nr8<@g02G-C8w zJMb;$CXX$=kKXmlZiIbvvv>#x8B6&3HZI*uHTby(1I_zUy;K!?dA;M_j4x88~vY zzQ+G$hasmE^ss^-9ooY0tfR=DDH1FCMT0qumc$26-%0r;ow~JlEU%y5*8xjkcQBwq zs1_k;?QA}IY`kshgw+J*ZDmNDflgQTM_b9&U|p3$)FpW3c{z>=M=gmnDm31%@s5=4 zoXJ@R5FJK&~RPEw6n(XNaIlc3MS?D0Oa;J53MEoXYfFZ-KK$Ylhml;;ACs19ScFxJ(# z4ro)IeP`OgLV_`FNa84gX8Rslub<}%Yj8F|NKiVL6Ea@e4_-+T{)*wP@h~HaSyf|q zo&MA0@u$j{EJNa^1C3d`7x;6i2-QD5ojcK;-!gB-bE#IvFh;*ldCZTLHru+hWP+6; z`zrt_X|=2IP)^ba>(|`bFFvz^^s5+Gyn(IRAn{DsuF)SqE}&(Qm~*sC6vl{p)ewRcBSLR_k53 z|J!;~TK;RI*&In;=!`!?h+bZWDpC4E5!|@CfG=4he`VymK~X1+!xSymQY0~;D@a~` z1_%yXVIWUzJgO%N!;;XsuhD`_woVJQ1iQ(B>qX`fU;J(EJAxAHAK4`LB1eA|U$7;| zHp2g*E~UcQpJ`yUL(DctOXoGZBy6KLkLx)X9{aPB_)Ab>%99$xpO00zEMy`W=_SeM zt|>n9KhpAz2S=exaTZ&6-Z!;9eOD7&h9zCu=JLa>_4D=-A5r_OzP{{Qv4~%=>FGY0YUgW?fmk>EyZ@E}Y8uyJ2SS9d#-!1V)?HPg_oKO>o&fdHk$x z&rh9wI@R*Gj>pS~X9$%makutSK#cLFDDmGDKkVI2Ph-y14i2)FW@M5djAxa$CwPmRTh>Gbf-C9mlIs4({5kzngfKeRPpQ9{ z28mu7%oP~k-y@Ie&;tE)GQ&T0q%mIVvD5c0Agu(51r-WT%~c~K=%r}m_kA-umr8Py z^I);`G)?K~9%M@&*Wg0}Z#oaXDy<1LRZ%a#y_rctRD+z_?A?PzHAPjgusL9nenjvd zeCy&Lk~zcfS@CXuI7aN{Z#JpGGsBx{EbR+66XaQ3C5Za^kqB<3GiysDMfy<|uQ<}D z+iXx*7!RFte61odkJevP40qN26>@tY)#iar>}HOL4(dT$C)RXuyP=3gX9vwdG1}bY zw6i8sb~^Io9J}=z&Unw0-&N-zw6q4jOvw%V7f$^Tq*X5u>b?rB3Hh~kc$iKISt&z2 zIsTrXa+%Y><7xv>;=BEUtu^DnAJA};e39^}UU>Rbq<|R_x$~HQawU*UxFx2)sBP~CA02Fs$QY&4L+C>)+6qBRw+^fc?$(Yh9T4GSL1)|8Dj7fzwFb{z>kw(uNBqJLUv#N{*yM$@%H#YurB=dOt^))VFmq*U960{$ zL@mYA{Bmxm_F9lIYSvR(u}laD-gEdoG$VCrl(s*Q2##E7hh0bSF)k)Y4YQ0V(810I zzN7qnK}+-6D6A}L<-}V;2I~QVRArHtWJ83UPzX=76@a_PTSRR&$pjXtvb!rA)G&a^ zsk>pv&Tcm!EY$Em1Rd=4??cd#Pkiyv$V<$q;((ij6WN$zZrF2v)$y8Y8X})Rx+rA32f8vD6nKT}0U?h>7tHJ_J z*nPVQ0v6JsiRWbZ-)Zf`V&&6%WCD6!osO1cx@}g z%3BVL-r_VEss4#i{{oEkVbm4Wr0MqqJ;L+Ip8r4>9J~CJ<|2?}4*Y&;nvPw7or@T5>laD_ zIdy&jR9ZfeyQfi*Z#)3(!$XIllCUwhH^xLkRPf$36OZQR$_8yde7Fm9LYN{TQPjsP zotWawF+}-`Za|!z9_traaBxu_s1x?zbN=w%7vRrd+F9+N3Q|tNS^=}TA8^CThd}&$ zTQu#L_m7C!caMw$V+(1BjxEEhgaJ3S|3IRPil9$PK`m(d=tCfv#mT6iwY=B%RE@t| z>l*ADL9G$T_euU0!^6JJ;ndGssU(PARA*Ri81o^q**@EU8LS>yVU7Lz3)=UGZgx!O zy70mL>qtHO?;wo!f3SK|US*Gs1xo^5q%4V8G&MGNVNuqEcy$2R=ucpCp=)wv1i0~& zF(W!n+xu@o=7CGZOJO@1Yb6DbYdUo;tsQ<0>=dP9-ddR~GXl%Zxeb#OhohL$fy5yBip1158iJwnlCfE!m+WZ&I8r@~C3gAA1@ICpZ*hXj z*JG(hlD}>5sQcCawC~W~@h%Qs0u}0pHR?wNpTN9T7AMm1Y*KtXE6`bykdB>+SjCP{ zPX(babtBIKXxk%Vwuu=)q6Xx%F@Se3RuY%`0cV-9S&B%A<1p5o8TMxeX7ks~uv1B3 zIlSDWddJ;&NMtjB=2jg5;ah!-6M~xuD%Q0_pnJhUCwi8P4h zDGx>UuvOr$q?J^kV<{B=2DX@IRp1Tyf1rm+T>ruRp|?94;X>y5HUOm@uu&>OrHt2& zKwBZv=>_Sp#ybmM-RxWxr&NC)XyqyP1t?D-alkJ%cpu1?qb6p3Yi{o6z~8yK1_fZA zjBZn1@RUW(=})ZqzK?|W1feN8FmPk4}01bJjf)JRdH7q3Z5+kv!V zsEP&7_K84314X|w?MsR|c0HxL1E@GJg9jwf(NX)6xO&~wVAAvL*qGphp3a*G1MTehNZ3VBAake! zVIg@649NS}gTbi+sB!rOXwaJJ1I(EWtQA>Cd^jPCd{k7FjSTyX&njKdd|>)9Goh^T zqy356wLP)Ee?<@bDDQr{65dW6Iv)kUO;UnuDLw6iX}CF9cU4XZ2@374b&f@X=EVk< zT}Q8U<4S`LM%B}>pbdg!5TuhPl@ZDOfIysaG?j_Y3mHP3&8RUhatKY_H3tBXb|@#a;fpQAcnnn{dAjQ~cAlNL~|j+*QrnQGv>8l8a< z9bpcND*_GwfX?A}=11d)+ia1CJuzZY+oCDtD9YEIOW5P^2hxq#o!78BE;te`2BeRC zf%{(B`Rf^abIP0I*`GIeW>z={mpDI)xCB{s&tM2n@rw=L97#Az={i(epQ?i1oDG(z zALe5ssu2@z7ivV)qT|&A)k7a}Jg8@ASbKOSX{d|ap1US~P?&HsZ0)rX(n}F(R|BsI59CSh9y}N!|F;0! zBDybj&53Lzu4_Yz}@ z%QJcr`0XuZ=i{I)N|L3v^%tl9oqF`Xiu+qBpiB7NCUBpa9iJtJx9dsA%@#rar<9oB z9tI4`qTj_Xl%Y_wK`dFwLjYM3Ge|+gG@$xYxWCzszVda)Do#cfy%Iw;l~S{U8-+319`m)Z$R<#!L8(Z=5|`o$ZaMX+Z_%W`UqfItUG z_&}}Pg}@HRcfXt_uegbSvOmE4vB{OuB+;BuwX`2sj>ChF+X=VXI6@F;ey=4W z%plu(6=C&N0z!4JUbkL^PIj-u5ft3cMbg`1lA<3B(z2VMDx8g^!m0l@88rn^xuL9d z0{k-BG?QwU?}H&LDpH7*##DI0O88h-_P{ZTRx~I+w**x`=%)fOjwT?;*a>cE1D;5u zM|cjt?U_B|Zfo%|J8{XZ7y3H|5lGQ2`XaZJumoETS^OsWBSzpid^R*R#DbZnY)THv z5+W~V#SYGqK&pH@?a4{p{TA3CE@VWo%ueu{uJ~^8yN~9P4OYBG`eieM`#(D76SNy5 z9p3vUoGKS!J-s8+H6RXK&wIZoFt2|gd9knWWHAF-*G+3cO@G|*vga44d2VJDA0qx- zc^}*d4Ox(<#zi49P|LOg=KWN_+yf25yY-i{<50d-$?RW)X4F?0E2e+WB|q36ct+(n zU)Xp@Em0t!1iAx8{D~M@bOyL8XdI0ldU@XszJPD6&%CMNe3KPb#zQgN#anJY-5cao zR^BEtWh94D;Exlf2YPtWxFLz}B z^AY`Bd5xo;`+JaNqZB_i!kb?kNRGdvo#AVpzcCr)?LilB3UxWh4ijgNU6P29IQNzj zcY#q^APFsJ8D(RIak#Od1f%eP=J&5O(EBkyn*MK$(99;pNLPf0jvIs>_Z23xZl&KL z{(#AX8y47z7Aw3qy+Eh@btkb%&F9oTFN;@ApVW7yEQiJ1dxd^_n8Ov*ZK;VRBg`Xs z=qwvSvY`niFtc+JnISrHr`H$1Bo3AXrGG-8Lil$Xgp8G|mf~fyp(Ec{c6N6Ma*?}J z-ew*q|JO_Lt9?_1F)mnQ6&T;Z2d@a-6^Bi>F|K~=7zb0L6#NCJW(R-N?@%|vI%YlE zyj=g#t~OBhH1_0u(wP@!Aa(mGiy&mvPQdCPBSBrD?Rr{!ApcdGr4f# zzX=rfi6zZ^jj&e42JQCXWuNtga3$Bbw#+dkKeOx+pW5FyGUUL_(a>z>`^1lxrSL{3 zk)pQ&;y9A6--A%mjFQgJdfZW&Cymhxc|2G@GSk8F?}MFSb2bnT^sM~KYf+d6TX9@` zg!3O=f&+Rz&u>(@;-c6qqg(G0EB~g5z@#)N5QvTtNj{)ImSGIG1Uj{1%X#IjrX0K^ zyios%p~fQ6Y4~+PDMvpjkzexm{NoIIv^P1J7((8sS#g9Q zXe{T1!YNtYK!l*nndsfzKcg3o;cY`GxFw?Gw`1Z$)}Xb5wGx!WiA7ns;tp(^(9;`M zqHQwa?7TMw#4<{R&?7@B!qYl%N7SrVt1FfLFHr(t#{_Buntu_~0b1p)+$3a2-Bk*G z(2ua)g$NEiJK;FJ=+9XMh)aaWtB~ReK1NuGAq{+_eJV zMRlCKQQqN57WAWCeTx;>pCGR?_)L)}zS+nE8w)yneFc)0H}CK?2AuvbG=pz4a1Y`? z=&SrQA?cu7wQBGR`dfdVLw_ z1e?_gipa!*hGDt_zLg%>Q~Dq!9>i~jP!$bK8z$i*Wv5l7(e)-$&qH+@?G}|e`h!b_ zwm`?WFFhDFSQt*F=?H@3OrHdiagMo_FpOTo4}xl`H`0m)UE|*+{`rbS3;Wrw+DOq)lDdaSG)2?7l7#6513%preO$<$0O&X`h;ozSiwcz6 zZ^d&7*LYM$(kQ$D=n|#{CE{$xh_*mk<+5u_pCE6B-qE69xN(OcF^f~wTq%eXSrNuV z!mvE~Tv(j0TL+uyS#_9$-MJ+$n>Uoy!|}>t>eu_H#<$T+;-zuL_x{{=_)d?%tkr(cLn8JqNO4Lj((#!&yo47#AI-Y;q9IcD&Cc`O z8&O6BXdOBoP$KXK!QW)`StF*(n;)N5-BN&V&F(8Z51w&ubNA2Vz4~F#2tlfe&6Jpk z`^mkfaQ+)zR_z&rTUx_TFVEzdpg!+9g)3*voOF0UbPvpJ)3;SQz` z<93a|w5jd7ix9O$eV^ZF_t+Mpde7ZyKjWV*I2&JT$@BT`>uACDWk+AeI9zQpnouJ_ z^RD`PJVA=au^AjARYDJTK2YLRLXP)WULXbrhFL|9TTHW6*D0I>aSuX&mPIUuQFSim8PV51sE$D=J--sd3W98T+D zNFV7|blmbQKqxFgw`*+wc|Ug_Z@N9uHB*oV zQx9lKsPp3Wn+oOi8@#slq<>!P$4~()3*YDiFLXN;4sN&*xgRA4ET}x>)pZNTV#dz( zs{wZ z2Lw{FRjz_ilmw1|IyC^`c6Bpu!QgUpaiPqbeeqmf=CAuk0DnF`RMPmelSg|ODD*d zlfCjU5$!s@hv(D#mi%w(%wFGFTym*2 z>VdJ!$>Em$J8^e&$;P9KzkhZ@rY0}-hBjWVeiH&uS`MS&!L&Z*YGubw)>~?Wl`G+D zb7t%$#UD3!QJ#dN4#0fmy$JUSLNHdXb>|zAJk~rQ6Shr`nM9*6+OWGQB!Pb7DI9Hb zfGC`5wUXM{5LX(WL*czfbdW|gPtnR`WG#p)AVTcf>8q|eo4pyQP z`*mM=d_~wu&Q$h{X-b9up!<{uZW(?wehHZ(U%}>?aJrP_$F>Y{!q`{LII)|HbO-YK zs6x2n7&YOGvghLu0}OoSsgtaKnEBas>Ph3fH=Vg4jmbA57y~-Kp||pbGRhPKu*m^p zcKS|L{jSt~Ss;;;=%fNM@dfe(T)wPMHbm&&5&R%wOAt~;2UYfOj?d(qOY7E>LBUl! zH-R;|*!_&xsC|7>OkdN=;*zLP0t5!JfUTh8asKA3;<&7w?8u zd-F=1c&t`q)tyR|h2e$D=YZl?+lua(1aS!~c9|x}B-EL(f=m>>gkgC}dx|@%zx4C3BFn#Sg>Fj*HRok?GbaN!=XOgICaUl5^l5)^m1f(L{h+w$#cM zsKNr_NqE99NE7_SJsZ#%f~Y7UuKzrf<4jNzMiN3NSt&F=FGu?xl|pVYJYadtDSP)^ zB%V+Yp$pi)W;uW)V^pSj6HvQ>17~wKgJ)P7d4onndO7Ri7*CN$aW!iNEZ$9dVN?Z0 zmpMtuoJBSUPSR=YgvzIYQ`MErM7gBiM)!)>=IOb^6Yz0cZE#cS$t<)D({1#b5 zvc!~05MASw)z1s*J8XeZ437owv$in5UtTb!r0$~>f}Yw&W8Y6SMvO$;@zLfOy-w2I zKrs#J-aEN=o@==>z%Vawzxl{E-mXQW3VpKX*J$ItxfQXu`%CIer>ffFIVuApE#v=e zdioGiEJlL*HJGhBp975?RvZhuul>a-s^-~+p2PxR=h$_SR$Cw~W^C_tQ8gJFnaaJ| zSjZN3>vc!pU@4e2-dJsP+zT~)-7#ViDnv~qwpzVVMmLA%KmYF9uP2)8km5Jv*(&G_ zCMn^nt~GmF?5XlbHm9OA<Ib?X#y5G z?*FUyO6^%a0MF&4y(_5OGlyUhQ{M3u=E~$pQ1|G# zE3KHCob9r{^E)h6IWbm-l5J39-%}Tg8lqBe+K)TKG)*&~!or70it(b}?xr>P5f!sM zaJ&bd2h2lP#IXVbtb9yN$fTGUYCNt3DkNYJVP>iTu`x5IM1jV3t*5y+LqhiX+n_>u z7HVu{eqJhK?f$WeN}r0}aMk6g-C+#u;ga6R)8&I@=-+=)p$1CLg8p$#+B~|(sF-*r z9+x1ucd@zdkA1^3)GEIX*%@Qk)NQ*eNu+>imC)-}r~XHAY~=okRB#OYp1Kxk#*ZkGOB%+^}{_3SG1weQ(q3%sD;dL zQ5$}o`jdI*DdyZ*=bE+$g1^syP(D?*l8ZDLLrZHFmvUE~cg{9j51nd}RQYR>1|Vqm-A2#w`Qwf+a|Pyf$ncogmdguQIycnaNzZ=FEklLkt!m*obUAlv9Ro6md8Lbc<_lnh4%{9pMU20@URw)il{9`Kj>u_YCuQF6p(6hhI&g)_ z{@Uwfb0GpB1uvM=KQuNU7nbM(*1Wy`;hHuyY3g; zYq|prcRKaHP7FJ>4A#V+A;s=*tR6&qLkIg+U!r8OppLy3axl<{sCzf=R=-tcilU73 zXC}VL4#P*`oBGcMzD}E2nhpUf*79XakF_`m$9k)J@&}X~I&wBkj^5#L8o)LyN1Bj{ z&PZ$C?zh=xhf6XsVDIxa9hHXakH<>5y zrX6I0_&=D^rDWc$P{uYfd*DFlb~zZ=P+xt1ny$(x81LcqcG4jf=~ztAFvwp z${M=no4sVuZnd#(f<2{ad){x(!J@s<&ZoZDbas!E{HZax0tcho4|@ix`hw-@RLL9r zS_dqqV<1Q?Hx~juL_X|6Nfg;T)0BXz8b{@!6!9KKwtUF)YO4AmcK&CT3jRLIGWC(U zdGD^iv?uE)uIon;Ba~Oqt;}IcVVbAN2pvrR=#A*6Aox`foLXe4uORPU`T=SnXLbJI zEORa>V=S}2hCoJSdo+rt1O(XbDqpg%tW4^Fn zBsyg$1ZtHAs$7J?ZB|_Eoi}m8Vs9#7Nfu6}c@+yuO9j)sr*S3OmK(Tb>Y1RW88t>N zCLrv7=)+HQI|Lfcca=zo;)aWF-Q2Z&nkegz{%l7nQM*ikJTycqta%B-hSGxV5jn-i z&)3}FlyTS7!#Lo%uexz2$??QJyVf4wI|YWimXTwX^~j$3^vkcV`tM*M80{edA;mm9 z%4&H`hr96hn>C2G2Aa6zjP%>rEsCEBy3=ScisXg6q_0vBlw=jVj6Yg(3a&#Y*V~xW ze=S6kL<)EG5#-b>*lcECb?H);*pn*Mea5en$RTU4JBzW|4{Y{&`>g}S7MFdgdf&Pc z)y0{J;3U>cxND6hW!)cNRs_id&_nqnS?iPXtx8N2uxVsYwZWniVcMa|k163oj$FnpJ&c=b%!e{N}(YWAp-z_CL=Ab0swITMDQdc%)i%tA&V&hfb5mz z)g<2D-U8bFcXoEd!^7|I@A>)pq07+z{{Di|{Poi{^>nq;($bfgmyL~$r>Cc(p`q^X z?xm$A5fPDyh=_`cik_aH(b3VYtgNJ@q}0^ZFN3Tc>@E3+1c6C)6=c3Efp0NadB~7U0nzSQe0d-K0dCg zsoB)jBq%6YP*`wyczAhv>Ez^;lau4&;bCcMd2w;Ey}cb26qK8ntEi}$o}RwHzi(`8 zyt1+q6%`d79qr@ebA5f?)z#J3*5>N!>fqp@uCD&)&mS{0v%S5&*x1ru|dUtm> zGBVQF*Jo>MdwO%y($ccFwiXu`m!F^C*w`2o6SKOyn%bXob#+xXUKZLBa(;e3u{B;Z zUEMa@I=eq>V`Gz@ogEF0y1KvIJ>OY6S~4jx&K%14wLauo1~H5R9R&Gos8b;+SwAEBjmBn&r8RaiQF;BH1^0m+Rq4rH1IhepI6$ zlvHp^dU@sc@CH`Q^nJ3KuU;wj14!^Y(9!bXVPMu<)#|ZO^S)bAXvO}0?wgwneXu=e zAh$6Df}Ndu*X9JDR^OpE-;lw1j(tDL3j@yj5tKS=JP2Ht99`wl zivZ3uH>z&rs)T@^$u2)gidX=!O2M^C>;U+lj73TWUIcifdYi#gLWKaom;LqmrYG*EYI!G1y zX)$Y=1}N)$EwSoK+i}1qC`Zj~{$#Ms3Y7K4a9bf%4>Yg$h6m&4G($ze(@=J3kgUB?B9Of?(W zKHb?C%xP~e3-&To3S2!EOS5Em&2W}BBLT>+XOc_ZCOAH+dV9J@>?T}(RoNJsyQg*_ zkvdiq>!%i-AInv^r#TE}C0+~KuY4`&++(X(V2GFtF8`0*wmVz@=i~E&>?b%t!n09x z=u|mZ*8_gPTu8&91#bCYiznOo6|Sz^Ul+GV>_B9W%;+K>tXyx8tRojbCsHIEnk0~E z=2*Y|++)6a?@&wt`SRs{NH~K;#~XEM6XI~Z@GA!KN>_*c`5edT<9&{O-H^480GCBf#Zfvzf=9iPoYphQT!Ix!u zL)7tY_do&6H$6)}&9+c;rKKVn(pCg6Xh~eOoSlsk0?(P^SFyDlBJFSH0GnBrw)m^^ zddKLZ4h*DRJLS*&r6@alX+AFCKC|eb*_DgT6+AFgf4w-yyKSE7kq(qt@{b5-C0Q=r z45b>u!Ls3wF==F0+wyC>)xC#Pa@{I@?u$JRHGPT%iAY;r#@2Gl2$P}$;NOXUL7fSW zJst7@2yTx|-FYwWUtzBeDN8Q9J_bZQy6K>#;MixXoE*UTWbqxXV?gy_^vfuXTh=B8J0)Sn=oaUD17sPTRyQo($`}3O>fO$|> zlH)?MOC}m=k)X)2xNc6Iz7g9;vJVkDo5M}-zn?300>eS zYoC6iX`*$~J9TVjKLPNOorV9kWh5TWaetj-mGRUh)ILfuvxssv`OGb@ z>g4o2l^14^0A&cTx1M=xX_A;CD4M?B&Mhc%4Xv+!nee}wdz+)s<59xwUbsJt^N$lO z@#()XQ`jzjO;r}t#Ini5ca)1>A2XDmBJ}^*ywl;T*&H1mgqtr%&lO({n!F-IoJkYVLlOwo+t%b!ofc#d^_S3qh|cq5bX-06c#^M3hkD(#na$lL3bpg zPZ1o0%^6h%hQxx1(CKDKh^+e=mKxR6P!=b*ECxDyL8^F2F6F?cY_KRnXPKLo=Zh)f zTy6{?H$%w1rCX=DjB@bJdZT|Qz0H^?Cs3S$9^YZ5VqHC-EfjqTPlXd<&{)R(Vqalj zJ64Gbdf4p(6~H?2{~i(+5@t!1GnEVSR#fZ%RzSBOmqX5YMFp$L+_s`5{K`hgcS?!a zSNl22@Q9~R7}>B({yPn?9B2GKA#@30euc7t13@s};}zFLhX6xjUlXIPiP#)=VUg9$ zo(}>eevM5-$v4RXao)B8q6Q?(+{-krTf#9tVbLt^r9ko{Hf>YWqLf68$+zU$W521* z8~)bS)g|FW>z^KJ5#m0Ilr1e{+Mc9L_Qp>7jX;h--l8WFJfbFX`wq19GRQ2D2XLT05$fjl{=)d@QOCPXUnSZzeNDEwdRt%YiI#8hW2H@8* z#Fr+F`e^Q7FmMH5hZSRDe+Dzf#$veH2i(IdZ44pS-XnV56fJ1`kSr2YjHg0|r~R!c z+q*K83il>ru}=8?UcKw>@Oe^4W;+1=Zw40gFgz+hX7Q}C+kVrq;Sq;`2#mC}tMZ03 z2vxE)K%EM48jVvg%|HovHHZ}6Q4)TVE1}|KVEBu8k|*k*ao^XES1s0lRR}d;Yv(t5 z{#{|QtH_tODP3eD(L%ykEg;cNr3+M)?n9Uh%!Qo-?y}WXCYOF57(oLvElWf2wbu7I zL@UDZ(Y5VhvkQer^cy=yNUL|^q8&`!%9m-SI&B3Hki7bjSs5UC&S`x`L!Udhv_~_l zk#*Obg{E#{hg37u9X2`+9*>wTQKbD;I6#u)`6pl;5_U?94Oeg=P6^8DQlT{)x4_xP zQQom0ytzh{Y4BoCe-M1;^uWV$O{IZytp^(I`(co9_Ws2rVMm!#SQ^ zgt9~WVpPeA97zz$lt%jFz5tQpLp4gJhx%-I2rH+M)c9&Ca!BVbM8jW_1P^2el!mc$ zytjdbN;9r03i0?nUcdhUX@Q4_mjt4)PTm9|sviF`>K#rcZ6H#UbMng0F+t7%EVck{ zj%O4?l@LA{&35+hq9Rf{Oe4wSb8kD;eKBQgV^1KxoXbE0QQ(v z#0ABc@TCheEjNe8Y!f;Np!aeSy@QfqMd$5MVrBR5FcfI%!PG(kj?YY686gUO86FTmWXjdAK#*PhN7&aqvk{9Om2m?h|St9>-#YL93bT;@#> zHSpO{kO<1(rzuMH8}y7kzvuaez{W2j9y|pLNpCK6?Ciprq|R_!gxNpN&66`^rUifU zPfgHt^<#mrh5=_}6(SOddbAvWXCQA(H@cE%6jA`|15Af%I(55ze`z4&EDsfe5RqG& zHK1Vuv2sY;=E#tD5tQ_)hkJ7W4M4Ydn`EEyz+-)T^$-EvFsCpDp40%sNE||71UAc{8tCTy>?bm8 zsCE|k7XiwH3uFVP?2ABvq-Oob12$WL&_60~&eFip+<>t>xKdzrUFSYuqy#K>045gq_DzW;kR$m{dF3t%A@3Lvh38UIqZELkBBi?0a}AoR?7YX?rDLp)&r{R+UD zWph*FZ=S2MfnmrYQAc{Xy6czm>mj8@hOo{XW`HARz16R1ZBhzXDSvD?JkwAZ`kF_g z*=5U}jlg5{Po6=B8~_id5I;V8{Ix!(If$sPKk>ThZ9O{=l*IMmv$RzEdM>m0eu=oW zTN6@m;OHLI-vEHlXLRKjPsiNsHQnxYrjbzMYi5_v5mWx8y#d>U#Yb8`X~c8y-&-;M z`dr(VkG1dyCTOJA8_%Tp=9|Z-Tl4Dqo|l`(g;{z9@pK+*8ugkCk{u)Ku(;~Yy6ImD0$4`EWjB$OC&SfzjUPWvqgLIP0X5I+GB{*Q} z8V8yeHQ==~i)B#czW~R3A&o`@@^V#s@Id?z2iefdyrbz>kjOS(kp$CWeWNLW*)}vS z!&LDi$!85D?3Emm9)N9d&F{ELLeE4@-W&1t-o=Fk92S7ko+*JuE< zPG`C@d1^I@ln4+%YW|bapu$~53=d3YFm#U!Qdj-?XFA(K-r16XR}2ROk?yQ?GWd}= zZSqf4f0RC3jJRF|$Yp0#Y(`|CsO<;RWnAtefMe0{yA1D8Xs-p`@f65;@Qi@Xl z_4hzp)#U3`>-T>lEBjuN+t=Bzav9wHyPBo;>9^J^l8)aCP0A7MmJTknPHcQv9%)nT zYJ$_PM!5El=4O2@&7Va#&VJ4$?7m4ycd_;F>YMbkGey@lM-JX4trcoz+Gf==eW4va zUCnCJeR(b}H6NSsxtep{xgQID{Ye~6oU&B^XJxQ`2ah;%&ZXpA_ru{mMIXlPX*FFm z4X|~O6H2EKk<(Ka*_MFfUf1T;QU-v= zbs;_x1Ai8Tc5hC~I7%&@kqYtEg@o(h8)V--o*XJ?BH@XZk`A06f)_F-1(4`#0&Hw% z{0){W)V}-HsBHpsRy2ewy&_$To@|VLdGDbfv|J=pP)Ldy!V0h|J1Yv<&~|^0Ab5_d z=5RgH`<5qw4OP(g(4A7bTTm)FRt!tKjp&kL>^`d&@9L}J{o4@wS=2{AQu%GOH}S|> zn~9*#>iq&JDjh{65uf1K$D>2|TIAtRh~&?l)kaGu>M;o;JMBiCPPq+cgd;n~6X3KB z4{B^HosruqIEnO(CK)>;p?6~5f$Yxc-4g6!29aJ70(b5L;f6_r@DQ#@nNK-Ei&48D z9Zd*0zaNI!6SUQEerR7Ec}w3U7Pp>&xsM&%H5;aq_?yzl+J3nFw_1h<-lmC`xM`9c zBE^UBheq=Eb(Vtt%^X!fdya~Fy_QNY}@wSEYhsa5@fC<&;iM zSi{^td@AO48Zf_cv|>px4flCO@FDynMwqi z&%e&chYqB%{EkdhE20SfRLiUF9e9JoFc6uT=xqL_8q?%UJSS+o6;>j>!i0j`U<#M! zx5Lx!+K?O!&rqb&gwjco*|&KRSN95bl^82ttVFmuJy;$p=rKYPIG6N%8xn*tlIvIgr; zR#g}TJo)w)@Ugo7^dDUJ^;o7-DINTE?7^BA8ajQ9Rh30=ZU6>-xZ|REeX^oPD88sS zvoZ!O*lg~k@KIj9gpOPsC$XNTe_AN%ua^tm!YTi|_V~ z<+b0V=kXzwb^KxSObNxq*+l<6+Q|lS1Xi3OXtEP91hn)19g1|1+TM-u-ZMA!_~d%2 zY3PqAv(ZyP$O9FbnHqmaxy=xX)7?AhQ3rC~B^?RU1y>M~CtW{LQo5HFFolvgXE=IB z_JpK+mi>A)Q<-0?JFUf%yts`ELDdT2oHtLcYm+snDI|uAL(g4NRFogOS8qG z&nyA-GkZL^#^^XrR6)eQ<)abK*(x`ruwQkui%2cm^lEepL8v;+c_T8O@INcJ7V2B4 z4c^@r99`KX>iwwXD_S6j4B476LqrpP_{Q+`Wp&GHr}L0BVu$yGB5yB9BiM0&ijf%B za|iQ$9UB@viRX_b?76xDg7lkUJ0 zwa>jjRX6{%9_+yzY)s>GEXX^v;FZ*8N&Rr-B|T7i`Vj$Y051_z^|UIVT}(Y3T?bh2 zMUloJod2S3h@5EYsVvH}fM~;geGQYNP^|fAq(A{yGPhK2iT`uM=_yMcdx6sjf}KRk zvym!w38Z7fBb+fDL76Tfg}m<#z#C@wf@>{olpwYVoq#Dz9;O}qx3;VKB@us2VBM>= z*BPBXUB0A@&d%DVoE`T)MVH~UwOE#T-st#yvSLzVi&~e5A3(@yG~W0n5+Sq=VH(x= zmu%8=P=mR0=|P9^$6ks0_n=MqF*o-wh5H^T%go8;A7o_aQddD2)PJFxKn)7#hxZ09 z36d|H9Y#!ek!|q+dKreA8Ic%S&^-#yomNbt2Q8aEyIqSs9Bn7dm`)H5y|E5(BH6fkdV`76c2ZcmBn zljxpJsmu|-_8L-M?!?%Ahe0B_w@!_Io8yOf9K-kiJiv-4gL;Rn#jPtNc})oXWT^?T zw$|F;`Vu!a!PF9tk)X#5>`%F2Jvbe4U+PNEqXVAT zvZi;7cDvOVa-oO{R7mG-ckYkuF&Pz9~gaI)R z42Q037b_95nuxtDWa=^zBEie!~Tv1<5Gp?=YdGX+@LAlg-~5HHUCc zH&Y5m-+xdM0iv;K$POQ{DjqKHrS@IK-pMGunvYt83Sl4x=0mytR*I!&y16*w#(cwT zS;_qF036h>Nzh0$&SAR8jhAB1MK1v^<;)BXF)t&bu#b|3iF0iOHc|6SeFelD1JO|J zr&{dMBPZ$4Ohd}@oUgcSbvR(d3RU`{WFO?Mx&|a#bQ97*10H#D}4A_ISygi+;5i=ak@<-tn?DkD}m(Ux;pt>iww34h-m zuSG`Y^;uu{CS}dphTa@_ow8fjX$GAk)FiSMlTG^wt8mDpPYL%}y@%0e#xwDt4KaG; zEJiEj46Fl^Le_(3w87|Gj^GoLd+zEWwDw6>2+%HJPqkm`NeF$je7q#>)9lO+G3!8U z62Q?9_gcitFlvR%Gi=ETCj6}!-hxSj5Xmv^X^l0}%34CPJQT^wY3oefP99m^F5u7V zb?y4rhXEXSmCyhNg$ki7*hxPr&`-w94A zR#Kr^ z)XVbXJAzUH!iny&D@Y+NR>F`_DthPdIZ9)Ex@ba{`CFwbv_~PSoQV$pkj%j!4$p~| zyq6jkH-CU_&oI zUVfxA?m~W)9k<#Tz!;pO?FKMi=VzOAN4lZ3o6Nj_846)z-m;W6u(%1Itnqt(dcv{z zu1duoIQ6kSG+08lb^`kx?#zFUG3kx(cVhY;N~_4Y;m1aiVa?8gDYYFU)Mo6vDalPQ zM4?j`1V;^XIrOm0x>(54-jBNVC8>0@70`Ekj@Lk1g>FKqW{1Q9`a0Stwz!uLC6mGB z-9Gk|>z4zyT=*A6o=29+YqEW>u z(-z**>f1Me_Bg|7O@?vwdN_RxJQ#-WFGA{?g9%?VR-b14d|@7UWjIe}!$v3l5Cr^x zSWzrJSy}F(pp$3mOyYV(SkS~NwHCoiO-;Hh^TD_mJFaYqjG(2Gs}TzuriXyjvFk3O zm}YH9sI^51jx+?7SFC9g=~JJ2#W)}VsCk1y1kTYcj&%dNppXtUhOZrHNJn@Jl<154 zH`-ZxAoTcBI@hwokAVxIB`*ZW%>x_EBT@n@b2bR_2)Z*$NB>V!opm(!uk!qpf4uD_ zH<(fJ>FD6_6mNNzfTvY(B!D+QL4yV5r1OWB!(6^mM42RMNd0`hRrx7Nv*HtTFS~0$ znqBUz{L6FcFV(g8hkv9;4VOW3eQ-*SUHhL!RO3AaCKTI^;2ks140(Q;n$mK3680j? zr2BG`B&M@*T5OB$5$458{O&Pyj5V{1LdAr7ILz4X5t6fg{=mjGSC`+XAG6V(i0YCc zF`V?dU|9~GDMFOitauoConZRv+UJa=%$5H_E$6x=rXQ6OlDLKk9maoiX$^gMcTwq) zpezXavDj7LudR#&pfl)#%i^Lw#EGT}B``yI%&xz~vo)rgjHK?t+`E)!7ji&sqF}5p zKDHe1U@MGJ({S$O=n}S@znd!%>2(8-q#dTxiEba1Q?j-DL1WS7i*b#n9%Jcz;xj}sdFfDQ1ui{#<3JsexXbgYF(S`B-I&SOow zebIL13F^5@@pb$+9z`urOCk7u3v2wcgpM=xb%+Hd+%}|WbJ(Ur?W*_l9u4BE^V+yT z5G+TyxN*iXw8Co4zXZ`E-w`RhKwdO)7gbxoL8gm8&`kco!}DhBzq-YN6Cbc;Mjd!z zMl}3_Ehm|N;WCQy*N1uL36#29Ag3%U^aj|>?*|9*?S20C^@3}FI+Y*np6o>;QUTTx z_J(ErW7_=ToZ$(HVsP@Eg_*}+6IjROCe)Q^fG8o;_B_8F%6FTNTKGBTVhAKp?Z7DI zlE7d<9(UVrNGP`%ahrKr)a^!XzVCy?Y};zF)_JE0<1Ym2k9=iC?ERMFL=Z*_MH|;` zD907i2|q##1B~Nk#fp-@Q;Lm`v$;;BRpCOfosK)Bt@D*MEmVkw^UeY%y_hZfX~JSx zPk{^zNV^OBmL;sx#e+8~t?-=Yw68X8=~S&4e0*YC6uMO9cQ_@UCl#v59uq@Fqkro! z=kC)uS1T>sG93=o=9p-SIgamuXO#~h1R%|fsxt%vkSA3AtLx}ETa@*{D_Vd9l7=K= zVSxnccMrk7MD1N)ER?Jl?1Du?v3l$cSOA}qrnNv_d?As~a*3yic_T=MfsKW2aC58P zJ=Ex?E@){+q-Zge^Lmg}T?yjUUPCwF^VArhOj|v(`sILognZ}qQvJspY%qNl;K~H) ze8kuJ{4-l(UKNz&?lhKZlivgG;dBrX-p{iA$joE9~ znjEZo^t(529|s!bHs)9yHFv0W-^rQ-Yt=dT(#fpQFXM$aD5zN+&O1>Tc2BtHBoL*L zBMeKeqK;WSD2@TZV<_j;nO2jf(iv>_9Cb&SH;gu_V*wF-EES)$7d5xK3kSaP&NspN zUP(}Bd6Pi(*ioXHCNj8b4?Yt0{i%QL!c+z94+xJZj93y}S_y3Qo`)>ycWTyY8T_na z+01SI{j;f2xK0auo-<#*H-|elPrt% z3VWNfuioy{;3c7B_eOq3eEH8W_iF5fsDx+tk<9u%*D=i5VVu5#lnv3?_F~SzF#uhy z;3oAjfKM?&O%S6tD*rW>q5E+s)u05hdoFdzku(l@#SoKP*IYgycK|t50YX?%Sk#7( zbK{Q)=LvrK&L|{8A(QW+fob3N@nt?*1#QXa^DSXPQw-OD#Z}3z?+EN2eWnpfYb<6B z!f-2?Q9yeWgA=q!-V9yKdRx9pY~V!h<4v1n3U~LWyB5ut*r{zAt*j6meToUARudUM z;WaAfS{9n&-mj;t9>YYCN&NKRG|XETvd5fW4|U14UH=hJR)QXx=Y0>TuW<-@oxGO` z{TgH4%YHpWR#aNKsNM}o{WULX@duXx9oMWt5OS!cTIK*ul>P18@FZ~js!lY%1SW{7 z%L=5en2gkWI%*0cHKe^#69g@Iv$sXdvH$&B(}uc3|5dGI*GRi4AE+GA%z+X3qn78T zYQYOTvT%@F%E0-&bQa-iO>I88NEbrNz19lARtqM$AU%_Lx&4`z#FPNtpDMPxg?!VF z@KO3vY+M|yVl6{aj)y!D;X{vDT(yuo{q{zc(V3X0r?43#nZ~u}g}6yn{Uy}d?bmM1 z+*6IgP51Q3D|~rj1B>;e*KInj?^*of-yHqb((*lrSgVo`XRhVD+t=Ip$z&#TuZbA1 zFTco$o?M^9Z!vsh`Yz*G?QSMUX2{eCg#NLRf<%SK^1%#|8gt z{Xjl`xGNk>_*00oy%zY+VTxu(X~eX*KsD~>bGOCrIn%5Bv*|q#tN>4QZNCKj$`_9G zya^Y)21IT{Anj*<$+XHIdpcVeQX2ERM;Y*gRZ^ki(C4o_+cyNoU^D{5oxcGyC>f`v zf920P7|H+TX-${=V0l4t_aKkhQVt2=Fa#z)BfCXA)Q2>|7(6lJUITX=C~8b(=y3jnYPQOug?-vmiQ3vP;>Kxx_6 z{C_%$Cp^04oULP8X<0Bb+%_5TXWS}WrzDYurw_@vqpO)*ob&+!h?i9S;T_?ZyaT(& z4&r+IdM7gpI7TyRb8$+UO4WEMvJJNU4S<1*g~0^Mz7YvU!u;lQa=p$tf^~>mRs;Lw z8BV?ddBcM@iTFW@bFEQyzj#1qqR$)8E%~1ak{mSxH{$Y+G_S(leR zCC>6Se5>liL!DBq<;yx+_U=XwkifT3rsKb?}RQA1#DNu@b!m@Y**+E z`3BzJ#SUQZ$F1C(9SEPu0>OwJwqaj*te`a?H}punmQxA+zoeQiprWr&O&&bkGd`rv z4TcDJc`Uz0Rw@sbgva}zK=j1jLjlmwe^vHk5HE6ms6FU4C4Tx|X5k9Y_Ql-6-kx;E zkyH9^qRBMC6RCOQC%`1YBdfm>!9+mGKnLzI-8`trR zUx9ggpKI8mz;XI!u7v7{;cwHpcd%@}avGy#1scu%ycV?w-(UEeEh}R+5&++w5ZmPczl|i!QvLGAVJ;A}%N)z1p21}h z#=d)P8Pl^7zTr>6?5X~6res_Nq0{(iM7~?!WqqoHH!sz9SMU$+s>;GR@ z#ZZJK81ZWbi@$q<-Scb1SaOr!^FhCvO4DGMH> zOm_=~jg5rc(-*|LD2(bgzq?lG9X7by0mp@EU6^;29qSyssLdm^2ZG@KC==M$-=As| zUIhXQ<(J}Y%PSVAc$81<@bxVmn~Gc0ug9Nl zGy1pxXA_4Xjd@-xlm$aipnCr%su5fbrHvt#y6*_|LrJd|VoO9_Nl z?(8f)qojpr|L#eB_wi-?>%U$s1H0P%-f-|{2*Z~d{>j{-GP&;O)x;t#p@Miu{NMlc zyk?Kw4m%q}u42JSi#GP>r`q!1E1L8r)b;r>fbuP6Goy-9k8bqrr2}W_&6eD>brJ|rE>%{ zKM*#;M1=vp@t1wC)1 z)*#CWmsGI&<_~;;8sSQdj;YVhcVkU??&#!(|6SN+7A(ADuYfDl!6VG1`dqMp!?dv} z%DgUKq+kwSq}d?p9K~-EJdwoU6HE#1$iGSyyu-0-RQ@X^rf6QSD4buvbfPaM1ISqB z=MmGWsCmQm;8DvQI+2ET%9|?StJ{VTfE5N@%aJcT3jgl-YTFUSA2p= zkwdm$**qg+qDaFZP`rVVR0ept=JLX3Ja^i7kmKmdJ=gx{?G3n^qF#9sfI}?-@%)eR zh#^;?+ksW88TAqq?eOjI@+mk}Y@z|7k*!Ul#WK)}EQr4(Pmf-;u z2*_tO&H`hh!Rz-gVT2%-T_gVg0sCI^5C|l&i|s%DyXdv`YO9u&lkpgeC;U;GTUd}{ z;I^+XaCj&*bowixbLbj-w6h);%B;w{@RQ$g4sHFcy!9rv z_I>Mrv{bo1W5GlYVY$WHFOp|;xcIlJWX?()m!(|@H8YFzb_G^uncAGzk_?t&|-pmc?BpuJ^l2goQ3`} zn!hmm#eAvztZU-CW*_~Scy-Mz$Dwb5&gSkn`9I9!Hfp~7@YoWkmXxEHKpR^(Bj>B= zq-o_{k&yT!>H|b#M#dmhmQ0`FM_Ol2Z^=z7Y)-7WK%rd zHJ$SKkqh_bEmY}Im#-+%;s+RkAAu=8-Wuo@t>^Gbx%NXvQjpx-Ful^mE)N1j!t6!k&j9TRd?^q2X z&?38AtjHb$xL`<1&iGY@7d?qLk*_U^~eV&(&x7q z=1@N|M2aBH|Ch&orjOTwjBYdx+iNTa5{fK;5sQ*&9w;!qy$6$%mLLGj$<%1jhJBNU zw)*+?>GN9ibih^`#~wA^<13zKbX>j1yP1`h^?MR{A`kHFz+;B_y2f6-FK%?J-U*`vjZ@Otn{&=hJNs!FVOUfaPTj0p|_(IK%1fAd`BA3)u?@oHQEK> zI#K0cXoZU)o-k8kl@KsKWvEdU!h;gkwIk;-T@r*{s@XZvB%@S#g)rNd0lv%TBv1;h z8U$q^nGP3vYdD+eS;(NVMzcB1&q2-31e>tA4_Ggj&QWbn_~AmI7#3#W*2T03;1F6F zO18Hzra^D@fX?aecP@y+E{ztOC-oD%=zf00wgo^Rtjf+gD4154|Klj6VE05N;5*drJm?&ND6AOj|J{*@9GeFu`3|f+25o> z$kefT5(EwJBwYFeWBRF}^=Lf2T#N0paOcOCF*zIW%8C_iXeh1dKa-tung&Ozb=`n{Ic|=i^2pOv8EPTE*c^2$jrMy3xEQ`qx%< zmORy#UH~tW!!cqYnjSKD>-uHKhPYN+#5-nyb}aUCstRaC`o3^V$}z_f$62#_#$1o0?@FC?Pal=;0ZE8s!bz0 zu=KQ`<@R)7TY?YAFzzW(Ax<8MmTjYno>3$vVTkv@HvLkB%)hiVNx-;s2_qk>48%$T z$s$B>>LQ&;1y%-=vjk>JMBw0Ff{I`Gi1VMw_QH|3SU&hZadT1w-NJM}ofsyo>ZpO8W3hW|c-n zFFcT9XG7Xd9P4>ILnSy*1V)Iug*peiVTAId4{!##`fW7YpsZ)p*bFs5F)T#W!9Ji1 zmIrG(er+lMN(ctC|AP&h18nUo2Cf7%r6@N+CKKh*7pL0Rnc25M^YznN;NXu2Dca)%&8WIpPlfbYC7;Td{waPWQa$LhvIXK zwJ)XngeT=M%%2|hC$wL96Zi7d$B>(lsVthDBDbQN+WsHsTJKFKVid?D#ORTcKd@mw zIk+`cZ9Jxjqkf?d_|Mk+vqs~&zs;yBz@!}zr9j*N1#+y^N3)zx(r!T#d4OjNutKTB*Rt9>B!A56!(kz+Z&NfVVo6j7>9ovZ+U*u651n(?#gHyEnnd4@-}m# zF+K_4;i{@!bRbZyPG~Jr?!+v`CK0Pqn*9 z0DzA2{+Ic~R-PZsLd1{BEX`|vI10L9w|tTOg}*C#2qO?+0mJzO!AxA?TpPvDg3oau zogIx8=B5M=M`t@1pAa~JAh80jWZDb{%9{ZQ*Wp2p2 z0t?|m3-j%d`i@_o^$Q%6NqHHCNZ}y{;q57z*V3@m4hYHSw=saoADYPFu`fSn%;2yI z!)G4QS`uIZ%9Eta>6KF1N6xGv-_rzhz8c?t1Z}{uWwV~SRa3cLR**TEUb}k#_e=7K zN){lpE)($cUGaAs@!3m%A;eQ^FwldS3McAHY#y^e$lU&8y)OPq_EjbU(;pC}v)h`8 zR{W$wh^=Sd^*E}7FlPuM_wtRHqAynDYKK{uRA^XU6Ep<_{x?^6F>>|isWf^ox1ca) zneA||sgzR6JEFJ9cY_Ch-v)oBM9~nCw{8ljwEEEvI6WNqbnA2+7fDl|Dfb_s)D68F zA;BZE%EXbLnP6<1j>Q)6T>O;IC#7GC8^A`z)cnGfwT`59RUCHzfAsO>;ZVL^KeJfM zo_$G-U16fEVbn-Ww#qI>*%?z3$~Lx;H8f+gW+z0Z7-VaaC}fMm7_ww7HDjIL>H58Y zeBXP0@Av$1uIHTlT<6^PIp?~U=ef_hiqxNYdjiZWRS%uL$^8o{Zy?zFdIol0f7bFS z6o)<%hp`P6pg&Qx*gtV?M1}>#&g=e^1JU~wmbC5gy3&O6FX77yoHip_X~I-Yh8jLzUCB;Og(=6t?%!3b zgbJi^nRDFnxo)=>g}wU;Q=Gbb)4`uGvj~f>9Wa-64Gi?|1JrTI+Bg3N+7Qd&?;B5~ zpY`dJr=7}Xf#;+?^Dlp`k~@FLc_V||J?e)dh$4#T%9T;kJSwU2APIoq6gbxxkMDC7 zT2MucKIbML&+Gi;!TL`vD_x-=Cf#?&P-BGVUffG?q0|? zgG9>!$@-=gmivGW?Yc%x9%l(nLoWO_WS$YqtkLBBGgdO*NrEg!*%b*q=)7z7+H##p zflg7l01KQnj2@B~ZZGnXK}aI>WqBxv3?Q<;lUhAD!F>)Q=>TWm*<+o}+5P-C0=&to+ouv+n)#398gxsBL$6-Xr> zB(VZ8u5nAkg*H zS1RE&q%ukUtYDdfI4Ynl{KEg7ofu-R5WKxSL_@J=RGKoA#9{;ETXk{1722y%3u&Wy zf#C3gg0vpftDs-eh{0#QKTXsF9e~jwN-=+p4=@YbZutNlIc>sr1NSWG)kDyJdCB6Q zMVA^x`&ct>rKB9N06Ben1{%~#5r8-VGmzx2+gxa$+`qQvM)Tw_RB*3c!P+-SH{pTS zmw{ON4TTu|8_7)SJPP7X2SN{?b5ag2d%3phM~OARW-9Vf!@Y`St=9^{FEri-i|pa# zCI)gIKD9)GM&$7vTJ}8ve%cwV%8VuO2Ugz5)zwS4p>R_41MhQMAWv%n@`YlA5aQ^- z@-FLO8zhJsGG@%gH-wlriZKfj@x&c91B+a9Rpz2VMQUyWmLNM3CWjv{qKJ_2F-Goi z5h=>%T;!pp9pWk6;dkTOxDYZ_KC{XYCk+p*2ItWA6qmrt*1+*yg36u(hIsrAt4R9p zZXU>&3$nd1647{L=oNoJ4DX>4@y>pS9HH4K(=3wot)c!QNCH<87h256M7$F!Qi#?42HU@aJ(M=$d6936ytN zQI5asgLB-~0Q;GYor-i-vx)&Y(+MH4Y z`Gl5oD*{M%(tY>mb57|eRni>h+!*3nCr+s$`C-CSl>mp!=Y$?f==K6fo}1m-QT90@ zCiZM_)yi(tkTt_QOX(FJD++jfvYYb|Vc#w}MJH-zsb`0Fc|*M2-<>Zx_sMv(R~;vm z=&doaOC|V=DSDe2mJV)bxXYBb{$cP9-J5jkcEGDMHs|P9>^02<&pisQyj#BWxVCm3 z^u6i!kw;W6W=Hl`EYT=N%m>;G6 z&+0S7=FazVgdTK742Lh;%v=5dNez`ZrufcuY>2G=o@*s$q$@3-m=)Kbu$`wj|0I<*PM(-Lz zIf>qKO4O{m@<>nnCj@8sT|lCPESnZ46MHR~`Z}y_hna z2=(F6GX%EvUS^>OQ@tkr4+>DcA+in|$;S-Fb!UOi{AXt?%T1K){9j0pm*oz~SVTEm z`587pl$HeA`ENQM6P@2$mueg1)_iWSY20GPx$F^9n+(N0f~}iss(94hB~y@deiJSa z?8as#^>quAlHir}$8vzPj{3wd&-tQ{RTZd63D5o}sq4Wcr)5dZ6E^*$0RxK1fN)~@ zmwK}EmG?SaHE~;PtEIjBUhbkoYEubjdDYmd#*1A(c~}}%6Bt2kNpOWLHF5jyU8ra) zSp7!G8FkV7Ge4(KNIgo_IDXPs6#EbsZRTqB_|MDya~UKB)%`xr65*(Rd?j;5A~H(rj1*TS_Z9?8sew#hr$C_AFGA1sG2J$^9VS;SUi|8 z8sYcxYJy>sP6`9QG45G#-PC(n<1AaxOuH7hq&DG;Y8utm-x>}|UVi>%qkFl4JGv(s z|JW`)iEJik^n#5=+(KP|=YMaU|G^>~*x0~-UlEL_sYT4fN&o$+cj}P`Ucmt<7hf~4 z>Y4k&KNyYf(Ie;MTBQrv{x8`~nm5M7z`S1vSnr+Gd!${4>(t*uDk!jZ9&IcpI6^4H z18neXP6!v;D&;f=o-((+w82(zU$FMAHnB^>j9T_M2L_EP6MCtn?e@-=wP5$p487e) zS3zFAKBo4Q!m^c=B(r;z_|1<^D1VnZ~JR(;a@!7<3yGP@vj+)0cpv>HQ>AA1bM(++2ipx$i4LZFQV|Ec zq*I^6a~vibwmDYX>P$nE2z_OJUa^#)dmqX=$^~TRcm6DX5XEsy?hIri7aY+m3rY=t+*A!ejo;2H0YIz8V1)B$*A3vSzmkplr#VS7aLW9`+!=O9xN3})$j~Nw z*P+! zh=rPC7jv>pSU{*gGF0%6 zIgf$K%a%@)64yT5x4%*??4g0_QZnnJ{}Ebk995|56?ijQ*}>zl|K*nVdV3H`3s?eT zqoht|llVFt9-rA&t^BM3;oE3#L!3bwi(N`zJHmB{QxG4GP18e=mTE7BB-#7Xd zGIeO5j&=I>7F76f*5vvIM8i^*bM4zjmijy0~SwD>>X^*M*HfU=dGQKRb+{ubc#GX5ER$daZV7yIL$5v?DI0U z;{b4H(#0O>qs(3ToUga9Y6zG~HB`#hIr^U9N3=b6`4*X9n73;Z-b~>bIw+0|F0^Uk&sF=0<{& zK{l+Y@gV++cK$STSNH2SeS&)G<7yHIXDqT!*8MRwT``0wl$U}X&l)tl><2Tw&h7`w zZfH6ga#?<*0cnc@YM%?l>wcaV%JM^d_mn5ug9*_B+Qb19OQc z0SGd)SXJi(ZR!W(g`^pYnpZQR>ck0kr`m;UP0+!t9Pj2Qc1x}kM;vDRgG*xb2awTN zo4(1#1L56we7VKhN0^>Udwcb6-Ab8J-ykPi)y{25TFkV&*!=I~F z>)0oX!*H}5R#FFJCSV|f&^gp4$>bWTWok!kM#MC`NHKv?8_h9~NX5cO&G z(H?qiO-_bOovINLnr=wE91)ZU(Dc_un0|>9f<39a@KxfGDzI=fJ*ap+f@bs<2Ba>FEeL3CAyPw5uVG#&acOVs~IZYQxNK>sqtFgj@Q c|CWH}TRa5ieEj_F+TRvaV+&;6S#-?50Ku<0*#H0l literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step3.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..ec761049e94fea22751dec7b447c084cfc72e057 GIT binary patch literal 22261 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 P|F+lFG}Ne4!$$oFH)Hnx literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step4.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..fea98499d557c2df28f3739233dbd0fb692682ad GIT binary patch literal 20159 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�q~1Cov=R4C#v6ZKKDEv&f#hl9Dwf)MKVH-| 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 Q`ku5H=o+Job?n3c4b`C@{v`mQJr=>^Fv#QM zGXJ?10Dug&)N~ad9v%YP{KLY+_V@R>go~`6XoUQS65e6RaIkRVs>_R78e(1XJ`NZ{d@86Vt#)9;NW0#a&mlpTt-Ib zgVUTxw*Nqu@M*;=;h_* z?Ck95=vZD}-qqFB+uIuw5;8nItfHb46%|!jSQs50{qEhnqoboQ9U&=w$wfs)-Amoa z7suseIAkvY zfUb&)yo|2L!hVncBk=$t_pX$@6#QTD|KDZqen?>xMFB&y4`vn4kU06!tv+bYr{*%$ z69`S3&2_voP}cIJI{JS%j>I4IGX}bpMvYYPe>9l@zfx4iSOSm>A=kJmo# zS~Aq+#Y-{yBj0^kP+>R@ej)bNgAB&WTs%qu^T{xN`4Wzz-a0cg4)ovMaxGD8_*FIg ziz)9JLrt!aLAN`tduarmd? zyIQxtsvv)b4m;yYeAU<#OipsdQ^&D8`^H)Bkmt$~UN=Etuqwq(vr;wP5u&|Cc=8!V z>dMqcx4zlVQ5SmEO+*<2xzu#_3g3wO??2ANz&r&QPyHI$r`)L1{fL;N_xUB5C&lGq z;`&N+!Ukzg2p+Mg{@2}nS`R)f9zY-)`tN6aeGQP0RyvwaK&XMccE4ZTvIv!=GX{`uPK;p@4?U6-D24_ zJxHLLJbRT<()Hu#)HLA?wA?YPB`}W}`0oceaIGBJEc3l--pFB}`vR{`6V!S9juTke z6gOW@ZedQ?zin{zp$gQ313wZc%`4w8gHrl$O>e_zu|In2msz7etpm3FaY?R;l>|3%FotUz=g_0|4T)*M`nrYh{v&7Ios0*P^)h*5VVVe58gL}?Zc1g!Pe1DGQ7 zSazoezk~yA%5pVb{0NNp#qM@@q|hxk!vF#h7=lnZh}-1dd71%F832=lucFY=gG04; zY>LTF!axEbd=u1=g?Aw&_77PM9;{{ojeq4vv|h>a@8UE3CqBytZC^x*{uYO9QV<~6 zcCb)!X`}5BWe}+3B_39;QNdxQ=Fbqv4Gp>=YXUGljuBs0+|vEx+gLAlKg|U+77QLQ z{9%gmdvUv)dOIih;D1|fz~E`_w2Vxnqg^;;tRcsO!Bak=tO2u#o&*c884{zQgM_0@Pqyn=uQ$;5KB8@s67JGc@aoo3w13= z`ww}WvK0D>B^iQ*03kbb$!gvOSUuuPd6~ZCnSz*X12(r1fNn{_Q1*Mg_%2CKL3Bo- zVJHRhYhW1uG+85A1Ra{Il|;^C65`CXD+>a#3&!~nNz@>!d_UCmGe8lFNtu5K+GNnw za>TMR(V)4no~o~gTZ~hUM?k%ejjON+A9Xa6Dwf#8*G0A}h5dUX@GmrPk23@bqaTs7 zK75W;xoM!>!>#%=lyiBhRMi*bclp?c-+C_`-JhTz%%_K{qLIvIb+^U+6==#;?G=n_2i~; z=dPRG)=uXqt~pM>iNKwcQF0tvz_zimVoq;Jbe0c1wA@8~)G70bw!xG8&~o(!^{NQO z)pWu5^AbFdw1azkR)y%JNPQv!$9_mp%>wbl5+rl=rcR74%pXq_zEIf+F5~-feJ&84w@K z=ae0(z=7<_J$kf@fW8BXhYGR?0>J68J4idfgw{$?zOeS z7xJ4vYLDUq`dR64w}1(^$I1#YK>D#Vl_gx~`C&Q~is}<7^V3a3Y}`)LJR*^jKaas0 zKs@Uf>>yrQ-#`E_>Sm>%sUt5N?bv?rXhK%#ZEpIQQu zSdT`^STErtlj^qiPc1V`6p4;gx_m!B62U%X`oR7a*F8Zgt}l_70nw(Of2~A}=~31# z!>tSl&i53~W2nd(PdZ019-Y0Y`6aFP4ZXn)Uy=a?nl3suly5Wo)lDRXx=>sFepn9! zX$7?2PoOBY-l`H_ser*ADS_8YdYGxJ!^YN+cy!+%@s#-qw8FGMe`b)j=S7EV4JzE_ zr$cpx+v1%P5CE1)sh@5=OdI3+f* z$&U@5qX~Uh<<~+32^miywD2S^7qLD5=6A2RFeV&}l6dwA5(AFfvs8O3; zZ|NVJG5oEuV)sMfzonwNeirozV#^P{{6(~jUB|~c-bZ#n=A5izYzBMQCUj6lv*2I< zj=B>WV?0PkC>EpMDT=YXCwU$dbju8Oh*U|W$3>seGDg<+l=87oo=CLx)gjJDqM25S z2PmkQe2Na1OpeLgWd>J_C*w^(m#i&vf<*wm*K7zM^CiQ?)+($eXME8+kb8KF1_l{ zj}&|9Rl9Udnf2H3VZME8X+QRGN9vFsG^@y9i@orOBAJ>NTv^UVePf)67!al9o4sQD zbh~t*sMIcfCEwqLBX=e|$I&2p<~0_TV!6LDyx$<^b~mw$tIog2Xzdb5*5OgyT5dZC z{mT%{x(sgf!=9n0wn{p9Le`?Mft!5O6Z z!`8NwA)RMesTfdfKoYyYog!^PF`D5)JVJ33^{qI=6*m`@iuINc+}cw_PqxL4(1B+N z_eAo3!O75gMU)AbY(h(1G*iX=Wy-|nNu2rWtC72h2Zh&={w$)_HQsS5F?+M!_4o5@ znNamVVsg7fww=N*87SFGeR1gK(6?R=%k!CZtmxCwx3N{48eHGXlalnDDZOeCp=ecnW>c`ab5}9eC(}0a_4Iqa37Yc7(&Ur|KLEjot zOG31pkP?elpbDM7zb-a##WaMg8WT4`moQPrXeSkIK_YPnl*oxw$AnOihYm{$3RT=V zsRXV!*tU;;jLq)&e@|+HDy^P_K7mD;vPr(OS1Ea+JCjOA0hXmQlGw}APm&2(uE8Nk zIaWhfZ1$LQc;?B!J_twb*wGtv(gA`g`7GNXT6cGM(ViekPi}cJVtD~|C;J=o01f&u zIO7?3JQo&XGh~UB#|>Bnbwp>qb4H^TjvEAC2xkFRx4ST&WU^6^xrbP)ZVx*Nx+#EO zzr`jZ>W%vPp*1oz>4WD(q8YI2g>j5CLi>lu3rwL(__Gm&*9?uEp=Asy_j{9qaJRTX z%5_I5r4&+03cPE4U2loz@pp4bTmwk?e%k5|a9b4r5H;tN%tSL+OF^_cW5dH4c0Xd; zvcAO>2{Msi)F&`vrOwD94=x`W8*BZ-UMc{9sSg~RQH`2NP;7KtO+8r;vhsX5UfD*Ou?K}&=yn@+m(VK zV3@Rom!&b`)Iiln=vpM9p25q}Zcyj1H#o-vz)~@QwXwC$NZ}n7imi#Lo#uHvB2nRY zd4F{}fdA*d7{PWK+JczoRXu6CKffu?Wz9`$0LoH^vq9gld&-o6jL;NNZs@l(JFg@g z22S-`cO`J30EptONGI~ZUc!_;bGFF=+F zBvVKAs{jTLv>2luui?8MWRDEDrk?&bBSYP77qvKD9s0Y4hAwzxIB?K43Cj#(9QYp; zsL8m4VQwcP2|ueCx<;()0rF9Ot=H!i0Ue4y&MnVK#uyC6v?{siFIUNXBZIB3X+TbX zfiY*tbmkj5NB)enAJO+IcMTB|Xyad47t<;Lx;B1Q&{D!!1Q5M>>e)J&z*gl6tqJki z;cOGc16kUk#381$q!xhB-9J#!5`(xoEplnD06?b&vsvLRVWCJY8V|)F9iat$Wryv~ zYv0~JK_oCUGj9OLG$+4vK$+=~{z)WeZZ$sYw2n=hD(xGC65{ClEi(fmqYQfs2l*nvYo=Q z8VA_k;`l%dcT+@j0e#g%^!16CyU<%a)M8&>pUM*i@vCan>v9uquFyNnZnExjW8` zK#x+fAcPOP0Fcch0+%iA!@*Upj-fHd zr{oqe8YzUluLvb5sMx?r-(L$L&ro037YeRL0NYP?4Q&9>2Za@&ej0{@x*($^>Ssl0 zp@3`Zm5eXRZ8xSZ!oeF-pe0Q?V&|oJkQJvoyG7f&<1%zk*XQ>H1_72Yh{hQ^vj8AE z0<6ikY(3CoyO<2}`p$oBP7*E4ro>8vEZe0a#t%5=;YR+JAJExLe9$TQ5apVmI{fuW z4n3h-jtr*mFW4&|a}5(@?)^h3nH!*TSdBie>;&u>6R+=%RLo)>>!PP*HOH!Sfr1Kg z(6mnftnTPPtRE}bDvdrtgseYTHw$uF)ZrwnAD59VlwDlw^#0@Q<>^WC`l1Yu)wgx> zj2@_)p4faj8i)zx6yWn>F_3h0!yKQQy7oW`W)DcvVtJeXhG&F+%T_`lez&XVOy5c7%nT8U>t1^MQtUnkvM6@lM*=!34@|fS_ zEX}yO8b>$yVjAeyl&?cOG>)L4aTDI3ZgilZes?s=A3-JqVljw&Xa`qyAGC)1WYG0d zLgbFbokd(pDZ<5MV(u`1epa4Ljlzr=1EqoAjM?wpwR&h*z0Q`GUxRUmvg40NAO?rMY z{w)ASwPdqaV%vt>x$Hu6l?_${p-nmuoFFJq#&5OZdlmX?VLx2kMe=d79?mWoFgnj7 zG{SDSyM_F&oScWdtLcwf?2(V)GRK)A2A`$LAC5;&vzH}t)pmV=;XGX^Z zfRCfge8cXXdT)9CoF1rEW8`J}92)JZ|L)M``2oJ-rC#ch+_@}l+2uKD+uVl(_sy+{ zDyOucJ9{?8SHnxGgO46Y7-z8G@ZKc(^Y?$R^{$RpA#xch`E*CDvV(1K@$+@Yj`;5I zr}Y#xDL*INZvYI{TwlhWLAB#IUHqr}1;`$ABtR@jntEIsC@ja<SdBy=U-?#J4Rl^R^LeLtSxK?1W9<0+Z4Fn$t>`@z1Ys=pQ4Q?jq1r-TA?<&k5-$o=}c5>UZy`a1Y z_776`0vm6=Q6;Z?1fpd3Fml&h_6!YQeO0;!I0;sCB)I_|xRS0JEg3+OOJAmh2B6y- z=~cr3obiyok01mHYpm3i=utLYrfJ|0P!x!lVLa-v>*?KdlOSZozFx}!<_NqTo#p?O zp3i)&fCD&_7&Ev%JSGcN5yHNr$z*trPGJclb&HM4WY_oF)@Mtp;57Y8FaRw$g?xd^obE{q>qeEAgHT)rGB5Ad%sU13HXQr1FR zdIQ2S-lb}nBGoK(k*Z54w@s!n14a zcMOd9HopGMW;bVFFjz|4Y-EBepZ6k1Qlxy&$PEAVBNqFa?fDIw{>@!4P3fODMY-l7 z%&Z0}8OHm71{o+ZquUIif11=E+>Aso{yT8>xkDS5FWB=QtkRp$q+(k9QfZ`+5B`hq z8;r-#0%QD0BpZ5M;NZPovrnP*FuO1*`*D%y@Phes{#1pVY`-AowH!cQ>-C!^MtUTdYV% zxv2!bld=)7YgZ>~wO~u&MBg4MQ?5h_-<_Q!T{nn^3yqe6&W^ufG6c{m!K8A^=q-yB zr`Cy0uPnxB?)!e*1uA{oWIi6`2bkOTo;BI((QbER)X0A+5pYC5x2~6zhKgDQUKwx- zSx-p)cyIUO4>55bn%z_d1-x-6{L9AvKRnvD9ND+z{GTLNXwEKU6(1?ZhhND(ovGB{d?& zBB6o(FM;=i30B#>YMy@x3yyBSAj){>c61PEY7X|1=379~I+C}W(~sCn3{Btm+^dr& z;^G87zJbjTi&5HKcsv}WMt%M!>H4^|7kS}s@f5+$2?(w{O?^q)*Xy6hzWajw`3n6B zR+Vc)vjG;$Y2HPcHej=)^$#Y&MTsqsFVEF!?!HJCer^W_`yE!ZY^L0T2nRX=7HS1@ zdr8zH>x=%4O)_=zY7cz8^Aq}MZBSq?^6bOGX&<0}87B#^DWvjj91#8T9yAj47AQ1Z zlL>u~RS;GG4&cSiU3k+vYt#ni(r|h(nSfbZEb+`c3G7+XASLG!mhBoT?oA5%wCU8y zf`JQi!wV58?k9Ed4yW!VjMdS5&39of1HH!VSJ$(Kwq>V;w$Ha;SCbd81k7(I~`n0Eueq=)=}4hTl9lXI!B%c zO_7<46d_im&i(<$RGITv4|aw8s(!|WxDOAHDX5}TkH0eb^3!7CHI8}TIsw<%{#TeF zTOG_mA{8(A{aRa>Hfq7b$R*JR6j>Kt2q-E$owpz(4om|Y4(qjS3tyHJVO(h6n|C*` z3CkujIOg^NifU|h$Npml=OeWNc;!FY$iW^Zot;C%EdNl~6Ko&Fs@Y_iEBQNAF!GCs zbzv zUbv_=+Mhs?#-hN#wU^A8li`p{x%`&m?Ci`^J&srjGpyW&x8J&HkQjj#*&VCsA9KAs z5IDJKsw}~m>HZCGG}Ne7rW`EtWa_^7@zBG81mN0t(@t{jr@un7-rP6K$vjHA%{0*& zqql;1&>TBeSFYP5NJ;b%Su(gp$iN}KSD!+}D{MnDn3Dv{JrG;yDq&{wb;BmiikSBA z%(DH4z}`>}nwE;aSjQSkJMseCPM&9nL58k(kt$U{VmDo%GS-bdcE;962C-o73X=$v zI{l_?uI&S=L#qoc1gt*@#Q$iPP^r9}JD5Wcl(A(*@bfB9`e}-it>Y_q`;VmIOJkeo zRP;*K;LuQTN}0>F^Z>F}A2-o*U2PTg=IGM*-U2Rc4WeMVTTGKUvoe1i}(V-t692|WIniqxp-we;V) z6XLvWy-n#77M1P{OW%jvscRX@#9LMtd^NI%_zXS@hd66$7@f{ZE%)k@ZAq6UU`XVcg8-*#?$(`5 zxxx8m9edRDwSpdhIkn)-9F>S*buFGPae+BK4E4CSjL?wLfT#sue?fW~6M3}`}j zED;KB`H}O5-1F+4?ENT5feyH^v6>tI6%mZVScq%K3szUSd6+;nCp@~JBNuCj*^u6S zipfHNG<l%H$|K=|vf&z-N3b$Bo1K6lO**WuyU_+$2~z!3Rxy3|M$nlaz1bPpHauC=jw6KRDdJfbhp5$Ll_26O$R+g6G9NVOqn z-czGS&cCW@Le#^!EfT38qHlkO&@Hk)4naRI`6&`ypQEH3cCjqUR36wkPaTVJbB|?~ zpxqPbTF#*vs5G)vH?%({sc9bRXL8O@F5WxESloE@nB0M7TZ~gCnukr!={?WGZCEBJsvK9^+X?0Y^RCF4>zjC4MI$7=Qg|kMIJ3g?D1HT0srB#}-N0kGEt6 zbebsZErYE}4NG~qv47t%udxqk8xhcXEWe+eNC2E_NswZynDrnW?;ut}xLNVwAB~;N zLXE;galdggYK}|+N_ZFs1?$K7!R7?bx8`X|cetp1BV?K|;=P-qu+Koh7@ENQ+Hct} ze(65^#?YU`9E68p31nNUikWa!mT3wzaQ_yI z532I9EWo z6Wf||e|>|$p#!hyuQB-mOuDwGL{*PDjPGxg@pM=k&d(~~=z9$C9}jqM`$@3J&ZJTt04k zs@6{~p3lJwzlDmcj;n0UUsbft-N40;;Ud9_BS2dgl+HBbtilAB- zH$Cg~y=TS*W=sX2J2_)5pR$k)#WH|B;EW+yCZ>#hFx1ffJ=Q5a*=9k*Wo88CBQLGC zt9I+zRx`rd_;%_EO4<*C17R<_>N!Ka6UaFnGKeiAo^kE?05+BP(mAHCIF5$Eys;$R zvNseAt&TkN(05D~$d0`GA*s=)g9rWNf|}PkOYnLn^)HcO1}fv525BM?he>P)1tvi$ z#oH2|e<}u)k9$WDtyI!6xF56%e^(s7XlE8#In`C+hV4M8bku!vt*w44)O2F2(oqRa-h?!HC&_jvRFGY+=y zocLWcWjmz{;J)`)0K}=OiB8wKYoJ#1L8$U5BmW;mcHej`s?Yo8E6xvk`96K8t&v$v z_PbYyjyt293Q6X^m?|`1jE$UA0MxkvyCwkZ;?rkXNqIdYMO2yo3^@Eio-W^*zGLV{ zkKotf8xy+Dw3>N(|K!8lTO6JrVi9r5o5`f-X}pBUtSQjLB_%`6PllRj7qv~t0vdxc z@kNStT)W^w{US_rj;g2eeU}JQq-X*9I12Cb)%pF#JP_`lzLzio?ST0BaA`6*@^`%D z_Xbi{?wWf&EgUu!#92Oe0&Fv_bt;8bKfrIWxPa&JTcmv8tQ0GZXXH<#Ftoa`oPS?F zPKhP*mo`9WbvVXh+*2rls)?}Vjy^bQKI?18XH8ZNp9mrIG#y0{i9DcA4<4mMY9dRg zSC)DFU?SdtFkbUw{0}i`rc>Y*)O0czW*$iWiAEXtAY`=T`wQJ6K|7hyY63ed=b1D@ zs8nqQylC*Qc@a&2dS`$f-12ErbfW|TLyaz^t3tK#T$U4dSb=KSo>Z2w9W8VSRt&{Q z3x*B7%J`eTFI@SiJt5ga8<8iyeQrl~kqUoq*0z(x2JYJdUmj}smo?hKS`h~0fpmc+ zxy_+za6c#rhr!LVCV&*FHZ+2+W$|^G=GI~LBrhla`ygd*`FA7kVQ2EWGaOUMt$(d* zt}34dB|O0fVd$4+WxRJ$GfgV7k-~8KqbU##W~kr&`KC$bEo13v8*eP*>_$gV3yr0g zi8Hkv7v3g4am`4nDIne93D7DYA@`MEf{h+z09tg=w4)Iy^VztSXcYNd@h0%c(BsSK zBw9uRDx_lARs)5Cq`Eu9bPIFJyu!17{=+CV9$F77crp}E`UL#EtgQWy!M|!bYZ&Bh z)5QhLbA-w>z3XexH2atR2#efassIU9%gCIqV$iL-`?6R`T%NqBNo*9P`ACEZC%1Aa zpHm*F9rMudzOG@Gt8(Heu^tq{LCu){E{`faJw0W9ws*>pV;0o)w(uF3Odbv%Si}<( zOcST~NgDBQ!d5qLU2jfTdXZUpqFF(afc*o$CEi>*EH_p}f6(hYW<{T2eHXEZ)H&0| zas`OQ8Z&o7oTq#bqgWd#Gz7CtZZKfqGN_-9LTuZu9f-Ff6jqzjJ2^r1ae&wUEcQ4g zGz0BSWDe>){2_@5D-zDU`jT}%+cZEV7+WzbfWn^}a{b&nDu*#ax{RwI%)SVch{eNE zG(Q)v){)6G_zM=^&l@w@iNk>ou_z9@D6&D=ckt|4A}Tu<^}m`%$JPGxH4-Ym9{`Gg zl+~k@wKI%WK7_?DcLR{mw_k4uBeb(WU$p`+9F|V5H7KHyJK?sGFqBr*E1=G%-3rf) z;vc+mE;^ww0>^=qHDSoaecGn%ANE8>7(e_W?4t+vKBo&NUvLo}GG<6Iky9IeVH1x{ z(cC<6ra|(1O#UmRJ+S#KMuK9&hF6dXsVE@sE9v8|%iS<)SXULWGx6{V-2?HpPgo2x zeTAU?gX8?-VVyGa^$@@Bl^RgpD#Q!+6N^r$kj6!^?tXc}r3KpLfAQLqVo^2HG$8fH z#o)%u(G_YMFFP&JZg;7?J$nPfv18^zY0qiTDXu>CoRD_r#K*SfIHh3*NmvmeNZc+9 zXPg;S&|1{MJ>xb8+hY$D@EG(OPoY&IglVoLnzQV6`ahKnR7jB`-?bV*ihk&EK)kLN zDoH9gNtTUXGkhZuGPR4>3N=@E5%HggcnlL!GlP5>(yEsZ`S2NB#x&BD>?9FNNMU+8 z>4Mmy1TTSX2!f6D#iRO?URY6gBT zZ*vc2uE%HRT|JP*v7~ZYQ{?m+>B?!uI0wz3jLwsJAw2VN-pFqBkMTz>4#+7$anPhh z{~X%d&iT1NHi|Q4*k&X}Pn8>ur`KXTd*Thy+cV~F*bOzTuCr*zsf`C77kM?hKkJ`l zMkOn=TF7Z$D%E9&9Hu%5$y4cI6m*+?lPej$qD1U>7sm&|a@)Vwuy~rM$@O!~`e{9f z?46FiLeuJi-6ewrd|YPltdCY%C&{DSvY5x3D6bFzii$z}i1KP4Z62H<*{6^witcOrOM`r}pm z^Zw5h6qeLj^Ac)3t*@A{H6o*XE8felge6dqOVmAeba>p7nbQ~@)ObeF)LsJA(C$!v z>f!TC?&B2ydDN@i^$g+8Ye$t}MhUM)o{@I7e4Ur50oy8i4dZSAzFUw(k5xholG02% zB=O5lrol-vfi({w7Xd`!cf?N~1ZEjmwdW>uf0;<|v1eUF3^3tI5vL?6cqziz4Ddo^ zd;?%4pn3RBAv@}yedP}eJR{bA_uR$eB8Z1vMFogR@A;WeS*=AUw#b)ANK0f_cNCX@ z%Blcj+gCrrmL5l6|jNp^ADHUp7?vjw0AhF)Iyn2YOnAJui4#GyWD2y1q}_0z&7LDO86DM|xH_h`0B=A|5{!rpd4YwQ^Z12zL=K_&Pa z+uR$?q1xsii=BWBE(^ncn3T$icC0Z^5cBX~jXp%vGy%wH3BBSX0cdI={iCdP9Yes^ zOdM&j+r6?O{ctqH;`ed9dJa$m-zmX{Qm5bH7#s#r>u5yf{4kkQt8K)5^GP#+El7g# zK+g>cJ!`t2s49azBXBt9huZ1|pgSQ5WVe-zn(fdoFiZW6g=O2%V|D}P?F@vGBTq|| zf6qO@7$eR+kx|6g914WCgo%SenG5?YWIS2OJ2TlqtUO8r7h}KqI9symmiv)7N6;Ul z-_o*!?;z=@m-{LEz?Ua|{wapxuV?oMvDt%sQW#K_pvVIz9?yN{6SsTnuUra_)yv((l zoGJfc#}<_w^l{&ySh2|^eq?G5n(HBE7JCyMvj$ptcVGL-Mly`WoFqikR`mN`Y^(+L zGo!E{Y^wg1`2yyVKZ^oT%HmCIrwx zv+Yv1uBXnZL!K~E@qHwZ6}eEE#%Y_$MS}o2**?1C(xs8$3D@fd|Gp=uP1d}lWwg6{7=3Wf3p*pj|a^9#O@^uh`0>D-DEdIJcXk?+6xvBMXo zlCp(a#FOS9)mx?BGH5g6(8LimMqA|L)MF z)LJ`>cvKU!S;3O^vmITX*bf+lNHVH^By?U03esNdg=ji)xXMf!B1NJ7w`Q4fmU3UvSM@6@i7S zu``YwkH#-Y(DzhwgAG-!K3!BjmQHvG$S_Kti7~2C`8#$CMj%L(!Wd&P#X~})=}F3` z3m{p9I4}@CEw8A)%DX6qr1@gPfp};AzRAs%uuR(DeGL z81xu@{tM5zE0%ekb!mKKPMfv2VUNTY6MlrtFR#G-_f*VpD1??tWgP;ky(PCHp;+&0 zMpjv?--uReY0iN|2?mhDLI@Fjo9ezT!OkB}OmQA-v+_(0ByjvM`apF#hYy5Khb_J| zjj_m>#$$(Fqg@|3-KOP4)|@=jNiA>ini@&OY(TUhTP=>kBk!|Dbmhj2xQPILKh+83 zZ<7N|jMoU04Z^M|5H|Y*Bdp{sneI~#>7a(y9(DJ}kl6^^Xav!mVn$3_?d6VHP!L}+ z<>jpY{PyjxEwzJ!ftpFbtD)s z7(+#wW!}iS`=$4gPH8H`{eOZ*A^M;Z#Bu)o_|<1(Gk;G$R-!bdM8fiYD+o&xve-OZn@N!W2*n3rCtFaR z{KKa}F#xV5zX<2->~(#)De1uY;S?<-R*~F!jNmZsy27J2fT(c5?q62hVuzNYZ3fT#t6laVT!`~_byJ9DW=W&doUUqQwCIxat86fKtsq!|t%kkF z0^sO~i)_Pt<0(SDYlT0@eC3{B@39lItCoLZj<5aqvRK0T^)Io)$AwJ(j-p*BGuf&( zlhPZ5y-YsecyBUl)1dQtJMYJH3Nc7FxZIE5M{Uc%uqP_};0^;w*;;mpvVvv&msu4e z^hi&qpBWi!wRpPZB1fqycl;e3H@%R}-bTJscgJffvmV$SC4u(bYKPwRsLwbSiYGp; zot?Pnpc1o436sbd8w6^tIwPVtzgld4PI_ysUwx*64Bl0x|HOg3;F4bccrcS@pFC^Q1E3cpSUa$`*(~+W*jHj z3Ay*DZwbmoXwDsfw@;Mi)LfJO{3yWVtyNhB*S`bY)ky{l_D+^8c9;7Kj_mAiBrt;8Y zb%{>srJ8(%Z@RhMHhJ;xNIVFBLJZ*V6EF<0$pc7@#SDxF9<5ql1y6gx#19CP z1^kZ1-TR#s_<+aM;7(1=CDext*hiiU^be^ZX(DTBfQDoro;7N3Q-Y!yUrM;&i#7QW|+D=aE0AjqR$-KS_7tRGm;^cDBY`3>MGbY##0{3x4^4ZuZ zBlH4rOUa|@QK}*U-n%6ta!FzDPtu8&ao+~8!57Fn!}yA-hhzBNnLni5*}2|2;H>`2 z2*NRkajxq_$EWMT9@ClYzQYJI2}El#l}5Sb)^YdO;JwQijI=w0KjPe9hPFj(bOHC_ zSh;`S#hC9}XJecH2IZb0!zj&7H{Jm}(=^6v|4uO4rMTfNZTCF1NHMFr$kPY3{PRTp z{E0REIn%=^-;YxnxG46fWTs>>7nrilu0J? z^`nnQdXx5C0mWH2$uTvNM<2d?yMXzjP(ae| zsR_N7>g>5dt6S&TDp9D=<@3FHURNlO#^%&H!NDncp%%q>*yG2n~fZGQ_y{)Hk)r1Q4tf?d^Jk&EW6X?Fpj{}GJOrH{I!n=J-XSO%)fM2XSnWXac zcNc(K{`q65W`V3!&(nYx+AcF6Q)|(YM5j0K(0|V{IS|9RD4&f;bY@^NdW9#2eTp#S zP+gb;$Eo{KM2TuDhNNN;?jtE-%Mu%=;<>^2D9yA8C(lO96@sjJ9b}G(TykN|hhK$1 zp~qnkG9 z{;tLg-i&Uir;+iYF>O4^ex}VH|K4J!%+r-vZ4X0xj^bzG@tV zO2EItl0Oo*VZo5u zS4<}J{pRPUn81W&YXF3==q6L;D(YEhR0p^lV;0`AyL@5p-C8Y?x zgYnV(72+hh4S;THdj`dqz|wm8*8$i{bmHDB7hO|m-exVEIkXc)C~e}Pj3Ost}lRvHuFitl6i+AfX=gXG4d_Q-3CnIyM-W=L=e8)NX-PjaLlgr^d+MGp%*f9 z1yURDVMlnyXU40P$y)&jrUy~dzXw3CGRTn;prpVKYrL5WQKWI*LQ#};eXFcu{S`Zt zy0?5fjybo=R>^BL{gs|-R^+t7g90#*hSWg5o-t7B2h39&Lq8&3;(Pda@oPXvyADP8 z9Dp6`3I_d9laI4BD|Ex2*Knb($;XT^I0OH>Av({wn#a}f+-%&EUEa-{uiFphI&cfYpbD0+UmrG)+5=Uesa zUM_wBD%Q{%-~V7w#y*U<3Eg<5%k&5Y@QL>C;u zdUo^ynkn2j_jf;dJj+3d1?R8$QGn~}{HoNSnc6k<<8S$|r2LA_@(m~3 zzzf0!0Z5A*vT*kjsT+^`zdE_jXgIsBea4IuT}X`RW%MA?CB_gXL>E0;5-o`?q8o%T zqC}70OE7v3F@y-wqZ8445F$bh-#pK|*7xWAetqZ1z1F_&z0ThI+GpSA$Gz8<(s0Kc zJ4=gIsU@C02gQRBJ3SJyz<#yTGK$=!<7Vgv*K%^V@uF9GWoI{Q84hXJ4B3c=!pY6N zR3Q(f^BEluqO%lWoGU49HokL11tFh4wUzF@ZnE0dV#)dGbby3q<9R>F%U)imbajN= z?odI^HUO^!MGwaD$#%@w;7b|Y%8uo9Lvzq?#)8c$M5#iTob%!f(M3*jVt$gGGUOcJ zlS|@Rv!TBX`R&fQ&~EmC&~bpzRg!4Z{SMQc7xNzAmKqNRBY)OI3*YEiVjx7)uv+t;lEnqDLaLQuy}}vhY_E zg#K2PF~6$7-)4iNU_nV|=3IZTwwZURI~nb9mSfN*^rU#V7q0u%5?tg_-9j@<*cxcd z>kL?)$j!y^Pc2HQ0V-dm9b{P^wHNxru@yxI?igBKrOO68XLn$DFvF(uk$b||8#EL&3w zPKUgMx<~6qZoXo&8=WPoLj|=_%h?LWY->{UGbx)t=NG z+^o%HT&q7cGzY<*WzmF+J*BRprux(-!ReOaKfB{?rcjYJ`}UB5%|_FNP5A>&QrCeh z=V`jsnm6i;R3m_Ma&vkU5#FrAcAbH&DN)H7vaZb&`Pdh*gnt9JA@uR*>^?dmPrpi z^PJ*sk_Ef7We^%tp+fKfxPxXq6+8Lm_$`yJ(4z;oCT|d%KW;x{eIVOxt-9wvnJa#yD-`Ma*&X%hjq`m+NgGP>W0PXtmOKO@)*GNj>+**ayGSeX^}B*^k)s?_Wy2BHx>; z)>M|%^g(?oV@cH~;=xJ}d9-}4IGWM%W>OK9tndw?UH+STP5Ih=aAmdZqod@LV>kVF zEy;{xu@dvfbz&ArIm>_>Vm0|DSzbS78Pyc}C7%B^3W zSFWH`PTqBv+_fp<@0+X%$JC*|FBmbb-f8-ef(9$J>|CHPrLYJcVn(EQ?veHhDK7o@ z@|Y<~TMHyzWX*m-id$Q~)ZhrW(9}DBG_S*olJ?)dv_)!W{&&=#=;KqtpuP)$eEx7Q z`~46mPgtUH79Xio>zEU;g%rZne4exX)S4}Q!}8c(L9LX(Z;2?ndgxZ~P-e99-1-G0lt1e!<4&8cia-3^II&BQu zhl?*FwU1M5ay4VIqf>kD;i*yCQX$2v&zeztKVWntA9T`Zv`3Dw3*>!jtQ-Hs>D@y| z%`%p+T1Wrue2AjnK-p;;5&a@1z;98G&UuaGeY??Y?FFmwLbLa>+I`E(rFBF=*YPR( z<%>X7+5GN9#9K73ZD`GbQMgxJ+?CJeFWTL#5+9FfJ2d!)<8wy0E4SOJyWqQ#3*s+4 z)l zGp7(6vqu!h`l^0`zho|tzxEf;8vrjIlWLX~aYt@}5@~q7GNv18iEuUAR0DxWxPoVl z%K6jG^=V(#5~3(ksnZ`IO%G_J?Oev5Xftbx+ypju?KDX6Bk0F#<=VHU z#VlZ%%$n#fHa+#KY2E! zyH2z0mTG8A3O-Hfvxl-on423V-qq2eqirB{C2@rm(6QrOkl2_eV3|Bb2yOOyqW*>IiPP3SQyr)^X zw%6$iTsOcW8*`Qd-}e2% zk6@&*Qejk_z&DQS2lkS&Eubo*_);A86xcGHx(Bks_vp%f%WCkFcws-Ez|t%RXjUgX z`-q^UuC?*#wLGR;5Ih2+ii|*Rcojl{nrRM263P5@{UU}Waxnq=L;qx0AC_}Th7p)p zz0Q+Fm%dAXB~FtG;A(7_J`;)kT8#F)v_R+j5KiL_0^59!f216f;t&Kc;Z97br-dcs z?gpTg%Y#WL*f9ZoRAh&ot$jSRgYyZ4(h-BU%K#BM;ssIGFUg)}hTbJcVrzsc9#~6l zAkcj1=Jxg=Xw%;iikzR6Q}hHR( z3W`nvhjme~oYTw|G@>=9&345~0n+N#Hb_ccx#tFHg=oT1>JP`{(GXX2Nr*`|uO~#k znF+0JcFWGs)!a<=e6=H|80fz+&4$D{2TFR^sxd?>>srDvvNpcY2!+ zUtH|?g>l%{+@$0GP^{sRj_$ckf&(|v0FEM|1<=oc$Qm%A7JmLCdJB`pL11iAkjEgn zrv_0NA=dqZf2dj3<%NNk9Qr8&vH-SR=Pn)hJrJa=2Z{y?Y zYv)??Rsh+~YqdY&3-n}F_0D{aO#<=*v(PE?DeA1{nygkiG&}7lSWFO3XXA~kp8MH9 zL+J?Xd@2eZ*Lj3V(qEc46-EeQV|Csu( zC-S+yrB=Tz80?+7m1a_i#>sl9@ClLPm}>JNi4=v3U`q8BT) zN_6Dna;bOWjN%P)=2n=92nT6m>1qanz>C-sKQ-ISJ5-3fYJG>Z7K0WFt}+)9JAJe$ z0J#Vvw3C7b9Wo9;5IN9*fS~~qfWQC|8GzA(b1C%5{Cq4RYI;(WgZG+B;;o&qe;>hB z;a|&0#(_5btmJEvS?=8bzWpiHq|R^4Wq4tYUXLpDaeN;aGOFidTx?TMJm8r8)Xd zlacOsP!lW>Hkf)N{v*Bdr{X=s-tw{ZvS0Ey>^TL#^`$eyXmLjr#A3-Qs$TK$4jks4 zcuUFWm6EPNV6J#2i01t??9#apc(umhAv>)+C?^OtiM#`OP+8mSFii+~i;v>&bBT*; z>2+jG_NqT-+53_9Nz1J))wCX9_hr6Gb7j_eVI2v9>E1F$Nlf%QTdx~0I0!mEvkS{0 z{10?L<*{d_wk}m6M5KLnbn1L`#M6}x7o0ItvD|Lk1El774hJZojlUmv5Zns~L?!9M z!cRmzhvjLk)hZ?40c4-R&Vx5RR{eSP8L9ug-qG^$;}eyour{bvHUwXA-^_-MWu1t~ z&g|BA%`!;x#A0Y1!{grII0xWT;dzMze(uF^Oa$x~cHTjth3qfB{bhoubV3?TuRQwT zEXQ|7w%|oj%i~5@Cz6ZEIS0dhAf>u}#H~iU-|d)cc&+aqAQ1Z9DeeiIoevr4rLvgVCw?>ZzO6>YE;tX^!kV& zLtOA{VHM|xE>tR9Xy9si2`vgVUhN$AB`%VBz%eY40y#S1oEYOHO6sL7JfB3L-3L~`TzPdS~f8UsGYG!~~g zlVg>$y^6Es_u45Je|c1AL~gzRdj6NiDjWa`>wVL=78A+qhq*_*bsD!;X)wz2lC>Qc z3newJAwzBr^}<^I%#=Vlq~ij{iaPfr6v`g~0%?RIK?|v;hh*OCt6A|)Eq-woLO`tQ zxUw_vwQ?8!i!2Ti@6R^{co7Qd?7|b&%M)PfdAC|C%%VOtwdm}a6AhxQCz%W~irrN>I2~qX_6zx>u@PR&F%pjw=K1nVZRF`Qjn(ItCl$u{66~ zH5>w|+Z)?tn75RsmkDL#${Dg0!QU79bAg&@Bb&?aEAk6hO%G(}w1lYHwk#*#(le^< z`gU!m zJH*gJ@5mG4JKTo~A_Pv!2&6^{#YP(&)l0MS5;YaZhAnBr#5l1EJ?Z#e*p3EQVswB literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step6.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step6.png new file mode 100644 index 0000000000000000000000000000000000000000..61656286b23a0c8a6a9b6a6ab8d9b49b9bd205b9 GIT binary patch literal 19357 zcmbTdbyQqG_&#`N26uO-XmN)k1H~y)q`13VaT_Ss;ts`~7AV%@GI%Lk+?fJJio3(| z`Tq8-{jq1y-ZLkY+$3+3Cr{p+Z?xr}o}NB_{2106`uFeO>+9=RuU_@_^}(0n<>lpn{`}F&(k>b)L>#Vlb#>j{ z-JPDEK0G|c#l>Z3XYcRtFE1~TjEsEx^eHtpwZ6W-prBxAXlQC`YH)CHVPT=TxHu^( z$<)+zZf>r#vokk0x2C2>Q&Uq`R@TVK=-}YM$;oMZdwXMJ2Y&&Q&UqrIy!1=YYPbpv9Pd6 zPfwSYmVW>K{rUO%($Z2wLc-?eW>8Sj#l=NLM1-QEVoOVlzrVkZj*gFykCm0x)%8_x zZ!ZFYC@n3$yt3=&-re2({rh)fV&dfF*BaLqJGeHuw6_#d5D``%>Rj&hxhZRUk?I@( zlXfdBLU|9i~556JpM=^~5F&IpkwAI94zY~nh6M@5`< zkw1wA+fDp`kb3M~_O&hL@at#fW2Uk*g&DBOYIU%&Aiv|NwvHp+F|zlgzm3Ea_Bk6C zm6P}OtV&uR0b0(#LU(>#1w3>lHC?6gZ>C;(??(?Jz+i=cRwiq(rd#Jtu*mRx|Hsj_ z2P|==Wf@rUn@QI*A5*X)D70bupOBxc6uW6RT#3EI_8UQ+xf}B% z6O-)dB9Zu~EmoRMDvN)`?48GTc)RlMf0U*1*K=wQHXQr0`{f_Y4EfrCwQ zH35_n2CyptpeoL9Ah4bx5*~cfKomCiVFF+mzNdTd1V!l zMtNxl?9uCzfpS53P{JOWApp&c`ht-TLI?BO9FB)s07w%UhKG{T!{pC7dqy=oeV-=D z0MPfI(HExQLyAHG3IdX3?)k2Q5Wv8r_6U>M&0~61519DWmYsbUGXi6aIPg+e0KIi6DBiq`YeqSqVxASmWoT8VKx-UE0}{bzoC`>u)T{jDJgdNFXMJmC_O9H&+E?p8uq@K5CGZ-`-78Ru9n37ah_Lb z4bjIVy9!DFRu*?!U)dr7!~tF%=SQo0TB5r-j_+)!#!THGz2=;aNC54^RIhOFlbC7CCh@vbL`hQ zO(8jx*K#2gK*&N{cDhgzE6&Dt!iSw6fnsNiDrUVlJmSiA8GHh~uLL_~6<;op?;lNz zM0|9_N~W^kZ;c$^OG>}X7#i_Aly(lkXLLWMLkIpUrEguG9?DMs{RV<^-lvC*>^C!F zUt$3cW@M)cEuwEq_Y5JxRsH?O(3YJ!U8x}oFlIeRX0%{b-I4o+5CY8A-&?M2?XP?- zQH215r)LQZaScc8R_?$(yTA`pDgCow=xFdS98WtdhM=T|neFgyz=%CHq|dRdmYWc! zC3lwK`!dVIAZq^QguGeEXt4t{(q~(t_icTRiCPqd0J&-?lbsZzL7PmIMJ-X2~Z#A)okHnm*$I z0$25y)Ms2nz^{eD-ne znDPR?Q}g$XrXDQ2KW`F{G#Im2sgY1c zdJ9C3b4lP>%^GO55LFhXhZ%f*?f zh%RFVxe>h>Bc6;}o&)Mt+uOJkG|s|JwB^d&*tcMG`nc16OV@!gF{?zJF+=;G-Nl_op&L+OVYyzef!g(0(Pu zQwD}?5x7^rl6k?dh9;_CPq9pBx@YDPW4~`4t?1i}A6p|rzggnPhmp4gKoA2Y8crd& zd|^&6zSqi9eeD+$6Dvs4OO}-TG_M>P+JapXV!duw0`0(38`%%e{NnBg)^?L8x2|=!BpStge-%EGI?Ote;bw(eGP;YFs#b; z#o&>x;UdH=P-qx&UdPR2_T78Y^~nSaZ)QNYdixBKwpvXH8GV_@+}?nwele=`58|2j zQJ~a587wd`bheX3k8GRbdw85^WPZHB(`_4#1@h_?vJ`O4UNHoRQ88Q!VIjmFen9AF z?bvDf(g%zg1SG;j`Kh!3OAAinyf)^`?v`b=z8JZrK8rdLUS3{8B%Y(EzzDD+8j!NI z$m}~nT_`9evqud{hs;N%@wwqcHg>c?sRJK?vL`v(a)tdu93UGWw*+nFa`Z+zHn2yZ zPan0x=gl8AA;ZE%)JwuL%y-^JEN#Q^VtB|C%6ubNkZ5g?v|Jl-%dv;~b|{CVT_fHw zYkk!N;b38jr)gV*#uydD+>}{mKP1)Z5n?AvWGpUevAV_VPr#UVKIjqx zSHXv_6+7*U=TOV{Wz9jO1;xqv;|@kwIyzQH4<@vrmX`@dmU)#;4?#Zs@6qihum(xs z*OgU5FpNcJT z+8m7h@&^d6jEmvJAJOv$5AIZ`K?cC|y{LRUJW)z7$nY%iTQaB4UC|Lk+tg2cO|=rW zyeArrcK7ojG+a8=4>ls5Ko2W}Nkac*^l+UX7UG{aO{w1~(@&oDUQea90c)ZG`Q)Jp z{96G(3v@rMGRHyTdHgj=uv1niYC5Bxo75UQF+35!AmT988c-OMG9dtoXDgQAFA;tW z*V|;{E)xWe&`IX?7(|>wqp@Y05|);UJApu9ahOMVEz|0(trX0g3j7JcVPIBp90Rxu z6OR(|JN+;IRnoy?o>wLbfEl=Mdkw(B0nrO-T%a|f(|6gxvHVgw0+AYbTfM+P;hE&| zuL(+b7lEy^vixB~1g@ZZ*fJ=Z(IVigR)GG|!B<2*0ZbSmfI$bD7r4i(T}5Mukx+qg zI1>ubi<-n>)CfvkOfw98+R#as#<5zlXc2i^SRaAWp>^*^erPX*RiRb_*1@W3#1V#O z#+SxUcUhvT{>K%_u(h?Fk_L{}T0G0O9-2ILKsm&1)^vS1*x+k9fiSRL=QpGfBU?&Pyn3a1l07oxHC^7-=_82AB+)x}2aOc2*KoShR(P0DcuM zf*s054wZ3Y0K<(toN>(tvAg3wMp6CIFhsn=C@8=+b3zG1HU@0*d69ws_x?^CG12NU zyzFUF=+Y|WxY0Oc3@DaEa(le#RLWFX^Hc>kko$C{(MtvJEQs|Jwr@Acr++QGb|Ay+9 zORkt8#sem1leB1Quwa&9bFvY#3`g&#rdlrq#+{w~2c*rob6jKE3*{$n^zfCid2CT+ety)tm{=?P28Gg+x{SU0;#)Wer%63n^hAGyW`BuP zZ9h_Ql_Ir|R(+Xw9iAw)zue{$0mTY8cl^w@e-*OIN*`?$ZT7b0g84}|PfL~m)Iap? zm)OZ#hxh)06rqGX$7=_+2fgor?L3r?*QFY89`F~1C!oz?W%F8tew*}B~H2is5 zKM_#AvKikyWrl%);HeumI-ya{4vSg!mO+jrI6+Y8vbwZS)#>B@=(&^@I!}E)n>}u_?MShN7Ztgwb%yV zSVoG+RJ;0RFUu>R*;FB-NcVg9k*RJ>LK0FaTLD2hNu_G9MPc;scXUn;2NQB-YfmZy z=!#G$$EKLE_O2LDDkQF_*QYdiGWY!Y-^@6aDf~t%reZBjK1cpTIgaHm_-TFJSzivu zUtQ>zO_M;*Q(fe2Hi#^?9WbbjC+a=)2Go5|dr*4q>e1=LujRUnIgzD&h+_1Y42#BtuEa4!~^dZwnkG^OMWg0mgiG7^-6`30T&4BKGkdHUy>OwHwCB1lHj zzS(clhvRi^7RVkVw!u^Z7}ctKA3v8|2u6PymK^mOxp6ua1HJk85*np*jbo400n8#6 z&mqx#2Pz_Y^;?JE%y@kJ*WhOHq92|&qC#(a^grOqL@Q|iVx}d9%a)Ee zD3>OGBlWun!SjZuN#C$RNTQC77lfQ+(v52mdhsrDY%yWUf7lIf?m*%dB0U@uK35E= zhnEC-C~IBht;$unQPe_FpJ?GR;2=H>d>Qds?}Wf<7N~BvJ7Sc4$YvysabZxqZwo!J z2D`Ub>ED=%tK0g=xoSzgdY2<)o?mkG%_cm>+M+D+V|J-UycE^BNgXCfnf~K-xb)$^ zIoKqwGlM7-tbHm0)kG>etnDw`2U5SL*pEzVx&RRNQ!9?#)lL0d0>#W*JOz#_QP8x} z(E!LuMeI`*v$65wVIxM=8@;Muj@#`?wc_ttB{!M9OCjOpmv;do3Z&BmW%J z@s*aV)B|BCYeGX*Hv7WM3Jy+G`^naHLjWv|Mys4fP%_94BbFVP#nlF(mJD$Y*&=(B z;|$E@s%5OGWf4H>`;PqI1CV7;NHjNSP8aEe!x42Ly#aHL8w=SF{h;yV;E&nl+;O78 zC>n*f1q?D%Zu(L<2rgrlld9LY+}YKmIMPD;7W5QxjSFtGNa1+vN2nU3d^BdSPRf*Y z)i;uVNd}U;aQ)WcJxLXR%Z~Lrh}N>$=8N=_Hh_gXWS2bqYlP@}5X7M$H^AF#%7+uv z+U9%<(q4LfYw_IBE?T%wyw2w;SJypEP@vMcznHNWMS}C8LKM`%Ki(#V_C*T}%V8m( z;~k)^Ce&xSnw1B>nlnEl%uP}|w`3ZX2H3{tL8%8jLv^64lt#|(~H}8 z_XfpCWx7KGH_(cGjEZP9X~S`pI0wlsRUC&+;O-$fo!oXM^m){$0AGo190F7iAwL2@ z%Z&N(!i7gmgCqqwSEXB3N|YPZ&mM%9Ez|V`Z)Ot*E9RgXmd(vS=an>z=EJw33TLr& zBJwaa`bSORNAsts5_M0KA(`((PQ~V9s5~z980xUV!~A+R#LvxJD^{vVmP^f0mY&b+ z%C{gaPgn#nt0ey`$20z~N1T8qEL8RqNoUUkmEl8caxvR)-oUa`znjR>s=Z-5b80={PU+ zE*D|V7g8KZ8V3y(oG8aKEOAX&3Efq;;BDBO&UfH$|!v*fxfpxpALRa7Ko>^&yiV4zIak3h6utjs)`sSW5 zQ>OU^t2%W9{h4X*IKC{NbIq2Qr&5>&MGF!+3X?8ChDu522l73+Q^K)V#xed-%!Ly! zQ9BU&QqVfdfr~YE^CDSY?H}d3x;n@UO)El7P8 zu;$%B+&2yuVL){wVGi}mjl&%InCcsD$Y&^uS|DH_sUyNw@ATS_GQ4s`UrCn3#uvpoE6+~+TvD+#qLZk1Ks!I#P+28tp@TdvqUZNadfm27!^q=toWos&wLXAAL z7fd+PZp!f>CW>YxC+Ai=;Jt}y=a(d<7{#Q*K#8P~Ltw^BZR;y%=^H7vjg z)TM%nj`=dKR3Yv;d?B!p&dNjHujG~VF}<>7kQrWTM9jP6An`25e{a%tF5C2O6Hr@Jvk%!tLH-dWkr0E9REtgeGuU7D#%q=P%Dh;6O)#l=tUvm9ioMAye%}CBnD=k@Fx(6NN(E8MS|hG zku-j%29LT7AU`x6ovWR$4CB+m+yRqC>%bwio;fXgT zZ>I8<)Aj#sPF;`0h@NSkw!VGn>LXNx0W#RP@5?^ij0%Wp{h1Yh8WLr3 z;LC!EZg>&wTVNjKf2KouBiOx+B9QflI{5|Hz(POx)bul*lIN5L#%7>D~&K~jNYN-y}bTVUyYiNDxsJ?E14KT)FHfh0EUV|@Aa&B-wV z+j}Q+?SHsJ0D9`t;T`?I>|$Xf!w0FzjAOgqiKLH!8Rq!`$ZhrVMjmsUMks;4>pIL{ zwi%dmN_p`+e%E#4F&F(GY?mc-n{KLtpWU#BWz?Hv5T}$2(*3$SHy%g%H5wnrAIzAY zv-c3aQdF;5Y?Rtxo#HU#OKJ6fhKk=qg` ztUT}&-U`FEI1$w?Kz#NUO8H#mtVfo1=>>gV5`)C zuX~2`r9v7#m;TKl|6KjX3|Zy!V}*6Q_JGfJqCLpn>LYb7Q(HmWpIc|`fITd;#9{tl zALEO;gfSI9^Jm&58P|g*$sX6v<~nP#er_(Y+y$`gkf>3*>=qO56OQX$lD35rG6${; z9_vQ@z`ml-3TlJhZPJkZC05pu;QQ1`;8ReSt`7%3x}bsb5>So>=)|kny3y5h7pTbD(zz13sjrSNafwSbN89 zXGRr-myMaC=jI(-w?N7?POPzn0qE$pB1#p@q+^kNqmSBzoRu$A_s{TMT{wvmHD(q% zp`<%t?o-4#uF}pH+K23;tEZ)HrMydqgGlS~%D`;JKD?A%_`ocqni3nMcT?D6?PY~q zJHmwEC3Bjh9x3>>q-tJD3oS$`=nrpRy-J7stwfMOE6Z8NTFY6?^T64Cr@xsy8ehJe zu6%`!6j!Ygr#|5fxl2AydS*5{AxG`~4OyQ!>Hw&Lr(o=BWgF6JX}}1d<>x*5;vt)2=xb1pF9rvAUR*Ruk5CFum1suZqZKeOsjWaY7^Sp-kjFQCkSCXE z6R#(!oDvaQL#SJEiK}+}>f&zrKj7)eaSFyBzX*fcPR09{oHhwtK}LVU0z*!X1A5;0 z@GP170kD7k&;6`x29FS5TpqZ%R=3%4j?M)IA0Av#eeLX+hOSl)w{}zoc(*2^khqdu zrpm|d<(E_u@0q|Pm%^Z>oKFrXFPVM)AiO|xY#Autry?a}u3A$WiawBE&r1VuQGeQV zOB2ELouU{*-PbaBHN5iQ)?RR|!6mr?be0O;Dx@n7w=lKC}t9nYUR^_#s>s&Pe<&L@AQx z4K3XCPjy%cpD<|fuHS&b)vpZA>_gY#dzzIPp9KB(|q_8b^TqYcPa0vHG`` z*-Os|nZmxW{tvhE0OR&38LFQgFt@c$%>X+^o*JW22XWlsl3m?BaR1XGl`)Oki={2( z{$9MuOge+hgyN0#QY^WVEUoshzpdcdH1C^+A!e5k1DHr5%Mjd2Jt6!ATva_h%J8|& zkZq(O_$DBOf>_Sx>Bcf+9R#m#ZkvC^^|kpEkJ^#?0`(H07R}@4#h9ZXPJ6V3t&vM1 zE5Dd31_?ByX8yENVt>>`^<*mK3q%78V+zs8DDoJ7(T*oSmEx@rM5wvrx}~BQ(vMGIsEskS0`6NqPNb1C+zl9rlfrA7;6dLH_VjnCbKE zYe~AF5wG6Og|C|dl%f~TVj$Vl5$15AxlL9Tw*hiXD^{59>Kw>Qt>AHpK%<$WZE3&|Z zms>6KX`qf-d+5=CMUrw+z`40X^zy0&?8VF9??r3aM_ifwhR?)N zbRhq8Af74=*t43Q!7Ly^L%NUU{GsfG7-W)g6s3n0F31=3@eY< z7kos}1sp`=_rfluccy`(WXWHaacTz%{Ehs+4a1_01^|6?Hv!nGbF(U+PD0Kc?%8h< z@~8cBYkuVzxD|`7+hZvp1{yqC>$1*yxV--XV5q=Gu@En33Anv^ezveavB3x^eU_UE z&zX*`RRrXbH0HK2VX{tXfpA=QwF-_1zN}Yh-M?~LC7OPf`FnXkGS&*$qh>BhOsR*C zd*pn0Q@D(cnENXa8+nU@u}LAH4u_*R=w32(;n0A_A&Ct}HPEJ?sh)JOI4HQeoU1X9 zdxkqJAkzMF=hb_{lF*|NYupL!+`q2-pnsi!;}#7f^O21nYq6#-@HPr?aSOIWZ*M6` z9O=SAuw{iROIl$jTAn+`nTsdy(}sypx$cjfb0!~jGact>my{W`_K+t3c+U-!b4JG! zv2<$GgC<0Y?>LLd=kCbK)@g^mb8rkCN_ z-Qdnz5(+GY&tYM&p~Z5%YGW;dBeGH&DZt8l+F$msHxx^+Cr4(XI1glTE&Z9Jyc|) z%fL!>zwhk}1sa;d@z;DuAKJ?jStgqG)78|*h640_EUl(?RhOupK($=c6(VMzCA{l! z0y)hT=GsHWRi&g^x};#YuoJ@I<^s{nY>>eEcJhDl*^v3P+hMqW(vHVPaP3Zrr5J_{ zl(VLH16#>KvmZfkG`(88FZkgmzutO2f9e`A-*srLu%9EQx8{|AX50Nl(JscD{ zQ^z~#4M+c@N)EdketWt!RS{W;5qnyZ=*lp_T zxE5n72S-vPW%>uMpNFA`+?-A~{3j{q$YH1o`br{lUj8E`h|qYj8XQRUmN^JaHDN}^ ztn|a=oP{UdEm2J=_MCm#3XFACen%VSj>POn_WzUz@I^q5qOGR z2pS$B{9)*wULGHNA2A*#9dJKKTx*b5&+be2gH8_s!CrVtpQ*g43_~Trd=A3hCyhTf zi(9`tc9a1 ze~w%zOm~zHYTJ8jwjTma2uaGOC&V`oSR3Ktz9({fYAVcmgP}KPCBQ(|+JCJlnG+ah zZF~&X1)bH{Xv1yHz&QDCR5;APu-O}ZMbBjJaa1tNVr_wU%1$Aa;kH}2rh=ievT6D{ z{Z1#z29FVVwXkrfCWK+!fMh13=76P2%ht_P^X3WH<>zhGCHT|qK~^?)Nd23p8`%Ub?-e3AGK zTgfZl^HBZG>uS26H3AwMweNW-tngT*-xgbCtf@s2zncaB?ODka2sRxOTPVo4 zJ<|A!q9LB2&soF#x*35bg86A$9o(!WiA=QK5q3QjOehnM6po}3eT5+dX6*|=rUyMo z^t6V(9c*oV3s)Q6APY>bBuY0ZC24nA=Knzf<%oPz`Y4NMmv8)+;Vj>q2__RxKFj(V z$MLul`=-P!Dgy@>F=c_Of-=~twfp{2=!bTRN1R~D99-JMeU1itw6wgiQgMYaJrTp8FmfpZ!e7fm+p;Lfk>z&%8CpZPB``iLG}!&K-O9x{wsl3~Sp_W3~Ne%k- zN|(R>^4S{Char)5g^Mw3%GB>EY*Z1$#bbrE|&%J?Z7TI>b>?t^?xcl0&+M%c2v!>O0scMjVu>*mqvwzTIE-RbV| zzm9+Di>=rHNeWis0aIPz%?jT$%=RB6gpP=U9xcGE{Ab>3MC|@)8%A6{gC$k;gibjH88pqysd*6e+3s3f-eSrQv_d0S~<)e;#XDzCTEQ4m-A@=2EN0wvL_W8oOfzo zLqP4_nr)uPR1Y`69yh4;3qNq?16<@>wU+W{*clk=0yi|MMqEgGRAEdKwKS)OG0c7&mkBZ z$@nbua{@F=fpeJOZ?T^Be~n6R-+qAs2$-y#~uyXp?Ld?7o#V z;NkNb@u?9X{vx3R#4*`!jQe};uu7p`%y{Hh{xP&<5tt}f$7gE{rEaqozrKmA{YB&y z@IN%-yso&X!h?@%%n5d8a;)TrEYJDs03VjIdER3x(DyM37XRv4y$-hZn;f4TBsN4+~9s-wVzvwNaV zA0!&QT_Aw#8I?t(jtgQThe@6x`A{ zfFy7JCQ|fB%{+jD7KDaVaBv>~fIkDKT2lxNXOWF-+8%w`jzU9T_qZ&VM%Jjo{^nqj zQ^QpRw@coh-H#dcfji*fm+iB5C%u=fuj1erpokMlE`Cc%QaX|_|22ssCCA#apGNe} zU=WBZbAMsCZHpDP2I*+=pmCtyOFLA)%Dwy5{MaieVFt#}ka-i;MoX7ydBH2g49*it zQJoyTpzNf-M2!`m)AK(Jt%#dDHj0#s$BjNN@{f!K|JSG<%wXj#Og+9p%bxn$w&q>O zw=;^D31)0>?08u&C@?+z&k9vH=adUoNP^{WZDhS%DGe5el{m>k$)13CDjlkt{ znu^&oppKuPw@x$4X8TCgUj(FJ8C6#lrUVsOT{#tKskFoKsp}?BBX*(wOd%Jy!~vqJh`)O%S~*Ro=|RIU-YuF!p@$21}D-iYhl@szFS9=faT z5T%F-O${vj5x0u<%lkUL*uI19(hR@P6#rg;2mjy)7KJdCeSA-n4qsVX?+gB`Gitwu zUSRZwao$sxEA;sr>2$5#+q%dSEqHqOtU0C7o`>rZ@&9E4aDm!abMZ%*URE&>mIz>+ zs6F7EI6gdP<1uh-au&2d&ki1v)j=WjEyxVA%|GRixzD4F08D&758`{rpBFWF=I4Jt z7@D>2@b)3Jzi7=-M$%mqGuy#zOdyE2@MMx91utc*-tM@WJ z^3>tds?UdKEyhG8j25N)TR1l#oJ9oUf^?st>Pfr1kkW)+S5X1*(kB2zGdH?Hl0V# zSZXFPIMS6Wqw1Y5nzELmL(2}Xm@Q(1EZAXUp5qX>ataBcO27rYXDurkQ~3#)gd+7W z5toNUqIWQ1Zs`iKuU#t`zTDXWqXEw7W)*W|Q7r%E&ITRK=}82CCqaLf^ic#B8|3088@V?JzP146F#*lxa%wx^ z=HUY+EpBccoHPA`g(JNoAib`Wx%(am&cyb;O2yr5FM9cWV8c%wcB^Cm310`8Y1VxU zl9znX*Ay2AVEbKFsrEG)dX7;E#eZU2`-zhGWzrNQ`{{#Hi?hHG0A8ffA5> z5mSMMrHCF1e(UAh&^>F|W&;aqrG5ER(gZBx3UV&O*O+RdpM&tIT>-H!R~}Q(c3Ng( z=~Y}hBYz(T96HN#S?91+dSq#c9g?&V4V3$$KQ>+@%G)w3yCzwmZ*sjKqERjY>tPmt zzm{0q0;=Nwv_0U`wAB3@be>@-%>au?Uzq@%JGT`O;_;_cz7y1EzLlOFC{<{}gxVs2~2l?+8pGMBGDT~nMPD%ieAL7` ztsgLLZnN^bC8W1?JbN%N+-1B{=RHh6=oj)j9Uv_Xw?I}C{cc#&s~*oJxZ)w{J%_O8 ziA3vD62Od2Pi(JI6D0<#c4}1BMxq#xKFeYJpH_oMjL?(k{1{>9*l6s(zsa-6@xgrh zqgzocM(Y-|My2N^y_ee?=&Yh0(hpTFhW`jd^jz|@-`5#^F-FjN<4)+d(N?FuyZ{NT zFvD(M5}q)lS+eYSBb5dl1Bs)Hu>8@+6i`WvqX__#OEwK<6!j9x`DhL5vAAo_Lq=?2 zqD$1Bd)&3?N14xGj{=>*#epTyg%yAb&rAhxq8r1zB)tFQBnvz;u|qdWQ4%f4FX*8N zTww(}F$5WfFEusn)KG}Q9&#d_LQ_B6&O9P$5Yd;JLOjbT$9oPsQ=pNY{PJi6i#k&1 zAox?wo4%`O7AmQjWlkm?GpEqqvgN#lRQzS*L)mHrB&FoeJz=+Xt;*C;cYG*$rkJqy zd(}w?(Z#=I%Zop$k|;@QbFKr#J8o4Hvrvhyz={oR=)X~!|I;@MD`UCNFTBI%EqSKd zf>l~*5QpH3B6G4WDC+So3SVM;#AH3F;1F_cqS12FrevL)En#!AvP?uD?)}oD21MLh zqlGDQ#{|;>n(jc;l05(QH=#Qn>>xCi(O<@j0=HlRcFvI@3Hv5}&VyT!Zc744sWMUV zTr&w1D+<(kMwQQ?WRZVtuX_^p1NmRy z?-o@QWQQ@#roBWiL<`F{lbeX!4k57FC;D-%)!kFFI>$_3>Em_AM~}3}jqDb3DA0v8 zblB+mfjKIb|lAF##nmGJYlEVr|_bc-pUa7&l!bjIVs=c_y!7uO9^2pLL4B}Iyn z&aYrGeAoqPtltFXtKP!7<==m;`8yI~Kvd=rIoAPeB!XOxg`hTI%L#S<)*lemO4NNjSt#o?ey_fgRm_a(+*88xGC5|qB<9fuw#VpaYU^9pvA={is^N&1gE?dC6O{TKR-Q8tsEI3B{fQhI? zZrcaY{|TxL(dh@lsjr8)YtEJGZ4cf=aq+^_mu)q7GwJs2qQB4qJ+_E@gNp*;f9WcQ zr5&eU4TL}L+B%{RKKu#(d+D<6F&Um~Q{C>T8GF^rcyV!nkO!b;e<{-9#!4=KZ5Xr# zE&U`l`T8qnU_rWOWx1W3#zf((0XG`(GgIlp3pXa<_iHcBfJ={y%3tMU=5@=Rj>gY% z;rDlOV_Fv-12@hOXVOn%T)QjgAA0G4jK8yoMJdg9|0*3H57fTF&eNZMtSYF50XZI8H+Zg>m8N}Re@EnR9($cl02pEX;kln}rU6^-yQ1dC zpcjDI5Z7v&%0WYpqE4Y8dzz03Dp;?`=!Ylm4-5-*4Bg^p!@quXu)ocItj4%={ga#Q zKPFk?LxD-%qqQbfi=kDj!Qxf`CXjo%F|73m7BehT1O}C?@A^245+8}3wT4~f`uZ3H z@SY0?uext-YAZ6L&Kc}rfaD;XLvo+G?ef6Ul6xHw4dE3ojTmiYDqX%k6y0{ed5s** z3RvYGJt~g2?#?ef33}e2MF;{^|XR zX%+gtSRUo!47*Z-2oApS*B}+1MB_g-OfKFmK~Gm7o=9VyynjkEe!rJ;SWQfSSD45| z_LJ+$c04>ULL;^mAEQ4t>1lj~kZ)3ms1^y5C20Id{G|m)T4H9h&=$JVo`xa_oORJ) z6*#U;r-`B3CZ|Lx=BKE1m$;1%ENuGCRtu1n5n~WeCkrUORyN=xqD!tCLqV2i6r8x%rg?d=sD1v&Pn^6(g;@93lJC!F*Z!^0X=}cms#8IkF;&cK;#mP2c`?S zZl4gqia217@J|A;i`>4~D2c56(oIV%@)JHqHZZ*o%1X!%Gq=-Vf{AeKche&UHONOF zvDl*8HHj!d%nMG6QadNNy~zd?or9c!b>Q70r}jp9xn#O5sA{^dg994@t^pBPAHW+A z6qi^oUjbs?Rmf&i!IJX6ryi%pmaob{*VWghebSbv0N7<3FAv<5yZHs3s*JYf7>Cgu zh&qJKy#NJb6A?dSbb+&P8ZSWz9Yk`YEqsWA07(zSX6ssJ)CTDSFnP3{^WuuBhJoiI z+dsX4sT|kv!epn$ktWWa-UHaQ-yT$s#9hK-siD~6MZcS$P3wB8Ip7SK;aAN{49K;; zrDqK2#jiwkvj)pCH+Ad+Pa-KQId6{Zlayk(XZGNo^fwR|Y-b&!w|KWxtdWA`Mm?|7 zcI^5IjD`!nVS^~95);C4Ch9Gt%2AH#{IJ5-z`n~TASq}b$O-(->jV@SF;B>ZhDcAq zRhB?D`2@Ce;)BVO^MW{l(FXARJtvI%RUNHh;3he|0!QlC^UV)rU{y;Rn1jtJSN{Yz zpZx81DD@}Svj9FK@!=Hsm{AT!iK5h!zTh2Rr$9LT{?L>r21^seATBi-2HQ3ItUm+x zBGDPZKi{WkX#yIJ3oNbi;C;kq++M&HtY@yqlomAZq5`S-24Q+8Udb{9?LFfXng@ni z0ML9e0&WHcs!_u!udTHRp!}Vq070ApG6)Idp)p8in-DtH^_&8|s`UBP%JxSwjbM{x zlw6!b5|K7U~av`-EN@J`5B(qY$D@*#9u#!jrm0%6EW#HfIO|0#2lUBcW8M zrwGA@tq~hGURRPDHHwgHC=uN2+OchB$r{1?+-A2G5`R4uD|oPILCE zFYQ9eEPlF{OMsWpMoNsdNGajMlEL%(HqUsD3Bz`Bso^esJOa!(1u=!e|I#~p6SE~@ zIKj_zKb;^$K*J>D3zrDYVIvRKZ1;gr3SA~Omyr-Efo0}qm2W5Xgn@YFiLt+DnbKv# zgKPTHbR{rrRCk?wPFeWI8ckO8j52C8GKzm1RcybF=7|~Y`G?O7!=n3tIKP)I0di6PxGMZDlLEz9X=~=(LOpnN99MzO(jFVM*S9+qrWdB44Ez;l8o^2zr66c=#xHZ}!(S85@$~zn4nOHVjeQ{BMn1c{tQ- z8~)88L@0%9;n-8g$-W$NOhamX9m+bgWGM_nj2VoOWf+k#vNe`$gD{w~rN}n+(=d{C z$~H!{nZh@H=ey2zo$LGO`|o+)>%Q;zd7k%=ce$SHz2K~70O^&r(#u3kmRWJ8lpq|K zD&$>>l#nFJte=|O$7kMgPnA6Blm1HTIIiqKud-Etq0fIjU0U{M#OLO^s|9jBWVg#v z0`b1(lx#+;gnQtTiS;%0ZH6J|7L@G$s9D3>FMn;5Y*;=yUS1`yryL`s$>ACXq$*0lWo*m|sdwmOGm7;tabVqv z8~L(|k2Q#>eG`89)kD}56$nA$HwRmb2<^-1!{DyNSCQkp>_BLG^91e>(-AIRTT%pK z^Illh@j9Fn;1Jhe;}r19-DGihW&{RuL#X5044k95mf}8O{FwqZj!oB>slCmmerbvi3VAs|Y~#(MsFc z2pZbbaN;+5`fTszyk;NG@@TW0N@QdP^D`3ZOkVaJ|EevsQJPMjxF!u;)HLwhYg=V{ z4YC=gc7E$N>;_^-T~rtC*wyHE9{;+pm{6xclUZoY$&uFE0;D9VVign)7bhiwRTYT; zbhkS}p$dh0ONuq6KuX^(_91bsiA#`Ik7i6D?3Ed9_WZzcNItyRP%CbMW5h7jM?ZSo z;(CDbjSF@Fv=r%u(JQAdS>aLc$KEfN8tpBMRtdCJdmYl$f8>P1N?2pC<(5H zN2FmlZAZw<*pYKQ|FT#+bS)W%bnWs0zC${61i#bI3bdTYlwaNSIx*3 zv>qH>3mYJvyaVXEe`A2!(i)gOu>UCR+ul!$C7A<7!OOx%;j|KMk%VB3BwR8w*gGX4 zY86+$2DLrnu$XXyni>Eum!Y)%(2s)M6bWt}w3OHHKgrW*%Wak6&1 z!5ajdyp$^73*6>Nk?n-7^-RI|F2Iqjb)3Al*M=#oJ@9Ta{1OOJBI)DnPMOkXjXwKt z-9FX6>mSg`v*lWEvJco!z^u_tHm;6NsQ}oFrg7_`lisC@tRpoKcrBLO^*+R*PMR%| zh+@Lj?pyc%LgaLi7-xK4b}uKXYVlyMzZERD2`Cq?#;X5N;sZj5iOvF{9mw+wjp z%vYLTd%xx2^|^MT<-N5cd6&+!_{!Oh{jTxNj>5&jSWq!qZ1&cw#bX49Xs9E&(O$Bm zXw7A`M)I?d-AR-23aw@|%HfTF=t%&r++uq|%GghSoG(ef$#V+(GgEv;url&uiK@am zZJiuVFqjW8?O(DX&>}wr$ z^GDyY8=jr2jLC@TAfv@4%@jD&fwZNeS$~)G2fhCimP?;QOh=|f7`-12;4gm8AgZRT zBXimEAILI2iQzmd$PkK4@&uR9pBXpcgp%Kr0B{#Ub(5OwBZN+KcNB12J6z=BF_17C zM?2P)Z+bW*3l^5CM=o$jNxM?c3}$+&y(Lgi^>-w3WxzSL&=;L0Jatk-aL+#aF(WjPp%f4I#=|8zvJ}R#VJ2}^W(ihJ&Fy|09zRUzS&Ba4Q zeEH|^7kSZ%N?5fAB31jPXBm%=$MP39`@9btYvw#vXTf0+hxmXPY)qKWCuYXPuY6hp zTvfcIp08b+a^Fcv4-eWDR-_W*rFzLSi*}@0dIO4Y@#*N$QO+v*7)<)6JS zypVnR{fb8Z2}Je@FyB^Dk}_rB7#teTzLdjl1Az9W*1G8M6rt&AoK-QajtvI(#cKzS zCnKku!{pgfu)nvf|KGp_2n+H5gmdr3Fa<>aOT+;sayBu6z5BC22dtoQi&}HHyZ;7J C4qR&h literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step7.png b/en/docs/chapter_sorting/heap_sort.assets/heap_sort_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..9b938dd6e662dc92606d8066cf90a4c5d2b0c5dd GIT binary patch literal 20906 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
88@h+z>xc$)V2K!7!_OU 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/heap_sort.md b/en/docs/chapter_sorting/heap_sort.md new file mode 100644 index 000000000..e67385822 --- /dev/null +++ b/en/docs/chapter_sorting/heap_sort.md @@ -0,0 +1,73 @@ +# Heap sort + +!!! tip + + Before reading this section, please make sure you have completed the "Heap" chapter. + +Heap sort is an efficient sorting algorithm based on the heap data structure. We can implement heap sort using the "heap creation" and "element extraction" operations we have already learned. + +1. Input the array and establish a min-heap, where the smallest element is at the heap's top. +2. Continuously perform the extraction operation, recording the extracted elements in sequence to obtain a sorted list from smallest to largest. + +Although the above method is feasible, it requires an additional array to save the popped elements, which is somewhat space-consuming. In practice, we usually use a more elegant implementation. + +## Algorithm flow + +Suppose the array length is $n$, the heap sort process is as follows. + +1. Input the array and establish a max-heap. After completion, the largest element is at the heap's top. +2. Swap the top element of the heap (the first element) with the heap's bottom element (the last element). After the swap, reduce the heap's length by $1$ and increase the sorted elements count by $1$. +3. Starting from the heap top, perform the sift-down operation from top to bottom. After the sift-down, the heap's property is restored. +4. Repeat steps `2.` and `3.` Loop for $n - 1$ rounds to complete the sorting of the array. + +!!! tip + + In fact, the element extraction operation also includes steps `2.` and `3.`, with the addition of a popping element step. + +=== "<1>" + ![Heap sort process](heap_sort.assets/heap_sort_step1.png) + +=== "<2>" + ![heap_sort_step2](heap_sort.assets/heap_sort_step2.png) + +=== "<3>" + ![heap_sort_step3](heap_sort.assets/heap_sort_step3.png) + +=== "<4>" + ![heap_sort_step4](heap_sort.assets/heap_sort_step4.png) + +=== "<5>" + ![heap_sort_step5](heap_sort.assets/heap_sort_step5.png) + +=== "<6>" + ![heap_sort_step6](heap_sort.assets/heap_sort_step6.png) + +=== "<7>" + ![heap_sort_step7](heap_sort.assets/heap_sort_step7.png) + +=== "<8>" + ![heap_sort_step8](heap_sort.assets/heap_sort_step8.png) + +=== "<9>" + ![heap_sort_step9](heap_sort.assets/heap_sort_step9.png) + +=== "<10>" + ![heap_sort_step10](heap_sort.assets/heap_sort_step10.png) + +=== "<11>" + ![heap_sort_step11](heap_sort.assets/heap_sort_step11.png) + +=== "<12>" + ![heap_sort_step12](heap_sort.assets/heap_sort_step12.png) + +In the code implementation, we used the sift-down function `sift_down()` from the "Heap" chapter. It is important to note that since the heap's length decreases as the maximum element is extracted, we need to add a length parameter $n$ to the `sift_down()` function to specify the current effective length of the heap. The code is shown below: + +```src +[file]{heap_sort}-[class]{}-[func]{heap_sort} +``` + +## Algorithm characteristics + +- **Time complexity is $O(n \log n)$, non-adaptive sort**: The heap creation uses $O(n)$ time. Extracting the largest element from the heap takes $O(\log n)$ time, looping for $n - 1$ rounds. +- **Space complexity is $O(1)$, in-place sort**: A few pointer variables use $O(1)$ space. The element swapping and heapifying operations are performed on the original array. +- **Non-stable sort**: The relative positions of equal elements may change during the swapping of the heap's top and bottom elements. diff --git a/en/docs/chapter_sorting/index.md b/en/docs/chapter_sorting/index.md new file mode 100644 index 000000000..e1f750035 --- /dev/null +++ b/en/docs/chapter_sorting/index.md @@ -0,0 +1,9 @@ +# Sorting + +![Sorting](../assets/covers/chapter_sorting.jpg) + +!!! abstract + + Sorting is like a magical key that turns chaos into order, enabling us to understand and handle data in a more efficient manner. + + Whether it's simple ascending order or complex categorical arrangements, sorting reveals the harmonious beauty of data. diff --git a/en/docs/chapter_sorting/insertion_sort.assets/insertion_operation.png b/en/docs/chapter_sorting/insertion_sort.assets/insertion_operation.png new file mode 100644 index 0000000000000000000000000000000000000000..c6806c0ea78f8205cf9133ded4758a9c94a225b2 GIT binary patch literal 27207 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 sort is a simple sorting algorithm that works very much like the process of manually sorting a deck of cards. + +Specifically, we select a pivot element from the unsorted interval, compare it with the elements in the sorted interval to its left, and insert the element into the correct position. + +The figure below shows the process of inserting an element into an array. Assuming the pivot element is `base`, we need to move all elements between the target index and `base` one position to the right, then assign `base` to the target index. + +![Single insertion operation](insertion_sort.assets/insertion_operation.png) + +## Algorithm process + +The overall process of insertion sort is shown in the following figure. + +1. Initially, the first element of the array is sorted. +2. The second element of the array is taken as `base`, and after inserting it into the correct position, **the first two elements of the array are sorted**. +3. The third element is taken as `base`, and after inserting it into the correct position, **the first three elements of the array are sorted**. +4. And so on, in the last round, the last element is taken as `base`, and after inserting it into the correct position, **all elements are sorted**. + +![Insertion sort process](insertion_sort.assets/insertion_sort_overview.png) + +Example code is as follows: + +```src +[file]{insertion_sort}-[class]{}-[func]{insertion_sort} +``` + +## Algorithm characteristics + +- **Time complexity is $O(n^2)$, adaptive sorting**: In the worst case, each insertion operation requires $n - 1$, $n-2$, ..., $2$, $1$ loops, summing up to $(n - 1) n / 2$, thus the time complexity is $O(n^2)$. In the case of ordered data, the insertion operation will terminate early. When the input array is completely ordered, insertion sort achieves the best time complexity of $O(n)$. +- **Space complexity is $O(1)$, in-place sorting**: Pointers $i$ and $j$ use a constant amount of extra space. +- **Stable sorting**: During the insertion operation, we insert elements to the right of equal elements, not changing their order. + +## Advantages of insertion sort + +The time complexity of insertion sort is $O(n^2)$, while the time complexity of quicksort, which we will study next, is $O(n \log n)$. Although insertion sort has a higher time complexity, **it is usually faster in cases of small data volumes**. + +This conclusion is similar to that for linear and binary search. Algorithms like quicksort that have a time complexity of $O(n \log n)$ and are based on the divide-and-conquer strategy often involve more unit operations. In cases of small data volumes, the numerical values of $n^2$ and $n \log n$ are close, and complexity does not dominate, with the number of unit operations per round playing a decisive role. + +In fact, many programming languages (such as Java) use insertion sort in their built-in sorting functions. The general approach is: for long arrays, use sorting algorithms based on divide-and-conquer strategies, such as quicksort; for short arrays, use insertion sort directly. + +Although bubble sort, selection sort, and insertion sort all have a time complexity of $O(n^2)$, in practice, **insertion sort is used significantly more frequently than bubble sort and selection sort**, mainly for the following reasons. + +- Bubble sort is based on element swapping, which requires the use of a temporary variable, involving 3 unit operations; insertion sort is based on element assignment, requiring only 1 unit operation. Therefore, **the computational overhead of bubble sort is generally higher than that of insertion sort**. +- The time complexity of selection sort is always $O(n^2)$. **Given a set of partially ordered data, insertion sort is usually more efficient than selection sort**. +- Selection sort is unstable and cannot be applied to multi-level sorting. diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_overview.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_overview.png new file mode 100644 index 0000000000000000000000000000000000000000..7e71adce4e4aa74869d3a2c6d188262ff636ef96 GIT binary patch literal 25986 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 BoUQ-> literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step1.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..34d567f0cbb7bcad2c7e62a5133d5116cc3025ff GIT binary patch literal 8581 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 S{KU>*bF_-4a_MbM@P7fXL%28q literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step10.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step10.png new file mode 100644 index 0000000000000000000000000000000000000000..c870f0466de546356c50c9d337625df0e9239b5f GIT binary patch literal 14895 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 Yke|nM)2aq{TmOz#m9>;g6_Bt02l}J4_y7O^ literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step2.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step2.png new file mode 100644 index 0000000000000000000000000000000000000000..4e8d1e809504c0e95fc4f2ed1d6cdadb6d6f3a82 GIT binary patch literal 9346 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step3.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..c25844dca9bb85e8dd731ec143ea4798afa02f8c GIT binary patch literal 9922 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step4.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..890a0e4977c82f0c94cfe9fdafa344dac60b1bf2 GIT binary patch literal 10210 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step5.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step5.png new file mode 100644 index 0000000000000000000000000000000000000000..67a3d88080689405b56c0988abbbdd9061c0a7fb GIT binary patch literal 11245 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step6.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step6.png new file mode 100644 index 0000000000000000000000000000000000000000..1aa7dcfca8df54810f624805c84cfc18d24348f4 GIT binary patch literal 11992 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step7.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..c8d94c13bfe4bd251d0c9dc570d500a367a38b32 GIT binary patch literal 12223 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step8.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step8.png new file mode 100644 index 0000000000000000000000000000000000000000..a25be5c344bdbee219cf736f8ec2d5195ee7f276 GIT binary patch literal 12346 zcmc(FS5%ZuuwYLhgA9U#fF#M1b5IyiBqJg@OB5uDk_2&(sN@U+O3q1gW(bmVlFT4k zq67g+JO2NDxM$DaJ-hc|_j{P>uCA`CuCCKn-Blmd)#OPCsR;o9B#H_TH2}cDHlaiK zFznw+2Db$O5CL@+O}VS9tM_$2CnqP8l9C@jd}wcPUtC&OM@MREY6k}g zrlzL-{r&z8esABtm6w;7l9K9J=-A%gE-NdGjEoEq4{vE{DJdy=|Neb%Z*P2jyo-yA zva+&`jg79Z?*9IMb#=9qlaq#qMnFJ-xw&~=U0qgIR&0ArNJvObOw97$Qe$JIhlj`H zHhUob%QH|lRqba9{x=1NZ32x>s#vEKH3fn z3i2)T4T=l&EB1|L{;&lAPn+UH8BO=;trj1wMgc1IB9Af;`nUPt`%HghkpIl=x~e48 z#On9I`T3_vR6`j2ARsO}jBQJr4~JZR=;3b!?tf1z0BWiQngyJTfzrD9Irltg#R5NU za%-;N_J=xcz^`MZ{VQ2#Qa$$@ka$)&ncTy6UFn@G)(#sd5kcZpN?T{O&kL*t@fAsd z?I&bS@|RNcN97u8$>Hni9I6To2w%5@Z(oeA>s)@mdTMudolm^H+U=r7T1VODhi5}m zoI=Wz@at=EhUX>gCi`1osvDa`_9NYl0aPSuqcdyZet2V6RELyOEdlO(5zpxHV_uNr zpE(>}1Bbu=%|AMLz_Ts!d@*Y{Tmy>lx24L9F{GqQ5<-!M%b-w=@77Hok)fGUWDxjY zayWG=?$%2%Dl#O4X$f&^Ie`T;NMl055eZyS1>n>Dziv{Cp}NoW_$~5OCeB{{u;+fE z7CxNEk6Y?qI5I(wWOxL_E1ei^a*O-OyvzDZxwkHIKa>NtqGb{XM+6NG>7asnbv9-t zmDxBX7o=ENE(|7=PSaJdX3Cn2Y&V+J4&EpOANST?IT@E?2{bbsN<<}Eir01 zeI3bQ?2A{L8)M&m1Dzox8gh9!cqo!k;=gv2Drf`)nN<)qh|}IIHplBerggdK4I6OH zel%SlD2!bPI|&`SUURxkQ+fOAp=X|eSMHto=@rVh=xF~jfrLd6j20sp!o2uScpoIKY{5(;Dc&pMa^f;wNNEst$oekWNXIg1-T3bYEdwyzi;Oc zSr+0+OS+75LDBTh7x+{kMdg%a+Jg;`udeXe>X+N*V+<`^2m8*3u7BEz8BL0xQh`3d zaTjIJ)+h2X^Eg=PDIqBO0WTHFp5NywHyS#Y3zi4^-v~_Wab|yHKJ)Mxr2GnjYX(yw z`Fk~EERURwd-OBMH|1F58Bn%gp}I-SBFZkY^H=a?77Z|y)GLri*(ZDH4ne5%VEb^^ z05>$~kt0qWv$SMN7+iC+TFd{qO`mFnZ)*E7-3bcd2!PK35J|YtioqN*^wc^6cY-R$^9pUq5mHOp%&Zo? zJRuPQYEUZK>rEehvOyi+D?w2RJZe}G7!8k5AUUXw$NRt^O60F^?~7j{LIq*#&p=8O zNor3bwg(s}x`RZL#rZ*}`N;@{^i$ z*X5s6--82drXn5B5%&v$H()bgz@SdhAg@P%LW25@g9JUbLf77&M>Nli&bGbL$!T-F zH|E=Vqg>Kt>-L>(>ZP8JV#MC|{&vvS)ZnjV{`vFX` z_Ljk!c0l=*&I|c+bs0}_NwP@!@~M~P=m+&90Xvh^yv@8t7vd3*)BI^5UJ`@_EPIR7 zyJWDF@RWLcB__f)G4Ga@*7scOjJXkn&q;3w#=vNHsV1C&>uPOC_T0RI!`UIfFrqKF^D|KEtInEEqhTXQYdrJb z*K-7q6$TbNdyf!yzs~jo59v7wenMzwpb}gTH*xOy$Y?26zw>Z;`(4oB0TJV$ymDRs zRLyRq)JYoT>xTwuo+l!YI*2|Ht3IxWt@lPu-O_bt{!To}FM=8zp>^O~S2yG)ytaOk zNj*LFC}`)66?{dt6j8l55sh{preIt8#))y*=g3ak0*diuBWeo@&naq8w#TeW{*$ zVY2fQimI2BDPVz7PcH?{B$CAd!eRN7+Oix@?cUh#=L4D>1Q?A;4ehif(Rz7jN7krf z`8p99FOE+F1){ksmnqx`_PWjwz>uemM>I9fCHxMgTJS-YjNiKXdnM{8R&G|K%aesa zUf}V`gk{V&64_CqIcq}*6G;}}LrLcJ-ZawkG;+!@sReSrB&j=uK%dJn;gR-}C%P!4m3Ec0e z^LGWo%gZH@zUVB@TcmDyhz<=4OG_3R5girbGSjttH|cS2pi!NPsJ{$N(M#&+{=Vx- zMhCZt*$biJj`221;o+TK$v2RWamhZ_MY9ALk#4S9{~e$oLVU~DCRAm~L8^ISw+#(l zf7!8;-hw-{6j3jSrLc32p>!;>jL0s+KpR*qd_LNN-hIY7Z1Dx;-#FmQ>K2}rD<2Sv z14_W3isc5n+$*{7W_OXM#}`A~3fZ*FppXnvREkdDfO}&zZt0_rXg=ZY&YGmhG^5NY zEcHh}gSavkZmtz9JA_)SaTTmtls^X11X129gQu-WbrZMIx1+S!2?VS*Rj~Sls|OA9 ze~uW;`EfSRk_*CeUKx-M2`HECzW{FOLaK`#OZvMWC{m5(OLz?NY1c$rpVU8-o)DCb zYEma{oZmco6q@PCF&$Yct23x!lP>%D5bl((uul_%uSilw$PU3;2|rULJNH!U#JsUo zGi7i1xKf@3>Rz`{>()N;E}>AK+=jR_6gT90EyT3$C|(wy^mDOFzUw2?z-$s;)E~3X z7kH4_vG76OBXllwQcSm@ra|ht7%^sZGx(r4oCIqF*ZQ`iPcsDG{eW@ie85k5u z4RoGUt9W+|**EHr0Xx5EAD6Y)eiJjuTM<6xvza>N(x15gD(jG7i<;)QH7XeGb0LYw z1gjow`1%w)f$#O-C>|fB#FSrvCVm8A?o1~RRtI5zPD!`VjrSMBkF1?KcWE2|rSYOu z%P-b0oFS@j1{i;oyf}{3G%1G3i8F~oc2>Ua8ipfPaskKNXQ&n5&4<*1zRt1e!C!SA zM`n|VqD-`IC*$&&V$5Ppe20BtXOMgCFPAQU9JSE=Md^!xozR^u?|Gu=)ueB^SBm!l zWARhsQivg4s|BqB@UJmxDt8mjBWXiY1uW=MXpk?+5Pgvyva}E3zt&1MT5(!?#iGQw zF-?fi_@^<@9qn!vLxm>fi3F~oMF1++Vpb2?f;`_<$Ajc*KFPu<4eVip80urF_95#A zKYP6atn?&Q_1`fkKSVR(cY0gfFGT3k+t;e-(MRH<7czH2EN6ZuxF-BP-qoksvwoI^fTflmc7p~q-fg~*ERI5H-ZPkI89I8;Xqc+hJTSb1MR(=Fk{6934_h=N!J!<;0_#*Mh}Q0Fdlq^Y5H!qk4+`Gwb^ zVwHuF;FF1dDh*yQ)U>ml6N>y!>vJYk;G}dzd*lnl#a*^v7ZMb1*B4G*hWO!GA2+vE z9pA63BC;-RnzzRI3E?vM4~Ipb?!LoVM&3tNwhAr1`w*!<%!a+K=mvx9NK@{=VP)mt zcxK{n6#1Wl0Z^(5@{v(H(Dq4oN(K0MlHd##b!O#EfjZ&ZvP1wqrY1DyH0rX3B`ASt z0NwrN2HMKh1c|1f>L&~ENfdso>=&j+`{P2X)_Nt>Hl$BWQto6F$;}#O_>fAvjsAFu z@O#<7IyWjfS6uHteV_e3LzgVPg|cD&n=jW7Rc4)w%Y_y{t1|v46{2%V)IYDx9h36z ziT6EVQHA=4@u0_C@(wTTq6*K`H>M@hp6W2n@xQu8f=p{FDN~J2wt3jy!;@dH{B0Xu zHsqhE2O#5NyvQltDw=Qg6lxcgF?~?9?Mb7t8c5T- z0^j}^tF?LZz7p*01MJB1M2I@dN)VO``mJ!0kWc-@D5y}{yzl+@|w6L`zp+|3jMuPD$% zy)BPr+fuDc`G>c${x2EVsR3e43{HaC*5$Ib8+%w@>#|mKxA?1q;euvW+|+g>LZ_{s z5W(a^CLz>)HeNJEJrC=t$x=3bhllC}nZCokw2^{ql_Afd<-X#?fJt*rlkU~ppAY9& zFAw%>gA5xQYa_bjSE9aTK{zQe3A@Lw9V&uJg$xz#tD$X}8h1}wJ%9fO5hfyRw8l3sZ2N+)wSaUE=3^-{whA&ax;(cIA1 z60z3o_g+R!_A@3`WhXw%hf#vlx*9ggI!aAwp$3C8lY``|usg%Hk%kWA3XS6*VeA$9 z)~+DuRGC;dCV-> zwN%=dxGcakxlIbhoi(BCel!r`H}8Lno*a`DApLM{_BVM+3ZuIfQj+D*9@VtsL_I3c zi>}PJG#V65G6%mEn?!Bn1iJNAn{Oex4@%Opkp>%H>DhAs0R<;nn$M^6pUUR%m-lTy z+2J|hI=w&c%C!#260@UM4EXv^5VbCbjT?S7fH(IZHy?0kUZc(JE@`UJeik^-s$osw*z;oS0eA_H0%$y zVtOWRsCG^Pi4nYHf>5Mm(O+MqE$l9-t%zdiq_Lyih4T?B$5_xAX%|#=G3#-}C{W|{ z>biky`PjEum&c25+I1krxQ1@|bpA>C?%ieYDF4=Nz{wKz=GzmV2AFy(cav=KV@rig zaZBYq5Eh}>*Q;g9Xo#P>_F;@4CUUA3uMN>m2HE*SmBpaRTy#kXBsDN*Ku-efu>LXv z{BBuaAi^XSgZXPZ?um1(kakf~7Xj}UnoA9cAyYgHN>%}!nI7)qIDJ0sFRgJh0b0Eu zqobqmF!QF4b)B4aDMVIbUrw3Dv!S}o%0mr34cLH&z|@471m4v=CKvI%(U@&2|9h}g zyXy4eOS{2{5LX<8*q9B`on+>xoG2CnUL7C*nl^f@BugX6q`tg?7FmJvvHjN7$I(J& z79M>Jda^nogCvSSYP&))4pO0%RW4M^389dMPU2;}<3*`Pi9&Um7SICPcRbQmH!{@( z5`Pk65ZwOw-5mP+P9f3B5rFXJ_lUa?;sICMnz^V-%&$`|zA;~=l$}2Bx<5^?rh|bM zZ}?zfv!5{n4SnT9T|g-ft5M{E>5k+{FrQ7S8MH>F-Wk_oPvZtcwk}2}!~73lW78Ue!if zEUS3u4=S>bpE_-AG9US8Pk8X|J$}keLScTzsSNzr_wWooaBCK8aEoW{yIE3=-c~=o z@w!%H!PTd+V95wmunD<04fCcY4Lnx+avQxtOL7D40HIL4sX?!!zcsXZmn>D4^J|(} zx~^SulM%aSbR{1`F*+oJhdz*{-AL+-X9;8gD#;@aqn+0+_x8HBRL~nM@#o|2@9-Cx zq#4NhwPfp}S6dm@IX9G-IjJ+d4a0hF>Ol$r&``Zju=ni=(PnxvEaAwH8m8)&U`EN# zzUbQ32IcjWy}wuAw6bBwR=TGmI$fcLb+qVFzT$G;27G6ku=EyY8zI|X{~zb{=ARS= zi5=nYkCi1NpxH_l+-74IxCvYdTUGG(7ZxjbFkepMz35UAM&}Q_CsE24zV`mXqHM#qw4qGvKnOoxlzd_oJcM-XI%o^bZh(l1@<`^S>*>oY!M z{I(sw@9xoUuE8jgu8`-)H`H&B-d`h-l$>xSYigdh&5^e*Xg-@~i(O19e4BC$@3Z6> z|8YOL>|tciw`Hmm%o`BvYf80PNeACM#6uj`+(wg_%3~kgl(A>V6-{`u8lC^kx%%pH zV<_9s;{gZIxx@RGSoI8Qt>_Sg&CAfGx|0bl;maO-t z>BDo8X5cYFpvCm)0<(}m>0i!Jbo0+<3U?JL&PFksN4mpx88#8Jvp+~14mtM-_8RfH z#U(C>JlGVvR)E#uIL*YY$sZu5lhZ2ZE(5+R3gT$hC1OvOw!AAs(;B3J^`w4BNoW2t zu~mXMFNEU9{5g*C8+r_>X%Qax6s*b1m?#BSuP4e@kZmUa^2}xvcW-58n#<{;Fe^4j ztqSs-a;r<44p}t7^QK|*onhjg(;V!^NS^aFkT3hb8CklV%EYxCJbKK9e*E1bTxtk2 zY2Z0w!GioW`cu!Svo!+}A~acq!;Y&rDxxUJh2<~ug=QB=YU-PHJS?|R+zqmGo4!`c zgYRD1_-bN2)yR}G{9_l~^FA^xJW*|Q)kzX{TT0jKl!7ld+ni(k zhDJvPvtH0c!c4NS$ujuQh)$SMZ)=3|UkeG@Q_NrImb*uXRI&cV@4B2{FswkuF-L&G zuU&~h!(PSg6`F3A)5mu-ct^4x@q=Ni+geu-Am=cJ7+X!weoKvE5-K(DRhORudzLp* zo{Y<1X#-(yvnWT*eY>G3AsddN=mvUr`0ygd~R@~47#h=zIn9T z{r-El3_j$<>pI%okXlT6y7HrFazth2aDE;2`H&VSMzJyST?wPCGxg%hv!=8)2y=GV z$9PdABt9c#>w6ae1cOb~_^mP_f#?Jx-tjJWIzk44cg))Ma#7n_oqnq-QGgJOm^6%i z#>b5fZYKOyPMCOC#pZzE9xbwA$({h~K(Xp#931sahT*-~f596HxL1PHZh#Dr=;a9m zOfAH3wJX}CpS1)+_-hv6-hWK~uk&vdVhVMAO%cY&Hz(449FE6#Ba|mbB*Rf5?4c;{ zqx7HdH;}=GI5%5E!8PekQSVaL=HDY9MO1RMzG{BYV88Ar@iFJy7nIRY|e)#1I))!Nk6X3)4qmAFSI)ozrll zSoOlN4#!Cty8u3}&p9ZTbpn#HWgQc08w~<3tydM?yaA9gk1sB{Gg+a09b3RGUnRQ} zd*;{Bpb?+lCqxUqmwbJNPLJX{aJc{MxAxFFRY_wX{B~MEKHk25>L=!EAqIyi{=a@w z8k?MR7)4S9EG9Z{C4S9Cav{%Sg4z7+?$1> zcl#^-2`|hCnvLhFUwKk0mH*y9UEwA|bWx%&lSFsh7@jf}Z4)(3aj`UauEfswztdZh zNO2XP8Vw)hQRxe3+ob1dlCC??B)!Vdu_8xPJ~ARlnudc8Y4^Kid5;929oK98 z@3s9s`bK=N)&o_3(9-MRFc2b9U-!lyY|)}SriT&;Drq=O$qSDpO^W3*ML2gYh0kmn ziBmxyWUSL@UfLZlB18VQ*OEJ5@ctA}fnm;5UKqO%E}yUuS%Je|`@pVO?TyIT?OqqX z+lxX6r0jvXd{4;V{#a0w_F)vNH=2lZb!BL?bO{;tImL^4085CMBA7K`VXB0nJc;mA zs|u!@(+2=@kO}G@kN$Xym-@UB+!TT)z5^XxEGUV;jh>@-AehRhPa2Tlq(I*O+whmL z11@lZD?qV{ApZFG+5cY0E z>@?lSSD(!Ko(2GEz3-3gn z;$haq5dZSZQ)5JZLUx|RB36Z<&u!VT=y_^)P_g(p@Q8J0sQd9@xI7AIq#%Ll)rkQ= z6q2dy4R+(`zu@9yPOd`}E}Gx-K_Sd~?jSI!Bpn6lY=2CC`*mt!@r2hR#iCI=Qbkh^wfBS8S_{vQ0v#3raCo&n!- z0!3`jkD(1nB(-BfNB}_rD1g8L6#s96?2;E%wD1L&UIlVk&>aS#3D^g&&=QyOGPqMg z_XljBgB4YxA?#(y;?XOLKI*R*!sgQizrjmCY`UI{eXpB-2QyUUg(J`^{E+0skzs1I zRfhco0O^apiLT7=pho*Hdk_+vrj>#K{l-)HrKSrr3fxp8#GE?iRoWCmwlayXVDM6P zO;AnkGC+-HZ^Y)~h~#ie7Zma(%z>N6vMK^7%i%bMB$jAZSAm_ZFz_R((Q{jsni!kc zv8Uw5dzQsFZEu<*cT1Kcn|75M-M*eYD(>=fxV`Q8>UvyRnHjps;(hCd=U0I!wuZC7 z)tv)|cB(5KFo&1^7>cu}3SF?|Ek&3mUvZ;Kd`f(v?xZK!TcBCu+#qzF4*JX2fVx9L zR5Rq`0;hDqX2mP_^FjC?Z4D(e%FUSR(inSkURN*VrvtWc-H7Bg4ogee=NE>z^T=SBrQa0X_riWic+sI2j-F7!WNqEn)M6<5WoXJ0w86VCU+N z1heSSanM%Y!8OcX%;u^0A^D!bkXpnSbQ3lbvgG4HbsI%>T4x$tI&!N{S4q1c7rfRK z*c&A-``NS}8Ctsl{nF0A_tPMv(^Lw4Sw?Cy#>x5=QamDt26bxP4DabHI@T4pjrKG$ z0o6ZWuPE<%KAPBtO)`?$??4Qv+`d4)j()4A;-x({{$Yq+nFf0VN60z}G-$?C;(kgb z=xBR%)tGUw`xEZ>uPeC`+FxW=xdX#q;OD)2iC^|^XPg&}Sgxe~z}xQZ1WV|;<^kEF zAuu(cBQotsH)r#)Ps)5UhFNzG`CSRcKUGCAwr_br3^O|Spb2@m?Z?^`vXT zT*oDYU7A;KKHlYE#QJ>1!6MF3?znA#FR=Q_+!jtLgcXk%6;~kcN-nrt9c~b?x{i$hHXta9+U<(jQ1z+o%N3(NO1|@W^-Rat;!1z; z$K$aGC^qspb7%nCN?95&m{GRSo7)t6cfOodx6ZBP3X8p=T@zt_(zd9s>yHf<_+c&C z=&-rf>~BPy7T=nt0Ow+ab2KER7*3vI8;LasIRSo@%?Ot$_lQV0;-CP#r$s;f<&8mf z7_^&BQ9gK9^*75NTaW5IR9^f22bD?%?2a*VXvUI^aY|0{?mvD~ca0X|LT6W7FtaAYp;4D?C{vf%>AT%}oVgAL}oa*(BV1>%9VY>r$!2U!5|?_>lb#!=-0tacggS>Z?^e?rc%ZG zFCt@~VjxrMgRb3c(K%>ti7jR?NbmuU zg3nT;WbL_yfBCnzw+2jKUC~A&uBUHDM3zs;Z_Os_+^e}A2%0XA@C6!p^MBWuNa!|u zYi_ST=5?6|fzg56uJy(A!KZ6=JW%)08++4Q`fs2=LB8a+Je7O0->#f@wfQPZ}^Z&8wGzd$`esw7UW8nJ==*Yz+*68`Vfp+uO zPRF?T70Lz|fw{ug8^r}hTpyXL-9dzFYncx9(MXE^r#A2ZzVr=UZqO+LTKNF{PB4ba zGW*wM@K->hYLQmYXiWNFklPzh@et-;17d71cAuNYLZNGYH&O~|fpyWEil-};QUv$L&a`x%1#2Sc`BO2wm}mW>wdX#|pfbhs@K7Oo_x%*`Uw
o zFP(`8{lN=2x!h;p3-2l>hQRqSSEQ*MMBtDS1^(wa;NL=-lNmsF_srrKDHINAMfCAMeWUcjUG}WESRt>fJ@nkmQ}mH(W7prf4hw}jk^0IfKsK{p)YU}~YbI$z@l9Wsd3S172A0OmOtQh9xZ@qmWgV0NBt&(>F>ktckTtQ)#Ofu2**RPW z(eCO>Uu0rDp={z3J=*#@&hF;%#G2a9#FnCi%-~!Qz-Oa zFOXnb43m4aNS*7KW&medv19)I{$+0gID}7P3iUAb+|6=FP*!L@TMl%w~>b?`uTGakMUv5K+>2?d-stc2D6|FMJYHuQJ90 z`}{}0rb#dbhBs?8HKqr|3Y&NeI~&Hnh5Vx~U11^@ZCBWdkz?UB*uf2;6|B8?SJRUf z1v*$gbxOH4lU_sJGepDe!LhT9TcL&m=hA9mO$4}nw(G4whTAF@MoKF9Yft5pcmrvM z|9Rw7l<}73Hx0XAr4(fCzPnc`ug!$Xlen_f3$`z%)ZMENB4(Q`bmnkSp3#Ry@>4yy zkUopeIk`pH$%cU83m$q74xJnvY)H7XwL&R#-I?cpk_)8ojQ&O<@%)BTU(fpN8_XHgTj*^TP z%6E^`7+`yRr)1vX%!4OM8A$hks(qbM>@w$BwHo}o31f`{ zPL5HJR`!)ti)?uY=MhhY;#0InaEH!Ha~P{JdVj@K9jQ4AG@k#|a<^HYN#YN5;9#>U zOUSJGP^ZG39xGx>CMDPB`IM!q*^#O2#NLVXJSH}87ytau zEkytY$7~yNNoeX=`LXK9);+i^DO#J4rfSw332Ci+v=7tUp4_5Y3TJ|#??fE3oq!*M zW>B;=47)fTBJ9sXMS|9k>1lmsZz^gYX*gCm@2Bm*Qf)|h&-sK5z44D|O< zK))Nr8&Y;(42&mnYfYzUUVH+pVeiHo_@$-K6n+lhscFy~$gEXQ1=(1wK-?pkZcS{m zUry1J)!Z{lt!&#>qxJYkbS~@ooJ&P_s3LXjz31Qq0*QKO)TfnT`K*1kWr&o)dNjp3 zdc~@Pm6pJC(&=-xe9F*r-eOI4xv6l!2lci1nH%NWhA#4-Jo@cov79lFekaHDS)zwc zCl8?sflMnJv|^MFL64wR2iie-l6C3go7;9X=H*24al$m*ts^G#uQ*liObBD|52ESf zp@~a2_i0;=!4f?gk=T@-*|kT|1ZT$fmhrp!j}3cUISFDmwpC6U+6%8;>?dBOOODXu zM}Oe>JK5aMR^^lMoi;wy3n@i;=yN@yCwosQI?1n3^Ci{Mql3yh7aOW)6{igjOMC$o z-9N=zE+Tm9L`8s!i|*mTvJoWsx+^_aU#t~J!}UD+@SuLW4is7GfQ2Powx4SrWM4EQaDV{bJzwF%<3SE0nR zc8Ss6pfd0Kud#IzL%R%yL)bW{nyuRyfjjkzq2qa2@n*+ry@cwdb9F9PE5s*+dbKTv}~asODLN$Ew$Ux1>V+QVX5)A#=a77)^V literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step9.png b/en/docs/chapter_sorting/merge_sort.assets/merge_sort_step9.png new file mode 100644 index 0000000000000000000000000000000000000000..129d4506fb3c424467bfedd043271d7cfd1e7c6d GIT binary patch literal 13181 zcmc(`bx@p7uqgVi;O?H_4k5U+xJz&dfhEC$1rN@W1PcTWENaq&vf^6_xH_qPfu@@o{lO3E-fwq00io4O8NkRf$oBb zu_5TMivm6y004>TX&EZt-`~G!3ca|vh>D7ml9KA`>RMi2{`~nfavquApNHCCYHx49 zzP`S_yEQU0%FD}JSy`#CuU}YL=;-Je7#P^z-X0qpv#_w3oSdAUogE$?K07>b zcQU&D_=rFtG&MCgMLAudgpFD|>o++S}Xv;>C-?!orO1^q82K)x(v_ z(TcFJu#4-9{r&xjh=`z|ptZF%KR>^Xjg6l_e<~>{$;il@pPw)6E{t!Cr=_KpmX;o! zA4RrBgy)AXEiJ`�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 QMerge sort is a sorting algorithm based on the divide-and-conquer strategy, involving the "divide" and "merge" phases shown in the following figure. + +1. **Divide phase**: Recursively split the array from the midpoint, transforming the sorting problem of a long array into that of shorter arrays. +2. **Merge phase**: Stop dividing when the length of the sub-array is 1, start merging, and continuously combine two shorter ordered arrays into one longer ordered array until the process is complete. + +![The divide and merge phases of merge sort](merge_sort.assets/merge_sort_overview.png) + +## Algorithm workflow + +As shown in the figure below, the "divide phase" recursively splits the array from the midpoint into two sub-arrays from top to bottom. + +1. Calculate the midpoint `mid`, recursively divide the left sub-array (interval `[left, mid]`) and the right sub-array (interval `[mid + 1, right]`). +2. Continue with step `1.` recursively until the sub-array interval length is 1 to stop. + +The "merge phase" combines the left and right sub-arrays into a single ordered array from bottom to top. Note that merging starts with sub-arrays of length 1, and each sub-array is ordered during the merge phase. + +=== "<1>" + ![Merge sort process](merge_sort.assets/merge_sort_step1.png) + +=== "<2>" + ![merge_sort_step2](merge_sort.assets/merge_sort_step2.png) + +=== "<3>" + ![merge_sort_step3](merge_sort.assets/merge_sort_step3.png) + +=== "<4>" + ![merge_sort_step4](merge_sort.assets/merge_sort_step4.png) + +=== "<5>" + ![merge_sort_step5](merge_sort.assets/merge_sort_step5.png) + +=== "<6>" + ![merge_sort_step6](merge_sort.assets/merge_sort_step6.png) + +=== "<7>" + ![merge_sort_step7](merge_sort.assets/merge_sort_step7.png) + +=== "<8>" + ![merge_sort_step8](merge_sort.assets/merge_sort_step8.png) + +=== "<9>" + ![merge_sort_step9](merge_sort.assets/merge_sort_step9.png) + +=== "<10>" + ![merge_sort_step10](merge_sort.assets/merge_sort_step10.png) + +It is observed that the order of recursion in merge sort is consistent with the post-order traversal of a binary tree. + +- **Post-order traversal**: First recursively traverse the left subtree, then the right subtree, and finally handle the root node. +- **Merge sort**: First recursively handle the left sub-array, then the right sub-array, and finally perform the merge. + +The implementation of merge sort is shown in the following code. Note that the interval to be merged in `nums` is `[left, right]`, while the corresponding interval in `tmp` is `[0, right - left]`. + +```src +[file]{merge_sort}-[class]{}-[func]{merge_sort} +``` + +## Algorithm characteristics + +- **Time complexity of $O(n \log n)$, non-adaptive sort**: The division creates a recursion tree of height $\log n$, with each layer merging a total of $n$ operations, resulting in an overall time complexity of $O(n \log n)$. +- **Space complexity of $O(n)$, non-in-place sort**: The recursion depth is $\log n`, using $O(\log n)` stack frame space. The merging operation requires auxiliary arrays, using an additional space of $O(n)$. +- **Stable sort**: During the merging process, the order of equal elements remains unchanged. + +## Linked List sorting + +For linked lists, merge sort has significant advantages over other sorting algorithms, **optimizing the space complexity of the linked list sorting task to $O(1)$**. + +- **Divide phase**: "Iteration" can be used instead of "recursion" to perform the linked list division work, thus saving the stack frame space used by recursion. +- **Merge phase**: In linked lists, node addition and deletion operations can be achieved by changing references (pointers), so no extra lists need to be created during the merge phase (combining two short ordered lists into one long ordered list). + +Detailed implementation details are complex, and interested readers can consult related materials for learning. diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step1.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..242ff0d0aaf2a32d200c7c2ea74b1f91b859ea4f GIT binary patch literal 31804 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 z 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step2.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step2.png new file mode 100644 index 0000000000000000000000000000000000000000..27a829600de45a4b53d9a9b4300ccf40956373b8 GIT binary patch literal 31803 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 axB~!oeh_n+avJ^vP?pztRU>N_`hNgx%V-Ax literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step3.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..44a80612d19d06e8d5fc8a78fd6d4261c3c8a771 GIT binary patch literal 31739 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step4.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..41af011229998ceca0ce23ca3a1faf39bef0f7c2 GIT binary patch literal 32538 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step6.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step6.png new file mode 100644 index 0000000000000000000000000000000000000000..546d67a58ce633306e8fd1b478703509e29fb4a3 GIT binary patch literal 31883 zcmb5VbyQrz(;#|h26uNSXmHmsxQ5^k!2^Nd1P=oQf=eK{ySwWE!QCAOm*6CUBoLPT zzVEzucK7X`^ZJjv-F>^es!MKHSNDz3P*=pppuhkC09#o}P745#pR(X-G|1EAu7K0} zsc@^IrX&CO`1t+%_sz}C;P#-qUw2MkLC~UaUqk>}M%IXkh$#jx-83EIpt0+lo7MHr z{r!XU^NXGyxT{Zy|HqiF-ht4VFCGD5S65d%yL&!Ck*B9;%d2Z`UA^xEBZ@2Pf+9Yb zRW}|VpM=M!&dx7l@Ywf$9p2d5zPP-co}HgxT&Z>Yiyl- zJ8kySU0PmAOv^i1o;o}_Zt3Xx7#5L`nv+vh@g=k1{{B8QzpSyf>v(f{aB#S~zO^s$ zeeZg2Wo`4asco?#M}|E9*P*fTskynv+*B#_i^IL^i}S&e@d6#DZ}9#+4ce=-Zv&|T z+mrpXBC`2od4aGHPj}Du5R16vtlr+f4`FfcexdMKm)N-Y)Cu`5S_&4V-&&DS^JG(?ApkKd!t*NOM)CpO99$19MApNtRWJwn(Rjx%%kDjAsho z&ts<7y5T~Jv-?-S%fb&zO3L>0iu4OtLsRNo7h67mPW)OBH{E-7KEGHpR!k=08fUeg zo143wkt6du@@Vh+lRknrY$Cs)u&eNd)}m>pprmW1v#$GFVNvn+{&7rV#!$oQK~Z@| zX6Dp0o|58X|60GL(F>FJ%bz><-X;#`jt+*TA{rKESIevXnrk(Jd!LEmnE`;$D`h!p z9q-lC-k>M50ARTfWu#@`f7$GqlKz?+fN_T zfllt>W_Pe1AJXMm)E6xs9+glV;)c{rxiYmI54BLWw9MN-3QXy*1(2q#(GW`{6a}el zmv%O42Vx~8AIOJ%%tu*lzpP%H4D*9tbASZWh-gn5(9@a zuCW!lO4ggWUTU|5IP*?0o)`FOMJe4x9k0(IO{*<{PC54{Tc2nC{XVsIsOs8j&a6s^ zRJ#}m)3o^EJL~6?NK_^{vl(>tD8dM{EyqGAb@SSx3niQu$Nt4OLNl)dt+PQ4Xh6FQ ziXb&Ss9k3{@E&E>@P#A^YO@&FneJfc`3_)?TX8RpM~yI1>e##k!3t2omp3gZ#t`4k$Rjy^{<)HWjdJIMbP$qO8gVm z|I$?DXQHAR4EQk0a+v|3l*JM?4BWcNgtloiRirMeRQU%7p03xuU4xRruiV@AA#LxO zGdwV8PSu#n`0R)MJVaVWo#XS&dF;@CGTz}M$&?mIk~N}5FkBuCWVe6BTKSWuUe7W1 z_7gjk{1z_32&v73dr5;F1;&RC@M7LcMJ^{D%dAp+yoh{Wx3a*L1I?!{2gnXHm z0w3l}3Lp#f^Mq>ozLnd0#Qa>5C`2%;qYLUpw&C3~;)QXW9HUKpT)vMtzQp_hv?peb z2qM>>17Sw=upn1;<}F;4ZSn?7*$81WSp_9+UF1t<)s-p^RF}b-CQK#AM24S{ppV98 zv*5-6yc4%}R0G1b`pTHm?65>}TwI6ZN^rjvZZ1|b0jluOue>*8LX3rFuoU8u!^sY+ z7}OB*+=^cF=|k3E0{|yhXqwg8&ygd40f|QO*`5DfvgS9^7E0 z$igQ~W()jm0=cu#1(p0NG{q~(5BA=B7TE(16bC*Ol8!LFmAH)n-%WzPwsZ2rHs3b+ z_R~wqMOUeFxv5c=7{dx@VEXo^=)-EGpiIEXBfed&5Tvul^xJ&|Ai8z+0KTh%DnoWf zl7k$@(Skke2fpnZGz)hMVT{iKT;x$$a$7<4*eIQ=mlmk$#yAKf3?m=lHQ>pOIz4bj z36)}lHSwHvMH&`r9U`3f6tRAJlY9ZQQaf5_%4wVKGbzeYVBR@zNMUN6tAPAr!JCGF z`2D&8_m_ky78xzT!Ti%8a<{eC*(V+>#O7_ls~CE1DF)ISnTPL+g*(bMNYAiQ?s1uO zCBA^~kVb{v`5+!YM%o+#oOzyGXMpc+)fRf-{B9Wr#9V$LHG9I3hJK9ra?vA&*?#HZ z&j;n3NXPE)FztM?5Qy)Z3HsS%;N?Y!0|Imv@h<2zK`V}?`Q5A`S4wvzEe*Bpg`~C= z28S*nxz>CYmsf=d92SO@DJaw>T$aKL>&n5)V(=Dv#fN*pfSXgz*yi8(Llf(p2r{_3 zm|&)EK-~e`%fnc(LDa&USe~u_Pot>sDqj6OFk}$P4X0W|$~f{vOgdziJyk$g9@xhM zzJ9w|(%1OPvo(}uI)QLsOJ}H>& zo0a1!_JHuja&8RXtcix_VGZKBemhu0D6oSt{#ylbuujv102HN+iQu=GbVfros$eoM zcM?^zn70|@?~}codC3!bB{5~vG4E^$N!{jVCokko8R!_DqCofK+~hQ|pm%eLbb_vx z1j!>p(r$d=)X6+u(=#lpzGSHaB$pUx7sg8A{i!8;I!Aej4zcHNas$M>v7~FFDi&L+ zLjOLl#AhS_Ww9obuY_Btg>MGSqg|@FN%&^sI^C6RmK^&FINj)Y1=EUOTa(`XwSRGR ztx_))K(;=!W{yTr3%YDS04e z7#6G;aN*$d@R)TUR1~Ej>|RPMaLbT2sC+-z3}8ob*+n*+K;n(3HT$5HFxmauie8)g zmQWUhFQ|qK) zJaX0)o4OR_Wr*ofN`Br;Ph5Vc>f`ZyFOV(aCp>!xF3k9#lkE-v?$E&J&eHZXb2`^yID z<=)d^#0P!BgtJ9bZN7^mc1I-|U)N^OUIu%?MGYc5n-&9z5EB*{o9eYp@+dG$AMmQ& zE*^vUA^1BSj}+TGQo#ZAriyw_@_RWRXC&{3o^P#?->vAkLnx;=SE>JqIgl7Y$r4-q zaf8Kkru~Qkefbq_3v=3%eK(((sKi5s?iuALyfo2QSKozJAtnmQtxYDoYqXde)X1&b z!pv+?db5=dKV!upR;>P^)sYu%1taSaWDy1i*?fo`syf~3N0eevxC#7aGia#V{1^FI z)2*2ki2s6+4&SZtMnwos>#BaBK|r^H?w3ECb!kD^gWb#aUo4}Jh4HEMiL z{cL{E>Ir^xVsCzl)6c#bBeepiox+K|cS|ZWHaQbrtb>PzoIdZc%%^kYhCq9E)g7}8 zJ((in2kpL-`x)ei4J`{z`sP%C+fL#3)&xBSmihfe+*$AMf%6NXt<3?y_=k%SFg%La zh=GjT4h&DV9UoMH{&(jR{`%+nGKvKqTK*A60$zNgQR6m@%ZVSOm1{U*Bl=Ij4c&wv z)4fM92o_lPv{0=Xu&3kT9nDx(8NHEu%EljU6lW&wP3>_D7(G zSRGZV@z%b^TMU|8^s4z4HQnq?0Ff9p|IKZ~G>D+esxlM@@Awa=2TaZDHA3uvCQa)7 zIhn949ajG(DRw@&Yr*jWjyu3!?vZ?eVzy;Yp}@A@Dr*#xPOMruae3aW6sTC>Mc;fjs#HSa5kKO9zdSk}QUp|bV|zv+ikaPzmX zrEquN&pofYjM84JBO8y`&ZnOWG0)$wAI)z_!*Dd)^^uH|#`0mJc9TG3rl`E3U)Mom zQ2~dLY3`FYaK*69huMF{YtiLfXsN9BSTn|jUbp_CulOhdQ4+9z z0JolKVn%h)5};1=!Q^C%=k1XVK46_DMfY#uiZbnyLG$UgG2l8JFIBeBKP8d<>w`u2 z1daahFa^?T9Pse-8BT6Pn&%G3m&H{Tv7|4vKp3+vDhno}ThbMaZYJ>15)f885H|!E zKeIX*ULFbb0YcDt$8SuLK_?hJ07SG+*2 zRo`FxDUP&>I5i}IzKI{N@WV2<2bA=K)zpWwiM@FWLfn6IDYEb?0bJv)w!=(%o! zFe49NH>VeP&>4PYXFxk8{{}F92UEuPW)PS;6D$EJHrQYhvspGX?})~EVbb52kuQ-A zK31tW{~3|$pnH3M?bq6T9GX{7@ET7L`>Mc2?zXJ9dC&rCH_Ca z?)$&2UE}`|!f8)e>ahEHu;gYSIK!6fK@Bb(F^ECGA|5FCCg9Nan@$swe&* zPsKbwP-t1@yF6#_Kr$~~!f09iVEMc1tSk0A3we?B%uHs?XH+^Ka>YB$UQ#q3qm>a7 zFXf^(N!Uu?dzaWX_BJsXE#4rq#3L+6BSAs?`u<;B@PADbD-Bi@XhC$aeD@KGT*lPg z+&t*82O1QK@3FjLTDQ5;zLJ++Mxd_{NlgT z5t0!WM2A%n@>TF%VWiG3j(-|6D+@M|4{LH>{$VTFSEGA9c111eZvGWM8XRftn4rZ zf^-rAaM@Fd2?pf=Az7l+;i&>a2Kpc*t%;2;5@;?7lx}`rJck|#s?G*O61bMyOo1Rd zZLc*nu$=EP?TrJd(C7So;SN(S-Q@365QaLo1gz8;y?bW{_=LH(5JR(Bo`!wr2RI|g zAGP`u0RUUFl!7_kl(#-$|Ae>6ag7-UEzkJ>phB&m=N`pH3X^Wc;{I0mazdT@%M$`k zK)aQrxK*Gg5G|0C4$X-kg;o?|0zok1)BUfa{C~>0$0~e5!c4l7t$7=$8Cl}CFBzkE zMY3O`Nqll)GN#LFFBC{bdyhf%k;3jg+#6$ppphNyF0o^b+D|x>qI{mgt;|yQ<^XmG~AX-{(Wl@tr$WtH00W;W=~f_&5==W5f@}bRspn z8^uB%5+0~3UH(WP5{eCqoPfOn^kHU_ydgaw~K=b2P_uTLE!mNxaa8n+b!|?Vz3M5(t?+_=1G(WrW1y+Ae>-{0yVk0z9hRGETllO~!f0!Zc$Cac{VU>qEm>&Eh0zbLa1?~lB{m9A zQke0M;?e$M$`IM+DHWGsf6u|gAVhMyd=5>m(}1WC_G!M}Ahw2xr!%v(my<#3@_l93 zlJs6Eh-wJP{`lVW88+4gj{c>7(Y`Q^qxPC~uG=Qagiw&Wct+AB!V>L3zqJ*7S4Jki zrF{mLdqD=T!!#HB4q{9wqO?3cQ(BXY_lJ;O#F5Gq74WOBRRhIxNCCLG6}Qm67*J;& zz-;zri^&%>Pgqm`CTAuQhupxVGP*txLz z_k|chPMt>&Tg}qF``KdK#?euHx4rYUm4WB3m8~R3ne{$szN$2{cr+pX?=wPv(D<2g z=npr7ztu=QzIYL51#fgyVb(^AtdloI=CTQIU=?K17sihkF674uM3bnY zCrDe@%nM*p|Q zQ<~LubKnJh1&uYvM5lT5d^b@g0mbHHVOU?IhRichYJBZg57tGtJW-UR?5YS#$n{FJ9kEZ;`s2M?(0r*G{%OW8Gk@j?{{a)Fw45kxL|Z^eYV1)` zM~wPCxb>5ku60SK%upO1ue1g5HZ1t00=b3qHZMykniNk4ECL2~T9`rNr$Or$n~=-( zPW0wIMMS-N&MVZhv?G{nORF8`eP~c(!24r~5@TP~mD=?4)pr%h=Ao{bv3T-6Vyc8k zxQG`-tiacNLH%5KbWvjEjdJh%gkqMx6v% z#{3bMOrp+xVw@5{n=!R*h9vrSa-%!IFQpAK&Ilu}jhsw*v}u{SBYmSTp6(}98H{4MTiLUGg}PvF5o0- za`rEG55h?dg#!aI$Q?LWzwmF~7@$mni(Yi|MGvChFyvZ$P9W#iZ%?Dw;N{S>PvGH> z7l#=gKU=dk70}Zup;(x7>hck+q+u;)z?}8muix9iWZw)Xf+js%T4Z#Fk_N6i7=YIM z3|2r0r#_$-0ja$Zbhf*IcQ-*yHtH!}AoL;2pzk=fQm|GV$KaomAnUwUq?aYzWu#Ez zlFnwrfAr!ia>GQ5xqFd_!%#0{>ab;a&=E&Sm&HCf>VT%e>s~<)Sor|w?k7?Iy9MC) znc@yfMTsvem~3miYWP$aj*}}s+$V?!XHPw3Favec#93eC!oyH5 z$qKKZVf z8vOog_bw=~SaaL{QvNeZ&y1blOLv8;gTuhmAYdoA3;7fmfmL*!W>0};&Y;k1WF1*d z3|A)`bmK_Qv*YB$q?42T1R1|15u>`mQF+3H|HH)e!Whw#owkYP7%XJV8~cI)aC>A zMyBvKv{~;J`}P)5VRLQlsI6mgsX=r7ZKGMy%Ah%bOWC3q^aEMLG)_~(dmP<-7M+ep z4Ifh{&r~qkKU$=2t4)@Cg)YvrW6oR*R*i-~aFZQH6u#^P%VIFblaT6>N>$bD6vKng z7swG|Lry=tuAowGp|}&sC;^I3;X2Dn+?4bVY-cg8v-;rTQHkK17pP{fH{=Ny^ZwPvp(VVD*;TffX&Q-R~kjL zdftB?qUKpWC40nq?lt%Juk-Z%Ly$DUca)W;AFigj^560@M52Df+aZ0TS_<}8=qm#| zzB)AgH6w`X0l=U)A%G`<=)Z0`sVM=Wcduj6(R1-0D|qQaL_2|k%+Fvl_cenbku<^| z7gFN^jH@0B!bdFtw{w7CFt2L^>nb9vW5AOttdA$t8B{jPZhBva3@N8?_~iKP53g{; zsiXl09~z$^KhG31b5G0MTZP*`bvK%LJr=DAGqwmydYWgjKj`Kg*icP)d>|R1rf=JX%Oxq{a29g&KcxL%_?S~P}rWQIDlrWudu`roO;B|ZX(}hT~l<$ z0nvC3Q1fDrpNVMx`du~faXCe$GXP)|m;Dq`)SlRrJrtB^y`0NxV%cd?=yu)gd@d*? zaH%6@u@Z=)!EZ6I9q7PI|Fej|nHD;*$!jrN=O6#$Mr3;Vt4EQvW^Ln`eJH6R#4PZh z98Mcen@aZkf`j>Mx6Tt)2Fry_uOtOiUk?V6urMEq!m2Arv{F#jEJc3^iQb}_SJ?4V z@?~(7CQ^o4I1kFqQ64b%QcJrrk2C1o(jbEAbXx__46=IT}@WbBa^_E*Xb{nak zgCe`izOJE8e`{WnWDaTOIrr&Ap4ObI?~}6;wxYs)lT^u&c-Fz+3^a$HM8C8=?=eve z5BS&P5;G34ES~?#J4TU+i6EPv^GBKHy`~?N#c`GRviu5o;CK{-F^-+*lf8g=zt^{l zw&X3ybnpwp8`6q+Kyvv}1E7e#3gLu3?}sHs;_bMw*M$JT^L*Nox;;%vt%R+P6@&p# zJ<(4~K)Hz(5%EWnOqEkQSmK_@cv2r+pCua0{)zw|Mv-Vj_jOyx5)~w{`Df6zNW+V8 zDaJ9qClDwV6m*es*~W)X&=l|s{&#m0#-|elZd>PAWN03a0ZLf3uwBRu3G`LdeV7E8 zL{TT=@dd1u*Jl%Djy0JOR$;3y4CGCd84+PSf+{6p%#hEGf8^!+qCs=$U`e)zyXi#(p*?QBihD3Y&o$^?^n z@`R+GEC-JO`eZmVVAdzQIb#23J*Dhd8C`#l?F+FGB9j-FV|a=78TKVboDZrPXUWM) zob%20bsv)~@rfktWbylHNt4XKX4t9COOnMfGy7gP3gfh+?)KgyFnO*JBL&=jX(b*V z+N+^lT#*tv{o1LM61d8V&Z}wm@t~x_wYN&2|NlIk1Q(oZx7niqU=tn<2xs^1QV9*M z6i`!_W0Yp0`~Ow)`}QLq)JYDyH>V=i+=@VK-I$}!_I!Pj4*z0pS8wG4qS!gos{oYS zFI%Yyc~;26q+_Cn+twAyC2@O`>siP;mclKHd_I1ohj=rB@5U|rjQT9{w3|FH5{Nz4B9y>k9qsB{DiOR*B6!snsKPV8Qt&lYTUUlf0{Bv3i~ zMdipJSkOMG1W`o{XkiVi+1pyxu_4({7KJq$T2I-MEnz4CilUJ`?^5V$dr7hAWEfd(g_dx%Py-DwQUdeNq7ZEwUgs+za&$C|z32)bE z&WU+A?0KsRAS{+aNs8oBq{CjMqN$+DSp{*ohVR*uG3y?VVx&zS%3_fhOwhzAD2o-$ zXg14Tj*kGFPY3J|VZCuIzjm?bOidz-JRDfI95-HvT;}uPZd*Ti7PWVGcSmo2<@(0r zeYtyHEV|Kdfzx+=TN79xkju(q3#42)Ph@QP*#`vZ{;~~tFjaz3VDsy6bu?XbJTamU z4%XP?s5I&IYwEL~T$iBq0J$K!Lpl6gl1%G~>jlXi+Z=_w3&8=9(pb(+620jiYm{O& zo+E2EvS{h2m?1`$BhS7_8h&8GZ(*YOo+{2r|M*Pj~$Om;h3~HTyOOp5W3=&4bt1IqS@$2?75irG#UT_F+pgNsOk(k1`%e zF2017YO}EpbdbA19CN8NAabvYygBI;908I5(L`2CV&s;Xy%rjjw>h8DHQy%&_+YQ9 zlu$20acHI<8{c-GKO9! zbSUSB{MD5^?0K6&SDQ&&vYZm`Q7aA~?C}uz``2xZuTl)Ot}~elKu}#Y<&DK*%eq1- zlD9EOBfwu-j~encHV=FdRT&6>0=?orK$=Yi-Lg*f(Et4!DQ%ye8V(0#F07Lm8iHk< z=m??)I@Jc;2HZH5CWxbc!5E7*9GMeG=$?;Q_hq)&5S4~sQ49lrb0BwT?wnHaazeQ5 z{$w5xDi#$S(&!0pHPJnZ8r_+S2i+@v%qpB)DQv;QE6IL`lcp?*>W z6X4Yj-ZT9i791ru%>tVijm1#~9_+pm!l}A!;rI4KA5;C5S#Br9{|a6I zQb<~rLD^l`(3~F}9PBe8qf`wiR&9{h1Co@bszb04FEJ7GE*CYO*d92Sax0;=CZw;Y zQ~9H8&=Ju`i-gIiPi(QdA(PPuO1|9EV{`RlNQ@VZC1uR(>qHA5NAeZz@FoM3^`aop zdU05+8w%8DeuM&UCvGQAA_=>zu(_9@N}B5UmQwvOJN6ws;-tj-=cCl zgF9~S96VJ0764R%1>N2Ls{^jzTt3$YT8~$FeYZC^x;DNaKCDz`m$g^FN4*T#H@~@@ zL@(@}C+kOJnPD1_Pmp@Hp~gs1|H2ua?t_h$^cycA1S_e}=VjqI1zg!lO+5^B=W(*F z%uNVzfIMbQF~0Glb%8}x4#dQ{f#H?O56XQ+ui2N>I6`f{>|Fd&Xa$ zn`?!mM8P$k`1=^xQg+Gbr|wt!D(_asTYC4Tjj%MQsV#I(H{zM45K7)Z+7mz{eYq4(8c&vcI8jt1E9e z?WX6=WhD+^bp1QH0fk3n@8Uy=-{i@iq1~#tS@iR>K<^<|O06gTTL$vr>6L>Br8T(E((S0lvxSJ6a13S=vhm26eb7l*=I zR8R1lV`O4yzvqxGGimiSCWI?CPkp9+n*ytIa4WR$a&~FuQ?LO-FEG#pEN@yxPju9a z*V%|9-hpUe+mbS*hBxm>NrG%REs0VFSUDt3F^Ek{2J6z2ROacRIb4jj_z zft9-jzSDGPC?)YJ63t2Q5@hTOX#a~c%>7Y2cZ?*Kg0)pR=n)UIwXZbo7E|*__pHJz zMMaGvwsS>I5)L`t9!bshp?xdhfdrnjDyw6d>DlNk$=aHpu(>l;-4np~<44vB-LJ5j z?Gu@^cJU;#d$sr)ut?x8s2oeY0hQN;#B0yz$3YEhcj}H+&mL~DKQZ)GfaiS19vlW@ z$idrt1PJgU-t7Ng-9njGvepP`Q=iXw$B~OskB-eR4u2`c49FTVh)hpDt8&4BGQu=>AxrTN3 z3diB&kBjcVBEZQ$U0c!F zgsGhe%X|aXMYd=n*$vk|?IRm5sIsg}A`Y;%HbTWxwRQch2=Lpti6?$6c{+bR8(ZZG zr}&)v8^>HP*3!eM`ncnG_GLVI8)SeVChjI)p|iz#g@q{Z(EF)}Ll>=w_h4~h=DXV3 z#}oUf?EBlwgu(YiUX-tS>SG+R81M+8@dU_VkhVoI zU9PmEG92kFU!_PzX&d6P#KB&7R9;aY`5WK&AR0UR9T)Sv^uAxp+Kfs%kxPQu^ za*CC^6GTV#l6hMc7h#n)VOKfaaD6}nGD&PeFbm&tMUAocLJZ#WK7af|sZe(Y2yOEB zph$~+R_k-8fzumi59D*yw8wx<42&oeI#QBR;2h4wUTzy1K=v@@x0d#OC$fhRC-agw zxFzaEntcIYp51DI!^A}peoHT!Vw$q|Bt(RxA>Br3k0TnCnc^8WU0F*jtOu8v%^t?- zJ>qPrMzP^=&YzDv5bh0MGyhmH{!HQ!BvCpsU~z=9ysE9b#oq%lHF*k{QRy;oha+9) z{J2gzp#ADopP3;e1nis*WK4|EX<%x(Ga3+Qs(Vcq-n{G-_;M=Mm>^1Fr_ZN*gm9j0Q z#7*VTw`${0{&W7g>ounr-7gY>4?ZXJWeUKSiEWtX{>fA$s+Fm+54Hu;8Cyi2AHBKZ17^xBvBs~EKV*gdddBv{TX&{wEmRxq3`b!^UFpE$AkeX zw&mK?Jd6S7?WY7`*eqb_-`=Yl+AY}13W5tO2#Px>5`}7hKB+6>Y}C&9=^;?QT43^# zYDT(H*SRVA9R`E6R7h0WI}VtxPAHFI{8E0LjarlRq4Q=L3A8B@b2>G#A=i=tHpBv3 zrh;yc{sqbPMXDHNXq=Lx;9ac!O$6NZM^P_7f6odY2VS2^`P>00;(($9#Q=jfL|YNv z@v6+q=BFwgu2QfMw!@_-(Qp76Qxh_<82?pfH%57fAmCzXvW){!WYYoUX7JH72sd6a z(H0FvE4012jDLQILYJqiy?1~Em(?PoSH=qcB~_{CS>XaN4bEGIGSOil4PJb>6%iDU z2k%cG+t&zsLkO4r!0(jmO; z!%cjeYUNV#kQtCaWc1Ido8n+1umHj8XD(kN4SQ=@*u<2o(`EsRUu@yQ3KhB!bE8dK z<8P52t>!-&F_g@SREInox`yJ;0})My#(hC~T)Wipw9_rFfPT`l_}C6w>>Bxw$q zm-`qZ%uUt^&|hr$mSIk_pE@uLsK4l*3veKi@BWZ@Rgl?)f2OmFcn}s0gew`2dA_+= zpMd#fj@2ftXN}`>b_nQD!Gof3QMfBEg>yo zcETY=y%hd%SG@73o_TEL<>~Rp(=R~d5jW&7KHmUIQCsy@IXRiF_b12vDYU_95`o9p zUNz_B@Wh-PksCIT8YOZ&K2q*(h5+}gosJ@ijv2grXC6z=gcZM5mN2h%QlV&)HeP z-e1Aqie|m*(;6tEztAxe;SzsHUtt@+SyTbHN-#V!jWI^?{O%q157HVtz4hSkKjLpV zkR@ZQOse3J#E|mU%ifq)yf#P{wr&%Fu@t@HQd(jX{<%7b3j-n9a8R-V3D5KKv9ciZ6QMW#JXyzhmC%U<=j;NTBv;?6E^&WXeQ<~S zD4$%U6!QBaT^cJ}`mF;lfp5!Sr>Ccj;f^b}t1>}4e;56FcUr)%mN%)MvYHl_5W~Pk z`u%=Sr?x6WtZqVD*^a2A-Tk*gJFto7p@NE!OogU>v+(wZG$Y~!h<97i#7tF>%uCu? z^3?2lO{!QV2gDfwqzj_vkZOlJbfzr0Of6M~5^=@2=BO@C;^}qc0yX8gP zy>w{|WqDhs4*l|;!N`ns_+;-LBE4d*-G9`uj9Poy14U)Z{#>T)7>Kru3)Kf&EIZA1 z`YwTp?Tjrr9`uF5)>;^F&U?9D=~OBLJKP*tM?Ut@1i0C>XLSxJkF~9T7vZjp_#Dq| zK<;WE`)*qUrNu_{{Cs~GWoKu5fmlaXX9MJ=X8_!v0R?8Gs(r&Un-#z;QD3s=iM%FI zW4d6vhGCA~RIo>pThQi|F2=bK6ZW*41Kqx)D-J*ATze8rt0|!27#DzKd4=yS;M;E! z?msObQJNUThOmwjLD(1LdCHegs)CAwCiC&241OlGd8l2w@`wUU8XXm+%W!0um?BP= zu{d6C+=f#LQ0>ZJtCd3lx$K9_2K)j?k; zrt*;Z#{?qLyVaAO!i-S@_cMb?EZ@cye`9-lR*<`ZQec*^7y4@a+V0C{Lq4iYyhn&J z$dOUe9@v0|ywhi>@&&T4f;9lRfaWraB&=1h=Iuh$EZH?kjye?Nr5H(Bq@i-S3)0ET ztiXe2M2Xp}V&3l(sc8t%I5LtleNI}($Q|qL!=kIqBGSfZeW~_RyllHz&Qza}aT9dD z?TzGOILRRXoSTjEX3!a*ix#eU{hP1fYh4QF^{ef=7t;F6ds{CVRYMA@{^9F$12Oda ztSn3>5EU2FrMB|#y|ocp6uec+-Iqx%0mB(jzS+~&po-@^$S+`20J18({oGaF!Y=o- zLIevR&PW2adH=P`_sz2ojxA9oAZ4%f%L8P%X0z%QjR}yWgB$2tEwpf$zCiDQ! z5=oP}y3Z%iof@?g^r`}X2=#1JAk0-IDWz54I1|vnfuj!!4l>ZVfM`<2LWtOY$F6FY zmqC!v3jg>_JNH|J12lC&eK*z!=0=6Xb)Pi2mF~@jTgD$$jT}&RK;bDNbob8yvK7#@ z@TDI){^G~R^VuKUvPdrG5mQLcEP++C0AHHdE2Y`P4it^!6epL%#}PoR%gBsE5LJRiox229nIDKw_1DsNDZper;Tq_>cImnx zeAP}sjZ3kyijks8+f=})KaTK5+n6s6>*I1h1sRhm@$^87aS0rtnva|TTDeXHQKq*J z?UbCdt|75{?^?jtFk}qLMcHgw3YL?M zNhiF{7@*+;mGhv=-tC8!yy1)ybI3 zASxe=*)j{&0~i))3Wz*jii1T`)k_MDLD5WVU+R8Pz5Ig(}2RVkQGdhT*AnH|2UNZsAIu@B)WG!sP8h=}&fv_fR=t&l^F z&sOjfguR89XVeSz^8R@boUk|>p@KSwsnHBSB$tH*+u3zmB@pNEAaY(26`Z~585N7OXOJ^fQkopDl@`eP_$I8?~^96$jAxWA*ipzDv>*~z`}*t zpvL)nX#NI6x)d zH?sjrDANId-uu^3=K0j&Qouju)Q-gB`g#K_t_r?iP+inj>pdRAI-bEG98te1`$q^J z&(;UFcYqx%Kl{g+{&kc&RZZ_w9C;(3ZQJm-Ami|0j8qZH(godj$hF+_NU^B3AzCVJ zz%}JVx}kbim%wlh$OvOl1#Hl(xJ@Beb6n#dTv4V#>1p2~;Lrg7>C24Gs?0sp3Q=Ba zl~SvUS^mvRCEQrZPWbkgJSjocC&&3|hx}uVo0jn+rSH#F&Wk^%l8Y%N9=`=f)9ybI zh-LiRhe3zJWOnzLjJePSGaWqU&r zyx#hJcp#oxunO5FV{3^|VP442`5T=l$`Z|VDspw5`XK1;q|ZWpLB`da?JFT^36zKG zXZ!jRm6i3Yuj!xXQ4Ib*b0#1r1W8nb?%#CX7yUv-o{GJ~&Hru2zxDS->Mo>|MrS97 z$~>M5@LjNF3Y6w5E1}<;&f>%|f1V)JHEkC<)S*qr#&99{{rYC;yT{*RiW*@f^DRc$ z+*dLNnp+BCCNN4DObVkpm&>77Fpfgx8>m`0VGc~UsSt39lBa$8b+9nkRZY?XvLv1E zE1+QVbWQDqkWHg}UQ9;~NdxJ!Y+%#&v103M!@_q4ZOB2xty9K@AhAm2yXwK7mp+<= zipYOgKtI{cEf=N@^EAaA@+x8nfx?RW;TwHXl(F0PJZ=lwpdH#hDY*hxvdZAe)~uTr zogahd@ki8^FRi4GNu-($ccxim9S|JLy>FU+!@p8!OxrEAtWY#%6?A<-PJgST{vSFF z$8R_Pl0Bv^IrrT9F(Pf_$pP{}PB!slQ6pGdgbE+}FK{vV{{}ApZ}E;t+mcvK3Y2~k zoSwiE+&nRMQK%(Dr zLDMgMb{BUD3GObz-Q6KTkRSnqySpxg0Kql51a}Q?3j|1T4Fp{*xVr={d7k&ZRbSPu z@2@j+re{u{>8_dXnV#QJZn;IiQ)t@!D;n+%)Lcw10Pz*rz4un|!Q^8691^AKDF zmZ{;515fJlf&OIdsEG8*K`-V1cn&lMm7}Shu^ON~=dJ-3z1IzNp!_S09LRwOpP1Hy zZj&P}rR_Le5LQwG9nZZ>l`J$@&9RrCNqAX-@KFnsYKi3V`i9e~4 z!E;Igt9F?zd;%Aq(&Ga4`>^nQDDTU2O8j71)tbhFbkHRT`yrhxUNMVyx`T&ZRbiTk zUD;ScRXQ@E>QLXBNz+}K<<)MzN6IH^d=}~gZ(RSc1YiA7E@<@%DN!`B$(3<^Pi7X4 zLPJn|SCYm>rVB@D9Wu(>GqSM{%(=419uj!^} zD(S&8xkjkX{rxz2fFOqH3AEEguliS?vfjf=U|1&22op!EPdV6445L^ksR$EYPlwqzPi-}+T0pKYQq*sy5^Y^^TAcIw-BrP{^#`S-LC4dn`|@mp z)6Sgi4@&4j0r{QS9<>U3R_zuM{!aXj1V>kwvLwAmaOP5jqEbXlra+RJ7a50TpZ`H?e-SfA695n652oMC zpzcqO=ekh4=1i`;Q-5uHAr&q1S#VQ3s5`*{jYd{nnoym=8;JQ`PzaxC5ge}H3t=lFKz%`WLsXB$ud&qZWq7~|ouBV>L|v9>Hh{+7j0KOlKr*|F zeV4u583^>z!QTGpW0s@FBvO(r?W~LBb!b=o{0ihQ&w-+M5Or%o3kC4U z1s^%Gq{-S3p9gwFu*n)AHyDWOwMeyYzKuirK9QhrMkXE{*WCoL+lJ9xg*mJ|lo$0g z*cDqZ2_rYT7YR0a&IZ&}0m)H`!faw05xbLV-z%-5tyBE60}a3lCBn`Ij-@B~A;K;> zjpk5{ct1T%Homu%$Wv%`HCrkeDN7C3sM5@#@V#bUCtCJZU%!Pu1ABj@WJ-P*z{6$T zF+eg6tJYWoS*Z&s8B8rP)T97pJ-z7?ARc_)~rztwGax^K4> zRhg0`yP?z8b6!K#<+RWs)X3|RmuWS3OPiT8J*gA4)PUr??Hshd*eHz~i5xxLz}1X>F4*m3SAmvGbkd*UqF7Qh&5OQh~o5&$IeAbscIL2dmIp@A31*}Paa z8QD&c9-Y|jOfO|K5-)2U8A^IL_cLi2-*jJMN~)Te}3!UlDH*8^!{W%!*isp=*Jh+?TU7F(I1i^CdS_WYA({-wRqf)PqmTcx=O3& zK{~l5Kay4k7DpW#>0=b8A5=^e-w-mqKB*dLYF^DrvGiGwrL*zWNyK7Dg|{buzxMtq z@MB`4^5W;j1Sf?7SLbgYldLBvghTK=LD7%R!eX^QlRsoR2_L9td`hF;zQ6{)3+xVKg8PeJiDFUEysHiy z0%iR44^iutSmaKb^uQMFo`~Y-KDsNA3I%h}MOY_}v+=Po_qjrT%%y+5qUJlkp;clClMh~XOwJg39r;)6ytN5w0U z$Uh?;-abKYGn2E6Anm(rZ`VM)GRrQ zKrtq^m}^U8tP9-ny#W^%*)gO;F(h7}`^t_YMC)0jgFD`@eUCkacvBvw)R4mpK925{ zcl;!#$9?$?srCz5r!3&H!7zP3fcWL&S93}%cs|haYv2$%_@?{e#K@$OgsfvhL%vQI^Hz}BDO(fWq|A^lbqt(Fgks(hUWe&yv z#3@b34IR$OP)C7DNP=X5(SsPwULG~#Pan|YXPsBJ&&xP-IpiY8Q<3@S2ntu-TC<8z z`vKA-gS3cSpjljY3qufOZOe#HjoG=+12O;cNlS#BqNL9ILF{!uCOkPScPW570M~W3 z$73FJP!H6HM-BCr^;boTc%%T2jJZNKBoe1~9jVWq&lfb`%xC~a-z?{e zw3ymLXn7t-1)|exgP@t!tdzn}PV88DY}vl80RVdly{zkpM5GTXMFtr{P)@v2JZk(G zt5PoVEn2Uk9|6Z%NNMN}DS>|yV#*J3ER46T$GQQpor0fbi%DvvWTOuhx6>PGx)l*1 z)-w|R9c~T590#@s-26jMf2Q+Luf!8%HI1B;P64^axAAo0tu$NEK<2N-3dOnGA#8@> zWH3i`czFkdliJ^lcPkxA0RPr3WUcf)u%BB+GtAS_NB2Z|k3Bcd0XvVaNQbOekNq zfsb-eA&S#@t?~41hd5UGgjfIKhrY9T0X z;0K~EwXxVT4n4CF_Lh3ze|T8!pv2qQwjSH-fC3FWs$XFy?6C`4-xxy4a~ zDc;KtBtdnlW(JVez0CC@3Q6_fhU^e`5K*0lJB2CBQa55}H$dhcK%3+3n?p2R0&TQV zhQ_!67V*#Tub2ylctN;6b@f^iSjgX1HL8! zO}XuYP~j;a|_qAEL9WkmF0(41s7(GpfldUTc)BHjD2> zsSGM*3TDF8{;w=JeHn@!P(=|UQyM)0xR!w2Uw&pNy)ND#YKC>{F%xo6)t`p|Sn}Fu zb6uy`F}bE6|7=PQecw2Z&t%V{wlDHe8(L?V>=^*o!(Kdk5aR1Uugtmq7V$TqSlXl* zw#>&RmLEI-9{b0ZL-{ZVTu6_fg2M--rZPM|92%>!?Dh@Pm1ZNQ!`U-?Wn}yf`l
x``{o*%GN}phlMt;RF{G!s=`Uh0eC}zCM;U;N$OPonlCo)OAG@o{($^`Q%}b)$KTz# z!Pk=!+!qblFWG8;CmL`T6l^8xlI?f!>GF#p)M;t(3d2xnc8D*naHp4blIVq#&g@WKq8IM#E#(XCYVlq+?5CKV#|xAvHHnS0 ztpQCdaC2j(KAYfuxbHJ3JJ|y?k>9k?1DNIYFKH)RaLebq*O^PbMFz!y(H9IWl>i&A<3AvO|A|8} zPutA2pIlyw(L^BDqu;EtT|Sh?1hDn`D#wlQwcpeiOaD?kVddT6)XDnhr8sbW^cV9u z?>Dc{aN;0Wi>Evr-O>)&`6AHfqU5Zb-}2nlHFF zi&p)mP5-2zs#%h#h#wcx8Y?w|Meyl0Lk36`Q?6-c82LM9Zf*?^hfBmnq2jdRc*-{u zae&Tk1oip_%L>8zo@V;56Z`m*CtK75gBsVMqN+N!vAM#_H3^fhx-{Ox{5E@z@~F2N z6*jM-+6gB^xMSRXk0bikIeB%${xVX2%(n2WM>N85_&#Ch`F~vcri(lX)E>h_T}RM=;F@jO&as7O5MMl ze`OV%h_z|AX9#H{M;Km1_d8#jE$?MvuJ4#N_@w3s$jBuN;nRIQ*fv$;x{N6$@lP4f z%_y4TXP-YV=p10zRLH4fD^`>SaA8gFmjYDr&`s>#cT*jhSrU9(GrAgIo{*WRQ1uMC zNDVW`Tdz}!Els#M$fb)M!NTxLs@B!&izlSdpHZKZf9Y!e?rHepR*O?46QlSvS*km7 zP%)L1RIPCL%@hlbRuL-)7C9l!`%#AQ&Xw9gD8BZEPYkDV?p542ww(FYck44834~gQ zbw2pAE|Cf%SeXinVsbymnTCgwH~U6BM4<$u@JX34A>e=zNT_P@!4W`649+{W zXRD=04u$m-Kn*paLHHsC;7Ziu{-+7bd6eLy|3~#KpM>D||7srG09}dI7hJWd|LDmm zV8c@>w01umoL*q)hXMBt zLphP25iRvGK<+X?00wD~{IlF9a6#XR=c!OCp9yH70*LMimC&lNf9V#q9fY0SEgXq( z1e_@NZcQf47A5a3IKmCKi}m*&8%JUg0S7T_rS|bJ1&+ivLOkQEJ}Gbgy`zE0)F%kY zT@wHSAbSiD0`ROG58C>;SV?+HxR#SM8VGWhA7oFa*o#-GUf-hf{W0K?(^iT^&^t{? z=T{5bOxYdRL=%ib7ZQS2&{D~V&AX&y%+Y=zQzgnRy#1YhBlx^u5z2iLwdm#mxdVH{~{D$S5VQ$;HZrr4v&L{z9=V3OFSSO#g>cHaaf^FFGd% zm;JPf!&W7lcw=Z;Z$~f9Y~9bf1pUQabu@eLc6vCN3@zjx;+TIT_YCfxyXBex^ll@D zW7ygJc3dBvat{55M63om$Z7WDz9q~x4*BGMab8^UfY zwu9@BR5|(FgX+mylCulZd0nho64`K!ylL4j1==b6{&V$bkjL$iMGHJ=p@W9Nr`Vn| z4I2P4E?Dc9JKWCfKdm#7daqpZV2RuwBc1q=o&{OoOyH+L$25Krd%DTUcIOH8&FUaRbw zC-G6>L@LKL_I3HaOa8AyxHiKlL_-S5D;B8e1q;;j5Apj>s{0P)w^~T1M$<~+eQOnn zq=pq5o67xaz04X8=7n-A2}CHrpHEMfzx^#*0PNsO3_2{F6>L()VKXpQqLsHX%Qy#M zysOp*w!a*Y1$1`tVH|C3VFF&M;kOG6j+g-@B5h)v*b;tDKF=Tuc%gl}`+gbsM96Bn zUF<>O?JuO`#z>^a&?NL8Giv^tcsu<4T=)619nMGI+4{Kr0%)_nxSQ^!h#%p-dkR13 zBkzDpg!YaW>pJL6s8&q>LI;NM)xge{T;Eb`H03ewmpo2WmEIw-m+ZHtD$Fh7ZxXn{ zUxj>IkDlXtWG?%J@9To0)MlsNCU(3?QfpWNU^RFV{N^+B1H#f2dJz2Z&HQIs{k}Y9 z0(|6V_8E1Doba8CfaL))o{i(;W1RM%#kbnT(qae_W^tf>d%rIZ>|^!6b%W)JGP5mA zzgH7?I=xtdnpaOgiJMbg!4Y@9u}85L3H3j~jecnOfxs!jV2fm&moHOMO#0WHDP?+C z<0-L2k*c)%Hp_J0f77ngB>Pc`vz6sMjqyz}MaL^R9g0eAuG#0oY0_#5GS4KrfiBBj zUu1WkV`eUAzF3?8fbC$i`^yRktE6WA8asypI?cW@E6ZnDKB;PvdiP)DLV zlSG)1mtn4j7iEd7a3x~8nr7)sD)&&5sseB6Id!=hiAi_OFm5^m z={qxFHZWn%!)tHU^Cy3N$Tfq-H1p@MgcU*pkiGg0iix|cYa?bJ zAq{&<&rjeF6DX9)3<2kBFS-N+R2}StneHtjCbi}5pQ^JC2DYWLOY7o)l+Aqi;QH5v z$u{poeeT#iijV!GJMSAY`enh4HTOE>!~rn7(D3<-h4+X{g0>e=*uTR?y>UHU^A&B} z?Op@CLtvXTMr%ZM)a1{l^x&3!W@@NZE9TKBLJd$BMqYSF7lD?mpbS7q^c>>w-B_k9 zIN&3#56#v7rDHs3m=}XmEwgJr(=^&47Sv)5q`s+`tl+mIGI$_{3EEvOZcG{eR~peG zLh%LEvFBxNG;K<+QC?G@;ghhr`e>a+1YsQ@t4GC`YbrpZfmcil%?>4Gqb8~ix?8?wIL9^c1&)zs4O84`7zop@_iop-*@^UQ_X)#&hQR;xIec< z7*_M`s*-NgkH6Y7IcX=;k}EZ2Ymex#s74@yUA$^N@Fb{8HbLN!`R&i4(nT7Rizk77 z8;exCQ(Yl5d#dodTNb|pzCc)OxB+y9Z%pgzXPElIeit9dTo-T%O2-r$9O%Kbczqun zcALAf(|z}g#EyH=(JJFBjC4Ca_diL$s=Y$uS*mSP7Z%3tQ;71T;U$bQjj zw9X!SAec>pSeLwZe?B5mlP8x|?q^eBgg$G1DQHLl`C>-`5YlfNODb8_5@-k$wZKf zwoSb(IRnBLgGcaVwDd_$B{9gpf*(%P3H}aYK$_U4;uiwBzeT$GBC6F)BPC`WD2IxG z|3BZqo?jnZ;NwWh3z96>SQS-P z=x}Tet0Vqv;zvAX13Gw$&t0&0y7a;}(n?zYp$=O1r(t16lvadMXnfXjdp+Nv#TL`d zlnPEJ)nLo8dD~j{;*;*)t*=l2h9>tw15A@AM=wvLuo_@?%AZP z=wST#aDGo*IF#CyN;$t8^mLsBo`0f}eJMV9*N%K&AfaWX(4+1$w>Tq{ZO!$jLXU8& zBDs2p7m?2Ey{@8qXZ1`1&=g@OwTEV6qn+*EJ3;vsicp0?ttQh3hFzBg1{k4no3svq z9)yeI&JT7T1;)MXDehb()iU89*Vf+Hud?6-ieFAE-ivSAHBsDkAm2-)3pj^zSHX@P zZN_BwoL{QXP!>HrCWAkC$$Tt~L0Ebi7m5s~6-tzKPbS3*r+{)AnijwOl$YY{fbs5V z7g+I*kLo-4P$z`ehux%Mn0%HO503XwC|R>nP^`Q1xcK!%m4Yo^dEtSrzv|($i}|lk zPLIJg!Rc|`Vwe9ZS(fZmc=XDX80&QtDC#BbDH#&9EremyO8w7Hc>Tq17TS-N*Y8?G zT>B36?cI^~zxn>vaHlQI6mi0|RTuMJC7{oGUH)8GB5KQs*Q5??UAI*6tUs*Km%`Vi zBaxnJecgj&%i(TZtBGO`54X36SsQ5NNW-%4Kplag17Ekm3p&K!?x#QgC8`2WTqDhe zZ%BdygXUZ2swX~79B81(B9f`KzkNJlYo*s&lbFJilq9$}nG1T^!}M^+R($RKl3^qg z3x!`vAQungqwE8>4p3tTbc;WzjPcuFOW%38UknHFLe~q#<&^<3gY7R9!}AO6}45Y`q+WErR*kfYFZ2S(<$if5=VKM3$Astx>xA`at;bd8V^d%)m zVH5WGds5WL5;qK_8X6wrSQiU)D7pdJY|Qf134hR`aVq$s@0WEz<{|QjIUGibrf58goBDJu z%u&LzkdK=ISQEX;p*@m?&*n~te_5i6bA}GgCOLPqtQfvj2^gINLdNnz5Ju5OVJQD^ zFSI|~(NPV3Pw#=ER6k_rXovArx)!IV@HU7y5w>(GsHNg1=@yBu3_ylCWmcD_*5S@Q zGm0q_-Qg`Gd4``Fq>xZr%#AJ6x_DPc^S*(vN>{GS<#CQdVKIpe!N7zc}rzAd&hzR7*6tg$PD;a-ciuZ{)^t;?G(i<$UW z(oAmwO*w6DiOD2C5V8oHo^nHBxQJ}toVP-`L4++aFHjf_#Ku#p+a`TQb4(2hM8V8h z!iFp5yRmyIBXKAi;1Favy!qPn(h%0F2kLkLWf^n{UtiuW)N=Zy@&iln$^Y2pw(wqL zpY7az7Xc1Cw?-Qcl#A21pN-zzO77#WV`neZok<_FAMzl^VdL{g3XGa6aZbLvK!T-# z0{*#fzx5daD~N;Vl)P|oUL^E(Yin@cYIvAE(@}AiZ^f{!sB`?6_`8rb4L(rc%9$!( zV@HRG7a>g9nQ%lipPiGvO~C1G4tOKSJFQ-Xj|$+TmF!W*C9KC+>;Iu$rK7zbg)(5q ziJSh8RhM2GMZ;($eF+meRr%x-g(sfQXImN?-m}<|AH}=0Y%)Rli<8}`c|n>*VWqk? zr|LR~k%LKlXz;>CQMF){*`+Lff>wjWU*=g(40Pxagx08WIx0O3Ed0Uui(X}R zNl+vS2X!EX_k`+FE!jVZR3XaCdT@a?ToROMb`UuDsbv_!Wt>S#-6eyR%O`jmzj3vh z&X)ulHR0GerbPNZJj2T==>aU+w0tH>>1F{ujfNVAm9=i5+6N z=@JjoYjv4|ca%8RN5~wgv`mG2YRw|Y$_A8!8mF(98D9juf2H~a{@?Jq0S`9ygytLq*``3f1)upr*3SRX&D-Pi9Vl9vER*0T%v zYUX6wz#keZRRnb<9F6nV?HqL98*0S8y3|wQuYh9Xk z(oJhT)q>ynVw~WSA|)vW8}W;)^Xgt{aR#A*~_=>fKf=F$tx=1`pq!CC@^OjM=QM?uHY0M1@JKrLFO+*F-oFk zEPy2ZKoGi?b~GSls+nfUS>|mo@>LF$cdv-!#4-QJ&g=EAu6+0#71~@4S|Qd~<>Ho&en9uMZe^ z3J%Y&&oLl7e?IiP>HuX08Q$$kk*o?s?d(@qRuTWntwBg|vXDpRfNh;lKz%q~Pwt`y zPAYOom}h3b`35Z}x+SxWNdGGj20z6e z<(_$rWjyoTUjcR&=o}3ccH$LRcUbg@6rUO76H$k)hLOiL?1>SV!w)qUr4)5Ljp0XD z7vXC*BfS5wZ2nAc4X->8(=x&81uJlo3o9BNRa!iutrs+xmeexk!U-qCa{!j+>&#K4 zK7U-z^WLRT9&aDCL-3V?O5CaCt zxyL&gjv_)?bA0~1bZFvNLx+Ojfd0NxGR5aVkMI2qxu=wFPhr08&*b_+CmbS?!!^^h4s&*HxzRb^Wfv!B;V}#l*s)cf$ zzV)BKQwYnF=<*~{F*Mo8-6Z3J6ZyrsFqDT;l=x9=Koedr zLykN)js~AagZtULSUF^-TdpkeklZ=0>lsxYrF)sVU&x*&AUdU6t@QC_stVIVy;Cs* zPH?!9ozq2|ni|BGH}JhOY)CTTcm$iBoZ z@R_!ws2s;ihm?v8yosITi$gr&%{+X3BoE^ro)F+E&tG&?i~y)rKa^mYWXzn73=Juz ziTDeq%`(MMBWCaTV&F`Mu)Qr=F6JZCn(dO3$#M4r-fCyqCk*;%0@~#)rIP}An^K~X zc|VaLU;m=Xzl0`BYYK0HFdRB68OBNg2XU~Abo2n(*_bKQzyV-tR?ETT`j57<{9jLY zB=dObvgN;??6cWmmU;2FF8z9I_Zo1yen0T)x;PqeGzk&?fN-MCx%>Mn){_%-4Gp#)Vv5em5nmpTH3rWYYM;z{_)RPJwI zXnt|uP5^9^I1>(`-DOEizGX5tS*b5!!xS*bg>0V-4)F(7tG}fV7u&h3!N22WyoWF^d)a=^*Tk?F`K8JrfvCHXUo?kis&k^fa zWQ&8(m_)(Xt51I^q2lvmlXrfEW0i_7=B3V>z~2-}ztHGdM5$i1s?bo}JSkh*&GiX* zj7Wmr*W$RHZ;8FtN(ovl+thd5UqPoF3HlClAI3FXc~*)I(bQdKT6YxGsnL{@29hZ6 zkv7uz0)Z5r3hgAO7qM}=`6goVGTbt23bc6Cy0o8hhj?3QIbLLpOy^24!}G5&^WLFE zR~~s);b}4j(|}}Z-+Kvj92I#MYUaI*;rci5J`Yy(R`)9E=L{}gX7>|u=&lP06l(5` zVmOyxBwpTV57N2Vef>XyUU@@2Ls9Q!`DALUS3E~M-c<4|=)`cZGDJ)X!)~(KpS*gZ zl2P)#h2r5txW^N=ufllP{%e3bAdbZ1?(NKH88*vX5_`*irt?n403 zUezobRyWA;w@@Iqp|aAZnRoKqLwz$hND>v*DKN3%W>2^aP0jBOW~wDimYuiuov;!n zyWJ_vZEDwTs;+kK&2RhQ2ajvxN6rqRY0f-avN;&Kd#45IekJvU05P|4X|#J*tv+J( zrZv;iFK1e#L85h|t(N{AZa!RM!JjU7vV-XT+s+{?yzN5%qkHx)dYoTyb})ocl1U*9 zJ1z+2qr^rT2q$NVCloj9huRU{+P?QJ5fKrecM#Q4s6fd88m`MfxJl}A(`WcR8Lj?* zXp^Op|8OWZUcSJSpvq_d2SX{N{STlrqWm8UC9d|r3aQ#l5flMDoF)5EqdpbSRvwaU zJ&UqEpy~Gw0}oWegHDR(l{M8^LmY441d==W9cCP8TNd&236ERenBCBeO(+ z)sRH7lj#rHOo;^#gOPTnOuOp#NRdV0B4oCocwfC-r$%z_>qlx#(n&Yr69<H5zC zYkA;nrCt?1qzQ9$4gtwLtHViURrjTaFF1@uW>**mp|3i_oL<`GBqBvuL^6P)nL7gc zbKVaM_KSaPNybCW>&JT~$XejTB`nQmRz0Rl>6npepD`4{QcQ%L$hz;{8||<-a+~Q} z(%t9xP49@^fR$O#8$%$Q39_H2NPB@}$&3dp?cMj1ZpWfhD|f+UEOE{-%m0~D1J#7o7fa*j>|(cW;(KCxbmSfH*lR+gM;= z?cbZ-s&KDb#=l>Wbt8rcnd&(R3o9iFf;j(-JYU)MO8W8z$nZ3oItpdR?-E~IEs2yW z&nbR{PGfVy@u%;UU|{A@N6P0utHy~FY_ zY3{aHFQdriCDo=Tkx7Xf?zWQ^$sped|xEwtbT z$o^#tc@#>&16N~vyDdH=ZjPT* zZL02GJRpZRrmB4$P7xSb`WN(2x-9a2Z8XoTEeMU&&{z)z?%zcGxK{W0sCtNleqrya z2li(2Sacu7J+~xfxcDf9x%*`h_KG15(HUF9l?sY#z(k5%JNlE@O7mR~*J_@@@O7H0 z^rs^MX#Y!o4Md@lis#^0;a?m^B!%y=A=Ym^LTRB1q33Uhy9T|h|DqV`k_27*nFL}w zQ$f)iv=L9WFmp9i03$V7Vr#C?h#Q`9SUU3~&J9T)$gB`+zo?b)x2EXG9o#MwLl5N2 z#y#7Yt-6;z^PHk5SW1FrihI`3R7-(k*H$L7gUQ&wP5L&!7z90U)9rWUhj-YjGnHJ= z7}GSU+r^1jK#Q9<#rzx=g{Uw7m*WFq%xXM5Xn-0OUNmb(3i;)tl#P}1&Ue8w(g$7% z@OkS)0#B;*gU*QI^LE@DJ|C;-(LBe(#?89t3`!uC9C6HxK)rC1*w0??viQrxmB~_D zk)XbU@oNAcOriI7G^y#YiXY((Bp!&Ijzr~3NaNy$fnUNviyT2;p9+IHpk`sc09aYH znw{!rvF%O<>Z;KGjvGDlclo6so-fK+O(qr))sS%f3~ie|Mc5qfAst{ z$6%qKNv73WP~fD^oI=gdl7a+ek}Qja14x@(wa@6rmvF=1>92Aw{QCXes>uwmz<0bkmyAKo_Ct;}u=Bj|zFNFc z)dw@KbbRak#VyM)j|&0VI?kpT}ELVRlx3`3VJlEP54q@^iG{vph9yq8iv_#_Y;ZgJ zDhOHS>9=Re)Vl)I8LyTV#5`d|{&6l^=%hPI&F8=y>#nDr6D;szIE6$6H|CHF%>CDp zaH}D`Ms1J_r#Yu!DmHk2Jlh=NGN{$Z1Y13_h-QFZ- z;=N!j%JvU6y;jrwUGpG+7W%Q>*C?k?6Ac1YYwny@LYNO##UBL=kYwMi$im(UsLdVh zoggMP4P1^*3MB6txjFGJonsiP;KAJd2&5vS4wuusKR!}?!CCL7VF!2P5`aG8JV68@ zU))Tns8zs>%FmOx(jCL|gIf9jlVhPTe4f#hS%EE2od1v@K2QIJL7M-i|CiY$H&M*P z!Syh>yY@wAM8#jvkALW=4VIEg+B`NsJ2G%u{$d~<>izcb&z0p30klv_!bge1`D$z2 zSRI5unIE>FOCd*+a!dS_`{>SF{oMNeMiZ7RtJkQOwmZZ>l)gaxGKxbk|6fM7kn!`lOy<&c0ZVa%@)ecW(9%H z2~;%sT=Bp6`nrOV_h-MpvP?S~O&+pSutI{U?C)HX7dXwtYe@3`Z}Hx>)uDu!EE~S;JM;gK@YJfZdQ4Vnx0IH-5>kr zR2d|gfKlK6jPhTPrSOt#KwQ4^Ew5^4+cFS%RPg>+f$xKJ_dDHX9KP&|m67$Gx3_DD z=W*^7HDkT@x=1*%VT@5Gj1s}4z8*j*;0HERZ3_SJCaW6-8cPWNz#;G}gWalC^>(dt zMQ1kxgmB{Okd^6)b$sv40c|b!O(Da`d;8%^Hd|C+YsIuywKWC5zQDC=h;=z!_ZeL_ z*kA8#n#&WphZVhU9t-~3L8qv>WTLG5spWTHWiM-}YDqjxiG!eM{)By#s3`#IFl1l$ zEfYhrY;|A3%EKnS zDiU1Y7K7F`?wbN92HxH6iMPo)(x+yvj7J1-OZMh?n2OJ)X}VV9j%koij%^0IDzmdd zu%}|uZy7$p$Z+w^;b8(XLiGQ8Q_TNg;-pGcfc75&&c#zByUPEN)}l)=(bfgx_pbhX Op(v{+Q!Ql@@_zslE3XFt literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step7.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..44975cc8272ccb8d187353183a4402191750f145 GIT binary patch literal 31756 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 Kt(LY3{(k`M$+BPo literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step8.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step8.png new file mode 100644 index 0000000000000000000000000000000000000000..ad2014f8d29f7c8e5d4611288ac5d9e99954448f GIT binary patch literal 32688 zcma&M1yEc~(=d8=7k76Hf#43oVR0vDa6*uv!Ce;!1cw9-?(P;eEbi{UxQ1XsLJ}^| z^SRto@-pR(X7G|1EIu7Jbx zsc@^Isw4OK_;`JNy|J+o(iVJocjxF83@tiI76NFWGe<^7PSSJge$gQg9zDOfxVpOP z>gqZ>`*C{ueQkZCsJ!;@=-AmiWM_BJJs^B}bv-g6?fB%xCpfCsNpWxgz%wXvXlVH1 z_wV|z9hVmuu!v8y^9w_x6VtQv7~Hn5eqoK?I^TK*HW6Db9o?VOazivWORE}ImX{Zn zS96Lg{6EBIP z=%f=5vB{Z&(fk!N+l%9)f#I>Qfkt1Xu;SuB z#iwLd*VN7mN!K>E=9gB_H01gE2ab+UPIC(Pe)bqFjL+9$+}+(x6+;e!g$6gk+Ct4I zr{^kcB+K3kba(f(Mc6epHJ6l>78`QpY0xRFYi;_6z+;_`5vwO%JzG%;!#UwjUcr5R zeG4i&KNgp#rlwlk+SlFuzK>7N?#=FH7kIk33iVjvy@LmpwWH-Jse^};?KOyyh@IKt)#KHTx%0#NX2jOc*M;WU z{?60B0V7lMEU#TR5AXJPkNMF)&q|Lqd$;87q?V=g#H1t*ZM~1}JE^H@+V7Lz7S)cqr{CquGBRyz`{L!{KGq%#S){S$uaV23DPOCC__St0O0SgBrB!k zy>hz56SWE@g1sd-y^89uuc)O1KPy|iL-9i^U{zDzIYPeiL0T%5W9Rjjq4Pu= zu<5@H7{?MzyFB0_ep0Fbb6T_1RaTc>)CG1}tXg9t(@2q#24=@Cl=q9kWD0ubh9l+R zmeT+(7`_S{9rx#$NPH+F>XsHhgn=LcA>l!R|0jSwVk2azyPbOm*o`{oPv}*ZmCj zq(yiAz)9}k%H`e{uYRRUpnhzT0lo@*OEhk}ovQ)ClraQwkL=Trs}>pGo!Qg((?V<1 zX4y?2uO*zk+P@1&#`osNmBbJB29l&EQHf=Vwvj^b`ZuUgig7~UlD#eux(|njh&;(M z`aU@)NR13ikAcnW5XYCAQA!J!)-jYa!1Rdv0YT$inVXEspp(5OqkE2XUe1f(^s*S1 zPGPZ-?^-&;b;wH#ZO@vw2+o+ZnP-70%63c1_X!v}GX60^EP+Zr5}?#_c8_O-b4n-- z0v+VI(uA7c2|UwtrkG2(2n^OY%$V?BfIR)oSQb{=_vw*;xWM7%oUk)KeE_W?)ZMWW zww8&{L(5%14n%<%@~7w?uf;rU#{59+E=*@&Z*unCidIPND@JkYc`Q2oFq9*5G5mE* z1PS(Pn*r$T4opeGOyg1FTC<6_z=+(8slg5uIS5X)t#+2=jMxTMz$=@ z{0tLBe=~n%jPh%%W@EHR!VeKNz;4DJF!E>yL>}TliR9Xz=l=#$-&8<;tWO`{moVMt zo)!H+;--aM+C0@z3;+awtiHy*r~42LpqV0epEG=wvQ2Gg5tMpXRNp^c~~rCh#+w8R4X=98~gFz9NP9jgc+XzcvQ47ImofWCFi8~iVR095!O zQ^7b+c(Ucb!Tz=-7OV*jZjPL72wA5UID^!?g^eAh6r`jg2M7rAb8AtQXEmQcTShZ5 zw%X*5-ifblaxwq0;@d?J=Vl4%djl`Tz9HD<3?BAOFi4S7xoTrI=nfsfDnc4qIx!+G z5HPM|?^t4!z6(jl1G96;a_devSCQne%%1DCsUC8Sry9=5uzd(eWy7Ps)6n?^C-WnJ z7FRu|Mj~{HcpbbDViSGiTg5gjT=xl>ni(pey@^O8M2|)0pP7!wq8XEMe{>&!3@nYN zDSUfliftB0_Ta;B6mmgwZ+};)Y&-&h358chIdB!4BPbJs%to&GYR+BtPNi`@hWDDegB?WjCffhpo|;qjV*sBggsD<@3}3zjt7qwKu$;_#&I+L`rc^zLyE&&QB_UV zaKovj6;*VE1c_o{kp8}A37f5rW5WQ(96)qKF+LQHLgE2pJsZbvrIa05R3o_60#s*joN~%pE{JLgGDDA6f*fN?&+-F6VyWAL2Bmp2MT=T0zPgk0$cE&Btq@)#eMw zjf6X`w=S&mSU}U2|43MT5lz=9o#n?yMmJ)F^ z-nW+X;;B#vzyt_8vjSB5gx_06HC%iM;Ld*DMg<)(?Y%I`%*PCmANN9bCPk96s<-|r zJ=bUu%wzK@3$=DuS0Qx%;VKVLw1pPKOgY&|eoFzQT7;eJA;I=)a?N}V5c%87Od#XO!;Q~4QMikcOKUlDgJ$$VJQFvs>wleGTVc>+##)H$6@-sQT zitsQ|5)PlWRxI_K@p+xAfhv1yE7G)V)5{&B1#x>ZpnI#p&2S*_Jhc~qND@LB@*A>3 zKn%W$e=1stD1|nOp^EeAY4a~Uk|peX0@{@BgwV{ikK_k*5rJ16*ZLNSkKjA{kw0&{ z(qT`%RNdOAJPd!nlE6f0MG#jP@IHogNLk#-@Z_y2NUs!ZtxZc0MqKRjzQ;%gXTT;ML=_piXM zhz9k^yZ=Ru9?wl?utw!C^}UKG)-h7_V{^6ur?C{dQj1vuHtrPfpWBm8R1PS<==t2) zT3hTXk{L^dQY-nyUdiV#Q_7PhwL~kvw_S0R*WP}4?{Dwg7MV}eD$AzIK~}zKgz#@f zrJ-Zlr0ag&XG#X|BV5EfF%etu0Um?Sj#F!+X~rMiXb2yXh(kxlD=V+MD+9f{D0L%rqX9_BZ9A30^OA5=+3`ylxLpXraqk3bI{)NSUt zM;p7>?8sU!GWB23m**;_EWFXQWU!^y8^0;p?^~tMnX%#%rv+4xcAnK+E=!KRE4~lB zE<7lGp00`sIQRR%88K+h8AT3C3}3{75!*K`()-#kTuR3OTc$=$M3#Do<2t-kxYYzP z3**JDslk;WX8cbp@zz4-dzsc#~l$|K#akTG#zgzCfTjIeuo=q*j%e zc-|*np{V?I!@B?V7Y6Ir^(TsvJdtZRWR@P&H0lAL_B{&gcU!frl1k(@1u`V`x?a$# zxTdUr2lVr9{Q@i=K6i-n%T>KgJYiBeVHJtD@EY3}Ow8Q#6a_rzem?9hz8pMeNy>2l z{rlFT-kWRqt>agSS-&^?;?aE9MaBq|YI&pZyh?!h@KIM>`#KK%mG7{i+{R&IS_A*T4GWhX;bH&nh`j*MW`f4L|z+1ZFMb7B@ z*e^mtG&rtOhWc)GNHrpa9Jp1B3S{!q6A+*^03li`HO*zxzKVhXucOACD8|uZBEVU* zQjWx=x43 zk@qPyxr=&wv>R3}Z))CLQYA#tWH0K4GS%>|Rg`pWiQ#9d*;a`h_v&81EjwGR4LzzW zM#5Li*8FO4_E2)RdTAGhtTO_OD6VQ$UM5fwr?|Yuy8SVasT#+lN;f_CW%Y^_a(Bj~ zZgyiC#nxS<8O@%Jt)n#7ejs`DG zHc>z#I+ma=0oUO4`#yoV))O&haUA8~h+-ucKps6AU8blpXqqI_?=vnVH7ZJi&BzSc zh9F#38SqkEOY~)6B_?b+lSA>F>_kWw{012j{hZ37c{B38k4XbAPL zNTXa*H1c>r(8E9GXOo_?`NY5W(Tnfzwau*J zB+xtNF$2VDvVt0CO^o1gBAJ+RJ$h$e>VQB;>iH(@<)pL&Ga1GY>~wU5T9a+ z4koPuV?y-p`E5b$-YAOvx(`70s;&fcJhF3ZT*j6?^4x`Wr%T0eiyrz2F&K8E7I8=T zCzM)JQ?MYkYGeunqQ8p5T@TP(MweRwkrR{s#k!@JQZ5WIHvciVXpi5Vff-J$K>s!a zh@D&e`+0KSCzSIBXM6@3V!_uWaGX$S#!9gLH|+4k-)j=CY3n3#tIBLqq^bSs5o81d zs1h%ntA-8-f#dxgJy*dYCk3T8+ZHe-fNqklQqVmu5^FCsvzu2StP}r6_E+xc9T7}0 zWqLn%clD&T*7Y;&-13MR-o&+>w z(S4dj2iw4IQUFfi@Ex_aIzF5NrdbXQ-ClXA9}xY6R$55JiLWYR#fqu@ncbo%?p=7PN5*-=N;+-W zbKf*p3$P<8#U|3YsPt9blx*KWI`=OijR!pikDMfsA%MVy{eRU|gxAekn%sNtCmTE| zk%utrOu{L0W{BwQXLKXw^B5&EK6Z5;ee1bp%)6I`WNb{uC)9FnvX<{u*gS*t-FA3Z z<)YPJvf}q$FJv;FNdhH!fmdG3+)kNYIuggT=45&J-Dlk)J8EVq+-g8EN=>a!j(MT` zuZOtbvT8ksK@|iUt!0c%DQtXzi=EfEkr^7Tl#&+$Ml#%M2_TFP*EIh$UH$Iy2^aG} zxa>S~f7l?@%a+$|I8U|M%T+QC1R!T^^Uo`|F=25S(W+G+5eom)V*b=};dV8+kM8Bg zbf#Z4`^@cy_5r;m(}U7Y-qIX8^&&2;AW*!g-^KiI?XN0OV$0O@mjvOQ>A^Yp0)YJ~SA$GVfy`IUBxJ)jIqTpZxb@g@+gWEm7nafY!qC za-gp+drnEz&NRuh{dw!Y-ycSQ5Lyf8OQx#V#V!?R-B~VpgOUhj=IvceQGs<;uZrpn z+q168S}>6ExP7tkWqJ)>8!zwEvoiv*+|6jN15{n>+V z#b$Itkj}SbN1$pK^_9%pHUjR7q)?r}c zyY6<1J-yesdcIl*Cwiu+AOsPYp@ZIu-QOdbQf=wS0PfMaJufZE$pLxLGT2+S?87{!vI#SGiV)09;pG?uv;fOR>@R z7X%cN{hIv-vJ_sJodfF8=hb_*2zKV_8jlL)TdF~q zAgz|?2!Uqx&sxKtXnCt)IA6fzG~BY>8r($B$Q)$sE%K%~i5Z9Kh*=f#Oi@2_g7|W- z+q@J>-^ir0e+$nxwK)7Dsw&2PaUW2;^QwhmG&SfFF6R{d^LaXvD&3U=16M3^%oO;^ zKjRKQrTx^{f>a+QOJD(7mZZ0JLA890U>E>zkVV*N)xnH`$U+aNs3l2y0~h2c16tTm zobc!QXHvZ<_eRms803Sb%230y4OV1e`-}4KpZ0$&?#y-$?0I|QE0F&qnb*Lm93Bsh z#s^#~{O(+64fChyfWgL;v&pR82`GXLo_!&LG(pR?6;-1!*ndOfxXYfLj!W@TRMRLr zVnn_>d5~^3^rUu6Kz*A_z>&zaedsDE)hu5gok@6>K7||egzr)0t=z#pduskG0%X7 zFm-G>*QG_~C(@^KEF3cf{7xqW(+M-QBgowy*!x^lVN>uYQv{eBWKH2}?e;TF@WFPedIMKesN7hdlsn7y|Y+tF(5eK-0>>%`}sDR2|jt zeTTtDj@6EqGtbJPRF~D}ohy@3S8n^&E-mU+iO>rBc2z*i!fe3h$HDd4pTT1x3gePv z8E@B~q3@*1Fu#Vm@O0p`DUkj<(DK*NMTQ-r zxSa?0dkJv_S6D;@6F3qY^3gF7Cz}CRnm4bT)kxYw$Iwu#LY_I1>KXRulH3j?Ic`@C zraX^BJTcVJL#Oll(P|UFKuKEbHt}ZN4^2O!(?%%g}_|W9!#6W}yKpiz~tT4g( za}n5mGOAqMuSR$*~ay^P>B&Hd)LxNM5$NTqCG_qxoCP;)BDzZyIq0r zcp~)tiABuQ5cgNLTKr)I#4Jh;6OTlA6$ElwL5x__mOZk)<_ zk|N=?2Kij9U&5uWg|KI|ms24zH{${#Dn1yG=axgGrUGT&;% zKoADF(p)9};zPI<$tqj%I=Mhi6@JB*pd2GY>Wdw&jH zk;$WGgH0}{NPWBSzQFr=#k}OLD7-N97DQ5+By8F+b|#sO92y*h{DG9qBEl3HoL#1{ zTXydwe_df){6bvCP*@)> zCe8FW>DFRfu5L0^XC&~QoFq0~G5F3j2#m-I#Dy=U!c&xUHql=@fwhdXTdPLPu{)Lz zQYP$IUdO97%$q#a8lLBRVppSCg}}jT1(LATgoF!~ce}DUlCzj*ibZzH)U)kK1D+cY zc06%-l3PcT7lf>Y2*&tzN*i#!JVE%ugr@&wm|l_7?ErC#z?;L{=}vUsvdPKu@qmR* z$T@}?bzIv>ijzmxI=`CY`+I5lB}5c0SGf$RwOg29u^R}F>E|`Z|00aU65S1i@3BqC zuw#$2bC{Ky0wuGNwQhflQ`TJo>)<7Cuof3g_~*=r2h5Q#a%S4VE63kzeqghwb%X)x zsFDn(gd?xd1Kj*D4!3pk)neOKN{~ZuQ{vMG|6Sr5mHTdou@*E~3*>)(rcCMMeS*v_ z#rdU%8nqUNeZRqYE~HFu*mn+`&3+5vaRvtEnPESEDmX*P7Jj}O5d|d0Ay`ZAW^o;m zoUyC3P&M>Jtzr5L+0rZOK#`(rtlUu8%veA0J;{`c9@u#;OcfdwEuka+DX$F^msL%=CZFfb= zC4ywwUC%o zh9CP%Weu*W7Dry?bSPT#=Q%CA{@W9eN6g6rSMG$@gb#(#;xJR599x%eU3vnhPb zo;V~BP#@cSTB<)FsuG81dWFHjKt54a$-6RUI`PHE&Lwt*FW%(KfpxDHVVkunayT4;~dezy>gO?(*4G)!$p8DCdcEs(( za5Es@W|S0kjjCZBr{!zzLI*1yD~=puNpO{)tu|{|lAYK>P15KAe2JS1ier|8t9Onm+v-oY@%J~q%g8>4i^ZM7r`t<8t_O4+I@ELArN{lT zO%vI^0@)<2dH9kO0*DI)0)9WM=7`W|K^X|dMRmT043V8|194c~1Ajd%Vjx3HjsgQh zu$b?!{||-JAPhua?@|cvNU)6Aspx}eOo0$qn2XpZD1;1MlTNK+T(2Z6+7(!y6V4gmlirkG|<_jN1 z>qW%zzj+tU_TFVa$5%##_jJA8+RLzSmwo&&V`Q$F6nZ@0?y6QNsc2Ui zh*1f)d$&)3s z%Omn{CNCt3qKcIIR#7$TSPwLi?YwV!vmr}H_Tqyw&+C8p;&is1m$#!jd*uyO7GrL5 z{dWfJ^Uw5z^9$^9$49+!a`V#fa6bKfCoM{2lo@caBl#>Sc8t3oN4ip-o&*o>Nt^u*Tq36_q^If~X^mmF zQ*}FU4^(ZM?TVn)iA3r{fr6QHH*?X``|=*eL~K(qSt;H<=s%sIx+zxNnI3n#vc)v< zzjS12ftOJjrFg18(Q?h>rc*HfOM>EgujjUiY}pn$9IE^Fv)xRQ1_fLk#vv;E#TXPV zpxhTk3w6K~mkdRx<|2kEPv5e@PF1Ux5&1A9K#;>EtTd&|C*le1krr-)W7a0#f~jFU zQj0FWDO#M-T9$1oh&WL-ym_IC zI?(;Hcz`u79Q%WQmMl9X%m>|UG4&_T66qu@ND*Jx1CU-;|4QFa`r_GSs8|SzeNsdb zk_Or{&~H@qTs&zoGl)o95nzN#SDMf>JVD(j*tOiAn)A9Gh}-$C8c1%=YoQ_B~rKnT-`qpyeAK^9;`6gu;vO-ZG z_k^+D!qCa2SD%sbo?*Wc!I_1!a*y*h1%@Xt5jcipA*#?2lz(ze48I;cZ1yB)&S7!o z7jW5$)_kWfu+Cwt7`17ToPk}pByH2!;EQ5WR&E>mXI8$hFs}+h$TDSHwrSz?u)Egg@m@#M)~27 z2;|UAbRf@x9kshU-zrP95%bOh!Y0<6qufX#2d}~f@Fzf!%HE_o!8ET$fg}so|ICrD z7}7HL@ul(nK^CN?W{ivMIo5%~^TYlzaODc*?)Vt1P=SXWMa#WM8A)S2{m5vCpt^t< z`fObo=4L#bEAn<|Iy6NcBs<-uX^9?G-)gKYZ`?z$Xu?U!ty~k%`)Ao9MP>l+Cvnd; zZ-pNwVO{SBvq1|ch_@*CZt}_hw!CT>L95=nqnjgvOUa>}e<~dVnF>~p0p{!^Zjnen z&e(dGW?`JhrEdt}$vUh8sh2YucCJ!GSI&ygd?2Y&SF5m?!5!Q1*y){1-%bWLQ>Sn> zbumv~*jGB3q?nU8O3=Z>L71&^WRd%=L{R6=2(Ky^D|VVX$s1iy(x)^PmR9c_@}<99 zylyRji>x^8q2^n&TOl(OJq+{KK9<}ip}${k?`MDiTXydR%>w8OV5!o2jN&=&F)!S&bCRloQSLl0VlTXxb`sbwySq{zbP$9j8=G z6-Td{1=cT0MwQM!@p;ybq`Er%UT}ST-4(r9BWibwnPBWb(|7sf;474K5~TCRz+UY; z(aoQjv|CYzAY%#L=H{f?03f#8#LCUt83~>}bIsCb$E^Ha&SC@~hTrcD-tyKq5V%~t zGv7o*>=*Mo{WUYN^(EGd|J{KXEXN1C85W?cw6A5YRsA}F0pOmP(=Y`K517ZaTFgQ6 z6}FQPtrvmnPa;Qn(Mh9)UyUaK^{irsCyq;3!bDI{rK2qHE;BO-KC9*qr@UB~$l;p& z%mc2b>aFxWI(K8fhH1Be{+0d9_CNN|VX3Nhk2k5nw?D44leKop8k9N|x6;@}D7l`# zg=0C{-`+V2ss}fzWDgjM8&Zn}T@k@M{ci0@K}09ET&(7w$mPiIb^Q7(v)@tK$R|E} zReJ>sWVfaqIxm||W6|*=K%+L=xqfmD55iL<@WOP9wdRTUckc2!@7aa1+%e5Q5aWs^ zW&-&~jT7!7CcKg(BH~r?^~6xN@$UzKEB|Bp?Ri6%sfPpPp0-f*}X0{T0|B zL&|cYhMo|Snbd#`)tsw|NUpXUWwM@ac8xP|a2kEr=*< z)d+1}FrNu>hpY4;XZh~!JQl(M-Fbl3W)TZ9w~0LUjpq6K{F$IsW=8_blp6qPTaBaB zhAv?XMfd0Dxb^#U>bq;ua*%w7qa0{N$kF4YR(u+&)&I%@(dqXlv;-a}LBH>Yi@Dy; zV<3Wgz0E{Wd~p!?f2S}IJ=OJ1dt4H>Ui zPD`W$nhKPQT}pVU#7lHcql$c$!F>G` zfJU%={!fAl*gN->L&gTzOzj@5^`qDztbA~KKR83R#>Sg|ASTuAnOGkI9I#;JSMUSg z`{0-6mTDUTok2+B-I*9mV|ppTgbNi%7PzJAq}PVRtlL|yQ^cfZadwPiN477hC6?i; z))dm`87I=oTI)_`u@py12l2)P-|e_fcFsSZxJ?Sb^c>}Y52Y6xdTgEZ^L!L8Dqk$|aqDljX60fwvKczvME}kDpX!fm+DK`h zNySgU9+_4(Hx$jSKq3ZG@+)be$4?j4SWjAh6N90;JA?!*;_=zkp>P|%U=r*}ghp{P z2*rr$nZ3GG!r9Z!<$!%F%oyuIq*Ky=TsXyJZQKb-nHpZA_<#eN`#d-JOjQ+m@kPcs zr5BpV0=2ZM`^&fArX}}I?=f1x@qSU|X$CcojQ}*FPfHRHzPa2Ul=8CY$wQlT!iz`c z6tG2mncJIJ#E-KgRa1AYQA({0Zt7%_;ZQ7-)_&9|Kq+Ie7|uJ^-7n%u*>8Pkm|-R11U{m}m0%ZE2$t2N=kI40i{jZ1q4<+!#!CEUV&{KLno5qP8h z&hxnB(1DXZn!O6P(4GFolr^aUbaq*BgPQ`1_lLdW zK-WeJ3N~R%JV768-bUS@p1`&gc!E08!Q1wTE~dS&OU} z?nKkcgzl>>4*C{9tlUlTowi>X1+F0fdr|bkKUhcO{uO7)69Ip#MHIi~c`duoaV;11 zZCQu-6T^q!pwBI_J5mj}2xdO3vA@%lJ^BBYy?hVE?uZ@NCP2jrFzGNvq$Ds9l_&VA zep)2CNm?T;)!b#o1ufsaHCItJ;pmr|fVL~j!3ZxOhSg*}uPeHq{#=xc@tc-Xju2)9 z()~-=Q0%tq(J?^39PI1PAVuUJ@|zOQ$^;WkF&z&nWkI()1+p#OO4Ej`S3&F?-yQez z*sYVr9I6456m8TBWaC=N;_Duj<@%BtPE3nt7NHolh!7p1q%9#_v+mDP$sbpp)O=uu!as$}sMa>@o4HCOoa}?3M2aC4qOgWbBu17iMP1V` zS~hc9elXi~qb3mlzSRPM!zJMOe(Stg0f4`T7%RU#<4zypqvLXu(!itPLXnKvp|KBd492gQWWmCD(Yb71SA1Zz|EDk zoxGLkv*XR}kaT}44`k)dW?jWlEFb$Ihik0Jrk_VLdJqGlHzq1@SkLW5I`R z8FQmQUI3iKDwk)}%}dn`u=dMDWMG2o**&UqLrtDg;93m zVmvycx&w7Qr4oC2P5RR%Xjf*@(uXCKpoZE9Yu^K{=Zhu5-yKlLV9vv8(q3yV4{Vf@ z5_j)UY^)UYWaCfKACJS-pJ%6|58S_wW{Pmfx=h-3p^@i5+;H8PHSPaW#CT)L3yuCu zQuxa}`}0wIZWL#=h4&$=`&?hUjSuYoXnPJt8#tqQn-?^X{jM;lgdEelg6T4qUTjIy zz?G|<_H!vM?O$=62j2@HvTyT{ZB_E3TQk6dst#zw?`Qe<&I39FJ%G3$=V`YN+5=i=r5aUk1)E~ z-NlRYa~JV)%}1WUnyF)BqeI#`Zcw-0F|m(b8U16e8nHo^Arhp@-c;PK$U0Q`=gcb$ z1-&}B?gRR4Af4}LCN^#2Z>h8ZeP{T}Ay82M5hAv-3d)Eg)Tam#;=qSDP{FNwt=A<# z?{RRiT8#Y=>K5In#L=1X>izw^Ji$*Wyu>v!sO>~_$S?2wXnwPPGT@H__zp2sq#^-0 zy?N)#e9%zgWLowBMh^OkRFcTa4UuV35Yz(8`K!Bj)7h?ZtGxt9>`DZPWlRY@f{h9z zqGVVOfEf8u6CqPEbTwRq?iL5Lq!S565{@gcNTq_kov`u@ygI`(PK2 zGj2CR501p5UX4!Yp=-TC?(?+zf+c{eXG2#@<6(Y&wbN-=d)1>LgqQ zSZ=e3%fclsu`*;nD&n``(Yv*)O^z>mIK23#;xV`Guqe%2=WfL4|09uY31WYIEZNP8^3Q$ zZ(FWn2sT>i_i7${orV`BZDbN*7CqT`G^PI#KMxh+EaL@K8f1p(eSwOvhKXEzVyX?#Okdnivkm#_qhsfSLdejaEB|^f_{6VTf*Jp;8=E!h$web)gZS7ve^h9^3B-N=~_-|D8 zsTKK88bjZ)kj*TgISnIs${%aETw9@iBp`y6yc~?*2#l5YE9F`tVp0?Pj6`T>v1aLH zQQR%;J47y1j$J3@BaYCTOU6ZDVbc=A9a4+KDyR6d$M6Ks%lz^%OCp)mpiv?LI0p&1 z&LyD2bso0>u|}YpRFf<)sSl*?y)oF>Rg1BG+;5)mW@$#Tb`MmzB``pA%<{50);WZp9 z5fg$fXI5m+siX3AO@{28TJ&BirDi8D^X;+^l38fyOcFXm+(!+$NBfc_W+X87*9*yn zk-W-9Ww8Fz(GU3am*1@MAhIX*^?Pd;Z8b;+7fjfZO81U;YWdY?596YQ=>MJi85s9H zQ0=P$6+9K_7*81hOd;``QGLfPwY45S0&tO|7k8hw=X+Sr(H8;gCocej6l~k}or1A_ z6kGtxFT@y|DaZ9GAVPnVX{P%QD##&U))pY9>u#>tU=RxWs5R9C5t5xqLiPpnK5Tci zagNZ_LdVYcS=7YSm7=Z>E6uhiNMhUZpwX+#a;OxDNNrZ-uf%?Yt!3i!b)i5TVdO3r zj7XBDnEn^O*?X=GLyL#8Mj^0R_dOb-t>a^-u#ZeKEk&1Hi$72^db>#evi39Zw>pbW zj|TozVbtqp_l;)SFhS06z&GYjbgiL@2S(7?xz{fPfJ<>EiE|jblslUY`7oosQ zwO6l7a3MA>iCqQo>c_%~6!P4xQ?gusp`e$Vc)OrRMsXMowECOdC)C+MJZLH(4J_@fsI9Y$>ucgTn!>L}7aOJ4*VW@BHF2oHS5tZZZZzA};Ln zZ-!GevGVPud=yzl!_24yFTa=UhX*f^jQnz@podwr!;aTrAM4gUEP-n~8;C>Gmahc3Hp@oVAIm}COT?9xUerfGGez#Y?{b^-eT*Fl^`PA@5pPeM8 zHVl%+V8X^dmin;-4iF^uS>mPJQgEY8@vWpYSSO-R&qtt^(1E=dz%2}1!|h&6=Ix(> zvyt1p3g-X#^6#ub#yi-Y*og2B{}sUXi_y&ZG2|{H`Qa1Bey`QK?@!R~w}dB0Cij~w zcDgd8)N==^?3C52!R7MfllR20!-cJ>{7OSeZQ1uYxcWj77^KEg*pvbumeLA9jcYjP z_Auk9QoXPN+DPKNQPipQqNg={tjmT@w^%A}w7v$KL){5rg?Un#%iuJEQ#6&0Amff~ zh-W2}WYBp^FAv#V+q|=>^wZ}0)Ij`?<6sZ!;A{}3SiQ{b2vh~U_QY+P zE#D9Azqa~s)S;~e-1;23`Z?I94SU?bjjN&|g;&hz!JG6{szGPxz_&L6z~b#_PJ1dY z0wLXnQAvc#{acF+u4e^lfsBh~aO9pPA)WI+wld$6jhzUY_A*%c`DLALye2C;dO5X0 z$Phns>Is4*eSiIA=lux#4w&Mf!Biz+DW>M=THzeTS>Q<#Q5SyLEWhy!*tewFBQCKE z!Cj^w^f^AXl)TzTMwAZkqG7Km-Qnu9fOO-E4Hn&58^*!N%gcN`_(e8g+}D~hy!jUfewaPy5{#z%*gwP3x~R9U^#lV40)k->B;{!xylwFOt5l zfZ$a;T!#eO!7|^e^_&>hS=RUG@yK4}lajsM?)-F5Omo0ClficNgX5G4^&InPwt`JS z@YNNWswlRM%L~muVy{bAcTH5h?RD+%oJqK5+7W*8n7O>eFOzX|M^$7s*XBibozRJ7 zM^N#+sKWu@Vu%%3NR}geZg;nkZ-T^AAwArAk-QP^jg1$bwaZWgj;S7CG2a87dbApM zI@Cz z4{@m6YT|awz$NOR&;M6tZy6Ow)HDe9%;0XpEx0?uCAfQVO|anZGQr*50t62Pf;$5Q zOK`U!!3hot4m)|?_uF&6J$ugX{_3vo+qZ9Bsj6FcF=z3J3ticv1tHUb?s>V(pO=Wn z?#O&iSbS4lRMR7;V1dXi04L!#`d3X<+g1SqeW2itw%}L=p_M(hXB9whxEonXsbRP^ z&QS-jsD3_w#ahMqZ|Un-{uv|p2z5BFMEo8&I8*3l*JWz$PdtQvYWdx%+lL#n4e>en z>1~sI?X-Dwi4QlKyh<(iIBvMe_5MN;L_Xhfy8L3>ii2QHV=2kaO@xTI6u(h4G1Wtp zy_h~(F=-ubarKVuSWQewDZ2yaJ2f>xN&1G-h|N2akAUhI>7-yziQmVMzh+qcm`_YG zb==UZjq>u3i#W(F6zQBUQKO12Te>S z2oa*n0epB_%tzeQQ(JhO1z^1g_2b5TJgvY*oGR=EHrg;LVej=mOjBStdqR|0Jr{wx zPi?X{$CH&~GHJS-KZGOMCrhGpBPM=h8E{puD|}cc{rGxL29O0l8b1EO9^EB6oA7%w zU_gtY(9EW4l)lDYKZ32R24*xAq6Hr#$iLy55G+K8qDK-IxvzfNGa|!Mnq6ELK9Lgo z`AHKUZFbQ0Sk{aRZP2KQ*I|MGRU_7HKeaHI>2H`Kxd|ot1=GfC7&snNULV52nss;A zuga0xJoalV^d5=yjSH5JI)VnmS>@6wwrRmY&u%W6+4FWNbsk)QfwD1!zOlZIB8{Ua z4=)2(WN`l<6dC`m|JYRbIwUT&;ELNiyI&U%Lp#t%K}60pmF$EfGYRV;d%r}aaHuiz zM~ZCM+s7QGK*0526U0?DL31fwTz@{W9IA`BC#9+NTP;I0= z&|kt$1E@Ouh9TCaTv$9tO0t0@54qw>pZ_XGbREU^Rp>Qff4jO(2A0_(5k(fHa5AZ^ zKMiP7huVsU?g8rkx@F&mD`ox*5>ZU?@J15sjxyDeg4%-M?^`&Y5q$WfcT-HAKl!KQ zP#eM|p*ujP|5UaYwPYjo1MmYhZZoAnZAp?}5e7_wk-(!@Jxiung?L~YbYc`2J?MhK zlngyW6d@Omc^N4R4!ijo<%Wfij@7BG=C-e9H3DB&uRm1XqT+kd#lEs+D7^7m)p;3A`LPnAxB=s{5{nMv|uDabXXqhy`Loq?;M%K%fReuU|J1g0u-yLMy3klvyS?a;mKs#P}f)swk5obtebwk#{rq3Md!hf ze_H5cgCm}yJ$JXOO%w|m)5U7x{&cGeZdYsfA8byHU@iqs#N+M&X2fO9fH}gXxnQj! zhTK1}>i-&ij_f2Hj8~!{lgOsZc2=h0 zgMZ%wIh;n>MCaS6xo7oslo>>|L@1+qRbxq3=23m#*Lw*z%%enCu1GOXvxQK`A)xjHWy1h#qwK`lKpbztgzLWHpH}O>#%y^~ z@H(?bq6oE(%4Ui$5D4z@I0&>AcM7D;Ipr|9yU9j4i&W0!XajY6XO9$RaDM50RJ(U1 zcsz#ezQf|$O06woQ~g=7-JJUA?Ol}owVWl0+7UBn%Ywjj2B*~%?Yj?)6IG;Xny{uB z9nu_1cCR3tc}W4{mE5$30p1$l&t$?Aa}J)+Vh&Qo8FgO4*Aab!?6goDA!x%dMxR4T z;{pxo*49?GH5jV6{o{1}V0MqgBZlg5bgXTTIP|pm=>AjB)NYLp9;~)#iHywX1%rn4 zdKTB;%>a>@r@x?gh6`o3SXN#9ZUm*8`!(9d!qBKzN}un6WV%P4YP(1Ch@yW;HOmfv z`fJWph{m)C=8Y^ikfg`@@w(T^ioPmvtfx^;)$m;GFaU0kT>z8BjRe8ZaLExxkRD$D={s)Vhaa4US=?`9hODB?prF{CN7s?g{W@JYist3M zhZcd=JoO%}nGjTQ`W$d=>V^b-q%9q3Kdzlhs;7R(L-YDip4Erxj6L%rhn!TX=MIyp zJhRgdq3vW9soYE)Q1A%=w*v*bCu>Ng=MLb-MbP}go_HW25pd_0dqxCa#7DrhlrA+# zSY;A|8JNULDe7s0Tv*7HwHgy9QTB>Pl8cj=NhwMLW>GP2ph7vvsbjN zU1kZwHG36Z(^@GKhD)SheA**7g%OmH7*oHMcfjo?{@~B2z(HEqA=g1;ACA@iG0r929h{M!)XCL6&nOuAoA zFuBLCBhb*ay)y-jv!CnK<0hhq3lsPwvKLq>;mzNzylVK~OsO)J?fjtpv|g{)q|>eK zG&cQ53(VNWutW5xo&c1nwyE~&bpvAwthB6r9cL}K;Hk$fQ5^)^OnOjUEXswr_QE$;D)EmzP*nV=$As~ia5J_h!&-4z$qGd z1l#$U2UJ^c^{ToPou!L7{V z7QXo2T%Uv3PJiIXI$$c4YGHqd5VvwTm1vRunwaFx9$TMBG2a-eZ}ovHr7Sr#>mcGJ zdT-CZ(+t2M&$sk92%tM1*G1N_{RsQrXDAB{ovah-I;);Bncy#bCAU9PUV+lab~EAr z+!EJ=^}DWCz+R8kiTkFVEU>WcRmAQYj!BS3$rT61~>{H+P{pt_bY>>Ad+{;M0_ z)g`v(ZeU#wt2Y+gu&G|6hm!cQ3x1PO1&%D=xDvCN+JI8vY{m3R)2KCTVoiGHQ6j`U0~ew3l1qb&gx| zoOCw~awyLXwLDFRsU$52%fY5N?>jozdxgit;MZZ%Yw0*A(LLlE0&ArL#%cxXeIPr4-O1u5^FMIQgi z$Vl2R7H{J6`uk0}+`H6ruI?XW`UnXT@ObyVFdu>6uc2J2H860lV|Nh?}1}hLE`! z3A)_f05Sn328=0TmiWmyyszd-OdpC1f0l}ePvcukl>(+foheq~jJ$l-262pRl&CZ` z*Vt73n`R(dbq{R~Ew+ZC=IEpXsjik{DDj)9^QRqEwV(X3HZ=)fVUfoz3k2iuo-KBwk^&$w&~K)*;t8(k zN%hlq;)3=>#jXRn>7WOLRS7HLR`)34aIZ1~Qt{C!^C8q4GF;MaXZFHW;uZ9w(?zxE z${UI60EEUDhn6xO%Eaz-T!7f2dL3{{Ak;gDRyZ$FUSdFv-}f!dic8TgnTlls+D2!< z3EfHyORpYULo}VR{8e&g-HxBFl7W`3qTr7-sTl4ec!XXbj;T+r%E?vA@dK`(DkkWc za*Ys;{|(vCJBUy2T8W<2os8Co;{w-Dy>yB~zFvIW1CQj0!Y+Cb*H1Y{{rZzX2=>Vr zXcdMEd>flVN>V;XZOK6|3_4MN#lJF!oYcYI3718dzrU#<#Viz!!~fP`lr|2w zxkio_JrACN|dz{<5l4Z!{;UEw9`nVSDI0z7lN)tJ|B_KK3PNbgHH|twd#ZsSkrd^DFY0g%wuc> zR_HD^LIZkOpqaP##q;mDoQt~05x*xSET>PI?$hsMB~hLyYaeQon?LZO1p=R)LlEAh z-2rf{bL67w6>@m^1JKywH83PO5xa&ECMjB0#7Y^T7{s;>_fl;(O8Uali2}qNdV4&f zc&4m7bI;#&GsU4k8%+7EM#JG+z@A*E3r_h}k`0$;6msQ13Gs$e#QS1dh5+XJ@E9g9 zWj;u!I-Nya%AJwL)KoLy6r(&-)jN;)!W*0A#AvRaIwl0Zc`7XQIV%h)M0RE|?Lwv5 z*F3X4FAffIw#IwM!0nm2{U{z;5~!HHK;CU>y{7UB@vKa}bf;1HE`tqwBU!tg@~$9X zc+O~lEgv!wffhORMf|fq(&cKq<+CRTkyQBhP<)m73&XA!jgxfetq-3MAAa{=TJdJz zPI?>XlUBZfkrV`mB2V}kgN{s&vKt*{)FuoXM4=7tZGYC#+g9=Q%vFZS{aC_;1pI(6(~ZO~6Fg@(T4eEQClwZvi|=YwWU zbKnA&Y{`2k`wj#RXyw)6hf=U-XnFzK>^G(W?flzq0;ffa7Z42z`4LhQN{ ztcz{_F^|&GsLRh&u!b^6YQ~bvDQxIgGYA7`W$$|(`8(kD(|e(p=7=s9ba)1f7)GON zln?HfyY@hbB^q&7{;54Tq`p6|lOtt+qtvCz77rHmv1&=BsXy`ppu84R>v!AnIsZ09 z^1EC%`8uTQ>^hvSEWdKi9^&?$+v&xU!k!3Ov}umDhsQ zeksq)A+a`EVbi4ZcS|9$DO%(sKrXhM40h|j(^`RFA>`Kgw+b}cOgz3m_MwJ946AL{ z?}zbkHW!=N6d(nEORKDd>#GojW2*Ms8$aeec4v8^I>~YVV}PUXIhM`bqqP6028d5M zq09#H?2;HJhrW?WD*O{$zV_~*g}&0)DI!qyfK_vhwO7#X4<^9S%twYa?|Wa$yzU2Gn3B& z90xDcEQ$=rmHybe#))a>@|6j=uNY$G!(T)mGq@WGmF99QSYUFATeVC8wx6mT zVp}j-V+n<|H#gJQzp!TDVEk4{>}EVu-R#p~VaYH|Uuk|Xvjmd4w+x^OB861g1JBjx z*qybhH#VyRGH;%SFg07=$^^d;QRRUYGKvj^SxNiRgxK*t)qE2GH7 z0vS_VtxBrPBS;q4)>SZ2n(53Mh(VLbU5o(P!RbD%R@|0XvkAqstvq6qS3K3gmv{n_ z%b6|fG2}Q7Ax0F*z}%GtAAEA_avgUbTq8WwLr%)4#%fsy757-G&-wVwTpiQD&t~A6 zVa{5t79`I6^fuRXgbfvYkF)s6`_`=!ns2y^d-!`hQLS`P5)i5sRh;Bs`|B-8A~erC zNszA~1EUk=4@^8O$VX;`>{3&bMC4!29SGLZkSvt{U^GT>rD%8)&}%{ndEdbZzX^b& z6#%7IMx-$^N8G`qewW1sUicX}L6q2nlPqC=?T36;axI0?vweKV6?K?P-35tS zLVbu?Jew&$mDE{Bcuxs4d)pm+eMJFL@KjG42L;qCWydIWk!60$P**?A#-N@Pdo7H7 z)}%)gue299p%I%55KC71hj?HWO5n7bh(M8F37htXgG!L774`rYP8P`G`ntrne+gwO z?DJN_jEet7GRKH}@h z^|IsW(A>y9I@bSXywSU5BxQ;ok9;fl=n`wmU95md+kq?d3Ae-(a5uFQBQH8v6y)$p zKfihRV5*FOxP)IPcFodq7Js*5d8~d`YnQ^#gc@vdI&Nsh43GZ4Cc5F(%*t}CSH)Ls z;2M)!cF5u5=5yq)1g((1_p7Q&*R8qNy^f73rimfw4UKv68dnC9v#V~yGnv-3;JRo* zd_qMl^*vcUzhB%XsN6zjFI&;4dsM}N?Sny~LE}=NM%&**nkVRw{C=v>6XvsVBu{%F zOS8y39KOWt+R$Czzp|CV&OlG+pLwIe$s1GNVC0iQBj>K#7P;rHm-js((mPtKY96+r z#(8D~rjigED9Lx}^b^r2E02rGDAVuJ`)6tGvLFN-of2CKBVv+w5zoE=)wk%0G4EgB z0^v2U_nkV_W}C_6HvFf?$VarYdP%ked4WV}TJ4#l_Bc2PYh+ZE(aMuhF7r0lWKdU1 z%Z>6O$vzCgz2HIDh&G_9im_dB_1>B=@UB<|MY1F&b6azP7cBxo6w;W~53-F1_E+m< zZi}_%3<#DZ(N4J2@1wphnsV$iYY!tSM_+7+#-x>TymI+X014rX$N$CVYhqfp?DA!h zW>1%}jXo}cI~1-Zz+i>?-H|?CN048zGHIcnwR^HY2KBJ!dw->hKeB3W^oc^pEya)K zYr{w1piwT!DpM+53_%<{0NU+z8hQn!+t9}GF5B;cW1@<*dnBZOzHRsC&;Ez!&%_e)}!g8`v-CzFr#wGpM3dW^xDr^SS$(eH;zX&1WD)qFo#4)&#nf?DqhQwspMaeFjW#B-f)U{j z=FG~Ta4mkm$|qjo?s1k{mCBHK}#rUaq-FlWo19V`|`Al(V@$g410*T z@8)ys?U)Jhb7tXfgDNIGqH4i)sQawsi`+_vqQ%25@ttXhtkX!m352-q4*`gkvm_2&h-ae6h=43-~%29!@0 z$~2}wIozMkiL04|T*qwS1GJ@p<*x7$d*S_+yh5*(c76%iH3D8n#cyDW293T7TWU*U z#PshXa51RwRLwfiqo^I?B~UktL7iP@@h6L>xMA|^h+O9J1k3mn z1*~6T8+73l?29=0&u7)hua0Xch}YagE3tJj!?p)^a92`ub}NBEL|!%hIx zgg5lX+i$DV|KRyP{)Y})00vBJgloXl>Q#RG57aJ+FUh;An;>%-so0;!-PU1uD- zFu!vj!R7sYA|H3kQJEqCv4Zx`$baj12@rqTi7wjadx$mf4>$!~sjIL5ux>Ui?~rS8 z95aI2T=D1V=K^OZ0BDx%DJc_fF^s%NGu25Ze5s_E_nNIEx+DaXlpXpu1r0OjYe;T| zqOwkGNCW>r-yPW;IV<(Qkj;lSP~*4;Mn161jN#v(TIH8Sqi5ySn=)a<^>0y+r++2UJCf>V%8gLSm>=$M5y+4Y)%nve1t%u6=n;n_Nf&9 zAY0`N_*h3-MpBV#b|9DzLllmnBAn1>0~P}qL=fFP`Ils=BJT@ISiZ3Dr~i;;%t9+~ z(?!D|?ck@2L5NWZbzBc}q5s{Q`TPUM7yrAU_dyuKV*GwvL9czT;^mk5+sjQpi4@?Yavv`&HK9k z>Ef=8h6;^JHvFBOxh1=Lq15EQ!*Up@O=GJ}!{imhBwi}>HiWjG8;yC1J*OT|C~x2Z zuZ=q6#dp$77}5i>N~iZ__GjldS)+;a(;94vPOL5>iiAYr8Sh{Gm)HBJBYNYek87!u z`eSC|4|UREgX_1&Odb8_fgb^^z~PBevzY!s#7J5N|5AEfmf-3t4V*W{QW;XX6~!-? zUBACaclcUWjlh^8_ARaG0JX4|gWa&`J6=nSQ02kvtf*~N;7g9E@H6vhmPHuk zM&840Z)xh@vjF$f{*`gk+~`mAxp=dj-~wRbc||c&Vq1QfGvWaaD>BQwDAv;kT%a%A z*iHM?jn>L0MZ4@!jJWD|YiS~c8>?2hWzr=CUw#i^5@q9A z6sj%2Ww9^zLr?mc^c1(y|W5-+wA2QD6=~A1 zcH~ULrPej~Y~2#!Y#F04x#v02zlQ6{pbl;Z$W5Z}XZ^P5a!5P26M=WN->(B;{^{O<04 zbvPSI;HCg0=qxn1J=wRnAp>UV{AqLf(mmP|iIoZC$S1s8*?hyKS zDE`xX8_1X8*}gwYF0s2XZ_s5r@QnvTus#nhKOM*uCD-;vw<511_$`)C4QPYjS*&!l z&TI+QOm-ZB1&;g812lYp-Pp$g32%YmZjS?t)Lrh&K!&lJOpd_YYoxO#xSjG`J8wtP z`nyMldNY-eWkCPzD_DW?&Bg*l_TOPYveZP;y2t3sp;-7A)z}*ne_w5IqG*FvLOS=E zw2AZbwKj~sxZajUcWQ;P5Xh6+8Z7OnF%AtPfU%Wz8SaQ@hv|xb|Ve`fD6;a*f4SM<+*g?&%e1j#oX9q z7~6e#$Z)X~?(gm7dj9*pRng{5jO1ZMV0TY1%xcDf0nx(UtkrHB{Wm-qvkQ|5)x4lW zTtp<-tB+qGvvii6sAPN9m|RWPtBSUNVW_LZ7q%1e^AI_YmJsvV0XG!Q%PMxj%pJV(cz#m$oRQ!tsMSqqj(m9cKRqp zQ4he|0KoMBnJz>3fM6Z|Iz#LUmhYl&>ljPXS(+|oL|c(I6D=XGS2 z(zXV@8aS(1Opzw#7nE~2OaaRapy!mvGh;H1$lQ0Uc^AQiGncrKQHJEK>-he?qR5cP zawd~wiwL*!4vjmBalCHR;M_MafCAWM0vFCXM4{O@N%V~EO-y58Vx8d*ghgvxin?~=SOQm9OuIH?T^MOGQn3s# zFE5(eD2*yRiyKZN1e#HK;Nq;j`jUbUWem!>}E!6@uhrY?Q5%dZWm{T&VWQKPq)7d9*p_8 zEiy6@Z6(s-Gd#s14RS5#&)M7`sd{B9RhSl;>~rkw=(%t^f_xx6!oL%9U%CVj?yeu% zB-fCpKPoG&MJFzeRq?%%Xk#@kghfhdN;%t-hZ)zXr0(z!i>TY0ZnO@T;A7CUlzk4n zNrF&wW3RMv6jQ!J$w*d@IW8cKJ2v^_Rl1F@syH)qIS;Ms6{VG8QbG0zgx5%B1*q$-)Ni!R$_kVv0m*T(U zI!D$u(V%p|v5cdxvoYRW$lTg8>U-RJ;7y`^-5@FnaJrq{0hEqtMn-)M!Gk9^D}A4~ zwjM^EjV8&jQ8y$mUu^{3g2O{zw-8)?%GG920?rn$379{q0Y+9Fvdp&A=|p)LY`-bn znxF!px5iI#jQ(*S-0DC@bnEu+u@8DF$ znCj()>d?r}{WYr?uKIHkmN5ZoNl{;6n>&??2lj zk=QioqAfFlALFl(m>swUojJT&hz9L0pc{r^6jk?a^@AkC%Qo%K*d;Mmco;`Z;Q))Y z;>t)Q^=E?Sl8Uz@KA=C<8bt~1vB;kbRFsr>mgt1CF_MufFqL8_^C%~1aZ?*&N)EB8 zH7Vm1-mgh4?fkY)CfEd3`-v93F|_(&@I)3AorRZ`Lv|(`ue=fT)DH?+83(@J@akzM~vbP#wNJR$~ee2F9H7RfOo`A5P9bvZ*pRW==zsAb^b5#yQ6wq|Cc>94+7&N-w zI;jZMI8~}ph`vty%E*f%VktnM`~y^1s`x#!mp#mW+tUl2RnDak6d`Gh`Y0R7TQt8g zvI{dx+wNtNOzVW^Ps8lgfgh83+y(sFZ^d#W6h?eRPY#429;0(x(0Fo%R4J4CH1Xef zf|;W!zrbwiq;G!9IH4n1{bwqeeqy$Go*m6S9PNa>_SyJ;9u8StY8Hof7y`Zny3N=} zkKmjA`Kj62S>(POxDefT*83YWoGLJ&f~JRz{*OHtCK4>+77<^Ors&<7XPnpvfxjjI?|0g?Vg^F5)%ae4v37rTJDj`m(xEHv52(ACP%3$EJxFM^{ed z3p8wRgG7@@K4deAGyyqGbZ?_m2>GEwwG1*OwYwLU=dFD7&^3SPk*KDHJy}{qpE{yG zMVW_i{wM1kRHlqh6#a#TP?^}@sL^P@f71{vrxR{ewnZyc3ca2AM?asH0M$q9g7?Rc zuNO(5Ef+zehVZS|BkLZri;}IsNb~u@7@5e7NKQkECekdcG^A+Haf#taM{?Fav6=>EL z6o(^Jr_@-5G|6lqMPRTc^iC9^(u(!VHBw!U8slw{FcYE(V$nznvWh~)E`@B))`4D0 zA>t~Fki$S!9$U$K(A#>u{zAA&BL^%sEbdibYWHJO^Zq%x$#B_O1(x-~q~`_;L89HJ zmw5+$$hFwiJp$epcb0Yk#dC*8Bx70jo3>)`SEE7-x=*+X(X9lL&Hi z8{R)-7DgH-E70M*MQ7|Q8HuW6ri-<;pZawgtUXO#oUQaqIy+CQEl);BB1zS)gzgQ# zAuvNwm`}ni6YtLPK|Rq170)WFlV*pIhzR{>CJYtMAm3(5Y_NICBG5*{qTEf34T+%* zN;=qg7R;Bbm7z-`+}z3y{{}@9m6~s-cp*%&GcY46)lr>Fb|6@PSp<>OqVI+%;+(5H2TI5O62_<{@ z-euaQC3HX%8X!J?q90|H*qgTT6id;m=SOgh+Qz+7%-Qg;8s>IN-qvm)7oC!TRBf8{%3=F*3ugq1~yB%G5PUTIkwfcOIaAs@2Hm(LwztQM? zR$wAT3&r+$s#m$MmpPJR1HbP_k~yFbzwg@tFRzJ*GsM5! z&KTy!ihu0hxanQ)XLu6zr^(Y(`wD|rN2Uq{;F=?*YzIF@<{K#6*txOHrzyz@_6Nx@ zaB_^17kC`wjVn#J{Osg2dmX=w5)3iV9W~ER3**$%mXy1g7veMT<32;v7;E-%Vs8N% zM^m}GfmZeSgZ6#bKn6M{S`|p8S62;`T#O=#kV^NxjZ2Ug`dkB0qTENWT!uL9Qq-Vq zMRp{jT>f3lzGl0J1V5!CuK%`KleTVHnqh<<1vox@e+=P(c1Eq}G3Z@o!t8L@#8-Dd zms47Ngd90Jnam-(NN25gyFD)hpw7u&_aURcznj}%g>Sx}q>t1n1_H;4XxC;-loBss zEu)8-L>T9e`{9=_-s2Xh$#9yHAEv)ebJJyqiqNqW=8jn>STDK>)0`e})DzSd?@?0c zedaknuZ!Z>VoH3ao*HFc+yx>?)v=w7`_l<1=`>NR#zF^N?=a3D&K*QPk2#!*!76^d zC`Hg=j%f+rWt&vHnVc^U_X1V|l69HTqqwu(#0j{${?h}?nS0?iBbc7M>@7BHD@VqA z$?UIjPI{_3?t?N7E~hH9udSYWC1-jeA$8BYWu&mJRDkkak#m$vEgx+I_eZhUTOZMJ z${KRDKL|-HKY#s3M%fs^D)7I?eZ8nvyIR}HUiT=nk4o+BnOYNkj~@v1%#8z)XRk2G zVTgXnFYNNKtx#%Ujf9eEVjDN~Tzhd+v8j{duI887j0wxkHu^7ag3JLo(2Q-j$4sTvB1By(rBn3I;jhK1T|&Ge>&%1Z=& zIfC}G3(_mP(=vYW@XJ;!r`5kACn;XeLy>WpQK~-*W0azQ+H=6dt!uQc-C;xKqeJ9F z{3D&zeBi>Z=;eYRFGs8D+n7%|A^%}1fc!P`j#gz_=pi#c-Zm4jt9h?xRw*gwD-q}2g2U9Q*H#rQbNGM>1hJYYdT&_jIJy{}_Q+?L>)`XXmFgjX$S zbekwzEd^EDOUfZ9Om!M32ggxr5h>2`t5_5c4kEhJ&+i#s)e9#U*o2+FXJsM&_!E>w z-z55b`h2ZZUR8P~w=Pp%22zyGFscV@`dp6kI$jL;CnSQ20@)(m*KV)9*Rdarimt=x zg@y0cGU~ozKdT={V+TAse8|H_dHz{zft!(3U%t@Ul!{|YGabWzMA1$<^Hm4jW`X3c z29d1hN}Izc(LO}T)Ho(Db88lx-Xxi~`}FrmcY(ZEq)>KLfz}3>w9A0oZ5D=Jp91Vf zWjL3-<|bN}@>L?l=N^269dNN}3Vp0ujg&xql7Gmd){BJf{{ZTLBOb-L07B5C?;lKX zu{N48HjqKPv{cal0t!jZ#qmHLG~_UQ5=m3=9V#bKi-mmVhorFsz8gelS$wkzm`(s- zT(v?@m!~iANS$`1B<{a@@bZwjuena)t^mp9=NE$@%a(Lf?Q&;r!Ez=j%{zux((L&0 zyh9vae0>+v{vCo<9o8dV1g;A?q)`Dk-_~uN(Z(NdAW?IK{M3z1$S-B+1$k02$eZ@z z3^R;XN0EPDhVrAiB_?-+8jU9^djjI4xb^IET9&OAw!kb}#|zNI)rq}%5boD%@}yIv zZ6z-);>lv+Lhp_jES`v=F+Wel(uRRT%O-;P_u$O}T`#acEg3zU1xxC9-_$3N@nPXf zvF*=P$*?j*K+YqC%r4yI6JXt3S8{sNjqXL3&LUZq)fZAkh}m1><5T|1PG*C6a{Mgs zwdYi=EMiHqAqv-f2+9=km-=S;ntlD=GWz}(sPPr#XtH&$Ya+G?9NP;qzv+e(B2U(y z9R|{h!BS>9d!0&~*ffez2wN|mE6{&lsp6~iq?nTW3`L0Oy32+lnW@55U1WFaCq zL@sJ)B(3p3vA7$E_*d(6GZq$BbAjm7&QL9g>7&^F`AWHqsF)A6qX@Pb=WwHkc4KVn0X=?8panlx)L81pAqxQH*DtdO@c| zQ;ta5mtKjZ*$&04VWe5M{&i%}dQulM%tg9G=&r$$c275%FnlOb>O7WI@emC-542WSi_3Fb@1V*`LS zwAWmvzYTDj4d+SU(EKc;X>%}NT;Psy<@tS@T5XfAl($@G$N-48a~al&P-G~KsHBpz zgR5D*t(Gy-eO-V+RAv0RmG$6<+~Jjl>A&0wEv3!?(>Q%yM-LpK+oiWY&y^SB%^q=x zN?bRD$Y;7r$CJ_GC3Rokstwi5V0muQ7RtXH1q&i*7@=$!z8Nk+bcr1N&4({LTCA0z zw(XK#Jd0B#Vg`!n2;8Gnu)u|>)Yf9^EJbOpp_|WWZEON}co~ctf$Hb_cceG6nFm{_%(y`Hpz%rqrfy?Y6qH@7-9HHCgav_TKLvi^wa4m^I6W-;XJMZ~YNsJ6Od zk!8j(CWIlG%mO?+Z#;Id0r}?FiYu@D80yD7@Ue1*cifU4s8#60h5?+>1d&LYrDS6h zbl6uV!#S%^$iA|Ej>59Di&%155d5GQ*g9dvM_2eCauB>K<7H`}s5Pi`#WF9=31M!Z z=a#dOxTcT2QX8inYsh|by$^R1KslO163%#^V?ml_jYXVVj)bwgwM1WsSz%ze{SDQn zJ+L7$+aljF z2w@LyAiBs+JEew+F0;wTO4Mvi+bTWPNhC?X zliUTURe2D9d>U96RMQpv;GgzpatfaAJR0dX0828JrIPCy;M#Y2p^rj+5z|^6;rK>C zWXCV>$by6GYYIyl25HDYoR$Nou}Y9h%zq<>y?ZYKS)e^|-|)$W?0aL9O3uf$4wor; zmdicjUv~y91&638kns&}xu)lgyUwXls%exF5?;ekY-5c7#lt1q$VBELVP?8;Y1#h< zPblq0)9R?mo*yTv8isoovo;ERZnTG5IZ}wGQBnr%=08(Eo*hj!lfANRE{&Y%4)me& zd3j6~(7~xVv1jw_2#`7VJU;!bT?@LmsWU2*XSAK+AVge=X1JFUo9eSa{Q5%Lb-%W*9*rC@E}>%;*XN6U)Qzu*HtL(xg|{e0^7cIq6z z^@M62`CTT@FP6fU-{%g(`A0Unxh5DDrXoaMkk*2N1%%lg4lwbY4UHqKi8I74KIbLi zcIyIOncif^(X0nGHo$EW-$c-$=B0jU^661n@&Y1I=Pz~iU8sX!BJjS+Vv2;gx99h- z^El?kj^Lz)VCbR19ihZZVVmNMWU6>B%s62GT~o5YE?pFXls?clz_V)vXV!lL^y9uh zW3MB06XrtWzOus5CA*QVM|*tGlQN-kw}jV;|1K{$0bkVNEN9nepMRGcE)ME<;sfZC z@JrCZ;})1_S8r9~{|BhS3wTD}U)!M%qgo!7Z9LStfJrVH$Jc|U_|C>e9%^64ndk-A zdtbN1&rc;7;v}pI#BjqksJFJXAQjN=*nDlvp~1V5B;#f@Zs-U7HGdn3GbE#*Gr`QIQrVk@zSNyJBeo0w1# zjH=MRbPVlUA9Jr7@YeRo^u18^P;E1S4qO?t2W%Cii%;lilb2?NUw))pvwJr6y>@YG z9e@XE@^Vx;+rz68 z+KX!qC?Ni&OI1~*&05TXU_;G>pY;{mSrJdi5dCWr=dK2}RVB9p-PURIhJ_e1YN%OZ zf~(%pc{g{~i!Yp)VA0P;UmWgFBRbR$`j^(qbgag$vb7TJlOr=}l~k>7W55V!u8ao( z$yM>a4vd(-AU}Z!ZI_@RFAe__2a@mHrV-pVro!P>Q~Dev5($ATd6{Q!VNHh}CY{}S z1k}((){+aB7i7|Q-REZy9%_jCqX(v1XRpvd=~zm?DDAG3T~cx?fBAzvw~~s#v;PO~ zZmwod#jw+A|LyepUmwC+{%$1wdnh^iywJ@B`mgsejxHH{gm2P1 Q|CytTvT8D4q|8J92bG#(!~g&Q literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step9.png b/en/docs/chapter_sorting/quick_sort.assets/pivot_division_step9.png new file mode 100644 index 0000000000000000000000000000000000000000..e226b88bed54eb90fa9dfd5a1b67f946f865916f GIT binary patch literal 14662 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 d{=eT?K%PntIguw4ef$TPlU9{e0GoRo0 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 EKNW;~g8%>k literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/quick_sort.md b/en/docs/chapter_sorting/quick_sort.md new file mode 100644 index 000000000..6e80ff9e5 --- /dev/null +++ b/en/docs/chapter_sorting/quick_sort.md @@ -0,0 +1,100 @@ +# Quick sort + +Quick sort is a sorting algorithm based on the divide and conquer strategy, known for its efficiency and wide application. + +The core operation of quick sort is "pivot partitioning," aiming to: select an element from the array as the "pivot," move all elements smaller than the pivot to its left, and move elements greater than the pivot to its right. Specifically, the pivot partitioning process is illustrated as follows. + +1. Select the leftmost element of the array as the pivot, and initialize two pointers `i` and `j` at both ends of the array. +2. Set up a loop where each round uses `i` (`j`) to find the first element larger (smaller) than the pivot, then swap these two elements. +3. Repeat step `2.` until `i` and `j` meet, finally swap the pivot to the boundary between the two sub-arrays. + +=== "<1>" + ![Pivot division process](quick_sort.assets/pivot_division_step1.png) + +=== "<2>" + ![pivot_division_step2](quick_sort.assets/pivot_division_step2.png) + +=== "<3>" + ![pivot_division_step3](quick_sort.assets/pivot_division_step3.png) + +=== "<4>" + ![pivot_division_step4](quick_sort.assets/pivot_division_step4.png) + +=== "<5>" + ![pivot_division_step5](quick_sort.assets/pivot_division_step5.png) + +=== "<6>" + ![pivot_division_step6](quick_sort.assets/pivot_division_step6.png) + +=== "<7>" + ![pivot_division_step7](quick_sort.assets/pivot_division_step7.png) + +=== "<8>" + ![pivot_division_step8](quick_sort.assets/pivot_division_step8.png) + +=== "<9>" + ![pivot_division_step9](quick_sort.assets/pivot_division_step9.png) + +After the pivot partitioning, the original array is divided into three parts: left sub-array, pivot, and right sub-array, satisfying "any element in the left sub-array $\leq$ pivot $\leq$ any element in the right sub-array." Therefore, we only need to sort these two sub-arrays next. + +!!! note "Quick sort's divide and conquer strategy" + + The essence of pivot partitioning is to simplify a longer array's sorting problem into two shorter arrays' sorting problems. + +```src +[file]{quick_sort}-[class]{quick_sort}-[func]{partition} +``` + +## Algorithm process + +The overall process of quick sort is shown in the following figure. + +1. First, perform a "pivot partitioning" on the original array to obtain the unsorted left and right sub-arrays. +2. Then, recursively perform "pivot partitioning" on both the left and right sub-arrays. +3. Continue recursively until the sub-array length reaches 1, thus completing the sorting of the entire array. + +![Quick sort process](quick_sort.assets/quick_sort_overview.png) + +```src +[file]{quick_sort}-[class]{quick_sort}-[func]{quick_sort} +``` + +## Algorithm features + +- **Time complexity of $O(n \log n)$, adaptive sorting**: In average cases, the recursive levels of pivot partitioning are $\log n$, and the total number of loops per level is $n$, using $O(n \log n)$ time overall. In the worst case, each round of pivot partitioning divides an array of length $n$ into two sub-arrays of lengths $0$ and $n - 1$, reaching $n$ recursive levels, and using $O(n^2)$ time overall. +- **Space complexity of $O(n)$, in-place sorting**: In completely reversed input arrays, reaching the worst recursion depth of $n$, using $O(n)$ stack frame space. The sorting operation is performed on the original array without the aid of additional arrays. +- **Non-stable sorting**: In the final step of pivot partitioning, the pivot may be swapped to the right of equal elements. + +## Why is quick sort fast + +From its name, it is apparent that quick sort should have certain efficiency advantages. Although the average time complexity of quick sort is the same as "merge sort" and "heap sort," quick sort is generally more efficient, mainly for the following reasons. + +- **Low probability of worst-case scenarios**: Although the worst time complexity of quick sort is $O(n^2)$, less stable than merge sort, in most cases, quick sort can operate under a time complexity of $O(n \log n)$. +- **High cache usage efficiency**: During the pivot partitioning operation, the system can load the entire sub-array into the cache, thus accessing elements more efficiently. In contrast, algorithms like "heap sort" need to access elements in a jumping manner, lacking this feature. +- **Small constant coefficient of complexity**: Among the mentioned algorithms, quick sort has the fewest total number of comparisons, assignments, and swaps. This is similar to why "insertion sort" is faster than "bubble sort." + +## Pivot optimization + +**Quick sort's time efficiency may decrease under certain inputs**. For example, if the input array is completely reversed, since we select the leftmost element as the pivot, after the pivot partitioning, the pivot is swapped to the array's right end, causing the left sub-array length to be $n - 1$ and the right sub-array length to be $0$. If this recursion continues, each round of pivot partitioning will have a sub-array length of $0$, and the divide and conquer strategy fails, degrading quick sort to a form similar to "bubble sort." + +To avoid this situation, **we can optimize the strategy for selecting the pivot in the pivot partitioning**. For instance, we can randomly select an element as the pivot. However, if luck is not on our side, and we keep selecting suboptimal pivots, the efficiency is still not satisfactory. + +It's important to note that programming languages usually generate "pseudo-random numbers". If we construct a specific test case for a pseudo-random number sequence, the efficiency of quick sort may still degrade. + +For further improvement, we can select three candidate elements (usually the first, last, and midpoint elements of the array), **and use the median of these three candidate elements as the pivot**. This significantly increases the probability that the pivot is "neither too small nor too large". Of course, we can also select more candidate elements to further enhance the algorithm's robustness. Using this method significantly reduces the probability of time complexity degradation to $O(n^2)$. + +Sample code is as follows: + +```src +[file]{quick_sort}-[class]{quick_sort_median}-[func]{partition} +``` + +## Tail recursion optimization + +**Under certain inputs, quick sort may occupy more space**. For a completely ordered input array, assume the sub-array length in recursion is $m$, each round of pivot partitioning produces a left sub-array of length $0$ and a right sub-array of length $m - 1$, meaning the problem size reduced per recursive call is very small (only one element), and the height of the recursion tree can reach $n - 1$, requiring $O(n)$ stack frame space. + +To prevent the accumulation of stack frame space, we can compare the lengths of the two sub-arrays after each round of pivot sorting, **and only recursively sort the shorter sub-array**. Since the length of the shorter sub-array will not exceed $n / 2$, this method ensures that the recursion depth does not exceed $\log n$, thus optimizing the worst space complexity to $O(\log n)$. The code is as follows: + +```src +[file]{quick_sort}-[class]{quick_sort_tail_call}-[func]{quick_sort} +``` diff --git a/en/docs/chapter_sorting/radix_sort.assets/radix_sort_overview.png b/en/docs/chapter_sorting/radix_sort.assets/radix_sort_overview.png new file mode 100644 index 0000000000000000000000000000000000000000..e123cb73b3cd233115082effbb1b4f91118ff0aa GIT binary patch literal 46860 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/radix_sort.md b/en/docs/chapter_sorting/radix_sort.md new file mode 100644 index 000000000..36f1478ac --- /dev/null +++ b/en/docs/chapter_sorting/radix_sort.md @@ -0,0 +1,41 @@ +# Radix sort + +The previous section introduced counting sort, which is suitable for scenarios where the data volume $n$ is large but the data range $m$ is small. Suppose we need to sort $n = 10^6$ student IDs, where each ID is an $8$-digit number. This means the data range $m = 10^8$ is very large, requiring a significant amount of memory space for counting sort, while radix sort can avoid this situation. + +Radix sort shares the core idea with counting sort, which also sorts by counting the frequency of elements. Building on this, radix sort utilizes the progressive relationship between the digits of numbers, sorting each digit in turn to achieve the final sorted order. + +## Algorithm process + +Taking the student ID data as an example, assuming the least significant digit is the $1^{st}$ and the most significant is the $8^{th}$, the radix sort process is illustrated in the following diagram. + +1. Initialize digit $k = 1$. +2. Perform "counting sort" on the $k^{th}$ digit of the student IDs. After completion, the data will be sorted from smallest to largest based on the $k^{th}$ digit. +3. Increment $k$ by $1$, then return to step `2.` and continue iterating until all digits have been sorted, then the process ends. + +![Radix sort algorithm process](radix_sort.assets/radix_sort_overview.png) + +Below we dissect the code implementation. For a number $x$ in base $d$, to obtain its $k^{th}$ digit $x_k$, the following calculation formula can be used: + +$$ +x_k = \lfloor\frac{x}{d^{k-1}}\rfloor \bmod d +$$ + +Where $\lfloor a \rfloor$ denotes rounding down the floating point number $a$, and $\bmod \: d$ denotes taking the modulus of $d$. For student ID data, $d = 10$ and $k \in [1, 8]$. + +Additionally, we need to slightly modify the counting sort code to allow sorting based on the $k^{th}$ digit: + +```src +[file]{radix_sort}-[class]{}-[func]{radix_sort} +``` + +!!! question "Why start sorting from the least significant digit?" + + In consecutive sorting rounds, the result of a later round will override the result of an earlier round. For example, if the result of the first round is $a < b$ and the result of the second round is $a > b$, the result of the second round will replace the first round's result. Since the significance of higher digits is greater than that of lower digits, it makes sense to sort lower digits before higher digits. + +## Algorithm characteristics + +Compared to counting sort, radix sort is suitable for larger numerical ranges, **but it assumes that the data can be represented in a fixed number of digits, and the number of digits should not be too large**. For example, floating-point numbers are not suitable for radix sort, as their digit count $k$ may be large, potentially leading to a time complexity $O(nk) \gg O(n^2)$. + +- **Time complexity is $O(nk)$, non-adaptive sorting**: Assuming the data size is $n$, the data is in base $d$, and the maximum number of digits is $k$, then sorting a single digit takes $O(n + d)$ time, and sorting all $k$ digits takes $O((n + d)k)$ time. Generally, both $d$ and $k$ are relatively small, leading to a time complexity approaching $O(n)$. +- **Space complexity is $O(n + d)$, non-in-place sorting**: Like counting sort, radix sort relies on arrays `res` and `counter` of lengths $n$ and $d$ respectively. +- **Stable sorting**: When counting sort is stable, radix sort is also stable; if counting sort is unstable, radix sort cannot guarantee a correct sorting outcome. diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_instability.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_instability.png new file mode 100644 index 0000000000000000000000000000000000000000..e3c1de0db1b8782ada05feb1f9d38c44db88d8bd GIT binary patch literal 15511 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 KqVgTg@BacgsScL_ literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step1.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step1.png new file mode 100644 index 0000000000000000000000000000000000000000..f540c6d5452a739804f235e11128b70ce673eec4 GIT binary patch literal 11421 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 bZ#*urS&GQqwtP literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step10.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step10.png new file mode 100644 index 0000000000000000000000000000000000000000..d99b293700481a1318a92c2c3ea1b5ae3aa497e1 GIT binary patch literal 16798 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 aoB}i_&f~N-pHuqVSCmtc{rK4I&3^$OTda-% literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step2.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step2.png new file mode 100644 index 0000000000000000000000000000000000000000..e8958492535002a232d3c47abcf883538881bc1c GIT binary patch literal 16574 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 E4>?pjX#fBK literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step3.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step3.png new file mode 100644 index 0000000000000000000000000000000000000000..31a5db2dafed8c97bfece4285fc49a0fccd7b397 GIT binary patch literal 11707 zcmb_?Wl)^W^6#?(i@OI1?y|TB2^Inbf_rc$xQDPvkl>!+A-KEC26qo`2^u7j;1(`< z&;4-f-c$9zb?Wwq-F~{df78=F)3eX?MyS0|z{a4!00016@tLeT0H8du;0ZLy!`J0! zPK$>JYc*v}x%>P3t*xz~mcYx)%ZP{wF)=Z%kD5I_J(qzmrSkVXJ39}RFxJ1V_xJZ# zR#p}k7T*22o0yomzP|qb`*&AY7jhXnH8rKEsQCT+_x${Pb#?XP;^O4wWN~rvgM)+3 z&CT82-QnS3;=tjsurOI!+4S^uNlD4vkxw%-Ge$;6$H&LHxw!}gqQ1WV)vH&xx3{CC zqp7K>OG`_orKO)feX_N+jf{*O92|^~k6-_}zOuR^EiL^nBqSgpz}eZ^!NFm1aWOhN zdU<)dwzl@{{A_=Je_>&vt*tFFF|o0+v8=4@^z<|?HrCtA%fP@OEiKK{#bthezNMvQ zZEa0OMdeTxH!CYkOG|5RZcaZ#?~R|IuCDI+#pTe@PfBrNxGn<{At*)*%H#Z+%ANtUjs;Q|tIXRhw z%yBMsGR-jwZFv_Q9PI1sySlnMu{DvInVH;{>{04|aeYxXUM3+SAulg~gDff-&Hvn= zdvt!ZxVNx(vez`)l$4Yd*BX~Sb+&S_(zn*v+}vDIQL)pI8{QtKlcxRq^7mDLZ8S1! zY+>xvmz?WQ{zpegC4I%2{h7WMzRqpOjkArWRSoS~w(&jNwKFwIJ&D%2R@uXQ3u_B) zi*1I6hKGi<1DnU2T1B%wag(m~8QG;CKP|bu8@@#~MINO4)eKedmM72t zIG&;~Uhcjqjk3?PJ9LxzbN+j4Wnp`$qhqrDN38u)oKffU@&4)c?bg!G*WSyf zY>Ctv)wUZa0AR;el$F->UOe~`_^=ECM9y6?X)*XO``?kt`MT6UmIL?o_?iz{{4eR< z6Jfl6aDE3kLjOyQzh7*7rXc^n<3@-hpDCc@NQdd4w{Wuzo?I%|heUF==$#&)= zc%va$6j}R2%;%l!ECF3EKVM)jgBHU4*B0UcUo9CsmHQAJIB_uglWFmSOV8;6~<6aQ45E54A$)XQBuJ~=Qff^UCZWaLSqt#Q<;N)1r zKnDU13(|nm$2o?iFpXLUcUuX?r|}?$+@$%(NJ~nj!FVKO*T>i!Rl5Juo2eyH{Q1g!{t zzd=2fU7^vo0wP#Ej9W3<9wBc|gb|)F!3Outjp2%n3+`CmyQ?w zHXO?enJWpJ(5%79c}5agTuqEjuyOo5@y%YKq;aAx6EFs=;J3y~T|Bj*N4R3FML3{1 zCwyi4>%hP&@HSpGnhV^pFCp)SsMsg1KtIK;i-N6feUWY`m<92>9+wYwi9F0%gdLtu z3r{xy71OR0A0EoZndd}sKB321pMLT*QtV;8Kd{i?@XritF%rZS(WqSjm-4hY!4JU4 zp*b0j(6$HXc+DU@>+z*3bISk5klZiSI)+oi<4y!ZIgBpo8B{0R0gy_vcd)9JYmy*z za3S9Ff!apzO;J%c>Co`=jXpt<4!d*o2rb$x%JsQJVDXrqMEFEi__Xr@KX&51TW7W$ zV8x4Iv281H=%3^mb)O+XS#BNce^fNLFQ*Ksv0uDLa*r%{yC;{ApSnxI))s| z52!m2X&NoN$gc|c_5#oHDLa)e_fIG}2wM@V_LDkwJoZabqf!K!Uh+JKP^5>$-`LXO zzS8J5_@+tNQAQSw4_`&k*#ps|3v4{?1Mx>Lp_&4O9Hrd=!Amw47>ob&pC}UgKLXk1 zZ0<4vYQUSBF16G|o;ww7UE(YgX!w+gjz8Hcgb<`Qrq zS(mwNeb@)<&j$=&jkDhAYm0599YEDOD)e*7jezNR{jj?F*l(~ZPITs1i!YSI!>24v zmY$!xCf6*VoJhMHd#5<=e_=1WGDOF}GaHXlp+Pkv16trkJl^+?ox@O7^~;JW=u?`1 zipsx#tRJZZ3Lc>4q%5#7Yb%QLFzcZ=MkMN&D@5vpEr9N`{g1eJX#V*m{?|?Y?(L(OIL4=DwY?CTeIT7ecieTaBgz zTDHImgl|i#a|6{=gi_r9?(<(hd!bL)$L7=#^tQ6HZHm;>^N>c%lm-oKGYOr-4k{Jt z&Y-;*79<^D`cNOVOC>(1(_i_McclV#?=U?`ifvjsd{NLMexy6f;CY!;?kwZ%8h191 zglKNcFQSuR26EY%vT^pd{fm_p|24>3%(R(7ifvaTt>r?JMpxss@P2_0Wu_t{i$v1Z z6^-58vGMnFqfF{oB&B@c=oKo+tjhUO69~FwAgLy~o{Wm#^B!lO-XduW-{=guV0>a7 zkLFCJT-3jwv87j(mSlkyA-OUimEbRH|L8Q0LAb4~i{0Qdv|KEjPU^N=(G0Yr{8d0i z8e>pc$I1MLZB6iu=n}!z7JS2WMyq7S9f!eEHcVDZ){%hqZl{+0&RV^a^=_cqt16ixIN>2Q+IGO zdRZYK&e(8tG9ilO@w6l~FNbBF=X}16DT|K);g0|-Up0c{LStz0I$5HU$|l_0e6`|>{t`oO5CwfkJYayz zsX$q>iPHRD1pEvjw|9WX0lc&GXfz;;vTA%O@PMv4Jpvk6-RFscYz%Alvjh%RL^Yuk zb=w_hRHa}Wm~{0E^}{zp0ur zzytHW9$3h8zKLRBo#NS7;PkZKuv=t388!i90|~#pg^^(jF9@PIJa}vLvEU;e88#{( zNRQ1LB<#BMDIGg&pJKYlqa6oPQEgPVykOxb0R)!DGJ62@yQcX{anPzE$b4`|gFR3s z&^Fje^bDQG+~eyUzhjSu-_J|wNxde{vhEI%pp{t`HsZAQ+&bOw|G6f08Y)FzU zFy!zqyn3z1h~VfVWiF+fZn1qkXo@E94~5pd~h58&QX zz<*`i2q`m8PG0ZbG>}jrTZmxN29*w=14p^H0gp!{5XQ}uJTT|fIUrDkBDJ!lhxDic zc%3x;xc%4KnwpsM8M}Jzr(V=59*IF=jcyVoeg5L0A$T`a4ww-A zH@L9ua+$rkTtoKle^x&hn-fj73R9L#+E1ux^1c7 z#sSiNlA*iA#?6oTteDW!0Qk1+a|l>bAd3TM;3!pdNp!2|V6qWDMDmwHXEXm#po8b1 z^~<%j8U^dJz+NqTW6TH{)&?m2m*aLj67j_l!lEV5y%uKd6$nyx-xwj1s^rABek`TB zC;)}qD!DubK*8kDWA(i?YUG}q;^^5#tllO@l?bg?8mAjDuK9Ds8pUQ2%*@I9(^-fN zX+i=rtdu=+!Zx`&v@2();uJ^d3>C})uxJ-!L%m;7jYzKN6)`2SkB|>_`JP>eRY0&G z?z+6Ni#@OwQe0mTuU~Ad1SEW}Pk)%R-d&m%fW#Bhf_?97G$<@_O`NQ)t!e5#J+D7P z<}2+QwJU}4hTv|%QUa=gQzQUJy&y-HuR*J>c{3<>JHVI9a~QLLHYezyx8*n605y`+ zh@JT%3Cmw)dr>|@ii){FP^_Qyh{sc5vQt(B1%mn;-0YUg+yb|QL|`c5A0Y7CGH*_OoIs~!;=CY$_1DP0mTDA3<%(%YCxrcCtx%LKp+K3 z!ko7PN8hW5<)6^Bo=kmWASDw~yy=ZZuIDyon==)P2cywcjWDG;eG62PE^eRdr)iDN zf1>!(gh+9biyDU7-+M^OCpW|w4uFRpT(2ZX2$6)-)J^<2CK=3#!iFc#E|f@NRlppK zcB@*!wMOiBe@lH?YYW;H@iTqkN*zHq*{tdn(oj5IE3R-$3Dn7C^=*~o9d$**zzC-I z3qoIBMfQsGu^#2HID@M)4A(7IpprAmiRx*{lXb40$J1+K@fNF=eQCm+1?X)9&VO7o z{(QHM`DnI9MT8O$a1?s`{vyRqYAQ8(FMFdC@(ZEsykdm}9h5&v4Z`{9U@PDQ^=1w?T zL=UMz;2gkM3RKdf1V4|`6~X6lY8UQf8x5yd;3}xAH-WGR^JC5pvSA8UfU#7I!(JSu zX?S#D&tWSLN)qSGuFm@fRjZb;%$nty^9Hl{Y;6*|MKdE3{9l~^6%@^HcRIeYd(h1| z@ouI(q0D~3Ax>9_>4tBc6CV8q?evKpu8D*<2?RR*qC_q*ePha*^b|@b5&yyE! zp9H{YzynWB{P@sp=6L}iQD|!i1=8&|zUL*2gB+gzCITGBL=mqlcW8k5RdK9fQ()L2 z?al~T@9yP7^z)aff)IqBptev80>Imp7%9gMICpa){MX6w5bT~HhZcTOPa0quZWzQ* z+l&EFdYA5B6C)ccl(y=iYK{C?#Fz+7nOnD6{VbW?tn8N{VG}ATs^$>TdWa8jWaP_! zP6Hrb{r`H0ZNIruSLAU)ij}py~vDaeOx*tav zl_lYmDP@XN$#lL8!;Q_g7fenI4Ik+Ad~XNX~4bfA-XXdc@C5B4KB%Pj;+1iAlS0E&eX5m~Z)%{fm|Nf>P#UmbQ zfo++zECW&FygdZ`Y_@83Lu4nDE< zK6UKXF;TG?IOUajm`Ogk9B(JsW+$@beUhk99wG3=9?j>LauVN36uXXu>U zLp>fK!9Kd8(&zg#H`dYYj7>*Jt4CS;eY1t?L=t^nEp3y@w>M=#Os-(xwm^~8nM5LA zLKYM&e+L7#wTsG_x4QaTj4^(k)Uv@xH@Zos4lKt`*ylOb|3&sp=fx6G!BMTDD=UOJ z3JnYM8fbLkec~XC=znb66uoyQw>kJ@>qmkR3VwW*R)7G)jbDDkDLs&XC{OG?p%dLg~v#3if#mpN>X~d}J%)S@|fZ?<60Fi`pz49hI>##g)4yf1Ck!u{x9x|0$5>?txyauF|pMW zY?E#6{q=1R>!#;52to@UUWL{E#o%=cZVglvus8HpH zEkx0C#8dAmkmqkT46u?~=S=#>b@?_kBqNZzdLR4%{CH=J;jQ1a`hJ$fj7Oj6(iB|H zM^a^C?XkT5`iJr`H{g-K?tpDC#SXX|vvldUJ4AT=$Pfk3MbQi8A#V}eiUos$Q7H=4 z3YE3D+fd)0_wGs-bl{}HIzq}1%4xJ-fqCh#VUJ>x?F=HO=x-Sis%IL)_~@~GuB|e^ z7pkz=e@-n?{Ghti1H^bvMLP&6g8;<@oflc+>hxZtY^rNx{R_K8uAAGJJ)gT4yTkyO zN5}xREr@uj&v?s$5WpgW!c(?8lrbZ@25-}GI=#Tf zXLMKKKyi`i3f;_)G7sBL#v$UsFii?i$|2t2#X9ahK;aS_7-n_UFqjeS8Ug!y0I8~8 zd@NO({4V^N@atK1ChxaEI+LUfd+aX-f>k|T=1>Kv<)&&+>b^L?!NB+oyUiob6}#Mq zIWA7%B`;5eKcjj89y8s2DC8BxNAdTajyz$3DVdNHZFVsJ|2xHVA1n+%-&Z3F`*r(6 zk4U^cESO+FpXgUmZg_)@TpjVJ+4n5QsNbb9t^u5kaG5paobw*!(q>jSny0+Z7%$;S z2!mtbcqy_S^l!)MzgWatd=c79%^z;S8x~qwQgo<9*Ey*p5uQz@YIwtY2;xt#Ru^a@ z0nZ-?AVD^np+M1099%Hbj-iwWP`q^vcn2i_g;!7lMlk0NolJI;DU2qrna#n%!p*F0 z;-r1Ra>vG=#hHPJv&QS9}am8cTi$=Or8xh}g`XgOSET(7=%6?}Cz z+qh#}G{Cg8w?sZS779Bo(gL_gg;qZ^2d8A7S~{wN47BGAn&U6dzs99GF4i}vj^AG! zS1jl?8&>QMcHgb68CQDL=JVbFx_4PtU+_cza_0D8nerj}(*Ln|$~2)2}L z;(S!q#!KZiAriBi>ylDt)pqo1HRqzn#1T4?JUdV)waxbxc>RgiRU24w@apE^7CZa) zrg=bKW6kfv2p_3!Oe`hm)%GFvDfS=2r&(D>9>QkmM$4||ml z(lle`h2JIn)qnM49M|VWjGWwCKX=Y>YIo75_i4HYz;s(Q6Y0Whbg6kWy&S9RdG`b> z040_jxnk4WYX=x{Y05oSD*EBJ&JD$5HCj7gv-EVYLrxSq0}MOc1T)*)DS@=1xlQ>l zqzPgDKTyjRfboVTxQ`Eu7u{|SxQOMRX}9lNNHAth+EWAIO4Qc&j+#TPgcUFr}O1S2&(Ld*#=(|eo+5Jwa$%#x32^5xg?u#$DNo9ukGye zreQdDzGif0Yu3eG-=07ntHR@d_pF&v2KErfD?joXJ6EWN$mQp6)i zF5#A14VVzs19Y_t6;JtJudPr@G25fAaUm|H-URG$RKXkaBM)#aX*gpWTF_XZua?4& zLto&&;1SmU%ww>onmZas%4O*N=NHPi?!9ArBwL@*uZU{me&g_Ok2-yHeSZ~M0|CBs zf77u;Accu7QRX(dI-!HTj%6^~AqS)$p68My={I0cics;K8L7v>cg9wZHc-4jK=T&$ z&aWqRs8ti(lv(7+g}2>gZ7ovjLLz%0!(RuxSb7OJc_eycNV|P2a43LT1jDmG)dxA? zcx^oGWO_Fcr%if@WwPR7Zw;hB={<`6QfdskRS|Fd%oRwyWeE1J*5#N8V@+9rd3@#5F%7`#yEq9x z#2r6FRe-lQS)peU&s&>kv*2Bf_+Rgb1-3ghY4n1ESLU}cv+OX|bH*qU@YZVS8XT%= zKa_ba!;l$H#9Zg4CP~E-d5-X@d$wSBjU@i0c zxCWG4zVEAp32>>0fNdYlE>2%sVIM4$S}(lokB{}p^su4NtpKG!#1;ra@EIOb804zo z#EGa18{oWM0YuI7`3dntZTr#Y)Xc3tnW-a1tO8q=!Tu>hgm>`*sPy>F<@<^C&0mS6 z%6QU26GA3ci7z*3`=q9yfR_!pHBLmFu*y)$YtFFN&(ghFBj*?qu~9Ow#w7^-yk9|o zF(TGfeNm2a%}-XH>FMo@ExZuYy(?_iu0ih*+?KrK*qH)t|kuhx)U4&Yt z#@c*1YJxS5?=otPDfJyi`m8gLf(&uu!z#{!J!4vTUm)M|3Z^gPE{Nj1n95WvwyfPP zk=hFh!Tqqdyj)jJxmrQt++8I*x`LJ?j^Z#Q%9So063VSd+7f_kG!yAH#fK2erU3N_ z(ILz@VgfE(9+vU$TB~G97YxZR^inHO)!1%y z%|UR#k^ET?L_{CvIedj2IqFbMM$SlH7t-BpbioR$>(ByTz3Qa#zpk?f@{eYC$>c=V zfY-H}wyiLm@-d&LVP)y6+K?7j>LWgq9kvqnQzl`IQy+0^5p;F_?dU=frP~OzPqT>w zBoFrtxE_$Ty7{nBt-&2Qj$^_!{?QKTygf$`eH!tE3((~x`#wUk)NTjVOVPl`T|4LI z`3Bf8$wRx!L3N2sadgY}*g5V;)v3#mKLUdMKgI5CfnUGxFsJ&tTVcn3FOij+z{3WC zkgeOjYrJU^po&y2906L$!s0C85ZZpal3O<{oDnxRIaC@I9P*`pU+eGs;>0#%DDK&}HS_h&$R7VEx!01NIH52lS zr`N!791qZdw=+Q@RoW*8Zx)EDgH8DM3O(o5#L|2p(fUJ}-0)8!2%7blc5dX&UidnC86S-Yy|W=CnakwTG5ZT+vZ4 zHc=NLyT>?#>xIpT0^qs{lg3Q%LiRv#POu$0FIe?RIg=PU-n+4%EqO?dOr4W#|Dmwm z%L?k@&P8H@b z`USelJHAm6RPfQTNrr+-ZD*nl^my@&N)tXZ;(3P7xn{reXy=#6{(+k;-kO5kZl z$jgV6o}ih8WQ5#(7$Kq8=;$v^X&y2zR_l?YHYg{_T;-W;3GYp?CJ%)?ao+)@fx{Py z!4tiz>rrxIT~8x6VKsj}rRrQ%YrU z=luCJ;>~Q)s~ll1C=)U=;*Z(Y4RE03*(V8UPGBZ4{%Z#E4Qh(zL<$ku4~g0nH#Y-O zqk+w#&DC6c--#EMyT==N0%D8)T##LoLJw}xhxnW81za;0$Ym|hjy>wJSH>+3q4%8( zyD#do4iE0{)k-$RdsiF~2M-u2uwhwCt|^Qw=3_y^EFb(9Kghpqqa7LS2`DhoXM&;z zt*-%3h9R2otE}E_k_DRsl1W_8OV!ttI$j``;cr4#X zz-(>e>c=_|KU2wPJnpGpXp8$j*UKC7AyvlIA-h{UV{3C#NXSoe`2OUx6LtGJ8}(L z*$v{CAs;AF9?zc8^I|eGhp<*Q#vM1m-0||{!Q|Lsw`m|{9|Ab}{LnMCOJBJg4Lxaq za(G$2k)bcPN2)nkTajqlFJRYU>?n09BJ@3(c%rR<>t^K7GrimKkdp$279X_%Oi%Z}Rp8zbNdEay zRplO*GDwr?;kP2nvFiCj2$~5Q6hWiRkb{1oVn-7V%oDqGL%cFa=0Irc>cq%i#ce_< zXQ&}NK)r_{QQ3X6=R|gC>Z?O1MJP_cdX1A@PED8{SSi2e$F)isBGRZqLuvj z)J08+_7Bcgr(n>34^vWQ(9Z;P!vQEZ23eGJ{p_zlGM0fe@*%CXS%2@I{{taHJ-4TO zG9c?&Wp232I@AlrhrB$j ztV|N5jFxB1GNt8U_WV170aGWRJs8>}fjC8PaXlP9kK+6Co=<&hBL4RsN%uQ3x0J_N z7k}t$sAK>T(d9kF#uo+fL8Ad4IvX?yKnegM05AZ80{`3>1Aq7tlU>HMUqB#e6}`nf zlF#xq9x+R#}{jIfP=MiD44)>A0PRfqMa>ZfKmMO=EuRUuB*d7-%^KLr4k^diNnq({c0_zb||cp1T19^_S#+)RwQ^%{)^ zF*W%6td2iRwNel=51+%@{2pV-u8*5jkW%?r8ivcU$bhXx;_y)4srIT-jddFi+ug{ByK359}7|<$vw)K*W0fFQ`|5?~;OM?Zu zOd>~Xb9eZIuWmTCNfYwE?!E4UMzpP*LEM3{uZMEGUV zKTm>RuWtG)o}b38C>k{Je+e*Ub8USN=+j;Neo+EB-c!r?t-@jer2z~Vf5^qHe!65! zGQ~%@T$R&N8MA;Vd_Fa(`b6gtA@IR?0GG;ZBLuqhUdlAMe%sDF3aOJe{U9o`U@$R$_}5^ z^ycuN;A1V%d6zPKoqpIv;io4YwasdzQzA0Z38rke^GUQZA{%&zO)S+ zw)t~1p@K|4UWv>GUA0`oL$U)%m5i-D-5Adg`{%rw(ExtLIy2|e>OeSiTiLyjjkjai zV~3i7V|`m&V&S?d?{3vAi4<-72yQtrLLTo{bpkYid8w}q*a$zwZ`lA%3b<4mgPZj8 zj-NDfm6UWxBLFC3jYw@E#?nPL<{t^oW%d;D$;Ap02<>=n8dP*PFxhMSm7MRc9PVHT zh~ntrA%J_{fI5rkqWYTe6#JZbLPy3eMn!AwhpTAYZVNia&RUHgBl1Q^K1#%@peN!F8$JXgV-S%L$3ofanGYYn zhuo5zNt~q&$K9p@$}E;_G)o-L7cRYgy9Wn&~omc5Y@0n$q+;e6ixj^v&4B*)W5SH5) z2hA&bchdkME*tqe_wXsZYE_B31t%sSV2n&DOg3pjdC)LduNVz0*QSsEC;s604Ew0V z_mzo!W1ceZFR0ZN)l<0wG}&_0ehq&*A#qr!0JbGA+i+j8&zushAEj}DCw<3yg0Edo zONnCd+i%8^H?oamxhq?vQ*r=!nXvki=$9mt16R?Wbf^#lxCo_JTv#{=ih6BM2Ul#N zLIp0~{cyO>FiJ5E58ZWN#QF~>+5aedTL%mKrxhCXr}O+B`oHu^K*m4CO8Xd}ocw)O NlzSmt@zf;fe*uFL@kamv literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step4.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step4.png new file mode 100644 index 0000000000000000000000000000000000000000..ff5e1d719edce0c232700315957ac554e8f7c42c GIT binary patch literal 16781 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 P$jQA?lrE7p`ue{B_AqS% literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step6.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step6.png new file mode 100644 index 0000000000000000000000000000000000000000..1f33c582b6949f12bbf9a29071a367f53dcdae18 GIT binary patch literal 17086 zcmb`u1yEc;uqb+V7Ypug!6Ct2LKX-X2pR|;Tmr#0Kv;siOK^7!?ko`8-CctPcX{O2 ztNL~St^fXe_y4J_b7s!YboaE(^z_UGDJe)}ppv2j0DvJY^G*c-5TCQ)Q54AY>pGj& z__=VaB>z$J>FH@}Ybz)y=traX_4T!|u&~Q0L_}nIdU|DLrJ$g|)6+9QKR+%mZed{|H#hg&w{NGXr<gp;rHPzbMdU<*I=;$aXC+F(+YGAeB zso2r2#Pv`CD;=KR-Q6AE9OqpHs~@T_A1(Wwu2(i(>h0~lvc8htlQq3FJvKHrJUram z+Io0+7}XY;*^%L2?QfiEbar;Od$My2FMvX!wgomvT2$@h?N=q?$Ct-9-Ie)6c|y^F z$5sN8i4j4qfws1`S}B@`ssu%&gPs+hPEJmbSLbyzliE2cKf4mIv%J3KS}g4^-Hx@# zcfqgg(-c$V!sW>!<2%@~uxC#m}xU9!~ZL)>pe%x-MlHWm%q8cNguyh+~3=&&FWlUnEx|3u{hB?-TQm8)1$WHEKv9G;{0KC za%^kNv?%)`)$Kgd9`0vl+k8B`ve7c%ay!^yP*LmKSYuh5cltwZ>*Sarc<64ne`06r zeskWpcJ4URVr2LBVRt3IZ9%ta!mc_cH^9AicttjK(ypRtV{>CS_50S+9EI=Tc7N+m zd7@lGz@pFRyQNXPiXU_O)I#w&y9E&%*?zJ4R#}NU{=s$$K~_l_Cduh0gerd@0pP8d z>^rfKuJZ@&-p`f+z%m{Ri3-90vj4rLf4K_%kCwepH8>yD{@cm#jR5w4z&Z8$ityit zqNZlBW34rTvMvz*bVsY7S&}hjT++nUhfBNH_wmDP6hUSys3Ir`U;HI;(aY^=_n4US z0-G}KJM5W&*z-x&d(jNcqxF-4qrvc4s|G7RdOOB3qMeo258Hpv6*aTj$^xi1F@i1R z0t2H55tDE~0hNZ;-sdkyqj+6tpInX0$CjO$3@HG}N!pAK3XbxRW?ooK_UIeffNcp~ z1ceHX-U~RRA8)?+yI5eF?il4`XXdRcuwoRD{0YKTg9;OZ$h>=zQ<2L?6LJp}Y!eOX zVTl1_`xj-8#Bj$!c=ME`FeIgOu|E<-m*qQ40VhMyihvSBjs754*w|>@g3gWg;-Q#R zmGs`;!cmC~|DgR6hJ`S}^26~EN9|HpQ7c#r<8%~)wvmtXeEy`FV*xDOW1`_w1UUPM z|7xqCiGX|7M)7`DYk5wz?Uf0_YpJbuLckh`9D^Z~xA5Im;&fPR0S=8MQe+_RPH8cG z0o2?U4AyuB+SS!!@I}-_v_*RUD?0z0?IZZWB}xr&NX7gCgbPs!qw0%#Ij10%jxlyRac$ZAvXA+arKo|i6tF%WzYv#GDc zfd`wj{zJSu1r%L9n!kcUGG0|$!TB4pHPJG3Is_8JfXi{Mh-dB~%#pxDJ$^|aPl?!& z4uig>G3yYSA6POYck6q-)m1MBhUYoBB-hBPap+UFk|Wm0Mp)Bh*BlnNwrOMtcMT=H z*ilzEDM35l&#<1_OM*wUaX;fosin@WwV{H3aW9ByyhUy)ESC0;3*I&IgA+l>?*~MHUkuo%H&68&41WOIe__;_yM~SE=oWj71-St1P~$@2FNypx|VXW8&;y z@d{RiMJ|&;mWquy`qjD-159kBN&imtdS{xGNdy*FC z*RZBVE5r)KL#@ET#}>C@&IDIr>!>=n&FzQ!GV1Eg@fmjOmhRmmeefZt%!M#Sj7fWWo?}XubDp$xYs~ zb+*n3zsGuWf#fg_~6L}xRG zE;c!T1OA|rA&)i)@h7kI14f|NYN8}*`-kb*N7uzpL{juIAX3(w>Il`H0;o6pU^nop zUKJT|i>+@71%u%vD>=L$yw#9kO=lN-_Hj~g=co~O6qqM^TKW40hb2**PdB{FFvzBW z;~;s6?Hh%TpR<4BW#=#)4u+(!ewX8RyY1$f%3~_q8I&i8>l8s?=);3a(gQ=UHH(|f zQxdzAT5ZoSWBaf0Nv-j8tyMRTF##77$+p54r7F|Zwf6kr$K^3?YoYGO0q%Ml0JiWg zBL-h5wltJ2lt7myl}mv5=;_Ab8Vw8xhGr#Lsdvmce&{>Zs}%F21p)X>K?P2mtyv2K zNW2_{2YAn4j4k7gl|vnk7W$m5Y|{WBSScXQ$-0OsLV`o9sPGwqiQ3fF)si=HpWYxw0dBtf#b)K1(B~t|0f3-dbL8oyIOa1B zVd{Yp97@qBAZ$k}46 zX8Ny{H@Lw4mGeGLv*?pX!uD3SSGu2@^l^-*@b56Pzz%`OP0+NvyLTEqBY;Gdh>2w0 zJ+bUPsusyd5F%o3d`DxEF@&f*Ru_?vI)~nALz$*0X!`HVi1UZ*bd97DN(&-t8%_Zt zzGKd_iyim*l>OodubJx2Hw@U+F5k({q|-%hY@Y&`J)Sr)S9?BvrqFhE1oUg7$`frq zX+P|AMSQ+{Ncglu=?ze8D@wb5QtzTy(^N5xz;xMU1q2GD$!G$ z(6Dgl{&RmJp3?VgvnT+k5!G8SGE9xewVXVbTXw$J`JnhiyKg^xlCGtBRh=*oF|-~5 zvN@1H(e`S3LD?_}b8s;=#Bb$q@K1-H!GNBh>Vf`DD)#tMYnyC>7&P`d%5ZvOYVDU8 z`k7)u^oFh4+Kz+F_AK#%xKYV*UDV>)fgprlb)j36OywxSq6Y2sMLVOLR707l)=YK( zslKrDKQF-0v=lkjyviym-YSNlZ0*a;k`nm&4|tL^_P+t}<{%#|m-#&v43%Og9(3;C z`$`mu5z|7ah7RX#XcGv<@qW23ksV$PRknTqQgYt^n;>&^%sDX>mhz#eZnRQru+i5o zG$n~XD=Lr$ryY1S8hO;kMcEJt_u{BO^hb#bg)&*8)WvK0+L~8nckBF^{!OU(2RUJM zT#Q_x7lVyenhjHG75hg>wzij2L=P=O<~4?3?_Kj+T7dAi{Q_E=aQCAFLL|UNxPU?p zGJai)0|obLSkb}|B7eqr z0LO#jUdrm{n#D8ZK-CD08KQ(01c=DdSna<<%CO9$g^c!8>l*+NEQ3-Qz*TEMgkbvy z(hE#Vhy!v2`cFLB(>dsH(bYiExs*W&m3IJ)pR%xKo&gqGs#OIHsspOesByvdS3zMf zQa?du!TL?X5xktR)^oCqxA#fSB@iAIY9r+>0R=42x;e);1>g2s5ksd;GYizqm5Vh? z7rvDmfSI(GZnaDIKeJ;&SC6+f{z0Vlu5;;RMa-cCFo9QKz=;U<0U!w}`e8tP)t%E5 z-&*6%So0=B$gQZXBP6pD_`5XPFl9pF&F&E7iw=E5hp6-k>4*;a#<8>uoP$E1IVh_o zlKMmjPj~YEWTfR#-<(d(1vq&j9VfTkxml2fZU{UY_{nH<5z8Obpd%Pqr7aq~#cVpS zka*!rN^*yVN*1n;6<(c@Fsq{2E`iYqkg5x~TrG3KC1m4-<$rK84|tnV z%=|UG&PC-UY6f6~tRRBOKk#SI=-#O6dmaRX&9$Y7h|icglucO-Zi>tUy5vw-%gWde zB@peATl2^t<|Cpb< z!wpOS4#@q8qqctYjh#Ibk%JI05(5ZkiV8`PB4wzX08EHe_-q6E>a^vmpE0W~Fv&U~ z1Te7L0bes1JW&rW$IO5r1TM6UN-n`t^UUvo*g858`Reko*D%!4I7ForQ1Uai z;`RUrTn%_r;==Hmrs$QuqEg2`V2F&11v{%ks_HOFF;mBRd0A$ zfmnb4&(G`2R>`kulRXIhu0!2HNDW;qw=SYr=rJ`b($= zG`Wye>45zpRN@O-RBb?mxT2!3*T9=-MKpkc`U{@5B3E-~;O&O`jWVPFog8pliGA&t z?8`l69YL0b`ykQExoenr+sh&4X&pqBEV!AJ=E{vQ!_z=7I_7234(|Pn@RA1U*=7Ha zhn5aHHAJSmf*6VvX>Py?L#H0=Fa$`TS$KN$v}M)(?PJ$dR`kI<<1^gTYR?+Jb)v6F^n(^NXfUDviOs zjeS(IeAES7$9I*Dln2E(BV=@4(v=sf2}Fe6y&4%`#!QK8p84L$mcw7>%WK`Po#YF4 zB#MUss@Dj6GjkwPtgg<0Ml@<_GGh{BACg6_s~SQm618%=>{`~PBm}yVX>fsi&q2QK zSCHF>eOb~^f4y9(WbccBa}k4&>vVTO0PB{hG9dAO%d+^kH6CkNsc6A$2}y$OvR0kM zdu657%i~r0LMuWBgl3P?<>~ZOn}v>1`JYJs5~gl%T9#-Ge>%ON8dHmu-`~>g6-xM# zp_i>-R<;vdCSkeh>AZYsCed>s*L>MWe&t$liOvwCy+50uF8zmpZk?(RF|uF;-OaCu z<7dBJbSEB)a(RQe3`9$(vDcs^tb@4>-_+wxU;(o<%9`UNCHvthzcZT74dcd0s3J1X zgBgPJ-?7@mr5KL!35Ar7i-=tbTMA~O%en8h?)cj`c#njPGG$)x&J|)GUWe!>)x3wk zb5v*yZ5yR(=V{gY5x85TURye}P;(mB3c(q38%Jg~(xKm7H8tGv)%IBgM*xzxpiHYhBEHzp~Q zx8^7)#Yj`GgeLJt07o}RWN4CxB-=!p0|U+ZGtJ(7_sAqq;AqmKwx8se=7E*xvTUbzw56XfY+aTC>PK zyOX$JfGX*5XYw0!X(wf`wA`?ymLu8Cd&a4iSCTk@ug4v=2U~?j!J$ge#@$6!r_s8t zY{-K}1?4#^bD*Idy`(v9OQk(4`1THSEdrre)Ky*fil8VZZQp=6`)3%} z4`Z}Fp$tG`=O=r$#Je1l#x#yN$)83iam)I@5K0=*T*i8TQlItA zbMu6E{^b#DRRL#J)p`z-{%l1Z(Ab(54%xr5pObo z;rW>*b#py4c^!#Nw_7<}4YD)Sv(C++cNEzicQGuWk>b7M*rO7#7F{k}GHnw;J(rKh zR-A_6<;~kDP006;1t(EO`Poh00b61iH@crmRP> zTmWf(W3~ZY)wgBvS>4agXgE;}KmSxOM_(N_I)4N{eX}`?^1w>p75(|*7l(ZmA{U0h zgEk%!1SV&+8wiL7o{wn+zJ1GS(b<@s2mIQ4k}>@p^k?zoEQ{D=8>`U2p8MRJfP z_6BD29OA~^?B&oj=dShsbjULEn&aXf(w^=M?WSu8s3ZmA&H6_mm-r-HFM=(b8xx;p%G=iZu}hGyu}AN}(DJT#^u zEyegpU%xhsHJ7Jdgj|;9}qfzAH_!qvCCVm*u4Zv1!fq{>1WAZ2TbYRJRBdz z+Faow{f@9%;Ap7;UW7bqk<2*v6+-+am5x?}^1NH0#g107EZKzU8IN;>sM+e-+RM-? zo(^+c8l0RR`{>uRPzFZ13n08?I!P;&QIpE&#&v#=ma&*h%fR=J5&2n!+o^OQ6{!q6 z9oRS)(e1p^ep>S^Y;LF+dFBWb)wg3zq=rJ0+gjdqngxi~{jcXFqtE=*{-O!11}$oQ z0iIO_S=SFQYTHgh1SML>stVLx^+c`Mm_E9?A-ZpEyymbM;(`MHEpw^Y=*TCw%xPm; z^1k{nQb%$rR%bS3Y2d*IKwkik*t8_=r^{M$ZzDow0|R;5p+BU|NqW8lkZP4ZU!VIiHTgxXsFvedG4n~ufO;47XSQK4G5U~YAAOt?}M2pF;I}^OHiNp+Lyeg9HpoHJ=jLw4;C zg8u8xL2m`;4_1~rP^YN#%MON3O3dn)657LN0Y|N~s`Z!zCZzaHU%T9qJ9}+y(V+uY z{pXUz;Y;;u1hw_)L-mxNC0%X5rG1d&*&}oP{FAADuNN5Hni1ml<|EZRJ*J+hVFE+S z#buQH2W^{?@y zY1Nv+uq90WD>xh~82fqIb<6)M>X%RvRWyKl5`k{b^((N2%`fNI_kMK!b>p&yM=9Wn zS6h5DvF4^4RX>CA6ThQRHu?}>Jr~$Y+#r|D**(m4rCwwBIBR_fRsTb1iE^*+66z|L z%Sss0HnM><^pxu}nR7zKAkRf6nRWdd?e|jg@%FY^^oLmfWz&(@+;4!`S3}+M}8`>c*Rr9PRi(P0?Sr`ew2^b}| z9*haZl|d;=fbJyj4q-hI=8n0Iw|&BvlvGKnB!CNj`Ka9wk^TI3A!O3YtwSgokgc>(0)jW(Fli%hr;1Ckn)l8$45dQjGrvBH0 zAaX+r6;x43iH4RvcXhQR$6t~R)K#ErFhv&8_L4{UVRR1fkLX1eQKD1+>mzdLR-VL% zSzNf$nE5NlEaf=;51yW1ryIJ3xVb*ToQWcGAOa)5SJ^_rUU$3M5zFp37t&?T4|ZR! z9Q2Qsm*_p7cC%gd9*+A1(mfwL2G|$TmU4HfZZ`XA|32`zh5_G?_lnC~=|K2~{P=Nu z9s+}{x9Cj-@MzWkmq%|+n5J!8e5lodkb&1Ro0(s7z$osK%~(ZtsXlX{*M{%=KBG}j zPwgz6N_ofmpee*HaS6-s2-lv%Kfb>m2U($T1Y0uwk@>l%^sR|hkaDHUYy^${NLjDW znF@hY=}vL|h38G;<4*AW!@CKrmDV1|EuD6t)zRk&@+_RD%qXF^mv*yJW2T6<(b}v} zen6Uwzz->4=fZ0@lmMDxm|;ayfbOshaDjZMrP*AQXE!>hf$sg--{Bygl1Ykp0vVC$ z#ChYOl(2B2KVM3Y=!|O5oJ%MdhIL0TP7q1}(hr#KY8s5SXY?#a42%spatnO0c>cCN zEd5&d6Hn8fVR6v?1FPpn>LM8J*Q;Bfc7caLj^F5Hj&|w<5r2lGjrtiG5q}=(&$eaI-O8@Lq~eY zsX{>ADzZ;~C7}-U+d5qnXV;;?AYQofbFc(X%d)sQ%$e9+M{ZV6p6GlrHkn95X~WK)qw9W6x?uw~fg@^v0#5X#0rcJbKP>64v+Z2vxm<7X`s;|m0cDZSqBXPM%e5=9nrB1M8omY z3IjPq-j-e66~v6W{AO={F+~eO!2#3UGL$HD*qJ+qFZu9?R$k4|n!-U;YPMr*VVLlq zlY8G6&nY>VX>RcKr62Jb5%1(mLe3fVS*ka5Wu#pTY_Oeki8`;#g82@#+taRMptVhh z3HEk3B;YYp4Ev=sFN}iR#3$8yknxu(636dvOaV8Tv3&l(tmOwBmc!{~p$d=hX+qk| z+;D~XZ|HIc<4)P6$YuSQt2Y>2YXcbi)FlEgs2M6&NVZNsttCL&jin6IZH<~PW5`7= zQNPf}#KZ(LaZ&w{O1T*SU}8LGhSQ70LZ|U&)>cFkOsz?an+n!q*K`8()tH2HVBLrS zT2mhW_Iu$f({Tj0x=>exglXnMH)UltTHB)%q9xa zWJa$D+(4mKv4SZWKLM%KlwE^*CPr9_av39x-ww$XKn7K-@K>L|wl>xZBY>**j^Ojd zwkR=ag<-CY4jszVo5;4`3WNp5#kl6K52~)J-J{r>T!oR3$Bo?OZC13YVg1rv7*c^t z7^`0otcTo?cIk;SC&WFFf_;``LMrlOTG(nk*A1>IoPn=n=I4~OFfq?XR}8q_@*aPf zgZ$@4*|+1M^BBnGEhXksV<+pe0;rl%zyfiUQ`t{D1tJz+SQWCblQNbtqz*(hEm@OE zI2jD@YI|-f12K!P&Xxd$@f&$s^lc=ild15S)K@MbHBM*zhY4VPFThZ7hk;NBHnLee-v(@S!&BG5hL3HhK5Dq!IRS`=luu zO*3&X-Fokr*L*1#(4V*B_g4^_f^0wk^+tsuGop1u^}*5AoeNU*n>|P#yB18>I_^(m9S&O*GYxs zGUr_?E7^K!0aWBsd~l<{_q?EQ9}j5&YPFxqeC|RE7-%4nOe#?SmI=Od6g+u z)r%gM4kVx<9CHDOiy?d5h)80gny|O;pQ+^SbX0Vtp@7;n;K1)le1|2bbL~eFBsyOp zkxz@jJB>XKlkhS>T`M>PGmPKf>m%Aa2mVq?e4m;!Z$ML>p5t`~P`-2*8C4szwG@K! zDm*(7WxQb5-eyE3Qwb|f2V$W^TLOEC06{BaaErfDFKR~mAz*dnsl2dk)Ve^7ggFg4 zd^2)@4=}!&;r{S$=fJ#?on!0#0gJR?DAfapwSMy1v;$Tmtx1rWQKmtvTIG z8MTmTx+eYLA$g-n9@P3 zVU%X|lu|&=BQ~V=4+Z3U&S(Z@wPCRRRRS6!_FH0ZgMZ}s_L2~^)FJS>hbY?L@)e~auQ1D4|e)L&@B z<475XT!U6I=D8S{_RCBP>`va_ncQuL+==Rq*a zGR)CY^vNsREYu2RB42w;WW{g4Vg`0Zzn_xfXXy%EoixaiJ}&|^(hHV;9HLW>`aN_1 z9ru2JvQ=M zXW$lCl2oEuJGq8^mPk^s4wGE<$Re2gku1gy?MgYJ{@jG@k2(^i<&rMU^@qKwj~gTQ zYq$bir~R3{U~Q3%BM~B5M)jh771D%CbDmL&1%W0ee;IA5@fTUMMQf^y0<0P*n{dfs z{bPkvnuVh$6}nz_N!)d>FSbuyk7j8fh_@?JxfyYTA^+EkYF*KJ4~75`BLK6AuM#^R zAJW9@JPurgDTtnSx?H&-m@fh4zYfHzN zmzkNHpp&#LlUyUUVAVo5-CbjlGo#d4k$WzVCa#TOmMT$XCD9Zx^yUT2Wuao#s*e)! znb@qym8{3}alYo(n}a7EdxhwjS%oH{6AyjHr?>fXbtzi|f;;KMrdK1EUMA^~`S7Wj zin&LLG>;BbVbROmfWx<4ttho~jIi1#_B;Gh(-lzlgUuYM`uX?#o`Lh-5oR2E4Pa&* zUT2h;k=-iwt`+&Ps8GNqP}VYatejSH=B$);C7Gk0@}~r233VMLmEnh{;%YmA{%mZT zX$84R(m1G@p}DsD`R(Wi5oGEcH@YIQi_I2=ftxRIjV@A6n-PwLN{hG+v0jSj>biO zeT@FmAPtQpj0VlG{JlP$1r=`hT}Rv^raAI%x~BJxeB+ySt|n$yFS^SKwt{MRHg1j~ zq2NmM_4>?PXq|W$&FceTUV#p#!Y(X_#Nn7WVI*#hmxOt1920@Zbj-sa$v&xm;KmEe zca-JZ^5+%MtJ&0lO*lbwIoI=7^g>YH8{=28JWyVS5pi`ZllN)9{7nKVVB=nv zM1S)sL^#eiK8Hfg$w!}q0K+udO|(Hy=0D{g*QBUUk)6Fe7O!x<4G&`(WLB7$gu*o= zHBW-me;f^b{_JtmMU`nu(A0Pc%u{k|qzwOLw7gh@eh0J*_rt`e+NtI9G12s6yY^n9 zj~1c!6vy)<-|nd@l7M&|6EIgf2>z^bzSy6{ct{1N!#5*aZq2nZGPreKXCv(~Fmi11 zEDpYzf*qXgtrXx0Cg&ptL{Ri+OHWfG>lfHZD`1`SRQ9srzp0*ubD~w^A#ua<2!&y_ z(&&T=TJ)#jT?GfD=d-6NRuXKmAUoB)QGk!ooiNyWiHq@K%tGTq7*t|mReH&RXpm}O z&QXM1QS;d;-a~CkoQwibSeI(tCjEr~3 zC4-r2ab$@`FD82JdVZ1{&SR+N{gR==_jdlkI#(8>Z&w2PeMJLXdDhfaIt^cwVtgev z<*0RWzhcqhOeShxPC_m)v0~D?3D~v1JCUVJ?`s7{NDNj+p(qiY+E?@qtmQQWvt~(w zjBSqL`fEfSD6OM)-Y~wy4p;+YiFe0}!k(eI0!b;4A<%TY9`;i*HHLgB%xF|CV9wDx zBj^tbrW%zhYb588lLom1aMH=2-tlZCbeYwbUu%?P6xqeN6{qy$bzB;BR5zRVZ(k2MBwY1HL15yXFGAyUbIh+m=Rxfiq;QKAho4&0 zz%FQUyC^mpLo)OIvLl2ZGRsoJL43HyoM4!QlbG~}92%97+H6ZI!2jVh8RiD2rOd{U z`}&_Co_}0niv5_d<%lBAIKfu1M@G6WFfqzB!DFoh9{D-Q4TpaiCIcN9+nf`td$+mn zq`Dj(eQtH!7;jlT2LfAZ7kj>Px>YzBnLVv$w?rI?*L&TJFNevwU}kyYz~6p6?%ggwMB|ZC-}w9Y_=U3({1wQ@XV0|t#k2dtg`6HR3iqA4KKlq6Ip4h< z1pHsVBepWArwGO<3PM#YG$bz>f0yazoS-us+KL}kixuS)zM+9gSbqCPr=hB@&Vj1q z%>~nH?Kh>Ye&hY=QlE!98_!At@bN_Z@GE}nL#riL0=SLivop?EsPoj=qEsCbv!L?G zV!QG|!O<~th$6KCaONfWhLps;sYVOC5OrQa<=v5_rkj?@jdIIuvaFK>pRsBssMzF1b;qm7*-of7Sd>28uz06*L|JuH`GHU8`Rb6VJYUu&&8mM+@)yx> zIrn^(lkQg07Vrg!PDk=>yQ|n6Qe^l;%loC_0pfY1frTLg@DS`dSNcRWMbZVFl0-ptSe zyzZ1lJp3fU0?cLlse4WbU!FP?VC<>Z^aw=+PmxFEILi4GP`? z7~0QR-6>qV5)WjbMG=9lQSA~vA!k;-d&5YM!`NgQ0w(5y%=W9?QV-g5vBTs9m9Yf-Wz1)%&&rRfmv4XV4Ak-Ph=0&9sDIh(O-fFezL= z&MesyJGx{7f-(UkgxaK}oIs=i&Wd%TZ!d~p8~lDgkvoJuN+5#lLk}xoyn(Xn6auYT z2e&dLtKW0EMCx63{D>&wr0~COPmj|71cMYpJl7!D`IYIL0E=5n$`qtt2j^Mi^U>eH zrt(68Qi+8Nd1GYH(P}IR!X=T9fTVU+Itt%kNl0$;PkXWYLHeQT8YSeEI@--8J5Q9E8 z#CXD1N{QD4XUjMb)h$-^NXf1^w;L|CW)SV`JOG!hy?u|ukARKe@3H}Gg8O&E#tAD3 zmo^ES2sgveV_Qyp$I2ui;9(!eV$4lll zGxC=(UeV}QTTcUEM5I(uF;h0Z1f-!gqH;{Q0vSB+kW65a;mSo%N*_U6H4QaRriY!x zMlzvfs78_?h@)8rgI}bvxnn7rAXUs_r$dx_I8Nm!A{`|S)HFmafvLlAd%JsoTqq}z z=xhV79|d$_18gF1hXChO#pMa(mo-fw6Uo*&leZn)u-MG#DMwO@`C_Di2=f*oi=u-5 zPV_DFk+lRK<}#NK8KVE7mb(-w|M1gnrbRqHLXJz4bCE+X(gQG# zlJUneceB1ce0wFL%nAe1!q~dwHI2K`R~rQTiF%(;`^ZP2o~R_i=Mj%Ip_hK=&z?Ci zB{Pg!sswZ(YmH!*LbuZ>K7!tI8373tj!WXN75`^iFJhHEF?z6kGOqf0ez+^0fPs&|)mpV4KbfUm3&B)fPC^1#M<7AD&a zT$f3qJxnf^eV1p0Y+`5guv(Okdr9nRa2UD2X;3yGBASle0Mz=E5LTH-irjI4(0TjH zNb~GLjz5K-CFf)+(FH28bLy65_*84QO!Z}tzTwx+2$)IcicPKP@}CQa#bg=1DPBG4 z72t>3e}Dls(gQ;V4wiLLCmDK7CEQ`d_{#FjXkPF34}fn5ZGQ_KnEQ6FsVyO|Lm+&^Gp8I6vpUX_ z)9&b#!Y7CAek$puq|(=9M%yg@m`lBVKj5;F#-XDH8I1*H1gAyC#FKISdc#K#v_AqL z{fEy=4pSD(v177!5NQG$vh9zD1S3Y=hDEdrAa~@DP*pr0(BSfh9n1d3@O2e`%;eaU zFlZ4h`VlK51v%1duB0~zK=neNG!&M2_gMP{Bw~=Sn(WxEim7jNf=e9ujv1dG4ZqR} z><-yI#q_rGx1dM@oKNafER!75$wW+(jNHHRA!~g5%ZIv(CrXi5q4VZ>J7FNb&G1ky z6`bb-JlH|&&GxGMn;Mv+cDAlhog%Z%a4$5_pJ8Kwdt2j=;= z%Ysh(+jwyrRUdF>D`q+{MbXx3Sh6WowTxGV-OEsefh=O9Jom?ET2aEg zL`4Jkj|jF`MSCGA8MYcq9~OWnUNaz%=KY>*0k*H!=Q0m6Z<{e`vU{Qi*;7!B!E z(s@2ZygV}P%bAvx>D-q@_kf)k#JN`^u*%@qo-m(tlGeIltpB%ldlH{k%edBeL z6$Rt_Y^D!=@8kn2O%WVDB`pNpUODe%8P?w8u;ci`I^GDiifh?Bup@)$BB zX*#om-hjxjj(D|6;AV}^jYAOg`hg*k?TXG}NX&9=1SixX-h5E!J9DB!zR~21603O& zD<#osKB`qbkRwIOehs+SW)!L7vP|=2n|on1!2D+zvZw*b1F&kb*`_>zA}C$U>6gDy zajceOvcD{02s&qlCI&L7yjvs0ujvj_H%M!?bUdzo=VLrFyK2Q1`xL}n6<^7!7Ltmt zeji(bM+6RS;o*Lkg_`N0T~gGjjA-418%B*QYQv$2 zAL0oH%pvtA1)xo17X)*9nx;Y;Sbi_I@(f|JH;ZIkbR0;Bz2(D7F-4~FYbM0w`aMG* z04XTFhiC}bj03D{Tt9{p)6%S0Cz3Oh4wVqr)<&GH&TDRtk(OmNiSrrrFOu(X7hnT3 z-5V5)5~c915j9$d0RE;`>LOuHB1~i{(MpDAh+6y$@N=vWeN0K=e!}7q1#^vLa;9XL z53i)?9tQ<$%~IbIG>)Mv*bCZ4vQP#4u6$?0#rlrIE9fEmg48pW|NT~QPb2+j;!rbA zjBdhvMe7fD$w9mpovA3`$!`!oj#M330c=tQxS0~M#lWKG{J~8B6o@Iqd?QT*Dy+Wu zI^Z-yaj2$$zPlE{#`=k1b$Uwrjiv2pFlKtNaD7U9JEr zD>M`;_sf}aKJqRDj|Y3Wx6<*-`vgKcf+8Y4&D>!z{ZC7N`sJvV94H+HGF^JNVAGWt z8*9d|In#7TR))qR=^?fqFB&{hZr0*@mx;kB8Sp16=!7uPD*=FD02lxv0ALgV0UJP} z2C$(3H4He;2ZhqQTiA)ziX&jd_oE1ckFbPQ+U#z-^ah95l6dM1F%L<=D63O_!3U*( z#>@wBi(jocyQd%i)pd$1A^{;N@o9R?y}?l!oZ1|I%=F6cx_iH?-!T>N+>g$y#Tr$x&p**C?AADA!Wt0f*liOwU$;kQ1(ydNdt%KkR(W%cE&ni(5()3??hzi7ejndrcRm-9XME>e&HJ@d<>60Dmmv_k7pTsqyjc&A?MWN7VN7fl)VaRTrsOJ~~-8bmq& zt@vEiu@XGyN68!U+8vb~i%$2NBg)bhm^due8R4?Nn8f@K#zd`osus3u^1;mPmxARe z(Ix;)PrUbEw4~&MHX^7XSdi#y+uYC(9dvJ znlb&+@D(0hm^Fw9)Erej>riZu;m{M^!3p}!?tD}(8T5SX>Uv`hF2XSg733aD&oV%e z>n`ihV%9h=f@ZdyGH7Zb$SRpPoh_esf0|6*Hy1LqV#w<4-n;T%@?1PCS@yJZQ3rit z*u+Bbnl8eJ=god|;+O(?*b;}Ap0#1L;=B(Az|f)A=hbEtmGukyUI;PKXO{8!1`$}Y z+{H!VYfYV_raGMdH}|OMfD>Nj{BD^mXMF$J!2Q!LdSA)IN@TNYV;3!zf%=ek( zCEt>1FQr~>rN&d?k9GcyFrq#?fLqhVgCEO0_|p#ndgyx}etuExxhPt_xol{Ea-r=q ztrBGY`8&pD_Wclc+Ka6;*5a_VMLg}g9#>WlU{bO7uU4X-`R{a-v5PzS@nG0u)1Ttx zFwHd<+ew~vvK!ry9dC*zSAJqZ09pJIQwVlC^UuU2p6UH(cf7K1%l>GroQV_$RGyw{ zLIKb!V*|P8LbYp0A!UF6fZ5s=Vg)VRvSZ$VwDZEEfR+vvQnr>i8x8TD;|=q|{zyFv zAz-h*PF(vDYmpd>REG_p{$jyDxydLe93KZtDMc4fi`nj}HNZmdN_CpBO)P)iQt~sC z)9ugB6*o%E=#fHb_fI6H_s=kFW>#yathCs!-b--87Cl@|3i>wsq%li_0WCa*^+V-h z)R@iVZbOXCLUx&uG&dMh;jdo<|Uc%_K6~?WjI$3k`g5qDJgVU^h8l zi*X$d45u#e+um;A$WVuZr8~KvCcyxt*0WOT_PfV$FJ{5tXO7s?K!$0y3wEw^+gT7e zZb>;~nnEOhn@R%QX}Do(Ejngq62_%X+gz^?L^e50VJBNw_8_ zc36kL9(u+=UaL8$D5-pSZMsfBubYCpIg#^rN)C5%MG2L-ea!#FA~|?;nQch@g_A!R zbS{xkbzzkr$am0?my7&|Sh@3sXaCPd2P0>~Z#^z4a5+)c))J~8BA97y{Nwk#JRmEx z)4^xn@RD+}t88m_L90#8s?ai;FjfQ2FQb0mi86ZzxP2tn@ew4B;=4*byjo;ESo~ca zf$4H)@_@|~IQ8Bki3(#j2c8}9>B$+GqXq<2A7QPWiCO_we^y;1AM4(-)?H<|G)5&6 z-Yc^cQFY9h?PkYt2%k1PVnbn1?+)H2Uqs>+DJE|Tw&Oj2kZLqG*-{M)9iF4(7!djj zhCTV!G&H2CwxCO-1UWCz{nr`p|Md%u{jmMzzv&T{@l@_<@ISBE6N0{)YU4`yfBN(f OfUKm#yE1Y8AO8b4-#D89 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step7.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step7.png new file mode 100644 index 0000000000000000000000000000000000000000..647b0b75574e083f88a219f83983af9992671abb GIT binary patch literal 11636 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 XIXSPy={x5C?x-niD^)zOc=`VTPIe4* literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step8.png b/en/docs/chapter_sorting/selection_sort.assets/selection_sort_step8.png new file mode 100644 index 0000000000000000000000000000000000000000..0cf6653e793fc29b18a6a00eb62c95232f8dfba2 GIT binary patch literal 16896 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 literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/selection_sort.md b/en/docs/chapter_sorting/selection_sort.md new file mode 100644 index 000000000..25647d341 --- /dev/null +++ b/en/docs/chapter_sorting/selection_sort.md @@ -0,0 +1,58 @@ +# Selection sort + +Selection sort works on a very simple principle: it starts a loop where each iteration selects the smallest element from the unsorted interval and moves it to the end of the sorted interval. + +Suppose the length of the array is $n$, the algorithm flow of selection sort is as shown below. + +1. Initially, all elements are unsorted, i.e., the unsorted (index) interval is $[0, n-1]$. +2. Select the smallest element in the interval $[0, n-1]$ and swap it with the element at index $0$. After this, the first element of the array is sorted. +3. Select the smallest element in the interval $[1, n-1]$ and swap it with the element at index $1$. After this, the first two elements of the array are sorted. +4. Continue in this manner. After $n - 1$ rounds of selection and swapping, the first $n - 1$ elements are sorted. +5. The only remaining element is necessarily the largest element and does not need sorting, thus the array is sorted. + +=== "<1>" + ![Selection sort process](selection_sort.assets/selection_sort_step1.png) + +=== "<2>" + ![selection_sort_step2](selection_sort.assets/selection_sort_step2.png) + +=== "<3>" + ![selection_sort_step3](selection_sort.assets/selection_sort_step3.png) + +=== "<4>" + ![selection_sort_step4](selection_sort.assets/selection_sort_step4.png) + +=== "<5>" + ![selection_sort_step5](selection_sort.assets/selection_sort_step5.png) + +=== "<6>" + ![selection_sort_step6](selection_sort.assets/selection_sort_step6.png) + +=== "<7>" + ![selection_sort_step7](selection_sort.assets/selection_sort_step7.png) + +=== "<8>" + ![selection_sort_step8](selection_sort.assets/selection_sort_step8.png) + +=== "<9>" + ![selection_sort_step9](selection_sort.assets/selection_sort_step9.png) + +=== "<10>" + ![selection_sort_step10](selection_sort.assets/selection_sort_step10.png) + +=== "<11>" + ![selection_sort_step11](selection_sort.assets/selection_sort_step11.png) + +In the code, we use $k$ to record the smallest element within the unsorted interval: + +```src +[file]{selection_sort}-[class]{}-[func]{selection_sort} +``` + +## Algorithm characteristics + +- **Time complexity of $O(n^2)$, non-adaptive sort**: There are $n - 1$ rounds in the outer loop, with the unsorted interval length starting at $n$ in the first round and decreasing to $2$ in the last round, i.e., the outer loops contain $n$, $n - 1$, $\dots$, $3$, $2$ inner loops respectively, summing up to $\frac{(n - 1)(n + 2)}{2}$. +- **Space complexity of $O(1)$, in-place sort**: Uses constant extra space with pointers $i$ and $j$. +- **Non-stable sort**: As shown in the figure below, an element `nums[i]` may be swapped to the right of an equal element, causing their relative order to change. + +![Selection sort instability example](selection_sort.assets/selection_sort_instability.png) diff --git a/en/docs/chapter_sorting/sorting_algorithm.assets/sorting_examples.png b/en/docs/chapter_sorting/sorting_algorithm.assets/sorting_examples.png new file mode 100644 index 0000000000000000000000000000000000000000..aec33cb1f9e465dc7410d57d08c9bb65604d5d6f GIT binary patch literal 16395 zcmbWebzIcXw?F>cU0~^!F6mC`5b0F9!4(i`kp_uHr356T8$`NWa*^)t25FG)`l9d8 zjoUIb%dM@g1qB6L$6HOajloSpS$*G3O-;+jN@r$f z27V0`j}*zv%YXXxX=rHZ`1m+?Fn9fMyguSdsJXeh@y+ocKYq;b&X<;!CU+-0IXStyy3X#*R83TV`SK+^JlxjS_WQv1 zz`(%D@rt6NqSVyXg@uLX{be*F#1H^T1S!fq({i8LZSi~1E&xxz%_GhO|Ed1(3hZnn zo*{!99dZz|h#SXj)g}83=`ooU6l#Z-;fN|289)@b{V;7y`7$-+LY>Dd&;j9trvF`6 z0B{g)q%}BAjzcWm?o}Zs);HojF`qSFeVp+1B;Ve;!0zd7H!IfHZQYOkH{2@kebPBGUNc?ffP-L%*6 zjhgm&1~sLdVvDVPpceVbu^I_YRh|j*ukAXqMU>LZX0XtXQG$7$ZN|R5O5O0gaN(-w zg@-~pxKa)1OA-1U>0LbB--Cl%k>SEFGK@1G3NB`+ejITM(_T;HY!kucc}{D_ct zxKMhh$YIBYb2D=&2Z+mNR2T=QsB`PV$4F&hbm*0Qm17B3u8JKcZ{fIrQEXV86Z&H$ z4RXc~OwfEW&B`2#!>cmjdtrPb@bMRYoX&~fiN`o#%SqKEAQ#ZdZ~w^9E(^py$XIL1 z6GfrqAGg*;==n_!!z!o)2F2rBew@i&R(}ss! za^DeaNc{4b&|5wFkDQz{REjn_AEbyp8zZh$Bas|*E3XtK;?+RIKnXl<_IB)m)@*v~`QE8Vfuz-pE4NpY$pcjqC<40Mb-LE^7NidemdxggnTf-Eo;1H%- zRwFwF8@S$GLBfHeNPhttExBic4O~F?(iR~9VI+>dBox<6IthTQ=1VaeiY&k2+MLU4 zM@{4{B6Ekx|11#p$6eup^K(dPD0{sw2F;k~WArJ`l4!JF->58BE#O(A*f%CPzaQij zpo&~mA4DoGIpiak6s$+f1oRvMSTPT3=dZFbw)Pykr!a4H=}Co&S$Bz?WB}uFDzbyj zBm>8!3x}NYDI?rpksTX0$&zU|yNGy?=!pL)cvY)T{?(QAT<646^>CF~xEl#qKy{T2 zv7K3=)_Q;oJ-`jf04*UHj*n(M11H6TIL}^^avCswfkR?VUp0_}SY>zG-`3Wr=WeV?}YnhzteK!L1g@d>uk?v(C&dA?(%ksjQEB2zjv=vtMSKqXlX`5Gm67_=%!l|jpXcW93iJ*g%Be;0X8EK=aDs*QT-C6TyvaYoG{-d z0k}t;NcLhkW7p;S^9Z^KrelS%OSI_NZlo?O0&KU*akRghCciv+!)-TDyXV)zVftu4 zbjmzMuW$05U!t?T`{Jc;_k+ z$*`;dT(!7IL959CIO(JRi~FV?u@%7TA({VsZRlwgz@X*#*^u9XN3c6ZkunlRac_?r zk{jjf$+%nfPW{SuSpq&gesGGDK|J>cqIdRDq8MFk6|fHGcu;^K7~`=C3a(y+bItTq zD&tWULhIMj^G|FqGnK6ufh$mwfbOU->Qb^1*%mJc%>ga~|3CyTpIQMz>Z!$nxlr5u z<8fl}=IyK>v^Yvebb$ig890ay+$oKn60;kmoO zdx)2t{tqk~DsV3Csp<1+D3R3MrYlAvq-Qrh^0YjovmY3!BuwuB5Xs7b@)g2)w#>3W zyFY#8aSA6ly5*xtwFS>c2A7+7`zMZ18-*#ekNx!W)UC8*cWKPVG}4eAl+P(6&niWY zEx;G9VpIhuncs*hH9!6nIyJ+xu;b~^ztu`=m-_{Gkiy+~aYA!Rz!ak%M$B~7jGeo$?HjacN z3vkzKab&CBqDeTle0;A35EfPCHmu^4H zTp<(T1lfvwewvd=v@U9d0E}kiEzC79Q6&i?V*a1yN;5IP_^enRJLzP9i&*MYw> z*d0o$_Fowv7)iO(zmP+Vl7);nC8#%(Elx;((1W^q?kraPsK5_CpK&rKw1I#JK|8sjjXNs4)g7i$oz^ zv@c9ouws8wzv#|HDQEdm#sfothF2Du8%C{QTTDwd8-!{QcRao)YXfxHw~@(5TwiC_ip3?C{?1^Xxnt`AK*fY+dOKERyI z4WuUNV0i2H4iy}p~;odin;I9s9x)N-p*{{eLeI>MUpxCe};(E3L6Fuv{vDYoq7;J|Vo zI#|dfD8*G-q@8-cF+^N0vIECPoQ+v>fE?C&*Lx-4=Es7oPN4#X)(!V`WSDRXk@6(hpXkur=fQSl8Kb? z1BEYZ05@!egBTtQ7XbtJ-yj52gEfzy*F`!00&8i+e{ zKE}-LW1=nDhll`_-x^_RI9JV{0{A*?Hk~X`xG0J68h8j_4GM$W2Pir8Yk<7D?-_qf z3fR5#M&@y9C?x^5x4h>g9s$abC9*_Eom&iwUxjre)(lIvbNr(&%rcuWgIw7IU~P5{ zymZvC9qfGvZ`)$%#eW!oF602IX%*_6p8e#VJ-`Y3mbg8nhN~I)ZI!7Emo;O;!1JY` z`6*xg5m4)&8aw_rX@){Wc!^xd;)OJEHXg9En@zc!CjMS^*{}s@gM3Ijv7s3)!jfb7 zOL&Q5QiYKx>pS3p9c*qeuNm%|Nn?Qy-2nJn=*J9{_ICmb0X;Hchx<{5C$i9`HR2Y) zo*v~!f$<`_Ca7}MK7Bty-BN1_m^u>#Jm&8#XW+p5tJGPf!OW_rmP$-uVL2;-7LKz< zQ2=#v0x=P)NEOBWQR{Z#&>H9f?7~w(?Z=Q#co3Oa=*Zj2B2X*-T43+h@vi;`>V_1^ zorJx^$MM;Zj}lI3ecy+8|LVix=a35H<76cOHWyH4VXXq3OV?Mpx+I4Ik{J`Gf7F4D z7y(FHjRv=EkKtN;RWxdxL4~jder51Xf~rkzO^{a(q!A3VT*GER&@Q8l)Xcf5Joy`2B<~N*?TGzbCO zE%)^DDY!=~20d@7JS01lg$y-I(&^&k^l&7Cnq5W#=1GGWC3X)M`yJ!}f-n&S*Y3Tx zjJ?e%7vFM&iY{$YLxPGicCk>ezXPR^#=g|092mZlM2qnfS-gGn&wK^I;LgQ~;V?Tn z?Kk9`08$HUh+@e<>|8%)JONPLGl=SKtZUui@~)%(?Tx~;0GES62pZ?KDy7O`wgVR- z{B8+m&svA%*z1{C? zYO0E+HvFp&`B{Rh3(iQGda^hcHSXR|Z5r`FHRwJO4&u?k3!IwSJ+HM2X4yagSjj%a%cJ)7mignJep=S&KiS5ebEbi|R| z?ordi6;_^P4RawLaX|W(O&6a?;?YBgEL~`wfYaUjJL2RwaHC`bbb#c-i`77{xr<8i z2g-gISJ6Lz1&rCGJZ-Fg%m#qhfT6{axU@IMn4q__j?O@4k&Ot+rL z{H0{(0x8t%z5FR|P+00btZ=0X`qfM~SF*SzwA30k2{n~b(it=5Cy+ZS;_GQAts^QW zeF#*dOM~D#y{*$+Z+sn|>id^>2kR~>O-G354K8>o-`re-3@!r?eHWkJRk4`(GuQ@~ z{CT>y6ugv{zkqg>y?1`Mk9676yq!X`@2)T|`s^+b9sV|Y`~?=GWL!CN;popArundj zF&Ctf!p9Aln=0H;gs~xyagoq!`|j`Sdx{-hkk0VMitB!j{iGDxb0=hx=1_+Rs=+^& zixdHuFPE^SWIjfZwv=CWT7#9WOqztA*O;F4g>??l9n>z5)a{0a^XT15T^z= zdw5uO8+kM4d{#c^nVjL3BZxD>08Sq88BC$d;X1+KXhjgi?t*p1hT-u2sB8me-5?(; z6Br~+x5D4SPl%TN%CQDD)`PRfg^LSvPiolVBD-e;(qCoby0TQqtXP^JL~E}7BUV_A;e+C_gp?=NSynQrhN$d) z02^I;+1B|bTK*nSNR&+MdMfMQ6@sF!5SKfzVX2cvwt?ZG{fC)_K|YRWqa>B?p!oav zhRZjR%HMJqqpYNyhp~KOj>>jW*7aGjS1^`H7oMT>-F~X~Z(s@OyQ%1s@|5w8{lec# zs~NMOZe4GmuB=7v{LyPJRqZ$BDB275U@x&R4zXIDTH``bD+Y;llFqY%1;I^vIX)go}gF|2xlhQwoLt&9zD1m4v0||99no-txag$!C2? zUD>RtkpwIgr}-NMNBPUCsRh%}c4T16%p*OU^(Q14(?Ie65|na(kFowMzB)L;Tmt4g zSQTXD-n+G(EiSJt^G`WxCRv02*mkox%K2QCk~P2Avu)7ygx*dg_LJNX#+g+oWrMGs zyO%dEVUDuJu7gnmEH}8cnJ?MCap)qmH!EemoDhkLdm(=L1mYPr@>9o{@`PaxqqNq8 zo5(I~U!zlV!0UINF{bQJ3zcFIp#7Nk${3Ir5J`K%Ul962I#{@+7Xvm!(m4mL_iYr- z)*KdPo~#9>XP%Nu(q4rCWGN9L89sKOUL;-LvK4MvSBV7V6ho6`%@;%2{p_5tvuDq< z#$FW^gjrv-uO!yIY6AyEn#cis8%`6(biDj{WiBN3x~lHO#xH|{eDDy$E1t`vFK#+LI|SQT#QBvm%mi~+j2Vy-*EG=Xsi!d|!mrNeb^n_Z!*@%#Pp?B!tUBb^-R{`zH%&DG_+p5ZYd%h6ND3*+Hetc0qgkOf~u) zFPxm5frmA~KM{LLE=p-1bb|jLz84M<{mQtp`X)Nos{N|Uz(WL{T4!k9_on1MNJOKO z`@N))nr-F@o}_3Kbn49?K+_6R#H?-p!E19mDoMdPh%+ZuDXV}j(5p_E>9Qr=c+Lb8 zqv@~;B5N@6(u)hhTZHr_51Q0iH0FN~w|_N8xm{XqgGqyTJ5L3(Q;Vfc7FACj7#-AH zBB&yhmI3*^RO@u(4IG93 z^x!EL!Wj{GfmFs&SJI0T^24%1dPtWvF74GZP_2Rt_c$e+g-|TDD&RNiIWT6fC4-@; zhNtGHTP1L(mr)?+l|UM~4zGo}BU@8rDwzOyT|ge2#7oLj&xs4a2awkQu>%Fdm7+7C zu80w==Q(5#o-zP^{M-hfdJ@W2irK1XYD&_{3}`0A8|#^Q zjWJcSZ81s^ss0A}JNaLg>({sgDnIsROknvt-?~t(G#^~#Numn}aF(Q1);MbD;6sQ= zA7#mb2$jf*g%(7*m;lCO4z0;ObC@p!lXS%3)5i%r3ssK2(;de%?ME zGL_nI@sxMHVloAy9glx^5jP76M5Q4=m?(4i;_v1i%_XL#1NQPj?ND&-9_#6>bc74b zimB0OBbg>-&e&(%0hCA}2lNjNb1+T~q|f-DquhyUa32*?PfADBv@ty!AU&Sm`7+mt zXz(#=hdr3-Tf)Ufl+lt|1k7SZwleXWai;aR^>HN|VHDwf4UP!#?{WU;Dj*kH|+nKvT zo3lN#D+vlzW(Rl0w7LeloJdQ*E8)R+9CBndk`lrcmWByi6lfp?oAPkul z*bG0>-#RkrIUdTzWE*u|PNKC0YZo)9ffIBtd%yP=chg#oX z&53b4g=?4hOh_le4G>SnQwo0Z<4GuzqgQ(rvD?G(wOF*k5ScCR+QZNJ9S5`&7Bs( zz0ZBwyHa=YGF4vqV-kc!T>Y9i-S$E0(2!Ga70zAMbJXrdBYf*$utQJB5Si21-@O?lNZ!YK!g>v;kho<`~1!09taADV65dTmd0fvDyj{zXtxBt$7U8<#b z4P(e)JFQ22tgmI|ls=APdbp_p4!;k}ZEgK2J;*-E>8|)VXI^@qg56}0DA*E+BR*iW zm!YI0BJ;HPA(4YpigK_F+O0qt`l$iYgSgu^90Ooeg74sW-HeeItkt_LigN~e8@ zgUK<@$?@WphEH$9maLa<$)C|J)*ydnTyTPLAD=r@TsFZn=S}KPi5wGtYk0k^IxL01 z5x`cs-Om~cbQ>btsN(>z;xAiJyxysvLt!4^1vfbqg^C}{Y>oZD1!y^AemcQk3xbwV z)i``X2k1Z&YRtEZ8h{4A*N2p>{*Rgn*$WU(JANe*ZT@w*+b> zumdh-jrqZuENwmcF>(w*^A=h%{l#|1xPj!mr9LvyOK>2;w=$m;_({jxGCXj6wr~Y+ z3pADEs_3!6Q<@o{P(}ed910}n%yJw1BPaqkHHl<4ezxI~+F@}v#VMVI74I~CGIriXgLu7zm z6(QOmYskFm*bidLvEDkPJ}%SVJlQ~$YhwO6Q| zyX1xxxFGsDcQA20|2)?AlcbFSCfrE`U#dHs2aEJMB*N^uBs$cQSz}^J4HR8%F!%)S z7csJK1$I!S7<*)#&Ju@NA_OGSRM{%g%WimNCL)gnapj@{9-{93v@SGjKKh}CAV8Vm zpouT@xB8;z%#f1;7RF5B$b&9xp$m4;3_eCr$;+NE=pFn7%yrA$y+}KWEMlI5fKjCQ zmyy*^ zx6%yUDM`~?b_eFTsFT1oVLQ_(rD_~JvFaF8$@FBOP;FLTz=td_MgZL5XOxIH58Bks z&E7i&oon#)3#l$?0f-T#hRIMNKo_AwJVQ0H>ugQSZdt)9p9O_2eyF(V6MYWFLd3~3 z@xMp4)&F|3j;N zKMRju;vhaQa8;)6pDFyl#EdtA(olBBsVqJ{neMV&uNpQb$@D&XNcJEB(uJR*1aQJ? z*-XtYe$YZD(uDv+l36GR?oFCPyk#0a+0Sz1TMK@3j1ka~7%F^lw#DXb?2>4X>oe&* z2HX?8U?WEXw?m8uep$bBK*sz${nvMdh%^{6e+Vc)Qf)Uyd>}@qVGHgw>s=zcE4*O= zEHj8xY95%OElooc4nhD24^sFEhZQv~F$AUohI82ZM{(kW#eev^5c$ihI+GhP^XkzF z-b9)GD#P~4xsuxggY}5wj}Lo5`^JA?WyW7V1PZ35MvFF(5Xypc2Gm9Y>w!nlgWXvQ zArxrIr`Y5?v?^(50+6}TB~9={I%8WnZuBqt0B#C!u=j*#)2y*%o<0(sbg04nNohD7l3@StD~^H|RpFV63cYj4;+acuPtGJ#(VW$w15=F3dTF#E3^ zRy%_rOQlEPC6f4Um1Y#{U+w$gA;5Y~a1x({6V}lVQh0eR^9%2sJ`#iNDJIbT1kiu* zH|Ml0S7NSps2I4=RIcIuTOy0PAyTy*q8KFDDcwpYAx3(P5-e}ARZ72d`*qL1PXLU_ zM*zsiK4>u>Y1Jvt&HTDz zTfQwzqmbq$KYB!$mJ6#VV~DHPLDXN*weLp^*)B}y9s1RAW(l*~$;4<#z{T;QE2UhlU>BRYyFjo1hu4qe6)y=JsQ z)!1@|SB!PoeVg>d>Chaua@^-eRPYAMhIKa>y$Byd{J{WDUcE#vc926U4P8f5o17{9 znua$@Rmx&f@%fLp&w+`eeyP3+f4W#b^8A=OO#fg9NdD>{x64Wt&hgRkVhe~jTO=)= zNc(+8)CYmO?YG(h^!i5@e9Yg?8;mflBn7u8Jg3uVY(7um> z!Pg>y;t0eJV1zSP$#fIv1Y`c7VIx=rbv-!K@5Bg4WVQg06P`t=-f}3W0z>MA#R*pT z12O9dVl>F*)+YgCdJ`KTAuLRo z>p6xbZw}EctbrRehO@Du1=)~|eQCiz;OKxw2~61L^p7IV8ku5+w(|o`(s|O4@gKI& zy^TN0;jxePXh-B1(yxpx9+Zm{?~KX)W>2WVgSYp6nYM>JkMY`Y=Z$g%`kRx;K)WKQ zNn4_R0O@W>sb{+I3hx~-@Gb%Q-7OYxCl`jEFS*I)`PN=xjWD?&}b8)d{kasG?-!EendC~9b&n)it6nX zOIF>1Fas52WQLb9bfAhLE+~h9M-SU(Tgb&_DUI=bb`?QCePzU>FG9fLQRo@8+XQSaNWi|uu zhIh-leVfRV*~9>K_GwLb89?Fbbq!uBx(s~D^NkotFaf;cCl(py$L7#RFyJ-oe~|!l zPtd_DgL{m-)v0jgrJd%Vx1ZR#fF|Igbot(F-^7s~>PG|r5M6qByDv&zma9S6uLqvB zYIK8R^2>am9}n?a0H65!aY$lt4-YplwZ=GusM^7O5vHJpAAsR}f%j{3@~4%`Qbb&c z)%*IG`!Cs~!W!$+Y5K+2V~Ho5t88?$7mqp7^y`7}qiAH3OPjNVDAUdGh+T}*aTC+d zypt;q{SK05{XS``>0zhqx6W+0l&XA=S$%;L6-MV)RV7cqoA`v(X+{r*+O7uHveH|# z8^Ak%*uQT6W+nF}dTS^rc1J>eHul@%&DDI*8@cL3>3T--?}OF-YqYstts6yMI44G zVTpU^-Q{EymFU3(?Ri*q?{rgh8}y?eVb8Awx;3nv4~@oIGc`vKaU4Zs{O2Rl|4-eg z?0=lP{7FTD`WNl8S>VI}H#^DtuWN@u#Jvq&?msft-LZ!hr6kaC2u=H#ow<^sNCUz` zQ(*3(MXn-d+4N*?43c-3Zbu9N{n)QzHIwjBzET5X!(p`PlulD)pKvs zjxKFuE5Q^#o;kI&Lh%f9mm|@vF+F6u6AXcMX>6$ozQ-w+lC^6jBXlp{^)vk%6QEYB zqG>!*mQtX)CD#g_^3S$fl*L1kr+qZlF2^L2BBYvfQ+uOG%x}L1#Z4u$z?1wDxdT}8 zO@bM_+d*ydOk?h=_|(V}zSWwb=W|uxC827gO>Cry0m*ot=x;1Kd#i^kY+J7NW}Kt@ z7{1R?DITv+sndu(gtn#v3L5u$i-{Z}4JSu+^d;8lE@2?>Hi59rpJneJ<$y*q+u^u&bG+oZp-1t+&Vnem^#zgbp1yWMD2arw9WkdMU3=vIgh0``$3n=hHZzz4_UHgtovXkkl4`M-nRJy;7aFl52V)KYyAjwIrW+m zaFWHDy12pe>rrst+vdL`M2sF~6G}3Dk(PUxtcD9B#O8(1o9NSkFBUF$yQ;+O1=EBf z3tNN3nRc{%4DWxE8}pEezJmTm3G{|(*=0m=xMyElVmYpvp~OT0tCKvGVHCEdDWxjLP&U8D@-6l zT*>1iia@~`6-mQ|aE*81*XI?iAi@=bQ5*QU37(B7L$VlUKpcxhpW16{uXydA3u%DO zr>vu}bt;YS7*CCSm}h|;agO!O8IWHcb8|HCFYk|O!E_Sp!vbnwzM76hciT#abcwc` z8Q%uc!==1XSm6e3s%MsBWP6s2)YdV&mrvl;zUoXI^w!x@BU+w9Y(u}L%C^Op3j0r+ zp`|gs{Mx{2)VCNETuT`<;tTwdRP#G~YiSX>WDa5eVhFP|?qdnIM~Dt#;~9wxl&RH( z>v|T4iB$eM2Rk{26ou!b`Jt`c$s-u8k}mz<&ldpC>BkDBh|l?UFBo%rNj)}K!ngz) zK?Bu{8|^0BU&QS8LBDE(gDQ#`xjvyDqU8e5H$AdeJyKgo?blf0{?I*q#IDzAF9W>8 z@_GkYX&Hk;8Pg*5c-QiZW44-^;HT~LndL?uBJe}UAC*9x?K5LtCxzleIWxI4%w&B~ zzgL*97S+Bcp5Ruh7npEmm2CujO3p1`n$Ln#i4jg`$>{qOY1kFhhd{Ego8q@!afBmz zm>fd=+pso>g1Zhqz4NynFh3E>v?pi-_tpuS;h|4yOoX^al;zC-l$D@WovYChP0ZP& zTRJLwxD`d6AZk5JpR%7zUojKZ`vhK~Q*iMDRQN9YBLP<>)cna7rq>LX`P5D7!ZZ~r zP6gKu|o;oG5oqA)?wiT)av6KW`19{g6x8aq01`y9yc-QkyvE4=QB{!$X@NWk9K zIkBPWZNB_2zkXe0Hw&cY49pIa4T3NeiMiqcx#S%n+oH>1hd#&9T#T`%uytIpu!|A9 z;Q9$1rEwM@B5f+gQJL6rc>ygICJWQb$fh8|f4m)bioFOgHm@_aL z`WA9=K}Y(*>y0a_BXDF+m9XKY#8&LU%a!GIhLK0NbVWX-V)B+n8SuZDJ1Plpakjyp zCQq1qR&ceLAznxjlH($=*Vp7yCIKx~5D8l>1ZA#8I)CZ1JpO^$Qrl0k1s8LU7?Zmt zlQR#9G{=M8VoRhWmK=n3;b`LKkSPmG8k<2ZUaCkWTs*Uf0i>m(r;kh}(VI0`UkPJ| zQ>Hf*0@@|^%i%U~Jk^fNmncKlUzcg=UxxPjf3c!5o&Oo+Wl9hq-#M9Z*fG7ei=Q$zH=3+M4o z-O<8RM1-9Vr|28;G|1)P%T?-UQ`bKk4iVtc*GJ&`+((grt_6o6_PHU>714tAQ(Zr9HeEo;AkFnC%oC1oZN9)njtFXJa zuzQB-cjR^Dhs_@$!bcF_-fjWEg`luDOllsc_ut)+4hlNAU4X*{V4cGpZ0Wzy&*9L> z8Qy|=*z&{vS$mFHxN5nT9{<+?Fv3lo-qIl-O3wzcp)^x}&?}Shon_j(cvs==7#}v2 z>z?JrOvj@inQY%fBDA~pTT2B6g|RYi(%TgttGa;!Psw|3`N*kVjmdr_?}imF>iP2B zh_^Gf?pv_l9WP0t-n9#`jLrC!g7Q+y>mh#d!?pcO6`NF?zipdi;4p3gO;H{&sZkBX z^(dgDD&(yqVDrRKZ6dO@0%V<~%i~a%lJE;`hGNf)_G%EBJ&CEwpJJLzx;sIhW+nI% z6((1HD*!L?IL@tfD2foi5`a^(`XQ+Wy(ri?pGAoX>BOQhl*XD8&}B$&*yV5;nbR(t znOik~8}2Y1W~OXB<|UW^#Bwinqlct4^9{x%S=C#BNDhA~H_;@z*To13%)!T(28uR| zb;*~0y_%3P7;?QMSU*LMb~Fmmz}WH8VqP{7-0W<8M>V-EQK>Pv-^|`yTYVD#|Gds9 zbz_c$jr3`|==g)hKnWD$Wy#W?1B%!lvwg*y z)l%y|Ll<|w($d{M6qH5n__f{r#Z#TXA)x4_3yF|z6~LL1CUTvQK&H?u&`yJuHhf4u%7c}gLG7*MSu~2|8!&#J z1TUzqXW9(V;%s)J?GbwvPn#@8{Eld_ikz5<0dJCb!L12Nf;GTxO0BhWtJ2~J1*pG1o`F7nv zuF=e@9q5{n7%`7XY2&ja`h;eEv(MR@Vv!dB1Lya7uDS4%z_}5p@&s70=+zWl2?b%2+ zjpxR|)Q@%p#T+p38Etbm>rI>%z0OfaTw(+Pz_AcrF$IuRIs!rsb!1>6av_FOOhh0F zT;&-WP_JtY#P_W9|JJ}p=^NJR%|oq;;@? zv>?k=V3Jd@5emPGueL^4xki=+yy!iz^S}9&=?3%g)JH=~pUd2m4%OkMmAyb@O3TFU zTOrpV9KlxtThk1Wf*%Qb(J%^u>*6seTZLgO?L6o+E z4t}!aB@{tIn_h#Mo&yaI$V-EbN)5q_-znhUFlKSHr{(?HD3Zb;@1&F6sD$#Tz%g5F zd_>yf}tA4LC!pd!uX7h z+_q0%uc>hd;ULW*{RZ7GfaHriP+k7RwQTq_lD*IG$uV}43}jc!Ohx6HFfjbBQ7QB< z+UyD&LYTVPh@6_t^{1D^bc&{2A#3;Fj~Y702H7>UceQujtu-lGWoYrW8JE)F_;_4m*2Ub z$65vdi=!i`R-?Q_CZ~D0tbUs4fQKy1dfJSz|59U8`T8hLu%nHT&==zdU2IR=RHctI z1>}y=#tWDL^O7Y%0;70+7H!!|fKTobJ}+oMUKzCci`bNC{}C?`Kt}|hM1(w9@V4cT z_D1_jNC=5=WG!R-Gr>*c@OQ;5#Fb3Xd{Dah|HEwKBJip`ySduftGS+ic!YtVa$r*3 z=8p)~*#R8gW#hU6KmcO zEO^Uj$dV#P(09eX%!#=io)2V!$vXt57#b8;1Z8kWT?rQ&ByCFP%P4$mjxuR)@=_1Or`!(Ezu1yo@gJT=sC? zl?6&emA0>QN_$EA9tu0-y|jj?lQg3_HvDJUhPTx1NGt=YJ7BvR;H)6eZgeBu62Amfo9RM$tdni!h7 z?HT&O(#AD_KHZB8)|3Ej=BKk1N3xo}`Ba1~hO|9Q9{AuUPY}0hFKqsMpUmEFmhs8+ zHjdYxMgYPA4|*sN|MZ^;i1FHd&0r2>&F=A@qt2PWr_{+Ex%+txdl~FI+B{h7BIQoK zMEz;ic!uq8&l|qn1LU41JN!z!RmBbCAO&KS-#1{vdHHw4Y4dFVEv(P=+_BCrhR1*o zUVc4uzwZPpn=uNxbWjk!s(+$BAy5kXk06gCsk3Iz;Qtf|Rt?o<*zqsrKykdrb2EMo7-#5$d zJU0Fu&=W%aD7j)$HZI+~_D6kEXky{(Gil+Oz@CISPDFu@>&{nUSYZz-M(KmFYIx@} zRO&%EAxgZY&0c@nO~I|x`;f_`mAiGKu}Qd9`vQ>~@56Wya?~GpQ}F1FhaykSg}S(D z@z@{kWxSKIr2ESAvJ@!soDO@j9$GfTo|J9Tr+!PNXQst_ox%SF)y|yvXb0n9hPi&f zn}Sy->GkN?RY5lM%@nJ-tF#jZ0jtGt&HH?tg57K;ry)JN7*$>B{o}sNdkv?sr|1c$ zn{-ZUx$z19g3r>*->Y`*N0d)zr`2=^9SZkIm|P)`%zlnf-NZ5AlV}cz_O9k{O&K+k zlVRO@Y%}2+QI1ocjj@45D#k4DS3bC2F5J>XDrVYrE1SOSd+GNY@@Gr-KP(8Y|MA~m z{@eYXwm+q)TqH%n2jD8NZAp$26WJ+v3wo& zLPK!zZlO^E<>W54NVAwrI>|ckw?8-y&tWgs>Yizy;u%jkExOviBkii1QxLhX5`EE# zZNRo4jf*EP-J-2Jc(|-DV7bHl493m z8xF|i_y=v0LdL-CXlM8;eDG)H?X+BNbW=&7MXgQs7nt^9)|sSO+9!NU!@oIrG8U$lSoHH$*1?h$$9W~jIC3GmWflx|Qf<>jgfC-xh zPrUd7UwL?$%pS!-y1f3-0)T{e!Rd40MFb_^S%?A81~xxG? za?7_fph}ktLX($LA|hxy&ynS1cCyWI1Ijoia=i5q2`O5ynInf(A-K#*EiyNRdjSbAq@m$n zAJ1R>3zg)iIq|~};icFIAzImh{YPt&50Y~poCp?hXVlTv_F1jAN^UdB_OY+(E zUHmeJGTN<6ZE?S2BcJyTc`Sorting algorithms (sorting algorithm) are used to arrange a set of data in a specific order. Sorting algorithms have a wide range of applications because ordered data can usually be searched, analyzed, and processed more efficiently. + +As shown in the following figure, the data types in sorting algorithms can be integers, floating point numbers, characters, or strings, etc. Sorting rules can be set according to needs, such as numerical size, character ASCII order, or custom rules. + +![Data types and comparator examples](sorting_algorithm.assets/sorting_examples.png) + +## Evaluation dimensions + +**Execution efficiency**: We expect the time complexity of sorting algorithms to be as low as possible, with a lower number of overall operations (reduction in the constant factor of time complexity). For large data volumes, execution efficiency is particularly important. + +**In-place property**: As the name implies, in-place sorting is achieved by directly manipulating the original array, without the need for additional auxiliary arrays, thus saving memory. Generally, in-place sorting involves fewer data movement operations and is faster. + +**Stability**: Stable sorting ensures that the relative order of equal elements in the array does not change after sorting. + +Stable sorting is a necessary condition for multi-level sorting scenarios. Suppose we have a table storing student information, with the first and second columns being name and age, respectively. In this case, unstable sorting might lead to a loss of orderedness in the input data: + +```shell +# Input data is sorted by name +# (name, age) + ('A', 19) + ('B', 18) + ('C', 21) + ('D', 19) + ('E', 23) + +# Assuming an unstable sorting algorithm is used to sort the list by age, +# the result changes the relative position of ('D', 19) and ('A', 19), +# and the property of the input data being sorted by name is lost + ('B', 18) + ('D', 19) + ('A', 19) + ('C', 21) + ('E', 23) +``` + +**Adaptability**: Adaptive sorting has a time complexity that depends on the input data, i.e., the best time complexity, worst time complexity, and average time complexity are not exactly equal. + +Adaptability needs to be assessed according to the specific situation. If the worst time complexity is worse than the average, it suggests that the performance of the sorting algorithm might deteriorate under certain data, hence it is seen as a negative attribute; whereas, if the best time complexity is better than the average, it is considered a positive attribute. + +**Comparison-based**: Comparison-based sorting relies on comparison operators ($<$, $=$, $>$) to determine the relative order of elements and thus sort the entire array, with the theoretical optimal time complexity being $O(n \log n)$. Meanwhile, non-comparison sorting does not use comparison operators and can achieve a time complexity of $O(n)$, but its versatility is relatively poor. + +## Ideal sorting algorithm + +**Fast execution, in-place, stable, positively adaptive, and versatile**. Clearly, no sorting algorithm that combines all these features has been found to date. Therefore, when selecting a sorting algorithm, it is necessary to decide based on the specific characteristics of the data and the requirements of the problem. + +Next, we will learn about various sorting algorithms together and analyze the advantages and disadvantages of each based on the above evaluation dimensions. diff --git a/en/docs/chapter_sorting/summary.assets/sorting_algorithms_comparison.png b/en/docs/chapter_sorting/summary.assets/sorting_algorithms_comparison.png new file mode 100644 index 0000000000000000000000000000000000000000..6a6559d0886745eca4030469a5e25519f3f3f77b GIT binary patch literal 59466 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 XmbHKBa>1If{vA+N)PhvVTL=FS0Lu{& literal 0 HcmV?d00001 diff --git a/en/docs/chapter_sorting/summary.md b/en/docs/chapter_sorting/summary.md new file mode 100644 index 000000000..e140fca63 --- /dev/null +++ b/en/docs/chapter_sorting/summary.md @@ -0,0 +1,47 @@ +# Summary + +### Key review + +- Bubble sort works by swapping adjacent elements. By adding a flag to enable early return, we can optimize the best-case time complexity of bubble sort to $O(n)$. +- Insertion sort sorts each round by inserting elements from the unsorted interval into the correct position in the sorted interval. Although the time complexity of insertion sort is $O(n^2)$, it is very popular in sorting small amounts of data due to relatively fewer operations per unit. +- Quick sort is based on sentinel partitioning operations. In sentinel partitioning, it's possible to always pick the worst pivot, leading to a time complexity degradation to $O(n^2)$. Introducing median or random pivots can reduce the probability of such degradation. Tail recursion can effectively reduce the recursion depth, optimizing the space complexity to $O(\log n)$. +- Merge sort includes dividing and merging two phases, typically embodying the divide-and-conquer strategy. In merge sort, sorting an array requires creating auxiliary arrays, resulting in a space complexity of $O(n)$; however, the space complexity for sorting a list can be optimized to $O(1)$. +- Bucket sort consists of three steps: data bucketing, sorting within buckets, and merging results. It also embodies the divide-and-conquer strategy, suitable for very large datasets. The key to bucket sort is the even distribution of data. +- Counting sort is a special case of bucket sort, which sorts by counting the occurrences of each data point. Counting sort is suitable for large datasets with a limited range of data and requires that data can be converted to positive integers. +- Radix sort sorts data by sorting digit by digit, requiring data to be represented as fixed-length numbers. +- Overall, we hope to find a sorting algorithm that has high efficiency, stability, in-place operation, and positive adaptability. However, like other data structures and algorithms, no sorting algorithm can meet all these conditions simultaneously. In practical applications, we need to choose the appropriate sorting algorithm based on the characteristics of the data. +- The following figure compares mainstream sorting algorithms in terms of efficiency, stability, in-place nature, and adaptability. + +![Sorting Algorithm Comparison](summary.assets/sorting_algorithms_comparison.png) + +### Q & A + +**Q**: When is the stability of sorting algorithms necessary? + +In reality, we might sort based on one attribute of an object. For example, students have names and heights as attributes, and we aim to implement multi-level sorting: first by name to get `(A, 180) (B, 185) (C, 170) (D, 170)`; then by height. Because the sorting algorithm is unstable, we might end up with `(D, 170) (C, 170) (A, 180) (B, 185)`. + +It can be seen that the positions of students D and C have been swapped, disrupting the orderliness of the names, which is undesirable. + +**Q**: Can the order of "searching from right to left" and "searching from left to right" in sentinel partitioning be swapped? + +No, when using the leftmost element as the pivot, we must first "search from right to left" then "search from left to right". This conclusion is somewhat counterintuitive, so let's analyze the reason. + +The last step of the sentinel partition `partition()` is to swap `nums[left]` and `nums[i]`. After the swap, the elements to the left of the pivot are all `<=` the pivot, **which requires that `nums[left] >= nums[i]` must hold before the last swap**. Suppose we "search from left to right" first, then if no element larger than the pivot is found, **we will exit the loop when `i == j`, possibly with `nums[j] == nums[i] > nums[left]`**. In other words, the final swap operation will exchange an element larger than the pivot to the left end of the array, causing the sentinel partition to fail. + +For example, given the array `[0, 0, 0, 0, 1]`, if we first "search from left to right", the array after the sentinel partition is `[1, 0, 0, 0, 0]`, which is incorrect. + +Upon further consideration, if we choose `nums[right]` as the pivot, then exactly the opposite, we must first "search from left to right". + +**Q**: Regarding tail recursion optimization, why does choosing the shorter array ensure that the recursion depth does not exceed $\log n$? + +The recursion depth is the number of currently unreturned recursive methods. Each round of sentinel partition divides the original array into two subarrays. With tail recursion optimization, the length of the subarray to be recursively followed is at most half of the original array length. Assuming the worst case always halves the length, the final recursion depth will be $\log n$. + +Reviewing the original quicksort, we might continuously recursively process larger arrays, in the worst case from $n$, $n - 1$, ..., $2$, $1$, with a recursion depth of $n$. Tail recursion optimization can avoid this scenario. + +**Q**: When all elements in the array are equal, is the time complexity of quicksort $O(n^2)$? How should this degenerate case be handled? + +Yes. For this situation, consider using sentinel partitioning to divide the array into three parts: less than, equal to, and greater than the pivot. Only recursively proceed with the less than and greater than parts. In this method, an array where all input elements are equal can be sorted in just one round of sentinel partitioning. + +**Q**: Why is the worst-case time complexity of bucket sort $O(n^2)$? + +In the worst case, all elements are placed in the same bucket. If we use an $O(n^2)$ algorithm to sort these elements, the time complexity will be $O(n^2)$.