From 06d6137e85a0b1575ac6360bcefb4258122cda75 Mon Sep 17 00:00:00 2001 From: wuyize Date: Fri, 23 Dec 2022 23:00:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=9E=E7=8E=B0=E7=99=BB?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 5 + .../FinancialReimbursementSystem_frontend.iml | 12 + .idea/inspectionProfiles/Project_Default.xml | 6 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + package-lock.json | 1868 +++++++++++++++++ package.json | 5 + public/index.html | 4 +- src/assets/login-bg.png | Bin 0 -> 28489 bytes src/assets/login.png | Bin 0 -> 106535 bytes src/index.css | 19 +- src/index.tsx | 13 +- src/models/Staff.ts | 20 + src/models/hooks.ts | 6 + src/models/store.ts | 17 + src/pages/HomeView.tsx | 10 + src/pages/Login/LoginView.css | 9 + src/pages/Login/LoginView.tsx | 101 + src/router/router.tsx | 15 + src/utils/axiosInstance.ts | 34 + 20 files changed, 2148 insertions(+), 10 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/FinancialReimbursementSystem_frontend.iml create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 src/assets/login-bg.png create mode 100644 src/assets/login.png create mode 100644 src/models/Staff.ts create mode 100644 src/models/hooks.ts create mode 100644 src/models/store.ts create mode 100644 src/pages/HomeView.tsx create mode 100644 src/pages/Login/LoginView.css create mode 100644 src/pages/Login/LoginView.tsx create mode 100644 src/router/router.tsx create mode 100644 src/utils/axiosInstance.ts diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..b58b603 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,5 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/FinancialReimbursementSystem_frontend.iml b/.idea/FinancialReimbursementSystem_frontend.iml new file mode 100644 index 0000000..0c8867d --- /dev/null +++ b/.idea/FinancialReimbursementSystem_frontend.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..03d9549 --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..a78c85b --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index a08ae10..97cd753 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "financial-reimbursement", "version": "0.1.0", "dependencies": { + "@reduxjs/toolkit": "^1.9.1", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", @@ -15,8 +16,12 @@ "@types/node": "^16.18.10", "@types/react": "^18.0.26", "@types/react-dom": "^18.0.9", + "antd": "^5.1.0", + "axios": "^1.2.1", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-redux": "^8.0.5", + "react-router-dom": "^6.6.0", "react-scripts": "5.0.1", "typescript": "^4.9.4", "web-vitals": "^2.1.4" @@ -39,6 +44,72 @@ "node": ">=6.0.0" } }, + "node_modules/@ant-design/colors": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/@ant-design/colors/-/colors-6.0.0.tgz", + "integrity": "sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==", + "dependencies": { + "@ctrl/tinycolor": "^3.4.0" + } + }, + "node_modules/@ant-design/cssinjs": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@ant-design/cssinjs/-/cssinjs-1.2.0.tgz", + "integrity": "sha512-TjZVH4lgc7jAhYn9yStjnQI7u93b+VAg2oXIyzy12XjnFjCTR+nQIHfuixK+Vm0sx2L8ecDOBDEPT9ldCA7RPQ==", + "dependencies": { + "@babel/runtime": "^7.11.1", + "@emotion/hash": "^0.8.0", + "@emotion/unitless": "^0.7.5", + "classnames": "^2.3.1", + "csstype": "^3.0.10", + "rc-util": "^5.24.2", + "shallowequal": "^1.1.0", + "stylis": "^4.0.13" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/@ant-design/icons": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@ant-design/icons/-/icons-4.8.0.tgz", + "integrity": "sha512-T89P2jG2vM7OJ0IfGx2+9FC5sQjtTzRSz+mCHTXkFn/ELZc2YpfStmYHmqzq2Jx55J0F7+O6i5/ZKFSVNWCKNg==", + "dependencies": { + "@ant-design/colors": "^6.0.0", + "@ant-design/icons-svg": "^4.2.1", + "@babel/runtime": "^7.11.2", + "classnames": "^2.2.6", + "rc-util": "^5.9.4" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/@ant-design/icons-svg": { + "version": "4.2.1", + "resolved": "https://registry.npmmirror.com/@ant-design/icons-svg/-/icons-svg-4.2.1.tgz", + "integrity": "sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==" + }, + "node_modules/@ant-design/react-slick": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/@ant-design/react-slick/-/react-slick-1.0.0.tgz", + "integrity": "sha512-OKxZsn8TAf8fYxP79rDXgLs9zvKMTslK6dJ4iLhDXOujUqC5zJPBRszyrcEHXcMPOm1Sgk40JgyF3yiL/Swd7w==", + "dependencies": { + "@babel/runtime": "^7.10.4", + "classnames": "^2.2.5", + "json2mq": "^0.2.0", + "resize-observer-polyfill": "^1.5.1", + "throttle-debounce": "^5.0.0" + }, + "peerDependencies": { + "react": ">=16.9.0" + } + }, "node_modules/@babel/code-frame": { "version": "7.18.6", "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.18.6.tgz", @@ -2080,6 +2151,24 @@ "postcss-selector-parser": "^6.0.10" } }, + "node_modules/@ctrl/tinycolor": { + "version": "3.5.0", + "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz", + "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmmirror.com/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" + }, + "node_modules/@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmmirror.com/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, "node_modules/@eslint/eslintrc": { "version": "1.4.0", "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", @@ -2968,6 +3057,84 @@ } } }, + "node_modules/@rc-component/mini-decimal": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@rc-component/mini-decimal/-/mini-decimal-1.0.1.tgz", + "integrity": "sha512-9N8nRk0oKj1qJzANKl+n9eNSMUGsZtjwNuDCiZ/KA+dt1fE3zq5x2XxclRcAbOIXnZcJ53ozP2Pa60gyELXagA==", + "dependencies": { + "@babel/runtime": "^7.18.0" + }, + "engines": { + "node": ">=8.x" + } + }, + "node_modules/@rc-component/portal": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@rc-component/portal/-/portal-1.1.0.tgz", + "integrity": "sha512-tbXM9SB1r5FOuZjRCljERFByFiEUcMmCWMXLog/NmgCzlAzreXyf23Vei3ZpSMxSMavzPnhCovfZjZdmxS3d1w==", + "dependencies": { + "@babel/runtime": "^7.18.0", + "classnames": "^2.3.2", + "rc-util": "^5.24.4" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/@rc-component/tour": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@rc-component/tour/-/tour-1.1.0.tgz", + "integrity": "sha512-Cy45VnNEDq6DLF5eKonIflObDfofbPq7AJpSf18qLN+j9+wW+sNlRv3JnCMDUsCdhSlnM4+yJ1RMokKp9GCpOQ==", + "dependencies": { + "@babel/runtime": "^7.18.0", + "@rc-component/portal": "^1.0.0-9", + "classnames": "^2.3.2", + "rc-trigger": "^5.3.4", + "rc-util": "^5.24.4" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/@reduxjs/toolkit": { + "version": "1.9.1", + "resolved": "https://registry.npmmirror.com/@reduxjs/toolkit/-/toolkit-1.9.1.tgz", + "integrity": "sha512-HikrdY+IDgRfRYlCTGUQaiCxxDDgM1mQrRbZ6S1HFZX5ZYuJ4o8EstNmhTwHdPl2rTmLxzwSu0b3AyeyTlR+RA==", + "dependencies": { + "immer": "^9.0.16", + "redux": "^4.2.0", + "redux-thunk": "^2.4.2", + "reselect": "^4.1.7" + }, + "peerDependencies": { + "react": "^16.9.0 || ^17.0.0 || ^18", + "react-redux": "^7.2.1 || ^8.0.2" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-redux": { + "optional": true + } + } + }, + "node_modules/@remix-run/router": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@remix-run/router/-/router-1.2.0.tgz", + "integrity": "sha512-GO82KYYTWPRCgdNtnheaZG3LcViUlxRFlHM7ykh7N+ufoXi6PVIHoP+9RUG/vuzl2hr9i/h6EA1Eq+2HpqJ0gQ==", + "engines": { + "node": ">=14" + } + }, "node_modules/@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmmirror.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -3577,6 +3744,15 @@ "@types/node": "*" } }, + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "node_modules/@types/html-minifier-terser": { "version": "6.1.0", "resolved": "https://registry.npmmirror.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", @@ -3754,6 +3930,11 @@ "resolved": "https://registry.npmmirror.com/@types/trusted-types/-/trusted-types-2.0.2.tgz", "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" }, + "node_modules/@types/use-sync-external-store": { + "version": "0.0.3", + "resolved": "https://registry.npmmirror.com/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", + "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" + }, "node_modules/@types/ws": { "version": "8.5.3", "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.5.3.tgz", @@ -4313,6 +4494,64 @@ "node": ">=4" } }, + "node_modules/antd": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/antd/-/antd-5.1.0.tgz", + "integrity": "sha512-eN0x+iL3FwxhW57OXZK0EYQ+ltWupG56tgB6KlDChZoI7nQ5IA9dlpYirFLG8R2yhCdEl9yBe/HzWapr1TyCig==", + "dependencies": { + "@ant-design/colors": "^6.0.0", + "@ant-design/cssinjs": "^1.0.0", + "@ant-design/icons": "^4.7.0", + "@ant-design/react-slick": "~1.0.0", + "@babel/runtime": "^7.18.3", + "@ctrl/tinycolor": "^3.4.0", + "@rc-component/tour": "~1.1.0", + "classnames": "^2.2.6", + "copy-to-clipboard": "^3.2.0", + "dayjs": "^1.11.1", + "qrcode.react": "^3.1.0", + "rc-cascader": "~3.8.0", + "rc-checkbox": "~2.3.0", + "rc-collapse": "~3.4.2", + "rc-dialog": "~9.0.2", + "rc-drawer": "~6.1.0", + "rc-dropdown": "~4.0.0", + "rc-field-form": "~1.27.0", + "rc-image": "~5.12.0", + "rc-input": "~0.1.4", + "rc-input-number": "~7.4.0", + "rc-mentions": "~1.13.1", + "rc-menu": "~9.8.0", + "rc-motion": "^2.6.1", + "rc-notification": "~5.0.0-alpha.9", + "rc-pagination": "~3.2.0", + "rc-picker": "~3.1.1", + "rc-progress": "~3.4.1", + "rc-rate": "~2.9.0", + "rc-resize-observer": "^1.2.0", + "rc-segmented": "~2.1.0", + "rc-select": "~14.2.0", + "rc-slider": "~10.0.0", + "rc-steps": "~6.0.0-alpha.2", + "rc-switch": "~4.0.0", + "rc-table": "~7.28.2", + "rc-tabs": "~12.5.1", + "rc-textarea": "~0.4.5", + "rc-tooltip": "~5.2.0", + "rc-tree": "~5.7.0", + "rc-tree-select": "~5.6.0", + "rc-trigger": "^5.2.10", + "rc-upload": "~4.3.0", + "rc-util": "^5.25.2", + "scroll-into-view-if-needed": "^3.0.3", + "shallowequal": "^1.1.0", + "throttle-debounce": "^5.0.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", @@ -4370,6 +4609,11 @@ "node": ">= 0.4" } }, + "node_modules/array-tree-filter": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz", + "integrity": "sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw==" + }, "node_modules/array-union": { "version": "2.1.0", "resolved": "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz", @@ -4448,6 +4692,11 @@ "resolved": "https://registry.npmmirror.com/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, + "node_modules/async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", @@ -4499,6 +4748,29 @@ "node": ">=4" } }, + "node_modules/axios": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.1.tgz", + "integrity": "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axios/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmmirror.com/axobject-query/-/axobject-query-2.2.0.tgz", @@ -5105,6 +5377,11 @@ "resolved": "https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==" }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, "node_modules/clean-css": { "version": "5.3.1", "resolved": "https://registry.npmmirror.com/clean-css/-/clean-css-5.3.1.tgz", @@ -5267,6 +5544,11 @@ "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "node_modules/compute-scroll-into-view": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-2.0.3.tgz", + "integrity": "sha512-mj/AjC7WqXeVlUB6zUq5Qrivb6et0kyasDQcbCWLDusYUqaXng+BfOnhCdRqPOa5/dWNn5e9+u40H6w2BYRdNQ==" + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", @@ -5322,6 +5604,14 @@ "resolved": "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, + "node_modules/copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmmirror.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "dependencies": { + "toggle-selection": "^1.0.6" + } + }, "node_modules/core-js": { "version": "3.26.1", "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.26.1.tgz", @@ -5760,6 +6050,11 @@ "node": ">=10" } }, + "node_modules/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", @@ -6006,6 +6301,11 @@ "resolved": "https://registry.npmmirror.com/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz", "integrity": "sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg==" }, + "node_modules/dom-align": { + "version": "1.12.4", + "resolved": "https://registry.npmmirror.com/dom-align/-/dom-align-1.12.4.tgz", + "integrity": "sha512-R8LUSEay/68zE5c8/3BDxiTEvgb4xZTF0RKmAHfiEVN3klfIpXfi2/QCoiWPccVQ0J/ZGdz9OjzL4uJEP/MRAw==" + }, "node_modules/dom-converter": { "version": "0.2.0", "resolved": "https://registry.npmmirror.com/dom-converter/-/dom-converter-0.2.0.tgz", @@ -7844,6 +8144,19 @@ "he": "bin/he" } }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmmirror.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, "node_modules/hoopy": { "version": "0.1.4", "resolved": "https://registry.npmmirror.com/hoopy/-/hoopy-0.1.4.tgz", @@ -10546,6 +10859,14 @@ "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" }, + "node_modules/json2mq": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/json2mq/-/json2mq-0.2.0.tgz", + "integrity": "sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==", + "dependencies": { + "string-convert": "^0.2.0" + } + }, "node_modules/json5": { "version": "2.2.2", "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.2.tgz", @@ -12759,6 +13080,11 @@ "node": ">= 0.10" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", @@ -12781,6 +13107,14 @@ "teleport": ">=0.2.0" } }, + "node_modules/qrcode.react": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/qrcode.react/-/qrcode.react-3.1.0.tgz", + "integrity": "sha512-oyF+Urr3oAMUG/OiOuONL3HXM+53wvuH3mtIWQrYmsXoAq0DkvZp2RYUWFSMFtbdOpuS++9v+WAkzNVkMlNW6Q==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/qs": { "version": "6.11.0", "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz", @@ -12867,6 +13201,610 @@ "node": ">=0.10.0" } }, + "node_modules/rc-align": { + "version": "4.0.15", + "resolved": "https://registry.npmmirror.com/rc-align/-/rc-align-4.0.15.tgz", + "integrity": "sha512-wqJtVH60pka/nOX7/IspElA8gjPNQKIx/ZqJ6heATCkXpe1Zg4cPVrMD2vC96wjsFFL8WsmhPbx9tdMo1qqlIA==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "dom-align": "^1.7.0", + "rc-util": "^5.26.0", + "resize-observer-polyfill": "^1.5.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-cascader": { + "version": "3.8.0", + "resolved": "https://registry.npmmirror.com/rc-cascader/-/rc-cascader-3.8.0.tgz", + "integrity": "sha512-zCz/NzsNRQ1TIfiR3rQNxjeRvgRHEkNdo0FjHQZ6Ay6n4tdCmMrM7+81ThNaf21JLQ1gS2AUG2t5uikGV78obA==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "array-tree-filter": "^2.1.0", + "classnames": "^2.3.1", + "rc-select": "~14.2.0", + "rc-tree": "~5.7.0", + "rc-util": "^5.6.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-checkbox": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/rc-checkbox/-/rc-checkbox-2.3.2.tgz", + "integrity": "sha512-afVi1FYiGv1U0JlpNH/UaEXdh6WUJjcWokj/nUN2TgG80bfG+MDdbfHKlLcNNba94mbjy2/SXJ1HDgrOkXGAjg==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-collapse": { + "version": "3.4.2", + "resolved": "https://registry.npmmirror.com/rc-collapse/-/rc-collapse-3.4.2.tgz", + "integrity": "sha512-jpTwLgJzkhAgp2Wpi3xmbTbbYExg6fkptL67Uu5LCRVEj6wqmy0DHTjjeynsjOLsppHGHu41t1ELntZ0lEvS/Q==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.3.4", + "rc-util": "^5.2.1", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-dialog": { + "version": "9.0.2", + "resolved": "https://registry.npmmirror.com/rc-dialog/-/rc-dialog-9.0.2.tgz", + "integrity": "sha512-s3U+24xWUuB6Bn2Lk/Qt6rufy+uT+QvWkiFhNBcO9APLxcFFczWamaq7x9h8SCuhfc1nHcW4y8NbMsnAjNnWyg==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "@rc-component/portal": "^1.0.0-8", + "classnames": "^2.2.6", + "rc-motion": "^2.3.0", + "rc-util": "^5.21.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-drawer": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/rc-drawer/-/rc-drawer-6.1.0.tgz", + "integrity": "sha512-54qhwtREDvb2mQ1edzoCR4LLbXo3yRDg8IWzFQY06CzIq7oQ4wM+JJYLMA4WVDPZJN0PB2iUbUn86rDta+suvg==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "@rc-component/portal": "^1.0.0-6", + "classnames": "^2.2.6", + "rc-motion": "^2.6.1", + "rc-util": "^5.21.2" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-dropdown": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/rc-dropdown/-/rc-dropdown-4.0.1.tgz", + "integrity": "sha512-OdpXuOcme1rm45cR0Jzgfl1otzmU4vuBVb+etXM8vcaULGokAKVpKlw8p6xzspG7jGd/XxShvq+N3VNEfk/l5g==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.6", + "rc-trigger": "^5.3.1", + "rc-util": "^5.17.0" + }, + "peerDependencies": { + "react": ">=16.11.0", + "react-dom": ">=16.11.0" + } + }, + "node_modules/rc-field-form": { + "version": "1.27.3", + "resolved": "https://registry.npmmirror.com/rc-field-form/-/rc-field-form-1.27.3.tgz", + "integrity": "sha512-HGqxHnmGQgkPApEcikV4qTg3BLPC82uB/cwBDftDt1pYaqitJfSl5TFTTUMKVEJVT5RqJ2Zi68ME1HmIMX2HAw==", + "dependencies": { + "@babel/runtime": "^7.18.0", + "async-validator": "^4.1.0", + "rc-util": "^5.8.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-image": { + "version": "5.12.1", + "resolved": "https://registry.npmmirror.com/rc-image/-/rc-image-5.12.1.tgz", + "integrity": "sha512-FMldR/ODwQmlFlhjR4c6hsOHmnn4s9CxmW7PR/9XCYE1XHlGJ5OkSWOtJruoaLjVwt2tQYDRnLANf/mKZ9ReUg==", + "dependencies": { + "@babel/runtime": "^7.11.2", + "@rc-component/portal": "^1.0.2", + "classnames": "^2.2.6", + "rc-dialog": "~9.0.0", + "rc-util": "^5.0.6" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-input": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/rc-input/-/rc-input-0.1.4.tgz", + "integrity": "sha512-FqDdNz+fV2dKNgfXzcSLKvC+jEs1709t7nD+WdfjrdSaOcefpgc7BUJYadc3usaING+b7ediMTfKxuJBsEFbXA==", + "dependencies": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-util": "^5.18.1" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/rc-input-number": { + "version": "7.4.0", + "resolved": "https://registry.npmmirror.com/rc-input-number/-/rc-input-number-7.4.0.tgz", + "integrity": "sha512-r/Oub/sPYbzqLNUOHnnc9sbCu78a81KX+RCbRwmpvB4W6nptUySbdWS5KHV4Hak5CAE1LAd+wWm5JjvZizG1FA==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "@rc-component/mini-decimal": "^1.0.1", + "classnames": "^2.2.5", + "rc-util": "^5.23.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-mentions": { + "version": "1.13.1", + "resolved": "https://registry.npmmirror.com/rc-mentions/-/rc-mentions-1.13.1.tgz", + "integrity": "sha512-FCkaWw6JQygtOz0+Vxz/M/NWqrWHB9LwqlY2RtcuFqWJNFK9njijOOzTSsBGANliGufVUzx/xuPHmZPBV0+Hgw==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.6", + "rc-menu": "~9.8.0", + "rc-textarea": "^0.4.0", + "rc-trigger": "^5.0.4", + "rc-util": "^5.22.5" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-menu": { + "version": "9.8.1", + "resolved": "https://registry.npmmirror.com/rc-menu/-/rc-menu-9.8.1.tgz", + "integrity": "sha512-179weouypfjWJSRvvoo/vPy+StojsMzK2XC5jRNhL1ryt/N/8wAFESte8K6jZJkNp9DHDLFTe+dCGmikKpiFuA==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.4.3", + "rc-overflow": "^1.2.8", + "rc-trigger": "^5.1.2", + "rc-util": "^5.12.0", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-motion": { + "version": "2.6.2", + "resolved": "https://registry.npmmirror.com/rc-motion/-/rc-motion-2.6.2.tgz", + "integrity": "sha512-4w1FaX3dtV749P8GwfS4fYnFG4Rb9pxvCYPc/b2fw1cmlHJWNNgOFIz7ysiD+eOrzJSvnLJWlNQQncpNMXwwpg==", + "dependencies": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-util": "^5.21.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-notification": { + "version": "5.0.0-alpha.9", + "resolved": "https://registry.npmmirror.com/rc-notification/-/rc-notification-5.0.0-alpha.9.tgz", + "integrity": "sha512-QPvq8VHe2M0SE5DHJf7ADWlvfWKnTsj5FVxcu39gdjX98kKmi+BHY1eTPAQkkdGqd6ZXv6xXHl8qKHyWhQcFPA==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.6.0", + "rc-util": "^5.20.1" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-overflow": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/rc-overflow/-/rc-overflow-1.2.8.tgz", + "integrity": "sha512-QJ0UItckWPQ37ZL1dMEBAdY1dhfTXFL9k6oTTcyydVwoUNMnMqCGqnRNA98axSr/OeDKqR6DVFyi8eA5RQI/uQ==", + "dependencies": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.19.2" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-pagination": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/rc-pagination/-/rc-pagination-3.2.0.tgz", + "integrity": "sha512-5tIXjB670WwwcAJzAqp2J+cOBS9W3cH/WU1EiYwXljuZ4vtZXKlY2Idq8FZrnYBz8KhN3vwPo9CoV/SJS6SL1w==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-picker": { + "version": "3.1.4", + "resolved": "https://registry.npmmirror.com/rc-picker/-/rc-picker-3.1.4.tgz", + "integrity": "sha512-4qANXNc3C02YENNQvun329zf9VLvSQ2W8RkKQRu8k1P+EtSGqe3klcAKCfz/1TuCiDvgRjJlzRmyZAkwvsbI8w==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-trigger": "^5.0.4", + "rc-util": "^5.4.0", + "shallowequal": "^1.1.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "date-fns": ">= 2.x", + "dayjs": ">= 1.x", + "moment": ">= 2.x", + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + }, + "peerDependenciesMeta": { + "date-fns": { + "optional": true + }, + "dayjs": { + "optional": true + }, + "moment": { + "optional": true + } + } + }, + "node_modules/rc-progress": { + "version": "3.4.1", + "resolved": "https://registry.npmmirror.com/rc-progress/-/rc-progress-3.4.1.tgz", + "integrity": "sha512-eAFDHXlk8aWpoXl0llrenPMt9qKHQXphxcVsnKs0FHC6eCSk1ebJtyaVjJUzKe0233ogiLDeEFK1Uihz3s67hw==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.6", + "rc-util": "^5.16.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-rate": { + "version": "2.9.2", + "resolved": "https://registry.npmmirror.com/rc-rate/-/rc-rate-2.9.2.tgz", + "integrity": "sha512-SaiZFyN8pe0Fgphv8t3+kidlej+cq/EALkAJAc3A0w0XcPaH2L1aggM8bhe1u6GAGuQNAoFvTLjw4qLPGRKV5g==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-util": "^5.0.1" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-resize-observer": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/rc-resize-observer/-/rc-resize-observer-1.2.0.tgz", + "integrity": "sha512-6W+UzT3PyDM0wVCEHfoW3qTHPTvbdSgiA43buiy8PzmeMnfgnDeb9NjdimMXMl3/TcrvvWl5RRVdp+NqcR47pQ==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-util": "^5.15.0", + "resize-observer-polyfill": "^1.5.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-segmented": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/rc-segmented/-/rc-segmented-2.1.0.tgz", + "integrity": "sha512-hUlonro+pYoZcwrH6Vm56B2ftLfQh046hrwif/VwLIw1j3zGt52p5mREBwmeVzXnSwgnagpOpfafspzs1asjGw==", + "dependencies": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-motion": "^2.4.4", + "rc-util": "^5.17.0" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/rc-select": { + "version": "14.2.0", + "resolved": "https://registry.npmmirror.com/rc-select/-/rc-select-14.2.0.tgz", + "integrity": "sha512-tvxHmbAA0EIhBkB7dyaRhcBUIWHocQbUFY/fBlezj2jg5p65a5VQ/UhBg2I9TA1wjpsr5CCx0ruZPkYcUMjDoQ==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.0.1", + "rc-overflow": "^1.0.0", + "rc-trigger": "^5.0.4", + "rc-util": "^5.16.1", + "rc-virtual-list": "^3.4.13" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/rc-slider": { + "version": "10.0.1", + "resolved": "https://registry.npmmirror.com/rc-slider/-/rc-slider-10.0.1.tgz", + "integrity": "sha512-igTKF3zBet7oS/3yNiIlmU8KnZ45npmrmHlUUio8PNbIhzMcsh+oE/r2UD42Y6YD2D/s+kzCQkzQrPD6RY435Q==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-util": "^5.18.1", + "shallowequal": "^1.1.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-steps": { + "version": "6.0.0-alpha.2", + "resolved": "https://registry.npmmirror.com/rc-steps/-/rc-steps-6.0.0-alpha.2.tgz", + "integrity": "sha512-d/GPx7ATlPbtFeOVt5FB19W11OBCmRd7lLknt4aSoCI6ukwJqpEhWu2INN4pDOQqN04y3PDsWl1q9hnw+ZC5AA==", + "dependencies": { + "@babel/runtime": "^7.16.7", + "classnames": "^2.2.3", + "rc-util": "^5.16.1" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-switch": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/rc-switch/-/rc-switch-4.0.0.tgz", + "integrity": "sha512-IfrYC99vN0gKaTyjQdqYuADU0eH00SAFHg3jOp8HrmUpJruhV1SohJzrCbPqPraZeX/6X/QKkdLfkdnUub05WA==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-util": "^5.0.1" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-table": { + "version": "7.28.3", + "resolved": "https://registry.npmmirror.com/rc-table/-/rc-table-7.28.3.tgz", + "integrity": "sha512-jiPtBDqcs0wF0KOJgkhDgxN6+vq4jHbteddE15IR6RajlVkAk+kRIecyBY28b+vg199yQiu/NGuSRKJKEGOWBQ==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-resize-observer": "^1.1.0", + "rc-util": "^5.22.5", + "shallowequal": "^1.1.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-tabs": { + "version": "12.5.3", + "resolved": "https://registry.npmmirror.com/rc-tabs/-/rc-tabs-12.5.3.tgz", + "integrity": "sha512-74ezAR19bzb1S5Zw+3DaSr2hPZmMnjFbEpNlVAA7cHK5nyrvN21O+QaFtx9hlODQRIYnF/rPb4FeOTmpJLLL3Q==", + "dependencies": { + "@babel/runtime": "^7.11.2", + "classnames": "2.x", + "rc-dropdown": "~4.0.0", + "rc-menu": "~9.8.0", + "rc-motion": "^2.6.2", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.16.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-textarea": { + "version": "0.4.7", + "resolved": "https://registry.npmmirror.com/rc-textarea/-/rc-textarea-0.4.7.tgz", + "integrity": "sha512-IQPd1CDI3mnMlkFyzt2O4gQ2lxUsnBAeJEoZGJnkkXgORNqyM9qovdrCj9NzcRfpHgLdzaEbU3AmobNFGUznwQ==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.24.4", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-tooltip": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/rc-tooltip/-/rc-tooltip-5.2.2.tgz", + "integrity": "sha512-jtQzU/18S6EI3lhSGoDYhPqNpWajMtS5VV/ld1LwyfrDByQpYmw/LW6U7oFXXLukjfDHQ7Ju705A82PRNFWYhg==", + "dependencies": { + "@babel/runtime": "^7.11.2", + "classnames": "^2.3.1", + "rc-trigger": "^5.0.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-tree": { + "version": "5.7.2", + "resolved": "https://registry.npmmirror.com/rc-tree/-/rc-tree-5.7.2.tgz", + "integrity": "sha512-nmnL6qLnfwVckO5zoqKL2I9UhwDqzyCtjITQCkwhimyz1zfuFkG5ZPIXpzD/Guzso94qQA/QrMsvzic5W6QDjg==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.0.1", + "rc-util": "^5.16.1", + "rc-virtual-list": "^3.4.8" + }, + "engines": { + "node": ">=10.x" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/rc-tree-select": { + "version": "5.6.0", + "resolved": "https://registry.npmmirror.com/rc-tree-select/-/rc-tree-select-5.6.0.tgz", + "integrity": "sha512-XG6pu0a9l6+mzhQqUYfR2VIONbe/3LjVc3wKt28k6uBMZsI1j+SSxRyt/7jWRq8Kok8jHJBQASlDg6ehr9Sp0w==", + "dependencies": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-select": "~14.2.0", + "rc-tree": "~5.7.0", + "rc-util": "^5.16.1" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/rc-trigger": { + "version": "5.3.4", + "resolved": "https://registry.npmmirror.com/rc-trigger/-/rc-trigger-5.3.4.tgz", + "integrity": "sha512-mQv+vas0TwKcjAO2izNPkqR4j86OemLRmvL2nOzdP9OWNWA1ivoTt5hzFqYNW9zACwmTezRiN8bttrC7cZzYSw==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.6", + "rc-align": "^4.0.0", + "rc-motion": "^2.0.0", + "rc-util": "^5.19.2" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-upload": { + "version": "4.3.4", + "resolved": "https://registry.npmmirror.com/rc-upload/-/rc-upload-4.3.4.tgz", + "integrity": "sha512-uVbtHFGNjHG/RyAfm9fluXB6pvArAGyAx8z7XzXXyorEgVIWj6mOlriuDm0XowDHYz4ycNK0nE0oP3cbFnzxiQ==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.5", + "rc-util": "^5.2.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-util": { + "version": "5.27.0", + "resolved": "https://registry.npmmirror.com/rc-util/-/rc-util-5.27.0.tgz", + "integrity": "sha512-lk9HnxVWdpGzkqs6OpZ+xxAHBefqy6+wT5LjSeBoaxzE0j5Tpq0Mf4TMc29B+Z0QP81yDvfgvp1O8oBxj70kEg==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "react-is": "^16.12.0" + }, + "peerDependencies": { + "react": ">=16.9.0", + "react-dom": ">=16.9.0" + } + }, + "node_modules/rc-util/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/rc-virtual-list": { + "version": "3.4.13", + "resolved": "https://registry.npmmirror.com/rc-virtual-list/-/rc-virtual-list-3.4.13.tgz", + "integrity": "sha512-cPOVDmcNM7rH6ANotanMDilW/55XnFPw0Jh/GQYtrzZSy3AmWvCnqVNyNC/pgg3lfVmX2994dlzAhuUrd4jG7w==", + "dependencies": { + "@babel/runtime": "^7.20.0", + "classnames": "^2.2.6", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.15.0" + }, + "engines": { + "node": ">=8.x" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, "node_modules/react": { "version": "18.2.0", "resolved": "https://registry.npmmirror.com/react/-/react-18.2.0.tgz", @@ -13024,6 +13962,49 @@ "resolved": "https://registry.npmmirror.com/react-is/-/react-is-17.0.2.tgz", "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, + "node_modules/react-redux": { + "version": "8.0.5", + "resolved": "https://registry.npmmirror.com/react-redux/-/react-redux-8.0.5.tgz", + "integrity": "sha512-Q2f6fCKxPFpkXt1qNRZdEDLlScsDWyrgSj0mliK59qU6W5gvBiKkdMEG2lJzhd1rCctf0hb6EtePPLZ2e0m1uw==", + "dependencies": { + "@babel/runtime": "^7.12.1", + "@types/hoist-non-react-statics": "^3.3.1", + "@types/use-sync-external-store": "^0.0.3", + "hoist-non-react-statics": "^3.3.2", + "react-is": "^18.0.0", + "use-sync-external-store": "^1.0.0" + }, + "peerDependencies": { + "@types/react": "^16.8 || ^17.0 || ^18.0", + "@types/react-dom": "^16.8 || ^17.0 || ^18.0", + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0", + "react-native": ">=0.59", + "redux": "^4" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + }, + "redux": { + "optional": true + } + } + }, + "node_modules/react-redux/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, "node_modules/react-refresh": { "version": "0.11.0", "resolved": "https://registry.npmmirror.com/react-refresh/-/react-refresh-0.11.0.tgz", @@ -13032,6 +14013,36 @@ "node": ">=0.10.0" } }, + "node_modules/react-router": { + "version": "6.6.0", + "resolved": "https://registry.npmmirror.com/react-router/-/react-router-6.6.0.tgz", + "integrity": "sha512-+VPfCIaFbkW7BAiB/2oeprxKAt1KLbl+zXZ10CXOYezKWgBmTKyh8XjI53eLqY5kd7uY+V4rh3UW44FclwUU+Q==", + "dependencies": { + "@remix-run/router": "1.2.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.6.0", + "resolved": "https://registry.npmmirror.com/react-router-dom/-/react-router-dom-6.6.0.tgz", + "integrity": "sha512-qC4jnvpfCPKVle1mKLD75IvZLcbVJyFMlSn16WY9ZiOed3dgSmqhslCf/u3tmSccWOujkdsT/OwGq12bELmvjg==", + "dependencies": { + "@remix-run/router": "1.2.0", + "react-router": "6.6.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, "node_modules/react-scripts": { "version": "5.0.1", "resolved": "https://registry.npmmirror.com/react-scripts/-/react-scripts-5.0.1.tgz", @@ -13159,6 +14170,22 @@ "node": ">=8" } }, + "node_modules/redux": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/redux/-/redux-4.2.0.tgz", + "integrity": "sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==", + "dependencies": { + "@babel/runtime": "^7.9.2" + } + }, + "node_modules/redux-thunk": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/redux-thunk/-/redux-thunk-2.4.2.tgz", + "integrity": "sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==", + "peerDependencies": { + "redux": "^4" + } + }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmmirror.com/regenerate/-/regenerate-1.4.2.tgz", @@ -13295,6 +14322,16 @@ "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, + "node_modules/reselect": { + "version": "4.1.7", + "resolved": "https://registry.npmmirror.com/reselect/-/reselect-4.1.7.tgz", + "integrity": "sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==" + }, + "node_modules/resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, "node_modules/resolve": { "version": "1.22.1", "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz", @@ -13587,6 +14624,14 @@ "node": ">= 10.13.0" } }, + "node_modules/scroll-into-view-if-needed": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.0.3.tgz", + "integrity": "sha512-QoCH0lVw0tbA7Rl6sToH7e1tO3n95Oi6JgBgC8hEpNNZUC91MfasJ/4E1ZdbzGueNDZ+Y7ObfRaelKUgTyPbJA==", + "dependencies": { + "compute-scroll-into-view": "^2.0.2" + } + }, "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/select-hose/-/select-hose-2.0.0.tgz", @@ -13771,6 +14816,11 @@ "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", @@ -13972,6 +15022,11 @@ "safe-buffer": "~5.2.0" } }, + "node_modules/string-convert": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/string-convert/-/string-convert-0.2.1.tgz", + "integrity": "sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==" + }, "node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz", @@ -14135,6 +15190,11 @@ "postcss": "^8.2.15" } }, + "node_modules/stylis": { + "version": "4.1.3", + "resolved": "https://registry.npmmirror.com/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", @@ -14441,6 +15501,14 @@ "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.1.tgz", "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==" }, + "node_modules/throttle-debounce": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-5.0.0.tgz", + "integrity": "sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg==", + "engines": { + "node": ">=12.22" + } + }, "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/thunky/-/thunky-1.1.0.tgz", @@ -14470,6 +15538,11 @@ "node": ">=8.0" } }, + "node_modules/toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, "node_modules/toidentifier": { "version": "1.0.1", "resolved": "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz", @@ -14749,6 +15822,14 @@ "requires-port": "^1.0.0" } }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -15725,6 +16806,58 @@ "@jridgewell/trace-mapping": "^0.3.9" } }, + "@ant-design/colors": { + "version": "6.0.0", + "resolved": "https://registry.npmmirror.com/@ant-design/colors/-/colors-6.0.0.tgz", + "integrity": "sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==", + "requires": { + "@ctrl/tinycolor": "^3.4.0" + } + }, + "@ant-design/cssinjs": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@ant-design/cssinjs/-/cssinjs-1.2.0.tgz", + "integrity": "sha512-TjZVH4lgc7jAhYn9yStjnQI7u93b+VAg2oXIyzy12XjnFjCTR+nQIHfuixK+Vm0sx2L8ecDOBDEPT9ldCA7RPQ==", + "requires": { + "@babel/runtime": "^7.11.1", + "@emotion/hash": "^0.8.0", + "@emotion/unitless": "^0.7.5", + "classnames": "^2.3.1", + "csstype": "^3.0.10", + "rc-util": "^5.24.2", + "shallowequal": "^1.1.0", + "stylis": "^4.0.13" + } + }, + "@ant-design/icons": { + "version": "4.8.0", + "resolved": "https://registry.npmmirror.com/@ant-design/icons/-/icons-4.8.0.tgz", + "integrity": "sha512-T89P2jG2vM7OJ0IfGx2+9FC5sQjtTzRSz+mCHTXkFn/ELZc2YpfStmYHmqzq2Jx55J0F7+O6i5/ZKFSVNWCKNg==", + "requires": { + "@ant-design/colors": "^6.0.0", + "@ant-design/icons-svg": "^4.2.1", + "@babel/runtime": "^7.11.2", + "classnames": "^2.2.6", + "rc-util": "^5.9.4" + } + }, + "@ant-design/icons-svg": { + "version": "4.2.1", + "resolved": "https://registry.npmmirror.com/@ant-design/icons-svg/-/icons-svg-4.2.1.tgz", + "integrity": "sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==" + }, + "@ant-design/react-slick": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/@ant-design/react-slick/-/react-slick-1.0.0.tgz", + "integrity": "sha512-OKxZsn8TAf8fYxP79rDXgLs9zvKMTslK6dJ4iLhDXOujUqC5zJPBRszyrcEHXcMPOm1Sgk40JgyF3yiL/Swd7w==", + "requires": { + "@babel/runtime": "^7.10.4", + "classnames": "^2.2.5", + "json2mq": "^0.2.0", + "resize-observer-polyfill": "^1.5.1", + "throttle-debounce": "^5.0.0" + } + }, "@babel/code-frame": { "version": "7.18.6", "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.18.6.tgz", @@ -17081,6 +18214,21 @@ "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", "requires": {} }, + "@ctrl/tinycolor": { + "version": "3.5.0", + "resolved": "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.5.0.tgz", + "integrity": "sha512-tlJpwF40DEQcfR/QF+wNMVyGMaO9FQp6Z1Wahj4Gk3CJQYHwA2xVG7iKDFdW6zuxZY9XWOpGcfNCTsX4McOsOg==" + }, + "@emotion/hash": { + "version": "0.8.0", + "resolved": "https://registry.npmmirror.com/@emotion/hash/-/hash-0.8.0.tgz", + "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmmirror.com/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, "@eslint/eslintrc": { "version": "1.4.0", "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.0.tgz", @@ -17754,6 +18902,52 @@ "source-map": "^0.7.3" } }, + "@rc-component/mini-decimal": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@rc-component/mini-decimal/-/mini-decimal-1.0.1.tgz", + "integrity": "sha512-9N8nRk0oKj1qJzANKl+n9eNSMUGsZtjwNuDCiZ/KA+dt1fE3zq5x2XxclRcAbOIXnZcJ53ozP2Pa60gyELXagA==", + "requires": { + "@babel/runtime": "^7.18.0" + } + }, + "@rc-component/portal": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@rc-component/portal/-/portal-1.1.0.tgz", + "integrity": "sha512-tbXM9SB1r5FOuZjRCljERFByFiEUcMmCWMXLog/NmgCzlAzreXyf23Vei3ZpSMxSMavzPnhCovfZjZdmxS3d1w==", + "requires": { + "@babel/runtime": "^7.18.0", + "classnames": "^2.3.2", + "rc-util": "^5.24.4" + } + }, + "@rc-component/tour": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/@rc-component/tour/-/tour-1.1.0.tgz", + "integrity": "sha512-Cy45VnNEDq6DLF5eKonIflObDfofbPq7AJpSf18qLN+j9+wW+sNlRv3JnCMDUsCdhSlnM4+yJ1RMokKp9GCpOQ==", + "requires": { + "@babel/runtime": "^7.18.0", + "@rc-component/portal": "^1.0.0-9", + "classnames": "^2.3.2", + "rc-trigger": "^5.3.4", + "rc-util": "^5.24.4" + } + }, + "@reduxjs/toolkit": { + "version": "1.9.1", + "resolved": "https://registry.npmmirror.com/@reduxjs/toolkit/-/toolkit-1.9.1.tgz", + "integrity": "sha512-HikrdY+IDgRfRYlCTGUQaiCxxDDgM1mQrRbZ6S1HFZX5ZYuJ4o8EstNmhTwHdPl2rTmLxzwSu0b3AyeyTlR+RA==", + "requires": { + "immer": "^9.0.16", + "redux": "^4.2.0", + "redux-thunk": "^2.4.2", + "reselect": "^4.1.7" + } + }, + "@remix-run/router": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/@remix-run/router/-/router-1.2.0.tgz", + "integrity": "sha512-GO82KYYTWPRCgdNtnheaZG3LcViUlxRFlHM7ykh7N+ufoXi6PVIHoP+9RUG/vuzl2hr9i/h6EA1Eq+2HpqJ0gQ==" + }, "@rollup/plugin-babel": { "version": "5.3.1", "resolved": "https://registry.npmmirror.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", @@ -18241,6 +19435,15 @@ "@types/node": "*" } }, + "@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://registry.npmmirror.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "requires": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "@types/html-minifier-terser": { "version": "6.1.0", "resolved": "https://registry.npmmirror.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", @@ -18418,6 +19621,11 @@ "resolved": "https://registry.npmmirror.com/@types/trusted-types/-/trusted-types-2.0.2.tgz", "integrity": "sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==" }, + "@types/use-sync-external-store": { + "version": "0.0.3", + "resolved": "https://registry.npmmirror.com/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", + "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" + }, "@types/ws": { "version": "8.5.3", "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.5.3.tgz", @@ -18854,6 +20062,60 @@ "color-convert": "^1.9.0" } }, + "antd": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/antd/-/antd-5.1.0.tgz", + "integrity": "sha512-eN0x+iL3FwxhW57OXZK0EYQ+ltWupG56tgB6KlDChZoI7nQ5IA9dlpYirFLG8R2yhCdEl9yBe/HzWapr1TyCig==", + "requires": { + "@ant-design/colors": "^6.0.0", + "@ant-design/cssinjs": "^1.0.0", + "@ant-design/icons": "^4.7.0", + "@ant-design/react-slick": "~1.0.0", + "@babel/runtime": "^7.18.3", + "@ctrl/tinycolor": "^3.4.0", + "@rc-component/tour": "~1.1.0", + "classnames": "^2.2.6", + "copy-to-clipboard": "^3.2.0", + "dayjs": "^1.11.1", + "qrcode.react": "^3.1.0", + "rc-cascader": "~3.8.0", + "rc-checkbox": "~2.3.0", + "rc-collapse": "~3.4.2", + "rc-dialog": "~9.0.2", + "rc-drawer": "~6.1.0", + "rc-dropdown": "~4.0.0", + "rc-field-form": "~1.27.0", + "rc-image": "~5.12.0", + "rc-input": "~0.1.4", + "rc-input-number": "~7.4.0", + "rc-mentions": "~1.13.1", + "rc-menu": "~9.8.0", + "rc-motion": "^2.6.1", + "rc-notification": "~5.0.0-alpha.9", + "rc-pagination": "~3.2.0", + "rc-picker": "~3.1.1", + "rc-progress": "~3.4.1", + "rc-rate": "~2.9.0", + "rc-resize-observer": "^1.2.0", + "rc-segmented": "~2.1.0", + "rc-select": "~14.2.0", + "rc-slider": "~10.0.0", + "rc-steps": "~6.0.0-alpha.2", + "rc-switch": "~4.0.0", + "rc-table": "~7.28.2", + "rc-tabs": "~12.5.1", + "rc-textarea": "~0.4.5", + "rc-tooltip": "~5.2.0", + "rc-tree": "~5.7.0", + "rc-tree-select": "~5.6.0", + "rc-trigger": "^5.2.10", + "rc-upload": "~4.3.0", + "rc-util": "^5.25.2", + "scroll-into-view-if-needed": "^3.0.3", + "shallowequal": "^1.1.0", + "throttle-debounce": "^5.0.0" + } + }, "anymatch": { "version": "3.1.3", "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz", @@ -18902,6 +20164,11 @@ "is-string": "^1.0.7" } }, + "array-tree-filter": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz", + "integrity": "sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw==" + }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz", @@ -18968,6 +20235,11 @@ "resolved": "https://registry.npmmirror.com/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, + "async-validator": { + "version": "4.2.5", + "resolved": "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz", + "integrity": "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==" + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz", @@ -19001,6 +20273,28 @@ "resolved": "https://registry.npmmirror.com/axe-core/-/axe-core-4.6.1.tgz", "integrity": "sha512-lCZN5XRuOnpG4bpMq8v0khrWtUOn+i8lZSb6wHZH56ZfbIEv6XwJV84AAueh9/zi7qPVJ/E4yz6fmsiyOmXR4w==" }, + "axios": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/axios/-/axios-1.2.1.tgz", + "integrity": "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A==", + "requires": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + }, + "dependencies": { + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + } + } + }, "axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmmirror.com/axobject-query/-/axobject-query-2.2.0.tgz", @@ -19487,6 +20781,11 @@ "resolved": "https://registry.npmmirror.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==" }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, "clean-css": { "version": "5.3.1", "resolved": "https://registry.npmmirror.com/clean-css/-/clean-css-5.3.1.tgz", @@ -19625,6 +20924,11 @@ } } }, + "compute-scroll-into-view": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-2.0.3.tgz", + "integrity": "sha512-mj/AjC7WqXeVlUB6zUq5Qrivb6et0kyasDQcbCWLDusYUqaXng+BfOnhCdRqPOa5/dWNn5e9+u40H6w2BYRdNQ==" + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz", @@ -19668,6 +20972,14 @@ "resolved": "https://registry.npmmirror.com/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" }, + "copy-to-clipboard": { + "version": "3.3.3", + "resolved": "https://registry.npmmirror.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", + "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", + "requires": { + "toggle-selection": "^1.0.6" + } + }, "core-js": { "version": "3.26.1", "resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.26.1.tgz", @@ -19990,6 +21302,11 @@ "whatwg-url": "^8.0.0" } }, + "dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz", @@ -20182,6 +21499,11 @@ "resolved": "https://registry.npmmirror.com/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz", "integrity": "sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg==" }, + "dom-align": { + "version": "1.12.4", + "resolved": "https://registry.npmmirror.com/dom-align/-/dom-align-1.12.4.tgz", + "integrity": "sha512-R8LUSEay/68zE5c8/3BDxiTEvgb4xZTF0RKmAHfiEVN3klfIpXfi2/QCoiWPccVQ0J/ZGdz9OjzL4uJEP/MRAw==" + }, "dom-converter": { "version": "0.2.0", "resolved": "https://registry.npmmirror.com/dom-converter/-/dom-converter-0.2.0.tgz", @@ -21625,6 +22947,21 @@ "resolved": "https://registry.npmmirror.com/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmmirror.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, "hoopy": { "version": "0.1.4", "resolved": "https://registry.npmmirror.com/hoopy/-/hoopy-0.1.4.tgz", @@ -23725,6 +25062,14 @@ "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" }, + "json2mq": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/json2mq/-/json2mq-0.2.0.tgz", + "integrity": "sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==", + "requires": { + "string-convert": "^0.2.0" + } + }, "json5": { "version": "2.2.2", "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.2.tgz", @@ -25278,6 +26623,11 @@ } } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmmirror.com/psl/-/psl-1.9.0.tgz", @@ -25293,6 +26643,12 @@ "resolved": "https://registry.npmmirror.com/q/-/q-1.5.1.tgz", "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" }, + "qrcode.react": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/qrcode.react/-/qrcode.react-3.1.0.tgz", + "integrity": "sha512-oyF+Urr3oAMUG/OiOuONL3HXM+53wvuH3mtIWQrYmsXoAq0DkvZp2RYUWFSMFtbdOpuS++9v+WAkzNVkMlNW6Q==", + "requires": {} + }, "qs": { "version": "6.11.0", "resolved": "https://registry.npmmirror.com/qs/-/qs-6.11.0.tgz", @@ -25363,6 +26719,418 @@ } } }, + "rc-align": { + "version": "4.0.15", + "resolved": "https://registry.npmmirror.com/rc-align/-/rc-align-4.0.15.tgz", + "integrity": "sha512-wqJtVH60pka/nOX7/IspElA8gjPNQKIx/ZqJ6heATCkXpe1Zg4cPVrMD2vC96wjsFFL8WsmhPbx9tdMo1qqlIA==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "dom-align": "^1.7.0", + "rc-util": "^5.26.0", + "resize-observer-polyfill": "^1.5.1" + } + }, + "rc-cascader": { + "version": "3.8.0", + "resolved": "https://registry.npmmirror.com/rc-cascader/-/rc-cascader-3.8.0.tgz", + "integrity": "sha512-zCz/NzsNRQ1TIfiR3rQNxjeRvgRHEkNdo0FjHQZ6Ay6n4tdCmMrM7+81ThNaf21JLQ1gS2AUG2t5uikGV78obA==", + "requires": { + "@babel/runtime": "^7.12.5", + "array-tree-filter": "^2.1.0", + "classnames": "^2.3.1", + "rc-select": "~14.2.0", + "rc-tree": "~5.7.0", + "rc-util": "^5.6.1" + } + }, + "rc-checkbox": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/rc-checkbox/-/rc-checkbox-2.3.2.tgz", + "integrity": "sha512-afVi1FYiGv1U0JlpNH/UaEXdh6WUJjcWokj/nUN2TgG80bfG+MDdbfHKlLcNNba94mbjy2/SXJ1HDgrOkXGAjg==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" + } + }, + "rc-collapse": { + "version": "3.4.2", + "resolved": "https://registry.npmmirror.com/rc-collapse/-/rc-collapse-3.4.2.tgz", + "integrity": "sha512-jpTwLgJzkhAgp2Wpi3xmbTbbYExg6fkptL67Uu5LCRVEj6wqmy0DHTjjeynsjOLsppHGHu41t1ELntZ0lEvS/Q==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.3.4", + "rc-util": "^5.2.1", + "shallowequal": "^1.1.0" + } + }, + "rc-dialog": { + "version": "9.0.2", + "resolved": "https://registry.npmmirror.com/rc-dialog/-/rc-dialog-9.0.2.tgz", + "integrity": "sha512-s3U+24xWUuB6Bn2Lk/Qt6rufy+uT+QvWkiFhNBcO9APLxcFFczWamaq7x9h8SCuhfc1nHcW4y8NbMsnAjNnWyg==", + "requires": { + "@babel/runtime": "^7.10.1", + "@rc-component/portal": "^1.0.0-8", + "classnames": "^2.2.6", + "rc-motion": "^2.3.0", + "rc-util": "^5.21.0" + } + }, + "rc-drawer": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/rc-drawer/-/rc-drawer-6.1.0.tgz", + "integrity": "sha512-54qhwtREDvb2mQ1edzoCR4LLbXo3yRDg8IWzFQY06CzIq7oQ4wM+JJYLMA4WVDPZJN0PB2iUbUn86rDta+suvg==", + "requires": { + "@babel/runtime": "^7.10.1", + "@rc-component/portal": "^1.0.0-6", + "classnames": "^2.2.6", + "rc-motion": "^2.6.1", + "rc-util": "^5.21.2" + } + }, + "rc-dropdown": { + "version": "4.0.1", + "resolved": "https://registry.npmmirror.com/rc-dropdown/-/rc-dropdown-4.0.1.tgz", + "integrity": "sha512-OdpXuOcme1rm45cR0Jzgfl1otzmU4vuBVb+etXM8vcaULGokAKVpKlw8p6xzspG7jGd/XxShvq+N3VNEfk/l5g==", + "requires": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.6", + "rc-trigger": "^5.3.1", + "rc-util": "^5.17.0" + } + }, + "rc-field-form": { + "version": "1.27.3", + "resolved": "https://registry.npmmirror.com/rc-field-form/-/rc-field-form-1.27.3.tgz", + "integrity": "sha512-HGqxHnmGQgkPApEcikV4qTg3BLPC82uB/cwBDftDt1pYaqitJfSl5TFTTUMKVEJVT5RqJ2Zi68ME1HmIMX2HAw==", + "requires": { + "@babel/runtime": "^7.18.0", + "async-validator": "^4.1.0", + "rc-util": "^5.8.0" + } + }, + "rc-image": { + "version": "5.12.1", + "resolved": "https://registry.npmmirror.com/rc-image/-/rc-image-5.12.1.tgz", + "integrity": "sha512-FMldR/ODwQmlFlhjR4c6hsOHmnn4s9CxmW7PR/9XCYE1XHlGJ5OkSWOtJruoaLjVwt2tQYDRnLANf/mKZ9ReUg==", + "requires": { + "@babel/runtime": "^7.11.2", + "@rc-component/portal": "^1.0.2", + "classnames": "^2.2.6", + "rc-dialog": "~9.0.0", + "rc-util": "^5.0.6" + } + }, + "rc-input": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/rc-input/-/rc-input-0.1.4.tgz", + "integrity": "sha512-FqDdNz+fV2dKNgfXzcSLKvC+jEs1709t7nD+WdfjrdSaOcefpgc7BUJYadc3usaING+b7ediMTfKxuJBsEFbXA==", + "requires": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-util": "^5.18.1" + } + }, + "rc-input-number": { + "version": "7.4.0", + "resolved": "https://registry.npmmirror.com/rc-input-number/-/rc-input-number-7.4.0.tgz", + "integrity": "sha512-r/Oub/sPYbzqLNUOHnnc9sbCu78a81KX+RCbRwmpvB4W6nptUySbdWS5KHV4Hak5CAE1LAd+wWm5JjvZizG1FA==", + "requires": { + "@babel/runtime": "^7.10.1", + "@rc-component/mini-decimal": "^1.0.1", + "classnames": "^2.2.5", + "rc-util": "^5.23.0" + } + }, + "rc-mentions": { + "version": "1.13.1", + "resolved": "https://registry.npmmirror.com/rc-mentions/-/rc-mentions-1.13.1.tgz", + "integrity": "sha512-FCkaWw6JQygtOz0+Vxz/M/NWqrWHB9LwqlY2RtcuFqWJNFK9njijOOzTSsBGANliGufVUzx/xuPHmZPBV0+Hgw==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.6", + "rc-menu": "~9.8.0", + "rc-textarea": "^0.4.0", + "rc-trigger": "^5.0.4", + "rc-util": "^5.22.5" + } + }, + "rc-menu": { + "version": "9.8.1", + "resolved": "https://registry.npmmirror.com/rc-menu/-/rc-menu-9.8.1.tgz", + "integrity": "sha512-179weouypfjWJSRvvoo/vPy+StojsMzK2XC5jRNhL1ryt/N/8wAFESte8K6jZJkNp9DHDLFTe+dCGmikKpiFuA==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.4.3", + "rc-overflow": "^1.2.8", + "rc-trigger": "^5.1.2", + "rc-util": "^5.12.0", + "shallowequal": "^1.1.0" + } + }, + "rc-motion": { + "version": "2.6.2", + "resolved": "https://registry.npmmirror.com/rc-motion/-/rc-motion-2.6.2.tgz", + "integrity": "sha512-4w1FaX3dtV749P8GwfS4fYnFG4Rb9pxvCYPc/b2fw1cmlHJWNNgOFIz7ysiD+eOrzJSvnLJWlNQQncpNMXwwpg==", + "requires": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-util": "^5.21.0" + } + }, + "rc-notification": { + "version": "5.0.0-alpha.9", + "resolved": "https://registry.npmmirror.com/rc-notification/-/rc-notification-5.0.0-alpha.9.tgz", + "integrity": "sha512-QPvq8VHe2M0SE5DHJf7ADWlvfWKnTsj5FVxcu39gdjX98kKmi+BHY1eTPAQkkdGqd6ZXv6xXHl8qKHyWhQcFPA==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.6.0", + "rc-util": "^5.20.1" + } + }, + "rc-overflow": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/rc-overflow/-/rc-overflow-1.2.8.tgz", + "integrity": "sha512-QJ0UItckWPQ37ZL1dMEBAdY1dhfTXFL9k6oTTcyydVwoUNMnMqCGqnRNA98axSr/OeDKqR6DVFyi8eA5RQI/uQ==", + "requires": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.19.2" + } + }, + "rc-pagination": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/rc-pagination/-/rc-pagination-3.2.0.tgz", + "integrity": "sha512-5tIXjB670WwwcAJzAqp2J+cOBS9W3cH/WU1EiYwXljuZ4vtZXKlY2Idq8FZrnYBz8KhN3vwPo9CoV/SJS6SL1w==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1" + } + }, + "rc-picker": { + "version": "3.1.4", + "resolved": "https://registry.npmmirror.com/rc-picker/-/rc-picker-3.1.4.tgz", + "integrity": "sha512-4qANXNc3C02YENNQvun329zf9VLvSQ2W8RkKQRu8k1P+EtSGqe3klcAKCfz/1TuCiDvgRjJlzRmyZAkwvsbI8w==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-trigger": "^5.0.4", + "rc-util": "^5.4.0", + "shallowequal": "^1.1.0" + } + }, + "rc-progress": { + "version": "3.4.1", + "resolved": "https://registry.npmmirror.com/rc-progress/-/rc-progress-3.4.1.tgz", + "integrity": "sha512-eAFDHXlk8aWpoXl0llrenPMt9qKHQXphxcVsnKs0FHC6eCSk1ebJtyaVjJUzKe0233ogiLDeEFK1Uihz3s67hw==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.6", + "rc-util": "^5.16.1" + } + }, + "rc-rate": { + "version": "2.9.2", + "resolved": "https://registry.npmmirror.com/rc-rate/-/rc-rate-2.9.2.tgz", + "integrity": "sha512-SaiZFyN8pe0Fgphv8t3+kidlej+cq/EALkAJAc3A0w0XcPaH2L1aggM8bhe1u6GAGuQNAoFvTLjw4qLPGRKV5g==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-util": "^5.0.1" + } + }, + "rc-resize-observer": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/rc-resize-observer/-/rc-resize-observer-1.2.0.tgz", + "integrity": "sha512-6W+UzT3PyDM0wVCEHfoW3qTHPTvbdSgiA43buiy8PzmeMnfgnDeb9NjdimMXMl3/TcrvvWl5RRVdp+NqcR47pQ==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-util": "^5.15.0", + "resize-observer-polyfill": "^1.5.1" + } + }, + "rc-segmented": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/rc-segmented/-/rc-segmented-2.1.0.tgz", + "integrity": "sha512-hUlonro+pYoZcwrH6Vm56B2ftLfQh046hrwif/VwLIw1j3zGt52p5mREBwmeVzXnSwgnagpOpfafspzs1asjGw==", + "requires": { + "@babel/runtime": "^7.11.1", + "classnames": "^2.2.1", + "rc-motion": "^2.4.4", + "rc-util": "^5.17.0" + } + }, + "rc-select": { + "version": "14.2.0", + "resolved": "https://registry.npmmirror.com/rc-select/-/rc-select-14.2.0.tgz", + "integrity": "sha512-tvxHmbAA0EIhBkB7dyaRhcBUIWHocQbUFY/fBlezj2jg5p65a5VQ/UhBg2I9TA1wjpsr5CCx0ruZPkYcUMjDoQ==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.0.1", + "rc-overflow": "^1.0.0", + "rc-trigger": "^5.0.4", + "rc-util": "^5.16.1", + "rc-virtual-list": "^3.4.13" + } + }, + "rc-slider": { + "version": "10.0.1", + "resolved": "https://registry.npmmirror.com/rc-slider/-/rc-slider-10.0.1.tgz", + "integrity": "sha512-igTKF3zBet7oS/3yNiIlmU8KnZ45npmrmHlUUio8PNbIhzMcsh+oE/r2UD42Y6YD2D/s+kzCQkzQrPD6RY435Q==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-util": "^5.18.1", + "shallowequal": "^1.1.0" + } + }, + "rc-steps": { + "version": "6.0.0-alpha.2", + "resolved": "https://registry.npmmirror.com/rc-steps/-/rc-steps-6.0.0-alpha.2.tgz", + "integrity": "sha512-d/GPx7ATlPbtFeOVt5FB19W11OBCmRd7lLknt4aSoCI6ukwJqpEhWu2INN4pDOQqN04y3PDsWl1q9hnw+ZC5AA==", + "requires": { + "@babel/runtime": "^7.16.7", + "classnames": "^2.2.3", + "rc-util": "^5.16.1" + } + }, + "rc-switch": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/rc-switch/-/rc-switch-4.0.0.tgz", + "integrity": "sha512-IfrYC99vN0gKaTyjQdqYuADU0eH00SAFHg3jOp8HrmUpJruhV1SohJzrCbPqPraZeX/6X/QKkdLfkdnUub05WA==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-util": "^5.0.1" + } + }, + "rc-table": { + "version": "7.28.3", + "resolved": "https://registry.npmmirror.com/rc-table/-/rc-table-7.28.3.tgz", + "integrity": "sha512-jiPtBDqcs0wF0KOJgkhDgxN6+vq4jHbteddE15IR6RajlVkAk+kRIecyBY28b+vg199yQiu/NGuSRKJKEGOWBQ==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.5", + "rc-resize-observer": "^1.1.0", + "rc-util": "^5.22.5", + "shallowequal": "^1.1.0" + } + }, + "rc-tabs": { + "version": "12.5.3", + "resolved": "https://registry.npmmirror.com/rc-tabs/-/rc-tabs-12.5.3.tgz", + "integrity": "sha512-74ezAR19bzb1S5Zw+3DaSr2hPZmMnjFbEpNlVAA7cHK5nyrvN21O+QaFtx9hlODQRIYnF/rPb4FeOTmpJLLL3Q==", + "requires": { + "@babel/runtime": "^7.11.2", + "classnames": "2.x", + "rc-dropdown": "~4.0.0", + "rc-menu": "~9.8.0", + "rc-motion": "^2.6.2", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.16.0" + } + }, + "rc-textarea": { + "version": "0.4.7", + "resolved": "https://registry.npmmirror.com/rc-textarea/-/rc-textarea-0.4.7.tgz", + "integrity": "sha512-IQPd1CDI3mnMlkFyzt2O4gQ2lxUsnBAeJEoZGJnkkXgORNqyM9qovdrCj9NzcRfpHgLdzaEbU3AmobNFGUznwQ==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "^2.2.1", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.24.4", + "shallowequal": "^1.1.0" + } + }, + "rc-tooltip": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/rc-tooltip/-/rc-tooltip-5.2.2.tgz", + "integrity": "sha512-jtQzU/18S6EI3lhSGoDYhPqNpWajMtS5VV/ld1LwyfrDByQpYmw/LW6U7oFXXLukjfDHQ7Ju705A82PRNFWYhg==", + "requires": { + "@babel/runtime": "^7.11.2", + "classnames": "^2.3.1", + "rc-trigger": "^5.0.0" + } + }, + "rc-tree": { + "version": "5.7.2", + "resolved": "https://registry.npmmirror.com/rc-tree/-/rc-tree-5.7.2.tgz", + "integrity": "sha512-nmnL6qLnfwVckO5zoqKL2I9UhwDqzyCtjITQCkwhimyz1zfuFkG5ZPIXpzD/Guzso94qQA/QrMsvzic5W6QDjg==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-motion": "^2.0.1", + "rc-util": "^5.16.1", + "rc-virtual-list": "^3.4.8" + } + }, + "rc-tree-select": { + "version": "5.6.0", + "resolved": "https://registry.npmmirror.com/rc-tree-select/-/rc-tree-select-5.6.0.tgz", + "integrity": "sha512-XG6pu0a9l6+mzhQqUYfR2VIONbe/3LjVc3wKt28k6uBMZsI1j+SSxRyt/7jWRq8Kok8jHJBQASlDg6ehr9Sp0w==", + "requires": { + "@babel/runtime": "^7.10.1", + "classnames": "2.x", + "rc-select": "~14.2.0", + "rc-tree": "~5.7.0", + "rc-util": "^5.16.1" + } + }, + "rc-trigger": { + "version": "5.3.4", + "resolved": "https://registry.npmmirror.com/rc-trigger/-/rc-trigger-5.3.4.tgz", + "integrity": "sha512-mQv+vas0TwKcjAO2izNPkqR4j86OemLRmvL2nOzdP9OWNWA1ivoTt5hzFqYNW9zACwmTezRiN8bttrC7cZzYSw==", + "requires": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.6", + "rc-align": "^4.0.0", + "rc-motion": "^2.0.0", + "rc-util": "^5.19.2" + } + }, + "rc-upload": { + "version": "4.3.4", + "resolved": "https://registry.npmmirror.com/rc-upload/-/rc-upload-4.3.4.tgz", + "integrity": "sha512-uVbtHFGNjHG/RyAfm9fluXB6pvArAGyAx8z7XzXXyorEgVIWj6mOlriuDm0XowDHYz4ycNK0nE0oP3cbFnzxiQ==", + "requires": { + "@babel/runtime": "^7.18.3", + "classnames": "^2.2.5", + "rc-util": "^5.2.0" + } + }, + "rc-util": { + "version": "5.27.0", + "resolved": "https://registry.npmmirror.com/rc-util/-/rc-util-5.27.0.tgz", + "integrity": "sha512-lk9HnxVWdpGzkqs6OpZ+xxAHBefqy6+wT5LjSeBoaxzE0j5Tpq0Mf4TMc29B+Z0QP81yDvfgvp1O8oBxj70kEg==", + "requires": { + "@babel/runtime": "^7.18.3", + "react-is": "^16.12.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "rc-virtual-list": { + "version": "3.4.13", + "resolved": "https://registry.npmmirror.com/rc-virtual-list/-/rc-virtual-list-3.4.13.tgz", + "integrity": "sha512-cPOVDmcNM7rH6ANotanMDilW/55XnFPw0Jh/GQYtrzZSy3AmWvCnqVNyNC/pgg3lfVmX2994dlzAhuUrd4jG7w==", + "requires": { + "@babel/runtime": "^7.20.0", + "classnames": "^2.2.6", + "rc-resize-observer": "^1.0.0", + "rc-util": "^5.15.0" + } + }, "react": { "version": "18.2.0", "resolved": "https://registry.npmmirror.com/react/-/react-18.2.0.tgz", @@ -25489,11 +27257,48 @@ "resolved": "https://registry.npmmirror.com/react-is/-/react-is-17.0.2.tgz", "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, + "react-redux": { + "version": "8.0.5", + "resolved": "https://registry.npmmirror.com/react-redux/-/react-redux-8.0.5.tgz", + "integrity": "sha512-Q2f6fCKxPFpkXt1qNRZdEDLlScsDWyrgSj0mliK59qU6W5gvBiKkdMEG2lJzhd1rCctf0hb6EtePPLZ2e0m1uw==", + "requires": { + "@babel/runtime": "^7.12.1", + "@types/hoist-non-react-statics": "^3.3.1", + "@types/use-sync-external-store": "^0.0.3", + "hoist-non-react-statics": "^3.3.2", + "react-is": "^18.0.0", + "use-sync-external-store": "^1.0.0" + }, + "dependencies": { + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmmirror.com/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + } + } + }, "react-refresh": { "version": "0.11.0", "resolved": "https://registry.npmmirror.com/react-refresh/-/react-refresh-0.11.0.tgz", "integrity": "sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==" }, + "react-router": { + "version": "6.6.0", + "resolved": "https://registry.npmmirror.com/react-router/-/react-router-6.6.0.tgz", + "integrity": "sha512-+VPfCIaFbkW7BAiB/2oeprxKAt1KLbl+zXZ10CXOYezKWgBmTKyh8XjI53eLqY5kd7uY+V4rh3UW44FclwUU+Q==", + "requires": { + "@remix-run/router": "1.2.0" + } + }, + "react-router-dom": { + "version": "6.6.0", + "resolved": "https://registry.npmmirror.com/react-router-dom/-/react-router-dom-6.6.0.tgz", + "integrity": "sha512-qC4jnvpfCPKVle1mKLD75IvZLcbVJyFMlSn16WY9ZiOed3dgSmqhslCf/u3tmSccWOujkdsT/OwGq12bELmvjg==", + "requires": { + "@remix-run/router": "1.2.0", + "react-router": "6.6.0" + } + }, "react-scripts": { "version": "5.0.1", "resolved": "https://registry.npmmirror.com/react-scripts/-/react-scripts-5.0.1.tgz", @@ -25592,6 +27397,20 @@ "strip-indent": "^3.0.0" } }, + "redux": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/redux/-/redux-4.2.0.tgz", + "integrity": "sha512-oSBmcKKIuIR4ME29/AeNUnl5L+hvBq7OaJWzaptTQJAntaPvxIJqfnjbaEiCzzaIz+XmVILfqAM3Ob0aXLPfjA==", + "requires": { + "@babel/runtime": "^7.9.2" + } + }, + "redux-thunk": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/redux-thunk/-/redux-thunk-2.4.2.tgz", + "integrity": "sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==", + "requires": {} + }, "regenerate": { "version": "1.4.2", "resolved": "https://registry.npmmirror.com/regenerate/-/regenerate-1.4.2.tgz", @@ -25703,6 +27522,16 @@ "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, + "reselect": { + "version": "4.1.7", + "resolved": "https://registry.npmmirror.com/reselect/-/reselect-4.1.7.tgz", + "integrity": "sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==" + }, + "resize-observer-polyfill": { + "version": "1.5.1", + "resolved": "https://registry.npmmirror.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", + "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==" + }, "resolve": { "version": "1.22.1", "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz", @@ -25907,6 +27736,14 @@ "ajv-keywords": "^3.5.2" } }, + "scroll-into-view-if-needed": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.0.3.tgz", + "integrity": "sha512-QoCH0lVw0tbA7Rl6sToH7e1tO3n95Oi6JgBgC8hEpNNZUC91MfasJ/4E1ZdbzGueNDZ+Y7ObfRaelKUgTyPbJA==", + "requires": { + "compute-scroll-into-view": "^2.0.2" + } + }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/select-hose/-/select-hose-2.0.0.tgz", @@ -26069,6 +27906,11 @@ "resolved": "https://registry.npmmirror.com/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", @@ -26236,6 +28078,11 @@ "safe-buffer": "~5.2.0" } }, + "string-convert": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/string-convert/-/string-convert-0.2.1.tgz", + "integrity": "sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==" + }, "string-length": { "version": "4.0.2", "resolved": "https://registry.npmmirror.com/string-length/-/string-length-4.0.2.tgz", @@ -26363,6 +28210,11 @@ "postcss-selector-parser": "^6.0.4" } }, + "stylis": { + "version": "4.1.3", + "resolved": "https://registry.npmmirror.com/stylis/-/stylis-4.1.3.tgz", + "integrity": "sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==" + }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", @@ -26605,6 +28457,11 @@ "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.1.tgz", "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==" }, + "throttle-debounce": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/throttle-debounce/-/throttle-debounce-5.0.0.tgz", + "integrity": "sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg==" + }, "thunky": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/thunky/-/thunky-1.1.0.tgz", @@ -26628,6 +28485,11 @@ "is-number": "^7.0.0" } }, + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + }, "toidentifier": { "version": "1.0.1", "resolved": "https://registry.npmmirror.com/toidentifier/-/toidentifier-1.0.1.tgz", @@ -26839,6 +28701,12 @@ "requires-port": "^1.0.0" } }, + "use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "requires": {} + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", diff --git a/package.json b/package.json index 6fb09a3..66a8812 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "0.1.0", "private": true, "dependencies": { + "@reduxjs/toolkit": "^1.9.1", "@testing-library/jest-dom": "^5.16.5", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", @@ -10,8 +11,12 @@ "@types/node": "^16.18.10", "@types/react": "^18.0.26", "@types/react-dom": "^18.0.9", + "antd": "^5.1.0", + "axios": "^1.2.1", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-redux": "^8.0.5", + "react-router-dom": "^6.6.0", "react-scripts": "5.0.1", "typescript": "^4.9.4", "web-vitals": "^2.1.4" diff --git a/public/index.html b/public/index.html index aa069f2..22ab542 100644 --- a/public/index.html +++ b/public/index.html @@ -1,5 +1,5 @@ - + @@ -24,7 +24,7 @@ work correctly both with client-side routing and a non-root public URL. Learn how to configure a non-root public URL by running `npm run build`. --> - React App + 智能财务报销系统 diff --git a/src/assets/login-bg.png b/src/assets/login-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..aacb32b377102118371bd6afb78deb863e5ceca2 GIT binary patch literal 28489 zcmeEudpy+H|NooP1z}gH6|%c!-F0)xty0@|k&20O?IJ}CxihyevSnpk8)-1B-3Ylv zjO)xG6rmD>!OW2BV1~gAbMZUx8SUr$_&vV={QmxZ&L1A;ea`z_Ua#ltdd_*@KYi-x zCi(B=Aqd)Z?3cr5A!t1og4XnISO=bbW5^Ig(01t9;e#$w=~Dx&h@oG~O+Ng7x6~j% zmd(Sy7Om7!D#Ie5A57hINJZtYoMoWNq4(z<9EL7^>kxs6w<{>iTUqj6iQNDN`yu#h z%OvGM%|o=f58>$X<^A(nN)2Xrv*!qUU?^PZ@{FwuVxQgL{YO2i(>e+6o>al`Ynfsr zLpod!K{f>EIwZ-SC{t`x?=5)}btoF=er~R5IQ#lTZ9_xMW!^q0`5 z2{K^V%nRD2Q}@RX)u*)#6x}V=|6)A0oHr*IwW*A~RWeoWVHb`9CxtCk_UA>g?QeDvoj;V+x^CzBXidwE8hkA#dH) zMQc{ra4qb+#anUgeDpoZ2pr4X-caF@5mQL{BTrP(xOgOlpuTT5qW@(GsK*^m7&EF* z3oe(R7Hgf7BZiAARk!8VmYR1!sMHp3NITEtb47_7X!#_$C^J9!;Tqgg6|pQwCAZ!p zr|cW>+)QuD>Op8hT3O&aACuSUb&QMI7q(8*>;)I#?zgHyYd9zGk|CQnpN;USGgsbh z0*^V@G#UmEjw?`VHeh9pxyX^&y9;f+1LC*?VAHqGy1sIPFjkJ)2AvAfgy5g{WR*XXR zH&$8GpR8X6%YrvZMeMxZlBRLSU^%0<6t^ z4A>O(eVL>G)2sbsr5IL~Qbs#WPtIIbAq~4Wxr>;UfijvNj*h24HaXs5dWuk`3}rro z-!kz&Fj9(xaeHd%c%unav;Q#}>UYV5OxE}S27sA;@%Z50&Quf2Qm(_~$oBXxR|2)0 zzQyh{%~%&ukptFHQMs9)T}d9EqEGVt=0JZ?Yp6+o0juFleePH#WgGMmZj?|n8A+4x z8&d-HMKhl~=%L1hIKa|J91R@avg`JB9r1DxJgU=L(#WgD4k-A-bg2xZyX8E&um$E# zJ#uXYSTcVbJk7&un7FDu2SjaL(2FK3a-eG*Y5512d>!4pgX@(+V<(eBUPEPhTh_qJ z?bNHw+Nhdq{c zpk)}DaGR68b5>xL;Juru=Y1CBYulg-Z9v@$eF=$uDoLtBS%|6!AhmNYE}a2S$}8b7 z4M^KTg6zB%dHllums9}ofr=i%@X?yl7YYp@?zJx*1uZ$jXdb3~H?ffQuG#KhmBTA1 zyL)64mGw9pj3ZU`o1l#umT6x z4L}v66(FL55ddJEBM^(bg1pOP6v9hwr(y{EKo!X%+7Z%t6r! zpvqGpE1Uv?3PB#OTc=V4vpN7*l!sv6NPU`}PCcDY(1)cB6(+&*6>{#_*0!}!5imR8 z)r7ZE+wRaS5M>f&Ok({9&oTaVE697-KKEY$1A*+5I@XewmTPJ@K{ZNXIM=bfOYq}| z9qTGa#j?;r(2A57u%dP@A93xe{ULjoi=`9w*_*Ny><@|5SGeCpz&_*313T80Iu5Xt zOxxyd`4yw5G%i(d*Mz+A@O1Adw4f9ONAenX!qdHaj;)^;DTAZ$08~BEVnq(ImdE&3HN%(D>`)+wxP(B$`YhAcMpvq)xr;Hr2`=FEo~Ql`sG1-<9i^OaPCyXhjNng* z{~$rCOa3;qP{yIl>z9hZy-l z>QKkLX5CAE0h9I7e|>cwlzAVJ$@HC{@ZODck6;nQ?a-&0JC%j3gPte=o_K%TK;I3W zY7)GJ)t(y!0|C~=oE^@O$+`jS12+M|rhE&`70&N_n5tEU*5`p@hM*I>x+a14@l=G~ zADgB@48yZ=?A%G1mTtFeKEW$i*#h|}0Zqx-5zPsx1Mg7IK1Pt8V@`@=sG8$E#JuUXe_yAoj(*7}|kn@>x3d{GM)u&xtEFpvz#LT{vUw(^}!V^3xI6 z?<)eIjuPp9F`^2BJTCl=ETrAo8x7g*F!2yDhi}7HNn78m0@Y%kjsWr?0iRxAQRXS* zOu>hRS1qs{Kopcm)i0IX5Ld#!fr_sHuJ0U47<)BIWINEB4D;e()Vx3HQFN+pqz#!5 zbiY>|pk%@&J}uny8ZD3o1N=$y-dGFe$j%T?KQ319kk4=;ATJ=EnZ9v)!;Hb?7IDOY z%JS*zLtsX@-k;XcQM5tqlZ`fAvKPP%j9}IzoTZKR%tf1NZUjxXrpcp|%7aNjVfY+_ znR#3u>)fATp3JsywQ%}?Z=zXIxmHyuTgqN_&-rmOOJ&47`RlH_eB zk`^)ilD>Jd$x+P=j7bg4owI1?IA-Tz3Y=x6jrv{(j#mZp-AjsrP%|!=#F5|SHW!>( zt@V#&BA*KKGhly*Xx23u?Z4@1clL-jgj)kZntZkk*>98$09x_*#AC7pwyMMxXj;lH zxNb;x*`?JlAppEt`26LvF%SJ}onsgI;bhy4qJ=q5iyW zht!^CFL9V}2=_I?TZe%}MR>7kG+JE8#Bf}5tiuxzyewqq2(%sPsRjL##EDMz@CV9+ zA_8Rbav9ud_~0?Q84M3p=(+O1O#fj}hlcAsh8BRDgDl$?rc0JcBinWYRSE3+7gp`N--&LjPrDQ#P7PS6!ee#T zE~s5&hL+NS9vAr2mko0xjA8TXmU2R-7}zD8FOYpB7tc7e%?S&eg-u(@o{=wPl^W~q z5Np7|9AUd$HH|^EtMZ)j{816&*ucGZDKlRbgvw)R>Z+n`x~bCOOLE2(JaVOH>`y@_NP zp?e;62jtWPnG#s+SL^Q%->>~Z^hziTj9X@Mi#IOrflScTw#|lUXU%Ic**jeGgMniW z)u_Wms2O4!X5?orhb@9ex`sggdwOG9O+#8UQ11G`oU0p@1wBNNckvxVF?ZCxKm#Ye zb(MNFJMSn(2uB40lusRy2W>ECh~v>NSCu>GI<5d6fXV8ri0Vw~v!yPSGw*EQ0#nFC z5!W$QAR_~L!S0;G<56J~$71R>y`pj%V4qQm(&NiPj53&b1_)ucVGVcd>B40|mnaN~ zF`(mpc57^Mw@hXG4`vUV%+m_##2E2{wjm~8C674!s*oNu9B%(O01IY0vmil!f zK9O~rd>CuLmU1Iz#aRcVsv!bP-^nzkB)2%Noo|S^sN?k0Kfw6mmiYeRg?V5U3=;Kg_z8rZerQ*;wP-Q1^Nh$2pOJKmWkCB6;Rx`@3_XJl#pQ9%~C_t1lV5YAc z$W?`-`~T4`3m13L@qd4?&{k^5+Tqs8huanEKI}b~ElbN5_uSXV))aQmo}S{_FEBm* z7l4j%y(UmJyF7d4Ac^5r$Ho-0Hx_=k9_Y2C6D(8K9zexoKp0hjIf(S1^;lPbY^yq~ zc5PEf=bqBQ=zqhb=h+-nxkG=QkuMCt3C3eo&4qWnP+})QSX-e1$gKLyMdVg!Ed4ZC zY=ssA7&056L@6gnjMKRcBCE=iA1l6l2Sgb_QHL1xh^7XY0kC3o(Vrl0N*<=Qh5k=E zY~d*jaLB{h3W$5v$o~BAt}+Dtl4kl9xZAuF0Y(8p1&kh|`Qg?-mA^TB>`sNqO|$`D zuE28C=w`K%20{^CS$R)CeAaO?`69CmyhYf1W0CbL7u~s6wJ5o$`cx5^f+SQ>PVv^w zBwYKo4oO?6ULuVdqQScO+Fd~Z7~KNUIGCM>4kdTvcku&h5%$9twjIY{bIGy_KNF-P zzXsx50ZKv{crv-$E#m6&ZKE$HEo^n*7S`nr5L;H^ju z?ILyi0P3g$>Z}>*s@XL^T{ZKfEi|~%3asAq8V~Rb_I$LB%EC@@(U+^ow#ZW3bcQvp zyVPNe&H^w2KFw#+FZX2^%Ctky%7VHjyVwNpq~&6qZb3^!|>Tw z@~C0;f^+#HtVsJkYV-SnWI~+i@UCfsHDbV>n&_ko;f{dm_V>6{7gr>KWRRm=BcNSB zvJC*e;}l;Z*kNq+NMm<9FtKrzqs$_%GN^V94=OiZrPj}ve#Kv~NgcYZFU(NHG$*T& zKnQ>funC(-rgB>o7Lp`a#(Kw$S4aN0o9}AfV^lL+@WvbX9xPX zBfa!*%z=I>;py@i9;>KM9v}r);Qa^lIEh*8tEF3cIeibG7qHL(yAbsmuy;7u(}EP4 zpuf|3_zSkp#_a;*A|t1cB34X4Xi=eb5Oh~`2!Pz;&p^Dx`C5Eg^r?c(VG$CE%+h%} zpnM~;fghtgpMeAc2qW@y*G1iZh+cPuj%jh%7eJnHD*gl+O87r5bQh7k*ZIst^s2&U zSR1lb=4ByD3a}rlm!4Sf$Z+9vn+X>?BbaE_d^By~H~Rj)`SuNy1^b1(&TWkU z5NQWw9!K9b&-(k+@!8vbsF&@V3qT+kbp&uxHT%@}U%0WCIkX6xKYcG9b{bf%RKGlw z48+(A7Q1ow_}u34(Ym1h;Vj9vfO zVVGbGBgUDgWwGl3pFw82gVQZAlFGqd5m-H zn8OAeRK=VJ1j316w5&If?`?3kF9%<~S$wW*(gD~o(0j&((5-aY`|Iqse*lKCVk8ckqsgbLbH#LFy7wV6r0In1QKd|Oyd0=xf zuc9w9wlUgf_QS#_Kp|YLrJ7jV^DjUc50I$yI+wTX=-wko))#Kd;-&w@4+Wt>>dq_eZ(w{r!eG8DA_o%3AZ57~|^&iSUyXNwnnhoFO zt5oSuIRKY5@m4TGFauUOb8+&vr$k=JlxM$X%@nqAV>-3UVjhByc9@@&6HLO5p4GUy zZUFozf~>8&Zdqh|0hNVr9YdEP&E4~+Q9O7!73#(NaF`l&l&@e@;KJ05U?SzCI;Y#N zmf9-;x=qN3>cLL?O!If3rx`#xn}V>p?e|C_t%fMB0b}#>J)<87{ZUJxO=Pfv&@sS* z3G9>y@G#u&Zl26mu^jX&I43ag&<)s>k?Cpy;y##v4Ffl?z}f;t|BQzo(O8Wl0c}ivdV4jSadu{Ox?o}!lI=#+k;e;s_ zBprnzj75|KJ?3Cs4nuJf<}vQU<~afC4R5YoKo)KNVMlcO+w3KnJgd zb+E|o4gjdl2JEfg;{|n})cuy4jO8evW7VMY3CJQ6Uqao_f$4+S{r;R{jB^?A1GUSC z%`f#m02H=qstoU`OanZngaa7&_T4bo^IINu{eAr{AdeJ>5sl$fAioaC3^;JrFpm5@ zOg2mV6yfl%_G3T7;}4(5gYiL(bF0^%7J&*FQTsAssf^|3`AoloiH^)$25YV`1rp@D zE8VuNB1w?TF{iIYxyKdK%flXaBZ0*$&?y4lPFqsLdzi$uE!1m%-I0!+ z+eDR1asW`0QB18hN}7&fJgIs*34>I;$cDZ}nEk<`jrW)dX8Ar|Ay5XS%K$uyBYM!> z`RZN5Huqg)?mcbuj!7d~Z1IDe-avIyjJ~i)6O-NuAPHvc0S8-8c`jts54bGh57BKH ziSGUiS`SiuqOZZJ44ZTXU<7f|fCt{^Oy*iC=E^bL?si|f;I~)T>4<8CV1YjBr`nb` z0mBXXoCAZWK5xWqUCySxDj~jHZUgy}DN%4^MJSMbs5Ha`0(N;6c&I3M56)OAI@w0( zC=-mSzW!7c+IpN(&<6{u*_u>1l*3uUqo%}@o=0JCaMR;!qbcs%W1psvF9O_{1>6RN zdICJSnqu_Zm}jD!YM5!ZpVl$u+RVSVtf37_~jZ`Uw zQ;Sg0wkD%8U+xzy5lI%C4jyr~R-E!!>2z*>M33`8vI;x3`>+FH>^;o!B-dw(CN zN2QNdhKp7cF`yA=3*1P5Jh2X0naFd+Ug4q|KHB-`B{74}Yk}2(0!P=(xM_z$lFk?} z+gPryElJ0ZX2*VTyA;Qd!sZq1l{AC%$#HtAM1K<^S-cz|9BGMYzrL~}UdZQ<ta zJcsA6%fmu|9NFkGO^psjhev$tZaEg1!4)ma2d=<-iwE8UHlEO3x~12>w~asAT3K_Q z+z$wmxhC{4!^y!g5uYm5%cAa|h5@wXN$;&B61PP?= z^1CL#boCbY0bnxrtfc_*f*_jn=F>@fu|g=<_&AfDYwVI(qyrZI(PaUwh~sgW9PAKC zduZxqlHQ7bYY@VH(2o@__>C_IBG}mjK(dRr@@Av)vm>1WR}$t1n1cOmmWQJqZ2U$N zSS`5=*ZM5lW*h4!zP|(ptpu#PcS?>lQQ?6~ZN`$3i^dt9Hgr@ra)SX-fN<&gR$RZS zE4&svo9j>ik^FS|C!t8d{yU{@$9oA8x6z>qmY3@gSbRV?XmuzvNh$6S$PaYu@#F(~)s}d|e<-8zIgXSzWM~_Fx85-4-tAmQ(hi>2$i@3dd~#U%q<^ z><3BSg{%F(Os9oTEavt8Cb0S3)-a$eR74Xx=BJy{c{2r*I({ptzznd~ihGFUZsNr4 z;fA>8y0|8=D1dd#%Q~NC)Ej&^q!Yt4<*~GKn!PC*oA(TG8!jZE-a+?IVc86#6~_vP z)g$(x9d@zcKp!q(Cjra+4P;r7@sAf@6a zt{~j4Zk16iUhT&##yX6LaQlnFv!_X`%s4MzIAY{6C5xr zJMw#?rU5U%YhHi5#!o<6N;Y86zkbc%R1K2MY1Pig8OA`1!zF5Gy|>pPOk=1v)ZEe! zAU4^;0FT;MTeZ_&kS`DLf`t~=Yd%sD^A;y%5aJwt~(6s0?qM%ZzV6OKj&B||Jn(A%AmlpXX)v6ua7;g z#s8T#L23+JU|<~+DdwsF}y zH(HA23eGa{_4JB3PqpB}8=9+YEIPz*HTsgpc1akkDGS92T&l+pZ(2nFT<7pSjijp( z!^K%37Duy!F)v$I!4Bl`{UPne(NJ`Cq4m;YOAGzod2-1`$*du-yPQ;{z8`mVXxe_o zvaq|2IF9Cy#ec9+#^Oicdw70(%usXuyUKx7ji zSLf8z-FmI}b*zrZ2R>e*39_-joQ8fM+G-4(B*9opT~Rdf9^k@>uJA*Q z0sfOHR-j&!o+we$#c=}&%1zCk! z*tZi>A7X2Zcxu&4HgpiXhI1!%R^efEn-e*D_SaYgPC*_~dHN}_AdQ%W?DN*SU_MrW z$1iu;uj1Nm9h04WtPa_yoVBrGhJYDw_93$KcL@`jGcmP;E4QOrj#ij*>C5vkX^9CNqAhhsz8dj)zkGJ#gn2zn2-247u|yp1+neBO!iO2`z>#lc7Suf zOWvcgh6ZTgHZ?F$E8?ig=cII8wDHQFlUh?;DxmSV@hyWGaw9D;a#@u0m>eGNqQC7y z%E#47?B0OY*{?xpl z0#wC=JnUwX*r0q=zREqbyMQ0) zDo@h_37r=hCf>H%DpeV48uvo~ zH`_9iaEbfV@5X+MVu3wN*mdZ|;Gxn7w8hLIu9(^JvNR_Z*&!i>TV{{0(aDzrWkC|T zM4o*lVMUK)ClUTLj3Ew*xgT%B7GI{3*7 zIlV1!REGSGbYT>B^fJdHt|FR&*NOBjiydq>zJMI$6(tjcPVo>AqNIz!=@nO`k@fkG zg2j`3&4z(;QIEMkc2hD)48aBG$C+m$5r2*XJNGwZNQ}d}f@&cwD8NPYD zj;znYRhwvrO~?~E0u9h)Mg-Q9HYNEZ6B#gDYK29B09ghAz>fmw&JwEKhmEdPU4ET5B#kSS8wC)4x{#=TA9LQ%)6L(n_4lX7+m4&Y=?I<~AWo+wT z#F~Nf=`$QWo5)1k+ZCk`8?FY2kk`A02H36N+SfG9=TEsLyV!F6iZWo8NL%3;nD-=IB5O1@HQ=9|_ew0Q0;afwb$e0QSW@YYWg8PvBNI%2t1F%6ZNATUxEsv_z zhUhfV!_r-a*<&u!12UkRQBBekH>K_MMIig?3#UV$Y>4AAi;7k~R0a*yj%FbhV}?^Y z795TLYAD<^Z#Q4?W>rr?)VXO+WUZG@+k6`_iVpUv`85(JZEt#Xpk#QEN{aT4u5jA%{wKpJ?ym=H*xEV|uL`mS z25~j3^~%J_I zv(LjMc6}7qGo182NXgxIj1{958-^#5lH@7;q7e=pWsnqHM(du~{9cU9zeB1Y_&Oxz z;n!A>_VIrowu1u+OW+)s^!=}My}JFJ1~?i%BOvL}PuFO5wKD)FbGjCmmZ{$CfwM2G0i1jR|M`r91N{g@qMCY$HI5p6uQjpalsU($t>*ZrPM$!lvw!e)`Ch-4x3z*D07)M>jqin?APpn!uttT+zWJ4C zj5rS^tRYq_^Uwdh$%(A|N&wEG*J!W*?ak4`7=?*>4;v?H@)Wmzig6w>HaEVIR{2}MvbMQO&aNq->$-! zasRg*O!Lv{$jUd~fLJ&^;y{qV^e>~?@uXCD+}9@jL)>I?u+Gk} z+C)~`8|O>8@QehxCx{^P48Y;CpUzWlfTeUo>-9rrH-`l|Pg8}pN(kns-D zHNh1$$9_imI{)e0OPHf-?Y!`51cDy@v%*zep>EYlZi^UAFs9BZ+w52!9(UR#j(!D`B?ET8*tdqtIsBbX^ z%O_8NedOdDbUQMrckHZi$4~zb*W^qd{(JF+6dVVF16?(ar0(=+c{bf5woH#Gp8>m| z#Js%8$@thBcT^hZmeDmtB1Hs{*1oW*587lK2HT#-!tGz3t zi=g9msyX|5{}BkM98G`kxY+)qL2?~O|1lm;h2eD9Dxc{&`x{6kp`^$Qegrl>PtIc3 zMxB%lL8S!k(QC*ZFv*&@dG}`ls>N;f=2`W{h zWpK)~*!BPE0uMy&$!<-oh$@RYJaQE_3xD<4|7x8suL>x_36qX(IIvcxWiM-EG2^64^C|M1o zWU08B%u#?%w^5c>E4We@x-@;N2Ns+6%Gubd$?k&sk03k=^i_m}ak z247JEA6$N+qez|%P8Oe|LUs-kh2_)zT!fMHfnbEKHUrLk9T3WnTG^eyN*3gSIA zJ&S8hBY-o^cK^59r8wsK$B=xUyoiZK3ND{dIdXo+3mb{S8kCb{AXLwDvi%(hqZ|GO@E7IHxBGR|{g;JeCnDP{~L#SO+MA$sG*|`D4TftHVgUd-iO8=Dk zI~2KVWvwO|C!?Jxon7Y^C(&Z7b$~JieUM5;l)*6MLF-Xum;jYxqa!72PUv?(z5zP! zCn@E%JuB&-d2?%@g5z+?u#DJzx7zN9Ux3@Z%8PjOlVYXjS45t9HAzz|;Sxf}VfM4& z+dpo-$eUcw9&ccGoTv&4atOYx*-@^3Bjk>5wr>k}TvvRI2Q+6W-fPmfq1>-Zk_`P{&aTc(%XR#dtgwt6AV) zjOt-U;x)hiEY&sN-1YXk4wksu0p-$0%7H6@{VCG-7`X_8Z)wY99A_ti!rhl9F{6hZ`9QqhEl@L8QG-CvwX*+VbjD;IonM+s|(G}c1&R;hM*|D-RV6aF`; zN&3L!k&|##DRt}AoyOhZ;?3Wy&flK7WAs^&Hq?%j!n|S#l|-K#+G|#9gjo+RX|9f} zcxydK2>M8sUEzzoiKY9x8<6FCsSh6>nJpP~+@##uFnqalZxANxbdEiJ41kH$qIwj# zBT^}5X!h*c0!|n0k-D6bdmq*;%HM0=#VZ{@ss`>-N+?UwN*q2L6YVw!!ZFgSR~Y%Z ze7dp6aBV|JRrnmW!xT!AVg_g3GW^M9N-YVvJO)y9_Mg$lPV*F!8o`1;x{&^c0TAr% z;PaghIId=xCV?6*)_^Lq*15^f63iqy#@enWzl=Rd#035B1^^jra$ zkZ6%;r7nIwE?$Zoit3g{1#KPO68nrl$lGwD-#|1j9oVKgL|B3}+csjaFd^jo0u}rG z8;Mn8+)8vPy6>HGW#+z8>Q0R9L0Q~$sr$*eRTdb#Yf-+=Co&7+HTq`3Ex5~ zs{}fFu2A3<^ovJ)cbUEU^nzu1ySB`>+aZ|#AfhXslxGmBY!^5qE)9&}HMXkOgf5wr z@356e-X%cAKS`IhHo`-^h`QOcb{Ef_e6sTSdl`nI)IO-VX~(QzY8^7=g|SN7AWE}T z6{xt$UmM;?7mif=M$1_S&Fb+80l-G{w@3v+R`B-A4pf%|$S{L3irz2t)Vv?JQmEq^vZ41Z_ zox^=;@qZmf+V>Mqf-8t)(sfV<-Zvh6#3uEV{$+8n#SpvWX*GIGFA|M~7-|1$*jVWs zKP`&ESMsfiMy~-gJB~<@2F+YG8GKO9+ZQQlZ}yHgfp7InK!K~S+-KMBxGr>{f7)7; zz6o5Pb^f;|e9l!^+g313O?eNFqDa@s2r^;`OZ&zDPKI-x8!}rSznyMDY;3J6Eb{Um zwCsyvSM=>|OJrXhT_h~cHC~3IOr&g7>8>4qZYdAhd@E(chJc_B+EL(dK>Q6~pO}cx zA;LRT?Ra8jI15~aHA;|Za_H_pi?mqQmp|U)F<;LD6aqcLcqCo_0XL!v%VunltpiTD zN+-MhWu>Lzpe*!n3owb|AEh%Xc3Yg1gTBv2S-=VxluUwj7zk3q{rA8B(%`>1fTiNU zIQTCO{)+>c0{_Lqe`z3r!GCq)e`P@eg#Te1DJ>T8aTi?mr1_EaDWaoWbds@Tw%4hg zyu4EnCq4(Rghve&vfA5;fw2`gCPhve9j2}Hu|I_(r?gl>mw))&Y?IDPZEg{!9l?v3 z4NMLUT?Xe?TBSjLu&Z-cxMeoW%Nv`4<}(97vGzHJMno4DIt@>_Fht2L)3gL~D0Pgm z;__2r_e#iYU?(eyzLPv10lUGHKj2=0f#d9G)2>pJ>e8S3%cAFPn%X~G$KPi#OLXC2 zjcu9oFlo30X_Q2C22mY-aImC^y(LVU;7U!$Ob@g2CwN$4MMT6J$Y(VVQaD%f^tP|| zmE`hhYXL`4Nf*->mMhlIM;#kK(Q4!5sOkNH9I8smH!{IC#UL`*4(!!WC-=V=@ZF~h zX&OV~&vdVa<*5KGDpx z!zZ<>XO>IaLPMfvmQzy~y7&T8t`f18Ulo>@cNx{LcUw7D+gk_RJ@z>$4FP5h8hdli ztkYLS0paT5PC2poWa3sQVRi*7@M&bw5ZEdibD-aKGAkGv`lDl_BCzEhOLw<&V%r_hF2-l0T=Nmw zlcwx?|J3I+^!U`L!-2~^opZwT-7Gxm=t3STM%15KxiC4BowO1%>?Z8i$!Gq&6>UZK zrpD(oW^>6kd~^w&6a1Y?zPEUi-f=9rqdj$C*Qun2`Qk8e`y}b0B;<6fuo)kTZB=Ua zx3|KZ4%isc(uKoRthR~HZFcas#V;e6rdVBNdV=mu5N$cwj*M}87=xcqOSd+`4|w+L zL`M-oc4?gi6+X|B#*L3&2FIPYFqcS%O@sf2zhVlEBj5Vb-wC%tCNqhZ4}uLbCh)-rp9N|_JEtNY-vz$|ARW-J|nuvl~~SbXGOT}-TqEzd4cE^%Jwk* z_2I}1&trQuEYVo*u^}cpK?q28Y?WkHlZ&l#Ij7y!^SdUluw&4qmq_iErdB289A?RM zMD;wLUzq*<4a|AZu6XVe&v!#*k?De+I0enO&8)IhA~s$Zs)5VG+Nly?6$cj;EnF<> z8Th09`Xq76X=1M2Dv1~ky-yX{dYU|8n+*>0reeFy{Z8x~o9vny**lIW@g|-e3Z_m! znd9;p%-x_54mjLhLT~4>iHlcq$53h4L1s@H%X1h_v11Q&Ec3fsyG(rqiydP0 z%X9gd5{t$jCW`zrRD==#>{(6IF}KCN#)$sb{7JbUMVOtRj$)5Id(m!}n#^{Iv>g>w zy_?6YX{u3?-z~}wmKXWySlF+y$wa@_TN=G%whzH!I+QdG&tc3}SSSS?3-vulf9Bo2 zv|#qp>M%X*Lf2!T)|X-At@QPszWTz&Gkj54FMD>7GFdnRt-ABTM;A6xk;1d|^lC zmEY;{#y@O=IN=h7gj;XnWx%_UM!)3#=aFc|>Tt9r-IP@`*htK?A=KZsicZg{q6=e; zOMJ5uo?WkccD?VJ(c-}hOYic2v082&grruA82Wb1zA98C0B zo>AZ8UUjEwEyYxi2jqs?g|fb8`b`~dWX}A}Dq*0r)?jnUcNMRx;A3AaH;{R!|j);xHNf8wn6pVCe<2;&yKvthO-|UW9-%X z=W}LN!FD)*zeLwi?wnxWsPW(y{}VbV2v7FRJTTOZG00A9tsEVhtX&F&A1sI@k=~8qC8G#Ii@c?R;#q ztZO`qymr#xarzv&^dpFrMtiT;A>N6YONU%cXVi8ymo;d*zU6k_nlu-rM02 zW7RlN?lJvP&}kxTaU?b6PPyqmh!QVFZKSzHE%g=QqQ@u1hk)&ecb)(DQC2JTrP=VEZx4AfYPn zLH6Xba~0WwO)3Kvm7Zd$C~cT)6S*MKmRjEj&+=wf$A4gpr^L@LmRJz@ZM-vO!aYe- zpV0ICFL8k@$fx`PW4T(q*ip4^qEZQ)0QQKn($g;$rMlwmVgItpBvzM+xEpc4MkKQL zBTyz>kl_)%9Py`J#z_iE21(@M4e2xFz|M5X1`WN==@~lcAx~((!dr><{|TmzTA;dj zj%*isWo(6Ta#874q}$MvJ*GOG+1WyGyh_^)zMRk~5C|?RGcVp2v&oUk+@+2ym>U;j zFRg)EFG~0Ko1$)p*wj9`#4hvAaJE}#r#CIYV;*+1!dLc`fulB1KYM-u-gxxg_#Yt3 zAJPoYQ3@_t*96XVVW= z=O_F)JodoVz7^q^y>jYUYl)NbMX*y`BlTmyudJ|cLv=yLy;D&} zj}QkR8RZ>r74r$moT=cLADvv(+(yh`pa<#1a%&Q!kmzDR#GjTS#5-rJV1bUQWWBWVe? zfl?GZD5aVN5{kx_+YMcq?1DoLP5N8-9R`T`9YW8eLGj#*d1re?(YE=N)0QhYMpZ0t z5LoWYkd4yH99TPKmx0cwmfL%vJzR%I1;gBxKG}g!?Ug~Sbhh`gU2pV*N>TW3eRY2I zwq?RMi{+U9J#xX{%4iM=LWl-%m`Xz%jGu3zI90)hCv^Ed#;RtCFzCUlEHO=i;UnsRMd{Y z2G*1DmR^Y>qomY8ZxX6f{?1}xM(Bz247))4j_1bn-wCfS`9=OVy`bm=&gh+7eb4Gc zC1S#ThS>IrP^lEf3b*ti-a0p}pyOn#S>ZC%k%b&jQHk0%hA_a1fjl@ zoN{C|wBBl`enI89aJvgKOuK4LT?y#?BYT6%i(TY}Bip<)A6`r!TI6Q(G_3f>k12tX z^X;+_;hy9?9$4wG+;a$I#FnAHb}QGlUQ?P58Kb$L4i2&ex|sR;D@- z;LT9-?+!j1k>C?IiL0+Ka$|@-kp=VC+NZjPm(1_&Sh=rT`*G+z%a89inZgc#i~sa# zw36NT!Mvf|dqV&?!HxsB1f|3hFolrz&fmua)cREbHW1~TY3BL9RScj=b zB6>4B#_~^R2Tj;?%-h~oMF6+7IcFr`$I%Ow+=AlD zz`m$)2G?0YqFtzH*A0H)T8iPaz*h;_v&|tJoPWExtvPyK@b&e!Y%6f+k+L3qSynP! zjCiKtcy+^vLS~TldNP_G1nwwm=V0>Xl>!*rRnJ2g!)_E^up3jc9IFY$-x=6))+5t3{%tt;oK#AU{kw3I zezQRv`x%al`l_UWO{e?F95 zpVPo@76ljViI0f$UTyr#v~dt}G;-m)d1aa~77KWV}DthEg4#KAgRl96n-3 zanGLc9dr%zB=!80yI=WB^Vugq)AvJ+RjDU?rVY3sq7Pquf{gc&={INEi-kWge+qNo z!71qe7;b$HcVW=}PtlPy%}nBBIq>yZDY*&Vo0?sXpRmrocNDVn)IzVb($@^41j^o% zMgOO%E01gP*xE0MD~J?}q9PPqY5@sik+2CBv{eyMWKjb|;6jTu3HxRsQGr;kpjC*n zMXZ3zc2!6Sfv}_+3$m055keM(5Rfep2!w=ihhTr-_jfYy%$((!GiT;J^A*9u(%8dt zF!UnXdUBzl<%8c+u1pi_#<#eNIT3|EaA#p3p@`%swOm=k_4c)Mz*z&>aF0I+1`dp88%q&DDh zxdGGptjqq`)Q8B&8ujz7!G~G!jix4x1)TB@Pr#9~Fg7+8j$Xk!l|~wtb!@PLfqL>i zP~=al>#t3nZlc2)e+NyOjJEep5A3LM__c=~Bj(stU9?^|@aNEsZ36s6c&>S>WYR#H zVWKfL(F)-mKAUU5?(7KcDYYVoRukW0EcWMeV1Tla9M(s!K6~4^L}#h@3N%oPZ9c{O z+5OzBj7HgV_RKXW1H!XimkD~j}N^2%293VA`clFvvBQx zmG=b~fmIH3f&sWZKAT+s%m>sUW-mnSYh+cY)l)B4=7^SUDqbQ5sluGj3-lYs(-NnO z05d#OxNk=vpb+(3o2#ce>a4_Uvaqd{;~}c9Nz#s3AGw@wo3srtzt7-@B6p1R&Qo#C z?+*_;78mCMGAyX}YZbgDLdDS))d8?pW&kbiC8p+5=1?Q%C`vn7BrP4EbZn#W3xZFq zf_>4H4U58Qh}?1wDX5I29zV*vP|R|ihT|56wdFefVxW8@3DGEIj|;0aySZqW3u~)H z8RfVv+`0iu-K8>XN4)gM2%-HZLuQn`)?1vDy_Feq7<|wfo#AWsz1Tz8%%y!UJ5y=$Ia|%of0Y+BkF8Y%*WXuzfJ{{K8e!CrNZ!U6%V; zI~q_Z-~jstKmkWQLhV>X1?uDO(UFG@)ITa3a=8w3#MJh<;|H7mY#YR&D@c})e=|)F zzlm5JZvkPvAKmHda%4g<0DF@y>7?Tlk2gm+6TPF>Wcgdx0X8R3fh6wV=uETB!Igo61^R4I0IFd zEI#_)7`1uZDS^&V^#)oH+QD9nvBU9QPs5Dv>3Y4d)`^Ec!8C*NmN^&>vSV_`QVuHA zh(1A>yrqU;P~ioB+av9*=yb9xsVpTX9kYGOY2&swl=ih4oi9qq&p~o&*R@OdmHK2- zT`XdhoHDMTM?H)SjJYxz_haM-r>gmajSz2b^>xA@VlDW}MfI74qRR{U*9rb9I~cRo zi#^YSpwz$=WA{FzpBY{46*6WN_ArT?4u_hqtl7`Tvz@aQe({dH!j1Jl4<@e#Hd{8y z`~Bu^*}fBi>~v!Fjewk6G0}UJ^;NJeb_|ZF8CCxU)FcO(2GqIn4&p|R@8eM6!#~>c z`QOI2BYTX3-F3-*e^fC7d%~dU@k7^-pt*Xp_F5^n@OJ;@JU{N=K~!7j9<~3cg2g;n zzW>SI1eE?#s9ZKDQVy=_`{2AVk2% z1ro!^M`IZ>+^jE6XswimAw>1dMs)up4r!6O)3=A}o{f=zLXXLNIa*@)TlxIU#>(uJ zrM59gerl3^2c@&Kb1>E(W$~!s@p_1NkADD|gka~}3MbdZBgBNVrHf_FQV>a9ZTXv{ zAy#|+rOUbYMGN^tv_D`Z@Kkxj;`)!ZX_R8!1LYL=^9=r!*BEEPEkZ+9k3_ZXW8MnLlPta1V`X9hG3_y7IGUdrWkYfdGn|EN4Mdd1+Hd0 zrNejN$oKc04VPd~tlx1wMX%sHphOi>6tuX$urLRAjo3s5UFXUvR@=W1*gzbIb(d6a{FbU~?ansKl)U|Ax?EirXEL@~Cc7~A};uLDjL zkx1XWvu3Ff#9wE{}%Cx^X~iIayr-Sie&e5atFnXpeD#U z^zB!kJKw&#T51Yo7KJ_BY0y0^-vD9Zs?N)=qAE0+ih~yt>opqMep{LXEMHM|GMQWs zooQo|gtdP#_}@OU&UlckXo~(ddXpNIx>m6l|EZ6DTpKqY-(jM`>$m4`N*wP>sN|{R z3&JnL3|o5|t!j*o>`SnN|0HAYf+BKf7gazWk&fA%;C38CZRg0P0LOKuBk25a0PyhV z8JZO&z`t&w92r{m=6-Q<}J2Z+q1%k??Fd8l6)NRDXgI)5q60jj5@ zuy5)r!f*x1l}-&1RUfh_(esgZcT?AhIzh3L3#u8ZWH%h6N|@%9|W| z`AN)Pe+v2m@Y4W5Ej?rQ1YLvc7;huSvwQ8{eV>w7QhlB7^c%f#J-*SETm0AwE!50z z>8F0I2>C}DqXw;YwcF$ax9V4Y*rb))L9EYFA3aTnyV_0D|D6s#d+`Ut{0nT+xn%<| zt4p41-P|#MQpvGT;GE_cS4bpM<~vau2AwqR$(kDh z9c@wBBFP1m?sg^UXLPN>wS=^iz}Btnd;a{TDIHDS#d~0+1x*W=f}a%EQM8k2WUBvL z?;}+M_8w}`VbvEJ|6+&DhKWoAP-TAc$x4b}c0;Ie66e^{<0(^y)8UzIIjOchMMzHP zWlr9UsGq^mDUsZQZ-PFkK(1C( zez3NXnJ2u=TU`_v_q2@O))27zI-yFU=6!G;rW!;-(Mi^9=)}lOPWJ#~Fj7z1OPN%} zf}coiVJ$rUL3Q#52(2>cNF!jAhg$s^OE%tvm_8el2F6nFjA^ow+9LK;9EK}<{QEQT z*atMBvfx@x)9i-?<5+I=H3v#E%s7&5v65E6;E(9)Vo;A8ZbMj?P>mK{B`idzMBlX= zTokTVl?XNk*lL*!qeMLm-1<}5nBR#Ho8l0o$*_YE*0;^-ke~9+oxI@F(ZEwStc`y# z%URpcqJXG3(qnD<tLihlhr&3tcyfWQj?mt5H|lm|cEH zsZJeEN>u->nMGLKQyPhucY7!ixI)!Lml1{BVKQg2Ad%|-30H^cESv3oxEAzOrN>2> ziGsV4W-@T3AdsBJvDru?${Lb5tQTd5m@0HSxEz`ymCXD()d~Hes;X?-R>pB6iYcg% z$@}Uy2M{?wP!MsLKmw!KE76&~P~rOzBp#i85sk}#$CpIAhGRtJC=p7uZ!EXGmy^BX)+4G}F8dVNLkDyIWG62! zd*kT4YBg)4*%o|$W&Qb1PDNQ%Y53A7_(z;#0rvo7xxY{%Ds*N29@E8%zutHX5_g;$ zMf5wenbQVJB^x)zkVs+@Q=JH=Hbv8fu4=-;;&1aiMUkTj%x1_@wYzV+{uY&Y%YLqc zA*lP~Dcz??6Iys?P>R`GwYO1CFr!kF;jz6+UN^bj_kwqoE<}i&^;-{3opJIN>9Hed zIhr*8`t?xOiB-@Me-*t*BkAcsfBuLbLB7XKisQaKwYaB|r?(qg+gMEj-o6mFl~~mI};qdByu|zwyJU zHGQoLN*!-ty=t{n+RQ-aA7q_84cQWqn3ID-RM%fhbxOi_N&Z`djn`kj@x2;AChC|d z8mi-_Kvr--Z?>uolh(Bpn&JyT6aqT)8&>IGo`WeGE~{+?XQr#3*L1yBPbuv=&7ZMG z^KVdh*Vd6veNc27fT~?5afcwmC4IfNdAIf zPlG4nki@caq`Fea%b#4$7589{$$ylVx#&Zw;55$Bh>^v_zRQZ~nYJx-btJjuXHEY! zt^Kc73T{}@W$DBCnrGc?-P+#fh`nzw{&qIVk<=Y5LyosA?%w~0p~%;0isr5i4J!?yLyAB zQqjm0cJ(Ooc3RtH@p24Wf?Yljl2kIA^2q{_>FjQO+!VaLs2Ntr?St9L!;&cppPlDA^l$|9{;b)lI#BfC6hd@=Xp=uW+@R(S~ zPfnMmpLEJ``~(Q6%Day2y&82v8Rsa;`1>dY~1jCOF6GcVfOtM?&I9Dkn||Hj?H5 z_Pyar7Kt%ci+p<}(m{>pGxla> zXMf4o6gGiA%{ZtfL7}Jfof``|2@$E7D%#hOW4>udu`uRD1To7hw%tyPYx-A^mMC!! zK%wCc)sPFY=7QT+9Sg|L*#IvNW6-Uqo60f6jrW41Rir#6gnv>4N<5%aMdR7M10JmN zH8E%k6)PN`FhXWbQsWRJ#cuUWkRXSm&YN}k=>ZlzNV1k6bWKp<0Bnh1u8n z@d4c38kVH*0BcyP_p;n|bE;dy7my%I_uEL|i${P&z^foYi3R>) z3$WE(qU2Nm{BQ(_m8&xvVw8EX(*MW@Yn=)!`{6nA=Xf=IL${Qw(fGRf-l`=3Z9Lq{ zV+`tO6a44%%u&H7#zK>3-lugP$Zo)d*0QX*1F$);&G7P*ht2E%CUmK`UCF%bmx>-c m;iVo@QKTl=zS&rT8}-zFZ+`U5X|M@|P9FC-R_Su-+W!DN8(h;&9=m&T+QF&1qn2IR0dm{wsXB2yBZ6_EQjIQS&*gm_0uh5HcoIhzfi#wVc zIa}D-QmI+kn8I+dad7anbMSMpQL(e}bFlMs@B*3y*0(4|)9Obn)jJv8L8DD0C{S{$hmD$&U1;$a4f)qt-tKM=qC%@A=SJ&`1C?89lXE#@na3XOMqmG&I;fvh`j%fnH{{VySJ zqEId#g`VBNdWP+P?4F9JbiB@ne&nm~0gBZL_KB)#UMl&eKL_ zy&q_F(zt!@BSS#=1G!HI%m{XpUKj1K9({vP(TxI<+n0UbsVocjBFkq(#V$h4cQihi zem(~`ygVE)sr}Q$I?CUO3weaxT$a#J&zU8Z^$|W0}#(x@25WS zXHDydGgt4Yd`ZI|$(QI0=j+Bn=rZ?R@>y}_Ls;9w3sNK)usKrZoV;1EyB7@AAkCXn z5ZTB1URN*CHLXN@HrGnJbG&nKe*L&t_&zP0NB^k;Aab9o_*BvO`bFYjbXh#~Y}nH& zZyXTqYdD={g&TECVY*jYAVgd8y@q=Jz(q;>0#6EWE)^_aN6`= zaS?rKk3I?SJ7(%z}S5HVn4NnLnHyu8EkH3@u8S)!>N&;6n ziRb#P)XGwNCfIru-peM*S4l5zVWQsYl%vtE&*~0IY9@^_VM4&)*C6%olquuq;Ywh1 zC%N?NqEY4Rj>)o+QkVFzM-_uRa8HlK9=oe&403@@Q`Y~>&>#Nf42aAoqK*#ch>JNi zR)wU?fEW&1`LgHnnMBS5eSnyk^!4M9xi*EJik4@H3_fP3e5h|@nD58iywZhFdlZk= zqwL?F<=Z~Iy9_qENo30a2EqLo3dql)5IWjocD`FHcim;vh~$TMUI3p;|3&Jf6m9*? z>y@?~c~;GNETfoKIanbz_eim3GuS^XLDcmMDu2Pk=MDJ0ejWduI`W+2MJP`CEX2~L zyfVlQ=PqfPlueJz&eOGJjzaj~1#5jq5Ww{_5li5*_mohfZ8sr)W}O^fT2OYo(y7TIA#I zsJRJbfZ8F{-&u^d^A{=ISzkxlO;Kgy<((Q4wL0X+rSemILE>2&Q-K5jKGI<#~rlpRxM&;aza~ z!THXb2z^4Q$VY#wE9D=!L9*OFmpf;(-b_5ly*_O!DKDX7#LU2~%octN558|tqGVM) z{sy9Imcb1S4$VFO>&S4wALaAqMx2E3#LpE&KR$10FjTEIaiF7Ti*1e~$mq6a_R&3B z1`_-PPHVfv+)_DC!}QF9*xDGs2p^AsPI$95F!=sxXByN}&!o7#{3ao^>^|Exe;WV9 ztc|Ocj~?V*iZ`*iJZq_&bQFc9G*3fVpFYl1`pDbob+PiKFaiP`DkgMI(Y-f%iI;5c z3TV8H#6&&p&RG?z-A+fVh>+1BdtlaV2_bC{^R$8*7o@n7x7UPNT~WGN-x#?SksqjbNgY7C?)-vHItMly9C#;&>GfV85_h9h` zV;*uouW?3Aubr^6>xX++%A5A99;<&(M>e;m{MsbQ^M3gqtGwB^(2nyl^HL$-R_GsJ z4}stvZQZth2e8*Y`T1NcXfnI>{sts0g`}XT!18@VZ_$?S=~&2)(u)r1pXazxUMi#8 z5wJ^*78$(LdpnxY#I<2N-0f;5>GcqrUr@G3P0kM>7OI3u(Nhs_EW9~%a&3*Gn7goy zl;s05;$QOJFdf|##+VJx{L4}T3TT#^Af}24U(Pr)UNh{A+N*@^D}N+T(o*bE5dgTN zpR5G7n_@}7E!xO|kC#Evtf|R=OtD@0mzNz5U3gt=dGbmg?~bs?gpd;g&CRVjUq{;J zZM6h%<7+-Og!NGb&QZ!-z5cq~PeuPU1zcfw&J+%K;TFCA#v%Sja&bNnY2(F{g{#4_ z5bAD@RZ)>$!?q_c=go7|YNIV&=lQ?77TTlZ-$f$NIMP1b>?2R`Y)}3dne?`9#zei& z$Q(UkDx!0Hy|D?ILkJqL;3QO~P0MaQ z#3c!F(OZ;GgFmeaOH29HC%jz-DDL!H(2MH zz_Q}TWXKO-Zb~-UT7qX-hRYNT`RCYICNGYSG_B14;uvyJ$@4~$$KX-0ogB{bt2U z(&i+8OnEN;P z{?*{H)!fu7w&Z0w!=@|T^FV~wt_3kd0WH4WD?r0wT5`{BJ7?vB zVcrTWt!nk^?UyqDyUIe0`Kq_SN?3=++-FS-tdeN{(~t5Qc9_R}M3ZOq!J>PHa|&L% z6Y&ZrQGTo^27%rnIcrY?QvGA`gX*1RZp)(z>X)h={p4wc&yptBh~ zSo&R!@wxe(xZxvmI)d zv4WZjE%E?bgZO^6hM}FM^pGS(uq(ljCpfnHr^ySzQI3x6Om4Tw*2!1Az)vZTq&i&8+qjpnpa(YV*D*_ za`_nX7I^)BvglcE{uD|+u1O1%ev{%W!uO{6k*08;8=AY+3!Qum%uJILZDbo_^PB~K z2aQ{6WwF^k8%;9K=pAmCee)AUQZLI_2-PT_>iR8;FB5MsTl^wkg$*0va z%D+mT8ac$@Ls3c^QpTjp4Z-hXWJg{pd zCv4keN~{A=7s$2745;|>zigr@#DR{~ip;^==Z>JFVw;mrwkdvfVg2S89cG@zQ3zLr z!ZChawLaOqlaar8D-2xT%FJiHGWZvSLm!^Q z(SP3Ol;)U!U*&r_2MgnbFfrla*OVe&vV~1A8FH2gCPFcOcf&{wFPqfR>~+qUNd9T{ zY)~Y_5NWg9Vzb8^>Tk7Siu)l+J`m9LF7GvU(W2f@aF^rI;w0Q6V1lPX}G74myc#*E=1ilsADfNRx$AcWjFpOW9N^NP9Z>L#^O! zDj>cwCH0~kW`MQ0@%?2tor`AFdTg#_>Ov07BB?ihU(Y}8PzvSr<}%ULn*tnl${#iR z<=Qf)k-W=%Nq-izYTxg-MHO4Cim+V5md!?m)#(b@dP@1xUM?6(zog~RYp509%VY|j zjqXs@Gp3J&<~^j7c0luvzl~Iz>rxa{G?IU%i(U5F%47_vk7D0;*f}Xjr)E>;rNX0d zf$FJu1n%G*-em!0a=JRGdH9AYDn4e^XNxN;B; zp>JFK9~r=B8R$N=5L#%{Zr)1)XPa+CHG+C)tWB&5l=PXnv`m%7vcUwByN!yQ>QPT? zU_%xyjZ)tNx}_P&{&boA(}d|+3Wn$^4#LogY>3%@?jO09q3x=#!091xV@VNVyI&)h zT#0}>oTlDSHgW79)_*l6%*8siM%u_Q%VQ-dCY(oocnLdRo+bMpHl3hZ8ne}0WKzxe z?W_w^9ZsdvpSg;?{X?zWD+X3T+dl@_JZT5=EG#VXLa1UTL=1BpC+42l%F%$@ckZ7L z`jsuE5>466L%zRolnA2`|8X48>$GgmT$K)v^cV=S8&CAi>3vw}c{AE)=l;C6dmuZ9 zez6E%2IDv`x5T2+|*R{;(~-JVo{=A<8I30BgE0)a1|l?o+?u4 z<4NoqbnG0F0J6Ttjb1=4B%VI95Eml7tJ(wGCKS`pn~$^-EFq)g(P?VIsJ|?qyXP^j zLP?F1$ovv@%Fue<8%wo;I$D2b-9&o7Yb`L^e#YE9M@54H$m%%ZI^c~>jG$MfkW($) zHoK)My-kIyP+Xz7b3XFBQVezSZi|pv+^CJ)_(~d*HTp(4ORS#;iN)?CgZ`LIF63OP zUa$*7OO5MmuTC1cw^)<-i^#DO#^UAHuuJw`Y>CLW?aZ8qO6;o%ot(#lzX&pZOSE4N zt>Gp(5fK~CcVicPt0~Pw)d>e4q+f@5uX$?~ zpbFS23q_s*x(mA*MWg4$l?)Q*oGQ`pzI^{WftAWUhyM@%zbqYhvL)gWZ4Ufy+O|C& z1g!4za!Ub31Xvwf4?{MZ%T$n75IygB6|CF)eES^|7SE&?cMnixw3%2CA&hSJtbyBO zS=OE+f%Z-UfoTq!SY&?+zdfrj$pq~fDyaW_U4og7_-Tr0V78P^?8Y#*RU}$4DAzid z9~pNLl8Vy$?KvDLb`$pbc)mFuVA*S7JM)g#<)Aj7gWhn1FA{n!mh7D$9>$Oz`Zt{&V3M#myfnP=o-0MIgaQ^3| zqJ4RO0%X|^VhY}-gp7zQ&i%)0ucVMDv(<)eIj?sP>1kwzn>UtK@8dI}FPXp7`8mnck*z4QGZbA>G6>-oNT2azo(xs$lQ#sIxSLa{6WwVPRv@wGRoR)>S8J@Tdn+oPKKfBV0TliMw%HfZx~#>~d`Ed}i|M~g zBl=N%n)9N+7^#QzEQHwWO8!e>ZKFehlXV*JGDe>wKH<%V3O0mMIrWyRg~g#@gU>5f z_hOcEH8>5HGU&U+8@=VcnV+Yo%gQ)@S}&AYhm=Q+Jv_Io>8bQ8(~;c?KX9#!X!mx_ zwr9w@#0kZ-BfM?oc2)pF6&Zlf9=B1x&O2w>^T}INjnI>vI}R z3Z6Bk>3BT?rbYFe1_%wi*v2_()~unj)~rQVdYX;vIbUBi4R`9mK`@ayJ&bxUayIBQ z?TW8_&5-U;#%QajpDD$89imc!)UM2mk?R4>0`44K)FKsac~iCpv}Wn7ZGNcNF)dP^B6C*^##`R^&O)S+8CuM-MbO2{4#q>kxw^KwjM zV+v856GJ$%B)m&zs2@oClHo?FOt#m?M6xM{*I|#Y*nuMNIFJ27{dc6@noP00Ec*em zKPFWwgv#1A=vYE$wd{(2i0cZ1FqPgoC|P#bAgFn}U^e}0cfO%Pl}cPq^ASGor}|`P z54X1+Dm{)av|IX0-_yHSm<1n*%2jJDX_&iDEZrM&XmgT|t~uL+e%gF;N!wE>zpL(` zupXOl1XBIiV|~MZmbYdmJn@tp{h2j0n(?T{m)IkLD!I_CnT6dUwG5bJGXb%2NR4vX zcA8o-c*{~b8;QnKeIoR)cVqiT`Yd7H?9uv0+@^3s-Om79=G(66w{){h_e8_bf&r`! zdTx1!->yuf+BbP;(%3^M-#Qp5c02vvUJu*YmtNdtCB?nL9 zD0N!v#+1ELun%ii&362THpTls>V>bLRoyD5s%BvssQ29n!Hncph&8{C#Ef-Vp>q?l z!*n1+Yl>@OU=+$v+50EX=~dS*qV`9O$q)<1Rz|$SL6dYG9SD z>WU~@e1Pyf(usoOGQP-CL=W3WP&$pGF575Rj6^?E&WgzerZP4f@4-WwpDDi+7 z1UE8$Xyv!2?uTqXilQA0cP2qdspz)LozBzkR`_m706gT+P1k9Vh|Z%DQ4l0o zrT(qTdMXTE3`{o!N7|32>H&weFGO)fJG!yE`^3>U0PJ0<)+6eQNNM(*dcF4*S6|jX zK*x1$KT&ryuEg)TKaBq5?8@yb;yA2(2`>nY^*v%e)X-`ZQQ(p5I!tF*WX@f_SHc zb+mX)@k+CBX#>lSM<_aLD35zUZ${>T=UnM;PfNT?Hglt{sp|IFW2~E)^{Znr1#v!F111o5R5d=l3VK{4RV4^Cr_czELh+@#lC9|<*)S1 z{KB>kSe;4eo_P5pqq^u!#KN@CM+Lk<9^ZJ$@wx1?>Og{I96Xi_qFQUUs+B*`wCJVX zWGCGh;;48(1Zw3blzBx&!bGlm@f%+B?_WD_A9y->R{BJGwY50-lJ#gzSpuDC&4-oK zmZZb-?`v*FLcc!D0)B|^@Viv$2D5A^rZTNMGkbo9CA?_jXx*A7<52CKwozM|ijSpr1M$0hxDsXI*i#jGZpa&2Bg z5P!GkrE#>JpnF3?77J{w>n1mw1Biysni_cull7mB2THut=SKWaKc(T>TI8R81F<>N zWXwJjpKvFmqs;p<{u5P|6fd@MP5KF!5^jZ$N4kH$LhEO)LF{VG*UT^dVrUhoMMHlY zLC#9x%K;}?exxJy;UoTI^W_w^NV{g4cXeu z0=ZR;=06?3>}|)t$E)ms?b{YF$|Ska(4*p=ibj4=;olFxcMX3i(11iFD&mpI;|L}) zS92HM%P70q`5lTLAEUs(NJ=!shcMF&3o2QYR?iifP0{%Q4%`7g@O?mJ`fWhyo=~u zHnE$^F04FIuSmS8kW`?gt;;%PopJlu0f&S&9<0xVso8t?do|#{^6}C?=<3OtHWbr z`;+Qd9oXe+j<#fk_G5F{ZDYeoW?H-FHJ=8-KnFl4jWf{`IwzI!Uw?E+WM($9r^$BA zGrS_%rhun0-2XLcvS)F1!nB<(RF-KB@`8Vn`v$7vQ)dg(SzFDK(xVf@XQ55+5+88H zL}DS(;Ll&Nfxm+mB_qOHr-4Po#34IlxqY5=C^DVVhwt+y${N0S?bauUf9hT7x(R?q zAgv)`_dKIBH!lD9ZXTaYup$*v-_hRjE9X||vWKJ7N4RCWZNQUL_WoD4@K5q?do!;O zSZ4>~_xW`UQW!vymeW63jE;LsNIC5$lA&9b)zy>J=|HiQoEg=?R(`qnEtwG7zHYG}EU~yFToJzhi6%(tw2}$@mY1nrdgkS}u zn|uajgS@=F96bz+E5BC>_Fhwboe_L4U}teKANa(bF>%S+jFSfCqxT~ zhHZjU^`v#azSD< z#x_6%EIR7pr+@R@w40NMe#%mbxWnd&rQcrwcu+0R0}Zj@2@5R79ahc#dLe6L+0mV> zOU_>4C<}ms7ME%oloZe%6>pVaPd@|?j;cE86Ku2PxXa^&2WHAED*teyoTABzllr?k za`23_71T1W7v7HSbSQyhysR>>keArRr}<2jsZphI{Ec^tVG%T&Fh_T3Zxp0qtp?IJI(f2TKyH|&4Y#D9WhYdQM${%At+8h`0jrA}&i#bW@?MV2rmhTFE^9|E$TLfdQ z4Gi$75P=Tu`2^rEtaIouxOvhy;DCgjXAW^S)S}Xw1^i}T1Si$x=wzgEg4RORqTMe9 z_4#WoV&R(vckeklh$i}cT!$?D(m|`#r?*Npi`XHfG~+d8=Gl}UgIPyU&-lJ|y+gL_ z0k*guNb9p;K0*v8zUoTCpqI{1b%rITTYl&3d}(7Pu=7E)?R$MoRVe1cA2xLN!xtYkYaVuwydOxtW+>NH^jIMb8?5!;Ifp{AdJi$@DvSL3F zO2}_(c%Xln0bNcSfW8v3-#Fgnr)o_>NoR_EvAY7!Md#M49b`==1UO@ji&#D5Nort2UiAM+B!2O;FSg@2osF?{{8NGK_U8 zLfizRj)ulhRI7aE6rCeqsa}v+HE&KzCWOSZwL zhL!u;8mg~Kjjt+!`+N!6;QKN-=ets3a^!L@nLueg0--Yx94G&16;Lrh9oMHUHc}aX zGmJO{S)3wXk4kA*K{io=%dMU69h@`@#_>#(Pab2h&new$3CX>kxY>UBtcEay`>_^z z*Ki`zY*Xeg*EU)?(@CgFT$e-?6p#9wHh=wD6kQC?7&)yy3q&-OgUgxx`6kpXTtWkX zZc5lKOHMrh+tCd)f5LCzWIB+ZE{Shf!6LZJ(qVVr&c_RjQdV{4RD?E~Im%&kE%b2NuTlIjRhl{yBpmk7vDSPxB*5b)n&-ByfA?~^B z)zHmDWpc90$1+ubGN*9n69l1sD`VE{;4sd~<#f=W7S$<++U*;=b~$w>;?ENi(mq9y zTba0!LL=;b46Yg2q^}LIwr%Zzxp`2IVG$z zO_Wa#j>z(_JdYjt9XNtZ)51`l54FN1M9O6Kf}@EHs>m@TCLQlqlyCp&)0zJs^MF(y zpmZtlG(Ns5VX>5i+*nHC!&iUMH-C~T8Rkbzq#rVkT}=vn#y67i$Y3t6g*lLMkrRCR zY$mp3-=OoioJ$w`$nKEI2ph;8b9xzccg^9oitB5s9g;Q%J?L2Bc71u!w{7xtj2;n* zzfro9P!N1orP`cNwV+4^tInyZx4|pOH9~k*e>Fz*;8RDI2aH;`o|}2Yt8@Pb#9}kH zn}rZeej`3X5U#dMrM-XMZzRPMLUTuM0!H_%oP~-+SJ1gQ)KxF!FD_)6`ieHo9nqDOU+y zs>D|rnbyPJ*1V=TjvyR3H@iyDdAbO|Jx}Y}Ft0e*ehb94pTovTFpysA+ol0uul&KZ z0%#;%Nf-%3iT0hCf`B%CK4;l{?M&=sXp03}V zF?8xPR@IpS1pSxK$0E2yz^xbb4_jctVIkhphitT2Z!($%%2n%$hc0@J%YyfzG2g6l z>sVS}FJ^`uov8BNHc27vxaxJ5yEGSJle&dzq^{xEYZI=8quX`1iD+kE>gf z2UTQ7E09-wg`ObE)}C(x#y_5xWr+5@f8b?(tA5g1;`Tmv<3lo>mXnyV+pvS1c`Ct8 z#4!QJYUL;m%F|xvWVP$>3UMn!Qead%HHGhG28eVTm6$rv_ovV?my#bO|s#Om1DVA~b<#`o0zqMoX4q49A zYv$`~D-O7BJtLymL}dT^uD@CX##_obuPgn2UfvG(Jl%9F>~!Hi@N$(Ft_vl2c{NLY zOhBz4SnLre5Vbz8P>Q4P4u0o#zw?Hq*a^__NxpDy3W!^t5BYQQHXbpd-K@Uimyg4_1n!ZyF2N(8%`aGF1tr1l#|QEV?B!t zH5w@+k-jVoL7c&R0kf6AeRf+Apa*Kki?*ujrC>FMIy*T<8THLxh0IgUeYB?IckgD2 zfzqwpcy7StE0UKx< zI7E4we7e1j$#okM+eK7Q#?iZnhnQTt$P0~V7o_~2?%Lw9ds=V})`W)U&ohb4q*!QZ zI+kH{tsj|B|AalTfz@|%rz_Ftb5Epbm929ftChdFqIIkNZI?aBy1n}S7YX`)#$I}M zaZp(@L~lmf=?DQsw$a{7fDX4xCht}lRf`UgX#Y-<*(LZJ6rBHV>Vo;-K5*YU91Ln# z%G^4*oW13)kUf#rn?y}V(61N(XxV@Z=DnN`4X?N znK&XbnJ%DvkAF+ozYTsfLL`}+kVa<-LSkwhRzTj_j`sz%MV{deU~zlh`DY0=xt z0Va1*7B^$BEQ)<#ZQyWJ;l zFYAZkZJ`#*96~@7wckb!4B^$lrS4AbROFoA8VJ9;C4f&Y5#Hi+oAh+vMt9*rTwne| zw(npTH(f_Uou|*{unwQuUoK@Bh|T_WxGcd+-gID3EWAmgc~?3iv!`|8z}K~&9((<- zZwMDqhM}1(k2s=u{J_m`z3qS0roGk4uEZCK&*JT_{1k9by7!nMTzeR`BR|;ssdzE~ zC;LFlo-{$>re{P^RWUjanY}-hvQm(*(wQZJB(H!0Qy}?|#)@2R9i9Fa$Kl*r`7c)! zVbZNHC)B9F7-FG(CS05Ppva$L)#{|KAhysP}dL;COOf~|ai*+Yp(mTpmw<^+r zlwVG(Le%$>&E5CM1tl$4|21G7g1_XbnsZ07=ID6 z`h0)1Uu+u#TR#y!{0VI;q)V8FfwyGql4MvJ>0y#68~XD`8sBLDb8{(;sM}?6Dl-gk z9XqIu>{=0E+BbgkS8-{eXZ`oS`p-J3A`+Fp)JBW*vERjS6cOVeQ)$p7vn7CdKfg~A zXC(^dP4v6QGP=BTcY2{}@p=$FX zDR6pl`%3J(r&h60fA=kJnU##MYE=r_lGefXm#qdAUT_6DUE(Z^rT~fE->yhO*x}Dv zOA69ka#r$lW=|D5=XVfJ$V>7oUFN5|qh_Z;t4gC!6;$0EOeIlua+XRue7y1;{_3l4r+Ay> zyK>w_KE-_@vZ%8cb#1K^cq$g?kO^w6I^hw(*`l8+gXr(`G|aj;pVkH0 zLBVg*WMg6W*{CbWl=H4D@V8Il$}N0B3W49JL#>_D{-QCz=H>w^WR@fr*_p z|6;&|DP%f-`nC+Aa@V~lUwt3QQw5C05 z%T>HmFLPVdSb?6wz=Isn%QW@fi8Zn}%XejYk@qrl@M~m+>~D(tC~Ags@UrG0)_3S| z*InZv@Ei)|3!&D4BM^*x>3Bz#W21Al746dx;*u26M@C`DLGOUpvsecL{39rxD<-(t zB96NxUkI6mlN4-qmSqTSb~A1E8h4tf^`~Zg-kl?udD7?DJ?Sglx(7=yN%g+>#HTh_ z;18DeX4ChAZMj{R2aF>@9h~^hI7|BIrsZy1ibY5oR3a>@Iqur+cbMuErH46!1IVvB z@0rDQF}z~Of9zfGp}H3G;0L@}^Uo5gu1xW+ZyV$zK!R&w*tPDXRPF!cmegy7J_aG> zp-puL!Gl>L)hlsVsHjDFv9P{rq$(z8MvKrcswG&%`N%IkfQA*wiPMh zN!->&<(APMu*A3x+f}P-vObzWLlyCyYoEUJ!FW{vQB1IpkKWM%jpuK=gO$W{%^hXZ zxhdDg%RB$!^ZY_^?qTg){TAai8q})pG3k)V^i)qACtcFW4PKBc(Yxhn6W;6cPHLyjZbcDupY+?En6G%$u}3T`CDS9W)_P6YyP_ulFF%Z4 zh9lX9^`1RO2Seo1MWOPtn^Gq(iW8XnQ=z;ByJs%7u-iHgj#l=*kLlil!eq@EwRJpO zuOkR)@<-$paN0lGJ)C`%?Ct!NLhajH?i5xunYV+3Fs4+AHDdQdz;Bm4W*u(B6otjX zO;_++VKj1u0!)-S8&g^X&Yroi(H6bX)RrsvuHn6IBeTy>7BR-NgC*xhGN_c>i`PND zWipJ+%gIj^F4EYFdO?w*&ugh+u}r&`%lT4&?{4>x&Ql>4*$@J4f6Vtf{HUw{{D?^xH^2xam`*s!> zsaneB)5Pg;mV#I6nZp`oI6}RAx0P@=8*%&NWnP+HNPl5BF|w#$U6vR+(?d_I@ef8P zz-ZQ+G?tjM0S8^qb@~_PiM;Gukk3*=JB@Vg5VW2!- zVhG8UvAf~J8rw**)_xBChmA!K9zYfhV{9Osb?D0))TZ^KCHuThq)PVc?VsO2hH~2X zI9-zTjRZnRen~fLX$Q-dV!!HODiP;5<<-scX}u%zT3f?q8{+%v)$VjQI5zvHXHnfz zA8qj!33>d>nd@QEpPyA5T*>+E4u*P45gE$iNQw()v+ z>FlSobgG-cr=_L0T}FDJ0Tml6Ig>>SDS3)`zKR63w$^sZFG|v6+;mdhj;3I~Eu8Gf ziD?G;Qoj8p%Z$^F&{$_=)KnXdnO}q1Ui|P zj|@+@pZXP!$hWuPo>Nx*kjdr9S4-m#d#em1O`ulNFGl^mwfx?8mv6Rxc>eM=^FA z9_8D(HV9vUkwBzso!Z&1>s5-~S}tZ3>i4*!iLT(@Z2=aepRyA+Zseyr*QOtL(Z1|> zMHd(!?3JQZ)}1}C`jSJ8pAZl8vpd}a1&-&CmhaRgTqyg>l|Q#!QrIb0V@@X0r=tC7 zh{T-X3z%mg6X}_blmzu2Ie*M0K2k2Y{m!C5z#$`DiFKuIo_I%p-#2?XS=Z(oE~1=p z^+{<*MFl;Q??cI{B19M!ut-yzQvK9DZMD5H+)~PMw{+4^_L@9_CyXvg?FA-_&-t~U zQhjIi0|^&&e(T3%9x}L`9g3*@n($n@C=2Ph=$kDo^>XSE3O+5WVX5cu4`uiUtBIad zklk|8syj`_rwk+jEEjRP7M7sf)&e}tPpQf`w#BRWM?|KR1E4VLvq|$*`%!VB<^4|C zL^gMMVcGblm0i}<<$)sjNxVUo z(;$b;J3iWWxh=u`jBi=X%c0U;e^DDZP^WIjj^=jxW4%Gv@ld+nIkAkzS) zrs7)EKx1Chtg)59w*v%-!SPd{@%&XHXFU5~GaT#s+mXOO)&8pI-!sry)Gs`qwZcrf zrQL~6IN&6FAjzFw-b6neeSCLeww|ArgcF#rpP?OPlfu8`D$1mu>b#Mus!CQ_t!1B) z7006w-a}O5G=Y*_>~U+ESGak?Rm>+6`Gp5hvoz#gG+7s*`6Zigt_-++kSnC_ZB#J z0=A086X7#++Ius|%M18CuXJ5F`OfvAtbt-@c6!>x}%_vSv7ZkDJrGonF(ZA3POa ztn-`t#^2J^6Dv+OwPI{D0?zQSZfCTvx>5bKO7!SfYC;|XY+0vPj4aPW z40_*4d%H3GB*D53^nX7=mBaJ9IZdNxjXw+LomI?zeE+MpoTA7%{q&Z%s&CMn{wM9P*#Xq1z>w^0Z6 zWC=-S62t^)$OBGVPhpRRSr1mQ-*$w%)YrEgiL-A~Oj)l-A>{laWYCKw4a)#Y(bEg**idGVt^TGM6l&mw< z%2NID)4iN0uKQfi?kf*Tl?7OE6+Z{Wia#Q)SN5+g>9a9p(OaUI^9~pj4t+m3@taxF z^hstu0uCF0!=^)%aM=OP`2;cVuO4!S_{lZoitrW|QF1#3+gzq~Z<(Z1)4wnqf`Cg!R- zNfS%c0tna&YE_&pM)3Zi@R2;%Z%=3S`>L>tq7MAMRfxU{y*ij@P@wH-0&%~SlCoy3 z^<|-3*!0O0M2(!}9@RBy{5mAf&1Q?51|RD>Il(q-B+vm z_aAm0Cu+w|vcg6!4IL9=dv?UjTN(n&zMrBYU%4k>r=s(A9#38_?cZxQ-LA9>&*`mx zUgEA*UZQA9p%S9JD_Q3V7#l@dUh^LV2&wK4{>J(0J{xq=*z@Q;lbc%eb)~WW6h(3& z0?7{P4?^0X$yAK+sTB;xaV-AtvYS=GeT~uHqldvj_mud(T`w|>&Zb+sw!wD3B3Zi< zckO&H_aUO?B2~0LM}nS4Bz0TM81v`rM+Pb+*?l1)WBNN62pNu%#_sU^_;!ZA{iMR; z_brc3Gxn;zut>VZqqMQq6mET~sZgcE;p1avFCQPNq>mOwj=xR01J(0{S6^q`pWQyWMdmmL1xVoW@zwb*=l5;H!JFW3TWiH`Kna}i z`--kYbnlh*T8};$AyiUZy8uH}Pqq&y&Y!zQ3`6T|EVlgC?nhUT*0~HXOBB4LW=n>Z zqC9MsGP>c(VltC_Z}E_(^PH@w*S1z&>Pd!$$Sb=Zxrsvl=mm`Rp`CE}x5EL2_`ObS zJ3&b4bS+XGz7Qt!Ox4n)&mbsb+K0nyUzhyy(B^I$vxeDxXx9h3eo%upnHO`I2Gmkp|PB? zFdRlJP|&fz=5$_LS3^CD=DtV?sXhr5#$8@hjV{wqDx))AoTU}tyQh(nWX2kE=%$BB zbRD7I^V~CX_{yn`$zzfy(is>SbJVJQAd*dH=UU|0r~Jq8>44jwhOv3a#=+M7`D7&w zD)h0&n(u=QA)Hu=P7>@tN7TJvV<2!S2b`Xk`qHJ9l2h(Z0#{uB-G}M9%A`pjB)bQx|QVqJYV1G$M#4Cd8D1!ZX_tnsj5 z6fPM}klifAwcz!g|N532G-tOldqa16aMUTsV?qQ6vo3E*B>V16X!CV8obw^6V=au| zj0ZWUzc7YFv5y*rC%@%oD4n*jG*2GfuNb$tUYWF#I;#bpGx^JY02*j_veLNa?ED`* z>-K;1tcaWanK_x2#P_QDfZA5U#EV-~3$xE8Hh1aeEtRLqMd?_w%#Z_#h76oP94!iV zRg<#6&(dy|;ja9978=X$2AJ$k1@A#L>~uR3D(Kd2_#-)N#Q7DYrc2i6YihEBT@4dT z@E&*TGMnp3b)cjWyKkUW)7NVUVVbm*6+W`T>X5| zMEU10AL=Grk%{KGUtSy=$cTvhrmWVhSyN$cfx9?zG=*BV0wZ7`7e@oq)EOr_8?UQl z$g6X)z??hV*>l&KVP0m3r}eAQG~aIDF1Mh3QKmxwdQV7b6QAHolR>Lf~_Qc5gAa)huQOu{*4& zP~xf7sw{6=SFutN?HL4=q|{MjgZ(_6URxd2=Sa&?6p9Q*Qqd?{(@HewLx2Iq&xbhe zl0)oww}Y2|7({V?_grRKw+aY(+kgSvkckYAnXU~rL_mGgLkz^0JZSoo+2+_hpXVVb zXklrW<TEtM{;BE&he5m%*SRuKtl1^B-o(Y!v0s#_{9R&tc14_@TT+#_o}szP^OM zMkJf?OQZQEE=v!rju-{(jz%h!6SR6N^3FXiKXg(;n&G%1iC|qfq|Bi6(AeUoANx*2 z*FBGB?;Nd(_>JZ$pzI4P#DkxfhF%kyPZlU`>U??O3BTNEYr1tkGwpUo)5x|kSw+@| zfi{}nZTY#jgOaf2> z=;AlwR}Rf3ed)z7cH3GUAHjW30MwG$NFp*gW`ht(vs-&qqTFfAQ$+VM$S=qo(0%QL zdXBDGd+Rk%O&|-E;DQcW+45O-RR8A8d|beIF99`71@T)Lv-7*4HuJ#$PG{<;kH=j7 zb=6vR3PmWbzP2~a*C0wUE-So50j2XH=0;1z?G(;OoTsFLg0C6&ED*CqsErV=P#p6`c+EO7pY)V!Q_bj7qoZPauKZa z>yLY1ue{O~^O_Hd(`!>6hf~pnj=uc%ZtMHAg93W^0Rt2tnuBDu&3!O ziB2k)4n!oF`V29+6^yh!X9J-&LH(7RMRJiA#+Y05x=V`V@-P@OKY2|C(25VD^{ofo zgY<*SoBLU;?={`09+HjioLWB3p96F3JZk;)zJ3YV*vKZ2AeG9;w)L1Kg_Xuti3)AV znruamPZXbOXhMd!i&(`*o(oDx2S@U(4J7kk!6X!0{pvokwYjp3-fuab|GV+ECGsAc zW=~<4aDD1NIsf|%nVwV5!l_j#Lzw)oXT}!+x0OU6US*N~5gcp-dv!baZ7}mUNn(_1 zH-1tt=lKaaz9osVi?)ZgwOof>%DJtVRR)`*N6pevdZt)f-%oFYy@T&xSfg&G!Z`NA zk>-?lBqtIRt^^g1x7&i3MNHsm`0|R%Vo>G)PIoh-cKSJqV(wc_w&P1YUO`))y0d&A z2LD6i?H71Y(s`EcuRnje~?#R791(o$J&j% zqm|rs{Z@6**qEbea$(GTNXe5e?og_{J)icnt4+~&jM=im@i@G(BZb*MK<*SZ@^X@_ zFf&eR@w7r(5QHoDuGG$O~aqQ+fnAn_zD~23|ELmz}{hz`AWQVIh15ykJ^yh^t(NdMCi+RY8Vx>U-sfY@l<+A zxEo%#P5cvoU%f4?$+1A`KZd-T-0!@7cL{Fgp65QX3vWeq5#kj(-ge6DjM%ktwc)W| zTkcDkJho6gA3>TclK@PJYU)i#;~x?HAewc#3G??BI5@?EsFDA4|A{thk(>$Etun*z z)eHCazu#6;Yr%~{VwdT%Gw;?sdeK^iAsgHilltork1WwL{~6A$zF?bHY~Yd&|E#XX zDZ#`+O@oyOO=(e+@mxr!$x5u}+I3lTAtH?eauI+L}TDuC2HM zET)oId{_pnuzMF+-sH{AZy=68e!P&L`&#`dlT>SLxOv^!&ms&$vo>7aM~%4rlW^hq zO>yD+^u%rXlbI%aPRHLIY-Quyx|d_9QtvVi9mM4p%c5peijdBZy135kwl|?r@0i2G zVFFa3-nk*dkk@eA8|pU=nL$=fcf{pKrW6Qb>eSP(T+o0_**C6~p1tAI$vh*A240s~ zlz6>Wyj9O|9qiYn4R6~;^%M_u$|F@hmbgx{ry=XBxsCHaW?y0{-{wk=Aue2$Ctm&U ze7HL{vUslwNQvfZlx2jJw9B0I7EcUAGKu7r{yn>~O z+Oq>!qtnm?0H>hB31cG_6iJwEn029(l_>DL z<95;8#BUUiyEIJvZRDp5Qmo`8gz@0bmjT?t=Q+i|>VAA47{t;{5K?^qAG4<&gJ2fz`IS4FRHs% z@z3j@Kv0k~Jp4{;^x=s!*2|3RL#64Q=Adihgr${-ymt?fokm zy5PX1MR>J-mU~h2F-Al@$Z;*}Be~1ewU<}X7z$H5Eq(->fQkriaV!~-<)j@%Pu_ww zm{%7YP0BAY+TnaEE&cC)UIExg-_xn96J(;VS2w*%iTHjHqUv~Hcg>dL&5txduThI^ zH!0Y}6ZorWE$Sb+{?q;hOY@8Fqr=IpTki~_;m#WI3^lJtt6U9BYC}}lk^O8$VdwjC z2r0k;&!An+zW6aU_cfe$QS59pl%1xoo=;Z$Le^Nt<>auDzHhQaQB-dM->dM6cHx3K zBEb)CU%mDJ(vJxRp!yY zQ|P%Jujt(~fPvd;LkClpOSbOY=M3|oY<>N-(;fAFZB(Qp?Pw?!GS>>zdEYPQwTd1s zEWQI{=r_fS5+JUc&Qsaa{=!JitiZOyu*rqw0U0TOKw#9(GUDv%(F&;`gW|YUNl^yL zHAK?0gjSQ#F~$PWit`{D=_k*~e#0lYW@oiqm#l;)MX*K5SIuJ+NGaF!T7^Un zS_Frb94U982B+gheUWQ`j-!OlCuU$y0QQT7i2c7hoogm_Mwz3idi|#s8CYU`zDKnD z#g8|W8#IfJBs@Ek+{()H@xjI(Vh_FhtZ;8Sr0crGOoE!(oEsiBuod^V64jMK(?>DKq3iu!6I>Wy5hm6 z-}rk?5$LPgzHS z*|?w~VV1`WgW@A8gNk<+d$fhQ9oBH+C=2h>D(rINced!?w4A*WT##)ZLKBk`=_;B| zJkT@&R#|pYkbNCZ6_Hv()1FY*Ku+qR73Ti6S!)-%pS##6XYBb3De}Xji{Hw(0MYSV z^qq#!ObV;b$?#I6Q-q6!a+^E|>Nws!cjS}8WHM|1B<2i?n#Es;Qr^Pi<%v4@xLb{Rz>Z)(At z6=JW$beg^IWW@RW!lwp@9AP&yg4OWMmO4?>fTd(5dN9lL2AKg{&J0{H04|&SV^x(D zR5eM<-2x^Hc@3)q0iDy-*1||!q}jWrVv-8WXx|34d2&FEy5TK#MuR`O<5UNQXSh4ZXY<*__s_t~7Glj+*A zj=tU7k4Iq`Jf_?s6O;kyN^WtOo0n8akK(9U;Rj5P)k*u}2ImOkmPj}hyJdOZSUlfS<)h1?4R>gi^!-g|h9n-Xy!iy19wWZ>iyLHrQ`)<01FSq7 zx;-p|`}a;*cK3(Rdp%q>_SrdmXF^#CcxK`vai>;cZUWULDbnltoBP1|Zt3=#3lHK_<9=*na+)oXo~qS!oVXs_&kL)soqCudAl#Fc zG#?p6wO*SXWt-DqktCXHI)&KPJ7Sw@_Lf}G)PD&g9FhSSLLs4ojz`e~f|on??(6B` zue&3rju(aghf{3h&Z(7-!;GqT=nY zS_u;GS`Ixtx{r~wO}{vL4QOig#hT*gSE_t!9Ll>wJe;Q_aBqFbU0Lq^+!@_;iw2#w zm6K&aYj;*l$rZmkQ$^Cflo13UHx&r?>Y1^r1I6sZDU zH$!~&^a0H%HIMQ3?srq&HMe#4z*Yvu9f}8Q$IhyZO=?~3Yn8fgn~=~P3=ylgY1uK< zSJ?i{yEO!OCpL)P znnfGf^8M>aRMk|-U=U-PY>>I=JC@kPaAUvY-)s9Yz_`I&h&c7U;|6=`SkRlT;b zV&d(>gpp$;jr{yq`(;pA#q` z2!=p(uC5QO!rIdd{_}b?(qbixV)j-;l?*j6BNCX3;1d^(0^Z)$_-2#Ikly!$0b&|N zun()~7LEN&N_T0EC7yn}`IATPZ=lwoqMs|LuOGd-^{x*>4%Ct}db=NTZrXf8pge%6 zd7k&PN0QEeWv&jK@bZd@BxVVx^1>Wg^|YY6@yU8$=+e=9Rde};p% zK3RaSo?AkH_{}8aklWd;zLDM_V7m1eE2Bj7*ml9T`|`OeIf)lBI3if;Wi%%;kKXO` zv?WeG<627A3?5_!z7+c8;eL2k!0WXW$=zKs%@%$8lmaNAlh+DHb{xyrUi7FC$t_xI zS09@6L=P}_4Lzx@ehofM&uhT4F1Fu3VLWbk@_#fuF>fq4k8`qJC)J@oY!m5#p5ghD zEKSBl7zis}Qj<(unn%(Nadeqr!ax-QrTZ%B+pLV?js>ph&v}yrLlnJr&j`)lOPHec z+XaQa>bBUfVNpLU3jf_(69$S#t<}0>{n*MsI3>}prJ(e2LBoY0id(~G`I)?KNXHd* zH0VYv$nDtHaLpKfuL4oHw{N9bvS?_yzw6tnJVXC;O#cZ^h%Iup&8VLf=A2ObZ#xZD znX*dtlQJps^=OJc>2W&8jKV=L8TaZ+G~qB>vQ+yS7PIoIWj&_LRcGp zb_05rWTca1mNKokV*S|Q^JF{)4ClHn-^0FPd%(KY^X&_x`>n=f2)fFdjP%bem9UA{Hu@v`ZNmy*N~^@N}Lx4F2mhT+^VZ zaI?rm<_J&=3kH98GblJD>aGACB+dVeHvA6}G@t9yphuu9{HDwD{sYJRi(3J2SAPYe z5D&?Mpl(2nwMtgq0KUOI&On0ytgdL6D^sbb`C=N;KaPPb1V&?XBO|*zT)!! zCNpt-5|#6~jtNB4vH5oFyWc&DPv6ArJ*w5X0qMs!Uw=njO%2c0tS zS)?k$w^FxVXGlDL7)s@0f{TDXR4S&F$@sYiUKXAxkP9-%E2poFkIS+G;FqWxgN{JCl z+C$uLrc9U`O=;i4C+Z!b%HhNmq{sa1!KfADh~TLClQsiQv#}JYC5DA`yg$`2Y^0aY zs6JO0Yx+yVX=TT{h(I<8MhfNXZgiiF)L%ThuR1P7vib3kR+Ujk@`4BLEeEH769}09P9Qjo)=d z1GZTt0k&p>VtSLKhm-UgB>d>lh&V$e_K6r1{vb%S6dLlOfxX4RanG0&(}25~rf!vivE~M(ZtyZ^=r3Gq4VJXe^Zumf^j0rPRlxb$LTQHA|0ub1 zmqfIHtE&{`ceoiQt7#~5$Xs2Xz{WMROSc}-lTMSJ%jZC$NTb*vkh*%pX|1>Po2EJ4 zolz=aY`d{N?giiC6=j63L|jZ6=61rMDJTL`#6_+n7Cuf&g~5|U0g^5Hg%ZZm+G7;L z5BXeKC4}~}LPwTDZb*D88CYV9FfK!7?n{jWWImK5S(25(hirhO${9Ct@2{SzAHZw< zg=|N5k~z7{=vWYk zHszM-5|5ST(4e=xk2VpfEha37e-&s67T;=>H!&(3U&v>(G0v~29vmNF_jiUjqd5HeklS9TrHeo8Z3%Kk7bYoM1kPD6s~ShAjA zcOEt!8=`?^@y z(Y7m_k3L)X#;ZhEPm)T_V)?W$$d4I{QG3c-`sb7uj^Xquxk02+p`Y@GB#{Ly+75F@ zYC!p%D|Q4sN{j`F}x-N$16es#KOq`be;9j?c4rzSzSe zP4a09TuQp?Db?S?GSvFSF?qY!7}<93IV05*^?ykIsKOh`AC~5&EH@eWI7@6`53pIo zg^bS1GrI40RBo3r^QCP%MkW4}*gOT1`GCUJSizl#xC3Pc(H2r3#Xz};0O9xn=%O6U z>c27APE4_p^Q;GcM78Q`W=y-@+ea#ir6}lp!03iXH7O5~C2l7p%n1iG#W)KKya%&e zFOjvti;<>!(eRtM$DDv8-e({%wpB!qkf?b< z`cYB898By6ZbMhr2F-uOkuI+m&-Fp(re3yJ*Zum_YNgwaa=bb6S_qnujx+*^EL23;^fw|O;H|$Y znNm&#^ycc?nphoz@6$+EkK`&$Bjz%iWImA2q_9umPVT2s^mm-RDnyzJD!YE}q1s-Q zJ*N7ybyQ-I=Db$ifYN7s`$y|}%ON5cO~Fc$)FJT2Y-Xp z$;p2IrUfmO@Qhf`@jsyjMJ`?m#XC>N=2X|c<`Iq#=7xlrGtMIt^aQRLX*4OW8<@{6Tz&G8U1;YYan%;GC|NJ#{X2$HWLAI!UkI7e8EMR>K? z$uUxEc$LULZnf^QHd3e@XBErgT6Nowl_uDJR$kL_Z2h53cJx`R9VlMdBbBS<7;=EE zdCwZpyeH;-QY^4-p>6nMOx{BM$L)4a@{Bib*i9{MNs%0`@>wwTp@GcLK93OV$^|J& z_P4v-g03bBZ2^`_Qzk_{d-YT7 zr?|7PJ93p2(Fc36-<>4*ibv{PI~4F9(F$+>s90QcFf0zkH^xeL?o~F5dz`XCX2Ee9s%NK~N~WBZy8DcH`+e8c0h;MJ^SPpJ9$*$=H@)~htKN0>RFJx6_Ni!ZiXX^ zXe;wzcHysSVkGu3I$lkyd(jLqZRY+LFc9PAFT-Z%{2LSKAdNsXJK_4-)_=u}NA7Jx`fZYDoyITxW>X#Ug;gB&i#){d1pTJH^-xRPin?IyKEqAcYk;*fAK>ZV zsTCgJ^1`1hG<9*UG5blpPbF(SDyC5&+gySw^ zBg_)Nr9FcU)IArFFj4Uz(ZTPj5CyTW8`BUqrZ6&RH}^3IL?14SP^m?P9U$=ofo)=P zWfGuIVVu!X{Gs|=OS~FsSYs?fOT}mwffgmOYBFHQta>fuU0&(>&`@T(JL~e64(5<= z(+FT9eS2kuQr#d+-{J{n+Q1r9!_MdVnY7Ow@yvThmDsrAYxc00AXrT;$`oT~BFj z8@C7BJ&)#9sd~X@@&rb!&H0AZzEHwiQ%PzQ>Q&hf#}zjl-+tnI-`x#T*u){>q0|Gv zQ{=#mF&_CgucFOrDAe+F)_z`1wEK$rbi;Fs?-r)<_C`tgkHpePTDw4A*ZY^VT!>6x z`4y(lm=0TCY8~J=5dw`Cg||1XwHgOKcL_Hqx>x5U$=_GkbgJzsZ~6MW6+J}DZKcUh z^)5KFQNphnsTnaOu1OkwJ>#cF>e_D_5<(Dy=0U^3qyi6O$y4|`vQ#q$?w;1B49_P^ zUz_X)l>$M1x+WvbeAI0noZGf=61p=YwFwtfKW0L?tT2B1to2MGeWml5(h_$_IY~0* z^v}fzHUQ5pPy_BH^{jAt z4}{5s`s(fZ`|dLaF8TGTO`c1_7~ctHiNnCr=RfQJuI)I)o=|^i(!DNMRDS*V2qcK* zg9w89PM`a8z5~vZydhNe##G6yhS&rB%l`bpolm*~oa1Vq!hwPwQZY`a{A_5$L&8n@ zp1t-QoKyTktPn5r8~GUcZ6ofV0+BYdoYBu6U}e$5ky#c+DDf@yF#CQ;8?UgKm>~=m zvHDr7Buz&K)TDBkS?z|^gl=tM?;Ez?!CE}x*+oI4la%!innRZLjaaONqSQe98!uA2 zg?d(@;y!Pp)s3N-a@fuJ)x4l8Le{xt z(PFG0odKDCsA|OCHA>;(3aiP!194?Q@FlJ+IT||4{mUg9&l=kW_Y5B7^*aa*{oVUW zi&*i;VeZckr^d;q*3EaAnQWl5Xp>nc8kzPyxtc?`1wyrDYG@P0Kb|J)R|W`{;?h_T z;9qY=X0>lfu)+D<&MP>TRu!8VfovB%F_Yj}(X-nhAiGT_tPWwJ!;=G@xs5~1iG(RF zEtWpqO@`1NZb%T!^{uqFlN9b{)DCoLzPyH9P&mz6GG7WGsYExS^TEjPfT&tNCkhu$ z44R62g82do5TxD(2FDI;dS(3!Vq|eQA!b!V{wrNU^&=SPh4A1#r1U8B`oJ#ndn@TJ z%FA>{x$Qxm-F;ULd3zh^n~&>hD6**^q+1^?4H;PWKFe}9u@QEiDtE{QVuQ8|Ax&q! z2>0XrZsV3N@f?dP)VQYo^Ycr^I{rVnL~lFB9=ApD3Y_JKd-?ovE0y@qVgm5oC~*37$pC8ZvoG_VY}&q!;h>h z|8{$CBmesenC-rkT?cMit@L5roS%g}Z@Uf8lv#Pb47XTX#%Jic9-sP?c~!8#6r=X7 zia+P-8!r)}kFgg>q1bWCpa)3*nx97|BPBcyBc$#tH8x3oreIjy|L?Ge9X<JDJT`aOR4iacd;~w#B4@PV3Hiu@x1iaz>IzV6Q#q+KyLU& zL;JgH?`QNWts0zk8>xi;zOh|9q)BK&?djEt_&m~t25D41i1HT#Eu4Tq-_I3k-z0PA zMa-h~ejv&>lpsrd$S&dUA4ZjD##}Lmx~0#&cK49^VZ zDJOVreL@gM1>Xc)adoWa0O2g^7#g9jeE#Odr&RsL%o_0`S-cVuKxeay;wx|YbG4WI zG?v;q*eu;P9J+yiB1=?S1hOq99e4*DLIHGheZdOKEb5N5d;J+Vbbz5a*6>oJWfdpk zS5PW=H`3i7`pT5d)Xtp1(C%cC^%SP?iUxU$^guXi3_K=ipS7I7Q5^|EG2M=i4Nz>i zn4~`{)C!ALqNiEUO5Y5XwVRdiJ+1O7Hxgg=lfFW+a1|Z{E1pa3;g@2TJWFJ(e=!C z_}_^hwh1CxPso#Wt`_`kk_vH~n}ix65UIm%HlyNXC&$^>S_o(y7*V{)ysttPy4RC= zFGvLdlc@WYX_iY5^_ZbuoOp1~LwjJwU+3;;m6A9fS2yj!jhz@kuHLhcKK*SjE9y%x zwL6*1Lwe(dkml>0L(<9NA<7T^O}jsFOMQKVr-TG_!m>P0qmYLJIORZKgIAJj0PEgu zB8ax8=p*;1%A;KzR0t>a-%~Q?BKcE}lg=5undKft;=^bJtm~J5XB~jAjfs{is zE2M`8=*A#3)b1%|-!SO}piGzQbiq5!%oT*O3np(Ih1-V~jjyo(4jTbnCtdwsPzr1WL9$?71811htQCNvNLBR7zm7LHiPQ-ucpg6xxzp6Zf--Xmz9RS z$2Tx?h#@1Ux#(bDh+wfX5I=`+UX0%Go>r;(s{dnIiVeEDDM~0d+mz;5iL%=QRu7%o8I`05DdEyHFZ$=4BSOTDb6STB#PA#j6oYs=hcudn7!O-LM7;Gsn~ zTNV961(W+7y$82H+4iYF~kNY$#6!jwkmhiU7f`+F?Yx0QuMK~(4T{vGGP zfCU-yd3_rt$9VK#st=v28*?-Lb$-1DOc4vCSfGwW@vC8*mhzZn>7}J5Wl_l zMo~|N*b2#4A*iBuYl^Cn@!bh)_W@=ytgmNZ(cm=|u72%F7@Bk-G*?+AlQ>Tw7}<8o z%ni`+aj8}DGZFQ1Ch>lJW^|c|Lq7C=Z=#L!5uz2@Gn6cJ#w^|c!==9QN7_pg2Cvmm zNq0DxS2%|9*zs%sZ!9$U>saX;uH&Qs93z)>-SN`rKzMcl^7{K)AT)9|LnX@eUq!I zEJmD4j1vNabPrV`%DjIuCPn(jTL;Zqm_IbB;&2#I-|{;@3{O6?afCPi7*n*Hd`*)E z9p+xmF8gp0c5@?jhpv2EM~nlM!a?H}w6QHoJiIC99k0$3#}tt5do5~DSKcJXRhr*6 zV@nwYuN49qgT%+x}5l;u{u+^V&B4fO}=zy;vqhAP|R@ZvZ1QY)4c`v9sR}k%^y0K8gA9 zp$52e!tql<&OdGiobv#P|6wdAZ&M+$5bGfIW$pBWK4!Gfi6?$|?v0BjQ#v0~z2CzklB)4?FT{q{~ z4-v7sUFgw2OWCxqR8|yf=Z?0{B zOaO%AxL2t3483REa;4!jaH_0=1@w}esGB?R8@{vB3Akdeb4zEe6sLOhG{x>v4|#*a zS#zCY6p)8?ur;7a7IdB4ZwrP=8UVzj${pwTs`@*K!@H}2ZE4tsy(fcV{QGWW2U&+@ zM|pUH^)&P>j@QL3`&qJePG_Wk*Tw9d;|Y0=sY8t#0T2^Py+bB*AmBuZO=}pq^Q{cN z^L6$6hgay?!#72W6>fQ50umhje?ys0nhUc`MMreibhV-=cFs*Ms+f2tc$#83@&sQ*a-$r=6vKQ44Uw+ZG8QUq@%4!U_n*I`~Ol)KDd)GQi;JN73gno zi9}wHVbxD*DQ`I|0V)Bf)IXiI9__fKQH4D{&EMA#28O}OGKvr*xQraH6N9bFzQgQQ zvvKzGXm%q_ozf5VhT@jXkf-Rgz zI~L5vuy6u!FS8NmDe*2rp59K9Kn0)6m`szSJkc8qtCt8!LCLDQ1Z^3?{9`N0+r1U; zv2SBKB*v1Blw4u?SB1$1e#JOdNBp{gyOaz`&0r%ki^3~hhYy$})4XZU`VI;=&~cnF z0_ZO*|91l$2$XLbWsdIXuTDpcJ8%0Ca~v#6q^6CtLX^c#+>IV_%N^p^CkHRvYoeW?P<@^kq^A1MudnA&L`xc!AlI72VSP6fH&x{y{XCLy_KSL%k+V}Quhh>^`T-b zI1)#rxoJ4#k7d{Qf=F;|=HT{W-x{8nMz46=h7ybZZ4s$vlF+@Fv8Uo-02dG(CG;_-u&s9SzDj_%8Eg>&P6 z3~&!xS)wRB2JKwaJkg5=={uE3lzTpBY(DQKYDFC_mSyv2tUV;#%#n>9nZXfjKu|1C zky#Jg%k$@9(AN3{bcFoyi!Iaxe2O9K%#Kz9A?VYPPx4TLk7O~I{p-t0p~;J+Zrv5J z3f9!3U?Ce*C~r~{+1^tM`9ibETiwoa6lwv$bibvqELIH{?CC_Iz#f&@shenp$c0a( z3!nWwco1lkXIa4Ex*+t_2@nk`3GC-t6j_6~^XkrcbS_u^M{&pwSJsi1Gz~h-a^T3B z)>nlX*c7?&Za*Em&wuc`eFpvx*^YnHht9gBn|c}2iFm`Nh$(;c(!da{GArZXAfq_M z{sC?1)P>AuZle+3fR{TS@I&%VX@P)@nYdt(zrc!MFbe!z5W=pQ7Al>K-i^CO0>d*4 z(XtMzp6f;=fd%Rk6)J;s@qaU~d0l#68|LXRVH|h1v0+x_nr_h~Xd96AqacFW-@jSeBt-=5 z)tni4MEJ=<$6f=tHxz|W#xme3{^1fm@#lJ60;UfBKS==$OPErNNeYQ$BlPYTN`YqPjn%Ea3+h$zhUwtl)CADJ8>4`@D5M% zeWY=P458ZQ7_8o;&TucGRlNTZWuuGU#>L3*hIaVI3(Kx;?gp+A=Aw%|p2>&B5OK`? zk1`i?^iy0bcyMf@2=YUkhAaLdg-dlf6H`LkkpG-6XK*Hi8a}M^Cw?7ee`d&83Ygrg zNUwgQRgv{DKd-UaxYa&|74-~XN_3Dn$f!eBs)Ai6amwzUk*EgC zKcxDD>#$U})##YZjN@osKO%wttM8)dIEGm=s|Ei3WMQ`XU?h$IUnpXSUn3(1{{BO8 z1`W9O%9G8Q*XE zB#3aDT*z$ve%y(T!8twl{Ix5*72!5}x}wk47!wzf{9m=_1UHMFYO@J%LYCoyZV#V; z4p-`G%=J^AuvAdC7Rn z^&v_%XZ@_Jxq;#<*MZE7KRGL%b<#2(dR&OQ8^!4Acar|d%?Hb)>IZG;QtYdT zs;%CU=PFJm^oBm>9t#Gz^MZ5GIAQ z8XN1KyxLR;YJ`F4aU%R$?*&_v@U6pJ*52MWH%izHZ3Xj4!pSM|3|rK`y(ubNv^_k1 zd3$s1R(rj?N3!Ft6Zdq-J(GDdfF`LUadKb3-n=~58G?DK*UkKW*y(W6Mz&}`8rHid z7ZyD^BLsCZ>*q;KeJ4GE7BFq)KDp%P4m3!XYSH>g1DXNxg#GIsJ*>ve9P)M*AMo+A z+eM#TS!OO#S;u1dJsQp2H8oL=)gQH zjUq7tbiRy+xt=yV>=)MLe6ks?6v-2E@+kRr3dp$?$GrIbY`kS@>hiepou;>-=TWi4 z4ZWj|U8^PbM2Dh@RLu-pZI!1;5zBA$ZWv{?}<6%&GgOwdkubrKOpZ8z;r%?vr|yf2%YOCHXvXR$m02tdw7p9 z1@ziJafPT8SZs=26F5=p8H~5q$dvSg#%v^fiQE2iLRGw6jAy=UDA(85oK#lzqeme- z2Q_(v66uLgE0yu^FKmR~Bqk*C8j?lm7IO1aSJA*XVAf-ND`0U%_aec z*(Lpb^i1|Z?f!odKy5FWv(jG%%Rc~s)yZkg1m&fD~1Kp9aPa+TQ4?RFm0PuCc!8X#`#D?xZ51-al&0#HfcwZ-k} zq*z87s`& z<}`KBv7~kSIY5tdrP$W7zf_%A@~eMP0K>9htHeJmdXGLT$r`c4Y9HoAs<<$k9tz+k zzQP9L?5>k$>`x(It?Y(9Wymf!I)yDmm#{!Ttg`e~8&BcUdJbBZxX7CNyW^x-H2i^e zHBdb@s1)SUOZlQ9n@@$Bh1yi}&y)lIQu6SHg)(Xj$`fAic(qmtkx6AfFzE-7o`pHY zIdWYVkwg+p4*$KJGGX-@RBslm(6x5_)hG=2$MPX|0Z5fZgBc8s}2XJ>QUeMqA)>lp?nopB>aIUw=X;VFDy82xhLq@9hy-yOTf$M0CShuK<4PI3(BhL1_7t+TrNftW2rB!ER-=eOS?OhMY z*GT!hkmF5_07#m7AKm{XcT0)0kt0*uV8Yuwf`<9zk^feRLJZ66k)Pv@GXRr$1uWoOk-npDAX3R|E?r=b%o47a11nki1Vq>M z`3yIE-ZB6l(}`x0q_gFbPMPc!hM8TxK%xZ1TrDl`xjbSHHPQfNa-DkRzXqWHbbXj& z!&ZcO;P=!%x$HTkP?>GMl6=td0kv@$BKM4 zcc=3L_RL#b( z6ducE`}7XDJ)OdH@z@m5%3F|OsX>Wk+r6tUEX%(onj|YyupO=M!jZXyJZs%Ef+QkS zPJ*ataR_FHYA%w$4mnN$pH^Qi0mFk~+#(Rv~M)5L~QFYa}qo z;0c~6dsxm68u_gNS%{%<+VuWkLhLMGL-FCFcItDJ9Q9^bSTr^^JsufGQ3bFZ!+N!V zQO))$(K+4QOdOktzY<3v=adJ(2dEQoq#^V4IP|(fF57U@RQ8XrdrRUSeXe3 z#o0EaIg?IBc)Hc2);ZV>vDAHu@xB|k#fxu1$_gDliXM1Ext1Ols&+1@8|TityIo~% z3n!?Dau7sMPW`imJ!__|D@ZIn*Pz-DP*$jeACb6u)~mSNZ2KXJ06_ZmrkyxmD^>Zd zbW@sFZv{Lkg?}s_>}yHSBtvW5sN5vjT{2fq$;C`Wm$6m}_aKwLN2b@$>_E9?NmFFmBwW@w4h;8>*nS1pvSE6gcmW4@AdSM+2O^uIeaQf z929fj(@5p%ah-oBfC%aPVuDL^`e;lvQV7iP!i>Lz+PDk#tIx`c&hy3(d9|(;hTz>|t*@*=nXQX)I>*YjNE59gGGP{n zqGyx!_{}%pGmW(ES_bL869fj8Z-p8+CuHI<1F=BW{5vL4HQzx1ZTesq2k&bb^r}re zao|kAf;p@r!S+n}Qx0du-}!RzoA%A1&Wh(MIIcJGVI=MMZIKzgJaK5svocAqs6$t! zZ+pxer*R!8_q(F}XZF-i6_m(<9OqusY_SzXF4FB+FSSbV>jXe#Uvq%7b) zl+z$jxxRF0QYN&$m-Yjf&EdjTwQnQHlJ*f@#2i;--IGma_hP|O*z&P(P@N)0VC6g> z{0?R2`DrI}#Z&C?2QD;_pxNS}o+F9mAs+_YEIrr4H{2v=%1XQlw3w2QOsQoA5^y#5 zTm@8Wl@^n0Sv&@|@iaKIUA9NgRhs+|!c%_5J^DvA@Uluar!oOkvVKV6P>Jz|`2f!g zKT2)${LQGsyGkUwVC5uoFioQ-&z%OzXuSkf$%T$NYcWo`7K*Wdn+LH08JGyr2KH-y zY^`CY7iE+;?ihhQ{1`Kh2LX;!e;Z9^f7f#P^Zlxq@lcJv)GsLohcH;ah&wAEdvS|W z6e?o%dIMU_n&h4>g!?QW>Y5}xmD1XVgr#Ahrr#rYeCU@D5md6ww>`zXQ9yLrRBUG$a>N2NocP=MYfpWsIC1gou7Sj2t{VY!{Ww2smD&8IO(ZF=3 zwM}U%(lu2fK_r@%`UDB9;Ihkaa1*`Sq(C?MWSD_CBxxL4rMsNYE^wU$p9TSaTnn5_ zlC~04>yTE};!-6j3f_|!9j0jvu}uwJgW&KaC8B@7ho>D^(8hA` zbXoSq*+M{U=Yl@T@L+o+Hd|eJJ|yzvw_|i~?5q61I;AAZC*>i$mM0D)BNgO9@od(( zBZ{5E+A(7hg{)PUw1=m{t;0@cRslV;OLXtDd6OfGNcO~ZSlgibp$`U0Ucv1izj<(w zcFevg4!F_Gh1zGk%*xf93>K$O{tyr6==mvb`6Wq7O}UPHg-_Jtw%DMjciH0PPo1)8 z<-SAmCk%3(>iAzVlk#%-5_{DZq7P!SJY9@zl)5>R!^z(}_FbKJE~)1@MYkhgtv&bB z9J|8kdAjHT`I?rJIraDMj=`^8zP8ivYio~7Psxp7d9OT1$w>iol+3WDGxDRZXX{Ng zsR^3utVE7kA=ifYS<9NqMqmDl61g<&o?s_qx*9PPc80C>J)tfz3-inbs7wID)4ji=w88aQGt;G_eGet5mU))Cm2l``tPRe_H@Z7esh_Icl^_IP*cteTwk{TkW$sYCZ=ktm}fWwGZXh%Q;~ zho(TvBJSt=#s#p!az?rNlI?PG!ue`yT7?V|sZAeZ4q;av^xTSK!AzLMTVv)ilhMWc zu%>x|@f@l|dEesD`p%as&YdnXYmG`G#+!CRE_242$Xj=5w_OFyf%a{Gl>6{l5Bez$ zkB3o^N0>qkhz5s%B?DDk3Tho?6R;a~RJ~WMRZ66%ov9LVAU{zKwhqH+5(GNNfvmPi zh7Vd0oY42L-jjSkC85KaD5}Sq8VF1R6Sy?hCPA?QtM)|ECgahD$EBMQl%>&%2gzRA z_c43i_1#$Gx^Z&pi3h*B%jUv$`J@8|8tU1aOpq8N+xRj3l;Ap@lK3( z&eqbUgjhdKcD9;|ix64o)Z*{MaIUOqYpCk^PPf8{lm74w?efG2~ry35<>L z?I!v5*?uXv?TnbSlO7&tU=sF)+9ut!vUl&bh zp%|KOV`|jqDzHF~SXV}9s3N1}BK9lwt$5gTXS1MpS;rL>%Gbcuac$atvZuFw?cDx1 z4lhlpF%44;>&WLHdK2V3;bp6^1aM+lhEtk{wB)ro&?MLk&Qr>&6YvEY2k9%U=29iK z#|XqfA2io_e#?aC=z!Ax{>mDYuaZFF5+0d4XOE>djwUmf|; zUq>mWm!b6ADzuCagynm?NhyDw^`^`Zrr0?0YJRivk)zN3y)gC8>lG>UVC1w25{=k| z6e59E%Rhrn85s{*o##O3=wwcjPg6CR&KPk1aV6@RfijlJKY^?*LEE@8&p>VEvn?=h z(W|^Ql7cVaPaQl>W$SVJohmjoEHP<;BpeoCau1T!r+{;51^mSMWH5Bh2JQn0B3AbL zIVo5ejrKFpO@AJcf~`+>&n?y^mx)iY2Z`nR)+PIezfiur=QK_#qK+I)s2L-3MISHEU==@6r8O7aqnSgz)l~0Cfmzjw3iwK zdl%l>yj7i#k~Ln!6SBO%Vx*c3k~dUH+V)?8uyfJ=DEHRkkK|Ihn=>xI9^;+qoUw5Z zRDQIu{~y6vR^qO--O=|6*th*GIr5*T2jv*y78rwGr{ zMmk*^__hVJtbtkK8!!*N_co6Hj62h}dLarthL=N(OlFThXUl@49wclTg4#+zn?zKs z#l)F6LxQj>tx{iW$0cr$r9|?3jt25igHXAV?^ad1PT2C;Vm6^3mH9jyRdclgQv9uy zS3V2MFKp2cF;uOb{Tl@1F3j`6nFDOte_qlLm*)ICi@IJtDFV3#9=S;a-PS13pl_xV zgjZU+`2MDLwjqqY4TiDB>|cbExnZ+u!H*1g_Cd6M+Pm}Mc&=F`9uS0%;L|7!7q{lw z3L%7bD!fQv(4jIv(*d)Qb=bQ2CKnF0$Gy2zVTP5&@ zJfde6pu7!qegfsDSLt^Js4%B;yKZssnmdxtCff1E8A+sAV8@!}f))Q&)ce2gA}M@8 zPWRM8aLMMiS$@#&cOdTF81w9zB377*h-09FqM43s|kKQlR`X zFzTVzk1oC}WL#?OST45X?%YNnj^HxPCUREyGg+=^)Of6eOe^NhPRy@g&_ENZw!_gQ zQ2iT6MwqiS14cDOwDfwb{spb{3KYenV|G_d?P(bHI5d)VxHf1QV@NtS6d(28d|TyddFQe-G#$vbRF=!Z|CQrEQjj%3Fl2A z9+lk&HUytH7c3-im->p$?dYi(p}E?&!cTl${K?R24A8lRGCVksAuPYD(V^H&QLbU_ zT4@=QOlNP0qu3-)CAf6^r~qJ&%k3Gjdyvi7WN36e+EU7ffG$$`VRdKnzrt4ti_)yX z{?xavnz@^J=+dmQ>b)KWX*;RF=EZ#dwtjXoxxr z%$aWjh7qz>vT!@v_chAC?=m_)KE|{$At^#ll*HT8A8?ptEAxHT-uJy7I6a2&NT{6- zlc!9Im`gq`oM@7{@bi0Mq};_G1kje$UF^y!eVuAKDJqfYUY=N0GcNK!yj1{S4CNTT zt45DjZbx`~e0}sUl4Mr)Jx$kX&G)>qawKBaTJGGDi z`LdHP5P1r7vfVu|lOc6E^FH>J`jQ>&gji-QGy!v`k`J=AaBPAck<7L$?fi&d=P#>mzJTQRbpV*uP#{7 zOBblgGS`qcWI!PNA5yP6+_FxPC84YIBFK>@Z%&|+Py{&W2Uh(BpD7Y=?URqtV`*q7gEg~^glVCmEl*w76zPKamk+cTE|40fHr8pjkHC!wi)x*HEMqghus`vW{ zi$Z@0Dletij116Z+~r8)2lw~Bh`CTslD}|vNjZ$z>M)+z?W!-b&o|py|EsqB^;(Ll z?i|17LbJ3b+9o|3<1yyj4f6~sci?gP*c%@AB0Zb#mrz1Nb2Hl`-WY zJQ>o6$FSe4w=CoqzgCWZ{2D}y-iATnVBzft(rNR_ym*q=kzitu+C%sYeQ^x}q}Ph0 z$1c0k#6jbOiy$Wwu*~ycuK^8qDP`Yb;RLdT1tKd9;*~d`q@YJuMR1wb z+b0y7sho2ang^6GB?fD_dAy9C@+lL?lGoOv@^CS2pfgKEYWDSWyb7x{ z%nIitu|!?dR(k@;*8S&z?tcHXz%6>6b~s21drpeTgyO@W@<-QxZ}f+tQXPE!4OW= z23(GS>1D^*7qRf)b?8V~lDX4RIxK`)Pl0x0tZZvG9G+8H+@T=#SJ;b8Jh{i0(#-F{ zU?wm~5I&(rL{UI3r7cj?T|xna8cb91O0phT2Eb;#Qsvrl@yn1HXueIi(c1mL%@o0a z1HjBoAVoWiR=n#iK*n8KGEzT<7$t*BmhblziYLlP#;BtSwPyOpvf1n|*&`lpyZC+b zR;{Q^+a8sD;}4w(@QQlMg`9RT?hdnChbl)R(n6%16vRa$Bn#_!>xL^A?=Q@SstI#- z%FWX42P+UkPQSG~M`{O9H&ynjwBu_!z0D`SVGSzm1(X@ColY+%q%RcNHMgC+wDwpL zQ4cx>VC6+(i{Oq)<{ZD;iKzm9zyF>CueMh!>g7lX`y}tqSt4d~#D_v4uF#p^4w1*FoHXeXed{z4SE3_;3ibwHMN-(iUP76G1SrqN_#mSXxYHtqd8X;DQq~HXu5GLtJ$Gt}Cy=Z~+H{{}U4Fr9B*2 z=khB8hLcNDb@Z_^u!1!~u#WJQc>Bst<137eecMVh zYk&#J>H+hGP96asulT>KcA!TOL?}|Q^PXGQGhJrR-kg~{o>ih6lM>q>ON{}TlMl30 zyf~S`DDSv$?kGMFEBYtq4p2!Z2l7ksW&>O>sq+t#vSYNI^%v)huG2Of8zzFOqWb0) z&UnEh-A1CAAKuL`ml170ucfue%_PeQG!Ep|s3yGh5=ZMj42}n{hYnLt=IfC;3|rh$ zAgjiw<5(ZXB4b29?6mOA9-5cWxM05Os^o54-r*SRk#q=ek4CIrAr68qk6(7_RyBW$ zcQM3HjbH4!qjV2%+)1mqo;1Dao`~F%ZzW@MWpc5||DGOU7{9Fr0gkg~&rc_&_;fw~ z$e4t^7zgn-^ICWn6N;v-zdjbzX~@^ugl0V6LZ5F@%9^DJ@MzNDa?Z_vBnSBW5_k2H zh2u*e&g5`6FnW*f!3j!Y!+i4EkaPX~LDtRoJsEmo3Fl;FR&@=Kq2p~Owo`Zk^4ery zst`Z2&@gs-JEMy;XPaJ5ufI^SC}$e&mCR0ymXmjJ5n5V(`Saw&CpxCLqL>B?r3ghE zaOJ|``JhX(8N*0L>!VB3>T8ybx5Qix2WCmm_K|JKd1S`4GJ69B2O&&_1%trFLG?9# z-!E{o{DR!3)l*AQP~W_vJg+9HMjkG>1(u}sYTLfjgJkwa>BOOS7kR3ctk>j^hY2Uo z+i$!Td+i&ST1sEI&Z|vP5`yI^F$Mx-cKBszE?CzHf^V8`2+d;A&A3=lT_v-rWqo^Hg&$y6B`&0hu`+0Om0%KW4@9WRgdEKm{jEl-o zPR**knsvV}Of2XpZ5M{J(lKSx$D$Zb;M@MJ+|bgGNuwF?qDa!7{3`GS^6q=>`}Usn zd^3VRN$qvef86pJpqU_}Q-;$JD;?3?;lg|9BKw1mv-S3F(9(4#rhS{z<6K!VAME2j z+yKV1%we3^k`td!xy}@gSVbkuTDKmFPa0~M4~bxC7HLf*=r0t~Aty#(oqO?bJ=X?-=?sGkS}%jDW^phB|& zJfL^2xwwUAFpo$b>%eLKw3Q9@NO^OH=$Oja#c$)f{{8O6_WZZ1k09&%(+jA!qpiOS z?)cPJXJjXCS6mKw&Agv^TVWG&zO$8l2}yXr7=OH#rp^f?EPNw(P6TRmNN+*Y9%ACU zPYL+=nv|nrmiNr6I7Y_Fn+T{JEzMmTX3xjz`4F#{$C$-_4!d`XfKau zr3z1qgeecF0Q#rv`I*Z(A5}HE6c4?)?#r4n2Q!CYXh^sd@LV|+pV|P^SFJK8Nl(it zY6)Hr(iwIZ?_C_f|J5Cs4X2;TE~jEot(IGL=BPBrEj{pttaRofQH?R21V-HCJ%ItX zB$lY)bhGC=Gn}+|+{BI?qHYMQ3HgywptzzIyBfuIeYzS0KLh7Yl_S@lMg`-Bh)&iE zXoPI$V*;C7KjI$nUcksJnyp=+f{Eeg6g8z|;SK-t!Sc9K+j7thrHYa)0?4o7VmS%# zeeS|8aDN;F0k2u+DPWMklk?=cCu{7nymbOhSc?|WQBT$TvhG{6wq#c?KGY!Kj80{3 zPHmWup_!C3IW$S#G7`6Ucb!w20=OdL0#icXWLo{;ZiKgxt`y+vN*b$Hf+ZZ+HF-s-_a~;7D9T#VkV}Rgl?0F z@uEF|_!x=Hae4%P1L2X&dt0(o4R03K@usx$o!tTo9d538HiC+isytG~0pkZ9Zo! zgbR3i&6yfcz6T(_zn|TLg>_XAaB|KdpZ4UP_93xgFVDN097S!aeWs#e!N4#fYW%#t z(eu@SR0o;R>VAX0(KTa#I=y`;cy++9%h!{9Yo?z|^vUCdqTm>Pjwx!fcY3>fLnvEn zQ3C*`YT|03R$&q%B?0pM7eK;T(u^qUC*$!oQd?=w+ihl zqrgE5KAl!%^XA2>uc*@y98Dm=!5fh4ive{^TS|)MihG%bA1dRx)ieTI)X7q4!mFv5Y)*L6NosfKtDbMk zg&e1|p`^o`vM(9T66^U?43a<5b!>!bW~4Ga8k=FRVjncHp{oL?nUUyMblb3?`O+04 z@Q{~~;DQyPJ0#Cv`zql|`FU#HFC&U2ea!_#^XsG#XeP$@bcAc|Ck<#$N3gTy^@RWE zjIF(8)+8EZr?)Ch&Jw=poJe{HFdWOPt7a`>F;r(xMQJS)`>(Qf(Q3J&OG~d43qwa} zk68@kZ4VgV3r_FrW>U>G<6jmmY8~Y}VcR+nor_e0Q2wsuiQ&^l_)Jjo>)aSrwFdxk9^`mK3Q;?k+a*fQNR6o6kh2NXhLwtQOTT%=IHW&W0qrf_Xv`%Qe z>HXkj9Ci#48Je;fkbTj>gfyiFVw7QcZk?G#mDFJ(vc$0HYhuFDn5QSE+;uQ83oENu zx+{mZh&*3X+_R-y8um(&dM$Cspk&-n6lKqiNN(<)*UooK!qw(iCnVR(A=)6`3!$K*BA#EVRm4cvMbw&(cwTOTg^oE`_mdAM-Ac12qjRSYrlBsc4HGX_ z1NPxt_1Qw1_bI)X10NqFo4ZRi&;5Y?%UeMLL$*h`-zv5a7o%tl7q_&ohnK|6?&SE? z(UX9tC%)xRU-g(T3Wg3HrSru`&}gd$I6|%!AA3AW?sy8k$7%Gptu zJ#)Yv>TK2XFH4^lTrjE$)ho|p3`1*rq4h$c2CdFFrn%sn|TBq@M3L_zRiDB;t>~2;@z_)MZfa2 z(|R5A-_^j~=a?j?ramilEbh!A9lZFp(LDV@JritS5A&@Um$j>8h^Y5Y3pbcYz<3_hfcz-fhay@0iz@jMAN6+0kmR z(dpzV#*t{-1vRq(539BP+(XM^SGgR_vo6u5r`rB<;w&8tIs<}LTQPTC@E%(mJ{9+I zfrg{awEF<0j9g0?@VO1m;VO;|UC9?b`2D&U@}7Zd_(pE@=v71%j##;XW+|5jY8;J33=68+SOrMHHH zvuJ@0ePo8A-2;MW$zLX+30#(6l~OanA3NPVKHg1i*`|<{wpD!UV>hH^JT48!P^(7f zQ8yPcNT!+45DEe)#>wpU{Mig$T$Do0E7bG3n4QV8Jg$q6&qgluTb2dS>K+pY1m5>5 z@s>0FdOFy7e(F5eRGvaS=QJZWZ%zp>;!{zl4pLV`2F-aQofUyX(Bn^o~N(cHbJNRE^Cp8F@~e zp;eiQez%Y<6^SZB3a(5lMbXyYT7>=wjh4LiZc5EK`f~G|@-PY-(oqw0SdVJaS+-a0 zEF@H7oTAbA=cZN@`Fro;&UFRTPJEF>35yFLe%2h7^fu|qYdUnS-C2-xn@h$Cs9Qxy z%1zS@+anDC=^|VCk!!8otItP~qT%&XkrD{?Z$svSx=(hG z7-RDx?()k#8xuSTkV&eFy$@rh4ekLHRi?^kc3G*UqGF_kq)N0Bsy`bY)2W2d$(C*A zZuG11nlTnX8UOg!2Zz5!HTT|qZZ8xRO_w&~Z4+;w4M2EY->t>JHYaPw=&-R%lDWNB z*?`g?j()7Oa{#IdR$X4N*CZVomO>HckehWj$9)SHc-k1RkG@6mYT2gFEInY}Ur8Lu z+kNx%d@$Z8Jgi5Ua4^)b-AwY-G*El-}zxXl9~W$4j%GWOybWy#bkR`< zFHKgZ;}N2-4y@|pe{0zoACH@kH~Cc_DRK{_RpvOU@*dtg#WaD34MEP?VkwQE8q;#A zyMZHnVCC4Id{po}6cs8@;En-ZhKOjYLVV%A5FNohEP$~Kfqn56^^bWYB9L~ezC5L6 z@q~KUS*2s0^lY}ld=)3Y{$zh|P6KB269?``Q>T@saS8SLJ+@}QYw>gxYqe1SJ zi)Zj$T)5!MkiSqdYeBACYI{g_eCCKPB*5lv-9^n>P~RzED29hS3m_oBXPx(bLzl4? zJ^Lqzcc+jk-PlN_D31%meqrsDgcJ{lq#?o(8K7#T!u7|=S{mJ`^F7_^NG2r2eETpZ+cszuHxqB- zMGD*e%LS30wIcVbwH*;qnHPl1%Qek>P|$^NDnk-;j73Z0EpQ())(Z{)*~0_mC~zrK zxAE;N;VAG>r*v5X7qr5J-XSPfHhMFDD*yDAucP^Z7xfe8`8#lwGKPQPr9ofhE^dUR zq~7GYL62JW^yM^_!Y2P?VOQYA@Egi{tPlRZjMLg~fR=9b^c4sxZq^pE{hO}yC+g4F zoK@GM{~2S#z;vv(ErJT>RyD=>9YVXp&D#=>U0-^2U_%E`(zM>2X=B0Qf6VRSu90^P zgj++97A#4L70vM80k_oYO|y9rD)+D!*mHnm{MW>m+)dZD*%BF7Uqjctj57YN! z6*y!Qk=MOD23%<48_D8JvOj?4+M%95Qy^$NvUd{F!XFve>KW3w9p`uJ*ZlQX!TcmwS}g1uCq)=1^Itu&gsL$dLcP%OIVVH@OvL)BpZ4gHZ?LN zmZ7?4|q{w1fF5;k|AFL)-Qo!c{JIQKYbJN1U|#hR4; z#?&-L*ew$N%Vs_=}SV3>7giU zmkb9weu=U_cx&g{-SX3t>n9=#3f}cbCyS_|2{v07h(MqKA%&i&q@;^f@3VXG3dPz zQsn=%3U9|7L6Zz{il9)uEIUe7;JxEriah;+Aq<}0Se(Xr*w~2 zk9>!IwN%l%O<~33<{5z#4wu};KL$qAYJ6e~jl{yt#Di+@dg}s4k^-rQC0L@uj1mB0tbg0$ zmI7YG%!jd{bYj*^M+{1KaMCYK>3hVj^sM{9rh$sOiFa2R-ImS*d3Ff?tj}5Oufta_UuThvhdd;^XI+(FpC5 zgGk_N*Ykh1kV+AzqwO@7F{!STBtwsx42#768bx@=O~U_(J;DBByGgkwH}xLV|7)E# zVy|U4A82wWFnFExg@msl6QT~u@$U0xA<+4%^?XsTTbru9V*nS~&tPz0q?-UO0sD=b z_)~PTE01sggf*?vrkmHk(Qw%YML}sfbu~uAF2kZ!D}KsBQ(aZjYN@fLjrdclaDAN>kqjcAUp0}-#m?ZzFHY2>EUrsw^5Cw; z?5q}LxK9j3#Mu6CtligI{$M`3RJild2uz0X*kA9?$C{p0MlZ@?=3E6+7E0^7YmibC z;@y5gGD$GYlT6jx&_p+5Of!8;14ze08ActvWB~HERATq6>@p<~+H=f&0`VmJKA?)9 zjJW;?H-G*JCka2Vg0>>+`|oJ+jhC9|<<&CI1-Idb#r z%sPjmH#Q9Z^W5C}oArwZRTVb8!mD%r87VAG1&;^mPC53hw@eJq( zv`waU`Qz|w4ttMoA?46tzEpx$#lL3h0xbOXwQe za-fNyx)@i!%181h0D`w=q2i6?Ly3Pz{XJ`bMvR*$yD*eiLAzuzaSHFF<8ArDfpm4O z#z;U!1-pI5?OhT@A{w1IG~K2_h_+`Fiy@Ko#0HJ*FhQm7+%rL^>OLfY!)>psERMy6 z_@>O!G5Y*18F+!8Yz$BtzrWgYExd*cJd2L0xmq<%$M{JU-JqIO;U}|SI^#k`f%q=B zokQ(AkqUBaug~oJ%@;8W#KWvm>35*$p%zt8DC|0PBrdTioO6s0>%q2>Y#X9UJLm|> zkj~O`I#O^I$MT)egX=BY0n!l>rzpqh>;!vWy|*uZ3uOH~NdYzSsqCOCOJWpx#qe>a zgIiNc^r&xQNP=L|!Xl)nfKe7i0d5t8GskOMXgy268ckb&Na6Y)WQ_T6se{#{*Kii( zLa*IXL1n(eJxE@1{X!9c0_rKHUZn~YF#0{p}gGJaETJWfvAhPvy5i%8hMbZIEOo8 zhxgx#S#tB_)b~?1Ma4z96moy`$dyzHh!ebo`kj*G!gJ1sRtq;ZN5|?`UHb!157M6P z+mv2M7@i4T9Vk^~P|y{qHIF^8=I@nH`sSHO^9?BJX*f2G7=QvX&dnvsXZ=jM{Lc9x zS10aS4FxvI-uRFu`dzo7of)Jh$2PSZP0j$SR#YP*v04@Od%#s|p9}P>eB~C(_&G0P z{i^l|mn+VB*i@m}=`(Gh2s^A1iOI9?HB|Sl zE7Jk+LIybH;#>*YbksbW&-1S5-eVh|di>^{5WT#})tHmdd;4Xy$AGNP8ot}|H_!%% z(mB(t2V}?no>;oefIAH{!XR4kHhcXzE0c)7 zy9`Q+kR^4-_M|1$r}pDmW9b$Hj2~(9#usUaGFfoyIn}kFOh;XPn~o+CVFjg)s_?06 zav@AA^O+ulvSv?r9fyCz@U6XQ*a^v-J{NrpMa4x?GoBlLKs_c{PyEC{osCRxU8*(gexA@880vMQP!pes~Q}Bh9^C=lE zv?U$+a-LVyI>8uGZ)s90RitdZYVo#?O~1AuJ!oRL`tw)iCB1nZkvd49vCwL{T_VgH zM;1z#X~ARZi*J;YD9gP{%&GFUsz$9v*|OQbJ(wDEJ^KN+5jpX?8UlU|0OYF8#`51gVU29F=^Xd`tmfaupQv5Uoo zo6sif5vV1gv7esgon>^18Z6-2;Iom4a@Q4dniCF7fi{?lF9JQ!l@=z?yv%UmLIlz!%!rqe z1+ih*(0(%3KjlQ_6^A|tLGlr87uCZ$%*;Y>xxAg5RKaRoM+!75CLm+)0AFy9R>0ySuwvaCdiicXta~ zK%v1QNa61CRqlPhexL5q-J|=A!7qN)*=O%1bFR78cJl8Cd6=AEnAP6y6#2{&1EZTJ z#7fuJ>{-Dek4lI=rG1Im@R^i9l;vw#M%9;bfQB%aqzyQ!I0 z{FizSmN}D9J%xy{*PQd#5o`Ayp~q89?y2GQ7-sP42UavyFCKZ8=nu~Nu`zD?B;PN| zc0Xu7AwMjal5faM6!Y5-$MjtYhPa~8<#eO9N@eZ920U}05KYg;yiJ=k1NK;;mrkW) zwHze8chC>Ku&?;gRkc6cc63B`3tw2wSP|v~&rql!MeRE6O zkZO!ujAzPhq2VyhCKRc8vyyO-^JeU6qAV(T1;Uz&Ta|^nb9sl23$Lv)FPPjP z?$iD0Z|-&GSbi26Z2D1jhb_qg9gbUC9s~@c4b7wNI=(?%>OZYZ{pDC`?gx&6OwDfR zzn%#FSJ4jRwT?Cn2&&Y$0fIc24~;tC|~Z|k9lJCVQ_ zKfF8(*#n04tOswwt84CTfm(RZjr{LFdjroYI__;ej*j+v#bVh%f-Ao5+J78-D&O3; z$lji7VR24NUD@p+u0P#i@f@^*cCXaaB`Z%@ZA;>RP9I;tWV^n{#t0|--v07mi`AqO zl6u$LQ?4Mf<+_?Z||kNNH!g_pu&lvyyk>dI|RRY=(~O07vX0`cS8SlpTpp5}N6XJj+;hZHEnw+P6NORW&l z@~Wr#(kTozN}Co@^~PNSp1TT_Qg)%vLM(80{QQcET&^&A6=e8`>D+S#%PnPB2wHmk zhS~EDo#b`UN#zGnvvntdbbp)2KLqXS$x=+OO+E& zPBm@Z7zdwu`=r=f~fy2^kM}mh}=ecTcCa&Ol{7{Tr)aD5i$SQ=s$Fu;@z%_l_ zmp%q@BIsW$mO$x9cgN>QzkcKs5fBB;+|MH2oFBUH=>a2=^kmAj#cYC6p!fq%dx`9v z!wJWqJmS-l;tE77Vdfx)rh~YC9_BT$T~YU0j_tJ^x0q|*Ap#CeKAstS>B3xaieiL^9iwm!Glk=+W(4sIH70BKze0oht5rKN3N{8&_E)=f>H>tm2%P9fuakhdMDFoUGIt6h_J)T5bF8pzh0 zmMI^&4TmXEXq*%YD}I00imId4ZI}IBgA4>|2F;`4`E{6_JelUoQD(Hd_ZQrpO3ZQ8F5t`JY6{%?7d7uynS~H zH!99b*~Y1u&YC<FP~VV#iJ!zlpEU%|C&EU zXMyU;aOoz{4YHGS0t2o?@n?>|F2-m~CrJ7irAYO({=jX&4uxriOBSv+=G%KzC8frq|&aO|w`VjvSf2UE-Su2ng)^PwUclhF)EKt?UYf2RwZ^fP5p!txhB*Tg{ z%6akP8CgO0wL`;YHbJu>L!x_pGG_QkphgDM5wxl0okP4<`rGT$ag1`s!NW?rOS?zI z-C|+c?!c#eV@l0!v4Ow|Loe=q!#MltA8=ApcX7X3yi-0U@wM12$hE{+1IFV~v^2gA zZ4Za-8}|P|GFq+8{|QGa)}FsrSj&NKYKQ`FPSO#%CVvs5)W*G~w_pY94xuTBhl%5! zXNSH)A2wZ$#{KpOuzj=#Hb5|zQ9r?u3RpJmn55XteLY3+ys0e(J(M0C?ldB?t|HuW zyP~J3wQSORJQEX_exhoK6biB@s4e_r~Ih`=F*jC`E9Jj*CwMG)?vahGErmT2;EqDz(AAY!!#y}Qo>_YJe z@xIjz3q8FQ!NbIC(J=n3n&eL^7|w*~#4Buss9}hXNUn^sG~ERw2?!rpEb5;7Q3zSzY6>LDe%u34@o2)(li8%tS~+{@kkcw=!HoqJQ@3+h$_mXZQwhZ6RelO|Ck;4byx1; zz_Vd4!$9uIZB_g0ucCwqhY^BM3*~{&Fm1<_kxfT3>T~RNznjgR#{4=aO!ai~zm&$Q zdLZovQwv!`WCUkS?c5$Z(#^oD)6EuKDJa*^D}w*wjOpoySQc3L&L{=&v(2H;Hvhi+ z-4(v*9EA1RfNRPyYhvZ^m$~#@y}^Z%zGCkQ@wdF_T;+>eeU~XFB1tTH`uECI6&>-*y$W9hS;1? zXnMEq_W zcW+{QnMCv+jx{{*8n2xlilgCtcvf1vis|ZwHQeCR+aahdn>4>53(}g>{k9c^HlQ2a zD0HYZ<0JuV)}Z!Je)C2L9l^yA{CbT_P8kLtl?BE2)yWt*BE$5IiuYg;NY`5hvXw~2 zZp+8?1@MT)vKn&Rff2qDRlY*C?I~V*6A>_A#1y|!WX=9Ogj$U@A99L@x% zT-nhR0F-rm6~=XmBEW#V%E1;=W*WwIL{SK7y5CqQX?c8iEo7}ZaM5$tH`?j4-WEAT zPcyVWJMY;A0`DM)r%t`}0=c(X3(phc1JJ-FGu^z$%J?zfPPUOFPlHT!SJ)1ecvS?C(K2OuwWVuvV=d0UJ&g zD$2_Y$)u$nfbAyO5o2omqOnu4F~izdUBMBdOhnP}C+n?w`O8{&gQ zqjvzS&(?b4P462J1wsdLsUId3MgfC8Sj_${ZS^Hr8)Ykn_`$90@Y(~ zWaSQFS}ks-xM^kTB@a}rd2LuyrLDZ&btSpi7UJ{M{@Q@ffE4j8@*_&)MH35|i`Bz} zmJxQvl?0i#g!9qlq%`AR36{z(wH;%Ig-gfj5zDC4ZbU%|3W}YEu?U2$hKjKZmM*Y8M7Xoko7 z4#(-$86$$S%R7xYx=P90O-dkr6j;%EYMZ!lz9{XZMHH`uzzkI@V+C-1{}3bvX9e5!yx}T(2mA z2R}PF5#@Qj``vVw%b!d_Av$a-{~SRDAIE`t!7$-(;bvPH7EM*yTeHPD(%hHUFS%v# z<5b&wL(9&vI4!3G0vHPj=tKBx)t>9lF7UocKDWh#y+H3F*6LIc46gpr!mxZ3(On`$ z3oLx(uxveP7#-6BcJ-)y?GJb@{UqahOj;obDYStfVIRRPYyoGG)c{6;g~6;Rn(^_< z_}H!XT=S0mWZ{?b6j*XaEl|~7b006l?HOY^47swFRiH5;OzPYoz_J3w*>2RrMQ=esTDCP|9r+I2K_x$NCyuGubKY= zj@S7ZH zo#OKgt-Ija72Ev0W}w8D6as11fwRU>flLa4VB#VTS8M-M%I(^}{>2k*P(n?sLUBg@^rA!+ZPABDR; zu9K|`YsG?Jg=&QzUxUE2R!J2iT{#>76(}6eL+P01yLzO(xn0c}=7*>#=ckvQuLoBi zybvi`cZ$kd@g=PUE1Az}$sckbh8{P9y#Ya(YC)MbX9fPjh|%xY6{>n@dpfuoybddp zQiXBH1vTEO%V%b#nB<;<`ua_<`_$_BzOl(z$5Kx&oxdlbBGU=SuM$4YuM?SVogH7# z`#2GeC-gxpJU^T_tUGKotJO)Z@kD$kXEeTa9hsL_sWDz0JR@Wed}N0uXVtX)(UI@p z#Ou~V_!GTwqL2&^mu8GHt}Kc1#llW5LoSDT4pKF;n}_3o0P&!gQOb-sE&9m7O*V{K z+Jwi}zFRk563=9__9LltBb#n4G}EBMweSB~<1qGWSC=D&1^2M0egL3>stqmPcY=N$ zqRleT!MdH*ut+bWrg~?|rut;o$h>%FcAmye}b0 zI6t;!*9Rb6&-H7?TnbuzX{{(XoBGXa?yQm@DJOsA6MpbGRO0&a(M2qn|7k8gcvHaF z@=aH1F>0-bp!gAP9lj>OBB;Z6Lzk;E#&i*2+EvLJ7Q5&G+nA;=_04^3iA3NhHF{8l zQc#c>8v|?=kpV(nUIvCuRY$cbKO#K*A?+45WQc6{nR@(LM|tR3M|-GkXHO=|Dc!sc zskQ0k#8~=bza|XLvjlRNA=YX=tVWlSwUjY7rUL7(M{4RYtD)Hu~ba4qLDxFEU!cd&A(S9fsm^$Ng?PgD3z5K zdYPSo5CE!quQFUdreWCX_0RlY*ZRybKXi?5j>CljvN-wtu7+8Pd-*-5wiwc_77n=; z8LgO7j@zpa81&TsV1;pKXl$;ZBbcY7TldmZ^)M*mNGZ1jHBYLdyH5U$GuI6;W?Bw8 zBI*=jO`TW6T@Prs0|NoU(0oz=wxmrpsSESb_P?0s_XyfhO4|N+)4wic^l}o-uBBq& zr>I0&g(ccoST>*h|@^V z0JrAAJeLn3z4CiRoe|^&+ttD-%HG@9pOic@DDzM}sAQ$I2t!5gjGLWCYX zYS`h(Ql>L%#t=@MZXb*vy8t_Q2Kxd0G{NqfmtD2>h}<%e)g7d4I5W9?{w!g9s*|eg zPAB@aTx2zXP_Jopqvg-yb)Et}bfbT2b*bVXR@Ky`I1hyLBJgEopH?pmZXss1n<#{g zeoF!h^Ens_UCh$apHUkhi~|ivB#M_|ov<3MzqX)jGGpPZ;~=yWgVPSM1YCOo zPaZw9Sf%d&LnhI2AHLM6&bE82?_Q60jx%!`*J+Q=DymD*pZ=rb+v-c72hNu-|d)4 z^a?cfb%QUlnhbf6b=2Gxw(a{p84c&}vRJRw+>Fb;jTEf&48cjPR_`75(etkFXHyT0 zT6pGLkB^~1zTWD*k4lX=z6yq4zb>w(*a(lu$he(%W|QlJNiq0k_$}O;0^DSM&o4NVp zQ##>xN*=nz^qRJ>ziAMA^rWZ1#h^V&f3aW)Pa+|7Ei^vX*9l+x07+`y^3?Q&*0y$% zYQr`{aytTCQW6x@a>!?tDr7-Y(4lQ^P#snHPc?)p&WkN?`DrHm13FY~u@K&vSiV9lq+)t)2Op-K=t8~0GQsM6( zWu~mB&vr(6OrG@a^)b7-mJ3BY5B+vNfUo1ENsJy zw;fj@0X@wz#{aW4FQ!cT*;=0+iKi_R3Q+JwVpU%0nx#RV8l99~M_RoJih%~8TK_}e zd_ncWk(bW*S6jZw4?o;O81ZG}Zk-i|w9!jG$skG9gce9au#$}h)4?li?EWyuN64x( z!kJgqH@AQM+E!}De&9g7<<>5u<*i*1FyDYx`9A;v`w;^#c=CFC_=Ms>X`7c7PlzD~%Mg?Lyq=KmJW*R1a1Q2Mpu zW$bs?O>RS}`Bwe-EEn5NC!F5fxKkoXpZd+Vc_F*`YFs^?{wlSJ$Q2bViAAFT9z$xc zyWb6a&{Tg+v#)kt+lnN4_^#<6zXQnaXcDB7j$<387))F25}=6=J3_l=h!XIKX9i4( zGlZzh-_GhB=4-Q?6%X4VcXEF-Ebj397SfnjPjYB7i%d@55^jib+d`vV>Gjs5=B8vD zja9Nd(cJ+uq*vVxYsPgj83<|#72A^ctCm)rYVi46iv-$m9ME7r5T z?fcd%1Bap3yX@fByS#q7-eVN&ie{g%d>L&K2R`Y=Lhr~9@x<)Xab+(76V-G!LDMO> zlXti?4c)!caj>&@s3i}HAH})moL@!G?LLwUFes$NZk|7Zl99C=ly$l>G?}*XU}JD` z?bZ=^?kw``K=(P@*IAKjn)f+0Ld{Q*Z@Jy~%l+PBE^Q1Bh^?O94@!x>1HGHX^*bef z^!y;=3a7c=Izi{BfiB)5Z6sDkMy+en>2IrNAp@37Z$mKSyaHCmBZr_P8QHd$kJ>Pl zq?p!MLjs18;X76ub#mv(E2Rp$0bmhwN`6~U^D>61AP29y}AXcK5_Vn z+QX$Y>VhhIgB+(T-#Je4@{U7ck8*$ELo41j1<@aaE{8zP6dQP@AKR`tlR;x^oa=n8 zfl}u3eYm6Snhg1!yP2%;M-Nux;BV6=Z}$%LE_=<$)qI8zozkyHhMC+DU|;C~ClK>7 zxT~p9)7R5_8)>3Y@1>gTiH?=C+KslszZh;_Nc|W%7S<4VUxJ%96`{EJ&j;zmZ|myh zlPPwf6DX496+PA0YqSlC!Qp_fExRJekOl4FIst5MA~ylIn9y-d>7%ygis%4u zF2H6!`NP|}vo#5%xs>pCB5T=F--Iay6>ehY6N^AIOuVW2kJ7SE&_;gkTL_^6M5zEJ6?Uv&d5@&{ZKG1nw2b~Q zmE{`kcmv$=XSfixh&~v(;6D1ZCUh-0Gmq)Y@p6oGj+|2sH`8*8009M;-)FUZGRX4q zrW-7#QC*X%SG?%mL*)j;`=;W2h_2g>oM)PaqrW!aXC8<}OP{#StjQ-mwIxL;`^iVS z@`a?8hOU{9p*gyu4N7_b>9__UvCww#!{vbW4!uc)8@>bQ^Qg$e8h;*vMoV{?M|o47 zyj`wTm-&FSUdrAFkByU%C9adRHO{ zV^>xp)&i7KefXly&hc?;+3BX8CYhMGzmGStEO!H>BZcEbqEi$UaOvQ+eYw`Z3REkgr-Xm%$d9Ok3j`t8tj!N%TTjTb$>i5J3a_1 zC1@{$nST^$BF zA7yD=SsBMfyPtQNL11wJ{^kMuXIq|d`5c`*QvPbpK~N0Lx{TlS`BO8hR=r>dGU#`B>^ljgFFV^e1IiPKr^H+r`8#}x|CmRvTc<+0A1x2bJng3d{=)TwnNc$qa+rITh5F&Yxp`2*&PLdJ1_t<-UFS)G= zErh!|=2y0)K#Apc@l87Pcc{MIh?HYp6OMU^n*ULV0}X(}m<@yH_FQU3C?=O~|9Y zKS-d{l~o|?LKTMF$uy-c6_+FnqjRyCxXQ@iXmBO+wpVx%y3Nk(`gLUET_6?+_jba$ zFkL9mmJ%pZziJ3Or zFYtlTYn%~d$Xwa3K4=NNodL$~qWrk2iRAg61NfOlBD3UnuD2sRVQd#(@+8T+u2)>{ z-%tcC%=J|4UjvrC?S~!B&o!fp>Mx&_)oX@+iQxe&U zeK=H)>vB?JgRkL>E3KXa?h%2xgN*Ler{7oTEQ(ar(!m|f%jAQ zDbuPqjC@5?p@T`Ypfdhn0c1#K`S*fPb~;S)4#~WPe~~5F=^-i#SiNR684h(E7zkVM z4(0cAmRB-1Fv_7y>y-!)dxgI_JP~xOXEbqQkuGIkX{-nJ|;l|2#jwE$2haHt_lE!^*{KG_P_a2;7!{Xy+sIuBX)e!cOB#dNB#9ncLil zezPt$RVjZUIpivA00W>%8n5iE0tr8<6&1py*PGW6hhQ)JCJY-|XOkN7?NWlcDf3R$ zmu82^sC9Io&A^-xIGhO`>(iE5u#q_dtG93pfXP$a$-~%i;#`I!*GP#sv+372{VRz# z<{nAp721GIR8A3=EF&L{c!cNjy-2R^xlg^d?pft6xS0IiI5a7Te`aX;eC-4HonGNz zfi|g!QcKaZjbbH-FVkEZAW^u?k%`Vj*l#J=*1I%~*-p}yOCC>(Bm^>3${@v1nJ~@r znWHn@O$cjoa8PSdLwz}?HrX&9ju~2Ze`eu>SukY|464r3vU9hQ&HDB&Vj=gk=SCH6Ps27>BfD9odZ7&P zL#cZg&Mjyp$iTARVPHTT7eOugZ_Lv~QCk^E8rB%kuv)nvZEvvoW*8<5?q{aCZqfIG z+*3}@DW!TEJ@R;hM7V>%Cle}MAD=?VM9dJq%@m+5Hf&h*E^sR9IS|6 zGhlI#7{#s4;2)*KWr*rRYVHK0*4YO5;j$>f{bQ*ZJZ^^Wa@9ZMM^&TLD{gAth0Y28?X2|WnK+z0IU<*2p_Qcpk zp4C5~cd$IRvG%gzBf1kAm}Q5iUb=y4gSNp!rGB&6?T7)%3zPfXH;OmNw|Yz-L{F9e z*CRs=q_%mLcR;AJQrVQ7m62_YZhgTeuS2r9dj{6mM6s@%`w;}3nF3G1`ML= zlp?@%YMsN1xyu}CzD2#_=TMrPOC6J^RcMo^YZ9`j^-8H5D~{yD?$#6#haLUw=0+Fa z`~5$7Vd%pC`>|Dvj$?b^;%Yse{@+Nin({={Lacvs9G}aQ7O$6GFzQ=Yfut4TJjSfTec&qu z>Pxj{eS&&{t?BbjeeQi;Zgjqs296!HyUI(Mv_-WP!q0B4eqGnHnPOn2OhS$KenfJU zNo}&4&%>KDw{W*kw_-h4m9Y<;`9RO9MIRJCI*3}vonSfUgXb(5{5 z*7ZK7%6qAWWu!DES1f;4`l&fBvvy|8iOgg9bGFc7@yYqr%tp4jRpp>uu3lUsR@7BM z2OhM6{=*2#^EI-VnFS_e`hwy$r7=t9xs>x&G1XK5d3P=bzA;<{GLj+wr3BM)8dmEYeL*>bbGOo;&E|h$zUGH5LjsBHgzC zFz%mGCeM9tZv&WXvj#$;BwABv-1c7)mk*Tu)Xl0W|KmBS|$hnuVo#Fe96$20amm+3P zNgJ)ohB2)}JB!XR$;MmXXCK+ByVSgM`Db>^{bYp;&%*xL65FrWuBWB%d8Ow`pN1Wy zq(t(@?rnjhIA;Of9LuV$X8K)#E1u&{u7Hrj#f)eDo~rPzc1iH^RU#W*_sw@M*>%P@pU7Mq`p)e$X>|{HH*KYux`Kv7)vfpnE#d15&28QPY)gyJp3lLFm|swb4Jo?l?qP_A6Kv+W!BHbM|YxCxz%tez*`bqyR{6UH}Q5MO|$^_Ic1 zDpEJ3bTbD^*EjX^1g|QdA-)WJGUpT0vz?8JHzdIbPvtKkUJVT*e7hNC{N&S$drvY- zQ4bCd8y`J9nbk^^(wRBFJou%zo#>aCdlHvPI21zQ!qyFk{UE-~Ou*|dshh%jWv4u61X*zx89IbWJX@G|>iw`y1 zk_0v5kI^62OoM3Lo*p?qS1iO3Jp%I!@epf0WGsU~#Le>>IGL0S-3Q13DrdK)bIgI{ z5KjPywMmg0WBfS5`&_L(n`?n$ftcj=4QQPA)yE^`&Db_-gTo`o*Y=3^Rox=Vw~bl! zog*4pTSN|OHIH~BWfS&G%_x3P)Xfu{Bjb*z2a0zLAR~%WlMzzIEEum=BvUSZ*D)`|yU|9=mXZG=Y z$O)0{);1~A7H0HQc8xVkEo~2{;CM_n(IXdnFVlg&Z=S*3_LtK zMtjbl*H;7L>8G8iwGplQ_4P8CH>j|=9WJ-7Oh2eWg2(1iD=X!)SMJW3F9VBh83vU1 zR$-iwFsY*fv)<$~g&MXHMdLU6F8=(?0y4yD*#(=KxTW_pu|R;FPJV7$m-PGnAIv8? zAjwUp)9wvLvBXnmu*4GucsSY6F|SrmA=28_ z;V}*Tyz6X|g5Dt_#;wgX*u~q*C0F9J)o&_PovQ7b!@K!iQ2mWjUxJjzmDa;y~FzYr#SM41$!FEkkc#O>){dfX6+pH z=HMC9!^j~e2OjbS<}YNnQNOJdbmZIx|$56Y?jIEk zo$A($AWcX$YHB?LZ?K*Os!X z=)jU?HypT|b&aa#+xdoy(~_KhA{8%%-HePjntmHmh9O3_6DMJ9oiQ$fR6*xhL6sp| zG31IdYF$!;-`kopFXTPK1av{dg5zWlkZX6R;g8Epi>?~gGd9`D0-%XWty|F z_d~a=?qwd99YRi8FZuha^nf|ggpzeW5_B#mEqw@Z9%D7N=@+dJar~(_US9XNigr$O zU4q3RNG)l$9g+0{i7fJF15XF|KxAS`tiqCE5i~3a&Ez9Lq`&(B z4q0167Zm=kKc#*FDPG3J8i{-S6me{A{4@D$7yydkxx+}$ZL)o3KQy3W z6s;`@WmUb!h+SQ8#z0ActCndD)v7DYPLAI$zq@RZpNKCt7WNX3M532L^nV@XGnwv>9cf)A z@ajtKfN{FX{TouVnb!`Z0&`3o*)c*cM1K_SQauRUa71dFU)FI zi02V+<yR04rd{{@t)Yl#C!$cIE^T1tdb6p1f_yF)Xa^>j`S zBbFl$3N_yc>dPG{g`tL)7*X2A6DB35auva7!5RbhY0h~mTE~&B?emOa+buUAlMce! z*6A6M?V5VuLKF{I$*hwNWc2K6W}zWdW|do^w#JcV>{o7`6#`uiZ-<{rggks#PUOBu z)7wc6Mk^(?T8@#8DoY7Q8pGoQS69xlKI`|LtuQ3XZO!&n+A4>fMHS_drmo;crfB|> zdxd|m)3qIzfs`&&MNL!t?pG(FUm|OBX-CH!9-4Mp*W%5YJ3M8dkzwd`HK?-4kFK#i zvMF!GDsC+x%c}0O6SRH3Je*Dr^AKd9nT2&c6i%8k@->z6HXSR+1OdSC z7_EkB+@khTl4&M2KhUeu`JPV48Mr`WM+$*k18v*eBZUY3>}F<>$3X&MIKiEsqg%o{ z1W(eLm5+s_8J)4$J=US3dM2A6jWJl6aAv$R);Pfv-A^^)lXI)$wlE9>rJH-m1_L;@c6c(fsraw(hK3PkUi_o{Gr8K~%4l~5;!q6i* zI8gT~5AF^8()V&8UmS|u8ODXyC4i9P$iEyL+k*zX3PN+7E$Y5*Hw+MFtE#F;{vq}-J;bRhM69n?TlSbe~G1{jbz2i|DfT;B_?6#4kI@0^j4Tv zRK~m8Ux4%srbq)5lS|PKDO(5EYI-EneRCa;N6*RlX^L z^D6vCZ8!eg$=Uj{xXYQFEH%Xe)soJ%Wf}E$ZU~Amm_rG^pFjP>Tx&O>wtAudg0P-m z;)ICG>P9qBEjF=5%+KNB6*1@6hrIDMk)4p-?4oJ_Oe(DT&f6$OKlgF=X<5hym&(dH z!VKkZdeRPEcyeKYZLR*!mvS)5Q(fQayYP3ygq?>UN$Qe#6fNl$BMuc@rHcJPm4zj15rXeq4-=w83s9<1aH%>Th zgBw1DGZX;dFI$h6oGBbP}+a4q}@x zzT|3^{VSOeoS2?&eqiBOE&46IE!_$mcLO#{Dh9C!eQ0NbtXTfB8fzI^8Q!b(IRzDSDs z{<;eHI*-QPF<{~g7gp03VzCZ7-qn6*Gj3PKKXW41)t9s}EK4-s6frP0{y7^Zj&nju z6xo&$CGq4U2D7fi^Y9eyq+F5t`Jceg4FA?*;g9a)uZw)B|39Kf#58#1n=&h99(3P( zeeBt0?gl@AG7GHraNUsxWy)pcJToxl{DOkoS>Uw5%Kt%ZXfaPza;srpaCII}cC}-Q3V2@q!I3~k{1OzE=&F|ntG<#xqJV=Y&0d$6 zG`8G$dK5=`sW?wLJ3q&1Oh2tY#YsQTCeF#uhGHWA^8s(D0xx6De1n^|aR8J%o>Pzb7?bH{h zfd9ravZ0|98+4-3+5onyU|F6%8CpDG&*Vt(47T^d{=$1QtQ$GD=4R z4YN7HMFh@2XvO?MA>pro{gTh&>6BtmT*{N0m452zZM~8D9W!ARuLf3UNc^LT1^`G{ ziK3OxQg6bfs~T!UyUK(gg;Pq?m^DMkJ+~d9;k+vaHu4yVca9Q{K^w8Y2z*39P6od- zc=zP&J>%qD-UEvLLScV;s)f`DMS!Impo&0`-+Wo?H^{KsWMxb0l#anIg|VwKpoi;i ze^a-mY15%ZGja<{SE6V^Q2C58*zrPx^EhqnP;maE6~?U5U67agqw1LMa@XB|LP$Fc zk@3H?Id_MVpV)AHb28@M^pkB^f6uDwN7Q4L;5PagsXBtu4k2$<`;W7rm<4;24J_;b zB+`~6v?0mK!}$MXY|S0CacPAvdwa)BVC&kl7s(fvFYaCW*h&Z~lRMkxT;q5g&VqD4 zQQUxfjs23!xo%LC0+F~%u#sBHqp)HsH268LgAqaNHjmd=|A=Q$4hAa3<;=o^BKBznA^3g z(YzlP=^$HJu&;t~_{HtWdf`HuLvM}XX^j6oR<0SdvQ%i}PWu*gCJm$uZpYw;wvc@F z2a~uZc!(@4$qbvbQoYlq0s?)=L4@RBL9n!>Y4y;lcqV3}lL}s@`kEo&!t8i^Bp{Zi z&_t86UGHYUU#R^XfI?g^n1>2Be2U7D69SBKI5oj{+TZxdgZEwEB|;c{XJ8i^T}r~= zm{{SEWjS3=km*2*=J@KpqpTnu8A&GbYkR^=Ee2f4W!c}SxjAG}a(*Y-1xu8(${``G zLct?7Lgz=xMTpq5&eZ?<>}%*KA8^tJ%W_qzbhC`A;$k2bPv2hZMVpz>P~T<9cjeV_ zo{DX40Hlk)uw&LY>PMd56!89XZ$RV9n_@#b2~a!RX865%&``dFbyY5xxu&}1N?J4( zF&qAL4{>)_1fGqDzaF4Wt;QAJUVbs3Zh@DbWrDjF3yseO1&Q zd>k8;lbb8;VZ|yI%gMxEY|hHnn!wP`-<4n@1KX|+K#i1<!VP>1Yq*}@9>~8T+be!Lf$;t`ln*@@D%7uBJV+JZ&CUoLJTnAE zDH-#mok@?%Mrf-@9yAFMwcz6EcYmekva_bL_>aB*-$AeaVQ@OH+ouv}rk9lumz$OJ zBAZ8M<73jI40ldrH3%riQ46FDim1ppW9qoj@29lk7ruWbEGsbPJpS4y29 zmd9Ecx6N%L$Sly(Jd1!jbLIqh+II{9_1zq~n9HOu)nYH9q+ZCuN=t{E-5?re~qKHbhf8QmlSfp@G$xP1B8t z5O|30?)a3+>}tnvh9(pyWxWO4tJ0-kQOyhN)5rHO#&;s2i%yn7 z;Cjj>z7tAm65#~9&w7GZR&_@T!34D`Rtk6=+sSdyW;fmPiukVgG?VIql6+P!${Wm5wws`Z^ z{O$1YnbPbA|2>D;79{AjIbF#M1 zTYW%F@mkGnV)Q$=JO<&wSBtmLwl#YAM20o06LVbtXW?a`A_=&kSrD>HN|v+GwzdBk zXK%rl<+iR369UpoHzFWNcb6bt0@4lA-Q5CG58d6}-AH$LmvndY-8k3Ud#*X>+V63E zKY^QPjB#FPT|U`1PBim6r#P9PJ_L+(<*AcNVey2jCmG3lN@L}88I?;ViDVezSqI3b z8UX;-vlwJuFGic3oJq^Y@(G!nT@+IoBX2y1C-fGIYk-uO4t#H~5D8*CK@5r0w4AHi2)Ze2xjy$afTK7d_%FRDfA!DM-Xo~Bws{l z6HI9RKbcP+HJR75du;*tU6kicoSMpCJ<^3ej)%GQDvNLNS8GYh*q}{o@$osq6X72r z+55Mx2JP+22dWR)rqS0cy>b{e__c~W{|prO zMux7vaL7%mTF-$=v6!ueuVt>T;dQiiO<&7){Aw)#$;Q5n=lHb9l-$fk8vWh<{l%AA z1Jp6D_wh7zOYxwg;Y}CvXdxd_%r@TuuS4s=6$+48CsE|=EK_tO##hzNuX0QwUjq)w zL30x7tnL=n`Mx(z)7{|U3vf5n*O%XRwoDqb)89PuO}~CNhIqHlWejaE<{%gMHL)JeI2C+2Kxo`n#dV~fg>Z`a#!Gs8z9=~GmxKiE@=#er z-nqjPS~+aTd?5sI3m$KWQ0ehJqmzw-%S_XS^|fPOW0d7BKui&dvQP^0_6G@kC@;@9 z#>-8xq3F@a3;3?ao607SHnFZFiei0prmer_Y4*zX+NF`vc4KPE_WrV2&A-MTsJZfm zlfOU^c{f4^yhPx^$sKG8WUcVBgo$WQvz86IUN1c69~=bsU~j3^SYzYK1Ci~2m2?x2 zvc+wjRWE`Jwl=4EVAK$so`7giUApj*y(N&Kb)=JqxkCS_X*0~guD%?V$y$PWbNrC` zJCYKZh%$yPnJqilbKzl>?{s08D_&hZI0V8Y+%Dl>Z0Lp{FfKVnUkC;$8v6aHHi)!b zZ))^km_$OI5)irhA6Z%%Zq3CE7)pAJRP9;bk$^kWhIe98f1ohJ6OsI{>@H4<%&071 zn*x*+mnFLW^_P^Ry7E|QDrX}@Ew_~6pDvB{h7dKZehz!+P>RpSAZMjPr5Qyv17gS` zgio#*tH9_Dkf6guCF5aCQByHpN)WN*+PEFtCU@Qh=M@cs?HMkvzS0L|IsFl?c(Vf` zUfdx)hXV$3Rf)I;?gIF=RFYCNshq}*nJUE(S7VU3nzidWf|Fn3QiX|$s#gLfeN+n{ zo4Y1|pw}XdFUEC?h!=zTUE!Ko%4=7yW{X!|jQhftXK%MFvl(Z;>q7|Bhc;AzE>G^; z{+QggGIQzuLl2(+>!hT0w~-Yd?f(PdjF1D)y|i%4eLHU3rLp&yXbYT?JbqzP%Q$b{ zHNoKqv(uRA-b}UYcLg@T2et46!=Y=>XG@Mfd(A&s;ySuTLc*D}9(O5O3}&6&7yYF0 zDAw_90Haga!9Iu>|JcA)uS8-a@>geB$E{l66#}itupHI5yj;%PL;zl4_$2B*@Ap1E zIH+353E;pLHYcnC4~)ZwokjBkHJwAp(^7GLaLZgN1(%a?1cjd2fk^Im<@s}>9KEFX zz}(L$x67ngq4v|{+Al(-f^7jIWFsnAT;=~9{a@Y{&#QD3)TI*aQ4Ivd^lMcUP5(Nc zE3Ui*ZqWW^Tx0`k5}>Sn!`TNxmh(&|W@frHVEi7b{sw7WU?WSkFWx_&iY6VeVrS}m zc6)oo0nX~FlP@-}o>E*h!us7&S)pq`!;1|cDY`KKgwe-c4z47pg?X@~v*=Lq65`J^ zKxctW;b8AZ_qmWvi{wYKHq=+?7G(zLfHM~`UM`9 zou?2XQTF$LGyH%Ax=`b-tdVk5UV86-U87~t2wV^6)nr#RB_FBG(M-J>3srrLFV$)i z9_QWe$K`TNo$D$STta5PFRxF#Xn?l~aC15oHJ8)*6~ZN2>UUHU+gu#P%Tz_wJ6poH z6)k;;8T=6^y2|v_u6M3Rc&cP}fO%M;x>Uiv_RtVkVk%UsH zg48>DA1aErcR}+0>e*{8TuUwjt+N$a9V5!R_%-ydEq?zo_lJ%NwcYpzG=3wUKG6G; zzlvoJ1)YLDAGqya_^Bbn?N&eOtJ%ja%4jj(^Tet;mT%+vRIC_9Rn>G{ap_(y)ov{H z1$5=NB^0YQna1^amn207+r%W5_MMSA7{0M-N>V*Rk z0qiP@8Z87iSvFhu+Z7yS0Ug2ItBVNwTZ>tRfhGKP5lB%KzxI*w#ZoKQV?H^XBPpWF z7T3Q`^;+X`sWH?AN4_h%tPBBdEb~#CqO8^s+Y;6-Lx&}dy8eE~zi=maNhB!H2V^-n z!KzQP)UiqRu^C{$C?rGw?GZ;O_y!cgP#bTj$EOtcl2g|8;Izor^D|cJCB#vU-HI>% zSnckR8<8I9NB~#GH6)*uI>4Oip@(eQDzMX3%Tkq9N9<8~<6lH93^@Vga$&o-ynj!u z9*U80!9DmlLb~x4o%Cs{nI|qYl3|!`jop%vuEbE3Q9>kS3CYEr!SZk(5ENA;JaFy~ zRE1;PHv?XO!n%Slv)V-E zDL>Z0m}q1YUb-f^&ugoC1A@*opM$l*eqbnKj_rG85 zvy*o=e0=+Fl2?nsUK0ZS&6tF#QP>8toTsp}i=*M8IwEeSQ(0qjQ?UJ}gV79#moMpKAilSNd|KJ= zy%4(`92!g^=!GE0@(&tl6Iu+yIYMl(CV7-xnE=HnmZrPqSJ<%otM+27@EGUExY^A0 z*bBr=Am+Ap^pMdH=?X5tba!W4WB-Zh=UEJ^CS!S7x^;T}Zu}Cxyl`6n>y_Q}O&W&< zs(sdPDx$RkKE6|+*)fm(N!9EiQTqiDt~M| zx9yk`?02fQ)UNr}laid{;jWdG0>q+2{ITn+M~1>cB8%o#KnH>u8Ske4jQFC+O{{7& z;C#Lva2`E~fgGVUo%2teahBK47(Z1+@75Q)*zA)rn_D%|ZY(6NuG$um7+@2u0l$>( ze$tSN`O?>PxVLV~$OMvOpfURIR0PV|NiYz|-1oG>k=U8unTEbu!^IgK3x8ayvT*RS zj{ipGo(pgY1AWqM(>}x5Z-`4mb^VBHtkg<-k|vW^ZJF_iCzKrUzBJeBpZ#5g53S^yn%N4y-fN! zvmo9Gn{2FY^hP{pxWWjE*h+Xoe$I?A`*RZ}Swv?*c(B0Mdhk^6MuwWtcU`%SFMh9n zlxpKyhm#P|?!WVo5q}`WZPgGU_9}>KLlf z$-qafYx}8$!L)~6s$i<$LQ<{%Y+4rv9yy`vS9pnnoWYPe?p*_8z<`P>lz6$Zq{JisVL^c+_27rOJ!1*7VI6vJLyd`FiBiU|+v> zh0c>VLK73tSeBRNnzRdl)r6g^kEr`f1BG}a&`A_9Hbh=He#XCW{GsV1(S^3oI$i+v z6s2ZWh^;1Jp1$|XhLx$|w8`i&-ORj&-(YxTymPYVR$bB>e!me!K<+w2U3;MIau246 zmcrC%);5*ja&(bFJFgGpE&}Oha{nb6_`&P9NJuB+%y`=g*FC3RXtBX(G_c2mk4uF0 zZ8CwrEK2mdj5#x?5^~e7ZS+9q*g8eH z!Rf^S;2Pv&7mb`?R2emYO#4E4S8mkR!I?7pEd2XQcDP^ zMiY@P=ipxCTR@`oHV#U9k?1JaxQTO7r)t>v#EpI9;~^nf2~F+@|J?!w-s;?dk&1kPKR7Yu8ev8`>k{|(Q6AQFc=uqk33lF+%{qGebz{24l;tVuR|N}3n=0bNv%A-`Gp~$N7eL(Kp*M#&THG57m_Do zRCH#2qinKA0a3V`9#_hNs*K^)>Fpo9jSu$il=5{T#7Y1D9eXVLH(V6j`U;By2)X|5 zv%t&VMUh z!h*G1mmLd3TmPF*18|Vr67ceGsU0kr+=Wauf-VC!-CL`+xUfid#UmC!bQ$F)^a`eVcD^7_?YTx%JVy(7q>Q8iHyOjqut{?e#RUdW zL~F*^kD8hZ@k^@lobp^1ys-tbj>Ic{s&^Jm%lEg<&&UfSC-#RLyYg$5Q^voVn>3$4 zBo8mTU+_H*XTnrGA2#fdo6K#+crkU{4xIYSs*t6XmqmZjH8B<`*BccD4h;{pU}hxa z_Ji`nF(+2gToQJ5pUBAve{Z6&wcGm1s7C~hI>lNL36P~F{A2;9;SbjLG< zg!75+oy#BE-XZ$(6Fmwq?zxIZ*@5A}8d8~}+g5Acot^eENDkR{``AmTB%~S75mX4l zcwKPREyG0)j;A2gQ*WTnCD}-}%T(m0ku(`LTB*G!08iqpJ)jydL`rK9k?GAbt0D@S zu$z2UmFG(?%`t^0Nh}HQJ%@q$Z>6kZZ);LA8Q!G{c)nF0?bszAxwNG;M@QV@sw0y1 zs^bA+|6MHMyA)DH^NiID*}!;jXH`=~{>6STq5-QvLuKwTGDcVKBH@)8N-ZX%vx~yC z2-sP@#QIPD2Q!QW6Y?rV7^JM6&;#lgU{??5aOCkZ+-(loQeg8s^l0E|KHTkAldFOE znbHtJ%`WZcEz|3gbvt!gtjp=(i&(gxb|-f z2&~hK5xMNN&QZ@x-&lwZXGit6?+dVE&QHXSxfHm^UZm^4%Nzzv{_*%n9Me7Qz{g<0 z`m*qqzM6`PR{DB&#;tX>d-w{K30T~cD#`IK4P&g9Be~=$Ab#Jk_{@?K2d?-gT~aC? z(^OY=Gw$2rL-fa8{2wj^Rrla{v|yE({#f+yw-m*MxgzSwUm?}f#EE_jFvWV#A$GHM ze0Rit26P&#C8?6lr|3q92mRgKM!#L1g9OyDg41C~J=G+@_!&1@IuVr#Vm91Anky2%8`;?$#ZO+qS3Jy2sl8*1&|d?TY7AJg z=%p0(+0#{RvpUc#cV6zOo;f`6>e^kXS2sUerhNJDWS;of(!=ba{3OhJzL_HP+6M4k z{6xLzX?;d>JDS+OSsiP+g*%~>U!kB`n(7eJly|(FB$21o3v`jfn#Nxn_R5CoP^OWJ z0Irix+Mwbh0EUq8SQ#ZzZCMY_mH(u1J}(DH-%tA?L;Hp*0E+$}?FU(T;vs+m6Jzzl z*U5P&U$lW?dhrK^E-ER9i{YpeL5rT9E#J2G_At$G^-=WQ>>o^ojNQXdGEfq zO@CT%?bnQ2VX;~Aq@^_fWITnBn=2(X?(tAhJ8JPfuX~Z+%Kj zY<=7htu7uLomomirejwRuaa?G?~>WKIx$8pSGRzok}SB*aQe)U{8Ogl$Kkh=j6-Lu z2u7+SN#T2$T;|V;(3*Nk-QC~tnZc=zKUE7#F$+$JM9+fOoWk*4azARoO=Tw0{H zWnIL{tRBb$vzocRFuIFdb}HgpSgGthJ!l8Ovx}+tRo!ep$kkBy>yJiMlN}w%8i6>7 zb>p6eNX7i+aXC6c=9xJ7D{+NzBS{Gva+tZZ>x7N=+;Om~F2s}LSqUl>31m8P~bp^0f>*%>MVg-N}N~tbAiGLZ1|vQAdl7KQV8A1r4#Gz}7Da!v_B0jtD{_ z1m;;|pn+>=u*=E$BL1WE!LOpAtzOH~H)F_V?1tS0ojMqoAl)9V#V=uZ zvrkK79?AdU&{MPDaR_$*o-RwOVXe0kBgjG=U-4(#gh@nEhfxH@R|@(1bncmpuy)1n zEhBvzr<8H|L4d?mMGJT~&gREu(Wlyaue3in)Oxue%4|w9389E%IkjfszFuh^H2zB* zQFz@LhmE`%!f;6!E$gzIxQ8rHtz9By$7>Z1(hj<}fj|cqJ}fvA4C^hURS3yx27Bxs zhFL74dQzyNBE7f;kHRy!KH+?1C}Mp`y;+@E!=W{_>N-VME1x-kAu>#pym4k#ddp)rfCvExR46!U@(YbT~^Md_C z*&+MiSq{&jBN24qXMuu%{O$G?$-+f({*9#0`@F=G-JC>rUrN{oNGxl7VnXl|o)@Gi zcu-)69__Zo%adn*>Gm%|BccAXTU{p1tlwFQOzNKiiYl=G6)9F&{G#6f!_F?I{TYBaqO}6?8x-Sd&OfyqGGJP=+PzgulMIH>uKCslJg8}e%ifi%VG&F_5nz=hInwaR&YHM(>kY4d>zVoNqGL`Sz_F5z+Nw;!?LFhMj~Pj*gW3!*Sb$J$mGA0ay@EB3*?gq!~$O=f$Z zB`UwY#q!!XEWo=gv)t>`+cf5{Bo`UcZfd?;n5x+Pi|yiLup`==Q39=R>|9Z7)}P45}nSs(ForYJo{lM=Be`ioc)R+&r{$PL7)F zv>;bg%&vf4Z}?XS1xo7j6B^(fd{ee;S;^RVH(RbSfA$wkq`-(l{UV8_;HR2^kX^q? zmYD0m+9E^cXP6i?GZrk4vT;jk#K^X-w;v3vuCMiXXT9D7Tme6^HtstseL3>17!PCH zxMuKLwMX28eGs*1Oke|PTP2;{F)$LRbAuRgr&3n~RZ2z{QL&`r3RcMNQ)VnK6k>YU*CldeQr8s-?%zLVv#QlTF@y5LyU2{EH1;J zfJ3zPo)dX|r1jqBVhuSpEBx)CS={GB9QbT83dZrRLO86$JlSbV2ARlC3#gZih)GD& zu*Hxdd^UD`WH^ROhtg;;<8ZGcLKTFUmEN}B-)&pDY#;tNhrf9c1+m>)fzXRLv#mk5 zcT3jtl71EIgjuope*OJY#GWzRv^U!~d_2Un0fZ2hAWkH^0q2@@@?8i+z=m$e%YOcc z#lP_tUoFGUxSDGyBM%G?;tauV2B*bd_`kj~ckN&P)%IHF}OAGYZNaqZaL-C)ti%g-hn)7V@}_l^z{=e%RiT zem=nFaM$5?MKYwqTl9f(i)r}~km3*=6J>Vt=DJrYe-QDhW-WZX=N8gPx6@7P(A@Ha z>0!th@yHihhG4^1g;sZOB|5Y}u^iguIXKC7u498a5omdYI`XOU{R~o5y51 zc9snhl1+0$QgQ}rnivvvf!{`BErC@WI9WnfdAzA!Q?{k@7b;>K(Aoe~HG=-;c6ONR zoZAyXtA}6O`jqL!n2FCRX_OP(axYyEz}J-RGK)@^+ve*_efI<-3}Cc0r#@z_%p6_m zAR9xZu_@MLn^4J;Rd!F!P%{$Ag&QA_nP$5W%gU0pM<+=WlLHn3NT;$%wO)u{Pk1~J z`R@iT`%F15>&$%dE8$T~gLFA#Y9dC>esr<6ogy-?Cmfnsb7OBvFjMo*!`G`+k<_DO zQs%TYGEE_HzN&ERzL^l>COdnZyhRcsOO3)Fubm`jFr;TyCdh}-+oY1^*39mFK2_)< z@j>xA&>QD8!+eZHD)Js-mHf|Cjd!=$1v|8F2p$u?9zbRzrq5?7mE>zwFxC?&c0fn2=RvnEAZ}S=Y{SM#?7H_6Z`jI7@KOP?h z&%``LINvb_=|r))lt}*O{varh#Ozny?jDWvW+(aMmL~5|YB`<Agwa z={eP(oTpPyG8v6OHsfsAt$qwC^-CL5I;aRS)dd{9Mlo{47uVBOQMDht$@U4Gti-qM zVL&j9%ZDh{uUCk=?C+4MqbM$tpPv|I+^7V|IkrM6dmwe$^=B+)9cm`rQY-LkgJoLQ zM35hE8bMa+P7jZ|iaWG~4eyUPt}uII1@A*+HLtF+cSou_uQb?|(k$59diFVh7C#jv z$Oqhm0-M6|&aY12W-RS{1Hlu)ZW2DP`n7xL?%o&8T9L;V+8R-{eD))fpkMhkAQP?` z`eetp7L_BL90?6M|K_X%@)r@ie`lJCmOp#C^7y%>?AYM=kSuozx^zby&tf=0j0a)>-&7Rsy4)w(8o zLaZ#YE_!4Nz-T|%hBF4l%PS7F1-~3-5UH;=;!tFC3lq)2%i0ZTckp zKio=WX=n@poxwxGZ}iV&w_Z}Ij_+Gb$*61blR4OpjNxS@t$YHcyV?7i-ITs#Kfv^_ zVna(AN>G6|-m_@KgGu6}->v%??6SIVf4a-Qc1z(o?VDiYYkWp@34VrNc$WkO&6dKM%f&NCUe10_l`r@uHs(zg}HzJQr8E)B6;2(uOi znX6%xH6h3RP?p-kz~8m(qH5?VX#D!ikKa*ha;HGUoEmaAqoZRWHwp~lY?sL=R$nafqEtt#q^E<@l#JB-k<`rAyT>fYiJ2XJ(R$UV4)73)lKp zdT2Qa92=0vnyuAZVGyC_;z(-Q8Wm!pP%3e>f__~58@50XlXp|5m%sT!I2J#2VEXF= z;|!GJ8#8xsYPF>JQoPj1uP)}C5t_k=kqgXWA5Whc^cdoT(i1&QZWtS;o0KYkm?fZP zzv&4H9v=7SJ$?V!Ug{2Vzm_J*6;3T!x%ug1;NrIdlTjKRt#JK?A2G%KZKZ^w?ab!@ z_GK%fA$K50_(V##2y_z^BIUfF<3++ErE<$jC z8UK&}^5U2OhEM2}x{NIyg+E1@jbgks>Xh8~#rLdB?+i07k%Bcu+dW&|%NUZsniQV= zva0Z_L0z&9vW_jc{j<)79D0Ik-k11leXF&01bp6n9$n{}1j1C61#Vx=ZvEZG=#Mq)kKj>6aqmBvTC`FFlF{pjS`mX&htU!Ap8faQ z7$9Jv#?K;V$x^3$qba}Y9pAQo?eK4nXoTidxRF&k$wvgk7kFQ0g%w5#mzN2=j(z`t zM@VCpAJKp9J7jjqu;c|b`|~fqOBZ&RzJ5IOrZ#n!jIdMFG0MWjfdjvM>sDEx-DIwa zcGA@a+1|x3<|m4moHshCc8=%^bJS|6U=n`7%txsiyKn*!}YrwzG!wBRZfMTicEG-pu2`<e&_w=7o)zA|v-%n9I7nzO%|zfP9ef@S!4PR#=*$Ose>I0JsPPnbTs8()ATFWQU@vI7 zeF}9_RtF-1+zQ@D<`ck5`av`^DlPx?l% zjcs`BgM~B!GN?GJy;d|DJd-c7W|c9pHM!d0i~_Qw@RrEk}feUu*Ap#;Xsoj^i}f1_yac zaE>w_ACKmE)RPdQQ40RYAW~Bru_hn+`xE^bo~#$FH%El>$4gbd#Mn@d#q3`!NG6|f z&9~A8LOP$Nxp;K4r?h`~L>=Gxne61cADQ1xX}T~!j)ty$vbgWhyy&jQ%c^zl`gDif zdcx3fTZ2E|56x#RmZ(l8tn5Dp^5*!9um!nG`K%u3IN^|pydEEUp z*jai$JiiDBt{lqDI=vqrvx{ZpDgM#g_AUImG@ylsyJ2(6vFSzouKc&KeN@*^@l<|} zx`_i6T?@Y1r05zpMXBadFm)>M^_QrG61=8l z+*dQpql?tEg!lJy7c(AK@6Dw|Cvb~ko8kLlXQP;qDmg|@wl}6ji!pmtlkP3I6mdld z-aW{F%RqYx8slkI-~IR zR+d+YRwtcoW0ca7kPZ=NZiRX%nPd#Inv{9AQn>sVq-!zUuWJdj`#wrEbYC*Mzwef{ z5Z04=2((+tZE}RD%zj*X1PNT^a4PT;j_Mld13!TKD1zf9m(zhmRqJP6^SpCs>!v^+ zlL(Vb;%4@{uEf3L*5%Xk3ct^BmS+3!?r5#`8jlpwz+7|BAN2P6H*j%vBPdza)Z0u4 zc@)lF+r0#uF9dk){ngkFYr?^rZYhz*L!bRQcY4D$*t26WnmH-xjgGyI_fVD1^s(Q5 zjE=;@%r&(tTY`{b8d#Nkv9e%hL>iFo5c1wbJkIbshw)fF!*aN#-?Ebqt8IGNWv`pX zuK3td=A#Gc7h=$YF`Dd3w7BC1;$-u5b851DhFrqFZLQ@%M7!yfT_&_BINn`W#SH(u z3YCX0U87*}Tq_53VNNfY8-1J%S}`|bpHwwy1Zpy&?-j(kx!H>=vO(RsQ4oJE_u27H zvX?4mS#nMjfq}LXe6GhYDuG}2>1f7jDS}w zf*Fp5tau-T-~<6`Yp%ATer;?h}bRX6i&GRa$TNjlV^Nm5X1LVT`&D!Vk{P4C8qS16BQ zD3^`Z*bmWaHalfp^gCr!7k#5XSK|y%Drafhz-qwZed9`QoW!9XtTMZdYmSvRqtaX^a z8Y#7Q{7UG6zxQjXfg5Nn9(!-m6_52N$Ygwn;@}EnYV+BE_11My+g!QCj69hcY=ly) z#nW_X3EHs^oA_aHNKx_O&3QU;^F{KC13Y?=N$bPI)G?RP%4IX__$XZ}8su3fe|Mj0 zRsT?gpy`Lj)>L~%44f{};jlNuY=Ty0KWj+RkVJDwLMM6%*`z#fYC}hbk3E2eed?~^ zJL|Jl>Ud)Ycv(F^Yks_911;lOT757QrH=Q-t`7dO_12&%x6IGE;$pbbU(yH}8t%ca zo2PE641YA^cT#5JiZ|vY{tsIX7~U4JO%fQH94{{S)ZjdI+h+b!;b6%`UbLpI@4tX- zKTxwtP33T~-;kQ*^hf^oMSfDgPR%n28Buy=s_v+WCTmE-m6ja>XvupY^>4DAPciLv za`;mp2c0OXLkW23-9}uFV!DM3EeFg5E+To|$d>L4mc~(Px9X~TwS5L71m8!INA5?! z&ND5qYc;az+K4~|kXV5vZQsDi9>gcpj-igE<|01<@){?hYt++iIwJ$#-hpeplxD(u zAoz&n&XtzuVnhErTA@agcrPP+BFv}HuihcuulMBcsM8YWG(VnZSsn86nscAoqkPbE z$*c+cS5jut&HfLqio(wia2N8m`DNC!lG!o7nd&!f1MQh^|EI;qsc*Zp{KMi;L|<+< z4zkGR@QP;tiGTMKu>e;-2Tl3pMhHLln^oddU{lN>=FlQtTKTBDt>z7uqrzGMSpwnV z&Wihj-MG@uzEo{hxu==?L~Ff*EI9I>r483!Kut`2)oK??t^R|UZi(+#7Laa-U_;72 zTZ&zDCs|OrF~4cuCRg9h?yj=)&hEqoCZR{*(+V=TV5;+lX%(o2Y&|I}$T)oV9f*h- z;RzZi7rdc_ioD_>u+VvDz});W3HGw==1(+E(VtP2Y_!S^`tMS4B~oXg8wj0IK$Oxr zzmWTPQO5rmY~@-6$>v#)_s6fpiz)Ug-D#}~v7#||Dd2$K%Duix{1Wn4OnmE!Lz*!? zgNt9Zsxs#z@8!tIcF(feDXBx$8yj{IEfy_Ejh%GC>#moVE_8XVaF<*M!dQCPZK!RG z=7PFvUJr+7NYs#@Q|HlwqEg_re_ydr83}K2tpc;zWH;Cf74p;));c`|tlDz@(7VPX zZr}SmO_9>mEl~~P_`F)^GLoQ=&2eaUCHr0@K%jqhMRt1|9RBlaU7{!evx_NiFdVRI zwBx8VTnGaHbbSZ{cW#&R&m%2t($a*fxv{{a>4M?cp9+6Qk1;e`%GTadQ($W_=Ql#V92iNGmbrL| zJ$QX{a!X7Y9C+^KzDGcnWiWAaUAbN{RX||EpfeDlEVs~Pb-Q+05z)K^5vy4jJC}b0 zPs{hp(imJ#lG6PKO*^a=sh@SgVlkh=N5&G z$vH2aCzB*9qOGvy z={e*ZJ4`dm>!IyO;9?JwO40~Bo9NlzVMHDp-543NB5sFJ{81hN$9=Mc;C33IZ2oS? zUQ_F7eWMbHzcZSo$n$C$UFb{_SK@cPSzs%f(UsbhvIJ^S!;OkKk+cY)qGmvx$XByT z2xri5H@K6s|Av|X8}#VwfXYNyo=d@}{s#~`D;nGJ9z|A$wjAM;tPP^?Osh8GlB@V* zxu;8Ax+kO!Vg;eFyIyQ}uphy%`=5;n0 zG}3(Gm(GkXuu7PkI2`|qI{9fe@1*=+US_iU^px~yvP_tHz1gWLA07QTO%ocE9q!r9&%IiE?c1Zj zJ1%llTn)dpq+D2=Ja&%3pN?ZifI46ACJS5Q^ZxBPy%@a8-adgUfq@tQH0Tuby9KoKdxmVIY!{}&9(aQ!n3dP)A{XpgZrMwU>3#i_3OZVMGx zFsW+?#cRPt2NbQ7wotvGDp70Q{4A>9 zBn1)2X33H4b;{X#Vg@&;xBL+WmJ;}Ctf?BS2XjBb^_r?0O6aq%6+#ZJlf?fl1&%7& zlIxr3r91vqIW5S>wW|ed?Qdn6hpZw{WI_0Ului{k`ks?>4U@e!e8&VKbz}tv)*MUu zGspllCOP18&=;ycmE)aO;d(aX(1=hlCHzF?gO3SBUDxYMd{#&`bXOzz;lRa@J6*k> zWbhBS`xSl(|Eov@4?fBSGFih=JM>`y`P%Y`$1A53B0w3jOz`td=~Vo2r~-2{?aN@} z*{~8U)ldNDdU`&vVt+C8deqVtbMn=1x~>)V z&~2xTL#d;>a8Hd3@sJ@$O&d)rB!S0PFc*zlC`Ki&umS! z!VXK5g4av(S&EDEPqrQMPB=J93+45tikt}Q_=q=`)rHe;R^jHNcFcGtpYSS>q^eBF zg4N;aqHe~B5-UYl!fYG{$F9+qes?Y=9HD?M^=rlXP-87KYnf!23#3n!P;fonjCW+T zoV7ID9v5DZ&wh>1(N8ROg}+5R+%b{X)$Rd7xDB+nB(yvw_uRNu#R4{*s!LF6R@G+L zy2oboXf6+R$yLKtvvDdX^>59!m(awvB(f8%lhf8 z-&~%fw*3Zp4LsvNlp@{4#hV<(jUPnA`0Lj;0udWVaSKO5WOWZJ=?)+S04&umecT;g z#%n&$#?j$C3Ah1;2yyU)3zToD*vRk30oo&yV zAyMujje%CZWU_CI5$LdRs7|;O9F|tH>acvcc_k^y%wzP4cx}aX0a4+7LQ=^nNh+Vw zfU}cUMARDdl?IjXOp7zJ+q1(GAFJBJ$bBbgS6}t2%(S4HpbCNQ@UQxxVblFIfs6{0 zy)551xip$)Gk$!45`CZlfrm`cMEPO8j_Eits31h3&20u@v>3)Yd*Zy zbMA`AfGbXwZV)nwwvUllv?I<0m=A z+uBB6X^Unf5iT$(SNevYd>hgR$7~73?or6)<){u<=o;R>5rbfatBesC*`IwniPAdn ze;0+RSP6pH3KpSdf8cx?pyWE%e2obdth@ur5K5kO3;V357IdVDv6UQEO;s;QmlM1M zbe1=Ygx0kyMF`y7EQ;X+#U=K5@-sjR8K_%X+Pep;DmQ2rnMZZh8ViH$(X2GQS@}U- zN+iRZ=#{0MAln7SzLNq`AG10NlrrYBO;#UVc#k$SNhw_aBWPqYk8Ot~5zX^qT?G{Y zd40$Ma`}cwoAA-=DMTfBw=felO^3xWyNxY}92{lRv>(O92_;=-yTy`z_C&3tY6gR% z)}SG!#xns}LCqd&E-x-az&-@sw<1Iw4hF38GG%#IA7@9H(~nSYK&0QLW<{1s{c0+j z_LGHCajKBpObW_1+YAPk@RN1*KHC&p@z(JguD-C<2kloY3a%EGl#62FCTA_OYV4}8 zaD|*aFt2R6t`3b`VsTm%xj7T}KhHBZRYZ0H=ke`qeWnc#{bMsFuUA)|u&4YSz@y>K z?9>0z{oK>bq`wPw?cyO#W398piE_~1%(p!_310Eg<>ryy&+GzADLU182n zML*R(=-qju&*1lfF2`h~kgy;w6`uyUFZ49+JsaTaG+Rz%aciwsH?2r@wU6h+%?9*7 z`zKo9WgR~c8SPi@DFGXfY*28G%;~<}eCF2N*?{(ONSl~q=3&@46s*V6 zS^&7Ve*>`i_3LgDE9}qW!9hOAb=L{t4flqvv$z2oPb+;iR?rF)hjvXX7=JEV(XFVS z#`}8OED*XaMmM|p$yUp^Io8K5*#!mlO&JCr=d3Hf$K~3V>R_W^g=Ff(F+sn`-dCpU znO(Jui+OaY>rY=SeBQJ8D`IHkz0>QF0y=;LR_dY!GVheaY%txV-E()iPYZzZ+47L& zLo!X|T6`!f-<%fwE}gx7mWuKdR9+|C#|4WFS}t2Ok4dneuDQw`ACrCpTkzj>qrCM-W8L?sAG56+_UlhmTRlG)})5sT+o|J|1nPz*S5 zf$DX~Rj0`4sA7^*vH4Zru;$RWuMp0ut56-5IX?5=9Gj=jELN(jULlyR*>r!L&KhY` zy&>!|aKn;iR@|AQL{JjsvWklOhHE;&(lz-CCATX+oAf*&F2|IhR!kdr{VbE@=+NOP zBZXx#vmWOH^QMjFeyFr_n^6dw^UgK=rNI!>0Kw6UPZ8c?t4oBq(LaWl{ih8xWxWR` zcis%1xj9-m&@J=rdnAA~;SgG#M$FW0EiI(n#d$2>du)fO7dnTr4B0_WH$NGsGz9e> z+B;wOx1!N`d?wSXwrN0v!`}PV?fnGvpr%}43ADJrn2myUy{ygN4Z0>u zRbg%>2`-b@^XVu+n!XMHBaNLYKQ}u@)N|}P+!@%iw5W6=`XuFsU;9auE}!_FB1Xf6 z_|=;=7LviL`Un^ydLJ9<@@8gd3ky)o6Ta|{YReJDysuScxy$q<4ETHySS$^Ffh_E| z3c>y@=iAnNvN(6OsK%)_eeqC8Osn%SjwW^q8qlZFEvvhI~B zXWXLZf^PbY|M~ox;ASv>T*5V;1I^jPHTSvi{I9onS~webnH?Mk z>^09T%o~nN%sJZc^uai05|Z^A)axwkKhq|uJ!aW*bKmBHpfmPx`)IL%a;bm!UVp6G zolb_Tk9%*?ThF<*;}ZDC`V2`2SWk03%Qyidt&c@F3+m)qJYgdfCbux>sq8~>O>1G4 z@M@>Dc6#87XgT_YlnoW0s)^7FYzcsNczxJ$@wj3I*?gwQc^Mpn`Z{bm_{ZZ&t`+|- z!mqO>SDh8ykce+@6N125fcEI5SL8Os3j)O8|6hAw85QLoy*ntOfS`b&ARvd75NRb9 zlvKJ?P`bNArKBaLySoM$N=c==h5-S|ffJS}J^X&0N**=3Qz+32hOPo1}9EB=e3-c-#Vc_p5{ z#xN4M%^NQytw+C4^9-?c^edx~klHzvJa^+4VPj_{5qhz>6w`NSUaeb35)dhs>gLAu zBjnOOc7C9D48CaaBOA5yY?W^3>(D*U29H+wyU9%@6wn-KQh-vMPAkZ?r)|k%IG4Nf7PczM}S9m&Q z3;qTM#rZ=-UzC(yQinmGEj;P`Zt*qgzy$`W2&0SWz6w1P!_N@csWYC!05IQ>p6+h> zSPyFT?A-G7@%*mcUivNEX14OUOswJ58q1E&)LKbXbfNL_K!>rA!_R6U!nb+TAE(2( zDs6i(9EiCxoL77QZ1jEq!KRIIHQRZ{3Bg5`EoR%jl~zjR!!y%I=O>CmmRpb=L+jMf zoUyyKBYkTnL~i2LI2xUxjt&&Fk^Rphp6T|jed=izovQ%Vt(n4LQix%0Se=jFVH&} z)7&-Lp4fV$SG^`$o18@e;E|78D_|Vu`w78(KDcj`#YIF%AI_|vdatm>Ify7{*b1c~|GbM7~ zj6pwmhmmUQi2aArrF=0aER~NaF=mFtG1xPLTPX2GV;z*8r@v@R=z7{@_gh;$rQE`0 zG6!z){_SGU+mOgkf2pq%G}HALW8-n^k+Kc@?-;-LXohTPJDKAdBz&Bo+4e-2rR)_j zo+QJ!%tgo*CK;7T!Ihp*{XX682Y`;XqUB-Yu%{Y$Oy<-~YQ2@P*{~o=;##!5Ra+Gh z`TrW`=`jvPE>?Dsg@})FpK-PFp0%GKnHc`n@gk$smiBih?-`(Y57oED*U{iiEyFa9y3!B{vQTIIDKGAXJ zIuCTwpTFV2146`hcYjmDh9A5>+}y|ki^E#q=BLY;k$hC6NkF(y#DdbQ z4_O`qnZ;b)V`Hjf1wlR@GO+ANHf`>-$^|HLLF>4qTe*wrCHT!5SLBQf@Dub;<__`_r9VhxQo7ayW#%=Dq^^ZfpovfHl`&arJnHpe?Y~n$A0L> zZPVSL%6H(v%MThevkpwkX3?D# ziSDvREGaA>56_P6&63-wfO3i6-I%)%X9%aUidT9aLXL5ha%6J+<3a5= zs52Yk+#i2PY{+j89k*(A17WB^Q`m?TFkqHqPfPw%9oIK2yf2Mue#k{#FGvwI_S>U(lE4o_afg>YbdSij1EU^0eND)- z?;-rKCk9~jbVt~|tGB5HtQSU!KAs@o6%b56Rsu>BhjG3&^u2uPrEmyOs3ny!7iSWu z5ra_pEObbqDyO71GqHBzmamRg;VO8Ic@w!lm@8X^+#dSUtDyLtHuBiZZEJwjee?F z?Tc{QxCW$#c{rJy7Df|9S$8ft@99L&w)@dwzjStlB9bj>bi;i}UMn)b zUwHVpV`I!dTw~x7ve_o61C1tXXj5<+e){$7+S0O2xBy?`pZqBovJ_OQ)RsVkcTGzW zQ)0GPK!oJ+w`M`&5yOmPKFLpv=~KZ8Sju9{?XN&Q;xP8rnBEZ_uUT^J`~GgE0P0IV zWn@#o-$vIxiM|`5L=5!B37Z?qi`u|0!^fbu^|P%z(EqTaz1(yh1<1kFwtRnyZTtEF zOpJdOS=W&j|6YN)8i5Q10>wB20FUO{eL1#9`a1-r#h>+mG5FrSVV&2u3XKB@y=pxD z1D$+5JjO-Zv5(rfZ=YF#n3?t3-y4$~Rm_5fqc}bmq@85Eb&ff8?;j6vVA-{_cU{qC zM5shdCh-_b6B7d$ZX7IZBNh%UXb%&Xl~!<=vYC?k?Uwssq@_jSI7kfG@%F9WLmPE#TO)d{wf_*dHuC_4*IrPJ z#nHsE%b!H84CPhUkHo*-t05Ie(eXcu>oDXl>I~`pwrr^meb*=LsiT->q)R+mua)}N zp7o3H!D5%sT4??Ul#t_N=_W$~4)bljxEH>p&p#oqQU;rrnZBsi)L5q1ab{kLPKPVL z?;bZM#e)Y*zB%5rs`K&p5KZZQ14bTWSc&P&8Y30gR-I=eI7&wErqRW?>A`0O}>y zdJmJzRWkHW{J9A4h;GnzMTeNI@$Nx}TjSPUznS4RG4c4vi}bP+aoKbKNJblp)g|hg zk%f7zY;_o8QmQ4NJ9hXoX6I0iJAe6MNLmBe3VPswL!DYAzf(+U8HK^3Vsv)-%nw&z zs~AhBoMk*s><`2r{kz#yN*-e0udC=P?X|FD_whl;?fi0bn$m1K0&B5^Fvrc9d$57% zFnElI(mav!K5xv>HErczax@b7&1HS;fWVXNZ%+LDt z|5hSvS$~XF$D_Y?zBGRAaa;Ax%psAkhmtE&J|KbA^eYI502LqgjKI0HX~DAY^gY8yBUD{il?5=Z%#3``JEcuk5U0OYxf^R`s)&zHTe zRCD4UDD#r?F^pn?o?&Bk%F?eoe^j)isA6@izlf1%O*R=R4J*v6Aa=>A|4}=<(RVwg z1M7pCY1%Eub`u!59_HWIaT{CCYpFTs8awO?70oC~i`3|i6d-JCt}<5^zAAe4@qNUd zZ$PV%BUMkGLkX+auwO1>pJKnyE3PKz+X=rQI_k-{6S`9McxnmpSlC!m{20i71Llj$ z$<2{^d3=c9x@?0=H}|;gvvIfo%KF07&mll-=$<|N01|IXg^&NqmqlvB5ThJZ!W8#T zR48dlLSrzYsG}kVepjP+23Ho83dU;> zrPNqC$`1x-_lx^5BTc!Po!eRrMs${@L<1W;PLA7>j82Dh;Vsl)u?UYRx;~ow31K`vsc>b}KMQ?P_jB=M zUPiw0m1A36Zkbj)vwMewhuL~P^8VFH<$D2GK&}PhQD}sqdR`tfa)J2^Zui!03|WWocNa@ zf-OTU>XNHANXsn471A+4Eey*5`mb zR~gd}S-Fc=f>3#=qo9kN}d@G=f(%dgyn; zj~+diwg}6INsla*yp);l=g@EMeOH3BY%5*ar-!9 zQ^Md{Xx$xN2S#ae)N!SkRdHQnWa{ycC&VATo}0ERNUsJOT}|gkY39{5{Opj>KF$=r zfNUL@(FbKM`gsJn%aJ=yloI*Oba{-X^c`{cxqcU#wNfhE?0!&7`$3Y5Hbk{UpEl(B zbWLc)lNb)ow2SCXUPHgo}1{r17OtLWDoqC%) zd!guoiq)Z(c=N1DxqVI}Lq{8{+#@|1^T;lx&YNCut{PfQ_MR1o%v-LCCe$02+%jbd z)vmD9>h`hWVgc{w!KWAPuG3vZkx7WGs23CN{XB#Q;7hj?$x#Klyj1pp$T9^ukk}i{ z=zm=(eR<&5l0ENY5|i9e4}(zicX+Nypr;=g8#d~n2y5nK5FNdc5zZ%|OSeB|z5 zBy(5Nu@^iIRUD46KSL5b56dcw3cU7)2@#iVOK6k|ML0J`IP=&fQS&A;Ar^;%?%hIa z$H$#4FFa)>kx1YWOdobOS-hp+{^EPrl$ZP+(Q#{epZAB#=&n7Dax1l_!~;fa_YmQo zya~*U=(ZC@-MIHm$ulIMx_oLAo0m$K*XSZ~JY}0FhmnY%sjFAV>rlmYT-_Z~E2D&S zblcRW-p7>>gny0Z@@j}D<;E|p2(+5|{uty(c(I7)jV;iYYI{BSIjE|3clO&_C4cOh zo^#922d8N1ri9=g9EOlhZ!5KZGAU`n=z_7%GW)0yTD+5pml-j&y>KNH=t)NN{k=nG z8A-{w1c{GXwB-j5Ve)(q>g!1jk2JfTl$Z)`efBdY4uv=lIY%p)(+388m%w(ZUs(PD z=~ip4S%J~7*GDRah+G*HN}yb+VgbflIv2hk>XjiauBm>P7M#=YJlEZKO4VjCakgUB zGGrpTIOF^EH6&PeE1rE>eO~p|~s7goiIT;r4s@xX!H1!0= zHz+EmP&dZ2{jNzkFE6%XNBbmIOM1QxJTq0$5`Dk4kiR;#aRWv4PI0{NaBeaZQMyTO zPb4``5UF$T4p|`ACx>FcT6hWw6?)xhCj`pU|q%%MrtzWA*v zd(*2|Zd1~;JXY-Zt&}kwb6$#mA@t88ODT$1t<*ZQv^9(dry}6NHoCUS%*07~V&wj7 zwcf|Ok?>fSty~)&#(M|Zr#lXs@5&}h0WAIvf}Dyj9`&^2dOf>*}?2p%-PVy>N@5 z6FcG2w=~wVI(l>P)f$skVJ}JH>RP~=)-*G*ZxRcO7BIZk>bKrc&Kz*%9S?=i-a9y# z1m{jx-crdja#!NQJV!)TeQX|LCxN!_{V^lfl=uAE8n>xKAy!eSYn99N8F8qtKJRn0 zms%zp(=~nfJjKgMjUxB=MMhgSE`ZCzd|i$#wgpZW-79~*J-Tg1?uB3DtD(W1dlm!p z+L_VFUShbEi-yqmX5tM(bUbicf>zt?_K%HPj_9D6Z`e}kSuwsbH)Sv+JzLig&>4(K|V?EWC(Tg`H0N{B0@}1taneN z3BDepMTf1`;q(`eZVvvG`{=e@`kDH;UQ`J7%%W_hXg zZqC{j6les`n&juCEeRy)=ikvOzcZVsZG9kJ>Xr2HEh349sZ_sijLSD$!q;GGZ%k%B zk((+OWT>lOAIajWw5&r3-uU?|P30*XnRAf*sA=NDTJYEJ0}HNn{7a19n~g&i(x_B5 z%Q1G=tXO}WOprlr(6R4n=AW?FDtF_2Z8`O=#f+@E7I1W|><}zJFxrz*4@_|B%WUMi zD`JpJ#k`~d3?|66GjVPxu)MW3ls_{g-`J(ZWD*)N&@9W~nB=`U8Zk(&^K&ZSScxKD zKUvEHRm^@Q?*HCbQu{0`hJ(X&?2y{c|La1UtK~*IQ^IngQxmH!LzDC@d%WorCyo@h8I`wMQ`?9HQgn#70dyt+hW^m3g+qrAwgU5uvJ@ONkk3h%-u-?%cSiTW1e}b*r)DFkO1wf3>{3$ z4DPOlZ0D#@gmw-1BezyQiJWO}9lvqKX>lvW89&KWEq%^(_bwUD3uTq9mTRyxRnA+f z={tV5+W5S^wp4;{6F&3H`r-e(NG_{Vxv#dxu1J>U<6sR_hDb_@+{<**F%qU=PEWU^ z3z}|RIflP_X7Qb=2Lki4O6jp@E;fPNpe zPF@@`v>s@8E^*HGYuxXZVNFU4aUX1x{krspq!9eFl$tZQ!OE^U`$2<&RwPXkFurGr z+$XrN?JCsZI2LjA?f_%kzO?Y|bpJy3BM-m#XDhk{9((U$5C4eD3dWV_1R%p?l+v_$i||s?QwVqq`0^lg;3(S^mz}M$)-R z_Yj;hXrOp97S%E>HycALpKCv;&!sDt^dO7(Sik_GBwyV2JPT5kd0W>; zO~m!QE(*Ks< z7XG8fSwL1luH3to?5ps%EQYP4lvtB}WK#`d#SY>-;T|R`RgL%b_?2>~8fq%jKms{w zaG)8gXk%+|bKvOqV6!Y!hDU+@r*;M7Q4``*eof6jpk6}D$8niL1M*XL-&o)-)3Rg{idMNU`F)%;hGiYK*nZeNpuXl*MO4Ixn` z?xz@yIMk-|#(CMzWcF)Mm4*WeAKGxs5O`zHI2M?)v`GUSi!p1hohf1pQ`sm#K<<~jeR0XzV zF$=E~{{YDJVSRaa^Jk!)^5^+{F;V1hnu;+?LH zI(ST<$xzX;`E6wd!A1g@Pw|q9)INLXAD2-$;=@|9-EZe*xbPh=vit_)2)g8XHze&diWN4_ziANSGU;_q-}*q;m`3F*EsK#7H3UGT{_)(XMTXHX z>BGPi(i4+@HsRc}W+~Ku$lO9!y0Oqk)n|i1O!r5Pa=3EBmfSJD)TShMNRLio9H)5a z)qwyP6kc1|g&b;}iA_3!cpeUY_C5TX8CYe>2B&kVePV_3JOhX=q)IAsTSt+f}g7KsXIe^_%Wy}P-_=`_#v^8@l3Yl1R z_#N}YwyIifhKO1>Yg3XJtNm83eFJ?R{d?=MmbH6^+|aO}_3RL(?Ab=ALA(K?4d7C!g0$KO!#!I;gt%9Y zhor2}Kwn_5zs?y?HePo4jn~i(opZ7hTtgB4wcE7z3TQGCnQ1fA;X5{a!6g*%dumVF z6))U4Czk!zgMHCA5-uSGM8}v;S%4F+#|Z*kn3>H*laYs9NFZko)-hhh1psnTudi{~ z=(IeRf^v!a3%98m1E!kIzr6;{*=(UZP-Tj;x5aYQepTqDiFo|&17;G56ppCa*{ppW zN9W!2FW~t-H7w&NLiMQ-+vhKMzi;Z_8Ppc4C2+dAFi1feK1FGPeS%=}xU z>mngXbK2ilnO^T{7F}9lb}hV0Ptf0D{#c+3p6Jm37q*Rk=^Sj|`u#l))_x3;>6W5N zr{CjLkoS44xAm2ocqBS{dU<7XnY@p!hUe%@paCJF@tO`8#+|EDsp;QF|3LF+Zw2Th`@pXBkmE@%-bQUchS`xd{V7f! zgr!zsK$o_?klweW%U>4M+xq_enXK$0^qld8x%RqUs(XZR1VyOY#G)d!fA(9Xc8v}3 zU)U7oHp>ip8aTc!S1OjG$@zJ;lr(8-27Etpk1P2TM=;TMTZ6Zb@w101(jBC?lboZ) zmpBibvu`ZW$38T#fBQ_KYrOp>MLYu_y@l0EX5pi!(%-uj!$AfDdA9=T6t3F?=b#pH zn~plPthXzTso>M4xej?!r3MP>5ctHXc5QE}xP0+utVVd4A}5elYvt$+)2|%9N<=tOfLyuxs?Q;q2hUemN^)vE{ zyPfvWU*Jtw%9F_aX@Pr-4!q_%1b_NR}=vvoLMvzRfMBBsloq<%r?F z=mfU(K`V1Qj;blS0tWLX9=jF7&+P!{8ZhyC(ZS6I^=Y_Sd~mdS-H$*Oq=b(m0SQZlh+S#>) zkU%7EZkay)3v2ZDLn>#M7fFIm6F!R3HGgZxk9=DG+nvplcp%KACRB*HHoxglFW{fn zu98^ZO{C8hSSW%AR~MK4m#MqDc(65*2si`d<4{lQ#zeaFCG}3$EdRDyv0y7PNXU+Ogr!I5osg5SC@hDI8YEOG_MyN4Eou z<`7hXzVYD}a%MUl*|Uw0+kI1)BURW@-#mA|c_Fu{$>M0w<4P{!#{>p%7U@K{aBa-Q z#$`Wl+)3NX$INB7H~)}4nfty!YoFjVpj)=@-|F7&y+}*9!#Pu}<0=*4G=R;Vhe=cg znnk^p0jkg?Kw>te+u#qFLUQo!&hDJwvio5LquVC0;2MXG~ek}(3s=WVQVZzE;jRqzmKWq0%0)mo;Y8P2eeLi$?fd| zwkuQ4FQ;`0x37dK=N*EcZA!^;^B&dPot%;!w2U(yBda&>`z$W?pCFyyOFpu69Xq;GNGo&z(x3jwkaL5Oy?N^+8p+$5U(-|#BE8n zFGu1BLjz*iYR4Z5_}lRIEC9NbBh5(hB-Kh<9#K#&c#sv}=q=FIzw@`1m?+DWbOHbJ zi2fl6RX)EhyLHIw2A}CPpkX{aomy_{KU@ze+Hq32DhCUQ>6(6H_^r)IuA1S3T=D?J zTRTqzobR{}Mh30AF{@@Vzqiy6oxmtyOyYYX>1}%9iP)_IYP=!=poT64F)_>tR4W5#&kGvUu%#G?=@{k``Jls-@G}h2+2Oqj+2TpCH?I5 zoGGfx>UFQ|hYIQi;eU$>>e=))3_fVfwtiAH@22m`+^oT}Bg~JX#^Y}x0T@>ih)CN1 zhzUq`75yeAc$fpQk-$>pcW5!s$pJ_CCl-0uF!}y|c;^~rD5I{yB#&mj%1ObBreQGN zSjp@znG5ZuH|lT2O|?_jhn9Bj_PGbBvI}7Wm{b12U7phFrjBLEDZ0?2*JF;MVYNGY z-ydS{?LIt;^$ivwK^E&6+f^VhtaLy zGhgzGmM+=k4e`6n$+<@B-KJ$cjJ{5z^%976a6yrP%8SRp8!o|!3#$?4Q^R%5>0)64 z7$QmU69*FpT6*_ri%I&A3O##``W`9ED>yk@+j*$pnG|N*1S1vRg!v`6gWhfIXtOqF z_3h2Zwa^{lum;#;zcAjwB^4>Z)whQ_sG2$&ENUWE$n)23nwV?Aa8~$}&M~)0rB_Wr zYqIIaq4^s(RLef)`rI=*z}X0g$cCTJ1C9Wj+8T>%*1>Eh-zwGca;~^#zW)eoRfHdt z>%hP+hrBE+xveg( zrFVVENY@T>D5>^XVA-vBw6Z0|pWAzSrC-M+Wc5N_>{^~502{#`_jP@x(5 zd@jsbSju$ee!U+HTb1SXOj??t4);U1dRC)mLeQL;fX2Z#W@n+26p9B&-sVXBGa5ku zU}Y+Q+QMR4tm8ju<%vHszvsV$u$fC0~|9jgJuAMoi&WcwE|lZbZZFy9be&0!`N zy^_m(OZ1OiW=c`%@okO}3gTCTlDS`GA%|-4YtMW_o{yN7^^`u=PpmGU)|};U^z+Us zFj&C@9gXbT!NcF9(O`Pjzm2REXTJKZ+&Hk9&ph3N4&cpev0fBumNd<;WV!yGfsI5W zo#mRZr2kXKi=%uhMQXuqD|}(va`Gp1*l`Y}41?0t9n))U%G7oS%YX1~EDr6*mG_H+ zasr2`V>k-br>A;pn#h@|?4R*5EOfJyGE|<}`!5g|s_Xv)VuV^P-cQCvfD>3)E_C!f z>c%D&-p6s|#JfSa9zo1La0xHO?+Bax>C(JJFAv`m2HAX0{m8uMEyq|^+SwFApf0ZY zig{WdVN+O#&Owd!O{eKH1GIG8Aa_zKNXG;gs z($*#imJxfG?(u1Imwx8@bQY$A&JhQ868}#u*FIk1v>uA#2l(Gd&(N^ar%VVb@AXD zh||=~?OWDZ1|}eB21&DEO$>xD%&oS^(iZ_2KAupp0kj39-j){t3f7-hW_x2U#pRB4o&%?fOUDZATHktwEM&@>Hq{`Dpz+ z*z0TD2kQpTJ*-irA^)6t6PM?BpfZ_a#?t(zjwSF_PU-tey^9hZgKFeJs?FaoYro@-QMXD8ll+G*6(CU2_bke2kv;m zEo@lb`XFn76qIC2BN!I51c<6Pt>4w~&bOj~m{Sqm#wISc?@K~pJU{Pn-ze7TV!tqk)- zbFu+;Q!mhh|5CWqo1rZo`NeeMW#xiEN&F%b@sI%cKCl3ZKs0)RI+(vwwU0jbIgLPZrK+th)z0bQ(!yv( z9)H!XH6l5pwQy-(R^Vu`>)vr^CaKlCet9!$ndsH7xnG*DKKGoh4gP|pvR3>e{gXU+ zIqGgZY8UtLmsbor8AUJVuKhM%g}BzFE#~)JsT$g8gT)vm4iQx$-N034Om8XSKu{Y*<)GMoF zq3>32ebA&{yIkLg)~z*=!A%ZB0lwWGaN9x*1Fg4;b~#qv?&!TDaPAmxaw-%vgsdb# zBBM0!C`{cE{=LG#1H7<)ixweHkY-E_r>==3^j*yj)!!#tqpb~a+j+?Sd7OK*nUZND z8Smx5DPtIH+WOfY+vB)3g%xfBE3EfMX6F%bpydoS^_QzY(U@E(QGe7k;lpIc7Xt`9 z^xR}>ujk1OGAt$#cEr?ki7jm%3W5#tBLJ(g!y7uo0X`p;4zMt(R6qEz_Q5@+1AZi> zSKX(MLT04Rt!H8nzPx}&=(K+65x zG`!;`dD40K`)naa(TTPONb4rYy?b;O2KfV$Y$Qo46v5B&k_vAz?yW)r@oe{lb;y2G zDzVZ=SH(UgIR83G^;Nw9^9+C#8JqC<{`T(tBFSyF6B$)&HnV#KMEu?|#)rIl}&)r3pIE?jcf8NvAy^1|kh;TgwQJ9PnBdy;Wfry(jcq`X6_A&L}~!cERxgBuAC z2m$KvMc`2{C89RW*d-QQn|<+ZRw}Sd0x`IWLlyWUlz3Y=J5TC-5hMW^N~u$KyI*ke z;~&>WT5G5~l{{}`8aXpx_=+T-H_VWVS%W`LfXlS{UN6mr4C$P`CFC)BNlge`APNG_ z8Lv0TqiU*~B%qS4&J)bGF0_N!f2B|tUZoLuk|B0DZV79N6<-^{B8y??zS(Xh$iM*} z3?@F7=hR$@F>r(@aEGADZ#mN8)Rld)PUW?1wtfwr*X#C&EF@Pmf6tT4J&o3HyhN!i z%=EKrf9;to9x+hr-7~ZKKh5NX|`EL&ci7wMu(>_nlMuY zO_(|FCQP)e1KQSd(ZqlM!SQNjLWzc1&e<9ybsV_&|r55~`y9Q$S z`&zv?+|==GeA5oabtJ$7I*-p6MBd!k^N8b)V|l*7C{44wX%zdAdv~|2?E69cD5Z{0 zy$M=u)j+bv)mzB77if_BI#X{Wy8|;i+khWsYqc%5CYXGhYU~$@Wz6@v#ZSmUESIG3>}cE0VC{T@vHM%pa?ef{ zbQKmSPeI&Z5d3hi`g!g$cP1lk>q;m_-OgcWDNH%gv0LauP`GJ*ZlbOgH`Efx2-MMp z+uw#@jchR6n7;6{uPe?5p}$T?&ioyH_E4jMr_jDXh8HF-s2TWJSk1Jf8mLz4?)L26 z0K=T2SjXc`Y+%H2=Jz^Jzh4*7B?g05kA8ddwx#JhA~RPx{*+8(y0XB{Vkv((C10>` zItvNQb^FKYYe`8CcC=Mb#tgBLVGULu(rK_Q726@vLlCH}=lGyHcA9?B24Pik6qQy! zETo;z82!r4>Ek3YGtt*7*OG+pd7{>mh;ki5vJ1NjJM1nYRvIzaRZv;chC@ta<{%`4 zV`|3XVXM45!H!Wq^M}Rj08gE4%1%9-xF> z&*&JN3pZ?BYg^s~$Q`=ZF3`^-0*eeQkCLIwCwHr6TY{zQp2j;}-@Tq&N9!{c5Dboear@0 zx%O@&*TI$kMfmg`QXl}p98$zR4gzT^Y}mk_^!D3U94)yMzhEIrXI5wy1cseVK_Djj z+I((%bn{^A-EZK2^f_CI3Lm7Y$m41xZeB9qm`|xk^RNc-{CgL@Gk_^a0j0A$ot zq}omUu-ZtJ*85qgVMtMH&8K4o4QLbzk22NDnf82;&@Av(R^Qn@$7Wo<6b3>B@ubHm zyy7cU(omjl;!I>>?5>k#=$?{o>`pXN0ZFa5b=dHmd^I8hJCWY#OXe4;%V=4d9=aif z4U?9m^rDgkX^yDY`_8g|t|0MLSzs2@Ijc=t*;w;jJetprWO}WUVKB}r?qqL!^y{7N zFN9|R(+n6{*?E%bVBx?GRs}~9Rhg!E{aE<%&Ew=tBTx>HGiubYEH7RW)V3j#Jo-^t z{KmEaeDvrEuHOAvS&=5eT%}om&*;Ju*Y0q>Tk;T4?KB6yqptpxz^*sK?V^Vv3`3?50?AXT4R^(c2FD)o1+Z~GuF4=&1(-dL>Kg^SC zbX#F2KL`?4P_E<-or!0 z2|kvm3gW@^%^JHg;`Z}fJJKmYIr{vwnFa+%S2JT87OdjANrAianl47dX99+Wn}C@~ z0e8_SbA)Z}LV^!=)1X+p)!e-KbbL-a+A z4RKkf0o7b>+;y#;@lS=Kl>>OnmnqAijsif`oabR>-@=mW`~AXEDf{a(q6=T_weWI8 zNO{Sz%ep+z{AU%uu_HUtuBn3oyu!X&%1INW_tHx^Ct49jd?o#cuaqm);GE$^%n$uC996)M79gumMuEgoiTd2NN-7fdn2n0$b}3=! zTS}W@eGbjJ9aQP*kmKCRWvElMRP?a@Y54N9z@jjZF%$1KbA-F2_^QQ5pBerOz2tV} ztLn^)`8j;>-rPZ9dRXX=zk8O52b(KGMvk0(`F6TNkr=vy%u?lK$1Z%=xL)toj`%8J*N8M*q`{MA4gES_Sjo9UkPUdw3^(;{#BAU5kH^=f2TXc+5we+o#wYfn-^}41d1~PQLf+;c zWp-fRhTFx)G7N;snLOkHbdn4J+y#y`WafOgsGjpVO)v#H2Q=C@+~ehD;T?K{o*B zG4R+u1r!Jf^!h3V!R04i9LMFyTo7Q9gFs&hS%@$H6b9}#@YDda2R{DKuZBFdh6tsY z&(ls87N5Wu*sz{2r?Wwzr@W=T6hPq7WA|iYSVjgN_J;Cy@{{A-{ID=0Xh6Yy5e z_pHRx7^#?7nv0)gx^djvm%sb}pZ~uC|4&wc^xEcy6f@y?@vrZUVwZ1Jc%l5fO8WKt F{{{UZ9@+o^ literal 0 HcmV?d00001 diff --git a/src/index.css b/src/index.css index ec2585e..75b1af7 100644 --- a/src/index.css +++ b/src/index.css @@ -1,8 +1,21 @@ +#root { + height:100%; + max-height: 100%; + width: 100%; + max-width: 100%; +} +html{ + height:100%; + max-height: 100%; + width: 100%; + max-width: 100%; +} body { + height:100%; + max-height: 100%; + width: 100%; + max-width: 100%; margin: 0; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', - 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', - sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } diff --git a/src/index.tsx b/src/index.tsx index 032464f..a492979 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,16 +1,19 @@ import React from 'react'; import ReactDOM from 'react-dom/client'; +import 'antd/dist/reset.css'; import './index.css'; -import App from './App'; import reportWebVitals from './reportWebVitals'; +import {RouterProvider} from "react-router-dom"; +import router from "./router/router"; + const root = ReactDOM.createRoot( - document.getElementById('root') as HTMLElement + document.getElementById('root') as HTMLElement ); root.render( - - - + + + ); // If you want to start measuring performance in your app, pass a function diff --git a/src/models/Staff.ts b/src/models/Staff.ts new file mode 100644 index 0000000..6772b97 --- /dev/null +++ b/src/models/Staff.ts @@ -0,0 +1,20 @@ +import { createAsyncThunk, createSlice, PayloadAction } from '@reduxjs/toolkit'; + +export interface Token { + accessToken: string; + refreshToken: string; +} + +export interface Staff { + managingDepartment: Department; + staffDepartments: Department[]; + staffName: string; +} + +export interface Department { + departmentId: number; + departmentName: string; +} + + + diff --git a/src/models/hooks.ts b/src/models/hooks.ts new file mode 100644 index 0000000..520e84e --- /dev/null +++ b/src/models/hooks.ts @@ -0,0 +1,6 @@ +import { TypedUseSelectorHook, useDispatch, useSelector } from 'react-redux'; +import type { RootState, AppDispatch } from './store'; + +// Use throughout your app instead of plain `useDispatch` and `useSelector` +export const useAppDispatch = () => useDispatch(); +export const useAppSelector: TypedUseSelectorHook = useSelector; diff --git a/src/models/store.ts b/src/models/store.ts new file mode 100644 index 0000000..501ecf0 --- /dev/null +++ b/src/models/store.ts @@ -0,0 +1,17 @@ +import { configureStore, ThunkAction, Action } from '@reduxjs/toolkit'; +import {Token} from "./Staff" + +export const store = configureStore({ + reducer: { + // token: Token, + }, +}); + +export type AppDispatch = typeof store.dispatch; +export type RootState = ReturnType; +export type AppThunk = ThunkAction< + ReturnType, + RootState, + unknown, + Action + >; diff --git a/src/pages/HomeView.tsx b/src/pages/HomeView.tsx new file mode 100644 index 0000000..b5e2178 --- /dev/null +++ b/src/pages/HomeView.tsx @@ -0,0 +1,10 @@ +import React, { FC } from 'react'; +import { Button } from 'antd'; + +const HomeView: FC = () => ( +
+ +
+); + +export default HomeView; diff --git a/src/pages/Login/LoginView.css b/src/pages/Login/LoginView.css new file mode 100644 index 0000000..21ecccf --- /dev/null +++ b/src/pages/Login/LoginView.css @@ -0,0 +1,9 @@ +div.background { + width: 100%; + height: 100%; + background: url(../../assets/login-bg.png) center no-repeat; + background-size: cover; + display: flex; + justify-content: center; + align-items: center; +} \ No newline at end of file diff --git a/src/pages/Login/LoginView.tsx b/src/pages/Login/LoginView.tsx new file mode 100644 index 0000000..59eafca --- /dev/null +++ b/src/pages/Login/LoginView.tsx @@ -0,0 +1,101 @@ +import React from 'react'; +import {Button, Form, Input} from 'antd'; +import {LockOutlined, UserOutlined} from '@ant-design/icons'; +import './LoginView.css'; +import loginImg from '../../assets/login.png' +import axios from "axios"; +import {baseUrl} from "../../utils/axiosInstance"; +import {useNavigate} from "react-router-dom"; + +function LoginView() { + const navigate = useNavigate(); + + const onFinish = (values: any) => { + console.log(values) + axios.post(baseUrl + 'login', values).then(function (response) { + console.log(response.data) + + //models.commit('setStaff', response.data.data) + navigate('/') + }).catch(function (error) { + console.log(error); + //showAlert.value = true + }); + console.log('Success:', values); + }; + const onFinishFailed = (errorInfo: any) => { + console.log('Failed:', errorInfo); + }; + + + return ( +
+
+
+ +
+
+
+

登录

+

欢迎回来,请登录以智能财务报销系统

+ +
+ + } placeholder="用户名"/> + + + + } + placeholder="密码"/> + + + + + +
+
+
+
+
+ + ); + +} + +export default LoginView; \ No newline at end of file diff --git a/src/router/router.tsx b/src/router/router.tsx new file mode 100644 index 0000000..28c55a3 --- /dev/null +++ b/src/router/router.tsx @@ -0,0 +1,15 @@ +import {createBrowserRouter} from "react-router-dom"; +import LoginView from "../pages/Login/LoginView"; +import HomeView from "../pages/HomeView"; + +const router = createBrowserRouter([ + { + path: "/login", + element: , + }, + { + path: "/", + element: , + }, +]); +export default router \ No newline at end of file diff --git a/src/utils/axiosInstance.ts b/src/utils/axiosInstance.ts new file mode 100644 index 0000000..d6211db --- /dev/null +++ b/src/utils/axiosInstance.ts @@ -0,0 +1,34 @@ +import axios, {AxiosRequestConfig, AxiosResponse} from "axios"; + +//export const baseUrl = "https://www.hammer-hfut.tk/api/" +export const baseUrl = "http://127.0.0.1:4523/m1/2116708-0-default/" + +const axiosInstance = axios.create({ + baseURL: baseUrl, + timeout: 5000 +}) + +axiosInstance.interceptors.request.use( + function (config: AxiosRequestConfig) { + console.log(config) + + return config + }, + function (error) { + return Promise.reject(error) + }) + +axiosInstance.interceptors.response.use( + function (response: AxiosResponse) { + // 2xx 范围内的状态码都会触发该函数。 + + return response + }, + function (error) { + console.log(error.response) + if (error.response.status === 401) { + + } + return Promise.reject(error) + }); +export default axiosInstance \ No newline at end of file