From e5d6523a01ca18142a847b756e25c8dd626eb0e9 Mon Sep 17 00:00:00 2001
From: Xianbei233 <455482921@qq.com>
Date: Wed, 7 Nov 2018 19:02:35 +0800
Subject: [PATCH] init
---
.gitignore | 1 +
.vscode/launch.json | 17 +
ajax.js | 126 ++++++++
file.html | 21 ++
package-lock.json | 376 +++++++++++++++++++++++
package.json | 16 +
source/480px-Jeanne_d'Arc_(Themed)_A.png | Bin 0 -> 121649 bytes
source/480px-Jeanne_d'Arc_(Themed)_B.png | Bin 0 -> 239475 bytes
source/cmn.txt | 1 +
src/index.js | 4 +
src/server.js | 73 +++++
11 files changed, 635 insertions(+)
create mode 100644 .gitignore
create mode 100644 .vscode/launch.json
create mode 100644 ajax.js
create mode 100644 file.html
create mode 100644 package-lock.json
create mode 100644 package.json
create mode 100644 source/480px-Jeanne_d'Arc_(Themed)_A.png
create mode 100644 source/480px-Jeanne_d'Arc_(Themed)_B.png
create mode 100644 source/cmn.txt
create mode 100644 src/index.js
create mode 100644 src/server.js
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..30bc162
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/node_modules
\ No newline at end of file
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..42e86d4
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,17 @@
+{
+ // 使用 IntelliSense 了解相关属性。
+ // 悬停以查看现有属性的描述。
+ // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [{
+ "type": "chrome",
+ "request": "launch",
+ "name": "Launch Chrome against localhost",
+ "url": "http://localhost:8989",
+ "sourceMaps": true,
+ "webRoot": "${workspaceRoot}",
+ "userDataDir": "{workspaceRoot}/.vscode/chrome"
+ },
+
+ ]
+}
\ No newline at end of file
diff --git a/ajax.js b/ajax.js
new file mode 100644
index 0000000..1c51ed8
--- /dev/null
+++ b/ajax.js
@@ -0,0 +1,126 @@
+const ws = new WebSocket("ws://localhost:8989");
+let downloadname
+
+ws.onopen = () => {
+ ws.send("hello server")
+}
+
+ws.onclose = () => {
+ console.log('服务器断开了连接')
+}
+ws.onmessage = (message) => {
+ console.log('收到服务器消息')
+ const BlobReader = new FileReader()
+ let data = message.data
+
+
+ if (isJSON(data)) {
+ document.getElementById('FileList').innerHTML = ""
+ document.getElementById('message').innerHTML = ""
+ data = JSON.parse(data)
+ if (data instanceof Array) {
+ for (let n = 0; n < data.length; n++) {
+ let list = document.createElement("input")
+ const br = document.createElement("br")
+ list.setAttribute('type', 'radio')
+ list.setAttribute('value', data[n])
+ list.setAttribute('name', 'option')
+ document.getElementById('FileList').append(list)
+ document.getElementById('FileList').append(data[n])
+ document.getElementById('FileList').append(br)
+ }
+ let button = document.createElement('button')
+ button.setAttribute('onclick', 'download()')
+ button.innerText = '接收'
+ document.getElementById('FileList').append(button)
+ }
+
+ }
+ if (isJSON(data) == false && data == '连接成功') {
+
+ document.getElementById('message').append(data)
+
+ }
+ if (data instanceof Blob) {
+
+ const cv = document.createElement('canvas')
+ const img = new Image();
+ const reader = new FileReader();
+ let src
+ blobToDataURL(data, (url) => {
+ src = url.replace('application/octet-stream', 'png')
+ img.src = src
+
+ img.onload = function () {
+ if (this.width && this.height) {
+ const ctx = cv.getContext('2d');
+ cv.setAttribute('width', this.width)
+ cv.setAttribute('height', this.height)
+ ctx.drawImage(this, 0, 0, this.width, this.height, 0, 0, this.width, this.height); //this即是imgObj,保持图片的原始大小:470*480
+ //ctx.drawImage(this, 0, 0,1024,768);//改变图片的大小到1024*768
+ document.getElementById('PictureShow').append(cv)
+ /*cv.toBlob(function (blob) {
+ saveAs(blob, downloadname);
+ });*/
+ }
+
+ }
+ })
+
+ console.log('下载启动')
+ console.log(data)
+ var file = new File([data], downloadname); //浏览器原生解码不支持中文
+ saveAs(file);
+
+
+
+ }
+
+
+
+}
+ws.onerror = (err) => {
+ console.log(err)
+}
+
+function getFileList() {
+
+ ws.send('getFile')
+}
+
+function download() {
+ var radio = document.getElementsByName("option");
+ for (i = 0; i < radio.length; i++) {
+ if (radio[i].checked) {
+ downloadname = radio[i].value
+ ws.send(radio[i].value)
+ }
+ }
+
+
+}
+
+function isJSON(str) {
+ if (typeof str == 'string') {
+ try {
+ var obj = JSON.parse(str);
+ if (typeof obj == 'object' && obj) {
+ return true;
+ } else {
+ return false;
+ }
+
+ } catch (e) {
+
+ return false;
+ }
+ }
+}
+
+function blobToDataURL(blob, callback) {
+ var a = new FileReader();
+ a.onload = function (e) {
+ callback(e.target.result);
+ }
+ a.readAsDataURL(blob);
+}
\ No newline at end of file
diff --git a/file.html b/file.html
new file mode 100644
index 0000000..fad52fb
--- /dev/null
+++ b/file.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+ 文件传输
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..cefa3c4
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,376 @@
+{
+ "name": "internet",
+ "version": "1.0.0",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "accepts": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz",
+ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=",
+ "requires": {
+ "mime-types": "~2.1.18",
+ "negotiator": "0.6.1"
+ }
+ },
+ "array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
+ },
+ "async-limiter": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
+ "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="
+ },
+ "body-parser": {
+ "version": "1.18.3",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz",
+ "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=",
+ "requires": {
+ "bytes": "3.0.0",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "http-errors": "~1.6.3",
+ "iconv-lite": "0.4.23",
+ "on-finished": "~2.3.0",
+ "qs": "6.5.2",
+ "raw-body": "2.3.3",
+ "type-is": "~1.6.16"
+ }
+ },
+ "bytes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+ "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg="
+ },
+ "content-disposition": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz",
+ "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ="
+ },
+ "content-type": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
+ "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
+ },
+ "cookie": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
+ "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
+ },
+ "cookie-signature": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+ "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
+ },
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "depd": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
+ },
+ "destroy": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
+ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
+ },
+ "ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
+ },
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
+ },
+ "escape-html": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+ "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
+ },
+ "etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
+ },
+ "express": {
+ "version": "4.16.4",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz",
+ "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==",
+ "requires": {
+ "accepts": "~1.3.5",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.18.3",
+ "content-disposition": "0.5.2",
+ "content-type": "~1.0.4",
+ "cookie": "0.3.1",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.1.1",
+ "fresh": "0.5.2",
+ "merge-descriptors": "1.0.1",
+ "methods": "~1.1.2",
+ "on-finished": "~2.3.0",
+ "parseurl": "~1.3.2",
+ "path-to-regexp": "0.1.7",
+ "proxy-addr": "~2.0.4",
+ "qs": "6.5.2",
+ "range-parser": "~1.2.0",
+ "safe-buffer": "5.1.2",
+ "send": "0.16.2",
+ "serve-static": "1.13.2",
+ "setprototypeof": "1.1.0",
+ "statuses": "~1.4.0",
+ "type-is": "~1.6.16",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
+ }
+ },
+ "file-saver": {
+ "version": "2.0.0-rc.4",
+ "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.0-rc.4.tgz",
+ "integrity": "sha512-6Runcc5CffLF9Rpf/MLc3db9eOi2f7b+DvBXpSpJ/hEy+olM+Bw0kx/bOnnp1X4QgOkFZe8ojrM4iZ0JCWmVMQ=="
+ },
+ "finalhandler": {
+ "version": "1.1.1",
+ "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
+ "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
+ "requires": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "~2.3.0",
+ "parseurl": "~1.3.2",
+ "statuses": "~1.4.0",
+ "unpipe": "~1.0.0"
+ }
+ },
+ "forwarded": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz",
+ "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ="
+ },
+ "fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
+ },
+ "http-errors": {
+ "version": "1.6.3",
+ "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+ "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
+ "requires": {
+ "depd": "~1.1.2",
+ "inherits": "2.0.3",
+ "setprototypeof": "1.1.0",
+ "statuses": ">= 1.4.0 < 2"
+ }
+ },
+ "iconv-lite": {
+ "version": "0.4.23",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz",
+ "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==",
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
+ },
+ "ipaddr.js": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz",
+ "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4="
+ },
+ "media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
+ },
+ "merge-descriptors": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
+ "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
+ },
+ "methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
+ },
+ "mime": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
+ "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ=="
+ },
+ "mime-db": {
+ "version": "1.36.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz",
+ "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw=="
+ },
+ "mime-types": {
+ "version": "2.1.20",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz",
+ "integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==",
+ "requires": {
+ "mime-db": "~1.36.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ },
+ "negotiator": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz",
+ "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
+ },
+ "on-finished": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
+ "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
+ "requires": {
+ "ee-first": "1.1.1"
+ }
+ },
+ "parseurl": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz",
+ "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M="
+ },
+ "path-to-regexp": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
+ "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
+ },
+ "proxy-addr": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz",
+ "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==",
+ "requires": {
+ "forwarded": "~0.1.2",
+ "ipaddr.js": "1.8.0"
+ }
+ },
+ "qs": {
+ "version": "6.5.2",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz",
+ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA=="
+ },
+ "range-parser": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
+ "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
+ },
+ "raw-body": {
+ "version": "2.3.3",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz",
+ "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==",
+ "requires": {
+ "bytes": "3.0.0",
+ "http-errors": "1.6.3",
+ "iconv-lite": "0.4.23",
+ "unpipe": "1.0.0"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
+ },
+ "send": {
+ "version": "0.16.2",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
+ "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
+ "requires": {
+ "debug": "2.6.9",
+ "depd": "~1.1.2",
+ "destroy": "~1.0.4",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "~1.6.2",
+ "mime": "1.4.1",
+ "ms": "2.0.0",
+ "on-finished": "~2.3.0",
+ "range-parser": "~1.2.0",
+ "statuses": "~1.4.0"
+ }
+ },
+ "serve-static": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz",
+ "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==",
+ "requires": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.2",
+ "send": "0.16.2"
+ }
+ },
+ "setprototypeof": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
+ "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
+ },
+ "statuses": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
+ "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew=="
+ },
+ "type-is": {
+ "version": "1.6.16",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz",
+ "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==",
+ "requires": {
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.18"
+ }
+ },
+ "unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
+ },
+ "utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
+ },
+ "vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
+ },
+ "ws": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.0.tgz",
+ "integrity": "sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg==",
+ "requires": {
+ "async-limiter": "~1.0.0"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..b3370a5
--- /dev/null
+++ b/package.json
@@ -0,0 +1,16 @@
+{
+ "name": "internet",
+ "version": "1.0.0",
+ "description": "",
+ "main": "index.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "author": "xianbei233",
+ "license": "ISC",
+ "dependencies": {
+ "express": "^4.16.4",
+ "file-saver": "^2.0.0-rc.4",
+ "ws": "^6.1.0"
+ }
+}
diff --git a/source/480px-Jeanne_d'Arc_(Themed)_A.png b/source/480px-Jeanne_d'Arc_(Themed)_A.png
new file mode 100644
index 0000000000000000000000000000000000000000..2adce210786339529b740f0a3884affb14364d86
GIT binary patch
literal 121649
zcmZ^KWl$VJw>Cingy5FoF2NmwyW0jQxO;GScZZ;hTd?5n5x=!~w=Q+>Q6RoBqi~fP=0~{P2y1bke01ocm_FGFrdH>eqao?!%c0sff
zR~CnZ`<;mPY=ZQ5PhlnpP=M{b9@
z(A$Ieri!vsaIgP43cAZv-+GYUmWH0J-$$p|NEm{P|$
z7>VHFx^MIas=5;s@^DF+{@uN_>&JZi58FGO-BNpqEu{{2Y42WHufwhRo&=uj7-o-`
z^ELru*MC3#iVF0e5fn(%xjLU>7STSbVEg4LIveSaSGSZuDC44milHEZ$p5S8odkmf
z3Z)lidR3RZAgE)lB#m#itF5r1FlO$dukBj48go$G(lQ>MnsI;`eQH4u=tLOs>)sT^
zr=hLv$UJh@Cwh25T#Iy1u1m_b6A^ps
z$UCbsenu7lQnCPmqYT2LK$Jj%55W?87fv4p=|_$!x^G;4&qm=vS+a>tUHStMC4*A!
z+Ar~gGAtSLJt?H7%i6Iz?=?5XRarMM!PMixTlDT|=N2t6rg#fV9h=%hv5iFVX1Y41
z=Q{1)R6_yWR%zJFzruDJg?T9Bm}Ci_Q4ZbH4}0@bYsL~hIZ6~tED1%BI0`(@XA%)H
zly`)P&6!>o&hLnbQ79>fw`hIgXp!DwNo@O5%!P2LP#^-t77@E3@$NnOd-tc+)*|Ob
zP)C*lXefkF{*cZv>XJp(@6V1oD~i|K`gm=*2C4K0UM7bnmh6ndU#l*G;&!m`M$Z!a5E;d{1
zXiF*POkbd9X7^+Veg%#~@psCz4=ji4^z`!wQwzg_<-6A%wrv{Ek)sBU6tPI}*#5J+
z{2sS44WDEtrz7yR*ZrGQD-C8Y|Er@yO<54kZDcaU2T)
z@&h672>XyLh!XEiLTUD3j@nl+$e^|?ZSA5ssDA@RT
z-}WM=x!CJkKS+F2BIv&wdeK9X_qaWsL-ZE(2J>p5{AIrQpOMew8e?pw9P+P~;4~9aO=RVghHc3|H$GNnDJ&%)
z;UzSAN^=u_?ah4lKOM>!rQ>+|@qL6J?zIa1TKckDX_K(kMaQL_>zA=x1?MB$29yVSl1>i0|ShZoG~PGUS8)L
zUDS|2rGEFj%wx;_v?nug?*P*;<51*E{B>#cCNns8^AYvbe2z!=X?x$~x}FBKgu=+$
z9~r8Ef=WS~4sh|ksOjtzIDC$%IkVghvzyR;%(Ahmn{w)K*Js1rXcal+@bt;sdYOlC
zeF^0kS%Cfd^UK_vRXM&(L%tRdU?sauz>O&>nS4;bEn0#ZTGu7A8+-FAgicvq*1XPSN>B1U6N
z=>d4i2;mzC0+@jWuNaJ?SI?sxujE1rGYI*^mpoYZ+U3G=rqq`l#TDJ1U
zGtXiZ`@I14uN2~P2l9`+YYE6(Wgr9MvCgihVqFub+{u&HxY2#Eios8R&?j~O=coCd
zeh5DYiCa;pmF{ix$RAm0g-vZc9u%DUWs2%Ml+{Tws9*kSgpaRYAcYQ;D)Hg@26)T!
zf2(b2sIKP#q3fa=PgTIs2*)$UNzwF%<=5a|ilJqR^`Hs`1^mLa`VzW@`roz>|LjUo
zqSQ>JB&+)<)d1>ie^WBm9I{t!NMc4pZ?@SNdT2!$@d01L*!vmin{12iXptzA#wSq~
zOuLs8ZHd8^_BkF}1OK{ZD^W_h^O&jPY2>SC6;5S`jXqu=NT2;-N}T;0i_h9u@}upq
z%y9gjy)scqBb!0OY3zr(2`iD49=`|8x_?9WH9K`6vY#?}CG*KI6wWS9sYkJ2qkF7K
zeksn&8D>biSR_d!6o=P?06gdmv|$mey4T}#I*D5FwBnUv|K>id9<`{bST~}J>8{js
z)lM5NSH2kU4jj2NO>D^C`dsZIZye=sM)u#A0N{iB8U=q<{9@$f=1)#3-QewjIDm>O
zn2C3v0`E<45aM0$^~oT8{};F_uNsyDgHk&aI$0*}7~+8$v`?K8-4A3N%mBbNwJdqX
zNkm6=#R+2zQL%+I4JkmuFX$@`V)AyV%yC@7N9U5t8Y`_;SO>FQ$()oP4x?H_&BTXy
z5-r#T=nkY>4}I0P74~AN^)L5FSco>Ja#Yb7@Wp*T3^}|VH=DZ%+&9*$cJjRRCdIUs
z*q&AN7dC`+MvsILpUvH+OsywvDc$R4
z#f_t$JRQT_PtH=ZU%^A1@l6ZPC2H{5Bb-@rS#h514OEK#Qu#w(C6@~zYMM{z%IBZ<
z!9#9j^GRdqbtGS9G$v-y(M
z*=S+-nWhhTyv2Mvl2wQYqi%M9Ep{UOL`=GlbLqeb;~_BNe=*Y~?V#P(HDw9ThRrd#
zr+Lkd!36BVu0e`kLe39GLo@uBYc5m$J_@x$Nzf|N7sAjJ3Z)1TMXA<1a+E<09^BIiA#?AEz#KTaYABRZ_%|5UL0UCGBMOws37gC9
zB?Mh)kUHnH<~>kEtQj{Mw-ch(&{#OsC0>%BT0B(+@O4z@oEY+{H^es#zA&VrrBpF2udJBzl45_C
z@3qr0_?#pki_daHjIL>b>xT}Y>N3`--M$TSJ)AKfAdtmiz`1D(kyES}gh9&x@WX
zrOxxiM8kD=YN=Qfqe^m4Fb)O1xM*MrDF&W}nM&sa6H0?@d8Z1F4bkDoecRKoh6Yh9
zJLvD@AMMXGiQP+?aSZ=8>^kk$lc!%8eXjMxplU3XCi$s9-Q+sW47^dR4zItoaQE>a
zy_>SKtbP(tapm@ah8hQjN{6|P430E6=*=Bg@)niQ6j%6ZLihpIw^TlrbeuRf`m`8U
z!kW7kIlMd6K_K{2nm0rVM~fnX0zUj~N&d4u-)XC*v`3x=jf;f(iQpu4F
zd=0HkOYhm?#Z0@Hx<(v5wPi6{5WRfl?UUk=je_|{8J&>wJ7AMe66
z+!~_Rrd5AyCKQ@`>NPg`1kFC?2z0Ff1>4q&rf)Zf@@GoIv6*(ESualOt-)>bF2t9z
zT7{`0B$+dP+K{=Qj$~&%lQHOQMYS^G_%%4{WVYuZjKMSRUH$!b!!n1GG_{QX<3**tySzJAqLySJf58vyIFUC~CAKww
zKPa?acie4r)Zzs;gI=Ge_<*qG)xzdW*vw)Sh4-EXQkRiqKg7C(^?Q#KUpIq(sAD8Q`ArHmkCk8+;!)(<0%*&WW5b1n@F@w{;v
zd{Pfw;!)ouz{IkRWg0Cas>!MbzqIhbj50$wXE;hzs7Ul@a@DEu(lIAG80${7Sp8mZ
z&evQ0BYS~ZuO;YDny+AV=8N2nL)MN%4*Eqtdfi(mZR9c94XFvZJ$FIe+>sB`ectRJ
zEWJrRtk72(Fj(kK_4v!u%X6%AA^ey)vQ$hbRa9j%W*k*#aS0k>QXwC#i?1kUvQU)b
z8uMvl#N?Yom~EpM^i+3Iry~cTYI-@-DI8y-<2aL(
zZ7#)CtHkn`_L}LvRMl7fgzQ8bxGIgTh@mleOV9oH)2&^X0WxD33wpwn0)eUMUD7DO
zDG@h2l0H9|j#T(kN*R4%RWxfZDv_J~-c{lpY-8e-O>j4ZZg$l$@=XNn{Q9hN{NG9N
zMD4mxccR>EFE}mr3^d1?03ONS+X3=YAFx9gaEH~j>V;G74?>J1s_SZJCvYTC);p42
zuLt59T*9!*l5v(kj|s-@wyM97cZY{ACUmuX
z?kS`X&0KhBMc~@S;YR43R5$UNJY$&0jY=v59ZSBIiIQ#
zs!MCsktVM3;1&VqSsY441u*X-DJQ!Dwnd2Rk+#L^w~*0E5Sl*UQ0ymVauPD6^G*{DKZny2^meZvWOqEt3=HGbzI|_
zgq1AO1N9eQYCKz89e~Oh;Z9Fykyo*=S2WJUvF67*ABo%GiMYzAc&+}Nf&|~y)m1KdYO()SY+9?`@1Sv2_QGTi3UNw}&74
z62tl+FQB>@RbZRbf`E5%=Nhq*owgA~`_FdIt}WDD<`@1$4@sALu+=xfY-W-SWKA6
zF<0OKah3=*naI-Y^!4g@JK)&&dvq^ocaC&TrPYP@V|I{
zd2nL$RvrVk-Yoz@An$lz1=NYAOBCqPkcM%yj|mHUh=Ft|!5CSSL@}!k>#^4M+n}3o
zDi<2wm;Vr=5AZo3T1f@RS2mJSXI@6??D-0e{1>5Wl%G;Zv>}`~lZ*KQbJr9-Igoxt
z@*~UaKMdCcoToCm>wi%DR@qB&72~o!?I&7vs~m+o=Ob#=@pCbE`TzsL`&z@`XAkdx
zr;lT*>mHPW#|6bV^rBC}Mzf=iH;v?``&Bt!hg<6oj81LiAMTvR{{Wv=(`vtCUA}Q{
zmzt5zlQ8#kdB?Z-o4jo6~Uyhv%XR
zTBxVpZ|F^E-!>kxB=$gmfWMVn3LTh09;?2}TzFqZ>cn?Hoyzd%-wP(5ls-i#6JT=4
z)JzT+Mm3eBeqlY;`2K0JUx3ZD_=v{myq3G}l`eZxe5k<8y4p&}ZbZLxe~r&G#_08Q
z)X{6{->%)uimLyRsmXsyqzBs(@YYqUxjemq|G!hTrZ0idn}m<)gNiYYYY{bFl1?^R
z{0TqzdA!xbN{
z=v|td<%CLZb-KIfL{sB7trp`1ND^YwgR^%
z%mbHW+u38X+AQKY_zyqtqxXk`Qo8IfStsej{g2(aq5Jz2wQVLY_jp^^PUoJPf&p~_
zclwpBo{PzyMon{w?tbOTvSC=TfHEy@PHze615Vm~u@7JSsyzxR>(eu*+%0yUnlxek
zs(F)jq5-Er?sDsT-F{R2FYv^_yygo?V~BZ5y_!xWIaTg~ywe`CA^NP)I-XI
zltJ&@#X(*k;d)!)D_bDV4yGMnaD}V3YQk%Ku9A&z>YjRlKaN8m4gz2Eo_2gm
zxms5OOv8B*R)+l5r7>o|!o6E7t)Qp;5(1g#0mbAvF&N&UiCS&_IGK-4?fnlbe7GKT
zdVMvVw%OVxQjzJFRIEJuWYPWC2a5%j)>nb){_bRgv#>U`J9dE4fOj14u4MgBShfPX
zLR0~rH|f{zkg7|}#{?%`l07zr=T%@Au@&s8z$)NmZt-BPR)|bm!AhrjMA?eoH55MD
zJ=lb8=UHW}zzoi@WB+tdl$ZQ0Go_=i@s|fE_l~)J=4+x+(K}PAPEp{3}C;PKm;d?uStb9_Dtn
zjc)i5KS}AmtaoFC2YO!M0`T3XaBD6f^+!zf^sr}YZaXS1`J8mX!waA-m)(`)*nCJB
za?hjH%aQ-{Wvht&tAJ!srU>n2)Zt5+-ywa;=fxwq0n4nF?Z|@8lStjhCn5
zXGM|=doGW2a*YhWav#w`!1wdNFj=ygG9&UrWqu7NoBq9!`Ks(zk{%Z)!AQ$d){TwV
z6wnoa_t5U)x~tc1{`uY>WvyKwJ}rG%fE=apTH*lonAdT&q}>d=I_FEiJ(y&!bi>1e5=9>}?>1XrmVc-od$ns
zU6$(eHA`dP3$Ue=@zPkCM*iJsViSU{+5wp=ck0+yS%0OB#l5E;a)KRiCCLE~e!lwb
z7w#d~iZD~*%AQW*@#V5zPU9wN#GAF-F%Xl#-;m=6x7LZaLxq8_s-pK*%@}w2tr)BDw`qzz4tsQj~ag-YDx5kp<{_X;y
z`R=WBIg?iwhI~jclO_Teq%nkGc4}IP=49RvcD6%xxTZuctx{8`ht6}zUh9Y9_5PEQ
zo(CWPS;2%vVO8XZ#ZFK2C7n2I!_i&7B$Z4oC$^<+$bj#a&16HB3F)@QB!@!N%^pt5
zyVkamSnq1^r;$qFaBWIbd+6C^OP(Wkv7N?oW?hDQjou1a2zds#~GOHZ)vKzk8Ul>2Es77-w
z2^|TZd)Qy1Y1dA6mQsSub2>N996<^sM9jO3U-Ga*mpb&g@x
zI!85s@J`w`151!d$iY+1>BUI3-t@~b?Z}zXFsxKb;io%H?Mj2o?V5(9TvPCUhlu_H
z=B7S^2Y;G~ipwv`G)qv0IpqcIovk@vVxV|oZif4}76>{n-;~Qlfe71v2it72GqLQh
z12httGd}uoB;)iWjdwNiovEBGIXN8$@~n{sy4=}d0v%!7s+Vy_&sW1C|6}MrJ42Yt
z%Mrro*E7al!-aUZGta4R_i8eSoudGCB2p~{Pi&d+ZInVvpr(eja$YNe^*eT%!Zazl
zU_AKBq1@a-q4A%x_&u;}6~!*J1!={GTIUKmY#|-uC@S$>x*>V}#I;VhYP5y)(n;d%
zj=aRliJ<1NH+UN2^n8)a&*`;~+q0i_$Q!GFT#8Ic|6l}1419v?4b1x|X5M>$y{lN)
z<~0U9I&S>#JKnHZ-MA1dPd&C$17CyRy}-^yoB`zk_5`3=xCLDK$bMklkza|DH*p4;
z<&^_J&*>D?SkqonQb_rlS=lM7<4@9|8+td{Or25B{+-QV6|eA1z)!>*S#$d6s
zkDsXTN&5gsSnEWRug*%(=(y?+r$|dPkEY|rVWcgrWS9tPV70cFwjln2KH}?!n2aMQ
z4fbY2lxgW{PeCVBMDAt8
z$g+U~jX1*hm3YqPQB7j<0(_#&ii#KMn(Jpdoz~H!f5)W{+zTp5`;q750Q#a|d$W4)
zo;|J_>$;Q!Za^C5X9QQL6T>?ZHwOL(S`K0YLX)urrlsWroZhCy(-CB$HgPt
z)^pwUQ{dy_#SYg&{(2ykv|F)O+z8zfEv|uq`c3&dJ7~Cd_IIynYTvOUSz2$(qJX0LGW@kSyFRl4C?Zboj
zSAClmoQ|}!2rE)|lgcl#SU4AYfP1p+kw#&UlISvK=G~2*Z_d3p&r|VZqdl-nh_Tlr
zPwX&6^-U}|>DFl07iidog+^}p!sPn}=mhn1^W-z$`mH_`K#Lervasy*8MD5VW+$FXS_3Sd2Lx*V+?mNGqxA`sxNP$H8VF^T7v$7B&E5O
zSP`upelVV#7)m?}PM0iEycP~6JiKf*&mdxiur!|dCGCKI2n59eTLH@^S_56D9;Egt
zCZLI!j#VPg5c-!x-k#lutR^xD^WTNzZHTwgpbyy}AI0r5c?q`9qnER7p*Fl2UOK
zji5)xPU?dDyBC-{?}VoAIM^*h|0
zN6W^g$vJ`@3F~iO4j@M|>0J~ZFZ$;m)vs;LTK4C>d$&jKw0Uxzj6@zIn*43KF*kx1Y6?*_DfXusZ@g`WPx4>*
zq?Cph9qsKK?3R3h7Hu@@EtPm#|JP51@N57QY(TknDfS4pn?ecAyJ)HHca-}=JnJb1
zDe$F;fFOYFOE-@fA-qEAC*LVGS+_=%V#MhcZ-{GwwXMBo2-_^)r!zT0{Qd)nvf&Rg
zS*8=V)zeWstTx$6BSef4kT*rtTHyO5niQ23fL4Buv$W{EHaK)+%N^2bYIB1??z>`V
zct-$+
zc1Tw&6*)a|dk^HKPsn|Lds}|+E`1_}hF95O4)0rTjk>cENI81WI$xp%YxRg?*@GGz
z&{RwmU;aB`yAUQhxt2BjYBClH`>L1IfrfZ-*#k4W5K2{-PhQeldoi1D%CRG{DQe;&
zsbfk^d#B%dZ?z~xw8~I5H_z?BrTi^@%I(+FzvF*QfxjEQzj>|RJ;5@Pn4xUQ?E5fmflX?z3af6Eb2+=$w+nF6(akk$S+tIYE*c-8^&Xcc$B
z-sj!Fa+=lME($i5^za6CZc6E_kNC7wbT-khWb%6CKk-_ccg)Ciaqc&QyD)E*;`$z2
zM1CE(%IL|PZdh7VvCQhFe3E8cWJafY-yOyflQh>Vb&d!UtQrSs^R(1fOfc4FVf)F;
z3R01xkX_5D@r&bk9GQ#tu2Cv}L=j)sU-k^b3u(B|-T1=amGN7+w$(|v{br{T_%v|w
zF_F|o)q9)@$55&d&2Nl7OH;|Jd22Hpf5L8~!uNEW@BHWm=pQUO)w>5?zmM)Uv9sfv
zB_&%2V**=o=o8P_YN}DOrMU98EjueTQt!~!ImNQig#Zo|3s~@*-u4#G_X)FhowJOU
zC5XFdet*D;{dZ@l6>tn%w9?^iz0_a~>v#@!Ta>W-6~|^ntBQ9J|9O(9wT)7Y``S3+4ck
z{XUl`_d`zwnfVCED&2EwovjWcbV2OK@kXvnof9IHG%3btOf{YiwZtet71<>kd3kkT
z-m>5#c!~Gwi6vX5W>gD8F-^6k+OC_eGiH+3&_*d;o}Q*nK9IMfu|5iid+=F{o-)?o
zA>1?dG#9Dn0c3u9ds
zHR7#2zt;=qsZF_X3KZHYXu0*Zvy2SW9m-(S=~=qFhchc){4L?>9s3x}pYpL2yK^^!
z`q%MwwY4E<$LZXTT)_FhllP4;%-U#SYPS9P3qLc_^HEGu=ZEtdwGkm1yUtZ^@dfE{Crh^o(iF!KjSpdA
zNfK&7NF@E5%T&B-AvB_*{a(;0h!q9%&7PenQ{JOe~&w!}@>^2&JfGG?;sIx$80
zBU68>=yaKT0#Egtalof1E__d|?)y7a^27DS97i&4fGPCyayJ}hvo-6hWuHiuDsed(
zZ-l$3!3{>3VQ6!Hyz}6gf$G_}q6$f;Wy+Y{7MmC`O{iL$BY@{cV)o%iFUA;bsTlUd
z<$#|leKnfK$|4JxzZd{`REy?+EBB^cWS6?-d{`uPlqHUc2OPKM6CdjSa96ek0?57Ab*=tKy_kmSj4Xy+5?W(S*fp+n&tLE!<;JAvx?-
zHA&b-1AKwfJE21>8Bvfwo~-tFnEp@RPf3qT7GesQhTEY|#I=6J924GB4yKYKc34zN
zG!ZLpCF4v!6QoTUa;S~Y;R$#Oc9!!o+_R?_aHL_IQsRJ)U-S{Igc4P+ge8cvn1ND<)q>h0;<)rM@J=MQvlgX^9
z5JyX$^U+8Tk5t7tL#)fUdi^2AM1&Q)1gl>l@>gzUH1HuAtyo*i?pJEy>5cz^|AmRw
zo`zx7uS^WmSIp4#W+y;d?*eNh93}PfEw)4h+baSE344y!8Bt%W`}$v*EYR)0yB(?XJ%V}@f*!%ax3#Qi{uq#|#Se?%*
zQqW?BMBeNsULrgYxkN#JM~>@sQr0DHh!1})l_L^^WC+^F4E$~W0R#O@OxeFv9WGnb
zosx+k!etf4uC2yeiwuks7{uNyU7e24M%GSSzWY9IKGaL+zf~Vsd!Yvb*P{>Nf&DX2
z%d#Rry~hvNp)a>HGc^X#$JW4u^Tbn>!^AA^$5oRhA-BJ=o`nF<3L&NEL25)C))~90m6ck)Aw7TL6hklR#)d_gWX7p^=bwJBz
z1!Af(WQwt%2t-xH+lH^?bit@37Q_NKg%->5Q3WJsqNLgFQq3o>m&R!{SS7wqhQa<<^q!Akuvfq+Xl#_(6Za5FuS)yV7A6rWY{V|4ig<
z#)cRR6xTANFvMnGsYvI_?a&ncVWGpRxup$Zm|Z9>XWmeI&4^L*P5~hFrk?%*wHSA0OHG;ONotIw@WJx+1;w!6Y<6fWU?nmC`!b
z!gJ0ztzgM!SP(JTk?NT2yGbtQGN~%c3yCbI&b4XmMkD_5szph3exfcC6*Yh7qH!7u
z=uzgwBkgO~Qtw^-cTg??+pjtWHYEp7UEa`uH+nzD+D;>DKIc(cu+9tC-Y;2)Dtcx2
zYVx0q#`9)bWPqlg5nsLu&7ZF%?Bc@zhF}+vv6(LL+4}Ck#Fs6R(b27Yf|h9~&)$o(
z*E0bya^@>+uJE65ScRs*3e}kmLsn>%c*VVMQrii)$gSF}cnPN`h50)v*9axCk5~;7
zVYvk#(tsv*vfl*0H!EJEi@U4QNks7~WB?`uH;HARwl;=a_n7orHk|;dC?#S1v(UVn
z{#Gh9<+BRK*lby3_3C4c0@k$yW>Wc>b(5XP5rS3LJ8(|5L3O8KY39}gWkyEF
z&VfE(#5_%hReRI@k$4H&)>zR5E_H_j#n))l6#eSA>?UV6W~*xECU|ewRDcn~aQs^^
z8ym{vkwbe#)~9%+C@#i6wpM%05BO9QbKK_Vs<~oRXd{A!a(9z|W9@}O^2#Z|yM&ns%ugKbbDg?q*gMoxg3c
z$hH)-nVI{1nsmqHxX~6|<;oFi2#*-Ey6b1Gx9lf0t{T(*G@S`23MH-^HCR@=SXN*Q
zbn=)f$ABILGl6HLOEqdeOh4Pu?xT|LZQt&7rliFPP#^Cg&wJdJ(hHX7(RBN#X;bu}U?*A)mOn9i?TFc$9Knk!TcG_G%XdZ^BH
z1N#wQ5H&bPaAq45V|kEmDCDN@9g4`zL6lmxqmUuA=e3hS&8gn|6w?kE&SweTqG~DG
zwX_`a^3Pilm=RTYI)Oo@X7ovbdUwZ2m6;@u&YRC$Y#smFTuIi;Ixmt^dcWEFi2wi@
z%D>uZ^*JzcD?QRIHp5A2V;IH`7{yTsc54RP#dNucbfwI1JDs{&diSpp<|>(%#Ca=y%kq42{hxb%y(O~67jiy7kGo(EnveMXLTn_W-ux8
zAasR34|t{R+fsf(jPgiD;$#cUhZIs>Gd23ol62{V*G)>3-_VJ*eyV5
zq5H%9XP4bkQ3aBHlD5+TIntTYgrR^<-O1hyJMl=~Gm-;y-_9~eLA3P+j8a<4K5P2&
zKg1=r;J&6TFsOS3Spv&pfkn?IV%ua_B3PsBWx#!nZ4z*EeHZ}YI&T1}5b3j5-<`bwNEEL=DZsyViu`
zyKi)*yX&Bzjs%VC@oyUixLxB9i<$^M=oago9904#*}oEj-RBu-emA@1xA^`_MlZ5X
zWkUX1wHx5`Q7G)Taw2qZg=z38+t5-;5CDPLKfb%3Wz2ZrndUy_Zlx_y@ALD_d6-Zo
z-b%mtTAD9vUt4HpeViJ2-4>Vyd5pmPmH}dBvw-N3O3mmVkE$A-%M$96mpCvd<1nB~
zD5ha~&drj|ys6H(#5_(JX#bv7ntkW9#`If87TH8jOmBYAIDUoPjt1vxg{44$&1}~DBNyKp(DTv#3~XTJGn11EpG=;wiT9U
zTl~<2A`;O1TvvYL`;Fx4J9`JELsq^J6}B>)RXuK3-HCgf;qQ5h&DG2WwFtVcgZKBR
zdtP=>r)(9EOntM!`vXkQqfgFjG90%65w+pj`JDwJTSlHyYLiPQMtn*=Bt{8i
zEy-%iSlVulsWHCOt^BDG!R4x<)hN0C;g$Stz_foF&M7spY{
zo3AIhM);$UwchT7RstG8lFygUM-7wfP{!)H~Wz~0Al
z^6fkFEoo%WM_O6vR(ngXh*_ms0&Ox@Yu*NxdZ!es_2=Y7Mb=Y2DYqzG+4nPfDGj>yN~a?Jrt}4|~Y0RNF{B&sR)r
zkCG>=WO@c?J1N+C0D?x2RZ`g%bzT?b%=43_p5ECM
zy|-metVpw`&J#B3e*5*LW?R~vrm;cTDNl;y^ix7jsWr>JK_E(oYwPBCMGPe|1yWk`
z?z+e4jE-b>Jp!xN>r9oFa#3j6)^o8w@ET~;=Sl|ct6SZDp|1-d-ep^7NEAJN(e~&V
zgOKXT0~>kce4&79hmiM_h{~EpRXP3IUB|8)?7s~XYDcO)ie0`h=gB*68EM?Jg*B2d
z^ym8@+#_GJF&mAft9p&UUio)n^24&YZbcu(c|^R%me??NfW6kj-IksjQOwa5mN~b3
zQHqIHcs&Q}mXhl9QY#;Rg}zfjt-jG&OE8qDl`G<9%E(Np^5Cw8DK*~v1zr!RJWBT7
zMsPVjZjO>2hzh~%{-arB@&$kojS{qWY-@%DS-bs?#X!;RM?>!%p9gf$J%CIVF*}ln
zPQrIh9T-+3kjTP=<*;$LHMmC
zRbo0qk%?e3d80Uqb45nZ8O<~u*+XiuvfLE1nQXbo4jY|CSl7&VNZXoUFkK)5Y
zLrdrqRw%Sis^?L^*8T|KAp&>pqwN&z%^>sBo*kdU#J)uH5|#1*zGRO8loaWTaVjZ*
zT9ak?>ZS)H#{pzWXyZlc#c_g+-l*#ICY-hW?zRmz-Tp0{Ck|UrPQ5-GNsiDnqk{)e
zKk~ZgMo-Ud8sGZ4lS)p`Ei7X9-zii$Hx-~iVkL`t%EyPvby^`C^8M51BYLVk(vbmt
zbUY!06C8@&74ZRwx{+Ui4c+e9oF6NsBE_~ru5SWi^IyPe?iOQ!v)N7nEwAZy2)*zT
ztEBnCEy+BNicAWi&r0B
z$xFEtSK^y}z#1QU;?z(Udo3|Hy+=9hsrgZ)FnEcn`(tAH-EUH5VqcUs
z_53s&{A*2kQ>qPoXhR3-t-pBs$~Itn9-V$n7G2j*#eJbQe5xr=+
zr?@~fbvp16*})qZ_lu}R#BwD__%lu+*MZuF+}OPvSwej=#TYGn6|j`w
zVS72vk)wwdA&Iw|JNr#?wJx11s3secwR`N-;>t4|1jm8VPePC=_FAuP%so9-KIp2
zIvzm9Aa3H%KuoA$1q-KGzGB^zh#@*ElgZ{!@!$SI@T>p#9kX)$c1Nl{iC%Ux>cpXA
zt$^F9sp|MEm@wpKPzhwbJMhtZ|NbN&RGyl
zle=wBKK~b9Ell(`694s4#K?CqI`YDK-@n^#&JRK}ct^W){smFhnisW4<|uC4&Nxg>
za<#*OCsE25k-0lP&1XT4C)n+0!D85)Vv*9ke)4I4=R2@3GpUa4w`EuD&ljuN)mRPj
z3KJ<+)f|m*T+wN?UlXv1+-THButFp}ZLz*N*3q_JNLR4x3Aky9|G8ov<-O5xH@hBRYIn#^#*YQUiE|4
zM4}_ZnH$=uo3D%Y9+rX6#BLy?q1V*_tHa6VO{hdA`POl{s+zi6cm|cshdG@>ByLUR
z?BUau@e3~N91m;oHKkhT+m-_3Vg3)9?B5OPqN(tL7fnL6Zkk@7O{OI^HQh`lce#ri
zPztIySXy&ujBW?$Mfaw9FUKJ_z~09~&oMAmdgfd^5QTAeW1pf}Lql0Ggzrd-VU{4_MuUTqRIo7y3rk^)8DOq!dNg!U52#^O*zZTe
zqBJ(3;KeDXY0U!$*)iBnJl^2Pe=7-fr((&{44$L6chFAVhK*
zPu_}3gQzt}lj{fipUH_*X`lY_@e*ZvJm2)*rmU}V
zD`7cE6{f~oL%~O2j6$R|?E-&O5zgC3^b@b=p+woyP@lFf^ZqD3)?h2hlb(W7io)=H
z7sa*l%J%EP&-YQ6o6Y$>;h}KNczBOLjT2n9hwutrO44qKTwDaP%~svo|0K;}XTA61
zpx@1{x#?uN>J-auN#LCJ{k~Z5?15G}Qc_7bMU|qWlvd&fWpw^?M0vc#W7|2B_0t|J
zxu!ucdyF~;c@qk|@Q1B=FXNKK@Y@|m`sUUbyE|cp
z-pE=Q*ec5f(A{y6BCu=9pokOoc6`cV^Sch+e9o!!B7S{b>%C$PtkEuJWM#87b-0^+
z%mYQ+RN~GrXOHtrC1Z<(`L~uA-A~4VEWU7t>>Cc*io(NNoV{&F)+PO^g>gZm&}8cz
ztuB=;p(t-oBaV2o!poFJjY;Zu@rfJb0ztnxyU4|Rewoi~W5O!j|H4)p1YHz8%x?J$VEU{N?oYfNGO>xevJ&P6Oa_MvKS@p%noTIl1pDbZ
z?+szg5EK6Sntwh=^rt`9ZxrRT_z!-n=`D}oe=d5NrKv^Oa^=U6R3evL&$A~QDGjt*@>7>I+dWhGU
z($Sy;zS`W)9r`N!ZAobaNkLwzBsv9gR+n~+Gi8|~e4i|n%s4yqqc3WYvvxUofFw==
zbEc6Ecpvli7DiG;uml8>_SzJCx%A=++gV^4&8xbtJ}vtsg|wYrio+=zs1pj37=*{q
zdMNf8A#y0FvTbv(ROZm
zrEsf(Cz{3QwjB{|PU4Fcw}Q?tj3UhbcNmmB{Zm+9s3{ofa4X74_?;0eX(VW|h)x>*
zouZS|YtZZV>ZH_?h*hNhKLE!-IKN;mHXlQXSUR%8R>&&N{X)6qIh6wG)?;Wbu5Is8#oI*3(o?TWgeU6d<)i
zDT7c7ArcUV5Ih2hNfJ!jp)(lbnufY8$fpIfNlsZhn!5E44x#n@Z5qdP+E8zKWE5e&
zWLgD=*#V|`%~CHTiS+s{eh_zD^c6$Ezx}!oki^>TTo_&MhS}r0ef`aYj=6e}X`{qm
zAltf43BZfCtDFEEqayT7DSUufwcXBl>U$Hn8v+Q?dgo5373+ftB_)mX99c_mmrI;?
z@oLj5V@08+@ep@96qDAAGB#33t&Na!agopQbq{?2Z+`zL!zgb)a`7OkR+rNF`qPsj
zl?qv6C}tL|gs3g#m1Ae>QA)IAX%y=Ng%Z&Cxwp0TRE;OE+Gegq3u4_0)wlq@v5cnM
z;1yQ&xp`X>g5{#s7%j=qZ_QqJ=ECfk)-K%q@#*qG|8#NJZADrT@Ld#f;t7qr*F~4D
zT(y26%Duk3s
zHKQsWO=ZzWVj@EnM<}gP+K~48q`i!#wLVqZQ06uHv|uvx6cyN}?W%Uc<3i2GRz(sk
zPTz8x?XjiGbEc&~cJrp_q*FKga$XyM_LuMFfGfmjn`Ef)50v<)9yz-74T+J*wGvt@
ziSzAJkg_#&Y|j$&u`IFYG9@CZzy)NK5boeWwU>Sl^UmlnH@P2nBcuQ&pwrQ;Eq4&Y
zBjtR&S_*`eOvX9gv}BwoEH5RDr!#h^4OyZGdC>PlXCJxw6~D)cZ+pSwVh47|1;V?}
zoZeKUm0`BNzS0q2I5P`}*E%TGo=hbJ%RRGCu+!3Uezztu60IacK%^zH7WC3q6hjE8
znt<~GB_+-_>~5c-sY{ktk8p0RLaLp(^hlSYbYHmcw(#jK>vOX{-5HWnoUolIeCi!DmVTQJ%we0A#vA&I`M*28VT|7#pO`PaPue%}|J
zDP_MvU3Iq>ER1?Y#5>evQAvbLimODZ$b&S91
z^y(NPHBmN%U@4{(&fR*J^&`t|_A>n4V-W)6vzqa!+;8&n
zF3?zq5P>|@h;fOOGqe_HqcKKfVvRH@&J0M?n5>iHoWs_Z3mX%bO^lJPQY`PX&ax$XCVjbq7(m)~~C6qjEa3s(;ZhP8J_=@qQs@6uSw
zyR9voyG5G2A;i$yAiWDnEkZZd!YJ92t8XKweRZX|7>NLo5<$C3=d%fVNpN7;<^0sK
zIVsVu2*qq$6h7m~!2`q!^0Fa|6peMP_6*K?)|XN`Sqk{uYy3h0ifTF{iE@fMW9>j6
z=L1MVH`R0!!@-s88(k1Tc6Ph^ufOx>9~ynfQx=>3)2@v8(_1=|o^h|vV)dxfh1f_$
z(iB{M+_E&7Fe(c+Co$6yVOUlt)Q0cw%8uGEljMC|YKB}+d>2QMPHnsTy@(gq!+c<+gm8Xd<-sjyW!m!_QGhriWFQ2KwH9jyp|l8E1ug3K6o)TbM-V8>nqbYH2*5CO*Ui^DEoftIZ&0P5J__6Q$XP?)<_?{m`-gpD%8Q-M8
zkQ`5Ebx4QCuTwRb+S=N8tgm$h;b3&NySkG`M?)}|Y8jR@t$VRiaoam3sG7E;Jc%T+
zQ7F0RBH1>)xjpiQxs{zDh<0#{;E_UcerHBcmUNR0gko9?irHy8x)DNkIk2*fi8OUp
zlST@pV5MU)s#VBZT^h8Rm$_NS9{JA36N>2>8YhUms~Dpw^9JkM&fQk(I7FR9zv%Fi
z-%!)tpZSZo{EdC`V;*vszUGHlK7ikO)w|fT_NKy;>m-gZY~exj4K!WTguSF&rH_
z@~R{+tgzlwHLV(4Ukic`80m?WLg!I9e|J{c
z7aNmKKKn!W;_}7zyCC4ZI*c-W?LC&R{lK5y`tO#rpghErl2sPh@ZNs5h$&)YA$jt2RC71$pH$Mln?u6-8*HSUb>XGOLjS(OvG}cY1hm
zukmiNT}@`6pXT=COr{_IjbC})=Y0~N9i7{niK-4wS=+|?Mnx(}f$%FQ$6Mf&=qWdu#-uSwAe3Yj?>V9|GYyS6N_7;*0XH0qQ#G{fl>TQl|
z;#hKIZHep7TY4kt#qCIuF^XQdbt4lfn#MDo)s&5gAgP_jdyPj>+JKjav_B+CBa~L)
zJ>57kE1GwRBLAtiES`Mx6CS+Scozh`0Kmh(`56HIZ(jEoAKN*%{n-mOY9oga|>+`lW}FVnV*X
zML9D_xlFP=pf?|F@opZOihx#S=)hauQfE9t-2~r7FQ8S%cmX{O8nCo
z+#hrz85tEzDbg&_QIJwd4u+F2TU{VGm
z3Co!xuPg_a6S|#@+ugAC1dLm4VCNlD7~-^#)`F&ivaoFI6dYVm@gcC>i|D0>qIRom
zOUaL(J2(E^%==sJs@MA;zT%A>u-p3jl_M`)P0jZgWuvXN;i}_(G3XlV+Ok_)HpdlG
z*mjLOj}(DOdV(-iHllW*rI_a=B8(Q8MAAuOBBST)gVr;yq+m!aAm`+$fdK3tFTcLDKG0jPPT?Ex!xS|U|gAkO{
zDbtN}#F@vWipE-+NyQ+E861olU8vZ)?KZU7)r{uthO*xMq{?(h}9AqAZ7WR@R7;c&?Duj#>57tWSkC(o%1VA-MO2sYP|D!>-Qg1
zTTfLvWN`Sr!B?8mtYnfHv{48tiDN?&YdVQUNl6?j(nvAv#_cS$lr(kIlCTdHwWF!+
zJhJgLjmJ5U5c4kbJ-x>}BJB4vw>K08i`rt0WNjF8+u3b|
z*Bo4q`Si`BaPfNfpxGdMK|0&{vA=xl2i%js@vc>W{Dt3p3+GO4$?aoDonmCwj`w#Ygj6GT3Sn--y0>2zZP9$PzRlbW)$Z3L!7Te~$1ttEBUP}dIYZg2ci!eK3(
zzV`DhA38*mtsnsF+US_zF%o8#$J#)@9}$2Hx7>nJlBHwEX`Hy-y3jjI?
zXoVJnBr${lX$r2fG(LcUqO{btrD+__wu(j0bBFr)?e0(Fj7Kxp4`KIYO|MRGrzRa}Mh}q#cE;Mr86dqr#J|T!b+#*+?2p5)r&dCkaw(%A&!$h9oo8(+1Pa
z*gSQTx||}7VEe3Pu+*i~?^0C_)pSClOOmW$=X}X@+ULj>2OxNC?I~t0!G`&!(=?u@
zX}yZ26!R3UM20r9Zb?{j{^nari;q*~2`(ILFC5{igT#7)vkuz?(nK?!SZqF{-nbRp
zS!FQSv=(=ulzH|R>jJ|0_J13{Uw1`Hv{G|9KZ(SnV@bYZq(rt5-mUF#j)z(?1ZiN+$Y5kD(TtuT2Ytm>={?^gV{gAB-t@WF2)xbilKtlUg
z1(j{n-Enu7v$;jtZ4UGuRTDsa;<#!pCW9xh9Fx38DTTF;K_@~hSRKUlx=Gt%zfZst
z?*nDNg=UISOKr+~9-QypEKN$wC5L;2YM0gZz-U@ixQOLm#O|!2--$1^);~cUKK|)<
z{`nht#8V!Bm$=SOl9iimh$b@}DW>3f@
zc=~Bu*UfFaW{nC&+K@&H>tT1=P!<)P)UdvsiVLIq!#m^Z$7d^tb{}=i+ZG${f`Ave
zBgQvwAtpXitKlhYM+WJ}=^X~c7#+1^2Ej{Ep-q<(=nfRsWJWXDMWr6e1yroSC)A@H
z9UY)^U=>0`oFwR
zrmE)ZRr9D#%w-KjXf4`oxIN9f$CgzSa64aMeWhX)Y9tmH6xK_Wg0i$|B?;bPj7AE@
z#IqY_Q|yU#a8SIV)%<`I|@$)DuFpL$E^mNmR)uj|6
zQ(9TjJvc(B@v@JTLpt4TeuD^h{yrwTB{q^Ql2p}mm2ca#SAeQUZ^KiRMa3uLsgcD>KxfXKv;v|(cPTqwSJ(V5n<1w;T+2>U6#%
z+5jNjDYY7aDDp@(CrAu|KoF8y>4~*sJhPan)xT}<=rAMD5@L}zRAs}`Qi2qcJN8(M
zed^^7G4dDZ5nHX~#}WV>k!tx!^;e5*>mdS`{z}N~xBxrQ8=aiDQimqOF^I*V@-vN1_Eu(j|*4io9abKS-K%
zna--VzC5oPFZT@Iw@q4yRuiHqZOa>XI6hFJlxAsZ*p?|odxPkmqp=Pj0%h$uxSUZ}
zC23aERGO*@jOvE9VM1P7)`tlfHk@mwyTNtTUFJGJkvSeXsL%e%DfvHFSF@kYV!e_^
zf}L^2C|9&|z8<6JS(4C-&^QEYE`H-ZSnFEtbKiE#%Mgen#Zo^a(Sjf(le{UmxAQlS
zXZ1^-_r(ABiQjtNukehgEjphU1iZkV@b*{y3AsuMb@Ol5j|@)iZWmZ5De{`6TO+l^
zHZvk!lkZGX(tsD>6*6p~qY5Eb2rfs+OOVkL!R=CyKZVX3g4Ue5Ii{)m95~eK%r@0I
zuDExEjs$0Juyj`s;6uRK_72-RhfuB3QBzpLJayVsB?gZzEZvouWDw175;W3)D=gjx
zRNNr52%QedM+JGEv38=>aL%WWrfP8Re^0*LfeiQCPy!eg;eAY5Xqrw3k0OM&Q#6VV
zTU$AkY0dI5BBX7k@2UwC5f}{m3Q8EtK{d_*wWsgQBX)>gxjs=a9$bPc^u
zwCNxDRNK7v4R@Jq{b^5qBtP}buk&`}%l_u1
zA<{mC9dOr?3{&b_aN}nnPP=sa5&5)4*mGQZl_Abxj{xTE9lD!{k4p&lM%ed
z+Yz?5%t}FCONv_2c-=OdIghm-CBj?}TOyT0nzmWW&plr2rj2s<)8|T}rDzFSwUJc&
z94#qlk))P=v}uJgeDDb2sT&any;u}wgHnnkYZ*&}4pQ!kZtNW-H~;&*3wmDk4Z-59
zo!?BstZ*ceqOL7TTtN^NrKHy%G8oM$8&5aY_<*gwxMBOFpX2MF@r1k7_5LH@|5RS`
z{l9L%_nRO7hF|!lKf7+ayYy|{kfK-CuJl5ZNF5bD|J)$ma
zSL{yeoyPf_eN}%Fr9K?W^7`$myXm3>ozWzy@XT+#H{ZF~W)}p!z~7J0ovYd2a-9br
z)0f-YvAvyh_j?{$;7UMLQZKqqZa1RW-qRHcm}QhO6MmgwP?%4icq-?oxqka;joRG0iFRwiDVp
z{|`jL5`iZOK~*^fCCX^>(GK1=cp|*_Y;ERLjpxweKCuz(Y>x3ex3PX)aem7(ttBbY
z1hL;Ye0$n?-@ah}_rITf!+i8Zh?aOg67L;aSYl)8QPb^aSl6H!bM*L8Jd)9c>j;zG
z_L#bwq4caoF)r>>s4m-Ohp|lw-eW^R$v|)pCv2PERuUsUQW+Eif@+`IDzOczDX{
zp`>jl@``-7p=Lm|ujMdr{6JAmC-`*_&Y?sHWz;-vS`viCm4b3yJ=%d?8yIjRsb%{`OSQ8lV1dlv|{!2v=8avtR>iBhtCw|?G)
z<=Z#w0@Rhqg@DnL#(HLxoU9vBHI8nkndS}Fg|NPqh}B_Cw_^YcVLFd^?K~B&=0w~^
zz##;hdB^kKP1Ekw&W#xwntX%C1h#X-p~FkypqprBrKOu`Hb&JaE{vNSmj>!CeeM63
z|L{cGgUl_!Ew6pk2Qbo$-NI#?rH>oyRT8OMD~S>!^yAQUcDKqn&BD{3^6jZJbG04W5{?W=pSO~C
z#V*n;wK~gHLzC~4_Il)74N?CPX&O_{Dkd8zi8@oHY}1pj2`F;_Wrh@!iVy(ddCMR&q)CM9N7NXmvxcqhl5sAnL_!c6oJV+%b@L>+l1M3A+e#r&KG4{9luF9h
zsG+WE8c*o=BB7MP7)4RF(d%+Q7E8UDrCzij)wd~Uw|^X3@^ui}8zb8|s=0WG6oN@%
zscXl9)s(a6x9G=~Q(KOugGZ6N9oJG4lom)O{B&Bq?MY95@Z_&wvlxlFBcA@)ui0B_
zv-#Ho|H@E{LvYu^U%utfc-@=+l)ruN$4+}MK2Znxq)RSaUNT1RM_!YeC(Z=HIc(Js
zce~7XrfujNEmMwerMFa~V#Q=Sz$Ax>;*_$O(CJL*b{x}<9i&d%RB~5QPaQU_AY{Ab
zgqX`02G7dM4skLiAD5ty5_eOYyusTI1Qph<&{-X{GLw-;#eKZfgpd$I2NkVTH5tXM
zzEcEQ%xbE##ArVkt`PG`OMx&5m0;qCC=pbpr)iqD!#RKuipjXbZGDy%OQ%Iy2x=((M!&aF4&tt0AW
z)OC$XBGM#gvb~Ey;BCWfG@+W!s7AY}dP2VoE6JFyn6+65FL2CNKZ2hdF|@~MT3CwG
z5^F)4w1Or|NjkAaNFi$1lCQO%s%+@@V)~h3Z5WZndOr93#p!o@`&V$dJsHipO=Mm=
zHb*swS5veUOwOGm)KeO@#KA*{T6HWBqgg{IH8hRC>D;;TPi&ms+X46|acIBmX
z2N@y+y2AlCefCCdRgz{&+dXY9N^6>`q0{fMerSzjeQ4Y+n^lipzl!q;BL!9C*__q{
zU|<5auuQ9(C^n>>80*?@>L@mhi)JsEF49P`+=~!mZb6vnR%d*_>1yxDv;=Rhr?IV`
zb(?PXY>jFTuV(X`gFxdWY#4Ir(2;$`uDbC|iiV|r%*k`pzdCcv+3PO7;^^YSUtmGN
z3w(Lts;dui@x^Q9d*5^IId9ty&iR0IuzhwDV@uNETAK>4ahgn0_CS=ybJB`GyTl3f@{|$#iq#~bG`{Cq%hBw@<>0FkU=G>TUQqmc8h|>%mWgy}<
zEiE$oLyZ)I3#ZR9om$SG-lZ3=BgqUGHlS=A2M-#ivt8g&tIb?{l1LzyS2=Zl!o{mO
zqH!WN303LXoeE}+WMgNG<@FWny6rIS_as`ik)#jePEA;T9{I-A%^XV3u(W!AlC^tL
z6*D$I{vLKtUd!adt=Mu(nx=?IU~9$N@r#+vKEmkyS)^7hA2~vAX_Y9}%tljoFKklB
z5uHu~jpOorT*{4~y@BANzcQf63rrM|98B0cv&l!^{V_Vdj7#r!n5A?|?8g+ni`aD;
zd0x^>G_~{8RY~6XptTe#1WNB|kVF!S+S17)MDSv55OH`VoePSzN@GQ3Nrgcvai@Gh
zOTO*6QR6&PKv8A%(-;E=gYj&z+mkHYk|j%}sY*ks
z=BlimGh>c8^ErFoYu!KgiO8%f*)-hyha}GXJm-mgGV{dQaUxc{`}@B4dtZdTNNJ*9
z!E1VCVV~+;4ZpL4Dgvb8Ahbd$O;E|HHEr@Zrx0^U(*RvyItI1nb3~&Tv7Csga|xx-
z;JVW}s({HTWim<+=cR`{_L?;#At28+gF#F<$*|oqe&FDE9=7Wv%>bosq%<+DjKTf}
zqlt}OSZKgBpa=`Rs!u)$OP^{Dri8uyh+5r6R9CpRbB!}=CPGO1{fN!|g3-jJVGh~9
zu|aKqp79_iP0BSK&k%l-B~^aSWh=VuXymyj%SzD|z&I}G
z^ivjF9+Sz0;pU5YwPj3WuIzLi{7g@65li#vC(B``vMEKP1=<{W#+uM(x@I?TenPm(J7
zdmRGVVR_kQJW5GoO~uWbYba`tVt2cT^5^%^iAseddGXR=ythq0=`g=qC5>~2eMugs
zcy*Vc<*~PClH12I%yI=tD~&3^Ag9&nlT1b^d~CnUfuVxVLgMj0f*7x9W6GGx-agnZ
zv;r%?gdgNgMiS|t!0~MkQ+JfYFfFw7i27UDc19RgkcP>45Q7j?d&shl+uPY;@5)8|
zYMnTNaFPZ5PKju!$hrXJN_Z;-w+uFk`D{usLZn5({LaLX?)*8%6ol
zMXD4o9r*9M*%oKlsC%f5Pn#+yxq{iwo2iSLkl;
z6OSV1)>g61(i9|)VuD(QXcDu(y-zZU=ywOqtu7&@ptHS?ZQJBoPIIBfpgY75ymD}^
zOP#>5A0ecTk`h%ER2x-B-7a}npxhRoQ3|7EG+@z6SZesRTNcX;OSoAV+ZNbC1=AGM
z{9y$`pp+)hi&8y((6|t?d`J_+kY%QGT+kb3th7B`+n_&62z%?;Dxp8fap#Uwt<|Qp
z2f-xHsrnXs{Up4;Is7|!#e2UUnhrnvGe0>y>@&;=c!sYoyzSHqr{4FjOr_yso`vsG
zQAY$-hoCCh-;+4iHd0JzF1d8}G9u#?rsrb_U1t1DGyAeM!L#=vk4d8x)5sC@5i&yS
z6eqB-oD|Xs%Z4HyG8qUAw}NMG;#LIVz@;*O48xf6?^N}w3Wej>hz2pX*rwkDB`RnI
z{mzj7_Bvr_gJ{r2UA5XG*(b$+?xht{e$G7;DPvBc+Tx6yQRX}0asm!g?ZnZg(u#LhT!;s`k>nmI1pG=eVpLE=M_JMDlSt8Cb
zBj6dn3h|*YKEn@w`}^=*FBa+WTZI&rrK2u;n=wKADEWAYg%duzH^z*_DQv$1vh;>E
zZuvzT#Tl;Nr`FU&y?$vQ>3RqwKu8cIWtMFgv31>IduI*pE>N!(G#k69EF((isI-<4
zvaG;V0dbf!9;X-*Y%id{c@>?745KEaz01ht3iZl>Ac*n(h@c8tQh>QYP^*`}>_z!Y
z|6tShz|k|atC_QQZ?tBvOwSeB$-FGJ)_%b-$maBW#STNN40-iV`j
zK8n@_yU%@$FF$pWC!bGnJeP~tI{fD2TP!a%S)Q|aW!oXcP*NeaW}W?=4wYI3uM#i}6_0%I
z+X0i!i!bB32A1ohkn}rU3@M?$LO2}KzkY>{3op}LUS?%^jZ05G!SznW+{sgTj>NJI
zY}>-NZOo~eM;YpHQ+joff1Kw9gKqqlAL>Y4w
zs-RwvDe{7Dv<4LXb=;JDYj$cRUGnM&{^L?=OKf=9hT?!a03G=
zG7y3^QS9DG7{!Y;mX9KY_yawk4^+|zf#hWjprp_yS_{UJVl;{%i%?k((wK(VD?BsA
z%(t;cSek?Q_F=v-mP2=YpClQx9j~!?{3KzR5r!GAYvOtqmTMt^ILgYZPzZe8=ggg_
zvE3$<%TMt5C!Xa)zkh{cQs>!=F;}kd^T^!|{`hx1$jM`KJn>AAXEy^x)Z;t<$Rh80
z$0^d`kWYMJ$hD0DR|bK8=9RH{_EOBsoXe4wGA~(3f$Q2#hGTAA+2qK%lZ?7ODzz%6
zW#alSz5PCMZgJ;Z-_632(_DM$S)$%P=!8M1hvj%Q+I6DQkiu9Vl4!aeVN
z7vrsUwl80$h$r;$@cjyCHT{_}FijKFEGt^eGLS-WQ?FjmiN|41EhqybvMfib0)a*f
zi4+FXFfmON+qTG*Ak7u?O^<8alPi}uCx5;t{pa4)j``7_`1i8|KEqcvH6XDSfyKBt^N?D`bM@3Gy_jv!NO7
zDZmEllsmwNPm$%|J%9}6K|+#5#JzRU1>r=YZJ%(IG9JVTp{ch5h;A^r_C+=>Tq7K3
zn9?L1j%e0L7>Pk`fD>|VQRxr=UpHd`vc+pjqRiU|hl%Wpj7e3vIKnK^DFa^XFUC>FH)&jiN?+71R1DHK8^*q%!~7-Lr*YON+(OGcd`K}}+s3e%mV>K`XFhQx77GV0T4
zONv~PP6Te%#xOLsx{VNmESKctYc!iNJL{Vy$zxbS4Z9!WIzIbXcZt(FvUZNf@m0LQ
z#*hM4l)1kLE*G!bFrB(C-L!mE(<QZ2WgBMTgO>F
zvP_}`b1QSWu0@e%MB|7_n6Pquk@@8|rUAJE!;~}|W$RfTBrQovqv?PK8Sk^adIW?f
z9`5kFpFB^q<}plN)~`OtH$J?=NZ9=5Cp&!NsgUiBUEcqIg}dJNF4Sb7{g+-O
z2_uw-E0;F8`wpW_P12=UFQp7tNYZj%Ysk_mOUg3S*mW%&r74su*N}2WF*VoFT9al4
zSyo`A1-XhDM>#7CRfgjz9`=Sm(u}r$?zt~M!QBtda%g9mwV-GC8o+=2xu51+-}F|Z
zLAp?A^8?lPq9w9z91pf8%Vc4~@x^^i5hBw)!rVX@F1BYO4FjFW*lLrYnh^~rxYZVx
z6)@@M#FH`AW`s&L(!K{FYZ!(iS6~)fxMG_$QAn#rZQ*zs3Jxe`vU%weR&jZ{#2Ye7
zm#EZTY;~DoN0ZAFG)_K5Yk3jd7Knp3FuZ05__bBAm{!K6X+xn5w3bY}(Nm`?jT6-A
z?(Ea3Wfbv*dQB0IQufAG8qGQ{zO+xHYSU;{h*E_gI8^Haj_+by28GtBLfte7ncfVD
zL$}FN4Lt9USv_?Q6_0u4nP>UP@4bKsPBQ52^5(k&9(n8@9(&{j(J11^<#pcukj;L`8sfUleaW?mzVO9ap@U?Uo=2|Fa
zU2y$uINHDBFR!`mbrhqCP0Jb6Y+9Jkkf33))8D2WRZ)dPm{7z$s+Dqgv&bFnN&~cH
zG8y7H5m9HvFu#w5qje+#({yOmBl2v3smpqF7}m?|S*4JMWcS7vM)+k+D<&NmXyKrX
zf~@-rapaMBce8T#G^iX^Sso-cX~uo9Dunh+qHc7IkCHVkM*1&PZDeeCu256x!e?f9V4I
zDq0#7T}w%QPt=1g24j
zKG=3i#9C{Tv|u<%nQuBIS&?2`AOHAPH~!x|#~b|*Z=Jba%`mHgXZRY!pZcbEqY{<5
zfqqZ5VICb%G~H1ZBkBPub8|6{>tGljo|mz|r*SH6vMfiWS7|mB@nDQwYhnde3I&7R
zka}&v=Jkv&cT%Z&WJ!$9Q#`xClGkx6f~Xgvjbpgg8X6e&Lq=O)CUAP73tZ1)*cGUx
zk52of&V4MMISoZ#s*i=>bxNxP)$>8QdCUA)6=f?kO*O+oj#5mm5KAR4Q#(VnCc|Oa
z*~7OYZmb(Ljz54GxM%^5ibb3#0;i;WFL1H#a;6zLHlAx?*%p`vN(+)WD>HOUEj9>&
znGIQ4Y9ei$?)CFre(5sz-+O|kIh!JhX)d%`J9CWf>s#b$N~K=GsRXQFyoT*Kv=-aA
zj!8Hev2$aK<>PBuQn1i8Y1kp}c&N_(chu17h^MccwCgr=a~>D2M7(eVj?5|QH5a$F
z%!xOABlY3`+
zh|@w{+8F)2?OyyheAgI$%iCw(!X_`}QcR^4SboFtB*=Oh-BPnrhW$e`ka=B&(;7GVJsj^@l7TT`AkPNkS4uRB8brD6)e7UXSL|LTNwQA7K_5
zZ+h$)`|DeDy93Ugoa1^wKs3H4k0C$)VFj8#Gwbv!S}O_8`h+mW;n^H1UCEqxVUg*__Krl)`Me5>KEQ+X)>1%YF;kjd!G>F3t(;c(a3QFOT(2(yTghCYpVb*YiDyqm4Qev1H
zX%3}RqCiSPy=`&jO2G1McVn1k70Yy1SgsmP%_gOo8Ust9^lKIf48XH(Y`=z8uLCAp
zOH8KwvC^2X1eInTNCSZcVW4lnqm*n3QKmEL0#)RwBCk4_J
z6w<;nphAZ4h17LUWGcWx#}Sq=Knl`PmqBNM<2jg?Ng5}#7TVMrRbF}eWm=1K=%T=|
zEb=6y$jfpui((WYEt};tcash_84t!t$6>Uw!?4q*)^5<8Z}ZTZU9MdpBiCiJ4gdgv
z07*naRCU379`rf?$_7fbIQih4snnY!@sQ5OWx{^H%szHpqT!gqewXe20r$P(AzEkd
z;H6LfJ}ak=W27lsYwX2kj^1`R-4~u>yuXJqj6<25>$+UIbdj#IIQPH_+Et5j;9;SN
zwy$7#HAGNHTBSGm!41*@1s}|ebEO$a1+~B?O!DZZYomYv!iD|+EePzrAN=;mW(RnN
z83E7mwTt(B*SGSKfA{0)tay4bRHGnYuc9o9TqC59){>y6=xuemzP*OK0JUrb|AbGG
zCZu73<+nk*MBQx=8F?PFzm?LOpJV0Dc??;g^%z|!;?6a^Mj1e01p&5alY|+0uCTlc
zDH$3MY1t%U!p3!j_VEXBd;?V!x90ejq&uD43P6jJw1u#+Tpuq8uuUJsa?n{$HXM+T
z28cYP5E^Y5NYk1I0!(*OO+38?S6odOt(y?s-5r8Ejk`Mpcj*9u#w|#&1b26L4esuZ
zyL)hV_tWQl@40`V_ZVHZch#EfnR9&!gkF_i;hw3VuEowo=
ze*OnGX>}{W)--J8MgYY^;W?@tSc&l`NDOfWjECM`;)E(FWn66MrR6ERY7#
zUzH`+5&`k|JP8H>2Ua2V!82)W^N*Fo1tK|+Z0zR7{t}VzGpl>i-V$FnA28JF)}}P@
zq8#7$lG&;Z3u|~)hyx3x{-i|^xOv(bw}3}tJvOfHxfDHMGRX$4Svii+RU1&8mcQ?<
zofW*SmQYJ8duIkRMRMOiJjgPQn_l=tSd~M~6v>NbojB2C1S*0J^Thl#vst@jW`&q5
z>^jRG%Ss<|cW5EP~zsTe|4XT$LmOR{S0ZPxIl*i7NQ^
zFq$k$YE@~|35%DY0s%xzm=~rw1q$^f5BSlqq-fQKUqFilc1B-W0a^McEy6{*6QZ%~
zt@yEch5@&9G!lxsJ#1gq#IyFP@X9iiU7FH~%dwre?+|fgZ(0em3VJN2Jno{uxIH
zzB06`faNi2kuFpPzD|x{0bgRS)TuUipW{YzV*W@R4>9GD^=M(qZ`N@^?D}|}LmQDw
z=&(g6bzZl0YbjpYYNkKtNy-{u7E#rAD!GV8ygc=9{?jras@LN6EQVTNt}3*A{}-m
zcqc@!eE5Aq*po0)%;mC@cN^>1^6Kh_>#`5)e!Z+Sk?Mc7
zb}U?=X?k%C(|eA}y4F0h9c#WHok^Zz+{eW^(@xIgH*?~d5oawsQ{UFY^(Zi4c55HC
zka_F9d3kx-J#qQ-Pb%Us*iW5j{+m6LYgq!zdol+HH^E^{ecabGYBL%Jt7V)E)&P&t
zy?ERp^B5U~AeY!)nKZ;vg;=#@aT4`B4yD|EM?YAp+@ZLDL-55;m|>iQ=t!mpuJWg_
zVY(kqI}bzoq#IXgYQ}t_09zZPUdJ(TxUpmje$|37^??6~wyb0LWZiJMir1f_053Lj
zl0@4zZLZJ;pLrSYQ5j9_k}rM>zX;t*?Bnixc5t0K@1BTXJ+ty_BPf-I;sXT3=;H7b
zsY~d-jt)w0#V{#P1#Yh}YL{|b1>_@CJmK~!XXky(=zL&OO)y!ei8?`#qNOWz^scgz
zD0iwj8VOHMH8$#YWqP#=bm09yb;f=gQ8H%*NIt+n{h4A<)>C6!fFhR=W6pQy8g9u}
zpylTAw0uy?bsBOLJZsAHaTNanY07g~h02(%d06|5I1M6V77uk!H6#*n9{S<^1Gh
z4g!P0u)3tPMj81-oYHOj$owRFqv1>${K4ARIoB!Y_bk&n!MWnsy!~`wGu?^z{v1(s
z@W5W=*|hP>$BeT`eh2x>K3coCtImJzGvmiAviHwH7k3MHSE(RIbEDImRxMi$$$uUp+6awNhR%~c=S?5LvtKP=s972Tam07u9g2h
z`F4PjBhzl*J!sy>iTYQ&6!KfdEEcIJ1i_14{RM4GdXJ~=uP}P=U!~i;kFA?NS8*@$
zTFQ}yl&}cD5tkz=EJfY$=XwA1efq&aSx(H*z(P`vsF
zk&sirV1gSFK|Sj)6fWeX9>;NXqUI-;~i-?}zG;S8L>U
zpy{F4Gg&1>2-;YewFmaii3McJJ^|N?lzlX$91dBP%WOhfETm
zbTb^@3mL~IC#U&;!PYqjI50UdptLSl#Y)px4B$)%K5IcOilaQs($_E{RRDC8rY}yZ
zPLT@{TiafA8l`Xt@%f9p>U!Sq${*(uE2w08s#9-YAi@X3IKJz%Y+}L>($br~^0w*h
zmn1i@e@l^5zFmxdQm
z9B1TpCC4$!nNo-z@JXA8EIPyniD971_NMS+V>87>SLM(BEUVxvNc(rg;ks(VRz2ho
zS4|R5se0SQooWqH$o~=2>wY+DMPb9|F0Fb6?X`mc0z!I2I*3l{wW5g|L+op}HLh&n
zZ3e|bKg02le~donta~xCcZN~hKM8QX`5x!=3F3g(;{(6uKkc=GV
z%c^UNv2c_*q+z*f!f}Y9A|90?7`($PNhO!{13OSW4L2xZtcnRjtSfa)=XltJZkY_d
zPVY1){$6i4Iq5|*n~uSH5bAH?X@{9@pugu|15B})qUZDOCx%x!JW#ojBZntv`4F_!
z4330qZnLo*yjfNXJs>x@hVQLjy^rDr>Vo%Rn{U!6LKQGZMStD+3vPb_@%w)D-YNxBMA^MnmNj`6Z}AK<%?__Ey0Q_
z414~LLV>evA{#3g;0$MUW7iI5XylRMRb;op%VX4880EE-FRqjPdG?26=yN1a{c^_~
z(EW_C=g5Arj6_O_(6|2s(sdC9%a@)%UidA?G;WqSceyx;iOkuo-dgOv1B4_`4CF
z=I|Z)#->s9xZZiJM{-ClEkrDl6yg7|Ik5A8bm~$DXBY>Ih1#$5-vgdd|eqHfoh7
z#S7RG>UE4Bwj7GZDo(YoAa4)_4Op&Gj3Tv%sni+LrUmdO{(c@oU>NtvAU8QX1#J(f
zAVIls^ne_MoEw|D4O2xOjq(6uwo?=~WVt1>utd|d+2SN?6`|XxKt{A7na2SYAItx@
zEZ&q^*a15>f?ZaTBMevMBjgtL0y6SCg4=ATH26tko&zwdkTWNhKXkJbt^k(g3&xL*
z-fLUhP+0GKR>7WaD{%m7^*(8@EAtGX@EhT3jZX8M?WrL|Ltvfqej*TLg#%JaiD6nO
zg44v7`t{qvJON1kfdv$Y{@7!bh_`!?0#ut3KU+kZq80y%{uNUj1QMW~%_b
z=*3zP$i>AJ@#*HKnDOnk(WBTIw1c;gDT5q5
z{*6N>M(n?at8kv4`@xPjqQ;kcZ5B--G-yS-n5m;cMUlCo7ZtQM4bRLVAWwq1ykK7p
z)0}PF$-C=`CDT+v3)M_WiFmj7gG1fl55SBD#+!v5wP9K?9%tOlZF9^IA`7C$YbKW2haYy#}g&PYq~pEEO2eFoqF>vt#hNw~b;
z54tQuzF7eIZ&DKzi6^5s<>kIFN1HA0+o^+Pt94lXeGw4(>G|tFRWV|&qF*Izg6kJVi*h(o-HaQ0*_5`=Sb^n41z(8f
z-6MWgN2n3xs7gsEF%+EDIZaX-c;3@T9O_z?7k)Tf$gpjZI=#@1H{@%i^#E6Ar=Azy
zo#o;@dakE&p3~b-&uuuns%2HNePuzO)m<)iT;6s4IL2FDD)Te7Yah%SVqJ?C*ioTs
zO8B%XQNfxO>by7wrWED4ML>#xer!MT)`{2HuhN-9+mtdmX<+em)uw2mtl*@-xYKcC
zo1-mU{r*r5R{Pv4?Ig@heW~V3b6&6Il<8Tcz@-&xErpm^2Kdybvd(oE(D0+K{ajqt
z9Y&D~meD9PGg3);-8%{($Ho-T6dJ;R;0QfuCX-!Q^keAuK$={z9XSbdYphGc(lk8eJ8)cOB^Yb5bQV>ulfgni+vX+$0{
zo>T6~7#Fznb3&vgbXKp=s6F{9Y1F|c=e`Q_K&cFeufhvQah$A&`rN2zhtF)3-0i#@
zv>}%z9el0{x6vhTy^!q*yZ(kPqbvXq?Qb-4A2j~jaZtjXO^2Yh$HVAMVKh&^P)0qT
z_l>yiggfhF=wjBAn;p6C7IVT`ag^U{-T&$G&*gDLf!C5zA{3wbWBX8Q1P!t@)%`P-
ztEcIjRpiQ=plf*~7BqekUqu3%TH4%gk(g>fLPJ{g-aJGd+Jb*xrx+jLOHyWNCDJDr
z`W0qiL9IFzh-YMC=Mx2Syz@E_8s>2AOyw*a<$1XNxiSf%U_#Ch+e&y}q6uqIw{S4T
zOTn?&}-{4Bd&Ef%aZez%t*(U8?*FGud{b&Y-o|9qdBxg
z%PgoG(GzYro+d9Ge)oxPm{n>`Pu~SaT_k$WBF0bLlSb7^cI?-Axdgst3YEBNqM{{{%vIF`>cJ+;k3Hl0gvZ-|kY-rjHQXKE`U?(WWZ-Tf
zvR>*mpJ8jW8tspzuF{41iBFVcZrZE;w)61ReO1*
z=5P((;jucs%BItyK0)RKO>j;Me+e4B9-)NH3-LxebIqhyDOpH^o|gw15=i5FJn79q
zimPzd;=UigM5CV;t-sl_n55$BmG?FLeM*FJF{0s;L&>`Mjt~2G{yPsnMQ-dYx;=7a
z217JAAD$~z^z}3IuR?UFIO^2>`=W?8Lx_$mPNjrJTTabrxjgsc^W^t4aefFa8~DI(*ALHbZP9fJNQm@@qV+(De(6{rH>VPuubt=
z$oSx?hVm!I%>Hf%QiK2oq+4M%OCxuGXloCw9NXfJGdUua&WEDs=x&vZ3`Cg5(%8R;
zf3OK#(YKsnrL2uvi=m^C+ljbJWW}iP4b%In=so?F(2P2DoX&dLAH+rwfFF^QWstM;NRTVygqBwkVY5yK^Xn;`%
z{!;|Hn826M`CIUG^D{4=68m^iHiJbAR_H3?OoQUl*m%b7fmFrOj;r2HH_OpNJ=@bb
zbu%Simo2n$*$52&Tc-v8y=mtrDKL%xwokPrQC#J2^QtX*ZR~j~4%NiNBf7!XcswEb
zut6YIV}qPd>X>Wt(G@B5<{cC#Qg+yVsuNXAyuZ)8(_bjZYOrRhkdlY5w6-!g5(1?(|
zC#}FyxFx4aanqzv@!-k|Lt8#`hEcS1IhWxV%t8d&r0ZS0tnI+?)!SO`_@Qnb!+YNw
zH$LAj4&PIOPOL5?nbHXPZ>GN9@rj(p_--$jCQ~Hatt`c)?uVMY;R_|yFMTrjj=h$|
z-#tI)tIAgFQ!yiDQui|q*4W;=xmGi$_d{ZT;`KDYFVod$_>1q5NYj1
z29`Z1W|ohfwr%e0n$9Z-i?SfVCnuyKa)K6_M(KdEIR%`*u^OT@yAl6$*7B$s?!ZfP
zbQiP3{x%%&w?)*`7Ntp#UiTXwx#5f>+IDn4BgWg?&YW^5$|$ESEuR1$D_iF^fkB&s
z^B#U`^Ovrcuq~b%A+&%$K-mE7;Fk8BSSNl?t=bGSq{sy)`Oa<4`HPz;2!1t^pwzf3la>6WS}>>2Tq}phwbbpbl!wnWn(MoRIdHU7kGp?#cJ8qH
z7A;PZnr-iJ-)N3GD(=FAkfww@nx|DBOAA`Q7jh?{k8K=Hh1(RbZk-Gkd1fM%vOU5+
zh{}MJLkf~R=(9h2FzLD-NwyuwEK^K((*#*csv30p-6qTR5cvtzBq`Lq_TK9t(JfK2
zzb*7n&(CXH8)Z|{cyZ+BCn1T@15RFH)Z*3y5K*D1<+p`}dsg4;HRVY%4@Qufb?$iL
zjW(Z?Q{skQGPQC!Yz9Zc)ePi4y8NkrJGS9RfO<({-+`BSC9RJ9F6p`K`fC*YTJmzXt&`z_v-?2U#6jJ)*Jf3
z#13@$picWi`ehPnKXMYmEta1&3J5>vh6BUmxZJB+fwB0dUXKhiEUfIJVb_yUBqS~%
z9qGoP*&)@1w_w>ONf!)v9~b;)E%er&mPaRFwI?2H!8iT`i%P}gDG<++slsGc`N&c#
zwLL+azKEV(@k=hY96nJ0x?0HSI1!qIsJ8l>3^x5v555GpK}Yj|1G?k>8b?;Vy7j{0
z*)6Z@y({53H>HXLikNxlKxqTFMRYyer!KvoDlH@JM}^TJ?_)v{SYpQ7mZSm`y|Gk+
z4vkWMioA|5B$BEjx;$)5(efQ5&xs_+>fgzime;G^tNikKC
zV3bEvthiNDQ2zX;oXnWaV#3F*n_Eqi+?^Pb^Cva>ZY4HpY55$zaPLKHmq1MqU(G~s
z?^ohUi$PbrvS+7UA#Qb3%jkBjRG45>IHhmn7Q`%}MD`f|dRq0m4H54CM_&qGB7MAU
z=6|=v{L$k!#;kvFQywQMSHh}M6M?UwC_gI4BmQh%uusHRW^r|5t2io32)jj1d+voP
z;vPC|6v9E8?{oVZ?3sQ$@d3r{30>TYlJ9{A`hl+Wy)o;VZCzVf3RfBb;YG&>X|(~P
z*F7;c5Ph~RrFIIJhsWu|L6Ps*)**(G&$$OfqyLWLLkJqYWXH2AzvUlc@?F8=V`mbKPwnbx_ZDjkXD(ucRWC@`KotzZht=}DRRncg=102YHVf%(}Oq`32P>%
zA`*376-?rmZ8Enkt;7AMoIMb4aTyT$HFvAqO3Lwj%^%xTp7P^Gh9)ljqJ9AO5jFKN
zQc^UtQ&CdQZo%5mi}mJ2{+(tC@0QRlcb6vDrA^XlORXVV_V_Jfw~n3kYQya5LOcS4
z7TKAzxJZd>0CPw2Uis#Wnr_9?`pPzVew41SzjQ7|kwauXGPQaVOG7{ZD=>#}YW+mbo-3r+>}@t%S;WAR=J>$(#myqv
zHK@vCXjz}_%WqalM#8FK)%Q*Hbmv$#)3z{|W|XG@!BK)cFn&@mrUWrq85
z)US=yr&gfGD98UBee*I%inE&`FG4CfN;*1NxbiR5+xMQuHCKXjgu7_6_6E7Z{&
zljx`&>oa^8y7SZG>BIdE80GbO<$cH!2CH}7oZNCRvfB`$^L9$4VZ)P$;o#E8+Z9Jp
zV5=9iU?<5Y)~rm8pwW-f?#h<2my)C=Q4ZE5?;m
zR~L-OYu|QY_wfF7f4aEv-+^@m*CRV!Yn-l+U}w*wg`pOs1U_^T_qtE;Si$yOe&EfUYapP)<=$mKqk%1SfKhz@U=v_K?+!iTP
zMT*OsRLS;_%o3cUAvR`zKvc_p@6A%fS49MC1&CbH9N?73l+lcZ^(7o?E15lLZx*LD
zrK}r+ZZLJCj^5q}RqsY#_1qzSj0=yq)(d*E0;or$o5ZOMp>wi3ta+ANYoqow*(7^R
ze9;zz?~kWvT28M=;VB@H5q%&-kza!#t6^u{?&Vu#UW`xE;KDs@rG+UU_q@
z1-;$Bb)Kx<~Z&6tIzPwA}+h}P+|N2ePo_+qV}m%BSGll(H}d5RSL8~3kf;u7?`<_P+@Q1LTHGzF!1Oa$fu{nD
zmrm&(-;InGC{wuS`56qnb4BNS#L04!?N*a506>bcr$CsEOO%V9p&FdVtQV;KjZb}z
z`1h19Yx!!bLtc`xg|dbTww8t_1W@$MPXC@Jy-9(Hadh9!r@zl!U=_kfRp7~(xMm%k|0iUBfb8|vNNw;nZR(c>>-v5?5c|-5zXp%apTv?iazrwaf$fB
zuU*NCiSitBbbc+CoYT%uFYrZ5HKw0kD%O8NG9E#j)fkdgRS&f~rIWN={&LP*w8eWT
zc!3Ji-OAxP-3{y|w`fIFcJ}%FC#P#wD5J&y$KDbmL{`#c%wy}l@s{p`{E#8a58=9pY`1-)RFd56cm)`0d6#3QdD4Wko2sP;>AaQL~Uag8UJ_8*o+eG&LJ)}
zoZBr&2;0kMr#0&sK{QvyqP+&7d_rW@oneFTLs){DE>W@Y%x01w=7^++5P%SBe%R7a
zzsmG;P)zU-dbsWSK6wNBTEJH&H9&P+UEeILFGA+oplaV}E&T-myc`=wH(ZsJax>7EBGBL{r`D^Y>95x=W5lTKQ;>x~N(~nAyd{Wd?}@84bpT1)Dq8OS;UVYZ)~$
zZHh5vy1~Ja|Aom_V;j8&s(4HxLORc{zs5uyhXDaQW+PmAfQBg=dHr32f>O$HY~3XF
zU2}ye#_PTmog%5%i@wKc
zCu}%#JYC(l-U3;y83)14FJEeHvfV0;#dS1o7O9AX3_PwV=YPS>a^%P!+8CHFk=6d(
zf}!J39PO>HaB7fqxB>suVjKb?>B)uyinqB;8BF3afrR}Ye%xG(Mx7Cxdc75}koV*d
z>u_8Obp*j(5WaW}4TeY7CbeM%$FN`7H0KS{$!9e9t@)(T>lLj}Rcf@d%RPiZ`Oo
ztP|CwVesMdALHwVy&o
zw|T?zwsR9`(j@5$i+h?e5@I-Dr8r|G<^$aoyZPqZ^A8`Vd
zo3v8;?vz~NB=lqn&tTmIf040@T
HF_fB73$Wr4b6C!-u-Gd`QnIwmJvP>j64R!Sh*VY*
zHHr1FWYWQX`hr6AebOR<9>eD7m2F)`{qNcbj@BqPn}cj5$O@!-;?lsN9i2HMVJLsz
zAZjMrSsVE*8u6vatVrX#>P&ySZhf+6#-=
gqVTmZz%JM7kOg
zg?04#Eni^g8MIjpetfL(C&m6>H_Ak&{YyS^#~aW1``T}{5VU&
zAVDHQNFhy^b-BeWe~-K>g##m%)z3ef&1x%>S(juxdc{k_SmbO?PmdT0B5baVJX@i5
zlus&{Ez{@h;+VAL6(fuTy2&=E77jV}I=UCFIFQ~j-k*M&{9p0JeWm_!V!ZoB^P!k8ZCOY^01uqwxs+;G!IbhT*AdRRvqTRrPh09WCzaQ&)^LBpK
zQ;0LYd9%?vIwg61Bnwprk~#~yRQU4oNX?hM;kS7K;mNG=drwO2N!V58D}fZ#TLD`}
z!Nb+T)L=H|*B?lQ*!ijvxN#1co7Z<8Ka@^PG{fT(U<%cBeY+I0q;V?C0>9lELE)Sz;!n@4Vg>m4v?(7rOm7(Bifj*#y~n{IU1kQ;60h7TUA
z!;#xBh`U-e>pkh_E6#ZU?>VNaW)3|0~KUown)VrN&KL`-B9!_NSiaKL`MgB}y-0=4sy^Eb?
zBliW^t{rKVqbS1iclAj0(r>X`YSn^bpKBgo}>&Zg97(
z2462OD9wV5vkwki+W4Gb2&@`=t2Bq=kOfMx&}iq%U^RJY6?W7l3b|(P4+mM~;&wdZ
zw6nb9Dk_L%SF?&35Q6+EYFl9=)o_UkI@d#
zgO+*(6I%zjV_~kvb1`8CP9Ad6h8`BWu%Mnhyvw)-%O)51p5Ge^W>4NKPgX*K%a9(t
zcoC1N8_a-#);Ct{7PgAMi^zkvT@PjA0r*)_9Trd;8RCw?CZqifpg{dZX||S4aoC;L
z-3>pxi&M$%|6h_|tDi&L--~rCEG(GWX`=7xuCZrlPVIQtn)SZkZ^&D3fDgR`=1mFw
zb7g2fsbtQ*p+{rMQS1b7V3ytt_pKHk285r!#VZ*+Lo$y)d<+)TXHwgr&~XcqduSA(
zbr~Flhytib5oa{mQn62MqYuwi4&4SJT~KVP&)Bn*78C_C-|k8m)@uzJ9={xPHN{=$
z76;B8=KUMKxLtU(7yW|FN4gpzOfrRBX(j_NmS0PvKy@ACdJ$Kf47*P@l
z(k^X6h_mK%C$+zB=_)T&+yd^(an|(WY3cnt4DTE7OBTOC1a*i1d
zgCgTM`Anr94V@$eLPYFd2-krRO5siFuQu$J^TD?*NfgIVYae1)6w5My#3Acr8?N;N
zVWMt6^xJ=+M}Le}O`zT&8#|}ys=m7+S8y$6Kk9y4_S8xq+}z<0BLh@jm8fS@L>v={0i}jUTY*qrF21+hXYkAdnyP_j~
zV5iA66`b%krZ1aPD&Jh6%5?1~I6CYs70YQT^m(hI9EL6*Y70BN;Rl=t_SgoVV$
zd^Y4j27vg6c;mLF)CF^6JYq$E{mKlsl(Mx4!jX2%<(hMIqY}DC5za$-1zsRJwjQS%
zq3-US_s3M6DqW=MDt?wwh2qyO6C}AX^y;pfzUyJm6g_q(n*!x;N1x0!G4fnqFn!Vu
zbPt&dhcLOTj0PRN?ghNt2e2Xv^S=%T%lKk_`+pk3W(phq!;JiX_fMefWAVmJ)ve_ct%N|-Ir$XtJs+0wqm}&G=UmukY#9u?%+oc&cSRZH?NGRf^WW5
z`4*NL?q9y&2`o=;j@_N%*ttxq@jZzpO|1Fbb~UD26Ki$q5$&eZAgb3I0QrTZ4z^%F
z_p-$%MV{&5|KLMY&I>u;2$`m%nZ$z3#qFbkaLh2+gfo(=yRElGEP!LKZKiQ0sd%+C
z!NmecNa~-eEu{5V!*jD8Ny1{#YH