summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Maslek <jmaslek11@gmail.com>2022-11-29 14:30:11 -0500
committerGitHub <noreply@github.com>2022-11-29 14:30:11 -0500
commite044c82e7c908adabc4e5462e4f9436ec9988527 (patch)
tree340698bade53b42a6360ebc1289ffe22dd82828e
parenta12b788ea9cf382cccb54cf525cc7fc19b6f03d8 (diff)
Fix #3628 (#3653)
-rw-r--r--openbb_terminal/stocks/insider/openinsider_model.py31
-rw-r--r--openbb_terminal/stocks/insider/openinsider_view.py6
-rw-r--r--tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml751
-rw-r--r--tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_filter.yaml284
-rw-r--r--tests/openbb_terminal/stocks/insider/test_openinsider_view.py11
-rw-r--r--tests/openbb_terminal/stocks/insider/txt/test_openinsider_view/test_print_insider_filter.txt2
6 files changed, 523 insertions, 562 deletions
diff --git a/openbb_terminal/stocks/insider/openinsider_model.py b/openbb_terminal/stocks/insider/openinsider_model.py
index f011cea68bd..1bcb09ff0da 100644
--- a/openbb_terminal/stocks/insider/openinsider_model.py
+++ b/openbb_terminal/stocks/insider/openinsider_model.py
@@ -1434,38 +1434,30 @@ def get_insider_types() -> Dict:
@log_start_end(log=logger)
-def get_print_insider_data(type_insider: str = "lcb", limit: int = 10):
+def get_print_insider_data(type_insider: str = "lcb"):
"""Print insider data
Parameters
----------
type_insider: str
Insider type of data. Available types can be accessed through get_insider_types().
- limit: int
- Limit of data rows to display
Returns
-------
data : pd.DataFrame
Open insider filtered data
"""
- response = requests.get(f"http://openinsider.com/{d_open_insider[type_insider]}")
- soup = BeautifulSoup(response.text, "html.parser")
- table = soup.find("table", {"class": "tinytable"})
-
- if not table:
- console.print("No insider information found", "\n")
+ response = requests.get(
+ f"http://openinsider.com/{d_open_insider[type_insider]}",
+ headers={"User-Agent": "Mozilla/5.0"},
+ )
+ df = (
+ pd.read_html(response.text)[-3]
+ .drop(columns=["1d", "1w", "1m", "6m"])
+ .fillna("-")
+ )
+ if df.empty:
return pd.DataFrame()
-
- table_rows = table.find_all("tr")
-
- res = []
- for tr in table_rows:
- td = tr.find_all("td")
- row = [tr.text.strip() for tr in td if tr.text.strip()]
- res.append(row)
-
- df = pd.DataFrame(res).dropna().head(n=limit)
columns = [
"X",
"Filing Date",
@@ -1503,5 +1495,4 @@ def get_print_insider_data(type_insider: str = "lcb", limit: int = 10):
df["Insider Name"] = df["Insider Name"].apply(
lambda x: "\n".join(textwrap.wrap(x, width=20)) if isinstance(x, str) else x
)
-
return df
diff --git a/openbb_terminal/stocks/insider/openinsider_view.py b/openbb_terminal/stocks/insider/openinsider_view.py
index cd39aad16ca..5343b07a7b5 100644
--- a/openbb_terminal/stocks/insider/openinsider_view.py
+++ b/openbb_terminal/stocks/insider/openinsider_view.py
@@ -117,11 +117,11 @@ def print_insider_data(type_insider: str = "lcb", limit: int = 10, export: str =
export: str
Export data format
"""
- df = get_print_insider_data(type_insider, limit)
+ df = get_print_insider_data(type_insider)
if not df.empty:
print_rich_table(
- df,
+ df.head(limit),
headers=[x.title() for x in df.columns],
show_index=False,
title="Insider Data",
@@ -132,7 +132,7 @@ def print_insider_data(type_insider: str = "lcb", limit: int = 10, export: str =
)
if df.shape[1] == 13:
- l_chars = [list(chars) for chars in df["X"].values]
+ l_chars = [list(chars) for chars in df["X"].values if chars != "-"]
l_uchars = np.unique(list(itertools.chain(*l_chars)))
for char in l_uchars:
diff --git a/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml b/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml
index 69a13f24a8b..35a8e9b2963 100644
--- a/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml
+++ b/tests/openbb_terminal/stocks/insider/cassettes/test_openinsider_view/test_print_insider_data.yaml
@@ -9,393 +9,372 @@ interactions:
Connection:
- keep-alive
User-Agent:
- - python-requests/2.27.1
+ - Mozilla/5.0
method: GET
uri: http://openinsider.com/insider-purchases
response:
body:
string: !!binary |
- H4sIAAAAAAAAA+29fXfaSLI4/Pdwzv0O/fPsbpI7Aqv1LjLhHoxfM/hlbcfJ3Hv37JGhMZoIiZGE
- HWZ2vvtT1ZJAgFoGGy332bPZnQSQVNXV6nrtquof/18/6MXTMSPDeOS1SO1H/Jd4jv/wgfkt+Mqc
- PvwT9UJ3HBO888NezL7F+784j07y6x6Jwt6Hvf1fov3I7TV+ifaIE039XuvH/eQGeH7EYof0hk4Y
- sfjDJB7ULfgxdmOPtbpOzKKYnPmR22chuZqEcF/EIlIn8P/LMfPTSz/uJw+k0HxnxD48uuxpHIQx
- 6QV+zPz4w96T24+HH/rs0e2xOv8iEdd3Y9fx6lHP8dgHurcAYq/PkmG6gb83hyMaVoOcBwAuCMnN
- UYccB+GIaLO7bkOn7/oP5Nj14J+IDOC27NrBZIqXHL9PbpiH1xvkmsGoYnfEViDcxEHvK7nphYz5
- LGyQbpA9O0Rys9vO+syJyCTin+cg/MjpIT3k0Imdxh7ZX6T4K5s+BWE/ypHrpg/f81HilCXf4wTR
- wg8Z9EhK6Z9fjXpByOZfR8lUSeRhEk4GQW8S5W5NJkEiEZIakThA5PmveMfCdyQ9ISaKpx7LL8de
- FO21/qP2vRc8BPgD+Z2MnPDB9Zvy+Nv7sdNHKvAzUeH7AMiuR+5vrEkN+PoftT/+o9YYMX/y+3/U
- vruHqWEhfw6+5aDAtxwg/MrhDJyR602bEcxLPWKhO5CcEFab9MjCvuM70gO8wUdHGjLvkcVuz5Hm
- d85gJGPRclCfmPswjJs+TLDj4a/ZEMnEw1EOk+uKlTzjuRFAwVmBR3z27MgB2ncJOM9FcN/dO72v
- D2Ew8fvN7xX4o2nv+c98MupxMG5SmLwo8Nw++b7f7+evemwQ5y/3er385ZCPNHdd1/X89fsgjoNR
- 0Q0DL3DiJoLnX5dozlFIcv/xS0vkLtBLHE5xL/CCsPn9YMBfw3d9Nxp7zrR578F6S7AXvgeYap/V
- xUNZRk/M9DdclnXHcx/8Zg94joXzX/sM+MZBnpq9vaURN4cBrKeVNzUYGIYsvy8gZz24yVpaAKmq
- 6jMUlSyMpTdf2cLIXtaMqvxLcSZxkF8vs+8D14NpbzreeOi8DcZOz42nH2z9Hb+Yfm/KDTvBMQ4i
- l0+dcw/YJ3GCiKuUpqpl8/Bb3fX77FtTSV/D/n/yKWGj9BufAvn9f+4vz33yRrM3sLr6Ft4T/P/3
- tV/K7GvBkuYMNZu1ZWKW1kbKKNlaN55d62sOYkXipT+l4mvGaXkuyv4r4KaZfFgZ/sZcky0C2pDF
- K4bK8rslfONEonjMCXPD+W52/fveJAyB6Yu4TTWMpaFko/lj5flNCMpBAUsM5xYUJAxJoDxrjfvg
- 2+81An+yV0b4QuE/JSuFAOl/fl/7o1ZLp5b8QPAxCf9Kx7YIIXnr/LcZP5GQeSCUHlPQGQchcA77
- eyT5KXTGY0Dwe+65gfuN9d8TZDAiv0/HxIdE8rMh8z/vyR8Ayfk2cn1uDHyrZzQAq8IiInAh/clI
- f0jWNZEJlxgkXcjJLJBsMRIOmcDiApnzFUCnM04due/cw+iKBG/6xKMLpLD+/CF8bfD6Sx9KJvpZ
- PEA6C1EM4nO1/yS/Z2w6Hzp8DCYx3gMfYXbuwZbjZuTvyH9NioK2zW2Xu8R2gZvug/40fz1n5ize
- SvLqUsP5TwesaPi/9zl7jCAgHad8YRHrA3vQSwnLcfYftcaQctOfDOmcrFQeKAgmIxC+EJRSJMfW
- pIDdSEKPsTY9yF2Cl1Q+XOf/dwPO1ttsRIYYFj6qpI8q8AiXf6C1h/m3PadWW6KWMbZILdid65G6
- PmWz4a3QtTTTzxD6PYeTsLzgFncEnJRJjWREgBFNfi8dFUguDsq599hcwM1lE1XUJdFkGnnRlEqm
- DAQ65wghVdA6shTQHMFb6A2BaefW8+wV8OlPh5g3zIy+zujyhAyWMYFHxnrxIuScNqcIPKNEX17n
- WvLfMkzXH0/WAqmIQabzk9ibCY5GH/xd14syyNzWnD2d2K3K4p1993FxHHmolCNfGhk8HLv+lJOz
- 3otcmu/l6V+wezMWm6OI4a3mX1Gvxwxcx8sLP2MwrgZX33byZhfhDtVMyiubSfn8+1iZkxh0XXaD
- ngk/oXW/NA0r7kF6fRkDf2/I3PDunppk6Pb7zIdVMwRdW4/AaGOow5HfFh9t4ArkhOfmdBJ6b/fd
- kfPAov0oCOPGgzt4h1YnSZw2gFQP2Zg5OMuTEG5pjgOXu3OzxZUsGGt5MhoYaVp8gVQxNMt5n5NJ
- i084mz7AUZSQhNe3SZJTjs7JY9sCOnxjmSDfdFpe8pzzssfYI/PD4Ikv/yWRunhj0O8X3cd6A2Vg
- LK1zDjWRwGyt+wF48e19EBuMLd4+CIJ4ZbCL7H4feP33BU/h6HMSaFHScrmgJqzPozOZ+MdHc8or
- ka+pxEXprORv9p1F0Zz/navdpYWUvy4S6+Ecb3Y7OCtcoy8pjRWpv3R3phYXAKtFdz6vYmB+x8A6
- M2B8Kuaqh7vIbgwz3UPo2fstWkSF0jJMl/PizfV0JWf6ZEk5rLLA6gO17zG8D5PAfbp8OIZrQv7r
- 6vOpzc+vzkJqs/sTzakbsx9yM5e4lLkAAV8/4D5+7/S7D9f8feSAqLqxEZCQRRMvjlIYOcN2+RF+
- e+Zf12Y7JXwHJNkYGcbxOGru7z89PTUeguDBA3PjYQTK9IGFjV4w2n+A7/u/RP/l9j+c1C/utOvO
- x5+PjL/u5TdQsg9Ij98Pnhp9J3a6zhRey4fVn/7xD/I/f8OhDiZ+shGAON6++312S2M8iYZvYYlN
- wNmOo3fv0dfkN735JXojEZ894eYBe/vu3fva7FIv8AfuA1x+kx/oG7hlPtT8WN9m+N+6UiQF0oMU
- So40eve7+z9vTvhUtH3Hm4KJHF3e/wLv7M3fPoTv3f8J//YB//rHP2bPv8MX8RZ/bPz6IfnnH//4
- n7+9W6bjD4lf9D7Q/5yT8N75EDV6IWgcduQxvPFt8E4CgCP4/YHF6Y/RwfTWebhwRgwu/4/8t/dO
- g7/GDxQ+4at8eD8C5sQ4zEXQZw0XpHEYH4AkC9lbJAsg/vHubfI2pH7Q42OS3iTz8UZ6s7oS6k5G
- P18J82/4Et48OG/S2Xdg7vn4ce4/teuKLqvUVmmd4g/oFOCdyY0R8/v4K4oR3B9bfD0lCxQfcPpK
- OjS43ncTscXHllzFXT6nH91Pk5tgnP/V81zcQuo59fHkvq7pVFUVnVJZt2Vg3T3OMKQXBhEIaBdE
- 2oc9Byzb6SiYRPklDmNMNhtrP/KYQ+ADn/ZxZ8qND8NgfBg8+W/rGHvbw3tQkgLD7OV9KdzYw997
- nhNFH/YwjLRHOGd+2JtFkdIgUj54lEWgMACFMCYe/OW5rR8djiLbU9ojw5ANPuzt75HWj/etha3J
- e6DEgaf24bHs2eTu7/c4kDSAt5fud/K7v+OYvlu4fd/j1+s9bxLFaCVPphHgS7cjO8mvuJkYIYgE
- XzEEGJ4/rfPtsyUoV3gl3WJcB1K6ZVdPNwPngJZ3Ld86nkcGyebnOyHUDNw421MtnKHVrdd1hzmD
- C2zydXWw8x3mP8H1H56DGgwGbk8M9TK5vCnUHgvqvUEggto5utzvHF+uDTUjPXI8Fq2SfIM/rzt9
- HAYyWsHccUDkT3hx7YkrgpfN2ibwsikrgpfNlwjePmfpQuZs3QZjMTeC+VWwAoJBPR6yet+ZJs8X
- rILbAK4KSSoF+8TYVyHcKwfI/Qx3vAz2CKzIYTnwc7ylFPoqo61MyCqzPT8hQrC5CVmFu96ECGHn
- J0QAfP0JSZamcDKS1bn+RCyAK5iEBN5mE7AAs4j4HNAVwkVstM9tfxQ8Hf5hSRfOtXUSmrwPvs30
- chrZNNLMDFS/A0wqSVJMAHTyyB4ZsXgYAIiTo1u8KQkbJptY2S1JdsuvM9hLG417ZOw5PTYEN5aF
- H/Zu3d5XFsKgR8438BQf4uGHPQV3juB5eObDnpXkmixgmtyPXDAEHh1vAl9PguSWfRwy/gt0zgjn
- k5X9BkZN2Jr9lzNS0tD7bMw5VwOsoyEty48Ci4m2EgTzGZ5wQ/owiWkKwC49kmYZFd9cW3khs9uX
- XkniLvaY56X+EcznHv+OQbj0O94HMxBzQ2/gMq8fMTRLPfYAdmvrxygOA/+hdYIYHA8dK/4d5jS5
- oRCNtoQGvicxxA978hwj4fGJD9w9b6Vv/8d9GAmOZuE1J9ZespyipWVzMx3dB15EgpB0zn6KZmtB
- vI6ogaskwbQPQykczzzJ7ZnxBEvjyRYG+i3poIrHZG02oJshuQpBP5A/zca0yAv+ZHSPqyAZ1thb
- Gte56+fHAXa/jKP5YMMfWGhs/IHmR6dlg1NXuW4J03AZk/PtNZjKp6H7az+ekvP1JsHbYBKSkcmN
- hbGpa8+Ct8EsFEzCMqL5JOBn5DAu1mb8Wcar6GRXx6hJLiVJkMzeQRpyS+Zi0E88iD64ieB6+8eH
- e6itAp7Tmc0JrP5WG9yTPsrTH/eTi6u31SlqMfCygpH4Jjq3PLkuF92n8vvgLhXvK8FqZjdS8sQ1
- uRCzlt2p8DtLYKryHOgo0eSiWw15DpXfWgLWludEPXcvtWY3G8/erBr6fMBT0EAl04W0kSz4mY0c
- nykbjGbQDIG2fDOsXw6tUB70AlyxfqK+/uLfR+P3yd+1AinNgxLwCYwcWIezFRousWtuWZNrx39g
- KUMq5oyJF8dSmoLd4lGWRyckM9TkA8lCULkY18H0rP/2zeymJGqUPDnnnrJH53elsSmSe7AR+GCc
- ADEAYTF0l/1xB+RtPHSjBify/32o03fzISc/wrNv3iTD+oP/Pb8e+DyJeG3ob968y49uBr5OZwjy
- AagiMyF0+qxU+MRLwudWIHzmy/XfUuhfSArtTviUy57bmeyJV2TPfFGLRM+KTbCZ9LldR/rcFkqf
- 8kfnd61In9vXSZ/bZ6TP7eukz+1z0qfM9GEesvca9ueg703XN0ELzEI6cxGesz8R1SsN8WVk5Yb4
- BSzYaUTaD0Gxj7Q4PBR0zkPwIr9AW9ck3uevI57ZujkdknGt0iqznPOlOsnLFtrRrZnbnKe6N2S9
- r7A6E6q/jVNyKSH8CiibRFZcJf/U029pDIHHIsTQohm0FMrNAhQMFD0DwVmG0F6AcALkx8+A6C+D
- OFwZBNYGnUXRM4AelgGdLI7FHSRDKVpcS6AGy6COF0DdOt+eGctoGcD5AoDLRHUcPQfm2zKYLy8C
- 01sG01kA0/EfQQSF7uMzYJ6WwXxeAHPmDwEI2D/zWc7z+pKwyWBn/My+9bxJn/FxXGP6OOvvzRf7
- fotcBKSPFxe4sgxiPJp48SKMc/jFHXuMS5pFASAyDfvkp/VCA4/rymWFaqZmqYmA0ssEVAmydSXz
- +sjKhfPlk086wwfy57XmIug9Pxm4wbNB/KIM2fOTsSGy5zRDiRWn5EMpWbw1LUxQeMrT3qqaOPP7
- 4AqEU7Fy4Hhw0Wcgc/lYhKe67C37LZHbo3tpUL4XBzBfmfmEv8Q3k/vk9+jtO/7wqoOy4NDcJDeT
- t8CpDCzF44nfxz3gmY277Lu02g+h2wOOm2DF6HEQMiQRPrnRUPyYvNeCtcIVpegWfa/VCXwANuGK
- VXijgrAcfzIABTwJy0BqcCdX1VhqnCRy/YV8ikFhx27ei1t6TIfHPsOiY7jnwvfImfhesO6vecz+
- mRvBSQK70Hf8novhccFdJtx1w0IsghaPD+7peEHE+vUjv5+8MKFPUuPL+UWrTNnLNiYKF1q6uGEi
- 04W2NcTArRyzm7LP8gp3e7CUQBiU4K0J1FOSY7w3x+WlRHKYW4qEF4j5FbzDOV6UaluJi69r/4pu
- WbKKN4oA5+ZbbDanWx6ptYXbZwt+cYGUzLysWT6cGwWDQQdNgrfv0iQ/9EKDEudzjz+DO+Z7qd9a
- cmcvuN9710iNcAAaZJ+ff5IFL3xyDCL0pUiDlyLtDV765EPvhQ8+jkUP/rH8gnEjc/aC13mxObgD
- x4vY+1reSS8IvCyblXNYieyZf80sTRBCntv7ml5L1+AeN0DTjAy0kBdCPWvhxSWX4uQfBfiSKUnw
- dS4PXogLFmmGiwXr4Tq6fBkuvqxTZMnnNbBdwY0vncY5acGapF2+kDRkngzXYE1cxy/EBeyWosJP
- a2A66bwMEbBnigg/rYHo7iqH6BngfTdMjYi843aY/ro+nJj5YxZiQcoiJCr/OXjy14cTxEO2NJhL
- /EnkDxTqydXwUd63OgmDyZjc5yOAz0RjZ0IwDh4ePHYSjhUuBL9DFQdWTpmSewjHcAcIQk7S+9p3
- ZXcqcF/fjXDwKDHfwpMfPsjvyH8RsL5ZMxOh5TBgigAMN+waWCB9j3b1dBHcm8TwedMkb/gtHnuz
- KJkz4w8XXkpC+o7gW97wy0/J++d2arKYnCiqr+AuTTACx276XDR/f/aKs7SbjPbMpp3T3kzNvFIj
- KMVLboMYZnk7++8lUehoLc/eH6SGMF8crwhEK5kxqjzn3/uDoRil0AJeA+Va+TprTov7gml5VXje
- d18wK6+O0af2y5qTEvzTJyXYxaRsGCdUNp+VrYQMlc3nZlfRw42maIuBxI2maOsxxTSPNBfwW0nZ
- w9Zwi4bCQkgELveA6YpzoxbyrMpSDvIpEWWKMcmwJEm+pPhWawbyDn9Yc1c8TzbMPblO6vXW2Rrs
- zW2+PYpZmvi2spcF/8rp20p+yd6Xnr0vfY3cySvnga0zFKyp2svNLR/JuhqqcA+lEOlS1vJNmi69
- X2jcz3K6Z3m+LZ4PnOZ0l1myiAAnAYys8VL2Um5J51Ol59ZQWnC518J5T780yGw0WY3awPUf3d94
- QdqvkyBmDScafvsv54Mq64auqMZf4g8//Xx+LXXvup+ky9vrn6T2XedWury6PJYOLg9/lu5OO9Ld
- UUe6Orr9q3R71G1Lt9eHbal9dXUhnZ7f3Eqn3VvppvOzdHJzdiu1LwHW4dnFpdQ5a0s3n66ki7PT
- n6Ru+/ONdHfclX4+6nals5PzG+ns4tOddHN5fCZ1D88A5tmFdH34WWof3p1L7dPOpdS+Pr2RTo5O
- pLv21aV00Lm8kwD7hXR+dnsmfe4CiMuLzjUMt30qHV52bqSD9vGFdPPlVro+6/4sXZwfd6TO7Snc
- cX57IJ1+OofxXF58kTonB4fS6V8B59mJ9NMxjOvqBO6+7Ujn1+0z/HQtnQBNx9dAXOfs4higdK+k
- u7PrM+n6CMbbOb+9k64u4d7OxcWBdHBzci7dnHySDn4+l65OOlL708mJ9Ll9dyh96XTPvkifz2Gq
- Ln6+OZK6X66kzkFXujjqHEjt7k8w1M4JkHZwJd1edaWrvx4dH0uXHZi1o/OudAxTBQiupdtP1xfS
- 4clZpw24r75I1+cAo3sJc3F3+eXLHomdEPyED3t/v/cc/ysPd8M753UIuHW4atbKC0atkpm0MtzL
- SwqBPRbYExnktjPjFRAIs8+0P//4NP84mn00RvNlDX+l8LFiEb9m/yY79nyNf/fdd+mQk9akKHP+
- vLdolstLZrmcN8uzSoFZRTYKcASalEvyj2H2U4ZEpVg9oLa+/LgPf+NAl++gspXckgj+dHOdS3XB
- E4aWPMCl9Rr3a3p6P1cE4oHYcnJf6tEkkDGdff5I/nYrvX0hCiy+XZazUcRe7haSjmKZoluQmIvR
- 5KVh8wd4Znzxpb/G0+ILYOWwfvGlvxwyL3bewx3F11PNWHSJCkDi6i38fVT8u7H8+362qPbzC40v
- cNQ3mde60IaiPxiw/t6KOjzMuGeRC3kRSl7Ap6XREes1HoLH/TZoKfeRRfus/+CE+1i7vk8tqmua
- so/1FbZCLVtXFFmmpkX3v0XesarpX2SV6xhNNjW4RuW/y7qiKbKiNL6NwHDk5TagBGfde1cFDt5c
- l/W6ohFFbsp2U9OTKig+YiEts8fkxTuxWHiuyfZRP2FEAgugGTZWwFKk8ds3P2IjCyzI/t+FQvFx
- GAzcOBq7XOnxct7k73pSdJVoQP6Zq76/PH7IXf7LY/TBUE1NV1VbVmE+TEtVjP99A6OPARF8SPjk
- f9+o2GYBvidtGOAH3ojhf9+03kjkEDTVzxKh7+bjnsB8ffJx4O/2Wog3maH7HNWLFLd+mo5Y6JDb
- Ifw9ZhMsc5fImd9rJE+uPJVWrO0fPA7qV0AKmCJRvVu/qp95+1TWdVszZ29ToYZkmgpJwoMkAtJZ
- VNM0XsL2EABirHcGeyauafLtkBx7QRDWbhyfHIe4lRr1Aol02sTWqAxSDlCSDCXpkqv9M29hkDeM
- gcU5csKvEW/KfBwEsR/wjN70jitSn5VqFa6YP1GtIcuFl36gskQF11JCi5/T/1z8O+CikmprxUt3
- Gz9mVmiRVBhog8FAW5UKWxQKpiUDp6NQoPD+DN2GhW5osOzzQiEeKTB7lqrW6d+1iP1KXy4PVGMj
- eaCWygM0VSuSBwh6F/IA8ZbIA05xqzvxJm9uyDGMF93BLqyWB0ZOwaHGcONaouHcCfvT+rkLpDGv
- /nGfKqqp2upcLNiSalhLUoHaOjmdoFPaj0n7kfkTVusM3UwCwOKxMDEEIJMUMvm4MI5DN9yEz2nD
- Nor5UpFkEZvzgRc/ZYq4XFElG9faTphcASZXKmVyqhoUOBqZXLdV27C45ocveSYfhy6I5enf5Rdx
- N7Wbut7UtS1qe/RBK+JuBL0L7ka8JdzNKW5d+nHofF2Li09dz6u3Q/crWHembdg5tW5IKtWX+Bdf
- O9ans4BgV0KGmvrrkzOVyM3EjRkBSmqnDLvhRoEvkYs7Ytky5lchHuxv+3VhPJ2zy024uaELlG8y
- 1mJuFl+6YE8CblZtybbt3XAzA2Zmg2pVtqyZhsy5WaGwWoGbZMVWDSPPzcETWmBDd/xCZta0pqJs
- kZkxllQRMyPoXTAz4i1hZk5xqw0GtNsDa/nODeOJ45GOF0z65Jb1hn7gBQ8uW1NfI3Fd5ylkfo/V
- j+r1j2Fjn2qybWg0Z8tLGqoyUNOuv8j6nf1Lss5YajAWQk0F5ARzekM0/FPzPxMShmLX2jGsmdiR
- yEmbqLIq26D2sSVSNkByJBEY4LLulzBJYAORITc0gZ2v6LLYApjNgsBHENr6shho9YJDBcGhrgqO
- 8+1JDhOWi5nY+rphGhRtfUoNbcHW7we9lxoAqrWReQ//18oNgKvL46oMAAC9EwMA8JYZAEhx69Lr
- kytsx0lm6cqkE4TjZ0TElVfvOGPscFlv9x/dKACnv97tdvbhbds05/Ibii4pmrEiI0xdJkce9kqN
- hynTkxsY/3BmH8hK7cIZeyizjrtEBZcfjIMrGF2Cl2R4JQJ4F4a7GeMrekOlxVxq25JlFSv3lC4B
- 19tC41/SFUsCr3dHjG8A4xuVMj61FAMmjYf+LNtWNFzfFDwBe4nztRdyvmI1ZXWL1gLuN1XE+Qh6
- F5yPeEs4n1PcOkCdy3s4phH9tWyDQ8f9yjwWAvuHHrxsTTPluVFAJVXWJUOzyapFEA8ZEeCsaeAr
- dAI/dn2QB8DbB95jv5FJArhYO8LSlQdYw6n7Lyu4bZENhuBgRKG/TQ0B8B0EytyilmSbxaw7o1wg
- EQxLaAlIiilLIDV3FBKg4EXQakWCbCmqksQEFNmmNoWFr1JTU7YlEsymRrcoEu5OOxVJBIC8C4EA
- aEvkAZLbAjvdZ/G3LLK3jhHQxYMi/fpP4MU7nocegmaac2FgSrahSNS2CxyEAEx5ixwGoecApkkY
- 1/6bjYdT4GSY7zQaoGkWdhlFHCTFsTAgTB6XMGF9cw5XBKa+pkqyVcyIM2o2NPR1Crxt/t/i7S2y
- tgH2vWatsLa6NW1Pm/JWWfuoMtY+2g1rH5Wy9hGyNrBeOFnP9z8Nnpjn1c+dcFrv7sPbNBXFmjv9
- pmTRZeWO50aREyfsA58GA67nT4J+RK4Dp5/pcBV0eAebyTv9gNyMw2TvoHNJLFw0e60ELUG0pPuK
- ML6qNtRiBf0DlXSRE8+pKn7KEPI1+u+7MuOrD/wZhmWYKudrjepg0GM8VwevZ2UDv55t3P9dBhNI
- tl/E6FZTN5qKvRGjlzv0mDlWEacj6F2wOuIt4XVOceuKxe6va7H6iedEI8ev//ejC267pVimPTfk
- qYQ2eVFkL4egpqjgxTfINSyfEIGSw7BRO3IePNDhZ4fEUg0K3maKiACixZj+8UYxfbVhCvx0Ewdb
- bJZT4aUfqCXeiZfhOXtX0Tlgb8aqtch1jMjRVSdd3YratsAcb+K0b01tYwpoRdyMoHfBzYi3hJs5
- xa1bBgbygRusxdBHT/VTBmMc9oBZ58k42DKgrtTr3cZVYx+8LsM05/E5VdI0WTLlVSNdoeSzE7Pw
- yZmm+++z0Jyi125By38Ogj68/D5o8tsvxDRVzPk7eiLzQczTc3AQRJEIDmLFUx+kiTlE2UAeWA1a
- bFb/QHVhaH1GbuFVWSgPFEXS9V3Jg3uQB/fVygPDslVTXzHjlW3JA9Vu0s2ycZ6RB9eHlckDAL0T
- eQB4y+QBUtw6wv36/kvS85yvLKwfhEHUmEfsu1dg4RuqLs8tfE3SDGAfZVUeWIYMAiEagukeB/5s
- o0697qd5ehfsifwchF/Bff8ZTwmmmKKHaAlHOwvYk+7VK8L1esMSbO1rFlj4xYw9o2pD512xFBAY
- O/LemQx8L1fL95qGuXYrdoC1HffdApN+u5E5LACpamsfQO9kax/wlm3tI8Wt9njsggW9RlCufd93
- 2Xx37pyfYIal3On+nKHbNG/oG5IiG5Jh0MIoXQIt23Or2TJP45nZA4o9y9Jd4X4w/BefJvOxvHbP
- TlMbwh13Q5VUgek+J3ZDOWBK1JIlhRbn+u3MI9imQ0AtkyYGQPIR/X2Z0oWE/adBnbv8f4dVpGoq
- lRVLpYb8YuGgNeXNkvjKXX4sDKtIOCDoXQgHxFsiHDjFrdNghF3ZuDpeJ73H7Q0xDzcY+vDebQ0c
- /9nL0y3JtpZTcQ2Zkk++O1P6tWyHXpZrN8yJY3T3P7eJbYHfjJ3fED5B+AsjObq7kshmPr9qNyyB
- 964KbfyEhuKnxB4/tYWRgp1Z+Nvkb0s3kl359GPC37JRwt+yZlsgDGTjhfxN9SbdZkjvtFsZe3d3
- w93dUubu3vJsWLS2Pweh13/CCFuWeb8Op9/EjPnoodcPg8mD50T1czD4Nc0wc8n3miTr6hLHm7Yq
- AwP7LALb3fF7Q3IYwpKqnfe6zPElctcmisITcmYoSIqCnL8mC18xG4bISJdso9gST0gofkqciaNT
- ierFCTzVb8xZg8HAqrYET5MtqhlJBJ9/5Bwvy2pRIj6Y+C9kctlsKtvMxL/pVJWNA5B3weSAtoTJ
- kdzWTQ8YyJ2MgKdjFvq8dynay7yFKjf6n922c8LQjeqfXc9znVH9oAESXwEhrsz5HHjElExzpc5G
- tchNEDsph3+cgK3OwiTnDhYJLNIENklhk4PGKxhcbsiioF1JQuxs7BsqdXOHKbaCLbptOu9UMUwt
- ybGVDcW2ufOOiZIre3Qv5W2jSbeZaofNGipibgS9C+5GvCXszSlunUTuPPN9ipr7ucyaSf16wqb1
- rgsmugomOjZAySJ04MBqy9U2uDG3iCXdocOyDXLkfQ1S/r6Z+P700UGLnRfSypaNNX4kQ/eavfeG
- IvCrQUEbWrG/nlAjEAlUEXK2LSm7KqL7ZyTRmoahmVZSPy8r8AWVtyqb5vbqbjCNtqltMyiPbViq
- Cs5d7qZkHvGWBeeQ4lbbfwB/99L5Ss6DMH5wHtiaqbSPbj8KMIFuNPZ5Su1KzA4j9Lqty9ZckVNN
- MlVN0gsidroik3On7wLQrGRWlYUROkXBDNpkDCQdQ0Gs7nXheqo2DIFpbumSJsi8n9O4YaAObHoD
- njV3pfVtEA12pY68DU6Lbq7s1MnyViL2ZlPTm/pmEftypx3bMlUkFBD0LoQC4i0RCpzi1umA3Lh+
- z3PccJ2w/fmUb9WDs/3VQ6UPQwcOnb0/W5Ps1RJbS7HIRYOAgf4UBLNcO4rJdoeOB854sjEPYgHD
- clO+D59ieIWe14yGIjTiJVNgcScUCB5TRfys2bokC0pw/gXC7ooG6p1reZl/TFx0rSQop1jUUsG3
- 019WOGc2VaOpbZaZU87fnbOqNuIB8i64G9CWMDeS2+q4sfsb89fbeb8Z8u6Q9RM8Kbtf/7xPDduG
- dzyPuVPJMOVltxxbKJG2B7546CzXzlMdOLw9iWLXTzjcMtFRTzGRBBP5XJwtv5FFL9j7/gGVsyj8
- zskROAKyWHNTWzIFAqL6eJwM7nrBVvvhFm16W9d1ZVlvG7axJb2tqk1lmzvtN5+uqorDfbraSRzu
- 01VZHA7Ibd1Mxix0g5DMT7tZCsk977qfY5sMTH2fmfNnrjtLvjNMatu55DvdUoFblsPvqqWQE2zr
- +eT2hpkln7D+pc9qs0vAz7dENiyVn7fkeTzlfmbCA96CfLvNzHe1YYrC8bpkycXh8xlZhVeFSXa6
- LdlqcW5P9QKg+koZGWslkx120wDWt9N4PN1mPB7kgLJpeWy5fsdOqhUJAgS9C0mAeEtEAae4dQfc
- HCSZ7eSCxU8BLyVdQ993HN937l0/cPv1AzeIei52qYjqdXx2P33382geaD3dkCx72QBQwUrAmHs0
- hJ+TgthUBBhUrnWDiPCwA1fqWBAr46FrOdwkh7tg3C8unpMbssCfp5KpKZKsFRfFzAktfloTigUd
- 4O7KLqi8KZ4pw0rmpbFy8jGRCqpc4gJgcFBVbPtlpTYmVtDTzUyFZ1rjtT/fVNUaD0DvpDUe4C1r
- jYcUg9uMNsL9hPdJvwk8/gHMbzwJZi1R0XX8yW9OvcMiWA6oEFRTz7kFy/6+ZYKb8LlBDsKpT86d
- pxBNg1mZvI0ldkO35zxgtUCXGLKB7YUTHITjeL1DYAk9Al1gu4t+F7fUAkfAorsK4Dng8juVxvYt
- cASyBnmYQUfTTBxru3aAYjT1zeyAcia/O+5WVTh73N1J4exxt6xwFsht4ZHuT1jGcubDS4wxGh6R
- i9n2/MR3e+448QqCEeM1Ls8FA5x7pzg3l/sHyYLI+QfUNiRTtlYi/Zqsky77lubipx6Cboli/dQE
- JYa4i3NxX+cjUCqsuVVlSRXU2s9o2zDCr2qqZAoSgaq3BwywBwq2/rZoD1BDlpOsHay8la00D1fb
- rnSgelM3tygd8ISFisQDgt6FfEC8JQKCU9z6mXle8LROgP/o0fGj+kfn0WUhcDsW4oHGn2feUirp
- prGk8XWZYqecEZ6Bt5h8S6ki1y5gmh7B72cSub0gqqnI6l6LIyIJImDtV23oi1pYi5NvEzIET5Vk
- 30pUsE24sz27f0YunrJlrtY25ep/5+JtPxcvg1DPWQ1J7Y2pqJTOWd5UJc2UJZsusz1W3twMme9E
- kUP+kvXKqlFqKPJSTGDWJMsoDAoo+gJFcyvmdfU34jQ+U4K1JSlKseCYUyzQ+uI2OrK2w3Td6nvj
- a7ahKurK9oC5nRZZIBrUpmZtUTTgaUoVyQYEvQvhgHhLpAOnuHX2MHomsrYqEG6DcRQw0P1fg/v6
- qeP1gxAPQ9CtfFaPDJyhSbJSJAsKkdZURcfmG+duv+8xfgQdj//XzmHRxo6LrXfZU5bmp4FlkIyD
- 8HGQZByv7ZpLDfHxGJImaKU1p3WzDQJFlQxBk/6diYBtBgYUeyYCFF1JTH9TNbZTgw8iQGmq2zwh
- B89Sq0oEAOidiADAWyYCkOLWmT95XK8hR5cx7I7ns3hYP8IGV5i+ZSu2Ng//K7xXxYrZL/Oj0QGI
- H5OO5/qpl59tAWCGT9fFwjtg+R54+e1rYio8zQdwkhQn4Thfla2viVLuxcn6KUkCoSDM9MEu2oJ+
- utW7ANXX31nUstKoX/Ix8QCsslQfQ7HAUzA09YUML+tNeTOdX74ViOcmVuUPAOidOASAt8wjQIpb
- N0DH5l30L4I4qLf9eBj4031qUFVTrVxkTzFxM6woj1+Arqao8FZv4lkcoPBYLLD3ETFJES/229oo
- 1m+IvX9TkgWm+IyuDaN6imaDPbCrRhvVt9PDOnk1KdVJPiZhvdJMP922TdmyjZeV3wL7y01lm9U7
- 3cOquB8g72ST77CM95HcVjcA35mNgzUr62Ho2D2TJ9nuU9UyDX2+oadYwB1W8XEZS3hqvOSD3GKF
- B+mAERCytH4Hz7Ab8lQfLMtN2F4xcO8/RZ5k+C7zvcTtiQ24XxE221NL6vQSCgW8LyzmsagEDLEj
- u776xB/TMnB3b/kMncXeWq+r5TGautnUt9tg66yqRjsIejcNts4uShtsAcWt29D13Xg6T6Jbo7VW
- CC+v/hMsrfpNjCdawCu3DdOecz58kXTZLOT8IoQ1imn9c12f77J1NQyY734Dk/+/iQWOAjbZwgEQ
- HABJBlC0z7/Z+VlaSd8N1SzW0ymVm/n0oPdtAap/hbCeRbEpSmr248fE7Nf1Mr2vmLatytqLTsIF
- UaBh540tioLrw88VSQKAvAtBAGhL5ACS27pm/SeMsa+xsXfo+C7zonqXRZ7L6gd46q2i67kUPxNz
- 5QsM/TySIOQ7DTVLUQxyBRreHUfkFGjLp/3LtPYR1m8U+OmuHxbpK4puYCEfHwVJRkEOXrXtJ8rR
- Ezv2CY2bKn5qC5+qnvl1YH692p47MjV1YyWmry6fgfWygB4wutlUN/Pvyzfx24d351XV7wLondTv
- At6y+l2kuNXuA60THmKPN/Xyb9iU9b86v7GRW79h8L7YcJ8CQbKV65ovS0ahAChFXKN4KI4T9l3c
- f/zsTGsoL4KgTzpgL2RxfUPda+XGQNIxLNr/Q5cNyCFYBl4w5iW9l4OB22ObhQItQY6PUuIPcMIL
- L7VsW9iahxqStbO+HcpgwApOyN1qcb+CCmKl6eaW9vpALqhNdatNN087VZXwIuidyAXAWyYXkGKQ
- C844HvJm1utt/H+dfvVxLLMMP956+2xe/qNZCp3v+VmSrhuSoZtLouESnP4ui2MWYtf8w7AhkQOv
- /9AgndlxGnVbl4sjgIoNAiEbyMyr4O23z4rqgTZs0GUKD8sDFSepAradUSrwKYTJfpKhKJKq7Krv
- Zh+EQb9aB8HUNS3dF+AfUwdBKXEQNJD7Cp6l+VL5oDTVzfryPWM3XJ9WlQuAoHciHwBvmXxAilvt
- cOiseawOiJJRVG979yyM67f7FIxBK1cFVLgLyC2EHIqaTnG//9TFtnynWblf7SCIcHfwlFMJt16e
- ElhFqsHl1ygiCVJy+wqu1xu2oOanZK+v5FJJ7r9mScquGu0PHHAJCpL/29vdCJDtxCegmqwa6BMo
- 4Ovb6/bs2m8/y960STfKAsS2xmVdu45OqmradXSyk55dRydlLbuA3NZJyJyYHHmjDap5Tifwmusf
- nRGL6qf7VAPfz547AdQwJF2jBdk9hbhqYAEnB+IuHYmtqHLtM5okzkgi522CJ2GCD8CRE46cnL6C
- 1ZWG4FCrH6hkCTpupaRtuOWnSibd1ZmX1fv+iq5SM/X9Vd0CTuN63dhqlY/RVM1Nz9kp3+K/a19V
- Zeoj6J3U+QDeskIfpLh154wDMPXD0TrN+Ry/H07T/tkmGGS5PT6Kpzub2nIzD+Dlw2CEOXnJLt7R
- N8abbF6cElm1VJWX6QHQ1abZN5s3zVZeEL9Lx138mLA0l4q7gFTPw/+Elh1UpaqS1uznOmwCP2+n
- wybwr9bUt5mWe9C5rConD0Hv5DBrwFt2mDVS3DrgU9UDitdg4KM+8+/DIPg689PTozHgTy4lV5NM
- S5MsWVvZt6PUINdO3w1Ixw17HqvNj6znybfkp8Qj57V3ugYe+Qxl5pG/9gQMoyFor4E9uCzBtRlF
- m+3RmapEBf21q3fBe+CC96rdn1dtmpTg54+61O1Vkzx31CVu8lgvZXp10xZc5UwPDFTVXj2C3gXT
- I94SpucUt45gcnuY6gZWlJeeOrcG+58GOEf16zpvfgm+uGXI6rwhPp70Qq2izfqAiDCmG3isX1Nw
- q+/M94NHvp/H4/a8Xw9P0Afb/oJoBnh+eGoHDoNcEz6M15jsakMVywKhxk/ILH5OeOqtoqqSIujQ
- X73Kt0HlF1TqbTMHHzgu7a5J8eyL5Bgcw5a3maujymC3b5H/z89uq8rMQ9C74H/EW8L/nOLWOShd
- rmfXabbrOqPA79e7zlOIRTT1c4zH2+Cc5ePxWFyurMTjMRC3gKsGpoJMTp+m2EY38dJndXiqUruJ
- G6QbTNyI9+0DL/2C6OAf4y59MgqSjYKcL457swxduSE4kKosR29G5GY2gC5M7dmZpb/VVvoqmPeJ
- DQC2gKGjDWBoirGQpxOPFIUaVLbr+t+1iP36shacCf9v88iMz93KavEQ9C74H/GW8D+nuJWeSBHN
- 2vWBTr5h4aPbY2kXnvXT97gSrrcxfYdSJX8ipomdq7TVsrxLUog/fETc4zSNF8RDOxqC8djnabzY
- SywIeUwPRIWi19oxLJDYkchJm6hghVhZNh8fD2m/KpGHNkR9OFVDMgUWfUquIIAgEg+GIsHr3pF8
- ABdhUK2LYJhYtbOSyUO3lckDEoFuUyJcXnSq6sSPoHchERBviUTgFLcu0RRfc0vus+NH4Ih79WsX
- yKWmCS9VySftKcpyX05k+gUUNR3MAGc0TgryFwP1mkxrHWd0H7p9PBCAh+qpCuZrhpgg4kX1f3wp
- kduQOdEk3Cg7hzYEXXZ+oJIh6KWVULhpxG+HLTpVYHO14iod8G+UlcQcYzs9ehM232pizl37tKqN
- dwC9k413wFu28Y4Ut9qPDBtd5g+az47FW4v1r5kb/VY/6j+5fr0DfoCl25qR8wMsS1JWGnLy7Xgx
- 4kQeaNz7Bz0PHA4yIFH2afdusE1W9L2NqcYwGMIHQzpL7gBP3Gv3R66PrQadGFbsC3L3lIboOExb
- 7CYkc7Dhnp6iS7bgkO3qI4XVn72hU0Onatq6Dz+mzTrVkmQd1TZheRnGS4OF2Mdvm4U9h5edqpwF
- BL2T8zgAb9l5HEhx6zD45o544uwaAuJjAK/Ej5hfv3ImXv1zIy3cn0cJVYVKJl2WEYtIeB3/LZgG
- /fKaXXOvNUNIECH5XCQHrhlv8/cCAaAqDSpu4y0SASmJG3oCmqVIllG8w1C9jcBLeat1BTTbVJOD
- dJOPSSWvVZawp9oG3mK9rJCfy4ANK3rKd/kP2sdVbRgg6J3sEgLesl1CpLh14EwHLqhmcuz6yITg
- r6+V1+uEzqPjB9G8nF9TsUQr38VbXQkRmJi/j7W7gKaNR+/FDXKF+/7R/SR8SE/YNLFnxwxBYdn+
- hk6/0VAFFbiCaEAy+M3CgVSiu+rJzTRg8Uqr9lRsvbl6VAelW3IDFBU8gW226ftS1amaAHknXTm+
- lJ2pieS2bkBbuljKkm+UsU653mfXh39yvfnqVzGrd+M+iHbLtPW5ijewjZ1EldX9/+9loy6rxDTJ
- dXAPgAOfp+JK86+mWbsBr8AZByH4/p9kPKXDsg2MWSL6XCs+AugJoH9FLgDoFZEjDwSYerHqn5G3
- Kedb9g5b8TEduL8gdW+bmwGaoZnJsVxUwT3A7KQOfbu5eyAGNsvTfa5O96xbVbtOBL2TSl3AW1aq
- ixS3Dhrk2vXYdK7V10vJj4YgB5K62f30Ref682jAHIZlFOT+UPKZpGW4vAdnTUnO2Fzuvo+l+RwJ
- SZC8gsM1uyFqq6EaYgM+I2JDLx7MfhsP4NxVPL/6lhwaGOS2vbLdp8sF233Ae9qrtvvwUM1t9tq+
- OD/uVHUiD4DeyYk8gLfsRB6kGKtGyKy3ZcLraxXoHwTRE4MXFNa7ziR06qeBB6yLHr2q5RL0FZXr
- +tWg3wLeefpeo9voYCaAqpKDELQ/L9TXhC34ZWqDqMqGQvhQSDKURV//cqNGHUpDE3j2mrgyRxWq
- /R8UoVTATh36jgrxBvxPtcdzUZ0mRbkLIkG1V0WCKZt1+jqRYGx6SFe56u/cnla134egd3IMJ+At
- O4cTKW51YDwe2P1/cUbj9yALvEcn7K9Y06si4STw+iPHr18wPJ8PUwAV3cj14gf71paorCzn8Ztp
- tg+Y9XGayn8ehKEbpf04LjpEMXVD3mulGAhiIGev2sQXHa6h0+KEnNnoNzPsDUGNX/XMXfmhGtRU
- NTX16C1Z1025qP/+ctBOlamp2MqLeVxv0q1W2Z7fHlS12Qegd7LZB3jLNvuQ4lZ7xEIH/OQDh+fZ
- rlWJF3hhMO3XbxxgwXiIO7v8rc/P1iouti3AVAPaSdsb4ka+QzphowYWB7D0iXPP2+zzIB4YEpjP
- y5GSDOlrMnotYe9NTS1WwcLuO2bJkbuKpO+s95YJTG9W3XJXtZSs5S58TE/XNsuYXjENBfT/SyP1
- eALHZpH6cqY//XRe1fHaCHoXTI94S5ieU9w6nYyc3jRm6524GWBCjR+7flA/d4EU5tVvcVsf5Lc1
- r83TCtpwYScWcuREcbpV33HCwHNxh9/lrbeIrtUOJyEvtuXK3aQqmB1zhCRFSG4br2B4rWGJAnji
- llvijluWUMnbkrGzND0FOL6gs8423XrZtM10fx7Y2OJqXlONoiN2+0FvgvHXFzK6DE79Ztvy5Yx+
- c3nxpbLe2hdfdtNb++JLaW9toLh1E/jM76+Xw38ArjMMZFQ/+MUJfZY0T1HnzfRtWZPApS9sqZ3D
- UlMM2aDknIVunBbwzTvsKbWu8zDhAsDzoqy/LlbYZ9hJgv3VZ2kqwuxcKj5eKyVxw4CeqoM78K9r
- 3euapqRn5tlUNbQ0LYeWnaGrWJoFFr4mv4L/N8vYLef/zsnBYVUePIDeiQcPeMs8eKS4BQrX441r
- WW8SMvDdgU9d/2G9hhtO32PTTOXvpy8/p+9Xe+pga607bLUd3rtenGzLJx21NFleDdmBgZogydT8
- woiwNP+UOX0SDMgnhPkEEgUGv4l3rzVk0W69oA2OOK73gyJspEVlSRd4DtVLgOq7bYDmB9GdJOXo
- mq3zLlqwvhcSdwEClmTSl/XTN/A4DV3ZYtDu9K9VVe0B5J1Y9n8tq9lDclunwI2/Tli0Xj/9U94B
- z48wRR/I6GOWvmqb+QNyNc2QQJYvB+ooJTdg6PkPQ0y0TyJ1J0EQMXDhGQMGvwFj3tY0WJYZEpIi
- KVbsGx+MpTUEW+Q/0LINu4SczSJ32IZjV6dnirLy29vckLewka62mpe/cjKW8+KmWcDcdKOIPMb2
- yvrnn1XVNAsg76R7/llZ0ywkt4WVKz7wdTQJ+d7c+q2z8KCspHV9/YA77oaiy7lwvGxYki2vbsYn
- DfSFWGtUl0nX+ZqV5pDPIHlqn53pbw7m4PO6XNVOD81K8JOD1/jxRkMRaPOS1jsZdZsxvUp32ChP
- sEO/TZ6XTcVQzJX9OIUW7McZxiv34/CkrG2q9p+Oq8qxB8i74H5AW8L9SG7rJ6yCwZDZPLl2Voz7
- fFOOm9j18LS6+kdQ0uMhVuGCezY35hVJVsGGteUVGaDwNtke+BCHDFA6fhyAkndhini6/ceJ40vk
- 6prIss1zbVNEJEH02gMw9YagHu4HW9KtYkd9RstmHK+DpNB21RZbUFyz1bQ7TL9UVpttGdtqtiWr
- TWWbzbburqrS8QB5J63yrsp0PJLbunOB7aZ4mlTPjbDBzfpKvjMZjeBzHZTwPgW1a6vz2LwqYzi7
- SMEHpAxlTU3bZ96hBJhmpXazeJ4u184dD94NyoA2QZxg8qcjQXPgNbt0dkMX8D61JMsqvpZSKvD5
- hbyvm5Im6PaxMxt/m8yvY/DOSg/Ig8VduEP/+pxbecs5txfnt9Xl4t3uKBfvtjwX75bn4k3CIPAZ
- OWd9tweqftM0/PNex5uED/XrwHe8Pq+wS977PHynFvbEDsjzuGumbtuk7TsPoTMC77+G7fdAgDhu
- 6LLM7te0vVY6CpKMYqXsbqO2m7Kw7Sb21hRt4olD/SBEhOJA0SWF7qj+RhTO26rDr2mqrawY/7Qo
- Gc+W//4Kg2DDNLzyIP75dbuyRlwAeieNuABvWSMupBiPnhw77lpGwEng/+Z4DKvvR7CcAiyq1gzT
- yufemYpErdVtPJnk8dR0U6bJ1j3fqrsPYH0+DPkp2TP1r1GzduuMxk6aqGNQua5rioX5eck4SDqO
- V7Thog2BH17afi8jc8OtPKpJtrmj2pt/Qs6OroMVkGzl6aalG9lW3pbbZst00w5cz6Xk31aVf4ug
- d2QGlOXfcopbNuhgLGjFE6zGMLaRs82EHQOcZLloO1+EtmZplkxOwTaY9iZxnBblpbJAkWvXwPEw
- E2kqj0H1ClJ55IYmaLZBxZU6CaXFj6nCZpymZMi7cgkEyTxbNAJAdtO0RAfeFW+gjzv96naiAXpT
- tZraZvm55a7ASbeqKlyAvJNjMrplVbhIbuvEc+IB87Cv3Ro2/5HX5xV32Gmvsw9vVdF1Y95nT5Wo
- sVxDr6m6DKD9B/gSzbpocIY2ZLnG8/+DOE5T7y1Fxl7biCZtoLfYYvvO7TGSbOml9UOY4LOJrjcb
- tigbX8jcCWEbOvyqLZmCnl7VM3f15+KqWG8hL5fY6+Z2Suw5c6vbTM87vr6pirsR9C7YG/GW8Den
- uHUFppYbbdgvo+M58Gpi8O35cVc/OzFG/AxV1XPuvQoMYy+zOwWb3iTXLjbGbrshL7O57tcOQsfv
- T59cH533QwK+IM/CTdCQBA3haF5TaKM2BIfQ/0AlXRB7S6gQSISSY2/tnfF25cW1wFGZBZ/LwdXt
- befgYnnNdg/P6JxdHFeVgwegd5KDB3jLcvCQ4lbHBd72fSd2lxj9uZ7a7P7e9b/Wgc++1j+CQrds
- TdfyAbyiQ+8NZXay1YnrjYKQIYsfO26YtsjHA+x0mWp1Hfz3vVaKhSAW8vE1DK7IDUPQ8F4TNclU
- hX2vxT66Zkua4ASOfwH+tmwDj6vjuXZgcXEGp7pilpTVYB99y8IsvRdxOtbUbJptX94Aq3Pbvaqs
- XrZ7tZt62e5Vab0sUNzqYPNJL5iM1yusOQCm7Ne7buTUr7h7TmVrzt+6IVn2cq98ftQVYwkvk67j
- zxJs5cKtOI6CIAryqoNpNSFrlwThEgoEQXsxexuSubNTr/4pZXOWtnocjqmXHIcDCwNW90uZW91u
- Kv3d2XVVUXgEvZONecBbtjOPFIN3G7pBRG6HLHTGbBK7vXUbYXvRsN72H5iHr1/RbWteCp9swhXl
- 3QnR1TSNnLseHkrb5h0ra20Po3Rgq2eNb2WZ98EGvCTBu3zmHbk8JsdnF+2LztFGQkDQoKKkjK5k
- Aw7WvbiOju4q+a76E7FEGl4v0/AqrG9F1eyXCgGlqW6WgfdMPc2/Nfw6vH/H/K/oNzt+/dp5dLGG
- Rla1XFAOlKe13AZ/Ux0/R0IQySva3WjCjBsN42/Fx8kmNAiMA9MW7rHLYPvvqicGY8Dk1TaytQzT
- 1hIux3MJZORyxVYWT55/3VFXWlNTt1sme310XJVuR9A76XEHeMt63CHFrbS1HEn6x7s9co19ZY6S
- LvOzWPYaDH/u/OaEzlc3Ss+vtTB7eh6VUyiVTNNa3nNbAzsir4E1mBbSf3bunWiYGgDZHpzOQ/YL
- TfIoxfSBdEyrx98efYMlTDqXB5v4+bpwQ94U98RKCBdswYnL6qwdnoBbeWWtSS0t7XefL6vT5O2V
- 1WlNVW/SzTT/M779+W1VR+Ai6J1ofsBbpvmR4lYnGI0mvhtPZ/1r9h/jZ1vjTQYDB3z8ZFPu3Am/
- 7lNsgGLlM+/VlYNwNItS8iki1zBOYOvaIQvvpxK5uyWybim80V0CON2GQ8CvybSVxXU1In7GUQvM
- euGmG5UlKkBUPTcLTrnbosbXNIPq9qpnv7qlvujZK/pLWZs21W32rb+6rCy/DkHvgrURbwlrc4qx
- CrXv9pLTX4C1veBhuo6uP/IfPFb/WD9nHu9Ph52NqS3PrXs0cVV7mbktNACOCHh8F31y5Tk9Vrsd
- BqEPDr0EqphYMnh6ey0OnXwkGfRX5cyoouCdbgsVbDp6gco2hEobQKqCnnr/ujpbtbapsxWrqW62
- 8/aMt/5vnb22zv48ZMxjYf2jM2JR/aRR/xg2sH7CtO1cPQ2e0ryp0k4hEw6ZnDQIQP7nam3x4dI/
- UOv/pNa+B36+X+Xnwy2qbdMysff8UjI8tQuaVZuW/qpKWA07026osp/h7IuLqrpWIuidcDbgLeNs
- pDi/p56y9lru+cUkDFm97fdD9lT/CHzNZXjucHpdkrWCPXXdouTUwU6086j7fAjpnrqimXstjoEk
- GMjH1/A31RqCM2Awcl54IRm+gMGFgTjJElTWVM/e1fes06llUj09Uw4/JudJlTWvooas21RW1JcG
- 27nXvUW7/PS8suw4BL2TXjbnpdlxnOLWaQCKMj30dZ1gu+PX2yOGh00DD3oevHzFNuX5qROWLOkK
- XeVuGfS2j5WviyfM4kKp3TAnjrGD3ec2sS2KJe6AB3vZ4iHSHM9iRA27ViUHyuUOoXnBmXK2ULuL
- G9wkBG7I/6q9w04X/4RiN12VTSPJmKMWHkPCJYBhWdsLxKtNnW73GMmDm5Pzqo6QA9A7OUIO8JYd
- IYcUtw7cIHIfFkpO1+twE/j9AF5h/Sfm+ywe1rsYjwHVruUCbZZpYDOYgooXIdqarmMFPPMjcuyE
- o4jXvNSwzw0mzwKn3/Kjp+S9VjYCko6AdF9V80YFefCg4sUxuZTADQUANSVjZ/2tqj+MRpYVPTlu
- aqG7la5vJRdexT04ZbNTp59pVXvyqapOtSefdtKo9uRTWZ9aILd1A1Oc9Z3oNq6e4/b26H4STudt
- 6xRNM3NHzWgYuCoqbV9GU7N5y6rkgJkl7a9SUP6xMwLDsJ/yuY1xuQR3YTe7zQraQcFvXOuSUCbg
- b2FEDpve7WwXbXcMrm2LwZVNz5P8N4O/ksE/B0HkO6P6RzYYhNiDFltTyrauL3jqhe0rtsHjKXqS
- oifnr+5GDcwuyKwp6VwnvvSDLkydA2anO2N2C5jdqrYVrQX/N1eYffHUiVcwuwrafKuG/M+V2fE/
- 78aM/7nUiv8ZjXgP1kQI4yLnE9/tuWM8o8kHihj56wQmMp6S23ASPReJ/wlu9YPoqztvQU2BPHW+
- wbZ64ISeHjfBN9fSetblttOYMzeDXdh5+gps+0HguQE5d3znYSPHnVJhZ1qR4S76HQYu2mMTJtNU
- zuP8CPiCs+K2GZKXddxSWylfXWxV9woml42mvM39tauTqrpUAeSdbJuflPWoQnJbV8wZw7IgJ57T
- h/H5bLPittMgjOI6P6+9ftgA9W5Yei4xllJJN/Rl5gZ2581oko7TMy0uy7UD1seWcwANuPwjkU1b
- oRhAxNPoORJy+JpYvEqF50AqQn88oUHwlHC7zbQkU92VN159K3lNs3TbTOtXTYPibhulhrxcmf6y
- DTalqdtNulm1S7n+bn86qaoLJYLeybFwgLfsWDikuNWePICGdggetLhWVXr6QO7k96iOETQsebHh
- tedyYCXTsiTNWg7EpUmsui4R27ZJB1Rv30kzZO5wk2/yiOzdpuTO6BD1iM5HmUO6Gi18QdtZ2jBE
- 8TdZMoQ5rhlhhZfF/eVNSRU0sKie4wW9J7fH8Zas6mbSeVJTTVOzk7az5sIGXNh/eGm3KaWpActv
- c7vtc/uuqrNiEPQuWB7xlrA8p7j12Xlkfcw1D9c8LsoP3Lh+wkLsMJmky3wMgd0tOW+jA+9Lhras
- yjHovoyvRrEOimCz+Oz893M2CkK0KE6fpthBnijgsfNaduebRO7aBA1DfngUjoUkY0kTbD6GywH4
- TaWA0tBEZ0yIC95SejeMwSu2pO+qZwUzwaKvtujVVGiWNZd8TPvOFZ0c9+K+cwo671utcvvS6Z5V
- dWwch70LWcARlwiDhOjW7RBtbD8mnSEyCekGjp8eBJ368sewep6RERmQ+sw3qMObrHcnMZa1+tG+
- SjXbyu/R6bYloRRYFBe2TDHJ/dcJi0EIpAk46S49Vr2cu74P/gi47FHaf1aTlbqqYPnLjJC5fwJj
- ILMxLJCwmYCwG5pgt93SgYpi4TGjsfhJYRTfksWV9tXbCYLE2m16/ZZiqWayUa8oIA0tnloLHLAV
- r582dWvTSphy1+Dz+dVFVXYCgN6JnQB4y+wEpLj1GVxw1xmBX+37WfZdEDqY8fxc5yonHAX9af0w
- 6Uqd9abkGbaWLmtGLndelzTTXsnVoTL3C7ylQD6VtdoBP5TCSytjYeXw0+8QH0nwzRpQvi7vloJz
- IEqiFde/cXKKn9KEjgGVDHtXmbeVOwY2lalsLUcCdHuZ3V8WCaBNzWwq2zQGLn6+OaqqCS2A3kkT
- WsBb1oQWKW51v+FR7X3ws7klvk7k/iR0pvWu8xQysO4xFccwZFuZJ+JhmoqtFLa9KMLGj5Xk0ubK
- c35zMqbXYOEsB/cptfdaiJ5k6JfycDbmdSo8OVoRHPWcULehdgcBQY3ih6p3ACqvhhfx+vIW/Yt5
- Xd9u1K/7paruFgB5F5wOaEsYHcl9CZ8fh04+DUfWLGrOjXlqUkmVl3tQbofJ6/j7XosPoDAXZ0M+
- lxsCRVvaZD4hsPg5YVtpKotr7qpn9cq72wCrG1RZaSxNle00lqa8OG6zfLtn2lIedKuqoDno7qSA
- 5qBbVj8D5LY6917qy7ejKACfOGYRuQqDMQtjd60D5Q6CJ+ZjRfsvQeiCjgcLXjN1Q7PyGTqWunxy
- LHI/Ip/jqimyKpNTZ5S0tLryeuTAe8R0HLitE4cSj/slrS2cOHb8IHgA6XB7QWAicZOPj4RkIyHd
- 19j2itEQ5c+b4n0+TmjxU7Y46m8bkm7uyrqvPivP0kw1PXFqwZvfTlYexT38rWblXRx1qqqkQ9A7
- Me8Bb5l5jxS3eD8ZhjkzK9WySVh+/7y//2zXG2Bln32dZd+396lqKKo+b3RHsYOUvRzXUxV9zvpp
- WO/zEPU+GAEAPVX4hszb2CRIZgn27aVOVwebJuWBdS/KrxOfAp8SsqF5r6mSbe8qY+cedH5BEe0W
- mV1XbMVMmlomH9MqO0NcZSdrmi4rmiqbLxUA8P+Nzpp75kjpdvenqqrsEPROdvoBb9lOP1Lcantf
- gQPntS/TtXb/boZBEI+w4s5j34DbVWD2hSOlgU1suUj9C/DVdKzDA9fd5+y/dNCkItdAIvgBKP4v
- xMSFs9fKhkBwCK8ptilx8hVJE9TTzEgUPCl09DUbREFxkW71er8Per9frflvg4efpu6Zsm1ySaDI
- W93pk5uK3dQ3O13mmcZ3naqyfADyTtredcpyfJDc1jU627iJtx7Dx87Qq59PwtCZ7qfvdt4Pw5Ql
- s6BwHhPyT8Es/w3U+0+gvLGLLel2OzXNlDmPo9InN8S6HZJjj9ys5OpSg9cODD2SYH51Ir7SELSi
- /8Ewi5kypa3wmti6lzRBwn/1PF59Ub2gh7VhlnS6ggWja9ZL2V3btLz23z2sF9n4dT2sDyd+D3T9
- ScgegnBav+kFcYwnymKIZy4EUFnSgpKcV7eyTtCTFD3h6F+h8MVtbsVOfkKcwOoXigEVzP5/4V72
- imJpupb6+PgxSetR9C0re3nTDvbP1OR0DqoK7yPonVTlAN6yshykuHXQu581wlojwud4HmbnpedM
- 4YFytm7nwvuaLIEbt9K8WqtTKnO93qkdONMAT5XiKfkyltZlUNNjpV4Ts7caomPfRKl06ZA3U+W2
- ZMq7ysevfBOeHzqSeu4L9rq8XRaW9aa+zSL526uqgvYAeRcMDGhL+BfJbd2yb04EVnPPHbg97Avf
- X6fQptxuN0xJtlfTbKq12zfkc0mTDaHGFnB6SthmnK5YElV3pa1tYHW72iCdQamVHAopK1TX5TQJ
- V906q2vb3J+7+uvRcVXnxnHYOymwQ8RlJXac6NYVi8MgZr+SI5+F63WlxRMqQOfW2348DPwpHhyX
- vO254lZkScPYla0sKe+aREhyxgXW86UQlg6F2yxDVm4ooly5ksL3+QA3Y2BNUgUn1PyLWNuGkoTW
- wJBRDayKVeBfbSs767KNnWzQ0tka5152PlVlZyPoXfAt4i1hW05x67I3GQ+BscjVcO0z288dfxIF
- aRnNDT/uUTVUY97wQqGSbhY1vCjEVlNNbI+B4fR+duDrvGIWw+nYzsr1H9D35jW1Ejk/I5qlqjpu
- teFg0jqam9edCtkQaOGSxhcJqZv62rZk76yNXeUhNxXN9CTgZluKnapueZuqGwSAom73xNej86qs
- dIC8C/YHtCXcj+S2sP0EC30wzZ+LqbkRKtr6ccjgqwuEYB188nrnmbK2pK2oaUM2Eisc3mG/NmtW
- Wet47JHhb0lDWo3iLlmKhszQvK4SXpEbotxWcU1cQoWAoYXKnEqWwFevnKFFTS62x9CWTTVLWWlx
- oW6ljw2ystzUNyuKLWfl425VrAyQd3I+e7eMlZHc1vHE88ANhkfJNYuCMF4nMe7Y8R9YWO+yJzeq
- t7HFtIrtyeZNaEFP0eVjXVGPr2LLymJtSybHLIrdR8dLsmMXG2AYllzrOhG5Yw8OpszcEVhdqMeT
- sRA+FtJeZPsb3qj2+FIityFzokm4UZcbQ9ibuqQ0NiFd5A4IG2KYkiqwBqpX7BoIAq3a/XJL1yjv
- Z5V8TDS7TYWZM6ptWppFNZ0qL5QNmDyzzUK4i4uD66pS5wD0TlLnAG9Z6hxS3Lrw15IHoevUPwZO
- UL/bp6asWnQef9NNyTSXhQEeEEXaYR87z/3EQCjwnrMduOgFcYzR9A5RLMU0kcEBOEHg5O41Sr0h
- KGX5wRSexZwMfVNmVjCb/v9Yr4stNpu2bNVU00MfbcNUMjvdKuNmXVct3bZfys3YzGqjPLhnuPn2
- 03VVZa0IeifBdcBbFl1HilvUwmNXH0LGSMcZu3Hax6pB9v3pcwmwnwNvwOqHju8yr36wn778ecTN
- 5hvLS3xuZmc5gvsdPGXd6tKyl4PaeeDHPc9xs45WssY7UwIikiAiByvZMBtpcFGme0lgzhZvkIsN
- eZVK8s5Oc3bAkHeq5XlZ1nRz1ZLfSqI78rfS1DZLdFdK+fvw5KzTrojBOexdcDhHXMLiCdGtw8AH
- G9lL+sOuobzT++vnk3gC/5z5YCfzPfFOsI8txO1cxzodWzODulxua0WprachOK7IrxqXDXIQfCOq
- rNTOQYEn2S5YtW7qeIRMNsgEKZkhXQ4pbNjSSm8I6kt/UFSJCjLa51RtFolXDUVS5V1lwFVf3WKq
- lqzQJBaPR8LxhjaqZdtbO1RCtpoYkt/qoe3nV1V1s0HQuzkG7qqslw2nGI+BGzvRC9LebnrDCYt/
- q98Og5ET8QOjdJtqxjwJRgfOoZJlLh/yyOvchGhrYGqcTLAr9U3cmHnxMq0dBBE/BvK8TWB5oQuf
- DoEkQ1g+UWrT3FdTIAGoJal6sQSYUbjhVhz4+squDP3qz3oFyW8bdPl0d6oa2+N/EytclG0eFnd9
- XlmpK4LeSZr7eWmxK6e4dT0Z3XsM+WqdVFf3W+DXD5k/csL0EHfNoFauox3VVMm0irbiFhHxrlWf