summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--_drafts/building-an-epaper-badge.md159
-rw-r--r--_posts/2025-08-10-building-an-epaper-badge.md1216
2 files changed, 1216 insertions, 159 deletions
diff --git a/_drafts/building-an-epaper-badge.md b/_drafts/building-an-epaper-badge.md
deleted file mode 100644
index 8d7c245..0000000
--- a/_drafts/building-an-epaper-badge.md
+++ /dev/null
@@ -1,159 +0,0 @@
----
-layout: post
-title: Building an ePaper badge
-date: 2025-08-06 19:53 +0200
-lang: en
-categories: tech
----
-
-## Foreword
-
-Two weeks before [{% post_url 2025-07-30-awoostria-con-report %}](Awoostria):
-
-> Hey, I should build something for my Tinkering Projects Show And Tell panel!
-
-So it begins… The story how I built myself an ePaper badge.
-
-Actually, the story begins way earlier, when I still had a physical Raspberry
-Pi running stuff in my home network. I wanted to tinker around a bit and bought
-myself a Waveshare ePaper. These are simple black-and-white displays which
-maintain their content when the power goes off They are also inside eBook
-readers.
-
-Some years ago I wanted to build myself an electronic doorsign for the EAST
-convention with these, and I wanted to go "as minimal as possible". I wanted to
-use one of the MSP430 controllers I had laying around, and I wanted to switch
-motives via MiFare RFID transponders (using an MFRC5xx reader). Work on that
-development never really took off.
-
-## Requirements
-
-So this time, I simply said "fuck it", and threw an ESP32 on the problem.
-Also, I decided to use [PlatformIO](https://platformio.org/), a
-toolchain/SDK/library manager. I started with the Arduino framework, which is…
-pretty wasteful in terms of resources (Flash/RAM/…), but speeds up development
-significantly.
-
-I had a simple ESP32 devboard, and one of the Waveshare modules, and started
-coding.
-
-…
-
-But wait, what to I even want to achieve? Well, I wanted to "mood badge", i.e.
-show my current mood with funny pictures. I couldn't get one on previous
-conventions, so I was just gonna build one myself.
-
-This involves several sub-problems:
-
-* [Control the ePaper display](#control)
-* [Get the pictures on the display](#pic)
-* [Set what is displayed](#setdisp)
-* [Power-saving](#powersave)
-* [Attach the badge to myself](#attach)
-
-<span id="control"></span>
-## Control the display
-
-Usually, you never talk to the displays themselves, but to a display
-controller. Usually, you talk to these via a digital interface, e.g.
-SPI. There are different display controllers with different command sets.
-
-But why bother with implementing this myself? There are ready-made libraries.
-For myself, I decided to use [GxEPD2](https://github.com/ZinggJM/GxEPD2).
-They support *some* Waveshare displays. The problem with Waveshare displays is,
-they don't disclose which display controller they use. So it's kind of an
-trial-or-error procedure. Or rather, you can look at their example code,
-figure out which commands they are using, and compare what commands
-GxEPD2 uses. That's a but cumbersome.
-
-<span id="pic"></span>
-## Get the picture on the display
-
-You can't just simply throw a jpeg onto the display. a) The display doesn't
-understand that. It only understands pixel data. (the library doesn't,
-either). b) The display can only draw black and white pixels.
-
-So, you definitely can't throw a color picture on the display, not a monochrome
-one. There are displays which support a few gray-levels, though.
-
-So. What to? The solution is "dithering". I.e. you trick your eye into
-perceiving grey by having clusters of black and white pixels. There is some
-background to dithering, but I simply used either GIMP, the Floyd-something
-algorithm, or one of the "ordered" modes of ImageMagick.
-
-This, then, looks like this:
-
-<img
- src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/wAALCACAALQBAREA/8QAGgABAAMBAQEAAAAAAAAAAAAAAAYHCAUECf/EAC4QAAICAgEEAwACAQQCAwEAAAMEAgUBBgcAEhMUCBEVFiMiFyEkMQklJzIzQf/aAAgBAQAAPwD6p9OnTp06dOnTp06im9cscWcX+j/qZyXqmpfp+X0v3blZD2vH2+Txeace/t8kO7t+/rvj9/8AeOvXpXIWg8lVRb3jneNf2qtAxJQrlJZheAM8YxlIUiBlKOJ4jOEsxzn7+pxz/wD3HUg6dOnTp06dOnTp06x/8tvn5T/Hbe4aFrilVe2tZX4sLtRh9APh7wnaCCMyPCLE0woFHmHrk7f0EixySfiSdtXir5m/GXmCi1y21jmTVFH9m8QlKC0uFVLiDRJ+PCs1Jk8nm8n+GMRxKM8/WRynGUZS63LPyh4O4W1Wg3Ld9/qh1m0/RaYqzYS/oK4HgxWgf54wUIwZ8ucwzKU+4YxRKYwAlp+x+aNq1avm1esUJWkXUPTLsVcjnZOSVd3rFKq2WOYdrBcDZWGxk2XUchAbzVWL6tRctcsbJtU8Ue4Wrw9u/PBWWrV+tVrrWpiVpTRWVWfZguEc5V4hmYEwmcDy0g4fIxmGzzUfzR2bWNei+rWN8kPeu21+cKrXq2WjlVSKouoYDbISQ9tqQBxxGeSLs18oHaKxWTvbqb+VvC9HqU913PaVNdrRrwblIrylhnAM1yj0i5zXGZjGGIvKhxKWcYIY60BeT21JMVUX548L7qtsma3n/SuPKumpxlOxYNKWFyU8iy9nKIhGIuSYILNhHiOG8mPMR4hmrhbNlkpGk5T+dl7uO8cFUdrWahaa+lrIT7Jas2EhBDC1rhwI1m3lMTnYyBtjGA4LhZhvEoswZmO9uva9A5g+Fu1Lc3/6iVVnRm+w7TYMr2AKs9fEjpxpHARxjKpvO55MWH/IOxPBM9hHykXv96VNtVX9Ule0VmpY1tiuNtNxQ0TAZASOJDKMkc5jOEo5xLEsZzjOM4zjr19OnTp06dOnTp06+VdeWu+RHyV5DV5aHqnJvHu3bBW6/RXC1u0RHKK14fA8gzB9ca7iw2xJ5lAQo5i6MoynJYhXvurH4XcwcA/I7XeV6fav0awu4AZPkjFhXI39wzNvIiOnlbMmF9ZtMJCOfMsljByEwMmKBe5tW15W44vdVPWcobR+wPmGwFSWeYJ4BaWwxDqmZVasa+69iKcVnbTC4l4kGxBgMoZfI4El76+UeXt+1n4/PE4w3NSw2ewXr81SoHzWVrN2FLTHVYVkO5dgSGWCBFMBjYGzOzX+sWBDDHdVpwvb73yHux0d/u/zLOjsK53Xd7rrQJWrNFlxFNNTOLCzniJkQP5zHIsuRPGyGXyPBtCx2Lq6lqO98mUV3p3MW/VQFNs8VNC91rcwnsrzXXZ0kFEXIGtp4F6wLkeR+MjmSmNKcpMxdLDYJtSFHyTptXrjXMOwGRtWIou5csUpzdAxnW1pLTXbujiYWjl6OQyyI+GYSBKc7ITxP5DVVH8Iicz8q2l1pHICh+PrdgS+031cZ1RmyPGpbE0ccB2c8lmwK6HlVloJcsLxIwebUDSNe/RSzttZ4x02DlzZtgqKZcCkCsmYsGzZ+4BCLEpZIw2yWchjhH+wxizjHHeSeMZzrsHJqe6/Fjk7dXq+12wjnpgjU1LQEzPWBa6tgNZcJ33l8hOySOYL4wQDgj4wNezG1A1hf/E7n6HFmmv+97vs6/XG9n2vZ83csPPf5vab8vd9/ff7THd9/fmN9+SUr6dOnTp06dOnTp1gD4u8h+H48CTqOQfY2R7mC0JV1+dh8gbb6txZkFtuNq+RVORG15TNFjHeVhaPitMuRhbX/wA4bQnsdwzpiq9U8RX7pWKa22AC6NsQz+vTwBgYrMc4hJCwgCcTJsE7T5xgJRsDUtK1Fyra7vs3H2xIcmN10LPaFMWqa45RBaYyvr8Zr+OOwygktJg8DiPCMwmxMIhZahZD/ckHHW78jsOB1LZ+Q6rerXZdwNaAsdShkipa0R6V1Qg8CucTSThVs/2YkPAZyIPBMNzOL9qv+P8AhL5cT4sknwtyvVavVXFgTaVGLq1Pde8ZtZl4R12RMsyGGTzCkiwkwcROycZRcgJhm/pXkLnH5NfCzker0TmjbrXfEB1/v1ts8RpBW+Vr8mZJ4nP1xDi5MaFKsURAFl3GZ7QMyYLK50Vqe/7NbcXz1/VOTW3LK2YVki9a266rsHYk1wQICOW4ZlFbEnsxhPwODZGVcxI2nsQneSDj3mu9hqq0tLvaqzbd9EAV9gsYR9lqI9bUxHB2b1owwly+TMTCgxEnsgZHh2RV53MKuOauROcKrXNJ2W01+r1zbLgNQ8anmpk7YpRQhLzAM0YXrTy+uWGJymqxlwAcTsF/TFs1lbfxtcUdjxVwXrl5VDodmsHLXfkWk33g366qovbhCE3iMLBZYnAh/LkgDFPL2zlK1Jaz0r06dOnTp06dOnTp1j/nH4y8j8dcp5+THxDrvNdXNgmXf+PoW+alHbhjZiWLQz4nCC7kJ/cp5lnxmjIvfEmCMAcitHu1Pc7s9Zcj5tbC6U19HYo77QtoRaI9YuKeitVJgtGhf+sUsFxYVgN2TUbM2MRni17Lm1dPDRcqcet8cbTdfyml2evr17GiR2Of6jqs6yg8rI24XzM4Jig3IjQ4lzI8G4Zx7GS+ey9fGt9a7Dr1dV026qWTBmNfenXCtZOWLABK64UzIjR2E+cLDEckjx8s8F9wU8wdwTM7R8ieTGVKrcM45h1/jir0FfFiVgtuLD9q2CKZ5QzEPmKqsPDyUMRkAxTMNLYIqZX6WtMP8Bb5Y/J/UP8ARz5B2VryNxxtfp11Xd20VU7ivtBunQBYhYy+zhdwYJVODAnAcJ5cH3ZKw6GN7dfANA5pdSxwNvPI9VyJVSsMvlvpX52FdnVubynN/aI1wNcvlXbDIgoxLKUrGcZgnBoOdg6tlm9qb1ZHVOXv1LW0/Or6faqzYYSJeEzCmKsq0Qlgz61cH3xkVOYRyEI5GBhuTdmPZpVxZyK5sldQuvbL4CSsE04i/k5yeYY2tWCMn9+w95PNAsZ/eIHGT3P6yPjaga+uDhW13LkllLly42JvNOenjXpVuavCKjE5iTIWwXwF9mBoSYg2OJSZLCQoAyoTw5I3ZXB06dOnTp06dOnTp06xBx9s2g866RybpfIXPOlbnZbpcO61buaXZhq7VmqLZrI1ZVJFspSCitJs48rzF2MzYl44O+eR7Xq6Vy9aq6bT0tNubexvXtwlhDN0/IMyuizr8hLkbFcnKsjnDJBRP2HGzBhWec2ZWwSvrV4C3Vmxer6COyKWS71ON+eJWYnzymKo1/MZQJm7fLiGcOznLtjOE8mGSZc5INqy5Ws7bxf8mOL/AMsW3KbrW7quVDb6CmuyKuldASuUekvIdpmKiK8ZdzC65TDONocxkP7GMuVpuVjpPIHHuy8H8WhtXFL7X/f/AIPru9ptbJfNWNYI3nYc9pkNZXRwYZjtEJmL7hZyl54sdlvCuNeZLW5sKCid5EUtOSqxhcYxq5khC2pDWik6JO2fxaGLNbGCsxi3LDEpzILECWArEMNjtXRuZlmqrV6YO0tmXvrinWxMpykPllaOtxznJp7AUoliYOb6nmU12stLZxl7Li2buigbo4pvdBu9deWu0t135DADWZT4McgggxFaJF2GzTDjLuACIIzBDCfHKPuStMQ3HWvw8PVG40svxrpuzXzcexMrOY4ng7CKjBvrEXW8ZhIpiEgbv+2YEi1kj2WM2b169OnTp06dOnTp06dV/wAnXTgLjV9Yrbb7bubBcsKpRU83jjWfSMdryibXwBMIMGibJO4c5MrjzE0pxScyVy5o2g7tdVRKy919u9s7jJUXNcOFWou3Xa+rhnLMM2jQhImzf2J44OoUeTWeMSC3J/K9/NeI6jVdcrkbut32qla2VhTebH7A4PWIW2tfdz/mtfyEYIjWRsf2SMUsrXvz783WC3VgaHxRqHKOk7A7ZWlrYBv69bXl9kWYdgO6rQJpxwcY3nXYup5aCzMXtQkEw2GvuDQXWGX8a0dDVcZ86Wnx85H2PX9g2yFwJmrVdt4zrtjPbWTZxVrMm7E760MpsuZNkmC5/wCWQURH91gezXBUbpqtVqtafVNrtdX/AHbBH9Cw1yqG3bOmXHUEz3ZJbOMTDJi0ecH24KJ1pxeX/sf0YQ2CtQkW1Na75IV2DdeQ4X1OqhnXrC/LZT2ma5VXJ0p1y2rEhIzlcSEsfE2IMwOkKHtwajjZ7V0oo91Wp43PMOwX1FZMJIv0d1YpZUsQTLr4SrEEW6mU6xMWI4Rl3GwwKCs8Tdi+eex0pqyWs8ZcocechVHITc62+2hXDI7S0YsrKyPAZbJtevThbGNGeTXhphOMh8uLHyMeW/cj/J9a/F29/kW32mxr7bVMqWmv1VfFVw/nuHDV6SeSnHIjzhsJjy/iffJgwj5sAsBxiJZWNxpXp06dOnTp06dOnTqv+X6jkexrqx3j2x7iVlgq4WnjLK36xItA7BnciaE104Q88zYHAhJdo/62RwKg7gD5V/NPavjPzsnx/ebRa7G/R2C+yXc0jEAvcBYTGXFXgALTMa0I2kk/H3hyXIGJ5KNiOWpXcUv/APyjcp7X+bQ8OaZVWeybRYBuAKWDDMPd9X7FEIRL3OSJGISrGWNbju9r9HIPGbOMMWn0q0wv6/DWjueO1uvYr6BnyVlv9GJ/ktP2JM++bzBj/wDqXHuNeYUSQ72/J9FyByRRbVsRV7/Q+Qf5ntPDVetslIzrHkJe7knKt+4gXNiwmE4U8WsiCI3h9rxWAomVZg1kl51bCt0m/seKYWLv8mbt7BFPYnbm5Tsv0FTK1eQr58dqfEU4AuMqwgUkpE90vc07KzmrsVgcdWvZRUzTvMX6jcrCl8S7myeRpkLU9YL/AF5DsEwzCHDAw/5yKUkXA5/58mTEuc/23yF5H4pp9IWtdjtd62l3YGW1a6m2DMQ29fNBKxqa7Bc3TGGTSAuqCY1/KfysinOTsHe3Y5AhbM7NzDxbvmsb/r9pUEuKCtebFeCtDlmqimA4MGFdMTXnBmzHDJCNkhPLTK8YzI9OGz6K+GWvenxw9tbdP429hsJGDZkj3EsUcY8g5xNlg+TByc7hIzxOUSEOc2DWMjTtrDQHTp06dOnTp06dOnXkqR2oapIN66o5ZQXHFxhRaSwDHxHHkmMUiEkOGZfecQySeY4zjGZS+vvNf7bpmm8va9niLm2rUsHCrzn9BZzWztYQVCJ12vgBqba62ffmoSMiYn2HIGeSCNiRs6/FvhHhrin5WciavXbJ+tv1ZXqX9uOwakeTbDuCT/RWiSzZNAwstvrkm0LB4rOpRwSXmYZsdq9Z/wCRaKu3ii12kFyD+43yTXwGeNF7TitmuSdVluzVVLYSRBXDWWlmUWIsgzJ2EM4Zk2VSxr/aeQ9qPvdWWo5Bqrf27CtJVnpdhICr2F4gdflILAo2pvzq6fmXKI0YSlKbcBeI3sxBsXrr1NN3zXqHG4bPr99CDFGENTaXWXptQcV1oBzDxPYmAyhILpAExKZJlha9sYuwbL+xX+/7/vw9SBjS+TW6qyLToy159C3NdZatZ11BKMHVR3D0sLRkZY0JjyebJmIA7WvbiHZIrrNza6vrP69FvLY7KxYKRO2o4yA/anmxXNDRbXjZWEvWDKwwQDuIOZfYc8mBvfp+LZ9qa1c2up6brV07vOv7RrJ16mtSbQjKM3ct5r1VmovPWRcHhIs2S/5TKY0GF4QkUw85bsvp06dOnTp06dOnTryVI7UNUkG9dUcsoLji4wotJYBj4jjyTGKRCSHDMvvOIZJPMcZxjMpfX3mPmo6Ld9Vcd1ncrUam0+tcJXdNdTL45YGHK7CcpSIHAc4CGfhxCSxu4nlGWJjYJWvDQ+BuSNe1y7qtp1/Z9syvWusPJ7P+hYgdqlQCmOBxvtlHAOHuwwYNGHL9M+CzP7xpnsqxBY0LlRZW3JnqUq9gxhqD66oyWDDp8CQS8/bGEAjmxgQ4QH5ykipjJs5waLNFUG98d/oU1To+7KXNk4vQD2C9yZuE7CalpUqqQXbethnktMbRTxXgRuBYWYGJ5P8AoiHbVVttDVWnIlayfY9f3ddxeiqajvt4tV2wHgpWDkNwprFlpVE4LeX0ckzZJ+hkOAly+YO0TXS+U66w/h/ZttqX9SwrawXfZNS7zD/i/fIndsRfoJPsnYefkEf3BeObn6Av3fLx3ywTfqqhNxdsLe3WTLGa5RcV47MBHa2Ou+5hoor9qQFoSA1gjUxnHLBvuPue4PF7b/BfC+1a6nXbVy9u1rtmwL/bVSpYwIMev+UGBZhgU3XcTcgD6Vkzhgn2OJMxlkrTzDs23Oj5Ls1nc69e6/OAWAvVyB13kplmAqZhgM8uz3RhOQHYTlgE4Zg0HEwmgAom+/qexp7hqtNttdDsUu69exBH2AMdozDiSOPKuQgSf7Sx/mIkxy/7jOUc4lnrdOnTp06dOnTp06dOs1crcV8hbonqHJfD211Vy3eel/MmKq5s6wez1cgD9f0XF7D7r04HjFiPikaYxnbIL2JGaUsuU5xTyPcUVXS3/Gtrtv51euxiW4XuTjbsjzrRsrTFC0JFNMaPspyJn3zFHizyX2vKSN5Na9f5JbBVYObT9fo3JsJWNkK02R8eX3QxAaOVYpnPGuWlFUKxlcEMPzNuEz7Ylvu38mw/HXlPe/0P51z33hue4NjW09IyvVmXl6sZQwm2+0P/ADGCffCfeCc8C+w5CWzXtOrUfDzgmtcbsrGgtb1t77gedveOMjIHznLgcgZJgM/vDbYiEkPJWRuO4amxJ1yR5tnmLQXWadDVL5Ta3rxgQlFaBoLk8AkJc5GySjPEBrCWbWPIs5YxmDC0R+QrK4y9WhtdmvGQvu6+3rqI18xPXWglytmOQSxYTGZVoooQFmbICQlGWZlh3QlgUIzPyuUOTVuO6rEUKZvYNjdXZPV0aQykOzAEcSOeeAjKWCwsThkhICJP7IIQhmYMuubq8e4WxoGtYT2RTYV8U6WBW6jBTgsYeGHayMpjnKSBMfU8SIc084ljMiEznM8yDp06dOnTp06dOnTqFcwqVVjpGai9Eoets7imrnFmyRiBoB7NYRFyYkyvEkCxnkeRZnPBMTyPIGu/1Td+Af4tRIVtTW2tqNP068cJO+y14czgLJynbLiZfHDOSknMkizjCecYITOIy8tDyFoO1MhT1feNfuGGF8thEhZhYmQGBLGyWMYSznMPE8kTux/t2Nry/wCiwzKQdcmxrr1u9qHUtj9GqR9gjyI04TJYElDEAxkaec+MMO4k5RhDBJkiD+2EIFEflbDxjqG1/oD2MNq+pa90XkDXbuUWBy9XvDNXzeGQZYSFGQuzxyiRqMo5i0zgsr6p/mD5N6DxItsw22VG3tWp52th57EKiimfKoOAjFnnJcz+nlyzGsFg0BED/VIraIWsa1PzCsY6htvL9iz7DddYM2zZkWVcE2D8h0Yw1RXV7CYUa6OJkIIYCk/sfWgaLkmwy2a9fhXz2tykzCq1zc29n15ynlbDsbfy4sctiFXgMn2HePIUFZSlDMY+Us/KIrM8SKCwu9a9OnTp06dOnTp06dZV+RHLl7ecjq8IU1PVM1ULBJS2Tsn4CVvSGytnCLRYSz4E8+4qMo5f2TkyLBREgZGu2D1cFc63WFqmmudiUvte9dZNNxx2vDbmbMWnF2T8toSRFgyth+E/cyVwJgZwU8sqN3V1vb/xHsy1np+w7Dr5oMsM0FjS3WYBmeflAqRcirGIynAkn0ox+45gWDysod8GBZnH6h3gmX5v5XLvt93o+l/8iuMex9/kev8A/ZuXm8nfT/8Afd5f0f8ALv8A0Tex6s818JaZr1OqvyOpZp+uJZDKbx71tiGFVyizKYsmOaZRtoYhOeZTOV9KEckK2CJeVefJLXllqvOtUDdnPaWCp6q2y6qlXXE8FUANnBpEkYaJDOxhBvwSgTsjgODTbroO0/r3yJLyo5qVzX8v+eqs9gr6uaNMlWhVLYJHq4NjKYNuRgQZsWDEc580gFkKuEPLMDiFfeXStb15zTaema5TUbrXLhI1jr57VU0NgWts6+VkJhxvCgKtglhHvzmUmGJthzOVj7jUrytJbRRRsdPq9cX1TCm+2CmvkSstgmn/AC1rKteyzXvCnZuZImQ7BWcH7ixZ/SZNHLsW8C2mQa7SLafr3H2NM3pS7sh7xi8SrrfaCkmy3bq1rpSe0G0fguthix8GS5nEsoWYoxnZe2RfYdgcXcj1W9abqlqxcKSt9gp82MQZDFSbeA5ENphcHmNia2ClH2lEZgMoGBIZzDKMpJVU21Vf1SV7RWaljW2K4203FDRMBkBI4kMoyRzmM4SjnEsSxnOM4zjOOvX06dOnTp06dOnXzg+P211V3yNHkYnLLbGw7ZtGEbEWsiirr7IBbAIwVpRFbZAKcSWTWDyFKWCHkr/m3GzhnZZBS63t+dqa3XWuZ7Wd1e6/rlekzPd0v+WQZKoi6pIStG4CCKd8HMD4w6Q3cLBRuYMbGzbf49vmdq0DWtocZUYYuKdJ8plMCwAkyhhOUh4CwwLszmWc48bB4fWcdpSY+pykHWaubtuT2blOn49uWvW1+FgCidSHZgZDfEOzUkYUsVIuiwun4HV8RkaOSGKWIMxyJoKV5X+nbZe11Fr13tHKVqf82wBaHDXbHC2JZV8561ldbIxXUyn/AKXQSiIAzHmSYx5LZe0Sew+vi2+2al2H8tLddfhol2vqTyVctarybjdyapS2LOTY2EpcwbxbrSnGJTxYKWU5wZmxGd56tc1jkeg3auvLj5Jfr6Yx/GS6ytG3zgmxxI5WjcaFMltny12PYrgjzkkmZkjCM4t5Zbzerfeq7V7HVi/6tWtsgnYV/wDfrjzVoG7DBXWpf5C/cYZ8JYm8o/8ADymKdcX/ACpP+C/6zGw0Wp6rret8W8iVRW5bBWF9NS4mRPbbIo6k/te3+iwatrjZeGQ2SSkZhpxecovyc9a3mvDnKY91ZjtNTsrdqxcLqBs9bkRLEyujFW4Ytq4crA2VURieFIwsEMM0MrMqZJhiJ7K6qkdqGqSDeuqOWUFxxcYUWksAx8Rx5JjFIhJDhmX3nEMknmOM4xmUvr7z6+nTp06dOnTp06+VbvIfMtTXbXuWm7J97nc+9YJZ1lCKoXDEay4gCKg2piP/AHOpyxCJyCOV2E4ZZxZwxuF/vbHe3BeO66j5rtaH9KwrQMmrrCFmRsZa3XcQjkhNiaEv9GaCxExYHGUkhgzhv9HELy6viHul7uXDS38nvP2bOnsGkJv+WE/MrKWGUf8AfDDBJdqTKsPKUxpH7PYgdwJgusXX1iDSnKrRFqc2q2ylpsezMJYXNO4iGDxzF1+xEu40leHwNby2LWMHKNjM52Gcyy+xY5zsFq1V9a7XuS46bdVNmYOwo9M9Bayio2CONVMZkC0dh+4LZEYhe3w5xgTGfuBcMZxc+Tg/nGi5r90lNt38iISwTadr6gk1DEaX/JAwZQ8bc68U1GRsSaVDOUSCZXliLA2gsWtgWms8wV9dSf8AuKrYG39gSa2kiA7Cv7RwaV8ZkAkspYAEYFuw6vm8ZfKZjtNLBEXYpzVb3HBXHG08875d/wAjHrVf+marq7R+hG29jFVEUYSPZzXCGTKJc5BgZJTG3kMIGIRmNhX/AMKt02r5J8Z2vMzO11RH7ncDwec/KIq8VFCxXPXp/SlsSSYRq+1D1CfUcyd8hBsxmc1lqChwtSMhprzZFGtnuV82TQoMFHBma4ll2TppmOWSy0ZSB9jHKUITPjMpSIWU59Wptqq/qkr2is1LGtsVxtpuKGiYDICRxIZRkjnMZwlHOJYljOcZxnGcdevp06dOnTp06dRTk7Xv5XqBNcJT/qqP2FaF9GUe8bCOXQe1AsPYXxMOQYLgkJTlGQ++MgtRzlYta8fcCbDUbMO52be9gZYqWBAZfiw0A+wLBXRKoCZc2DE8orMxb7RljBieZEwUhsMWB7aVE1Cw1PWaRB/kZRNeDFKO0bsm7SeXbEbFcAEFjGsslBA+F5h9eZDeYzcJFyfMmIN9bh3X1qDQKuS2/N7rizXA/wDuFsStgchMI4ikrkhTZit4oDwP+0k54/tKVg5TMFmvWNSfIrjvQPlHSfFjc7bYJXoKelGJ4W1N+C5uTlrsRhjBraeUoQEjAuV28kO1gzMY5nJnOLXWi9Q4jemsErH/AID/AJTvLMSOwSTXYuMMl5zNkawYjCTvDAXbMhcE+4S8uTQqh2viPjBkOn3nJOlVmz7FcZG0hC0gjB2/MJYjME0DMEkCZpMgYyuOUpZm7gsszIxIpLAqbaqv6pK9orNSxrbFcbabihomAyAkcSGUZI5zGcJRziWJYznGcZxnHUf5V07/AFA442PTYi8pLSvKEIpOeqMpsY7hwLPIjQyGU8RiSBAHFMeZwKE45TFPMH/ja5EWudI2nTWb1R1iO0X1ukSVyV07UJ2ZsM9mZPPilAeZqklkbcp/bwyFhLBwP2OvyDtc2q5guqRrYrmiwvJaUjkPmQ/FOBfJiMIRjg2JQyOWZ5mPOJQ7M4J6+qq4m+UPB3N+1X+m8Z7/AFV1Z6/9lIJZsJPaViTIZNA7JyzIMTwmLOZYjL/YZMRyFhYx7V6dOnTr/9k="
- alt="a dithered image of my fursona"
-/>
-
-
-TODO: XBM
-
-<span id="attach"></span>
-## How to attach the badge to myself
-
-This would be cumbersome. I had a Waveshare module/PiHat (to heavy), and a
-simple "ePaper sheet" - which would be too cumbersome to attach to the
-devboard. So, at this point, I decided to switch from the prototyping platform
-onto something better.
-
-Fortunately, Elecrow provides a
-[CrowPanel](https://www.elecrow.com/crowpanel-esp32-2-9-e-paper-hmi-display-with-128-296-resolution-black-white-color-driven-by-spi-interface.html),
-which is exactly what I need. It has a display, a built-in ESP32, a housing,
-and even some switches!
-
-I decided to glue magnets onto the housing, and attach the display
-via magnets on the inner side of my shirt - not ideal. I positioned the
-magnets in the (vertical) middle of the housing, so it wobbles and is not
-readable. Also, I accidentally washed the shirt after Awoostria with the magnets
-still sticking inside - and now there's a hole in it. :(
-
-<span id="setdisp"></span>
-## Set what is displayed
-
-In addition to these controls, which allow choosing the motive, I wanted
-something "more direct", so I added the
-[NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino) library. With a bit
-of coding, the available presets/motives could be read via BLE,
-and also one could be selected via another characteristic.
-
-Actually, the switch-selection was a but troublesome.
-Redrawing the whole display takes around 2 seconds - but that is
-not acceptable when navigating the presets one-by-one.
-By looking at the API, I found out you can select a "partial region".
-
-What I didn't mention yet, the text that shows the mood is drawn using
-the API - not integrated into the picture. So, I simply update a
-region in the vertical-center-right of the display with the mood text.
-The selection is confirmed my pressing the rotary switch.
-
-This is still not ideal. The first update must be a full-one,
-and I don't save the selected preset in NVS - I don't want to destroy
-the flash by hundreds/thousands of write cycles. I don't have a solution
-to this, yet. Maybe I'm gonna integrate an microSD card (there's a slot for that!).
-Gonna research a good wear-levelling file system for that. Probably not FAT. That doesn't
-need to be readable on the PC. (And even if, simple stuff can be written in FUSE).
-
-<span id="powersave"></span>
-## Power saving
-
-I first measured the current and was shocked. The whole thing
-draws around 80-100 mA. Not a big surprise, given that Arduino
-basically calls `loop()` over and over again.
-
-Using a bit of experimenting, and failing to cancel light sleep with
-an GPIO interrupt, I implemented power saving by using a timer-based
-light sleep (10 ms, gives good user response) and reducing the CPU frquency to
-TODO????? MHz.
-
-And lo and behold, my USB current measuring equipment (resolution 10mA) showed 0 mA. Success.
-
-Actually, reducing the CPU frequency was a requirement! If I didn't do that,
-the CPU would constantly crash when entering or exiting light sleep. No idea why!
-
-## Resources
-
-bla on dithering bla.
-
diff --git a/_posts/2025-08-10-building-an-epaper-badge.md b/_posts/2025-08-10-building-an-epaper-badge.md
new file mode 100644
index 0000000..4567787
--- /dev/null
+++ b/_posts/2025-08-10-building-an-epaper-badge.md
@@ -0,0 +1,1216 @@
+---
+layout: post
+title: Building an ePaper badge
+lang: en
+categories: tech
+date: 2025-08-10 18:30 +0200
+---
+## Foreword
+
+Two weeks before [Awoostria]({% post_url 2025-07-30-awoostria-con-report %}):
+
+> Hey, I should build something for my Tinkering Projects Show And Tell panel!
+
+So it begins… The story how I built myself an ePaper badge.
+
+Actually, the story begins way earlier (unrelated, when I still had a physical
+Raspberry Pi running stuff in my home network). I wanted to tinker around a bit
+and bought myself a Waveshare ePaper. These are simple black-and-white displays
+which maintain their content when the power switches off. They are also inside
+eBook readers.
+
+This was also when I wanted to build myself an electronic door sign for the
+EAST convention with these, and I wanted to go "as minimal as possible". I
+wanted to use one of the MSP430 controllers I had laying around, and I wanted
+to change motives via MiFare RFID transponders (using an MFRC5xx reader). Work
+on that development never really took off. (Ugh, too little flash for all the
+pictures, too much stuff to code myself!)
+
+## Requirements
+
+So this time, I simply said "fuck it", and threw an ESP32 on the problem.
+Also, I decided to use [PlatformIO](https://platformio.org/), a
+toolchain/SDK/library manager. I started with the Arduino framework, which is…
+pretty wasteful in terms of resources (Flash, RAM, CPU etc.), but speeds up
+development significantly.
+
+I had a simple ESP32 devboard, and one of the Waveshare modules, and started
+coding.
+
+…
+
+But wait, what do I even want to achieve? Well, I wanted to "mood badge", i.e.
+show my current mood with funny pictures. I couldn't get one on previous
+conventions, so I was just gonna build one myself.
+
+This involves several sub-problems:
+
+* [Control the ePaper display](#control)
+* [Get the pictures on the display](#pic)
+* [Set what is displayed](#setdisp)
+* [Power-saving](#powersave)
+* [Attach the badge to myself](#attach)
+
+<span id="control"></span>
+## Control the display
+
+Usually, you never talk to the displays themselves, but to a display
+controller. You talk to these via a digital interface, e.g. SPI. There are
+different display controllers with different command sets.
+
+But why bother with implementing this myself? There are ready-made libraries.
+For myself, I decided to use [GxEPD2](https://github.com/ZinggJM/GxEPD2). They
+support *some* Waveshare displays. The problem with Waveshare displays is, they
+don't disclose which display controller they use. So it's kind of an
+trial-or-error procedure. Or rather, you can look at their example code, figure
+out which commands they are using, and compare what commands GxEPD2 uses.
+That's a bit cumbersome. But still better than writing everything myself. Also,
+it supports graphics primitives!
+
+<span id="pic"></span>
+## Get the picture on the display
+
+You can't just simply throw a JPEG onto the display. The display doesn't
+understand that. It only understands pixel data. Also, the display can only
+draw black and white pixels. I also have a display with yellow color support,
+but that makes it even more complicated, actually. Even when you don't use it,
+refresh is slow.
+
+So, you definitely can't throw a color picture on the display, nor a monochrome
+one. There are displays which support a few gray-levels, but I don't have one
+of those.
+
+So. What to? The solution is "dithering". I.e. you trick your eye into
+perceiving grey by having clusters of black and white pixels. There is some
+technical background to dithering (see the Reference section), but I simply
+used either GIMP with the Floyd-something algorithm, or one of the "ordered"
+modes of ImageMagick. It was a bit of trial-and-error and
+seeing-what-looks-best.
+
+The result, then, looks like this:
+
+<img
+ src="data:image/jpeg;base64,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"
+ alt="a dithered image of my fursona"
+/>
+
+Now, about the image format… GxEPD2 supports "XBitmaps", or XBMs, which are
+basically just a C array declaration, so you can GCC that file and throw in the
+array into the GxEPD2 function call. And voilá, it works. You need to set the
+rotation first, though.
+
+<span id="attach"></span>
+## How to attach the badge to myself
+
+I have a Waveshare module/PiHat (which is too heavy), and a simple "ePaper
+sheet" including a plastic housing for it. The housing can only fit the ePaper,
+not the devboard, though. Also, it would be too cumbersome to attach to the
+devboard - loose wires! So, at this point, I decided to switch from the
+prototyping platform onto something better.
+
+Fortunately, Elecrow provides a
+[CrowPanel](https://www.elecrow.com/wiki/CrowPanel_ESP32_E-paper_2.9-inch_HMI_Display.html),
+which is exactly what I need. It has a display, a built-in ESP32 controller, a
+housing, and even some switches! As a huge plus, they even specify which
+display controller they use. I had to try some of the GxEPD2 display classes,
+but finally found one working.
+
+I decided to glue magnets onto the housing, and attach the display via magnets
+on the inner side of my shirt &mdash; not ideal. I positioned the magnets in
+the (vertical) middle of the housing, so it wobbles and is not readable. Also,
+I accidentally washed the shirt after Awoostria with the magnets still sticking
+inside &mdash; and now there's a hole in it :( . This problem is still
+unsolved. I can kinda attach the magnets to the housing screws at the top, but
+that's not *very* stable.
+
+When starting to work with the Elecrow display, at first nothing would work.
+When I looked at their example code I noticed there's an additional power pin
+that needs to be toggled.
+
+<span id="setdisp"></span>
+## Set what is displayed
+
+In addition to these switches, which allow choosing the motive, I wanted
+something "more direct", so I added the
+[NimBLE-Arduino](https://github.com/h2zero/NimBLE-Arduino) library. With a bit
+of coding, I added a service and some characteristics, so the available motives
+could be read via BLE. Also, the motive could be selected via another
+characteristic. I started writing the characteristic with *nRF Connect For
+Mobile*, but started writing an app [later](#theapp).
+
+Actually, the switch-selection was a bit troublesome. Redrawing the whole
+display takes around 2 seconds &mdash; but that is not acceptable when
+navigating the presets one-by-one. By looking at the API, I found out you can
+select a "partial region".
+
+What I didn't mention yet, the text that shows the mood is drawn at runtime,
+not integrated into the picture. So, I simply update a region in the
+vertical-center-right of the display with the mood text. The picture stays the
+same, but the text reflects the selected mood. The selection is confirmed my
+pressing the rotary switch.
+
+This is still not ideal. The first update after power-up must be a full one,
+and I don't save the selected preset in NVS &mdash; I don't want to destroy the
+flash by lots of write cycles. I don't have a solution to this, yet. Maybe I'm
+gonna integrate an microSD card (there's a slot for that in the CrowPanel).
+I'm gonna research a good wear-levelling file system for that. Probably not
+FAT. That doesn't need to be readable on the PC. (And even if, simple stuff
+can be written in FUSE). Alternatively, drawing the first motive on power-up
+would also be an option, but I don't like it that much.
+
+<span id="powersave"></span>
+## Power saving
+
+I first measured the current and was shocked. The whole thing draws around
+80-100 mA. Not a big surprise, given that Arduino basically calls `loop()` over
+and over again.
+
+Using a bit of experimenting, and failing to cancel light sleep with a GPIO
+interrupt, I implemented power saving by using a timer-based light sleep (10
+ms, gives good user response) and reducing the CPU frequency to 80 MHz. And lo
+and behold, my USB current measuring equipment (resolution 10mA) showed 0 mA.
+Success.
+
+Actually, reducing the CPU frequency was a requirement! If I didn't do that,
+the CPU would constantly crash when entering or exiting light sleep. No idea
+why!
+
+Apropos of powering: The badge is normally unpowered and only powered if I need
+to change the motive. I don't want to have an USB cable hanging on me the whole
+time! Using a battery might be an option, but I had problems with mismatched
+connectors &mdash; the Elecrow display doesn't have a standard JST connector
+like the LiPo battery I bought (Li-Ion might even be the safer option? I have
+no clue about this stuff. With a quick search, I only found these cylindrical
+Li-Ion batteries and have no idea how I would connect them). The badge seems to
+have a "mini" variant of that connector.
+
+For the time being, I power it with a USB power bank, but this I still consider
+an unsolved problem.
+
+<span id="theapp"></span>
+## The app
+
+Writing the BLE characteristics with nRF Connect is all and well, but not
+really user-friendly. I didn't want to install the Android SDK, so I looked at
+cloud based development for a start. I found [MIT
+AppInventor](https://appinventor.mit.edu/). First, I was disgusted, because
+apparently they require Login with Google. But I found [an alternative
+way](https://code2.appinventor.mit.edu/) by which you simply get a
+"Passphrase-like" codeword you use for login.
+
+The graphical programming is unusual to me. I used Scratch shortly in the past,
+so it was not completely foreign. Actually, it was kinda fun coding this, in
+"event style", once I figured out how to to like stripping, list filtering,
+etc.
+
+<img src='data:image/gif;base64,
+R0lGODlhIANmAfcAADM0MxISGypcPCVXODlJPSphPx9SMWBTN1U7Ty5fQDZVQi5hQTVkRjdmSTlmSTx
+qTDdmST1rUTRXdFVZWE1OTGhUVkNuU1hjW0h0WU1tUmxrVm5LempHdXFMe3NSfnhafWpbZlp3Z1VwZG
+hoZ2dzbHZ4enNwb1pWYjYpR6xeKcZkN8RdLpwxVKMtU6UxVqY0Wag2W6k5XaQ6XKYvU6s9YbI8ZJcxW
+KtFZrJKbKZWdLdYeLRPb4pydLRneJtbXc11ScFlb32mSHykVUWLZVyDa1iBaFiYdU6SbWmKdnWEe3eT
+d22McXOheHSPUG+WP6uKPaWENrGNPqeDMJqCPJONVK6OQ6eKSLGOQa+QRrGRRrKUTLiZTbeaV6yGW4K
+oTYesVJOzU7ekXpKNc7OcZqyQd5Kubo+xb72kZ62rctONbMOpbMStdcWvecexfNeeYKzLW7LSXq7OWr
+PWYsHmXzlnp3dWgnhXg3pahXxdiXFQgnd5gXtkikp2s2lpqkA5uYNkjYpslI10l5N3m5F1h7tohalvi
+JV3qIpfnMR2kMNchoF+ynuXhnqMhWqkhXarjmKJtFWizVml0Fin0k+l0mqv1mGZyXDB6IeHiISXi5aK
+mIyckpiXmZOKjKqNkYqllZOom4erk6+slJuFpJaUpaKLqqaYq6yXsrWYr5utopyzpY+4p6ioqaW4rLS
+juraouqu9sre3t6+srsqGnNOSk8u3h8i7mtSyjtKWqcyVp9mqudywv8utrOS2sOOulKfCgrPJlazBta
+rGt7PFurXKvbPEurrGp5vBrNXEms/AndnKp9fMssvauNzUtczPreHUtuTYu+rJstfmrdPju+7gv7ysw
+ra1yIunzcW3yty2wsy+0eS4xu69zLrNwbzWybvUxrLE3bfS6JTF4cfHx8LYy83C0tTG19bW1t3d3drS
+3dDWyuXd1enQz83kz/Dq3O/lzdTV4+jZ4/Lb7OTk5O3s7enn5/Lo6fXu8/T09Pn48/39/f////7+/v/
+///n39fDw7tvm5CH5BAAAAAAAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAsAAAAACADZgEACP
+8A+wkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2rcyLGjx48gQ4ocSbKkyZMU56lcybKly5cwY8qcS
+bOmzZs4c+rcybOnz59AgwodSrSo0aNIkypdyrSp06c880nNJ3Gq1atYs2rdyrWr169gw4odS7as2bNo
+06pdy7at27dw48qdS7eu3bt48+rdy7ev37+AAwseTLiw4cOIE/uVB6ux48eQHd9TTLmy5cuYC9/bzLm
+z58+gQ4sefW8iVtKg+2Vezbp1WnpUwMieTbu2bC9iJrvezbu3b8ubRd6bJ3Hz2H66pQaHOC/57+fQKY
+vzIgeO9evYs8OZo8FV9O/gw4v/N+tcbvmvyMk6P++1n7zx8OPbJecFzpv7+N/Yz49fjoZYeKkm34AEF
+sgWe28hyJVxY62H1TnzcOWegRRWGBZ9++Fnnxf8afjfVOKsIo5UI7xnVYgjcmVCOha26CJl8sSioIBt
+KVhjVv3Qs1V6DVpV3iojmJAijia+aKSFGOZnnwZNZKjkh1IFMAIFJuQTwDn5rLJKPvdICUAJUoVozoj
+3bGIOALDkI2aa52wy5JFwxvmWOABMAICO5myCpTiwjJinOVLl6Scsq6SZz59qIuicOJtsEiGNyk0FaT
+6XAKoVe+ZcshWDYjlo1QjmcLLJjkXKaap4SebHpJNPAkgVAPes/0JBPgCcM0IJI4xwDwD5bDJBr18GM
+GudIwRgzirBUiAPBZxQsOWp0EYb1ia8mtMPLACMcCcAAYgjDrMAeAsuowGUAICbAFwCgDkmWHqaVZus
+Ys494lwiYruxbALLPI3Ks8oll8SaJiy36jhVeaplyiWO5xF0qY9XcZKrOPNcMilVpUqr8W6p6kcFAU1
+oIPIXTsIBpZUAALClygFcUoKxAaSc5rr5cDKBrFKFG26vFJi7CQWzbiz00Dxzkg8Fab6H9NEUUGuCtt
+SO4Gs+sSjb9Co2OjcPLG5qeu0qtsYC8CWNcmJOLI01k488X15VXr0lTED2xTxOZc5j7kJ8MFbiHP87Z
+QnPSpox0YQr1vF9IrPaH5T9wErrt6sEoOUlbOd85oiXTFB1znSmeUnPaHISeOGkHzkmrbBQAKA4/SwN
+NCyXiDMl7OJInE/q/cQSy84XRzpVY5wQqnssq/RTgr3iHF+7PNXobqiZbl+VsNcMq6c3VlLnUwKYVk1
+Y+veGHY54kx2+4Z+rVk5gJ9vmTNlzPwFcYOc9uxc7K9ATBJAOndoqm+3S4AtghehkJ3pga34AABC2pn
+QO/gFAHpmj2gO/tK52PexgfeISLMwxDyzNQxzvGVM/znEPetBDHgbLCqY0pZW6hcVT2BvV8aQ3OAHaM
+C/iuw+Hync+EKEtQqyjmqH/xIE23dxNHpba4LzkAUKc+etNN4zieAxosGO9h2KBkpdUzqHFcwDqg/mg
+RywARUKtRKgu7MnRjmx0Qd+57RJTyl73aijFOsIlh/opn/lO5pbP0clodgxkHc9IFzaq0JDv2ptW5FG
+ChtFRkJA8y3Sqo51KWmcOTUDfW4A0qkh6EnyITEsouzdKRbpRLI/8pCq9Mo8m2OaVtSFANVZJy1ouaD
+IgocqjHsKlUlJlPaXh5TxSactiBgpXuUqmMpeZq07KpXfGjKaLhimPalrzmtjMpja3yU1uNgc1npkUN
+buZTWhK85zoTKc618nOdrrznfCMpzzNgpJ6NoQq9synPvfJ/89++vOfAA2oQAdK0IJmhJwITahCF8pQ
+hJrjoRCNqEQnStGKWvSiGM2oRjfK0Y569KMgDalIR0rSkpr0pChNqUpXytKWuvSlMI2pTCNqpGrO86Y
+4zalOA5SPM9p0p0ANqlCH+pV6AeqnRE2qUpc6z3oBzBwnZKpUp0rVwLzjG/+wihhhkZx+3G2YWsVSZu
+ixknsgtapoTata3fKOd8zSh0Q8h3seGgtGDgmJRMwbZs661r769a9dscY3qkEjRpkJa0SERV03gUIR8
+clNm/AlXyDFV8Ba9rJ9JcdgT9Q3xaqpMbEQI1Xo0Q8+AaiulznbUYmJ2da6VqhtJaSa4uWtVf8ET7Hz
+EBGIPLsK1gYGggAzoW9fS9zi6tSrljKHPDjDJbH2cjKlsUymOHEJCA3XuNjNrnbvMt3qgnW74A2veOn
+SXeuO97zoTW9Zyvtd9br3vfA91CWoa9742ve+4GXvdfHL3/5SVb/+DbCA+wrgARv4wEstMIIXzGD4cK
+MEYkgCD0qQhBLotTIKbrCGN+wbTRxgC1UI8RYOoEnpzre6UeWwile8mk1MoQ1uiLEbUlBiDJ/4HClms
+Y53fJhNpCDGagjDjNEnWa/mJcM8TrKS+eJjIKthyPlo0yZcRRxdqgZsXFKNjmJ15Bu3d8lgDjNdfBzk
+IEN5EzpinWH5Fa9+XKL/T5cwYLxEixcki/nOeE6Li9ughj5DOXD9GNXdtlTXNHkr0J81FHe9vN88O/r
+RU9nEATRwgEpTGkAiym2sGBMiqvnrgyNCcyw6XWdGQ/rUqObKPMjB6laT41GEAhQ9dDsicfjjbubAEh
+dr3WX6fjnVwA52b+ws7GIb28a+bvSxl83sUtM3x82OtrT7Ul5oT/va2J4LsbPN7W6fZdveDre4uwLuc
+ZtbvP5o6zvOwe4yZqbcaMGHvOdN73rb+974zre+981vegut3wAPuMAHTvCC2/s3Bk+4whfO8IbL27Kj
+IEAGJn6ADBBA0ak19Vv8kYw2rIENa/g4G0Yu8pGb/OQo/0+5ykOu8paT3OUgD3nJT/5xf0irHsdow8p
+nPnOY+/znQA+6yT/e85YXfegoZ/kZ1LEbfCSDFj5n+dCPLvSqWz3qRZc5z2VOc6lPPegsV0MyALsJJ7
+xhNm/IAIDMaRh4k8UfbNBCiOdO97rbne5PyLve9873vvu973cP/N2xAIV1RKsea5C74BeP9787/vGQj
+zzjJ0/5umcBCrVwDT5oofjKBz7yoA+95D1P+tJT/gljILsTzPAFMHzBDGpfjdvHkozOm37uWmgDLXbP
++977/vfA7z0X7P4EvC8+C09gOrSOYfvbV0ELwY++9KdP/TEQ3/mVv3zmW/MMEGM/xFlgA//1x09+6Z/
+h7sX/fhXS/3n2r9/96E/9X8tuhtnAHkAXtkr+qa3xttBC8MmwfiHGfnmHd7SwDs6gDLXgDM/QgAzIgO
+7gDBHoDs8AgRXIDMjADM6wgRz4DLWHd1ywBU9wDFyQeOsHBeLHfliQfNHyf8SnBcdAgHNXgHR3DBWog
+BIoBqEQgQ7ogAzYgBG4gUGYgzvoDMyggUZYC7XADMqQDBzYgR84g1ygeASYfjRIgwKYhQTIfFWgfa5x
+DFiAfiQIBQNohe73BLRwgbWgDO4QCmIQhBX4DDzogBQohBUogW4YhMxwh8mwhsywhE/IgVxAgFswfO9
+Xhog4gDM4gOGniI7/qAVcMHzF9wRqwAW1MIjsJwVQl3fy51dlVwatBwawBwuIFmWxgCWc5kWfJVluMX
+ti4YLPJ3dytwXMcAZaUHxT+ASQOIh0lwweSAFioAFLmAxOKAYmEAoVsIC14It9WAvPUAsVYALPcIQPq
+IG8WAVYkAzHQILJcAacVwVngIa0AAWGuILKZyr4wAa4lwXPVwVcwAy56I63uIvu54u1AIwawAw80AlG
+mAzK8Iy14A5iwANMuIDTGAoJmIwmIAbIIJBi0IAasJBKCIzTqIEXeI1aoI0k+AS5SI/0+ASFmHeQ+AR
+P93yYCIkf6IWtcQxzhwWyGIbJEHfrF4lPkAWFiHcL/+gMFcADGhAKoSCNysAMzBgKzxAKGoAMzhAKTu
+gMy/gMGtAJnWACyPCMGsCAYlABOqgMIlORD/gMamCFy3gMa0COg6gFN1kFN6mL51d81kcLJEgLumiIk
+Ch3TNkGXGCLUGCXyTCItlh8MAiXqKd6b1AGhPkGGpAmW8IveUIPZsIJaIMiULQXrhgWLvgEZ3AMbPAM
+l+kMycAM0HcMe3kMnLkG7GeDyEAB91gLOlgLPCAGwAgAnRCMGqAMJlABT9mGGjCNzkALasAGTjiIl0c
+LySAFIdaNx7AFxHgGulcLbVB8yHeOcpKOA6gGu8cManAM69CZWmALoImcyZl+2fiMqP9JAcmggyZQnp
+1glD1pAhSgnjzgDCJjArUAAMFom24oBtPwDBXQCcsokDzgDkLJBmrQBvBYk1CwjVLAjqCZDFnQmfC4g
+MmwBlxAjLTwjsdwBpwpdsfAeULpDnKnkqzBkiGWkWfgDpfZmd0odt3YBu7wdGC5gRVglOkpBmLAn1IZ
+kTUKAD8pMswgm8hgm64pkbn5DMaohM/wo7pJCyEXoU+wgmfwDOnnmyvaorRQotqYkdtYBcS4BrbgDmv
+AjclgC1rgDqCpBc6gBltwBrbADFVQpSRYC2Xan80ZmPN3AF8QBHj6BSSWJYeiQJ7FJ0T0HrLFF5MJFr
+CIpcTom0/AnOv/sIxfegaXSYYhZoPJAIzJuJo84IbPII0U4JCZ+pO4qZttIAUYCo8hJgUbSpxQYJxtM
+JwoCHdSEIbmCC3SKWLamKjJcKBs4A60UIt7yQa1AAXs2KDieZWq+ZPKQAZkYJsaIAZk4JMm4A7NqgHt
+sJ7ucIxuSAZvqJ8S6ZAA6gxnkAJs4AyDiAVSwKQg6QwpkHMkKH61oAaXeQzMcAy1sHtScKBckIZuaa/
+OcIsguhoiun7bKJTCyQXiR4xPt3sZ+aLOMAE8OaM1igytiY9uyAyd2poV4JBiUAuhwANOaZQNeJU6SJ
+VJKgVccKZNKgVtcAyq6pmXqXsZ+aUkyaLC6Zv3/yp+WsqvZzCc3ciU8EoLJloLX7oGvMoMbMAMmgiYn
+dhXBGMCJPC0T0MO/cAJ4hArxEM1sXBb8kBbgFGoX+GCl+eLbVAPtFgFmBmTw9eNXyqpWiqe10qjNbqe
+yVABypCMT/mp0doJFaCb8CiaBaoFZ6AG/TqF3ZgMagCP0MeZg3gFs3oqtVoFUGCEtNAOtEiSa1CLXJC
+NXNAGwTqsvoiM0qqtRvmTxsiQ5amDwhijFTC30JgM2Nqa0sgMyTiNRBq7ivubHGmwnhmJ5Gq4e7mca3
+CZbrkF0JcMxBuhrUq8vskFHmqg2xeiIUZ4k6sG/jChm7uvU7h7lTuAOUmendCTPP8guk+pAcRolJWKD
+D0pjHcbCp1AkD1Jt8/QmgBalBRghNZ4gF+JBWfABc8QiRkpfragvRHKkhFKrrw7hSuLnMvLDGPADCR5
+BmxaeGqwDte5BoYLrlNIrswwjnRaXEhEFdZyKJymZc7lF17rFS64guLHBSz5f2wQiX2Ye5HIBlaInVq
+pAQSpDDxgApyglfdplA/ZCcjAsVoZo3woiBxZC0/QqiRol7SABa0KqZAKl9jIgo6rjgMIdSzcpmh4lz
+HMeWdAmnOXDNkpMkGshCZwjLTJA8vYk5zQk+7wvTs4kJwwxD4ZkW4oMqFQCyLjjBroi84ggvkKBcLJf
+DsLl7SQpmr/IKGba7bHoAZVsIxenK8RGsnaOKyY94VSyHwBmMhhDIMk2GfQN4MHGL8R2YedoI8LWbsI
+ycNAjJsPaZScEAo9mgw4qp6cwAy12Ql8uIfhiAUsubMXiqVZIMq0MAbq+H/CCZe+mXgJ26bdCH1dzHl
+PwAagabCbC7hPhwUqGo4dDF6KhTWFccJdAYuHSIaT+H7pnIUhxsILeqsIC5rvTIzyLM/xvI3bWMkhhs
+4FmM57d4hVDJ1x8riH6M/qLIBYyJH5TM8IG88N/dDvHNHz3NALjc/yvAaLqHcHPYlXCLn9zNEb/QSS+
+q+ZEbCKiM4F/c/uZ4nzbM8M/dIODdO3OtEw/23RJamIKg3SGs3RPB3SBm2G/NzTeQcFTfrN4EVabXdj
+1qYW5tySTl13VxDVUe2IAxjVencFUYDVWR0FW63VXP0EUh3WYB3WZF3WZX15Ag0nBF15ZE3VVzDWUR0
+FY53VcY3Vc03XXI3Xb/3VXG3VcJ0FWfDWYU3XZl3Yhm3Wc5cFUvC8ADt4docFsloFV6B+lRfZngd/lJ
+3Zn7e0xVZtylbOpRcFVkAFpE0FVRAFIfbWo13arN3arv3asB3bsk0FyzBO1WRCwmVNuH1Cuo3b1uQP9
+RDcwj3cxF3cxn3cyJ3cw20PXLHWkyfarH3aqf0Es13d1n3d2J3drG0FXdDdXf/gA7VgD8o93uRd3sPd
+FSa9eJAt2eytflOt2fAd34xn1MJGzlzR1PNNBUuABEVQBESgBFTA1VYgBvzd3/1NBP7t3wiu4AfO4Al
+OBAtu4Aoe4QYO4RJ+4f0dAiGA4Qa+4RzO4RpeAomgAyRe4iZ+4iie4iq+4ixu4mk9Fc69eNS9BAv+3w
+Eu2koQ4Qiu4wdu4Qle4TW+4xLu4w0O4UQO5EZe4x++5ENeBDww4i0e5VI+5Sq+A9jAFemNfqL3d4IH2
+ZMt32Ae5vQdbPa9FfiN2alNBUgQAQzQ5gwQAUQgBvqNAW7u5gUgAAwgAAmQAAWw53jOAAUQ6IKeAG0u
+AIbu53j/rud17uYCcOeG3uiCfugCsACUXul5vuiYvuiUXgAXoAMuEAMwAAMxAOqi/gKm7gIt4AKmvuq
+s3uou4AKh3uqyvuqqHuqjTuqi3gJXrhXOjeanreYPUOcWgARyjgR0vuh3nuyD/ueP3uh2buiCHumEju
+nNDu19zgAJsAAJoOd9vud9/ueZnumbPgKeHuqijuu0/uovoOqz3u60PuswQAMwoO7mPur13gK4gOUyX
+oiR2O/+/u8AH4neF3jvHeYGr9ljDlhshxhlrhXmHIb7i4119wRigAEF0OYO4ABtjgEhYAF4rvFujgGe
+8Amp8Akmf/KekAQnv/Iqnwolv/Kf4Al0/94Adf4Ai+DyOA/zJv/yMI8JFlDnCdAADZDxmJ4BFbAAnf4
+Ct17roK4Dt3ALuZALT38LuPD0uFD1U2/1U1/1V2/1XZ/1tyALOyDq8/7p594C5bAVBA3xcheGLfkESv
+DzGK/xDsDxEYDnNB/yI8/zJo8KmKDyOt/yfG/yniD3bU7zFuAJOO/yOk/yjb8Iwc7oQk/0i270BUDuS
+g/qpm7vPfD0US/1X3/1WB/6o4/1YG/1hYD1OnDuqH7uNIDv+v55atALtF/7tlD7tn/7uL/7X3nwvu/7
+CZ9qDZ8V5vwE5zqWRF13S8Dmhf7nA2DoRODxbp4AnsANwIAJxCAMwsAN3P/gDZ8wAuPADcQwDNxPDBP
+wCoxAAsAgDOM/DOT/CXXeAAKABOPACk9LApjgDdwgDO4/DN6gCQBBbJiwYQWJcVuUgAEDB0gWLBAgYO
+HEBTx22PCh40WMGDQIEcLx4kYubdgG8cClbds2bSpZumy5biWuQStZYtsms+XOlrJewNiBCFEMGBxbl
+MuXVKlSfGyqPK3yREqyM1CgPIH6dMmDiREXDoiI5IHCiZ+4vcIkjCA3bt4wkWA37CBbVhNeJSmhVmBB
+bp4mMhSwaNwnEoU1jeMmjBtfTQUJGuSGRCKDB5IZeP1bEUcFHzs2wrjx8YZIkto68RiUyybOlaxfrix
+ps5P/Lpsl12mrgK1Trlw0QAv1bBTXUuL5jmVFrqVXGubNnT+H7tyWFuTVrV/Hnl37du7dqz8ZU1z8eP
+LlzZ9Hn179evbt3YtjdEn+fHPu7d9Xau4Sp0vn5snDTzxaoHpijWOeOYOLZNrACqolIphICU8wsMCTR
+RjghhgM/vpEGFYoYIWYVApj5RMKRrhkGE1I0ASYCVhhhYBPiAGGlVRSsdGBvwIbhhVUFGAElRJKAAYT
+TT5JAoAXgbkxlVeEwYSBBhYI4R9MMPgkyr8Y4AEHGGrgKAYXdOANBxdG2oYHEHY5RZtBTGDThEFMMwF
+OXOo8BRdO7jShTR5M4EEXQQfF5hYY/1xA5BZcijIKqfGaIpCNA7k4Ixk2GqzCiq0WcmARTyzAwBMkGB
+jnFQukXCiVYVKh4BViUCnsFU0oIAGTYd76pK5XUCEgxBpvfOWTLQXwpMdPCMCEsCSIYeQTT5K8gJVXc
+HRSmIQcEACJfxYJIZUL/4Kghxu+DLMFQnK5ZbQdSBqkAlx26wSEQtwEVJdOAOWNBx5y0UVfXACoYJeT
+dtFGzQpwO0WXG1zY4ZZbgqOhheHIO+46LWxhzocK0vDBh4x96IHjjbs4wGONPU6jFy68Y7lll19mGbw
+AZ6a5Zptvxm8TCejgmWcUYsE56KX0488/AG8eMCounOFinTOYqXQNTP8fXAiDcZCwgBizJPy2rB6XBG
+bWEVABwERNFCBBxmi5mWBGrRlIwBNWhl1kGGDYZoWECSYY4RUKKEDlAkyAISYEATB4MsoGGLAAGAteQ
+eKTRQRYfKFCamA0TM1BI6mTCgL1HBdccuGEgFN4qIATEzqhIN7T2nUdhE4AGHRQbW7ZiKjcGyUPUqWZ
+dudp4afmSoAixMF6GE+QR2XUv1TV9ZUiaf1EgU8m0ISAtD+5wFUQiSHGLwY+EXZHT4QBZhi7LriA1g8
+Bn8ATYl7BwHhgrE1AR8SzJoIVJSajDCF8ozkCvmBd26hAJ1iSCwqcwl2tk93nUIO6CsgJBKOTHQ8oAI
+L/BMoOAQhTWFFe8BOORGxi46mYdS7GHABwDGAtBMIBDpAGAHjsADGMYcd84AZbbAFTMANiEIWoHZkJz
+YhHRGISxdOPfGyCDpWAIhTpADQmKnFmROvPf3CWtCdUKgULYkYKaEELKDgIQgtBgre4oQSsfSIEA9DR
+Qj7xNWKM4y0laNsE2HEBElBAE5hgRbS88SIaCSMEFhBGKioHmLq9Qn2ooJWRxvG3cURLLp8gFvgwkYD
+FWYAVAiDGAJCAigEssgdeyhwBOacLbeiiXai5jZwqMIhB7GZ1PNBGBjsxCF0AahDrqABJWMnKQu2OgC
+xwlHh8V6BkfLENzTwGg7CQqU0x/0QJakQC1lJRvzgyQFWpmMAwxpGEwoxAEyNgxwT6+EdU2EV9riIcq
+IZRvoU0QAC28t6HSoAJT3hDSeOYAOGgJIAZ4W9xGEiFAIZhAE/BkVOFuAFRUhkmA6oGBL/UhgPjsToT
+5IKWKDlNBTuBC9ndBgS9lN3pOIFAXYwuF+MiYEckVp4UZmWaK0zDAdzggxv6IIct5ClPe6HDNMSQhz4
+cYlKVOkQsFNGKT4VqVNnDRCdW4hFXrYQEgCbV+2DRaFvMSjKO0Y4zHCMZzODC1M5ogUWkwkKSswAgT1
+UWYrACbYxIAvsmQLYRvOgCJWBEXViBCQCQQHrhK1YqsCUqASSgbv+seCQmLpAEVJCTBOSMFjBesYhXu
+GqTlQOGhJxEBMotpCI7aIEMIhpTGOCgc/q64OfuxAMEFAI1dzpNLjLIiX2563MI2EWfeHCabeAupkYh
+R++c8hQtMOMY7lCQWanzFE1xhQEYaCs/JfcAT6TCuqnykPYYUYILTOACnwDACKI1gSQA0i6XAEASNIv
+YeV7mE0UQwALOJz0Q5TUJIyoBCS4xgr7VaBGaxZ+OHiCMyDkpBJnpEgtkQIPjGpCVuJDgLkBggmAGc4
+KnOI3nBoELB/JgF2qK1yBO4UAQEKBguAhhTE1IU+vcFGM5TQPJfBrDAwC1ZDydYU9n2MMfLtXIR9b/T
+lPDw1UmN9nJVb3qI7IKtPrkQx5HSwo97nEPWDh5aPvJIpZrlrSoaCFB0zwDUs04kRAQYSFFIEIDGkCE
+uTYgAZhIDCo0oYlXfcJVJXpFhjSBih4JAxXkE8hj+lK1U2UrMT06iJ7rqpYQacKRj1GMEji5EAu4uQg
+YWMCWMuCDE2mEtTQgCTZWrJJczCajMOaXNvhFklnrIhfY6JwJQKCNXehiF7nYxTp8ctwYsCC5j1pumR
+NUBSycQQuYqi6b3cwAIhSBIUT4LgM8kWdNnI98f57RWTQBWciSr0MDGQg3tISB4i0iQ5DmBirkB9m6y
+irRA1EMEjZ93QfTeUsLuACp/0dgalWOpCWtTomqaS1r3mDD1tt4F23Y5PBOYGMXu9kGm0iyC1wTe8YU
+q3EVlAMdlBWVOUBAGRCi04vpItnlL//Okr08c5oHjapPjPKU8zECAF0CFv2AhTjoEYtLyGMTsBAzk72
+qRaRBZZpPaFCRq0A1OSdgMpiRyOI66SlPOMsTXwe7s/gJdrKX3UIbiuPiHCAhsI/d7F4n+yK4ovXL1D
+3tE5nSBQiuyh3IQhYO8/vf/X6LwBfe8IbXGCEOj4jVytgFySyO7wgUdeREe3FWXwjW8c44rsPd7No1u
+9kXcarKqd1TY3d76MuuhG4ujnIS6SbeFzBwY1JUB4En/OAPf//43Ave973vvSx2MNESzhTk13mCGnph
+i14sv/nPh77zm8986KsB5tfHvlNrvn3u5+yJUazEFPNxCXHc4xLmWIU4VhH0WMyDE+LYxMyXnvSZkZk
+7S7DnQzb/74csoAARAcAAFMABJEAAZID+K4CHKMAFFMAE7D/TMq3+07/L0DsXgIELvMARgoEW4MAWmI
+EOBMEQ/MAR5MAZIMEvcQETVMEPdIERGiEXgEELbAFsUC7v0JTLmMAtiUD9Y8AeZMADlMD/88EFlMBQO
+8AdfMDLGAHUggENxMANDMEOJMEVNEEP/EArrMIsxEIP5MAYjEENbAFZoDHseAIt2IIzRMM03AL/MzTD
+M2xDNMyCJ7iCOYyCOrTDOcTDK6jDPMzDKMBDP7TDO9RDQeTDPxzEPaTDKIA6RDxEP7yCJwhEqJPEp5B
+ESFTERYS6qJC57uPETkSPTUABCRBFUUSBn1s/WIgF9csHc4AFczCHfliFfFiFe/Cy+QMr7xADEgiBXd
+zFDCgAVEkAEeDFYSTGYjTGY0TGZFTGZTxGESiBQsiBaJTGaaTGarTGa8TGbJTGG1iHGvSOSyhGC/jFy
+hFGZjTHc0THdDRGZ4RGbXTHd4THaxyJMfSOJ7ACKsBHKrACRYwKKMjHfwTIgBTIgSTIgjTIgzRIH+iC
+hWTIheyBh+yBhuyCiHTI/y7wATJYh4zUSI2Eh430yI8EyZAUyZEkyZFUB0+EKnmAhWpgyZach3lIxU0
+Qh5lcBU5AulWQh1icxVoEs3OgB/oLEPvbjkwQhEAwSqMUhRJggAKwgEEwhKOEyqiUyqmkSqgEhKrEyq
+zUyq3kSqgUhHngKsnbDiwgyqgUBRJYSgsIhKfUyqvsSql0y7eUy7nMyj8whU6sqe14AipAgmFEAjGog
+iiwAiUgAgwoRsMMAQxQzMVkzMRkTMNUzMR0zMPcxcd8zMpcTMeMzMNEzM3kRQwgAULQgdHUgR0wzdMk
+zdRUTdI8zdY0zdHEAdeUzdk8TRyIzdm0TdvcAd00zdy8Tf/e5E3adE0c6EaUdLJ+8Id82DJaNActW8U
+tywew5Mmi+clb7I5MwAMP0E7tvANByAQ9yARA6IAO2IA62M4OqAPzTM86wAM8WM86sAP4jE/5tIP6nM
+/5xIM7eM/6fE/15M/17IDt9ID3HFABFVD1TE8DNVDzHFAGXdD11E4GpYewTLaxzAQ7MNA7MIRL0ANR+
+IMNGE8BRU8MXc/8pE/7XE/7/E/4TE8TvU8GhVD5lNEA3U4CVdAbVVAHzdH33ABBwEvvuAK+zDYGCAEl
+EIMl2JAtGUcpcYBucoAHcAA5a9LFgdKJiFIprbt/Ky0d5JS0w1LX49Iw9b8C0DsNfIHbNM3/hXnCFmz
+Cn3DCJ8zAJrwBU0ulC3SBjggTGtBTPdWcPfVTCsNTGsCBiKIwPa0BQuXTjrgBPz2UCwwTRy02GjTOSa
+05W2w678BO+tRPD/gDQLgDPBCEPxAED+DPQLiGa8iGbDjVUiiFa6CGUz3VV4VVV41VWT1VUmhVWz3VV
+N3VWYVVUkhROyDPAr2D+izWOyjWDtBPEIXPYrUDZD1WZK0DaGXPaH1WatXPO5hQqRLLJMvU+JTWOuhU
+O/iDQLhKUo1PQdhVVb2GUTAFX6WGePXVWp3VTHhXXU1VdmVXXxUFFsXQDQDRZ8WDZzVW+0TWa4XWg51
+WaYXWAc3WDciEH80K/yloAwbJRKiIAipIUimpHFB5gPy6OwxABVaoERgx2VRgBBwxWWlpFmAo2ZVlhV
+FZJMrwBOlBn1+B2VeAWRhJhQerHIVogCndvAwAAQrIAB2AAd9IBEPog6btA0MYvjC5gcaLgUXtiEQli
+ql9gRzYOw0kinOJNVvjjbEl27I12xPbDbJ9F7O9hUIoW43wjRa40xJCJkq12+kMM+vkjm8V1g0YUPLc
+gECgBlFwhQ3QzzqgBnK4hhJAkXKgJXTIBnIgh2woB3IoB1Mohcqt3Gsoh84lh0wohxLIBHi43FGQ3Ew
+YARMoBVcAAdNFVcmV3D9oUDsgBVcIhD8QBfQcz769g//cBYRWMAXZHU/z3F3ArQPyJE9SEAUOANj0BF
+j0TE87kM6o6tbsIEv3jM9hPV6AFYVWIIVWMNxpvQbFrRPQNYFMgFzJpVzLLYVW0FzF7dxyyAbzLQV0K
+AdWlVxOSN1WaAUQKIXJjVzJvYY/gE8PAARX8N4eJQUQ1V3oZVYPYNY6ANi/DVBhJU+j3IBnhViJhQou
+qAVakAIuSCsCUYIzuoz8OmEB2MXSsid3I4ZLYAVh2IuvGYZ3WwxuOC9NiBYZTjRuYIVsc7S8IbAkMAi
+BIAZv0IRU4Ib0MQjl+QuxMMDMMAEdYIHOSNoaMAQ/8AOm1eJCYJQWQARC6EIw7oEOzJz/FyhNkYjaqv
+2IkBgJbDANfdmF1YAJnsCJltgNlXiTnYC4WjKBl2ildciFgykJVvIJAxIKQKWBur3bRpYqS7UZodSOb
+/UAQRhcu2yFTnUFQQBf/bSDxHUFCqAGCigFTuCETXAFU8iEaxiEErgGEwCAUsgEEADdTaDla0gvE5gA
+E3AF1K3cE7gEVyWHQQCBcqjVVwUED7iDDSCFAQYEUpAHUeje3DWFVJYHUiAHUgCEP/iDVMaDae6Aam6
+FOhAFanCFbw6Ecm4FPOhmaiAFZYbPbaXeCvVW7PWAcg5VU1hnQTAFUTCF8MWD8TUFUaaAVhiETMgEam
+DVa9CDQciGEwCA/5r033KY5VGgBgBg3F1mZROQ3wlIaFStE2N2VXkl4GVu1YAuBUAQhd8lBTuoZm6mh
+nG2ZFfoVHMOhA743psmBWoQXHQIhGndYE6smKYyK3doAzZIBqqIuhKeiMjBtq9rgFQYB2szLUwgBmHw
+ox5h3JqlgL/SGhJghGEYgWKhgLDWrCZhBRO2MyTokbowLHJKBSRJhSSgABkRkRuJYXp6AHPYpq6bK9P
+qki9J2i85BD84BVM4bD/wYo5AlNLMBVlo7ETBBZiKgRcQl1QaE4dxY9VgnbU9BRDAJWLuqFzQF37xF4
+AhGApwFzl+l9MomH0hbQ5qKUEplEMhBMLLU2Nz5P/dfipIHjOWyVRxzQZAAIQ6UFdXOGBD6GT4TNxrI
+IAREOWDVt3vxKMTGIFMKAFTmABXmIBS2O7uBgFXKIHzNYFRGAHJ7SvVpegRMOZsCIQNAIRrSOY76ID4
+pmlTFVdTQIc7yOY/uIY7eFdT6ACFBgR21u87KAfCLWdTYPB+vgZSYHDvfdfwtQN5hqrqxY7rxVBAGO7
+iFoRsMIVAaAV/zmD2HF9XeG4KWNxNGAFXoCUTOIFd5oRB8O5W6O7vNoUToIYRGAQOxe7J3RsT0O9L4O
+hTBYTAHWCg/l4OiG8IdwVq+IOd5uZr6F4IH1xXIAX3vgZBuNxyUNdtLgVTSM9ljlj/oYYKLXAGKRijZ
+KgCNUiGMooKpl4IhIgAHAkWCckMqxaG+KER7mkVGZkATKAVZGGRcRgBs/5hUXqF71rrYXgFb2ARQYdu
+YriAsrmsq5aMB4As8VkI+pGcttpSzcidC6yBwj4FP+iDU1/sGGiBW0CEXOgBV5cFQtAFRMAFWZiBMCE
+Eyt6couCcbZAXltAFCsAwEZugCqigN/k12aENfdkGzzEBkjoNCrqo4aIA3Wql28mdEcptyOPtbw8a36
+YZSc6OTPUAU+UADiDcZk7u5f5kcuBudCgBPeCETODlURiE1G1fUzYFEIgHEOCEE4iH6x6BbBgEVCZve
+ECHEahfzi0F/xNAhxP3AFMgh2R+T0Pw8sLd8nIABCgPaL+9A3OmBkDggIDm8o6/A1L4XkDgZ+VtBZY3
+BSjveAq38KfC8OvQ8A6wZOb93pgXcRLXz4AmB+2GBxQ56BG4Bv6YgBJY3UEYhVEwAXgAZn8/gVJgb9U
+1hRKYcdI9Afe9BnT4zogf+g5ohWwoaWY2BXUfXFPAA312Zw6oA3KoZO/1UFcQhVJAXFMY7kCo3XQ3BV
+LgAGTtgDLvvppiGmaghWRYA1qoBTivAjlngCJwFmDwhE9bhEUwgDhagLQghr0ajEAHEQoYh8KgAEwAJ
+HNihxHAM0caFZ1l9GxxdG4QgbdoG02AdACAdP9NWOK5UQK54PQEeAVvohBgYOHT+glfL3U/wAVDSOzF
+poEZkIVXB2O/u+0bQARZaAFdxwGOqD2O4Jx10Jfb2AUKAP+TeBfUGS4N6wSTIpiC6YR7QR3cUpPVkXb
+caAnaNq7jYmRwv49+sIf/Bwh7AgcSLGiwYL6EChcybOjwIURzlzhdOjdPHsSMGWlV6ejxI8gqmfDUsV
+OHGjVRhq6xBORKUKsNd+rcoZaNGgU9E0pNzDRiQolSJwaVKkVhFIgRI7IpPXFthAkTmVqZGJVz1Iihp
+a5NIGAqG0tS18gB6uASkClT1P6QE3WtFbo/1ADVyUaKlKlrotyaAvQ27tq7rQL/GTJFStRgUaYEUWMp
+syQ9jZInN8THJiTmjlhG1qF5jZogt58DmVL8GM/YVgQGTWilZ9MlExQuIR3UatSEUSeSXjsxAkS2E3p
+GFC2RiQJR33pK4aTQiuU1sdf+dCAtqlypbH8UC8or6C0g6WhFuVR8Z/q10udfCspG906HTJTn04d4zO
+OTM8mSneGSrJYWHykRAQMMOLCIJ6kgwcoiIRAhTAgFMrCAJ8IQM8EFSWAywQgEsALABRSwQsIISbAyg
+ieoADABK8AAk8oiwrBiwQBKYCIAA0gM88owIzCSClCaYHIBJiQwQgEqwBCzSCpKflJgAwKg8okSrLCi
+hAANMNDA/wIm6MCCDTjAAAMNhvjhhyFm+lEIDDHQ0IIshCCSiy44xHkLDojI0kIMMbygww4syHDDC30
+a6ucNdOZSAQ884MIDCBXkAgIunfDQSQWD4HIKo7tAmss2l2JaQQW4mGAppzycwmkFFOwCgi66YHNLoY
+caykI59em6K6/01QMPsOgIOyw6wBp7LLLI9tMrs/lIRJFFGDXLEEeZYcaZSXYE8ocHgACCxx3gklSSB
+6aUQ44rzJXDUjmtuJJNOdSsAq8r1JBjCjnnxgJvNqtckw05/7ZSiivXrMJceq1Qc26+65J0xx91ABJI
+Hd0Ccse2doBbxx+B4BEIIB5Y7MHHf4SrMf8e4IYr7h0t/0GKXR3MdEdk09ZnmbWYcYKHBzN7bDHL43b
+WyrnpXrMuvO7SO2+7/+JbTjZPXxPLWGBlM3DBB7MUC9UMlxPvTHiYHIjHHaSMhyDUdXxHt9yqLC7HJG
+/bs8cSRwyffDbrndB9+D0BxRN/P/HREwNKaAERDgiAQREPMBACBhIKgAQ3O37yCTGvoMKj5q9www0qq
+Ow4DCuhEzMM6sNw8yQDEVhQYAin70gMN69g/grtrAyzeeWVq75IAloaWAQDGGCwgIQFWtBqBjq0+QIh
+h5x5piE7vEADDS/kQkgLOuDgwg003ODmDW3GAMMNN7CAgw612hrDLdrIfwr/LvPrsk0u2GCTyzq7nII
+N/k6hDWycQhfaiNU2cIELWcVKF/0r4DZ2scD9yU8biHCfrXC1tw1ysCH1QEc9UIEAUpEQAbCIR7JSeK
+wOzudZFbkIB6uVs49gayYis4PIOqPDHeJBFHcxjA8PcxchAvEuPtxLEIM4xCEaBi9NHCIS9/KeilXMA
+zTJYQ47YxIrdsADW/QiFXcoRjGS7C4zgwwLNYKzGeInFIHo2R1wSC4ratEOLZvJdn64RLwYkRSl0CMf
+ARlIJjYxLT984hDvNrMczsQOcrShHa14x2yVhCaPfKQk4SOKNDKrb2zsiOEktyUG4IiUySsQEZSghEU
+sQpWt/3SlEpCABFaqcpW0VCUSYkmgUz4ulri8ZSxb+UpfxtIBpyxlAnhZoAU0z3ww2IEOoum9NtEABn
+nqkwvapM3zme9Q6Gvf+853A0SQs5zmPCc606nOdZaTEDRwE/YORQMX5IqT9mTWB+2RCRsACgfsQ8Aqf
+qVCFd4zIy48Bz2ktTcZfnIkdBwjRHXYgQ5soKITnahFMapRil50Ax316Ec9WlGRgvSiXYwoSlOq0ojm
+oaI7tIM/ClqZy3wSC1A4Bjk8wIGRejFbbBspUDkg1KEStahGPSpSk2pUoIKUqRh1KkmZmtGmkrQDHBC
+ETOvjSTYWbpfK/CopBSDWsZK1rGY96/9XF3DWtZqVl1oS3lebaagxjckFGIQBn8KpV0TpIJsv+Ctg/9
+qCwRK2sIY9LGITq9jFFpYF2MgqZCfzwXrsE1A7gCZAUTjQFEaWIQdNaAw/6ZFL6KEEpjXtHnbogdOyV
+g+ufS1sYyvb2dK2trM9rW1di1vYmla2vS0ta4P7296WQA+s4AY4vgGO5TK3uc597jfeQZ81fvIJXGiH
+PFyBxD/kwY524AAgoije8ZK3vOY9L3rTq97xZqK97n0vTDo7ma3OsKtgBWsD8qvf/fK3v/t1gH7x2wA
+A+7fA+b1vWuXaJ+zFc68OthX60tCDHgBhwham8IWBoOEKT5jDHd4whj3/HOIKi7jChTgxilFMiBWzuM
+WEUId8Y8yQyVYWB5fVQWaLVazNGkvGzprICxWqN4aycQnGOzIGiMAIHH4ACUVA8pEtgGQLSDnKVL7yl
+LEM5S1XOcrG0zIGupxlKn9ZzFeuspTJDOYts9nKj+ADnOMs5znTOc7/mA91P6mFMxxjP8lgRi140BkO
+iOEYzPAzohOt6EUzutGOfjSkI50MfPi4V/TNmX0RrOlNc7rTnua0guH54FEf6gU4SMMPUq3qVbO61a5
++NaxZXY9K07o+NOanPzEb0FIYB1jlOFY5NrFjYPn4oDDcIJFnuIQHJDN5GEBCEpDwumM+IMxaRvOZv2
+zt/zSrudnJE4ADto1mcZ+53OYud5nNne4we3vTBSiAA95MBz68mc71hnO9782HO88n2aL1iBa24AMfW
+GELAcICwmeIhcwkfOH//kjDGY5wh0PcWhOneBW0AIVa1FpXl7ZWpj8t8pGTnOShdhOpR/28U69ABSt4
+OcxhroKZwzzWNn+1y10O447zPCO3tixmYxGPeGyCHPAoxSaoRrBYmGAXmoXHsmJsbCHbzN/WWoJXHWB
+MBjwgAoob5SiJ8IpXACN1n9BE5sYODLVjokW4G8ba1652JIC9QBhoUeqIYaWx873vfSdG2sdODLn7Xe
+1kF7wmbqd2JUioAcncb+MZYAE+SP8gAm9+xDeUu9zMb17znF9uNerNb8ocIwsPz0wWUn/61bO+9Q+3K
+cd7TvqHh7Lktr897pN38pQ/2NQ/sGYaWj7z4RM/5y5PAzR4ofzlM7/5znc+NHrxA5e3Q/bWnzE69Bkm
+BuMgs0RfV1B4gI5MbEIdm3g61GU89dD+G+uSa/ZYkYCBUk7oE8MgBipI9AlGkMAbqAP8MAjDMEzAJ3g
+DMJTABbDC4BGDMAhgKiRPlCzC6ozABVzAJSRBAabO/Z2OhZwONwiJ/6EOJtgfB9LO6Qwe3AEeN5BAEn
+ADMDQg6RhTlMjfWHlbAxRACFQCvtGBNSTXKJDAKIBDNZCAHmSeayn/l2tVwztQwryN3mS0wxk8QepNI
+RVWoRVSIRZcoRZuIRd2oRd+IRheocbF3vVlxMdZS+3lnhquYaftHu/t1Qv0wA+sQKoRn8zJXBq43A/w
+AjT0oR/+ISAGoiD2YfCpQPWV4fVNVixUAAg0YiNOQDUMXSZADSdcQymM3yRmgrKoH5BFC/uJlvsZyAg
+azycsggNUTuQIzycIwytQACaEDiOUwCtcwAiwwiuQyInk3ycAAwVgDjCwwuWwQipsXYEIwCKQDiu4Ij
+FgIAnQIgImSQmQQOhMQBKQQAkMSS1SAADsHwl4wiySAAl8AiskgSaMQAkMg5GQzuWkAis4zoRUTgh4/
+wIrhMACvJUAMMIjzBsf8KAPVgMFWAMQ6sEoMIIeEOQP6sYSNmF9uAMXQIFDPiRERqRETiRFVqRFXiRG
+ZqRGYmQKkCEiOsQZZkYasiFJlmTyMJPzvGHKAUHxDV8vvKQKpEEvoFo79IIK7CE0YEon2AIPiAE0hEK
+jQMMs8AAZ8AIPaIAt8IIGaAAZ9CEvvGQvQEPwrcAhfmTPCVQ80INW0sPQcSU8xIMrlANYbsK/7MK7EM
+zTRZ18rR+yPVwoYsA4SNswfAI3IAgStBtdegIFuKA3JEESjMAFWiMJWEmIYELZESDgPYkAJMgxHaPnE
+OA4XIAmUIAmTAALsiAF/IQmEP8AOjJChiRBCSQBI2ACAZBALwIAMFQjJozAMgKAJ4gmN8zIACDBKziO
+4nzCLH1C7DTePeYjnPFjdPnjN5zAN4yCHpCANQyhQA4nOFiDQtZHP6iDMkwndVandV4ndmandm4nd3a
+nd35nd1alVTJESIZEyJkkepakG6pkOOVh8a2ATP7AOqTBOvTCOuzh9O3hNBwlNBwAD1AAD0ADGRAAUG
+oAL4gBD9hCBcwCAvRCBURlL7xcVE6leI4nrQmUOqjDQGkWCqEf+qWf1HXisS2UW3oVEaSCJwyDkz3AJ
+xDBABCj/aUCBZTdMPhlAn6CUmDCOFzINqoOi2TOMDzZMKTCW23/iTGOzgR4gjeMgCZcwCuUgCZ4Ajhe
+wOUUyThcJipogmkJSS9ezgWQzgVMACoA5myIJuosAgO8QjsaiACkQgiw0gAMw9ZFiR7o4G/24DdUwwl
+YwztA4kAKpCoUJCNUwwQ053NaKKIm6q6UJ0icZ3o+Ku6hZDexp17BABBMnx3OQoTyAvL9AKrxwsvh5K
+VAAwF0wiwYJRkwilEeZVNWAFBCgwbUQh+mGiG+XIUqqnwJFI/t6rGoZWexJYm23y5ZAJNgQrES6yukY
+oFgDjGUgGViAiOQ4wRMQOJRgDSSQGV+AiYAAAmQHTF8QooO42IigQAkgGMKAwEuaZOOCCZIKStY/6Ym
+lOOVVqO2QillXgAJjOAFAAM3XAABLGmHYIKZ/iImyIhtGiMrLAgr3Iiz5SMd5GMPggMFUMCg6sYJVIM
+qnMAJqIKengAjvINz7huujizJ2se/OSqkpuzISSqlOlgc/kAK+ACm0uFT3udL5uFT3iQfEuV+NkovNM
+oBkMFQuupSioEtaACs7kIfvmStUmXJxtiHDlSGZiiP+WpkAeuQlaiEYECELIDx2J1XJQASWEhs7mLmx
+Kbu7AgqsOL9qanpWEgADgOact3WxU4Dvh3u4I6SnK3tKAmPKMne8sjmfGveCiCQ7o4CKomFCOAwYMIp
+YcADVBvyPK4ExBu9KVc1VP+DNWBuNYBe5wph536D6D0t6ZYsoxKOGESOyq7uyq5nyxpK+rDADhTizMk
+kqN7kHN7kzEUlH/bhLigtNNRC7yZl8gEvH/YuIOburZauPfXDQTwv9CIEJ0LLiGatsJ5k3TFAu8EOER
+CBLHUvERTB93YvEoAv+Y4v+EZI9haP+bav+5av+5ov/MJv/NJv+xYBMRZIs00uL8FbvlUCAAPwIwjwA
+FfCIxTwAdsZ8y4wop5uGy0CuGkdgJ3SgEmwBUtwBV+wBm8wB3ewB2ewB3swA1yADsDTOxlKg70hg/UJ
+8BFfGszCzA6f8MVkGtSwDd8wDuewDmOqITKwD2cV1ladWzr/QAFoWgIccTKxlRIrMRLrbxIvMRRHsRQ
+nExK3WxNrLxVDgLzRARd3sRd/sRfvIx044Q+Xccc5cEfkhzy4qFgNAP0VoxtLsQDE8VoNAB3T8VnZsR
+zncRzbMR6T1QBQwA60AAsYViETFgsUciInMiEr8mAxsmHdwBzGHCVXsiVfMiZjcgosrxl3crME8bRYn
+UjaLxKor/Y+QP3KkiqvMiu3sivbr/y+sizPMi3XMizHb/yyEiOwEi/3si//8i4XQzMUAyd7sjHbExp3
+hBYkQz3sToosAv8OABFcDjVXszVfMzZnszZvMzd38zUnCDYokDiPMzmXszmXsyzsAi/YAju3/7M7z8I
+s2AI8x7M7szM91zM+1zM847M9HLM/M8tnUV0ouyW5ie/rhID8mVvkRq4DPIDWLbRDP3RDRzREQ/S5Wc
+BCT3RFb3RFP/RGW3BGc7RHN/RFl7QFRAAGoAEYrPQXtLRLvzRMx/QXBEEo/LNNI/PpaQEbHANP8zQVW
+EACCEAT0EJPF7VRHzVSJ7VSLzVTN7VTP3VSu8NNT/VC3MNWaqU80MM9KGpAf+InLdspea0sNQ4veW0R
+hABaOwgRhEARnHVaO4hbp3Vbz7UpJ08CWEBcw/Vbz7Vb5zVa03VcF8Fas3X4tvVbh+9fqy6nIc9dm0E
+QBEEZmIFkTzZlV3Zle/+BF9A0VW+23pQe6wVO4GyBFRDcFlTB4IA2aqe2aac2a4P2arc2bMc2bPtNGq
+P2a9t2bQdObt82a1cBFIwBZ081KiiACBR3cSsALHC1iAp0s4gyZoRi9hrTG3PJ2HrgMHjD2W0g4AFg2
+8EtN2z3dgsDmgqPloTAC6pO5dgieK83eKvO/7G3jGAC4AHDJeztdjeu7mw340EJjmgdXG3tF2QABji2
+GSzDMrCDgSe4gi94gkvDL2R2TQe3hO/KM3CB63nEFajehW84h3f4wz0BcE+4P2/CI1gCJZy4JdBBLOS
+D1SIiKDe31hbjMSlBCNDfAqzityrFa/YfA7oI3A0gXd7/IousHQOezjDypgR+QphOQLR6wndvoIsMno
+83LockwXsT+VxOAOoko+4ALu1IZgpywwNuibnOn1hBYAIsgWMLwUz/QjosgxgsgzRIwzK8OZ3P+Zwbe
+Dq8uYHPdISLOKBLBj7QQuCEoRZmoaEnuqIvOqM3OogHujGTuImjuIorN/UyN7M4d0iAtYF4gm6GgLae
+4jAoNgOsYiu2XSrEIitUoC0qxYl8QjgSQy8OHoomyJFLjmPyIibUaP5VYDNuDjh+AipQQDWOwNhVJpH
+c4giIIwHg6ytMwCswwgjsehJcgALYHyt4OibA1TgAA6jPYz0aKROUQRBgdhD8AjsUAwAk/4EYSGacaw
+IrFAO7NwOdF4O9GzgYaDak7/tD9EMtWMFGBrzADzzBF7zBW2QKhDi//7CknzglpPiKYwQ9nINC3MNWy
+96LZ7pbuiMGiIO0rU5degK5Jk9eTkDtdINfTjv/RaMtFuYLIua3qpU8NiaSfkI3SGYvXkAJ8F8SZCa1
+7mUJEACTMoKYTgAxVCaLKMCzr+a2kgABbEgrasKQkhISOE6UuKkneIJ58+a4l3ubv7kGLIMGiIE0XIA
+0YKBlUoAYIHgZOIEZ0Hm+//nCz31C+MPU3j3e573e7z3f973f/z3gB77gD/7dFzPdj2zDU3os9MMn5I
+M8WAQs9IM4lMA9yP8DLFw8rWV8r2g6SED3iaZoKTtAi76ohGA7BfCIMNgoKnjCCJDAJXQDj9ofN/woj
+wjpkWsdKcUIjySpujoptkrpr6PCas4rO4wDaAIDkVzAkQx7ZPLfkVxOZY4DtZ6O/I15lMyIyDOAMNi1
+Eji2ubv5MlwAO5hAKJQ9O5AjZcb7nD84vTcDGDiB3B++/M8//c994j88HST3KuSDOMDCKqwCQJgzx6n
+fplXm8iVUuJBhQ4cPIS40d4nTpXPz5EXU+JBWFY8fQYassiQCAwYWFqVahCSVJwtKXmEwafKTsGFJJp
+DAhCmJpwkTPqHKyYrEJ6CYAJB4BYwYqk/cUjkQ4An/iQABi4a9GnbhkzcSnkawKqHJEwlWF0ho0kRiX
+BIKOjGVeDXi04ULE1gBsMsq7AgSjICNuADgEzFiqT6lmikAEyskrFgpEdDAZIIQZpw0MRPkVzppGpQk
+CcUuiQkKoT5pEFNM2rJlv1wv++Ik1Ebbt3Hn1r2bd2/fv4EHFz6ceHHjx5EnVw5cEx1KkCJFokQnVr5
+V+czBOhfr3Dlx+cTBQrj89sSKFzMW7yiSvUcxMk1akJlAvkkMD2YyIPLqFTFWn/jrDzJigGEFlQKBeY
+WVVFBBZamlgAEGCZMecMA+VhLkL8MA+WPFv09Y0fAVp1IJ0MMFA3QQQWBAJBCVEDWU/3CB/GRywIIZ8
+2Mgg5M2MyO2YmJbpphmlpGmGCCDdO0XL4KojbwnoYxSyimprNLKK7HMErlYJgjByxBIOEGcfjiRJzxx
+Nollnk3ugSVNLRMyzyKMjFuvPZCwgCKURQZgwEI/czSJsgYslA8DLzFI9FBFF2X0S0YTZYBQkxwoFNJ
+LHYX0UUdDULRTThP9VFELJG2AUAsp87PSVR2gDAMzvvACjDLMMIPWWnG9ldZdbfXiiybhDFbYYYkt1t
+hjkU1WIXPEoeeeecS5B7t5oO0nWDnPoSc94uy886Mn2JBHiQSssirHctEdQN112W3X3XcHQFdeeOmt1
+95745VXX30HcP+gDCeCcELggQku2OAgAnZS2YUZbtjhhyGOWOLjsNW2Tm9F0iKZetIJcBEGZkyAAU04
+LNnkk1FOWeWSDWvZ5ZdhjlnmmWHujxibcR6GnSR57tlndSYOWuihiS7a6KOHw5ZO9TDO+AxaoIaaCgs
+SyGCMqLHOWuutue7aa6htwQfpscku2+yz0U5bWKW3Ha6Wptl7Qm65s6jCiiqymFvvvfnu2++/AX+iCi
+jSUdvwwxFPXPHFx2bbOGe0yKJuuO+cnPKmsbi8vczxfgJoxkEPXfTRSU/W2ocdLw4fWqAQXPMrNBfpC
+thhjx2k2r3NAorPS+/d99+BD563e6RFnaI52yb/DhkurGje+eehj1766amv3vrrnedd+O2579777+FM
+Hbl6yC/f/PPRT1/99dlv3/3ywY9f/vnpT9acTfDPP5NzjD9v6foBGEABDpCAw9FEAFCQwAQGoDoOE18
+BIRhBCU6wfqNAgR8wiEEUwKJ/yKPgB0EYQhGCbhMXzKAfUNBAhRCvIfM43UbooZwHjpCGNbThDR1Wwh
+Oi8DqZGMUq7iGPjFirH9Uxh7Re+JB+jCeJSTseenAYRSlOkYpU0uEJU+iPTYDnIOe4XyzkMQJxiGMeb
+oLFPfD3nVWscSBjvEcsVnEOeWyCg8KZYRXxmEc97lEjV8xgCu9RioTEAhbiWEU//4R4nViIozqLBOIq
+wpMPOsbijbDgBBsh2cTeVCx5fPTkJ0GJw00gUIEoYCAauThGIGZLkYzMxyI5CEkO0nFMhFxks9BUPOB
+wMpS99OUvJ/iOWAyTmLH4hyTxdw9xePFNt4TWJsjIQVj0Y42QNEc/pgmLVciDHm+y4xP/B0xxjpOcH9
+Tkle5YTnWuk53qTGc74RlPeeLxnfO05z3xOcF65pOf/fSn9/b5T4EOlKCLC2hBEZpQhRbtoLxpxzOcE
+VGJTpSiFbXoRTGaUY1ulKMd9ahE3RHFh36UpCU16UWZsY6F5pN4LWVhB7PVyeAk4wxb2IIWcIrTm+aU
+pz31KU4ll/+Fnw6VqEU16lGRmlSe7nQLVqjHDZPBhZ0uVak/FepQsXDUqVb1p1jQ3krhGQsKCOYnF6B
+ANWBqseK4gwvtcR3cnqAFLsx1rmGg613xmte72lWvd5VrXm33VtuJRG5VuAIUnlpDZ7Q1bpd7whboal
+O+6nWyfdWCYAf7kd2BdZ6buEBFLnGJTUxAhQxraG6OwbmP1C0LbdDCR7CQudiqFgtPWAMzmPEM3T4jF
+KF4Bm6Bi1vdBpe4uu3tM5Ix3NzqNqLDdUZwa2G5KsxNJJy7aRU4N9vpFla22PUubZ9whjM8IW+JpWG3
+PFK3LbQhJJmTrkee0Ibn7vYZnajFc4PrDGX/kAG4yiXueL81t+tq1yPatVzevsrZdW5iBJvgxINHW9q
+FnRY33RKc65iRt+lumLrfOsYzlGEC1TxDDGJwBzOcAVEVH3e3y4WoGJ7Bg064g7ed0K0YNGCCUNSiAj
+ZG8UTHmzcuJOMYtMjchaebBSmwYQ2tQ7LcaJEMW1y2sE8ubBWkADUo6M68IsQHG0CiNy4wo8ocvnKBk
+5HbUJiAB8jQMY1/u9tkVCDFyWDzbye6Dlu4TgvHSEYy2tCGNUhhbxzebno9p+B4MtjBECZtQuRxTYaM
+aVgUvs16nsCFNpzhGFyghTOIXAVOdyTKUX3rh5FBAWWcRgyd6AQyQtGJZPCA/wchBkAocGxjTqhGGQB
+g8wQ0UAsyaGAaz9AAGf5MYmLj9hjNZkaQodCGZDyh2U+gxTHGsAY2WJsWZxjy29ZwjDY8wRlneG2U1a
+AFWlibC34+hm2TsY51c7mGX4avGtTABlpcDdTrDve6a0Hk16Y3uaGgQC0CzoPeaoAHz6iFamphglrwg
+Bm1oAB+iRzwWrguc8lgHRvOIG0p09TaxzA3kbfQuQQrmpyMfjAnIszFWGzCWsuUZD7M1I97mGMe9KA0
+lSxtGzt9W96fHvIanHGMdbDB4204BhQ+8uFkEEADFEhGqyXeCTGYoAI51nooKjBnsItdA7MWw5rXrNu
+qv7kTJv/A8xmkwIVykxcKbDiGFLYA6HV8+AxR9XiU1yBXd9DCHX1PBhuYroVyT5um6xgyG5gxZNbRm4
+b2nq7hK/7pvJ9h8IUvdy1YR3B3iIEHJ3aHjsOugU5oIBR/pkCwn4EMOqM49MnYuGaPwYYU5B7QUe67G
+txhC8e7Y+C1XTnLxelyCF+gOlvMxzxeCcfsnGOS4riEPC45nikFfSPrqW2aCT/kJ9RCvmswd6c5DXWP
+fJjH7uBBiduODK0zPOBiIEMoNOAO1eef9RpwxtknrhNKT/9qwR2cwR1CofSSIemq4MPGgLzA5RhSgOm
+ijAvGawGfpgKlgPMsUAsiL8vubvGkgKb/pg30kkEKQG/LEKvewOwjQO0Y2CoZoODw1kG8NCYLtIzg6i
+v/UswEOqECRg/HksEdVm0ClAG5KuC3cEsL1kDeBCerZlD3asHuuEDfNIYWIm+upq3ANgv5FmwCQEu0H
+s358gGVzAGWEGIVCgk8YEGmyIP7NGI9dCfgOK8KkqEKauEMKLDPxuAMagEKOCe5koECeKACaqHV8K8C
+xODhAPA0RKzhREwDnoHNFG7iDE7hHrH1KoAAQuG5nCHK5q7d1EDeIk9jyC/a2gEKaIEN1IAZpqwWikx
+juCCu/mzjiMzx7jAPo8wdxq28WJALpUy+NOYJouraaEFj1I113GsBnUHE/3Ts7HCs7FZvERWu7HgAAD
+rBE20huTYOXGhh9waNFtagFrhgDY4xGbDA9thA/L7l+LzQl8RKMC7gBEbgrPIBFgqJ5gjpIGLBHNSwk
+KSJjqoEDiMCvdKrCl4rtjKtrSbHcuILopShFo5QuJJBGXIrIuvsCJFht5AhxZxBIiMKxWwvzRDOIgPu
+CJsLuQbuteZqw7CACwaubhTSpuRGqhASvl7SdWBSqLCgbjItJlew8lqwwIjytV4r01IuIcPs03QLGTq
+SIpcr2VKKGZQBGf4MvyDKGdRAcHDKu75LuzgHJm8yvbrwHcvJpYjnhZgFiWyOf8ykDGOIWc7pDcHJDX
+3DIP/dCrNCQrzwTQ3Eiy/98gz6UjD9MjAFEzANsy8VczH/0gZDgruOzLAIy3X0crpqR3CyoCe/ZbWeo
+MtCyPKa5syq6y/xrTET0zARszG9TTI1Ry8RzCxhE0oIEiLw0luuIAqQ7DLlBgpahzd5c2588zefIDiF
+czd/kziPMziH08n05jG368I6rMqkEzqf4Aoos28GxzNBCDQdq9CeczmTEzyPczcDpzwDpyxjMz0ppi4
+vRnOsgArEQAnkkwoMKwuiAD7lMz/1cz/5sz/98z8BNEAFtD/FoAcM9EAR1EBl4RYYtEEd9EEh9BZy4R
+ZwIUIt9EIxNEM1dEMz1B6Cgzvhxgr/xIATXK0TyAAzn6ALSnRFWbRFXfRFYTRGOyETTMEVbPRGcTRHd
+XRHebRHfbQV4EE98Wk2OeJyrHMJQsACImBJQ0AJmocKkAADlnRKI6BCWIVVIOBKKyVLHSBLK8RKH4BK
+xVRLyZRMw1RM0TRNRyARbqBNa+BN4bQGcIAG6LRO7fRO8ZQGYmAHdCAG8lRPYSBQBXVQCbVQX+AFBhV
+RE7VQBVVRDZVRYeBP6bQFcuFDh7JprsAKMiEQ8KBT8UAQOqF5xMAQ/gAPStVTUTVVVXVVWfUO7oBVV7
+UOZLUOXLVWbfVWcTVXdXVXcxUPOsAUhPSeiNQhDFILugsk7jMECiBH/zAACZagCP6EWYkgBIqACKy1C
+KoVCbB1W7FVW72EW6s1BAKFAQQAA6b1W8EVW6kVXIkAPsb1XRmgAC5AB1wABl6ABgghX/NVB14gBvw1
+Buz1XwG2XwX2X2EgBlxAB/i1YP31XhVWBwz0YSU2QSVWYSNWBxKhByQ2Yy/2YXuAECo2ZC9WYxnWXw+
+2BXbBUjNGtcKMDALBA2AWZusAEDJhU+1gAzwAZ2XVA+ogEHz2ZwVBEH52aIm2aIHWaJGWaO9gVmXVDp
+y2DuyAaaUWaqe2aqWWZ62WVjcAWIN1nniJaUBCCkyuw+CLJGYiVQSFXPOjARYACYSBGIahZd52GFjhE
+v/i9mUYQSu44WWAYRg+5mwZIASAwSa4YRjeFmaG4W5fhggWIFUEAFACZQFG4AbGamFjoBB2qA8sFwZu
+YAcE9gZwoGRfYAduwAVyYHNdwAX8lQZuQRuw4XWxQRtcVxu2QXZhF3Zl13VvFxsGIRd0l3d14XdfVxt
+yYReEd3eRVxsQoV9fwAUI1k8pVWW/ZQZnsXVCghPwgGpdtQ54NmrrgBT+gBSiNmpNgRyyoRzIoRzKYR
+NawXyz4X3hF33hd37fV30zwRXMV37PlxzcV3/hlxxawWmftgOw1gPs4A4OOIEPOGZpdXxlFYEhWIHro
+FRpFYEFeGnvYAMEqWtLZy6V5Wv/ueVbtqDvzqAK1lGwzLYyzmURQgBHQOYT6FYpImQpuEETLiBumaI/
+XgEvSgAvEoQY5jYqzvYquKEuKGACGIFAlBiIkwAVCEQYoLhvMaFxGeABMEEq1DY/FoAHcOAF2jQGXgA
+HDsEP+iAXDAGDCoFgW0AHEGEGArUFegARWgBRn/cFeuAGvPgGDnZ0EQER8HgHdCGQBTmQtQEXKgAECi
+F3czd4FTl4daECjNeRK8B3fTd4c2EbTmEQapeQGVkbCNmTAxkbcoEGXAARZAERVNdPWSBlgQM0M60VY
+ZINtuCtrEAQlnZnsRaBO6AOriEQruGW8eAayMEV6HEQymEEMqEc/64Bfq/hGsohE0rBfclBmLNhmvUg
+G0agFOw3E8zXBEBgBFqhFChgFKZZmPn3Gv6AVifYFajBZ0mBgOtgl3fZAzpAEKihFf4AnhvYgOeZe3l
+2A0hBEDaAe/0ZZg94azlYnoa1IewkC5iB8PruGCLvrVL4ATzhE7zkEzzhAQrXXRkAhlmBAk6EBOgCFf
+SCBIaBEUYAMC7AQyigMA7DEzwhFVIBbRvgKrKCGF46FUjALDCBEeICAHxYpj1BKzDBTyzjHzDhMT6BV
+PLjjgUVYMXYD3KhD0jBFPygECKVlNn4BnIhF/gUEQhBF3KBEFJZBnpATwHWX12AEGRBFgAWkAdZkP+1
+4Qe/+hQOORdcbRcGAa8RWRu8mQIomesoQBcGwQdxgQe2gQcGoRNyAQRMIBdOgc1yoRBAoBN2oRNAGRt
+ugQZewJTNenVXWXozzRlsIQZrgRkGzm5smVY9wJdNAQ9IwRVIwQN6mRqAWZhLYQKugQKooQRKYRCuwY
+dcwQRK4BomgABKoQROIJn1YALuFwD0AAQmAAR+Ww/KIRsooBSauRyMW5mvoRVMoRXQWWupwRVc1RXgQ
+RBM4RpqmxquAb3LQRDw4A5gW7ZpuwPgG7fbmxpkOxD6Gw982b07IIM3OKEVBx1WYZjWCI7s0lgWmiEw
+re92rw2YIQW0jHNSGAO4AQn/LKCIuUEJqGIyZgKkfRgYNGECLgAVKAAYkDgpCKOlhwEoDOMTEmAAZnp
+tcVorJiAV7kLFh4ECCAAYuMIwisAAMGBwj5oyLIAVGIAYMAATPKFfZqIQ8NhgpzoX/MAQsJoQtroFTP
+mUe+AW3FoWcEEHcqEFVpcQ1Fpgm1d1YUCuscGRPVkbTgEAQACvO2EQGHsQcMEHIbkCLDsXBHsbDpvQO
+wEAeIAADNmQC4HWeICsEcAEEGAQQIAHduEUeGCzOxuMnfdfaWC0WxnM8sTpUgDQkuHU1+AJMqeWl9YO
+bJu+7wAQWqEc8KCdf1lWg5kcTIEA6vEaTKAUQOAaBoETTgAE/yhgEC6hZkcAuTfhBLJhAkwBBLIBBDK
+BE5R9EMz3J0ygFdBBD7C7mQGBAwShvO2gA3yZGv5AFEwBELKhDrIhEMrhD2hbFLKhFe7gGujbDgDBFN
+ABD8oBEFxBFPTdFK6a4Nm7FNpZ4TfAwBF8cTbhAFJg4iceACTsg9kTbKtgC8qt8JJhDZRhKz8ihRmgC
+BBDGJAgBBwAFYhgANAWpFu8LUYAJz6BAsZhAtziE0AEL7wBL4RBK9p1GIS4QsgVK7SCAoSCBBpEpylg
+xlEhbhUDpo86Pl7hyRlgET6Byk2CB3YgUBt2qkkhF3DhjNN4Uk2ZzHegrE8ZEXAgF1LZjru4ZP8bVq6
+/uu59txNAoHYhWQAbGxcue9MvXbEpYBcWW7F7jAJw4RS0gQeSXQBNgBO2IRcQoBNwYRcSe5JBWRc4u8
+0FNtQrddSxK7y0svCYQQ0WS3AytbWjNhv+YAPcXRDmHde9d9dL4QTiobn1YBSGXQ84YQIGob2BOxNMo
+BzAEATgYQJq/5hbYRQGofnhgRx4Gx6uAR2aHx2EOYCb+Q884FXPXRTIgd0B4Ro4oJevwQNMwRQ2oAPi
+mxoAwfWzAfbDvw5MQRRcYd3Pn/7Dt73X3RUaXoMfXnEAYlMKNz8KukkRK5/ChQwbOnwIMaJEiOYucbp
+0bp68iRwd0qoC8smZY7T/tHA5tuYJSJBLIjBgYAFTqkVIUnmyoAQYhpcMFnwa9orCBRKYLky4wIrAhR
+HESIxIwmoEq0sASLwCRizVJ26pHAjwhESAgEXcXg27gOrTUFQlGDFKkmQCK2LAPAEDNgxTAp6sMC16x
+WonzwUmcNgAseNFjBqG/Pjp49gPoRc0aLQghGtHrlw6CCH6jOOWixgxXui4YeNGYtKsS+/QtY1HJ9km
+dm3rZEKbtk4VKuDCBQKEidm6QOTqTSGXtuMVkvMwMQgbLgC5Zu+qULsTCB64cA83sU2XruWtW9Ngkav
+jRHxsVj5hQ7LKyDMqQVoRdKfOnQ6irpn6Qw015fzhCiCu/9hRRx14XENOKxSYcMI1epSSyQgUbFIKCC
+W4UsoEpYxwwiDkgFjCiCWY0Eopl2Ty4CggnICiKxRQ4Eo21/hn4x8bCGJKIK5QQwog5AjiyjWt1IHOj
+X+Q0so1gQjiH4CuDEjNHaWIYgogopBCiiCt/LGlINSQ48oGd2xQinpqrslmm26+CWeccs5JZ512KiRQ
+QXoidGefDlV0UUYb3fmRe1BAUcUTUNS30hIP8GSBBQwkEOlLFjzKExFXsYIKKsCwwgowr7ySyl3EoBL
+qpqykMupVoiLxkgMNvIRBqqMSwylgd4WKqqiiAhYCT5YuYIEDwsY6QQIX6KAYDDoYcki0hv8UEgMMpL
+kgiywt3HCDYuWZJ4MLOjBLmrWtyaLLZurmIh67ym2mWy67pOsuNrrMmy428oqnDS7sptvucvNqs8st6
+eLSrnjiIdJseeelJyd7KyV6KMWMVnFffnXY4QEeeHhgxx8JIohggnWQciM1Tdp4TTZFtkxNkS7fWGPL
+NV/z8o04t0LNzjTn3PI1pSR4R35/fKwgHnX84cEd1wCC4B1/3OFBx0yHvDHJdmxtxx1c67c0KdmI0sG
+ZafqJdtpqr812226/KRBBeyZEj0J1NyTP3fn0w81C4vTztkKAYqRRn4WuhAUWICk+cRWOHsvArJALaw
+EGll+Oeeaaay7p5A//bA565i5NTvpLCyzrLQw0cHtDDTCYSxohN1QL+7etvbCDDrWzZu0Ovv8OfPDCB
+6/D8L4XbzzywCv/Ow67s2YZxHFKPHHiIGXR+H1Kb61xySZ/b/IfgIwPiPjkj2/++eiT/0f66r8Pf/kj
+z5/1/F0HovXIJW+tP8n1m8w/PHRpY2cyReAOiMAEKnCBB8yTnn6QAljkYxP5MEdCxGEOesjDHOaYRz/
+EcQ55rIKDE8wHPcRxjwqaY22DO4cGDde4GDauJaWroQ1viMMc6rCGDTgducr1utd9qwW2KyJpTLODFr
+zgBS5oYhOZ2IIWOFGKTYxiFF1ARStqUYpX3KIXs4jF/y9isYpjdKITmbhEFuxiTtSTYQytMAiOVc0D4
+EPQHO+IxzzqcY987GMe6zBHQN5RkILkY4KqBshCIlKRd+TABgBpBw6cjYGUrKQlL4lJPA1ETwdJyCrm
+AQt5wCIWm1jFJmABC3OsAhacgMUpN2EOWJyjlCPkRCzmobYWvpBQbnQjDXd4LMkBc5iTk5wwiRk5H3r
+LiMxspgtyIIhBSHOa1KymNa+JzWxqc5vcpCYpTAHOcIpTnCmESBt7uRIrJAEJ7GynHkjmARO0c570rK
+c974nPfOpzn/zsJz6V4JdFfOIXBC2oQQ+K0IT6Ih2ZbKhDH8rATRwgBRSl6AESEktY9P+DgvSIxQVHm
+Q9xgFQesRApJ8SxCnqgspxoa2HheInOGY4OmTStqU0h18MR/LCZPLXdM/GzB48JdahEFar39Ae+pALw
+f0pF6sb6d9Smzq8DVPUAVa/aATregQPliMg5Y+q4BzhgrGMtQhL28IESEEGsZB3rDhdww7a29aY1hau
+w5IpXufIEA2bwgheCANjACnawhA3sX80A0cQqdrF9MscmHjuKyG7iHAq5hARjAYtVaLYfsBBHSVt50h
+HGwoIiVSknKJs2lw7KTocDq+NmStfYyhaHPURdT28LPRo8MxAdkGodsppVk3kgEKQQhXGPi9zkKve4X
+Foucpvr3OgqF7r/zxWEfrjq1fa4liXHtBQRiCCYYzkACUqY5yLKa8/z0hO95IXV5IjAXvLGt73z3acS
+aEJe/MZXve0F5gMSwNcgfAENviiwgQ+M4AT74guARSxjHwzhCMupg3vDoDw2Qo973AOD9DgHBvNBWXm
+gMKTiYKFFCLfaOrUWrI+brYtfjFNl4va2LhjEH2xQiECArH7760CQSME0qgWCHOQoRzmKTOQkH9nISE
+6yk8tRJCc/mcg4U/KSpUzkbGC5yOXIRCuOLOVyiKIO2DWndre7BGPV0K6RY4AnuCEMbnBjGOPAxFaGg
+Wdh4JkYjCAGnocx5z8LgxjcWESbI5cAJAQ60Kvw//OfHz0MPes50JDOMzdQgYk5s4IRlR4GI8wyDD8r
+IQGS2wvpEkCEMjihCGYIwi/SwQ5NiCEd6VhGrIvBDmnUmtbL4PUyet0MBjtYwsQudoT7gWxjC+7EgoL
+hdl8L42jDuLY7nTEzXyAIpRXtezu+g9I2QA0x6Xg/YstGhkYwiKBlIxsb2sQETFCCoKn7GuUYRCnKoT
+Mb2cgEDCrFIPBt7nTzu2X6nreNyHGNeJsgE+VgWZbJYQoyd9XMz3acMBOgZgY4YABEMLQwQ0WMolzgE
+yRIgjdeQZe7jIoCrBBGVCZwF6yEehifEFYDvsINTUyAAhPARAlQAZSUqxzlWCFGXP9GgIlhmAowr+AG
+Jkag509MgC5zwQowJuApYsS55jzxBAYEMLkElAEMXvgCg5shjWZMoBjLaIatNRAKdvxaGnP/td1/XYY
+gDFvZfO+73zGpWmejGbbSLvxNZWztZtIAP0kFEDX+4KVWdMAVRAJE0zxACoRToBTkoEY2MgEdagBgBP
+AuxwgUbgJTXKIUCR9EikJ0jUGYgBPXoICAKPShTOgBAJyYgOcTboJRyOj05CgBCDwEABNYCASc9w84s
+xHxMj/kq+i0whIktwCBIsECn/hECDxxDve+JBXDQAXLQUUUTxzlFVInQVQ+IZWggPwTmMAEK7jOk68I
+Q1QsJ8bPjzL/ASMgF6hAAiSACppAAUUBFUYnFJrACiSAFp8AABeQBKhwAa/gFJhADCNwAQQwF5jmCUo
+AKeeACkQAKiGwAKVmBmAQBH4VBLgWCgCgCaFgAknADiQQCmJgAqFQDDVYDHRXUHind39HhEVohG4TeD
+A1eIbHhIdnW4nHTIunMUSzARyiH0uCDoFgCkQybphXDh2CDpkwCK4AACVAAKVgAtRwCSUADxlSAhQAI
+mi4CSVQApkwATUyCgCgBwTQCicwJbqnByDAISZADndYbw+yeRRwDSeQCSdQDps3AtkwApnwIQ0XCBwg
+JNE3cdN3ZmBlfZIjAOz3AJ8ADKnACkTgCQOQ/3GpwA2MMAIn5w0kcAlyUXJIx38UgAq4wnLAIAypuAB
+aYXNfoXTyJwwT8AkUEBSa0BZGEYCMMAHjYCEjQIAloBZ5AYfHKAwJWHIEQAIUwAgXQAwUQH6eAHbixw
+Cs8ACpQARIwAoCUGpj51d/VQzp0AwaIA3FIAYEUAxJoBZisAwXoAFDIXdm4ARmIIR7d4QJqZALySZJy
+FoV90tNKJHDhHhQWETYxjRPdSauQApmkg2GMCSmYAjU0IWZRw00UnssUgqmsIixpwfwYAJ6UAIj4Aqt
+kA0nQCML53vlsAk0YgrUMAHXEIb81oiy94jXAA+DcIccMgKmxwmO6CEnkA0mUP8KlZgNVfJlmphdEJl
+xGGB/9xcpSPAJqsgT5HeMKUcCzvgKSVACF6AJQDEjPwEMFKBywoABiuYJlmIs+sd/LXcBngCOaAEXa8
+EKbDkObjkOsYgJqHB6BfiXE8ANPVdyE2CKrsgN4uhnIUAEn2BqCQAMDsAKIVAE7fiOrSYE8kiPF7AME
+xAKFBAK/LiPJnABYlAMbNd2XvCDy5B3CMmQvembv+mQKlZxSkB4E2mcNlSRrfE8uAUDObBVg2B5HAMI
+OPMHP1kOgVAKPGJ5VCMKRLYJJ3Ai18AJ6BZ7IzCLyoczpzcK6KAHFMCepuBug8Bus3cNAagHmbB6ytc
+KE/CUp9f/CiYQfP9ZDml4IgDgCidSAqtgCnrQcA1Cb1pJcc+WZjwhUJ+AAVpBBBZADOZIfsOQBEvxCY
+ygCTp3ge33gBbICiVQhsTgZ6nAinmZAKgQLDjHokgxDAZIAk3RF5fACmuBCUkwDt04Apogog+oFhNgg
+EJRAg/4CiNAFMBwARfQf8Ngip6wFxDwFZ/AjqFpapMSAl+waq2Ga81AAtKgBCZAAfgYCppAAmLAChoA
+FXS3DGxHdyzIm7+Jp3lKhLqUYnSyYjElBuF1nINaOj40GhbJTDewWyDDMQoCSEqTVAiCB01yDSqjM67
+wMj9SkzpjJJXKqT2DqTfCM5XaCqNqJKD6/yOlKqo6EyDXMAol4Hs40zOfSjMiI30OQX1udAWOk3Ew0R
+O+qnGY8hImyAqk8gmgUqymCCqpgCrIyqzMiqzLGizHcqHRaq3RChjHGq3dp6ygQird2qzIqq2cYq2pI
+KgwgXEO0KU88SgBZgbNAK9ux3bx2gy2Wa/02nbL4At/VQZ66q//2nd8KngxhQVQEAqpyEOEapyGupxR
+aDs0UB6Lyj1Rkx9cY7HbljR4cDRFdTTtM1Qby7FCBbIe6zFH420lu7EkK1QcgAAho7FFZVTXtYm42on
+otKvXh1M1RGpi9QA8O1Y9y7NA6wBAS7Q8+6ueU7RJG7RJGwFFO7RL+7Q92/+0Txu1j8JmL2FqVyssCx
+BgLWh2Xwu2YSu2ZteCQwiwZ6uQsTABwcG2E1BiERacfvpsIuEPnjBTbLaXCjuRCaBTLCADfwu4gcsCg
+0u4gysDhUu4h5u4LJADl4hVVLUBj4tVkbsBlWu5l4u5mau5m8u5nXu5dNQBnlu5WXWrDZGrbmR9TUu0
+kKO0RPuzS5u0bdW6s+u0VTu0VduzuOu6rnu7EBApvwu8GZABwTu8wvu7wou8FhACaEAFX+CC8UgF0es
+F0huP1Ru9zeu8aNAP9sC93eu93wu+4Su+4wu+gIO25ws3CAAIQgUICJAQcMtsL/WQz6YFtOAO6vBr6R
+AKD5D/gnsRCrV2dwEswANMwAVswAeMwAacDuugDOtAa+sAwRDcwPCgDhVsweoADxl8wRiswRZcD/SQw
+SEswiNMwiVswieMwimswhl8DisswixFs9t1Bdb3XTW8jsIaAkhgwzvMwz3swz8MxEEsxEFcBDxACDrQ
+A0k8LkucxEo8Lk0MxVEsxYRACFJsxVfcA55BxVuMCFrsxVwMxp7RxWEsxmMsxluMxlxsD+jLxmuyCRw
+gCOQjCCeQEObLWHE7J38aUyahBn2sBmswBhkgABkwBmvgx4eMyImsyIvMyI3syI8MyYu8BvjQxm5zuj
+F0s73KAHcZAndZBJrMAAKwAKK8AKU8/8ovQcoLkAClHMpikQCr/MoJAHaTIxa1TMqx/Mq3HMsCsK45t
+AA6lTqrgwPc0rA9ZS1I1LBM9ERWZEZV1AIzcEVVpMxjtERcFEZRBM1U5MxbFEYvIERA9DosoA6VTM4S
+8cZxPD6C4L5womEHhMdycgzYU3GN8wRXsKtZkAVPUB8XM88hwc+9tM8T88/zrM/9XAVQ0A7lvDaXLEM
+4yxOz8gBFUAQWAHbHZAGL4AmegAkZXX+esAiLUH8hXX9K4AmfoNEa3dGLIKzsitHdZ9IdvdEwHdMdbY
+4vMSugDBMTUADAXC3PEi2HYAiEUB5LdDvL5DAxIC6rUS1EXRo9kC3Zcv8LUf3UU03VT00IVH3VVa3VW
+/3UiACxpeHNrSED8KDQZc0Q5yzHdJwPpQBLbCIOb/s27xwn7sAFVSDPrmU91nM9V5A4fd3XjfPX1cM4
+ixPYVRDYiqPXhp0Fee3XgJ3YhC3YiX3Yhj3Y1pMFVlAPZo02DB1DDv0SAwBXAzAACfAAFC0sW0EMqxB
+pdMYNdVYC7BBprc0NPSoMdgZpcWZoDz0W4zAVmnAJqDAOcDZncsYK3lBp3IAEpuYApj3aNrcAPIADFc
+ADzAIDN9AYj+EYffBDLkDFZdTF2Hw7PaCoxdMsN4ADOEADuDMe8qINp8AJnaAN27AOurEN8R3f67AN2
+KD/DfEgG+ug3/zdCRBc3/WtDdgwCPetGxCc4POtG7rBMDGQOzsAO2Ot2WaN1ul8AhJUChvlWBu0CQkx
+S6uwYatQYih1SiXuWCG0Sh/U1nUi13GSDIqizzNO4zVu4zeO4zmu4zvO4z3u4z9O41CQ2RV+J5w9Q8J
+00UWwAOwkAJgwDtM6fjRHl8CACkmQdJgwAYwAdJ8AFawwAa/ACARwFa6CFfiHyp5Ac0lQhp4gosPggK
+mACWXoKnTxCsKwCBgnAEiQDhm6CCh4LOINO7gDGaSQC6cAGYRwqNw9GV08A1W8A58h1j1AA6rDGjMgC
+7lwC0ukA+Mhe9qAAJ0A350wCOly/wq6cArVMQin0C+FUAHwveoVUOqprgvwvQui3i+DgAu70Qn68t4K
+kwvYIAtLdAu5IAszwBoUTuTl/J3oDAiCQAEJ0UqdtQoTxFkodWHicAmxcAmq1A+YlRCYNe22dFIehVp
+08uJxwgxoMAbrzu7t7u7vDu/xLu/zTu/1bu/3ju/tPuTJTidGPjE42wCe6QkhsAil+AlKQAyCSn6oAH
+OfggkJqAkAEBfHSAJYB47hGCp2HindZ9ORo3+ENgE3aiH1NwE9542iEgIWgAS8OGpeQQTcEAKvgAnAE
+AJdagFCHeg70Ad9QA1+YAiNgeik0QKygAiyMOxivBm3oC3VcgM98P8tMIADO4ADpbHp29DpFMAdvMED
+sgEC2gDrADAIFXAdgwAAnbANx0H2pyAcrV4BubD1JnAKFYDrYb8dPNDqu2Ac4xHsMcAt5YHs/N7GqEA
+AJ0D4hE8A1ZAPnLBCb11C0q5h4gBLsXAO045K075KJab4qURSEuTi8dunjGW+dswQor8mpC8Rof8Qpq
+8eqg/4m12zMQXwCaAEqcCOM8FOmGAAq1h+kOl0sEoUJMAOSOqNJKAWdNHwuAITwlBzN6dxwtiX3EgU4
+zB6hxlqwoAEA+AJWjdqAR8CNScMBqDRZMkADyDpt6PzfYANfSCSknGoQ48IuWAat/AZspA7t0BEMSD/
+Azrw1UWtGKYxHrgAEKd0UeiUy0SndRU68dgG4hSIdSYGgYh3cFunChU7EeDBA9cgHiBwdeQRLyEIHoN
+wmeCRK5cuXdpkvYgBA0YMnDhlwMvX0+dPoEGFDiVa1OhRpEmVLmXa1KnRe/OkTp2Xzx+snuLE5RO3KV
+Y+c5tW3RMXCyusVZvMwdq0SSvYWLH6dd36NKi5S5wunZsnz+5fwIEFDyZc2PBhxD7xsanS2PFjyFWWN
+GBQmcgiYphSFcFABJiFypVTDftEABOqESQmjMAEgNGETxQ0fUI1AZgmAJqAvRqmBBM3TwwWLMLAQIAn
+Ya9eKXg1ooQnViVGXPA0gREw/2KpPL8itihBgwUYhGEAtghYEQGhGeTA4UIGjRgvdvTx0yeXIT9+CLn
+A2UIWIllkyQVARG7RgZBbWtCJkBtYkCEnCOPTIaZTCqJAl20KqSAkXBRC4JQKtFGoAk4A6ESbXCgoxE
+QQBikoFwBaqgDETkZyCBdcOiFokJdkoilCnXhKbEgiizTyyKL68UnJnu7xyckmgYIynykFSyevvfpCc
+ksuu/TySzB7WiwyMh2bLDQiMEEPCUyKWwQJ9T7hBhhGSmDkFUaSQOWVS5JghZtPSviEmE+EuaQETIRR
+lBhigKsMCdAEWIQbRjVhNIkkXrF0FdqSIGZRYRpFIoHQkIAUE/8iFlBvgRFkQMAEHWiqAb/88jNkhx/
+9k8UFRBBxQYcddLgBh1hxgkEHGWwA9kcI5cNGG1xO0aaTZ6cdJKZOXMxFWoF24aEgbaD9FqaUcpl2F2
+xOPIWHXaZlN5dxqQ0XEWYj3ClMfPPVd18k5bnk33no8Ytfggs2+ODCxiyTzDMrE2CA9B52OL3QMPjkk
+1QyxjgVVDbuOONUMN445Isv9gS0BihmwAJPLiZZ45BRkZnkkj9ZxAH1BEgPYvVCc6CAEYqFAQdCCjG6
+EB1uqumGW3CdQcEXorapXpxeWBZInAq8ZWuub3GJ61y6Bjvssbf+2muxyT77a7JluQHrIBGWe27/uvU
+1JxZz8pFn4Lr79vvvMBVeGLKGK8OZgQYOd4CyVRlI4HHHSY08NMkre7xyy0NjPHP1IO8Zc841p2zxni
+trAOhiaXjBJtapjhpuuH/FoQUYpGYdhhZyb8GF3V3g/enfdxc+eN95b2EG5IE3nvflf/cd+N5ncKF22
+6d+gR7As9d++6f25v578MNXSvDBG7Oi8NLTV3999tt3/334EUedJhrqh6F+2PMH0oUeCsnhfwAGUIAD
+JGABDXhABB6wHPSAhzzg8UAI7k2CEYRHVcR3QQweqR8b1BvfMvhBEPqNfOU73+bid0IUplCFpTtd0Oh
+Hg9spTX/6c0EhRBEIHOZQ/4eBEAQPd9jDHeJQED0EYhCNeEQkJlGJS/RHCJ34RLsoyXtQpGIVA8eY8j
+mmhCvkYhe9qL4WFgtCNpmh/m5Swz90oA5rZKMH3FiHDnggjm1UYx3eyMY1esCOd8QjHvXYxzbm8Y92z
+CMgDYnHOxxSjXbggAet+MhHStGRkKRkJQczwsFt8Yub5GQKw0i1mpQRdjDIwQ1qCAgP2EGVd0ikHVhZ
+B0DgARCtrMMfTOEKV1zjGtTAZS+p0Qpq6JKXvSSmK6gxzF62ApfXwOUxfclLZBZTmcXkZSluSU1T4ME
+OHZikJZ84j2aEsxnFOEcIp+hNdKaTKZgcHPo6+U54snB+ov+k5wsEsYcO/OEPg9zABuC4ATdeIxDXwE
+Md7uABUpSDHNnIRCZcQQ5yoGOhriiHKy6RCWqUIxvl0KhCNzoIinJ0owq9hik2OopRcLQcwSzHKhY60
+myQoxwS3Sg6NOoKdIwAp9ng6UvLIQo7dlOdGUwHGN4ABqT+wpxCHWpTm8rOhbkznlN95yfpWcb7CSKR
+gCQFKe4giFIEYgPUCAQ1CmoHD5iCHNeYgB4amo1WgNQVAOAECEaQCQq0gqGZyEYpdFkKThxzEKUgRyk
+GwcwJxHQUpaDGIExhAgpkYgK6zMYmOLHLTAyiFeQYxWBLAYBMgMAEmdBlaa9BDlLAkalO7Rv/Pf4hFH
+M0YxniXMYHJcla3LIWqmWSKlV960WrXtWMNwhEH++wAVNQQxR/AIQpymEHshK0DmgtRTkki45guoICJ
+aBAKbprgk3EYxAlGMQJTjDeTGzCBCYoxXlL4V0TTMAVky3HIOpqAlfoAQSlmCw5LrEaE4yCAHU1xQRK
+5N1WTEA6nCjHNWYpCNQGNbfbe8c7qhGUc8iDHhuWRzqY9JSo8Ou2EyaxN3fLMBP+VsVcDK5w8ycDrdq
+Bjdu8xh84YIdWJBQQrijrWT1QXcnCgxORJUAm9OCKEaBjtOItwQQkMgpTjGAEj83ECR7I3czG4gQztW
+8p7nrRbEygHPAwLyfS/6uHcoxgEIOIxwm8DA8QXMPIChUFB5ybWg+stsQG+8Y3LgwUc2hYgh7W2yrqs
+hR/fRhfI95zo6t44sj0dsWThl+LXQw3e+6BA6x0JXKVCwjUwgMQAq3xdNO61gkMdgIJzoRfJzAKu26C
+Aq4YBHudSwEKlMPN7uXve1sRWVPowbH/La93W32J/boiEyZgK38vQYD5tteiJWjwNQRxWjzr2dH76vO
+ffxJoge2N0GoRRz/CIg5zrGIed9uKPGJRbrRsZSwEO+e27f1BSBMuxZTmt/ssfWkgkbIDNigEKmVcB1
+EAFRCk0Gog/hCIViKUpJm4BEVpXV1TZMIUeYGFQi2b0f9VONek17iEc2MxiFiQg+IO5eUlWlEOTpRiE
+4PIRGFBykxyuHQU8S1sJmKRDV4qFKIyFYSE7y23alSjHBgW9N7MoSRxrOIc99gEPdIdi3tcIhaXCEss
+ONEVeWxiHvPmV72Pfvbv5fsxku5323v2b4BH6IwFT6UqO9ABtG4A76ms+ypJYQpTtKIVprCm4AEv+F8
+CPvCDX3zgAZ94YB4+8Y8fvOCBWXlqKN7xHzhBcy2vec2LgpV5RjvgwC3BcuuN6mWhUizkcQ9O3O0cX8
+fbV1xP9n2ZvfS7FyEWs9gYtrtd+HCPe4RqiM89FrKQepTjH/vJAehzYAPRn370pf/860P/v/rU5771u
+9/9509f7x3Iw/b7ef7q690DjeR9a7Xy/nLmgy2w6Mf8YZG3smAl/2PPRyzogXV607b2G0B9UTvzCT7h
+azviK76cqCFB0KdB+IM1m8AIhEAKvEAMHIQl2kAO7MAlAgQLIkC52SAS/IkQDMGeOEEl+TBF0xfdE0E
+YLEDfyyJNSkAb1Jx5YsDY0QFgAZZg4UEg3AEhHEIhBEIjBEIckIUYXMJI6iAmfEJ8McAqqMEbtMEFLL
+6bsJrZiRoujBrfqR8wBEMX6EIybIEegEI0BCFGS0M2LBIppMIqHL4c1MGceIEboIFfwRVjeR2ckAVdc
+AlAdAlZaMDpwQka/2iBQmhDRfyeNVxER7ykGcwiBIxDFbtCgJOBHjClHbiBm4CBGwAWCdGGXcCFcNmG
+bdCGZ8EVGugBBlEaRHxEWOybRoxFWlynSCyfSaRE37LES1tFIJkBAbmF6dEBbQCRbVgXdtEGXdCBGdg
+Bl9DDGHjFWpxGg3lBarxGoZBCydg3XaQ0XhQuT+wBrLkBcpSQmAABeKmAiVDGWAFDpTnERMRGeQwTa5
+xHedTGXOzGePpG4cJE+KgX1jHHbfgWbQEBdgQleLRHheSSelzIacRHbtTHSpxDOowPBrEBcpShOtSBZ
+0HGQdiFEMEGMYoQaXRIk0yMhjxJWIRIiVRAiqTDof+hARboAWgcoxswF21QiZcgxVzgRKwpSZXErbFb
+BaJMC9wDnFkMSlp8w3xsSU7iR3CUkJocox3oFau0yqnMiYRUStyChUuABVjQCnMogbx5in6oki1JSq5
+8RKaMSKecKqh0sTwcQzL0Qt25y92pS6kByrVUp6jLC59YhbxBi7JMwXLii6EwB074ErXsS0Vsy7f0xp
+esyPj4H3K8TMzMTM3cTHLsAWyACV3ABtEcTdEETZggzc80zc8sh25oTdd8TdiMTdmcTdqsTdu8TdzMz
+XFoQXtDC7DMByVRi37YhLALtHswB3EYAaq7hHw4B0OTP8HMh1WgRwF0zCeEzMhcsbj/FC6r0QEcIELw
+DE/w/M7wxIEw5Ez0JEcawEwayAFHMAL4jE/5nE/6rE/7vE/8zE/93M/9PIJxKL2xtCy94IQSoId+4IR
+NCEtxuAepm86wHE55MLTY2wQGpc6m8Id6aAcN3VAO7VAP/VAQDVERHVESLdF2aCLrfAqWzM6JdCHKzI
+ksBBa6vB299B3rsZ3V6UIYzdFLs4kZcM8jMIJGGFIiLVIjPVIkTVIlNdL6DNIlLVJHeFIpHVIjCNIh+
+M/Siwp/uId78AclGTsGDct7iIVzOIvXc9DfXAV6mE4wScmgYAY1OIMzCAM6DQM5tdM7xdM8pVM5ndM6
+xVM65QIuCFRB/wXUP/1TLrjTOR1UPfXTRnXURv3TPvXTREXRFLXF3zMTt2TRp5xMBrQaU7oaY+nEOow
+BXiEE2oFRpdFIMoIBWdgBWYCP2iHVMSIjY8kBJfABIAUF1xyGbmAHT/AEdoDNceiGcShWY3VNZP3V2W
+AHb4BNbhAGb/AGbljWbnjWYKhPYyhWbvCGYZ1NVOCGZG1Nax0HVgCGYzVWa31Wb3hP/1xC2IsFNW2Ls
+eCE49wE6Lw96eS/Nq3OnmAGLiCTJ3iCTK0CgjXYgT3Ygm2MgUVYx2jYMoFYg32MhlXYMoGCerjUplhR
+TqWq7SwjTLyBF8ABkdVKkTVPmiDHFrgFRIiBHf+oiRdYz/jAgfjAie+snVzQgZ5sAQSpCZq9n6jRgVu
+AD5xwgUtohCNAgkYwgmAYB26YABIQAW/IE2ed1m4YBmEA1iR4VmFwza7tBhJ4hSRgBG/9hCQ41iS4AB
+JABWCYgCSo2mM9VqSNzyNoBGMtAbVNgtYUBl9l16kVhnGQ1msFBnZgBRIwVk1ABXYAhm5gBEa41rg1V
+mM4gnddwnk4hy810HygBycZmIFxEtC10KTABzVwjCxoDCyoAi4o3dOtgtStgiyIXchgg2SoXdu93WOo
+3dzV3d1Nht11htu13Uh8AizIgtTNAi0YWC3QAtStAi1YA+RtXth93Sq4AivIWI3/XQqO7dh99NS480Q
+diBAaAMZ16AGtYRpsyNn/0AFcyIVVzAVcuIHzpQmtcYGc3VlZWAdCkIWtoYFcQJD8RQSlcQFMqNL4bF
+phoIBgmIBU0ARMYARWQIXrIIG1TQIACBS1HYe0JQFhAAAS4K4RuJgRYIdxEAFGUBR2+IQLqFpVaGFvm
+Fv4rFtvHQHFnQBPSAUKNlxgQIWxFYa0RQ4K1gRWuIBjxYRPYAQS+IQRUIBUGAdjaGHAndzKzV7BaMyg
+aIcweNiJhQI1SAYpINiErQIokNgn4AJncAZmEAMeCIVnaGNneAZ3aGM3luM3juNnSAYT4IRnOGM65gI
+w5oI2eIIx/4aCM6CFRNWCWkjYJziDZChkKBBjRX6M66Xi8bnFhYFD7u2kjx2u8IWQQ2TZGVgHWdAGQs
+hZof0P+dXfnG2BHRBlUuYPHchfHDCQnd3fG3BlYbEHRNiBBKnDApbPYOgGbqAAEqAAVsAETEgCjkFiq
+E1iTHiFC/iHC9CECWCHJC6BqWWEYEhiEjhW1VBmYB1hbxgHUBgCu53bIJVhdhgBT/iHPLkAEbAOZE4C
+TSABTVhhdkiC7bqAVLiAX6VnChYGTNCEYTWGITCCYXDiI7hSSq5iJ0yKdvBjLHgCNuACWohTWnCGY2A
+Dij6G0s1dWnhYLmAGdxADDVCGWnAGk66FTv/QgFCoBR4QA2eAaZluaROohWfohAl4BmZgBt89BmYYA+
+Jd5GTggto9Ay5gg2NwBzagBS2ghWMQ1KJmAzXI3TNQ6jNQ2Elu6KPAzkyGp03Wn5CtnZxYWXoh5Zf93
+wL5j//VhgJp2R3QBmA5WbleB2fU2RtogQK5ZSGMAURYB0TQWf6oGk1YWspl2sCdgH9IAntOZlTAhBJg
+bL7VhBJ4hQnohgv4hAnwhgtABRGgE0wABhLwBBFgB3YQAVT4h1/1hBVmV8SeW8NuBG/N7HGYAFS4gER
+RFArYbBFQYXFNW0Xp53HIZ0wYBka4gLF11nFoBFUo1sllaK7+CysGiogmXij/aIOU9l1aAFhmOAN3oA
+V34ILwbuShHulnCIUNSYaWRoZk0AAeeAYK4AEKCAUN0AAKEAMTEINOMAF3oG+edoY1gAItAFgwPoNja
+IPubuSNtoWRJuqiPoY18OI1eAZaWIdacAfmNR/sjW6i8Oqv1mTvjbsX6AEasAH2oAm9RtVSjt9cSF8c
+QATzfQlgCRsaQIRccJubEBBduIFXjVU7HBAbf9WhxQWhFeCqGYRGwIAkWNpg5mwpIw1PeAUSwG1uoGB
+UEAYbPm5GYAdMQO5xwIQRYIQrh+DVeOAJEAFPGIYLoIBPuNZuCIZxRlomyNa6NdYN3vJUSI1UOO23TY
+Jh6HJP//AGCv6EtjVhI/YEEiBzVGjNYOhWhYZuDneK6f6JiGbYLXCHWjjqY4CCZGiDZ0hUo4YCCC9vN
+H7jULhvMYjjNXYGAgiFUEAGCiCDUEiGNa4FDcD0W2cG4K2CCvdjg2Xkpq6CZFCDWgj2ZIjw7eYCjz6G
+KnCGJ2gDZ0hU6t3qSM9GSy4TTP5w4ArxuLsBGZhJaFwdU72JldUB2slRGJge25keW10dqCFrmB33M0p
+3eNdKHzBxRziC5k7WuE3XflfXYh3WYo3cgS/4cXjWYn1WciXWbI3hA07XX1VXfh/4iTd4cj3WcYb4ce
+2GfIf0am8KN/WJSmdYpq5dZX+Cok6GWv9ogy1Ihifw6KEOA1PvCBNABg246TUu6fxOBpMWA1p3dRN4B
+g0AgFAodVpIhk9/Ai04BgNvai1Q8DNgBqyuXYD16KN/hjZgZFrwPevd8I//ie3V9i8K6zKymqyEEPN8
+UXAkpfcUUkd4e7iP+7dvBLmve7u/e7xv+/rMe77ve7tf2irF0q9nipDviZFvDObVgtNN/MZAaud13tZ
+VXWbY41rAaXdghpTu6TaufGfA9MzX9Z6ufKTnY57egsbYAixY3sSPXkFl3tZ33tTXgkR13jPI8Oql9s
+EXk2vnrU0VexQi+xnKQ1CqQ41U+xmSAbanXOVffuZv/uYfAuiPfumffur/r37rv37sz37tHwJvyH3C9
+9fDn9iItViKDQNaOH/0T3/1X3/2V/8x+D0yjgyIJX/cz/2w930W4/biE37jp0xPLASA4MGjEEGBAgki
+TFjoIMJBr4BBjChxIsWKFi9izJjxFb18Hj+CDClyJMmSJk+iTKlS5L1VnDhtehlrJc2aNj/Kk7eyHZc
+qPn8CDfozClGiVbA8Sap0KdOmTp1eIRo1atGiV65ipTr1qtSqUZ74uyl2LNmyZs+OxcdGKNufSxowiC
+t3Lt26du/izat3L1+5DQqM0PEiBuHChg8jTmz4hY4dgxVDjix5MmIYOHTcyKx5cw0anWvgCL05M44b9
+tCi/06tejXrm7AmxHK5KhYFc61v49SpkmfbtleeUAkevEqUKlmAC0+ufDnz5s6fQ08ubBz16tavY8+u
+fTv37t63vwsvfrz4sLjPg1Tbm+3bvu7fw4/f92/gx5TvF3bR2D7+/v4rX/YCDALCMOCAMejQg4KOvdC
+ggwTK0FE/6FFYoYUVxnJJPvIAMGEJ4lxYVj8jTpjTTj2tB9QVVixBBAYvhqAEFb9RgcSLN+KYo4478t
+ijjz++aIGQQxJZpJFHIpmkkksyiSQGFjzyCB9TUkmllNaEeJt6KQLVnnxfghmmXvQJ9t99+jlm5mGPC
+UhYgW4OZp+cMMRgoJs74ODCZXQS1v+gm7JoE6g22JTJp2ERZpmooovSBEsJ+VwywSb5jAAiTfdMyKhH
+Ju6GIlBZtPXEEhjQFQESSixRxAN1CeDAAw64+oAFETxQq621xnrrra5aoCuusOLqqwMC1JUAA7/6mqy
+ytva6bKzNLhutrvAVUK2UdFSZLR2jaIrallz65KWY45L7JZn8qakYmuj6R+cONLiwww0CZkbYDThYVi
+cMO9RJQ2ku3EJIYYw5Vi9hNOAScAs35KKLw7poI0uDsuQiywyFIdqtxhtnmWE/AFwCQD4mgGgbSPLAM
+hIs4kyaqDgrw2IOPbqlxNtPT1SRjBZJqWgFEX41AFcDGETAgABBz7X/yCuvCNM0MIygsjQrS1MNzCus
+TE111a9AfTVESzctDNhWSz01EgwEjbQFUb9CDERYww331XFjPffUwLCCStx2t02M23rTXXbWVxN+N9V
+Te+LAXMQ2AGtdIYhQgJR8WPPNN+CAY3klfNCBJcdkfQuuuOWSXnpe56Yr2brpwsCwLDogcksuOhCSCz
+ayELKO7bnc8kLCt9CATS657KD7DXTK0MO8MbB5AyKIFNzww9ogMhghhKRJWMafc9+9arFsQtslFIiTh
+Dj9rOKROLEQY84mK+dDz8roz5N+ovJwUgIn88x84s1cqIEZVdCCGrAwFCr8TC7GMpoAWrUIuMgFA8QY
+/wYqLjACRnDjAp7wBjCGQYymTRATqBgGCT1IQm5wjRsTQAU3hnGJTwwDGCSwICs0MQEYAmOCw+AGK+b
+SgAQogRvEQAUJSICJEgqDGC304BIn6MQSsuISwyABK5rYQm6gYgQTuMAlkvAJb5TQg05MYgkn2EGu+W
+2CwuBGCBIAlwcsggEJaCDa5AKBzdFBSo/IXCpIwIjLfYNznvNeTUKXIhZB0HSKXGRcUJc6yBCMXfhpn
+S5kgQNtyA4RucBBD26BCFncABstyEUP1gEoHeiCBrL45A5aoD3lGaowLWgBnWggPW1ADBEuiIELXMAf
+GdSDkMIc5k0yBAudmAMWJEPfhv82QQ9OsEweq3CfS15GD/slqn732BDNUGKzJ5yBGcdYBxfEmYwDJpA
+BGPiEJx6AhE/Y6B+fUFxcMPCKYWBiAqxQwCtGoIkkPO0TRCzBKxSggE+QYAKeEEZCNfGJACRhAhMYAT
+BGkAQUUuATWBvGBS6Kt098IhWpoCfaErCIYbyCAphghUZHcAFUoGKLl2DFBTqKzwsOw4aYYAQAkpCEV
+0SUEcRwKRVTiglieHGGI5hh1EpAgk8QI6GeYEUSkIoJAJDgaiBNRRFaJQAiyGMRRGBF4uYCpSo9wnLW
+qMYJRpE5QRJzJYZcDyIZaVfTOfKRiYlk6migA1wMDxE4sCUhYsf/yly4YHba2IG8UrnKgO2Sedh7gQx
+iWRgY2FIXuThFLiUZA2DGNbSiHYk5JqrFEWhxHi3JhzlmEgtYpE8cLFtfa6+pqExtqpsn4Q0WoFALNk
+ghGbQ4RgqcwYUnYCEKCGTAsBZBjBAUYRyeGEcIWGGBuWCgg5oAwAUoMFQbyhATFBgBBZJAgn8+dQL5Z
+EVGJ0AMlfrRjyilwERT4Q0SePQVFhgAElhB0h8G8RMTQOE4iuiJC2iCAqy4IQEWvF0SAMCGGj0wMNSr
+z4we9AKYGMcNx4FgCnhiAvFNwngnwIiXKnQCw7jhBVhBDOvylwitYoAF/EuMdS6iVXDBwOSmlFbL/+m
+BAtZ4a+dGe5K5rmd0d10ymPKq1zXth3WqDNgObnELxt4Ck7S7gcRkQQNNglIWMUAE7TYZJ8zY4AZlOg
+xmc6GNU4AgULpUDGiNbOfQ3oMeetbzNu8BzZZkSBycAF8/1hcLehwam4kaETf919s2JGMN7gjnGZyhh
+aMoN50PUEIqFhqCEFjgFXSx503ZAV9NXGCK42OEJlgxAlT4dMXm5fCBvdFiRph3wxUGBge74Udv3DOO
+V1Mc0oA4jFRQ4J4cxUSFNUECjmpiBNwYwSUOClIK7DDatj4xOyaAalV7Q6He8OcIXlEChxbxAgItYrh
+RHe5PXEAYHRS2jOFS4wQMQ/8Ai/DEABoAAQZEoMd82KPl3qEHPbyjGnC980iQ3BslMzni73Hyk/MTZd
+YJqEEugEG8KNaDGdBpMLv0ZcaZNyB0ySBeOrBsnxAhPDcTz7PbYzjNRTsP3dAjUzn3CD22OSHcMopTN
+fNUFYZLiyewIRlnwBlxlgsXIqz0nZ9YhAM6TdLsEkMTBEioqxE6AgVo4sRUZISFJ/BTiZKAGBMowQVS
+wQhGlIAC56XABUiAik8AgAKpeBsmhMGKBwgACZ4g1iKSGFE/Cli9nki7BlP9UhJY9BUJTQJ7k9D2C0z
+0FRMIrwo9Me1os8KIi1+wERcsYmBYUAGkfwgrjlgENzL3FYv/WCkrSCUXB1zLx5kbhR5GsAoiD7LmHn
+F4WyAu8eOPCTBrrvhiLs58wjhfTTDIwcovW6Dr36s0NBjMm/RVpzoLP/y3tcc9/DGP85vfHvaYhz+2S
+f57wD/+54d/++Gv2o/cYx7qf78/1F9+fwCgarXf/tUf/NVE/3QKUDwBFODMAjJd06WTOlkAsTwJc2FA
+Ij1AKnCD36HCGunQ1KzRRg2Di70YN2xgFQnR3nlQEuXN0sAUMcyNDu0QN3hCXLhKXITABKHQKijR1Wz
+gEz0RN6wCCk4NCrkYCbECCY3RCpqQGgkDEw2REpWgEB0hMaxCCfHQdcnFA5AKBqzKqEkAA0zO/ze8wz
+dUAxmCgzUsnPgRH3skEvLB4ekon2fpFV89H2H4kl61jg7EAA344R/+4aEA4iDSgAzAQz4Anfgp4nnMQ
+zM44iNCYiRK4iRCYjGcQz6cQzFQ4iZuYjrQhNB5E9EdxU9ggQH5RKbVheIsgF3YGxK44iu64hLAIiwq
+wSzaoi3W4qnk4i0iwao4AFz8IgOEwCvuIi/SIjHeYjEaYzIioyvuYjGSCqw4DnPZoDQ6DlxEycBVQiV
+QwjZuzhqGXxsKhfHFYTk20hzeocVlTzo+WetczzvCYzzK4zw+DyLgwiLiI26kQzTwYz/64z8CZED+Yz
+PkQzMI5EEiZDPMw0og4P/QgUvTvd4CJMBENtJcLMBFYmQCDMBGcmRHeuRHgmRIiuRGGoABbKQADEADn
+eQAmGRJsmRJwqRLtmRMkmRMzqRJ1uRL2iRO7qRL5uROpmQDCSVKqmRHCuUAXAsdKOVSMmUlLKI4BgU5
+mmMcUhzzrQ47tuMO8CEh+qG+XN9XciXGBFM+kmVq7CNCoiVaEqRBpmVbRoNCMqRumYTNcMkTWAEaiEF
+e6mUGLFACZIBeAmZgCmZgKgETlMFhImZiKuZiLiYTKMEiQGZkSuZkUmZlWuZlYmZmYiYmaKZmvoI1jM
+IoWMNokuZoVsI3POVaPGQVSOVUIl9VVtxVSh9Wuomacd//mjhPPepmD9hH99XJDYxlWQpnWZylWxonP
+67lcarlQqoEKO6WKPbGE2jBGnBBdXLBFgBQExQAA1CBGljnFmCndYoneIqneKKBGYBBeoLBF3yBeq6n
+e8InfB7mFxDkcNqnt6jmQ7ama0ocbD6ZbCqGn/hJgbyAC/SAxfhJnURWggpofsAJn7TJC+TADuhJ9Xl
+lYWQZxAjKoGgDbx4MDVwWcN7niNZEcUbDMhRDMSyDcgpkcvZjM2jiQMpoQMJlc8plSdBlijwBFyxdFS
+TFGIwBGtRCKNBCGPioTyiFFDQgUyhgA46BGQRBEHyBGVApYlYpY1qpGXxBlDpBKJDol4oF/1T+RF3xp
+2v6p14BaGLcgGPgAIXSwJq2ACHcAgzoAL68wJoyD564gL/wC78MBh+2jrzAQC4IDPP0AA68wJu6CQ1Y
+GSHMAMNoAw+cgjbkAmDpAjZUjwtQDC5EFmYFJ5iCqkiIgz/CaDOwwlsaZIoaJIxqoqrGKIyu6IsWpD+
+q6iu8ZTFEwys4Iq42wyqkKlsiJ3OmREOG4kPu6BkgKRr0AbZMiSiMwQNqARdkwTEsHaj0xhiAwRM8aR
+D8gjQsgwmEQjosA4pqwria67miqy94AbeGaruihJj6BJmWqTme6SOlqWHE6TogQu0QKiLojix0EpeR0
+g3owi2U2ewAyu7Mqf+V3cINUCrxrEPDGurxGEbrPA+i2tI2DAIPbAMCgEAF7AL17FKCZI+nuuvJ5oOJ
+NkMssAKMXo2pwqytxkIxtKyvtiwr0Cypzmo/xqiuTo2q/qypRgPOxgKw1uiw3ihJ5Oh6HCvOZMEm+EE
+fxEIp0IEfhEIUGNATqMEarEEyPCBbIAUabCl7fsEysIMYmIC3SgM7sIIGsIO3LoPamqs0wG0zbOkvoG
+zepkd+com8zitVoiM72mFitEDstIDw3MIqycIoxY7zVJIsLK4LYFIufBL0IBah6iuh6ALAyOkN7NILw
+BKbzVItudkugIAuVECkdoK+fm4e1uan6i2JqizNwmj/LOiqraaoreIsrp5qitoursoqsEaDJsKs7Zbq
+7wpt1pCqsKIEsT6nsfKo024CHzTDKKzCLlgt1vroGSTdOmzB17JFGXyBF6xr2UpDdxWDGFBRMZBAMZi
+AGCyDJphAuS5DM/zCLzSDNNgtu8Zu3sJrFfjt375m4Kbj4CJG4d7CKIHSl80O5eIC5FqZJmUG5b7LKu
+lALsSALujAYjUWDAQMKcXJZMkAiFYGw0AMCJxCBeiCCRTCNsxZCcNu/9qnyjZD/Q4vr77lrRJvDtdwq
+eqs8DbDK7wqDvtwjMboizLvSTjvXEJnqPCoTzytHzRD1MJC9h4FFNACLbABLUABl4gv//lKqdnmJTuE
+wgVogPvaUDGEAgGIAQEUAzsUQ5T+QjrsL97K8Mn+L2t+oQDDYb2mjgEfhn4gQgvggJXtgL8a7CFXGeW
++gCxcWSFfGSE0BiLAgJiBGZfBAPTUzvHsCw6wAPWxXB/azjZ0Ag8MAjZ0winoqyvB8B3LLosap4vCMk
+AebfMm7UgsbXQ+sXFkAh3Ewi7swihY8aNpMRebYqiIbZRKaTOcrSaEggaksQYswydoAImp8bimA5WOa
+x27srv+7xOIge3xMfI5wALUB1YCMptxXwu8QOEOcshxXAvskjw3CDsbyIGMXB5+7smtiVaG8gvw6y0A
+1vBUDMWqaQx3c/8+mugsH6QsMzQSx6X/gMuxnmIn+EHU9oEf8EEoMB3SFTMUHDNbPIHYOoH4lm0zF4M
+GqLT7soIYaEAoJMH7mmuKmuvdJnSo/i8UIMMiDMA4w6HyRZb1+SabhfL1qSO6DDVidGW71EliWFb37e
+FT00ktdSUJJzWfwAD43TRZLvRD0/LOenWwroRzMjH0IquPcsEoiEIf9IEobEITP6QWWAEUnCe3mis71
+O/cauLbqijcnqu68u9Wk+g3r8E9eMKs0MoqNpKx0EqtRMBjQ7avQHZjO/ZkN/ZjR8tk64o1cnZne7Zn
+P8ACmIAOyEBpm/Zpo3Zqq/ZpFyL2rPZrw3Zsy/b/a+dAD4ywahfibKO2iAo2WcoD8XJicFNiMdiGOQC
+3cAv3J96ySOSyE581UoBndFvragpFVGyrF1Bpdmv3dnN3dnuBTff2iOYxFxxDO6hDOqD3JzDAKvplMa
+D3e8N3fMv3fNN3fdf3P5xDfp/DP/A3fut3fvf3f+93gO/3OcxDPcBDgiv4gjN4gzt4g9cDgj/4hFN4h
+Vv4g0c4PNDDhOvZhSt4R4Q3WebZnpF4iZv4iZe4sPIPirM4ih/gcodEc4v0ExtQSFP3UhypTyDFtipz
+j/v4jwN5EDiBHYf4cObxUfCoGii5GnRBBgiABpzBkkv5lFN5lVv5lWO5kiN0kXN5/3if35eD+fypVvy
+ReZmb+ZmfufmNOZqzOZurVpiHefmp1jnAOEjIuFBQNHXjeRdwQib4eSfsjI9aQZ/7eaEb+qEjeqJnQi
+m0QqM7+qNDeqRL+qRTeqVb+qVjeqZTuikcoiLSgp4HRVJchXHk+M00RZOeOqrjuKnzjFIABRSoAyJ2+
+ayHeJvb+q3jeq7r+q5jClnjKFzj+S6DOpKKgSHgwbHjASBkAhlYQRdkAiAge7TfgR1Qe7XXQbVje7ZT
+ex10gAd4+7d3+7eL+7iT+7Vr+7bXQbpfe7pj+7qr+7vDO7y3ex1M+7zHu7pne7zbwb2n+x1sgCksIjN
+cGqiUYimuB/8WZEHCf4qOJ7zBg23CT3dQNLyNkyLEt0XDH0es0/rGc/yILvGvm3VQYMGlTXQXGEIdeI
+C6ewAeGEImCAIehHvKp7sHAIIg2LzNi4Io3PzO8/zOG8LP47zOG8LND33P87whAIK8Wzu/Mz277/sds
+LvSv7u3b7vM3zvU2wHUNz2/+3sp4KMtMOBTiP3Yk33Zm/3ZJwWsd/zasz0++rrSAnuoC7sWgIrXMh0D
++ijP3IwYAIIH7Du6y3wHkAIgkMIfeMAdeIAgZEM2lAM5lEM5rMIolEM2kEPlVz7lNz7la/7iM345lEI
+pTL7jV/7jW/7jUz45cP41JH29xzzWX3u9Z33/7EO969uBt9fBBlz7Bsh81qd87HeAKARCyv/BH6y7tU
+M97qP805s7vRe/u5t71+cjM6ABkFJ/9Vv/9WN/9mv/9nN/91O/xrd9+Iu/kX083Ic8UtDCM4QTGxyXF
+rD/jq7BWSMpGRi+yvf78VODIVBD8N9BB5gCOQDEtREgTFzjZKLctWvZGF4rV2pQNnLXJk6UOMjVoEHl
+HkYkx2nCiFHUJuiZSJFcSlEd7NjxQIqaq0Ab6nioaRNnzZp3bHa4s0GUqDvkAG24JsoDnjpAV3q4w6E
+VqQ0bBEmto9PmBkDk6lRNirMnVp5XyT41lQ9tWrVr2bZ1+xZuXLlz6da1exdv/169e/n29fsXcGDBgw
+kXNnx4Lz15ddtxqfIYcuTIT7icqYLlCS1nZ9zRYsYl2TFnXJglS8bmyeMnZAB5sFPnDzVqfwS1atWhl
+SCZTjuYmkjB1YlMowZlKtVq0LUSJpADyHSpZLlMJwoCOKGHAohRpU6QKzciObWHExJma2XK1FGfHgKV
+w/MHT6Br1PCIynYtUKD7ouqYcrUyPUGoQUcUekz5wx9SAGnFlTuuQSeQ9AAxpRxqAhEkKIUC+UOhVgC
+5hxRRXAHEFVfqIEUhV9TzjxSyrvqpFMRknJHGGm28EcccddyRR7vMuSefec5pCxZz6OmxMMUYc0yyJl
+Wr7LIn1v+gBQpmpDimjc6OAU2LNWqBQjXWnNrgvDru+IMUCE3RLRCnPPDtmuwoMCWTQfTYrgTsRpigl
+BKooYCcEzaZQKBMSnDlIFdAKAWElEygwIRRHuqOIlE4+COblcwyhQM7NsgGEFLQMyWQ/2Y7Ch3fRLnm
+NVJIweOaEq9pMc2qRBHwqvNKFRU93UwhRb5AZDvvjjQDiWpVDgVJFZ0/XHtxg7OQnJbaaq29FttstSW
+sBHHyWWWTfMTxVlxYVjFnHnpgEWexbe1Skq7GnHSSMsuqeEKNZLhw5olk8mXjDCz0peXLLO4V8ydXpL
+IjG0PIEWRNC92EcwJ0OBmhzjtLMaGEEUr/zMSEP9EBIRPyTADZlToFGmUEdNAxYZN4sinHlBPKu+YOC
+pG64w5BsunAzGz+EOVXUUgk+g5qUPxj6Gs26O3VWWc1Rempb6Xm6VaM/q+UNRfUGpBr2JwnPfuIFuTY
+Oo4i5w9A7nDxJ2ndnZvuuu2+G++81dpklXw4WXeTTdZdRRzBxTmXE3L1ZkuedueSd17J6oUMC1rYUKM
+KNbbYohZatFBDi8pSO9hZnsJ25Q+qy4kQ4tbu6C2hkE4wZZRLWhnhhBIEMqEUkjLRgzpyBjlhhGwuAa
+G4a0wwBVJOBgkpk2tAIGAUi1pxaCVY+4vpQoXQFCX1qu5wBY+YWlQR7VlN/+zAVZjKEUW/UvEjRZAJR
+XG1/gOp0dAVDmh2vypoM0XSxqewt5WFAzFa3AIZ2EAHPhCCbIkFLGIRi8NNUByxONIqYEFBcSnOgfB6
+HJMiB5nJQQYKT0jN6KAAphWO7mCtqYNL7KCUpLiILC4BxP5ipRAfysaHKpqPK7IhxCIG0YcKoQaDYtW
+K/bkiJkmM1R9m+LYO4MGGeODJa3BIlj+8zQNfTIpSrvKapJhRi2HsYg7rgAcUmcInWCHjGsN4wBwmMI
+J51OMe+dhHGq3iHJwwR5EqeI5zbCIWfzNHBS8BwgY2bkklnAyUKNckLERuNa15DRdnuEayOIVpgGDaK
+ElZSv9TnpKUogwlKplmxyqysZNr5KSLZslFTtrSk3ALShdnyUtPckBufhTmMIlZTGLOIx/36Acy5TGk
+fDTzHsrsh5GABEERygVykrwXJbVJLzH1Mpdd9IBNsOIicpLTnJ9E51XGuc526kQn4AznPHnZEnrmsgN
+Au+c87YBHY/4ToAEV6EDvds24ZFOSJ+xmkzK5zn22BKIRjWgOIUrRilrUlhLV6D5lydFw2jOXPPNoLl
+1SCEScFKUpVelKWdpSl6IUFwSV6UxpWtMIQjJeJEwoNxc6GTI4a6S+lKcnhxpUox4VqUnFoQcKgYMXx
+AAGMZDqVF/QAqtadQZX1epWudqCGbj/AAZhnapYYXCDatoUrWlV61p5hNMRLlShPTXhTx1q1KIqVZZ3
+pSdI8cpRnr1GpGb66wEDS9E8NPWpUhUrVHWACFmk9LErlcVkTxpZx06WEGN9QWKhala2fha0oRUtX9y
+KTZ2WMK5yJV1d+9paoroWtuHsAE2WQtvZeiCfr8knDglxAx8gVqo0wAEOaPACHWBDG7jIhTZ2sQtOaG
+Md64DuNpLLiVNsQxe70IY2ctEJ62qjB0/dgQ52ENXOnnW06VXvekNrULggFLU8Ve1qnKXX2N4Xv619D
+R6q8gc7BEUpVbmQIa5yqzLCJrMwoMFUZ4CIXNwCBi4gBHIrAIBtVKAT/53o7iBwUYhTaIMCg0DeKSqw
+XROAoBMfRoQLXqBcWbRAsZ5l74xpvN55zCOa9/DHjaN5Yx7f48f+2PE8hOxjHAMZyD6OZpGVjGQjL3n
+IP8bxk3NM5Sk3+cr3OIfjTAtX+cqVvqzN75jJnNTXiQIdpbhGV2RzB3ikKT2BQNE1TLGBt/0hvFAdKw
+52gIMYSBi5PEBAJ0xQCB50AgA8AMAgKpCLCvAAwyTeLqQ9rI0Vx+AGN1hwjNFbY09/Gq05FvWoSV1qU
+58a1alW9apF3Y/SHvS0mPxyT8NcZlvf+qieEkUrjDIh33CIA/Rx1TVaUQpSPOsPhHiqeaW62acCWhsm
+6P9EBTB8aB5oowLbAAEuqs2DU4BgG9vgAQ9wcQtLuyAGm53qeUHdbne/e3HufQt8ZW0v1YYJqLjW974
+/ChRqqM0+acKUB66ROlHJBBCdTHa6191waFfgFIMIQCdQbAJHY5vbneABCE6BgFPgAgTkxsW5G85peJ
+8c5aHtx8r7oZaVs4XlLU/Ly9cS88O8+r2xnldqwSwGGY55oq4Nun4v2tcwBqIr/11Tz7qCB0AkXFRU5
+GIhbMCBQtyAs1N1QQ+22wntDmIXpwi7NjpB9u7yYBC6yMW4U8z2dRACxiUva6dTXne73/0w8nYLvXc+
+a7iSgcCuvG/R+zr0whNeqWa0A9D/Zst4l9zEUxtYpz2BW3IayCIXmb9F5jm/ec7nQu2Z10XoQy+LGzB
+73XPH++pZL8xxvR72sZf97Glfe3E4sy84n7fO6eX3bj7hDNTALS1zeAfDzxCXhg/6Jo8PUubzFfnOjz
+70kX9g5WsUl9a/6C2jX0U7GJ9n4DdTRP+Kw9c0FfWa3fSmG75g9rO/4WSVu4xbX3/7MxAVXgDD/vnff
+///HwADMACbwJHyQu/agu96z97u7TLaYXVm6W3ehgPaiQIr0AIvEAMzUAM3kAM70AM/EAQ3sAOujgVk
+wARPEAVTUAVXkAVbUAbozy/gwWVmkAZr0AZvEAdzUAd3kAd7kAbh/+H+ghCCxAAOitAIjxAJk1AJl3A
+J5QAMTMAvDpAtEtBJfK+btIAN3MEd1IELlWEQyGIDYCHJjIwMy9AMzxAN01AN15AN29AN33AN78Ee6o
+EO69AO7xAP81AP95AO7QEwyEaVsEgQWYkQC9EQ38MQE/EQSwkPcE8IHzFvxCAO3oASK9ESLxETL9EI4
+2ASM9ES4QAMRsAvdG/veK8KF5ABqyB01OAMzoAVNw4EuuAYIPGfBqiMACEQni4Q5miexij8BBEYtYhn
+ghEY74AYBdEYjzEZj5EZBxGLtogDyIEWp9FuJLESwaASjfANsDEO4CAbvfENwBEUvwAbKbEIPTEcQ/9
+xFLkM1uBKC1AxFZvEYLLgCbqAGodJHhLO+AyhD/zAD/iADwyBisQv/IwPsNJjIcjhPqRIISRiIRkSIi
+NSIieSIWVlPqjIA8rhHjdSW6wxHJtg/0CSHONAAyjxC9KRHCkRDJqACuBAA5rgC74AJt/gJD0RFEWxL
+6RwLaiwSazAc6rAYOLxMiQDCzBjDDiyj5rlKv5AEfzRGvrRDwRh/Oog4XCLJnRIIcmhFDhBzWamHI6I
+HDKBKyviK1PCIUohEzjiK2dGIa9nIiKCI4qoHJzoPrxjItRyIdTSFaSjBOBBIkxhKTQSKQdzWjwSDkB
+yJV9SA7wAJFlSA8BAA6hgAmT/kgoi8zAbEyabQANKMhNvMgrZMedojRloQQpSSIUYSoVayDRV6AlWsz
+VbiDWlwB4JM4+UMg8AoR+rwRp0Myqd4irKgXzuB4zkgxygQyyJKBPS8gQmIBMoYBNyh2YGISZWgRxMY
+ROqRywV4hJKoRxOQFKo4RKuITlLwTmE4ytdwXbIoXY2gRyooTj+BAQu4QQ4YS8BcwMEkzbzE0cMUyQ1
+ExRfsgmaYA4iU0ADVAPmIEBdEjMrUzNtUh1zEjR3j9ZoAR+YIRRa0d4uyQrGAEM71EM/FEPHgBb0E4J
+s8w/60Rr8QBFSVBB8sw6ywVWWyBU6gD0YAjjasxxMYE84YTlG/wEE0OEaJoB5SoBPTiAbTkAjOIFkgu
+NRNkZSXAFjKKAUSkFKR2ATKoQCSgA4COB5SgE8QmwE9KA55ZNmPOA+SRRNacQwIfMxN/MxGzMy3yBAL
+wAMqEAzveAwweAywcALFtMb+88bPRNCI6mnuIANnGEdmEFR2eAxrCAF0EBRI1VSJ5VSI9UZLhVTM1VT
+N5VTO5VT3SFNAcM2cdMPqGE3m7JFzaQDqGF8AqEDuII9FoIC9ocCmtMEBgEieucEgHQCBqFWdSdMB4E
+4RqAV4oEaAOASDoV34IEaPIZjvBQeRqAU4IE8DQVKy0EjJgAeOMF5XKEU9KA7s8EUzBQ/Q9VcBf/DI8
+OxEh9TXbOxEynxXdERHQWVL3RSLdohDO5NC/Z1X7lAC6BgCkKHXweWYAvWYA8WYRNWYQe2Hs6VL0wUK
+lPUH1P1J5QGJhgEaPRDeCagFUhmEHjHPUVCSkFAD1yBT0ohLAMgZfRASTNBUbbzGqhjSk+gFUahV0+A
+O3jHFJizdwjlZL7UeUrgEgpiAsSVXB0Waf8iXS2xHOUVXuPVaT/xQUkrQt0CH9ZAKCnnkmAoa7tWrqy
+gYZMWL5SyJfjRH/9RID/pD0phaEjhgDjEOyCCPcMyPI1nFZ6DO4ETVxMiLWOiHDYhEybiEgLXFAbhEm
+LhepKzHO52FS4BI65BWMn/gTpVBD2l1HhKwRUklxz4IyPF1nPzggiVUA6YkHRLFwnl4A1wkmrtghnmM
+QuwIAtiV3Znl3ZlVwuKEnZrV3drVwt0t3d3F3hp93eFV3fB9nPtgmxnCBfzY0OqryZoYraqb2jux1WC
+onqpt30EwRCoF0PoJyiqIkSoF3vDt3rb53rxx3tJ4Q9O4AS6l3yRzlPK9Xjn9y3EwAu2UQDzV3/19w2
+cQHX3ghTf4hiqQDUL2IAPGIETWIEXmIEb2IENOAXCln7jQinV6Z3CrywEC4dolEY/wIM/GIRDWIQ9+A
+482AM+uIRBOIVFuCVI+ANS2Pi+6INb+AOw6AOkER/wYeVy/5iHe1iH+8GHfXiHg5iHh5iIf/iIe9iIk
+TiJm9iJn/iIZW6C2+oTQgEVUCEUsliLr1iLt9iKsRiLu1iMuXiMsXgTChAv7HUKk6EW2tiN3xiO41iO
+55iO69iO7xiP2xgfppiCqQijvu/7BK+XArkOyGANQBSRE/kM0MAMGtmRHxmSI1mSJxmS0cAXLhmTM1m
+TN5mTO9mTPxmUN9mSQ5mUSxmU0aAY+Ljd1FiVZ6yCPcomBO8qyGALgDJ4ZRczniB3ZbcKxsAMvACYgf
+kLgpmYi9mYjxmZgTkIlpmZl9kLmvmZmxmapdmZo9mZmfmZlTkIrPmaoZmbq9mbtdmbw1mcqf/ZnM8Zm
+5W5DFr501iZndXrlTU4sERqk87EJeyIBz4gD2gZrqqAC3SqKKPAl7c5mIWACSgZoRNaoReaoRvaoSP5
+Cwg6mIc5mZWZCsQAozNaozeaoze6DH45otf5nWnMnUdatJK3DqI3epcCaFzjiq7hPTYAsAKGB/g5oc6
+gDbTgMyIDDb6ACj66mIXAEYa6EYraqI8aqZNaqZeaqZPaERphqKP6qZuaqqtaqYkaFMAAnamZmINADB
+JBB8JarMeavHZgvMh6rHcgB8ogCELapGespN/6s5K3PoQCQ2YIwJBuQ6gBzQisjSwjCi5JmyhjSp5BC
+yDDCnpaoqPZC4TaCI7/wAgiW7Inm7Ir27IvG7Mp+wg2m7M5O7M/G7QvG7KPgAm0ugzQALVTW7VR2wy2
+mZnFQAfA6gXCirYjDNMybbNqW7dloAzUWa7XK65/W62U8nUCAR7kbD6iQmwE4Ro6AD9cQRAeEDbgEbX
+UAEuY4bAb9ZcLOggMWgiE+ggaIRi4oRvK2xtYARW8YRjWmxvWexi8Qb3du73dG75TIb3fuxu4gRu8YR
+zMu7/1G8C9wRgq+whAYb/H4b/nu731exiEYRgUXL7zG8LfW70BXL+9wREeu7S/YBnSYRk+/MOlQcSlY
+RlEvLWpwAe8Wgc4ywXQDaocjPNw4fT+rAWyjrd9W7hH/yu4c9ymiLsDhIUD5sNVSCRigq1USoUD7oy6
+MUkNauEMbEEKBLsKtjuYg4AJGsEIrvwIjKG/MYEEGGEcPIEE2KG8+3sc2GEchCEV0JwdyPzMERwVukE
+TkuAf0twTumEcUoEESOATuIEENKG/yxzPHQGyJ5sb2AEVSCAJUKG/2xzPy5sdGOEV2tzM0ZwbNMEb2O
+ETNIHNX4EV2IG/ERzPg0HDwcAMSHzE2YHESzwdSDwdfiEIeqAGZKAHcCCqyooQeusFcEAXtAEbRk8bC
+AHdTmoHEgsGbvyZRZrHQWvHl32mfJy5OQAm8gMQfCY9DAFCrmErkM5MzoAerSAoUWsNjv9hDZIBCqRc
+sYVAmc2gEQp9y8fBGyiAFUQAE1IhCVIhFYRBE7oBE5JgGDABADwhFUaA01nhy7tBAS6AESaABFghFSb
+gzPe8weWcAuA9voOhG0Ch0B/bCIaBHfYcGCjgzhmBEbxBE8ZbEzAhGAx+3z0hCV5BGCiAvz/hE16Bz0
+kAAD6hGyKc1Enb1Es8FJJADJKAFUj8F1C7GdLBF4Kgt/RMqiTswbBuB0Bv9HQBGxChBXDgFm5hxaeKt
+11b2Z19rZpd7Acqef+A24lGlEqBPwKB7eOjDu6HLHjAB0zApiVpC84g77l2DLxgCtBAq4MAFNo9st+9
+GyhgBCggFT6B5DH/geUpgAQmABVEIBjk/QJS4QIm/xNIwBM0QfIvgBUuAM+TAPI9gR1Cvxu8IeMh2xs
+0XrIh2+NLABP+QRMU/QIu4MsZwRNKgM8v4BOA4RMUgPRf4QIyneRHgASEwctV3xggm8t7vrTNAOgzuu
+iXwRecoAw6fOkJAf5K7gV2oOpH7+rRjbbH6uuTvezZKoDTf7ilTvFSWvJq63lbGv7hppBrebBXyEkEu
+rWDgN1fHyCMjfN2wZsmEqgYMfokrESSC6lSoUribcI8Eowu/FOYJNgnRt1GoBLBjl0STOy6jQN2gZ23
+bsOOgGLn6IgRm0aMDGNXQtO/JElEIEwlTMSIVz1b/26kkOoTS3b/MDESBlSqy25GGnXrFuwmky9mlkk
+LhUmTmGLSli0r82tZul9BetyIAQNGjLt4Y7zAkUuXX13aEL2gkfcuDBllgngJUiaf48eQI0ueTLmy5c
+uYM2vezLmz58+gQ4seLVmePNKoU6tezbq169ewI6P7U8dObdt17tyxrbt27zu5gdepPZzMlirIkytfz
+lz5GDNBgphpNKQIkyPGunmjEBTTpySphF5g6R0YBU8kSFzgVkJ9MEYYKYpIpYCRpyQTvHsrAQCV9m6q
+BDMOKDZ1ZRM37KjHyATDeCICJqiwMwEF7MxHQgiasGRfMAokoYlCqWTkyQSpbGVMMP9bDeMVWOksU1J
+JaYnVjFrs+BIEGTWw4AMOdhX2wg5/6ZJLYIMVRhdiijEW25JMNunkk1CORs9pUVZp5ZVYZrnabMQN5+
+WXYIbppW3GNWfmmVU8F50XQjQhRE2gjLMSKq+4hOArrCAoDCrCjIPnOKl4w844rOzUDVHejDNMN6ygk
+qdErwCaSqRyytlNIzY1kpMRAnKDSiqVAoNKotz0KYxKqQDDjqd9vvJJKsN44+lOrFBa6TiqHHEEE2B4
+0ZZawAarVjGJfeFDE2Lo4IKRMdBwizbQaoONDj0WdlhiizWm5bbcdustk1N+K+645JYLGpe4iamumGQ
+eh+a7yam5Jpv/juTkCCiq5IuvKvvym6+/AIOyr8D/4tvvvwDzKzC+muaEU079LlywvgpTbPHFAy8ssM
+O8KvbFxyCH/PFiXpQcRLLV5vXCDYi0jAi1dxFWGJLZmmvzzThvG27OPPfs85Poriu0mGXCC6+aJZf8p
+q5HDOH001BHLTXUTU9t9dRMZ63r1UNULbXXXDsNdtYdJz1v0mijfbIOLcDwwttwu93C3HPH/YLbb7uA
+mMna/uz334BrtnPghBduuGRBD614ce4ajSbSJn8BChNKVM7E5ZhnrvnmnHfuOedKfC766KRTbgYYHqe
+tOtpfeFEGGT7ELnvsPNRuOw+z+4C77DyU4cUX/0oeLvzwNw9O/PHIl5v44kMX7biZT4yButlfgGH99S
+Jnr332YGzv/ffghy8++N1HZ/756KcfxPjjLxaEE30nL//8TxpP//34N7k88+s6/zxzT6CCGYRQudApQ
+QgIRGAZFsjABjrwgRCMoAQnSEEJmqGCDLwgBjfIwQ42MBT5C6EISWOaEZrwhKPZH/+I1rj/LecJl6jE
+I2ZIwxo+whoozKEOd/i3EvLwh0DMhwpXCCb/ubAKUUgiJx5BBzrw4YlQdCIdHhHEKlrxivWjEha3eL8
+hEtFLzntCFbagBcc9QQxieMIS6UCJb3wDHN+oxjeswYcpcvGOeMzjZuynxz4Czv+LX6yD87ggBVuwQQ
+rIeQIUEgkFMSrnEU+EJB/eCI5RrAKO32AiFf3IyU5ukY+eDKW5ALnCdiFHC+6gRS2OsQYtPOEMbKiCF
+tbQBi44sgpWkGQdJwkO+JxgFHDUpCiHSUwTgrKYyMwSKflnyipg4RlrOAYzjkGLMzjjGMk4QyqZkZwr
+5BKKT3zjBL4xChIE047JTKc6D3fMdbpzSctkXjOfkIwn0GINWziGNNtACzUcQwrJKGMVvKnLcIJjnOU
+85ybfydCGmqudDo0oaeK5uHkyI5ps4EIy1JBNLnD0Cc4QKHJGUUdJvlEPehgBMDOJTom69KVV8iFMZx
+oaijKvaE//4EI/uaCFMzxhDbTgwhbOUIUzZKGbYyiBDzYByWq8o5fABEc1SkrTqlqVNTK9qlYtY9PFh
+bGRYgxrI6sQ1uVcIQtRWOITK1EJa1iDrZJc6FbnStfLQLSuVu2q4ozIHCzAK611bKJgBUtVvBr2sPm4
+K2JfqtfmtfCIiRQDJdhK2cqy1RrgyKxmN8vZznr2s6D9bDl0gQ3SYuO0pTUtalfL2tQG6bWwhW06tkL
+b2tr2trjNrW53y9ve+va3glqs/BQr3Ig2Vmh8NZpfnYmFJ3jCEpSIrnSnS11JWNe6lLgudrO73ehKwr
+vd1a50vzve605XEqLYwQ1uQIP2uve98I3v/3rnS9/62ne+NBhEwzbF3/76978ADrCAB0zgAhvYCP4o7
+vGIq2CGHrd/j1XOLc/0hCR6ghKQyPAkMszhDEfiwyD+sIdDHOIRc5jEKD4xikM8CUlMQhQ4uBsOZryD
+Gu8ABza+MY1zzKO6GClldAnyXe42A/1mqhFIZgKSl8zkJjv5yVBOspOv498jR/nKWIbyTXKS4AYLj8F
+eXueD1ZXcV7ZhwgDUhCOs8AkMRwIS4aDEikmcYUqEAxIrhnM4IiGJcHy3xHSOc3ZBjGcSi+IPlYDxC2
+ShDcCkFhvaOEUncrGLbUjLtaSVhV3cxiy6vMBaPCgBC4ysiq2MQyXeYMRLaP+7apWc+rYvcYmqTU3bg
+dS6tt54Sa7624hFnXocKcktK1rNapVsBRinMvWrt/ISAyE4zOzUIrQZS5t0BfJL/hOjFqTAhmRIQaSu
+XI41JFGJ6OIZEuCgRItF/OZ2R2IS4YgzOArNbkhI4h0YlkS67yyJSNi534TetyTsDWc3i5gQh8kBDYA
+EmL5AKxfb4AQPOtGJQXSi0dH6yw1aoANNr8zHL2jBDmRhLUzcRAk5SZQmLkACTXSDQbZO0VaSECliCy
+pEw1iPSpIAjHEIg+UUWdCpXlIpbvRXJnJ6CAkwcepc2zYJw4h5NxDEiiSoBELs6BMmPKGdSqmEQM+eN
+uGyKnb/41b72l9qJlm5oM8zqKEWZ0gGLbSwSjbc0grW+DDA37xvcOxZs9HNbDjA8Y9w/MPveNa33ykx
+D37vmxJ+D0fjS/z4xR9+4B+uBCEM86MhDcIEFKdABSg+8U5QgAK40IYsVp8LbORi47KAByEQcQtZOEs
+HuJCFOhCRlxvUy2GNEJRDUkGBkKQiCeMogTAOwghgAAAhIrjAK4pyAVYwAgCaoMAISPDyVLCDFRQQhj
+AERaJTByNfwTA6f5E+jgv4hwKOIkEJgkECYRyfEcN4iCeG0Z6IXEBOmJAKi0ACn3ABBMAK42AM+RJ1Y
+NdlZddD0vaADTVmYKJ2UHAM17RRtEAL/8nABW2QSusgUlYgZ3Tmd4X3D5BnZ4NnZ5EHeeimboMXCfgG
+DnqXbn6Hby5IeSn4Dn9ncJGgeTEDAzswJBXAA7lQO7kwejwwCIMwcdKCCC2AA37xei3QA7hAA+sgC+u
+gAzhQD4jAFy2AFzDge/wVfCZBASznDdDHDiPwCQSQBAqQCiTgDSLxCSRwEiyRCiUwDhRAh6kwAqDyCg
+pwh4kCEVthIMbgDQ7jMHEyDiLwCRuBHyRAAQqhCR5CAp5wAVtRAhRAAiQyAiqBiRcQdJqQEqowBDoxI
+DbhgBLoM2DWiqFEgWknSI1zgcdARtGEBW2QDNi0BVwgbv1Gb+gWDjiob/8quG/xJm+TkG7wNm82WIOQ
+911+N286mG6Qt4LCSAg0AAMu0HnYgAs8AAK1owtKyIQTtw1CcgOMlo4tQAi3gIU6oAMx0AO7N4RhiBc
+ysAibcgRmWAKY8A8KwAok8IfscAGfQAGskCcFAYiocIeYwBJ22H7jgBBH8X0a4RIFiYCJAgqNoChbxo
+hyAhES8gn5gWzAMAELmYlyUgIiIH6o0BI8oQlU4ZBXYQSqcGoNCIs/84o6yUmyOCa0mBw5xYtncAbVh
+E1sdwxtsByqIAmPUG7nFmeD52dSKW88eI13lm72JniRQIN89ngr6HclJpUsGG/ggHkfVggzYAOFsHB+
+MQj/4sgDCDB6FUdxnVABqacLt9AXfnEDe6ELLZMLssAXOHALOiCY1fICnGAEIpAERsAEgoIJ2kcRJMB
+/njgMixACFJEEbXgB1RcMnvkJ3DAB8NEN4KEeBNiJJMANmvB83JAiAqIi2EEgR3CTEwl07PAJjel9E5
+AECZJ/F7B/6fEJr9CJi7AQB5EEqEAih8gNG7mKPdkzPBmdevST2NZC2qYcZfQETyBSyaEFYsBmPvhm1
+iWMZblu5yZiBDdn9tZue0dn5dmeIVYJfVAJo4ADMfAsrrcOTBgt/ulwkCYtqmcYMXADLsBentYjcyGG
+N+ADo4YpAjIQiXIrE7oqE8oNr+Z1/5aCoa42DtzwmjCBoS9BdLeiCkcXfHLinClxahh6K5VCoi3aDcI
+Qo1Enob8mJ96AKWFHncUTgTxaTNYJRhHmQhY2nnPWZ0Y6Z+xJaErqbvQGYi6maDQQj/F4AznQA1SapV
+oajzJDoEBGoHlRF0Wmo45QpmZ6pmiapmq6pmyKpgDWCG0ap3KqpvvFij9KLtN5p1sUpIwDWS90YU+qp
+BvWpIRaqIb6YS/GIzHQjS/gAnXRjYyaN3AzqZ1WqTMzplqTqZq6qWHTqZ76qaD6qfOgpw/lo6TqSXwa
+lH4qlIB6qK76qrD6bopmqbRaq7X6Aj0gcbezq7zaq7WzCcEADMI6rP/EWqzGeqzImqzKuqzM2g+nSi5
+k96ydlKrJ5ULOlaSxmq3amqifZqve+q134QLxWAMzVq7mWgPoWgM3YK7sWgOEIK0wlafw+kPUOqTW2q
+ramq/5yq3g2q+W+mkvoAM7wKh14TZucwM6gKU64JcF27Ax0AI5MK8uFa0Sm0f16qdXcAWJhK/62rGvy
+q/+aqs+phfdOmQL6wI5sAPdCjd3cQOtd1rakAuK+jbVgrIVG1HyerModLGQhQUaS1Yc67FCS6ggG7K0
+uq7cKAs9UC0yQAh+uV524QKEsHp6oQOYpg098DaycAtQGK4Rq7MMlbNgO0JBqnareq2BOrRq+6RFa7T
+/nQYD7ngLMbAOuhBjdHEDPWAkUisLiOA2OvBa2NADy9IyOtCtNju27kSxiGtFZauqqwq0JKi2hZq27p
+ZnLDarblupP6KFO4ALbGMYeMssIbcsAesX0AIYgruo3YgXh7u46aS4rgtEjVut//MEbSa5k5u2HZZiJ
+Na2mVsYNIC1W3gLhHCPMSADcvE2nVa6MdsXgbssevu1sYtMYju98zO79lq7t4u7sbq7dMa2mPu7RrJo
+z7IDiJALKmuyNGADOWC3PmK12wACF/e8zNK61jtM1Xu/yMOzj3ut3Jut6UloHVZoviu+eDEYpNulMSM
+D4pq+zCILuoALpHWFnWa/+utJ//l7wcNzsUelHFiABVnQwciRBR8MQNurpO+5YilMqNalr+iFnzKjwO
+JLGDQcM3mxjQILAzIcZDlWw8ALAz2gwaKUwUJsOPQQCF2CdmDkStzZxE7MnWQVVk8sRlCgCRg2wFicx
+Vq8xVzcxVn8YjfAAmI8xmRcxmZ8xmicxmLcvmrcAmpMxtJbxH5ExHJMOK0wHLqRx3q8x3y8x3bwB03o
+q4Lcq4OQCXrACH2QyIqsyAqByIu8yI38yJKcyIzwDe9wyZicyZq8yZj8D+vQWqAcyqI8yqC8Dp9Myqi
+MDetQx5wEu6ycP/dACh3AARvAAbZ8y7e8AbWMy7ysy7asy8AczN7CPMzETMvEfMzInMzAPMvl8MrObF
+em+swhhA6uUM3V3ArY3ArWvM2ukM3azM3djM3brM3eLM7WTM7lnM7orM7s3M7e3M3RLM3O7MryXM/2f
+LN0fM/6vM9els/8/M8AXVf0HNAEXdAKNtAGndAKPVf+vNAO/dBDHM8QPdEUHbYSXdEYndH4e9Ea3dEe
+jUcN/dEiPdLIg9AkfdIoHUImndIs3dLEs9IuHdMy7TcwPdM2fdPlEtI4vdM8/Ro63dNAHdSi8dNCXdR
+GjRlEfdRKvdSOkdRM/dRC7dRQPdUNFhAAOw=='
+ alt='Screenshot of AppInventor showing part of the program.' />
+
+This was good enough for a while, but then I decided I wanted to actually have
+the source code available. So I looked again at development options, and
+settled for Flutter.
+
+Again, this was completely new to me. I started off with a popular BLE library,
+which turned out to be an unfortunate choice, as Linux support had a few
+quirks. That was probably a good thing in hindsight, as this made me abstract
+away the BLE stuff in implementation classes, so I could easily try out
+different libraries, and only use the abstract base classes in the code. Well,
+you can see what the code looks like, I linked my repo below. This is what the
+motive selection looks like:
+
+<img src='data:image/gif;base64,
+R0lGODlhkwH0AffGABkYHAoKCR4dIiAeJSUiKiglLS0pMysnMDIuOjAuNDYxPDY0OTo1RDw3REI8TUU
++UUZDSUhFS0lCVk5LUU1FWkhBVVFOVFFJX1RRVlZTWVlWXFxZXlVMZFhPZ15bYVxSbF9VcGFeZGNZdW
+lefGRadmRgZ2djaWpmbGxob25rcWtgf3JudHRxd3dzeXp2fHx4f5UiMp41RKQ2RqI8Sqk+TaE3R6lAT
+6ZAUatDUqdJW7BJWa5QXahMY6tRZqpSaKlZc6tZdLNbaLdmcrRhbW1akm5jgnVpi3NniH56gXxqnXlp
+loJ9hIN1nIByl7twgYFvoYRzo4p7pIx8qYh4o5B/q8J7hYSAh4aCiYmFi42Ij4+KkZKNlJWQl5eSmZq
+VnJ2Yn5KCrp6aoJaGspqKtZ2MvJeIso+Aq6KdpKWIt6WLuqWWvaWgp6ahqKqlrK2or6+psLKttLWwt7
+axuLu1vL24v8aDjcuNlc2WntCSmtCepdOjqtesstuzuaaPwaWSxKmWyauZzaqYxK6e1LCf1bOZzraoy
+b+5wL2xzrOg17Wi2rmk3Lys37Klxr+q5bun4MO9xMO409+8wMGs5sKt6Mex7siy78y19M6498+4+NO8
+/dG89eC9w8bAx8fByMvFzM7Iz8/J0M3C2tLM1NPJ3tfR2NvV3N7Y39bQ1+THy+fO0evW2dnP4tbM4d/
+Y4NzT5dfA/tnD/uLc5eXd6+jd6eDH/+LJ/+jO/+vR//HW//TZ//ne/+bg5+fh6erk7O7o7/To6u3n8O
+/o8PPs9fbv+Pfw+f73//////7+/v/6//jy9gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+AAAAAAAAAAAAAACH5BAAAAAAAIf8LSW1hZ2VNYWdpY2sNZ2FtbWE9MC40NTQ1NQAsAAAAAJMB9AEACP
+8AMwkcSLCgwYMIEypcyLChw4cQI0qcSLGixYsYM2pMiMnSJEVOcIicQbIkjh5oBClqRMnSpY0wY8qcS
+bOmzZs4c8LsOKkRISAjS5ak4SONSpYudSpdyrSp06dQowq8REmSoj9AbNwQOrSH0ZUtX0odS7as2bNo
+YV7y6CiRnx80tnK9QcPr0bBp8+rdy7fv0kuVPiJ6G5crSaJfJeH1y7ix48eQp1oKrGhQH7hyhd6QkeM
+rUrGRQ4seTRrn2qqVLxcWWkOPnc53k5aeTbu2bYanrVrGTDJGDD3GjNXh4Xnx7ePIk0fOnZr3DOB6+C
+TbQTw2aOXYs2sny3y3jRl4jO3/gSHEWJC6KcHK3s6+vXub3VUL+aXKzq9fQ1LhyZH+8/v/AAZIUUeo7
+SZDD6gko0odqSCDjB3VqXedXrBUaOFEFW6UoUUbwiLgh2QRqJtqNeSQQyrGoLKHebBJyBcsRyjgwAUj
+pOEhRLCQAcKEFZEQxY0HTULJQkcwAYsjHAwCJIhMMhXfDzjUsIkxeSQTiRB8vNafcRXBIggHjrwCEyw
+cMDAGGEccYEREOYrAI0UOGLEkQbBcUEQtCikxBSyKGPDHnE0GapolBcpHnx1OAIfMcMWth2EiBXBgSU
+xkfnALLLUkcoAYN3o4qYeXXDdpQR4OCaSHlWQCqKqhwkKBnALB/+KShx1RQIJYFVpiyZx8KgCIh6WqK
+uiwND0pwxC/1HGHMaqkkgwO/FlHESyJEMDBTGRyAAsml9RyhASxgkHBAxwIUgsTDsQ6BgKZSKHAQOJW
+IAEZwJIxLgV+zHnJEQxIoMQDSpSqQgUPHJFJIg4QcAAFjVALggQOjJBqJhzcqQgCf2YiBgUVVACGmMS
+GvNFpH+0WF3B7oLiHE3bY5SKbiRgggoU0Z5Rtp2QIQAksYBgAhiIkKGBJIwf8CosIH9gyBbuwiFGAGY
+4wQUAataRhABOKHGGAIqcWYQAZgxwBQBMeciABIH8oMEImk1AwwqSUNCDCVQaMULbFGNfyxwBTRP9NA
+L0iB44Ryc3RMB8q9A1hzCzQbuloQ4IY4KsggFRuuc0caBsrIAMo8goDYOhyyy0ONGHLBUfQYomZt0zx
+biZx2vJKLUUoUQvAoudiJ54CTUKAGLZUGDsZ7OKSyyAKTELL7plIMgYstugihQGZvFJxLRf7cYvUsNx
+Syxh+gCz4+BMRbmAQqaiyRzK/7LBDFUVJ+xAHARQgAAD45z/AqBxm3qkfAJiEIwzAgRGIYAQFGIEtot
+CAHDGAErVwXSYoMQB6YWIgk1CA20SgAgR8oFOAUIAiBvKqWxiBACMgwQg+QABBuKoIwMoEGEggAge8y
+3p4+5MkKNAAI/xpVeQLIm7/CFUy1cygBgnKwQxUMZ0W+cchjmAAAhIhwEZY0YqY05yqpncwDxZBBUUo
+go0kIcIikKBCUXgXJQCQr1jRIooVC2MRxjAQWPiBASMUiASMcIsREOAIYKydI+oEw0xYggIcmEIZQMC
+0613MaDJUAQMuMAkhWhIiImrOd1LxiyCoQjg9oE4aBvEyhsBCEgyggKpoBkQ2+W+VFTjjJAygPUwFT1
+UfGMG80Pg6BUwBT176QyYQAIZL1eKWsXJEAX6lqhIygQGYwhQwOXCECkmBAKrCBRgaibdfAUIRtYDFJ
+RpQzUuac4iFgguyjJGMPKAoGa9p1ENOiYAHXEJ8GoFFBz5A/wu2iQABjlAVCRgQ0EkYwYU5AoAEXgKL
+KDBAVUZQQJgSgYAp2OIICEBEJiphhDbG6gLXggUgCEA2SSSgCALxgxEuUSlViQEAwhyEA6hnvSNgTwF
+/qIURAMq2HrbynEB9Eg12IIQTGaMKfDBGPAWRCJbgaBIIcMCQxnQBhVLAARJIxI0uIYIGmO0DU7VEAa
+qJCVowoQBT6SoHejgQSZqNA40oiCMksMECyOkVd6wABxwQBVWNwQAUkEQmRGCAClyghpOAhQRGkCkC5
+MsSH/CqAzowVaBa9iBCjUEOjHGHO+zBNTLwQX/YpAgRNAKfGRlEGcRAhkQIiyCIIINGCSKIuP8KxBF+
+GMgrEkEGrtVREWQQxGt1ewk/+OESiXAtq/yQhsQOxC1iGcyQFDEppr7CEn6Y6m7BdtnuIuRJOFiiKlB
+hDCfAgC4oUQmGsFWLcK7qQnQS34ZiNV/6tjJD9a3vKuvYKfrGik769a6AhSqET6YiBzE4DA9SIuAGO1
+gjxnofgoWCngdb+MISIVAR4VIDw8yABjzAsIhHrJBM7gYHmREKDkjM4hZLJp2r4YqLZzxioaaYJDTO8
+YVtLGMd+7jB5lNNin9MZO8G2TkzKLKSLWs+wshlyVA2J7cK9BYboDjKWBbilK0yGKCsOMtgDhy3CGWV
+RGAFB6xMs5rXzOY2u/n/zXCOs5znTOc62/nOeM6znvfM5z77ec+vCLQmNEHmRSDCCQ5KtKIXzehGO/r
+RkI60pCdN6Upb+tKYzrSmN83pTnv606AOtaWLUQxiEGMYwugFL3ahClK7+tWwjrWsZ03rWtv61rjOta
+53zete+/rXwA62sIdN7GIb+9fEEIaye9GLYzv72dCOtrSnTe1qW/va1DY1qoWB7W57+9vgDre4x01uX
+JuaGOVOt7rXze52u/vd8I63vOdN73rb+974zre+983vfvv73wAPuMAHTvCCG/zgCE+4whfO8IY7/OEQ
+j7jEJ07xilv84hjPuMY3zvGOe/zjIA+5yEdO8pKb/OQo/0+5ylfO8pa7/OUwj7nMZ07zmtv85jjPuc5
+3zvOe+/znQA+60IdO9KIb/ehIT7rSlw5sdB/c6eWGOtNdHhxjRBsZVgd31ZER7eDguuoANwbXp/5trs
+NBC48Ye6lhLfVYSx3qXBcGHFzd9raTGu50fzXXuW53UhujFFs4QzDGXne2v/rtrua6MR5BiqwXvhjIM
+EQW5EBqta+98rTu++Pzzvm7Gx7zfI/1I2KRdbJj2xha4IInltAGq4Md68FRPNj9LnbaB0cYrSfGJ2xv
++9LTHuu4tzrsi2EMObDBGMQYPtbHbgxPsOARbUCBMBzkdeK/fuu8h7zXjcGGUxhDFLuQvf/st78GLHg
+CC1YwRhjogHywG+MMpXC/66vv6tlbf/y1r3rWh//77+ee/7CHBZ/ge6ZHbd/nAlgXC1sAeXPgBaTXC4
+/wCGHQC8YACp/QBnTgIMTQBmswfcjgCV1ACshgBRDABsVAeX/HBWlXDJ3wCWcACvuHDA0YC8hwBRBwB
+sbAC1/QBsXACxgQAfHHC2EgB8hADHQwDIrnAnIQHGfQCcYQC14wB8Q3By74CMbQC3LQCV/AC1gnCl0A
+Cg4SDGcAB8gAChFgAsQACqRHDG5wBhRICoYwB2wgDMaQAaJgDLgnChCwAbyweFwwgJ0AAShADHJAeqI
+Qf1AohcwXC1+QgQ7/IgdfQHqx8AlzcAZ0CAqicAZpd4VfQHlcJwdhEAy9cAIQcIe9MIaQJwxsIAdbcI
+cFeG3GAAddkHV06AVXIAcnwAux0ABn5wLGYAUewAklYIVeIAdwgAXF5wJ04AKiAAch4Am8AAEVmALL6
+AbG4AFIMAchQIPE9wZbQAdI0AtvEAKcQAwu8AhnsAXIsAImoGxY0Aln0AbI4AYeKAxWQHrFwG2t0AJy
+YAU4uAEoQAcrUAqxcABwsAVXYAyf8IdZQArm6AZboAW8YAIJuQRwYAxXEAZn8AKxuACPsAQ4yAYn8Ah
+0GAwh4ALF8Ahb8AlYQAq8EAJaYAwaQIxwQAwt8Aj+/9h+seACZ3d8W7AFb+ACwiAKE3B2WWAMSLACc7
+ACoiAMWgCPb2AMPwkHLBALWhACvSAMXQB9a2AMS6AFcOAB3veK1UYMxtAGW5B1V/gCvnCWbRALJYCHS
+1AMWtCVbeAGvOABcNAGIdAKWHCHh9gLXJCDGyCV7FcKVlAMTCmVVkh8Z4AFwhALxSCYVmcKndAFIWAM
+axCTuEgHXKABxFd59oiPwaGReGgC68h+q8gLGiCX5sgCnMACX4iMxGCFW2kMWPAIreCLGBmBK/B3WIB
+1nZACI4mb1jiUhrACUZkFA3gCTngGdCAMGQAKkVlqxuAFXoCHj9ALoGkMWdAGppCQwv/QmltghYH3CB
+PwCFyQArzwAnTYCcLQCWk5BxtQiRBQCi2AdVngimRpgHOQlkVICqSQBcTHCQ54Ajl4BcSwBdboBnBAC
+ijQBpoYDFfAC9Y3oD2YAbjZePYoDC3gfbcJecQwB1qwgKWABcl2i2zwm1+QkGzgAm3YCZBXecTwAvGH
+DASpiWKXAcKwAla4moXZC1bgoVfgBm9JB8cHe1kwB70pCl6gn23wCC3wfShKeov3mzlpCOVpkb9ohSX
+gCdx3kaUQBlcwgMS3BElqDKTAAsHBBmFAClqADD4olZwglWGgjXBwBp8AeOgWHHJwlGeQAXnaCaKgjs
+XQBfzZn9KGDKP/GH9wcAXF8AIwuARzEAsIygsKqgWt5wb0mAJmWQrIsAUX+QZquARyqqFrMItysATGs
+JghigxwQHpf2gumKgooUIGZ+QWs2gkciQwiyG1+lwXI2KOlQAcJCQq/iQKGwH1ywJpXuATEkAU4KAy+
+QApTGgs4yKVXEJ0pMH0sUApzMKWigAXFcAJgWgpsagXZqYwY2XouwKQrwH5LQAe7cHxy8ALIQIdygIy
+lwIMeQHpKWQpHyQsaWp52KgopIHaxYJPxdwa+MAdI0Hy8WQo9SocvkKiK2nWd4AJIgAXxJ6UuoAXFUA
+qXagXEoKnG4Ab2ugIucAbIsJsugAUW2gJeEAwZ/8CoVuACF2sMKXCHIbp4LYAEXcBtLqCOSxCzKEkKH
+uCEW8CycrCg05eKW8CxxycMXNACLgCmJ7Csa9CsrUmrWWkFLbAEjXcGWLuEcLABJ7uEcoC1OOgG4pqQ
+orAESPCuixcCpiAKK4AFLGCNbBACQ7kCWqCUxWAFL4AETuiAxtAFQTuAnuACLhAGChmTc2qwP6l+K/A
+CTPoIkNsFyBALGWCFZ5C51ggHLdAFi5mxBhgMrWCWxCcMraCBUcttwoCEykZ8ukh9w1AKxJevFtpsXE
+exVicMyUe8zNcLvOsgwsCFxbCw6Mao0/eEfTiZete808t1rUCH+Vq86DZ4+Siiwv8LebFAgZDHC8nWp
+7oodspWhNyGh+ELvVdooR5ovle4sNprCuTbC8nXvMHger1Ag+xLar2wvfnqgbEwvfUrdsgQDL7gILFA
+mgdsapanutC2fIkXg5C3dxpMexc8dlg3o9rnwRvcwZUnfAo8wtU3wdb3arWXwS6swXvXwivsd4nGwS/
+swTJce8vHfOLHfBjcu/WHwQ5ywzY8wy5sxLGnwhS8xEzcxE78xFAcxVI8xVRcxVZ8xVicxVq8xVzcxV
+78xWAcxmI8xmRcxmZ8xmicxmrcc0MMwhm8aEdceTWceHMsx20sx3G8xhlraod3brXmx31cd3wcyOg2y
+Hrcn+eWyIr/vMiM3MiO/MiAfMhMx3eQXMmWfMmN7MaSXHSUjMme/MmQrMmbPHTEC8qmfMrnNgyiPMo/
+58nD8MrD4MivfMmxDMqsTHS1bMmwV4SMHJqWTHygrMq3HHSlbMnDUAhlMAaFUMqzbGqrUAarUAyzDMu
+prMquwAjNjMnAOsw+58pQIAWHAAViUGofbGpQoAYUqIHLJ8EKDAlJUM6ezM1snM2WLAWQYAyukASyUA
+yQoAauUAyMQASM0AuHAAmQUAyhoAajQGqsoAYHHQpRAAmMsM+YHMtKLM8zl6+5bMkRbQyjoATBwAhiU
+AhTIAuQQASFIAtEkAQGDc5QsAquAAWQINOr/0AEaiAFYODKUYvROKfRFS0FUsAITxAIxKAEY3AIRHAI
+wpAEwTAMSbAKxgDUkKAE/qwEoeAKwRAKUIAMrgDSFb3TPG1zBfzTYKAGRBAMwkDVBd0LsqDPS+0KxAA
+FRw0J/xwKYzAFo6DVxbAKTF1qlry+YX1zY43JU3DPZW0MUBAI/MxsSiALSw3VYzDOoSALoaDYYlAGrA
+AFew3Sfl3JgB3YNTfYlwzOxrAKjS0LUCDOwdDWjv0Eq4AMsiAFTyAFrgAMYIDTrqDVyMDXwdDZkPzZo
+J3RxKC/2lzLtzsMwIBuqBbLtVvIwCDMxAAM3IZqp1bMlgy8wU1zXJeVptzZvv/dy4n83YV8yamW3WKd
+aqic3qeclRdt3i3HqMSt3vJdyczW3u7tcrsQ3/O934rcC7tw34LdvM7L3wT+wKsM4DC33a3AC6VMbqa
+2vK2A3Qgu2MtLkLygaryQ4Rq+4Rze4R7+4R+uarFQCgxu3xOe4HGH4SC+4ize4hqelXl84j0tap4m4z
+Z+4zie4zq+4zze4z7+40Ae5EI+5PFGf0TexFBXqY73eYd35EkHe8Lno+1Hf7Onf7JXxE7Oc0UoB2eAj
+0gApn8XBk5IfLEQBmmHo6KAjn1YCmf+CRib5TmHDFiABWGQAfHnAk74CCZwBidwkZ9QAmew59wHAf95
+AsRAChj/QIcmwH5wvnP5ugFO6AmNl7XG4Jx/hwHG8ALs1wseAKsJWek4aAKdkJeN3nNXWpzF4AKfQAw
+ZoAEnkAERIAwRkAEmEAIJIHdxKpVH6QZdQAezWOo6l6/NVgomwKSqXgwm8KCiYKEh4AakIAqkB5HB8Q
+KDGQsogAJmCuw4d4UlYAjCgAJLCJtSeQXC8AnHdwYuEAyiYI1vYAGWaQF36JWgaeLaTnWi8AIrYILIw
+AV3SAxngAJW0O9sgAJLAKZwsAJeUAKMbgxfgIz1rnNWDsRQbsKxd5ZpWX2lsAKN9/BTV3xfsH+8wAKt
+x/Fkd8clTPIon/Iqv/Is3/Iu//IwH/My/z/zNF/zNn/zOJ/zOr/zPP/Gj6Z3lsdpQD/0dExpRG/HmXb
+0eexoSm/0dAz0ktb0P1/0U4/0iib1Uf/0VA9pWN9oUF/1Pn/1Wm/1YG/yTo/HW1/2bczHfXd5dPd2hd
+zHbs/kd+d04+12cS9rgiz3cD/3TS73a2fIes92fd/2e//2ft95dd9th7/4hk/4fD9rjW9tk8/2kg/5i
+P/4gO/4l+9qD/z5oB/6oj/6pF/6pn/6qJ/6qr/6rN/6rv/6sB/7sj/7tF/7tn/7tk/gur/7vN/7vv/7
+wB/8wj/8xJ98NH78yJ/8yr/8zN/8zv/80C9qPT/91F/91n/92J/92r/93P/f/d7//eAf/uI//uRfbCZ
+f/ii3zeh/cgu8AviI9h689DUMxzG+/gLHqC3gvJQceqIZmljX2wBRTCCxYsKIEUM2MKFAhg0dPoQYUe
+JEihUtXsSYUeNGjh09fgQZUuTIi8iCpcjiAkUsY1i0GBOWIVYxFFtamChljNgVD10sdDKGocWVTyuEG
+dtyxhhJpk2dPoUaVepUqlUtIhO2QSkWLMaWdBVmIRYyC2GMXenqJgSxUguAQjgjcIMnYxpyWsWbV+9e
+vn39RjXJgpcxOSG8gsUwc6WxR0uMuZhjzFiJR0FZGvtyptWKhX89fwYdWvRoj4FbGYNjeMlLYomLncg
+5x3H/i8rGQlS2QAoZslIruLBZSlr4cOLFjUM12YIlnBLGtLQw1ipCLGIoctKxYiyMY2ERgGK4i+zFBJ
+bHzZ9Hn/48sl7WjbXJYIxUiRdXElAPkVPOC2O9TqzYYgG6ICBFJ2PYMEw9BRdksMGqkGELoV50Q4aXR
+3ghZZhiShEGGV/GIiYWUUgJoUBROizGmC7WCM5BF1+EMUaKkDEmIRoFkkyyhGoshkZjSlmCDSS62HE3
+YbZIAUUZl2SySSchQiYWODzZjSEIL2zxSS235FLBHB/ysUsxxySzTDPPRDNNNddks00334QzTjnnpLN
+OO+/EM0899+SzTz//BDRQQQcltFBD/w9FNFFFF2W0UUcfhTRSSSdFczdLL8U0U0035bRTTz8FNVRRRy
+W1VFNPRTVVVVdltVVXW+0lVllnpbVWW2/FNVddd+W1V19/BTZYYYcltlhjj0U2WWWXZbZZZ5+FNlppp
+6W2WmuTfTVbbbfltltvvwU3XHHH7YxSc89FN11112W3XXffhTdeeeelt15778U3X3335bdff/8FOGCB
+Bya4YIP7JehghamisVyOfMxyYYlJwmqNXiB8KOGBHEo4ITiWkGNikUnq74TLcFyq4R5zDO5LFVfgpAQ
+5Ih655ozYc8EQL95IcQ46dAqjF53Y2KKTkJHpBAs4EOpkMDiuoNlmqf9nFMYDF+gI4Y3HuIMgJyxKMA
+SF+MLmZAWoa0SGhZmnZvsqYU4oEI4UzsoCJpmEwUBoT1Yw5gy+iwEFRy6scLhtwx1iTznUPDgMJgt4K
+cWCFItKKIwQluCFRlIsUPJwzxtKbrnmvtJJpl4yOEoUvkkh5j0UevSllMI/P5w9FEwxxo344NBAlDAO
+YOkFFkhZgfEvVoglDBd67IUT2p8XCKsvButkC53cWOHjwYjhIgvlE3KjhS0yjzIu6J9XWbKVc0xIjk+
+EYUGpFHWMPurzz9eYNyxWWAOh+//fCMtmB0ACFtCAB0RgAhW4QAY20IEPhGAEJThBClbQghfEYAY1uE
+H/DnbwTeQCYQhFOEISltCEJ9TUQVS4Qha20IUvhGEMZThDGtbQhjfEYQ51uEMe9tCHPwRiEIUYxFgU0
+YhHRGISlbhEJjbRiU+EYhSlOEUqVtGKV8RiFrW4RS520YtcbMhBipEwMYYxIgQpY0fESEaNbQwiaGzj
+RtY4kDjGkSFw/Mgcx1jHM+4xj2ikI8f6mEaO6JGQYxykHTNiSD6+0Y8eYaQgHXlIjUQSTJYCXbmqZCV
+RZbJTmQQlJ0PlSU6FMnqa7KQoS8lJU/Yolaf8JCtlCUtQkXJTrdwkLT9lS03hEpWjVOUtZ+lKXsZSl7
+0cJqY8uExmNtOZz4RmNKU5TWpW/9Oa18RmNrW5TW5205vfBGf9wukvrMxknOuqUpWCs8mGtQ4ULMDRA
+M/pqF70SBjBKAYvGFJPnXBIMqJ4QYqoI895Jqo/yEMNC2yjHyQYIxYuYMEJfgYKF6CmBJ0rqKP6w4Ll
+KHQLXjBGC9pgmy8YoxMbIIYorPAJEwwmo5Ha6HL49ggkCMMFvAjLxWzziFhkYAE/U+RLDdqLmxpjDgo
+VxhLOwB9eYKBDO43FBCDaI6E+CkIlAMoV+KYiCPwMGSFg0Sc2IIxTVNQFL6nqow60gSuEgG/IEIUDnt
+oKFrggBZH5BAuwkoHKpFWjsSgFMS4mkMGmSBiiCMZSBGvPwvqVUf866kyWwrQycTrWspfFbGY1u1nOd
+taznwVtaEU7WtKW1rSnRW1qVbta1pYJha+FbWxlO1vajosXt8VtbnW7W9721re/BW5whTtc4hbXuMdF
+bnKVu1zmNte5z4Wuc4MxXepW17rXxW52tbtd7nbXu98Fb3jFO17ylte850VvetW7Xvaqt7bvhW985Tv
+f2LbWvvfFb371u1/+9te//wVwgAU8YAIX2MAHLm067YfgBgW1kgYxhim+0BkHM/g4EIvnynZEP5bND2
+1pS2wvRLE+HX3JwuaBEBtc4IbdaKY/WzhKJ17whRifIQs/o2kXekEMJCRgA72IhVJMkYWjyqEXW7D/w
+l1ObJyzLEEULejKFawHB+g8YgOgwIJj3rAAOAijEyYQRRdcgAxQbGBmnjCMKAoAh0dA4ASe4EIIqLrk
+4UTnosbgRQaI8U5jIEFrJYADnk0gDDmcTQ4byFwpBILQohhDFBug0Qu4ABOOLpjOfzFpCBJCjBYUqAW
+euAJLJgABDVhAz09bCmNQgAJRwMQ9n0CBMUChZ2NYQSlELc+lSePQO/dUaF5AQVcmMzNiHAUOXSEzS0
+QRAWEMAwWDafSjU2RrYwTDBbnW9Wic44JHrKALNWrFASLDmBDQoQ3fbgN/CHObM6SAIABCBpqN4YkJp
+MgF324P7rJNGo8tYQ6d+UIw/3YEiit4gSWgkIONQP2Fi8EVC8KIBXBi8YUUyQEownhDY/ctGhNnGGXq
+U9/HFwLZlLWs5ATduF8aecegrtyNKYd5zGU+c5rX3OY3x3nOdb5znvfc5z8HetAlQl+iF93oR0f6qIS
+xdKY33elPh3rUpT51qlfd6lfHeta1vnWud93rXwd72MU+drKL/YtnR3va1b52trfd7W+He9zNKXQnYZ
+KWc4ZlMBGXy0vh3ZWdUWb0RDn4vBd+RoWz+98Jr3jDTySXi0985Pn++L0DHpO/1LsnVel3ySfe8H3Hv
+C4rv/nQ/53vkJ+85VF+ykuqHvWup3vsZT972tfe9rfHfe51v/973vfe978HPugs7ZCQB98j9KvfOmvE
+ox/Jz8MNCTlqPjF840vEoZ04imE7cZpyelloSW3ATPDM05Qh4xSgoFErJmCU6gcQDiiwwgoK1JsloGC
+krUiAFl6ggViYQgMLGCk6EJ8X6CstWAEkaIFigIMGsABRWL32sxJhALP3eAkkKKldIA9eaIBWAxDGOI
+GlEIUT+QLGMYS18IrKcIGRqjAIhD40s5ExkgkauQI6aKrW8YIpM4woyYItOIENcA6o6ZHWYYGSYsGLk
+DUTsJSD2IDLyBle4Bxj4IIpaw5jOAGtKQUfRLKUOYoWcL4inBFiOIHICINv4wpZswAge8ItsB7/OcgA
+GgkB4HABCzAGsaIOF+AEY+hAL7SIOVyBFLiCweiFK0CBFQCKUkAdFZm0XigB6xEFEzAbFziKNhhEL2i
+dR+Ar6tNDncic8sOp4BCGICQICPlEnRCa+hEGobGRpXtAPVQZhuARwSOmWLwRwJOsVdTDW8TFXNTFXe
+TFXvTFXwTGYBTGYSTGYjTG/MoU05MlGymlvmM9qvokZ5RF00tGaWQnalQma1wIZrwlbRS8aJS8b2zGc
+ITGcZw8cexGcuTGXtLGalRHbAS9dwTHcyzHdKTHdXTHe4THy5PHTJG7fwTIgBTIgSTIgjRIJSq7hFTI
+hWTIhnTIh4TIiJTIieyQ/6SzyIvEyIysr2PkyI70yI8EyZAUyZEkyZI0yZNEyZRMj4Z5RZWsiAoRRPM
+JRogpORNjmQ4jseRbvhfoAl4wgZECRodCghc4A8cgBip7gVYThixogxawgolLATjYDWJot7iAEL/hAo
+ETvy2AmhUsQmRIASzYBRaYAEfLgl0QhRD4xAkYHxSYgE7oBA8okCu4gl5AApB6DmKwAuuhkVgogQL5x
+R85gdbxBMYpBlL4AixYgJlIAZZ4BHVbAjoohitDBjkoyy1YiVMciBBwA0xkQUdzN8bwwU44gU8wBQtQ
+NNgwqivYjasRhgnAgA2wgCWoOBQYHhqRMc/8TF44gcGYA/8NMIYs4I/XbIViSAHcoYOzQQI6QAYTwB2
+MMTLUMIEaWbphRIoScIMSiI9P0IAvWIIEUDQPyAk4qCg81Jo1SAE3yAKl6IIQ+JiSkg+pFMaEmAM4WI
+MPhKsuCEF9koPEKoVH2I1HyIl444I5QAik2QLJFCgAnU82cINPSIGf8TDm2zCUEbmPc0Xd/MpeOAMsm
+L47WiRJ4kgMc8kQLdETRdEUVdEVZdEWddEXhdEYldEZpdEatdEbxdEc1dEd5dEe9dEfBdIgFdIhJdIi
+NdIjRdIkVdIlZdImddInhdIoldIppdIqtdIrxdIs1dIt5dIu9dIvBdMwFdMxJdMyNdMzRdMhNFXTNWX
+TNnXTN4XTOJXTOaXTOrXTO8XTPNXTPeXTaQoIADs='
+ alt="Screenshot of the Flutter app, allowing selection from
+ sleepy, hungry, hugs?, uvok, overstim, contact, games?"
+/>
+
+## Resources
+
+- [surma.dev about dithering](https://surma.dev/things/ditherpunk/)
+- [git repo with badge source code](https://git.uvok.de/espadge/)
+- [git repo with app source code](https://git.uvok.de/espadge-flutter/)
+
+