From 3d31fdd205377b8c1179acd4c5cba217ea90e287 Mon Sep 17 00:00:00 2001 From: Oracen Date: Sat, 16 Sep 2023 17:16:20 +1000 Subject: [PATCH 1/4] Update streamlit app with more narrative detail --- app/Home.py | 50 +++++++-- app/pages/1_Prototype.py | 105 ++---------------- app/pages/2_Compressor_Model_Details.py | 31 ++++++ app/pages/textfiles/2_compressor_explained.md | 18 +++ app/pages/textfiles/2_intro.md | 6 + app/pages/textfiles/2_nlp_intuition.md | 0 src/python_intro/app_functions.py | 72 ++++++++++++ static/gzip-explained.png | Bin 0 -> 22917 bytes static/nlp-intuition.png | Bin 0 -> 169602 bytes 9 files changed, 176 insertions(+), 106 deletions(-) create mode 100644 app/pages/textfiles/2_compressor_explained.md create mode 100644 app/pages/textfiles/2_intro.md create mode 100644 app/pages/textfiles/2_nlp_intuition.md create mode 100644 src/python_intro/app_functions.py create mode 100644 static/gzip-explained.png create mode 100644 static/nlp-intuition.png diff --git a/app/Home.py b/app/Home.py index cf9f7f7..2089304 100644 --- a/app/Home.py +++ b/app/Home.py @@ -1,16 +1,50 @@ import streamlit as st +from PIL import Image -st.title("Welcome to the Demo Club!") +from python_intro import app_functions, dpaths + +# Set variables + +image = Image.open(dpaths.STATIC / "gzip-performance.png") +paper_url = "https://aclanthology.org/2023.findings-acl.426.pdf" + +st.title("Basic ML Model Prototype") st.markdown( - "Congrats on making it this far! Here's a small reward for all your hard work " - "getting this far - a bit of playtime before we get back to learning." + "This demo is a machine learning system live on your machine, being " + "recalculated in response to your inputs." ) +# Instantiate components +app_functions.cycle_state() + +st.subheader("Gzip Is All You Need") st.markdown( - "This demo is a machine learning system live on your machine, being " - "recalculated in response to your inputs. Have a play around with it, and " - "later we'll explore how to build this site (on branch feature/simple-app), " - "as well as give you a more complicated demo to play with (on branch " - "feature/complex-app)." + f"Recently a paper was [published]({paper_url}) which caused quite a stir. With a " + 'the rather pedestrian title, \'"Low-Resource" Text Classification: A Parameter-' + "Free Classification Method with Compressors', it showed a novel method of " + "attaining competitive text classification scores on many benchmarks. It often " + "outperformed transformer-based approaches, which are a class of significantly " + "more complicated text models." +) +st.markdown( + "The approach used was novel, but also kind of crazy. It was the sort of thing " + "that probably shouldn't work. But, the theory behind it was sound, and gives " + "us insights as to how LLMs achieve the things they do. It's also a handy reminder " + "that you don't always need the most complicated approach, when something simple " + "will do." +) +st.markdown("Tonight, we're going to play with this crazy little idea!") + +st.image( + image, caption="Red is where (bigger, more complex) models lose to a silly approach" +) + +st.markdown( + "As you read this, the model has already been trained, and we're " + "generating some test data now. (This model is fast to train but the current) " + "implementation is slow at test time.) Take a look and have a play, and we'll " + "explain what's going on, and how this works, in the next page. For now, it's " + "conceptually enough to know that the model is mapping the test input to the most " + "'similar' training input, and assuming the label must be the same." ) diff --git a/app/pages/1_Prototype.py b/app/pages/1_Prototype.py index 78574a1..3a5dbe7 100644 --- a/app/pages/1_Prototype.py +++ b/app/pages/1_Prototype.py @@ -1,101 +1,12 @@ -import numpy as np -import pandas as pd import streamlit as st -from datasets import load_dataset -from npc_gzip.compressors.base import BaseCompressor -from npc_gzip.compressors.gzip_compressor import GZipCompressor -from npc_gzip.knn_classifier import KnnClassifier -from PIL import Image from sklearn.metrics import classification_report -from python_intro import dpaths +from python_intro import app_functions -# Set variables -image = Image.open(dpaths.STATIC / "gzip-performance.png") -not_so_rng = np.random.default_rng(42) -paper_url = "https://aclanthology.org/2023.findings-acl.426.pdf" +model, label_map, test_cases, test_labels = app_functions.cycle_state() -# Function definitions -@st.cache_data -def create_data(dataset="ag_news"): - # Dataset arg is used to cache properly - dataset = load_dataset(dataset) - - label_map = { - idx: name - for idx, name in enumerate( - dataset["train"].features["label"].names # type:ignore - ) - } - - X_train = np.array(dataset["train"]["text"]) # type: ignore - X_test = np.array(dataset["test"]["text"]) # type: ignore - y_train = np.array(dataset["train"]["label"]) # type: ignore - y_test = np.array(dataset["test"]["label"]) # type: ignore - return X_train, X_test, y_train, y_test, label_map - - -@st.cache_resource -def create_model(x_train, y_train): - compressor = GZipCompressor() - model = KnnClassifier( - compressor=compressor, - training_inputs=x_train.tolist(), - training_labels=y_train.tolist(), - distance_metric="ncd", - ) - return model - - -@st.cache_data -def generate_predictions(_model, list_of_test_items, sampling_percentage=0.2): - (distances, labels, similar_samples) = model.predict( - list_of_test_items, 1, sampling_percentage=sampling_percentage - ) - labels = labels.reshape(-1) - return (distances, labels, similar_samples) - - -# Instantiate components -X_train, X_test, y_train, y_test, label_map = create_data() - -# Train model -model = create_model(X_train, y_train) - - -st.title("Basic ML Model Prototype") - -st.subheader("Gzip Is All You Need") -st.markdown( - f"Recently a paper was [published]({paper_url}) which caused quite a stir. With a " - 'the rather pedestrian title, \'"Low-Resource" Text Classification: A Parameter-' - "Free Classification Method with Compressors', it showed a novel method of " - "attaining competitive text classification scores on many benchmarks. It often " - "outperformed transformer-based approaches, which are a class of significantly " - "more complicated text models." -) -st.markdown( - "The approach used was novel, but also kind of crazy. It was the sort of thing " - "that probably shouldn't work. But, the theory behind it was sound, and gives " - "us insights as to how LLMs achieve the things they do. It's also a handy reminder " - "that you don't always need the most complicated approach, when something simple " - "will do." -) -st.markdown("Tonight, we're going to play with this crazy little idea!") - -st.image( - image, caption="Red is where (bigger, more complex) models lose to a silly approach" -) - -st.markdown( - "As you read this, the model has already been trained, and we're " - "generating some test data now. (This model is fast to train but the current) " - "implementation is slow at test time.) Take a look and have a play, and we'll " - "explain what's going on, and how this works, in the next page. For now, it's " - "conceptually enough to know that the model is mapping the test input to the most " - "'similar' training input, and assuming the label must be the same." -) +st.title("Playing with the Prototype") st.subheader("Dataset Details") st.markdown( @@ -107,15 +18,13 @@ def generate_predictions(_model, list_of_test_items, sampling_percentage=0.2): "(i.e. it will probably do badly with TikTok video titles!). But you can also have " "some fun with this, as the model struggles to classify some obscure input!" ) +intro = f"Here are the dataset labels and the human-friendly categories:" st.markdown( - f"Here are the dataset labels and the human-friendly categories: {label_map}" + "\n".join([intro] + [f"- {key} = {value}" for key, value in label_map.items()]) ) # Prep some test cases -random_indicies = not_so_rng.choice(X_test.shape[0], 100, replace=False) -test_cases = X_test[random_indicies].tolist() -test_labels = y_test[random_indicies].tolist() -(distances, predictions, similar_samples) = generate_predictions( +(distances, predictions, similar_samples) = app_functions.generate_predictions( model, test_cases, 0.025 ) report = classification_report(test_labels, predictions) @@ -138,7 +47,7 @@ def generate_predictions(_model, list_of_test_items, sampling_percentage=0.2): ) test_sample = st.text_area("Input a headline here:", value=default_text) -(_, input_prediction_list, similar_samples) = generate_predictions( +(_, input_prediction_list, similar_samples) = app_functions.generate_predictions( model, [test_sample], 0.1 ) diff --git a/app/pages/2_Compressor_Model_Details.py b/app/pages/2_Compressor_Model_Details.py index e69de29..613f3b6 100644 --- a/app/pages/2_Compressor_Model_Details.py +++ b/app/pages/2_Compressor_Model_Details.py @@ -0,0 +1,31 @@ +import pathlib + +import streamlit as st +from PIL import Image + +from python_intro import dpaths + +TEXTFILES = pathlib.Path(__file__).parent / "textfiles" + +image_gzip_explained = Image.open(dpaths.STATIC / "gzip-explained.png") +image_nlp_intuition = Image.open(dpaths.STATIC / "nlp-intuition.png") + + +def load_text(filename): + with open(TEXTFILES / filename, "r") as handle: + return handle.read() + + +st.title("A Peek Inside The Black Box") +st.markdown(load_text("2_intro.md")) + +st.subheader("What Compressor Models Do") +st.image(image_gzip_explained) +st.markdown(load_text("2_compressor_explained.md")) + +st.subheader("How We Think Of NLP's Mechanics") +st.image(image_nlp_intuition) +st.markdown(load_text("2_nlp_intuition.md")) + +st.subheader("So What's Going On Here?") +st.subheader("What Can We Learn?") diff --git a/app/pages/textfiles/2_compressor_explained.md b/app/pages/textfiles/2_compressor_explained.md new file mode 100644 index 0000000..1f75118 --- /dev/null +++ b/app/pages/textfiles/2_compressor_explained.md @@ -0,0 +1,18 @@ +As this presentation has been alluding to, GZip is at the core of the compressor model, though it's reasonable to assume that other algorithms could work too. Compression algorithms are used to "shrink" files down. The details of how compression algorithms do this aren't important. We just need to note a single thing - that compression algorithms use repeated patterns in their input to find a more space-efficient 'coding' of the input. That is, compression can be used to make data (including text) shorter, and the more repeating patterns are in the text, the better this works. + +So how does the model use Gzip to make predictions? It's actually quite simple. Alarmingly simple. The model takes in a list of strings - or bits of text - as input. It then compresses the strings and measures the length of the compressed examples. This is just some number $n >= 0$. These values are stored as a set of `(example, length_examples, label)` pairs. With that, the training step is done. No, seriously. + +At inference time, it's a little more complicated, but only a little. Given a new string `input`, the model does the following: + +1. The `input` is compressed and its length (`length_input`) recorded +1. The model randomly samples from the `examples`. +1. The model concatenates (joins) the `input` string to each of the sampled `examples`, compresses the resulting long string, and measures the length `length_joined`. + + - Think about it for a moment and convince yourself that `length_joined` will be at least as long as one of the other two lengths, and should be no longer than both of their lengths added. Let's call these the `lower` and `upper` bounds respectively + +1. We then measure how "far" the `input` is from any other datapoint by considering how "far" from the `lower` bound `length_joined` is. We call this the distance +1. Finally, we check the `labels` where the distance is lowest, corresponding to the most compressible points. We then take the max or use a simple voting algorithm to pick a label. + +So, in essence, what we do is check how much of a compression saving we get between any two strings, and consider this as a measure of similarity. Compared to a transformer or an RNN, this is trivial to reason about. It's technically not even machine learning, because there aren't really parameters here. + +**This is wild.** diff --git a/app/pages/textfiles/2_intro.md b/app/pages/textfiles/2_intro.md new file mode 100644 index 0000000..c85bcc9 --- /dev/null +++ b/app/pages/textfiles/2_intro.md @@ -0,0 +1,6 @@ +This is a quick little explainer as to what's going on here. After all, in the Home page we asserted that this probably shouldn't work. Let's go through the following: + +- explain what this compressor model does +- explain briefly how we think about modern NLP, to get an idea of why this result is so surprising +- dig into why the result works, and compare it to historical approaches, followed by +- some quick lessons we can draw about model ML/AI research diff --git a/app/pages/textfiles/2_nlp_intuition.md b/app/pages/textfiles/2_nlp_intuition.md new file mode 100644 index 0000000..e69de29 diff --git a/src/python_intro/app_functions.py b/src/python_intro/app_functions.py new file mode 100644 index 0000000..e785574 --- /dev/null +++ b/src/python_intro/app_functions.py @@ -0,0 +1,72 @@ +import numpy as np +import streamlit as st +from datasets import load_dataset +from npc_gzip.compressors.gzip_compressor import GZipCompressor +from npc_gzip.knn_classifier import KnnClassifier + +not_so_rng = np.random.default_rng(42) + + +@st.cache_data +def create_data(dataset="ag_news"): + # Dataset arg is used to cache properly + dataset = load_dataset(dataset) + + label_map = { + idx: name + for idx, name in enumerate( + dataset["train"].features["label"].names # type:ignore + ) + } + + X_train = np.array(dataset["train"]["text"]) # type: ignore + X_test = np.array(dataset["test"]["text"]) # type: ignore + y_train = np.array(dataset["train"]["label"]) # type: ignore + y_test = np.array(dataset["test"]["label"]) # type: ignore + return X_train, X_test, y_train, y_test, label_map + + +@st.cache_data +def generate_predictions(_model, list_of_test_items, sampling_percentage=0.2): + (distances, labels, similar_samples) = _model.predict( + list_of_test_items, 1, sampling_percentage=sampling_percentage + ) + labels = labels.reshape(-1) + return (distances, labels, similar_samples) + + +@st.cache_resource +def create_model(x_train, y_train): + compressor = GZipCompressor() + model = KnnClassifier( + compressor=compressor, + training_inputs=x_train.tolist(), + training_labels=y_train.tolist(), + distance_metric="ncd", + ) + return model + + +@st.cache_resource +def cycle_state(): + checks = ["model", "label_map", "test_cases", "test_labels"] + if all(item in st.session_state for item in checks): + print("Session cache hits!") + model, label_map = st.session_state.model, st.session_state.label_map + test_cases = st.session_state.test_cases + test_labels = st.session_state.test_labels + return model, label_map, test_cases, test_labels + + X_train, X_test, y_train, y_test, label_map = create_data() + model = create_model(X_train, y_train) + + random_indicies = not_so_rng.choice(X_test.shape[0], 100, replace=False) + test_cases = X_test[random_indicies].tolist() + test_labels = y_test[random_indicies].tolist() + + st.session_state.model = model + st.session_state.test_cases = test_cases + st.session_state.test_labels = test_labels + st.session_state.label_map = label_map + + return model, label_map, test_cases, test_labels diff --git a/static/gzip-explained.png b/static/gzip-explained.png new file mode 100644 index 0000000000000000000000000000000000000000..508be0a56e965f76390e1e3179b511060ce52355 GIT binary patch literal 22917 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 literal 0 HcmV?d00001 diff --git a/static/nlp-intuition.png b/static/nlp-intuition.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed46db93b7741154b61041078703be5507da311 GIT binary patch literal 169602 zcmd?Rhd>vnZra?b0#UeD)a+#mPH{qcOFq9jL7N>7R)2)X<%nY#!=vWp-G zmq`x5-^gP;55j+lobJj=A=#~rQ}DwPV+A=GWS{U)Vnu2={LNAOTiQ+tqIZ+w>lR{UQh0L3z0uSQj^YF*z=B9v6{wWfmy2}#^QK8 zhvNKDp^P;djqN8|&H}+(=~deok}JZCiZ4{)sGe}QlOA1rSwItR!Oub}gcuzSwEo0G z)-k&fl8bk6#bC^o^RaHCOkOLwA|iop&9)zQ4j>2(-hxqdfa&$1G{rdxg93m?H z-%rN>|M{Wjaz5GLRq$8w^4hKR+V-amq&Pz*bxlB^e-2Z%{wgf2v#001&u*4(u})S` zK|#UntaX0QA>VHoh2oU*t^R#n=I-6F7BjMWvDIOXSF8;a!hL;xt^*EoW@cvY?(W9M z#v8mRe6^(J5C8Xx6D=e5>KYmqJ4;O(8XB4ztKA>ewu*7#H|UIWwYIjmYn@hRXJ=)f z(QxY)adC5VmzWbVYleCd{rR}WyN~#}?4TyR@RKJ`w%+D+c6NUHB-J*4>Gw-2NMyc5 zT0bm4-nLLDa^{fORU>(Mc~w>u*x|e^i<}0M5qr<_;>9d+)P*_kf zIovpTOgHp>QBhF^;kDbIB)z)2N)cGw{&S$~NaDkRzpM7?U3&U-s`&1G8=I_QkFQNl z8EI*kw{J+L!AFaV*5GsLs0NiB249w-f1i;`tEdp==f{PRM-Mj2p55y(%g;h%HTN~g z$HzHQ*{7tq^vgG}!@Ki8zC3FYJC3l({aZ5@R{5}a94RSj<<2-Su~-U?UO9Rbmx0>< zPAq=w&Yf#m38d!#yn8IVQY)*+&(9B5G1T#KMEvI~yu1s<;v16g?qz*n4v3UX(9|sB zHYk7aYpBAbC7WUoU*)Zw_NG?wGYY3e(hvPGRfaSm?QzNtau-;COG|&Us0#&B}^%{>%Ymrd|F2cHKDPi?OPhqJn~ztu014j+~s_ zU!Q~@I~X4t$|Bzx#-;$<(Kn9dKL7iC60n10y1A3u!qtqvKV9A*3)b16ACH#Z|ABhz`|UdqaZ&uK9SO|Jj_EwefY z2gevq?dQ)j#Zj}EZP-9oc@8eFYuG!?H~+b5kl5VZoRE;vP``!mt?*Z`Fw@G?S^fwvaO=R9ysE7$mO*A$oy z7^p38pLJ1px4L{-k?o)*CR(E4+}}H+P@`xx^7mNfB;S$<25V4H2RN9E@;N;25BwYAJlE?n!Eh=_<_2ElBt+)uOg z57Q*8{>wPNUp2I~FSU7$(Yf37Hg%Uf7n+_iD|wA8W}EVW6kKd-ra0_6d?FuU@@+{`^>A?TAk2@UR`&cQ#oN#Xs{8Vul#|dlB3N z^qgbX_`@4CP{{3~wV z8-czDk!tdP)^kTwPmfDJ%zQF3Dhh={r3x>cK#=%=X!L(e;hO}}FzwyD&rX{!&WLE{ z=-Xgi5MOrbzu~O<5I8|jdis){zN%_yRFpZ!MPkL_IwOQy$Q@?12VOtuLQibd3DLV@x z=~kFJA&RN`9{vApSO6v1`^%Ti{vUO+Y;0^aGjOv{eYIY`d}&yWAEdDzC<#T5Nt6C{ zO9aVH{1d+a&qGOE|7W5Ir3gI(1K-uFH=aPCgUQi6`!d^! zi2u9sc7?N4014P>-@kiTP*@m^rbootSXsZ#VS3fPlTYAIPf-53t}lDgFf+He5>NWTi8ex{y5SaCqhO_+RQ^P(H;>MCBjJI zoqYoL_3v9O92gENlH@-4^`pXL{S6wta{hl`g@Q$}O+xAD&?nI%%vb;2tcoi5to&Us zuL?&aC&DYgFNFw6w0+(87v2PMQ3Rf6VW}ZJ5zVPnvje4F@VH3(|2)}8r`Q(l=~;et zB~Ob>DK#9zKjr2>D`57ggbRp?4cUx9hNR`yx5nH@kjZ}^M^yFo=V{zc&CDS4N%11_ zRD{giC8*|BYY)WsQxE5UMz$t_ceE;&9PuT3-^=Vm$gdt9*Z%OGY0x5mQ*K zQfeRne`|I*ymsW4qGDm6wNy}Z^BpQ)q#t5np53t6I2HI6L>CMi`5OePUz+D?!8T~1 zP!qr1ZKJ?-K|i%C`qitSIzQ~MTkJ@&CjJd32(s}uH}}f<^U|fCEeqFHR$ilN19<*z z7UC=3+0_Mk91^kBlN+N^c=jNPZ|#56CW0KeYhaKN8JVIN_Ucv7z<@OdecJKgJ|Ys7 ztZZz3)&k>UKYyByUo(_Q`=2QyBz|hCN|1goMK#9=+BJl+ne{$q@%R1p~frP*Tt11r(->mn5p~V!WKP)E8@d>LuL{zxQH@UyQMEPjItZzhs z*>}p_*#IVXYwl~?7ok2*BKl}2-S(uNH53K-UgH1jU zKW7#d@LKk7i2VE_IXU^=JJ#{AfPesMPEA-ah^pDyw(IkQjcnkg;J$>L_($<#cmA^jzQ^Um-g)Y1YTo1sN&FYqgWQ+C1vIv2BqsW{lS#-p2*-gt zXQztqZ??5$lUxbmdk5c-q^0HLv^6$TNda8c%F@hllFVfJ zYi!9{H*elFF?l=l0cSZkHFX8cjv&o7|8A}TR+7#=ODmUvbuLGc^I`w9IV1ocxTU#%z96)^k-QAlK#Yr~*Z{WCjrcIFX5M=qEi>eZw z2fQz8Wqn`X2@Zzc17o zq<;XRVtQt#C7bNT)4vH8L1eCh*M^1taDNjSS?DsOng2|R)i_rA?*>sG{x1mhc71t9 zyD*6DolU0H{y*O5%>FwoIf^RE%ip)M0!S!B`45C4l>G3G`FVMI%G@*xK0Z}_vMhK1 zE$HRM!a|q%fzlP-D0x=|G5}T~jw4$AbC_5#KTZ-~hIJ)v$wSnV9S_s+Ye4X#q2B+o2*%nbCMGv;1~|$qD~AvYAD&vX=GR7;qkD_7;m6`jZUp3niE~A|Ck>Mb+49g9t5;!UyL!Td*Q4N zHu7V`=m@J9JHjnrG!9Vm{Y%*-M~fqZR9JRi@t`d+M^$|@4l%#_mqHF1+zHU{z%Aeg z2SrUABfjQz>FKc{SN^xNd9ROE$P|q0H(H)ARdRBOL_WX1{*NLtzMTo5ew@3#@|}Yy zNObJKDoUcA(p}b%oIyYxg^EGTz8i&K%GWmYz^zZZtQqe|lf7_?Vl?Mji9wSg)jr{M zb;|iK&RWrlIov4+V?q3$w{ucifBQI+TYr`h`}9^lJWs}JFiYRBqKm65!{FyMD4T#M>_9dCqAcxF%-_|YmwVA1%~xNgh6hgU ze8`PtAFl)^#{~7Zeg^EInD@?ueTq|MOo5jHP3S8qJlpy9AD}tm_lR)ccYdDUFxwl<6!vKIGgFv4&n$S~mSapEhC?uTWKjFNO)bIse%Vh87clNgXaEgytO zMrvqjP1+Fj^k$>aoH^rI2!G7<=B(@aG)7z!^Z2NDMydb)s|+L|W3##7 z+{YF|Y}_=0vP(rDFY2*&dN64wee1aot9&P4Mc+WF6M11*!`OQX(@6~#75lNTCwf0< zsH;D)P1$AX?ZM+SZp;h}4Aj-#+_XLBrk7P* z+-q6r&NEzOgMY(s^+_dF!OCg|Zfm?Aiq6Q6xhZN4{_ zUWCPZ!1HdAQH;$kZgXtP_0_z0u+b1dX6phbX*W=kTTq}r@#V_3yUB}tk{T)d>FENo zQ~NKm*ZBEUQd75Y#7?Jnw|_XiThAiJKAZ=@B_QBPKBrV7A%9)2NeJmzT1QjNi;?dQ zQ6MCNiTf2UR*hp*M@^c=xRL61>RWezU<3yyyzFuIQWGP7VUz5m{&jVAo68ecnVD~l z9t4mAOPEu!_GX~#edzrL90%FgmX^VCw|qTmbMpx@-tzA@$3%C{Esf_>?&Jg00d`){ z>$<&If&eAq&Q@MGrD1HLSC z`Mnnv8Ba28c*D~+F1-897rZD`@p3wA8MwhX5!ZlhC0bMV6uxB@a_WMMK}!PINT5d0 zSAq+eUs_ydM>W`aHwUKroV45ZQ%Y46n&{bDoni7^tfAvGBVp0e)g68?Necgs zzI1b-aT(pd$wFHuQlY1AA|T2TFi~G40|o=d(C>r^bfFpT;eA40qr70wyS6_vsCKh> zORncIQZ09^>cYH%trEfAt6z?~-u+P@KtClrIjue@%`6|*)}kROA(ZS^8$x2s#4({u%wwY-Ae1%w_fCOTU3M1f1B zwPsALKRh5_xCrbXs&%2zVYH4wS3UDf_(2HTzAPh=g7{sM3K^0kUk@Ok10Ehf0>RS* zJ5%2G7(pmG`UeeJ3XN)y^qN3+|2{-<_J)P?Nud?!FZ9z&x@4AWWN1DfKlgamkA$Tz zgefPkWrHY`m|P*Sh3^GK&KD6M&NOrkABjg!)3IWmzSpItC^|4m8k0F z=Y$|9H3=&P6bnMs?xJQ0sRbj*$cI%&5M%#5tSP?8CZMQdxmD!R-A8+dhO5&!qcWbF zQGqY&YHH!F7)Bm&(_NJjiXt+?MX8eu5}jo<-*(PEnI*{Dsu?qN#_+ zHt@25T#pdoGvz&EU8Tz2Ec0|c$u8eUEWKaD z{WzUPeWW+*jR-_fbOjVTD0TIF7}a)#r(-^52ofZmQ{Izw-MzW!j>m5v1cwz4&FH z2kQ}i)CVL^=~jA{F5OpD4DO@;@_v5aRz7Uty`rVHb#qG#KlYk``_GmbuWU6P9ZTC4 zew+RR!@2alJVyXdjcniu_R@IfX|+1 ze#S|upw?EUe1#xW_c|;mH+LlK{i)8B_v+W}hRUm5&#hkt#vc0$syX4fR(`9Vjof0n zvu>YlU@kXOr5Sd`0JjY*qK;c91Mp|mM0jeAb`>9=}hBXKBXYT&`M8^9X zEj8QJ+zbd1fY4Iu&rgrZYH!SrJg4K^!K+YAN9?l!N5k?akH=d2 zY6}mszO353%i{N%Ief7Ka1fmVxPE($8&-1tMu~Ns8Xan zH#j&5_2w!ja%}&cLYTU?_S8BHINB$tRrTQyQ1344$s>SY?f3E0#q~@GC3>$DQ&znH z6mpEjDSL+M^sKBF_7rK_TnxXhQu_pmFwXF_QuVV1A$M!qGE!;axBc&d$= zEX(JquGH1G%(OCMWx&ebKC0)Mi4Pz)kTasu&~B>ZYI}Vja}=TMV5E?PB6em9ZUP#P zW*F7bFUy*ddmd^G0@n6e$pt4}oQR40i%HkGhp~x1J7V<~H?-rRNgSDP6@1x^l z7L(mOVj|M0hGprYZ{H@J)TN~Zzg2o+Cr%l#xR0J&J9)t3*`znG5W_kl)6wwgvCD@s zx^K$aKI}ZHjeURD+QtT_uXZ-8@a^04FDW!ryWGaUhC)Ojen7`2e>XtiR>1mO;u}`Q z=&Po+0pw!Gp<&4j9bm58B%!gfv+Ge;0eq34VPE_yjw}W!fze<4p}>G7D$=_|9rjcqB{g74lqJ|-lOc5zt++`c*{$Y<94(wqxo z$!g9gA*Y|#L*;#wIR_kN-d$vaYjj%#toB{RLb-<$&{k3T?zT$7cpd)Sx%G~ejBKJc zj#K=VxvUScvtoXz2{kMTNetQfRllxuxbh?tL?G)#MdPky`lS^X z;_{Ey%_gsO+TQ4V3nfpRVAF_M%Nu@rSD9MA4wQN7wyS}6|I)?cZk|pX(}Wq$(#MPa4DJ`!ZXTyKe3WHLlpfPW%)!py zK4};(2s(s2N=iLq**70I@^zj*l?&fbt$o;gYUeavr)_ZvleqpwE+T=?XsPGDeuRL^ zkp00c=F|Qi%^C+0rYjK3fJNQR{bCICu^={?WPG^9T#_+}w_8rH%=v@)%pFL2%tU|+ z=sgT$r4x2aI2ke>C`2c8e__bFmxDakW;^;wj8=kGL`6goa#$|3FDH)dJ0O1Nq_!*c zgkB9?N~u`d*<9YW+PQiP3=Lv$rtpyAw@nY2ZQ;&0`%#f17Oo( zt2PE6wI1B`j8R9C+&gv$QJKE(TBAGpr9B<-wQxu)Y?`G)nDYn#i5jj+QsKv0cJqhZ zN{5^%?UByWbFQ7>pVhN`&zQqlp^%?87{;UfE?Zbw*y|>{lc}#tdvDJb2j;66w^Hto zC6UccPv0>3QBS1GLFL3d&YaXHww)QTctJUSHmkNfW^2pcbkYUtQBhr+p>l2hl;a=6 z)i2sjg(?s28NI|m9Jg0}?{oR4DGm4?PjI_}CWM!=feCTP#!6J2LE|E$wyJ-|I-Nwb z$J^!S#Zl*$bR7^R4ZpokK>#GTz;CL6((LW}I_vtxvI@i#Ej%^8z%%2+-k+Y4G3b8$)8*Er zR*$blO663UOq?t-Xmnih$J-|204czvt~fJ`%9eF3k0OU;S=T%+xwSH;)#%EFUM$|1 zp^v+zRv5>AgWF(F{?@HUy)=3-fveD_m@^nUqN5R@pN^^xFCH-+th_dIQ|Q>+q$66m zV_~m&k%#ujJil|VoYNpiWZpjFzSzP;gfyoftH8{DlbockT{)iF+c8qe+24+MWtWB~ zPx4eHjSwHaH(8fMvif7h8^h|Ux@#lv-@j&Rxqp3f z;qtROCSsYKTWu9Z)_uu7rg8ZrV1H$b_2$lX;&w!LKHoH;dA1dc6P9!B7E|1Hh_I|I zvB3-2%?R@IZ+bOmpmNsqv~+Z)*C~jqw;!k&#Y~()e3?CF#)JsWDBq$@Z$=1JUXp=Hdoi@IdrxPYBG zQD$_o!Xfwx+j7qdwsOy}E<>D}6{+8srL#M%3hhUv5(2Zcvo+76M*HDmZmfMX31clR zDzeNxSphbs9~$og4VNRLcfz(~54`Kw{YjH5OJOJdeoN5k^>C^XK&CdIgV&A-slRxZ zmY>mV`nz7N-AtiIa>wSfmxm1A;h~F|H8k_H*94L7g-QY196R5PbGr$RKh;x<3zdzu zm5Ybl9;bI1v2&x#y189QUKTG%Hwlgp(pVnCogVl zQ3-nw6Y)7m9w>&t+vUW{N^S-2Ievf$UzMkOZN}y{cl31Nz{H6dkeL{0w4t*Ms)q25 zj+t!ooi&e$u~;mc_9MVb0C&)%v@6|a%x<3`b(&}m9%CXtCJE1dlm(1-bzNcWm&ntb zRiOdp`LK3c5MU>UMQ~{oizZ7ojD_`II94{?oR)Q+8+04$W_% zK!;Q&tv)wgW#Hx<*YMCXxeJd6E;7?SO1UlSBa_GMmCYAbT);2d+&um^KVz~gy-}^b z^ztdxC5ez5OF?^FjW&jt81!+!@d6r)Uvq7ZrLC=P9peY|U7$*Z$lMx> z0U_4^A`oG2G-R|qu~$u>&MZeKBrL3jr|<<`U9V>;>+b1kL>UIf+TDBVH=scB>zhf) z)a+K+#QRRI8osEll~nOL1C1B~nfY=9 zlodX>%4D&t?uu`3H(X;oMCrA`a|2<%khUK%YqNG639VPWFuPv|k@t{dUfH5|DLjA{eM#_sK&PrZaU5Ec<3 zBO@DkNK(JZsPobA;Z5=2vrshf31go&0j5rMYJpyC+hd~2OW8-0$BI~jGftK4?0AZb z9*11tct^>k^HPHOM7`zS>hTgKD7jGU-@sZTi+MzZh1KP19k*YCup~jutKX?mf)uKC zgDU-rkdRVwiVn7m7v;QPhK2$W*34rb6n0>zkK}MKqiZ~b*Y{Vr;ryd zYxH5nKXPX8=6@yZxD2^n^ux9oZn$r?_op|C-)Cp@@bRgU{DS4$*m+et-60|(;-bWa z`}Qr(LBty>KU+~wVekTdWsz2RCR!f7wEglMZXRj{ZJZ^j26o&Ve%nqE34%JIceNln z`IC8m6s9u8ArruQv9_ag<%yf(V~wKQcSZ|xs(hqXrgwrk9&gpN2!M_Vgczmqj=cS+ zLccAfbm(pVE+6k%d`BhhP*jw6@Nt_*EX{tT81xJ~A)-z1n-pLM*pN%Lg0s`K>K=6O zDQ!Xh1I#06#Mo9kbAV#RD~N5oKsL_w5x9`rbtw=K0(QPk!9=n2;+@qLAo?cn-}{i3 z*8akYkh|&)O+muvKELGZ>gqvO;r}8dy+R2zg;vHF?fhIK{my~AIK4=NU=GnE2?e{r zbe^$M?~KAyE;u>b6_!e5T#3tcGUXT1^1VrE(ElVkwKmB|S6Q80je*8g~l!jE)GJxm|rgv9<@5 z0_K-bezrA6NDj5=LuJbB@}p#B=E57;Qf4YT8@7&;z)?5zhL&tJ_Qu4QMNQx7#(<}S z*GMC#Z6q|r0_B$8iqy}gAE_jc^Jr>m!3ph$v+S*2q$^{XofEJI?h5}IJ+#sLfn`wh;i_A@cW{CFSFjm(A8CX zbPdDintkfjsRxw>0D|noYeeE&VWl3-%PF7z?kuc8>Kyz~k8hA~&YpUVwdN+fQFKvA}S`v17KJJ zw@1nyoPeVd* z0QD9$P4jiKmP`U`bMG}!<#W<=oO6$rR)!uHP)PkV7SG+%`iINR+u|j{INH3R-m-yB z-y#c|cA(hBD}N(B;wu5{(4SC)t2e)MyAqR0U~Z8^PaP;u2n~n@ds5UglWtW+K#$;> zSx5v3Ydk#e!*$}xbaizf>E46xDqZgdMs;3h_>}KA`|^ooLbgMYD{LYnx|`j1at-c=t(G~ z+<0QeeY{Uws>Q8v3V1GsC#>jgR3AKkD6b8oSzL#SqobqmD)HG4qSL}U)|fvRh2`v? zS=j&D+Z0qO#jWGS+XuAR3r3;jt-BCPCO#!zyepk`P@eyK_i3%WAvxZw8AciV4~fry z`)DNnje?jt-G#ufK&_SZ{;JZ=_LCUqg&Lx>fH5S@y-gh@ZIl8s*6@($51#t z-U`GPH0ks2%F5gU_QW^sVkz2gEH|fXWUMTtLSLt#;Mz-Rk0av3g6kgA3EQD@VqWe` zV-0(AEx&8Zp}7=jfdM=Fz&6jSH=CHrvpu8{dILIW^qGfD50DdSP2N+yHmNOydeiA0 z+l6L@+n1qaUQDPR2?_~`VoLo_0eHgKUacaqAz1Qt_HTBjX*HtlUXYAeRg^VwzVuFB zm!|X-FBZ2qO|*jHo>{Xxc@OIT^d=2H4x4NNkv7l`jBv~97FtF!?Yd=UWf8roCo#Nb z1mccrl{MSqK|-C#oDJ{lAcO!R1o8ZuHS_FAr4*}_6R-FMqy8crU1qCvfroVCPA_Yp zKYuQG=nxUu=BWNQ~6f)V#ebDM7>V2``*3eTI|;RMf#Y4FDlhGo6v4 zMy{>=HA~4=)C15vQ{p0q-_n8z>9P$A!t6IYRDn0n{TgB;perx`1enf5k~0%38@L}6 zudo)gELy?Yjk{w%e{MBb0A_&(`L2j9G^-g;l}=4gzP@4-(D7_^c+(P<>{AT7cAv3O zxs}YExD?1Iu)~&23Vp)#4-+s*=zZ7PD+Kdpz7Z>xw$oT~!{mM6V4dv;I^`Yejs?9<6S5Z-^ztVvf=&IAy)Vv)wMp^;vNun3mTn31AfFT0? z;dBN>tuWS7DPFtt*9i76{d$W@^2NjB%{<4Doup$GpmTwaKN2b*t->BSA*&)|JFkI8 z+gNak6fcfORqdqIHA2%ooi1$eQX)_?3JMBncTl_C*hU+Pg_gRr>a zs#kT8?>EE7uTMy0<@Q#mbOH9QJzQz7zmRGW5Bj~x?T*t)Cy)r9>qok27`AO8lBmu( z51SHJtu`Y6opoPc3ebnMPm$NPy3(>LW@SWv=Rg4`B7$EnNK5-V`_%aM*b66i&XL!)E#t=3-#eHOCRN&?rX0)*&)B*5nS}+ z@cJF1L)j&S*SA@Y755zMdRF)ZB$pc3^?LJYwBN=mgB*l)qAOdMew>k8d1HCTOLzJd zq0l}E^987Ey-VUnT3iH`3hEH^02s^q!f+LU?KvDYZpBtVC{IOSKSIJk?qxS`NUS;r z*$ym~|45#bL(}xCzy7DDixt0AcudZvYKx5C~5O$*8` z^pGV1B67lN$hy=5DZd-(5r0co_VI8G!`2mwMf3Rmd&v8lxw%NzOFGHCF$?PcAoqW&9g zz<+{JoPkT%GhTTP;+S;d@}xmqCUNg_d~W3yE{6kUYi+$^vQiEmvr?ytX+1Yk92^(h zNNjs{Uc_iBSKYn9K_bBiY_jwxm{jewl#<^!Y% zJMy}ZjhXSRLB+IP&KVL<@qqT-lYH)N3A%0*7rnCUL|&v75gdmN@zwt$yYz-8_7LdG zK)nksYQ=Z!9+y5SjlKik0J62*SI|eqA0$?{^?;U0n@Oou4oDOL*9=FfI{j=`6-`bB zwFbL1Z?Kv@6e_7*+$+f%0xsgb5wY`~cl|2bUtA&EC;*c`SJop6-%I zd{2%+mD{peaMPrmhPTgI;OR?%69}e;Y!n_7!?0)y{SXk_BqTgVw!a~V;(kYRSKZUm z6$UFFVd;hJl!?KkIRaBowgTu-E!yW2#TU`J)WHR$*Sr(UoAS z;%m7fk1dL7hlYmsx2yJNW@jUmEdhi8a};kv&B3c=Yda5x*0r81y-?f07=j*O`1sfu zFoMi7_31e|`&|iptV{|dxv;__3*~(5A6R`=7GKrN>1@f)^S_JDb@7@ZOIR&^)3NeN zH})nemC4r%N<1`pWe$%U(1FAR))D*lJP!Do`vA1L+ zcJ3pk=67G7mY#q7?dJSp<|TMXd3yS7@7TCFGz|G*WD%s=v*Q{lD4Ek?YU9qR#?M`; zS(atkNRl|{ouNQH$_#>1z6)L1`|K< zk#`0`m`hGSf1?(OJ0Eg#?5wSwMF(L>2!x@CF9|_`8e{?QB06rj`Qgu1U%>Q8?_m>N1(}6 zRAk#CB$$9VFk;bb@_rS>5k*Y<8}&<%eow+EL=a@aGEDSUlr931dpW;vUq-ZdVIM~H z2xDNdj1nZJbxT<}IjQ4KFO3Kjn5P}NXr9%MK#XwQf^Wk2_aCr3e{iSAV=uPN#ca^t zB(15$^Osb^7Qc_joG*Uq6M0CgxfkZ{kM8ehGp1?V$~R_xK2&Z!!P5?{+sVS(9`;UL zgE60dkH87}hD!Z{d8ekT8eK*j=EcT<9d%fIJ?S}M>Z zOl>giGv)jSt=j#v1jf8Bb3&T9bm{24*rV6p1XiI=$m>3$L|EEovpUix;0f%1`c9c7wCZ^VcVotuhMDr^UoAlQ>StM<`xk zg*%@Uu}gte|7 z%|K0Qce!u{|73l8Fu($N|;|ruDjLs;5zy%}vfKP8cyXUoXS!sQQG7QRnSwOZf+P%xVhPazTEQ0RG-1;#?rkC>zmf-6=Z zYV^r}#8bWUY``k*N!mb@g*+Ih43Z_(w!ePT_AR~p{Oz~ayQrJ|#;V--eAc)1o!aGf z@`pv&@3!m=V3NyT?73>1mrn>=pycpXyj5x*rlK_r$*LS)D1-uJTY6_bL<0XqYyxAeI;%Ewa^w8ze>+*f`v&S$qQP@XiMdyjr}VM<(Xj#0ry zd`PF|z$NL`71}|k;o`G{nPrvJ3|UT6{JTt4aY?jlo?p^0Pv|>(Xxi9tM{A~;nwt+h z)SrR7gwPHF;df9)h9g`%zdC!;n-Qiw{a^l8e#0CV48OYmR_`8|5@8i<;%(s@s;svD*alEk<4po(cO(BaaKQv zimwJm9mrLrvvrFRcXWgKvYD=aDNc!&GPijvFN-l_F(4=naH;W%jqM$0*)t!06 zJUF-YE;Y3+L0lZ7C*au|QG{SAMyMc6y*BvkySuvyqXe8!EkLf}`wgl{aLNJ@b^&M# z^JdWkw8SCfaW>`rI+fG_xQQqqizq%m*JX-vy4@VF{c$ox%ejC5$Fi%>+xCh3wp<%e z>oVvo)P~)iohYHq5>qhX)k&q77uz3JK4hAn#RtgaP$c=|A@|XhYtcq&q2ZA#fx1g~ zP|!pIoai`n_Z0tSm}-GnLkPMihGnTR(qj}DDb|pKbcPyBKn>i0aRw0)kB($n*snbe zGO#I$duC=AE?j6dh_$q{gXDFu6-7=^pPYngv*@c8H>PO)eh?rZdNL(p_*XzyzO?fE z>Jo2)2HLyr;4sBj=|&uj+cO{k7Zmy8^FFepIN9}qRIkZYpY6cJF~2BYeHHR>F^6rb z;4HJ&-PhAgv??Q;&?+EJDjuhKX8H>TtZBFb^e>y- zB~UPvt}r3jYY|9CNB10)Mo_pI`hkjH&5@UGiuO5a$Af@}54MVZ7CrDLazi~`iKE=g zWm6|5ZRd}&%B;}re=QKfkL8}L_!aFjH5$isM>C#*JW$HwYJt7D#%b!AKR@= z=iYFZyU(SrXLV-3uXO**1exHCz0z@mHLLm{O+rx>87VpY!%^{?ESc)$*I-k6)Hhsg zDx6m2b?(ED1yN``!lsDR38ixlq zOW=eU@2m@xRWlCofN+!mWGVKo3g6RX_SfNCXg4hZpgi8=XI5$Em>1r8*1JYOdUeyv6mzWl4zi;tPB#uoo{COS306N2={V| ziAi}9hH)2Y3w9xwH|~o6%GVI9^~m{!9Wo~l}OUczW#fD!T0#@@vH;MwFDe!S$2}I zz~iIm78JV)X`ZqaN&tnjXK_^kG!$G~#P|1#`>~y8>r{@waN3 zRA8VnpL4{*%F4u3s)WG!9;*e^OT(+5>2w^9C}`|B0dqXJ6%<;;xL;SBd8kLj@@jMkw}Ilw$dkR%K>R#8%p^yBg8(>ZhhQ|qA~vM+-r4ekDd@zN7iL~Dje zS?>O9-tKuDQ?)v2Hiz@BG*L)vGlc-{@yemDhkAN+`b62)GT|4Bib~}7j=xv73%CV* zH=r9;JCOg`RvAM{y)c!U01LEKY6JNYUO?;ZToV!5hI16Mm+&n?@=$G${yYN#nI8s4 zg$Y7Nh`@9rIxu1!qzKcvKpIrMDoYu>Kg#AJfTYA$3C^65%sa%@waNp zKF3_tN-;Svri_}h{Xy{G5R&Ar-P?&^V zUHMV$j3DJO6Qg|RP62@KE*LJWEPVfaI^*PZMi41bf+`x8OFZ>N(BixEp+Bc_oJJx& zlkLq8F0)_pMk0sR8cC$jpFs{aLC}I)Ig3%&X|ygFa%sOVI7}(|)3nsUV<$kXs;~*V z$Y!8dkRZKOrMSCApWv7Vkm{c!APN_N|EwGtShL}#Py49&s6P~5GHXhOTxUwrTUb5GD+HG z!wX@%o4DaOXsN`#wSJ;}g+=sD|2tAgke^`V@U_sVaun2(mad(~WfTfR6$O)5PKADO z`oWvkn2X0ioM11i1nVj7`}EM%0BL=d%JV7qVuI$K|Gq`*nS zsRKW4#$j3#N?%yDwl-dFZhq`ek}1&P+4a|84}7Z$LjO-KX8Dh8C%~Fm^(E3|w@(@H zO?cn&c&y-65vp^Vd5I$EkOP!YA zN(JGgxcIU6xF0i|T`z5Is`3t9tLkGN_+BzoLa;5e06K(A$Fn-${;4f_ip$D5*l5B)#rHi70a zLP`2(V$J7r2yJpGC+C|tv6dKaotwdQ8RmtlOv8&=a)QJUGPn2UMhNy{m(wpSQV^58 zW819b+~(DvA5pPfXHa|j*eKka?&!*6N+@yX37Kf`j98_6B&G36$*-hrM#LCLkWOZ! zImLMZ>u_+uQ3LTA1Wco$(GcP~KL8p*L(E8roX{sD@MJi9WO3wkwA01b*bJZ4Ro<2? zIjpt$tXIvT&rfnE+ZaLft#?+b%4Gt}0YYX8Jie1a1HlXoz&vDK;>Tllmp_y*flZkL z-Ylb{6{_p1ZHC8U#53WA#R7u6c{!qKaiCElRPu3=J5a+D_=xr^e&-O05KxH;wdeI&gNhG!Ha!EP6TC=S z;K+*>LoZ>_Z}l=$YG&|@iVi|t_MD7+FSrrJ7giWA-xB zdeu3(NYk7>mz_gdA_qn`o6jHlqmPwf<$z%o4h|Sdr=Q`1Q$fIV2~`^{Ln&eIDA@VG z6C9rUvP?HtSMTqvRdcQe4&N8I#c&_FH*|TzAWzI;Kdv|iO#)NLnZp@>Cwvd^A-+sI zWEGRY{7PHDl^wXB=s;GH{5bv6YJRGm8ai?=oA zsDV^ksPoIQ$Xo@>RPvQ+1 z72}PMG3F_xEOpO|nk#I}>NEp&hr*f4-3sQWtGA_sYUPG19`rf9TlPFJ^?GDye9$G;_hB=WMe4RBb*T&IdEuK-}eLzAOMz(TN4Jv z$oac_ZANP)Hg0feK<~h(#D%5tPSGm-=91W32Jh+jZm#zRB9?z`_P*%lC$gtJW9znH z$Gvb?Y$=s1*N&gf#6g{n8^NPy!>-%%wE|z&)QFM=DEDu@fTuqR>@rQ4N!%pt*{TPVh zJ7$x-|NoeJ^LVKH@Bg2)sD!S{60)a~Jz2_LNw!K+)=<{$TecaM(1NmN4`mI>I@VCh zIv7m$WEuM~mcb13Jwxx$?>D#pxc=z6HOuSue4X<+kH`J&-QvjYxJhT$!GG<@$&^Fs zjeNvs@PH!UhGPOk5=DI%dfETd-g9wTg4Sld5p>OaR4md7T8Y`4m;vEZ#ZPV%Q6JBy zP{teaO&eP4{Gwa^x=F*7SQ*m|j9Eo{G8WZT-kDyLQugNP(Wj|D?H4ANdj+Vf(wPa_ z?UV4UjdxmVsVqplPd#3XV1GqxEG3fd1G-_9-13EslmYt#(5>GfF+3_C7 zJILNHUwP_sqWu@eqy!R{Z}J+cEdn(xInk_przVZk{P-+#sUogOJ#@+E81LdNc`+u% z?oD$Ru42Rg$kE(i)d9-IWn~2rQ7tXiw@gZ959plR7ihSeVuqZ`PT4S?*OO@@-EPk; zl5)IQynKvx)2Q8yS(PFDb%Kof+;}H{n?hfIkW9FH;(5w^uEBx*e)*T}?f!bzuKXC( z9kO$5Qt-(=QT2|(3 z#0$wdXb{e5xxooatu2)tZKws8OeG(WCwajslu2QuNH~58?Vo}+EqT23d;Jz-4v91( z_H7F%x8StceC^YE=87mCqcOy0B#ER{+cW3ZhR2BrSJ@Z#t?uE)RU9q*m-K5nIQDY( zWdRJqV3a;z`j*=0U-$OjfaG*_^~r-TW8Vx4Pr}myk6iLrpuHPn6Ugl&UmX>NQTOmD z-Xak$tvXdsC6gAmucfwoxBMGxg(hcT(~IBlv=lC!OV!HS<*M&wPdW^jOY&}^3`T<* zF-3~A%XTEMBpEoyv{PCMD4Z8%*k%f|3i>Z%n&U;kgI$QjxT$gn=(3__HGXFfJjkzf zVtM@uI0SR90rwUwYo!qdE3E#pqP|9>HE8RCrrJwy)w(@aIg8A?@9~Q2H0vffu0=b0 zOrKFFX~YCJN~IJF8y(ocrIJ3SkcTAD9;m>qVb*1TW zZsEMZY&oH11jV}{U!=Q-o(j7PZs1iqB_GE~9XxSLN=kwi%S4x7ih76A((u5Eu?U5? zA2 zkuhhmJlU2jQd)X6#hMt~V1!tzf6-zZ9Fiz4y@XAuRdS3{!lcr^Yp^N;5wIy7LT51K zYt28y={{kq>fn5C=UdK4s`JV1zMY`s8vo@W2jHD$WPSc@3~y@Iw=X%UziQ>%TaQN% z{`h{X&Dvg`JvloVxg6(VM#6UVEDm03Jd#I2LAp#moB_Rh%fsc*^VpI3u6rsTmwz^h z;Pbp^?uXLMk-S?D;SC@E^`@l-@Sm%6EYrJt!PH{i6+Eox#l*tN-!<33_GPlBdFpkN z>UG525eP82YbO@FBXYo7rDh1VHUP$c9s&#(61q+SYo8OpF*mPvQLL^gWA z3Ywq!X|oV5iRjMEG~o!Uzauxy?U%j!5#4j``;Vc7i`uK74sXSB4{a>N;qrNN27WLz zN-eim%ESJHdk}g$ijr3hYp4=CuYsxQsS___KhHllgHYa1Dl{%b=nYEx(N}ms%zwE@ zc$e4g067UxB`PFCi-vYd&Lx&PZ9RdALrj)_iT>DsX~JDzuxZvnHS^6WZ);cOS|wx7 z^*@9j;tOWPO6auiw4+9G#+GG;*j*EAG;+34*E30>U~?v@V2Bhdcz7T4-5|pjR=9F# zxJMz$1=-vkf1T7&yrj2JJsS+O7jK}6nOVReCvC(M?7QvhXG=Z*TPV~K&Mh+5QQ}q0&m&-Dg zww#}G3mtxMkyYYHy-NRtorPJd+F;j4Huk&3H!!&%p(iqQ5^s{*3I-!C4h+gyyWiAM%^G1@>r?+U^QCRrb^BSFfpn1I9iNRM zJ=O!mSY(GU2lDE6>nxZztUr z@}-GG{v)`r&ppc38qvw1os=$SXpA`~Ul^Xs@Anm>OpnVY3D0U|4o-0=cHrn=U2_wo zh=$A=<6np=Y^EQM74xlGS&4s!M)D2S4(%}qvoy#VXOzO`W5nP+& za7g)S9YcAgp1E^0Y-7NuIe-7Qkx}lZor+2w)Cg_)N7)QbFW(_nccs{W{<2_C@zHI! ze)i;h#=>xIO3zFZA)Q+jnH-gJQK9`0Ptyqzq5TI|hs}FMhl_MHx+?Ho*B2%TNkX36 z8+lgf362_1yiCk_24|dd2*bO7?*2{H0ys>LZUD= zl~+Qd6X1#W^eH;CWyxpeE8Y7B4%N*sxMt7J$XV4+xs@jURL`WW6W!Y8jy z&|`wa0&f*=6u^J^XqC7=-ydQDC&z9CCz(o%gi6Xu!JKAK*+#6`xD%q@2rMBNK5Z(! z24n3(-jzV`Ph%ZC(|zHPO|MopP8?UCns|b|>47SXDa_Yo46POnJ83&LRd)!cts{n| z58M2`d`0ner>N!NiDRw>V8#GC&b6*PU;zBZyF+2= zI%7$-76v=o*&XVQgE@z7q9rJavSPm1r~Pyxb@ANedq&3TP<~O93Ltn%AGZb}!tmZb zwluUzz%Q53x;l2y3EB1X(iO z@GQuXZqS$${-#!Rlb^vK>TQcQ$ka((BvVM+qhE#0e8|CiLOS$UY2~e({!=YZu6>Xt z28l&@)@*a+CrnLXpUWNlc`~V2b1gacgN|tXvJ;_3*pRl13nR37OYO@b5jEHFNLSHx z(SsN-W}-vt_fovS?tjdlZt$VCb>*o7NTkiVstSG{;{*yRv>&rn3y&8%Ss`eRf~Rcb z9s8c!C7twsKVqHvQ6eWms1kTBRryN~{bS~f2;Yc*eopzGqvA{;Z+oHmWkjmI(GGqR zM=XrmG32BUzw_2jQB;5cev&XH_QVfYKkkz(5(7>IG=*gRcJGs)`HG)3ybj)l#)Z{@O0 zwI6TLyZlu}wrm_$4H2g11gnj3HVK37Z+TvfkovCnrOfyfYdi5>pzNB08 z-WK{=VeDFO=h}&Ig;A7WZ})eDGS=X!4*|U3*@VdzVGMY{!k4~TTwC9)20!1>o(Ol+fIKL!mD`+2cZ~$37|W`sgq@ zTHBQvmR$N|oTqv6QfE_%H+cC+gr@#B!dD25b&Xwn+(t$P$ZPZL&KYd z?Zvs6q{3HIDGxyoCY&VDmVo}V7x9Aj{nTcYKGh8PZEv8d@*F$?Yx}asq1YNxuZ#Q+9+(u%GRk%+wGio^I!zGXC z?by6Vs*cJC53QB*CL}dQ;>#T^cv53oY5j>Snr<1>_Z?=~UXP?2m>8hl@SFzQXsO4Q zw))L*xu#H%Bk1jQ_2I2_lTx^zD=A}*bu~5t=0NYuZ!DDWHh;faJ$TWq7O@3`C1|>C-evCqO6LNJx=&nM^D@vAvZ%7;Q#2 zUO$X+T)XX%+U1ydDEu`YcNN(&c6+rklr#B~u*A1qi8@J(rq;8HUKYjuXVcY(<31}A zF#a4!R}eM^>gy|6kV;N*6f7hCz1A|n7yLv+NH9q{5ZL!mg}cGE1+IS?%byIq-(i|U z%}Y9QzzKBLvK5~3y8bhIgrMC}L{9V+_tTqC_Fh)h#ms-T(Npm6c}LvS#J`H?b;oC) zOULT7y{x&=d=v2)DqI{o#c3s^e}gjs+#vgC*z6P)EpHP_EWzch{NBb-&Fc(0~ zVMd+5H#WBXuQXNEhbpV=yWK1qBHjqlgl-fDQ0p@^yTYF7E_s~o5InC zU1OHtzE$R@$Xl&TtA-S98LX9g2%FtV5MPVAlFNsPcT7!mpt!y%P!52XDHhD z6Vh1~oqMh&PQn(hBJRu#p)`z6w`;AzpvPL(Ks~i=x7=xWd}|f%;wC&PkEm`Fi)&;7;Q7nwHB-MR1j+&!QCNi`bo{b1y!A!Am@Z z^UX2LOm_2|jI-9yGn{afcEalW6*tU%drEhh<$T9*w2^vz%R7Gc$=0}Z+y&Yz@sJY< z-QV~cG~^u64H#6Q0TLF@1=h^+r+>J!S9p8=~|GvhBSf)!73y6YDwF0RddUw`-d zc8_l=u@vAGZ1{H;p^$WOCrYV;C+rD^l(1X!jeK|EjLvNIrxtaBvn2Yd=!Gy0}!S$Xso+0dtHq(FIS9 zg3OA>e?F{T+t0&toR!t7zqrZG8!+@R-JIcGb%ZaY^wwkt6ZjHNU|J*#2g7`(m z9Uc;LSqpDuy;+Qfi-v&7nC&xKy=62KO)DmrBZCl$lY4|O#PnD8^l^RS@@e|X!0m}$ z)yNT>eiLPU#BQ{#Hjng}aw18X#DELqRB{T~pI!Ts^o!DLP6K8(Y+mn#Wx4 zR&Tn6^@J-bzi~5j&3~=W`fe;Ypbzkv0}n)BYt-JOqhYog&%5Hr0( zt|$X6@b&9&1+qb2@@0b3JHHX|&)39GJ$_FzlsCcNmH3E=e|h$1=97*Kb@jRc8EIAUE@5$*uFwFVjRB3F(PYm z6%ta5WlS0#gGyVUa!whbX}prvW^CUivqnkv{JtznswOMy^I$K&b>Z2vS?iM3PQOIU zEC;k3PCIGwPEl}1>P7_4h-EUk(tq1UaOOE4d8=(W&VUMHOu64iMDi zyAD?@pcFCFt?liezP39kb1Hh$!5eZwvl6MSX;-%{<+(nOwVv{rUoR9>*lvK@X}`=$ z7e?h%ac!HIWehX*i1*PyrYaCFwI+rj3g$TqZ2=J{EkCz$K$DoEO@dF~Y<{88j?>dohP`t-f2U(`7+W7AWh5FEihyX4KXyfjJ0Hft1vb#~va4k2~ zoqnc4LVrds(ahM{*#SS(`nds2-vuHS18$}Dg1WCGfMc_Y-W3|NK928(&dl8LS@ne_IJ`A&(J*?VTH1a9VKe9R{Tx9 z!HF~0?yZPhmi#SW$`jcm7vM8)AiYddF8DvL8dVF971&q9bPK8pudP44z}od1xN~4& zuj)rAoqz6^I}S(9pesI$W4_J7HTy#X#HVoeGc$HYXd}%#wV8?qc>`}8!H9ma*@a3% zE7Ii(NLk;$L<8W-xqaW5;2H#WOY*VE0a&58YO?<^2O)uV{m`T`!{`id{;FD zbl~dh@sbl-huYb%K6BwOu55dD)bF4RoM&(uSRu()6ZI#IQsOD!8m!D{cnpsmZjeY5 zW<4m?Q@GA|nfPBPnOeVz)snvwvX4hOInpn!4fv_kg;>aFSFY{mCTId~ruH2UI0gL= zya2BcXNRNM)`S@H9sEA04bL;22n%roi3hHXrc3iPkq?G;B_4yG*!>5RkV;sr|3*WA zkVF0N4>G(*|8tFICPGEB;w z!6Wb4l)CVi4wQB}(6krU*ZOnm=m-%tnz4Gzhe5voyqN#P%IqLd^L2ST1~g?m=*-3w zcxGPCbnilbrT=o4)KrJkk!a)r=_S9=L*oiZC?!XF3r->u&j(!JO)F62 z;+ZpL5t)YSk-oIzu%qIC5dUIOjem299_*a8iJgCKk942lR(Y0SqV!}crnoOh>a8CoZgX4>;yP%}8Mv1EwH8rM=p+uIqS7K?b_kmA8q0gFmFRzbogP%iE z-LY4%8F(HmW>{u{3xzLX(}WG8k_gxrG6y9t9?vb~m^h#bq4Ed;TkslLVM9{$q1eux zWF16h{FYj&*sYVH-kug&k;j+Mh``xS-g-RJf=?zCbo3-3F?L~PuLixLX zOPY$2L(44mCS06;@ZlY)XH7Mc0ChKo)K{b2UY0fyXx-53-PprwsB=mlp^rWl)7ni+ zxNV$x{0Ug{@3{|%z%5?oNmepi$!B07fBbq*x|U}#iB2tWgF3eWR19Qo^9898i^?qJ zXjnI5jB&VlwvW1rr3lT#!|SiRYG!n|6X8Jn{!#n!T&fkF+0XXnL2&u-yt;orrbcnq zs0++YAI-#HCo*4N=|&I6=qAaguGN;E67~J+SKV8z5k@>fJasA0KjbwXo@A`v(-!$g z`qfZ`&5?y4P2#_^GZd859=(6++w%JMoeb_udD(T<7LCxn_zK_I3Lo;NKHRXJqU_Xa z!jzEc%50OE(7kI~T&`9sDeE1Usl%;9^!pToEoz)z5S+%7)_^D zQ)tt$Y1*e_G|ZnS1wnsXOc{{T1L1a1pJz+;ectcQC_8bgLd^)h(^kq4%Q5wh!6vv~ z{qw>1jxYBacIgS{JEBb+o#A9Ey7e=ZGvCcmiT6tL6YkjA*HV!y+&=K^$EnT(rLq-K zSWW!eDb*vTIQru$aaC(1TFNrQZs|tdk?M!8mVdR2ZbuzP-o7tQc^bSm$S?lz{afFr z>Fd;xxCX?WFw=to7F%CJgoWDgL>t}Aotz4i9gxcjBjqA5D}L(+5)_WWBa$%IzqYcz z5&9oZVWT8De#vxO@nBzT05z$f7CxOM!%A}pWL?xLShWE5TZlvh=l%Y9?&(nY#96B* zHRQfv#QS(N=d5Xmve;h#c{6I?2<@ZCLi5e2lG^HlsfQ-2Ay=~_J@T`WfeLC1+6fuf zCD5MZRt#gzU8M3Vt~uUOnA$FNR2VqKyYf-*MsoUTpLD5PMv`u?%5u%wS-dDmu=^eb zs@Dx;2L)4(l(3P#oNcR3^t=adVvwbf8fita`=+73d{pF3gyqO`-uzY{b-$J1% z&C~ZAw>)sV_4+i-SL-G*Vy91 zBMBMeA++x~az$zV$X?+yN5ulzdR-RkIg+gJm_-Qezq}WaYP<0UWp};p4e(Eff#%_x zZ&@|~o*_;~BFA5VybKpw2KQM9OnLroMWGc})X)>yFm9tl+xe2QEzVOn1;yS4c97NZ za7ZuX?-h8ur_{J#UHv517H4HMbDjcc^s33NmkdscvW_)%w%;m52(thsC* zZztC6-FO%8_A%Rd<*18`{H312*g?(zBFbzJkrBrl@XNW#C;7x@u1&kGPGX-2?K?p& zRP4YcAd34j=dW5WOf+^5^}>Y7z2?HcZ<$+8UZyph zHPm?cpIWqO$^{p#^_pY`9#C`E0t1ny>Nb?o$3=a&_4G7qna|_hIVpepxxGbeZS`+# zY%1dvB)f$K4vS05xun)kkoWO^Uo0=*+p@?}z{Of|boovR(G-D3+@e3KG#BrU4O^9a z7ade1Oov}Ho; zU=UF9?ic-ZYXeo&3fLm~nL+t^$m&OsFoNj)h@@pc8l!614t1G!(!AsH2mnU1=U=^mEcd&=3(-4f+24`|f6evI!WkMF_wX?7hEEhz;0*;EC`g z$P~Jhc_;)y9)_hv0#%Ks<_m4F1o`t1_V`bmV{K~A781gG=KB#K!yD_8L``(s#GYg} zI5+TpI0sym2!Z)-rHB`$BP|ZwLP;1I{ck3jLwu~y32 z#SuUIN}&ms2O8NlaKzHj^zZ$ESqQSEk`w|Yv}X75IPcEdV!25~qAP?c0my+PK%9`e z3=YloP7t|#4BottXf1xZ&z^v1+#KCTlon)H8c;Sar^k+Q*yZ4KB)?KDq#bS}wy_j!fIt zN$<(E@{ToM)II^V??9&+KhS^d1`syvLHm6gXqq8TRJdz80Q@{(BM}*yGEhIlJ2Z!T z-OS-9<9P%m8RVQL_u<*-JN@xRXqsFO`=tuVk-xPAki50DqUu-!H%~!|jnpL=Nc11T_ zBpntJf>Ce0_fh`nPJOvDO|B~#wNjk;dwG}oW-){g>LV0a-1A>y4~s=(IFf7$o>z5x zQguaTWu{h~g}bm*Fb0)3y=6)`1sv=WwSor+mp9@G$rbaw-PqEd0Kf3J+tItx(R#=z z0knm9=`2m!uU-7yo)Pe>s_=PpI1=M!ZKuh1p8L|#oY)nIRYPFl2Y#r%j|?2&uN)o` z-r9H_Jaaj=pu)bXEJkF>DaAKDNfAms6dA;@ufn-$6W{-Q$gfm3iHFKhqCabn(CzDybpez&PlhF^vpu_J0$D}LJEy3q;2xPBjw8=bW& z&fZR)>t+XNWuWYnw(@(_22v=oQbZ`?o$m2uD4n}BK?5!Qt5@iSjqYPN3baIkN_^^ z=U_{TgX}Rz^fL(3OIo)lGA9+B#b?u#N_yU_w%X9bK?A!UM9-Z04f~zg&K-EbavGAA z?^~vi_hbIRDv}UCP&juePt+}LppC_uaMh1`A??Y%p2Q95pJ69gDM-QH)MVn-jf}>i%-ppFAMXNJ4GcP& zO~x*&melYzCMxP-k-w~!RkySUbn%q($w||HF!t5Q1Kr(GuwiP-PaCP*;N}3>9zZ8l zSLf8G>o8W=>tCdC+jv!zsLIAs$w@<#B%onKsnM9)$MXv2BbgaF49)!=9Upv-(G`w@ z<?w78YjNidnI>v8oG%J*~J>1-R}Hu$&$i%GN^mD zVoG)Zd6oXCkcNyFo4q@WsM5N`m2v1Dp!J<-v&@G=j*26>pa^iBSZXe)3By0l=p)Pa(zUvC_nGxhR6MsEu-e~ z^NC}od&F5y%pk%Grh^&j)LP4ZGjxr zSP-alE%XG`jWzJh{zFo7Nu_iw6>VaPt)D8yObSgre}!Z6xi0aE>TKj}TNN-7#m(nL zUfGDGRdxGxE!8x$ZNI)P1Q#g#Ogh#*dAefirf4Cv*M^I}uVY_ULPa~d zw(#o?Zj(Uz2$J5Z60?PB>J#4bF*)&IkXs+z)5G&9Kidb&^b&4l8>dv0fUo*_DEUP+ z3Zsa$-^4Jf>)AY|H`g!IWj=@1bA+cKkdTe0+!}TlCisYAhdX-s#+t0JrS)eV3mR;3 z%Y_jDKxSB{Df~u!@GCwuInRGg8;fyCSC>{GT?r9o zw73iL3u@4W8WO*?G887OAiTPkLso{dq@7cALPBoEpi$yY>ZY)WvVbe}g-8lw0^FTo zrWsRDN`0G>qV%ZwcvCqH#=5cCS*5pSyhrY0&SE_x)x?~%ub(tHPsV4z#IC_Nq=>y= z?raW2x+)5=*U%lH?BAjsrTrf8X<1LCp&#VG>-cMMrR6p$wgExKD7f=OuS25=5 zbq)_Nuy?EUz|>s3P0aalwf<1aI8+!a4AtZgzlCS1s~|k&ig;FRixHr2Uja#X?4U(Q zb%(2K2NtU}ThU%A9lEatZqnPKp97h}dx3=3-r&Fiwdw=urAXXU5JY~h7K4$t+t0A( z!5i1d0D564YLQSjSop*sWV}trDUtl4m`V1YWS7$cpupf4^XCE@1ZPj`oH0{R+U!06 zW;mN*5ehGr9+m_=f*!YAK%t90Hjr|L`N=(q8wh9&KNC&@hM1rRocVJL3oNScUS2In zqXwBW6$qyA1qn}ohRsQW75%C!$?;DdSOH0Z*xFPMqaq+v_?7pBC}=uro#Ni)<$+~v z;^cT)&_X0E!5gcS3876rlrtn3A_O2b7;lnPNoDS9hPc;~j4VO4#+y3b5jEZwC&*O4 zkmxnS`hQK(3FwK1OF#>uL~M7Npi~J8pER|R%XZTaMSWGB|I(H(#R6^Av6Xb+glTP! zOEHK2n6^=Z4xaN!Cs2Oc#LC^YT{^^$TKt9_-}nL8*E46x&>`KPS|-YwGO&Z(ki3eN zhR%V2mlzJhV-zb!JeuzWYaExKEC8hQ&UO;Yg;gMRhojG2_c(sz2y6%$f$bA(C)}Fa z+NeCjXz9QW1!-dc{@Vcrc{;XdyZZxnN`-6MYz`>P_B&t+3itz?%U~V@WCI6pP@Pjb z_<6fv-DG_Hxxjl6XaZ7lo2bx#)ULYe8MpDRRyl#d_m?a;mlJC6cv1i5o=+boSyEGJ zw=P?MBAh)#x8H}|Y)Q?_M9Je#&AaPx^eiZN8d6-AF&T|<5>8pEjzwSu7(Q90(Y>O3 zl$BLzB2$}ajA%t<=g<1__|hj1xSOell)mb^$w@EKbb=4+^_?|(uI@`ifW2ENf+Y;| z4nn%g)YwST@rhWkg^F3xQ0a+n-mM?&pY<}R&{81MOyr++0%~1)r{W3v(6~Zl>Q)Bi zgIO4hPcc}+5k{4sWskQL@4WYSnAk&R%l)#mjFs*0q@dt=l*D~pb1NM^&Ei$O(utI6 z#h0)!?K5obgIonHcXOm}q=mUK?5<49%DRrYdG{{h0p3l47`jAuQk-M)>DeaszJ*LO zET_nH_Srsssq@biSJN1S*8bCh*Av7qF3#9P`9bXp!21SIz^BP3TsAVjT&uy6xIG0U zXVRN2X1y(+-?hU~$1I?zh7s?^cLBqfaO&AGVb%OdWof2>|HnvP=~{4eKSC0NQ-46P zhv|l9`f1VCcwdy&)h^jM0DiQV#Fu$M9L8^w1)lG&EtjddzrwGs!TEbm0p(J`qau37 z0mU&9csobfhGBx0N8vdE;72n}R=^NN9|Eocd{H=>JvR`wnLySa*6;nDio)vCO8}KL z6O+x^dWZCV-qRQ0{T;dcm_5!n6x>gia9fwIskPvv45)7Iqq)gXS^hBlx(6oOI-JLx zJnLwf4MBp0HIi`uHNSvBNQA(2Vm9xUC>JbYqDA|&K-XpBjD7aTz9ab3v#c!0=Tt42z(<#MpuGTO7CW+#VK(PdmARGPpoNix=UTU3s& zy`^hB#qXmgSJjt)rwF!PSvQBUlrj+;G znM%jBiAt`DpK=VZsLQ449l+2)MdD!pDxQ?IMc+7a5cu4S!02qE8*IYpqpVo<5M0v$ zQSp%vCCj=vJtuIM)chF)5B&9Czi*r2%H%;*3-j4dluFAn;DrxNmD?EO}Za4i(Eu}pKBU(iU-f(UAllc*hn{cdJ7_d3JT^)4iHT0&Kr0f zf+qAVIt~m`mMqI&K((v1VrHbyzR#KK)9Dhe zD}_s5#xl1o_eBr3Os79R$LA_$cKLOc>|)(SF8(m@>F|rlkkt%gx+G?0mqV8=7IT0OVR(guq7aoue1r=>Ro(FUTw%DXIamRk*Tq^!$?KJmtc|Zb4=<#ix8xPi8tkX#Oz;^p(V0r|-JBbai*K%#*JrBYWSzU5vNhtoiPny~1D%6NEUl)^f3lwSw%FUv^2$a@wai z+^e=+Bb%0L}Tc6zm`w1Qiv99+$OqC*HH^HMhLc`F+LyE_9sXv=4WS1RC02& z9pa~lK6K*2j zW`9_GL@MTE;D(-IsD>YO&S}=u9(|J29h{C7um*>QvEu$pU8fF!q^J$}Js3Bmyuw;2 zx!|gfs3A90+hVHPhCJ-kr0?B-cVkLWa@;8$VPzvrS|x!_cj*1-X>LmBN0vf{K)%A?4yj`DVltq`z_J*s2a`X@lu9 zXR;dq4OERfI3evlMQS?nC-(Brb4GY6J{&onFA{KX^%^cN%&j6QK!)#|k~j3+EU!i` zIB6zH_7w2Gr}@T29b>jV;1)qD0wRXGu*6|>*D}tP#t%&wFkG{1j*GC0oS9TwbRPNC z(kuwqc)>u43FXwvII~{kJ(%+m3hJp6X?{`X7V~{` zYX1{zb3_4F_zvC^;X62{z^c?C(|Z|Qq()R~x!+r-6xx7`SnkQu6bWJGiwPn?oN)6F z2~vovl34_<3w0~9zk=$*4>b=^AW*JNV2-n+*ypAuO`-RblV1pj{0L0lPdT(aE``nB z)t{{mmW9G=ZLsw< z)hWa@qRHz%wr;Vx^_@}Qi7Op|_?uG{Mg;S`1{%pFN!E!ajo^0f>Y!Z&m zn0g!(76mf)^sPytgsa&{_X3!<=%gzvrs2^S^TOd8!vYE{W>;`N9k7Kms&Kc3g8HAmSrO|z z23Nq};n@X$T(|cgaT>PxuK$if`A5Y-lb46}8OR%nDJf?6?`IoZ6yEdk@j1_8@-AS1 zs0yQr1%7fM`svf+0{=z_^Nr15r}*fLZF#9Oggkfh#$@}NS>H(Se5p9h$&FO|0#_>9hI4x7GbP9mcI`)H zFTlx+*_J4bnZc?2r#hCiQFXJQPNcm!tSLU8`PZq*oeb3Kzm~S*8QQu1s-;EI;Qg0l z*X)j59Aoh>A^**O*T9~*pZgtE^XVIJd`B+eK*drnBa6UpK_$4}^b|cH#rIW7A+@1o zA5H9}o`OheR@@CR@~3pa984`*svnyHJTI*j2qP*%u3%28fYP2b*I_ zw5is*qyHZGl&6=8Z+F8R!Ylq{zux=U9=AE}B)1&DppyH!y~bSY)}Mc`6bbzdJ^5(L zg0FOU(P?uy6t++mx8`5xg0BKxjhdQ6Bq)8k&KS%{Jsjc67oo{=W$<%O!=>fn32}$F zU=K9SB4*M4Z-${db(1GTdoZx`=^8tYa!C2M-wr#naJdBsWf|D$|CTO-H~@+dVoqDP zDE7S7g6i&L-@jRqYSxJosK&5nOU7SpdJ|>?NAqM)*aBw1_59{avAy2U;7cbK<@!@o zS!9%qVVDk2_M-X6FoNAiefA47{R-KK={SVeS$CAdR58(X8`I=Q8#BY6v*A_KH)85L zN_d3DC|%x2r{;-?n>=Y(e%uTmH{AvYt49KNk03}|eby;Sm%YEHazUG^wD^tARX8Ff z)$Aqt8~pn4`gVTT!AThVx0YG>(AUqOKU0@9L;zhGz|3lwU=uy?&N@-948?v)Fl&UO zrdhD;W7{yy8r>a-K{jWumptF@_PzwBOFili3mi6#nz&{I2JJ?`!OF}-mFDhqIw^y} z;4$`bXZNR>ZxYN0aO2~x$qGgw zf&FB_5`exL+^{qZy!yrZ!^zd!RboE*dCV42>=(gK8F2d$`Va8}2(+@IVjBqj3WQ($ zjtR~VK&%1@;R7d=xIQJMlxk#LAch@z;kTJk{Sea8Pj!W?V%lo`Mv(|#Wz-eiV^i&+ zYNXO^@;mB5V6PJ)c~as+ZVdBZH&{&?e#+KeE%ckRKE^u(Tt7DjcXd5mo5(-%R<-V* zi4l;XUmV2>y*cC|L6v;bQ!O1F#7}aVH;idEHk6?LZojT%2OU56bCPlGxie|;UEqpd z3w-y~-0zw{(Sh9bt{wR^c*4Hct&tqQZ}uE5tav+dCcSoI>gadW=d_bp7V4)7SbW{1 z!Z>ti7q;kN4jMq&QJW~R<-&7;fy)u#5inW3NcyzO^@lf;rW>}HvA+UJ7rSe)6gbL!wx12uGjX81Hv=IxBZiJUZ6JANs_IX^ zT<)I1@Ye7Qc{LJ|A#G1;=7G+6xAohz8jYlyU_bX;^TsQr;9m)lyegtN*iOSlHv;`V0CE>MJm=Z4G@C2Nx$qZvtaPj3(XXF4sKb0j$!>j`v{dRVVOI0SmwTJPfqoclPUzt;ifCjV}!xv%4 z*$V#NCXVhkGgKft5FYkYsP-iPh9WydVB^$L9S2Xryq?=X!@G)Vz*JO0{$pG_99Qig z|A5_mZga1g*vmsfL7f95!}C}~A|IP&q&7DP-YrZbE;Ue#YJuGwJG=@!5H(j zQ?|PCtMz8V`k>GE#ZfTq+!57)tj06fynvhh#6$70SQKci>5(5MCnrzAR>5hYg|{z_ zwZ-k1B5Zg$ykLgj%GikdxoB40CKNWUD_(hmpb9#in3yigdAQ0OOg_oNmpB>Gw*4Nj z(qan0s|&6qV|F%Ykqx4+E7E|#uQ0HqDLsV|&Mzjv_KO0QvzuUTrF(9u)}T?JqVsvj z+2IZ0;P9WKRh6?6~ftg81P*|&O!nU1ySuE4bbz?x1r>pN@`j0(6 zU6bAgEJCxN-bV31t}yG9Xb2tZGVpf`nw<@fa|v?BkEW>}}t|NTVw zOs9+O-0_`XnMN(x^D13wGAvdF`39RtbGD^27I=QY*dQ7ZT@|i)8Tw&W)o*=X#_gGgO$G+vpHO+aW^G6Zh z&Vqb>i;g#F%6JdT_~|-$=`t2f3&e6uj@ue9Lf!rRxsTHg9B8O=7OB&sjDCwCfyL*R zoADdG>hsyIpS@VQZJBNQ8ydCaJSE2I~MAA zPq+-vQdlcGW~p9y+F`KM=QD1y=@vlEZ*Zw%f?|6ipB*fo#l0>2IfPxU1*eTMlIKMU zYGMV7x685i4{chtoU{$)ec2z$XrIK590ae!f)5$`aoyRIhxGKm6Ar>Xr=u-@nwk8w5A<85tht8KxU| z5ng9rW0Y~2lv6%IC2>(-YDsNYZVJPdUIl#PmUG*`>ns=qEsSxF7-vYKfLU?C(+jSit!*=X=V7@XSLhmuxsG-fkBrdv3&^) zh})#Fg%L0JmT)r!@y?eu{7w6uOZf6lP*u!TIebdP(`z2*eM zuFE2)=#8LM=KAB!mwY~=vADCf-WkL^sh?J(t}SSWN1?R)Llx7-z^Q*55`qRwY{yl# zxGdw?oXYLRRi|3_y(sWXttPsT^w9DKPQ=Ti`)aATeDIicv=a5E@ml`4EGJ z!A*Jz$M1_YmFMnq$szvMP}X0%9_(c0JMg~`@>bu>ECm({C^_2OYf=;0X(2GRgw0gk zU25+=%tWPYl{Z$Fo)w5y%(I|-7zFP%lhzR*A4&WHEh>kf*#~9`-ELyhq6Ns?lcvEA zYcb2LD_H6?SL%kuxJN?u-T4q0)Wehcqw*Rj-HPA(*6aO`#EKKEOVTH@u+Gd$d7 zb=S~N(gof#ec%T3+0N`0|)MX7DLWM1$6{rmm9cSmQ^ z18YIoB}{CL_}xQ|gR8c}v&!d?Mb_(I4iDs02Cj`Md!Afjpr58*y4F7hu$bM%S8m=E zAeQ(axw~-0b~!=mHd17E8H4n=O%7qV9HVQ6knMD>&sv}feP<71lCGqwDZf(j7D9Y} zlYaC3U8*^deR0hW(eGY+fMaFD6usMpPcBzKnou&js?Nwg47Yo|F^yJie0=}#uxQ|K zU}HiSr*DFuN_V5a#J{8V%R#JTS9@JP%kf85B(ZE#CsB?Fp4BX4*YY_HC*c$?<00R< zV#6P*-w&qhml$ziemrF|MU-iJ;3NPu!fdh2K-t84Rq8+0dNqm46WA!9;P@=pv&V%n zv@nM67hN%4xa76;y)u(-BvmFdL+}l!v_=116V@b!t@KIj()I)2kxva5EA5*?%F6|d z{);a9%Km9t?Y}2VDcn(=*xl?BqZ_Sw>}(nRQHhacD(0K|V(S7o5yX&RF#m%=xoVZd zY6C&dn80~wbNdaS%&~P=?Dnr!_nGepdnorm7uIxkE(a1XOyI3ak7GGiL)Oi)gOY-E zlC6#OPH+z+FrNKx$sghAJ0k01%$6U`-7R$xWu|%i<-wtNgeij94NhZ^Q!RO!jW$-N z>l1ue6Bm5(ZDUDonW`rpH_RWBL+&pZBzR+r@5>~l?Ad%ch3mwT2D*nx?Hh*);lClY z#+@MRx%qpYM)=M(Gcbj$HsSp+t+Ou{fp%pE&r-u&Uk)}5p&(W0 zU$BD9&vdiaLLxB45*hE3bkd3--4QLm>$b1Z_rLO`8Z^DH-rnWs!M*Duh z@b-AXW8ZTUi=muf-&F7l%(iEF_pOHz9UE(K>z28v92L1seFZS@8ifu~Ty|k73mx;d z|M(60nXeryC*ZCn4bH$lD1Cj)bQ3i2#mCEsems39x;QvnH8%5fO$uiCB{EgOA`U4J zztHL}S3K^{cpz|x?v4sq)d-bkIXj8q-`ZmB^?H%Z)~_v3Vt&|%&TGy!=* z)u<6g9HD$5Jw*3xKaEsJyL%+xO=8o^)WH1La{Pl(DZpuQM9 zc72F4vs0;+D#Q*wrCgwj8kT zwn%hEa_NrX7970cT6espqy(Bb!Wh`oK|YQ*V)}RZ(gYRnWJb*`XnE~6Hvd*|S7Wx( zmnMIVR4Eaq%BDvKZ+`giNxa3BbMn^h$s9$y*-FU|NdM3nY4AMt;FDbK$^WveGn?0r zH7i$4gmF5K7=Z6n7&#Xyh4bh8@jXPdmN+cGMBGfrRgyN_&AL!cc`2mdnK2o`nN{C1 zou!I{X-H?w49J@sBR%l8??wdyP+7J7q*hT;5x{%3M1z30vhz~Y)6{IK@?LJuR}En< z_MlVz9Da!->XMxElDRM-_)s?%$y-IVui1wirNl==SJOipur>N7Yq_Mb&*>UW*b?QBfpBTDlt)knWHM0qO1r zQ9@ejMx>-cI%W_l0qO3}p&14k80I?|@B91iGk@r#;@o@B*?aA^*52pH?>=b!XpTZP z_B#%)g{wY!Kxk_*GjYrwrkve#kRv2+_=REYP~qWrr`KUrF;|nPo^hZ9p~M{GG|Fdd zH0ilW+Iz>kzJa~qQJxF?)-^T58m2n>LtGwA2u7Mn5VNgn?FRaF{k4nRJz%~mn90!{ z)e%890^cHh-o*Hx^EbU#lDB$8@$a5~;3!8v)vsD+I|L{Rmxk&ntXH9=8OPI?u8B73 ze@3^AZ%|V31x7s#f8w7$u>6)C5?=t2tsW7?H`~dKI`UCI%y^z-2MH&#gSs^1W%34o z*~^=2JViFURgTqBIE{u^w${~TUt4(({J21L8*PG4nKAAe-a$EacLnQ4ao8oQmM<)P z(!~>JA5#jxJi_AFg_Q!D^KC9i$v#!Pma}4Yah2d$uYSwZvv#ZV8?F_f-$Gf>PMx61 z`4>gS25!1F+tFeVBCtle(#(MKDk*yb4{o zLvHKl;Q$B9bCI<49jFKj(E}EFW_jM@(> zvr2z=wQDK4hP}@r*)01rm011q=#9(k4Mnrf-CV4@^J(=;0s1mP>EKy+#-RZ1gmS=V z*D7Q+ovdMlxbwUR!nxX!%nsPDQFD>b=d-Ks5S|8oe zWL3nvGda+WLqsLVrd0hXEsNAsVPTcwSmmJ2N55t79WJ*7Q1^rr#+?N>8#niY|+ zzea|Ml%Y;pdbebMv6O%gOYJcY+XG#@<#uzzO*KAwOSSB9ZI`j=PYIVz+B}NHegH6n z-W^UU(Jw*z&xZkFR|EdK19I?QMDtbk8HbtH6dE6@*+hVpOZcQe-uEQ+IdtDRHt5HK zw97y6K_|D>%*EYa1^;G$+O?QG0PSPcbO9!nID6tkmNn3`P854@If!OXB97|lE%YfX zp-u_D`C_)^1Q8d!wOT_al)wqhOF7tm-4~1v4(bXE z-}RyeT)WmRwPK1Z+9Pll=}Elz?Iei>8q?aoIK+FAAydgA26{xKV2w9I_@6NE01_j; zJL1A#{+DUE-~VA;Y!<2S#V9s`n8b4o;eJ>iP>ap8W*lzELBkzF_*W zr7MLnILXWlc#4C#`5acK&B&3NFpJ?peRi>mTh~oUs(+j2(-<(__{;aKzSwwd=d=(r z=<--~MVG#gAU1PsJpQxW;YA)!qg&UHy+ys!&_1QIYYt89UY2wUYujT{DCj|{zTyIh zlOxo-aKNVkzdJwe+9Tuwm>@?6pA|QOx0wf*7lZjAN4wU*&;uH_=uIvsDqmi&=z#Uk z8%&}Aql|l)ThlVnT*@zp-e~t3xX+l5RhaG+wK`A+WBRs&(EN z`jnl)_ix>RAr7={;2*s}oxxzRo?>yo?gX9nqx_Urp(Fdux;D(k9uA0I+QyK+8EBX0 zH)B2MR3Z$2pB`UI89ZeLwsPD>Au-JR98m|BxuJPYL7HYaS)-V-3PaYUj)J<7lN1^$ z3ytRDp`4g1>?0T8;x(TiJ&wRO9x5d*^z+Fflx$eR95S-hMW zTRPp@VDs+xGYq@i>0YFK(-&uJn<5WRo*Ac2?RK4bB1sAq7qaOhN_e ze9KIPDshS4HnU{Z9Q0Qi>pNwzSeXBi7tmO=!5y~ z3w=>0;jB_6zwa7?h*llRsg({emg}Pakd{J-*^-O-yRbugCAeOWN9#l z(*U)p0hn$7UHNx?@ui73A-aHeX)q!8ZpeAw7gcZuK#%@f^1_(684Ti|5!O{sC0%>Lk>kx6aLWkDcXKC( zB{h(ZjOp&SentZk^uC=}ebpr4u0e(Spjsh9!53ZF1VxP*r*}(6RCwF??EE;HujH<8 z1Qq+X6OrK5ylpb)&Z_j%J1<7{-&&)6Ynz?7;X+X9jRoU(Sm4awUxI7ydG7O_Ky(H~ zBr5En@wfwRb>l{m&3Mgi=PTkNxE~*csKG?vffGxV2|s%mmeZyub_@)H<0R9^jRm=c zxYxw2j6~RIeIwa~UP%p;g@-(%XXXm5y%r|hj}iHgB*J9e^g-e&$^q8H3y$&;!o7<0 z6!xw>o_6ZtI`-iZJF7KlocqmPU|_J0bkbG;H)(KG-$w&ijVOyZVP2 ziiGA@rQWf`l@k%?Xrquuw2GlL#ucm0(}k>P^NJEN=Lhoe7g%+UCDqyMMJQjEz_H1i zujlF|c7%C6$%$>-pRah^q+4#XIqtZ{S+Ll?u4(G>V^Aht%H_F2@RXVPVnfld%bM~} z?Fr%#k0;>U$3=61&Hz0>=uQ{@e5RzVJm7~K^8=dZV5i543>2q{AF|PO{FUIgCtpxQ z9|gq~2)?A~&dBT+mRYR=yA`}(njGra!WpXtHB;#t;v()X)%WyqSj=X3q@GVyg{D+{ zC9$(K7_o>-4aU~yjs09qk+Bty|OC7a{2xlf6S>L1kAm#bYl#Z)Ix$S1pM|JG* zjvM~FHTP$lrQA^|qAg;DBRdlnYhbPf=v7uRutIaxdsgh^^URu(2Vr88&RtYjN-r=E ztV9-_{#ap%)+52_hmAbK-{v3rWV7&ymBMBEd~GN-Jk2_l0fIbAh=VV2b(U+f^f(-F zicG7>iTEDD!o;%Fy!(7F#44b3;v!Q;>q_z;$a|!u9p;TIXn*P_Ki%LbaYu{m$!DQ1 zYJ;;9Y`j$l)nWsha1Yxh3a(mM^;V`qewsw>YaHB*Kv|$Oqo9n2?Ccy66!ewALG{Nw;gk7yiXterN}8?94k%k&<};NCZnq=aPe`PTe{!sk;-34ZAl0$ z?ab~TVoAnuZx&O&?JJr_aMrWxqfT-?*4uwS+5nPcRX1er{F&yW8|^+6Xm*XVS;r1i zWzv1$^wHlE4g;gM4VR@+NzHjJ-4UFO2M$G(R3yJWeR*7qni~9aOX<;RjUMlic^ZCU zSqW1#x#&Kijy)8}{aSaZQZeg`u1x%}%vuoeYB`JXG!%c&$B{%GQ&8jdY>lWdPItkJ zTZI&KG_BSfPtaOLKcNdctkb9{$zny*_54^VecehOdai`9dX%VMBtB5O<$`?GR+Cpc zv9p4GC9R2ZrGq(vyve#rgpK-QBf(TakO}tfNGCQy>Qi6dx}`_hozE??!rTJIL`Y;$ z-^(IBIN_Qiro`RqWmt@&aA&V8BH>+S&E;J6-`C#bGFyJou8^lzf1Jz5y9B0pX80mE z!0EK#;=Q$k^@pNkguQ*TT4IK7;Rgs#!TSPFLe&IazK$`QN9~*@?@sj7jc~B^-dW#T z(ymN?ZjHJ6s4nN$Gu(Ov2$+nkQ2}Myw}ht zWxL*%(2UBoBza-4(zIeFrogkS*?XhZe7#K*S;oINE1Zg=QAO4ZA`D-@-`whTOKntQ z{al7FHQt%7qg6}di(JeIIpDXe1!#@0(|R4(5_?;<@!s4V7xiYIFfmUOT;YbxcojZ z3dzdUpS0$EKY>Y643kk(CjD?{IHN|E6`e*Il^$A6(Vx%P-oIsl~ z6DkZ3l$XTmDp8-#_QUmybDUXa)X+s9&muo@UoPM?p);kPJz6`(DY3#jx{5l|SQ+u-k zNoOETEBu7{N1v(LY$V$4U`htDAaZd=@DzP!N&0*b>n{$%z&I9x8I?Zbu{Gx;2K!Cv zbWOzD{(SlcBC|n^<;nib+HcV!WE9hm^2`a44Spcp19 z7Q9}TWc;10Ih~%a4k<4${hV*Ef^F%$A97F^W|T{6w?+8n24%o&(>(d)^l!&oW>qz3 zr)Ou>1y=^!x{ib|Pzwl}f>$lF3sr_wIL8K}2^MyP$IcJ2C=5S7&38!4=Cwx*4tJO; zmdzPxz0|8mHy)8KWYFZ9>PZ@2D5s-y|b7gIL|Ezm)kR?N^W@8=4i_ZwWGT%<8?yt+J@@Avi1XJ>sN3!JZIRLw=)1I{=T^bvnt0|qi*#lPcTHi3oGM@(S8e&eo9lzbe8#cIW72bvF zAwl}#zk=PQYt7IRu_AXRHltQ2jZ8O4}yw3Z@L82j)y_fv7j7zXc&lU*m{yqBZQFE>F^7k}R|>6cV-RtzJ3le;|L0M4@t%r%-2$>sv!!SB^Rdje8vzpe zFPor=rUiqjHHPkj7r_$-4}HA)c8Y@o436N*TGFaie!@-TPPs@GNKbEujrJYlo`$>A zA1B+n#Y9j#kqBJQuz6KOB*5Fz z^@XvYF;EhF-WG+9JGDcf$PW)$nXaswO~I|t4@bosW|#FMwrG>3kf)UA-ZqGU5bE6M z6S}(|3>hZm!bru^dV5Fr{!g=is4I+lUsKix=jS^`-_(?q*<3c&K(u(TSz*(W@26{6 z{q7v4crjWpzuM^0v6lz94pcFLq-AO4%;7m?{XaD7_Twfxu@dZ_`;1{F{ipZ;X4;mvUu?78ME%6z~6~C!X zO?o=K_o*}UIdkJ(%KnXa_vX@}5+bwm-Eq>P9AkER?OMi?8z8In#pzc~oE``;c%!Vt zD$NIXJd7zv{7Kl%)OE%JgYdh=w7Gr52Xz|J)0IR#_&w+~QYg;Y+K~O+|K49rXV6nV zdrI>Fj%2w}QhY^d6Vs1Azr-ki=&}_r(J`nW?udd)f-mEqfaybu>WuRZHj1Sd-CGFw zCSG6@I=X^EFPopr%b14HWT0qMe1{p6+QNb5M#_*{wTt>>0u(!R|Io)#uJ$m&h$==~ zq{emVPBpHHSIot5Gmg!Ojp+N*j3-AOgrSJgx7UGT0 z2-alnSSs>I2rq762e-yHvBh3u|9oFP-GYIV2_z?ytkCU=bFz4nFkjiY#cE@UXWfHbh7z(b&)!R;`oUuPVBSMonl=A<` zx3b!Tp*hi-URmjf6G@6W;B}cpf@#41+j2KHu=NG!E6h7;=^p7Dy-p?a&)oZL<9IS( z>yAWj<>Vu5Zbtaz9xNpQi@+#Vhbe?paxisHL(1xjXYpe0Vci(m&fD_HC_le(&$SXB z0&|*zgp!Po9W5@l3th2b6p;aQf{=)BxNaHVYC*_8=Kzt(`U|Y2=r2j}sm_@N$sQ-) z?a+Ijc4ebPQtv$fh&TYhi~`T&T2F(M6QP^GL~Z3!DVN)Hr*bZpCBmAxe#8q>3`^DH zV3RLHXDL(og+~Sgry~3-%mdY{n|&db`xL{fJ`Fw@C@f%oDIw$ zhTc#Y4%HfyNQAvLEIBil~j z&mnioZhhHvwOUutwIU*QDu4#gn&D0}0QQn3YA4VDl1A^FhO6!N`5 zeYT~b`ny4=d-^yJ`)=NL#TBk=Z5w5V^@rX1yvsvcVijM1{s7ihHwkX+)kPe6!&anm zwX4*t5H3+Hig&rs�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∨7%-A@3zb{4z5aTRf%Q0C8v*hpknEOvh zbVn668?s6>(`yPUCA20onEnUNx%r6^;>FzvHOe;capLTI&D1?G1p+I?)yUzfWFVZ@iYOga(dj5MM>K5VsC#zs`yVSG$u;2B46HqsC zf{ZnS=cm+L))_F(PDC&Nqft&GN-gCQcr08&EnTqv$?TgU8<3~-0DV8lE(cSFEq?M# zib#+-4G^t~>C$PeCkzyUP;Z*tH3{ z2&t`_-W=_U2KG(MIhU*9*%Ru50osP7}j*lOqN#=nd(E-neRgCjaaYtx$&y`~oct8q)2Yf%6_ zE}~6T?u|bkx7y@#sdt`EE7T03+T|`s`^*2yO2|n3DcGjDrH-j-GkI)-tzF7t;@#QV zm1`?;!nqzF57Pxlj@;C4+vt~v4tTQk0Vdx0K@?SLIthMFVEqfWL_2GoH)2%LFMo`H zsY%X*H3~87H7U=MChVZ4hL=^zU*q7ye^xeEAOF0jATAMW%G_{R{&7in-Qbs_+I)br zMVl^6EH{MTmgI#dWnSBYU~O79@^ku4dKnj1|7`=Qr3_0`taP&#x)D3pcI-nZF|!dP z=^4F;{EGHjsh+42E{1C*rJ0#v1_cU%f-60C_{l=u^tk5aWE;n5&_B~9&t}pKIZed^ z&dHOzvPX_S*Q!maeq#OwCSnGQwvw7usO~U*&Oyk;casX#ai26NyBi=AAQjMszW_l| zk-fONE_f^+2{Re0wP-|q)&^qijoHqceaNWLT0wc?u8yTX9qWVN`7)_XbW1pquqDUY z!zR-IVEWCAPHJ>=r{vpUR}tpsV&f4i=Sfv3*8*u}nmIJIQWXbE zOGEZc7%OUEs38>feGvz#3dPypb)a%IosDj^=P=-&8vU|3t*NUS@()||Un@IE{m^8sUEOb?oUx$eZrG(DEXUXifA(~^nN#KeqYI1ZkZy>>1bV4P7~3|G&AhrKW7iBb}=oz z4qVR8_svy{#XDMf( zC;8e@q^)rbF$YbY+v*eq>c<@|e>U+pd2gg=Rs&0)6Nb7FIvmzR+4CxM4qoXqVo z%J4>U_*uN++)ENm&BtK91G0S5X~k@~TFyD66`79ByZUC1IzxR+P?y*8bohddq$cwR zM2WFQ#!Z!xpH^Nxx;R13*CJq)a6J?)eA@IGCNUS6YvN6Kb{fa^Jj4}l@CO4Z_!^H^tNos-PFgyRzj7$zsaNv&^9OsuJN?2Yuu3zqFsi-ZfDXa72-rrI% zejse!J|qx-Fuh^JlYLLSaWjt!OND0tpcL(|CnV?7r)Ja+m^`lIY6#J@!YV%GwL_L4vZB5yqd#Ao+!oqIb=^ zEvK$3)P=kEX9D{gKv`W(N^TXu%fC8VL@j^~lxN=O`tkNFuR_1NgcZTGb!(dmm~`qD zlM;qx5xt}hEmfW>DqB5ZEWISq)xPn4UC#bgdhj2?rM&@JO6;<+?0k?2x~p0aZ38~Q zISFexDoU!^x!5NtGW^N0&SMv1t}_OgdV8a|MMnppQy(n`r-P~!k>{*lvKx=@RM$BF z4~@D1%-WjO=B1k2%5p^zSG<;E0H68Fa(Q*9`;$pAjl1_HAp;XNR-SgDk%jysZj1RW zEF9=6%FWZoAt<|oSS3!SCq0urY^;vp>Kpae6gT`vZ8!yjTqGt(=(H#hBx zd3#B-q+^AT9+E{Fv{00=Q+S*Y(-|~*fB0FmkQDLl4L0xQ+a9(*j=DSIgpZVeE>i`m z=PmT;gd%OakjmMJ*iA0tdklCFkTKj(1K~ocS(!bDh$>ZJBb6WbR&)0(GAans-beB{f)r`Gza)9&it9Lx!&!R1%{Jz0R) z7vr7<_1T<`4YTPTfusj>w|SUh)L(o9e!bWhmr8u;|P|k7QD)m6GcM0>sOa*+xaIp#opF$#9r5=CE22) zKt5lNxF&UTYoYP}Z)s=ODWj^ESSZtM-D>mP%;;oP{rg^o-SiXEBNZ?Cm)kT_Tn#}k zBioy{!FuOrw4RKfLxzuxTzeT;gsfYP<2KFg-Rl;y_ocoVvNe3ROesgAc}(esBj3&W z#~}E3Y}TJ2W%FvCtQcp+`0We}uo|%wO_2W0%ipT(Bd`8~ge7O#O`8~q!?OBII~tAk zidbC@;P(+Dvezp}s|R z+nxrLa=CHuKDD>|_U0W0BwGm$J7 zOEB*k*|dL^3Mk)65*9`qnNA-kqqo!ZD2e$|=|WK3s~p9-KqaOq51f5LZ|%m$J?Efk zu@6BV-K=z7X2bdI^1mcS_onzlCJ6fUdIWlShzpYpbU);&;%$#>DII{?N;-OFznrA&E-XyTM~HikdDPwT1zv zBc=SRSxYM9ZYSYl!Q_G<_ef5E>2Z8Fy^;|mB|Wk=BXBiFA9KtW#ItXubzdehP$MRA zUbMg5^FqdfQ^ot#ubqAT zE09UO!TW+l?hgVXJ;`J9Y5;rpd1$KfawTmJ52D^1Y69cU98M1MSx5V zfl6%v<1&EeU~y1yctQt)6aIf>e@1u3zg@-Em73MoP6vMvDWK+BU zfHtV7Z_(MAp{-+`r}Ff}oXMb)TUmcn6rLyF1Tp*ccEywo!D8`@X-kUI`z-n6E5;_v z%W-OBOoImezk&>`s&VTSmCely&munkk5tmm?(FHAYILiErsNk;EhdBQ$t>*xZfBuB zWcqCF=g-_joNuhKK8n~4#{x5WY@+Nd*PYP?5kxSK0fP(*({7&Ol&NM7)b-SCKpM%^;nHHe zezRfj2I}nz98Uk347wZAfnnTd1hpYIH2mzSpUVf??T-?8QuRBYb9Nb9aDX7+z>1%o zDx{RC@6ELAOAbrBSN_l3N7ShBlc{c;GXe_ytzT>iy@(3ZPH6Yi*l8Yg%$j_^hxxpz zp~L;Cto=6kx!n`LA|cKoVnJ~UiC8aynI?Gu+BQZ`&CPuTaux^(8dp^+((_j3=Fyw^ zCMftKGzHn}EYLpW0`|^%6Dpb^kW>T?BzzWvdrHA!86s*16_{>b^L$Mg$lg%_uh@>y zw(@9mlp(cTV(B zNbmPRjZnUt+vJoFo$zFX`MC`>^#-dIRln=JxD{U7_6ytvDm<3{Nb6eJ zjSx{bcgVP*JwQ?%SU6Hg{g{-H>yi>jOgJ-~^s_r0h0&(oz_cGFlf#tVFSq)$qmTIu z@6lX@z}8W4bwUbtPMS2HMajom zIO=;rvI0<;sjU!fcRLilV!@y5Z0#vhTDByOLTBjgYRC*RV~vJpAF<52?Brn%kst5x z3XE|HB%MJ>+OHN;jW;LM?h5T)qZH<6{n_0;Q@VOMoIM>$ov!5oA;LbfOS%n;o8|hY$ zj>oz9v5!uIFg6KD|DmnD`yZ)=U(RZJOtfJZnZ5h+kwlGB^?ppS3rdZ%L=j^VJ;H)) zJUof5(j0T!WUD)mn_En>0j0`GU{mtzEIzlnZP4tT4>B1^tULicw-3nl>Gei_$$S zN-tI);JuXWy5j7uIt!hjHSIhuJm(|RC7&r!BIDMeYq|jOL66kz&ct;VY86 z`v$95Fx@$*_Bt)qqo+TYp^(uopeye5rtQDV3?>X{1oNS6V|mjJ6w|(`-o5^Iz~YWy z4mq9Y7wNTvblR5@%i{-Cx%W=WM(siw?t3rRIfK@-3Zz6kQkXnFsLyb;FA>8VYQ;9QY{HD+Os(Kw*Cx}KbAucM5f>i z%p!BG$d>DzT;=>gQKxfoZ)NTAjo#M}7&EqCzK^EI6$F+_IjU;&%5zN z7J>7Z_BA~!DyjywJR_jx2~Di~;*=xbY5)8ZsL=7vS1Ya0LN#3Q0MujH6XaV7y7n6! zl6aXCh7%9Vayp+EhWX`Q2Hk^?U(P#M!zcB@I7)pUOh)zn+K~!MoS2d~W&PJhI4x}7 zFY*GAS|ezVk10S{Af2KD<^qqPWP>Se6^ZH?zo&sBuXCR!L&6Xf?W2t!QzubTTqgMu z?oR>TNnQGM_M~plS;)gIdq8NGF$Painyf~0$Fl!Q*Z355u4-Ws(#h&G-r!OeNvs=| zgoFeMEB0TaL*^eYHQ&*i9R2y+m-htXv~r8WE2nUip~!+qHoKZglds801qdb+3gWcS z)ezs1+PZBW09x$J#Yw>JKi(4L8w3T?76hYlXdf871(r)m@rQ)-bqmba2;L-a1wo$2 z8uoW{vF4n!11IjOD&u7lj=C)a!WQWw4+K2jgSe{tCD5t2O9iB>%T>pqBDanVY!<&l z|T7z`P5Ro@73k=*cE@Ud;NfxNMX03Gc8{HAQb6izpg-4sumH%5R^7jVomju5NL^zG6QYnC7#2ZTkBtuIBZKM20)AQARWUBv|fXOBxQ!x%<$WcLy`?y1!N*zkt4+A zJ-gafq|l?9WY~v^St(Cu(5dswqd2d!)CJNpWs-BUQxqqLzb44K&_}dfa-GUhY|^Vw z5WNmO;MQ09197`FomMgxW^z`JZmJ@ak0qnVEH?9Uh@a}7-gFN-j~PVI5($q#1A&s+ z9siV@%U0p7jrqX$V#^dqt(O=7LWz>*yJFaCZdVTrxFc8o0SHtk&N=8=U%3>F4+Rq4 zKW6kw-=gxFhnBFrB>t%zW*@(|DAPiiyW^DjB_>!R|v?#<>w zyIYsuMlyTsf6U~eGU@4CJ7%9G1tSDtgOGN&mTU~O%J?Bp_Sssqo0?F8TH{+j#>3@X z?U&!wFPT@Y%(u0*wOaBjZ^)3nP_w^ducyvKTcT0g&7o&H(cU)%@)8AO^jLLn z8QXF4JTO$^HZz-)Y4a{?2Td6GZO2b@t2)`BaYsqoOjB!JPR_0J3XA%z&&nv?QGT@} zgmVUR^m6_t=xpzCD8j`e#3ng1X@$`K2Kt2Xn6AC4c-|HA##zwroNd3l-1CM0F)pD2 zOd^PSHbO`dr8-jFGz5wTT0mSr-`vZKLR@!vu?Uh(R#tVIPRD*Et|pa!QgCV?s-Cqq6vCa!i1FL&7s5=3Sk1lNOP72&#aq$W-eK_~}(q z#yQ~Q!OsJZ@Gv1l_tHuy;6$J7>M*Y5L@0~9Nt5WFD= z*QQt>&ueGQ8LBA12Z{`G8`=A>_#su`xc(o7K*zcX;-q!V2rM#S`Rk~iE=;Ml1CbI0 zS%o-1xN|`(xyiP!@WVg#z0^Y*shx|%$0e!fHb7Zjk(j03!q>9Wz>hq&c`o&5AC2~l z<>h76M(F_CiwSG-4#;NW-7wAl^umnRp%o%S)}3KT{0&JhhofKFFFh~90}l$RoQ4g8 zen=Q&vEHYr@WvUCE5chlp`mN4U9xwnYJQuAK z02oSGh~ejna1YN`{*WNIR^a-Mepn|x*QS&f*+T6tIc zq9lHKRA!AC-U{g5I}7SjVa@QY#(lVSM3x2POo&tvqMlt>?2?|(AapV!?O^PHE8OK+ zGNWK^PlL}JC(6&IzNxBHsQyEmI=O*nV_}BS$mFx@{y{e*c3DN%JT|WM9HgFF55dKH z>8ly@odl+{!qs7t{jP=E8M&_Y+|L<3oZBieRQ;HmHOOPw&;4VB-QTSn<~;Gia_QsU z2}=A6Zn{uBA~1cr7ar`vEMSwB`r2_pGY~lw%B6;}U2z1tnMn?GpL3Z6-&dCVvM%*M zc37;#m9x&EzgP?)>4R(@v0;1|6{X|s}vp45!q;txBQJkuG$pwOp2gS$Vr%z6@` zz_zfx$gSSCi~!f^SiP#^r_jp|CTtFMsUg;HK)fMu!&E7s(OSlLyU^^umcm#;E=I;vvckL z?^PWdcKIspCKua4gh@~84H^ZKur2F2bsZnioh#OBW)#|O;aB35SKdZ8+MG-dmx6HhqCn?}`Ij~^~!12@v{^jLvJyY-CNJKdh? zQIk5A9ga4msk`O>ftzixgjQCgN zc^z2{-08vwkA<82{ILSfRc%O8yTPcb-z1qFi%)cayY&#ls8FryVt2pQEEv%C30YXh;N3}9jMjfyfYy*-w3s+cKnhF z$kE_D7W8o{RGCjyJN#=FE_5$A;04^FH=M}?GAhS+gzLX*vg&AP3~LXPax1A#I2Fad z-;3shar(KSLMoLO1eDCj^?j*A58E7;SEye1r+bm^O83uAzUUblBS_%^P;vh!~;QAJgFBLNM$w}lJ$ zzpWKu!_aWpV4)ZXt(6XtVCKDZHC^ZFY=5vDC$RQf>WX6RKEPEN&$Z4!^UIihq_N|Z zsb@dy5{7})bPO5DxiyH?uW(u-y7AJeXTYd&h+{HAJ`mBhBoN@lsp zv8FGZ+Ly;rP;y=YJ|a3CXBGhHA)sZ{ZRc3UTl3p*GNK~?RF6Xw4~-tB-ikMN+s8=p zDlK;gw5Fp|5`S$6{nBK85I_+2*l7&EAEdcV_BO{C1PiUO$kX z;PnD?Hqa0WU`Q#}7=9YZ%-7c5CviUjl|ihM5;N$ZZfrdOm_PxJ#P?e4EQJ^v;ywbbpGO$ z+C7-#{pv3RQf$zer38@!5LQcRcT4}IP;GvXvnfxnS2A`hEOaV>&r2=LEIfymiFY9{WJ@>wpDaxf9%E+k^wnXl3DKj;rq})T1ZxAfE_~0HV zYrVbf%H|%XNKyTE003!!G`eqF6I>nGTuztFjcztVle6n3aiePq4f`!5Oac+njlB7E zQDi+s4r}vMKv`C@KTa>H-y7ri0zKuBNg7d(*&kf3oT~T?69}68d4H@L5h0T2*UwsA z{MdGh;_s|wXGND!%rqV}5|Vx&p_%3LsMA=?q57)yCEsG984P|@e5 z@vrfPn(ye{kY@)V%AT7G!ZdP8vHE+NHM6*gM~bMDR8_xWx~sMX-$9$UYt%!UriX}0 z9%JQjg=uzOe}+9m*~S5)#IL#aM!sTeTOUivgRRs5WllHm{M%-mRo`nJC^aw;Cu#!o zuuxLW$@BQ8TFL4QAV~gdr`pD8WMvcIY%2FVFK?l#YK>a`iCt?Y+ATq7*VwQd1`Mcg zHi1f14)Pkf-@m_My{D@FG_C)mWM)f?pkMc2n{_UP%oTITr)Q;30yA=04 zieTm!Z{J9JpCR+`q;WuyoogPW4WC;kp&K^2cV<>{HZ;(J9oa0O!^Z_~3Brl60b63E zm)ZJ-So~$JAC@utZ^V@^oRtGr1pHWkP$d1_wA}t(IcHjU`2H_lb#DlGZerzIj&)cK53_!aD1t0wh% z7+Xp=PgzlI^#k*i8Oyw)zH%A03Ed%S21Szm{b*thfS>ZK7VjRZ`>sv!l5X0TWPTACMqt)`n|Rzp|lj z97t}FHs71!-}AEi%0c7J2FBXCDWfO0b)MF_upPq{JVb`f<`B6XD^9Rj_QWJ*k$K|M z3w|p+r}*u$VxGj%x_j;H0>xMjlat=ok36fW3|xkA>@IAmze`aPE}u(|!?wnb_tRX7 zX1ddsa(iMf4CmG@7E>+6+dtV37k<7tIID0k^2f2R5u`tUn8UCHNygj);?s$4bIaI6 z`U(7Fu21hD(;1o9{h%x-e+iiw}qwy$^9Yv!yC70wfQ4R8UYu&ShDrz@)DarBCW^yvefQS&I%Y> zj3DNI)f?~(oc9&~;`VYUmNz2e7=W6>|H#1KtTa#-dT^Tv+2J~Uw!p>4JzIhPB1yp0 zy|~}-^!`EdQEW0_V~6X?m)WdC$(pl>3mAWrMtm#nR)!mp=O^Ac5os=xo@dVYoF|{t zBJGZj)0KmD4cuMVh*u&&o$*+qDu91Kq6dvDFA#=C@wf?LGDvfRN7888@WZ8$vyDXH zHdD*MQA~xx{l#fnIUcd`K)a&kx-2T;c8~mxt*PO!{F0U-1v#hMI&i7;SPHhm3Jpot zc6Q3$tsP8En`f81FFsYlAI;~4JrzFjqV9*HjPnshH`}04#Jv-!5$vr;_RVY6DXKod z?*ASOOZEiApbxfth(m+}r-K8?`EIhd@70P%m~-qerb!+H!;0d{%g;{_cqj+$)HwQ?aZM4P1&Jn zd}*=jwg}qbh7^@jM?nNBT#f2WdLeAmhwTjGp@^g7k=QikC**Hr=D4*#!JSNT4Q?|? zErFIrN|U+2BxU4+HqkAtk?$*QQ&<49>=j&6GP0JpLE@YG8JamSJ0dh-bb0r5(GK{0 z@X@H7X^7dV!Pj(RCh%B5wq!DA)l`iA-V@`@BxxT{-86qJoQh=Etk3R2i$a^!(b7|TIDKWAjnyR49iD) zUrzRpB<2;*%B~(A@i%B=^<2KH4)MBxuoKd>%M3m8aP~FBd!=49y>pHp7y%KxGWEju z%x*{|aZZ!(1X=#sS$Jn0wd#O45*0kfV2Qmjvx?mKP$WWD4W)&yzc)ugA7=R~q3DC|CtYoZ{jWBYg}-wClHRA#Cr`y-*cpVgiu* z$qfq51-_O~^UD0=o$9ISx=#-l6F|WFud+`Mp&nk|UGew+l>)oRgG@I0 zLO==up#q#k!N&53C$k{Nt-u0NHAuPvb$5_&=&iJi##bzEC&%SjzkeO^7wT?ix_;HG zeG!eT^U;&K9DemKJ_QOf1) zqlX_@xYR)i1#k%Iz;h?8U^6WS@xBdi1jn|4!zuMdOcK)*$xK0QU?C z`3#fJ@&-lB5;YJ8a#@n$D?BPS}>s?*Ww3t>{x<3U>gsLU9iF{;@4`tIsq zc;EQ>jsVi8J%prC^XjBQ!kFf>(6+B0^6o|WOa}_DkMr?o+nw`xp&NvF4Q?1~PhG)K zcEr?iL&@uK zny6SZWsZlDKQtmfCTK0}UG@wR4ct>&e4?v3&F%%}G-_{kUPb%!FLnqtW;zbnSI!T5 zDm4jtC*Ob?5)5z3?9u-y^~4JALiz#_wYAY9U~gpm8UurEXPU0TBQYGeRX7#98ou&c zgk>if)ahSjsWnB@wk*&>Vv|AC$JeyjE;nK^JAQQy=qR7|A2UW{a2h(#y@$p{d&QY- zjti3x+>`6hn+7rp_th^NSCC--PfyEtgy7N15z2ZpGpiI?!HYVt-RL1H>?6ceKfM}7 z37i}6+=eca7gO<5A4<=;`7|Tu0jN0OdZpyctt~lfUb5)v`w|kO94$!j5&iJjhC!jm z_kp1NYR##Xm3>*KfRM=}EJcQqsmzdL9){Ox83Yq0U@a=%sknR@Y4hKl%Itc&SL9*0 zcdJ=$D|SQEIlsy8z+Ew`@v-4MAo)9j4-J-xZJ2y;iprprwP@s$pi3kB@!D{QtIUSme!+I!i^<}ZM7cWIHoqGuUiVb$* zw+INwuq4f_AjvpzKf(6QBTpg?Pjc4zl$@sdHPx?kdrl|hRcuOMsY=a4B-tP~A-JrIuriYan9TGb%ITdoEM_CcWth#O63U68u(e+i z=-@MD-``k>d7?J}VR{Puw}?b;JUmyb(Y>v{ZI-bo7W=a<=axq+E|k$N(Efr zuyr;T(q=DXbJ?r@C7zn5FRK5wO!bzkXY~61$D=#DOIK}1*{W8Ef<@78zlV(+$H6hE zn#>O)ip<~2r>GEUsu=42D#IW9k0@jFJQP+%v`~Ter;1dK= zBqC`M)G1*5{n)e#w%@gVbA&I~k{HMZf7i_+r~|h%3Z_Ah0!z1dPBxl0mgnDQ*wA!cCx7PN2w$t;nn<`1n>6BDJn@+m5D<55 zCIi-p_4{SzdR^r>(7EcHV|WY0^Xv7lq2Z03{FdP+@V-fg@~*0)JR<6K zD5JRLp7pi39ec_@HY?_Q*Uispg_@TpTg`{%w#}~EZ0^3}{{8sF>RWj8xKG8Bkv*m8 z0;UZ5J!C>(wGeat29t> z?jPa5B{-R_)zR@|cx(@N{Du^PPg3vwH4jEF8SsvLS*j=5F?GC$C)h?UES6{~seWgE zt{rLR$w#W{pD0w!6MpT=6)t;y2c;(V|FAVnROW+Lt*t*!%P9@!HMZN*tVrbu7LV~c zlW{u4p`ek|FE7}g=_Rl(3G1ZxXymb1xy(pQymK$JYDz~8x|P?;;X!1`LD6yavNWGf z8>sd5g`d99^84`>^)qE`Amkw#-(%9SL9+pUvGI9CsAHaC-K@$dbn6={YHkGEmQ3UC zd&$AhdMmgB;~;qEE42sq708qGuqGMVR*lZjpvf6MvXz!ol+{uM z?FbF1`cCl-LV;o51KB}$A8&(ph|_$YE}&dTQ2)7@tT<@!rQ%ye(SX2wi6U>k!zUjV z>0(_HOt2I3z2bLZ91Ta`-QvGDvU&dhLdjX$51S3b7D1z+j&wjco~-wJOq(r#BCdB9B9d|%1_?=Kf+a-sgR3p; z?wASl`BKb*`+CyJ{DU0^^5@rMS2aJYOGpIjN;Li@sN-_nA2S%!^|Qdmu4E~q&VsZ=~2p7`@ zY6`*Vm`}WdiW@+24Ls$LdDDyfQ+n{VL z16_ZQ^Ea0kAh#gZ=fB{_TEcPV4t*%L{7}(JouxuU@4bcpuoRjUvR@X`hSE#(&&DDw z5iMeoebRRUO>8`05ZQOU;;V^p`S7H^kNl5Td$!HV<*S#1>8>3NbvrvtY-F!P11%Jw zj4Kt{8vewvINV=5%4`%FI7Jyd1?~+G%N3=OxkAIrckt{{UxXE3y2Q_mD49NT6%3#g zWsbgu8M+W>ILiWY)SN_)9_+9u0wR=Q|A6ORD1jmJKTNm$6`ce)s3VcNeIVCfZ6e4Y zv}1sojp=bk2~%#RgvX+NE93<3`rVSiyf8~~b1Z)LiPh?o)F*64}ooApyMP-FYm`im<0dnC-yL@bo zbx!EQ+x7D2*PXUFyKa&C&(|%dZAV7R;tD1?8ku+2qq{0i5m@Kol@juc?WJ*c7rT6* zrlH|+wT4po4_Mc(#7bYDy$w&QuB}^1Bk}R zEU4LmKDDKl<7G_8b*?=Tmb0G#M-7|ZVPY50F6=5YFSW_4vSiXbG^C;CgolDOAZQ=( zv8*ff-CXgasDxpBT$0reC9B-x!kVGeZUC=CM_yJC+xk+;P%$Y#J_A))4OqzdmdI9j z<|K01hqQ;`74RC2%`u(3BgU^XxC}g>ui5q)GnRUvo+BPWH>&F?5PAn)(``@Duh0L_ z{r=JMY;PoX65|@S%*Oerm3WGn1wQ_vQ{&_A=auUx0o;s@vPYXyJo`tt)kZWzVJZkT)IbFKjm7Mf?ffCIj*=|hg?v)!iZjAok-L>`W z6L{hA<3B^fQ#zD8$zrN@XsGL=#KH~n0+~1mo=L0C>bw!I(O|`+>*_G{PF}Go1rfNB zJ-2bTIRkwoEw3m+M-#IFftwhGE4?z9Ucs9S@+O%i0TwzAUidPXn}hKUhOLkr4GHcs z)h&H_w`@v1ckQIu&VGg?I2t8VH{>ubxnzl1LnkY;_*hrxRQq~^ueXyxtTB@E|1ovl z@l@~szuQ7Wk&u;S7ujS+LPDjeIEQT6d()7SRmdJ$3E6ubr^wzrdvA`tIp_B}_kR1` z+oM13qwYiJb3UKX`!$|RHmJanN$x+Jm908jOMOGbau@t&g=3Qyy!x{CojB|7r8irQ z4VBGp=BP^S>k(+Moo5T1ATd?B`|-!qgV^!4>}m)*6XK5M^3JmuX6s${{SsPK=-k+I z!2~e^3J~BhKPJWet>L7Qxnz+K5<1dKrH}^S{%=@GW>^UY!o*IdY3T9wApTl5=_6O zemfp4=eKGnpYe52FpuhhIF2xGH1k>Gw^XwCo$8SrouUvv1AwWK#4J4N zhQbH84_0b%5481ho8Vc9Ht$$)!MJB&mN4<;7)DHL;Y&{U2&UCdOF%mEj6gV*l0%>i zfdX=lAl6N*NjK|@F!HJDkX6H zhs_jZNT;+INl`Gd%IF`z*EW<9m$=L535;;y6VxgqZ0j-0%s`avQhx^0T-bcOX*mAB zHMZ9US?z=d(|q0W{h($_o1nh;#cZ!DC2t%rz&lc%oB5uZ#XmMxq%2HEkk@>Q?9wca_;q%`az=L;dh0Cs^l zRAyJjv_YFB>QNWswU9n_2G2tH{d=Uwxe-z#QdxCjGKd|D1m#I;b}Z`xYp(HzkhY^^ z)x1(y>ztdOZ`EHne5+Q@RGs+_y58uyro&3S_;3Ce>p{j+*W8H7ByG*Ww_8jNJWLJk zE^7cB;!#gD+dnY9QhDIa(_ZZaTuE)?!n!p-Yn@WG&xQQCV+zXtTC^Vk^ffmQ@QXkf zPhYmNy?Id$p87NKu9z}V3f-z#X-XT`I==Gf82!QFfEk8-+aD6d2@1NwXl(tNHr~8N z-;UQ<lOaikrfHr+qY&3iTB4hUFqZnja~Gx%$G;BORpZWDC<~pz!K*0asWAH+3hb2V+eK6uWNRIO z0HdPW#Br8?cb$=CI2E=%`4b#x**5z_EOuEvWk)h|suokC{?mYR4V72|inMC_>eb(z z%F7?kMmE5?2a_(7PWHD=eiXA%eoAhvUd~nSq?i|qO_bREPDQ*i1)kYyHd-LUDbN&A z{930@mxx8)>m%fW&JzGZx22`+7H${Nu?%TO|Cb<6fY9*(5aNM`OOg1i-%TRC0~EX` zTiv6jLwBSiFH~c08T~BB1cpj4HM8m7JHt_X3Y1#GYqu16vC5?OKefVR5SoJNMqXI~QR^yBQS974JB__k{5Gjj5x|C12%pTKONCs3<15xSAQWx>0oFt>68ds9? zaJc(%?e*V$>EzRAzrA&12UuQWqe$*Rl2hcW?MxSNlWotW;!P#9G#t>|O&FtJlx#jD~{9HiCSi-x`>*My{SoL_RHYT zV>J=BPho^e3HhShFp|>65`A@o*(ulkuaD0h5Sl51?fJP@7Z850A%NrN_x0|{r*^FI z$akRf-Dl`};u&Gs+DE2HMEr%utja&;HF$5H(H-nXKU3gW#H3fZVGc9$!x%oW&9zbUNV8Llte3?hAHiP0x6VE+gR{r5KGf@ z?X_>o38-3ULBvW(c2Qv_>T_&FDc1{qKHW)`lP~tba=(t|Cd7V!*F1T<26lXKlywB8 zn4M$uBPqJG)kZg&#c`c4sQf!ndWDQ!S=AE2xGh1m0q7@C@53*JCrCJ?s`V=qLe`_Q zQXu5Od3%JwK(>R_d*seVJM-$O5^}`4#QVHcGLi#@K76Ih+_2!M&M7P;3b>es;IDsT z7boE|qat_8)=>9;%d>*OvuCujJFrU|_Wq%NvmjoAmBpwlbHwJOe-NbI%K9{w1PY#m zOAh4E?)`kDbcTSt^|_F!!RTot9@!ApmSO=~`Q1S3aBf8TFS-Z7jdyPUcZq#M=ZpP( zx%-pK!>!Z%`>g*c?D@5^D?d7M&x)n(+V1`2JQwxAuw1I>)m#qat8cTf?iz-K8J{Ns zEe8wob#^~om2=(x}GABiC zNL`S*A3J~RuPV&OlcJhe8xMZzYqBJT6f7j^P&Y{G+vI9jqRGa<-!_owsj~v6Fsf1~ zDPqS1I*q0^LFEW;|CA zlhQkJ{!+HpOPvoWYG^ayK{%a#n`7%rIlJaco~|1TfzoGsWIfTx_Fgt8x3dyOQ6?Nn zan#7~2_Dr$(IVT?BKCvxIxFZ zkCb#@L&}9VuLj!CKr*LAei3Q!#Ez%i2MLBedhin#b6D01o@b1Tbo;xL^Ahu{d$+x^>;V<@HX~+}(OE$`AY942Ed@H2gy+J(cOs{lqqt*;>^k z^(>0P>^i*jJ=5Qv>C*tZ(Z~1oFJ~!QkKR{*b&XxVEr>9QZb2rq;QDkvIKMx0l7_-` zkS~s@@;#LVNZY&N8eF;C$dUfX1WO=HK=-Mp%%q2lVOA8(vC5xK-k_6uD!X|dhDN>m zbaRiWTB9o4dGi9f<2ctLmV*P=ipF>I&1l-y3;Y@*$U+yFmA z6L{G+(blaMr~*yg9n1t?&L_3N?WkGe_OqLK)=F|(U9|sj>=#y8ey*jQv6?{=))NWYWn|EvY=}UcMSsf$0cgi4|AOPOoHR;a!csSQ# zVHN9dH@>3+7NRge0AA7g3E0P7r}<}rmW0^z<_8w1*U%Fi8{1G|T&KroIEwk!NC(xPD0Q!r2xnci6)oX)HGD4mXd&!^sL0W7EGcX7M(mD z@V5v3sKpEBfw{`t681-+7!j)E7DHrrAP=&ubs2%5u;?7@eRhxR$OXB#JsFbp;ax?$ z4Kl94%m!9{r_h`Ppb#9;&G|@(yU5@|ay_b1fN&@1k6`BnH7`>8ki+)ln!<8OS_lVY zk^Pv)vh@?EhRLu6H)hp7A>zB*A$)$&98S!0@oT;q%7(=O@H`>>BIDHc?P!YLQPY;* zKBDtLwBYQR#gDG{u;y>zi3XB}b#Zd-| zeej11-Lyc0J6KgF$e;<$Gz@ zINCC%-LWqin>m*yrzCrCF-(z&cXGG5U+1Ws=jNCK-XUj8_lA@10jQN8ap$BX9p#6t zW`^8C+bDR3>x}Et=aCSk6MRKbNs1-WxGA;EanvJ}8xdnieqGJ78?7_D7|UJ9 zqmL<7>z%fwu{2))IqIk%T4v*1SIP34fb6V{lir+Pk`Jv@{?NM?xV*sc?wr|HewhtH zfmz}%n|;k6`6=w)`RhPN{z>Id1POSsq6r$2R?>W7yWu|xIp^Cfhg>b-EChizChn5> z5ci5wQ9t8lHj{J#7K_I}K3&=b>k7brJKLEBtqvd!E%wpqb$c2fbXoNr z);pn}+ZerfNK>^=#&S2y>1DWV_+a9a$8O2)IqbEhw|&R`Ha=q{{{fXx=tv{DGlq9% zl^c1AzbEC~0=@VUTBON?BckHCKL1R%hv2(5SYkAN>Z5%KQN&TUW;L?vPvzX7I>Sm! zbEdIBtX&9lA|ky%Fd#pG-0-&BOfkeIOlx5Uqd$S}pM2zA5Gzm)0p)EXne#3L)!rE@ z9?gW{^CU=7O`BI0e^1&bp83AN?k2?B$AzaD5EeewuMJX@TJO?2jCjS+nfTlEb=iN+ zQ^xNCzv^?NerjrJHj;2FCah;{-V8UU(kb;Y{h_$1-wX{Iz()m7AAsl)aMD>j(H1QP zsW_jov=Wy-k7OJG@6Ud|Xj#4+tYC|n;Qvzi@U{;fk4cGOO{ZRpN*LQU`U|={pe@KK z)NU_An=9u-B&N}ULzl_AN8~3G{!0eQefkjpOPY{I*di8BKUm-1)g`qE_jjD;7v>bP zs{7@%(_Gw^eazOT5dCs3GvgaR>lL7(9lXtdSa8-#SGUxof>9mp3{db`viKowMq?}^ zvDGC__%Fc2*IvV-79vS1B*uDkMmY)v?N9n?e7{{C-^h`i<0Y?q{LU?Q_lowOU@y`X zxLmJV-Dzp6*e=KApCi@ExBUdY*&7L@@zSiD4*$Ppu}1ywU0ho1$jC@Gl632E;efHA zURkT+Hc=!4W11hK0otrG6CV|!fxcP~YBkt94D2GSYDqOA5)C-6_!z4rtEJXyKQ#?6!Nc;}zx+18-LvSEhw?&|l zfaWRNx(*o@iGOkKD48pd?02nd9Y-%eefkIudf1bvfQXCd&rw^Yso7lUO``gKjW0^e zUBjEdlboA4uou>_8#+%$e&6`$6xe@Pbghg$MAvhB?!04sU>_X2x<1PREQ^U=-?WcK z-`N_0pWHNnOU3h63a6Dyfy(2azb0Z%phAo~t5;O~Nz_53fjQ~z*>UgJXB;(n{*J$=! zA@~ZLDP?p)W^uL94);+j$d8zIydMK5$hys(n+9INq~i~&sfF)bY$EtB203Yt_38~( zL#P1V&K_JE!}!q2^Z$`h8s(s|<(UyDhFdi0fhJh|^6cl}-B4SjTsCv+*H0Ew$6X(L@t%5zYL9*7MSv4lup50j3xAr}NvN_gmFe*tyOmUJrMCB#T_mp-pifVl`l zCgxb$zN}A#iO?pPP#0z1D1G+WVJT>PAA*Hgf;}60Gi`6XYqZyU-quGjA6Dm3`2><) za?-Jiyl?E!lj-Pd&M^qQvVp09?R4&{=gidqUdFu-3Am#o;aITT6rY+Yd{e1ZqY4oX zA$84XGL5dg9|GydZaXvL#_p2|m_GoP*1LRTtmMoV2pJ1i$c6_?jxq|njU1Ia$o0_?pHA918Vr_pyWqYmy`@^4d>@cq^sRUndn7(yySd!aZ7YPBwl545Bw8yJ*zHUq`X8v zv6?|E_#0TOSd1f@b{y!2+a+iI_hP<&`R&UW9n5f9i?y`0G=Tq^8mEs(fzPnh-PMmR zAB;~AibLBeYu0**u91-8W4!wF@Mikp$mm8k3~Jx&O)azL#Lw}@acm65wZPS{7Lkm> zf)LZLRfbIC+wpOPl$muGB}Is!)tQ z)pp#qBUy=86&Q1eF|e&I{PI6A<3;+Nqpt?A(_o8{uz(8A^7x3Vy!yVJP>u&f6G1sFy`S!9|Ari?KSvzkC7_NFbxwtsk+mrm> zO#0V1Cz5}xJF}<=Fv2&7;=9dq%hpB3o$+`#LvbWUqlf6nr`kZO1ir?}Av<@x6`ie2 z{biL@uYK6kRO|JO-p4Z;HegOTXL`yP4szNp#6dZt@MxRgXq+@waJXKrv$M{{LO;(m^u)6sf;)H@7d+HS~yYa6qY ziAg#fU&q(n-wv#da)x(nk<|x%kOWhc5Y0Ne zw7|b^VABU|AlB>F!b?ipVy>`~J}3fveXvsaP*B>TITIBXcW3Om^|-ym(*BDp-ehX>JnAl;kfN)TRIKPP*@_RN`~hv_}gc{-u0aFfQmFR-z@dp=-4w=$)$V> zSNWrF874)Ox_cta*(B}}+z4ILkkC+q4d>2({h;=S@(r3zb5M13?NR)5zx*h&kr%g` zN36^DS{z&Q;<89-E|ZW^r9JRJM^>aKc`>B?(gx+OLbN_UH6cb69KSlv0gUu=b@p=Q z;9xXZ=~(eLM7=Sbmc>dcCbo@?$d|T$c@NCDCRqDc_Fj!H893^Jx&;QgGQK5Ep&mJc zl0X@GIwiEZwX;>=IQn0PKcm3V}9uDwyPIPFQnwsj2 zqb%3Am-?rsQq7|b$$;_T@TdG*l>;y?w9CoP4h*<)$xyY)-+0KCc*f`_RKflc6Y$wl z1#=!^SGz|iT}`lsjk9I_ok{+HZvE=Y8G-AJ}xbJlq|ne=1vDXYhGVr)rS^91CZJJ(IS| z`+Y5!s&ZO#utw!-4sm5p8OxBkv^6!wD#r~bE!+Dbga?nxu9mAB4Z^-7*L*5QM&0v^ zqdbo8D|@9?P?SUtJmt=M9xFZ43-Qmx+28o3LcuRyI_q;v+KyGI1lS5Y@4i&vzY=(O zt_|?(XWEZ}S}oxjR5ASNaFnFdk~AU~!eX4xD{pQ0aaG(@ZPfQV*5=*R36e?j?UGJ)cF%QH0ghQUap-!eLA;(*7H5dyPqkHLc(2++l0YxFzUJ8M7xmG zq0NSyEfPY3A+z5L_yKL;J)fMTmPB&JDZq%W;~8V9=_zSd_}?8T_JdOW?>OhJ4=^um zFonoKSMNb$P9a0vV{dIaz!ECb4#*qco)Z5z*s4wV&w#T*j!N&d)vWF}vutfK>CRbI zWP@344W2r5dke&|Em~z;`*KnYi;4X}PEJasnrJCBj`U$yfAe9D6iKQN^ZA1=p~Bom zjeGaJ5fq9(E`OTC*B6=C*yhrtjyY_7 zre^h>IXED-W`VtTaDtIeWRqh1%N=BfheGDFLuS5ql+)nw3gTLak561VXU z>mv~b#+FsOn1BnoJ6FiRKa(m+MV3J4-xmSQfI`6a+#_BdvW`|jZVSi`zDoE-li1y) z2bb?3&LBy_>+b+0z`In&D&O->ne;A@&%uMFAMw5!!>%rKWkc$C1G&;u z_O@%mcJk&~FuGqb;!k)vqDPGNDEv~E6}OL9ANs3(m3!|~en4pp)-a+%Z~3kSKvgvb z9`Ua^LB-V@PQg{pKfoR|645P^%v09e{lQQfv&*v$E3Yu6*27BnmB#Bk%_33>O3HNG z$OmgeClbLXb_rvK5z2z29B&LVB;EG3$>J%c*0ja0u!N)q46%NjBqZAI4&j^P+V3H7 zz-J_~;{~KPAEfPAd#pKUR$_sMb;xp?&IS%$9n#4u#2RZo7WwBuX0BbzLANnT?GD?* z#5r8wKjtqX38(vIjjVRU0%{y^kfVKpk@aw5ADFAXOw9}snrw3PBVx)7!hUR~!9PY? zG~~iHIv3}1Vt35_(3*=fD(;Vl8z~*?(koL(Pj7C6X5=332jJVYQ~O9N?a|Md7J2N` zPlCUhI_Pg8osw=ZrI`0hU|HHZJSCpqrL1{Gz1>v+z`ltqE*G)x=k_@Zo4EaZd|($_ z7`4@GnQgVGv?NIFXxUuw@+I?qM@Jk__R3HR+0n^=@w|Xb=);j!fh#1oZqp4HD`ro! zH9SjbV(1?;;YB}jn-zOQ(8PW&81|SU7rGN3Ar7&9bJ_{{;0Yn7_q?huqMOdHSEbbq-SQO zM~8|+J21;|F6HyNf3c%IJ2^ku*Q6;%Fe_Rk|XDN%-OFY;4zS zNn8A{dF>JGA1$`i%;trPGJZ}g-~u*>CodO6U;vTwQRll;I~zV9-@bjjJLZ`n>d=d; z|Bp_PP!}7~KReV`bM+ISA}8cuJNi{kb3LUu8+s**PSa?&PT|-(J_V9suNdw@a1VEK zBhTFMn^~ElPBvzm9Y?;`XT^68yC-rVVY?Lct{xun78)1O|7B}d z;nD2Bh*4m}e+=Xok)iV#$YB8OTUII3yvC~!Z!j>9DZs}>+RCKIm<6i#besprQShH# z1jCab;y+>}*|7LE!RroFz=MC&E@gkraW_vdNU-+hTTNOHVf8uv?>bDO27A06L@%a= zx}00M1_zB3IHnBf6|w%(y>1W~A^17iaklADGH(Ph7<*MAMdMedc;7sY28drVW3B-E z{c<13{5qXc`i$s~OpV=5na_`7m(sJ%rs*C~NbZ+c@C2N{NN*_X1;M{7vvr5LkUbK1 zYgFGtqfB8dM0?~Hjl1H;YPF4+(S;q5LBiY6Ch^pmp4Rl547dV{z;}^G)$)ilMKHCn zUf4$omSp7AUsf0K>aTxNrk}ckicXkW_-rKV~ zL{BLD2auqO3$$>Xi=1ngECsOi=|_@2u^jXc1N zO`0w&hT$m#9^^~0Ei!-<4WY#|R?BujxdRzQror<@3{S)mwKC*3gF*CT%@=y^&|2dT${3f@w#D6@cPT#5oY+XLG z9j{Fp6=gw3^U~BLd>J_E;OKdA&~jb*w7Etj2*n_H{0>)}<;Fd;_#if5I4h_gtAw)yrni&X>U8D>Mgv zB!tR65|SxIh6FU6=4{6&y2Rf`I<*l8mP3+FOI}^O>5E*n^yP1+3w!znUgx&~OQS2| z8j>_OceG@j8HZ?R>nGpLOgs zbT7MVFUBAwiCLy0!6T|$X=IT1Huq6F$);C*<>AmV{pEdjsm-w`0i=lC3iJrifpls_ zJrBFbq}KdDiUwSj6wK(+c^4g8gj+z4oLyKLCh9R4=g7y;kI4Ve>MlS8Tryi24VbsC z#L8SdqBUI&IaI2`?=+VdFQ|ZnkHJ{(R#b4h=8=3te<6d^ zYJB7yria)I+435~(tij1(t2XHw{kAyBy(LrEs;PC5GFu?YS%-2$)Y6kR^3UiL1G5EiZjtCk~^P0bStaO@ZQV_PTOcK z<9{MKN^ZpBIZzs5OU&Kp<0+Dh-L}JBC31|H#1C9IsBnp2$WRT(=yc2o-DkGeobPuS zTvnWMUe5D^K%u?pLZk=VdEZPKp11!dR^R&q-W#EfUXs%9`pR)H+89=GdzWl42;H`t zm06D_hwqgioSbl4fV`MSjF!--+Usq?z6{|`hS}dx2b<{7`CLO(VoFrhbOynDcj>2U)U6idHb*v1ywrNi<42t;t7ia{2iRnp+!pb$4xy zly2($|2CanMM~Xfgeb`&2QBc}t=zrGeH;rzsO<=SqELLb>9;nlk86({$1rV ze*M_weL%#hY5>Pdvxh+I(KKA!QnV(*l@VB;+s5fN@JZyW@p6 zJtZB!DF?JZdhbhNZDewKkuH#kL}nUpXWDSd5Wd9azgbeHTf`Kedte;D8>!4*c($!L z@IFs4tlAE0$8Px3rx~`lXo)O9c?rMNPF5L`bZ%1ubyCKSAI}zf^e%3{FA=|uCf4}R zO+Ilp4*71qb=%V@2uA0G-MuH9nXu?Icr-DQyrG3+QeKRg4p)68fNhsr&D`n=IH$eV za7kmtYsxYDRmF8L7Qo8$ID-yipxwVxTmA!_K;v;+S)y;ILKp_Obu4X)STr;BKd6x>kId%>t0A1WJndjQ|#c zQs;pm6sy-qcJ8iwA^Bt;NFB|&a|?{lw4lIw5O2=yPG!09?Az@hc}2?A0PA+~g@AYH z={gX!#nQX*I@THAif=}HKvs(A=2|k@{gqz|9AF$Vo)M54-5_s0R^Ja6uRHia9902> zzGqDxOWF}Rwte<_mnA|(gkBY%vV5BYi$Pe_;I+l1#5mkg#bN2U#Y)`NSYrj#18I_< zVrMOXK4ubrS47^T{{7)F=IT&LrV`bGd3sDyd1m@^e@*Ha{mjo%<%JH)eSO3snO~I8 zaJ_4N`cU|ejNF4aiZfq**R%JJc`LdFgpJyUPf1(@wt@EO~4bSH%%@MMhpUURn7Eg6|CC9BGWPD#HS6fE$-D^XHENIm@ zcXx2z+}znq7}VAyBOxKVAF+1ok6!8r)y+2Nwa+ZLS5^ZEr;Zy38?p6<*Xc!_T~-qr zCAUWpu$VnwX4c@%I)T@G)RHd!OYcX`oYR`ehK`;{9@ZW%1$%6JYDyKkEv%0XGkbF1 zbu3%xyO?ajP;6rVsn;R1a9>T3_tR*4ihK?O5x>Pwwci7=k{i$6=MHv`IriROQm-QDVY5f<_ZQJr-Sq(4srRneymF6th3u1dmc1I8R~YnL zyj}*ymjvsdH$mAd<-e&HE9?K%u3CxC>auHIIJhi(cXuoL5TS}LG}0VvI_%gJ;1CSz zP-5*?B!$glh8gdljp}QjMOyOfof|VrbuL*GZ+gi}*#dm8h?%X`?RxATm1JP1KT(k2 zq84S9HWX6Ms0Ut=vg<6jOU=aIN%(?P&2oQ8xZX>YWj)pL=`TLD*r$u}{R`P1JhoOi zN%a@!E$QgWjS&aM_Nm$lru?qy+PLvDw8{d7egSW%#jv0X|CW)I-{yvd^;Z4w%Tu0Q z)4o>(8!(aM9*b?HaV@93m4su<8e@1ozZ8{+L|u^a?N?uRW9J$u{TN9x$m3A8zd=x! z=GSd`Kb~@RtFt_&smXKZ)0IGwNXZZAJ{$XAIPuz}v0_IW&8oTw)UyX$-o@c7dE3s` zooSwy#@InSrLLP(^`yHE;!fdMEzh=21OxrdQQGKVQ$I%a=Gu!q`x7Z-hGRu^&D_Ge zD3691e<7~ZyU>WDTAm%&wh60K(InKV(!>d^I;d(t`O&dpcjwL>?|Mo~N+Ken zroR8rPTR{CRIM^Mo3dK3F{nr=!?~=y3ol4O9L)}uNZk+~=}Obcao$zgtu8{_<}Vzs z((i5A=%dGftzF=`G#kThj~FO*OY4oOtb83MAZk5Z`190R?J@bfpJumRk|qk01<6lM z%FC<9IfX{#92ZfF%?LjtBEU5;vgeGzi-5Vc-}rGR<*jpuTrK(H7>Vr*odUqCYpP*$&l&yR*+zIN7f-B+c_YqD; zJ{Y(h15(UDW_>|f5XykE0?p2o9WFACq9K}MH5s;-X8MJ)rI`LMJ$udPV7gAZtHs0Y z!_m57qQ_B__&KBjF6xcrVyeL#y;Pm=`$l7g~OX*yd`6{2dL-vemw^A)tAw3_# z&~3Ty_kHNF72%;h|1gvOOvGaICsxml8mzm^2>tSAtdl7$)Ly+6Lod4Lo*zjSjq)}IvBJXIaK~Ou{{@x_bJHb;k z0X^~Nf{1R@d0*N&o{Dxcsx$5X&yR5%gy*wQe7|^N{q>p$u}8$>JZ7VR;iAlN^d)}x zw(FWXFN8eak6t)hLu7M{8{!}TT_J=Srd;1KCBGF(8?jp1V=t#G9gLKSe{uNb*9p;9 z^WtplV}6^lv8BUws_zff*6uxjwNQTDi*TvCV%MJ2$3c8-w6mkfCbt-=8*nX@W{`!g zHp*(K!Ijb4sk%|;H-&Ct>ahg}JsA-Ym`6_&# zTH-VJpWQ`RJj!K@gov-u4bkDCg|f*q%3;`W9NW>ZpuauxX5)q5@KPR)q9KvQNx?p6hE=&%7HjPoI8fc1LMt=Dz z#umenXY6wuY5&3_eM~gJG|ch*Ih*g=Yfe)d33S-W!J<``x;?{TgDo?Qa=S|sd=9z( z@I$Vpcv>mobcDlKc1|@-cYH8DOZ8%KC5Ts(KcIu_qgI;TA34f$sl<#A$6&^e=R!x- z+?6)XfyHO0t-)L9#MPFe$yT9o#@mB7d9AV$p6yoYMCU1LWF_p7QTpDB)$r^?D@{Aa_y7{OWm0fuB(q% zm!1R%UD4_v-QVw*dNoB&K`y>ucVRcanVOh{p2L){q=^j2fg5K;YuL}3Z8lhGZ_4e< z?~T=k69`=Vs@WE6Y(0N+my$lD;CJNeH{9ZInolsI{95m$ez>sR<1Myh%lS;ZJR6qO zI{3ZfwmDVKY!pE2y0gf8n8%^VdS0#k_88yQ%7o8Zoas1Ux%%JFS=!7p8hc~-KUdu^ zrTDYr@VcK$F7vH-F*}<()zq3lPDR*u_5oAWt$n^Ju@LNZ;ag#B@0Z-o*5FmoYBi-- zjk{JGD{k-fnqxU3CJ(rKiRq@+cZE40FIOor_=&=FG42)WjO^v?|rTi1wVHudT=7nck3 zO|DtQUY4rTUfaG;wRBy3Pi@)6UcPPFZBwrxP*vPfb?@V?D0ymO#m&*7!`6~PQq>q2Pv0ue2&%jAnElFr{e%Qg7C{ig)ikQCPUL zG6aPt>rDCRK@CB29U01UbcK{oWky;oZl>}*E~!M6Y6ebnk}Bj*^s{Wi9p?e~f$k24 zUlSEG-euuP+*h%UzZ(9sQKMj=dE7sv5m9Bjohq!2)sc2WpFt~a|8h=n+Cgga6lpKJ z>Dhl;H)%&os8_B>R+kVl{5bgE8hQlr_;JX(HQ+H_GfrN}oPJ}0`x+CGzP`S4{+FXH zoP~r(_V%DG!3_882j& z>a{Jt(l09?8FUu?<}jZ`^Hm?Nj(hZ>%dL}UV@>9Jg|GW|a6Rn&^R8XIa%HfukJXEv zlk;);WmQr8#V7af-Me$=&63YX(ATf51vlMg-yV3Mb{`sL@tR-mn7QfNFF;hlvQSkz z@}6KOp?{&Q-*D8Sxn;=0`LJfgf6UEv*lD5ZbJprA2Hrt=j7mB3W`$Ct=6$Rd6Eq=o zIk%5PP4a|ENuQP@g-cB~2ve2zA~MP;5*RZ>8TjodOZPg@QMpZTQmk5L3XF8IecPQv z$MZ_toNTdBQTb}0zO(^7*;TggbByFdd=6`V(Y6lqSZGbuOCqQ=G?uZ|djh)8aLaQ> zT<)Rc99#dB>Pv@(g;6tVXlQUDg3`>!s!+MP4;MJ~;c~-zSH9lqhe`y^>I%bs-E`Va ze6x0c22QMl-qWN_@bNc81&NMHRL=J{b4x$wqw=xn`mUdi+b_5F3xnc$FO4 zaGKNn=K`yk=kqLHr9Jk}P}O6Qoa)6w3ES$UK78`8+KU|=8eWWH62DJ>%5w-muT}gq zJIm#PY|b7>G7;)z%>A6*Od8}rr};Qd9cAvdYu9dw1)fxtm6f%#E9`oz5G8Cm8h%sL z40X`odKl#4(Y4ppCy)BtqF(fA4Jx{MEBUO~tA)WU!7}tUaIUO4e!tNme#>r*~6uboqpPojgNo* zoSGCYNekHRxc<#yH6|VYKvgn<)pqTSxleB?FTTk*P*!(zwqK}-DEElGvQ;HdVHvmh zTjQ^B$3KV{WC`#awcWURtRb)T!&CnW0zuEnm}5uTmktLiw;0jSrhTat-R`*uA>Ey+ z5<>^G&5R1c&Nc=wph}i#caC8nxqqMFYF-Jg5A(^pzu<|MKfkm(y7ZpxPhJ`5Z|CjGzkIn`GX<+VLjwa2 z#3!TA5fN-`Y+Q)@9vab#5L-y~+|@7%d~BV09IGJBVu^ zJXN$EJ|t^N=yBELelP>Wg4ickv~tt<*GA^=D&*`q5p}&ZsPSmq#}+;Y(S{Gl;?*&| z8f=B0?s_>CMvlp=b`hiuIZ_T8otTD(zY@DA>&K|COm@0xS%0Zi$7VR8k%u}7Uq<-| zT%(?sgg#aIr9v*rA-Z9*@F<2S^ZSF*h0&Ae!7@SvPE?fkc_j8S>E}c|P*m$2@ z2KZKOv7%}VoE|AjN!OT|?zAa%hv)n?aeP^X&v}H6MZT@a^!){5y zKewu=s5p>spk(+p$BiL6EbKb}7P*XgOiYz^t1C>6L`>YqVlZhoB_yo{MNx#6*X?yO zPs#_2c+8qLjY4xMHoHme-gROPtaxCGVij+H8%pxD2FIT3bwDQeK!>D(`=# zk6x1BsX)3U@+@>TTZwuX(EWB@J}TQ;y=^Ds8$%%<5EyK;>Rw?t(=@@O+SFL?vQvtI z%T=bHm_2zZxt}1C~V>3g4C_<$cmaxbktFS)B@g zA>8g7*gY8W)B1;3!__p4qXQGfC*SO=jo4UG%gM{rCi9G)kNp2f@Lg_hZgH_t%@k(y z=OcZ6eOudtd_g;V`}AJYUBzYW*t>)~0pd`c7!?TsV3EsUua9TvpfJn? zXyx*?#_ZnxRJ!y#y)N3De-1+0gA#6CTP(KLdy8_Z~OHHnzJ3b1lu*vbs4{@As{vZq8 zB!Uc;jV#+~BHujWT1y+ey_~A=um9x*+5@$2t*GeNHS4kHzP`(sFMn-F7rfG%u9g-%dOWnlJ!Mqo{?-NOk~Nm2ueLqY=hf z(4UMYh-={FbntwH)G{v{`F!sh&jWJyi!LjoH*mRV3XbahXnEP>F5M zfDTi-E#D|xHQQ-fr^eM1$IjF4;o$%q08IIXNZ#Wh-}bLcf7+LEc@TFKpF8Jup^k{G z;$25aM`dMYtv{73t|uEmgjF%!xma@`oKVJ&ZzA^Zww8U$dx!F*w74YYa`$NdqKq%f zCx}7RdC=yEV|ghyycv-Bu^nzS*$zfHFR(EP~k0woHrR!D8&%< zuvq_unsIyaAPMSx4e3fwg~12m%SyHy1ra}CC!;5PU?Z`WFJ8OY8pTi{d*OCm+nxvy zkLrSrS<;^)V>Up09$9GoiN~{e#-X#b6DGe=aXmFPwYy%l>R+CVdit;DEhVs4Ou}J1 zC>!Wq50B4OT7ZLfmnhS(Ja2y2%pfFc2eoxedHPFfC-d2DGW*F(FqdMt15x2auokEo zrS~V}m>k~sw-3~&w-jIMKz=$UQ!g(c*nQsCRe~?(qy9Z@zTjD{Ed%>San0C0in)hU z16!h@7Rn$J*@Gb&{dqT0wnDs&uXS50gRi+%!r+LWpRLqJzxhmycTlM{Hve!~Q>x`x zeLb|Cvy7V2e;pwAnc~^L^rH@3=P=~#2`L; z23-;ZNK4$Fl*$TLuFE_+JhOyQ!!Jp~&&1xojULjpFHGDwtzd?MkKJO+*SfO?A(gHz z;)tCr+oY=Mig)}L(fs3<>&v70c}bLub9Qwb>4+(pLlfN*>hV9xvOC(O-armb+a*dReS&0e$g56XA$n)BX>Hp;6;<{nvn) z6zjvM#7vyQy-#}+%I)?)$hwj>wI5!ByS4lPJ7JFP@8LJ7@cTX+QiE>tx;UZ;2LK z$<0I-W>Om}=&(0gW~K0j_}emsS==v}iR*Vv$hKUUIpzafcQ4K7;j6XtF+P&zYZj?X zi`)-l65Yi$7XNK6X zMe#c#qY0sf_Td>ed_^CVEz_tjh*_gx!1s37AD zSZ?c^g0CMkM;&=U$gdWt5ew!sIDIbIx)c%jD?|`Rz|NlSg zmWre)3Q5Qg*{i6mj1XBzB_lI?J1XOrne3U6?7bZ-d+&V?!ojikJovv(-S6-5?{OdZ z)_tUW&gcDky@CqCi{UOF)WSk)M6C z$6Th>JNvJ)LXb#d3si+-+)xQ)?N2-}uLO@92RP`7>(m|8G!yt|u@5 zadp+_>@}FHzS=#c`-?u8@dZFNV95q}_ofr;8{p4^zoKp7^F(+-R{wTk+!HOj2Uo_( z(6=yGXA8weO_53ZJ7~m9EYqX(&5I48A)P{BTJ@DA z{M-?`c~c5+v+#d+MiGEki6xfidl{_RxDON-ZYw!C8Qi1OM!o~y`GzpP(*)FuQiYYh znhwWYsF~CZzr-r)x0r7dB7NE!HQU z?I+)uZd>(&fja?cj@VC7?Ab4GJ>$wWd{bV<1Qn>GE%fgMv<#Y(;H}vqjNL=aV_uYf zeSJQphuvF>|LdGFN^v5Wsi|4LR(>tGjh2}9rT1lM>R2i(D+}H=!v6unC9w)w8m@do zz5W4LMJDQVlsqh)_S)ww(47e{yp`K+PpO4dzkeb1i|3+G882Ua3f`7^kxT5hZ7x8g!ONLz8Gg4;sxKUVg(hMYRX&f@ z+gk!q@lB_j*DB~JEriwziy1C53kW*E=^qZ^B8JADB>zii%z%>a+qH!SUu zb@iybh>w;2y@Gp==jrLKV)L8Sm6Y1yjdPqO5k!)qVwgkq$&*CcH%^<)MMSC4&2%{G z_iSokak&Ul`E}bpzT4nT9Da9hSLY$wz2Kc^n52@HH{tiCrLdx`2^}u$xO0WY8ZLa+ zuFX4tYNK4+6~Fvm&U zYK-c3loaIJ?kms?a^<@KYMRq`b77>G>hs7ARf++f+%kzBv>~YHl!P_?rjg_kwDGU8e1UHE`bjkP1(&7BxI^lCC-#A9&HheB%Dr$SneAb}_ znQW#2{0ria|J~UIWPku#-F!2}b%yzIq*%9}VT)KA<;!0djHw-EbvZq1j<^X2Ej=m! zzDhS46_wx@0m=+s^oDZ831+8|cyU5Q-Cav7UwaS;R3gP(7WH{L;nM1EZ^XSH>6w|2 zA3rX{WNT!=9;v%D0kQADtFxt&sSwsn;9++gIn2?zVx{;oO2RngcOD_Ac+ulK=eo+8 z?xpE0TiIx88!&3eYy82Gx#`jgdD#PYT>T}q+4dP`q z`(?}r#-5jY5I|$M-+DTJo+6Y2?T@*3rP&eKU1GfoHba^np}1y|Bp5yO}w}tMzQ`=;&x~FUDkd0US2HuAO>IM5H`1@#hDc^73-G7xzQM z)=RF^bMNTQLGO^tU#t&pRW4kdzP%<%jhgiSxsj8-&SyAq})VPJxw`m5GT- z3EnLfaB&y<4X@RxSjw_5rBtEbjzGt)nL8fWtpH_xH?He9ULqP4+AW&}N5}QCJsC3A=;hQ(ae)Hznv@|)q z&Gocc;#gMK*B2|k-*+M<0}kTX`{xrU>(6PHpFyl#GaJa(D>jeni@3t69U2ia)BKY* zZcZhsD^|o_95*R`j+bpo%yc<_ue$TB~Eqdxmp)Z8(GH_T1=@GOJLI({CSe$ zLGSFT4n@B2966kBxbMetMHOV{nyIP(LNKP2mFs&;J)4{qae7AUDY#Fd<>i^zU=T>z zjvVTvet1eg{`;>=`E}9_^>QeZ=+P;vA%9hKm1dn+)+DXkWU4^h$qFjeR zaHSKSPA#QM%)2nLOBv}zUR)5EjWrWGswaC0B>8mWF-)DgxPUaD7O-sRB+@|q-Yvm&_luq87l9r5B9mjA^M@x74{JBAqG7Zhx$ zuP-ht(yF>dL!ORvqi!D1$}Sc>>d zD($iBXFbQX_1VsUQ;HN@JFo~_3%Vk4>+wY2UsxP%@rsqZx^tM#QC?Y}=z#ImJs~lJD07*il>`O&IUPF?dGLw!rB6u6sBVqypb>lRv2Sh(RIf!8jAqhXl{asH^ zcY>0$bx~MW@zKJdUX|Iah3CSFnQv>=W5X4^dGZ)4|KzW^dEB1iTjO2OJKLenUPuI` z6Zu$1_%dA5{?>KcJ1ah?SG(i~C=kt!t*w}H`wZL`XqVB^(Vd+thAm`g&)Qov@C3~b zWytJ(?m06$Xy&vBpZ0dPWbaVo{(Q_naZ-ur`kig9kwjItaByKN9*!QmGsFBS4l}cd zw5(K+I#na`Yz+p~AO60U{3A|K>N6C^!UpHTGiNVT?E-TGhd%rTzJ%Rt7Fiq2?hZ+` zyM{=e>GV8g#o}gAX4S@Far1V`({j}hwHQxJOx@{kpC2Fknd!&4-)7gEmNx=oDwpP^ zmYy`1ZPVknXY>b3h+|Fm^3dP!mAqM5ckz|Vp+CsSjn54s5JzA4x(v#W+N$3i#^eVD z>IxkNbmNYDZr{Co*UQ^GO`WZ!lU-a~FK0lIpWj(zLta6lK(v0F#ph!{&_}v!uie=A z%5&#IEspgbLF(l7Ty;6kK)i*o@m=tL*c@8+yk&oKQQ|kF>g&ufuI1g1=boYN=alSq z5DOBAV6*cwOh{RU4yW^kX72CyDJAeV*(6DK#r4r(mVk`S>THoUiZuwkxcKt;uYF<1 zY&fN$bBsE>Z;R$EkAgu;KA))#m($jK`czhNClEDlTBU6qutC$K2beW4CxC~Wtz2qrx>e;lv30M#*+1}zO^Rt<|5$j>wPBlu=kE>8G>Oz!vwU%d)lP7( zv29OQ)s#vo&IA>6QAE^^H#IO6HQy?pR=f{!}vqPDiDZAfp_;jj?h&LNsQvITcwP<%qjCHI|Cq}l=}U9cC6Ey1Yxpg)a=SBH(3e=!i#kAe ztsQPJ^i4u_-rQV@`fw?j`^z4Bcw{7uizFVrfGKvT5#ye4cpA^5|6z9|L6~>9?DTK< zWehY+h}i6QKTYvF(WwX091T6yC7~f-low`Z8Qap_6=%rE!nl6& z5aILA4m|2gfrm!7fMU3NR}-l&omV+P zR`1kthjM|C&frxFRe|woYH0Q`1mz8K`saAV!ncb@JA?l|Isc^Vw|oTojTMWrDtBmc zJ`K_F#N;cT*F&r9VhGkA(O?jJB`N7TNw!QKkA#^kfa)WM zj$HEV4w2&cArN!K(bFCuNVX+H01uZPNTp(>hoVu+-+=aN)|zXoD;T`MZ`uj2+JXSd zWQ{A5ibfZQXhA0Ft7+aX_h(8SnRfH-+w8a{)XQl+4UP|Ii@J6&u+~O`0t|w( zgTriVe{KFl*W%5;!hoV6k*h!QwFa!Hq+itqPu53q{b!@Tp}s6EO2%}@ZnMHs_~_>c zM}h9HSwBaL0s^6BTD{Y3Ig7*O+(dXTwXX0)HY2y}^Q(66;Uc!qks`9?6cqT}=k}!Z z;dAgg$=%YakkoaTpC7;JLVp^4;X7|ZVkw4UkxRj!mwtJ==?IV$hVBP%%ncwdZ^IO<-jRe zWz?~O+Y?B%IFm5f^{{Q+xnf;T*mSe>sciW(dyj4<0UkOZ`^wfsp$27Yw2Lh>+-@qN z1EkkYk|5oSp8B~JUm{*mb3YX%aQ=fBr?7E3U3Ktn{&PO}vn4XmR8GL?2YZ`74Ie&y z(9_dXx}Kbv$iTysS5`JOm!YMlbxqJxeNU=QoUl?878dqR=jF?nt?%v~g#ayfQ9pKn zEkU0;o=$X-lJ+9ci+oJeNzUU}!&LCzqbnAYH3lr{+A9^k;5xL*gcOy~3_!?KUv^8_y_IxUSAD5k?Ikhyg#9I~=B73AerRoyli zdz+h^Yil3$aK2rYt79j6S&tZmBlml;H8M@nLYnRBZ;deB={PlD<_i|8&r1QD9(6Ey z=>x6dC|WELw zkK{o~NlCauH#tG4l+;wKu_`@$OMZ=cd`-VbgGR}k7SLV;>Tz67206d+#RHNqHipsc z?hGHn7@R$L;5}6T{mFYeXVdZ-C89B9P+Jo}_|wOL^xCbpFzAr_TBAcFmcP|4si(@gxE#e(fP!-&`Fm)aJC}L5vx*Y+QgT5phl>ijZ^G zke>EQxjf=+W^Qh$P;~;)#FxyB*9Pn+pYky z7U1c79KqoNwz*iX1+hXx*hQNwmIXu)0l)$Hsaf?P{=;W^FXT7xA(y6H6|F|k=Q=qO zF)@~AX?(sRJh$k$ONIis<1vzKLgd3lZ6W7F&|TTX7TU(bG)H&I8We-}HktoaWgn_rouvmeP$ zv~qJ*sY~A$6=nl#E%yTEerk=N!hmdU1f3zFP5cj*ZCdDqgB!(XOvE|ZfruHtLf0mZ z96`h-i-SVbqlo%cxVs80IvO((pYK4Mhp_~MERH>W96S2c$jn7r0VrnWoHBiv))N*o zeTU#AEIPyRD2SeIhN~%-*%~MuVxjKOsON9$y^oG_HA`;EjZN+f2bfEYPuT1qC}V_; ze%-04Xi0Fi&NUjJ^fMN+PN6g06p(*xzXL{;$gI8TM**9|7CER_W#YsM$P)X0`@|@X zw8z-8;T0E#ADPecr0^FIKPdDD3_o-#q}<#%hH#2Uk127-9zDWeAh9D056}fbt_VC3 zjmyIa4*-NW(@S$F0hD9Ydnbbt+?L6RKv$zxT?ns8KZjVCm|&3WAPd;|SnTHnO_6`j zsVvo=meo<~j-sI)wE{y#kQo2Lr_^sPtqHH{>G`{uTw)&ViL3xhn6^B&qRc8+Y>$1hNF}n^E;rjLM=KHyvRTsx+z#?wDh~qDlPC(t z(Y*D5zK7v&F~p}H3~Ur(JkR*vz(hkF;z~_40NWPO$K;#W=thws4bU2U$>9GBw>{1j zuF8jgT~+obE~((W%gc{l037~4JW%R1tlDpFoRRgT;uet5$iN$a1O1PgCWt;BKC8=J3BkCd%l(7c8+!vjyf{HB7C+s?`owqkp6 zL=(PVY&lu(vy_z7b&5^IYlIl?~}@wQrjZ1eA5Qd9LM0lESJDQ5S_HKtE3x%(17Tp>~~0Fp}n zImtV7^==4XU!twK;3YX829S4Kr7B?b z65Dl)9x5vQtJJm{G{^2gsRHBbxlo;5q?M|v?pmf3_ZW}UXZ+as)2C0Zt*zxXrvm-f z8mg1y%+`ki>SG(z^YVDu7y&wn19RBPF{a<)%PORI2L z46$9=+Hw%~OZ)ci+aX>VWpnr65av%0qD9>I3b9v}rxQ7vpyvDtNS5M8e_^3UjK6<2 zOXlfIm_Z%R#8_3mp6`Pf9=FB_D&uLeX<1o{?JRc=ms(H|PChGH=sp-wMT7z`1tdFC zBm$?E!B}2#^g&eI9T}#gRs7ObL{4Pj&EZ_%vg=l*Qu%RZC0SOna5Zh4S=vz4xfZ_+ zb_di8Co#(qBbVV@${RHD1^h3*yv5O1LR@k6)l``*+8aN0lD4-rQB;Dg{V@SD&H38UoXH~^yRwkuJN1o3)$JKs;Sx9 z+BW!8GkSf`$k54u^YtGAzTh(?;CQD41P)SyMB-LL#gUa+c;4x}Jxyde<|EUy{ zR0OWRrQSdZDI=DzL(1OR*$jBvVdCiAT!YhC%$iyXgE>wCT1&%`U17;GRp|3*87L+v zTM1~7aM!Z@FA)!J6ITxxY@z4o=003xi9TBpRxXE;u80c8S9NQ$SYOG~5H;z%(ZdNp z!q=&r7fyb*eU!AYus|TV)flvha&$==7fDf3nS(Aj&To-5rg1Qtyg8sQwbP@Yh4B1w ztIIi)n&-C5)QtuTQiP-i*ezgDVO+bBamR>N^?{#0K?=|Nn=bH?e*33Wk|)hhjtUAs zxjA=Zd(C7hK6|J?)~mQQL$9L;FgBE6R^wMtc%VXK?OK4@g~uh6qUw)}MbBc)s(P>t zzg?%{ddM5m+UtMTYsiGb_jQ5h4R0vQ@$yvTSA`3Xi9}Cf}bi5&kwF z&yLIGPe}x&Oc}kh4t^{7F=3}LJh|`NOGNHRtsH@i+B8@kDv)`Zn$S9a5#mJP4&aOEK8amcnFQ3$P2z6c=9{KP5)HI5u|7sUGr_atx04X4)KZDv z*#KUX=%>hjpI|1$ecmN1egopCWu#%`=&z5;QkR`!2E0y_5RdD=`w)NuabAievHD{< z4=K9)c)w2RgXU&-8`6e|1uCod!GD5MwR!L|MR5PtSQWHoJ=Si~>(OOTPQB3eZS4hl z1ZGj9p^ez;M`bSPo<{$ThP6Xe=a9~Md!7MwMXr%M5uF(oT7TSnFJ2^e<4Uz0JJ9(B z1#QKHako3>sz)-jv4-`gTL#}>{Csyp>fiA2E7DTTlF__oz9C@gd{M{EXJKLCLUw^v zEAOTEYF_LTyUy!a+yNE=YqAF1Ey`6KROBz9{qQwix3bL?ZZK zR2ny0HcPssDxM6RCiqi=sfXkjMu#%tk(IFnV2%i1b5nNEj9m|mEt?2p>1hu|V0n0Yw#@FPo!g_<71VARF_@ zn>xE?xUWg;WUDZcKsXM})?BwE=UBtw&UZ-tBxtYOrYw_%p8wH?e1}nJC-*Yq7&r*Q z!&1du%;4y#<@cX<=nNi%`q|CB-d^>|I~haWziWKkiX)e9{@%d%80lO$MVp$N-)+~q zjiobgo|9!+l0@8|9qf8U{49Qmiwsv+xNJtxH;_;U133Bh>z6v)QzN5qxC}6Fr7FdB z&u@YuH_xrF5SQ`&yDVPet!UIkeflM#l|#|3{laA7XuoH)l90iJ7}V}X$8sK_GJ|O^ zXs3X@;mceGXyt8Rd7xRY(!`x6;+acfaLkF zl1B}k6N3|N*euTC~(6~B{P zp6|rQ^P6c{=Q(%SYiRV>2VBDq;AiDXe&|&lA*-!|QmftqyMHre*}-1V4)Hd*xYz*- z33v>PPl8!PTpW97ysd0;n62aCxJS$OAXor%G+0Bbs0$NK13SGwsViI zjrRW8Jlq^6#d;_&AnSl}klG^^bte$rorgD{wFtC^(FKF=LE1P%==tC9?U4Ad|MG-7 zIUsQ~#wI_RK2a|9HS!O_Rk4a{$g}-?c0Si-x*Te?RTj5J^>ah17I>EI9Dm*zKl-+` zbbuU9*3db!sfCM6g|cvN`!u7fk29N{S(7EqlX z-L9uzeizYfW@#A+4?&tbc!o5jb6_5;aq|He`~4QpFMdb(SsAKP3pbbYDjX11u@cdS zy2&Ag%Pks}p`kQ_5H8#(BT{w%Ax^ErNysVy4$%OnS)vW~6j7pj>G=D8#rFNfu4GsI zpMW6Dt+%e=023&Ch=Y_db?-Ze1=>;RhpdLkAXjWheNLaza zl*(f~h&Ocu!&@jiiN!r@1Y(81(2WEeu9Vu+*cjZH0&um&eCXx8PG$G8L%%5#30rF- zKbIhamBE=Te+oADBbp;XRq2a>PAXC5-aKi^Z(k|HWQjAm25j*ub7={E$bv|H!G?m4QdtA|EKrKzUDHmOV>BmfyjMMW31 z$Ntu0yEk&8!Oy#M?Q-x(6%q%epc^YlIZ; zdZSv;*`tV1ni&`HiVJy6`Mdg&FQrx)e#|UVir0-|UY*ll+isRj>wCRDm7qYVux&?| z{E|IX&S||;qVxH>j#q2hALq>9dfCRiK?ANFD1e$o{PK?2)g~wJS!`X9BFd=VDc`=) zNqV>~4CYDwJ2z)ql6-%Z!B$&J$9z*$E+doBWt#H-x zl0EcQ#J%x6ehYO4+mX`M8d|Zdh$Dl4D`2=VKig??7vyptooPcqMelkLAC$Vs34CeB9dtJRu@?hSU3asapm0~?U z`z~ER=4su>P^3*uMU`qN9N&$d5w?>uG&Fqq@+;0^W?I;;Tzh~8VfQsstH9_om1u5z zvRkoIo0u=c?f#IA%pXSk9L*K`$?rU$K*{~VxKOW`n3xC#7?3P2CGFvdn_DI2*UZe; ziw(ZZ&%j=dSBtv%le(8yxB#-IxP*Bi(XWHnKESp3H$qfY{(TUWx zd9<=cIXeAKvUeL?k7g_^kS-yLeROK>?#mE)@}-!a?{YnXf{h&44K6wmP2dl_x-UDQ zDT^SgI@No9Ik!~lxo42D0kOb*cg=1oWo^)oxU$#n3Oi)~%8zU89y{ibEd^hg)lfbY zXnJ`0^EZe${dG7Wq;sJny;_=AahoWMTH+Yedj|69cmmh~2~Fg<%-&5XaX1p%@`p;9 zuN+KJdOdi*pMu|IYAM3$r=7XB*Lb(Nc#R*4?0ux+p9QL8L|hhXeENa@@EqMWN$1+* z>!~hyqn{nrlIEHjeZU{fM@-(wy2nck|A!t^GVU1fw1?(5CLruc1*Eyrl$nbs5T`B~ zE1|?WKH}&R)y9HL^2*9%`G$Ty84e`HnNE{=m4?g3aYy|t8|ael0d>K4SRN4j*knn~ z(F*co!p2d+r)FQ;m23LMx2at-39Cp_G}X($Eat{MiTf_R4LvOCJbar<6{MG>o{4`6 z8@j=?)Sa_1bKA%gR+c=rwquFekg~FOFdQRCi&^|!RvqDX(AK;BSc!56x-^&!hg>!x zG1H(-m$G@hMk?>G&Q(3tqs?qsee^CNuuf-Ai27l1J1I!#+K z$frUs<@NRTziYHeuHCyKs(X2S3`K(YF}s$Mf!<%ac5_@=BTKu;Wz+Nn$@+8~tWow` zm?X)Tk8#`|{7^$w(=ltn`rd;0xKg#8O9O~hSAnjde}4!`CDQmvk!O6JA3~DX-@^nB zv(-L~8*MiK0x>m}@U=jiC6!#0;%c{~6Yz*Zgaa?EJNgPh5~3ky_d^%-Dy&VnAo8|p zb?0k0Q-6iHz=uqOrnf+#nf+BEGbYxHj`(2t%WkW*zh5JzWmRYo z?NQ6S3Oq(LTGuZ~+*%-NGX=}gOo4_8PzJE_2{A|XTdm8 zKSIVGaLf=L)KuIJtw2k{EDP%{HaF3zycJ_~$6-4*iYq|K(Te$=I*M9R2^dKjJfy0@v;jxELth-KFGyrj! z-^c6J(0aNDCDEieBjp$#8>@>%S~_6>|I$v28(kq|@EWXeT-I~M8kX1Thg?P@t-{F- zU%grwDNz;)#{oMxmtj8yNEcvy+tU&HeZ{xRr@--{+q)kDEV!TqUy7cD|ho z!LFwnG%}y9PWW+0TdqcQwmi$y+6YTXkc8~Ij-Ec4a^NcKQ-PA>jrixd=hF24au&h< z-YgVWa*gVy)sC98YRfhqYu6C5z@n5ptxgONYk%N@rU;k_R7|zugK!(%1LMmML99%Mc*WJ#xn#(*PVEt*?<9*$Oj*>c-07zByS9`+?R- zMGHftyTAn)Yq2wIhr5#j`LAe+hLn?;M5%hG>2XV?_+e_2Ub&VhKXeChU&A+nec>bh zektB{*LBt~b0~j)9s&$QMP?C0jeiP_F7XfufQJS0K z!GFdw9;?Kh+yjQHo;t7-SeOOY!psZ9aU5+q(O%+(+!l|Pojp++*F5%KBCPIu=~~Wh zQPB~*ddc1W^i0J{c4K|b^r8&->^~3`mTTYh= zf5Z)${|#U#YB6{3+Pp!52eRB7a(iGMM!K|qedxEgwicRw=}k}ocjbWFw9L9GQ8s{Z zqU)?3;9=o%zdW)musDMfvQQgX4DlJmY!#+;Ph{ysMgvmOJeBZ~|JG7uX>Lm8r%9yF2Tp`v&t-0p2xYMNPQkG7Kt;rRaUH-{` zeCi*Y0A~dhxI#Dwj~FCMfGDZnosOxgsfm+l`KB0ih2z=t;wLFKtm2$pT!)KRsEh^d zaiaB+A%p&MT&5NC_AxPV&6vP=4Pg3$ft0kgpe3d;`q(KkSZS2~Ul6^d5|&dra+2VX z6m4r%7-b8`)|Dp|Zr536JhKa8$l|{XmoQd8UY*T2_}WYO%w`tgYSiK{%mPBT(gLLR zwS%im3Z#wAe(W?cc28q1(MRVz_wB|!a?q~ZqxJ)O?Thnf2S}e9;NP{mW^qXEEQii7 z_rpixkSwi~19F&u_Rxsi6C+mT6zU$J3nCD=4SFLRUpzrZBTvs#*oj~P8!UQk3NSGl zf}fZs;1S*hod{9O;^KZ3Rg5RQ-I$($f-a^z&Y%hWCZ|gRDz`uVGpU9bU{vFEEx>r( z)2z%-zGoz~@pt`^Azi;|0tQB9hud3xw)aQ!p!luB4j8SQ@Ba=g`^(XL7evN%ve483R1XOS2JOz%kbc(z5Fb zgM0m<`d|K>=&!v;{f9jtidq&re#g|zOsCSx8hq}MTi$3)QHYqHn!2r*qY3VwwkSTC zQ|GCuG{LcHC#+Hr`NIvIWHm3=W*Osk`m;>=>Lt-JLMfyRb|*P|m=}loiHyd}2r!kP z4r}AqTpbtaVEY=3$Eh)I!Tg6}UzXNf@_*WWKZ$(+XW}Ic&Lh}>SKl{s>;0CwSy#U@ z(*zfEW4`!G1wMgaWOax;eeSm0n#V4WHKF}Ufe_t^{738uqy{HMfCGI4ATDPKpva(eokVpBxU>T-WQVN!&8F+{%Kj;K@4NY;#|v zGFSR>Ra}7gpy~D8ym*lVEu!Msoox_)HdcPu#0@^#(OELo?P;l-6l&IJi3k=Sc=;E? z#Wpv=k%R#Q(WwZ-!Cdtc{CXESJMd0u=;)X^zWSTF2+JN|xr!S4AB;H8gsz%EbqJQk zSjx!<*jm13Qn1;}@T&Z91ymmE^lx&fKxMq+(L5V`_>-&O;Y;OKOOpO+hQF{?91`X_ zTv`-qSDS_jZ-K%s=Vz^NI(`^w`$7GG+spn7wOdwbF#}*c&M3uuI7a-Bn6(3fqD%>Y z46|I&A@P}yLr`$Q#=ya$7)xuBA_0(0NqrszG6Cpd2D41J3T~HtmMsP=(NngtS_?6^ zom}}8uvfs`(mj*ECqP_V@`g;O`jOj_xIX{!WOYr=4)6^VZDi?i4`scO;C6?wDbZRm zaM6VtR{c}c&Dx0=EK`-IruGxuz{2&oB$P^Xh6B?-lxVvZEP3khY6jV$Pi5uLCN^Tg zRk6pYtf&m1lK5X%!$4>pvb>elE<-OCmr;vl0w2U3sOUmbPQE9vo!BM@fj;r&LkiRK z9MMz&Vo6lNn-N$#^PGR<M$wL7jC9)9jDO<`tzO#$X|~ngI^@CGEGjX8f`5M z@mUPt&6v@KNL2`vg89>z#giW|vqQ5pDAE4VBd3%1vd)jY$^;T2rMD#{MmO-A1NxFq zE6*9cw6iGAIhL}HaPq{&PUnKZ5E_1zMP_z(ypZ+RzI1c+KZrHGDm(k5h6bWF4Z(yJ znW7^4xaxUlZ<(%1BGdPWQ(5v2ohOt zZmZ-a*9owXDC^{FOMUfLZXpqiFLtD11I!F=#7vH{4%5j}$N1KI7mF^P1lg$^aBUeA zsw<>OH|z(fNlKqQpGLMsa0|A@`WMVadEYGl74sJx)!Qlj&5-?GjTd)aDxc@d5T&vD zrd4m$`G>S+%8Qt%TDpl(DaIf@W64VFdw`^olJeLQ$Lw6$-|yg~{GOhXF*z|2nk|)G zps)8mL)fgUuYZrl)BB2rT7430ypT=*J7X`(B$+yLIx%w&Fu>a~SirlD z4>_pc+nlH3Mw&ZSnsj}wtQ1ROf43Ihp^Mr12wy9)AN=tIs7@)Cvi!0;A-fKECGB{uLDsf)ClzUSz- zI(-`(g6Qe_jQnFiWk1kgL#<3D)U9!z9A_kF*Mus*`*3fwqb9Ywzc|LCu!wN_d6R8f z#M88G@tq$X^t1x%j3_GoQ?Dx%T;-l^uTAfiHf3M`NoASFYQtTc?U)d+wsbw!?y@KE zl(F8Q9hNM>gOk6`{TR;u45FhwKxsr_?p3CYU3|F)@gAGHB?Dl;$cXkAkq3Nl04cDO zLTcmN2DT$5wg1-AF@oRN3{ncol@FpKXdg3M{EdH+*zdf&ipDD~LtBN~i=Z5u2So5q zCNSaCDD?8&_Z^~+-Z*mY+03RY8Hv4~Cw?yeM`bGq8yVp3m5=beHyNigRV_ext-J6K zi-VZ;+72Ppx6(~{ij)s>+LG%Sw`KLGx}}mrgHa#k8`0wf=0$f|#ui&qstC!aDk`}| z>~2`@4{>5JH)*A{a6)r6Ffce91Vd@>{RTI!0U}htF>&z>zxmH(B0)d{Heai5L z?Q0%Je0%zzapAmHj}Y_>;`&ftWf53lC9Ty|jI_VGy%tx-1hpIXM{tTW3rMh8j4sa2 zyRz$X+)!|HbAuTfOcoCxdUqGy=Ag9Uu833aHZy6Gv*ghEa%+osehk#0)~2RU>xy|q zQ6!S5CR5>Ybk=Kx9!vFnOJcF`%ms;x zmJ4dqUTKv+CuUT3(5iVBbucDLbu?CCqcmkV{u?({-z8!g&SE`iz%S!bv_j<&6znqg z-Y)^UG>Z#%Ww`Olm0>&!@J5Z#S$M!~PUh&A*}$e3`H1VDHyIfNtnO=SMrd=Eyf}fq zuh@rwC%C0;iTb;GDJ7#oS!9DZnBKi9N=e0IgDF+ucty_z5s{8W>8#h5#3O^RAcY`V zFrCAEZzMQWL2!^x6Cq)NUeVCdaE*@i-t6SpdyQzXSAt=&WQF|46L+j*BGUd>J`2h1 zD?2H08(J70pIY&|jcsl2D?dqT!W^M6&+~xO@9ixLRr!EZx*KI z_Hq#wE?K|bkj}M5L7#A7g|T1hFZT0(xJ=lMYg=MlLlqxJ)OJnL7ZFUG=psYQKil<&4*xb4v?ln3Y^uUd@AczOh{SQ-p4DIX zAugzbjeqR#I#`_ytQ7lR7X$zTkVH?Cnwpx+Lj?_Q##(#(`kJ_F-kgJX@WAFI!^!~Y4r4`TnmRf$ z$Q;yklrcE;{2K&Ee`7GZzThAI==blxxtOc4p-VLl3Vv8N#mYH2PF2DvU+jzaO*-t| z_BdLF7l{W)2BSG!hl?v~V~0OENn>4Ru$IC~Z{CcdQKB559#TKvAFAD!9K<(&2tV37 z2dDKTls4BR2cgX>QgO#Kb{93IxoYeU{_?eJ?0*0x*mbEKqKo*0h0QCS3t3t9m=V5~rVDGyG|MMf^ zqi$f!hd_F&k)Z1$`AH40y95lyq9^LtrgSq2Og*iE#lonD#`6YP)%UUN`QQ>BBeT3; zO+`@G(HVgTceLUw3Dc7>?5XbdSdSUIb*nL&nw;+C-sR2z8IL}WCp9}f)#7Tr1WCB5 z_16-8`w-H;tp?lKstvxiRXgAWU8#k7RSfO3a{l^g7>{nO=~PvAF7yp0vL98?F`^_H zc)nT5sx(V~29o$U{v{$Oaj1p7ECRZhx+Usj07_|R6)}!z<^0hNr57EGuso(4V&97J9^;>EQOs^`|~Wbs%29S-bCRn7uBa?}8`D2iu z@2cp-d;bT+vXZpq!qlZ^&mQTgP)(zd*A=sLq4GdLX|bb0VmqzEH|Wf^%30vP7g@z_ z(NYFhInTNWG5dfx(H3*u={`s?tNQn=R(?ivp9*%Ss7QqAw?;X)kM#`655Xb5)aa;l zB*IrD(U_&H!hZJ7pL3Xae*Vn&z#d@Nl|@}%MI}bKHtl{wn7@pc-bo}72vDGF7QA8g z4TKB26Ez<{ZUr>pfAK2dH%gb?P~u8Si8wyv!0yXGQ^m_ymOxQs1WgZ13{}C7muU_R zGur2~gf_HQ$PjKs7!RK+IEbb>zQ>Ee?>EJ+qK~n=< z(4S=yvtdF9%r%dFfCP`}BzxOn7d{T}k&@zm57r+93-wXJQd!z5L5tz!ji<*>-37=6 z?2UtOT|)yI19+kT1U{%&3@(T5i55`3({q;H$1o3!cpo@YUb$lA<~G;M3Y7QdDWr#7dun}ljJRuYH`SRNov#cH zn~u1j0T`7}xp{Cb(*^H6uuy#S02-%zdW(E}h^EA|j?p#MUA{*YXM)t{Y$hg|+3igc zEB~;(%Z`kU)IVH{Fp862p#pay@O$87@kxF0;ssF-qB=-~>cSlUv0gbgfJ)0wY43u{;vbebw{6xqKRUO^x5wJ2VD+EFiGEdY7c#(|+ zWeDD>?tLY(0{#B>?b~-GaJGDEQ^>=Ho`T?Ofz_a(rf^@n_Z)J1>}+f{cHG_EKm6ah zKXg#sA9|qUZqyT^O5oZKQC`(zD!4+320Fj`dsY_b?b}ZCStT?yG*io$X=qGOl|%Hs zTN4rVtjq>C*OzfNsGy*r2|XSRQ%9L}7_L>p@e2a~}&SJxT94=_P$RtKr@>DFJ`F9|m z5kEv`RJrbV_8nwu7qR`3xVu*F^77`VeL!jd;8~TVr9JBDf|W}ay6dAQi;~ft>whB! zUa%?g9esQBbXV2)n=014v z02nLEuMo09>u){W?)tkGgy8|uNEutG*ITAQc-%MX%{N)mqj=)oPSnX!!hrtg0yn7{t(QniWof8T{_e zjt@9Kxt=&C{aM4_eiL488YlW|6z#eU__fABiW}kac7qHX+fn@VV2o5Wh4dCPhT5qt zBFmY!!j=h9ep#AZ6BM9}`^-#CZSmrw?CgGFgD-k}dtd3!vh(nK3Su4qSm<1m+E#G@ zX5ObO^~jc|`JlQHxlo2$_|*5OnafL#6P2-{Px=n9r#FiPJmI_`Fidwrz;Pci6;pXt ze48TCdemTp2 zNOK1~DzL#dLlihaKOZ^|%rE}3oF%K^{{3(D{pTJFOcug0fLK>d2N>`b%+ z^gR}U%mP?~esZJCY>QK2ouB)i4G|S&1^hM$D!{r+h|=zY?pTnJpg4O%_Kse^!l^uy zuA8ts?BRy%EQ#=k-&4y-7IND)YzR$yERXK(Q$%T7h@w`se?TdEAmD(n7np^oU7Mt zo@QCV1|M1kVjG<0Q27Q+tP*U`NBo43iVj6sO-{a*l5^67gN3ExPEZd>qG8!5NSN&I zjZJB-HWf^G2lQ2YQG#cbxRu1|IwTS;dK!q!Wt!!dBZYs%bc<0%$sUcn(#w@@pT`ZL zVVx}4qV~$qll(un>+0(vG73u>Q&M0JR1kC|O{gLO0*K!5dEc*X zWS$YuOBX4-x$Q2xwk&oqg%yocFH?o@&#^5h^!BJOyQ&bYpBf-=zmFd!2rJT>H@O%d zxVY?121&+;gnZpN!SIDcuiOsaGA^(A7GeDC0K95ohrk}WcFsk@QU~yCk_YYovsq<7 zH&}}ow6AIXmWOoBpT^{+`@l`3SQG+N7T8n-K${DzI`(6^ufLyW<`85Jrj3w$OSp!5 zf9j-x`E&FV3mcEmyKXH+30OpT50D@%AMJU2Zci+u3>=A2divnklwIO3h45-3<;zh6 zWi~xlMCpAPn4F!<{PcAHUwhyENM--WeUVB-DMitsA$v=RL?kn0B_vx`99bE6cS}Xf zCZ!yb&@fL{OE!^IW{Ipq$;x^lCn{9cQ9#>bGwuP>cx8F4jpJn z+Fkp;u!Iv*pCx*@R*&3}e~skhfq($F9VZtby#%;6Dsbz&#-%(&i)E0LDzp$iLzZq> z&Q2OX_2eQe6h?E4wbc(6ad8s6FODqx$LV7&uf|Gst?0@6WtqOk4-1+$L?8XYQ5LfD zEGs;*h>SJF7bgdYd*C9;b+bhH8b{~SesBXw?>nMp%zXRz1w=;?kX?Rd z&!_3nP#@DQN=e9Y^9?eip0J*ya@Z^%=;OX8yWV&!^@)mi&ZmAbV%hg)m!8}C^)e(% zlKktJrTh52dB`i(WE?N*q1=$Ttm@$|()`UC}^5 zN!nGZ>*|tp?UtK~@iS&Ar7d#Or91AC{4-aVkCbD4(BN80AuCd;^e;*4lb1(bb=joN(HLn~f9DMdlSJXIZx9mUhx{fYS z^IWHwojk8FS#~NG*#aukQSS@7K3AQwlj78d#e8|aWb{2&;tMEoN*AkX1st6@^r8XW zIq~D4TT(le%Q;P z8Hdp*=Q%(@h=C(xteUrQoTEYZUS&n}MN4-2Tp`sNAp#2_aL{;J5Ng%5qGPi=nqHi9 z3Kx0J0i&(vro89(mi4kvI61fRY6ZZ32p8E9>?VH3M44ITbhcZ&VyAVc_&GCRvrmV9Q;o>H=k@ zar$8}&jhMaoBAU%7=nM>+Sv)b*IMwtD{6-kWBdAMXJ;eON5VAwKsL#9CXuaj=zbKNklFI`NVU6f9Hc0&WNt?X0SIO#lJV5C zlc8+yAjhfd+e7LvW=mgd?>uKEKQo!LZ;_E+zNlBtnopl(C##M{OIk|rp4t2)qR1>m z-=ai zI{Wqf^LmqChxk)%<*_~CQ$1UMl2N3BgY^#+WAW>b=;aT3*X~Il`L^o$w#c;mGgC2N zyDL9zKmJS-C9m;pt5&UIW0M4!WO&f#lA@udd=sV<-l~a z)zddkx7t5Uef8ey?{cx=<(bsVpx@^?f@Zm>gVihH3GU$4O25})?`<=a?B%UnTG*WlH>grZ9?|ZGEuG9F_M9a!>m2Kf~dWXYFANV7geKa89~@! z&y=#)c6WEfn4=0}5JeP+5w{7dhv;firppNHN$mHNtoaaMtP;~~)m%8%BI^0&Qt_;| z{ny;N5yZa@SJc!P(KcWXRY+>aR>lwxS~}Jujy*k!cXqw(u?O{0$Inh>KRxA=phghf zi2%Kh@8aWA@AbgTXOfMUnDXx57g#My@thrhZLbk^)ckn!E5|)?J!i|;<<6SAHpI!; zp99V&LmeUr#`W%Zy%bbo8qv1kp={(s87i;(tPfhhh?ZU}Fy{O12t1!_d-5LkY~*=q z-tc{xV)*a#t(#$r#$Q8(Ov9}_om&4(dbpdi{mbko|cK||Pe13e--zhT{7m;Dj*)n+^DT}wE~y4~?zLPA>P zZ*o^Vc<>+q03IHXby5sykxEKPp$|b8JJoKCf4S^nq?)8gw|eJ&YY3|XgSe@)Mak37 zpC83;ZA)EB5P8aX-(aV&zlGqbpgE3PSV&mdPDNJ-hl8~EKSLEyb%`eI5(?osdP&7| zC5=xgtGLRCzw^zS!S;*Q6QBg2YJ6_#Q@k6~!_+`MRasei9Ly~l%mk5-B==?0sKe=D zA;YC-_!zEWxjS4CmUZ1@XK1(V~>~OINHfJl<)u%Cel2S%Lr7i!iR(Bb>7iwzUBJQ&h zL|LwFC3|OQMTLg$sfHB3@dxT`*>2XyKMI3 zP)bKfkw(*Tk)Q@Ss?J9CkFznVwUry<%ufI8oE!mj zoepwu`4}P`-oKb>%A5{e@H{Cc$bU}bVGNe;}XkL5922leuGYaZeicTfeT z?b)}6ZlYGj79tjI(p`43A^>SFLH%vm5@moLL1VF8iHnPS@%%YbR|L_I5}3OUz00ov zET*roAD+Q?dsn2tOIv~IFE;BcECF*vI_4@)=(h5JMsWyK()@2vc z+VSi~OMw3uzy6@M8{|&x7BnOubm7A`J;X3IjG2hwd_*_UyP>loHkOkrxK!#fSh`Bp zRNiHygqFH&5kZmPX3@iIBjWpOX0d#il>c^KE%T`nj|qEk@w)5Qn4!Z)ihR5EQ-7Re zY1}<|p+%{Z;;NQ=)mPQR$C4nJ#QgwP;Q8X{`5nmR7TE+9dk1Yg^GcJ?NaCZnB zg)!7%BQ63k1LC+E#>@os28eTyb3id5_X4SQoo&aJ%Jn(91&2N}Hw5k+t{rsF@xPio z^Ht&e=M4*D3?|aeW}nYGPm4~RZ#A=!`)1GPvT-+Wx7}DIY9!yhS?2AKm`P?odWOvl zwj`S{5hY82>vzijI39ks2oiLQq+~(Bw{etBo#$;_?1mpL&A5WeLe5c}}Ry6**olFmEr{u^ZV~Q8agec_u%1o*_DAL`| z_e$R^-FVS+W~!zepZGlJzR+lFmZgoo_O)>IbJi{G_|YdJqBAoxtIu;n`o>FE=zfHX z`tasBhw@a@xjp3@^05N0Aw?T1R&3;4P7upM!Kn4L=$N%NDI@Ay0p@gRr8SO+uV10C zAGXc6mHMedG8G>njPAm&{9+Tg`9KPlI-%ZTIQnK)(@I8W9$2bhYiLHm{AyCf+mSh{ac$N>@7|3BkHq zMizoh#W3IFMHKQ%GNEyNvloe`?Ih|5zNaB+(PTCv?JjyZnxGso%klt{U@7J z8H~||mw9>V%4`o0k4W^%q{xD3=N@eRte-w$m4hVE;8KKb-6S*Oo+btHs{tb3j z6&(?<>XK2!Q~yDHnMY1eZp)U_y-5V2AwI1oBqf!Voo(2Ak@1Kw6^fR!44W}oH$ZZj zk+{vJZ+fMW;8t>w;w+-E5KtBeul5=!i;CvW>2YN+PJY^psu_#S9VkjI*?*52k0*#) zbse3Z8IyZ|K58PnwhiT>Tj8?V-r=SF?YX}`=aP(p!BKTgqzUMw3>OCu?=XL2R1?`} zc(*I4lLDo(FZ^oJ6pdc6l&A|>zRu_0`t9Vvfm%>|WJN(%TAF6>McS%vSti0K-ZIN~ zee1eS$7}@?If&cx>)oyQ&@rLJR5Z>Ueb1w%7;P1%fCwZ}=o(Q_=+9jX#9#jUmmC-B z8nIzCl>2^`%q%tR1hFCy1v%J)UpIepL+eqjR+BFl)UpAnYnv1&o+*z17`B42t{@)V&#5DvPTtIuGQb0{txldtM;t+EX~S-Ds^sq8{)iyf9c@MvgQ+ruE>2E;x6qFM zDyw&($4y+fZiy;%qfQm|YTlg(82G4k5C&Gn-qgHBQ}Wosk+QuSQHzK+>#2J-f3|iM z)Z3A+#+KulB4ALj?P+_{lLq>FfPr0a8l8{v;0t@aO)^^ieNlkFpC2v$T2YL@>|_Gs z7~el;S0)-nd-Sv|iim>O zBX?JSE&77xJ9ROtTlTF}HdvXZxXUXl8tEm69$G2%8m6 zwpXfBsYYyK$$2W4EM}1;f{RV+7T3Y` zV_s6#9-rkE?NYApI<1m_p|KMwQ^e+J`ZQDnf_heY|mlP z6MXt46iSSzq3hFNv*#g%iHV_gg%&2iL%AouFVQf@y4g)GIdJ&!VNzkN#p(F!ThOkV z))>2R8gQ_W5MS+;(E9BKeh5%OgbK?e-JNst zM2|-G^OYf$YrZ?gdmkH?l(f5P|HJpYLiVdf|2RZ+E2JWlwSt^S{0h_g*}MTR$R0jk z$Nf%~n0oKk^rji8eusB~?Qbr3SUx0ZTN`v8VOJv3Lbq#n)pkx>ME?HR`X;|YnqGcn z+WN+)1ONuSW9hdhJ|Vx$UmhIG_Wjwta2fl1g~wl=a{OM$|MnfK^LOfaS-AGcG0hNv z!N3hUveU2k&Db&y?cLEIr+dr8&ccWwrq)zrJ<{Q`l$EKIrcEr^Q>m9=2G$HY7aNP&~#Usk+ozDKC?;l%myGJBe}o{AoOJSlaOCCzl&#^zl;3*TASMv z9T#^z=V-*fYLUlYuakU#DoDG3#?BTp=J4!kLx4I?$Bpmn<(wbsz&y)&2N8U(FYlp= z9`?f4L+>IVBsHy9@@8MP%4+g}va|C8((LCWf(H>THAp>_+#VA=IOP2O7f|cv&Xw3; z1K(|9Oqh9AY?S+Qgyq$%SJ=pp;x=i=?|S2LH$G5^XCI)QAJ}8kWp+$if^P85I0;fg+>hXVMYr8GTUCZV_J(98~yTxa8!1SvV+J7b>q#A!sM|3F) zI|f_ANS>aSp3W!g{u2sblWm8$|7?pr=K@4rRM082bhpF8Ka&_{oLYSB4_kw*)^R6q z&nB^m}7@)Q;7=t&ziJNMA3{*cDU`RXu zpaq&kA}%$b!{CtL@#4|wm5)awlw{@QEF%r;19|xa$bZImcb9BV5sVqbUFhxI=#M^d80*BZ8YZ8B+J%3&>z-)tFBmb-n{8DI{5Eg4SrK? zkKfJ6{a2qn?OI#DC)3mZ(5PQm3xjuIN=8fbAG(+o-+D5*7`YFUDX!Xk zM^}7l2?K6+r`e3g=Y;XMzc_s-6}+hGPd0Y7m|>Hjq{l;7!%O|QKf^$~@OS}g7K8Wj z3kyq|w^LzzrW*;GuYpLdnu*(t7O5XU-lynYt<=mn2I><<_PvpSzaatCQfPljY%wz5 z;GBr;U-;A{y(z=kr(a=hOz6RvTXMS}( zO>UD;h$tjV^pJ-p$oP`r^Srt3|fl*Y$GdSEK+xfEDfIJl;*APPB{Y` zg4k>=IC6cme>riq8OW)xU`g?bkBUNhIi?@+82}UDgD@9Pg}we=7;j=--YY4fIC!h; z6;z$#&nn5ttspSn8OWnVFbG5BHMUTC#77o_nVWEPQ z)Y~5iB{KCse_S9xypWa-_FO)5Z0Rs7Q#d9>i9mzy!+F54PG4_6dd=9!xs+E|8&3Ku zxB~bA4g9%1M912?)BaY#DCi2;`6b~OfU<=wB|!pAz&uqlJV3Yldphf}xq_|Im?dD_ z>g?=vE1IxNiTnDX+XkbMl^B^8J3-!>*}8?Wi1hK-dXf{2to+_Dx9I` z>MApRAGTLUwDIr3&mZ{i=YLfT)-GgMTY<$Oe(F>IPi=?O8xr+}S4KxfWS{6%yAsKw z#LrO^WHd;2s{T6MNwE*d?@gJ!g{RlZEAuDSFrw~MzrCi6DExTt-`C}jO!DEhW=RQ&4WUKAi33}IhBf2C z=S3xBe|&f1p*2ZWO3HR(NUyY<2FDP-Pq@h9j2}+lf1y#7U_jxf6QJ@^5!-sk2guce zlWoJD=98_BeP;s0x=rAN6$ZJbiwxUdy><Wivqah(A^ zdvDuzgUnVlYa823t#Jjet+ef$k!8hu2*wg{kB)tl6_8dIW!fyuNVMo|Kl7znhRyAY z-r`?Ipy(uj)oQoQ!R-nLEpX;s7H$jMRAD|ax@Rp6N5$&0vS?7W;e*11afa5f!(5!5 z!`IzzbYhXor&3@2XjD1BLe@{MwlGDbwRvdBy_Yu~5)4QXh-)Bx*URkOxiiBoSBFmX zY~2$P7uVnG#4vsVBJ@M=q&}I`+^r-rLIaUDKr^^nFXsL(Jo7DMW9K-4zt+x2`!CM{ zg?6Srdli@o>OuHEPeNf$!NtvEi|UOBdR<|pPGz;hxANWoD1T_AKKxVb%ei=$-|K>@ zgvstgFXn0sC7DBr_>eXclcK*l$Y;cVWejV%F%uV~=NfB}Syc#T9WqMXW3l`Fpx5Mx zBYkfG2mI)`JxIguwMgwlZ~hXRF8NzW0?zmuF?>Or1B-ohquBDR{mz(zvM z)KH)isGzRPxn4IGvvAt@-GBzzjUyJJVaw_FL9UzT)xUftD6|0^%RZdm+Th!xU^v=F z+hn@RkD=AzM=P7(=s+UM4uc8%vCXmN-nt~y7j>O7ic{$r|LpoMf~YHeKREXBPc?Ub zA&utu`DMt-uCIxpD@K`YHBt{a=`NoZHF&HOw*h2Q+@`$!3>i zo*0>SgB?0wTLP|jP#Df&ri=rIZ2DihQD5IXqv1B|i8cqJ?}up_4DV? zP~Bc^+>*F~5r4<*!)aF6S+|IY)MT-h2~2FBCK+vKIyzrpiCegBwHJ6C%4L%ihs*AR z!o}M>`R)0wND)QDvkri3Nb=t(RPexdC?(gE%BnK$&pY&mnU z_?|NsQ!)#P4&K;R|3VfkodBD%)`0`!iqw7_e7DDKgI)WsTw=SVd|;sY{d)(&Opg=O zJ7hIa%X-J;aMm1w@)Owc;c@dX?8D=-A8vPb{W(G>b-(71y%n$>OlSQJ!%?C*1^^D; zpe5o&D?=p$wMVww3j@2&>b)t!EE=&anj{<*SA7 zhM}NRD{iOuKXKdQcv!%j1;MI(0iE@LfMn*;fuHo|jn#%6oATA?R|x)8cwA}zmy<&=eKvvqLN5jU&lM#)b_O`Yt zpoo0AEZA`Ip3FgqSsl{v4pb98Gd0+w9lQI!W!Wzfj}v11VTJ{d`SOqTtyum{3n%2m z%iu64H#bp!{_?UiG1m`s@sawblx^RIi6HNZ`o`(an>~*%{$TlSF+uSRaAT%PTcIyF zK{!{;^?DfY1-uy1hZKq)Q5On0p%W6W%4GKk(x0vTN9L-3{&}A06K)qCBg(*GdFstj zo_w)(iy6VtIl}*~eA4c`cSHZ#&Y##mw14@%!}?oOQpg7kh+Qf|lost>lE|Tjg)9nu z=xo|Z{sTV(kHU?6%ws|4$HT70F{P#qPro(4EL_OyBcPbx2zDY5`^gf5P-f;)3k})8 z?sbQfwdy`2VI)t=c7ro*>H10fRf zmUd{-7`u{^Mu7sD0Dc9{4&+JpMul32vgj3A++!-aWA%UXHD~L@tInR%onyybY9(!i_NMugvOY9zfc~fd+8;JkxQI)S@ znU;IPje)XQqA0^bcz|MfMChW=F?~&^QeEM6s<$y zi-m|@j8NX^eCK5UqWzfO*4K0jtIM2?QV@cOiKvvP9Ik)U@Df{9GV zkB|E_2$KYFa7CIHX3`MGoic&N$PsocHunC=S%F~xWw*`p#dmLm0|o)qVKzk&1}f)P zh)pfr3x))St=qTbjVh#ifa8{QfkN4pe(&Cex@D&WMN^KC zFQ()QJR5SOC7VTS<}_~^^SEv*X5Eny=eXRC_N~t#GB*mZ>hE-XI_FbT4jEJ?M|sfy z@9)d&)}A1voM*u}VvocX(kZ1W$h#cLc8aK11tg*Z=O9k`a>reH>jae@*l4D%p!$V3 zaB{c|hVo7(Nx1$yqQyVAG4>=VznCo5=Cq3bB7hlzW%PBc9>GlX-EITZ|5i2CmeGbs z=VqU`<3Cdzn+RGQ91)U8@K%OJq1@K3D&#MjMW5HWa~5Ea;2G)b?iusYhlBd^&Rz2O zAN$7Fkk1w+YFR|$mNNCljhcIx=j9SdBQp9Q>v)@zr@R~QAOJhDBn7z+Y2<9ir9?zB z?%&rS2Y1`Ie?MIOb+;lTBH-G><65Kky=!%dPpJbi!dv%;0gU$+QcgP;+Breq+jVwk znyle(wgu@IIumGE#y|hk(u|PTU;Lz%pFgydPD)y4X3$uxHzdEd_op_}9wdlc`lhBa z(a{d4XsD`2R1A+J#{WSW_NI>gDL;79p=x(2dIvY#g+Vf*vl=M(DTg<4u#8XD5!I$I1e7FvRU zB;l5nqrSTOg?i~p!54)J0NU-}{~B?%%gu8}Ic!~N;8m%|5q+m$c`V2M_VU6d{Bw0Q zz#Qo{xWn=ukNNwLC41Jf?*r0gob(;%Zv<=ISyqV7^z?L%CdON(|J_e8GyQE9jk~#7 z$vg}Fnn?tWFuj}_UOV+TNQpQ|D{byG9$DEBL)?mrf%HHzW7xPFO{a-xe}7-_?3?~y zr~*$mgD-~YZg|Er;tQI82cRW8))~n-8=Iv1E^Z|<7d1Edqd!|VcCI%c-u~!*WK@7! z9(Htaa3G<*VjKrQ>E(1 zY_}phmi_qovsyV50$f=%Z`CyXYVuOze(0Qt)bPD~_YUGGk4N?N^qf1ls6lw!8h3f{ zPtdPmrQ1ensJlCIB>se^tt}N*@#fRZh&68j|DgM}2zDro`Y;0bLBCjcA)*M8tewk5 z&xjiK(g=zrVg@V_)2(R3Xth&butTKE6Ult?V&cZ^PD+7qJ2_bmVuT_O3;_^Zr72F? zG%~ezhqbKd?_x7vwaC=f(2!8X#*&V+Sx)S(5No{e*b|YEpwqKZ7Z|R&L77buL_#Jc z*$k!uko#B%rC?1htp^VtNVOu6WlJM?I(X(cB7-0g&)&=?WT`sY-%T=h=;8TfhGk?a z3k&FL|28Qi$L1~p^T_(m;CL1^UlFXt&c$^+hkECZa_^nG(D}X0Ai~S5mf3{b(#QBw zWO@6F;1U~?x-=ZuyjMe;Z;{rDriu(Y8O*&ejJfR~xdc`%*$i$T9oVp}RfnDi{d32R zMoI&6%rUM@SXdw-3~3@1gZW8B7sxe;v`tFw*m1sY+0re4=L@(tBoieSzxVYWrcqMs z*Cv`-2mE(V3vkqU_F-kAp^%{cdoeT558Sbz&d3^}K}BfKkj4&sTnTh&^ecF?Uh1LJ z*N7dG$DG7Y2+hyv_$o5@(?Z`PFxisHL-~IH-)|D0$SPJ>RY^6!fBP2ru|$d^KAvwp zUP62S{ymtE8ibK}#B{?xDCs0|A4X{iZDde*f~}*!BA7~E!Cp9SFe4;d_07%G0lWD5 zGeU$VI0ZF{7F2zJEnw5&@L>fy*8Pajdia64?>hXWlC?%&@sa(d7F%5WQloV_dS{JF+pdM)RQU~8*|iuRMU+>7;=_0r#K1u*tj@|qw1ZdFJB_g!)MOfv3mYx zc6EaA&aUA$y3Rg)_^_<3j0CNvEjW5}xHk2}D7e$$pA+*Fqk~?7b#%sE@z(b(E%7&R zVoJj^Rs`pRjvsL?ASfF`n{(a3icN9aA~wI_-OCXf8}XaQpH(?XE8-o{oXEk|6&Xa# zF04n2KLRK?yt=x^G^G+3lfNf5xEUr1*B%p5WLwCz_m8qFI#b?f3m##`TI-*^c<5)m+!)!HP>_hJgICnn-7&RX~eq8VI`w!}& zkzv!z|IQuL8uU-&=LhQMblozB%#`{+av5LF6_0EF+vD*LA!?PNGB+YYFlqpOpp&w7 zSXt)fU(rv59|HOSl%|xmN=m(beQ?0eSoEBm7hSib|5_UJ?dr%F@wnjpQt>5Yp2qW_ zT!e&#P{HKvwFPLyJM%Mj{c~rhc7y0$RJV{d5NQjDakl@yoC+%}vneGhDcVI>M+fsh zCq_{y!{-dGDG(t*BJGq3%Xz(~I+*GnDlZoxS8PeXi#G%?R9{q=p7|D zvF3tPoc({5`H(8=S<1`HjVv#QgrwfP2Z*d8o>&cA3aJXjbkmD)dO)Xhn-UuQpGXfD zgF-#KW5&kD zmR=No_3A;uCyY?ay~;gWCq+|7C*#3`tVt&{P0-iBUN6l!L*hB8C!J$wM_P z_^}ZiMRcWR-g4;(!b*<#1>h%ZXOO_C|5ghV9Aa3jIOWe z_blO~0qH;d=x{oadN5sZw9Z%r@0dT=JtxVwG$cnk$;n-x4efX65Gq!nXZB|{d3$+L zlalz%SFx7O3reNjyZWhBIZ5b&(2{qJeFHIcd|tEAHl}HctjED6dyP|EZfGs{9&LR#~l#t*tx5%QR#~m0jTA|McB#C$OWL$JAIn5GU~097czJC3mL`c6;rUQ zu!2G%%>K-#rnhgmZQEwD5k$pn=<9e$pb_oT!bR36WCu?Bz3|^i=eS?3Oc%Mlgdhob zqF+kPJa`%o5>f@nyk=DH0=~Rx;X)E4o0DVId;OCgv>%G3vgFTy0;hp#`?4YJd4)?D zA--pCXJ=$=+`Q2gGBZ3piBjmU=Hl{g^UTnB#3*2)^ zXzPNPi_-&>3JOlaXT@3bSR^{PVz{?V^{-V+c%UPyC_F*%(b_dn+-@A(&dY0LWK^*} zCLtl=#toEJ2k$vHZ!BCzv)p6IZBGUP7^`{U03;mDf z(>0d^3*|Td={z_9NE=S%op(f36xWaENavNe9|y>1bKv+V(V&USkr4_tlL$_k-?zb0 zK#~D$B}+3#CUoG#lc)CU>@MV?Sj;|KTqoT~vV0ryKQC#hs;UYoTx zp17(uzfoE>p&W2hS)cC;`CJt6Tj)HD2~0{zCm`2r+1UjGP;CwD;GZRjNq@RO93Ir) z%l-fQjPZYO{Qv)h$(mhhZ??Yr8RKIU%-D8{stLu$ief8g?O}`m5E5b%62f9K!s5FQ ziHpgJNyH z%G#D&n45fqeFo~O7=oP~g5qdrCuimC?qEfDxq7?&0R`DeP|RA?%4;+zIgj SiAK5_IH0PtFGKn0>Hh=7Bm#^8 literal 0 HcmV?d00001 From 8a13752a788639e1a56b2125bdb2fb53470d47da Mon Sep 17 00:00:00 2001 From: Oracen Date: Sat, 16 Sep 2023 18:49:00 +1000 Subject: [PATCH 2/4] Update model explanantion, typos --- app/pages/1_Prototype.py | 8 ++++++-- app/pages/2_Compressor_Model_Details.py | 2 +- app/pages/textfiles/2_explained.md | 11 +++++++++++ app/pages/textfiles/2_nlp_intuition.md | 10 ++++++++++ 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 app/pages/textfiles/2_explained.md diff --git a/app/pages/1_Prototype.py b/app/pages/1_Prototype.py index 3a5dbe7..a4f45e4 100644 --- a/app/pages/1_Prototype.py +++ b/app/pages/1_Prototype.py @@ -40,7 +40,11 @@ # Add text input st.subheader("Try it yourself!") -st.markdown("Now you can have an idea of") +st.markdown( + "Now you can have an idea of what is likely to work, try inputting a few made-up " + "headlines below. See what words and phrases can confuse the model! (I've found " + "random line-breaks and symbols can often produce strange results.)" +) default_text = ( "Socialites unite - dolphin groups Dolphin groups, or 'pods', rely on socialites " "to keep them from collapsing, scientists claim." @@ -48,7 +52,7 @@ test_sample = st.text_area("Input a headline here:", value=default_text) (_, input_prediction_list, similar_samples) = app_functions.generate_predictions( - model, [test_sample], 0.1 + model, [test_sample], 0.25 ) user_prediction = input_prediction_list[0] diff --git a/app/pages/2_Compressor_Model_Details.py b/app/pages/2_Compressor_Model_Details.py index 613f3b6..c45c1cc 100644 --- a/app/pages/2_Compressor_Model_Details.py +++ b/app/pages/2_Compressor_Model_Details.py @@ -28,4 +28,4 @@ def load_text(filename): st.markdown(load_text("2_nlp_intuition.md")) st.subheader("So What's Going On Here?") -st.subheader("What Can We Learn?") +st.markdown(load_text("2_explained.md")) diff --git a/app/pages/textfiles/2_explained.md b/app/pages/textfiles/2_explained.md new file mode 100644 index 0000000..6f5381e --- /dev/null +++ b/app/pages/textfiles/2_explained.md @@ -0,0 +1,11 @@ +The most important similarity is that we're looking for points that are close to each other in some sense. The most important difference is how we measure what we mean by similar. In NLP, we like to think of it as learning something about the semantics of words with relation to the task. There definitely seem to be cases that suggest this is true - at least some of the time. With our compressor model however, we instead concentrate purely on how much overlap there is between our two inputs. This is purely information theoretic, no learning whatsoever. + +One thing we can immediately notice is the two approaches are both doing the same thing - compression. "Old hands" won't be surprised by this conclusion, but newcomers may be confused into thinking the machine is literally learning. With enough time, it becomes pretty clear to most practitioners that this GZip model is just a distillation of what our models are doing during the training process. Really, our models are just doing a slightly more sophisticated (and nuanced) form of data compression. + +A second point emerges when we consider that the GZip algorithm is purely looking at occurrences of word- and sub-word combinations. This is similar to older NLP methods which use n-grams and word counts as input features, but using shared information to select which elements are relevant to a task and to normalise for sequence length. Using information directly without involving parameters means this method is relatively data efficient. It's also worth noting that byte-pair encoding has become increasingly common for large language models. + +Contrast this zero-training, data efficient approach to the typical NLP method. Normally, when we have a text classification problem we reach straight for Huggingface and do some transfer learning. After all, "all NLP problems are hard" and that justifies jumping up in complexity. Even though transfer learning improves our data efficiency, we still require a lot of data to get even moderately successful results. + +Finally, there's a lesson in humility. We often motivate our explanation of these models through the lens of black boxes and learning latent meanings, rather than information theory and basic encoding. The fact that compression-based techniques perform well on a number of tasks thought to be difficult suggests the tasks may not be as hard as we expected. It definitely calls into question how we interpret what a lot of our heavyweight models are actually doing, and if the only result of this paper is less wooly thinking about ML, our field will benefit. At the very least, we should think twice before reaching for the largest, coolest, most complicated SOTA model. + +Now, nobody is saying this will replace ChatGPT anytime soon, but the fact that this can do so well on benchmarks is suggestive. It confirms certain feature engineering practices (BPE, n-gram and lemmatisation) even deep into the era of transformers. It also suggests that the issue with NLP tasks may not be the inherent difficulty of language, but rather one of finding an efficient representation. It also reminds us that our models do have interpretable analogues in traditional computing, and that we should be hasty in jumping to intuitive-but-complex answers. This GZip model is a handy reminder that Occam's Razor and the KISS principle apply to the study of artificial intelligence, too. diff --git a/app/pages/textfiles/2_nlp_intuition.md b/app/pages/textfiles/2_nlp_intuition.md index e69de29..e5dfaba 100644 --- a/app/pages/textfiles/2_nlp_intuition.md +++ b/app/pages/textfiles/2_nlp_intuition.md @@ -0,0 +1,10 @@ +We don't have time for a full rundown of how deep learning-based NLP works (it's a huge subject!), but let's concentrate on the essential details. Here's a simplified explanation of most NLP models: + +1. First, we map our words to a maths-friendly representation (like `chocolate = [0.1, 0.333, -2]`) so we can do maths with them. We call this "vectorisation", because we're mapping from our input (text) space into a fixed "vector" space. Sometimes we'll do this at the sub-word level. +1. Next, we use the flexible sequence modelling of deep learning to combine the numbers together according to a flexible, parameterised model. +1. In the output layer of the model, our vectors now live in the "latent space" of our task, and as we train our model, this representation will be more and more useful for whatever task we're doing. We tend to think of this as the model knowing/learning the meanings of these words and how they relate to our output. +1. Finally, we apply some decision function to achieve our task, often some kind of classification. For the sake of similarity with our GZip example, assume we're doing a KNN lookup and just finding the closest points by some distance function. Here, because the model has done a lot of heavy lifting in shaping the meaning of the output space, we often just use the Euclidean (Pythagoras) distance you learned in high school. + +Even though we've assumed we're doing KNN for the sake of discussion, it's worth noting that you can think of tasks like e.g. logistic regression as KNN. The neighbor in question though isn't another datapoint, but with respect to a hypothetical "average" datapoint which is encoded by the parameters of the model. + +Regardless of which way we go, we understand NLP as learning the regularities that encode meaning in language, and understanding the relevance of these meanings as they relate to our task. From 8b0afb1c64282a33c0485b7752a49dcafb1d898d Mon Sep 17 00:00:00 2001 From: Oracen Date: Tue, 19 Sep 2023 23:07:34 +1000 Subject: [PATCH 3/4] chore: update env files for easy install --- .vscode/extensions.json | 11 ++++ .vscode/settings.json | 26 +++++++++ pdm.lock | 115 +++++++++++++++++++--------------------- pyproject.toml | 2 +- 4 files changed, 94 insertions(+), 60 deletions(-) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..cd7f405 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,11 @@ +{ + "recommendations": [ + "ms-python.python", + "ms-python.vscode-pylance", + "ms-python.isort", + "eamodio.gitlens", + "tamasfe.even-better-toml", + "ms-toolsai.jupyter", + "ms-python.black-formatter", + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9a470c0 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,26 @@ +{ + "editor.formatOnSave": true, + "git.autofetch": true, + "[python]": { + "editor.codeActionsOnSave": { + "source.organizeImports": true + }, + "editor.formatOnSave": true, + "editor.defaultFormatter": "ms-python.black-formatter", + }, + "python.analysis.typeCheckingMode": "basic", + "isort.args": [ + "--profile", + "black" + ], + "python.analysis.autoImportCompletions": true, + "python.analysis.autoFormatStrings": true, + "python.analysis.inlayHints.callArgumentNames": true, + "python.analysis.inlayHints.functionReturnTypes": true, + "python.analysis.inlayHints.pytestParameters": true, + "python.analysis.inlayHints.variableTypes": true, + "editor.rulers": [ + 79, + 88 + ], +} \ No newline at end of file diff --git a/pdm.lock b/pdm.lock index 14f9aa4..8313401 100644 --- a/pdm.lock +++ b/pdm.lock @@ -6,7 +6,7 @@ groups = ["default", "dev"] cross_platform = true static_urls = false lock_version = "4.3" -content_hash = "sha256:dee6238a9daae6ef533ce368314fac1b0c7b1bf5d4ef1956026c861c3e639bde" +content_hash = "sha256:c163b141191ae328261937f9c1f357a3c5545b5fa8b52987ddc61d9ab2037dbc" [[package]] name = "aiohttp" @@ -216,7 +216,7 @@ files = [ [[package]] name = "autoflake" -version = "2.2.0" +version = "2.2.1" requires_python = ">=3.8" summary = "Removes unused imports and unused variables" dependencies = [ @@ -224,8 +224,8 @@ dependencies = [ "tomli>=2.0.1; python_version < \"3.11\"", ] files = [ - {file = "autoflake-2.2.0-py3-none-any.whl", hash = "sha256:de409b009a34c1c2a7cc2aae84c4c05047f9773594317c6a6968bd497600d4a0"}, - {file = "autoflake-2.2.0.tar.gz", hash = "sha256:62e1f74a0fdad898a96fee6f99fe8241af90ad99c7110c884b35855778412251"}, + {file = "autoflake-2.2.1-py3-none-any.whl", hash = "sha256:265cde0a43c1f44ecfb4f30d95b0437796759d07be7706a2f70e4719234c0f79"}, + {file = "autoflake-2.2.1.tar.gz", hash = "sha256:62b7b6449a692c3c9b0c916919bbc21648da7281e8506bcf8d3f8280e431ebc1"}, ] [[package]] @@ -487,13 +487,13 @@ files = [ [[package]] name = "datasets" -version = "2.14.4" +version = "2.14.5" requires_python = ">=3.8.0" summary = "HuggingFace community-driven open-source library of datasets" dependencies = [ "aiohttp", "dill<0.3.8,>=0.3.0", - "fsspec[http]>=2021.11.1", + "fsspec[http]<2023.9.0,>=2023.1.0", "huggingface-hub<1.0.0,>=0.14.0", "multiprocess", "numpy>=1.17", @@ -506,8 +506,8 @@ dependencies = [ "xxhash", ] files = [ - {file = "datasets-2.14.4-py3-none-any.whl", hash = "sha256:29336bd316a7d827ccd4da2236596279b20ca2ac78f64c04c9483da7cbc2459b"}, - {file = "datasets-2.14.4.tar.gz", hash = "sha256:ef29c2b5841de488cd343cfc26ab979bff77efa4d2285af51f1ad7db5c46a83b"}, + {file = "datasets-2.14.5-py3-none-any.whl", hash = "sha256:dd4155091034cba04d5a28711f2ed3944275ed15c5d0c5a2d0b6b9ea34a2bdfe"}, + {file = "datasets-2.14.5.tar.gz", hash = "sha256:b738a86540ab8e1a7806c8a3790b67be0056318d0c5d5a58a1b0dbdd76c0f568"}, ] [[package]] @@ -1313,46 +1313,43 @@ files = [ [[package]] name = "matplotlib" -version = "3.7.2" -requires_python = ">=3.8" +version = "3.8.0" +requires_python = ">=3.9" summary = "Python plotting package" dependencies = [ "contourpy>=1.0.1", "cycler>=0.10", "fonttools>=4.22.0", "kiwisolver>=1.0.1", - "numpy>=1.20", + "numpy<2,>=1.21", "packaging>=20.0", "pillow>=6.2.0", - "pyparsing<3.1,>=2.3.1", + "pyparsing>=2.3.1", "python-dateutil>=2.7", ] files = [ - {file = "matplotlib-3.7.2-cp310-cp310-macosx_10_12_universal2.whl", hash = "sha256:2699f7e73a76d4c110f4f25be9d2496d6ab4f17345307738557d345f099e07de"}, - {file = "matplotlib-3.7.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:a8035ba590658bae7562786c9cc6ea1a84aa49d3afab157e414c9e2ea74f496d"}, - {file = "matplotlib-3.7.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2f8e4a49493add46ad4a8c92f63e19d548b2b6ebbed75c6b4c7f46f57d36cdd1"}, - {file = "matplotlib-3.7.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71667eb2ccca4c3537d9414b1bc00554cb7f91527c17ee4ec38027201f8f1603"}, - {file = "matplotlib-3.7.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:152ee0b569a37630d8628534c628456b28686e085d51394da6b71ef84c4da201"}, - {file = "matplotlib-3.7.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:070f8dddd1f5939e60aacb8fa08f19551f4b0140fab16a3669d5cd6e9cb28fc8"}, - {file = "matplotlib-3.7.2-cp310-cp310-win32.whl", hash = "sha256:fdbb46fad4fb47443b5b8ac76904b2e7a66556844f33370861b4788db0f8816a"}, - {file = "matplotlib-3.7.2-cp310-cp310-win_amd64.whl", hash = "sha256:23fb1750934e5f0128f9423db27c474aa32534cec21f7b2153262b066a581fd1"}, - {file = "matplotlib-3.7.2-cp311-cp311-macosx_10_12_universal2.whl", hash = "sha256:30e1409b857aa8a747c5d4f85f63a79e479835f8dffc52992ac1f3f25837b544"}, - {file = "matplotlib-3.7.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:50e0a55ec74bf2d7a0ebf50ac580a209582c2dd0f7ab51bc270f1b4a0027454e"}, - {file = "matplotlib-3.7.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ac60daa1dc83e8821eed155796b0f7888b6b916cf61d620a4ddd8200ac70cd64"}, - {file = "matplotlib-3.7.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:305e3da477dc8607336ba10bac96986d6308d614706cae2efe7d3ffa60465b24"}, - {file = "matplotlib-3.7.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1c308b255efb9b06b23874236ec0f10f026673ad6515f602027cc8ac7805352d"}, - {file = "matplotlib-3.7.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:60c521e21031632aa0d87ca5ba0c1c05f3daacadb34c093585a0be6780f698e4"}, - {file = "matplotlib-3.7.2-cp311-cp311-win32.whl", hash = "sha256:26bede320d77e469fdf1bde212de0ec889169b04f7f1179b8930d66f82b30cbc"}, - {file = "matplotlib-3.7.2-cp311-cp311-win_amd64.whl", hash = "sha256:af4860132c8c05261a5f5f8467f1b269bf1c7c23902d75f2be57c4a7f2394b3e"}, - {file = "matplotlib-3.7.2-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:fdcd28360dbb6203fb5219b1a5658df226ac9bebc2542a9e8f457de959d713d0"}, - {file = "matplotlib-3.7.2-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0c3cca3e842b11b55b52c6fb8bd6a4088693829acbfcdb3e815fa9b7d5c92c1b"}, - {file = "matplotlib-3.7.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ebf577c7a6744e9e1bd3fee45fc74a02710b214f94e2bde344912d85e0c9af7c"}, - {file = "matplotlib-3.7.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:936bba394682049919dda062d33435b3be211dc3dcaa011e09634f060ec878b2"}, - {file = "matplotlib-3.7.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:bc221ffbc2150458b1cd71cdd9ddd5bb37962b036e41b8be258280b5b01da1dd"}, - {file = "matplotlib-3.7.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:35d74ebdb3f71f112b36c2629cf32323adfbf42679e2751252acd468f5001c07"}, - {file = "matplotlib-3.7.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:717157e61b3a71d3d26ad4e1770dc85156c9af435659a25ee6407dc866cb258d"}, - {file = "matplotlib-3.7.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:20f844d6be031948148ba49605c8b96dfe7d3711d1b63592830d650622458c11"}, - {file = "matplotlib-3.7.2.tar.gz", hash = "sha256:a8cdb91dddb04436bd2f098b8fdf4b81352e68cf4d2c6756fcc414791076569b"}, + {file = "matplotlib-3.8.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:c4940bad88a932ddc69734274f6fb047207e008389489f2b6f77d9ca485f0e7a"}, + {file = "matplotlib-3.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a33bd3045c7452ca1fa65676d88ba940867880e13e2546abb143035fa9072a9d"}, + {file = "matplotlib-3.8.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ea6886e93401c22e534bbfd39201ce8931b75502895cfb115cbdbbe2d31f287"}, + {file = "matplotlib-3.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d670b9348e712ec176de225d425f150dc8e37b13010d85233c539b547da0be39"}, + {file = "matplotlib-3.8.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7b37b74f00c4cb6af908cb9a00779d97d294e89fd2145ad43f0cdc23f635760c"}, + {file = "matplotlib-3.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:0e723f5b96f3cd4aad99103dc93e9e3cdc4f18afdcc76951f4857b46f8e39d2d"}, + {file = "matplotlib-3.8.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:5dc945a9cb2deb7d197ba23eb4c210e591d52d77bf0ba27c35fc82dec9fa78d4"}, + {file = "matplotlib-3.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f8b5a1bf27d078453aa7b5b27f52580e16360d02df6d3dc9504f3d2ce11f6309"}, + {file = "matplotlib-3.8.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f25ffb6ad972cdffa7df8e5be4b1e3cadd2f8d43fc72085feb1518006178394"}, + {file = "matplotlib-3.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee482731c8c17d86d9ddb5194d38621f9b0f0d53c99006275a12523ab021732"}, + {file = "matplotlib-3.8.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:36eafe2128772195b373e1242df28d1b7ec6c04c15b090b8d9e335d55a323900"}, + {file = "matplotlib-3.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:061ee58facb3580cd2d046a6d227fb77e9295599c5ec6ad069f06b5821ad1cfc"}, + {file = "matplotlib-3.8.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:3cc3776836d0f4f22654a7f2d2ec2004618d5cf86b7185318381f73b80fd8a2d"}, + {file = "matplotlib-3.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6c49a2bd6981264bddcb8c317b6bd25febcece9e2ebfcbc34e7f4c0c867c09dc"}, + {file = "matplotlib-3.8.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23ed11654fc83cd6cfdf6170b453e437674a050a452133a064d47f2f1371f8d3"}, + {file = "matplotlib-3.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dae97fdd6996b3a25da8ee43e3fc734fff502f396801063c6b76c20b56683196"}, + {file = "matplotlib-3.8.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:87df75f528020a6299f76a1d986c0ed4406e3b2bd44bc5e306e46bca7d45e53e"}, + {file = "matplotlib-3.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:90d74a95fe055f73a6cd737beecc1b81c26f2893b7a3751d52b53ff06ca53f36"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:0b11f354aae62a2aa53ec5bb09946f5f06fc41793e351a04ff60223ea9162955"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f54b9fb87ca5acbcdd0f286021bedc162e1425fa5555ebf3b3dfc167b955ad9"}, + {file = "matplotlib-3.8.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:60a6e04dfd77c0d3bcfee61c3cd335fff1b917c2f303b32524cd1235e194ef99"}, + {file = "matplotlib-3.8.0.tar.gz", hash = "sha256:df8505e1c19d5c2c26aff3497a7cbd3ccfc2e97043d1e4db3e76afa399164b69"}, ] [[package]] @@ -1662,30 +1659,30 @@ files = [ [[package]] name = "pandas" -version = "2.0.3" -requires_python = ">=3.8" +version = "2.1.0" +requires_python = ">=3.9" summary = "Powerful data structures for data analysis, time series, and statistics" dependencies = [ - "numpy>=1.21.0; python_version >= \"3.10\"", + "numpy>=1.22.4; python_version < \"3.11\"", "numpy>=1.23.2; python_version >= \"3.11\"", "python-dateutil>=2.8.2", "pytz>=2020.1", "tzdata>=2022.1", ] files = [ - {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, - {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, - {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, - {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, - {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, - {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, - {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, + {file = "pandas-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:40dd20439ff94f1b2ed55b393ecee9cb6f3b08104c2c40b0cb7186a2f0046242"}, + {file = "pandas-2.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d4f38e4fedeba580285eaac7ede4f686c6701a9e618d8a857b138a126d067f2f"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e6a0fe052cf27ceb29be9429428b4918f3740e37ff185658f40d8702f0b3e09"}, + {file = "pandas-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d81e1813191070440d4c7a413cb673052b3b4a984ffd86b8dd468c45742d3cc"}, + {file = "pandas-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:eb20252720b1cc1b7d0b2879ffc7e0542dd568f24d7c4b2347cb035206936421"}, + {file = "pandas-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:38f74ef7ebc0ffb43b3d633e23d74882bce7e27bfa09607f3c5d3e03ffd9a4a5"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cda72cc8c4761c8f1d97b169661f23a86b16fdb240bdc341173aee17e4d6cedd"}, + {file = "pandas-2.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d97daeac0db8c993420b10da4f5f5b39b01fc9ca689a17844e07c0a35ac96b4b"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8c58b1113892e0c8078f006a167cc210a92bdae23322bb4614f2f0b7a4b510f"}, + {file = "pandas-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:629124923bcf798965b054a540f9ccdfd60f71361255c81fa1ecd94a904b9dd3"}, + {file = "pandas-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:70cf866af3ab346a10debba8ea78077cf3a8cd14bd5e4bed3d41555a3280041c"}, + {file = "pandas-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:d53c8c1001f6a192ff1de1efe03b31a423d0eee2e9e855e69d004308e046e694"}, + {file = "pandas-2.1.0.tar.gz", hash = "sha256:62c24c7fc59e42b775ce0679cfa7b14a5f9bfb7643cfbe708c960699e05fb918"}, ] [[package]] @@ -1972,7 +1969,7 @@ files = [ [[package]] name = "pytest" -version = "7.4.0" +version = "7.4.2" requires_python = ">=3.7" summary = "pytest: simple powerful testing with Python" dependencies = [ @@ -1984,8 +1981,8 @@ dependencies = [ "tomli>=1.0.0; python_version < \"3.11\"", ] files = [ - {file = "pytest-7.4.0-py3-none-any.whl", hash = "sha256:78bf16451a2eb8c7a2ea98e32dc119fd2aa758f1d5d66dbf0a59d69a3969df32"}, - {file = "pytest-7.4.0.tar.gz", hash = "sha256:b4bf8c45bd59934ed84001ad51e11b4ee40d40a1229d2c79f9c592b0a3f6bd8a"}, + {file = "pytest-7.4.2-py3-none-any.whl", hash = "sha256:1d881c6124e08ff0a1bb75ba3ec0bfd8b5354a01c194ddd5a0a870a48d99b002"}, + {file = "pytest-7.4.2.tar.gz", hash = "sha256:a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069"}, ] [[package]] @@ -2441,7 +2438,7 @@ files = [ [[package]] name = "streamlit" -version = "1.25.0" +version = "1.26.0" requires_python = ">=3.8, !=3.9.7" summary = "A faster way to build and share data apps" dependencies = [ @@ -2471,8 +2468,8 @@ dependencies = [ "watchdog>=2.1.5; platform_system != \"Darwin\"", ] files = [ - {file = "streamlit-1.25.0-py2.py3-none-any.whl", hash = "sha256:3c561dca1b5430e73b7f2d66bff1d26103936bb4223912ab563ffee881fccc30"}, - {file = "streamlit-1.25.0.tar.gz", hash = "sha256:8a7c93bee8703869045804afe22e9373c4e974fdb2a3e9abe3b027df3de03119"}, + {file = "streamlit-1.26.0-py2.py3-none-any.whl", hash = "sha256:2bfdac041816e2e1ba27f061d40112afe61e0d4e72d25f354b38ba81107b4cb3"}, + {file = "streamlit-1.26.0.tar.gz", hash = "sha256:25475fb15a3cc9fb184945f3fc936f011998bd8386e0c892febe14c9625bf47a"}, ] [[package]] diff --git a/pyproject.toml b/pyproject.toml index 8860481..e5fd8e6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,10 +20,10 @@ dev = [ "flake8>=6.1.0", "black>=23.9.1", "isort>=5.12.0", - "mypy>=1.5.1", "autoflake>=2.0.1", "pytest>=7.2.1", "jupyter>=1.0.0", + "mypy>=1.5.1", ] [tool.pdm.scripts] From 3597b9342d94919a43f9f0be32d688573e04d415 Mon Sep 17 00:00:00 2001 From: Oracen Date: Tue, 19 Sep 2023 23:07:46 +1000 Subject: [PATCH 4/4] fix: update intro text --- app/pages/textfiles/2_intro.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/pages/textfiles/2_intro.md b/app/pages/textfiles/2_intro.md index c85bcc9..e6eac4f 100644 --- a/app/pages/textfiles/2_intro.md +++ b/app/pages/textfiles/2_intro.md @@ -2,5 +2,4 @@ This is a quick little explainer as to what's going on here. After all, in the H - explain what this compressor model does - explain briefly how we think about modern NLP, to get an idea of why this result is so surprising -- dig into why the result works, and compare it to historical approaches, followed by -- some quick lessons we can draw about model ML/AI research +- dig into why the result works, and some quick lessons we can draw about model ML/AI research