From f54ac8e1deaeeb1b2a441c4c0d0f3514fd529be0 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 28 Oct 2024 01:52:38 +0100 Subject: [PATCH 001/110] Use own parse-ms implementation --- commands/info/uptime.js | 2 +- util/setPresence.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/commands/info/uptime.js b/commands/info/uptime.js index c89c07c..30bef15 100644 --- a/commands/info/uptime.js +++ b/commands/info/uptime.js @@ -1,4 +1,4 @@ -const parseMS = require('parse-ms') +const parseMS = require('../../util/parseMS') module.exports = { name: 'uptime', diff --git a/util/setPresence.js b/util/setPresence.js index 3de04e6..b670055 100644 --- a/util/setPresence.js +++ b/util/setPresence.js @@ -1,5 +1,5 @@ const getGuildCount = require("./getGuildCount") -const parseMS = require('parse-ms'); +const parseMS = require('./parseMS'); const convertDateToISOString = require('./convertDateToISOString') module.exports = function ({presenceText, presenceType, client}) { const {globalPrefix} = require ('../data/config.json') From 8d07effbe087301fe327ab77a05051b66e68ea11 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 28 Oct 2024 01:56:46 +0100 Subject: [PATCH 002/110] Update readme --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index a3ad0fe..944ab7a 100644 --- a/README.md +++ b/README.md @@ -27,8 +27,9 @@ Every time you want to change something in this file, you have to restart the bo If the config is ever changed, you need to either delete it and repeat the steps above or take a look at the util/createInitialConfig.js file Netload is a feature that enables the ability to upload .js files via discord to the bot. +This feature is not working at the moment. If you want this feature, you have to enable it in ./data/config.json. ## Known issues -None at the moment. +See [issues](https://github.com/SileNce5k/discord_bot/issues?q=is%3Aopen+is%3Aissue+label%3Abug) From 5ec779b7a9f5ef8ec5d4eebfa749d1f81c2a5b3a Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 19:40:32 +0100 Subject: [PATCH 003/110] Remove netmodule functionality --- README.md | 3 -- commands/.example | 2 +- commands/info/help.js | 9 +---- commands/misc/netload.js | 77 ------------------------------------- util/createInitialConfig.js | 3 +- util/reloadNetModules.js | 19 --------- 6 files changed, 4 insertions(+), 109 deletions(-) delete mode 100644 commands/misc/netload.js delete mode 100644 util/reloadNetModules.js diff --git a/README.md b/README.md index 944ab7a..aa1b104 100644 --- a/README.md +++ b/README.md @@ -26,9 +26,6 @@ Every time you want to change something in this file, you have to restart the bo If the config is ever changed, you need to either delete it and repeat the steps above or take a look at the util/createInitialConfig.js file -Netload is a feature that enables the ability to upload .js files via discord to the bot. -This feature is not working at the moment. -If you want this feature, you have to enable it in ./data/config.json. ## Known issues diff --git a/commands/.example b/commands/.example index 4086437..3fa113b 100644 --- a/commands/.example +++ b/commands/.example @@ -1,7 +1,7 @@ module.exports = { name: 'exampleName', // Keep it to one word description: 'example description', - execute({message}) { //parameters you can use for netload: message, args, client, prefix + execute({message}) { //code } }; \ No newline at end of file diff --git a/commands/info/help.js b/commands/info/help.js index 993cf59..6d7791d 100644 --- a/commands/info/help.js +++ b/commands/info/help.js @@ -20,14 +20,9 @@ module.exports = { let num_in_args = false; let added_commands = 0; let page = -1; - if (args[0] == "netmodules") { - commandFiles = fs.readdirSync('../../netload').filter(file => file.endsWith('.js')); - if (commandFiles.length == 0) { - message.channel.send("There are no netmodules currently loaded.") - x = true; - } + - }else if(!isNaN(parseInt(args[0])) && parseInt(args[0])){ + if(!isNaN(parseInt(args[0])) && parseInt(args[0])){ num_in_args = true; iteration = ( parseInt(args[0]) - 1) * 10; page = Math.round(parseInt(args[0])) diff --git a/commands/misc/netload.js b/commands/misc/netload.js deleted file mode 100644 index 0420f63..0000000 --- a/commands/misc/netload.js +++ /dev/null @@ -1,77 +0,0 @@ -const https = require('https'); -const fs = require('fs') -const netloadDir = "../../netload" -const validUrl = require('valid-url'); - -module.exports = { - name: 'netload', - description: 'Load a module from the internet', - moreHelp: ["Examples:", - "Either provide a link to the module, or upload it", - "To get an example of how your module should look like, do:", - "netload example", - "You have to be whitelisted to use this command.", - "The bot operator also has to have this enabled in the config." - ], - execute({ message, args, prefix, client, owners }) { - if (!fs.existsSync('./data/netmoduleWhitelist.json')) { - fs.writeFileSync('./data/netmoduleWhitelist.json', "[]") - } - let json = fs.readFileSync('./data/netmoduleWhitelist.json', 'utf8'); - let whitelist = JSON.parse(json) - if (json.indexOf(message.author.id.toString()) == -1) { - message.channel.send("You do not have permissions to use this command."); - return; - } - if (args[0] == "whitelist" && owners.indexOf(message.author.id.toString()) >= 0) { - whitelist.push(args[1]) - fs.writeFileSync("./data/netmoduleWhitelist.json", JSON.stringify(whitelist, null, 4)) - return; - } - if (!args[0] && message.attachments.size == 0) { - message.channel.send(`You have to either specify a url or upload a file via the command.\nTo get an example file, execute \`${prefix}netload example\``) - return; - - } if (args[0] == "example") { - - let example = fs.readFileSync('commands/.example') - - message.channel.send(`\`\`\`js\n${example}\n\`\`\``) - return; - } - - - let url, fileName; - if (message.attachments.size > 0) { - url = message.attachments.first().url - fileName = message.attachments.first().name - } else { - url = args[0] - if (!validUrl.isUri(url)) { - message.channel.send("This does not look like a valid url") - return; - } - fileName = args[0].split("/")[args[0].split("/").length - 1] - } - if (fs.existsSync(`${netloadDir}/${fileName}`)) { - message.channel.send(`A module with this filename(${fileName}) already exists.`) - return; - } - https.get(url, (res) => { - res.on('data', (d) => { - fs.writeFileSync(`${netloadDir}/${fileName}`, d); - reloadNetModules(client); - }); - - }).on('error', (e) => { - message.channel.send("Error download file."); - console.log(e) - }); - - let reloadNetModules = require('../util/reloadNetModules'); - reloadNetModules(client) - - - } -}; - diff --git a/util/createInitialConfig.js b/util/createInitialConfig.js index fec8159..f1c2401 100644 --- a/util/createInitialConfig.js +++ b/util/createInitialConfig.js @@ -6,8 +6,7 @@ module.exports = function () { "enableLoginMessage": false, "loginChannel" : "", "loginMessage" : "Bot is online!", - "owners": [], - "allowNetload" : false + "owners": [] } if(!fs.existsSync("./data/")) fs.mkdirSync("./data"); diff --git a/util/reloadNetModules.js b/util/reloadNetModules.js deleted file mode 100644 index ef86267..0000000 --- a/util/reloadNetModules.js +++ /dev/null @@ -1,19 +0,0 @@ -const fs = require('fs') -const netloadDir = 'netload/' - - -module.exports = function (client) { - if (!fs.existsSync(netloadDir)) fs.mkdirSync(netloadDir); - let commandFiles = fs.readdirSync(netloadDir).filter(file => file.endsWith('.js')); - if (client.netmodules.size != 0) { - for (const i of commandFiles) { - delete require.cache[require.resolve(`../${netloadDir}${i}`)]; - } - } - client.netmodules.clear() - for (const file of commandFiles) { - const command = require(`../${netloadDir}${file}`); - client.netmodules.set(command.name, command); - } -} - From cddceda3c5243795895e35c14d7d63981e0e09f1 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 19:50:32 +0100 Subject: [PATCH 004/110] Update README.md to show if tests are passing --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aa1b104..00ff585 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,14 @@ # discord_bot + +| name | tests | +| -----| ----- | +| Github | ![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg)| +|git.silence5k.com (forgejo-runner) | ![CI tests](https://git.silence5k.com/SileNce/discord_bot/actions/workflows/CI.yml/badge.svg)| + + +## + A modular discord bot written in javascript, using the [discord.js](https://discord.js.org) library. This is my second attempt at making a discord bot. @@ -24,7 +33,7 @@ You can also change the global prefix. You should enter you discord user id, so you can use the admin commands. Every time you want to change something in this file, you have to restart the bot. -If the config is ever changed, you need to either delete it and repeat the steps above or take a look at the util/createInitialConfig.js file +If the config is ever changed, you need to either delete it and repeat the steps above or take a look at the util/createInitialConfig.js file. ## Known issues From cc149768c160f3660cdb360170ed8fab5fa7ff15 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 19:59:27 +0100 Subject: [PATCH 005/110] Remove the rest of netmodule references --- commands/admin/reload.js | 2 -- commands/info/help.js | 3 +-- server.js | 3 --- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/commands/admin/reload.js b/commands/admin/reload.js index c93aab0..5afb02e 100644 --- a/commands/admin/reload.js +++ b/commands/admin/reload.js @@ -1,5 +1,4 @@ const calculateReloaded = require("../../util/calculateReloaded.js"); -const reloadNetModules = require("../../util/reloadNetModules.js"); module.exports = { name: 'reload', @@ -9,7 +8,6 @@ module.exports = { let reloadCommands = require("../../util/reloadCommands.js") let beforeSize = client.commands.size; - reloadNetModules(client) reloadCommands(client) let sendText = calculateReloaded(beforeSize, client) message.channel.send(sendText) diff --git a/commands/info/help.js b/commands/info/help.js index 6d7791d..6174e26 100644 --- a/commands/info/help.js +++ b/commands/info/help.js @@ -8,8 +8,7 @@ module.exports = { description: 'List all available commands.', moreHelp: ["Examples:","`help [optional_page]` will return help with a small description for each command", "`help ` will return help with a more descriptive description", - "The descriptive description isn't available on all commands", - "`help netmodules` to display help for netmodules" + "The descriptive description isn't available on all commands" ], execute({ message, args, prefix, client }) { let commands = "" diff --git a/server.js b/server.js index 9548a57..3a4e316 100644 --- a/server.js +++ b/server.js @@ -41,19 +41,16 @@ const { client.settings = new Collection(); client.commands = new Collection(); client.serverPrefixes = new Collection(); -client.netmodules = new Collection(); client.settings.set("presenceType", presenceType); client.settings.set("presenceText", presenceText); const reloadCommands = require("./util/reloadCommands.js"); -const reloadNetModules = require('./util/reloadNetModules'); const onMessage = require('./server/message'); const onReady = require('./server/ready'); reloadCommands(client) -reloadNetModules(client) client.once('ready', () => { onReady(client, enableLoginMessage, loginChannel, loginMessage) From 15b25c5732b4ae422722cebfdb457b6a7c423d3b Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 20:02:44 +0100 Subject: [PATCH 006/110] Remove netmodule references in server/message --- server/message.js | 9 --------- 1 file changed, 9 deletions(-) diff --git a/server/message.js b/server/message.js index 85d488d..2600f84 100644 --- a/server/message.js +++ b/server/message.js @@ -22,16 +22,7 @@ module.exports = function(client, owners, message, globalPrefix){ const commandName = args.shift().toLowerCase(); const command = client.commands.get(commandName); - const netModule = client.netmodules.get(commandName); if (!command){ - if (netModule){ - try { - netModule.execute({message: message, args: args, client: client, prefix: prefix}) - }catch(e){ - console.log(e) - } - return; - } const customPath = './data/customCommands.json'; if(fs.existsSync(customPath)){ let json = fs.readFileSync(customPath, 'utf8'); From aefd86a9bc5f8c0e9f8304cf4aa1a61f2b2f7030 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 20:07:50 +0100 Subject: [PATCH 007/110] Improve test cases --- tests/calculateReloaded.test.js | 11 ++++------- tests/convertDateToISOString.test.js | 11 +++++------ 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/tests/calculateReloaded.test.js b/tests/calculateReloaded.test.js index 5b7a5d5..b28f0ed 100644 --- a/tests/calculateReloaded.test.js +++ b/tests/calculateReloaded.test.js @@ -16,11 +16,8 @@ let expectedResults = [ ] if(beforeSizes.length != expectedResults.length) throw "Error: beforeSizes and expectedResults are unequal length" - -for(let i = 0; i < beforeSizes.length; i++){ - test('calculateReloaded test', () => { +test('calculateReloaded test', () => { + for(let i = 0; i < beforeSizes.length; i++){ expect(calculateReloaded(beforeSizes[i], client)).toBe(expectedResults[i]) - - }); - -} + } +}); diff --git a/tests/convertDateToISOString.test.js b/tests/convertDateToISOString.test.js index 2a33115..afac7c6 100644 --- a/tests/convertDateToISOString.test.js +++ b/tests/convertDateToISOString.test.js @@ -3,10 +3,9 @@ const convertDateToISOString = require('../util/convertDateToISOString'); let dates = [new Date("2020-01-01"), new Date(0), new Date(5600000), new Date(1000200000000)] let expectedDateStrings = ["2020-01-01 00:00:00", "1970-01-01 00:00:00", "1970-01-01 01:33:20", "2001-09-11 09:20:00"] -for (let i = 0; i < dates.length; i++) { - test('Converts to human readable date string', () => { - expect(convertDateToISOString(dates[i])).toBe(expectedDateStrings[i]); - }); - -} +test('Converts to human readable date string', () => { + for (let i = 0; i < dates.length; i++) { + expect(convertDateToISOString(dates[i])).toBe(expectedDateStrings[i]); + } +}); From 10e429c870f0823fbe92986492f349c06d47add5 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 20:10:08 +0100 Subject: [PATCH 008/110] Specify master branch in README.md svg --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 00ff585..465b14a 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,8 @@ | name | tests | | -----| ----- | -| Github | ![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg)| -|git.silence5k.com (forgejo-runner) | ![CI tests](https://git.silence5k.com/SileNce/discord_bot/actions/workflows/CI.yml/badge.svg)| +| Github | ![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master) | +| git.silence5k.com (forgejo-runner) | ![CI tests](https://git.silence5k.com/SileNce/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master) | ## From 30d94706e19157099925bb1e82984c46fa98f594 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 20:18:13 +0100 Subject: [PATCH 009/110] Remove time measurement of command It never worked anyways --- server/message.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/server/message.js b/server/message.js index 2600f84..9178afc 100644 --- a/server/message.js +++ b/server/message.js @@ -38,10 +38,8 @@ module.exports = function(client, owners, message, globalPrefix){ } if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return; try { - let t0 = performance.now(); command.execute({ message: message, args: args, client: client, prefix: prefix, owners: owners, globalPrefix: globalPrefix}) - let t1 = performance.now(); - console.log(`${message.author.username}(id: ${message.author.id}) executed ${command.name} with '${args}' as arguments in ${(t1-t0).toFixed(2)} ms`) + console.log(`${message.author.username}(id: ${message.author.id}) executed ${command.name} with '${args}' as arguments`) } catch (error) { let divider = "------------------------" console.log(divider) From acbfcb25d3417c5bbc8eb202f70d3a50930bdea3 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 1 Nov 2024 20:34:54 +0100 Subject: [PATCH 010/110] Remove unused dependencies --- package-lock.json | 126 ++-------------------------------------------- package.json | 7 +-- server/input.js | 6 --- 3 files changed, 7 insertions(+), 132 deletions(-) delete mode 100644 server/input.js diff --git a/package-lock.json b/package-lock.json index 84f37b8..a992a45 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,14 +12,11 @@ "@zuzak/owo": "^1.14.1", "discord.js": "^14.16.3", "dotenv": "^16.4.5", - "mysql": "^2.18.1", - "prompt-sync": "^4.2.0", "seedrandom": "^3.0.5", - "sqlite3": "^5.1.6", - "valid-url": "^1.0.9" + "sqlite3": "^5.1.6" }, "devDependencies": { - "@types/jest": "^29.5.13", + "@types/jest": "^29.5.14", "jest": "^29.7.0" } }, @@ -1423,9 +1420,9 @@ } }, "node_modules/@types/jest": { - "version": "29.5.13", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.13.tgz", - "integrity": "sha512-wd+MVEZCHt23V0/L642O5APvspWply/rGY5BcW4SUETo2UzPU3Z26qr8jC2qxpimI2jjx9h7+2cj2FwIr01bXg==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1558,15 +1555,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -1804,15 +1792,6 @@ ], "license": "MIT" }, - "node_modules/bignumber.js": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", - "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==", - "license": "MIT", - "engines": { - "node": "*" - } - }, "node_modules/bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", @@ -2192,12 +2171,6 @@ "dev": true, "license": "MIT" }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "license": "MIT" - }, "node_modules/create-jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", @@ -3070,12 +3043,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "license": "MIT" - }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -4121,27 +4088,6 @@ "devOptional": true, "license": "MIT" }, - "node_modules/mysql": { - "version": "2.18.1", - "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", - "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", - "license": "MIT", - "dependencies": { - "bignumber.js": "9.0.0", - "readable-stream": "2.3.7", - "safe-buffer": "5.1.2", - "sqlstring": "2.3.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mysql/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "license": "MIT" - }, "node_modules/napi-build-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", @@ -4527,12 +4473,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "license": "MIT" - }, "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", @@ -4554,15 +4494,6 @@ "node": ">=10" } }, - "node_modules/prompt-sync": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/prompt-sync/-/prompt-sync-4.2.0.tgz", - "integrity": "sha512-BuEzzc5zptP5LsgV5MZETjDaKSWfchl5U9Luiu8SKp7iZWD5tZalOxvNcZRwv+d2phNFr8xlbxmFNcRKfJOzJw==", - "license": "MIT", - "dependencies": { - "strip-ansi": "^5.0.0" - } - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -4635,27 +4566,6 @@ "dev": true, "license": "MIT" }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "license": "MIT" - }, "node_modules/replace-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/replace-string/-/replace-string-2.0.0.tgz", @@ -4990,15 +4900,6 @@ } } }, - "node_modules/sqlstring": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", - "integrity": "sha512-ooAzh/7dxIG5+uDik1z/Rd1vli0+38izZhGzSa34FwR7IbelPWCCKSNIl8jlL/F7ERvy8CB2jNeM1E9i9mXMAQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -5115,18 +5016,6 @@ "node": ">=8" } }, - "node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "license": "MIT", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", @@ -5435,11 +5324,6 @@ "node": ">=10.12.0" } }, - "node_modules/valid-url": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/valid-url/-/valid-url-1.0.9.tgz", - "integrity": "sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==" - }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", diff --git a/package.json b/package.json index 83c460f..438d42c 100644 --- a/package.json +++ b/package.json @@ -7,11 +7,8 @@ "@zuzak/owo": "^1.14.1", "discord.js": "^14.16.3", "dotenv": "^16.4.5", - "mysql": "^2.18.1", - "prompt-sync": "^4.2.0", "seedrandom": "^3.0.5", - "sqlite3": "^5.1.6", - "valid-url": "^1.0.9" + "sqlite3": "^5.1.6" }, "scripts": { "test": "jest" @@ -23,7 +20,7 @@ "author": "SileNce5k", "license": "UNLICENSE", "devDependencies": { - "@types/jest": "^29.5.13", + "@types/jest": "^29.5.14", "jest": "^29.7.0" } } diff --git a/server/input.js b/server/input.js deleted file mode 100644 index 5c6b2c2..0000000 --- a/server/input.js +++ /dev/null @@ -1,6 +0,0 @@ -const prompt = require("prompt-sync")(); -module.exports = function(client, owners, message){ - let input; - - -} \ No newline at end of file From c6997f9c28262fc30b44065398cead3d97ae4802 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 2 Nov 2024 05:55:43 +0100 Subject: [PATCH 011/110] Improve position of CI tests passing badge --- README.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 465b14a..ccd5438 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,15 @@ -# discord_bot +# discord_bot

![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master)

+ -| name | tests | -| -----| ----- | -| Github | ![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master) | -| git.silence5k.com (forgejo-runner) | ![CI tests](https://git.silence5k.com/SileNce/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master) | -## - A modular discord bot written in javascript, using the [discord.js](https://discord.js.org) library. This is my second attempt at making a discord bot. From bd75426efa86302f4ec31c5a6e0fe9516a092e3e Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 2 Nov 2024 05:59:20 +0100 Subject: [PATCH 012/110] Readme: Don't do any css github doesn't support css at all unfortunately :( --- README.md | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index ccd5438..1b33dd4 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,6 @@ -# discord_bot

![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg?branch=master)

- - +# discord_bot +![CI tests](https://github.com/SileNce5k/discord_bot/actions/workflows/CI.yml/badge.svg) A modular discord bot written in javascript, using the [discord.js](https://discord.js.org) library. From 0dc7c76821b322407e682e7e036801194ccedbcc Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 2 Nov 2024 20:55:58 +0100 Subject: [PATCH 013/110] Add initial dependabot file --- .github/dependabot.yml | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..72186f8 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,7 @@ +version: 2 +updates: + - package-ecosystem: "npm" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "daily" + From 2618524f7fa18ba05e8ab46fdeac76e375f11751 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Thu, 10 Apr 2025 01:38:03 +0200 Subject: [PATCH 014/110] Add tdoss command --- commands/misc/tdoss.js | 63 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 commands/misc/tdoss.js diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js new file mode 100644 index 0000000..42d361d --- /dev/null +++ b/commands/misc/tdoss.js @@ -0,0 +1,63 @@ +const { execSync } = require('child_process'); +const fs = require('fs'); +const path = require('path'); + + +module.exports = { + name: 'tdoss', + description: 'Combine picture with tdoss album cover template', + async execute({ message }) { + message.channel.sendTyping(); + + let dataDir = path.resolve(__dirname, '..', '..', 'data'); + const directory = path.resolve(dataDir, Math.floor(new Date).toString()) + fs.mkdirSync(directory) + + if(message.attachments.size > 0){ + const curlCommand = `curl "${message.attachments.first().url}" -o ${directory}/input.png` // TODO: Download with correct extension. + if (this.executeCommand(curlCommand).error === true) { + message.channel.send("Something went wrong.\nTry again and if it keeps happening, contact the owner of the bot.") + return + } + + }else { + message.channel.send("You have to provide an image to use this command.\nIt only works with attachments for now.") + fs.rmSync(`${directory}`, {recursive: true}) + return + } + + + + + const command = `magick ${dataDir}/tdoss_template.png \\( ${directory}/input.png -resize 800x800^ -gravity center -extent 1000x1000 \\) -compose dst-over -composite ${directory}/tdoss_result.png`; + if (this.executeCommand(command).error === true) { + message.channel.send("Something went wrong.\nTry again and if it keeps happening, contact the owner of the bot.") + return + } + + let final_image = { + attachment: path.resolve(`${directory}/tdoss_result.png`), + name: "tdoss_result.png" + } + + await message.channel.send({files: [final_image]}) + fs.rmSync(`${directory}`, {recursive: true}) + }, + + + executeCommand(command) { + console.log("Executing:", command) + try { + const output = execSync(command, { encoding: 'utf-8' }) + if (output.length != 0) + console.log(output) + } catch (error) { + console.error(`Error executing ${command.split(" ")[0]} command:`, error); + return { error: true }; + } + return { error: false }; + } + +} + + From bf97b3633f4646004a880f8d6a06c6c57ed24ae1 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Thu, 10 Apr 2025 03:34:21 +0200 Subject: [PATCH 015/110] Add the ability to use a URL on the tdoss command --- commands/misc/tdoss.js | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index 42d361d..2419100 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -6,32 +6,40 @@ const path = require('path'); module.exports = { name: 'tdoss', description: 'Combine picture with tdoss album cover template', - async execute({ message }) { + async execute({ message, args }) { message.channel.sendTyping(); let dataDir = path.resolve(__dirname, '..', '..', 'data'); const directory = path.resolve(dataDir, Math.floor(new Date).toString()) fs.mkdirSync(directory) + let url = ""; if(message.attachments.size > 0){ - const curlCommand = `curl "${message.attachments.first().url}" -o ${directory}/input.png` // TODO: Download with correct extension. - if (this.executeCommand(curlCommand).error === true) { - message.channel.send("Something went wrong.\nTry again and if it keeps happening, contact the owner of the bot.") - return - } + url = message.attachments.first().url - }else { - message.channel.send("You have to provide an image to use this command.\nIt only works with attachments for now.") + + } else if(args[0] && args[0].startsWith("https://") ){ + url = args[0]; + } + else { + message.channel.send("You have to provide an image to use this command.\nEither via an attachment or via a link (must be the first argument and start with https://)") + fs.rmSync(`${directory}`, {recursive: true}) + return + } + // TODO: Download with correct extension. + const curlCommand = `curl "${url}" -o ${directory}/input.png`; + + if (this.executeCommand(curlCommand).error === true) { + message.channel.send("Something went wrong during the download.\nTry again and if it keeps happening, contact the owner of the bot.") fs.rmSync(`${directory}`, {recursive: true}) return } - - const command = `magick ${dataDir}/tdoss_template.png \\( ${directory}/input.png -resize 800x800^ -gravity center -extent 1000x1000 \\) -compose dst-over -composite ${directory}/tdoss_result.png`; if (this.executeCommand(command).error === true) { - message.channel.send("Something went wrong.\nTry again and if it keeps happening, contact the owner of the bot.") + message.channel.send("Something went wrong during image manipulation.\nTry again and if it keeps happening, contact the owner of the bot.") + fs.rmSync(`${directory}`, {recursive: true}) return } From 4c1199aea55c659afc7d078f31dc162f25c3ec1c Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 11 Apr 2025 00:00:06 +0200 Subject: [PATCH 016/110] Only start typing when heavy work begins I found that if I start at the beginning, if the command failed early, it'd still be typing a couple seconds after replying to your command, which was kind of annoying. --- commands/misc/tdoss.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index 2419100..61cf409 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -7,7 +7,6 @@ module.exports = { name: 'tdoss', description: 'Combine picture with tdoss album cover template', async execute({ message, args }) { - message.channel.sendTyping(); let dataDir = path.resolve(__dirname, '..', '..', 'data'); const directory = path.resolve(dataDir, Math.floor(new Date).toString()) @@ -27,6 +26,7 @@ module.exports = { return } // TODO: Download with correct extension. + message.channel.sendTyping(); const curlCommand = `curl "${url}" -o ${directory}/input.png`; if (this.executeCommand(curlCommand).error === true) { From e47043317cee85e9443e5a0138b460034588abe9 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 11 Apr 2025 00:02:07 +0200 Subject: [PATCH 017/110] Add the ability to reply to images with tdoss command --- commands/misc/tdoss.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index 61cf409..4f45614 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -19,6 +19,13 @@ module.exports = { } else if(args[0] && args[0].startsWith("https://") ){ url = args[0]; + }else if(message.reference){ + let referencedMessage = await message.fetchReference(); + if(referencedMessage.attachments.size > 0) + url = await referencedMessage.attachments.first().url; + else { + message.channel.send("The message you replied to doesn't have any attachments."); + } } else { message.channel.send("You have to provide an image to use this command.\nEither via an attachment or via a link (must be the first argument and start with https://)") From 44df923ce98755670e4c6b10d218ecf5e66e07ea Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 11 Apr 2025 00:26:46 +0200 Subject: [PATCH 018/110] Update tdoss error message --- commands/misc/tdoss.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index 4f45614..f34484f 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -28,7 +28,7 @@ module.exports = { } } else { - message.channel.send("You have to provide an image to use this command.\nEither via an attachment or via a link (must be the first argument and start with https://)") + message.channel.send("You have to provide an image to use this command.\nEither through an attachment, a link, or you can reply to a message with an image attachment.") fs.rmSync(`${directory}`, {recursive: true}) return } From 7dc9be559867aaded77cfe426c86dfc3f6a3a2ac Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 11 Apr 2025 09:20:44 +0200 Subject: [PATCH 019/110] Fix command injection security issue Download using fetch instead of using curl command line. Can't trust user input :) --- commands/misc/tdoss.js | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index f34484f..cc778bb 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -1,6 +1,8 @@ const { execSync } = require('child_process'); const fs = require('fs'); const path = require('path'); +const { writeFile } = require('node:fs/promises') +const { Readable } = require('node:stream') module.exports = { @@ -21,10 +23,12 @@ module.exports = { url = args[0]; }else if(message.reference){ let referencedMessage = await message.fetchReference(); - if(referencedMessage.attachments.size > 0) + if(referencedMessage.attachments.size > 0){ url = await referencedMessage.attachments.first().url; + } else { message.channel.send("The message you replied to doesn't have any attachments."); + return; } } else { @@ -34,12 +38,10 @@ module.exports = { } // TODO: Download with correct extension. message.channel.sendTyping(); - const curlCommand = `curl "${url}" -o ${directory}/input.png`; - - if (this.executeCommand(curlCommand).error === true) { - message.channel.send("Something went wrong during the download.\nTry again and if it keeps happening, contact the owner of the bot.") + if(await this.downloadImage(url, path.resolve(directory, "input.png")) != 0){ + message.channel.send("Something went wrong during the download.\nThe link might be unreachable for the bot or it's not an image.") fs.rmSync(`${directory}`, {recursive: true}) - return + return; } @@ -71,6 +73,15 @@ module.exports = { return { error: true }; } return { error: false }; + }, + // https://stackoverflow.com/a/77210219 + async downloadImage(url, path) { + const res = await fetch(url); + if(!res.ok) return 1; + if(!res.headers.get('content-type').startsWith("image")) 2; + const stream = Readable.fromWeb(res.body) + await writeFile(path, stream); + return 0; } } From 6f8dd7ebf6d1b22a301bd62d611c71cbb4919b40 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 12 Apr 2025 03:20:18 +0200 Subject: [PATCH 020/110] tdoss: Pull the latest image in chat if none are provided limited to 20 last messages for now --- commands/misc/tdoss.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index cc778bb..2c44fa5 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -32,9 +32,15 @@ module.exports = { } } else { - message.channel.send("You have to provide an image to use this command.\nEither through an attachment, a link, or you can reply to a message with an image attachment.") - fs.rmSync(`${directory}`, {recursive: true}) - return + let lastMessages = await message.channel.messages.fetch({limit: 20, cache: false}); + let lastMessageWithAttachment = lastMessages.find(m => m.attachments.size > 0); + if(!lastMessageWithAttachment){ + message.channel.send("Couldn't find an image to use this command on.") + fs.rmSync(`${directory}`, {recursive: true}) + return + } + url = lastMessageWithAttachment.attachments.first().url; + } // TODO: Download with correct extension. message.channel.sendTyping(); From 1fd5f6cc6a350c03e568f0d1626e67272762c9ac Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 12 Apr 2025 03:28:44 +0200 Subject: [PATCH 021/110] Don't show page number on help with specific commands --- commands/info/help.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/info/help.js b/commands/info/help.js index 6174e26..36ed658 100644 --- a/commands/info/help.js +++ b/commands/info/help.js @@ -60,6 +60,7 @@ module.exports = { start++; } }else if(args[0] === command.name){ + fieldName = "Description"; commands = commands + `${prefix}${command.name}\n` embed.setTitle(command.name.charAt(0).toUpperCase() + command.name.slice(1)) if(command.moreHelp){ @@ -67,7 +68,6 @@ module.exports = { commands = commands + `${element}\n` }); } else { - fieldName = "Description"; commands = commands + `${command.description}`; } break; From bb81ff2e16326e8f787e4c52907aa06fb08fe5f6 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Wed, 30 Apr 2025 11:35:32 +0200 Subject: [PATCH 022/110] Add whitelist and chat (LLM) feature --- commands/admin/whitelist.js | 42 ++++++++++++++++++++ commands/misc/chat.js | 72 ++++++++++++++++++++++++++++++++++ server.js | 2 + server/createWhitelistTable.js | 22 +++++++++++ 4 files changed, 138 insertions(+) create mode 100644 commands/admin/whitelist.js create mode 100644 commands/misc/chat.js create mode 100644 server/createWhitelistTable.js diff --git a/commands/admin/whitelist.js b/commands/admin/whitelist.js new file mode 100644 index 0000000..d915114 --- /dev/null +++ b/commands/admin/whitelist.js @@ -0,0 +1,42 @@ +const sqlite3 = require('sqlite3').verbose(); + +module.exports = { + name: 'whitelist', + description: 'Whitelist different commands that need whitelisting.', + admin: true, + async execute({message, args, prefix}) { + if(args < 2){ + message.channel.send(`You need to supply the command and channel that you want to whitelist\n\`${prefix}whitelist \``); + return; + } + let command = args[0]; + let guild = args[1]; + // TODO: First check if the bot has access to that guild before whitelisting. + const databasePath = 'data/database.db' + const db = new sqlite3.Database(databasePath) + let err = false; + await new Promise((resolve, reject)=>{ + db.run(`INSERT INTO whitelist ( + serverId, + command, + dateAdded + ) VALUES (?, ?, ?)`, + [ + guild, + command, + new Date().getTime() + ], function (error) { + if (error) { + console.error(error); + err = true; + resolve(); + }else{ + resolve(); + } + }); + }) + if(!err) + message.channel.send("Command has been whitelisted in this server.") + else message.channel.send("Could not whitelist the server with that command. Check the logs.") + } +}; \ No newline at end of file diff --git a/commands/misc/chat.js b/commands/misc/chat.js new file mode 100644 index 0000000..215890f --- /dev/null +++ b/commands/misc/chat.js @@ -0,0 +1,72 @@ +require("dotenv").config(); +const sqlite3 = require('sqlite3').verbose(); + +module.exports = { + name: 'chat', + description: 'A chat command that uses an LLM to answer your prompts (server must be whitelisted)', + async execute({ message, args }) { + // TODO: Externalize the whitelist checking into a the message function with a variable export. And cache it. + // Have a global collection that gets created on launch from the database, the collection uses the guild ID as a key and has an array of commands that are whitelisted. + // Just write to both the database and this collection when a new command gets whitelisted. + const db = new sqlite3.Database('data/database.db'); + let isWhitelisted = false; + await new Promise((resolve, reject) => { + db.get(`SELECT * FROM whitelist WHERE serverId = ? AND command = ?`, [message.guild.id, this.name], + function (error, row){ + if(error){ + console.error(error); + resolve(""); + }else{ + if(row === undefined){ + resolve(); + }else { + isWhitelisted = true; + resolve(); + } + } + }) + }) + + if(!isWhitelisted){ + message.channel.send("This server is not whitelisted. The bot admin needs to whitelist the server for this command to work."); + return; + } + if(args.length === 0){ + message.channel.send("You have to set your prompt in the arguments"); + return; + } + const prompt = args.join(" "); + let answer = ""; + const initialMessage = await message.channel.send("Generating response... This may take a moment.") + message.channel.sendTyping(); + await fetch(`https://openrouter.ai/api/v1/chat/completions`, { + method: `POST`, + headers: { + "Authorization": `Bearer ${process.env.OPENROUTER_API_KEY}`, + "Content-Type": `application/json` + }, + body: JSON.stringify({ + "model": `deepseek/deepseek-chat-v3-0324:free`, + "messages": [ + { + "role": `user`, + "content": prompt + } + ], + "max_tokens": 100 + }) + }).then(response => response.json()).then(data => { + answer = data.choices[0].message.content; + }).catch(error => { + console.error(error); + }); + if(answer.length > 0){ + if(answer.length > 1999){ + initialMessage.edit("Unfortunately the length of the message was longer than what discord allows.") + } + initialMessage.edit(answer) + }else { + initialMessage.edit("Something went wrong. The owner should check the console.") + } + } +}; \ No newline at end of file diff --git a/server.js b/server.js index 3a4e316..51d2f55 100644 --- a/server.js +++ b/server.js @@ -18,6 +18,8 @@ async function checkAndConvertJSONToSQL(){ } const createDatabaseTables = require('./server/createDatabaseTables'); const createLastfmTable = require('./server/createLastfmTable'); +const createWhitelistTable = require('./server/createWhitelistTable.js') +createWhitelistTable(); createLastfmTable(); checkAndConvertJSONToSQL(); const { Collection, Client, GatewayIntentBits, Partials } = require('discord.js'); diff --git a/server/createWhitelistTable.js b/server/createWhitelistTable.js new file mode 100644 index 0000000..b65319d --- /dev/null +++ b/server/createWhitelistTable.js @@ -0,0 +1,22 @@ +const sqlite3 = require('sqlite3').verbose(); +module.exports = async function () { + const db = new sqlite3.Database('data/database.db'); + return new Promise ((resolve, reject)=>{ + db.run( + `CREATE TABLE IF NOT EXISTS whitelist ( + serverId TEXT PRIMARY KEY, + command TEXT, + dateAdded INTEGER)`, + (err) => { + if (err) { + console.error(`Error while creating table 'whitelist': ${err}`); + reject(err); + } else { + console.log("Table 'whitelist' created successfully."); + resolve(); + } + db.close(); + } + ); + }) +} \ No newline at end of file From c9d7a54e25860d6f3ab83cf572d3b3125b3e2ed3 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Wed, 30 Apr 2025 11:47:19 +0200 Subject: [PATCH 023/110] Chat: Increase max_tokens to 250 --- commands/misc/chat.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/misc/chat.js b/commands/misc/chat.js index 215890f..3ef4c94 100644 --- a/commands/misc/chat.js +++ b/commands/misc/chat.js @@ -53,7 +53,7 @@ module.exports = { "content": prompt } ], - "max_tokens": 100 + "max_tokens": 250 }) }).then(response => response.json()).then(data => { answer = data.choices[0].message.content; From a066fd0662227d32e42502034c97522c8d1cfa97 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Wed, 30 Apr 2025 15:55:53 +0200 Subject: [PATCH 024/110] Improve whitelist feature * Use a primary autoincrementing primary key because primary keys need to be unique * Cache whitelist on bot startup / only read from database once * "Externalize" whitelist checking to the messageCreate function. --- commands/admin/whitelist.js | 26 +++++++++++---- commands/misc/chat.js | 28 ++-------------- server.js | 8 +++-- server/createAndLoadWhitelistTable.js | 48 +++++++++++++++++++++++++++ server/createWhitelistTable.js | 22 ------------ server/message.js | 20 +++-------- 6 files changed, 81 insertions(+), 71 deletions(-) create mode 100644 server/createAndLoadWhitelistTable.js delete mode 100644 server/createWhitelistTable.js diff --git a/commands/admin/whitelist.js b/commands/admin/whitelist.js index d915114..b5659bf 100644 --- a/commands/admin/whitelist.js +++ b/commands/admin/whitelist.js @@ -2,15 +2,22 @@ const sqlite3 = require('sqlite3').verbose(); module.exports = { name: 'whitelist', - description: 'Whitelist different commands that need whitelisting.', + description: 'Whitelist a command in a specific server.', admin: true, - async execute({message, args, prefix}) { - if(args < 2){ + async execute({message, args, prefix, client}) { + if(args.length < 2){ message.channel.send(`You need to supply the command and channel that you want to whitelist\n\`${prefix}whitelist \``); return; } let command = args[0]; let guild = args[1]; + if(guild === "this") guild = message.guild.id; + // TODO: Add ability to remove server from whitelist. + const whitelistedCommands = client.whitelist.get(guild); + if(whitelistedCommands && whitelistedCommands.includes(command)){ + message.channel.send("Command is already whitelisted in that server.") + return; + } // TODO: First check if the bot has access to that guild before whitelisting. const databasePath = 'data/database.db' const db = new sqlite3.Database(databasePath) @@ -35,8 +42,15 @@ module.exports = { } }); }) - if(!err) - message.channel.send("Command has been whitelisted in this server.") - else message.channel.send("Could not whitelist the server with that command. Check the logs.") + if(!err){ + if(whitelistedCommands){ + whitelistedCommands.push(command); + client.whitelist.set(guild, whitelistedCommands); + }else { + client.whitelist.set(guild, command); + } + message.channel.send("Command has been whitelisted in that server.") + + } else message.channel.send("Could not whitelist the server with that command. Check the logs.") } }; \ No newline at end of file diff --git a/commands/misc/chat.js b/commands/misc/chat.js index 3ef4c94..e01a4dc 100644 --- a/commands/misc/chat.js +++ b/commands/misc/chat.js @@ -1,36 +1,11 @@ require("dotenv").config(); -const sqlite3 = require('sqlite3').verbose(); module.exports = { name: 'chat', description: 'A chat command that uses an LLM to answer your prompts (server must be whitelisted)', + needsWhitelist: true, async execute({ message, args }) { - // TODO: Externalize the whitelist checking into a the message function with a variable export. And cache it. - // Have a global collection that gets created on launch from the database, the collection uses the guild ID as a key and has an array of commands that are whitelisted. - // Just write to both the database and this collection when a new command gets whitelisted. - const db = new sqlite3.Database('data/database.db'); - let isWhitelisted = false; - await new Promise((resolve, reject) => { - db.get(`SELECT * FROM whitelist WHERE serverId = ? AND command = ?`, [message.guild.id, this.name], - function (error, row){ - if(error){ - console.error(error); - resolve(""); - }else{ - if(row === undefined){ - resolve(); - }else { - isWhitelisted = true; - resolve(); - } - } - }) - }) - if(!isWhitelisted){ - message.channel.send("This server is not whitelisted. The bot admin needs to whitelist the server for this command to work."); - return; - } if(args.length === 0){ message.channel.send("You have to set your prompt in the arguments"); return; @@ -39,6 +14,7 @@ module.exports = { let answer = ""; const initialMessage = await message.channel.send("Generating response... This may take a moment.") message.channel.sendTyping(); + // TODO: More configuration. Have a basic setup but allow setting system prompt, max tokens and model. await fetch(`https://openrouter.ai/api/v1/chat/completions`, { method: `POST`, headers: { diff --git a/server.js b/server.js index 51d2f55..7b53ab9 100644 --- a/server.js +++ b/server.js @@ -1,6 +1,7 @@ const fs = require('fs'); const createInitialConfig = require("./util/createInitialConfig") const convertJSONToSQL = require('./util/timer/convertJSONToSQL'); +const sqlite3 = require('sqlite3').verbose(); if(!fs.existsSync("./data/config.json")) { createInitialConfig(); } @@ -18,8 +19,8 @@ async function checkAndConvertJSONToSQL(){ } const createDatabaseTables = require('./server/createDatabaseTables'); const createLastfmTable = require('./server/createLastfmTable'); -const createWhitelistTable = require('./server/createWhitelistTable.js') -createWhitelistTable(); +const createAndLoadWhitelistTable = require('./server/createAndLoadWhitelistTable.js') + createLastfmTable(); checkAndConvertJSONToSQL(); const { Collection, Client, GatewayIntentBits, Partials } = require('discord.js'); @@ -43,8 +44,11 @@ const { client.settings = new Collection(); client.commands = new Collection(); client.serverPrefixes = new Collection(); +client.whitelist = new Collection(); +createAndLoadWhitelistTable(client.whitelist); + client.settings.set("presenceType", presenceType); client.settings.set("presenceText", presenceText); diff --git a/server/createAndLoadWhitelistTable.js b/server/createAndLoadWhitelistTable.js new file mode 100644 index 0000000..d230db1 --- /dev/null +++ b/server/createAndLoadWhitelistTable.js @@ -0,0 +1,48 @@ +const sqlite3 = require('sqlite3').verbose(); +module.exports = async function (clientWhitelist) { + const db = new sqlite3.Database('data/database.db'); + await new Promise ((resolve, reject)=>{ + db.run( + `CREATE TABLE IF NOT EXISTS whitelist ( + Id INTEGER PRIMARY KEY AUTOINCREMENT, + serverId TEXT, + command TEXT, + dateAdded INTEGER)`, + (err) => { + if (err) { + console.error(`Error while creating table 'whitelist': ${err}`); + reject(err); + } else { + console.log("Table 'whitelist' created successfully."); + resolve(); + } + db.close(); + } + ); + }) + loadWhitelist(clientWhitelist); +} + +async function loadWhitelist(clientWhitelist) { + const db = new sqlite3.Database('data/database.db'); + let rows = await new Promise((resolve) => { + db.all(`SELECT * FROM whitelist`, function (error, rows){ + if(error){ + console.error("Failed to read whitelist table") + console.error(error); + resolve([]); + }else{ + resolve(rows); + } + }); + }); + rows.forEach(row => { + if(clientWhitelist.has(row.serverId)){ + let oldEntry = clientWhitelist.get(row.serverId); + oldEntry.push(row.command) + clientWhitelist.set(row.serverId, oldEntry) + }else { + clientWhitelist.set(row.serverId, [row.command]) + } + }); +} \ No newline at end of file diff --git a/server/createWhitelistTable.js b/server/createWhitelistTable.js deleted file mode 100644 index b65319d..0000000 --- a/server/createWhitelistTable.js +++ /dev/null @@ -1,22 +0,0 @@ -const sqlite3 = require('sqlite3').verbose(); -module.exports = async function () { - const db = new sqlite3.Database('data/database.db'); - return new Promise ((resolve, reject)=>{ - db.run( - `CREATE TABLE IF NOT EXISTS whitelist ( - serverId TEXT PRIMARY KEY, - command TEXT, - dateAdded INTEGER)`, - (err) => { - if (err) { - console.error(`Error while creating table 'whitelist': ${err}`); - reject(err); - } else { - console.log("Table 'whitelist' created successfully."); - resolve(); - } - db.close(); - } - ); - }) -} \ No newline at end of file diff --git a/server/message.js b/server/message.js index 9178afc..5e1b498 100644 --- a/server/message.js +++ b/server/message.js @@ -1,6 +1,3 @@ -const fs = require('fs'); -const customReplaceWithVariables = require('../util/custom_commands/customReplaceWithVariables'); - module.exports = function(client, owners, message, globalPrefix){ let prefix = globalPrefix; let serverPrefix = client.serverPrefixes.get(message.guild.id); @@ -22,19 +19,12 @@ module.exports = function(client, owners, message, globalPrefix){ const commandName = args.shift().toLowerCase(); const command = client.commands.get(commandName); - if (!command){ - const customPath = './data/customCommands.json'; - if(fs.existsSync(customPath)){ - let json = fs.readFileSync(customPath, 'utf8'); - let customCommands = JSON.parse(json) - customCommands.forEach(function (customCommand) { - if (customCommand.customName === commandName) { - let customMessage = customReplaceWithVariables(customCommand.customMessage, message, prefix, globalPrefix) - message.channel.send(customMessage) - } - }); + if(command.needsWhitelist){ + let isWhitelisted = client.whitelist.get(message.guild.id)?.includes(command.name); + if(!isWhitelisted){ + message.channel.send(`\`${command.name}\` is not whitelisted in this server. The bot admin needs to whitelist the command in this server for it to work`) + return; } - return; } if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return; try { From f0e08eec13d0bed14fd336991a954f9a2b74a50d Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Wed, 30 Apr 2025 19:48:33 +0200 Subject: [PATCH 025/110] Add lastfm roast feature with LLM --- commands/misc/fm.js | 26 +++++++- util/lastfm/getTopAlbums.js | 119 +++++++++++++++++++++++++++++++++++ util/lastfm/getTopArtists.js | 118 ++++++++++++++++++++++++++++++++++ util/lastfm/roast.js | 37 +++++++++++ 4 files changed, 299 insertions(+), 1 deletion(-) create mode 100644 util/lastfm/getTopAlbums.js create mode 100644 util/lastfm/getTopArtists.js create mode 100644 util/lastfm/roast.js diff --git a/commands/misc/fm.js b/commands/misc/fm.js index 615630c..c3a0089 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -4,6 +4,11 @@ const getCurrentCover = require("../../util/lastfm/getCurrentCover"); const getTopTracks = require("../../util/lastfm/getTopTracks"); const help = require("../info/help"); const parseMention = require("../../util/parseMention"); +const roast = require("../../util/lastfm/roast"); +const getTopArtists = require("../../util/lastfm/getTopArtists"); +const getTopAlbums = require("../../util/lastfm/getTopAlbums"); +const {EmbedBuilder} = require('discord.js'); +const getNickname = require('../../util/getNickname'); module.exports = { name: 'fm', description: 'Last fm commands. See `help fm` for more info.', @@ -13,6 +18,7 @@ module.exports = { "Get current scrobble: `fm`", "Get top tracks: `fmtt`", "Get album cover for current scrobble: `fmcover`", + "Get a roast from an LLM using your top artists and albums: `fmroast`" ], async execute({ message, args, prefix, client }) { let sendText = {text: "Something went wrong.", embed: null}; @@ -31,6 +37,24 @@ module.exports = { case "cover": sendText = await getCurrentCover(message.author.id, message.guild); break; + case "roast": + let topArtists = await getTopArtists(message.author.id, ["yearly"], message.guild, true); + let topAlbums = await getTopAlbums(message.author.id, ["yearly"], message.guild, true); + let result = await roast(topArtists, topAlbums); + + let parse = parseMention(message.author.id, message.guild) + let user = message.guild.members.cache.get(parse); + let nickname = getNickname(user, message.guild) + if (nickname == null) { + nickname = user.user.username; + } + const possesive = nickname.at(nickname.length - 1) === "s" ? "'" : "'s" + const embed = new EmbedBuilder() + .setAuthor({name: `${nickname}${possesive} AI roast`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) + .setColor(15780145) + .setDescription(result); + sendText.embed = embed; + break; default: sendText.text = `${args[0]} is not a valid subcommand.\nSee \`${prefix}help fm\` for more info.`; break; @@ -51,4 +75,4 @@ module.exports = { message.channel.send(sendText.text.replaceAll("", prefix)); } } -}; \ No newline at end of file +}; \ No newline at end of file diff --git a/util/lastfm/getTopAlbums.js b/util/lastfm/getTopAlbums.js new file mode 100644 index 0000000..049393d --- /dev/null +++ b/util/lastfm/getTopAlbums.js @@ -0,0 +1,119 @@ +// http://ws.audioscrobbler.com/2.0/?method=user.gettopalbums&user=username&api_key=YOUR_API_KEY&format=json + +const getFmUsername = require("./getFmUsername"); +const {EmbedBuilder} = require('discord.js'); +const getNickname = require('../getNickname') +const parseMention = require('../parseMention') + +module.exports = async function (userID, option, guild, compatibility=false) { + let lastfmUsername = await getFmUsername(userID) + let parse = parseMention(userID, guild) + let user = guild.members.cache.get(parse); + let nickname = getNickname(user, guild) + if (nickname == null) { + nickname = user.user.username; + } + let albums = []; + const options = { + "weekly": "7day", + "week": "7day", + "w": "7day", + + "monthly": "1month", + "month": "1month", + "m": "1month", + + "quarterly": "3month", + "q": "3month", + + "halfyear": "6month", + "hy": "6month", + "h": "6month", + + "yearly": "12month", + "year": "12month", + "y": "12month", + + "alltime": "overall", + "a": "overall", + "at": "overall", + "all": "overall", + + undefined: "7day" + }; + + if(option.length === 0){ + option[0] = "weekly" + } + + option[0] = options[option[0]]; + if(option[0] === undefined) + option[0] = options[option[0]]; + + let duration = ""; + switch (option[0]){ + case "overall": + duration = "all time"; + break; + case "7day": + duration = "weekly"; + break; + case "1month": + duration = "monthly"; + break; + case "3month": + duration = "quarterly"; + break; + case "6month": + duration = "half year"; + break; + case "12month": + duration = "yearly"; + break; + } + let sendText = { text: "", embed: null } + if(lastfmUsername != undefined){ + albums = await new Promise ((resolve, reject) => { + fetch(`https://ws.audioscrobbler.com/2.0/?method=user.gettopalbums&user=${lastfmUsername}&period=${option[0]}&api_key=${process.env.LAST_FM_API_KEY}&format=json`) + .then(response => response.json()) + .then(data => { + for(let i = 0; i < 10; i++){ + let album = {} + let currentAlbum = data.topalbums.album[i]; + album.artist = currentAlbum.artist.name; + album.name = currentAlbum.name; + album.playcount = currentAlbum.playcount; + albums.push(album); + } + resolve(albums); + }) + .catch(error => { + console.error(error); + reject(error); + }); + }); + } + // const embed = new EmbedBuilder() + // .setAuthor({name: `Top ${duration} albums for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) + // .setThumbnail(albums[0].cover) + // .setColor(15780145) + // let tracksInfo = ""; + // for(let i = 0; i < albums.length; i++){ + // let pluralCharacter = albums[i].playcount > 1 ? 's' : ''; + // let track = `${i}. **${albums[i].artist}** - ${albums[i].song} - *${albums[i].playcount} play${pluralCharacter}*`; + // if(i < albums.length - 1){ + // tracksInfo += `${track}\n`; + // }else{ + // tracksInfo += `${track}`; + // } + // } + // embed.addFields({ + // name: ` `, value: `${tracksInfo}` + // },) + // sendText.embed = embed; + // if(compatibility) + return albums; + // else + // return sendText; + +} \ No newline at end of file diff --git a/util/lastfm/getTopArtists.js b/util/lastfm/getTopArtists.js new file mode 100644 index 0000000..2318180 --- /dev/null +++ b/util/lastfm/getTopArtists.js @@ -0,0 +1,118 @@ +// http://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user=username&api_key=YOUR_API_KEY&format=json + +const getFmUsername = require("./getFmUsername"); +const {EmbedBuilder} = require('discord.js'); +const getNickname = require('../getNickname') +const parseMention = require('../parseMention') + +module.exports = async function (userID, option, guild, compatibility=false) { + let lastfmUsername = await getFmUsername(userID) + let parse = parseMention(userID, guild) + let user = guild.members.cache.get(parse); + let nickname = getNickname(user, guild) + if (nickname == null) { + nickname = user.user.username; + } + let artists = []; + const options = { + "weekly": "7day", + "week": "7day", + "w": "7day", + + "monthly": "1month", + "month": "1month", + "m": "1month", + + "quarterly": "3month", + "q": "3month", + + "halfyear": "6month", + "hy": "6month", + "h": "6month", + + "yearly": "12month", + "year": "12month", + "y": "12month", + + "alltime": "overall", + "a": "overall", + "at": "overall", + "all": "overall", + + undefined: "7day" + }; + + if(option.length === 0){ + option[0] = "weekly" + } + + option[0] = options[option[0]]; + if(option[0] === undefined) + option[0] = options[option[0]]; + + let duration = ""; + switch (option[0]){ + case "overall": + duration = "all time"; + break; + case "7day": + duration = "weekly"; + break; + case "1month": + duration = "monthly"; + break; + case "3month": + duration = "quarterly"; + break; + case "6month": + duration = "half year"; + break; + case "12month": + duration = "yearly"; + break; + } + let sendText = { text: "", embed: null } + if(lastfmUsername != undefined){ + artists = await new Promise ((resolve, reject) => { + fetch(`https://ws.audioscrobbler.com/2.0/?method=user.gettopartists&user=${lastfmUsername}&period=${option[0]}&api_key=${process.env.LAST_FM_API_KEY}&format=json`) + .then(response => response.json()) + .then(data => { + for(let i = 0; i < 10; i++){ + let artist = {} + let currentArtist = data.topartists.artist[i]; + artist.name = currentArtist.name; + artist.playcount = currentArtist.playcount; + artists.push(artist); + } + resolve(artists); + }) + .catch(error => { + console.error(error); + reject(error); + }); + }); + } + // const embed = new EmbedBuilder() + // .setAuthor({name: `Top ${duration} tracks for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) + // .setThumbnail(tracks[0].cover) + // .setColor(15780145) + // let tracksInfo = ""; + // for(let i = 0; i < tracks.length; i++){ + // let pluralCharacter = tracks[i].playcount > 1 ? 's' : ''; + // let track = `${i}. **${tracks[i].artist}** - ${tracks[i].song} - *${tracks[i].playcount} play${pluralCharacter}*`; + // if(i < tracks.length - 1){ + // tracksInfo += `${track}\n`; + // }else{ + // tracksInfo += `${track}`; + // } + // } + // embed.addFields({ + // name: ` `, value: `${tracksInfo}` + // },) + // sendText.embed = embed; + // if(compatibility) + return artists; + // else + // return sendText; + +} \ No newline at end of file diff --git a/util/lastfm/roast.js b/util/lastfm/roast.js new file mode 100644 index 0000000..db85214 --- /dev/null +++ b/util/lastfm/roast.js @@ -0,0 +1,37 @@ +require("dotenv").config(); +module.exports = async function(topArtists, topAlbums) { + let prompt = "Roast the top 10 artists albums the user has listened to most for the last 365 days. Be mean. Be concise and create 3 small paragraphs in total. DO NOT CREATE ONE PARAGRAPH PER ARTIST OR ALBUM.\n" + + prompt += "Top artists and their playcounts:\n" + topArtists.forEach(topArtist => { + prompt += `${topArtist.name} (${topArtist.playcount})\n` + }); + + prompt += "Top albums and their playcounts:\n" + topAlbums.forEach(topAlbum => { + prompt += `${topAlbum.artist} - ${topAlbum.name} (${topAlbum.playcount})\n` + }) + let answer = ""; + await fetch(`https://openrouter.ai/api/v1/chat/completions`, { + method: `POST`, + headers: { + "Authorization": `Bearer ${process.env.OPENROUTER_API_KEY}`, + "Content-Type": `application/json` + }, + body: JSON.stringify({ + "model": `deepseek/deepseek-chat-v3-0324:free`, + "messages": [ + { + "role": `system`, + "content": prompt + } + ], + "max_tokens": 400 + }) + }).then(response => response.json()).then(data => { + answer = data.choices[0].message.content; + }).catch(error => { + console.error(error); + }); + return answer; +} \ No newline at end of file From ca646fc5ee2520498313ab78adaa35bbd428d72b Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Wed, 30 Apr 2025 23:17:49 +0200 Subject: [PATCH 026/110] Fix downloadImage not returning 2 when content-type isn't image --- commands/misc/tdoss.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index 2c44fa5..d172ec5 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -84,7 +84,7 @@ module.exports = { async downloadImage(url, path) { const res = await fetch(url); if(!res.ok) return 1; - if(!res.headers.get('content-type').startsWith("image")) 2; + if(!res.headers.get('content-type').startsWith("image")) return 2; const stream = Readable.fromWeb(res.body) await writeFile(path, stream); return 0; From 52c7a4cbad20c87eb53b1b44c3bd390fbe4146e4 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 2 May 2025 16:32:45 +0200 Subject: [PATCH 027/110] Remove chat command Discord has started banning bots that train on input. Since I use free APIs, I cannot guarantee that the prompts won't be used for training. --- commands/misc/chat.js | 48 ------------------------------------------- 1 file changed, 48 deletions(-) delete mode 100644 commands/misc/chat.js diff --git a/commands/misc/chat.js b/commands/misc/chat.js deleted file mode 100644 index e01a4dc..0000000 --- a/commands/misc/chat.js +++ /dev/null @@ -1,48 +0,0 @@ -require("dotenv").config(); - -module.exports = { - name: 'chat', - description: 'A chat command that uses an LLM to answer your prompts (server must be whitelisted)', - needsWhitelist: true, - async execute({ message, args }) { - - if(args.length === 0){ - message.channel.send("You have to set your prompt in the arguments"); - return; - } - const prompt = args.join(" "); - let answer = ""; - const initialMessage = await message.channel.send("Generating response... This may take a moment.") - message.channel.sendTyping(); - // TODO: More configuration. Have a basic setup but allow setting system prompt, max tokens and model. - await fetch(`https://openrouter.ai/api/v1/chat/completions`, { - method: `POST`, - headers: { - "Authorization": `Bearer ${process.env.OPENROUTER_API_KEY}`, - "Content-Type": `application/json` - }, - body: JSON.stringify({ - "model": `deepseek/deepseek-chat-v3-0324:free`, - "messages": [ - { - "role": `user`, - "content": prompt - } - ], - "max_tokens": 250 - }) - }).then(response => response.json()).then(data => { - answer = data.choices[0].message.content; - }).catch(error => { - console.error(error); - }); - if(answer.length > 0){ - if(answer.length > 1999){ - initialMessage.edit("Unfortunately the length of the message was longer than what discord allows.") - } - initialMessage.edit(answer) - }else { - initialMessage.edit("Something went wrong. The owner should check the console.") - } - } -}; \ No newline at end of file From 6b45bc67998eceed12359590ab4f325abe48d1aa Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 2 May 2025 16:42:25 +0200 Subject: [PATCH 028/110] Switch to gemini 2.0 LLM --- util/lastfm/roast.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/lastfm/roast.js b/util/lastfm/roast.js index db85214..fc70cfd 100644 --- a/util/lastfm/roast.js +++ b/util/lastfm/roast.js @@ -19,7 +19,7 @@ module.exports = async function(topArtists, topAlbums) { "Content-Type": `application/json` }, body: JSON.stringify({ - "model": `deepseek/deepseek-chat-v3-0324:free`, + "model": `google/gemini-2.0-flash-001`, "messages": [ { "role": `system`, From 30c7fd171f29cb7e1781282bbc4a4f3489feed65 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 2 May 2025 16:50:20 +0200 Subject: [PATCH 029/110] Fix crash when command does not exist This regression appeared when I removed custom command support --- server/message.js | 1 + 1 file changed, 1 insertion(+) diff --git a/server/message.js b/server/message.js index 5e1b498..a7f9244 100644 --- a/server/message.js +++ b/server/message.js @@ -19,6 +19,7 @@ module.exports = function(client, owners, message, globalPrefix){ const commandName = args.shift().toLowerCase(); const command = client.commands.get(commandName); + if(!command) return; if(command.needsWhitelist){ let isWhitelisted = client.whitelist.get(message.guild.id)?.includes(command.name); if(!isWhitelisted){ From 99d6fc2401e3f5aa1fd9967438f7ae154b8db97c Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 3 May 2025 07:23:22 +0200 Subject: [PATCH 030/110] Add whitelist for users as well --- commands/admin/whitelist.js | 137 ++++++++++++++++++-------- server.js | 6 +- server/createAndLoadWhitelistTable.js | 77 ++++++++++++--- server/message.js | 11 ++- 4 files changed, 167 insertions(+), 64 deletions(-) diff --git a/commands/admin/whitelist.js b/commands/admin/whitelist.js index b5659bf..327e3de 100644 --- a/commands/admin/whitelist.js +++ b/commands/admin/whitelist.js @@ -2,55 +2,106 @@ const sqlite3 = require('sqlite3').verbose(); module.exports = { name: 'whitelist', - description: 'Whitelist a command in a specific server.', + description: 'Whitelist a command in a specific server, or for a user.', admin: true, async execute({message, args, prefix, client}) { - if(args.length < 2){ - message.channel.send(`You need to supply the command and channel that you want to whitelist\n\`${prefix}whitelist \``); + if(args.length < 3){ + message.channel.send(`You need to supply the command and guild that you want to whitelist\n\`${prefix}whitelist \``); return; } - let command = args[0]; - let guild = args[1]; - if(guild === "this") guild = message.guild.id; - // TODO: Add ability to remove server from whitelist. - const whitelistedCommands = client.whitelist.get(guild); - if(whitelistedCommands && whitelistedCommands.includes(command)){ - message.channel.send("Command is already whitelisted in that server.") + let option = args[0]; + let command = args[1]; + let guildOrUser = args[2]; + + if(option === "guild" || option === "server"){ + if(guildOrUser === "this") guildOrUser = message.guild.id; + const whitelistedCommands = client.whitelist.guild.get(guildOrUser); + if(whitelistedCommands && whitelistedCommands.includes(command)){ + message.channel.send("Command is already whitelisted in that server.") + return; + } + // TODO: First check if the bot has access to that guild before whitelisting. + const databasePath = 'data/database.db' + const db = new sqlite3.Database(databasePath) + let err = false; + await new Promise((resolve, reject)=>{ + db.run(`INSERT INTO guild_whitelist ( + guildId, + command, + dateAdded + ) VALUES (?, ?, ?)`, + [ + guildOrUser, + command, + new Date().getTime() + ], function (error) { + if (error) { + console.error(error); + err = true; + resolve(); + }else{ + resolve(); + } + }); + }) + db.close(); + if(!err){ + if(whitelistedCommands){ + whitelistedCommands.push(command); + client.whitelist.guild.set(guildOrUser, whitelistedCommands); + }else { + client.whitelist.guild.set(guildOrUser, command); + } + message.channel.send(`"${command}" has been whitelisted in that server.`) + + } else message.channel.send("Could not whitelist the server with that command. Check the logs.") + return; + }else if (option === "user"){ + const whitelistedCommands = client.whitelist.user.get(guildOrUser); + if(whitelistedCommands && whitelistedCommands.includes(command)){ + message.channel.send("Command is already whitelisted for that user.") + return; + } + const databasePath = 'data/database.db' + const db = new sqlite3.Database(databasePath) + let err = false; + await new Promise((resolve, reject)=>{ + db.run(`INSERT INTO user_whitelist ( + userId, + command, + dateAdded + ) VALUES (?, ?, ?)`, + [ + guildOrUser, + command, + new Date().getTime() + ], function (error) { + if (error) { + console.error(error); + err = true; + resolve(); + }else{ + resolve(); + } + }); + }) + db.close(); + if(!err){ + if(whitelistedCommands){ + whitelistedCommands.push(command); + client.whitelist.user.set(guildOrUser, whitelistedCommands); + }else { + client.whitelist.user.set(guildOrUser, command); + } + message.channel.send(`"${command}" has been whitelisted for ${guildOrUser}.`) + + } else message.channel.send("Could not whitelist the server with that command. Check the logs.") return; } - // TODO: First check if the bot has access to that guild before whitelisting. - const databasePath = 'data/database.db' - const db = new sqlite3.Database(databasePath) - let err = false; - await new Promise((resolve, reject)=>{ - db.run(`INSERT INTO whitelist ( - serverId, - command, - dateAdded - ) VALUES (?, ?, ?)`, - [ - guild, - command, - new Date().getTime() - ], function (error) { - if (error) { - console.error(error); - err = true; - resolve(); - }else{ - resolve(); - } - }); - }) - if(!err){ - if(whitelistedCommands){ - whitelistedCommands.push(command); - client.whitelist.set(guild, whitelistedCommands); - }else { - client.whitelist.set(guild, command); - } - message.channel.send("Command has been whitelisted in that server.") - } else message.channel.send("Could not whitelist the server with that command. Check the logs.") + + + // TODO: Add ability to remove server from whitelist. } + }; \ No newline at end of file diff --git a/server.js b/server.js index 7b53ab9..b38abe4 100644 --- a/server.js +++ b/server.js @@ -44,8 +44,10 @@ const { client.settings = new Collection(); client.commands = new Collection(); client.serverPrefixes = new Collection(); -client.whitelist = new Collection(); - +client.whitelist = { + guild: new Collection(), + user: new Collection() +} createAndLoadWhitelistTable(client.whitelist); diff --git a/server/createAndLoadWhitelistTable.js b/server/createAndLoadWhitelistTable.js index d230db1..a304045 100644 --- a/server/createAndLoadWhitelistTable.js +++ b/server/createAndLoadWhitelistTable.js @@ -1,34 +1,61 @@ const sqlite3 = require('sqlite3').verbose(); module.exports = async function (clientWhitelist) { const db = new sqlite3.Database('data/database.db'); + await createGuildWhitelist(db); + await createUserWhitelist(db); + db.close(); + loadWhitelist(clientWhitelist); +} + +async function createGuildWhitelist(db) { await new Promise ((resolve, reject)=>{ db.run( - `CREATE TABLE IF NOT EXISTS whitelist ( + `CREATE TABLE IF NOT EXISTS guild_whitelist ( Id INTEGER PRIMARY KEY AUTOINCREMENT, - serverId TEXT, + guildId TEXT, command TEXT, dateAdded INTEGER)`, (err) => { if (err) { - console.error(`Error while creating table 'whitelist': ${err}`); + db.close(); + console.error(`Error while creating table 'guild_whitelist': ${err}`); reject(err); } else { - console.log("Table 'whitelist' created successfully."); + console.log("Table 'guild_whitelist' created successfully."); resolve(); } - db.close(); } ); - }) - loadWhitelist(clientWhitelist); + }); +} +async function createUserWhitelist(db) { + await new Promise ((resolve, reject)=>{ + db.run( + `CREATE TABLE IF NOT EXISTS user_whitelist ( + Id INTEGER PRIMARY KEY AUTOINCREMENT, + userId TEXT, + command TEXT, + dateAdded INTEGER)`, + (err) => { + if (err) { + db.close(); + console.error(`Error while creating table 'user_whitelist': ${err}`); + reject(err); + } else { + console.log("Table 'user_whitelist' created successfully."); + resolve(); + } + } + ); + }); } async function loadWhitelist(clientWhitelist) { const db = new sqlite3.Database('data/database.db'); - let rows = await new Promise((resolve) => { - db.all(`SELECT * FROM whitelist`, function (error, rows){ + let guildRows = await new Promise((resolve) => { + db.all(`SELECT * FROM guild_whitelist`, function (error, rows){ if(error){ - console.error("Failed to read whitelist table") + console.error("Failed to read guild_whitelist table") console.error(error); resolve([]); }else{ @@ -36,13 +63,33 @@ async function loadWhitelist(clientWhitelist) { } }); }); - rows.forEach(row => { - if(clientWhitelist.has(row.serverId)){ - let oldEntry = clientWhitelist.get(row.serverId); + let userRows = await new Promise((resolve) => { + db.all(`SELECT * FROM user_whitelist`, function (error, rows){ + if(error){ + console.error("Failed to read user_whitelist table") + console.error(error); + resolve([]); + } + }) + }) + guildRows.forEach(row => { + if(clientWhitelist.guild.has(row.guildId)){ + let oldEntry = clientWhitelist.guild.get(row.guildId); oldEntry.push(row.command) - clientWhitelist.set(row.serverId, oldEntry) + clientWhitelist.guild.set(row.guildId, oldEntry) }else { - clientWhitelist.set(row.serverId, [row.command]) + clientWhitelist.guild.set(row.guildId, [row.command]) } }); + userRows.forEach(row => { + if(clientWhitelist.user.has(row.userId)){ + let oldEntry = clientWhitelist.user.get(row.userId); + oldEntry.push(row.command) + clientWhitelist.user.set(row.userId, oldEntry) + }else { + clientWhitelist.user.set(row.userId, [row.command]) + } + }); + + db.close(); } \ No newline at end of file diff --git a/server/message.js b/server/message.js index a7f9244..75f21b1 100644 --- a/server/message.js +++ b/server/message.js @@ -21,10 +21,13 @@ module.exports = function(client, owners, message, globalPrefix){ const command = client.commands.get(commandName); if(!command) return; if(command.needsWhitelist){ - let isWhitelisted = client.whitelist.get(message.guild.id)?.includes(command.name); - if(!isWhitelisted){ - message.channel.send(`\`${command.name}\` is not whitelisted in this server. The bot admin needs to whitelist the command in this server for it to work`) - return; + let isGuildWhitelisted = client.whitelist.get(message.guild.id)?.includes(command.name); + if(!isGuildWhitelisted){ + let isUserWhitelisted = client.whitelist.user.get(message.author.id)?.includes(command.name); + if(!isUserWhitelisted){ + message.channel.send(`\`${command.name}\` is not whitelisted in this server. The bot admin needs to whitelist the command in this server for it to work`) + return; + } } } if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return; From b2c6c705c301d5883a073ccd9b019fa9dcd416d0 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sun, 4 May 2025 03:58:11 +0200 Subject: [PATCH 031/110] Add more types of whitelisting, plus support for subcommands --- commands/misc/fm.js | 7 +++++++ server/message.js | 13 ++++--------- tests/isWhitelisted.test.js | 30 ++++++++++++++++++++++++++++++ util/isWhitelisted.js | 22 ++++++++++++++++++++++ 4 files changed, 63 insertions(+), 9 deletions(-) create mode 100644 tests/isWhitelisted.test.js create mode 100644 util/isWhitelisted.js diff --git a/commands/misc/fm.js b/commands/misc/fm.js index c3a0089..8d07401 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -9,6 +9,7 @@ const getTopArtists = require("../../util/lastfm/getTopArtists"); const getTopAlbums = require("../../util/lastfm/getTopAlbums"); const {EmbedBuilder} = require('discord.js'); const getNickname = require('../../util/getNickname'); +const isWhitelisted = require("../../util/isWhitelisted"); module.exports = { name: 'fm', description: 'Last fm commands. See `help fm` for more info.', @@ -38,8 +39,14 @@ module.exports = { sendText = await getCurrentCover(message.author.id, message.guild); break; case "roast": + const commandName = "fmroast" + if(!isWhitelisted.isWhitelisted(commandName, client.whitelist, message.guild.id, message.author.id, isWhitelisted.whitelistTypes.EITHER)) { + message.channel.send("fmroast has not been whitelisted for you or this server.") + return; + } let topArtists = await getTopArtists(message.author.id, ["yearly"], message.guild, true); let topAlbums = await getTopAlbums(message.author.id, ["yearly"], message.guild, true); + message.channel.sendTyping(); let result = await roast(topArtists, topAlbums); let parse = parseMention(message.author.id, message.guild) diff --git a/server/message.js b/server/message.js index 75f21b1..08d860d 100644 --- a/server/message.js +++ b/server/message.js @@ -1,3 +1,4 @@ +const isWhitelisted = require('../util/isWhitelisted') module.exports = function(client, owners, message, globalPrefix){ let prefix = globalPrefix; let serverPrefix = client.serverPrefixes.get(message.guild.id); @@ -20,15 +21,9 @@ module.exports = function(client, owners, message, globalPrefix){ const commandName = args.shift().toLowerCase(); const command = client.commands.get(commandName); if(!command) return; - if(command.needsWhitelist){ - let isGuildWhitelisted = client.whitelist.get(message.guild.id)?.includes(command.name); - if(!isGuildWhitelisted){ - let isUserWhitelisted = client.whitelist.user.get(message.author.id)?.includes(command.name); - if(!isUserWhitelisted){ - message.channel.send(`\`${command.name}\` is not whitelisted in this server. The bot admin needs to whitelist the command in this server for it to work`) - return; - } - } + if(command.needsWhitelist && !isWhitelisted.isWhitelisted(command.name, client.whitelist, message.guild.id, message.author.id, isWhitelisted.whitelistTypes.EITHER)){ + message.channel.send(`\`${command.name}\` is not whitelisted for you or this server. The bot admin needs to whitelist the command for you or this server.`) + return; } if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return; try { diff --git a/tests/isWhitelisted.test.js b/tests/isWhitelisted.test.js new file mode 100644 index 0000000..c955f4d --- /dev/null +++ b/tests/isWhitelisted.test.js @@ -0,0 +1,30 @@ +const isWhitelisted = require('../util/isWhitelisted'); + +const whitelist = { + guild: new Map(), + user: new Map() +} +whitelist.guild.set(20, ["test1", "test3"]); +whitelist.guild.set(21, ["test2", "test4"]); +whitelist.user.set(1001, ["test1", "test3"]); +whitelist.user.set(1002, ["test2", "test4"]); + +test('Test isWhitelisted', () => { + expect(isWhitelisted.isWhitelisted("test1", whitelist, 20, 1001, isWhitelisted.whitelistTypes.BOTH)).toBe(true); + expect(isWhitelisted.isWhitelisted("test3", whitelist, 20, 1002, isWhitelisted.whitelistTypes.BOTH)).toBe(false); + expect(isWhitelisted.isWhitelisted("test3", whitelist, 21, 1001, isWhitelisted.whitelistTypes.BOTH)).toBe(false); + + expect(isWhitelisted.isWhitelisted("test1", whitelist, 20, 1001, isWhitelisted.whitelistTypes.USER_ONLY)).toBe(true); + expect(isWhitelisted.isWhitelisted("test1", whitelist, 21, 1001, isWhitelisted.whitelistTypes.USER_ONLY)).toBe(true); + expect(isWhitelisted.isWhitelisted("test1", whitelist, 20, 1002, isWhitelisted.whitelistTypes.USER_ONLY)).toBe(false); + + expect(isWhitelisted.isWhitelisted("test4", whitelist, 20, 1001, isWhitelisted.whitelistTypes.GUILD_ONLY)).toBe(false); + expect(isWhitelisted.isWhitelisted("test4", whitelist, 21, 1001, isWhitelisted.whitelistTypes.GUILD_ONLY)).toBe(true); + expect(isWhitelisted.isWhitelisted("test4", whitelist, 21, 1002, isWhitelisted.whitelistTypes.GUILD_ONLY)).toBe(true); + + expect(isWhitelisted.isWhitelisted("test1", whitelist, 20, 1002, isWhitelisted.whitelistTypes.EITHER)).toBe(true); + expect(isWhitelisted.isWhitelisted("test2", whitelist, 20, 1002, isWhitelisted.whitelistTypes.EITHER)).toBe(true); + expect(isWhitelisted.isWhitelisted("test3", whitelist, 21, 1001, isWhitelisted.whitelistTypes.EITHER)).toBe(true); + expect(isWhitelisted.isWhitelisted("test4", whitelist, 20, 1001, isWhitelisted.whitelistTypes.EITHER)).toBe(false); + +}); diff --git a/util/isWhitelisted.js b/util/isWhitelisted.js new file mode 100644 index 0000000..8a99056 --- /dev/null +++ b/util/isWhitelisted.js @@ -0,0 +1,22 @@ +// type: 0 for both, 1 for guild, 2 for userId, 3 for either. +function isWhitelisted(command, whitelist, guildId, userId, type=0){ + const isGuildWhitelisted = Boolean(whitelist.guild.get(guildId)?.includes(command)) + if(type === whitelistTypes.GUILD_ONLY) return isGuildWhitelisted; + if(type === whitelistTypes.BOTH && !isGuildWhitelisted) return false; + if(type === whitelistTypes.EITHER && isGuildWhitelisted) return true; + const isUserWhitelisted = Boolean(whitelist.user.get(userId)?.includes(command)) + if(type === whitelistTypes.USER_ONLY) return isUserWhitelisted; + if(type === whitelistTypes.BOTH && isGuildWhitelisted && isUserWhitelisted) return true; + if(type === whitelistTypes.EITHER && (isGuildWhitelisted || isUserWhitelisted)) return true; + return false; +} + +const whitelistTypes = { + BOTH: 0, + GUILD_ONLY: 1, + USER_ONLY: 2, + EITHER: 3 +} + + +module.exports = {isWhitelisted, whitelistTypes} \ No newline at end of file From 007c6db3bcdc851e5828b06f9b574e9250198c85 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sun, 4 May 2025 04:07:05 +0200 Subject: [PATCH 032/110] Update discord.js to 14.19.3 and dotenv to 16.5.0 --- package-lock.json | 139 +++++++++++++++++++--------------------------- package.json | 4 +- 2 files changed, 60 insertions(+), 83 deletions(-) diff --git a/package-lock.json b/package-lock.json index a992a45..8bf57e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,8 +10,8 @@ "license": "UNLICENSE", "dependencies": { "@zuzak/owo": "^1.14.1", - "discord.js": "^14.16.3", - "dotenv": "^16.4.5", + "discord.js": "^14.19.3", + "dotenv": "^16.5.0", "seedrandom": "^3.0.5", "sqlite3": "^5.1.6" }, @@ -666,32 +666,26 @@ "license": "MIT" }, "node_modules/@discordjs/builders": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.9.0.tgz", - "integrity": "sha512-0zx8DePNVvQibh5ly5kCEei5wtPBIUbSoE9n+91Rlladz4tgtFbJ36PZMxxZrTEOQ7AHMZ/b0crT/0fCy6FTKg==", + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/@discordjs/builders/-/builders-1.11.2.tgz", + "integrity": "sha512-F1WTABdd8/R9D1icJzajC4IuLyyS8f3rTOz66JsSI3pKvpCAtsMBweu8cyNYsIyvcrKAVn9EPK+Psoymq+XC0A==", "license": "Apache-2.0", "dependencies": { - "@discordjs/formatters": "^0.5.0", + "@discordjs/formatters": "^0.6.1", "@discordjs/util": "^1.1.1", "@sapphire/shapeshift": "^4.0.0", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.38.1", "fast-deep-equal": "^3.1.3", "ts-mixer": "^6.0.4", "tslib": "^2.6.3" }, "engines": { - "node": ">=18" + "node": ">=16.11.0" }, "funding": { "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/builders/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/collection": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-1.5.3.tgz", @@ -702,30 +696,24 @@ } }, "node_modules/@discordjs/formatters": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.5.0.tgz", - "integrity": "sha512-98b3i+Y19RFq1Xke4NkVY46x8KjJQjldHUuEbCqMvp1F5Iq9HgnGpu91jOi/Ufazhty32eRsKnnzS8n4c+L93g==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@discordjs/formatters/-/formatters-0.6.1.tgz", + "integrity": "sha512-5cnX+tASiPCqCWtFcFslxBVUaCetB0thvM/JyavhbXInP1HJIEU+Qv/zMrnuwSsX3yWH2lVXNJZeDK3EiP4HHg==", "license": "Apache-2.0", "dependencies": { - "discord-api-types": "0.37.97" + "discord-api-types": "^0.38.1" }, "engines": { - "node": ">=18" + "node": ">=16.11.0" }, "funding": { "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/formatters/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/rest": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.4.0.tgz", - "integrity": "sha512-Xb2irDqNcq+O8F0/k/NaDp7+t091p+acb51iA4bCKfIn+WFWd6HrNvcsSbMMxIR9NjcMZS6NReTKygqiQN+ntw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@discordjs/rest/-/rest-2.5.0.tgz", + "integrity": "sha512-PWhchxTzpn9EV3vvPRpwS0EE2rNYB9pvzDU/eLLW3mByJl0ZHZjHI2/wA8EbH2gRMQV7nu+0FoDF84oiPl8VAQ==", "license": "Apache-2.0", "dependencies": { "@discordjs/collection": "^2.1.1", @@ -733,10 +721,10 @@ "@sapphire/async-queue": "^1.5.3", "@sapphire/snowflake": "^3.5.3", "@vladfrangu/async_event_emitter": "^2.4.6", - "discord-api-types": "0.37.97", + "discord-api-types": "^0.38.1", "magic-bytes.js": "^1.10.0", "tslib": "^2.6.3", - "undici": "6.19.8" + "undici": "6.21.1" }, "engines": { "node": ">=18" @@ -757,12 +745,6 @@ "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/rest/node_modules/discord-api-types": { - "version": "0.37.97", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.97.tgz", - "integrity": "sha512-No1BXPcVkyVD4ZVmbNgDKaBoqgeQ+FJpzZ8wqHkfmBnTZig1FcH3iPPersiK1TUIAzgClh2IvOuVUYfcWLQAOA==", - "license": "MIT" - }, "node_modules/@discordjs/util": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@discordjs/util/-/util-1.1.1.tgz", @@ -776,20 +758,20 @@ } }, "node_modules/@discordjs/ws": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.1.1.tgz", - "integrity": "sha512-PZ+vLpxGCRtmr2RMkqh8Zp+BenUaJqlS6xhgWKEZcgC/vfHLEzpHtKkB0sl3nZWpwtcKk6YWy+pU3okL2I97FA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@discordjs/ws/-/ws-1.2.2.tgz", + "integrity": "sha512-dyfq7yn0wO0IYeYOs3z79I6/HumhmKISzFL0Z+007zQJMtAFGtt3AEoq1nuLXtcunUE5YYYQqgKvybXukAK8/w==", "license": "Apache-2.0", "dependencies": { "@discordjs/collection": "^2.1.0", - "@discordjs/rest": "^2.3.0", + "@discordjs/rest": "^2.5.0", "@discordjs/util": "^1.1.0", "@sapphire/async-queue": "^1.5.2", "@types/ws": "^8.5.10", "@vladfrangu/async_event_emitter": "^2.2.4", - "discord-api-types": "0.37.83", + "discord-api-types": "^0.38.1", "tslib": "^2.6.2", - "ws": "^8.16.0" + "ws": "^8.17.0" }, "engines": { "node": ">=16.11.0" @@ -810,12 +792,6 @@ "url": "https://github.com/discordjs/discord.js?sponsor" } }, - "node_modules/@discordjs/ws/node_modules/discord-api-types": { - "version": "0.37.83", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.83.tgz", - "integrity": "sha512-urGGYeWtWNYMKnYlZnOnDHm8fVRffQs3U0SpE8RHeiuLKb/u92APS8HoQnPTFbnXmY1vVnXjXO4dOxcAn3J+DA==", - "license": "MIT" - }, "node_modules/@gar/promisify": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", @@ -1268,9 +1244,9 @@ } }, "node_modules/@sapphire/async-queue": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.3.tgz", - "integrity": "sha512-x7zadcfJGxFka1Q3f8gCts1F0xMwCKbZweM85xECGI0hBTeIZJGGCrHgLggihBoprlQ/hBmDR5LKfIPqnmHM3w==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@sapphire/async-queue/-/async-queue-1.5.5.tgz", + "integrity": "sha512-cvGzxbba6sav2zZkH8GPf2oGk9yYoD5qrNWdu9fRehifgnFZJMV+nuy2nON2roRO4yQQ+v7MK/Pktl/HgfsUXg==", "license": "MIT", "engines": { "node": ">=v14.0.0", @@ -1447,9 +1423,9 @@ "license": "MIT" }, "node_modules/@types/ws": { - "version": "8.5.12", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", - "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", "license": "MIT", "dependencies": { "@types/node": "*" @@ -2312,29 +2288,30 @@ } }, "node_modules/discord-api-types": { - "version": "0.37.100", - "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.37.100.tgz", - "integrity": "sha512-a8zvUI0GYYwDtScfRd/TtaNBDTXwP5DiDVX7K5OmE+DRT57gBqKnwtOC5Ol8z0mRW8KQfETIgiB8U0YZ9NXiCA==", + "version": "0.38.2", + "resolved": "https://registry.npmjs.org/discord-api-types/-/discord-api-types-0.38.2.tgz", + "integrity": "sha512-GAPY1/Kv3aqEoBYgUYXB2tHdWJCZXfytlCzxZ4QMQ1/TIQn1JI+xUOukehl4iEa9m7fCURnMIOpOxpaTWqzX2w==", "license": "MIT" }, "node_modules/discord.js": { - "version": "14.16.3", - "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.16.3.tgz", - "integrity": "sha512-EPCWE9OkA9DnFFNrO7Kl1WHHDYFXu3CNVFJg63bfU7hVtjZGyhShwZtSBImINQRWxWP2tgo2XI+QhdXx28r0aA==", + "version": "14.19.3", + "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-14.19.3.tgz", + "integrity": "sha512-lncTRk0k+8Q5D3nThnODBR8fR8x2fM798o8Vsr40Krx0DjPwpZCuxxTcFMrXMQVOqM1QB9wqWgaXPg3TbmlHqA==", "license": "Apache-2.0", "dependencies": { - "@discordjs/builders": "^1.9.0", + "@discordjs/builders": "^1.11.2", "@discordjs/collection": "1.5.3", - "@discordjs/formatters": "^0.5.0", - "@discordjs/rest": "^2.4.0", + "@discordjs/formatters": "^0.6.1", + "@discordjs/rest": "^2.5.0", "@discordjs/util": "^1.1.1", - "@discordjs/ws": "1.1.1", + "@discordjs/ws": "^1.2.2", "@sapphire/snowflake": "3.5.3", - "discord-api-types": "0.37.100", + "discord-api-types": "^0.38.1", "fast-deep-equal": "3.1.3", "lodash.snakecase": "4.1.1", + "magic-bytes.js": "^1.10.0", "tslib": "^2.6.3", - "undici": "6.19.8" + "undici": "6.21.1" }, "engines": { "node": ">=18" @@ -2344,9 +2321,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "version": "16.5.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz", + "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==", "license": "BSD-2-Clause", "engines": { "node": ">=12" @@ -3844,9 +3821,9 @@ } }, "node_modules/magic-bytes.js": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/magic-bytes.js/-/magic-bytes.js-1.10.0.tgz", - "integrity": "sha512-/k20Lg2q8LE5xiaaSkMXk4sfvI+9EGEykFS4b0CHHGWqDYU0bGUFSwchNOMA56D7TCs9GwVTkqe9als1/ns8UQ==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/magic-bytes.js/-/magic-bytes.js-1.12.1.tgz", + "integrity": "sha512-ThQLOhN86ZkJ7qemtVRGYM+gRgR8GEXNli9H/PMvpnZsE44Xfh3wx9kGJaldg314v85m+bFW6WBMaVHJc/c3zA==", "license": "MIT" }, "node_modules/make-dir": { @@ -5197,9 +5174,9 @@ "license": "MIT" }, "node_modules/tslib": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "license": "0BSD" }, "node_modules/tunnel-agent": { @@ -5238,9 +5215,9 @@ } }, "node_modules/undici": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.8.tgz", - "integrity": "sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==", + "version": "6.21.1", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.21.1.tgz", + "integrity": "sha512-q/1rj5D0/zayJB2FraXdaWxbhWiNKDvu8naDT2dl1yTlvJp4BLtOcp2a5BvgGNQpYYJzau7tf1WgKv3b+7mqpQ==", "license": "MIT", "engines": { "node": ">=18.17" @@ -5422,9 +5399,9 @@ } }, "node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "version": "8.18.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.2.tgz", + "integrity": "sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==", "license": "MIT", "engines": { "node": ">=10.0.0" diff --git a/package.json b/package.json index 438d42c..197f4e5 100644 --- a/package.json +++ b/package.json @@ -5,8 +5,8 @@ "main": "server.js", "dependencies": { "@zuzak/owo": "^1.14.1", - "discord.js": "^14.16.3", - "dotenv": "^16.4.5", + "discord.js": "^14.19.3", + "dotenv": "^16.5.0", "seedrandom": "^3.0.5", "sqlite3": "^5.1.6" }, From d39a1a005a38707fc04ed629f8061e96c0914687 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 May 2025 04:13:17 +0200 Subject: [PATCH 033/110] Bump tar-fs from 2.1.1 to 2.1.2 (#137) Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 2.1.1 to 2.1.2. - [Commits](https://github.com/mafintosh/tar-fs/compare/v2.1.1...v2.1.2) --- updated-dependencies: - dependency-name: tar-fs dependency-version: 2.1.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8bf57e6..78d56e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5066,9 +5066,9 @@ } }, "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.2.tgz", + "integrity": "sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==", "license": "MIT", "dependencies": { "chownr": "^1.1.1", From 8481f4563c5038b38591d339edd51a16a3801b3e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 May 2025 04:17:19 +0200 Subject: [PATCH 034/110] Bump @babel/helpers from 7.25.7 to 7.27.1 (#138) Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.25.7 to 7.27.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.27.1/packages/babel-helpers) --- updated-dependencies: - dependency-name: "@babel/helpers" dependency-version: 7.27.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 168 +++++++++------------------------------------- 1 file changed, 32 insertions(+), 136 deletions(-) diff --git a/package-lock.json b/package-lock.json index 78d56e9..f6a669e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -35,14 +35,15 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", - "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/highlight": "^7.25.7", - "picocolors": "^1.0.0" + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" }, "engines": { "node": ">=6.9.0" @@ -217,9 +218,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", - "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "dev": true, "license": "MIT", "engines": { @@ -227,9 +228,9 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", - "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "dev": true, "license": "MIT", "engines": { @@ -247,121 +248,27 @@ } }, "node_modules/@babel/helpers": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", - "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.1.tgz", + "integrity": "sha512-FCvFTm0sWV8Fxhpp2McP5/W53GPllQ9QeQ7SiqGWjMf/LVG07lFa5+pgK05IRhVwtvafT22KF+ZSnM9I545CvQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/template": "^7.25.7", - "@babel/types": "^7.25.7" + "@babel/template": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", - "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.25.7", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/parser": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", - "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.1.tgz", + "integrity": "sha512-I0dZ3ZpCrJ1c04OqlNsQcKiZlsrXf/kkE4FXzID9rIOYICsAbA8mMDzhW/luRNAHdCNt7os/u8wenklZDlUVUQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.25.8" + "@babel/types": "^7.27.1" }, "bin": { "parser": "bin/babel-parser.js" @@ -610,15 +517,15 @@ } }, "node_modules/@babel/template": { - "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", - "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.1.tgz", + "integrity": "sha512-Fyo3ghWMqkHHpHQCoBs2VnYjR4iWFFjguTDEqA5WgZDOrFesVjMhMM2FSqTKSoUSDO1VQtavj8NFpdRBEvJTtg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.25.7", - "@babel/parser": "^7.25.7", - "@babel/types": "^7.25.7" + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.1", + "@babel/types": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -644,15 +551,14 @@ } }, "node_modules/@babel/types": { - "version": "7.25.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", - "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.1.tgz", + "integrity": "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.25.7", - "@babel/helper-validator-identifier": "^7.25.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" }, "engines": { "node": ">=6.9.0" @@ -5144,16 +5050,6 @@ "dev": true, "license": "BSD-3-Clause" }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", From 99e0f3a59d9fc0e153b7650470bde51bae794708 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 4 May 2025 04:20:13 +0200 Subject: [PATCH 035/110] Bump cross-spawn from 7.0.3 to 7.0.6 (#139) Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6. - [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md) - [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6) --- updated-dependencies: - dependency-name: cross-spawn dependency-version: 7.0.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index f6a669e..8c87024 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2076,9 +2076,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "license": "MIT", "dependencies": { From 0a7f8b9ba3bc678e360699be296c2c91aceb4bef Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sun, 4 May 2025 04:22:15 +0200 Subject: [PATCH 036/110] Add permissions to workflow Mainly to get rid of code scanning alert lol --- .github/workflows/CI.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index a3d94a3..ee720fa 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -2,6 +2,9 @@ name: CI on: [push] +permissions: + contents: read + jobs: CI: runs-on: node From 0d10a15f5bf1230e0b955ff664ff3321e875d73e Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sun, 4 May 2025 21:58:01 +0200 Subject: [PATCH 037/110] Remove unused variable --- commands/info/help.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/commands/info/help.js b/commands/info/help.js index 36ed658..da05e34 100644 --- a/commands/info/help.js +++ b/commands/info/help.js @@ -13,7 +13,6 @@ module.exports = { execute({ message, args, prefix, client }) { let commands = "" let commandFiles = getSubdirFiles('commands/') - let x = false; let fieldName = `Page [[page]]/${Math.round(client.commands.size / 10)}`; let iteration = 0; let num_in_args = false; @@ -32,7 +31,6 @@ module.exports = { fieldName = fieldName.replace("[[page]]", page); const max_commands = iteration + 10; - if (x) return; const embed = new EmbedBuilder() .setColor(15780145) From 7053495f4045059e879cf59bde9abb758a729ff6 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Thu, 8 May 2025 16:23:03 +0200 Subject: [PATCH 038/110] Guilds: Add members count to each server --- commands/info/guilds.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/commands/info/guilds.js b/commands/info/guilds.js index c4eb45e..bed7e5b 100644 --- a/commands/info/guilds.js +++ b/commands/info/guilds.js @@ -5,7 +5,7 @@ module.exports = { execute({message, client}) { let guildNames = ""; client.guilds.cache.each(guild => { - guildNames = guildNames + guild.name + "\n"; + guildNames = `${guildNames}${guild.name} (${guild.memberCount} members)\n` }); message.channel.send(guildNames) } From 28d1f6d0a2a709744f5d53a113240a6dd65ad7e3 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Thu, 8 May 2025 17:37:05 +0200 Subject: [PATCH 039/110] Add total members to botinfo command --- commands/info/botinfo.js | 22 +++++++++++++++++----- tests/getGuildCount.test.js | 4 ++-- util/getGuildCount.js | 8 -------- util/getGuildInfo.js | 9 +++++++++ util/setPresence.js | 4 ++-- 5 files changed, 30 insertions(+), 17 deletions(-) delete mode 100644 util/getGuildCount.js create mode 100644 util/getGuildInfo.js diff --git a/commands/info/botinfo.js b/commands/info/botinfo.js index df700bf..a746075 100644 --- a/commands/info/botinfo.js +++ b/commands/info/botinfo.js @@ -1,6 +1,6 @@ const {EmbedBuilder} = require('discord.js'); const getCreationDate = require('../../util/getCreationDate'); -const getGuildCount = require('../../util/getGuildCount'); +const getGuildInfo = require('../../util/getGuildInfo'); @@ -8,15 +8,27 @@ module.exports = { name: 'botinfo', description: 'Shows information about the bot', execute({message, client, prefix}) { - let guildCount = getGuildCount(client) + let guildInfo = getGuildInfo(client) + let descriptionArr = [`Name: ${client.user.username}`, + `Prefix: ${prefix}`, + `Total Servers: ${guildInfo.guildCount}`, + `Total Members: ${guildInfo.totalMembers}`, + `Total Commands: ${client.commands.size}`, + `Creation Date: ${getCreationDate(client)}`, + `Source [Click Here](https://github.com/SileNce5k/discord_bot)` + ] + + let description = ""; + descriptionArr.forEach(desc => { + description += `${desc}\n`; + }) + const embed = new EmbedBuilder() .setColor(15780145) .setTitle("Information about bot") .setTimestamp() .setAuthor({name: client.user.username, iconURL: client.user.avatarURL({ format: 'png', dynamic: true, size: 2048 })}) - .addFields({ - name: "General info", value: `Name: ${client.user.username}\nPrefix: ${prefix}\nTotal Servers: ${guildCount}\nTotal Commands: ${client.commands.size}\nCreation Date: ${getCreationDate(client)}\nSource: [Click Here](https://github.com/SileNce5k/discord_bot)`, - },) + .setDescription(description) message.channel.send({embeds :[embed]}) diff --git a/tests/getGuildCount.test.js b/tests/getGuildCount.test.js index fac0cd1..cc86368 100644 --- a/tests/getGuildCount.test.js +++ b/tests/getGuildCount.test.js @@ -1,4 +1,4 @@ -const getGuildCount = require('../util/getGuildCount'); +const getGuildInfo = require('../util/getGuildInfo'); @@ -11,7 +11,7 @@ test("Testing getGuildCount", () => { client.guilds.cache.set(`num: ${j}`, j); } - expect(getGuildCount(client)).toBe(i); + expect(getGuildInfo(client).guildCount).toBe(i); } }) \ No newline at end of file diff --git a/util/getGuildCount.js b/util/getGuildCount.js deleted file mode 100644 index 5fff1e5..0000000 --- a/util/getGuildCount.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = function(client){ - let guildCount = 0; - client.guilds.cache.each(() => { - guildCount++ - }); - - return guildCount; -} \ No newline at end of file diff --git a/util/getGuildInfo.js b/util/getGuildInfo.js new file mode 100644 index 0000000..87540c6 --- /dev/null +++ b/util/getGuildInfo.js @@ -0,0 +1,9 @@ +module.exports = function(client){ + let guildCount = 0; + let totalMembers = 0; + client.guilds.cache.each(guild => { + guildCount++ + totalMembers += guild.memberCount; + }); + return {guildCount: guildCount, totalMembers: totalMembers}; +} \ No newline at end of file diff --git a/util/setPresence.js b/util/setPresence.js index b670055..2aa362b 100644 --- a/util/setPresence.js +++ b/util/setPresence.js @@ -1,9 +1,9 @@ -const getGuildCount = require("./getGuildCount") +const getGuildInfo = require("./getGuildInfo") const parseMS = require('./parseMS'); const convertDateToISOString = require('./convertDateToISOString') module.exports = function ({presenceText, presenceType, client}) { const {globalPrefix} = require ('../data/config.json') - let guildCount = getGuildCount(client) + let guildCount = getGuildInfo(client).guildCount let uptime = parseMS(client.uptime); let uptimeFormat = ""; let uptimeSingularOrPlural; From 2f371d00ed31b73942257f93ae7a81d07271c2c1 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Fri, 9 May 2025 04:03:32 +0200 Subject: [PATCH 040/110] Add message latency to ping command --- commands/misc/ping.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/commands/misc/ping.js b/commands/misc/ping.js index 6e23a0c..fe9fb09 100644 --- a/commands/misc/ping.js +++ b/commands/misc/ping.js @@ -1,7 +1,11 @@ module.exports = { name: 'ping', description: 'Just ping.', - execute({message, client}) { - message.channel.send(`Pong.\n${client.ws.ping}ms`) + async execute({message, client}) { + let apiLatency = client.ws.ping; + const time = process.hrtime.bigint(); + let initialMessage = await message.channel.send(`Pong.`) + const diff = Number(process.hrtime.bigint() - time) * 1e-6; + initialMessage.edit(`Pong.\nAPI latency: ${apiLatency} ms\nMessage latency: ${diff.toFixed(0)} ms.`); } }; \ No newline at end of file From aa2ab653b9031c562041cc1de2b8f8111213ab18 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 10 May 2025 15:02:59 +0200 Subject: [PATCH 041/110] tdoss: Improve error handling of downloadImage + add the tdoss template Also use tdoss directory in the data/ dir so I won't have a bunch of random directories in the data dir. --- commands/misc/tdoss.js | 43 +++++++++++++++++++++++++---------- resources/tdoss_template.png | Bin 0 -> 421700 bytes 2 files changed, 31 insertions(+), 12 deletions(-) create mode 100644 resources/tdoss_template.png diff --git a/commands/misc/tdoss.js b/commands/misc/tdoss.js index d172ec5..6738dfa 100644 --- a/commands/misc/tdoss.js +++ b/commands/misc/tdoss.js @@ -10,9 +10,11 @@ module.exports = { description: 'Combine picture with tdoss album cover template', async execute({ message, args }) { - let dataDir = path.resolve(__dirname, '..', '..', 'data'); - const directory = path.resolve(dataDir, Math.floor(new Date).toString()) - fs.mkdirSync(directory) + let tdossDir = path.resolve(process.cwd(), 'data', 'tdoss'); + const tdossTemplate = path.resolve(process.cwd(), 'resources', 'tdoss_template.png'); + + const directory = path.resolve(tdossDir, Math.floor(new Date).toString()) + fs.mkdirSync(directory, {recursive: true}) let url = ""; if(message.attachments.size > 0){ @@ -44,14 +46,21 @@ module.exports = { } // TODO: Download with correct extension. message.channel.sendTyping(); - if(await this.downloadImage(url, path.resolve(directory, "input.png")) != 0){ - message.channel.send("Something went wrong during the download.\nThe link might be unreachable for the bot or it's not an image.") + let downloadResult = await this.downloadImage(url, path.resolve(directory, "input.png")); + if(downloadResult.value != this.ERROR_CODES.SUCCESS){ + if(downloadResult.value === this.ERROR_CODES.FETCH_ERROR){ + message.channel.send(`Failed to download the provided image, got error '${downloadResult.errorMessage}'`); + }else if (downloadResult.value === this.ERROR_CODES.HTTP_ERROR){ + message.channel.send(`Failed to download the provided image, got response status '${downloadResult.errorMessage}'`); + }else if(downloadResult.value === this.ERROR_CODES.NOT_IMAGE){ + message.channel.send(`The provided url was not an image.`) + } fs.rmSync(`${directory}`, {recursive: true}) return; } - const command = `magick ${dataDir}/tdoss_template.png \\( ${directory}/input.png -resize 800x800^ -gravity center -extent 1000x1000 \\) -compose dst-over -composite ${directory}/tdoss_result.png`; + const command = `magick ${tdossTemplate} \\( ${directory}/input.png -resize 800x800^ -gravity center -extent 1000x1000 \\) -compose dst-over -composite ${directory}/tdoss_result.png`; if (this.executeCommand(command).error === true) { message.channel.send("Something went wrong during image manipulation.\nTry again and if it keeps happening, contact the owner of the bot.") fs.rmSync(`${directory}`, {recursive: true}) @@ -82,14 +91,24 @@ module.exports = { }, // https://stackoverflow.com/a/77210219 async downloadImage(url, path) { - const res = await fetch(url); - if(!res.ok) return 1; - if(!res.headers.get('content-type').startsWith("image")) return 2; + let res; + try { + res = await fetch(url); + } catch (error) { + return {value: this.ERROR_CODES.FETCH_ERROR, errorMessage: error.cause?.message || error.message}; + } + if(!res.ok) return {value: this.ERROR_CODES.HTTP_ERROR, errorMessage: res.status.toString()}; + const contentType = res.headers.get('content-type'); + if(!contentType || !contentType.startsWith("image")) return {value: this.ERROR_CODES.NOT_IMAGE, errorMessage: contentType || "No content-type header"}; const stream = Readable.fromWeb(res.body) await writeFile(path, stream); - return 0; + return {value: this.ERROR_CODES.SUCCESS, errorMessage: ""}; + }, + ERROR_CODES: { + SUCCESS: 0, + HTTP_ERROR: 1, + NOT_IMAGE: 2, + FETCH_ERROR: 3 } } - - diff --git a/resources/tdoss_template.png b/resources/tdoss_template.png new file mode 100644 index 0000000000000000000000000000000000000000..a2d7f4e21d75ecf7bcf96b371908c47a1cbec193 GIT binary patch literal 421700 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

-ZL_|S=DD}p}MSUdd?dKD|_Zld^Tj%a)wtiD_Ebd$_?=U2CdSe74 zmqn^Ktte9T2GO9FhM1?GvCOfT!G@}kKkW|VTYg64lBrn4v?``Oz6sO!@Pv~HBou!} z37xHJ9S5+gjs5-q=->IzfBX805o2E;-rAgxS3`;BO`$Y~u0q-{#8iP%2weI6nu^4m zb6_2i_#M2-&$MN0ty#@=4PE;t%fl{|jD<1oNRxZD%1DB>j1Gy~cCiA)1TgP7FYej* zk{T{{PTmNec6alLqpv$3(FtidT0VkKPm~13Pw|qPS{} zM258!l`w3)qBEL-Ml%>@6mn|E=p(H8acqhAyUCmKXaxa#_q`QR94vyUOp5Rb@Drt2 z>!CTuDo-OkFdlUAP-dVz5UVwT=m4SCC?Es%o0(@nzrN-YlW!xHqF1QvS)VO(q+fht z11>881|*4=Xl6qORiaf;Q&IqA}sg0`t8sC`Sr#3>vKAYM}FG2 zV|W{mk^`JAC^Mrl&G6HzF{`*6RB@M=ZRM@ma@>1_YBOz?08*Q+Q2>A&BknU>mK%f5 zSz4euP$j4mzzDACou~(_qNmxi9%s)VN!(GAfdE;8RGSVrZnbixA|XPSpUX3?uz4CFYl^Rn->mVAzycSd*<=JJbltI-Q&x8iv_430<{0)G7ha`-~= zUZYy~LIMH{FUQ=NK_71;bIl z-NTesy02Dbk_@Q3Ds!m2TkDX07=k(IS57VR3!sjn0OQ)Vh{AP3Y)c_y3Oxvw3>Ixs z09KvIYR}cD)^ERM-qw?fP@Z-aLB&8vaY@R+X9wZLhvJ8>VL1m@yM*NlnvOu~JJf&* zC=Osea1;tGNNWa-g$`za|MmWO@zuGG&LA&ggenyCc*WH|j`p&K54FGimjkzosk7JE z<)nbd-3ke@3OhvW0Ct$7UiVoXp4WD`GPWg)I`-0#;o3a42n~7C9oDSc-&^DCw8NU$ zyZ}H2{EFJ;d2{T@5-Odg)geKIG!VWI!mYutGTo5vQDTY!x3d=)6jE#z*2AjTK%;?@7C~cyyJHM zIQy}lYtL?<1kjoy__ zlWIFKHp72ui&UJ6kZY$_#o(dV&=7RSF?$!oS7zFx;6v=q$#?3!YW#(Wr|>vq_0IVV zK2N>sLv+wxFb{oYvMZ{vc%s?T6;Qmq*U=k^J^1qK6O)aNK~vyKjM&gr14$L}IiCk? zfwj=iCMspkvvG6FPgPQH_z)2iJE?KVx*XQPR_kJ2n{T#$8({-f-`URMy&==7hl@Bk z{e3W!P3uxhT)RE=dCbmdw?YA2BUnIWDHAY-fotOt?~O)Iq+C-T@&0`3A}l$vX2l8h z!ih9Hy_&POkM8-gL^7OFQFLz8Hn$eLNg~emo`)3g8x}&Eh28Dn#S%m>GqN>@6*a{= z#f_X|;cV@5nJu@4q13;f&P}bw*Z{NJRvg$N*lsnk#rHQ)7GpEY)+xu3K?P~JwT(&v zI6DQ4FwzJ`FAa)nss&CR-o^^WPk+1FAMUp^%NztjX?Pohbi9f30Hn_Q#H1F90At^v zch|(1_byO@kZ_dM2klz0gzR4Wty5pwpyYu-Zl>{LUUJR z#3CY1Riagb7Db>XTKz1_m*VCt(o8A$bmq<}yNUqFEQ#ppz~14|gPPu5Duqid>%9>z zc;`3i0f;EoTDd(R(TxSiu($fN_vyoJoNiove&(`w-`(4@`gJch=c>gbG0@@7uuR*` z@j2?d8#+{5I9uC}%Y+7Y5J;gOmA`sg9Lk;!;o?=eA1Wn&*1B#?L8iMV_1gn@dWGY_SO&WgR=pLB@T;jn7ccy!F(q&{vl>*=n z9N%786FXglC%4=yoE%%CvrGhEe2~_O>PbYb=`{@jo`h5L6jCfg7S@<(GTJ3=muL_i z<-WwZ-pAdpzg2x$<3psmN`V7K63RygT18+&!Y8IpT{Gv-b@&KWFZwDV-dcerE{lXf zd(2%=Gc(&p_Kri&wP8TLt_chPYp_Cz>XKoi<75_Q7zFZli;aprP{Bs}!e^e-Vr0T+ z<~`ob&9l1gYY_8rZpW=NcdX^iV`4Vu=w^YQj^Jrl%mI12%*awAN|&%=n8V%%hP(6x zh=^_H^wt%#CD0zTF29PhrHPlpk@rF*$i_u!A}#H()MZ~e5ojac;qM>kVneva3_|F8V+|LHk)vsLWJ zvJ4+%;iZ8H5!M>x7%U*w%RCtq(xFfENhl^1Q^F1->8d_M7ZIx^6CDJyNz=*Ng5536 z+H1|edsnTm=*wf-UHO=Q;(gq_n`Q$DwH8`4M}&iO-@Pch*R39^;R~!-PZ24I0Vqr4 zEO_5{mz|ANZ^?>whAh4lceL}gW62XRqxJCYR~oKXIu&wo)8UthH9%D6z4+HZylEF^ z^nVnM{cTL-WKeFp=|Z)8C?F;uYcA)Hd4(!RP)we zn>iDW3QYO=#z?(M;9v$c5a;UYDAN;BlCDLhL7xXxb#=mB7a;7FiMMdr_`H05BlL>r zSyV~5XN`5OW6Cf{(fHiX=<_qhEgKiHfVkK)Y+x36c4B4}-80jLns^o!CxNb~mEdeB z(o`q1Y}axi%XVo>$@E)oW;}6_YgoD|(88nI9Kk*e0gW7JgT*SK0S4k@dOyZMa|d3$ z*am{5k0UdJd$B}}v^|DU0Z`*0_(oebuH*z#B7_WKA(p0@or(1a##~i<>Y9ErXM*S9 zoVLU=I)Pxya#**vH|Fm@dHQe=ohkFSTEjpDOre%k7Don*Y1Ax`WEYM;TE*ZiBZ*jo z6);Qr-H=S!VYdX&RvFLFc@J%ACrL8Z=9%0cnXY zd_~_0jbn(j2~xK9!&$ro6&SJ}L65hy;Ro#n?b2Rv`o`#75yGy0Y?0 z<4YU+qt`#&FVlpi^x_s(Pgmn%4bT|mn9OX_5FrD+R487YIZ1L)OUhvK#PjU=+j8GP zB;1;(w_3r|QIjimI?W8IDp(rMk#rW0I^~^>5=9MjlsUYN&HeiKKY#xJ{LLT#?SBZ@ z$JvL#S5>8(Jvnfqsey)Ya^;YDB_(qhuX*+g#ymZmnL0y7#CcAHLo;OtslK?+wy07% zX3}DRMyAngPUm)TEeMVsfj7J1MTrgQFuU^^tDFX#J@|MA~_ z{RjWET+Gk6QKrdByuu5^MIyyuMNG#XOI{Id%ot=C6e_NjpS5Th8Z+u~J&jHEN+`tE zFMowA-_t+8-oJYP%YVl{20%aaA!vpcQ}(G6iW9D;K6ssDk?WkIbIwRmClJ&*a{yUJ z;>j{E88snrUXAX|9dK{yz@}3ln9n&qcf)%|)y@^Tm{63$O-|a5nxTu9Oe!2&20F3; zG=U_5q^OEiotSW9dMZdXij;IwN2e=JD!dVT;yesom7FE%P94mJHc#9O_L%x$uPr|< z>jw!-88i)W@S3HgD}uZ*G;(-P{lptS^gt%b9eaDWGxTU6D7g@9My-H@Aqf&8auy+A z5IgN!m+ERXn|PWh9ZWNe0mc@l&{Z3G8iY6)yJwajY5g_F1|JA8&;_Z{d=I|Z_!3hE zg$2A4ZA6_R(o*3jM7JoAPQp#o8x^Ed(4qz?q9e7-nF;ACJT=)cU9epW)=s9lD;8J4 z9$V0oxjVZReVdbjG1(|I7fiC2a;={-khl82Kj1Hq{Pp?%>Ak&Lh#A1N2_Q%+1}pQs zUEo&`s9dnlVUN=?*q_1(v1<6CRf^~ss_h!DS3asj0to^ZXVI{ukhc^f&FQUyrK5f? zdhCz_)kAogBXVuM+SpC5OjKbj1R)4oK*Cnont(6_go;#a07IYhWd{lX0>Ge8`YbQC zH(0F-44|P#9IK5re$t=ss%WTjw6Jmi_qYG|zr26`EAL)BZ+YLVK+=$BtD+Mpr4#h6 zPKE$6f}#x6aw#Cnh5UX@P!bic%l#8s#36F23hFXuz6w*lF?*Z#)F7*B(Af*FbI+HH zs?%;6wD1Y?nSH96^Y!zgR(kY&(nTCpq#i}O4)Cu(`1haw_w`>F8?2r^iA)9)Z-AVw z-H-tBv6$IbQ>m#1nL;^KpV)WP*MI%5|KmUSAA;*Ssw5hnn+USXN?J*u3VJ2xn!O5^d^76q6yaWX=c2_D6X4yG^QeCnE9p-(VZkh4COOh_(7lZU7c z(%{6duHBfsRo}c2v6~iM{rK*O&;Mf!^k;%TM7!5~*LAoU7@P@F`T#)*3vxGSJ@SMX za15RY9cGw>oN``AnqUD76)R&Xz5qfjV~Ad1xh%92xIOll&qTG6HDh>>3I&7Tg7>-> z#mt$yF)v@c2NsHh@GOC9osMdCmY_y;W*Gpk2%R>T#S-+a*;*8qVuYS@yp#X{A_8p` zR(D_d(~uUyb>tAMxp;#4cB31k1V+H1^E~C6xBAz*pX{{(8|evvp*GQ~6cT$nUl}jC zX5h~(8K@G-SVv;Lwl=RR1h)qhU7pctpuxy-=?cp7D5x9zX`5lSI;%)FJO-M=Dyj{A zUhHU!Qw`lV8~4($ON0J0B4l2mK@p&waHMO?S$3Op+gUn)AtOB&Sn`!CH-F7{- z_;c>Y3P`{>032MXeA?V6&?73DN$5O=TzW%YlB(`~Y7z+!YBbUEt+VZe%0#GD<0q-qmWg#`CuQWMvcjR%1qGO+PAlo% zlS0`XC9RNpVHTd9uAxEpBwCF*1%c*(nwSG$X*eYB^jG{5qL(Q1M2zOEryD!*&}euq z3_a0E8dkmWgqp9#--0x!g1Sl+BCa58vSbGc`Dv2FudvdtJ z5s%vuS2h@IhJ4V2Scg#4w482voTm*fIPAC3>*#ROSy-avY`QSVG7}qH3^?#En1r|= zo9u3SLc5&hD%49rU{Wd!lrh!ro{>Uk)=Jmfba1WK%$lZ+Zh@kXRj*JD@Z6aRCnsL9 zs~PAKw>_DG&rEFbQ%qBcxzGD7TDdLrd;wh;=R#_+fiT!G4$C??8)3UcwAlwXr#Z_v z>6pEy(is<-bb%6=gF0sSI}^q%^h@^X9I*+3A>ZaL2DnZNTYCUO###v3jtG`Q2;-nM zpuBFk5UZyFh{WQQ-Anw~S@9XP?cxMs4PMGX#y0ejb%+Y#0)i2sKmvha97U=q2AvTC zfW{&_4}HS(^py@jl|fKYXw{Ha0C=&w32WH@Sw$npqW`m$2Ml)>i@r zW+kU`stO8tx~^p@`8;4wRfU3~MMBK?|G~g>np0LyG}b;;_`^`yOy^OR`9I2IUODxkr9+KD;LM z;F^@*>dHlDST$_KAr4-H1FBWf&(^MiUXdWQ)QPzBz8KRI3wL6wAmsY-i?|*RlONJEi%AfIx=WBHVNI)}*;u7IE zgjPff4PwGbJ7`_kMz{29Txm^{jI7RVqM zDI5=kw*2PI;evt9PD*SzNzyoqGgrX52{)$8ij8JOaHp1`0cjQNB3mO1fQ+JX2>{P% ze-d41iL$9z163o&L|Cw+dvlX^o`tMSA!x2u7DnCO@b*^U6xOmiX;LN@kP<_KT~Q}R zK{ayDL`Nl?A1dMPvs})0s8$`!cSFhss7-(z#5Z$buIr@civg<(0;qr($nlUseoc6d z6sQugx7v>QyS4R)A0L3RzO`jhCcK zAf`-F#Dq;2Hghp~od^oAjV%Wt7mB%cnhh`tVmNS%5B@sJ>#%V`;2B)YC_RuwFbbnkTq931sTKx0*r|XSejpFHpAzNggs6Oi*egt;(rnZ|QM61vOwK^zK zAks9J1&t4y2m}e1G=l*JS|#abgy~=dqaner_8Sc z$7d@i17n=V0C0{my(yU6*bJVJwt6?j*f#fi!_+ilngLhiGu?qpMaEoibP@W2d03tB zv^3#5x1Nh0F2cPExK*npu;b&9J^@&=hw7nk7?&*7y+W8F_=0J73O6%u#hFzGiiWkS zc%o)5ey{}~&YEYp=r>j0=%;aWT=gyTg>2z~_i>c1J2x99OYtxlAc7Ers<17H$QFeF z;9Fk77TW3!Uqa0kLMtV#rD!-cM_C2s`_ip&5Ud@59WAyX&3`K;$P#s%*C{=}KK}h# zx_s%baF>6s07Y&tpw`iVM5ga+^Z98>uV=dUhy%4RzO#lD@8#u2Pf$E3tsX<^_+8Tx z)}5~`KzTVSpt9KWyIvb&Hz;FirZTE}$jux%9BuZGW_JQ0sM7?>!fBSB0MSw9QpuZQ zR5-{Jqn)vqU@R#oMjNKJLI5*I0wLS_AR%=S6PmEzx4*@eJiqFn`=WyUKuMlRsQIbO zV4YKQt%?^(SGB`9=&Nw(V8au+W7m#y;4h?7M|o10$I6D6VfI(9gYy1bf++aP#YpNyXXfVr@ZrteY=mzCMWJ|CL7POqVuK-p-#Vi7w= zszg~xOxFrE09gb^Bfzku$(Nx5MUzlrwku+Q&yzUmjV&e_^5gJ)*lDX34>pE_f(&O4 zJq#}*fKjs7A)x_5&{u#c7Drt=L?RY5KOET~w48=(dwA!%22SffU)A#k(G}9WH;!0!wtEJXjg4X z+9Ep$(^t^V+H}&|C>t?T?x@l0<~-!G(RetABSY-Yujjf$cV{oB^|%n7I82YvUDBW_ z2_+~0{?tip`RLI~Y?6>(JS>r%dc=vZTC!V4T4zQX{-r+`KZhAQv6TAuzS7aOfas`J zq{PA)ts&mImg<8=v+8PCGdsaA;7xB=lLv~vlYOnbC-#6`5sHpD5PmuuiAPdAPe2;R zuA}Jj-1qVO)03Gv2fjb^8(LN=KZyxVYr{daP67`!X6WRRTq}8bgzROXqM%{gyR>7% zGPhK&B*7gL2*D6x(qyVM#*aQblxtqE{=8m(%-L|PLviWL+&gI38BzyL1+FmSqe7q7 zI0*WvHL2y&8Gm28{G?8uSfu9@3i{YlRpG>Mjt=*@-)na)F_N_#wS_>;CfcIcJ^kC( z2lGs8W2xlztydD&>vPq0PMRhz{L;UTLsG;;43SXO6@#e(lTvl+xbCG^3KWQxAzXCA zX2(nD&2yAYyXk?XSs$uf>dNT@AFMzGm3YxH?B<34_MN;iUR0D|avUBRnZao|P{%4l)0q)ps|So;K%lr-REe7w8FmsSj_4(!7w%VN_j&s|*>_ zDq4CT>fuA5-(S@IarFc^av3785)Vw-zEx92Oh zq9zFgCcHk!^m;qQjV|MF{b}u)s*DGfpK#!+hz`k^pbV^6#(E8GGQ?BDt;K^KeI{{N zs3wIV01YdoXk|`ZSY&2ea8?w-q2eYw^Lpn>*YwhAz9@G*s#(#&{3p7EDQP4pCkHW+ zDM=tp*9P%c&e($%or{{pP{bg8D^F7Y10ULb|IQQEY9Lcq3+hdPtQn5jTrt_D!$3Ag zPCeAu)tTbaU)M$tC7jkk{WabzhtrLdO&T79Ntn7SZmr;{sH~BahFZ244r;*|53g|T zzxXHn`~U18{`rd_0-1vH0^`9*v47z^YLM!47y+lhjs7hEX2RgCV0{dt5gLVYlpEot zfmb?anMZ?*(w8BP1i{k6o!Wp6KxYca=E`kuB90NYu?@xRgdi7-dAe*W8fnHen~=d6 zTvvH;jb85YSkP%b7`q6P1aQHiEGsT8du4Q+S_oHhd# z$icXovn&Q|+lbx?2WU2dKw{c$`zSa?Ufho3eit z^&Y;*xAo4>mQk`SLPEI1VVJb7LXuVCvF#g$unXvWB7hJ}EtD}9io%G%h=B~soOK%E zAmapRfI_2SVQn2>deJAtvceOuIy#Wq>i7Qrp8kaI>aWR$|@)N$rnq&7d_Nksd zxI0t~JG#0j?irfW5LiiwsOm5R!Gw%;Jy0QReBh*%%z;{Fln*9BY0##Nt7t-$jZ+cm zRY-amA;3U#omyb<%BI#eUp-3dsPLFvbnfHL`Ile&d1tXP;<6j@Z`xH=nC4W)y*dpL zJLbqxR-K_r8MV^Pa&6I_kp=teg^lv%>zF90+oRB$k7lDZLkn+%{Cu((uK{=}mN(4N zm2z4*8EZZm=2JgEcIVI6S0=0p&06QcU}A{spcWt;qppxni~@?IsmjIID^P1^x}X2Y zpKmfX!3xrm#1q3;xZnY_TTG!a#tq|+J|;L9hzWwr2*kiRMH57#%qK`K+V2FAdwpTy zfJm^~QK4QMwLLdOx zEXis>MX~}G;1({n;J5sNM{7DPSBqw^H{+T{THpo30*W8HLUvtT=TTCQsubCW|%L-uk{2kZLjywd!7EfKl$i zB^KcWounoXhy)z2VvLj4jKsX_Llh*q%{ufVuh93beN3npK<4MYTBm-68yK=JrH#x7 z(gFa86AU%W{wdYGPdjNHb}jhCl!}3af`U?`%`APz>*By)>ECe3;~u!44M^dyEd;Vl7cN$F zDFzz#GskVWo*jH3aBgnd&1Ya2l6U*q~ zsBk@v%R8hL&78`h&*_iezvWub#uZ)Soo9R)_8io@CWs$9yJNe77tNpg7zTbD9Zq*$ zule+%i(Oy){D^9ipZesk21(D;Cb4@Cdl359 zAM7u`_@-F6Hfdp`-A}2DHd0Ve{D2vE$L~lu1~iBTMGOcw4zY$#$93SuIEaCtYN@ry z^{EM^)#NY@y`{^GIcb9t54o{{q*!5QA*3@3_e|v?JjRxp;Tdk5i@`&^!RC$R4vW|V! zn6KAtK8@2%RXude*3^5qDkeSXd~zl%vY(!%MkLXy(c_1#_*ByHsh9yGjIaP=AV8o% zfQp_`iNFIp68~8Buq-ML>E?Pgx%~O%=UxA_3a+vxCKb=M17-Q2m3=H$$8WCveh z$B;+O6aqCz{g}O-50%28r%sfM2}#g*ov%LeyvyIGdz|Ng+xJQLZc`Wm0xs`k+GhWJ z|Jz^x*&(CQH`YaNqqbze*d~1QX+3cS=|n*qbGjHv3Xq%%m~dTpmI?I%76B)19US7K zd3dXnf~XLsrB+4G6T%=;EJ}2&j`4`rSY%$BKi|FRHDS`*=~`=@)A|nYdHlVnSrwhx z!zMkpPRxJm{M_<5T2zFy3UsssdFsiFNWsn$**>%nyJg_B?(6FazsYv1<5XIhwxD6a z@sCa>u5~)KLFit=FvI2K1_xh+ z0R&)yFmVuc|qXgyt3nXue0Q!?5@3X z%>u7xP|ZQp`t!LYE=)?(W%7h`8c#tVW7I+j1&ifAnt# z34Tgcsv&S&XYXfkLu~_6ANTHcQ{3`$VdWyqdMy&SDu#6v{hPl|{xtnf_!WWBStx-D z2SA_*7&?se3g)j)p4a2avb+ALKKR=Mx33XEfdx`Z0YfJbn(pN?_l6IhY1vyc9ZG5J8I6ZUh_W&xHm9tPWBuIz`Th4+ zt-$%TRh>by_blbKY)`Y9G#cG1p%v6>K2!Q=v>s<>9^bjxw0o6*`Zi zk!LJb-xvRIB2)9U#p)k??#-C5TJ|(uq4msoj*OZ*3yef5YND@9u`6Ll(wN?aFC^~Z z(ItoN?Bd>dvh#M=ND0UJL1sAZs2$~-~e z9GB6Giy3+*V`@K+`Jxkt*l#U}neTL@o0{8{V%ranj0i54;{r;>T{E-{L%G9HQnVc% zDJ%(o%f+CMz=L;6ANvOcZEdd!?a8O-6TE38PWWEg61p&va{`mH*bZf(b*qQ7?+wSG zS`CxYTh62ylVylg@J5@qD;9%Ch$vLIpMth4uoaHjU;@(0aiE`(#i7DmGHH832Vj8e z*7bbzlX6WtfV87WN6p?~7Y~bApiT~1;hDCCmCf^&AlVeuG*_cQp$g0|o>c!g=cl=8 zzj4SQjVMdx%fkJ`?7M&cSM7h~$93O$mQ(=@767!9b{(~reCy-;SNYfZ(LbDjc;6TA z`{8d!>w<`FpFVB_U3)L>{$#L6_$k+X)Ev0{jo)yGiYvaUK0=_F{BkkQ`=A8p8{gFe zsd+yB5VyBc@O(tN-oIAk-xM#`l@~1mPu*QRzSdyB@6|6KOn-MT)^_o6Z9w#UN&fDS zkNpXogB-n*Ig_-xJ#~`6U;UqdA@}Xgh&eII35irR)%jI>PSwYK|C`?({i=pG;DMfU z=dF+j5ne=*DTNKLRg0u;wxYBOp(wh9p?c-w3u`-PpDxc>r*T9$)xPwTo^?6>w@lW& zW@)4Ts*89t%)0Z(o{ugiGw#r+m}%xiU6?w#>XeWkN@OW|91?Gzlbp-9cRRt7KRUAxHhhR&Tqk)0zJK775qi zD*{wpXsX&+fuv@FP7HJNbbBEIRMO=(Ue2tLg<$m;CzeH_(B<0eJ#6;4U}auzfYyV@ zsm0ZU9364_JrZ%`Ab@F2x86t7SHH7Ab6}47<@0Imf(T>FJFHlV-oS4?&HFn|_Df@+ zlgQ#Sx0(I{u5clTgYb@K01Np{=8jZ&VTVx{BPJpm!rEdAl#z7G7Cz)xj^pU%kzaZ6 zLD?TvN~L3`%9B3&(=MDkr=O7-WF7$nCU;%G}5g@Nb-Pj{DFS6{k zGRESTcBOW@EJi&9BTx9;E5aHmQkpc?%fCrtJ?^Twx!#)gfA5Dj0-w z`oWmLJkM{=qgokVHQKNf7TgvQE`4G+`KR?9zP*25Cw|`i{jbq0|LpV|`rWOCR{RNR zsn%v+KloWBcH>(gz2yK#K)JsUeu^Kb#h>ygPkp|#hwjuE3CHe+zm?CN)+C13iShzYnnxL@np1%!B&W7e1fnoyjwJEazH$OW4aeO?jS(s; zuQ5aea?B;NsHX+V{L~@a*YRFMqt(di6#BGJg84 z5fA&KAAVhLzngnnK)pi;4^wHU*3cxzl+>z~uU)iEyCflAS*L6m8F~W;OPp-Ep$BbB z`|9;4zvoIF1oWO98-1VRx?EP6PM0L@B7M&Pd_D7esxs-1b*4pY2g`zR)g)5VG!!Bm zcE?^%G6YCzV5F>F!+=DxYr_nRcz}G2gUHBkuacf8oLIJhfz%Pedzb=^3axc@KjM*< zOZRnZ13v6nUNC;zp8*V=#NC@VfWV(gY-ab(+%{;Tt_i0))L)rbWl|shG7!p4q>Bai zwePuc+Z$b;n-|@21=k|X$CLz0HKIdS1x5soewfgU-*Sv(!4cS{u#Uskv^&M8i~g}K zjUF>a-U;5aqV_LjW9LB%Kw}yO|9Y2AvZY}TjLHUYt9fBTch|cka0oja*6 zj5G?E>VQ@xz#Jf82x!Hjbaj9jmI6?3E-}sl8e}22a%O9WoYTNw# z_v-Kdf|}N z&Aoqq*qnS4L(q*5-bL!_s6MZJRi3Gp?}SLSK~&-u*J0UVF_tkI83BRvRq1tWm>c!j zB!NbK(I%y!7dvgi=q#@FYrkJP4R`gbJs-0+?f*r5%DkNidh%)afBB#O>-=T+n)klH z)u*&;$-sT(&tadDUfFN%iw;iSAl1f$f00p z6S`gT5(tRR^cgyA8mK&*?mp95dEH&&4xU?1F7=7{kNwv_e;2!RcD{Z+XXPKdfYT!5 z<19TjKZ4w6+CqguHIAWeYbFs{IM9Rc+VG0_=g*+8=@0|E2o-re@zAu zjCACWTfX@Mh!rgE<3V%c!avN-ICDu0K|%q-Aeun}0A{_DH&r=2dD=RbXQV7d>jy3x_M()6ykrWT;PnrsM-7Y*&XY9o6 zq-Z-{{KV>Qnp#Z+>Y$<_W8`JG>*)G2P>0VqWqb#e$EOJh5nYRB=JXP%02F}`6rwTBLlRkoCK(DN|05YYc z%sxKuq6nfgw#_Q$vn$JC8R?*^rGpCyC^+=j%k%V*+0`6)*M;K5>b^u?Ua~exkdfhFO=*@2&T5fa zDyh_(71GH+v~cSUdDG!3?eHP^_V3-{Au4v=aDh(HEzY}KZNG58t1CGqTXUB`BR5K3 z*w~V5KjclynE-c*qo&4G9VaakX_+(%p+?~&n_K7&Yu%-bm&W&{MMb5JAYREnOw;%uk|lmCqQN&n?5^?+8X5P_iaB6uGC5CwU&b-c9DrBE#lY0Ai?-Va8fAs zoG?~;>d_@YzJUV1PqaWvUvfT7j}uHdvTOtf@UM8Y=h4^>?YKpuBspXwB4;kZH-Ac^ zZ~cs)cl1y$eo7S_{uU+NgWm#Ctr5w^UcayB;L35P{svNE6O?d+T?7~da4}#mkMLaH z<-ihdb=EiY26h-j91It+;?+`2U>l4nY=cO0=T!`naZrgUOT|Kx3We?VlmP^X)T!P3728BvTlx_+%f%9B~f7RDyo4hijPml zH-3C<2D@1AKhHN{S#FR30HBs3ue*-y;~kRLY0YyNhrP0IA2(sAILvF7SmHSNIh5{^ za^O+>*x1i5UVV1%fB)12&)*N%yPg%?^0*Tg)emJBnZQa<81Zmj5JL^n76KrE2oNAZ zApr=$v`o+{4P{6enMK2dtq7Ll)Q$yuT2yF2ENbCm-MA$!Ux^3bpg35UltAF(0iZZg z{5j+Oc4qwDeJAOlS3HJQ5nJX~_{hwxG6CsrPnny$S5jH6k;)Eaq`{I?C|Cc@h$o{+9LI zh8>i&fX8M8wt{nJj0f}JR$BNjN1nCtAk>~v?a&p8DFtIOE6!e9;Xw4qqh?d$0Vw#~ zkpd%+s~^?kp7@;1?3C3-hl?~t@G4)JE!cr&b?@l_i@GOsfBz%+Km6ODn|!mP0}VlR z3YvZ`nLMug8r7^+9rt^&l4PzgqX=MTDg}dopkPu}tf=t`HR7oA<7lOa3Reulc@^9R zaP=tHqI%97sY~8pE+BMpv0hKxj|`Zub!nt_{t?rN7sP*HzbxobAN7;e>22{dLLz() z0pX2){`S%T>hH){0y0%VuCWjus54?-}>ebqX~o<9Lm5*qOaa|{Nsn~Uk~;#`HU<;ej>dA zgaRzQI?pK~4r7#vowdP?h*f9&YOLnE!qa|dG`lLpcI!juuY+Jl6~Q;J-Tlt>{{Ons zz9}1qz{jpHk*thEVhplv;3g@Y3|+{Iun-JS0743a03euvSq|SvbQ1CMIRb8bJ!=^C0KaIkt;WATB$x=&aOXD&2%6{*J09M^hd z6dbu1R_v!~4gv;~)f5MFTbHlxeZA_ni4h-vrwOSe{bQ@l`K*JPP?h6JS%L=RIUDg# zu$Ff!TjXqp%wh&R;tp!%W>n<7tu3_f4bu}?TPe$_fcGjJ26N!SY!*Gc z&u?Q38AiM9UG2fs7ZAGI(Usm*vEi%<^-v$gsZ6Oz8b!I{dcAWl>!_O3>8gFRUU&sN z7h~zQ%6Q48QX4I+#duECRrM43xivrfX3QsRC|Q(|ZYCAtPp6-z)+f2AQ*|eHen(+t zU3Y3;%b-RY#8NW|b%>dI(gLbs|5a!KqM=_tuAoi~ZEjERuN`xdplj`%5!_6yxuDB^ zOAmRHY{+~?0h3FszEwt~U_(YMrZX6J2_RtzqB;}t2}qEH5vFWYY%S4Z zvb}tVgIbY<%IMXvUTtqZj zGQt?H=o5+nv-(D_qkTDfqr`7+rYAeNLdzV$yj6DW2jnDq#cI6-7WZXDjvOy1*~Q=? zk08*wA6PSsbA@?6fUqsL^jBV`pnO?f=OMd1&MWp54VG@YRR~?TBYczn=%7UFP#B0{ z4cdu-u!VpKfB|607=!>IPo>SEY6S7o;LRn9s?M&$wJ{=whL z-B){l!sdHTGG?P-kSfVwPnwZRx8JpiR97=A4rZB1Q3{eIxg?>?oH8c_vudobAVQnY zAs7NXBk$euD<~#>%9k9A$y{jRq6TIqN2>GU#+5mRI(u}o_;l&AUuM<1$BDGaP9N^{C)R*eKcSv)Sb4~Q=Q!}Y?3yB87j!qmT2Kf z6p0HR*5~ZX*p*6CGUk6&81Hm$q4$~sYL)t z8hce=cMc^v8E~b!#{EK@&#m;tk)2}>+1>p)?---vvbM@fuW-+j16%#Q+iZdRLBx10MRX{@-Tb_KWF+nnRNCa&_ zpQcSV=F;M->6+M5MG&W0H8}x^Z48P6XTKj~C>)@Oj&sLMwv0h>QfWZFt{gC1CiZh; zCo&z5$i+$nzxO7m4`ErMVBlD$){XPPp~U17*36oVO{*y#o!@K6G>CzY9t|AdK(m>>BTF$$x6gFU4w^SsA?! zzH7wba^jd$^o$lCHrSawss}u-Y$!TLC|hUe0O>W6W*6$0xOwqSw_j|7Fg^HsL7UI2 zCpU~XcACW0!l0)bAIE(4LVF$R8@H~ZR)aONOj{9AHfS@Va+Vrl_wffovA68E%p0?Y zo4z%4dna3NteF&dw6FUZP2zsSgQq%~y%wX8b}ia*TIcat_W5vHO~`O@9ZQfHUz<-2 zuR0R}paGP$6HDMvVOjdwyEPL!Y*5M~LtJock|t+t;|wPwEl2I$LlsjuDOKSKX>E*F z!%^!)mbYGv3T7lU#s2j<5NN7I6O&u@c*0ZBbuxmH8Q*8ICqOZlES#Jm>J8rnkfj?m zpeb1pB|v`aZvme~02UV>Fk_np>SFoq16CAxD7fhI0rZ>oSxhEaOj#@k5eptSX&1xG zNj4>`IQGurb5Jf11qTXhi!QsA0m(2#gs|Bjt2NAG66%CO7GVq-U>(GOSv3TahiK|j z>^d9Wu8b?f9?RRo1(?PgTR8`FTBX~Jo7#g{ zJSIw5HD-XUK=~2Ye;jY$?~hOB?brU+6*jD~q7nvfrI*Z$JX+Fz7_S>zl zQVButp4&*M5Uw%QNEltSW)>Clq!7?x=kM?PO?TZj@#>rPPmAbzodrAbeHx`q+8Ks2 zD-ma15(kx~tP^kXj$9mVlwdzNPfT|^rHE^iqt-fP>9D4HjA6z;xIWR^y193r>h{~J z&$9T{_sZgk<EeEiBXy-NPRwEBs)YDxIPPYk zo*Q0g;9)7=6C~=n{%W?rEpQ6Zh^BaJc#J>1rd=AfvcrX#iWknQ(qveOIlFPE)VgMLb z$7FgWGEhJf0SCaq5MU4nX#ijt1K7dtM4lPr2wvZ7I4%t`6^1))Bgz66Z<5{hc)Z-w zVyX05OQ08D`oNjLJ}DZ;02>7szB%j$sn?iP`l8X#`PCrLelUsGr z)k95o;`byvaBb zj=_zAu=OhG@Y?G?P{hzF??4{Ff!HLXR!@uTEDklG)MBR1*VLWaaV49Njo(ALW0_Ev1=n@mm9`Mioks?!B-N=QrlU?2KScQz+Y@K|-NC$3KC zNN`-bi8L6ProJz~bIEiRq#$ImCH=j=>-Ycd-~RRY{h#^n`V4Epuo(mx%+gOj{v=4< zvfc@cnZ@68$KCqh{~W&Yzn+z0&dvoV2CW5u8q(J+3NbfS| z3k)X3*DteNOJ-DfHRj_>R`;>FZ{iZ`!kpL?p_glZ4%SW5x?>7;<45lxZG{#?hjJ;b3q@(5);NqO~iI;0?(*kx-M` z7<*(LZy*@WwZt&S3*S2X%9}hrENup2cMj~G9c3}Oe8d(G6Lv(U8_Llh@Rypv zU*x#`WTB*M02x3C*T9^IV6;#p{M*#di(#cU&`UKA-mggrQ)qc<(8DzLJ=109=1ghtvWlHAV5GE0vb_> z5P+n?z>YZuoV|U2Xm3o3KWX=4%Bk406YMIs}Te6LE(KdpM_p9x&VX0=uI2p zl2UMOlH-YpecD@o-*p9fveNz2-+A?YRr|nq6x$=sor;jWL^0yVqj6@EZltoQqNa3N zR}U795j)c%V=IC!TI8=H>Rp+Wk`PSF*u`s4B=mNj&D(ib%Gr-R&YWI!cfRATVamD>xy#9lt?8+HOcly3m{I<1Xd@A%XT#85Um(XFA=a6^%61G=@V|v ztkFWTm9yxSa8RA4q>a@rA3g1Hcb@5drH}RnL)6EqCj{iiqkDW_bjT@QM!ANDJF#DH z_s75R-`2bD`VpMd+u#I3zrrwb?d|V!=9qS5fHuRRLHGKY|K#8M^YiEbkH7!L|DIP@ z4x5gYIGlIu4 zA|X!TJcfuuc?uW=B2kXxuzldzL#w7|*L%RAD-G-@q>p5AViD9+e2fTvKlzKn_g_N?%%^>V@>?$Jdv?=tJpp zp2~qAH^(4J)fXYFAli=vN36r_tWp7k5e$F=7nl(R0z*(%8E|cIZ-y&eOJ1<0Ro&(k zuoqkyLNRrc2jOlpo#lN|_`Jebcoh}g2r`8lU=Z32oYHIGK?g+Mcs|$HcjtS{j!^o(~3AE1F+Cn4rlZvvH0ODrZZ8o zlEIRgFeqrG{KsvXANJa7BHf~E*4>%iI*Sb&=;C|N5G6IG=RHL0G}_NKqxxs_Q`A>Z z`xPgYTUxYeJnbP4`ve>lriW>Htin#^L1-%?*LS^sS-#6j7e}~<9!s9UUR8q^nQ=R2 zKkxVuqbBQnlFd{!q0At7MOkKC*P(o`7sVdfranF5d%K!!xJThM+U}_j=OcP!h_u%92+u*BI8XA z5><=0butdF%$V-lJ;8a4kKD537cWLcb|xq$Mw6(9gs6^bVg(M?VACSCilVv&)~sOh z3(q*zWR~CNb6r?sgm*>=D&CV_Qq<{^!@%UuX<*MgW?_OEyzH*N!*zO1qff$) zupYt>D`_X|dH5z%ScMG)Lr4RHpvVYEK!KuS;fJ@uyk5Zh)dJRVSPQ2$?m&eeVrRKS zp#iCcXGOp9kI^RskTLxxKFIe5C`5qka=SoMTBKN=L#~sciKIK+p)W&-6|@mgnIxuk zx(KP36!1FUgRBE>>Gm*4wcsFpqLV}`Z+v|vi&T(#t5lm(mT*XyR9={eWHNEK^R2a0 zuY3vArg%;BfvvjS+|r&dDe8=vW3>m=M-nH0YVO>3a&<>B_SiipO(&$>m1nf7m}nxs zhMKDkc5x*Q#-a$vjYEA;?e<)T;jyTY={}1GT(efU7qSlunbFgG6@9ITSl4ssB|SC0 zO7p3c7H%^2as1OHlr%>vdfJ6y%(B~wU6OjR0FQHJVhOk+B=4usWa5N%0Kn2$wa1Rg#fmAog< z@kL=KL38zfagW)G2&Xq+Z;XP1+^tV158s^t!?me?muoi4842!bm-p0heKkSH=ysUY0 z1Olb!TyUUKS+^|cH)@ZJ-ng{~QjeSO(V`{y-Np}+@g0o4kEAyNVKnT$s zP-%x9@jZ+g864{jKB0e`xXisOS93x)my2B5 zY*$lK7g%pVNJM^eIjHEs(o&l;wi&OUr}v5QT1p_^Y$`J_uIuNU+TFIB}~^b%|pD8rJrtD0^Ixc{d7jFqe0uI%i zG6~SYf-wOV7H*)!=UAG2UOUQRLeU2_ETNwUv->Sk;ljxNW#7klP*k5n7_$+K;c<54 zaylS2>|hs1GANB*98t4#+?)|VmW(H7Oqy}UXbLm@hX%-DK}_&i&c-$d8t}kHL*cOx z@3FOK!<@~tnJfB%q7}rEjZ(00?tX-v+}gmK@mQ+m#nHxoBpjNJh^Zk)Z0RV%1`kWMgCLj? z1O#ZHg|T6n!~(5YD^w1rt2R`do9i=exu3nS<3*^=(n6(stAT^H`?4>0zy93#yEv}# zWrKZgwManH1CAo%lw`a@S9bj}HzT@#GRQVW@>Kz)!Nd%9XrB~C;h|0RsfdCPc9W*m zEYDO3Ej)1A`Tc$G<4O%PrZjXDxcE%9HOnNBh@GYaYc?p8GWk;`0C&`NHnTbW?6~gi zreU+ku*b@1BF&>&!%6g}2ZAZ+WNdAe<(x1XjtV7PYBc~>oFc(1)RG5oX$rweA|QJK zSwh98JUAKC1s}^T6YHuIZ^WVN8{g0Q`{%EI{<8n|^--~CpPms}Bn0WbKELmO=KuNc z|C#^Fd3U85010F3KV)9R0Z-8gLFS`@ffFXvs9p&2ptb}7Wtol~b)r-Y^XYr{MBfdS zi=_2)T2&EGyYIE=eIbNFj6^X|f;tLA7;dFZR6I2C$e;vp-GO-&Pd@77y;#ube15qD zIE6-GI^!r9Q8EE|Xi^k0()^_r#-#xRPF(xyadyRLRe3FO_}0`3$*9+1_Y0OE5910=A#{@F|$g_SlR5L)`N z1D31e{536f(KuwtV@0+I3rK8_p7Yu5?I43wk<5hzGN0J&9j7|~3+wSx_!Pk@Zd{>l zcveP^&3o&n)=ZLnASBbe0L%{_1etl|>SOx8UGLOchsDLa{m|=5g_zsI^ zb9}33WZs?)HUh4>vas?-JK2-_S_Wx8EBZ=)(v_R&&{#&E;&zV9T-2VZ3GPrLDh8^> zCGo&M-ex;Gvfa6sgXGm^aO!DOElMIe2Ul*_IagqNjYWtvnb7ypm@W^in$f;(NWtmY zWFoBqTfVvb#uEn8hg*s0u%m=sj1AY#I;7KOtdY1Gz`5Vc)MS(mFEDwd8dQ8K~vd13Wg z008FL1~C7mIabrjI_#m#M|(6dhK9j-&vI9S(w=2GK+)3&%VEp}3Ah#(TW64AY90VX zb8qvqRd)Wv#deBpEOx>%*kI^w`3p<+npv}H3`tu{Zr5!;p2T&6&`66}HR{0!7*cuFwh1!F8PY zG97v1@G%gDha3uWEI^C62p(+DJ!juPTGWmR`{qVdfN%xC@C_xn>4daWA0gDvmDGmF z-m7Ni5OGCXS$HTo2Zs^6GhR!Vu)A8ipv?jNXwXWW+Z@=PBaC}xCZAHz!w<*3HF{`> zWMoP@2_3GAY&#S&v*JXZE(|5)3p;wl%zaHpZ+4fc$a%#tX6G?+YlinYYIpR*pA{AN z-rxG4_t)1vo0O=|xBli+i&%K4{vN#A@)ZPfxiSWkGC&6m-0HinRi;ij>JGBYhI>95Ub*p*;1dADnXQI4}HCv9(C7F&!&pPjh?Wv!JZz>)7p9 z(U~qm1}PXXYEUyVB9XA6c==S+5+*I52!O=O#C%m_APCxo`*VMYZMYO}Vw^QAA{ccB zF9x6a&#k}mo;q?cO}kxv&kFg-@aeOqF8G3*wd^XqqIBjL?qy?6w`9v!ajg&|a>vle zQtXj90XbkY0yx#&$1beUoS=y@#WB-tzsLvet3DUwl7w17iS*|(xos$aja`3&H9j% zkV#?@4GRTYurOOfL_-X@bfek~YJjDv;mlsnEBiEis0{<4j{D%|AR&qs7Fjz@$H*jl zl{6cRWp50GDY?_mQd{-UrMOe1DXAvP=}}x%v@Pzp{rTJbKmR}bzhBngXBFl&>ZE;f z2RqZ=z3c#UCFX)A^OPievJ1oXQWM6qtO)m%G@|Sfh&1hHRA}F=J+*X*ZKs}dxHVZL z9X)Lld$gQatL9@XC!g&!=^PS;$HEoKTU#Wg*+CjAu1J|NP8(qsXGgT)tEo|r@3euIf4DFoHy#yflRHN)D#PVojNrw zmsPa|mIR500Tr+~2Z=O79uqf^3;|H7j|^LoLoc^O#lHvynp?sG*qS^mwElzoC+_etAujRO*u@w0Vgu< zBa%sr-d7XgWmJcNLn#LGXJH=~uU#{KTNog4jZQu?q~+*Rb?E9%!7Q9G;esSWu!|a6ExJu{duoyni)?yW=D35O?Y>@Pq2 ze*gOVa^KtU=UF>e$-DhM&Re{tQG>;I&$%k|J|@vI^%5@{V1fV;EgIZGYtI-r3m{Xe zmo>AzIRGXkZ@V6>&z=SvZD)!ioDAZkwt1$j0yxO;7a-|x|MmR~UmwBQnIDc_TMKJ? zite)K)haheu+9tCKrrJPQVAJaynJr3zCv@`ye~iENv>q)2lKApOSa&T>o+O7mMF)P z3JlB|(H@G_k>7&eX0$mduCaxI6an(mkFIa&4{9iU|L9>Pr{}on8i8^R@Stlq!o#RG zOtq)G3~90p%gJI~hm~7V#|bDvnxIS<2!-qo2@nAh8v+OrixFi5A@Sk^S==PZfy>XZ z-aYqf<-U7wx)5m=C&JDB(qX0oEI|g2ovx5F0vQ)kIGcDX9T?9|aiyv@1&i?qo?3b? z-;py@VXE({tPZ|)AKx>2N+ePGN3jd6mg|BwPjHSt87QcXRbMZ!h!bL2WcI+2Tp1_3 zIlfeH1u%l6%}y1BKn250c^#4>liX9F4H zJ^R1~4hF;Y=xWhqFLjCX)4Uq=g0~_(QE0Xa?;dP}m{AdS;HGW7)RAUiq7NmA{aDs3abq=R@n8En*~@Xa*BG$1-4Bvq$; z?;rK1PAw#^tHZJD*vU1&>X%cQ>g|bvZRT#1w=dbJoXl;9ndCXn>8c(acSe4o!=!oE zVLeiP`s|DIajhx>g3MBS%UG3(ys9aG(P40_91aZOHNs>TmO9jyZ<4Y-t!;-x%h5s1}V}h&*$2;lK=&P+jW&-#D>etD%U1Rw0iKg z`P0AR`XyPlFGkjka6{8swVxo}!y$KU2k)+P+g7t&clqPl8*jwr;xLD?qYfdkTLdRV z1*RWjhbdkNS8k@qgR9lr?I496%q)^_&iQTsjSg5{nin#E_T@ z0~#|>A_NA=3Pu47My)ZY#*$ecy!H-!EH#qoXR?z`FW=ut|L{EP)dz)lMq7=VI{56< z=3KNIyke^GHPloKV$i};NolzOZfnqA%+Gzh$I2pz$Y?!I!7lh056-au1@iL3aR34& zhdnYOEh^{~OT*GwSGTY6^7Gac@?m`iLD$DC3Q-}chPyr)IL`wKPRO=nfPCcVw?FgV zZ8iL;h;V^d+1p0;_OA?FI4@KULLwPCyc} z)g+Tr9$~7{(VST@Z6He*0$}8*Q_ULVd9{%Byw zp>inD49S$PZJ6>Q&gnG%Ks<*0sWWW!O4-Ne_=qvemZH3Z+wBmvKlb-O`1d1@_D18S z(Xd9$V&KCHmwr#bR>B0y)+qeV@N|u)FSP*_mBh?9{ZRoijFb+m8Z7I*5>6kmT-_gM z&z>$KXFtb87QJOLqQ;h?%AefiegCU}@w4Cm?tk9()pE68w+O}a_Vc>wMH0niPFqXU zEgiD9rw(6)-t36?(YihR+T6eXFHig1Z(ki`MWRZGZ6cSz9IHj%9)dyy0FPjrFjElHa2`6hJR;=HN0Bh9PG-i+zWbgAOAx7ETKm9be^D@i{r& zIk_hJu&+pInMysY3l%f4o>JH~MtV`hb%h!#RDjMM4CfLMER6x@TCI+`=&S=9Zbot~ z6XqlHBy6gnFp-gp)NX{j8F1C+s4hYq$p|R4t*G@h4Xg}RVp&N&>vJ_WMx%-zh$Ta1 z$mLM&i09GA$9@JQl5?a!b$!g7QrH}iEBE2FUeD$+KrUqm`;JRlqR1`-A{D3FVAW-R zASF?<>@Q?h(Xz1bA9j9zo@)#)?99~+sJTWqNJ-J2W1v_&diT}ukFP(jP5g8Q2y@ey z1Cv~p1^9OK(7xFS=TT?N zrdE?R#kQqfg4nif?c7jiL}E?LU9P^7T)LHOBSlLDWyF9j4=+KiK-&a_U^7=K)t%Ae z7e8FNK5ti!_A-C+-skT2kL8$r&B)>!OR2C~0;=UBgez>bUS>s-di*56jTqVMeA-r*acjGgrkb7l506m^Q1N2)SAJI$bou9(A4JNjs{n{`ACk^>9d$=O&JWm`;9TnC?c^KYtzz zxYo9c^0~9~oUjK|s|u(Sl%jIqFfU{s%~Y5q?{lm-Bxh{HNQ|QC=~~EU6CxY&!g2Z) z>!>?*?ltT9&;S2V$KE+o87c@a0LMcc7BZ(cnf)a{zxy;e&anD;jA^<9dHJ)BG z91Fl)_9(-=)^HZp%=!x#n8GzW4oYQsrnc#^PhD~C9jv~&KJnrkU*;)VPmrt;Es^x_ zfoaD&<_&p{V9#g7VQ8FX*7~NGS%5mPOD2^Mo4Cb^>dVE+mM77!J7ZkDsT%?HjVm#QyrWdYTyrHu84C!~fKp@H2KPU!k;TpZ~E6jEMs zuyry!{av1Qg3#QZ4OP^ZtX}kdip7$p%&LgPn%coeX4kb**iaG-c7bnZW_Lic!Ab)7 zE<~)^CN&8SMVLYa)L7BH1jh2x0|pIKJJ5DkmGHuw`a{sLb%!0^d?T2opbI|XEF*## zxezFKM63W76ouFdYweZT^T1pvJ{ra-h~~%<#h}y*bbDQ|(LQ4}CWQ)U9MLm^>C5XcsyuZ4@Kx?7G(pftYgX(rILmZY43Akns}Ti3D+ri4lwuliAfwlq7EGB*hTOh7}C#ytyL4P&7Ii4Fnb;6s&E#EXA5w3js4*GBX6BW}8&j z`i9&lk!Nv`UV#@hee{cb93Q?<_X|7)l^Te;s8M3zK6_?jcm{?uz&Wusizqh0!}WjqpZmj@d;=jz=syO{`UFq zpSoGTe>!Q;Ty1uXwN67Oj(a_I-V%KzRcUaU6$=CWL*m6r4jS!Y!^LRmg&y zq6q-`*25xH7znn1g^4*RbA`us#i){OFN(r&RJ6{9-tRnX|Kp(h9*Sj zV6TsV7gpeMx*M#w33v|xMJRg@z;e`QafDD5wI;M7o%uBXf5JAfGfEyY_4quQ=3^(z z`q5&$4LbmlG>2&9APQszK|45tJOD6)(#w1QMkvI;?)kbd_iDZO+|X^!iIa+ zeL)~&7rVzM%LygGppf7Ch?v<)TDz34NoZ~CQ8plA^*r9dOs==rFu6)wpW0b6=( zrj+Vg@%{Y&{8MM@41gL8LIh)8iZS@TjFO?T2cNbyOZU#>XDD%_m7PbBa{-v9EN#UY zVhIe<5Lh;8E3)*gyqVX{+6+8LD%KVk(gRG}U^PeEtev;)02el13z22Snr1H#47>bZ zUc-BdyK)26LwB$04%H@9QvSqwB7;f6Vh(PgU=*Q6I(9RLLMk{gX=-xv(6KOhc(AwZ zf}#;gxUE@hk5*SBEv*hZy(_hip==ZsD5l2caI-6+WK>{~9F9!|i@g|rkDmrtZVDAN zdtz>ojXPPeO-g-i6bKKoV!S(Nx$!XY^~U8k@p3Hp@(7*=x@fTV5Gd8KLcwHL8Q1kG zAc|vm8(SjkI4YwUHayU%qK@29qEbbb3*x(btw+WhAOVE%*czz@CBSh+nhG{U^fU;@ zX_<4DCJ63l0+r^N!j~wMtzkyBeL2L4gs~=biR9t1I)A>~84F)y4JOpSwn$rX+;FxR z@3DH^q)FRkEx}846dwf`>8ml_5x+j-Z?_5BQ;LeDaVlTMv1Bxc43dQq0VPgaubw5#WM`E%mog=j zp+V?@6rz*))i7grb;T&NaW+RH6eMHRabk=(J#D!r3XbC5=MeI+d`=7IXG{?F=gevWM?&qoWn`q1?(e!^rROW>67=DZ^+5ql_ERr~5sM zFHO%aX_z@WN>3eze#H#ZWGv6~@AIB_jngbsA5WTkCw!WcC?Ty6>?jSHv zu12eG<*uDy-?7bM_KlA%U!x)RMhn~YxwZks`110nUvBVnD4SC?iixiG3tuwtm;dk= zt36uI7*LXu#EPHv$B1y7P=0hv*+9O=7IVFz0q{etSiZmzEc^Gxef2ik{7IDV^WgUZ zxP^e`+#pqmPy+$U+Sn?ySR7MStulf?n^D$jM?W{s=@A*sUHb|!x0;nHB~V1GjPbmT zuK&s7_Aw~yTV(mt0xqosylXI0FT*nJ(1D%OyF(?*KLbfg@QFB>xe~uZ=Ci7XplXsu zQeHb`^8aw@SZu8@jWX@yll8E~oncwJV+we6hzrIDa@MWYMGR_?^^qQyW!HYY(Trqk+Wh@%c#LBAey}d*JG3{Z=Tr$^GEDnt4N>LX+LfZS$}oHU_$V61S>>lim9(U(+KPGbzR@lJ*&(H)6~=L z+f?PxNn_h{GlDHkX!;A9J+oBPj+45%3p-VH3$-KD=xI5xzB%PQ{q6sG`mXqbI>UwN z02T%mC}|>!F6GkCF>KPJV*ZY(idW_UuNLQqug++FTI4JHxT7mX>&T)_NK8aspNtrw zwC4I4yq?qilx0b7RGwe1PhbDr*viwZ1Ucd&Gm~Dg+UFY4Id;0%OiG?pxk2jL73UN8 zHt0mg>T?ZD-83d%pq61c%rWU6xoLs-fXe{9pV^bQIf%)AY!guUTxzpzSu=($^kn_q z`dkm**f-RIO{jJ!Ubg}V9|HBsf#>21X*n}&4TJie&h{`5+iK_PPOkFSAn!!n(mdbZ zL~Y#eqan+b^!rjvTv z16S7&3rQ29CLU{EZYSYN_l++-HVHGu00;uwD-`NSe7Ma}0~m{HEM1jB2RqEAqrADe zESG78wXdv1r;bEbu zmTcX0U92UWL*UXIX3Js!C8&h~c{;@v_#glPIFOzk-Ge`wMq2R2Y)i2rjT?uubGSXL zZ~dpo*viVWp`q&0#F5$HW@&4l!y!O8W^K?21{1x3dwpESBBR&(xO>zd!fP z)&n(uD4mtT#267T$tU?bpo4|5P9mS-&t-G-s*qUTI29>INutZF^? z_|LWYY2J>Qr{%HDi%ftCc(^Ajit#iUvmATyll8#03|n9O;w#Q`;N0rlDhVW$`ICzj z5jjjt&t+c*Ph~`aZd9o#LAOsJaz%oOoA+L)VOX2#`WiRkOE}gir}xTF9CyNy)kvL716ioX5%PfW9$% z1HxH{$E{-aPj>Hz$8L5s1m@1s;w0kc6iGMOPk-$)JvSgH4 zmMsMUMzv`Cb{#3U*ttVX#I`?N>(u6XM6O4;W+2oMk2YqB7M5VikouuX;Kf%MdWN7d z2AYXGyA>!T1LJkOW0r3dD_G%3Ld0rnUZrv$p{#mUQth$|TxbO{R-G|?3_hC%WUuO8z&gUCS;;IyIu126k`VAG1(P7N4vovE!;ZPj1@ zc-ieqvt57m*EVkL*$^)_@y2l3y4y0^(e*Oqf+&WTdg;QLqR^xZE@W0D9VW}518}|B zH-B|69{+)T>H59(Wj7sD=GnZSUztTZIv2MvHuVuRF0%W9(}V6oGm zdFJ6elk+{?=}q;bU9X^k1b5PQ&OgtG@+k`kod!FaSth4r4-GAxIGCC?zsFfOPh`JH zXt)^^Tg-Tkxx(+zR2d@?AuDPVu+XdO2^cb$HTF2q)AH(caK-1tcm%~XUDK9@Oz+ss z0LF+lBU($qQOZA9<#FUX`HH*e)%o&^Chy+U9=IbxhbpAu} zdCEBJUi9`&E(tceEGce3m>o@)qiZNPX6@j#l|2;= zvTOlGvq6~X4ACUG5bwR5ssN@oSBf<7Mr3IqdepKzmP(_zVHaYY4S{D_;tUpcz3uC~ zi`<91WENnU;Q>gYjBv(Yo~cG=8PhQ9lLfesX^fOBid!;SV9bQtbxaDYWzj+;8lueF zAJ7p|9Hhc^2^(8!@32vPS?2%zb>e^ShqF}xgnw0%90cFNVU`2EDT_-r@>h>TYCpKM z^fK|-aQihNF0l37QBF>u4z5!@>3e)U%B6eJGJA9+H)A=Q(SLd*^=O?O@fsFrMZ`S3 zgSsdfJq|EPmQmfm$Ma)O=CFp*FQvYC`p)@x&Ogu-h|BW41L-B_>M_ooZH^9HDy>!w zjkyAP!#aI=RN*tej-DK?_lg%_&s9U$+n^k1MS! zFGFlpjOxM4*5BI`$9x{2sVrsHfid{!ny}vpUZtqW#ysW9yXe|g22UlXRjK9`_PKVW zS=*Q8=r)rGG*NLI`l5Q`IHzJc3pO}Y*-lR;K}sOG!0@^@U9*y>K^#z0dHw$L|JQv6 z!x`W-eJLryA?w~836xq84gibtTft_dL<*WNd`3fbz?sHky$*DCUj_p95EcANoJg$M z1j&B3k`vD)UFZ!&Pphg=l%$KCJ)&*y@H|9d< zC#5)~1#`wA4h|-8%SS3Fuumw}T3p6=CCO{I~~2i-#3 z?##D)%R%ypEwEy`BeakSCb4q!mc>{hFk)Nx-7mn;P8c2wYCaFJ2El483$!urzyi@_Y0dKZg*6xJyOflk6G)9zwrbQFix z5|E<_Q5h$402ulqM#y4_2Ke<_sCxi{A>0g_?qP;yo86zeyxEE$wy~B1<2e4d8rWJj z9GSne@>*IvkZ@)o9&sP_K(+E1i=V@@sdG1dwP$GZ20VZxKVSHFuioi7W^asekoc{h zR&U9ZFqH&>V~xA9NF|9 zh=gfyI;cbFK^gHWH)M@Uw$Vu6-MCMZko$Ut!QX@LkME=(T-}xzg9i`2$=le&pSR82 z`}vVV7|6MCNAXpD+>gV%Vybue&W){(E+obxc?wJbQz~u%K=pl*m;-|qsoh{$ZnU(U@U*M?*Fbc?tm}^n73x79u<#iZ$4zUl*ta#9u zPqwM;5Y~pdb3UH)iQNf|e`FF);`k zB_l=>r5l%6DvqVRWG{8os-;uti7E?q#=N2o>?QF-8kcsQ&Oj;VoGUWavrx)vQo>$^ zch4wy86;_S*2~m^SH^MuB=^LgI_?}5JxyErJ$^)Xyl<0*g}GDX2+37#TvnS<+e6q zdQP`ZvB|&p`I>>}=Y_AQf|(XLre5hy)OR(?xhaZ~o6L(T30%E=@^>|grimRoA;JO* zuQ+G(CXc0|mql)|SHSf(#oqkP&3PBgK}H0qULC4+^mr>SosG2)cD1s`=eYVQQdh1R z6Y<4bGj|4$wCr}S(AE+Sz@iV`S?SOF)TK(U*v&Xkpsf=-9eBp_C~mR2`{#E*|N76a zo2S|&vX<|p`y}EHWP+j#GddA0V_+PQSft1VGsg)|lLms43CYAVN5=uirX*1fO@`$^MZcG9!?tk>m9Ak0YQdf?Qb`Klt)2&lwUnLWF?){I&+_1ANV1tlnM zl;-LWHUN2tj=rBg010oOfgH9E6#P6^$~crgjteyDS61aoLy`XrWF`_`UxL<_~-Dm2d-Qw4`+o*cK5au?QwocU)i##KBJl%B5;Yh_KN`h(25+)@) ztBi@EselD+bjgs~8Vi6~v|uGzN~X1H$RWnC!V8UnEVH|3o0VvXUwuMQI3;xFI&>o# zpeGu_YBLfCT9Y9v_0>FS)QqM*_LH5DToJB{L8}@xoSK!499bwYq>KvPFZc|ehi3sy zpd^8q)wWyT1GKQPV5RX@6j6WZhI6;em6dT^KtzT4*gW86U-)uC$pRgqEK0Bc$v;}{AD4#=un;s;biF%;lw^I<6$d+E zc-u`%R44msS6%FPZ)eMO>a)MI-(22zhaVd4gNdqyz&#aT<*R3%*aI&NwzG{3`NolF zC~vA~>NUsrN31>H|KzHFGB5M&`%B7!YOSl9jNJAE0xliXNK!6+XG$g>>|5V?79jEDehyGHW(nmRQajL-> zW8hrr`W;`PC(GyiR}H1issRHv33W}%s5hH$N4w0Y{8$2byw(`++xi;l+W6$J*%?K; z&(%X>ePJj21NQDvmZLU*Sit5yS34S)_H_~)?}t6@Za$)(?H$((z5r|O`I>7X<6&Lh zKjWYNQrm1;KVQoiy13)d#hp{95d@_*kA%404iNTfW)d!C98cxs0G1Ivopp5`?b_9C z+a1vW@=e=;L!w$_W*MzIi6{H8IVOd1h!CLAtAcXxIjTso6M;POGyDeJ(5gzhwFfz&1cPfG+P^ zJ<5h?>m}m`m|i{Ar~n7k#t_7-lk31kZZ~gNGwimZel>J8F4U$#e*zIEiTKXUM{VVU zjJB1GDkw%dQ4^dh+<3VHm?S0G`+kV{@_>s#u0gXq9Wl|oSMYG|M>Nv zzt7J*V$fA@rdv;k0C1dc0H7&TbitiU`+^3V)Xa<&bA;?1oQ1HJ)7#WZekrCt5j0RS zxD~JZjSm!#VNpPEFBs=kT$gZ*0{n5U~oJDBHt+Pfb8*-PJ_xb(z zK1+R^`6P7Dbtk<;QSbgvo!3QOs>kr88aXEOW%lm-uB|IgH(sk1ccQ3yg+I_)H)s{u zF|ND*+-mO>QnJCrBY)Ex>~;&h3mBAXGWWv{yEneqwG1@QKJ6#GvhO}WC2u|-x4*+DTKmj-)b%`=@OLBw0?Vv~fkChn3Jiw8 z1_Q8N(vEG+6e&GfOwb&XOQD->$y)EV_?sjl?|e0Q&BaGnL~r14OVQCL=emVmp>kjouW*Xp{B(#5^>9>%B34cM@Jcwy&CVD2&~V3jB`PN-d2x8H8I zUY1-?a#6BrIr3gM?ErpD6K{&r54~>29z=uKv{Gyd{HQVr$4)yyd2Wx4oi73?r3Fnv zgJaCIPnqMhI_{b%jJ&sg{;jaLtqqnR-0~)8=T^=bs1+(!Xu1eVgaQLY$bw9mK@b)^ zg}jhJe?vYqC2xu&T)ti(#)t8F!ZUTw2%mh;k3EkNlX6*S5&?u~uTDP$Ar)>;Obmt$<*c4)*@BqaiXL^Oj37fm3h)L$!A6E2JF*0KsT$cYYf1WCR{H_zJZ_tVcOe7}sO z*=rd<5P}1C483xQQVT!0hqpR#=qZd|x)q!~m}38`8G+R9{h2r%$r`3NqbHYd@w=~& z8mzrr5D5ONS`1-iU&vK+SL#NCOEXk3wygt%W(%!yZj?{r%awR(xPV{~ci`kiC z_gcS+)@D6*Jj(S_@LG7Jka1)2H9M>~O*S$4LcpIOxLm*;2#qx^UV3luZDx&Cx$cix z!nLJ|n3!0a#lAzya_@r2(ePItuK?E$7g%rW8 z4oDVjQ^FfS1u{?a89vd=jCs%>^@pFI`1;N5+u#1S`}%XeLAcp0P#|FdKxkONh3mtF zNGwSB2COuS&yx(aS2x#VLfkZqC9iumi=A@|bHNKyQ=wtrkDOb+KNsFg^7J(kt^f}z zqjK-LX%9yc8CpNJA|bs4CxSCzT<0P0@@|T|EI!>G!n_w>R@b#y1WI z1RPO&Ea5yL+P*lu=|;9k5A4RnAwhYPm}8Q|mB+fu!A3EqdyI)wBrE|@l<59Axgo?e z_L~ztpt#i-ziF4_X6@F}G#V(e?A7Jt?CoDVO;(OkS>q5dVVZ!nda(q{2w;Vepb(|u zX#@zvB=7h}pWC@-)eo`nNA4{bo<<50d-z-P7z);m4a2UFHs^FI-OpQ z5Q4|ytGN&c&lrR?ZY7hWf$}6*^Rz^ixa-}J9kf6HKD_Nb<&%O5hzHvy_bxvxO zKKSdFe*ku;h>0SL+GLg&WTbg$d_(Pe`jMV%s`*K_;alR|#~EbLcN7ni^BK+{MNzmm z&m!;DuoeNI%_GW`rESAW7PjvhAaFBwuwdQ3qet-3H~cJijWncrti{oAGb(0w)pyYG zSI=zt$z1bIY!WkYdZu1I6S>nTO077stOOyb6m9Mpce%QB_PZB>F}dt_4Ez7p87zr<6mWuK==C^(+<#zPQqkw=*Ku zMou=QldM}~0hZQ!o2O~5VKr97%2C}q;TNcHztqKeRAJ{ZZh5o700m_OOQx8BWMGmA zlUDCjztZa~ME+JbyeKcnHr`E_cTXCZuV4h9w#*sy6EblVlf$*pQ*wpp?+l2Qll$r@RU0G{`uUs@AW!< zyF^YU?t9dp0}=u6fFTKzCJBT#N@Pnm3r+(05|2X^7^v-|v+7P@8hVN7>X`UGi2G8R zT%1(oAum*I4o+OLK}kaz(hEK9=9JVWTNXm>=+Zob(lV9aWoi=_+~vwQ-DL)%x6rn9 zEKAlLw0rP5xPJcU@zbAb@fcm?rNHXz)UfN5-R2blv4;?QpiQecFJ|m|`&2JZ)8^>1&bs1a^_@Dad2D%< z+_^4kQc&?kiFqP~km7-aC?eeDmRJ^;;0^S+d2VJ477&8uN&?b`Du~4Zw=-68v zo<-&rSot^jCUd3_GSyi(CSfvLK;EI%Z(DPBOH^mF(9Wxz?Yq`qmCIa?d!YdO01(AZ^dJnfLMG$|gm4+&Iksfv z#C=V?p*Z9BvG$Ld{sz^GQtuFNjcTb%DAJ%-N*sB=Yl%V z+BY&OBJ?mhas9x@09*}gGtFrRaR|NP&*XqbSFY#QbRlb1|E&H}uMHkg9H%X@yI;L_ zk3~T)D>{cwnh=i3EG|<``axxYJr7U$OWd{1oW(RbjyqhaosL@&G0z=@I0zg0h`zb=6W zTFdAz!hlOFEO#f%-|C-I>o~Ti>MUXglUE<-Tb879d_^4Mb#?ALI!@3EJ$t^;%b78w z$G_eauRXP#!6!~rG3_%{p?lnd0F$xUK)u=5+SGaq7BcKTvY;-xQU{tTTtu*|`_1L7 zo&FZHCvfm&rEjp|5!pU~iVKN~X>(%;kgV)k?r|k0ZJ>y-J5*SeWQdjJ3V|bd4|Q3a z^98GA)vwLU$_qb7OfcWbyU!o?{R<_6`BtW#!7>*u3qlP81-`TpSR&B?RRQiSIIU|2 zmpPDugv<{;MPlWdOXn&9JtVdJ;1PUZ_t2xmFGOE)$dXK!Y_je>S=%DL7>tfRQ$-E{ z_QTj*2v21~7;vr}ZyU%$@wne{rmyNl=jx|pzxeJPnMG%bT3xU7jqou{G4u4%&} zAInRwMSs8ZDhe4IS`0;4DjdgsQd5lzauB1C%X#Xm3Lu>7XxawhCRbhO>J05)*YcZ$xIk!~Z3PORg6WYZ(8Wm5w2Zc0dG?>)a?LNPf zm)G5VEq%Dd2Gj-q=vPPj7{VaU`T?u9HqEntt{>|qZix|5R-G_lm~QABMLhE1QQYD_ zz>e68oJh}L8RRb7tg3IiC(LZO6?PUaSO@Jguh*UKF^ZorOp5R+p5tR6FijY`Y+1mz zGbVPIC|VN&7N*g_0wq%0Z0uypT32RSBX-uy8lH&zcSYcLe}UNA1_c$R;ro4rV%wE)3*DgWI8SS9-Gc zmPPyFpR)3RFIHwN<7;qeK-4=5$L65LRfJy$rQp(ggm=8O}+&N8Q${kOa)4pwWB>I5MCq|mvJ$^ zn?Ga8y=h;*aBnQL3}4w1c>DPtO|8*2%z$2){`U66UvIoNEgJh$sM@;9pb8#|zPKM) zLQd4W^30ruBZ@bH(+Q-&r{lB2a5z3%ojcFI4T+R_bj0vU+V{`K&48MqZ`%I_|NsB- zr+@#;UzLl>p_nzX_x#?O{mrQ7BhoY~-1EQ+toAUn*?Yemmrfe;K{{qPfLB&tk-c;7w&w)GOtXTKfj;9FV@Ih6Pf{>c;>Lx(x!JCn>Bj3;jLQ? zhOd^xPAE9#2gLe--7_@CzM$(8w`XeAe!#Sy%=xVhJVWqCVuRWwz$&v2iU~+@(vXuq zkP<{1Yh790svmB(#F0W1vq8C-q>ex1P!1o79dAuqK+&p1L`FNz7cU71mQarMk-Rek z2nH*y{t3);A(1j!%P{?S&QB9>s89Sn% z^>liaT5@~XH;H-Sje5kp4Oou99-s?y>(pm^kU-)zHYkTX})ErQ%*V8U36?_ znN)3QC}L{HKqGk2V?At3d73uMEYI+)P|2K)Ghe}41+*DviOaK9<836*^O zxR3wE*JZPx<8wVDfu$9W7PmoV?3~x4EHR^E7rpE&-jG+xg$cO4_?vuG7mKSgaqZ*` z(qOzZJS*qQ_0*qBMe7VUeBwy6m5VwguHcMdX$T1!N0`3Q5U@$8!j5cb0WQyOeRF;H z`Zm5>Y>Ym;0dT=2(o#%Rdq}fpcRneX7fT^+A)33fd0A7I+LVgK&EBwLLThG=Ml@rG zKj0U(@nI;#NbOwCq9u8@*jlr-FsL{Z^?4@ARdB#Ia=IjJ(E7N*fj|a@LBWhOB&Emr zigLj4q9BVPx%tBlDywJSl4XNxuNxcQ&8y>B@mSuXIt)?*2z%RI7k0=YLUtl$Dx*7~ zY|-I^8X{c_z+6SR?OdlK0$LR6AxmC;)sciJ0k*1-)h4zFJ7=~CdqwP z+a%mzSp|=Evxfa$($VDo0PX;D-|q#TZ%lc3henohO>$^S0#Y-8NVJ9TSb^Z7qMqyK z>b<-Jbk}P^sHE2p)g%dQF0oFmL@x%NI}9n5O7AqaMfBx~wPHr+bjD3e(;Y59Ro-yx=J| z_!0N!Px@x&CzH1yExa8xxk8k<)wCn)%VP+-pR|Ms~{sGX@db0bF7XhU=<{Jo3ez9y@{^I1H9^@#k+6DCU@ASy^MC`K7;*QvUup>Bnbh#-eM8TB}N5{ z^{-ZZ@0`4st7D@TVQDev2AD4M{)w`RPhp%D7E6h^ao+F+V^UdKGzS<3H8F)y8EH8v zB5KBs4fzgmUSMZ;fVCEb;e-dw;#dd(lKhaE0?&Oy!7)lYkb7=kYXM>nvl_Jsxkc+G z)*9D3n_=O1x@cDP0S*;5@?#-&BNR4pSh%n$Vp8gZmZ#eqtQ<8+J0K}77ow0G5G@1C zXzmEAMXc25dzJ72b(!sc-g4xsJCFFh#g@ScO$&&(pQ#RY&s?i~uG5}Cq>RynhuEY& zBU>k}^|(|MI8I&WjHb>xzt-%El)vs%y}zKF#v#Y3p-k8byft93$MI8)Lb@)iCZ!BI zTm(fh0Rqgp0#rDuSx!!&?Li!T9G?HycjsEqd1V~omk9z8Y=^O(LH zY2i(j%G3}8wLH_4g*(#^#x3n|KerbcL@#g3K!gq?mPN|5NFeWNLbz~W7A;glh^>l( zs5jclG-n1IbItVwTiH2GOAON#BBM5*M?R9%&9f#d8XYI$R!vtnXcK9lQh|Ki3a}QM znmcQ8JB}zqh%4v4e&Wl2*Zg_9Z&c)42`yDTbsmih$R_*F1iaFyn98=h^Yzo5r;Dtv z=WDSU7)hkep|e%n6y!+i8NP`^PrEJSotsbPOW#S`1WKVpL1-#P&6Hf^PK_rGDcw(* z@|2UDQJQmL<~7oiaI-g;!n}1@f-zuVKpCvrpTrWFV{kXL>l3m}1dyoIyqmU}oHb?%+}XP@3sS_tX} zh{Jn*tp+4U^U6w)9MoNJzZtNw;8>4ok1`Ubd>*~+s<7p@D`l>J#|zV^>Qxa@QE5RQ zM5qPZ9dZ*WbijyVkVXKx%q3wXEam83PF0~CR1lV$)KPyBhVU(0Iq9kZh?KklpUs#V zJ~>u`fJY#&4aNRBR!v^S5W`!m1PDPlZmPFZ4TN?-o5-dBRG(Tf>Kyj03t3z+yqL90-XJ$T3B{d-NrS^VNm~DMr8TzPGI3 z*yk7I4aKhdO>IVUOqn^pf>f*Sq=AIQPB39LFK08M)z7XWTDHe=_$VE4K@fr1hLKoxf^VJO`3_pUr@W)D&F57+;JLN{)7T)C3l67AI@igZkKwoC9pK;dY=x8uw-U%5FTkL=bsHD|%yewf18ao{OJEWOO2^0q!;X)rvp(^r5Xg1Q z?;n?baopf8JxRrfZqVa0Vg~2igZc2p`#zCkr@X-tvSvJbBGAf6J zK%oKv7@?vPa$}ZyZPhPQK+A*Fa(q=+IA**nq`{-9rod z0B2!o)so7vXs*?tB_Sn9>z^{A(V?*M^9@7e#qZxbe@~*^FTagfal&?zkKJ~By_Jc^ zgSTY=x@0cV5cw(?!^imk`l&_?2Dr*Hk`2t`T)n~bqabVVD{uWB!H+-v_R~9gDy&N< z?9Dn!l7hkrOsR;AmgbZohVNY+H8S^A!D51L5e%h_0Eg_1dB|m!7W5RCSljrC&n~Fm z^s3=?QlIDOz^D;3AV6us89ZhHvN7AeWIW64biTwdp}BYcq?-Np3W8x8LJlp0WKGtC zl^D30;7P*?6++;igJLR8)|`B2v2q$uqfTx1OJ^CqE>@^IV^}MU5U1LipwrHTpHS{C|Iy}NYneM^Y-z_7p-2W#9C*XP-lJzP z-NA+dW^)@|0WHUOkLRE7kl+1tmXWD#6E4QoFt9jEw?lgQc%t>&ihazf80o=;?j-xV zH}mYOT5$v8cx(Yho{=WLn#Y#ZR10QGPXU2?a+U-IN+5K!yy@b3GaEmM*L)&z#&dR& z$Kn&|i07i0TXA+p@&GOF&9c?%%y89i0L{HLU@`2W4hL~#raRjutb2OVP8Txz1&)7y(q!~nb2bLLw6)A`zo>vXil%}I7L zS??_D>iuG_-k9F9NaO=-$4BP#VI3B#DTa`92q>-%4==4S3-6Y7j{^j9(fF#P5J_`U?NAI8Q$Kf^LVz@NZb$aQmdD%> zFhGFg+*7zCT(jHaE(7bz25??n=qI>wznpjcYJ2RzVXOsiAKtkJtumb^=AMtjhOEux z1{T8xR>qpOQqJ<0one4ubNOnnG7n0{htmU!>Pkvhj+u1rxP%^6&s`Z+vQs3is=`$> zmQ))OZewHHON%!LSqg=Y+9jMo031v$MF4nKDALlxB_DZ5wV!^bsTsn{_qs%92u5bs zY`sEtzRwFym%{oFV56&7nd1JjxjXyYsHctjsl^?>$G!4pMXub{<}w0-Rb2yt9_<&nVwNO|?oO>d6Z7a7L+j14EzBFIHinOSbC;ux4Z$t6es=C}h=K zUuTVS1Org1LINtZBOOq(P|Bc7dugvkN`(XiS}x{;T2$2tPwY;xz+eaTPt{4pyoAtdNA00NVNp-bUgdLkJj~%YdsO2%U6x5K z#_gt-q?8Ab$CLL2=@yS>hw{1QvwPixGKE1}@^G342hIG$H)8O7=X1XM??peif9;?C zwLO1)=dI_IUUKc`6&mMJ+nA!t+PaDHk%v>sIk?Pf!gztd)xgk2!PbbFJ5S)~JS+SBQ7ixfZ9d`IV%PKX=!m)*ZT-m-;#RhpB^KgH!!; zw^v{L0>L<=(G{skP5Ey71Voj!Qb)0;JNM47T`tIIY7y8>Qe=k%ZQmnY@9-zSqh=jf zD!SNQ3B*)5Wbnhz!TO+=7J*V)#bu$^l)**L4^vITDZOitC-W2-E+o~^a zE6gCB>cJ3(i)N1zRcA}u7v%?jT;B|nywmr4!GWNqsu@h!u=7H+rg^j1T5F}UX$Iv1 z5B4sWgNQ(gdEj{oKG`=f8%4s{oBMPBYp(_{K6TlsCtv~<#4&fxvF{9k znihN=mLd`uw|3^HxaqWSpZ~vw8?YI$#Pa~TP791~yu?T(2S|r+M3cmBMrlD|RZ3I= zDw#@mk2a&NdYM_1Ab^fN#43F(xfBy!!h&hG2E z4iXM2l-5Q^JRZsp9hrQEfq;}4`4;l7Phg8%_^~^i8HfRpLZNCFU@*)--`czV^Pv=z zz1}_|9dTT~%yBWdoukXGR|4_NVA=kqZO9eR6kVVXB>a3mvga!pYf;+Y3Or;xyLkA>((US#WT2x0dg+OP`VJ@y3 z`5W#RH45D4@?Je0DU(ONsj12u7phA81gt4JFeJaY$I90!-5LedYsR?SRkrrhr-|N~ z&61O#d52rd!S3m0XBrfSi96Xx@4KdtbEwv}dK(e@fiRfaKdf=QYWksLw_mAKE{o_rT;y3`$2GSTdA?66UdeA*e0$^E(4*NTg zXGo&Vmu4LBu3B~aF}j&I^Bp^y#e?4#@vS_~j7mCz;H8$9j+c0N);p8nlWZD6PM5l_ zmF<$PO0Qt|5E7kzQE@UxNJ*WBkZ8PF^C~;OOTDS-8eN~-^B^M6fCeeujF8Aho3#>p z-4MGI277IR`@xnITArI^tpd#j8=vn8b7h$u&~W%^J5d-@97ioC0}Osa7Zvb_gRsx({Y>yQE=_S z{o})q+J5BI{?q;cNCAep|26*qDNHUOSK?FWKouqc4=)7|f_4P16KH^3#UT zj&v>>%Ju<@b+CEqecqcd-o=X>51jyGz%Viy_x3mo0+9`(PK-=V-L4R!H_yFu6D$@> zG2K-Ih^nAMP(-Tx*1I571qy|r5FluMn72d#GmrTl0zgHZO?@o|fJ{OE;Zd2r&)dO5 z!!Dy77RrQ2ikR+9I1)|JQ!T{DH#}Pq1tXeaL)!V(aciCxCKu4Z7vB!~r>-SikR#?NqJgh9wFEiek0XNn* zj9I#z!>>YtkaFankY<(V?m8vQ=dGla1Aw(a0){;wkfx^bvx3-M!&`A(^@1fa$EdEWVLyM5n_Z6pgfM0amr>g$kxTT=v+YCyvntXQ(TXZ^L& z^gWZ_VCFSnM9}^Sf5I>tm1p^pgDtF$A(43FE>Bd<5Hq9uK&50A%CQLU{y3Qlc;i(Ud1-$Frg~D4VTaE?eb69p9RGwC{-_ zy@E2b(Cn^Aq)HvvhZd`DA+p+qGHWC{M~Q_MI9edk^2$q&HKDA?5Tm28sMJR?*a~G2 z8O@Q|3Sl~8l({GwDi-U4h5<1y3Xi#pLh=2ReCkX7@g`^T!&TLd@;Bz1ug;nR@ZAxq zGo<6gs6W)IaziLDg9`@b!}{vlU=nq+^0$k;j(?cU`Ad=`k@Q(UjiDFpe(=kWFaLv& z``NpW_f}KiH%mg8NHXohBNe8THNW9{lMf}7-WrfB=o_uFIEyn zObQAnSQi<>o<&7a3t%RitLZOlu77c(yD$9|yQF#z%X~jP*!!z*+-`rIar~x?K0~|K zbRAHSo}*Cg@Kbtsu%|mJtPYAxZ0#Z;hWB)NAd^maJ)tstFi)cf)U~qJjGx#|#OV6pX7^i@a`YeDWE5dh*=A zbN)I;-ouZ}|JeJX}Br`nX^X5GEpE>J(%RKug6M=VD%t0z)xB!nhp z#VlobHNO~*c$gs}^~~6FVvM4JpiH=tIPuQYV2G?AUq%Z*!Jc%ouo>5>YDD9K@LpCbi8L)AK2WgcCv~qO#iaJ+Lap^_?2G zp>+y&Mn}oY(xX&Ukfz+60mi&mo zSu_ohf}`sb1g5Ko>R{~H&xDE7nZ5qrsd(vk+deeKmvnr<`@EyMU;k_4%9O8 z+=3Ri+JAoe&AdlB*wcqY*|WQPDbW*j#fo{AQGtE+}!`Mv=stnG`dn~iqqMkC~ z=ipe5;dy{Ge5`p$>a{A~U=0js!i@?QazkgXm_^xZ^FdbS>V41OL;nTs>`y%XdUO;> zilgD@pPTD^r~0=x_JXUA#num@SkA*BC2%9J~VPT8_6b>X=*@ zhY%V8G$VI4A*pg@6oD5l3-k^!9dYF7oH@vI33X6em6#`9j{zSb%YCBivkfJTnh4)t zwOxN=BENn9KHt3e*(0g-lew4x`*+Rg)QX+Ycu~LlM6oy{5tG2JxT=Uy;o#Om@7)itoIvm-5?aR63o2PZzj5-v3tU%wXaZiUu8T-FoqtmWr!@&Hvps=xe-e*9%W@MyR9G;SY_97dhWUTT`c z2R4%S*uPj<%y)FV7u|KMjCaZxbmr$jShC`z~aH4l*UUqihhOsc9Y95X-c~UON(M|z+;pF8o@Ijuid$}T<$+zr;jd| zQZI*m^o2bLLQ3G|e7c_-qjT-M?cNXjw&l26c@FZbB|qBA=^_hl7irz_v~2^M?(UIlT_~8`RmWE zCgl>DAI*kd-988u%k9R?x3veu1Ld@N6l-yD^36FE8)$GyE8fK|gDW1Vw>#wSW0RLH z`-CT7W4}&&;6C-HlRJa#CZK7o7xc1B$*^Ff2AUxZJnTm~kFimq%;s|*cQ(Ca4a|A{ z0A!7{2k!JlxJ5gI?-iTeg`tkeF5j!ZB1}#=vWg~%ZY9wZ@4P4&bz()16&k9QU$Jh1 z^`uS9Sx$F&l!k-xwVz+O)8d3pJWw}xpCV#zG8D+%c5t;B_{2m4!50W>I+#Emni!`x zOmtYGtmC_zIpQO?BD^>NEJ*}qNiR5vRUTd(gm2-SHLt1!d|OfZvS)RKk?`O`v3e}f8*aV zoO;1_mOQpaL`xW*V8#Usa_pxL^QHHpoDclf7*MK!k34hmV*sHg21o(fitiU%6AX4Q zi@^RM`0l z5WLm2ryTO`!N^;VT1iz#7#+44gzGeJn^l#|!>ek`N8T=OT*i{M=+pgCUsmeZbmFAS zgXBm;x*N032$DvaCZ2q$8KliTbe_f=2#9D$ieb@RRbYZmyM%for%{KRsxfm~G_oIh zcWCgMF_q7`GvTdMW-D1E_ddy(hJhEdFU;`ylZ*KC9feJ#6_Q`icl|x&{g0lh;O=w+ zM)%?4aR!is>m3Fc-EaQh?;npJ>zy#Ypc!JeUX>ux5N5f?4ip)#LtIe1);=-NYwgwv z869qt2iKu`2`c8|_72!S@vWwkaoM?#PuOiV?`C1wZS5&p@vffS%L2g0CSuM9ightI zBh$ur{PNqs@xCd{u;a)(n`1cN_S#@ILcI2LTUbfi*97wZC39v6Q(1fFbJXH3pYfr# zQY++R5@JdujVzJ_PkAxYX^gQzpAwOH`_8FBIW_nK*fF6fC@o5hF!;4U?tsB)%$@Tl z74#(3C5;D!`@MK=j-I3A`VUi z7?F%Zp=h~tUe2RH?7>sO3oUv#dSxWSkRA4WfPX+zjH6I5cg|^NxjOm~zZx?2Sglx% z2jf%yTw{O5m=UWu?a&UPKBPiwM|x z4D!`T)p$PrfU^J(8yN2w-`)hibUE7-GHb*Rr0Law(vqr}U~lw}5=7DPdm5YM-e5Bj zNn)-G!Wd<_uNJ*{f=`?v8Q*Dt>NN70Wz*H50dfFN4Y!D@;S+%6NJbFRC2{Iqdz;_%z+ z{aD|(d&cLesx&M8gODNdVukoqPGWS@Rtq|<5>e;?BVJUu=Q0Lj1z{9V0IQeqVuOH5 zF423gX+?8|wgG^A6F`8VQHwFKWP8DbS~$P{D)+DLlB2gEqtLGHdRXhFkxDTd8X1Mn z{)?L%Suu#=nYe?Gdr$LhTO7weE+{_hmei~lXE9dCXc;i}87np3*6*QZi-NTe>g3)t zQ!v&MPejf;N{e>7!d2xJ!Li^90D_C6(e~oDN&V3DZk*MlyO&YNaal6SLnxMHipCSu zGC@FPS=TBsT>LFwlF^~XqG-(+3^;@V1wCdPxX!$DZaXJ9x6J-)cipVSER1U<(zHx& zu^v!Pw5)k}+h_LDr{wb9w_V0af-G!Uxh=lA=H(d6{n)aj;IKV&fKhNC%i-8X(R;Wg ztXBOr4l{TRDg!9J^fF@`?4IM|dWmrOO!^Yf)fg_dNq!X+E^&2t^SIc^S%l_6ZCp=g z?bv?@lM7R;7wI92Owu7B@XcEzhwb1DYAK7k4L8@h5-nh9dZXd{^(6z}bfgrjo{-%x zc&U5XasitG&n8Od(j;v{YU!O47SDn6)F4O&Qc0C)*uw`i(+y5by@Xfr zpWwGD-zt0LuAIoW;_3Wz!o?IQ*)immcXY z*pgjrLG&79TjSIXc)+Evh(Hx1Z+hqfQnaVK&8Ag%Npc3Tz<8q(a>2cr@EQxz-ej)p zzVpj{{|$gIzD*N`Z5E*^YuPx^5)9hLzJ}dDXd6$skLj%~ZQsjn*?mIGO&=@zRYGfR zgKllHQkiPUR*}~NPt;aJ)&OH!T1+KnvV6w;H`_m$axvgSW5eH4Xcct6mrftR4$enKHnNb}>>L z*$?^3%@cP{jbI#Jm+LgPGxi*8fn%B4i}Ehxh_I{Z#ChL^acYdCIo@&Jg}ot`a&pe{ z;X#3C1G7n5o?&q`?OM~O?HTgs_t&!^xE`4`f>C)cY*OcLN_X7EVQ`k9!vN7BJG*z` zK3~K#lmz`KJy#}QyOeiWlLF24`7`;YH&d6}c}vnUCZ6@pV_Cg>YrN824~JH^Lw8FM z@gg#U`@m8wu!RBeWHN&U+5;?#D%g*a-Y17^DeM&mH-Tkr_6;U_ZHbRBY4G$D8A2vX zjkPHkD5Tb;``)Nm)T&9iw#-?;w@o7tW8rFZ%}|@>NvdS$*XifaaN0DFWHDJugJZ(A zev{*r2OfrFHX*}cELTTv(ECM{*_eD$h(E#o`x>>vREn(2d(?5wJ0^ zVjvB5(*SHltq_@9#q|f+NArK%|NQTdKX^)C-Z%ca+TmEsSI#5nS^%sMgvDI{wp1-_ z*-`DvU7cyzC%2)s$R8;#i<(s3OVFNy=I$VA3r@T8skoOdhQv4U2=R+t-ns(~`$b1vfrGezOZK*6AUn46J^uSIJ--?>vRD$xr*Wc|gP-tgt(M(8h z7n2TM0EzCW=L#g?=?(X#sWnBtY)FRlU^TZl^^WDH(^ES0!9Px4^SN;*1Zjn&5K>6v z*urmTxD1K_B(jn8w3*5(MPY%u#;M>gLj)$-DgZ=9KDv1OIq_W5eu4?iKqwnA`Pq2& zmRsCf{q3M%_GT-ayrUns%&yKKlefZGh;(SPB5kaVeDNv@L~M=Nxv{;I%F0NPA#eCy z{;kE=J}0RmVg6uI3|3YPDr$x!{YkAQLJr?#S4)BbjD&Gq7p!_a@Jx7!tF?_-k^fp?vvS=-Ziz@uQR$F}Ws-{bg&#Fdg#IXVh| zXr@7zl!ZU0VaJXVO$yxxZj`8%p9-kbfoURpO2uiP6f0OF0o5eGUcdXhKZ7K&N5Ujq5w)lf@RCETtmbi-gZIN*PkpW~ z{38UuBMxE&jNkv(hoHB3$yaWB1hz|+72?&}(mZK#z!Ut?oAbq^qk7L$)w!DNqETO9 zy3<=+gOJ$!L++;;?0Z_uk-)A65OyqsJ2h(np$;nKwUad=?~T zO1&8CaBHhk2T?tZ5Do`ZVm%p^^qcD5)| zB)UpoF$WlVYY7&|5W$3Sy<<^@(5o}y$f-vtzyU_}-?mmGvOc602DW+-#Grjff{Sfgf+RMCP#^IpdQ>jM$$-gx$Qr;N=0L(7+WXda@{AF;V`$8r@|A?T12T)) z#w}};y#oQdeh^6~BcT=CgD8Pg+fNn&hIEs-kEZMg6_ zz90M#`?7oW!5@-kjya-@d4ZI9T7YGg^J1DEY<~uG+`FD@9Iwl6r-{KMc*FIB!jieV znXMk++!sxeMh`}eSO7NLUu(D3Ma_O))c{B=N=nbBz^7NeVtLVHTlcnk{XExO;bjz>R9j8f9rHQ&m5$7ErQ?sqTsT3r)D3$};6=BJ8sLByaqvV0v5mmE9jZrcmXh|I z4LAgDEZV^1KKKU+okWl$?9QU*loicjhVYv;ijZ#(bsYvQvv^Gzub8SnCu#2M|bq$)d1NIUkCS5Z(p zYb@Xa5i!M*zH^u#j8E7i39HR`Ongxs$~AJ~f6Wh>7hpdRBV6T7;t<`3b7UTeg!mj?s>FbfRqKmL{?1U+lD53?%Uh z!tw3XrAsE9OZKtle5#!L(Hky2r#AzK9dl?qgGK<3(KLdML|`~4B#IdodSmE@Y&;Fb z61{e@l5nYKZYWc7Ax1E~-O!ueBdS6vxEb4Vx-(EqDU&e;h!mpe7=WPWPn^N!B60Fm zc38nSOIdU{Gv_8XSr#(uEW4ThosH~FGtM@9#&;~QOzWX7Pif-~iKnFuc~9t$7Rltc zn2XdNWg;5_OiIS&iSv5<`F{WW-~TL+YX!ntZ4S_x1tW>}x884y2WnF=VQA$rG3}u- z36XI9^9%dQH~sS?UmKXAM+tt56+2rltFJil#n4>1s$h&SC79_sUG^Dz zUckU}9WU`VmWWB*Y zs5?@Brf4Y+rEN_6#2g;GT63A}*vMHfa5gmJRZ9-ONW$y60M7$j6a_$@)+&G+VZ==? zvsl$a)*TGB`d5bjy35NLds<;aI0;ktu4bw17Ww}`ah9H1$ewtX!8Th{r+bN+M40ce zzK>7bM-Dv#?*l0(f$NnsDYF((_b!t*P|l#Bd-Rwv7r;gr_91R>7CGVJ$JcgTFi-Q| z>nU>@8|?F82hiD(q5)!Ee6#24?IIN(i0rZ>OBI&ZOw?u1zvi5`0N9~pcf04P4*q(h z^-7yW;z4mshNdq440Hek3s)L8rlHLnW?jBMH92rKThxul~gQcu3K&pdf7=LOHaejma5g~^@S`aX4N~3hrHkp#p zI=)nf$XI}RTtpZSmvXc4VcE6;&;YM&=QCBf(=ugc$rXL48roEt9kR7V z`5$#QdM(%K-Z&M1IX6^8ncZ4EkXuE1kdw-xD1kvvv zEa3BE)+y>S*V@e0D{D)wGNx$z!wROw#Ci5KnuNWYk6Y5955$rHkq!vc zpq)$W!iAJfwAOF3e`=D&5|iHo#jNi8(errqocCrVJvO%xh#ZQ=R2|biO`?`pUew<8 zZ6l^?uB6&zu=+HTXI=PcTb8{`T&Ns=Ar)P&-QKbK(kIV*Q1q=s0$?k<{K~t!61;)I z!Gx0`&0B;KK{-c6i%RtEC=2Fdzgt0u_*JGm>Oym3EHvZCce@ zmDJfdIqjs;Xb*a|Ih10F{Ep(pZir`@2K?b{vuCf9SKZLb!LJ>eSX5IKgHMW4g;p&@ z_H72AI$Xq|>-a~!-B9pTt>JLxts<%x#Cm*N2_3=?*>!EFr z#Z@VvJy=49ne6=i{;AXhW+#w!-q9<_oNz1>&-DmDR^Qg*J`GMHrkyFr#rED>hsfAu zf1>Sulny&PF@gGf^h8ic35lMa9B~=rRVbn<0G~`g{ z2g7CxcvLT+b&25FeF?6?+Cv^oKI6iaT`W7~6%ksXE_puRbPadD_R3zQiB+QG352#cVk`Fwhzy!5CpBU981twPBC8j(g4oSh|L^X=10nnRN}WECW=9abH zC_%xMplipM=S<9|kd3~$I8>*$sHy0H$*@C)Vb!Xo#+!1t(~Mwl$dRo`F`)P=3?Fzk z0KiI$kzHjPKr_)LtTf7nZssfs6j)^1XZL*9L@*$cDo}GYV2C6EDOR0|x#!HLpvfJa3GCr$u@k=p=ik+=XXIVW@ZR{4|zA4lzn zR$rE2l9Pzei5I1 z+P@)??cf(s2-$15ALsTQoox1g!OD5_+3gcoBd^ck*jFu39@>S^pzud%_<)zJAc|xs zG@~@j1%`p_yvLIsKyGOtwJS8J2aF#(;=S$_S6;CUwljDa*syordxaf5;!U?#g8*V+ z@=EPN(1Q$sG2YNpTW+@Ik8v9HcB6ZJV52f+4w$K6=@Fa}2IVLz0mh0ROq#N*WX0>G zqP*xQaPr5WuV}Nb#YAQ@o}fC`SRJvQ;D!ze=ss61;9RN0fFx+~T8qKg3tanm*Z(~K zWA|5K&n(y(v#pB3@R=XmO*7h5;-pv<#D0C`HZl7q5I zFk|flq%jBUt6FTrX_o0}byoZ=&wjWauL^2T#mWPi&mos_0nJMH;)(gXCNOpr5D9pX z49l%D3T#eOGyNxk3;-a7TsQ_56^;(x4nP+aq4wP6(Cd4s)MKNip%1_q{|WI+>&;je z$RCJ8BzT_buhUmEY0IjD7>ffITjzXJ_bi@wIq)`j2o!!l zs7$Bmo_F_(V>Ov|L&s4}2R^gyd!}=mYDBdVkSrsO8UrrV#E3~V@ae4L&PJ1*;%Eak zC0+56*%9{$I8b%f^)z|)3y6l^z%z%pAZt#cW*duPVFV3A84`^GQ+N(y=kndp`r?Vp zg_l!ud6eZnxHuCD!(RG_Pv7%HYsChjX54{n9}1V8vuJtlub|%K?NQadnQ;a(-RF!~ zXNHG=?d$nj-#wQw(NhgPl2*H|`np0}m&4Lt2x$hx0B zElyh&bE9#E!_K!XG_c>TXT4kb{NwM*TjL80`y&W%1D04y@B%~}YKRxr2?%yxmHl)> zY7r(pnwolYR$+eSre)OX9tnIpyaJ_K}`leRcCJM2yEW@Lmjsj|&Ua(VLer{xX zpBZS44B-0#mx&*x3kZ_1#Pj2mjuIg7XMo*WBr`dzckUKTImRvLv>*;fI;Ya2+g0-` zTHsGY*G_B`9s?d$>H-Eb%oTy5d}V#UyzFFrE=}K3*`ScU)RYUX_4buvP9f|w z2A>sS+Sq7|=bk?erkSRdz@2s_wXF)Iq}g@>A%_zCjBE`@22V;xW~~?jg2fr zI8xikz=AVhDMAqw9N7=XkzUZ`VAUAqet~ZWh@~*-7fRU%vCrumz900Q2PVC z|Fq+m9U`{ydFKxNJ2h^c?l+G6<@qeH5*H$(OR%`}LIZWshtQMyNXmz|CUToEJ6}Vn=i-8y5II>~>X=28)-B zW|tykELuKy5f0rs=YyzluRf`UF^l0r5J9Q136rgCD-4Eapr!z=0Jpap4-6IY5$4@X z-*8R$6k|nsYsjuTR)k2_Z0kl%cplUN0Koj9AVV5RXn7tDt-^=p3-!2`zYS6x<;R3? zO^sKn_>!0XlNb4U-gOiOPr3*pQB!Jkd_(}cUj;4LGT!q?m-5`3?*6;k<0ly zXj`CEZ>$v^_O5^K`GNmd{kv^LGI5W4(aWCPO=F&7Sgun_5_AvBcIUtZPM{mSEO&-h z21i~I)KH%CVV-nr|6rvr-YieugYW46MF+p>B?kLPPa*Hut?Nkbpl5oQPn*nGQll8$ zmkAhu+F=u-hMpex16n{R#Nb}5#T04*oUb$~J0aX|w(bp!arodpA%^`eIw0_uDNqPu7nvR-&o8EH!$p zQIwRSpkh!kVDM~hg|jkFVV#5KDBQ|&lg10(m%As@#{s@QD^{}T46&XxVlRPrP$s_R zN+}|;{!*f6c`8mM!0nTlj6gwFqRi>Q4JafclkDN7)R55Yyq*qZXP zV%sQ=Qvq~4v6KL_x(%+sGLr_kgMc`2$0eW9lY2ff)Uyaq9QqE}Y!_A)f_UeCbWnuBEH;HTx$?75h&O6F}d31t!w#MS{YPMSL~W zr|HYzUf#W_pU1tl76+J7x*~Pw;NH4nb&VfA53|NyU6-@Q?xy+|5C6{mhYP(v>Yaed zk&l<$Jybp_7?_T!6=LsfA+`B{3Ji28h8EoJp>+e~^xBScDIpi994x#i=kp!+&w?~r zR?gU(uvwEj)59H+I+RS^FB>VEbi9WSYFxihmJIbUsp-lym$>a^1DTFDBs4Gpa2!Itz10Ag@FbKw3_t`cuQkxJGAcnBmLIfm+qy|~rS9ncs z_{ojCc!d-y#X{oKfp2Cz%lQvogM<$wZ-J7TGc;aae zy|;*tQ>SzQt3lKmU_-e(YfoDe%Si{Xt;Nel2x)rmUFx%fMTRzQxlcJ z4lD-O{@_^gxn6_~06<#_0bB`aGqsx7u!w+%3J1@9Vm7h%NNLd`k*O0H>qHS~)KBWo zOZ(Gs42^P}bD8tSbnmC153;;B7c_Da0JOKkdBOiXg_}dZxV0w3(6h%+Z<)PBUE#pm zzx;SlDUvKaaG8TE5x5d!kXxFr#j)xF!P(i*1(B9rEH;HuZa?sGiaUF4Q4!M%9x#W( zL{fy7#QLcFmI0!Q|6^R9p9Uh0?i|awAE^GQ#%Ve5av5Y0C`VDJJz@k9)n(0fcHhDJ z7^TI*XQ3@S1|-LR@LX%Cq8qZ{OTk-s`f6VMr@H?3Q7^wD-e>$v-OgzQbgYqqHC!*; z&BLTE>L8p1c>uySd>7?5vi6a-+Fyp-kB`4U?;EO!U{S8OclK6AESJPe{9$Q^z@#me zS1D|s|2u=4Tm;5OW|SN4;njRn0)^zk>r)@6_w{*MxP!wiMj<41q{5bGUmc{YAn@Ib zv9b!*PSfNYzXv{s8-LF6Aq#oHF^A2Zywujm!LJ6J2bkmea*{iP1J$OmP z5CZ7JExLmK^go~d18+NR1K_nSL|Dm9gSl*8=X-2=H=j(JF=$p)g%JP{?tAPoc6KUz z^b0)|&!weu`~a59ghbYqv=lypm7o|f@&~SdNa%Wn*B2uO1T^Kuxf^E%V$vL1cnc6G zuyvc3hcks(P=l;QP5_ORVys2|Vt-+NnTj%IU)7VL6KFk4oqXQ;JyU<~f?6%OCuq1} z!%E}9Ze}DDey{>8KyJ9c2;bL&B_5O0$S!F$@sw?~K`K_PWsgUr5UIYPe zJ;C65Vz5@*0uxoT+z4tJOhUbOcdC<4M20aE&WT&!qH1T%UC{_)1r9mBbw+GW%?|MN z!-LqKZWyUZ(7sn!g^IoQPCb?&V9`6444%l60+79RmgFRNjeVjNHru*JiBOzJ`7GW1 zv^}52oc;!HjWo&*tmQJk-msYOARovU>2L^{LQ1$o5|j&>xVpM`76>=D#QJUcm$9kb zdo*%)p&_Exk-1M2?(VJx;6ltS?;y8~qPFx77F($32?*s~{q5P%;(dF2$#>&+U|bSRKsB9R?n4XYV$dZTv;;5hOtD* zuo*>MiJf+7!_16h&S+)C$-p*>nUb8vIz!oo&YB7oH@QRkNk#fBZD_)15Y4j zQROzPJup}@q*4czXKs&e?0}nbtw=?jQ;h&mYEN<~G0qf3jJ4Jp(2Mhma-z`LVkJ)1 zS8D$HH}4lL&P%}whF0q4KCs|{Pk6%xgr3(5mB8sM(U2sT9Y&sS>d6xmn36el{bta#a3=eP3n8)+Z;IR)dZ3N5Ne3T_#mj`l_wW%G z)4SKO_!4f}B1`q3huPxUvwl_WG}7&jDQVVL}w)SxEvE_>itvO6 zBk%5XQesr6C!aHPrXbHfQDshrAu~-8l4Wt5Qlx|DsUJ*ipI$~KkArn;BEsc4cmgt` z=$!;6v52B0;cv%6p2x$rxf19F!;;`uZdTLsE$FEw@eXj;b>HR2gt<<6cMtCJq>s+IL(NGlMvID@qcvsc>*Y%C%4GNa{5;e~{R^ zuhnL4wYD5mQmYgzPN%Uoa`0g`b26hAUVZT3>ggP$TBjBSq9s0`F;r=%WgH~}r<0~A z1jt(1bZ~~xJ|En9x?TeWEyqH^YV&pn1k5t}0ly&OZ=5w@Pv9v-LYGRogM6_Q7gtd% z7BJi^_!uzCtQ44V-d87>u26VT7J~v0FSR^qZ@cx<3B9X1iNq3Ggh(>9Eo7^*hB@S; z7xSvBZQr(|lN}>f6}amuu+udi-5s+&_RcPgSW+w(E^+zdq~Nd4Z0pq!q~v1x$mk`m zXFMFYJo&7yzy4H{V=jF(652~!i5E&%_JgZXS}2)-ocSe|NeV+?vWO4{6`k5+9bUh| z1Qf1G_CQ_1tYe2Vjw#_|z?~Sv10}}^odK|gm`rC3Z@V3Yq-^IH%-Jep);-Qm-EFk2SV!QRKBmv*QMy{yX!QP9i-ak$PBb<>tHTqz?JTy9g4NvyneT$)dGUN$)uo+#`o|dm364b;hyg8b?uHb z(|%OD90pJG?a&`lhVY$k^CT;G+}0AiY}Pi!)Z1Q-W#k4+->nE!4vrUD=C+>8DrInQ zAYClViaodJmf2EG(FSmFOJ+Cx+5S2G;%BF8Y6Iify#fUnxe|)|WpC$p9?lIEBZ7d% z00v`qe%%@8kcfuW9N((X%0`#VAtg48{n#KfD#f6c419GT9V#;kCth9#40l|Y zjzq*%kc)6S9jm&#YL*>WUVZtZq$~lD#(gdPBiM% z9h*iGqSqD^kh%*yM8I1I(+dNZCy$3Tlp{U$i|5*zxe&u!ckl{b0eF2Fc#Ks|V#WTw zAEdi*v3iNs+TIe%IFFOGxqiq6ssMKQfG4;$*&!4hMq@*MTne%{_uCN)dVz?ZcjEKk zv#t~n)}qXz;Sy+%S$sog$%tUQ;GLYj=T~|DoO#{{vRQC%j`*&(KVkLhw_fk@qp&_j z-oLtEUw(f5(<79IhyXCMkx7dRj8vP7q4>smSHXgQTE)j*z5* zq#PzPnVuO6%9Fun?mm&laJX7X>%VPh3n}YHg--Z*0*Uw^KPl%o%8VMRF`XQef-K+|;EOR!>5E zv^!oQ0>Fd;+bM4gpVx>lPAH`pGq2N@q{ZQ(wn=~uY&%T#q-!58r_vsbyJg*|bFzpf z_+rHniXI3Pi6vkr0EDy=G$3=})*F@(a71cApBogUA6d`)*>+;s|9sOq9#EXH>7@Il2e#Fz*x@t872 z8+XZ07IdCMs^Uzif(K~2}HPeV#0695To-#r2=ADUG{cbu!dFkZZg=9&=BA*d9NMl)^B%DX(vrnMpb*_g#4;Q3@U;$aF4n zqu;nLUoid3Kg7;6yqaqwzi@ZUjf|#IUA7-+|N6sUpWd5#?3$Z(=6GWF#vBrDa4#AW zuL-d13kbN68?%h1kOM|BBVfwNFdt-r0ij2(sH9-#P^6_}(9EKmnV{NaMCqBVwx^UP z30+Yrv#9sL)Qa7qb{?5F&0N6)f!b+s);%^uo@PJ2AN`J|2vS#8jerZ6Z0?CQ1{-v` z%=$;3-Ouaq=z6v@IvA`0`ncZWgC((GdIy4f-+&W5_I#bMy*5_~?O`8ga{#%fo}uOr zoElCkZ*AXi+NFhENv^U=&9G@j+vF{_%?nL8BV1Q;4K_w*` zoK&=~ZWx+cy9ySgReKpSJFtKqzhi5X=$S9K&4SI_HKi314i`e`^xfuO3FFrm>O$8f z03i^+bzp0u(r5vu!gCy1(`WlM1|w_M$(2q`eI z8W3Ttp{C4NIj}~iDGfT;%n}-mr##I2I9xnHG7=153Qr)z)3MzNv|s}#G*VkGe7M>i zAhtD`*9~`f^VwWWiK1E^u;+U#rkpH>H4-X3PGZrraF`WIz+910dd!j%*jNW@m=TmM zuMSJqn?t&9`*eZp&H{nhyB3*Tm4QHsi@gR9bEqpEWW1ks8hjCv)Cm`X3Vh?BAec8! z#+aAPcb=LIQ8@Be9z|3SE{Qt9G1P6@!fo`h4ciI|rBd(?DZ_?=%!XxNI;P)g$BK_C zW9-`%jz~sPlm`gJh+&9!2xQubS=Pk+(!I-Z6rRCUb~x{>rMq4zWTp;o3D6B{5fsM= z&syoNV>f5M`<7(`Z?1>MeE4wJ`#sLi>2bfu+24Mk`}LOEyavraW_nPFn%*-Z2r?-< z5~%EQgu*3M6v~yEu;Cg|*2vHa4ij``RhH<4n9H-Oq2ZE@SQyaG&dD1T0jIT~LB};0 zM9>4(#4Kd6BD6KcmFXb%$_?yr^BVY;2CMp?|G$6xzy9z4`QP`EI<=X~gEWR*I~=uZ zN07>+*w!{(sfmxpT6(jnvk{%iG#3+V#rYL7Jaib_N_0_!JFP zW)6g_VL7lNldes4v1+7|z(QmPOLv#|nC^oefAICbUw2+zoog2aJ|sFs27C31p&CGe zFlqqU(SG@vw$pBv03Gd2^z_l{x69zIgM6){$Q9$+J@rgNod2}VL( zS}oV^#9w%Fw`}-<50m$jiQx;pEAX~ZIDU~Jyq`Nq(bAAmOGGD`aB||w9CNwGDdBtY zP*LUOYyzvsaZHB?6}#PAquSMPY5ZAcZN!bB%bi6iGu-N~P;nMpGw5AIR}FTvzL{_4 zW2en}yjjB~gLyyp+aR}4Ueow zK~S-foRW4X(_GGCiR#g+wx)&qa6`Bbgs@vl^t#2z7LLl+H+P3sw4;Rge1&kcYxpdg zOa$T{c?~+)qncKDnFd74xLr;4(^KZ@_kLn-_j3C9WPG?Nn`-jl_2qK@$;Z7u`rv(E z_sT0I5J4$8^7~6X02inN+|wL~p%1Ri;L2?KBp-$XvI#kqST-IsY_4OBZKcRR{@O5=!bzB;4P3n_#`XRyV zhj8RP&mYKD+5=8-R8n)79j1|biZ6$o=%F_zY+ynyb#L=>KXKLRlq7sut5GTPWJ>y4 zxqMZ{#%>|F*y4%-GQEFRUl|Ildd!Rg3k)1(ARY7lQXO%=uW)m8#@%#x?3|996q&x~ zwR_$68;gYq1NhB3JoEV3*4EU3b1*~ZCJb8YjhY$DpmpwLy2LDO$W5P zE|%56Y=~548M!G5A49=+WG-ji5Xr#6vcR81xNhrf8M*aFKsdM{YAez~P)a~e*2qJ` z1xCL{WW25Z_WoOX#A<%*(a*R26TT117)$igM7zyh!y2wBNo;Jvw$gyC9%`~!!UO>} zc=tIN5b#MTdIiVEV9JtJw5HBI4(%5tIrhU9!$D+fvIrr>qW{6M0Aki~JaHFt?n|E~ z4xKKTnRSL(Tr?CtaEEIy;})j!w96bR?R`sM?tN`Pzs5bvJY{|T^RmGwG3+_!H*x#* zhyPmVJ#tP=?qS2hGVVOwIT=Blj7M_H1hL5lw84V4o1DOOq_K@u@u)Bph?3#n>5kHQ zx6g-tKi~P`F`5|?Rj{+1A+oZAEXWI*4n3TEYHl;vCY}y;O*)L>iJWCW5^bvT)X)S4 zGd5Ly$?L|TPRo=l3#P6)l8y{6FBiq5i;kMwYPvwtGLcwIY^7i@rU(}24oz`U3a7`k zIq>L;3LGI+4m|ZCcwFAOVq!r6lXf|Llfl(vOQqgh;hr+k}h zq49|YVqhV(0X1fklo2It+t+*gIU?lB(6JW`woouiiBqmpZEwB%5!rD!wYR%(IK%M; z^zZ1Ddq1;8Qe+GvbpX*C_hT`(NL8fq9I|jz@328nzjNL@4<`z*esqIu314;qDyIa? z`o0S(vePRVp2z321Y(g!uvFNB6v91NRgMTADOWS0I<|)J(KD{~(i#A+6(UC|5Qm8t zq9R(TpXT9|f`Q!c(Gw*GKY9I3p9Qu<@d*-JthXLEUwtav(UU#L9-KviNnvFH@Ch${IiFx%FAZ24Sd!lY z7OI=}&dLA}ek=_HD93M>9)lC&Jj%xJ&?l-mY)BgynHG5*T!vl3bc6KKAcEBKCWi9s z^^11+o=gP~aD3d+Sw=m0p80x-mrH?daSk@6VS2;KTy=M6@Vn@$K=G5`9+zc4a1@+C zVfz%>=WQpsBOmgRm9EGNPoh*Qu?W{XLLdf)5&+VNuyGJY^xSRyn4VPT3kz4_Etxx% zowFU^sxuJ}ylD>^K_O*3Gocs*UU`~{eY>VtBnLb+=VOs30Rg`3q6yWUgfpmhKA|)b zA{0^Dp}7rp4UvcTkQ6!gFu#Z*?P6CV>Y7d6OJS|2J&@Lev7FJCDJte^&Rsik`a{oU zCfA4XJ#rh|0{$e09=+*b+@7u|4TQIT@`j4ZHYsC4C1XxACZ>;W;fc>rw#@1jw>t<# zbx0gAY6&g7+CX|%h%%*=^yJk&Kjqy0qfR*uR`+A&au!|_fJC7OvG5zE(=WaEQ!9W3 z5F+@OXtQtD>dZsFWGmE`3dJ{k;kzmUrO=AfOc6y8AB(Gwo+)0q7GJ1QZEP)rmDI$j zRH1hLN?*3^5J&(}sVt{UZ3{}c*kEneqkGEd^tV$pBtmtORe@&@KgTDi*hSleHj_fz z7~NYu2$wLS>Ds-yk6prKFN3e|)KEmXKwjR5Pp#^%YB+5j_|4e@D=$+raE+Av>VQ~? z@2#Vw*Wi+~15_Bjc!xqqJ2k^wS*TZfu3~yt7LHj3Lkp#LER~2rQX}BhmWl?Jt7P># zh8cTn0*$iqi1qwK_k-Yc>|&X!BiARDJpe>U29QflE{U1;Ht}$F_-pvds1W`-@3He(4`nDhl0+-sqF_j@1k+2m zqIa${4Bwyn9L}N0AhH^c)%mX8QhwFj*dvYgWn1d%fWGXX>ct$uN+pHkDHUo7=e3}D zdEk;hDHDr6Sw_T)O(LcPpABjBnNOCj)K|sF0GEADoxRbF22|Bhd%^MazWdT-LEW823EGV!e8Wxad zF)gSK-TY(>Fia4~-jZk-K*83nzV_YAEbiCYws*@@1*F3eLg*K9#;<;iAz0g8vW<>*M3&CU+P3SE!2#0 zNRNREAQ%$gl5L6@#LdL>$b`Hd6PDp9TaKw4Ullr99Y#=MY86UHDcs3$J(rOS-@|wp zv%~`f#IPOkU2@i5X6%}BmU1Vqi^-#fOQ?72DU85%qAZ9$n@~zNYV~NJWM3(w;=vjXI{LjB0o;GR_Mvh%jwCU8k&z8RVRDGXW$z*pMMie&a zNG%*dnJ4^?{q^{?ttOjv zsIsFNf;KHPMbXYk2}Cc)s!(DvWRZ>tfKx~5@9{nIOMs~0h#Vxn+G5s=RsG<8lxuc- zv{!hYtD{XET=vp}6+B4}&AdkwdOX!SEd@o1<>S>DLS<(rJO;DDIk=QnM9xV~7jCG} z{6h1~au|aa%Q(p~os(@MhpBX4K?Au?LI!YFJtd(Lx9xaAbi=p1oA!#9_DRiy5<;m< zeEAH*GrPIz@AW2|ZRk$Jqvyo5r%e2mM?Ws_En?n8dd=gV-rBnDS6Ds}T-Zy-fGC3r zn#l0dO)wh1PxXt705o?sazd-?&TwYaU=8$tul2UKmZwE*76bTIYR9Sl^M1yj<_nuW z5uA2TKvjvRfNTeR#3n2bGk8z z(zUDY31LS|B!_~Gr1lA0rvOj-^KMY05Rgeptw$4ps0gdIH{3Pb$l}%!5AZxAtfz@H zQyvT)^({ZvH@PoBwKULc$)0O^Dp^sG!dPPai@Xbrypi3Ct`YU(KCe%Z$r@6O^e|Nk z1RGt)mK3{L5wlK@V&rE{art9t=)1K7N*}BWRij&TAkiADs#x>BVU>u);PKtmH&}1M zqxY+i_@CM54J0@nQAGpraGA0q0om~|Rp3XjPRdFKLVP`#0$L3Z3DgXQ{SVs;1p(Az z+q3@Cmaee_G^%8_+`K}CQ{`m6mkB3j0Ii#2IQ(5d^r>XJyp8Ibez#Y6~s6-M> z)xl=jpGRtQijn1EgT(>@<%ExYRt^>=90>YCeg6zG`Ko6;a*N(to$l{Dzuz~*m2h-S z9FX1TwM!8LPz?5^OreH$h?qbwmy5+$?di~7k&KU$y<>;yAT>IN1iRWOTbsG6VJHdU z@x?ODbSFvIJ7*mPkIpjfKF*chN%)v8XJB*|t>7**WKaUs1PgK+D`|AB)_H=UV=%al z30Q0$aJ(z{T?Yp<3M9{N3>s~Mmd{>Nrh;B9Aps8(I9^{pBPQaD5gmpAAif~Dyt+Zq z^p)hU4J+VgH^$#OKXo<*y?f7Cb{_X)ZMweLAe%O|;2jXWL1DD$8?zA`4QA`)&OkDY z4%o>a?J(q4|Jv)!IGWHpP=Ml~XNT`7 z#BxkQTFtSvJUME7=6H42yjgm6m_G#fo8b0Tw^oeY!+k?U-jKwrkS0WMmN3FipT_yy;B7hYD!Wxa+3kA5d)T!dL_h^ z(_R^SQYA2Ub+k;-bu|#8Qc|?&o2^@y(BRRDjtJT{6kVRyKKh^gwfX!ZsCYPj=lH~)9e1|-Jd*)-`;HFI8>%}yl&6hyt%0jINt5uH zut8|l3u>>B5oX$MjKOTd{X^PETn@d_;C(s2B8$7j+i6p9!k6MUhNMh^gz9wKb}?h- zU|_0j5i%`OY5TXt=GY;__-S~TVKTy^u}u)k9Nn+^+D%~D%pQ@oIx_IY^N;|d2_kJD_o3zNeZR(@ynj6Er3cfVHgWsf2pRaJDWPp3Lf+vUc%|E*Q9%` z8s0W;siK$YfkHO?2}F zw56JYe6CcZOx7BsTx>BFLE@p9^jZ!km4A&H7oRUp1-YfunWO!mph+f{- zj@k@jo7Lzn3MGHmpp!xVJmu$b(+gTKyrktTqnV6I?;XXKu#l4kkzONMF6AiLNt-g6 zzxcib2A6uHrymbGLTf1IrK|{Xn9kMh^|6{Ix{>USx^QP(n^u$P*_Pto&p-e1zx?|b zow}EccD$&xofSOEo*>gUOr%aVXC>7@KB-xad6LzMB24D$W?D6+4?N%$+oO6ea9kju zIJ`{XUwWDmh4i|#sDW||hx9B539RSi1(GLAob0I5y&peZ)_>>kF)Qn-=%$Co$J~c@ zsM9SR2qwtpVQ4`N%0Q)opHIq&G!K}}J?HrS zn(rP*{YLlZNIM85sG-^bjHLiL_?N8w{K%GT?@8#0269Bc;f~}nIx`Fez7i}bXtBjN z?m+FaO$*%8`0B{#X(Q;?elRiB4j1cg^cBAj7=htw0AFK^P0Q?!-U@}Ps#Y1&Skx(q zfg*!NU>oorKUfPsX*TAk$gkU@djPPyHUIVu``q99^#k@?NbX|II+Jz>D^LQnsyGBu zCGs(5c=C|88?v)1b1#sS5D~Yi?PJM+FqjPQ)@#W1gMnTm=+N@Mx8=t?u30(9HE&0* z-nMOz_SJT12G&huub{s7`8hS zE?%Y`5hV@T1IcUVvB1a{u9%|G8K8?gM3BU^pzkPBpHu?945Gk!^JBt1X#z1 zi3jWKz~h1!r{%J)B?$1Z+zh}z&sVLlgh0^elE*eNofGmA#GJBjR>qN0vCk)R@Vhi& zr)0fa%Ew`Q%(-mCc59FKz^zUcn1~VJq4IV?RmJFZ zWQ{wQm(UGBEEB`VJJ{m2kXpil5+)TOYpr878Ut7qivAM4`TC!Fy!JJI;uOYx>GA`z zA6fh)tMkcznI{6k;Lw1=C$zy0mtjP1tz0}bB|_d#6%@C1gALwIZ*BJBnuTGd8Opux zt6m$H`zH4trH>qJN27s%8Z7kny67I;@8BcOLtOXs%q)L|8`C63V_q^inME@}sQ{c% z0iIu-6X7MkmP)9OL0vj2u?gcsIR-3;$MXomI3^B&JK_vrGbMYS<{xiUE_{%WeTZnq zUlcB_uoesjE(=<~#O9bL6TSeD+E7F0pd5(1UcdhC7h#=ryO*t;&vahDyEU_SS!+&1 za~)%gq}HNc-LN|`4x*UKbHZ?9IpSg}$p<}jyeIXJ{1IPL$ya!BG9h)`96EK8Sf&Z7 z&`S*iEF$;4`f* zveJiP$KlWBqvEJmZOG~zZO%brutef6 z>`M+___gyNF8Y2^I2BzO>L@OPz{J8xU#{hQdzoj~sC|{qa2NZ$8Ami&p>}NrhU)KR z_jd9$ER8K(c{dkqp*l>lhp_iX2&a(Vn}^o{1PL&~ey&_t&T{p2Orj?}*LDpqJ^LVh zFpZFj34Rfn^T5moGZ>^4XvCr|BmwezbjR=(ihI%#dH&)`n2BxSZ zr!2j}j)@D_eF0HkT;KdGn1ZCzS52bf2_Wa-9nKm7w0iL=XqWote{S&GZ~9+AU>{eD zjG*q3Ir-v^8m)V)m+s3~_?~~s{5pOgVSdq&f+f|fRmv>1i8e?%UkuSQ?-)U{`JJ)e z@k6bocHj!(HD#|zZI3?7i6H0+#90!!7Xv#E4c_fVya*tz+XUh?5*FtP7`wQ)l8JG= z>0_xjm{V|8@Jy{1Ir4E@zumv%=YD6!qth~m2`B(gSy6~lCam_cTu9Z$fY?s3IMJY2NmrAKMSHo%xzf#6ur4E^jY zQs5zE9_a?M2SKp*LIPu)VVFR9Z4fAkNZBm)I?atujPf ziG+j5MQMQ9fWkoRBA<8P!?KjuUAn6gyn288zn*_DzaE6qVKEA{2Zx9Yu9@l8YZq>g z!i94=)e)#M9*VoFIi}4{pZw@lq8WH=F89F+I9|{MWd-|2a%zlNl6A>Y>-Nv=V`I4ikV-c>)$H~w|p)e|ybW8y_JXr<#`ypJ;2JA4j0pEi-E=u0p8 z$ylw#uEeXKTwPKZURMv&_#lwfWJc3Fh4-P3J>S9xAdmr{5bT=(u5g(2-5^Snw~v2siLrZ<>nVpG;bEeFF)G6@g{gC7Fa_3ML@ z;Nsn-1Ym^;-EshR%~T#$_6cAT(H^1!#nH*GLTzg;k+avOcSLzM4vc7miKzDkTA15SWLD~)WpcW^4NGAISeL`$_(rj z2XCne&3n)rgx`d7%3a3=%AV{%6w<=w&=(i{2v%oh`ymd8iIfxq6A_a|LP3X9gNV|f zqdh%h#<-JKFcF%Z@vm^b1@;CfT6NO1dvG_So4l3H*xjtD=RlE9*PJwuA~oeC>~sR> zgQ4Vs;t2=a6N@`eP-eXveaVvO%=%>#(m`sUUaN9CaBDk^nzf@ZQ<8Wlw;p_63Nl?< zKXNb`+pmxkEUlA=!Y+Ji1_4b3rzNenV)?EMClL3bmYcLm+5+?u#-d`w9#-x4FY!Gh zgFx}6?dnVn_!J~%bUxxw@HrqQq(A77+?%z6H)WUW9`+Uf5RzeZkvFiC6qBQji*7%#XtmOT*I-$qQ}96O7FS5HZZ-v@a-mpdqAYb? zK;DYOjC7paIB794A24(ps0~Cm+pHSz>`T2|K!d+fnp>XC7nQE_Wwcgrq-*^Gn?h|! zngjEecc7lfE6k&0#&S6OSnKS^zH;rfb@I%HO4*@daK=0$6p5;w^Dyk$$f=K>I|RdA z$hGm4n$Xg^Fa&1J!5Zl?1RM+G|1y0zM;1T|oW8kl$Q~K@$vhhBIFfh9zLX5sfP6p% z@&%a?wd-h%Bmooz5X#YWv;b{AI1St;(;V_2hD%ydhmi70XeydXka(QG0I zMPxsjP^u~SeY;h9A2LABpnWS<3C=~Q9@`Hzd6FyV^eWsukuAR!?_mjhpidc{pQO#D$pKv5Dsw@aob5DO4()-kCE{=Zc-cX{j5B%0!8g0KKBKC2 zaXBMkTBDMCvS$)wu`%_co+hz_(IYX6`Sbj5|5kLYqq8$FUJH~l3NY;@9U2-*6gQxR zCP^>Nm_%emqfoguYNA7za>RH&8Hv=1#R2U`QyH-b#R^=*M5?PxxgR zn!WbB_E8c7?!BVnMj*N=5MkdDD<_HA^Ay&1@F$bsO!i7_rm_1cAh#PXMBB1O zoB(hOKOu`ZSZDDpKDsaFmCu(iJh*UP1>P?o;pLUb{&BrXL!oqxF9U?aAhqQ8n;_u! z9#eOECU{82UA^4Yz=Y4hy}dIvT^QPc*Xstlx1OC$opNI1wRcTeVL-IFXKUK?x@pwR zMi7N#lr@gfK#4SSZ~QShrf$S%-+VDnvK1sYmxDlw4AG2I1)@ZIa2@rM=f}&{29G4o zr@{l202M%!XdO{K55JAr^~eHOEsKZ~vQ*&E>+oS*hhQ)cr#Drt=1aU#LHl!pZN;If z6amWTT-yB#x9>2a5?2Uvyb)sWww%SV*@6TZ9IjP|ht<(NhLP9cFjY*%5u3s!;I+9X z<$YfaEeb`jg2M}dybhEB5rU#YmS6xOhOT`dFG8&P>B@BwQL)pR)9p>BV!BMgs4BMA z9D#6_VbAOlGNA;`GLIwWbEuVcDo!j7k}r8zwgv~$-`u2`ux#{NgqZ`UVeN=Y@j7d6 z*l30_M>UVkrfz2Q`M3M^AthxVv!@T+`HbsucR4onmLmshZy-rB!5s{Qk~Z%o7dXBn z89wBRr?zY%>5W2w-Z}6EfF;1l9h976c0dVst`vp9>lnau%P)og1na(9(8~>_$J<;D z^+ZE2GFKvzoI3juK?rP?X#i)KLgL$9AaE`IBLzT%)xd;c4?q`#F@$>Ld3>xC$qPlL zj!uW9wH9=N7VQ%4-JtDAf+u5>;=rLTRFb*ZaPjtM6qgLPTEdOJno*?unk0nPD=%(vE0o=`4D|nrWe{&0ayUFAh4@~ zwW2o+)sNM=3qb&z95E#6Jov1}aO+J^e&0qL^JqJy6lNk-vj}9ZzE;|I8Ohd;ev604 zR58_o4!al1g)+QAA;9fc=Dr>&8P0rKzv`q+5kUam=j%(G4i0*gAlm!5+B#v04nw{) zw-a0~i;kc@ZC9^|_bKXnbQz?8y-3>79#Q$xx#S*n-%hPHw#-7nENO(bjAX|W3q!!A za>>>T#EE?M9u_fapP%6_>{MmK2}d6Bb>aQpFq-wd2pMU$Rj?V@%&H?AF z(xEXt>;Y%d!~wPx8t)BX>290c-CoYoWRe{fcsHPss3~N7aY5efuG@$PU!sJPfe8t= zK(i*1>AW;j;>~>Oui(?!iPkzmK*=hfd2w~3B^#b2-}>f5PUx6a`+yBhFKZI0^L-tx zq{aJsbD;mk^Rqu9=Ma-34K?6s<;0UQ=|am9?7lxZA1KDNqlK<0RUOv}X3~ao+JtC4 z)!di$rTAty1Ge$-_JxCPVz$k#8vseVLu8Z@{_68V#%8-6e& zhmk0kSA{I5bc?YTqydo{CP*nW;AZ;s9f7205_|EpOE-9tFOQCl0T&(&hO3d%XyY|Z zFWwk=?cyu+$$cZYRM^I4*yKA7QDb&1t+56;Zq7Zeon9&{Dbw!eUh9RI;r_w45tCv( za8?5&Vb*)bg;y^KE@(sak=WylkYN;JX+Sq5brnEJh++9AIwUShX-{@<4;|nrh&v?- z;Zimo&}-3q-x3=9^E!ZhKDL8w- zk_^ATi!$}l)3$f9YPa=sgH36=^OX6TNxknLG4!Q3G-KW`12MImN*Ep89+2^xSw2Lj z9+9@gspX-oLTp8zh{1#0I$a zyv3JzgHNRUCjHDS!#~PDBAdGr$}pD^TgOmfQG9)v8rxh#)Z9*`h;52QjcHva6890L z6B}*SlQ}>+E`41?6QD`cB_HPnt70Rczx&O6Lpm_ z66w(bYchcD1I>N#THDCj2-~v<%9sRW?;|=hB>S2+=ewu{xbWy$;1?#=x`4DeL$R>F zrS?iPcVht`qx<^V?dd=?ZTFSW+r16thVPhmVG}9DU}lxD4CG#}K6)8wED@hlG7IPD ziYXUN$9FtDV=;jOLH6(xZ-6daX%iTZ@K%A`qdHDOYMJIpiFrkyM{7h%cKV1DFF}JS zy~dVQhfovObZP|>oA4e;3IcAQzy!U}G}ilOUa^r5eS|AEZ({l{(JZpw+di(?TdZs2aSnBvz*(O*8Y{@gcXcmd61O_WYyj4c9%1a6x-JY!_CTrc`qMY89n z^bh$p-JZp=pQJ!_Tsa4)aje8u7ILqkWfK%dIaR2k3^I)%h+!Px2?I!52&ZeyYwGZ8 zp^`?Ja71HzQ8}~M6KL$jpl`DJE>Bz2*)Nf8kAtFr>O4Q|ui0E7JF@$mu$)i6xxt!1sWlv~{uGP9D#5b86g1*(!u?SSKSZ6C zZ}}NfLCKuXyUe3PH@ZjLuwq{~4s@J7^i69@5QGN3Jq%NL;ljJ%+z&S|zIIQyC5VOm zE#C4)t#EW%un@52w>N(p|F`1b%aw9hg-I>os6n0{qmrxW=Wfc}@&2CZ=&&uj`+251 zwtZm-wYo`9WJoF0$dILwsEr~b=cKG>z$NCw@NCK=;ZN)X9v}A|lT`cICP(cX z#V$5c3>6b=f8$iRTA_KI-}v45h!o7c0FGUdyi!~cZ1CnJdw~IGb7L%fvop5}Rxy-Bw86}kwqh)x%;drN@-^F5R z3R~C)nTZ5v5d+J^$BQV&3PAv#=fRT&gc*>i+cvF%)hDA%20hnL+9+ZHcxcNZc*I!e zSOq|b13-?y?y&&L zOv0$FasNmaCUTt>f3Rb$#HY{C3&q#t`0%%vo=jvmR9}7aSI0$ za@UGkZAq3R$vng|zy3hO-+#A%`7i(Mxr|y<#*6NtiG3c3>0%$Bv6U2&aeBR$*ls>> zAnMIQXC{qk^{hk}t5l|{h_q(NH8+Uno@S>v0Od@^LD!t^`{oH3oUAV220WU4L_UTN ze>Bfk-?Dl3`Pcu@ri)@QJ#z96Pp-)=jp<=>9cP#w#3?{_N_~e5wJ&t!jRu8G^>tMDOHfwKac*z_uoVRMd3YAs*3|aOqE8vZC>rMt<+mf zi!j0t`tMsYa4haSI1d-?6xPZn9m7QAtA;*`4N;(@)d(2#(QSgpk;a8ng5dJ=6w8#< zbXGykEes1YU$W#=f%nb7(iEUrmSV4pfD-d z7Lom|Etl@{>Z^`p6jFmpH@7LyL_90(t83r^T-HR+?8DUMJq)O-r7rFQeU}0ADrbF;sANyY+scBTP4@BC=NqSESZXc64V1 zlX|^=S&e>nwoK+d?Dh(`XfM;VB|jQ|wEZUUAKf}@z<_|6G?I8>--)D+A|^;xB8p6| zYZ1;%d{6Dyes-TA&J<-bt19oIhla>Nbg6+(CQtL6^B^0IMzeazmL^JDb8Nci!8^%| zwW(QciZF2#KmYdo^+%y;s+ALkypJd-1POu(Dx3~!j#S6sy3>@N-Ok#YJe}-prdmRE z>5vdN(UZtQ$=SbnO5tz7#zFyQ%7<=@N`S9%Rt z^6)M5k{Nw2BISmh8v_Ia3^P703LQ1n)@G!3bUCb-NX_)4n6dJ>zmre1ZdMzixY(Fx z16sDNlK7ExST}?GkdfVBq?qhZ_KE!#heHR&UC<&KA?kn-cAuS@!KQswl-I@}7}^?P zr`5%r3W!3r12PkFvbNTv#p~^K9(rDM*d}77%lV6U=H>|4eZF7g!y$177>QrnvHLZY zBg5rIF5LobUQalib9$hNmluCrFfG`TlMMNIwaQ7UIHx@qc!6(84-V+YmF^y7gQn_S zPQfS!iYVx9|RJ{}kpl z0aE8Sm^_n%07SYN3{?vTV@Gp<0AOLK2^*^#Sd#EDwq(a{>=e(GO;oILBrui|o8jPl z*GOs2S4W-~=Xdp~zl}{S%k#Ei;=HVD0>Dm$N)y+TB`o3%N=8A!B?9ZbXD(hydX5a^ zsC#Ej$e9>}L5n&dY1oscX>p0i-U2zgZeD(0TV$APIeHSoMHqv}Vftd?X|fXOLZyxr z+CHa&I%TUdRlqSlxNMg_3xRPU(cy~MR(N_^?s>n~Sa_CgfJtLYryNIJEGlu+1Fk_T zuPEhAtI)>72uG3TNW#SglshVdD@9oPu|%tL_gVxL*1202-k8)J3zqTJp%Cv|+fJ3fcw?jPoQ+mit&L$2wx{$fX=qb70; zcO$vZ;>~$*AtooRN>eUHyq(&6fas2v0vL|54JB6-LM)I<=cz0xBElkEK(~T`ECXQ{ zEil00c3hc`DrsF@8(1DEu?}NlQopkW>rxiebRZPe#MCJ%eUmzc+lzYx%cPOER{ONp z12+;-)&Q$VXLx!fafY6*#ga|*DWiJ~sI8FUrYMnBnCrQj5(`d{wO`Yu=q(N`*$V1`6p?jxY1Q?Bnx!qjQ7yO*S5W9g~T}tGr}6Mc*I};7BHzWds9DelXqWQ zM=V%Co57+#e9{goQV>c-Yw;QwXNhP5LPzc_QlWyU)RT-@k^`e=Gr0b_`zqK$ zhYVbkLsNRwfvudgp5*-re*#6*J?{am#m(XuVHBru7nWGN0K#p+a@iz|H+{uA(3#sSh{^{C7Fb`s-DM%I)=v)#m8YH)P0l-4nOb6uAGMhY{f1#5 z6pkpfc|fSJ719xhbfR=jO2Y8);8a2P1LO^=hEB&k6J}-~xpeh9-rVI1nbaHLbby_N9`{zOi)6CW%Yw;I7)i`1?1{G;5XqfD~TdYVcRjgU!$A=kjO(*sYaY# ztpo3~6&-TKY$IF|%*`Z^)Qb=&m_Wwbhb?)gL(*%Pap)c=x01u2ypArrA=VnMOp0_U zYaKW+&p6gdTL!pSVGDmZt_2VOm~~s^^^?i_Rc-Qlxe>0b*D&#T+$S=J@YYIxwI4G+ zHS;_8gY_~>YbS&bGUUJ#gy>(8aRg9D4_EK-n@grS5`~=6YP1|Z=6Q8 zFvCq2&%yMBj|1o7sl{^FCxBU0E5b&IImSJXG}Ojv%a#F#7(3`MlCGoB?}#aVe=MuK z-+aNVt>cuOi1^rzL;|Of`s~BVVDc*TIb6no5oxH6D_}>!PE|m~O0lz%Ja!PAEODZN zWM-u=&8cC<)YnF1z2=Z$AsCs?>l?%tu@3Rtu<)%QeC93jB{~VCH(sE)F}A+VS%nFw zEx`KuA@&yE@l{gQwa&Ybr!CV0OXCfSf~wg%=%r@opZbQ(t62-CsUi zOTQ)1E!qbOe@}pEm%V=giJTMcbw^0j=G)l9n~EHUB)!n#b=$w83oQX4f#S z2H}|#x1FQ`LEBuUZ6Ro($zi1?!m{cn;+K)&_+lEus7F zBhB%B=jEA{ccR&Gt?6Wf`01kU$YlP?(CO^EHrvncsQSF?pFW6yD=yLSoWMISwDhJG z3=#_fLJcWIcJJeY4fm6FYqZR84AH=gu~H=ol%n&S5s^a-&79WY;)DGIO*o9xl(jD}>=qG%q#fJMpRIM}gKz^!#jp)%bX6I{Ww z2ogthNSR(j@3@>pEt)tBT}u+Er3a-+=OxvHrk)wlbGzBfu2gS)!Ps&KtBsuPK;lL* zu4Q}06)X5ECBsCR9q<|7)U@rhGH2%nEUnq2n6t(w#b( z=-LRsqH%~HsPZDZG-^SFwE;AVi$*bo@yqpG{>t%#JG@EZRYuTq<~)7nDVWB8%|QTS zimRcnx{>B$G9e7p9$FZx84{WSfm;$-c7?L-IH4soFlf4zh8`$XCFMh9^C~w|1yWT&0YW^uLAIrfZKPdFg8C z1Q)nSm5e?@m}rVl(l(POBg6?X6${AE<~Uk%B3sSOG7)=~k1zu zS#qsG_G#T9fmt6K^<>kVK86qkL3G}P-r&=BobRK(e(l|_C+GJ;#>LZs>gz&(g6G6* zJWFt?N$y%bh9t>;>yNWsQOgy4ai<9q!#+STf#|W19snB@h!JXc@>$4&>q!DlC*eLL z1Luh_gavh(B&%{F$^>Z(Q=kFWDm!4bVaWRMRmsWEV`S!(B5Rn6Sk%~#mXQJYl26$y zbTK&OK;ZB~Yvf2P7>TUah7PBIkQgfjG6+9MlQu4j^at-8GtUm?8WucxBqwX6E(4j# zvT~nz54lWO4gpNjZu}QT(9SYBF<`=!*25yJ6ntbq6|nBDp|9+dJ`G3O3CML~s;okp z(v!|H60Nq>4ZNgRU7M6pw3=jmWhWwSqd4BNr`ZaF6pCol$@hI1QNOi z9wid30buCz;bG)zy)vwis>8Rq|8cqfy`pOCpvYXV^J0YYuu(U(A(NCICKVqym5f7} z!V+k8UnXfYs#?UG(G|X8?f63S!p>fv9JkXS=at!l!s#S4h7pENz&#>L0A0np(GCH4 zuC+YnkUdo93vPSS53=F}A%PV|FvmC?i;R?QS|G$?g@$uLdn)1`r^~0wjVkEw6$%A< zMq;&5Op;Ee1%V7SXDFo@is(T0bLZYdvoE`|tm&*S>YUSf^+IWBjNW=`w~h8eH_jV1 zw&BL+Z7Z!ps7*#TtGQB}U$3O3r~IS`TAi+r>?KFhT&WODISSg&F~cILQ^su^*BLTO z1rP@HjhQ;k?ym(|kFB*rMO1gSU$f|A3{04d1c3}#%IK9HHt-!+;)2YdO@5pA_0%O_ zW8c?{=#x7s^O1mVxy4q|n#A2fvO1S?)C~gco`Yx@HfMDT$}um|AfdTU6cGbdxlA|a zHD{&(h92FN@hQr7SRtXMA*V3AyNPMDV`^Q^lAjLoj%(>|C-KROW-hCby0}i_}&OVptUh zWfTPds|bT^{Vn^&TO9BCum6^Imu}kp7?)_z@sNhzwCLfchUQIFx48WT3x@#=bXWs~ z(v;f(jWMdv>S1|R+{hQ}EG?j8&s2luIR*A=YGyp0Qq7f6BHgv_uR;caq`P614dWf5 z*drVSTiD4#i4GqnN4j*oA_9S+WL5_q?Hdw1K<$%BE#A@AN=IG>@4m2<5rQkAOX&^P zq$?wa2j>nWFbHs0I~x;Q2XB6IKP=!`=5ux{4WRAh=Ns=bE8B!gPK0#N|tgduL$ z*BM^O#RbBE9#QnDp!9tlc{%6wjts!~VFb0v<5iLX0Jvr)REaPO324u^ZamqNT6>gPw zA}z^FOC3uJ!(keO&$+_EQl6(8r_OyVIRHCOfIi9kmp!M|W(A*`Zwygr^X zxCFwwm}&7VysYznCfD;qN&{NYAw+6VV$%`=Pf5U`0n^!uIr#OqBKe7j?O3^k`QbDj zmg@CO#LZ8*Ab>94LWvTfN~D5 z`3$-R)OQ`#aX*Za8S@+c^`dJq%-Ozrk5+Bdb9%&R#y)MRj-U9r1l2D|^Z z-ix6*KAM}K+ID-~v6ppS2Bo80rSZn+n z*;BDs0IHjG1SHMG35DK$% z0P1S5PKzZLid>EvSJEV|>%Qd|IICyv8psEq86-kvh~=TKdX|Y$R#;v^XfQ-eaW^X~ zDU@l?tp!WYwIHuFBBQ&k4*nYO7Gtqdd<>DU#74);)ryz~P-b|#^0;BgSGfi{xTZ6e z2`Ba8d5H9RLg(9@ip@b#^^ne@B{OISwx^y=BIOM&N(R7+xQf8=$~)b+HMoQ1N;3$P zj4|^KBzL4m;y{nStA8HmQm^#Q{JQ$F?XPZ$-~RY=I2?cTq2!K^c}U?xAOM#m1jmJZ zLm96&WyWC*TP0NXl(6VPy0ru>GoT7H&i>%BQHKCma$SlTBgJjcn^KXlLjVhsolREM zSYol3Q<*12kq#l$kv$naxc~zPAR`o*8p;$@7V9FMBF8{TRHDExs46{m%dXd~EDQ7ZUrnE>ZPqLqOS4Ff3(etyW)DSq`FUUKm< zg1lk1MT|1B_(~?_phhM-rtQj>jWgo-B;44K15??@$A_Vyz#tQCRH3F1(SuSnC*y4T zp)N9=HY*CX;(jmVUY95ISYoj*TkMtD@cC{2(rFK=QYCn+iKo&6u!XzCWqu2h4+GnP zRjyyU@lE$(*np`(mPU<QAGM1B^=&pJkzQJCG*cD&v!IR6gNBkoryT0XxIvGL?ro zj_tQbgY-p@My2T{OL|d!NDV=F9aM!v2}wGeDCa80L$;G|h%h7e1g43m0H{b)WgZcq zJiQ4{=3)eg+2AF9KTr~AGg?Z^W)}F~0uA%TipU#UY4uTFNku|G;2t1l5((#0lo>!j z#ecE2bLrKvLBL{&k9%5-4ZNe`Ns^yi0GA|S1@WhOm?xwU)R0;Jiq3j|JC>FzwNs!FqmF?BAP) zdHP0!2y-9G5D&9x7*>S>lMMmajY=`PYF8{sNod$kw2mtVm=n=KbjKKt431r-0jUO# z0b7FTSP4i}5o8Klh}Ke9OA^5VqfnYX!ljN{g#}GpA2TZ>IghT`Jt+K^%V{@l+K^nK zOU-Vl8U=p2>6x7b6ig}rZ({2XEsK%S5SuLdRzCe%5DBJpKCFRAz#a*}WKPf#>!c$F zF5yPywza&W#LpcLANR8U+-uFlNIwI449(OY3F{}^aSxL-=LePM?dTB2w7tn43hr@Q zL!q7ebOL8D{doM9bAAlmoQF`6^^{U6X2b@N!iD4u9RZ}6siC0|vJ^Om50B&>yq0f^ z=o6<>A3n(M`2a>e3;4I-_ayDcFpg{cI!`X_GtQK_mE^g{K$e;8E^$jY&*9Q2r{U|c zL+PjAN=VR$qdtqkWh{15o=YKJUtvTtGALh~rfHaR0gKL98yTwP2yU+#rj6a%OTL6d z1;_5NY{Atwnc@?9;ojW4n1qS~&?T`kBk_dYEeEG}acK&njY!2B+;VN%MYptQk&&iR z1*ih@(G(*?6BlG1&c{QF3ty7BH-l^{jMb~fjb@Rl99wiwy}Gb_&Dp4Sgz&nx+k@_@ zOk0N0-DbAR;G)UwJaCuuk9#nhmp+>m z4PrJ~2nmBthEO4}W#ty-AeD(~4R%f}a8DPpbzMYDsdC`K2so`R((w#f4o936N1cVX zAmRq`iK!A9t=dMZjI8;DvR$m5)RBdB^Fc|nds!ibPW&!04_r6;Nqq;6Pc2DdM9-0W{1 zC{IT8GQZh2Tfma1^dd8Y#2^Wqkjzj(a#{;Ei-R3xcW^s>+W<{KvcG|b3yj^y2`e0! zVsL4kIFxr#P{o|sVHr4Iw=`+t5!JYgvM{UbeBxbZ6nu8chTdDaT7Kc^CQ_~4ifjqAWD!=0Oq%^M64V7C^K&VF1q^xcsD)H_0b5HBktNAu?pvhN>G8bJ^Cav z%N);VT|ty6N{G7BS`!pC#CjI#N}(*MftMctQ6?y{*b{mR1@-V-qUuH{MI|h7uAw&F zK;T}aGZYn`SE=-s=%ctcwi%%O=^)u`>Y&F%U8p%0Fa>L_sWUgW<3WfvBJEt#M4F6J zk&>3kayE>w6WhD5)ka4oGM=SUboLODVpR%qwR$}%0^pelA?s20PVVx)3=1IZ)=mi+ zduR?zK!dnS-X+}rRvx}>CCxgNqT(DI>QaoCN#&>lqo9^UzMDpek2Vc&CfJO} z>}4?ZG|2L1>`55`clk?fYa46xj*uo|f!2^|M@RfaqH`2#;oChxkAa?XRsa_Snai`u!8y5BHaMh!dlPfjZt@9$83G09L`R3ry!@S)^;Y*vP7ge^zHT8_j%hiX6m)B zQRg%A-ZMahhJ-s>pegF4NCX~hEMU!|KFCqd8Zc$24%Rggf=gM{aNQEdSLbFf$7IBU z-A1o-OWyQM-|>Yn+slZ9ua9}}Tcbql0C}r>7!cG72n308NjV}4&L^zN*Ub}wY7!*N zg&?bU8e8YJSclmuaunSLt{7N4DTO!%3T*?eyK5ZDAc8d~5BnTPN1OJB*a-)Nk+I0y zfzD|`K&6j<0jTM*BCArgsf8SSP5iPN`88 z_(*n=+KQXT&v>?BJVjt6()Vu9(VdUcZRTMP69WVudP>x19{YqNI1hfaV4WM*`mDH? z=|ZOn%k5U;`EXzK60Y|SvuSH1ZvRs&1+1x(^r$R#9(g=>IO`r?8OTiK-14$~oC&ld zLJr^PiR5yz&UUf}Q>_?+bhh{MY=~^{}goh|2 zbap(tea~w;)#@JJ7avINK_qu!Uphlq(_oER5%GegH60yTRI+uW4py{?8D2Ei6S9#}qee%G z*rq==%zbh5CZizR`%K9;WQ`cTeRa$PA9-6uG=lRn(+iirk5xyslLV(>1LO&wW zIO|@f#(t9*OsNJVsOb{n1l0g%+%uaI_;|Tmc~QrP3(#RZ(iz~SjttDGhvnet0f_N4B%r#Exl#v@Rv701|*;CKYTG-SDQT*f}%hKpq-!^K?}$MLvm+ zhx|Bn(0w;(B;~?BRKWT}gk<)PKyxv;ca+O+8>_3gFJLdOzKoi+Vb}Iev510gcQ0l< zC`EqKFw1VdjDfb}Xgb-%`iM>Nh77S>^n{fGWlm6G4{pm$mvqVU0K+pI zVoHV3NETly)OY5>+H2(|&NR$|CB{@7D=HaiM)m~}+&%?b8(B>~lRSEdcI0z4?H6Ul zlz|BO%#hTM^z<7!E9~=XP+lNMH5?s#2S^+L}wt z-dT5=4rLPt!Bh;*kVj|s?5=lPhfb;5or19(+P-7e2zen_#&FgQ6UcU$-U)g`FfPM$ z7$4&S>roLg#>|!=iAUh;sz2e+(S;$iB9c%|rTbST&(_yT$e~V2-vs~;o}B=I0w4gU z^auZ^=wA8I$xWJ&m5qC^#gmtN7={Xlj2bjr)6}$pv{97sjTxnB8-irDI58mVq|8I8 zr7ESAu|WgE&@$*!Q-JJLK#LygP(Vhmm=GI9ceMi@5-Y12jK^^hST_Jm$0Co1kh!0> zF@5KPt>rGTbm{V)%SkM5Rc4Z9yD8+BNoxy?N@5ZMv7>Vj$}pHg*EXYHMz&POMjA$l zwG}r|h*Zcrqo@fTrM9XYW9=%$WNth-mz_haIH`8UVnHe@NJ$r2l=x8}u*b(rn2>-a zC$b<5bh3%aO^ucdYglT6Ey5XKlD4JU+yB=u4_C-yNh&1NXwv`yfRF)E6jnMQh_Yiv z55p0Ax7h|kfIfW*A#^Ar?6zEvWUi<|&9hqI*}apZ#KpfFOA4Vq-dzT)e0aUwnC<=X zqi1MZIl>VgHR@M9iAEcGD95gs+*pe!YNZ5&S_?x<^s&fzqZG_EH3tN+x07zdt4W{0 zuYlD8Cp=17GvW$s<}xX~99NXMMG6G&H2mBylPtvqi6oOIktqX+ZloMi-W@qQQ@_m{ z2o_TN(mfk2wUS$Bt{no*dRnDyI2F=yjmxd>(=t>>g|r=~e1b5{)`;@fH1vY^wrsv* zJFP2%I=B|yPEy$&Ugz1d#j`bfG89WsZqjrS+;p-bWre(EOvvfiN3UTqCeedu@&)1z z7b#ZAq&oH=dFA;*dI(K#Ya+UfDGWfOv-1L;z<#MvB4a7CpFoqUKbKG$D7@I*$ zu0g80y-*&#$q@;PVoz41RUD}FXoX;B&$N;SYq8o|s)+o6;;A_0K+8kmE5;U)!5+1e zL$6AMfLJJ;7uDISI^&Y_rIX7VBExSsF)n4q^zufQrP-RbND$p|#1bQTcgy|AM$30D zt=*>r2QDBVGkmRF+0N`DFq#(B6b!X0g2X{rVo%7QSq@Bu%#%S>-Bz4>#yId zIiAi(jya#m4h}%hNai35PL>#;UC9+a8dEVb;W7`!Q&y!HQBSxkPnJrJ<5AR@imyfA*;j~TS5tmMkoe0 zvpkT%Zl@B(cZkYKe;^=JjSWrDOHA!}XZ3CU*2m|%90f*-4ZrXs#@jWM_2W1R;~mnn z3P36(9T6#PV}9|E<+q+Mrgv%e?t4@!efpl`3k-5BJPSD@r2ctEs~jP|coi)OKuj}iEiM{}O7=k$Xr1wNy4EsL>6mla#6Vi;p-|VP^$tXo zx4-Ky|EN-^;`_jh|8$sa>9^cAnCaxgFN)hDSLSuc+me zV)%~H=TkG3r3<``UQ{+eb+v5adA1;W6Hgw%!49!E0CXvf6gE=rfAyRG>-p#Iv$_`u z(o-m(Es6X^&prTy=oQzBZ|FJe+CfPWpmU`^KAgU$0n5p!YH&M zonnU$ZggL4AE_pTh6eWxEf_SU1Ds^c=2}6u4=(LgZsr3KG@li~JJ&=;wD=pru8aJ7mhc9MMO8*f`ol#9wW zx3tkL_vO@>WTq_0%k1@yL#`Hs9ZE>x9z0`-0$Y|I-6Sht(<&08k*u=@OLl z{i5l!dAqPItF%2`$0gUWk)^$7PMo#sR6Co2$xJWOHKDbSDxk?&+pWd%~5tCbV6X-}$LJ1&7h=HBGttNHAcK_&u^^Mz)x znRgCu#di65gg&~GZMBYBLxSuw+!@O=u8>!pPIw75R)kX85Sf)e;zs0LH=9yVfvxMR z)}=a1ix{cv6H-dd7#k@@Lk5gOLvq-T3GJdGTe6crU6j?zDtu$~n73OMpobbpqzlLE zT|u_A8qSEhy`&DE2PJg>YzSV0&v zZNB3AhFDUt?LwB?i?SjyrnNH0BvybZKvOj(k~mhN z)`lbGnB}XKFxv>z<(3F9?coF4HQOM|c_>VwwI1bLLXjz#>1rjN*mAK^lZ;WgMpt1k zCNlvA8|a|BhZODRU6Y)>2e@Livh!eEs7zEKt&zDvM#~%zAB}rm%d{3H(z9p*>v7*) z++=w<@X&I514yg2EjDL8J8!ilh#Y#1v=|9lp}@8SgNQW~7bByFYS9}^EVqD75F%kh z2W3$iac%2k_$ps?F^(uiVFHj=VBQb0$=vO%v)^{^J#F-Q^L3DYjwtOCK_EroCFsK{ z5;V|Uu8q1vgqCkiP-|%s91V=KE51M8)iL$u<@xgV98>2t`q_TzquPo3jBF=CW%-lK zER&WXhd7O)C-d;u_8`n*>dt8f(rzO?69GW)F#>C^KrtTO5N7P~ zsnbNj$2(-n)e~5`il9xCc3IM(AkERczw8jgB~&eIl@uLv$kS1{Ce?!ELw&{0Obr%g zH|b9Pe0{}ZdNGgl(cX5T2lY&aT_E>{BwU@&+Gzu-i#R*C9*y3H*s; zH##hx&;wIAlvj+b(PIRPSIG7r#I}-t=DJC}PK$em?`v;z4J_XN%Me~f!9n4K_lXPTo>V0 zE=c4?93sj&=_+0wG17uGgjrM1(gB%T5q(PgO2;Fu7%>)nfJz-22vW+5HntKaN_TEx zR~*B)t}b%&9G|<_Ve}&kJlW)74~yaRFg~=}WJ~@X^XkfML#}BILX|X4$N`0)OAf-+ zbW*7oyh9$d!sQH4c7hY)loAz%aZX|_cIvo=SKql;$J8E+v?qHASFtnK@+f3y44|aJbW&&HW}}v;4cV}aSLE3y;G=Rxv9LAoi;O|dtZ#d@ zJV&`@Xms<8DpdlM!q8<$kT5?;V$l~^*7a0~RFyih=rUO`*^vPiLYTn%#9(E>{dE?` z&Bl9Q3?B}K8n^xLWvaZ?W)6?9A3xr%dy$^e->eBACVZG-y?#}dw11=c)We_vNMf?# zdDG{g^O){m!cXq0AAr3ZM4Aa0S$4DTnF@`!WR+Mvrk6rxQGjg-F3LPjhHmr14MjSY zIIG#HQKTf29kEfSXkQAPwAzz~X7a46N%VMISvD>o^5Wh)(TGG4dqQ+T>z$=AFaFd9 z?2+deS0bFVrsxo|qK$>H1un-%-<}gLcBOs<$AYPc`Sc8r- zMTsgqJK=$nk}*LlO3oRq2?z7Kkz+%@@+j?r!GTHTSXPP@kdl1&1Qx|QF_BU*aA`-q za+F~*l*=tWIc6gwXkRx(DJPdJ!QurB+A^I%%rMQZf>z{gkRd(32;6dcmib*uwY z$?CfLrN9JM)P|*YT+m>C*nprw2t1EsfvC%kj{^!jANGtbAHub!CoNJ1jUkCBfgA@%cm46wVw47GDkcKtOwMb#Vy81{ zf*Aer>eKNoR9qxs-S0~^1a1uGHIUo1h1bB`0_sVv!td>XDyr|AbrljEU*i4Wmc8=w z@#U}k>Yb5 z3qrbgdH_oe*LEW#47}Ja!AL4ankq#RTYQ(E%2{=1M;>H$2LM;3shBAZ(0~9Udv6`( zp^gCPRt;&G$|GgJ>mEj(75Kv8MO5T3$SY*{C1*B7FXwAE;H(V~)e0J5+kq{K7vUd~8$z7` zYA%*2)Wsu}p*Tb?>6A``SY}4QD;Z8Twx-pok_NI^@u47>4n!)Yhz#`*0hv(tbl&duAM4Q_}M|^t?vnmiK z7dh9^&m$<%nCJ=Dr9FuXE{t$(rl<7KE)9xP#w?^elsHl#)Hvw96Dq8htYGvD`sMTs z6i31&hBMOApOVrlVZVo=a5z1^x;Fu6t_~yE#Ar-r29&Xyc#$41?13k2$^F7`jzPo% z&8z3n-}L2w`2SN9>yU_$X>kDib zFj92p*#IzUK7#`P+%Wc7=Kx)|-RC0Dl~%^aK!Xs1;LFLYZ>E3zO!n&^{JrzV`420X zOLz5%?wVScPk5Me_`^r?%8QGj_GmA^$@t&^yLc-^F)J?B203)~ly<}V>|s-f6skJ_ zX@upX2&rawT9+~h7$bEH0Hw-;15aK8*wumann}J1)iPP4$_VCKOb@9%Os&reA9G=_ zvNLs{G(bw`=e)9(tf-UqY*vQ`eL?|)MT7#L)3~0MW_czB8DH4pF;J7sw5zpgb1X+} zU-vbQmxqQd8)L|_wQ-ZOXEcU-tQ9>v1d!zRyj4b|2|Qai0%f06c0BFoj*}Rvco;wa zq5gRI`(1H=9?L9YaK&;>RQig$zKF_PgDVKRFs8kq=6Q8@tnu{^f9LvA-#FfX($h*X ziovT+@a^o^7+fFRIW7P|Krj#p{wjxGegCc3BcqGaWR8*5dQ75v^0eh7X%eVX84;!= zv>hslI=Jw)JZD6M!AmiD)2qLq>UfFr#>^u3NeIBEYDt>o#45Cja*P~&GFZ^$bM|2#L>CxJ z7Px$A7jG0M`C&~0Bv8gh@i?0}m{3*#K1HoT%+XOg5S*rHgC{{vSoZXD9T2|*K@%xY z`Aj}}pYR3g6iPeiLA0U54Nh1W+lfJEj8g53ysG@n-dLGvGt;Xq{rWrkVjbL$7;p%L z0Puv8ID!XoFR$bB_wC3na@!c5%Rc)|ri;F5c|G(ohxH9QtTiW}r1VNI(Wl$G5YzGQ3!CqlW+Dk?-8zh9P zkT`6C-0JpBlc2aVk8_9aErN@M9kyN2(pc$uIeR1kQ7sMQIyw0c33sH-bDj>*jP%V{ zxhQ6FW@?8Yrq-k+YvI)}Gl&k*fLlHba=Y{Uj1q>W2^%+sypS?a!Ql7@yGSnxFHh{7ip( zOmGJcyFA;3n1J*(PiG19Dj$0LlJ(bmn0N1C|5FT>k=b!X0Iw%>7|XC4I)xA(h5@d^ z{?6epOve`X;}EPy#tvC`+*yxDGn7e#$XGO#7&u)EK*Ux1J8GoZ)z9IaW5hi6EtA%I zkJ1@OPMrhBYDEz>*s*RZ&e|d;{^cWsrvSv^Gm$B}sUot*LKjPQ!@nq4Y1H7I0s|tK z!hUstfmmhj=-XNcsT^?=srFoN6Uh1nZ-dQ2mu+2@Y3#1;Zy|(nC|o8TAVd)W zlL~=U>u4=1dLY$&< z{x$zzy#VSz*Y_f#9O2@&T`p_yi@P5_v;&M7eMM1*|wm!fZxGP4^B%ICT7%DH$ z#SY)C(~rcKGDLX8%~74bmNH_bzJY`Hj!c<~<=Xg*0%vz{2VF}RmO0pAJ%%S#cF=Ij zWojKiK7aM__G(=0oRFL+hQam5i43mwfj`3?E2Z2r^E>DJtxxM?ew+94 zb!l{rEB zyYu@6xA!lmJmLH{djjCN3#6u<$i+J+*HEaF6fjatixLxRHGA~yR!%CjW@xj5EQZL& zMBG(DONSDULuHscOhwTm@Nc(&UjHmoEY=l2HNn$E@#M(*M5e0poY61WUwD3rMEyLj zW!5WG+)VrZ!9>|3H2+8=#vWL!*49~Ka)^g*6Xq&B&6rh?)iD>#NnuQu-LbYkpm2qW zA|q|^D9Z{zn^7RIvy2(LuIQA3r>rr~F@QqVRzxxOS}MVY6f-N7pwW>v&j(1j2cwz` z$zY#r)rJW`D=ab_EiR*0t(xSkx^`o5Ano<6h;DJfA)_c5bFo+r6(QqnHb-IreUd||Mu_>0N^xDuatc`eDij(TthbX5ai>J6^#4P~k345e=+9{_`hH5#KG|GcXhT(NiSL2WALiWnEI!TqhnXT(} zbWDGp`>MtVxRTt}pkY!wgeBF-w(887C$^>j>Pkynd5R93Ik0k96+e(uY7(- z*5oj~bhnY}Fa>~L~*`Lci z3~_9pF_o^CJw_H%&T$O^9ue#1J$Y-C+F7V+vtbpoqq|%{_>zZtRYhX5taC{&R#-Gg zl5h|gNvKP`Yn)XM{W;h%ivU!PMU1eu$C*~oo@@}@8>@!zAJ++Hn91#C7Ssb*pha1` zq^S#lj}IY^?_h}7RR66GpHXm&`CPHr^s#wb6^DaKv!oAJI2WM?nJPsW#4C%rsD%HZ zUY-$AEa{R(BI6)9sk5z}cJ$_#yDiKf8f!D))VOB%JD3y_gmUl)>~#YMfRSZOC;>32 z!yj4JkRCN;q^fIOU(ds??D?VHeEPCg7j<;pPtB{GKYkEK&$Ew^$a;yzE=YE&!4pKjbBHYRThDpSjW#%QNZ)fqhje5S>%Es} zry+;K+=ha|h*9(ilrxh+Coi7i5i?4lt@fu zUzlgClmjuXn{KjTw+=T?G^^DysYk!e+%k5IDBI_^{NO~XRGo;O1E37{V@Bz9st9IO;lh8se6jg<-7%7-*7qKtj``5_x(UB@q4>6 z-f!N#vCHi2HJp*_x$+O{5_@m2=PBoYK0QlAR0px%(Fj5K577~?Yr`|yqtEzx5q(I?VY)MEIM57YpwIWjLBsCPNs}l)QwZa`BWW`h_ z7M!JW#zdw_P$B99AWdmeS~#NW0v8%7{XAxIVGh~UO0?W_Zf!8T=*MA(3p%y5!6LjV zsfe^|YMEGBCTD}DLLTX(8QLuldulWU)NT`QG0J)f-Lbi^D2$tX>R{IGKJK(7iAX%)p&E4vuf0YxHZmhgW)j4t+ zr_qTyoCLLSjrNVj(7vVZl0yY+o&ynDcQY%;V6oJ@0lZjTr;&HqHmKI zNIC|KPfZPDw{A>iF~5u8p^}RQLTwQ0j#=jjrE#m#{K-?32cLv`d3HF&)VLU%Dn~EH z^yRI8u+I{Tg2t^EecSx=c*E_q&bE$QNC=AtEngfKbCzqlM6tV}T{yD~>^0{y zP^1z=&)J4O>C6{^}pgOWCs8id3r2RIdLTLG~&r51T(aOM=1^#LVH zQbNS6sXdN0RTT2uN4g3M7coiNu`#0dfzA4zv%vJE7UE-qc@0t+vj7ao!e zy_&2RqMQkU3Y8HH1_qotQc6&y04>&=a>T~Djzab{@{po@U_6@0ZQ`_3PJ<2Vdz5g{ z0|hg}0achD#m)dMZ-_Us{8k_M%1K#8(lO=*++QEPA6LfI!99F8UP57j;VH6%U^#`mpWc5<2+9-7>y}e3TB*gfatY7W`yA0XFp-whYFf@frSDrHJEvY~jn^D{l#) z7hg%gG!b%95!!nx&Bk{bXDw;o6lcjf-k<;eb@M=8yA{ul4}W>_?_OH44KA(mQe8aC zy|o^UpKpJQ)%S=ms?x-0Yk_Fbz^~|%6HZBHea`7|F1_`jeH@&%4$wiNHV<<6k2^2n z(X1VNt&kZak6Xoz^Yk3hnVi8G9lFs}C5KwQG&ziN%ctNG~VvfxZ% z!(a)4GLcB@o0EA;@H{v9$`H$(#<^>(6FVKJOI^HD8zO*wmbOQ4%=LF^1gJHrz{MKs zicvM>O(W^~SS&|$e%PAm9M^yjqSfiuUcJhF2dQ6hBzQAQh$_wGr*m(}tkJNy>2v=$ z@;df|^O6{w>*(7*-+yC)#8R(3QGeV%kFwdvQ0Gi8Nn&*~EwvaGYcbyrJPg zNVxlX9*&Wdb7JxIQp3ezvqlDt8FbItH(Arn9uG4n<`^s>&G{%Hz@vy^x`7a#s&pJv zTN`byN(y)*pBA1hBCz9XA5tQVlUb~)$okaUwm7k9z~D*YPWkQ*m25wmB#3)IXDTmqpLks{bq&#g=>X?;%J^FiFnTyD(|0KZl7y<`% z(m<6Kj8uknv8noa>10wUjM4~jB&FU-4T{5#s=?&*vYV5V4i~2;#?UZBGAFPJER}DW zWtG*PO0#kIRKo=wJ1Q;QjR&J-@B%>}nH-vFq9L*ui>=C=^UXRkf;NRWOJXv@+k?rX z7;m)_1tVkm89-PF!IA8M>bK$R5ccB}kXd{t7EU~{Q$bZj<_J>2D06i5>gvavFbnjF zBAU(b_eN3kv%GrhxO`qOcdx%};-mZEU$Bx#DUJ>w`jxWwgXQ%2yP97)|J*~KKoI1S zaB^_XAH6?V^sIk0WY!Up2XXY{C}=SQypH6HoZvQa3hLE6GT4WwUKX)smu@j|yAWBr zyBCJZ$HsZl>A>>Pq#18%xD&UJaQHwx);P_U5bs=If~%{5lvSs_7$UGK#e%hGh6(~D ztkbxmEU9B38n*5sLn}-Ti^)jo^%V#Tuz`SrtGT9|8v0-mVZ@9Wjv&dtRiaV3s;gfA zo5h~YTFY=pixn~kKvJI@dt^Y}9sMjZ<>qr6tJkI?%kkcZFuPbexsQ9+0mNRy=V_s5 zkIoFL*I)+pDhK5K03|@-KhW+Up7&k8>)zb*w$}r^YmJ=U;ohS*HCC^1tY-^U zhS-NHx-7ULvH)qKcn&clt1=R3HB=UO4v!^HEg>jbfe6P4DJzXk9$PcT{EBd53&4%` z3{+ADb&4lcl{uy6)3gCpUpp!jvXlj<1Bs$(GRJ!`7Q~teSNh~uXslgIrwk_Na2vbl z2gu8EIqx{&(XMSk7VB6t6u3@#U1TF*(?Ib|mYg#xbw)*f?37h2Qj~I>6|`H<%#ixQ zkvnpCyDx>WxCN#pfvV}GL!+Z5rEwNqJH3uR%($gtc{PB#=q0A`POV?PDoK- z%iq0>E=yyIrDCGSm;cwdw!Cll?@h0sOA@d6gt%Vi&5a^!MZlG|Vmn69fTbg8j%CO9 zfxJkylVJyoka8*vSlFec-NCa$0!QXI=s?QqEZ!+DUi)G$)3JKQ>85K(@rYC1%y}-M z*#(fnQ5gqPGj9+1dt4tkeMw3cI5X?&);A3V7->p%h~Th3nlyW4caBYjpe#;#;=~=* zU8+VvHkN0=B>+?rGm>3keJfZQb4+I;b0J(le>(iNnSa}SC*EN7M=~wOW#opY@J+09 zbKJbvSQfpq)@citjt;Du2=-2oHm_UWzr|k{du!iuK#YEO-+GMK>6?RTnP2~kF`-;& zlGGbr`A+zUeb2i2G~_N8YCNPZ5IxMWyS6MmkO2w0iw8JWume>;OQm~W}lrcvh zpl+zUe<3K|q zd%&oD5Fv{qK1Qp*{hG`3<+joR%&!dg(|=_2{Q?YwxQ)v|p1CdM|ne$?XjTVM9!wdAdQ z$}rk!C@qNw%EpWib72(^U+AR>O+#slgLJ&a>YXuqP)Kxjt~v$ifP59Ah`9a0-Q><# zlDr^b*1apE5#m)@r6h)_GMlyH2thHOggdyS+BajCJAHUdMvdVoHd5cPQJYgI)a1kj zJ~5{SM`@VGTv8{CvDeZY(VUJ!hoKK0wAf_sHLOdr(-yM%2x&CL+{CVyk9vEdHaRp(xvUq5-X zJ=}BpBS)@h@kgHVR-P^CrE!k*$bbXj(~{xnrlT}KKqv~L{}Q;@hejR9dIt89t$Ipg z&?k*vmQf~KHm0dDKb9cGF>T8%a=)Y%Ty&0OE%;E$vPcezuCt6yt5sUjbVYpt1U}Ot zl}00|!-?p-nRkKWc2bdP@wlSv@J~N0EW5=4?x{KBx!+I%4)I0>%rqo zYtNC{7{C0uG8|m~W~Rsda`(Tc$G>V+=VyGgt2D5x4|iLZq$uZY&s7^oHgbl9GLiyl zu|hkCwUTB=x;bejDVuCb5<88Qw>k7e-Kf3pRPrf1{Y9EV;SCR-&zfZAiBmA)xtE@o z@&s{<3PjOKb;?&HR9E7h!U@b%Ze=4uLV*npRh~S(JJd_!m{C<&djXwKbes&-QCm*q zy*5aI?h3Up&t?Fk^_oqO=0I7|oT@sJ`Zx67-25$6b=`mPh#Nfc^?30+e4C&9{POvo z`7%EfvhI7~5Ic<`wH^8rZmH0-Zk&$`*!r!^z$SAhtFRs9T^qWelQ)mOSg9h zdfw<}IW9%96YR@Ef-U_$S-d=5Yod$C;yd#^DVX?TxqFWC9h)#P++oq(o`pY21*` zX#`a{>pOz3wMH-AR`Pjt%rlvw&cI>JdQ~Q(WGc;g%RXw`$q5#?0n3vh%5}+lO?jf) z!|OFXw7)-wJEqY{2q0lWy9aD(7b!go$g;!3Kt)BN1r<)zbW2Hz6DH^#U=W4+fTyom z^?i6b2~j~OX#+Uc(H^BPGW%!~B6KK9$y%$&jCZHY-Ud8)r+w9!8VXDj6Erx%b(mR1 zJK`iJpzRV>qY&=_giJ$@MU@h-TW9(KX?q^!|7hZslIU2w62&zi4iNP%QV%8E+_`J3 zQ@2;jMTNHDLj>m{5$j|$*&B#C7|o({hq5_kK4oug7IbdKh0E&WW8>nurFN*je#rCh zIKA-flj=!TWdTu)7$$gb>+}PXzh22pk~Z$OPB8%>hj5Wq7q#y=y~II-vs4qxLD2YW zfv{kKkDYh+D{~7opFMY(MyFEKm|0cVIMpjQq#6KVcK|vQ%c5MTU3pTG=RwN~JQ9{R z%gmp>>cnQo>a1(z{G3~B(4}ap9NZA?> zQEjEzW)#40z6ENx{*|t~ps!CW9?=@#6J=F7AihnDPkdwYnGcdB4aUtj*dO*<7Ki&` zc^&KWH|~zB=X6}p=1u;w^f)c4{d}4+3t)qi%;i%UuA*VTnu+;}R{fnYGD{EZn#;Aj zT*aGP6Rf7A)zpOGc8(~pTMTlLi14z4?^li@G|xJFdX zM1iny1UQb`6l|!7JEX;h25SRn509M?u2ENjhmVcHiTx@irgq0Y3BE`yPt!`Vq3h9d z_rd5Ud@NSEF?-&WgEi8x+(IO!{rq%ZGd zU%Kjr8zy&d_qwG6dR4eX3HcJDm*Dv=L zt*3B;Re++M@9*@4XI##vFRytU-VNNtuV2ldovbf(_(#SWy6o-I#~b-7Yul9PAmA4n zUoxfgFnms4iXq48VR=}uAQc2eXSHrZPKBwIC9X;db)K9Jtb;$f)Ie0yToJ0)i~*u` zKH1D3P);_j#mbdYdZ3S^5?BNr7Xn5(a&lRH1VrT8dZv0rE-Tx#NiDXRAj7mgjnYawNb!bys()kp8{VCJpJu-6 z*L^J48k7%MMb*FR-KyDKYtrM@k4UaR zc>W>NChgV2W&)rKvqgE+(g<-R!LJoU2>T0L;C{}#;(*Mjw=qa8pK~8=&lkhcwM@5| zG{3i%um^9d-mRJ3bwbRgt?Ta}+zsO(c4|eZa=K%K9SsyS&V!QxRyu7dHejj&7Gx1o z&;pWjr0l?Y7KwEXK>}a_V!=iz(vniQwutSici8!8v`zw(YT-KA%}pEZ`h+VIPCL`2%zmj~*id3Xd$g_Y9M8RTo46&B?dwB%ylGy3R>cGwzT5 zFEBFekL0Z;*CJ0Y7Er5ZBN$K$zYJ24A}RpjyLdAO1d31aW`yQ0j%2=UrpG8BzYiE> zK|o`GP(PT|4rWeGn(vXyg^-~5Z3hHY#1PA3Eg!~gm=l|z1*%_Fpn1sm0YcDmW3nfw zX}MnC?xtTp%8!Gma{2P}c-1$n(<#q?dE364r}`uH%iGjq*XIT-q1*2IA@#s~+xpZB zFv!NsxptymjisbWA;?ZG2#o0hK@k-4MgU?j`J^ZM7AaBPok&gYKf?Xtx#~RWn(Evq z>!7L-K=vdjy)izwvNEL*W42*L(ZshK2JYwgIUC;p`2YU7*sLap4>g~ZDapx^VDBbd zH@@G4L{l5$TiN!~+s2F=gNZJUSZh}R!UrPS&tw^_+z!_@XO75 z)|XmykY{tgIu}!|akYM47uRrHq~n4N@e~htF9%<~qkjI7z=Suy_E$u`Rl==P=j0} z7L{5R3tpfqm9ipJkmlm2yd>so-~>WT5;_Kts=%;al(D^!q|2n*%#@O(Fo3$oXIPY} z5!-8$Zr0$=<8QO{Opb8+c#3-o@B(I19VkdX(vUy+TBfllSB4IeaC@$vMpQ_tg~Q?L zoFEL=o!$fjMnNJuL<{f)h7vgG(f1($b1K8PuF2@8c4gv3Ks#T#Y_<<`jc9u4WE>$) z5HPvL$4y#rgRLfelQQFCO^gSZFy*LPXtX@PjrT9Z7TYlt{Ws6-hWGEIp4zTy7cKEH zi~}r$LDH6>$0e5__728xu>8rEp(Zs7Ejj=UYqXe}(m~M{fE)@2swEqPUHqmTA1upz z&wtw2XZxtM^><*obo@;MPP{&k=R9wP>Jtxh2pLvNsW;dA&Y$hMchU(tn%N+Q9L|`t z*RI1fi9SGAq>S@5_No;94j0_gOqMdVM(=!HSA1nzcagoWj2S%*_>7p&l<1qBr|8R* zl4c2!T_&L_pjgnMJ6w_NK302&@@%O{5So1zE~~oecnC2_>Se{xu>_TjaqYO z%w@>-v+m6YV82V>@FRqRi~9rf_L4e!x8P%^39?Mga_~PeuGs7`Yq9GcwHLZEc3}4v zSJa!6qW(kf0shG`_f5Z*F%gE*sO!T^7q5qvVQ+baE+tBmrCeed*<(*mpvK4sWs(}R(8%G*TuMz}uf5Kl zFQje*k?%ZAsM0-v1yos$8;Pl)PtZuJK&(`15s6l#wZ=wi%G%O-HCLBRH7CV zb`2njhP(@G7#D4e`o6x;ysOW;&Q zGdgx~8v?-+I==!5H)7Efmn>jj%nvj@kvy8C6X396vm8_mzkE}e~xyhv7S zuX}y#jTi_BP?3(5KrSs0&6@bFd-s}qZ!wn zfh-RkLj#(Civ)vc&=L|EJyIfd4bcqP7A+-`(_NdG%`msGHgGA1G;QwC$%F_V*+`4Qjdfj!-p+A<_$?4DANdg`TA;mX3sIK~7^j*;K^X16Y( zhHp>K8&nsWpm0=K>rtT#R3d9h*2qfbC=C!OP%D(o3o9{z(n@CpdS}o@8fRdk*`=dGpKS-2Ru3 z-}+w{7}h}{q7*-3Itx4K96BAp>*fEVXgNzV0cbBk8bA(iX=PE;=c0odpK_29v7&if zFtE#I$23j1Y1k^I!_ZXCT8&h>^=}y)_dvFiUVA_KVebF@@Y!+tN#i%iADJv^P||2IMp*_TxEExjL2N*&bVGe9dSMzM9U(92fdteIfTMvL#GF_K z3#=`v!=X8{TZoVfomK=L)Ai}Nr4FBkeB;C(QE^UAYOn~J zF~xH$8itwHIsO1BbK=rXD#_;nLqNR03OCbos5GQ~m~jFWPO^t4@5QibZM}7hZ22xJ zhpkSfi9i4YU?w5A5F3jS=CSLG@8{GWbs`k4sw5Ypf}NoWJE1$YGw4m{bi?Ru-rqUP zmA~a#wkH1Vh!z;jt6TUi&nAYvcS7NB0v{-Z1(@_1%4a1#ti!T0kO6+1A}o0CD8s2d z#W{4uII-~Ee4dsu>Wz{*V%AE0b09H>z_!6K{%q-$jYh#PhtdpmMJ%Zmk(?ZnIl-!k z9n-z*sY>Wru8v7iQ~`jDA{`PXygZkOF-3V;)<<>8ZPpc?Jdf!~OGGD_fWA+`Klx~{HuLhs6nPQHbg;&E z7GU#xEMLD!G*>`wWCIc2kczMcZKMh$S*-?2Xi=-#lJY4gXId7Gr)gm`)yRcF0y)qt zjEGs_6pfe~N!ra^UN+Y1WZ|!e*jb4s29~T2!>zWt_9};ycBVHT6)V$4kgP!)T;ZyA zBvKWks+Hz41e4RoKnHL!fzdJLup?M^O}UzKud}WVij`XhCnyaYOGJdT@L*>tnMLoX z1)iS8_wN_X0ceZJ+#THj0WmN0s!~;>opG1s*W?_m&km2@>))I5*W(YkpnN`+ydX8> zO_n6=c|2X?m~5~iHsnDC6EDd0;ZZ>cLljiSp~i$xj(Ich;L6E1c!hKy)`pR)$W>#PTchUphtEys@tq+Xr# z-JLhBJ3LibG)`hvAP27H5&;^8Y8qP=Vv1)24hA(0u@w95jAVGCT^n@j`^$6xgs^OF z2$RMfa_}hGYds*P%sdOg*rH(ch#=~ z5|xpsrRT=PHZIj?DhAryQF(x8U+;T1L8)|@Zr&S)Ez+h&rUd;heJ}DLTS~YREP5dk zSm0ebI)RCtv_T0;&hk0H4?pSrS`ke|QLz{cV#Hb0faF*ZC0@R4`)?mR z{y&&NCB-xVtssY3gBE~bp~bQX-@(ApfYOwSEX2D4+VoRA+gA=y9bsTlonc zQ1l5J(BRjYN8hRY$~T`oh^c)I|EE_Ul;Z+^=VGocOQm`LQho*I8M5UisV|e&Flh(` zd2xjT5FZ;)ILte(Rp3c*Q|R6isFva&_E=b^$2~w1_jI--F~?er$>M57Uu~Frfn(Gi zN^7;)vKOnvmC~z8hd>39GMziS?U?XM_dVT}(6DBPX>#w_j>M#`7|a05l~>Vp_+UTGr#JZjOr9L9eEQx=k%jHy zxqVJyTQQ9<2K^bplG=25fB^kA3+q}!UrFep#|oj0*fU2zmTI|OLH#{IzHstG-UAK6 zlDD7xlP`I+PI|2*a2ZEajxtH8t+j%u{TUzTf_=rpfpzp$WmxkWy8uWS(%X<=lmsv< zy25~jvN>U7=7w_Owfe)JJlRNUm}1?tv~E*rdN@tBOF29Zo72qlH-Whr3+tH*vaQxb zM%c3yMEy43SY^hgnXqJ_0SB;AA_trvuMK7njn$yS z90t$}Gq8GR55xMEb51}A;)y(eM6E~#*5d9Ov#INn>z4z3Nr)90G||HuU^WMF0N7v& z*wsZ>kFJ{ZqweVsf))ZU4`00)v~a6F*AN5(v()9Xh+ z-g@oov2FkI;qdRo@068yFLp#$TG?dy#v{6CdRRm)5&vfF&9(3>z`89%B-5G@=rmmj z?s$?!EKGJ9a*#t)EYjpbnz4CQ zuRdokgOsj)#v*$=Ya1Zsy_LIEnLrPxUdK+F%~{oSkC>iD6X~5qsOMTJ=myO09L%QD zLA)-rnQW}F83^P~370pb_tzpMS>utoLAz4C)hwO_IFCGaz)aM3t zq>}Fk;s_MqUR#yxQ1GIger<-TDvzDE*SUoKu)eN|Xf35Ne^B4H2gee2H31Fz#oZwKJ=yorEp0Gv4?;{!&9#w?f32jdbE9Qr;3FtGE^k7D0A zyHZNPyN#RE<&N`ylxtlD?CoB!ByHp2FqFikxoNlkRGky>G&5sS9FjRMyf8`t*y#8H z?}+!uZW+VcIHy2qO#_#$SCK6C;(s6}puylc%eI1`aKOkhR);i?=G%IH40Va!?LMRC zMssBQ=9heptwm1fwc~*kesQ_lf<&C9OJN$6;N~J{mF(F3!&{? z_L+m96Z7S~vz*1W28vD}qEyC=ky4>unwlXTJ&z>rZemMQ%k1XfvkwQ_HJGP4)9=n1 z+0ikQnoc;CDOje+W?S43~pA7@S%gSl!%|1 zmZr4hSFQl@!ZV(U>)xRaVr$mxp`+=Vm4?5VaIT?CzG>N@y*0cIH*HwaeM{O`?e#^9 zH4AhO!l2y^hVTU6ST`g*L^ul5@PyN%3ffrN)cG zc+cM5(URZag!k?4=Lf~-MtZPkR)J|pcS52VDRnm{YOk?Q@4C+*dq)2`rfau|Cy8T- zg>{8{zcTF0zYNak{s1rsrGpR z!$#neFZT7i-e|o2naho&Mbg&8hfY1xF=pWuqcorZz%Hg#%i$+`%txiP|6XtLX-5VM zFhF(4LMc7Cu{-2xr8xmw@z!}w0ouz}GMMT%f^E7j4H zV;<_&eIW7YeaDT=I}LwVbkdpdZ4r<01%r0(ts7eG&i&8l^OjPP`NTVl9FuD4Mq^__H<@BMM!FPh zLL=fMM61Hh(3g#iKfR@`XAj>uGSkoiP_Zbk0SEyjvZMAupwFt9$Yv&YCD5W_t#nl% z1;RN5U->%XQ9^WbE~!WbN{I>>+bfXbaN}aXFE(*^+gg6ao869Ls0xsHV5x zkG0lUEv}>TR`IgEygrPAw18O|0872b(m37g1!BZ#+2+}#6@m0Z&WO1o1Xw*GqZcZu zwT`(qE>2A+;5#qz(yS9}Hmbafz!;h{dc~T$y>|c%noh&@G#zxpSlqTH+qB?j7=RBb z2X(Od@C1_2N=IW9;aW4Na8@Olgx~S2%j*JbX}sy9ETNh`Z-AkgDW*;2K<|Uj5p@^= ziO-Am^ke;ulLj|*(#&e$bZ9{s0Nsl1jikhzc#@MuO@%{QX+zgMCgRJ%47o@#h6x$`P`N_mG zf=L(RNn#v_TpTE1LNp}%n#&$1(E+>x!$^|5;wSJ_8YxGg3|y8EY2S3oF}1|3p`<1n;-WtSX@6G@!Cug9G8PF zx6NQod0q={P@>UXvdZH9)IZt8MIkd6Ol*&o3gF_@0B+as2qt}NbN?22lPh7a;O=uS*JGRxLO|(FT94l(YOwJwqRGFrkkzO2-jK(4!n9QKziQD8(o^xB%={iTCmwhR$x%B{gCKyn*f=!y_EH=9?qW z>~rq#ue^_|U)n{}j={2y>t&2vj!9*jd$JS9*Y?uw?M*DOu}WxXeE`G)(IbXOt0UBJ z1F-*#Y}pOt@2ud`SZhCygQxrvW~Z**`mr@dq%Q4w9g`Pyb*mQgw0D#=g+~elAP1jz zEoP_=l#7$lnkU+3WTC`pkmrsD`R-LlyWL# z1e;SF;WWoOEudq}IT=H4u?KBNV!>s(V+dHqVt~2eApz$s=B;7N(#+D;YWe(;7~XoB zMVV5R;OB`Ww>|`LhFD~fs$kVlMLE^*D0#X6U~jyjK$_W{=pVnNB&Odks{Vc>%!M5l{BokE2O6<8N~k+6o+4MvxK*POgW&Ls~9yFwsMd zM5Z7BigI7jOC^gIQPB$9Xne@|aP>lMSZw+7Wj#My7;J}7O-lC@AkB>00;h5TqU(~R zyMxNmO9CCr4<$OPx&koeX`!Pa7HS0Q7yzAW*JKA~JQ=OA9|L3{xk^k@Wx6wL!@jv^ z<;GW#Bx$GUr*ihzfpny9QC)QT(HHvm&=d|3rWD0xL8r9E@j}|@i(PbjC0$rFJM^oQ zQkBYs)kaba4&B0;$6F1|EN(-n&n^a_%|*{Vt2k$hSMNDJ>5CPK{lns$b#6^f9~q@X zX^_d@EK8@hSb`YNgPxvK`Z@pX%=f2W7MDkbd1%R)RT+#Y_5t17AXH@3679~iZMo$i zaYaHB2jlS+TuP=&-IEl``-SEYfI8+dH5sCzk*-LOuM7$o3(KAts}pF<;#wlb zp?V<;k}^UK8>xlZ6Y{i(2}D|3iMZHJG2^V%#7`IWs=p$h)CRD<0K|}@!WlF`12XbD z$3wXy*XX5opfFm1k(IOLq+3(N1Tj?wS#cvkOu}?F6vH4cmShDHO?4}Zcpxo7Ya6>M zAC219yZ!m~w>=&siilF+Gc-0I=AZ&d0BZLO7veF9PFHrMWKEl_`I| z`l)pL)z=}1AwX<+Sl3J_4sB@!A^<%`#Q;W~-XTPa?>VS~+*KQPNSPD54Qkp}(g8OM z(><6U(OI$ZDZr`kAW`Um7}KE5Mp@vAjV!nwvAS+}yDHPL(&{14$R(7PwT@MsCo!XL z3!~B`m|96Ba|JH{T8+E0{bI_ZYZ8lvi&+8^WC$e!87T?gdMM82=kNUS*J_n`omj4x z(!E=>b0o`yt#j+b&{9j7Rb|wX&qBr+F+O0HFAXR|Ro;5{ZLWNjpE2i_$E$Y~y4|xA z$UZYNu*5lzxI_^84StSWT@sKx>#1Z&1;?ucLlqE!z$jBtT&M_!R?ISvMp8^AjdCJ# zlH{B;N-;%j;gA3h17o-5)g>{&bFM;pGC>-*vv^{&U#9G# zUqA#Ra!N+0sc}I++=~#)x&~kc!Accms&UD!A7t>*$PP)_vB@xArkSKLtjfGn-AW;) z8wi%Ub+ZyrD-IITEQj-<`#^#}5f?!hxY&R6Q~WR0uH0f6Otf9KfZ6~VK&=Rgt8B&; z7N0LagUdNY@SCz3Y0V(|<;>tz0aS!GtXD$`Ykm^lAm}T=By};wN>irY&IdNf(YUDp z|I_O8+j=jX`EvEeF?@VbHDBla(UuqLi@@5j%Rca67%f}9mFkG>YcyNhi4jzhB62cV zyUp=>{j8W3ff~7ajGbvtoSL-m_s8w>23>L685TXd%7nq}%N|L;p#uWV4j7cli7r=O zW|G*erW{b$(O!4-T4uEjhEy0mEeJ;tQAP%))5T-m%T$!*omShjdRIg^Ss81gkfgP} z6DEW8`P?-l@axW5G}FGN^zZBXKnM?$)H>j7aF7F< zec2wDAo(NDiOYnKUbxS1%xx99J+tGB4g^LPkXQ^63CsL8Z;YF=VGKM>&a#4KjS|Gi zt#F{+I@{=R6E-o$N)6C5$|@x%x|QTemZcm!z@&qmOz_#6I6`VZd`*Ibr3FOPDgY2P z2@eRO;Xw)-Bn=V+6{94;WQ$b{8Z|rA+7iat#)GTT7LL_eQzkHUi?OidgtKV!z$3($ z(|Q`o1NKplTv~RWSXtPBAr=e$#;%DoWrRDhcoP?`qjV|k`zZ8?EisuBbYg(%7?h*J z0RZMAa!!g(uVDnG50N6!<-+y)$J<`dGyr?Kwt>4%4#^lukImT9GB<`(@eSPDgIO|z z-CL;y!eY+BW28<Ej zAR+1$fD(WOW%qD3J@5i$Jf}Uwl%1jsvLn-xfWY9D=PXOtrroyCCsY*#R)$ma`OR$- zk{XJA0Po#yKPl%gjq$zh3ie|8mV8Y+{PyXy1`c0;uZm3rLKVOcRPIBEx!Jd=7`t!s`4Vo@u*FeH{?qRaYG!;Nb8w#aS5npAnN#XYBV6s=`E}4$O*L2KUCU)CN z9tr97P#Mzz37x~9=sswokvzPVFkU;ob@XXd7HU+c7GD?-->Z+n&18&sD1Ka%zIH*N zV^!C0>62^x-S&_7aa8{KMJL6m70hj08?B=QNQmb;DUiWj2LJ;|$Az%pV#eU6A93KE zTqQtp!ZEVcT;!g;CT)AO#v{)5c}!{I$t+jtk{1|xNz=GzwWru5bHp;nY{0%~z)*49 zX11~>F9?SgeF!NcC|(zCfJV>)AUXV*NtULOfKel2z?0IE%n?mPqfi}TY>29!yr(u5 z3jswE3A(hIs}1bIHI6RWs_5y;D{?)@XBk6HScVt}v^8C?)@BP?a1J55Urc1ML0H{> zToPDicN$0Gn1Li*cKF2mS_bE8qiwBKBDGKlWKlcW6{y*#aQmViSmmUnU>>x%Cb0XZiV=1?1mf{qIC#q0#W3QSphS(+8yH2zaV-$JBCWb?*D#~jtHw~X-|fCQHRn>i@^=0WZ&6zs@3zjRtiAkV<@4`=FWG(d z8J_UnqAVTwr~R_LzuETmBK=Ds@h3Qgr$nQ!Jlt-LL-Qb%^`|{97A_X*ks9)E?M3Ru= zi1u5of!Ba*$2TzIW<89AOal@^&l52Tfo<;^?`2BD^@Fy}Ixv%~$RQA#7%0+Y*uZkk zYfz#^4hzzv`^5MVDl;}@jUdBR1;8(eZ%A_^BSxD1Q1YuW*C5QftyE~VA*^afm|L?L zY`}qoAKZ9*l+L)g)-Z991g>B^NNai*vS9ashCNLVN)GlL=mg%hFsTnsT)GzC!(s_X zbqVn}$FY;K0}VKIC#*$ojj;vZd6j})i|&B3Q=|1wj#~BT6%)#FV!aBaM^Cb+8@1&o zSy_E4T_n)SY?m^Uc&s#&Gin`{1Tj3QN3%p+O)^N5LnD_u#TJj?ZkE+U5&5Frn1flO zRmgx&FtdmjE=CvQ`}-q9G2?J3aL60o z9I1Mso*PoI>n?dLR+F{Fp^tlOm@J{b{c8ImY!u}+Q5iNsG1C_hrmewI9ph~Nvhn|Z z%C0b7OTMz-&!;`#aeK?@wR=QQS69J??IYA>6x_D?if^XD(WCU7PH03bsT~?bCJlNG ztSko+AGNV+2SQPWS;bA9tE-;&9i?IaOtfcu``%OG8S+|-R=?w3^^^xQwkEjhLbW4S zg6Gm0bEQyM=EbdpF&E+PIF%Ek29OvXE!~BUx%(JgOINCm8oCUzc_G3G`YMf7#!Y&q zOq2aYV;dpF2+xKh-tPF;t>QgeO41GTkGzdBUObx zc_~7$f{_m?Xr-Ad?v#8KG`OK^GXqkLiO%)~mu-}&-eYrkFgN4n;A^+5d*Pcre*86k z=ehe^RA%gHy*@zBFCX^>@RDWureTYvc5^d1=vp4SIA`kaiJ%zBLaX*S{J0kRNx$?= zf6$#Kz18+r(HTvw%$2Omhc{{Lh;(&JLQFp&KOIOENJU4*)frYz4wG_~xzdocg~ZX$ z^vg}Lva*=9x`&yMqC#g9qTlJDvV39N>CQdjO7mjsyBf3TfkH4;1{lLcge^=oHb^zB zh1pgL;eL<55!jieVj#vIqI&dxo5{IUSN6vt#;?bHo}f!)yo}6=C+Clx(cTCKDI+EJ z2a+dh0G}8V!+0RT0B9T(NC6=7{V-#{f6r^me)u55fY*VMdk5P~xWF(j>i}Gk>uVPJ z`GUTi7o+Ui%V|>R%NV+4qd9ZQAStICRl#8FLNO6FzYo+1En5Vt0hP{L0g5te=UnS< ze!V__2W5)~6Zjii zbKtYoQbk5}NEFLA0*(L#orz$>e`zGucZWwhlp`==<#V8 zyFui{mcVlFT+onZygKD9>da_m4Ggd$aS|Y06bzWcIA74hUm4{%zB_(>D<*@u5=>Ds zc#bmSjOBOR53xkMDdfy+ep!1ZErX6IvKL?3aL9NO|A}}>*5UzV2A*0a>H;x3{ZMo8 zbAUtsB^}@-<=BKKtUtRmkgko_!RGhu-!zVpywSQ}zKm0^KD_Fe=i#r!r>Cdi#@*}9 zo3)fD2r9AThP^WPyFX*Ii^U62GzK9{2;!#N?+9n^gYjjm(n{)AH1ODa`znZ3(LXeKK4v3^lSXXIG&P+JsK)SZ0k2{BU=JDKH23z=|hi@ z{ox{p!51j`-kIrOjJwINP{*RWTzO_a$qpK#Qu=KTD=p>wWGUTS0o7qo|B)3EMr%R>ZVeg?z=)kZ{SP9iUrIiAJli7zOX6)6Sa@BGOksKRw72ORT5t(ZxC%BLI*}CB_7hyL+4$`D6j?`c6Hb6Aa#sezd4VcGro=dh^V2E$N0+@CIgrTojZ4A+aLrvSs6 z%NOv%=93rcjYy~i`y+=E!;D-9lJKnwP4)YzBv}rp-QlW1P;5%X_ysA14Co6`KW#G_ z`e1(R|MlV5b??7vZ+_zS__R~L^0*qy0Uo>=t?z75L47neXlw=t3ml-;g*>2(LlIo| zat5x`3?4OMjWDEn-}RE!Kis^MG&)c*@n#ZBb=@x-T6l?sXcdK|85}}hMl=EV4!hLx z$zr*DOUH*kS?y^VplJ4e9P%V&psJ~vJLu)7)ucqu&Y+*x6Df189d|?0+32KN@A}!! z$G3hLHOQWh%o=&SMg;<%_v^`a^%}#OVbv6y=H7qz&(ED8U(Bm_sok8&r}@DI`Av3q zfe%9!bWp@#x8a%!!g4Y#iMt|d$iMB+pYhr;QCs0hyM{AiVEHq60hbP3{1MQbPWOjY zF&vYnW!qXa_7S^(x>FG>e8uBM`y4hIGw^Un?xA*p_x=@IW^iH;lB;BzH;R_kTTi8C zLE|tmIz79I*&nvUutc$AT5j47dI0Q z&m9`63j+&FLVvL_%hX!WTxGv9re)#V9QOkEMDk4yh5N2B^wqF@KkvQo7y_Id_AVx? zTC_W${2immkaT2YZtXUheybO~ARv&|ugpQ_a5BhpHC=;KKxlvFd;!G5YdoQZ2?5#% zG&X?M+O?kwqx9-p8hWyvtP8V~=HeND{3}hietrELzd_z7MG-d|;@~BcbW<4p@$J8}GKxcFQJkMc3~SVip+!-9 z5I2M#i|rR`yQ}sx0fgAYr4hjlRav4yo7f~OZ?+=riiimfv4a0f-srdbmIloe$ zKHU4Se>8?qUpg1K&ZTkd%kcj<_hdMj!EHEzhaw_eD?D#xja=M%?PPZXGX?BVcoet3 z?`!uFxgyxIa6t>gez5TT`o3;^KbXf!d)+Mmny7Jxv#*}C*3xz_O;?4uB5*2XzxLCH zwz9gW<$B2mYNQgjmkg7Oe6n;I%935oB;n*##bCf7i#b<0Hwtk+Z{JQmFy{#leJjCC0|880aV`0u`+)$X4lv4t+-ED@~vP` z)v^q78Nrk>S735rED$is5)}&wbL3fH2kt1~W?d%MBx6R2YlKcWLAplLP^R6CHdgd; z!X5HPoAXe`9#o|(ysC6Esb9=v!xGWr+n$S5wuH^?sx)9OSXJ0@&vv8Rxu+BjnQF*&;Fn)!jERGha zdxxir+r&Hm<8|#OvMoVyULTJBV1CST{B8T$-wfdGFP&#!k~Grshln$V=3g z!iTWKhf!&=KxAW$oQ~V&t?$WuH^9k&8YT=RQ_ySg_Fdn}TBPLOv!G#Ar;Lh&mr3@@ zN6G{#?uQ=oE_yX#?oHCeUYKeWRp+A9(m1$#Woq}zH?gK+POcaiV;^7~w%DH6X0+g` zm5@M_lf=piV&rQhE2ELz=imSQ^3OkSEvA!B?T(QXwB&s0<1*CFJcEja@natif`mEK0 z@(W%~dLc)}!bfaNwf6J49fSR_#3NUcScon(J24(uMKG@(sf-h^u}tVmu0&t^Q6^U` z7@y@xoyA=2#>_s=3f|VVz_m7piQ7r}gSYqJ{;|J(7bu{?8GdYbf@v1Dw$|hp;-djY zhXl`n{0BgYU{ijKQ7*<)2{h=ME7wYE)7K~_f~5f~1hFM#X6zeP2wKDwHG#**Yv24< zbx}KSoc?C`_lN&#KWo;4ljGv6zV!=E@mn^G?Qe&F5&0CVH>D`brWD)@S3tq33Idhs ztidzy<5)s8k3$}$Id?qr(4+;id);rr_ih^|9)HVde%7HnzYN0tJo zue|6U^stBd^iJQ8KddZ>?4tr>@72!jlA+PC<<{s&c!8T;3irg6;2iF8;Wv8=e*>!kEy9Z&3ObP1x%5COQt4HB%1H6>`2fp=OLNP1DmNFkVa z1sr5m-AJ=?E~w#|v!@svWd@ZET06pEwHzMGK-VmbiH?5VBrQ?8yOy^+st`tW&bxVaTuVdJWMl7o~wFtqI+RBd~ zz9`?sze)e*nRb*Zl!{z6MvI3QzYsf*X|&I+#6&cRq2>VX1*f0b7RxZ*1Evca`smZU`R|~P9^-DUH)5&E z3W`KI{4X#O*>X{Q*z#c%R`3xREF*4b4(W@mg^ujz#NrWt6__5oHqy|O!}rNm+v*p& z6SJ)lBC;FzlK2nYj-f*{U(hpwb2>P#_HnTX_l|mIn-;HamX@*$hI<+b5Q7S(V)TG| zY8ecvdWRF06)B1JJG_pxq#zj5f<1b=pO15MM9m(~n1=jT2Ah?ME%s?rU;AOYuYn}g zRIbRrpFiB!ML$2He=>z%n7@Tz@Bp(&nGRaGMM<4akz2R{3u%l=&NeZ97MrmFt>H3< zV!AmyWmJkV1Oo(3eH|G5{20|lDQ;@!@;o#l9y=tuIW;WK?#E#I5mfVZt=zHGO^SDtRM++^LiOC*lT%M^h zme5FMtbk00Q!y)n%oh$xQ`TnR;!$^eYFbcJB59xP1}-Trm-L&_AAT;PP4mHm4ud@~ z9@Si`E>bUV`1bw$HXO{%flwP@9QLn>s&c!-)M0q!>Ie&#T?fGk5(rjds@u@yMK8M* z1MZeq=rcp`^S@dMl^9@QV}#Lq(EeaAzK9y;UdhMfWk#PL-S36=LilF#(T--)fD068 z1(aS}72M6+7i>*;>}5G&c;8`q7(=I#-z%k;u6a2mP;1(j>@7!q5qyy+Um3|VmAUeg zY~Lp-E8OWCz_Id#v_=e{YRKs}f|Lr6PvMkKz%g*L3URbi1vcl<}zJ5B7(?zgKItvrUYNjVwe`azKStOSC8>D}YTT3+z@g1z4Qz zMi$SJRpz)GO?zqaT${dY{FZ2Mx7^b*wgkBK3v0!|<3j-%Va&>wkTtk+@aQXySp&U7 zz5}AY)a}nV_n-fL&)0w3xOvX&#pyE3?jD;h-S<4mvk4q~y6t}P;r5#x@$)du13}}I z?-S=S2qEe@QjZCk7>azd;S&cIBGCCnq{mEHpqPTqcwIYk8*S4}Flc775$G+@92Qz? z$VfLJ3GQJ%wk+Vd7$uz;kGRBBqweIK6};rL@Q~Lc6TUZx*)`5vrxdFqn6w-LCrGadWwy7yhlMVU^aKo5N7qb{kM7=oxP(hxVj(+WW2 zl7u4}BF(V{pbW0mAX9mQt&MNwI%UiK=`NW&`zdWJtE54iv;X}6|5s2o&or}MYM+GN z;TUaJvg)1Wt8-!8s&+kQ(m%Z)#R3n($^&K*Ozj-9Z_y&844*U@$zLJz0V+ zL9rHKw5Xa^g_vtR8+pW-gn|#+MTZoP`@`MX+k|PB2@7Y=bBW9!9u^v3}e^r}Q`~ zWkPWP;z~BrVAI$aeUE3o=2k7(VJ56vtSygoU6~WMM`aJPPhY$_kt~;~%t8=Cg!U30 zn{&g9F`eHkmE9IQ++f3Y9l9mI=@$;wSU~5ApNS(wE+BgCzz~S+5(e3a$x0>on09bk z>$r$rKVM%x=C$Vs zU&^gM2~jgMbU{L@p(+aP(S@U^S~H=IN)-w36}r| z7U@PAXly-xc(oC}xM#ma8A*9%PsX$;=iy6pqWX$mmWJbO?w@M`k7s9fdLwQ2aqK-S zmR8k^IYxtIp$>Yx&Z;ozqmjegrcqXpkW+QPygWX(Fff!!FE`bj7$i+7Ye6=R*6fu4 z@PJkaD1zKo<|ke%4}Z?0zwLZ(&wqEn)8A7QC%jvm8oAulu~`>9yeK1yUfyG zbS(A`jdehPi?>4>#9(H^nud#S?8}{sjRAm^rx*}h*hApVpi{0f!M6hRWv^%$ zqIZLqHkDc$U>(;cD3piT$(O;k*ehsVB+aE@3@%5R4izD4i|Uv6+fWt{ExZaje|n4D z3_!zSxFjpihb%@4ge?)?NCa}-KppjAGB831dhbP&mhja)jYT>yx7R9L3KR@CKpyrz z$L`0hN!9Lz@$&LJ{|`7C_kq$YIH7_NkyfRvERsG`W>ew`+X2RZx- zHVtwe#uUcLOVXymM_G$;7JKb{Y_?ndoT9Lf0`M^+j za&g0r-^G$pUmw3dR{&wMre`a_kIb(p*KL0myGrlN8N?yYaq9^g&;z-#{@|@*@)P1D zdKqd^eW>%s@mk}s)SyLCC6*OL>KHN*!0FWQaw9L%qO^>F7;ue+=TOUD3}To0TKevu z9rAVyzh^5`Ic^2?(u_-%Zv*vyX^f*wg1t_#_ZlG0LZh|;8-a?TKNhgHXY0OkULuVZ zOu>^+USj0JFb_-An}}B})}`JHffz=~+C6Re&<27LFhfOZVv#r^Ynkg$aiU_YB>~s!|vxS|A+DdS!e~h@p$MW-y1O{f*Xe` zam3w7n9yQrwxqsO!x~32=)(%#Z09Fi$sshAq$GyN0OE98;g}?&s+bN(6|y(_*jpSo zjD3^H7%MIcAZOCf@|E*tUbWr z$MgHie^DY#IK;@<*p+Gh@MeR(T{LfJ9f$mhcSI711lqtsA*VjhkM+_M(&_%?MX18 z5!bkD>jGxwPCp8u#z4V(-Yh5t<7V9ev1Z0K&_Vz;g$NOaxnI8v3`26PFoZc5Tj#r@ z!FXvjixkHA)|kiY;U;LT$oEHdUSzknZvSBXmsTDgMjgCvCchvHnP^;>h%2o|FQ9c^# z^k6&sV=`}>_4D(6aC5vijj{JWK^UG*q)BCVE>Ym0%7GpC5EV? zjWf8Je=FZF!??7cz1*zj?(ijEV)9>q!}a!;Kl#sozPO%JHqF*G>J!c3N6c-5P6lCL#h%p0`U9gIvt5O~6s zlYhZygx{Q)lU*v&=g?cHD7x3okRciJ(0X|l^vj#Q}y<-OSkY67X%rk%|ZL%a|h zRi#L?^{gP0lPD4=*g0TQ%VuzM7pzwMH_ilFtU-o2^6i^{jzoHp(PgGg4#lDiU)IC` zq|(e9vvIgkED{qk?MjHFisJ%;o@#aaiDzKdplmU0n)JHyX2M7c%LlmjkQZ=si()Y_ z>gGMvI6Q;qOK}xf!*A~TFV|h(jl5=ix0pnVE}jFEVd0fGI*KTS~u001l0)-CAfllF(*|0_41qDT-e zp4RQ`@xf-#`@etO{e1Y>9?(IIwPsqm&G@@~PVOUlP`XmnZnYT9ihzBHJz4AAf{HT&ANMbcY`J3eBIR}%qx4|qrRm6&8Os-PY9 z*1;-SZN=SooTAw)=$6pTFs;tf~axc9CcAjI&+?aU#I&=72ivWUnrrGsPk^fgKINZz9c z^uy@BCCrU&CJXF9Hy8W0m?t$q_9u>Q3lNiaU^3%^0L23acG^#8uWk*7DTZdLCKlxp z3faq^j$7{mVi9zTk|h%aZ~6p+@N>kiy)*srcW?e* z{`2_ivlbt%@nz0;-gpsU@zg90@8EkVjBx%$YO;`oisPZfU*)X(m8l|a972(FSRI6* z)zGD+gL2%9*s`Qp*N*#FYqvf|FC8Zz*a(<%>)lvZKX~C`_+7_;!1#-?v}{4mIU)Tx z)sXA&v;L+B_QAjG3l`$UF;{GDokHdl5)Jk<1fPzP(BkB?M%qNyp6blvq6=1;xq|gH zJLA)HlF~#~1Uelsw`X9j(=wC7Fn&?zfSEjGN~_o$9DU_)h974DR_CZFbJPw1ArUP(Rgp5d; ztc9Y$(b>YTu=kX}*#Wt5Ea@`#vwZ$Wm6|U6+6c(r8!um50NDF_pcGIfN1)1CY~(b; zi+-cv&hzM{QPQPFYQC;#Y=r_MZQk>l9UOYsF~@z}G;}4BjFsw=B*0fL_Vy+gd?x;x zp%xc`0VaCJxbiIURgAzInp2k!BW;v1n|6j$YdxOgnsnz=?FlBMDX@`V3$tkXKG!Z< zh>aDuZs=l?nQHU`QT@`mxWqM-ic+KXp@#u0(Xx2Oh~ux8-@fg|C#8HN=E;kCgPa~N zD@v=2hZ+cq5&?!##|R?!G)nrk$9PER)uO@jAh0_8ZY(1hb?7j#jhc#i-arYrSK#Hh z$KPfDZW$li-LG8k9L8=5g~z}7lN;y9$A2F8KmYvEcPvS4iW-Y{ZIb+szmMWy`%gb_ zc=zh*ceRWY-)%%TV0D6VyYh?gph^k(Ao{r%FGu3p@1YBzJ3IC)pkU607m7(9x^Zxs zIfj}FOt)%NAyvRJEf5Q)A&;muUR;)~7Iq?zvK>;$FQh>dZUA&jCWpDIWrvK}gsenS zmyU}-vnka(-+wviEzjediii8z>(SAgsAej(wH~A?dj0<0Uq0sNZxXPVotEp6X8o6` z1RPSS5x_{HMxj9P|A#C`z(<9YG|BLU$o*}T!j2ONu)BKz?w0HAsJR=I4gnMiu-lqS zjY(~kJ9<8hTWxC-M%*{DNYW$E2scugiiE+oJus(>YGDepN)`rV7vpg}(BKini&F-O zUA<2{V!9wG5XY$5AtKVohCnNCFgkYBfXtD-S*AXv#u+IB0L3-nxhU z?p$Lr8p&wz2>(puA5ZUED4|d`F-7M*arJq6z@tq_DYHtFH6|=rKnAQy7Y+t5G?GXU znZns#7gO1cSV40d_BL%n$6{U_62L7H!sI?(@J;&jn`&SFX#Mc# zhdUH<*|fA{13!{<8@bU*ryIo!cA#V0%GpoEq$6Kj02LTB#E zlUAJQ=(UM`&$LfG%Tu}HT#p<(#_Oz^aIGp%wor=D$mdN6A{C?=0S#7Xv6v0@<2qY| zsT>#Dt^tsvL`qE?QtFH;FRbtQ-pb4X2y28QoWQ;EAOG?G_P>As_QUP(|D_-O`?=p| z>qhSz0^etEEJ9ROJ_eudpP$X|1f%dYQ7T<>JFEYu`)7j$JkX+cMRxtO)Bu1~$o;|f zl``V3Fc4>&=8MIpFdCLW{MPj8P+obFj6S~SPAGWa;{__=WC@ae6@l+@yyGepi+0*} zmqVGhiD2q4RY5xi5_W=3NBM3u5ksi)0s=|wnpcm}%?D?N9dJj=^>p)MsY=D`JNB@jqDCb%i{i|mo9IOwtm-p5^`9Z5dMxKdzV zW$)Uz-K8&>N(B+|FbY3}TM$Pzr1@Q(fdN@|gFBZ1w#*L7aB0w?HZ@^rf{~ya|5p8$ z{v2t&Rk4V<9OA+?q_r;j2z_=ql=lxB_Gp*2`VDgC7M+ot*)vuSeuQr?7BwOjn_1@4 zfLY8M5eaz>fzYDN6*T9sJ@PAN)Ag4Zrm`ui0)3rqh$Q9K?W1o~+5t9ln5=J_Ao@%m_n<)nQc+ z-E=EMV*X+pOBg!gwGcz;SiH3r)d<=~Rw7xiR@DzSy=8a1DTWMJf@VP6D+#)ox$Z+t zGO*m-iHBDc^u!Ii9AgMK64*H!WQwPBlfnCZjb7wQQNuh#jXhZ!2qF@49?zjC+kE3S zIePEXz7AtoY4CvR$++Z}gHoJIB|{2PQieE+pLhzqIY@o)gbMbt<5$7za*E)j!Mu!6 zy|EMtaDj}OOc{EVx#x%ho#1F;t`O8>O^4N0Nmrh=oifg6y~fI*<}!Gt*nkJWeBIm)TjZKEg|My|w^@x4F7Vx*m zy1Kjk{OVt<3zv_}tFiI_m*vBG zH*&t8=dd2$o5*(06KSO>V_^FQwI>r6VS z7VknFY><$sG~A_Q#lrBFvB$gJX~pa;!_c^c^Hi6csZVhIsR)Z1TOfmO&j4>Ghd-pV z&Rdhl=lpzm&a6U{y+;}B;laGSfB*mg=l=NiKmYmr|3&^P_3lA=e(d$H|5wlN{LkNC zxjP9^e#E`I(T$q6G4g_73W)9NuWmk~CZOEtPyFez z7_eFwBQyrfHlWG8B93X<@}@*4tUydb;ST00AQ`OD5SKdZ%Pg~C;ujcBJce2G@pd3- zg!F8Tj^oVh-1Xsr+_BGjTbr-$?A!A3A(qm>^3PGWU*AkWcu7X^A%JsWW8JgUBGo(N z>xmJ=I}j0bAfYq{66j)d^ytY~d|FAg+&C2zc)r+lb_pdASHRsB{P{p7`_U?fUAlgG z{DE?E(w=#FvD%t7spL1-T(l?mZ%GM)Bgf=2= z%0P^vtPCf47)@bVnmJR8F4+6Hz8&8sTMx4+sF|~V#DQDFM3Hdw%gnli?p2jQn_`i# z0c!@LhfVHWQgRiUM7k;4O+mZopwL4m_sq?n^s)_(uIM&?oL1|^9VGzdbTVgU4)%OX zoHZrX4oRJLsy5v5GyE{$+AyeC1|#rZM-mjOGyTl$3Kio3Eoonjxs()Vf`17LmL!zI4Nqd>+SgGG7}LW%&OL&uggsMxBtIj`z6_PyJ7J!Jy83#dDW)x)P%1={n|@3r z8nT?n;;J)pQWcQ~9EH(&BJe1)*^GVe_g6hO9n z2C)y^BmKPR{OS0R=lU30wa0aUj*oy)$5*|1Tkc$v`7%kFl9Gcav^LX}Uj0>56CEYR zxyA0Z=ME>mfuPLwz4gai(jL~$PLsx+1MEfsqMcA@+EgjFWn_vSl}O{u;*!fv=c$Rc z0Yatwt?x2>H-s-pCj?B&*%_g@O(Ya3xM^Ac2mcLR@BUCf?YLbwJ?>$bXc+Si-SRUc zB6j-MHoo8Tl8d(lAy5=0`2N=!319Zdr{*HYKrBJo?lkTQP+UaW(Lj)HE4Gw##QMlF zp6e78bpi$SP@ zTn(TI6uZ`Lezxlk1X7J5kAbja$cSE2m~LqxyC#NW(;zKiwR3l!?iV$oC^rHvtrNLX zkvZYlgrNi+)@)BG0mQN1(64Bbtxmcrs62iSuCCe0x=a_{%Z_JlPq;v8aY|0=DLTS2( zx&_7hMm%$+T;TTD>%K#Cm&55dN3-xGOuga*}J-1tFn^lmaCx@FDM>7Oj&V$ABTk^+XFrKdZlSkNUzK z<_kVKi<=e4@Z;;@ug%eK*LLAr?ERna_P!1ZL|n=0xU6o(u(999YuyvU0g}Qh7t^@g zxw+PO_T7~USL!HOo?~{K^bB{6a4*@Fm$-{~E$C}4GtRXEIJ$~u#*Rf)AR=v}esmF& zDFqQxi&a*ZqQ*)E9%y#A?CODH1eB4jW2}K<0K$EOX32N?*rtH@)*)n8C-V%4z63Ek zf=$K2n_0^DjFTmMw*c!=QpOZ+Tl-?|OgvT*jqly|APHk8+QZ@|6G4Q!w`Ch~k(=XI zI(Aq;K2;yq)N#r=I7g+j&lJ8mhc1CC`19C0&LbcYC4v}==&00aQ6f$(+`s(PTS zsp6qvi=KJrjn0e;aE&Eqq}}Kaoy73zqM&#yUC{%N@v$(hVjmdMP-Bm_1vbIue63etf7xA%rWVZ-6ACw#h7GCs+$l@f>pU#D^!gP#zqAT zJ#F`hU_VwLaYSX^C1DE-osA#St?!jYYuHST(PLjnx4!nGcUEa2nX*rS-R%xH3=lL5 zb&azE+qBMP%??z8)BrkFK~AO_m)SiSgZjD+TQ=nI!9`&rToUnXD}o)A8c*6g=XM#H z0^gH14FkyT8jHCp(p9KfiBncqIL(Di{Lx#bWG>cOsL6~dUX>-eUwa&~E#t(RJG@cC z{$_tkXpl@#=F;ctfHVKF4J3rkyLnABKAI_p>P1=HJ2Bq+wY@#Rx$yD%dzQ^qrLW1> zhSAi+B~S6C;x`Tck%K7LJxVnQJi-9NgWm0lSJzEy2R+Jk#fusQ0ND6!;~D2;Ky5ZK zghJVy0uN3OIS3Ze0EFNvR02Syx9jUtAAgD;_tQ7NA<>uY&9B&7^OCLF=xS7#-v|Z$ zi!)F;(8ZehfEcYYw>4h2Sgb*H@~zqTN=}Z}Ym9KwBWwot8+LC}ZCPJbAW7ePTQiqzgE_js?nW62&VAH|<0F+-;hbTd_)Obe2YE$y5f&n1>{~ z5`A;xu13a*lF~SW9-0;@Bbls11;Pvvi#J1g2e`eq!prl+<1nDBX^IWL;^*)Kcxq4j zFY)E`eZyZZ+JA!UhZ@DV46> zUgmH-KI$SucV-x|1EwDJj}~LZF!CkR$L&p*H8sk08`^p|C* z_h8mN=^%@xox(T(3=$}{S!m;9tiFa(9mBE(o~Qf}0&C=%>s#85{K_=Tue5Pk9N8D* zs%*z-Np10Ki&%B3OdTkvwF`3&%fxFZZLxW3_E?BEaQ$*j>thfZIX!$Gpu!A}1L8Oj zq_*k+16!yG&vk(I$?Gr!0BEI!m2WKVGyB6Y;-}+=Nmy;0Pwo9I*fFwyg&uu)^|$Io#b&)7&S?<{Zy=C^&aETHGt06U@Q+ zel646wL9p)fmB`~lMobyaR-&|*FL*+c)ja3cWf0G$F32XlxHm&mc)GlCoaO4SmQX8 zMiCsMYe%a!H`?4)`eY>aZFn5p7*(W(mPgWN6 zB+;{wE^D>a`UuCnGch>w;bn?L_b7z2AV?5Q4dJ%XwI*pKC{lo;D~c<8niAyLMH^=b zB`tjGTOSkyZ}y-TfP*#zF=DX_Wok2tNEU!K-D@&xVMGTVF2Y%lqX7gzbN1=JUR+L~ ze3*jC>H>N6ZZt>}J@Ol0W{11EfoRnlFN2gxC@|cBJp>#xVx}Q^-%(Cxc<_nSk_?Sb z3QkKlEq}w0&7X-%hp)L9#dT$l=ecutHBa!J3tZ2+bC^-oojd9zk#Q)r!%Pk{quBv% z1(@(jEQP6W@=O^V4264+j;`aqMzxhi^X57DhX>Bg94Q52O zUvO>c{EMSpynnQmZx9eoWlq!SuJa}-5;tf&*FT;HC;077m7>2*N1e-{O zBZF3ZTb~$4gpAv*X|=Nw-1fFbL)3~bO-m(mUFMfBn60vckjxyfP~StyUX!~tPxkb( z*VbirNt)#fXzi3jAZB+O47~sV8V(R+m}9gkGVp?evKu4 zjP~e3Iym^?gZsG;g}KNYgMhe`9P4>3vT!6O2U=7ry!>XdTcqI2M&M+(K$Fi(IPCGF zVPs@RYP|-6yw-Ocvc@$gNg-J)E#p#FX^kh2P=Q12MSDILNr~D7qSBN_ILb_GTJY#i zLyRKJVF=bWYzYRLVyV$U0svwouqKmSz`P5nqy{T#0LhLDCN{2=5JzcT2V(PK1|D}6 zW^AG)d5Ls`CscNO8>1#RfL*|0TQkR~6_93$@^}HC3gJGYsQcpL>Xi~Tkw-QwBadA< zU{MK%JLVKocrTZ?xgZ}F@32uQWh6qCk-Z$TO__a4K2;(2vK`5)y5hy?YdT9vD*G=F6-g2C^Z;*Fy*RNi{Q2rx@A7zrMM(G_0+D{&GHy zFPC=saFOPazU~Fy&2im|n~|Z*Vd0UBizc`@TM@r>3&)PV96j z!K5!qM7>>*lrmkO_{?YO>5_f-Vl}=Ut0#LB$DR?w%BY9JGLx=QNv!1w=Q*jqva9St z;{!vlJZfkjJ=YdYtxg`U-jgw_kf}bAK4W0*@P7HZjlLIjflU!>DiG*dd|g+4AKatZ zNELA^u5Nw03GJLiaF_)>^b0_YKrc+)jmFE7{>@+ZG&Bz>HlYT!IQQ9%?9(1k`?!C9 z`}8kjh!C$Wu|?M9{MB#I@|G>P#-mLSfpiAwnlhNqP#6xv3Pdagm*((*G2B*`OCtLV zs3iu9f?h0fgpMhZq&JTy$&G<<&0d^M#egN+yFj>^S|m|Bk+JaE@K66!{~y`IKYaeu z%cBpqy-oX7dmFV6eR7M{oJEmZnHn%;!Kx39yrz~)k=Y4ey?&2I6^a_ptl(oFb6om< z^a#Bh(+6@^_hY19r?Jx{-qT*PsYgYmWR`nBKgCY@W`zU3cU5-MvGy?FE1 z8?2Zcfnwg-d%7Y*tjbbqirvYUZS&1V-X49|U6>(A6cXZqfJOr+iLFwhMTyBhrYRY7 zeP$}*bM9yKJI-^EbNT~o>~r`z_ODO-eAm}ZJ_t|0pW=wt&cJX8Afc&3>eN`q4p&#o zFx?lCiw&OPZl>OEt97{L!db68&v~gK4saZ$t;=i)SzIi)3&qpX(c7nlq<=J}o(zjR z3DR<;P6RV2SrHhjq9%e8ZB8En&w_1Pfh80w07kKUGqSZZLSzCk8b;6%9TUaR_TINb z7*QEz#h$W}(DO!vL^+vFNMO=8!_o>IlLEfhym+D5l;I25D-M~$9YNMpPg-Ttz+`a{ zYgU-*E(ix4G8dmRMTd6-v4~0&l_wGd!tPou#mXG33f}`7WFY>W3^ncyTZ4sxQn1tH z7{1_TIM+c)0e%Jh)xC-K}`Y{_>;X*4}?9OR>X<4%Q^BB3OWX>*9M)I z?zBZ5N2UcuiJTrt()1fMM<*(>iOxUf9mIb0;JERXN?QOg?)n?wiu_%8yz*v!{xfwp zG}ESW>`A(;e1aN0DJQ6%2b+^0zzr(mmbm5_&?|nf5C+3JU5rZ(*qJe0Czqa=y+Lbk6e-WFIImmt z)u_?FUs*=U6DRl%yZ3Il!Eom9PP^A+?v|M`C-yZ;PiZ@jqFtNT61a7l8XDAQ)%bM7 z*<$gO6;z&q7?hFBRJGJAlnj9N+2!VVT&&g7v_`SiTeTRglOX2Hm~8Fs9vpv1bjQ0g z;VBgaEzAId!}pOc+|I|yaMDsNvIn2MPK+Fydj7Me~kynWmoioL+qY2#Id;&gaZpMSeSHKdjWkOY& z^rF$YltE_J0%0(#$?N*o_ll1>>Q#hv4C9cwtO6HoW>8ItN1DkUyoPsAOaV^$hoj@X z9SLftygu7WQ_cq3G&U>TI*kcsU#@eB0Yf80(~ag8*IM1jK05ENkHzo#9pB}Bv)kaV z?7Zlf#Y%JAYz=|Cqw|oHc3DmQUO17pNtp3%!PlwcwptWQs~J)ThcG~^Y=?kPPTN9& z)X7Ky*mHcFbGEe8_GNhXJpY~#<8RX+On&d5|KR85sq2ECfE4VfjE9KPaw~?2%4OEs za!wu5YqQ_`dPdKt-eWBaJ05=>^ZMn-NoTi*^#u9cgMR3b;n89sa))LQ-iugc=s@By zy44XAxkDp;Zb;3wEOw2~5wC-hN^FJdMjHwcKuWUT*%7CfQ*YB4t7nLbfy^l7 zY^LH+07NLX^|sx4ce%tUZnPdLBdDeoOL_uCV*fCfw(B|rb&Y*<{xCx>mm=o~@*cN& zQ0BRVe9j&nz`~$KC7;S!-Hv?|m8TN%AQGt3A}wK2ND57BwW3954j#?{M0_$vP~vk> z0Kj1h?6>JR#S4&Hc!4iq)`7uV_xUO)Pjd5n}(3&x>O1va4K6jUs8V#FmzElG@?=?17vaeV)P*k3RiBy!XgC|!Kp^g z_E>)4x3j!dCzqqIdz>79?B@Y~$Sl+cYa@Y?|gagg`IeJ@WES4cK$>9!Q}`5DQ2*sU@+vLY}hmt6m~10s+j$5Qrr^!l8nAGZjrP zK@oRiqj0G6>xUnifi09t`c5Z9eLtT~xSx-yMy65a!OEbYfry6)f_8n~thmE2-RYY} z{{1WPeRf!fE9>D!^1NfRn$3+x!DFhWh%pTcrYc7ktWkrqYP8mE# zg;lPU8e}}Q33blFp6ufos6{)gWTds`SaDV5C6jf~&-z3fV8cq;5X}l%r94&D2;x1$ zq4-2!tvynz*(unLNQqx&fG>2USzaO4mm ze+6@r>Y%Hb$}t#!+7u9XmlHsv4-x)(8b`xJfEF0&uvk?G6eCCHv#_2@_7%C!P)?6j zKB`>rzx-AH?Z%DK#xM8(*T);r#_b-;o9V`o&eb3Oga7wG{rM07*JmDku@uBuoJKqD zWF4TY2RqFzJ_dFsq9?yc4RipE9sY zE*N8!Q>^YsaR7If5!p&-Yom!XxMc0IgVyD(iU72wt}+sCF_^Iesm3lV*4Pp<3g%)x z$^dQdNG2GF7{(@;isB;N-%?8;)nXIIdV3Oj%6-h8NOg`y$}H7xb}D6*3u8<2ea6X9 zrcIudd8i>ymSCp|ypuPj!vzo$W-t;{=lGInWMrD?YR#G>(n3XG-m|W)EqtdGQWW1X zPd!)y7Y0M)gk4z3a4L;pM8G^Fgs10m-Y8?_Ewh{J>_CFTvba6eO+c!yy$V{HS4QTs zuet_qGXPS))OFJsv3=ZzZoUq^aP*AVKRtJKh%vZ+n4dnPmBg!-{@lW`9hT!G%EfMo z@xs(2fNBnCl3ffH)kO0U$EE|#ATSUNyoE3`bm?h?oodHIOd>1%klU(SBY}P{0Rlj* zn*<4UI`ezR-hQgTxTmA}1dr}~>95P95=Z)tI3#X7-nU=-e}DZ$|8)d#NC8mdb+acU zqFGi4wZ6xZ2^4WwmY74cbJXiIX5X`KmouGdUS{s-6rI}nm~DgRyhcXO_3}Gjx!Q4+ z=s+6X`dESjAiR!j4YUX7!(D^7*wktit9n(8c4e$q^1-cIbly2JL_<(AGz7?$nG8Jg zN(dTaSw`5lS@Zn>Dvgp+nDy4ZpE5gB8UxFwoaDB_2SE^ga6iXE&SU)FpZ`keR;$x7 z&s()b^W(bXy?(a8_zjJh#h4>+h?V74BpH{XeCAn%E+2Exz79y6L%eD^croeK^q5rH zK@iA|78HQ3rO>U2 z#f&vEw+ zbrvVVueSyOz@n=`1S^A}qoWVCYm)IIxEMWpd^+qP_yye^jrPMMWK_LIj)G;{qdPcP zITMX1^=P;|Us_x1zr{C;{YJ_4%cQ?< z>!B6j?;E$*ap3Js2YT1#>f+Tk2smfWx;rN0NBH`>{iUAf>+9?0$+b`Z|2Yr7i#@eX zwP&qZZE6ZzfwipZs1q~x2D+$z*S*~+j7~R=%CxDMsTP)ZE$((j*Xe42GL2!2S?3{* z=@(=9OE7$XCA2E9>J!3;O8LwC^2_?p>r(f~=kJi7A?>@}1^J%d`|+o!vBE_ID451r zl%xbioLU|B2if2GwcfC<-f^=+UbR2sS~>aUoRn*JW5_qz(7I$3CSvrEJ{ul)&yXFu z2e&!P!9iw1J&Ro@#}4Wo?t0pg>dLy}6QZ<14X{|dj`m}0LtB6_2@nk=V4z+Gn1Fqv z387Y#Np zB+q(yxHwuqJV1i_0oo6iTKmW{TH=O&5)UIwd5(7CJnk|I`w2(UBh@(Ik&bR1)uIn< z9QKPnci{~w;Af@DH8iXx8G5~s1uAK$l{eES@-_Xq`ZkvJBc5Cb%w}oM3VjdGfY_e+ zNYnAnEU{W-9I>3R|~Cx(^xsQyBN3p zD9^+$X+u5-hyZaBqysx#hchT_BL$F|F3GQ9+Q#e-8Uu$S_${aes%7sK(a_FPT`2Hj zgz`Q?2(6t91QC|8tG^waJzAJs_Qma;C+%+kqBl3Aje)FPylk8vlJGRr5t(4Y)l>N1 z^w@CqaMMGVBCK7S_oY95;}wo|Vt?%$?^lGl7srkDdh+zEp6l1o-TXi??U-_(`pO?i z|3JPEgQmSqHr4B)O^)l9|NK8iRvVrB=I(vPfk4XB^RZj@tSEF*#x|p3Re)v6)JQnI=&YP-p{ut%niR6AmQNr^02h_18D*@94>u@rX~*Y2%% zMgT&4ER1MO;SMThB86DlO%(?dX69ee~iIj;;OM1Z1xamxH=iD1+7lL zOMhXmskWBA|A{kFyk-#6GYkr}x!?tjoFhd6&Vlzsa_bYH58VrADXi&VxY3WDF_iL74H_Kt} zS0Y=bLFj#^jQb=h{jVXm& z!VlC{2nYCd-IK0-x5w|?y^hH7ey!o%UK}Si(c)ptoV>~(%W@BWU{Wr?gP`$tPop-j zHdxB??&EX7*J|bXqUFDwLHG(^@r4%qYs>p7*6=K1XN78fxMTV?XXJCuH{^9O=DR!1-Ue& zmMh2Jxhs)*C;V%%$|yRbE5C)2=I{dJjeB%Nkb74PXGNbCdvFOE3k`7Sr zFu~%&yYlUNRtct&kwpnhjd};i$-=Qc&y{xGlQU)>LMk{#X^Z%LQCU1?y-4?ykE8e& z)yT>RekIh2?|5-EgKRzV60#_Kac*5WLSd{%MOe1Vt4S`z#Hq77f)(6v@*1Gs5DVp? zzlk+4&UZmWURD!c>+4$4zpgLw=xvVmmxdEYhtb?`F&FPBT}&D-ABG|T@{oi&x~Nio z7h-#9FQzOaEf56F&Rv%zm#&NZ<*gN(0&^dnCuXi4hE=3>nRQsk);8%Wy9GAx^yO@4 z(-w>Nzov@aw64oom$B_-536U{Zgtm3bY!r&sPxD-#@g}8AY?BP_tg3!ov-_*S8TY-RiM@7*$;w!77{DBnfn#TzKWpa23^1>Uot<6n9nwFuQm1X?48 zIsN_K;~SW>_Yg81@^!hn)QA{^`NYdX<}xdUvgqh8)gH3YdH7NXh8~_IhT?ZzmzI$p z0+Y@gR!^3N%;DYDnWoy#iftrUn9f*{iDz$}m7Zr{bF>`|#t=-dmaBCWhIw0@VEwgC znq^mZ)t%-!nJV&SWpGlL%*mY=pG;}2!HSAW5KijRI#=dJUUEG=kn8U~mlb_Uw_}Qk zGm2+V8{I8+Q90zCj=3m(P2p;dPz+Z3;MGTDa+VX%rl!((bZaxANe<)V#2Qy2xFln@ zP-cny?|k0eo5h5@y<%Z-sEk#p%cL>WyF`z60&4p&+@%C`Z7-a$ zz3X_^y|1|q@0M#b&CVK2crt}2!B!i*z^f?@Q|qd1H-V<5bR(l_5~h!4u*?Cr-gRH1 zGSi*SJ!?Ts5K7XyDws5Son>}!13j^128RT!5uUG#u0D(AkiDCv1P zZbZWXz7xSQ2!sMeDk%esFNq=?G!?POxs2|E4Tfw-j<97-vta!5QQ;>}`wZCe>*h%JawL77mUQk@kyRj3MzjRvt1FjJ#| z+diqTFq8n_U2P(NG>E7FaxX zs}$}k0q3|kr8YJOqarMV0HCHG8nvMK`qKZ0_PmNiUn*<6z0c( zPfDknHxuL!jd|$$@HFwOSU71W>k(HqhJnfypnr}i%?d-UmDqLZBFE82H zKT%Y}tqOYA{Zv(&Q?7Pk;F;*h?iR=&4h07uI6wtKmI~sHMYz9V%FKMH-oU=EpL+XxJ$l#sucu*orW+OKh`-3Mk`oN6T zm0^=~mee=)6cOe%)A0~JWS}vvt+Lt3@wHXMs;d|nXU#R%lz^pPh5_(~MRU`;%_&*1 zI(ui|=|2ltq|7kTTH%Gtrwu11B`$Ck&M6h+4ajwy?##ItAyw?Ah=F*((81D2khE54 zYp8qjtybNW*dRsW8B-GSgs3()HKaaag|o0oXBxe>6+B@u;d+d_U~q$tGNeP^AIDt~ zbA&LH`}`&0lxh?bHpkad;)Nm=$W^V*`oda0NT{p@q6k2$T4(jGL0qvW32ATcv|22l zI2*{`7_=9s6D1RAbEjxki6V@P`WdT=uuIwF;Wm0ZOa{lb1Zk03>X4HUgjqVC&#E-gt%i#FR9iB@C6U6R$5N@!Hy^ zZQh1_uuLXUYh9G2gDFDdxfJ<8g0})1Q4laHstqiMlN5vPbuT^%j6=3-y>*j|?6s-& zbaiMgJ6c$XP9UWbm`Jjol42Iq7*t5oQadVwQdI8f+IrWwH3xOK-3rKP>@w1}b5Ig# zgC3J?o0EXP%LRM&_gvp6eRavkK^*CF-6E-}kPhZEM%$;&Kop4jUJ6B4DVRW`ief<< z0!IR3=ff!Rd|0yjbbVLfR=(=j++Z={I!tn5) z1Rh~sE{2FuA6zU0*yrgu8lPO%_qYK%yK}nqBVqSw7}$R`y9X{F6#Olug$Y6U5zr- zae8&8Fv+moap(zDzLBig*qTz*t!dc?ij218sYD0bwdJUD$CyRHZJC$!} zyPL;wi*nK}JMG^CG2w& zT&)shxOJ_jZd}*DxBT(RH@H!Oe{OgG^X0Yck2n1o61jmWl8cTaa#R`0OiH9drI3K7 zIf!1XP?M!UWz#L6Nln#sfew^HR>PJfXRVGXMg_C2NfTw(+Oef-be2#>hmFctqb#Ec zg#=T|%XcWGJ1S<2Gtyd>1+TUyN%gpIr!adaw4#5MY@m<4Iz$HOSpqY%i6u zsZ(NGg{#{fc=Zz@D5l4FZ#&hRwr;E;6`7%o!KP9s@IyPR*ydB~SAm4HQh|uoW#v;( z69S$`&*RbYH2po3Foc}Q-UZ?jTtRW+i^4q0!xvV zb7(-dWE)qDqf00~nVv8jT@m&aAt+uTzNwCQGACR`a8G!>FT5KaV0s$<{iZZ{a{#Z5N_rV6OU zBo4Pl3nhh^CFtjnj+PA4UR(QBJ35NvdO7%<$VO0!-z-Yk%n2@tuS2iXBnk!gH*9v< zrlesyFJg-TS3s!0=tCuv&m!4F$e$iwDImc007K=TnYESOtk;d8qaZS zUXETqj*sz6$ceoX1$Lo`r2ppALm+&Z@4{HTOaRg(T7KQL+7qSrV-I!S0w&-f2w7oZ z4a4F_!l@o6Dj8^MP|x|1Ims$vPZp{x7b@Vm=vM5gY-O9+ia3P>ywd@fW0M9o$7nP` zoCdTLnoetjF82ZAVpDrq(W5lE-74x!j6rX2K?jeOCZ?GZgCylv)uOFNvErrMj`6hCz02Jg;!`K6!v6FIw#;rIx0d3d_3dCATw#U-8DVG zKNNH$UW$2xow0NnKa0Y766*nhG_Kh_-~faBa9`sz|&OYDh3#fFFu?v6R?^KQc~rbi1XDMu>e5q7WV)!R*f@*MO{HdqnJIaWVKRzsd7^#sI*->wrez# zRjP`X)xxSSWphH5kP_lG8PVCw?f0xynH%|SP0EtWBuOPHp#!vj;_&k;{yNCPg!zMM z7;y|m6{gBiW~EV8)gtZDN}?zSe@N#e7;z4JRIm-vuCXSSnf7x>ZJ@1tFr-WoloYp-DXuvL=9Cg;sC447 zQRrByTAQ4~`OSo5M3Y+HQ zTamAuFXD2U{wz9GR$61ghK6E&PRrs4GhVR0J&eGtos3$Ut>;T4?a7e+F zhfrvmDgigOpn$q9Bz{qO&|R$yQEJo=88<``%=EIRg#Z8mnZ9|Y3pYHTq3m7#Vf5BN zHMHn#7hW8L5Rwb=r6^Wpp$;JtDS#nZr0#cA7aGWu9{}WJ%hAPK$U+SnVbQVSZMlhk zL=z?>msSL};x!AAq*szc`qtGXC^Q`VwX#yp%ZqL9DBN5r-kmiE6cBUqtw5$$EJUa$ zGlx_aa1yz3VphMy)OOY;vNxZ;yPUQw238$N5c-2~abG;_#O7#69DkJQw@7oKS^yO0 zJd0f&VEsL-v(4Rg-xDW$V1~;mA`w5(NTxK9v@haqj^$eycbF$)w)4z5$8zr8_zdwP zR*)uxV{UHL`-`DMXETIEVL3nrKXJ_%pfSGnk#!0Sk{WKiI{md{;5T72mYK5h3N#Tx zfMw-HvTUrddaMu)e!FLHog3MrRaHuXT9Hz6lmO@xtzD3X-LN-eM_2h5s}ILEpUMNwsFjCD{%ru&0BRh&S=0wBOHRyr3fxynmy zX91t~c+aLh8-2+A!uSsNMn<@D<%U8qi_N2e`Zm@}J;d5|Z{40)=m{MJ6iy7(p7^bP z6p-SH_UqziV)R2sRd4*m@E2$;|YE1xq_>if)4^hr5XsT1&3ha+1ZuZDxwFKLUuG*TJ!?zmBSIHj0qBi9%oN22?;`2fY@*i z&5k?E?J8}LwRU80W0=(wMp9QLrylM+o)hC$C3x|10C&UxCx4!{r~yH zsscu*;?l6}I{KjRaN$u6D2Pzy{U`safA}~5j{oW3|4aYA?fF1Bi&lQe@y&HK=5Frp zAXoHS3KZk+iEKIsrHSkjrK7*%x4WXP$K~PC!Q>j!t~+=ivs^Pj&M+i4zE*o5CtQ{Z zR=``sq*JLgrhGOJ0Ox#c6z#I@xBZLLtF3Z}lgx(vSibeu#x!FvJjO5vCRR(J2{Rr~ z@vZ9bEUb*3Xb1pQLxgK&;9hF895yzxV8WhC!@`LSUqcU3ClPgx;hMo%HBaoAcvS_Q z;hFu3xgS-S)AFo!1Ue(f`Z|wDw;dDDgDX>nXl3(sa{7{_z(nKu$#nLLYmbxyQf^`w z+;NzWZ}$dbOANFoaU>?MoEMoObX*231z&&p?O)@MgjH>fyU+C4yNK+{&ooJ#Ln|p^ zL_aB;OupnDS}XA&42cSwhyV*2ydC;=2$MXbP;oyKDuZ)VU%Vkn4NoroI*BF?!1^Q3uI-!#9 zm$7t!FmE1NFK^W4ckn;EbNqkkln=Za$rUzXsTW`%ASBF~rXUIWfP@7(_~~(QubW4 z+CkFnA*)$AJHzcvGc%qLxE4*CM5MhHs$fAQS}h1YnC{Tb2CK*6C+`<6{TCeg>Hzq| zK#Z_cu9sokTJpd81BR-QXc9V6ZT`pq9sm8W>!1Il|Gth6(TmWX<%#2Nk>cPL%=EmJ z`5N}P4NNt0Fps9xI%3mWB?6>et}E`a-I3aOrfyu0x%bV=?Uish>O!)o$(Yb+x|l|>Z~|9dfe%Qe)G?i(lkeTl|_@aJ}xWvXCJ#p1r&l!9ipM)DDd?7b$Ggjb^gBeP(AqS}>uKPGsa! z8jHPS;5FikU@EdPq(X=@IJ8*LTdXMu6HpNW z9TQ;XmzyAsxM>uV#^L<9&u& zDRK}w4dEb&k5TpTJ@PL=%+d@v7(W6H;2xqNKSO-k)*#jK+u`~$xXOv0ouAlM21pAj&78GuG5}}76JeB`(nFve6o4vK*jsY#DiZn1 z#om}xAt#)0CU;dTKFXL>yiV7hIj;*?2^4}Mo_9anZl`2T0$~K$|Nr*iZwO^HD1+%h z$pW2F0Cp-pNF5~q!N31M{D=SOzt4Ie)q|e42ENa6+~Il;=XoFJ?NQ#lojh`ne}ASP z?#A4sF4_A%)Q%0r_&Af?j(xVG*kZ9h=FE4gwdk7!sm+YCF`qoQFo*jRm0!|*#?)th znhRm-9A9JwsI=Nnw{_gc-i&+vMjqqLM0G)d0S#2f4uQZiL8+!XjxbqJbrCFNj6JN2 z&Zrz)cyW49t_Bfep%cUE5J?VhYzqL;EjMCA3S!9Cc7kJ2X_GVpnVCV3$ULUdQt}c~ za+;F^_^cuo3Ua#Xgb*qOMiu*c+S3y)Ew#6S@(gCA~$o$FQb74X?IUT1dNr z(=&VnRzxn`1^}NV$`b8HJZ;nu^T{oapkkDwd)%6zUoOgcbo|2yoBsfdXzX9II06vn z9BYWaj)ZexUvTg6Qt3_rJ3NH-kY&Hb_Bn^*@@MSD4a;VkKT%NLFx**4>ZA=2!rTFw z!Y|9en|y?SvOF61Lw#VoD)Nw}ltDriR%-CZg zC={%D_EX-8h_F9BRg)a`(({lm&*RA6U~PQfjh<^FLEsYteMiVA0TV=4)@c~cQb0$W z{)C{G+w+r&=d>elod=(^=k&Ng^nJeKn(x+2!1i!3;4zQgo1KXAa11Z^ROCChd-3eX z)$G>~UZ5R|R$6&q?Ko(Tu_kJe)+MV@M{j3a{fOmw%8_4=WUL)Y(WZ`!dZ)j6{OEL5 z!xRr(#gxWY*40wMK$Glh6mt_`2g6%Xw~F}ChlQBF*03~RRgfvu>55&L7;D9}XozE{@3Bj;74p)1M#?J7RO`Tfl>2cAWZJej4 zQKduaAghE^a7C+JD*zNqOOpY!ITSmHJNxQp<;J8L<6z3fieRRcp#A#Bb$9%|O>VS} zAhSJuj(0j&1Wx!w6%e>TXmEE)1<+)m)GSm}0=4R)Vh&u59G~L?3gx563+{y@-%les zrug>5py=qyMEIA7YeE-&0Dx;?ShPo&>N2i4lV-Dg5I?#;SL?D*|h>-)7sW55h`N6b*%&_wE|#QFl4MA zKf5*vzywO=WJr<4v68#qnoWwBqiZa{sXb}O@nc1fG>>9;Y-3ymN@qz8%A!DzMJ|Fe ziBtDjyiMAvv76=!(W%vn+{z@KKut*{>}oV>Iw#`ZrB+(wE|HXTmZ$4#w{h(8O{lG0+-Ky3& z5ih$+n&Uf3N}0a$3c3(^Z>#5id%5R=$J29#`@(AS?c%k1dv7@=e(cwOGn_t;p;Yr= zW0vp!s?9wp?NtAgP63;Pgj*ep#^C1!GO8=0C#`r8{`N^5Iv${i7M?7v@X7@~(@=XS zcK5i9-|$cNN$3|MN{k1&v@kkI8+-w*D#i@yqG0J8uK{+@N~~#Kbtdmm5)zVG`hLVy6#ae1l20f4dvC8I2a z!xTw`2#FD>P((D4^r;@fFRY7nT(!^(m&?`WxxO#8)U_wLh53fd)EXIfmnAlDFQ(~w z*s{%iCAMi|GTWlSX26i5wX#61-f$wKGH4y8!i=$mwE|elb{Y!)T}QD3&_-!sEEu#| z7_bZj%$u~14HOI;0fJez9*3ppl-9V&Qc=?yYrOUGGtWuoIb3kP5|jpil(-@Z_jWap zg^X|yn<*lbXoOJW8^{>( zd20PE&Ai4WUWGQdUIsO75sX#3reK)O!dIR`A3VutwhC+rPuPr?mNp39Jv*H?Ediao9`p{zuKQ~|Nk4+pPdT{_8o=+0$%i+ zb(r87Py`@Dn2;I+w4!7z+DZl(Lq>9tuk*Oo{BB8;=P7d%SoU~z?vN*_?6smEdR%P- zpqDT$PPEAwxT!eoxR`(yT@5aV!DDzdHT7OT&Xibqsbf$OTY@qrw|gu&j=?@cn+2O~;MK#p!a%~(btkDoYDz6j7(~@#!_VQx1A=26 zF?Ot2NizD-V`UvRu9na;>v*1fBAJk4BMt>)Fbfrc6^D)8wa@Gp-0my&LNDeuC$6NSt=WfmY_tfJHT06?Wkb(IA#XV`im3^tqI;A*eutDT|C6W10~sjK9GPTga(#?AwWR{pw-4pSPZEf$%P+w+-TF|)WYxk3YoN-$~+J~HZrbq zz5qLhWo}MW`i;hF+CVyJgT-p%WofOZ4Xpq)nqH6cT-S+L!6qd~42eQ=4o59MrTv1B z3ZYxFx|^v$)@Ed5v_t3+z$_xH@QUF&9)m7N0OoXyj^k+A;on~#fBvYuIFg1EhoQqB zW}JsS4_SY~;mjLR_eM|fRr`RGl8BZsC;30(_1aj}Y3<2kMqb8MKa($W*ijSg3>V~mL^%rHiQ?R+vEK2u+&mI=)LQ$kz0 ztDAb3;nQc+KljAx`}cB8kx%)(!d;hA&QgIPO9O@6`R?n^TqCn%(`h`KP`IrVx_~fq z_H1G9XwzR`x9`6(L;cfEcwlq-(q4Opo+Dn5FOJ&e`XjP#Tg`qQaeGRQYg_zf>H^{d z6@=h7ALBA89|QsuP!9|{F9i?a0{0V+Zf?v_6>j@~ZASoYhUtE-=CvrP`bqlXXZllh zUM3h<$9BFhhxxZ$Z>$g~Qo$w|HJn0GCR)q@3~B^G1Y9`n?3yXXe1e@GPTuK3jF3j5 z5~iC@NUjyatu~$dsoA=AC8}b*+LW%@BEpVIW&0dD-R}HKHHES5E%EQX2&EWhnQNf~`U%LHIyKw9C3v}MZ<3?cGIAHdTu2LOdZt#(ye>8sPx zYV|f78Uxh2h3||(>`>6+ih$G!A#gkvr6g+Qe3UFwLtUl8wBi!unA0f|S8O!fnq*p= zWVeZofi^7L#2d1;h-u0r6;T;mVLbFXJV#7-Rya4dK%-*MQLwZbD>7>96@XnUPI2cY za-En`B=Py>$NUN4u(s}1Rpwppp~wx)H)|oOrY(05a#^MJUOSq=5IbV1pmr=fKfY6^ zPG@WnR<#`GW;#jT@D&^OVDMU0By7+Q-o^b`)_eL``}R|7z&_E7eqIhe>|(!V2p-)d ztETVYurdY606Dlq9qdge8Pe~ncXsNO!lXDhLJD0-^93l-e>B-$tw6bB7oWE@*kt8o zBVy1%Xc-U32OQ>g^T=LT&eQ0WZRPfnt}r5o{%|@V0OBd>vi$ZJa(7%Xq^KzOcpo4w zEd@lil8j6{8tc{$Ybh~Kgb)Ko1JDNOOq8$+ttP+fAw`ijDoa{%l;9D|PG{N3(fCMf zpD1rFgN9fBl31!(fVJP!OdgEKH<&$(2errsI24cej_rIVp*uV?)QDlypDfUa{Zb z(z*#G7UCEL+%wnn_N$f==|%SDz3givmiCn%qx9Jz7p@6SkxH9!B9IJaO1jbjWn76$>qN4}K0+c53Ag1Z5)CLhFI}mt~R7I}axOnEU8Nsz&B#vFNg44t( zP89D_#znMbBp|OW3P_e|oQes(&(nTTR_c_C9QV(iC+ig(fD2G{6d(2uX4pdR^@_b4 zTA`#cTF;%&8{y0CR`b$2-vj|e-QOJ)>xCkuvNd`$tL`RPuA9uMe#!UhDK(%VrFxCB zXAJzH)$jPj{`FrL+5V*fD8)WrUXI2E?)2ZX`@hj~sirll8oMFH7NivU=(8Od z1SD%PJXMk~4=;o2V0IX>o7^262Xd_HOrlF@#5{yY!hJRISEAPG?*;?w;V@T*80YXW zr2oJ8v*pO`a{9dV9^>`7t!R;cAqvq1k^T4+hi+}1|Bm-pA0cSfBmY9_H~0#mjTe@;O<#_h!1wJ)Q=;vmbz)%L&g> z0*-Qx#!dD*>~IhinE-pTMTv5+A`V_;z`&7fLX6%)tiXm=x)HErcM8+NuEbwPVgUP# z`7wA_XpFJ7#)g5y^70I3_DDG4LyF2kw4MUN7Hgy-h4BJ`Emri(kvT=0&PXXy84KRYHeEKyf30bcqt>%|7A)xxAn-~?k! zPs|~;`Vs>NlTev`dbeM|iBKVK&T-jgf&sS02%u(4F3~emW1k;#qW7Epxiy!FQkZK) zJ}J9T>{dFCZZ03GjOS3(IW6?OoZ)*Bo=rV*O_9JH7YY<23J(9{dQvrGWq0H(xx))) zJz)31#}k3j0OTOuTrD{uq9KDw>aTQt?GN%_{{Q$(8L(xX+`Jtg%Rzc8^?(Aj{qh_A zbveVK*ii*)>HtMispvXF6rfsXel)A6KPD9q1UO0>3Puzg1<;t#PFn=(y`nG+ zoG@@UrL0UzC&lJ6c57+-7WrmxxBZ9xhyDBdfBjTn$5#rEst+*vF1Scx6nK0eVl%0t zhbjUX@-Rh%Z31>h(Gn0iFeNR>pze{A6B2(O;qE*`-VzUj#%fzfr zgZq&yNK`3Cb(>nxxtN+;yKJ3AHAc2(UgnTWCi(HZj=>D z$%HJPbfs8=Jw+^l>5h&+(CNmo)DmE02|Dz1{z_U?qXBImGbMuftul>r-M2J;NrvCD z+l>Y*v6(tz8kvBSuisbi?{?qUT`y9krj}iylp!K&QygHjo^0yp-r#I)N~(ayjo`+W zlhal!*+3;MLzPyGwMJyF@B~nO8fbLZCN?aJA&Ig{JC&m(Zku_xxBW}M>*DY2xBbaH zTi7u47U_F}i46=wkdp!}K~)VZLTpGA3J_#SrjsK9XhHy97LgO0Pw91!eyq1{Epj8C zi^*eDx+te?)38^^Z3Q<*h&W{m+#7MRJnb=6mNc^%dYQEdBEm4(F7SbNVSrGsQfLg{ z*GG>)AxEFhnDoEcUjLS?qiYr_ZPp>X-D6?XfZ>#72OET?CJ``Wg#k7|3#0OTJd&fP z##wT#=mcK8Fc?=EtmHYfkrYk^u|1XMoO2Q*kX%Qo0Z^%-m1F`yvjpA*GieQi>Qt0K zMpmWcpaqloj!3ea3!%Y?u~gKKXQ7jaiFZsa zCRng|gJ<*1C^aFvM-Md1P`Gy@4@caDS{G0;X1+`U%|gutMQ8e;l|?5TW;C9FWg=hP zrej(X0z=Q>>l+IEc2Cvx>(RHHQ$#G2Db9V|d;aBH{w-fWh8C}u{j}n|nfdvDEiY+v6x>BT^RD6_9VKYG4NgGy?&0zC_QQ1EIw<=J{%DTb+a|Dadf z14$dtB%}lm0G!jDoHnAkBc6Voeo1OpT`M7ojXq03QP$KH9c6bq1OZUUI%sfqB{sg6 z$6MdJ^%TG5Go&~k01-fTtO6F`aA3(K0@-GU!bDU8sx8R2T7yt_u0|_n@5xJVe^u|2 z^hpG=<#;)6=6%DlS7zKG$OV)wUvhiX%e@_LG|#bPEOE0UQ>13;MID!}4Vj|A3fVjB za))GS;w@e3>dM%_jkbU72NZXpyG@%Z+gIO0qfJ2|CRG9hrzXqp>X9#DP@*tm6bmv7 zFCr-=W5k3720F?VDi~B6Y|KHD!&Eg608IrXZm3IVx+bF<<;tkUk|x()VqOQBTX{0k zYd_w)ZV;JIxMIE_VohMD4NZY>&cHi*q=Lmvo;ayY6H0GSa}fiF=f82mqDmRlD=RF( zX8lp?uwf_a;x+Cw|s+t#X|gO(ee3XE}Jv>4z(+jbt)#0hqh zE>jy0zri1`Kd2!H)W#wMgLUP26gy-r;HUpX36}P=<`~wzSp-rmD>bYbfCa|DRJE}N z`w`agS*)t=a5Hy-|sw9?2tU|+?H43Y$ z1+W)XL0T+j){ef|#2#8wFOBFiBdtR0ZJrOt)mK_dU4EdJ&1iotTIzc;>8kqj-h5%47TL3-}4XNFuy#_d^+s+mu zWyG%^Z0Wb_i2->KO}O$b#8Lj?!M0*@7dG-Pu9>iK|zUXcoufc8PGH$ys_>*@BMU7kEWdT$q` z&UeqU+~cayF2`NB(UNCGn+Z+=J0}27mp(b25w$dLM%YyIxsr!JdlBB?;ti1mrxo9_NjKvJ-A%! znD#zqGIDgK?3WIA%y?pYB2d&~EVg4m)g>Jq9jOg;_kx!fvQ7XHOV(qasCOXvWdDwS zC-)L8Ftb_D@C=J}Cp=9DzscJmYGw-_rdU8y)^+uK_RN8@3;bXO9AMQM(IFW$2vTA( z2@?r&n%y^%n^gE1K+JFFtyJAG9W5;JNr-^z5*=DT9~*W1uD_k%XqOekOTF}(;iCFn zuAHSHz*}~2X!E628vPVVgP>ZY z(M(GsNB{#2eODR=JYE2xB?$t}05X;VxOl<(%jKi#R9N9S3}po+u{>awO%J;0bCI!b z12+-IPGXkc4_n&j!s0*|o7`JoR9+8Ip`n zz5gAcTLiug2!gTjQE@Y5IWF<(S?Dn6p#%E4`trfq0Fw@J^)zQfNDhI8u?CL#*V^PqsK5AM>(9<34XsCd5~FcE!^dA<7ir;s`+3jrh9g8Ni^s@}sniL*oHg3= zDs3w%sF-XTM&q!eV;FPHN}Ry7(qffCl9C};!3Z85!7N9n1RDkgZd2t-{M-Ktf|Zje z!PO4}J1U6wCS@@U5c)N@e=m_7!opm1RaIev?CYdxQs(P5VE~=A*V$B&gBBeUB%F%UgH6$X!4q^rh5DsH*WCO#MB{Ho~fDppN%suK$AEC z?MXRTERy{S%`@y84&*=;4IXdNUv-=n>B1WJtw@M9)hGRI7c`U;*yUx>KnW`_$AoKRbK9vmXhe{ zz7vkD2)8R2D-{UV8n(w>fEBuR&AWghZH9r%A?&e$l#|W}T#v8zS7a!Z+Hj2}mNHL} z^ZGoWl{Yv;r)H){>Rr_??XYnXPnR^LB;*Nwu}`+DB4#GeX$B!Ry%={)4|l_1I7E8~ z_l;&7SEaC*_~zk!^G&)h;y~NweC*E4(&nR89!~qeRh+%rVipg|DMl2SWqzUKHR)rl zjAud6_*MJ)dl(AFL>~}WKID-~YiFEB<7^X{p{=75LH-?^Zb+dIWLO&xl`X-v(Ny?AD44fYjNf2+#1LcR z6kdUt$6t|OUbU_a`J8fz39M7nhCn_l!9!~$Na{AsrqxA=TGA-OvyOyy)eOFp$TN41 z@`SvFz&cYu$7_#$&45gU-j7ofs0m8tE_IoPBC>84ah37u9G!LY zxOphXT|Jq*OsG)whShIp!*JA9AYXoK-v-V3~y>p)dpW}!*r0IkS@vQNjmG_Y{ zXiTYY+b=RoH$N6U>g-MA%Me#ohR|_+1Bir zFNDKoMx*|`BDw{@@nRiz60(MSi3m0N2#SuEgyf9tke*h7hzqErm**Pylg#uZ#Evb@ zkW-Nw(ZF38VM76;mIhzn_y628ocV2VUC!T>-qrHYzIpgG0i@sSMbD`)^f7vbRnxZ7 z=YM)_)G9pTjA2^Tf`kFErT{haD44`fD9%h4QMD3F>-1~DI7Wlc9PO{>A?u zp8u!Uo78wB0gJp75I_L73Dr#h5zT!+e$CFM<{k1XWlmCOfx9cY&);&9kADtCCtT;# zu!A=oscnhdZi}=sX_V$jrX!UpS$svpgzqx+gungC&)>$o>rcmo#-uka0@~?91S7eE zt%;=!v|+dH-Opf!yl_#)_d;1>#>q4Nbo#B9xxh!AX3$;RJ?&L2r5O> zi5`_6dU&?&DybjaayONmmNy=TsjQ8c?TO+B)K8}S(Rx0m^ z!C_7ck`rpwiOP=+OvLJeMAs=mff!d{3jhp!>p>(QT6!;@U>!C%G`lA#_+ zJ{ot9fAhEJ-+aFxo>nYtKjCH0RXcTIR|2r&Oue}*ajYj+E1-%wq+wCmXi&pQGdx|5 zRvp5Yr?)BvOofi-qeR3$(X<&Mc7y_CNm3Jlnxt}Ys186hxZfjczb`gH0xYq>5<6pH z`VkFDqy!TsHI;;rA#^}#SO5@Z?Xhxjs>l8POrK3{>&EbP82~iQROodq@tX)-D2qiK z7p|pAcj3ouwMxgM#a+1`lXVkT2Yn`K-Fk5SV8+Jl(L8T*naB7J7cHK0FYlW!?=M%9 zx!$X=9dIELB$fpkG@V7;cswYg(9?)FiZvhO$AM9S9V0^h6qHnlBTlI`0wZd7FYHlQ zsPr_+ACc4{ulo433$H%j<2HfX(8*93M?G597LPyTbNKoC(tSS)?a*feiBw2MLg^AL z;n#}DM3BgJj$H*Ip?0xB7%3`1E_IY!X38>O_UI$e5kYtE`|%zSx7e(bgFn;HFtqB-@05xKlFa14iU_@2OqE+&4rNBM0I**PGtI#Z1ac4(d z8L_YyaiuAKGBf=4_5bC6HLcMMLoXGJY{mM6QpgCj@|cgb;hKNEyZY8!MZ__@s4jsB zU?Hp364~OSiUGmciwMp+Iu6X3@}ZE;^ymXac6?ehcM~k=W;!v)M)9IVA%y$@4IG*; zHuMo;!XeCg=~uS?+9&0ipSAqbsr>Yg{Q0dlq1`0XU=spB5w>Uy5(G>zd<&ou2LL3Y zkPwg=Gi4r`fFQHrqv_c6=yO>n8LY~`<1iyr?x_|#)j$Tv)-+P2j>QI$1kRrNhstX+ zJGTo682ckMFz&6ug&;^#Rs+)tC>x{^&TaAvPF@*l2hD6Zx-#vU z_C3HXe9L=^ZQYDNq9@a+DHKwrr}UQ?Q!&Nq6ig^SIxh>|r*mLALe5XqeHo!F1V zxEvPr!{MO}zjLFjG?C-X-yEQz*evZK(L$KmF*|@Y16%(}{SbfpTof5ga&;+P0K`1p z3LT07hE3L=-L^-Iv;D*t*MFGqrGr!o)eg;Z9n}7O6rl&fAaW?lYL6t{yG%{EpfV}8 zLK=bw zv_$w2=`aR@urDMKP}l<$5Ak7SU;u~;12q^_4oP_7AbU6|Lc-?MM`kyNqQ_XXG7`L) zNod+&>!Z9NEn2l&m`uH_YYu{k=j+rWeeS@r>8W)B8&d!g5&LZt_dY1xp^ZdBaba?y zffidabH+)9E2(&TCrrtS?jE0-$Oh69Si@-xY3*Twb=?Skl{Xy?Ye|8DXZ<{RE?z7z!ANDV|Plf`KPKSGQUh@gZ?sk}5$esA7@#jvOn^MYs!2NnQ zv!2bITfG7xTi7rID`||RJ;?s7d7JqwL@8xi&i*)nDGL(=bii5bmv2k)Qcqy<4jE_L z;gvQHEuxg6i+2cYg>y7zX0xIK?Tp!ih0;VBz#wwI0ya1x?D#cz_jcRax8+5%t}46b zsL`U5qoXSw7Zze#X)`%lCXA)7rEWA1B9EwXqoR^#a`NFVUAjcGuwoOy#cS-=>RlP$ z@!}8WqxWMpk=gVIbBzt)&80a)rgLxP>evw9>tCD27sJb5pL9hWiyI7pd+O4ltkB`C zTj3ZaqXFhRu+pm*&)R8Ss52SRQPgb70V3eii0cr?R=9C5op;KG#RtUWc(G$E)7UOc zv)A>;tV;kEep&!LkrOCXPMtZNl;!Q&9K4Yt0Dmx>yDvCirq*-}{G?3UrWqy-<3{VM z$KY%u<_~3k{BQF0^8dw$q;+yMKJeRg6(_~|7%YQ=`VjcS8tlRZIVd;K1jA-XxCf$S zvl=ripFV7a@*JF(d(%f_3b5#`I+dLoy0)5;v~HGJNb(9o(ljeVMr!l9W3eo{ zDnI+R9VxKe@g~OoS#X%HtIk*ei;h2_UIQ{2kXC~;4L300vKE^px3^gH%GIY{;n{YQ zp}}^g4`PpxAOmJL2+&$ar2{Eaa-&;g5{%9!NCOn|6zC+n$W}P>Y|s%I&?E^v5aO1B zNpb*Lm_vJcR&Pu`$ay`UB%YT*YTjrgWN8QS1VM*W1Us5DhOC~2Y{T$un~H+*ctkv` zkZlPWmXx8wYxJrRG7=T9jFOF|YgG(8fikwFw(Nv_5=cv_X{iu%fykx`(JsTuY=zLk zl@9B)k+_6HyGB#7sE$DCqlZ|&E{2q9NQF>*tR;!}=_W)(>qsT8GTj9)zRZ&{KH#fk z0I*VEHHNrIli+YA7-2K;J0M=yo!;@@s_inUd)dEo{Kz`s*U0%aU-d$7@Gh8%gGt0P zMha5Bl)Yz*YEcFtmaGvP@m!Q0FUgI??f@_>pW7(9`ukz6F1q9w zG}Jt8FixN52BLFzFdT~cEH9C_{@Sv>`it@HXSJoZxj69FvU0dJAg~1(OaX-~`~W5p zArRaL6tHAa2?Oog-okvhegeOL38u~s}oiz>c_EULNtu1*DS0pn-+wg z_y1h!)jy-GlhhoD6pNrgj0^j4jhI-f4U$zum}Zk?y3CPlb8^}sv{`k6GcebTup2Qc z4m-RarbY`xWO1W&OFa)ZRjk?Il@9^4u#h!iTxxGXT(%pbhDzwM1_qv;07hZ~gg=j# zC}hGQf}i_6WsR{r$mhv@C;SK{P!=YhxeBn0g(F}RA8zi`V*y!Y1S0?&u~n zunk}W@n&fPNbwAU52RO_q`5k*0_?F}7Yf53Zz6!61fAi;jDc^4MXU-#aA-}c%z{X= z(RPB79IwsAmzr!L31ySY_yl+p9AQXz6@D` z2%#V|=A0Rdc{-QZJ;`C+KiLX(i8ejVL&`vwLq|Z;ENtPNSMS0BZ3R)%gJsQ>-$-Tv z*fET_Ok?$V(dAa<@uNld6h`f4eZ<9urDt>EtaXG8vkXhxk#R;OMd(A+j4!>cHL-h8 zeJUwb?bt>=WmjA~-KTcWHB>_(j8H-a_xIL()*t?3tO(PqB<0BWipJ34aNol z5V9r&#(+W$i-!@S#YAfl8#;7bwcwa*zJezddmRFf8gYy7sGMwneyTQ}sF7 zI2$UfP%t9Mh!lD2vu7{ZYNe}>!)isJK!5lZUO>&rD##|`q0Zv!Q6?$M$jL`{CRhoa zDy7>dty|B);K3GNQj(TfHK6Zb{oZitRnh|6<_1DxrCkvh)9nV9U#Y-Q?g$wB=w=Rz zGAO=MI7#za2;BsUk)8lve%!3}y?n!`Exj+l%!O%>?_AsC%9QpDW@b{4v9oT%MbK0wEsP9#%c{7~nkpnWG13y*PExNvLG5Ae zp-wra)VO%dR2?-U<6&ee*zG57nPLs$cce&vZ=N0d9d0>m-32xO^oo!4$K}Tw*ZVq6 z#)a0yskN4qLb5ecmH3_5)gh1aL`z++eXWCZ@jO~udd0HQV-v6eX#!*dIXD{9LnLae7wzc=7uu4`wsc%p2Q2G29a;h9%5qjCy_&;_!6BtYA}sjZ zdye>fA&y%zv83rdTvH4+X>UW2H`xS11J?yFj7@*Qr4&|*6dZNDi}jB04(F%;S38Y; z2!8bLKH4wEFg=FYJOTn!fFOxag$V*U1}Sg=XY`m%f(r$5T5_dQFtgnUUU=-Z%mow| zh1myU@p97WHR^b5UbLxds&Qymp-Lb|R-bMA9!6xu3Ya~{W1xFue{cr4s)nV-Opz3Q zaZ^BUQ>PiDBxbCEG3^mNv}!;s?P!}8y%=hZdNu%S<=OM|9z$qYw)#z%e47vY;l^JK zO~M&^1R;Y^aMHD1$*9CY+ID%eNjf@{Iz1#=j5#b4>ou_+Cx4pMNnXaR#LP%CUB3S$GA5<`zbWkciyk-EhS4j3FXb(+y*X^f3D zLRFB)X-yN*R>oT5Tq+GINRC%kb@?>5vY0h+H;O4Gby&xlj>cktT1ZR?qta2Xy2$M3 zR+}=YXUTgiC7jsK9awhNZ`k!RTklfK2F^ zU0_}tflNUz(Q2V(E2hm=_yagL>msa`L&#)MoQ>GHjvMFl%^{ix?Dse217s|6wmke?gpf+GxPfKx49nmkDG0WttM z3}p~}Y~Jw;|MmyB(=Vx8Ym~|PE&58ixs;R!7zjuRg;1D>ryv*ffa1jk#@0BZhOk%! znM%*$X60lHV*&^WHB#JqMQc^udW6wVla@LLo0PMu)`~}b3wUdNWMn8B9e9k0KJtIx zUt%t5{J5W=!859$nj{BRm;s>7-Ho(1TwB8(REBnew=G5*dEg6c*}*F*?%apo>a_8# zW&>_26DoiGOl4~q$0ZP((ViPtw*JO17 zM?kp0Nj&u+$EGh~uRQc~eNgJ&`0X*DuKo4wdRG>K(aVivpscXhf~V5rh{rZOH3v4$ z7!bL6^YJgoxKZ1V$B8W;`Rnmoo?kIw(S5~~%Tj*Ik>M5@TE{Fn%LJn23MNp*`<6&A8QDVvjOcOTg_Jk1jO!)9wbE5X@~r z>A-hry>#4xhBGGy2N65dTEa5n)u2%8;N&{DHNL~LonQ7}%MbIr+x1PgqIk%kMjfMr zr5LnXUXC&3;dKxMfIuM@=NnldhBL@}<>1xNHS^%0kwKjUkzP;!h|m9EQDz<$U>Mj( ziP~0Dk`b1)N>&|KV=!HUY!yD6%U+EsOQ(j|gTfcro3Y>QpxY;k0P{V+= z>&~Z~n>nXj82w7zINB>wucY#X2e$6%yXRvG3}9pADGrQp3eEvaBd<4Y2@vDyie#M} zadw%K#fCK0(+$#a=u&Ai#*R$7XL}ktvg3LnA`&LqYiOF7<_PJ!hyXPHHo4*B-nDfb zzqLZ)g1|??zmANB72^V6Q_kD|wPV6EH3=v0kStNH(m@sK zSh%tBtv)(+s}CYgbZqj0Bva}-P{F9d3<+(O2n7ffGe_~9&Ab6W+nHdgy%7pnvjQUS zhGiLUSNQSs&BxMe7bFVqw3}zUF0Y3?4&+1_`*3h!Nz%azAt>t^mgyL|b>G2m=Nu{5vNsFAj*3g9UnfwB7x zzd5@O2q26Hxti_|H8lrUFFFG>A>3W7nLAGlf{7GY2-E7Qpl#%Pt)JJo|2V~RJ7r3H zaci%ib`JnQ7CQ>OZVya`p|_x1lCWin=4@=I1IqMh3#3MGAcAJR_Jgy&?r%mHxVCss zvR=;e{gBtS#WkbK8Urlb`wg3Tv-TlsPDpnK90Le*1f{gGXSTrxar|b6M|McYE+`QL zTQV{-XLQKODpEb|Q=SEnkv&AFzA}>{dkI*qKyCC9TbU5q;S!>2uITpI>UuVb1q_gC zwRM?L#5hf%5^7aR_PxJ>X2el4?Z5!Yu~4OS;GsgEiRE#4KDOJ+cLOdZMlA*ddigj2IZ)Rwghes$b zLYPF97)x!rcd^6|WSHfH{TEu0)@b#Z*x6^00wB)o*e3yHfi6)p8q4iYG<{RNfoZt% z4=^R{XJSet!8F3%~z`*CJ5KX@JU80Ex4GOSM@SY>!p4XI9F|TN zsjL~Tpd?unjSvJvPkyn-y5Q#Mriibk9s*J@H4?hS0hsRRf{wcj;b50(QqzX5L9WMg z+J)`Ui?>?5i@(0}@AG_}FT^-WIg?t$Bk81qwRaMVlSf%#7@qGTHzzE=8T*19peI(OTF#2h-K4u)(l# z{_3^Qg8RSb)++~g`Ays^ZC0(bDl*$;90UI1bpU{g(2Xr%=tx-;umHY|$|BK9AzDL$ zE4I#VY@4D037XE%h=zC+k0nq|9x74miD<;}FMrI+Q%o7fm`zt#1#!d}=)TW>1B~wY z?RAauNuX(Q_K~D*nva>wDbFMl4XzMzbLB`Tz0trnFKy%P!#{mL{?m<@-V4l;RW|9n z@8>5cZU0aqwl?P4uXMPrMp^U3bDt8$5<>Av(`*}??xxB)C;B)QN}i8Tl6-hG$uTA) zG2(L7*YNWNK_?#WWy-5G#AeT#i^~LSNpGgku!+SI7_o^G*hKUU9kb>{TiGUq9Pd5l z7#5q(6gyTRdY=3Pp83Xv)0lt^$-ZHZwFZt&S>>0jJ0~(VrBXv6ULiELM+a~e;6VyT zX%8go7L_r39i0_OF-DA`4A%vf1e!J_RAimj4Ej#SVp+>8d2PfDF#(@||tsGf!iN!3A5p+=YFZJmD$p zzVw2lxisf0c6gu80gR`<0?`1K{FP5K;L)mx!;9H~bn%WtLR}&WcNhu!Fa{2hQQ|1v zk!wr46c&bZd^3LMy>@^3_;cgOz?TAlcmdd+ETC41O}*tDc^rzw*F-D;&=05S&Y6-M zg+bVW4ArjX>N0}bH>+!tWB<_Ph)@wqeXPQBT@@iA}0)Uh>uxeGlQ_wXK~w5{8R zUpBXYi~0r#U;rQ!XwD9r=W$lI9&*s!;7&o3%^(g1!g zJ1r&_DUOdJIK~pw*&_0kutyV!=nrc9H~~Qih^mWKr2}j5!DX*!IeI2#t9`hSlcOJ< zn_PHO+TqCy9QaUePZ!`(>=DyNQLiM8Z_cDPMl~C)*`f#vL_$ZiMS=o}o%|Xo;9CYr zcaoG4LqKxlAaIKvBv@WyYUMJ^tLyFga`b+BnIMKXYZCGcnmf}dsB>;>Biz>ln5%Jo zm}dim$bg(>F*ca7Sd<)y5s#Z!!2l~;ZLX0LNs(c5)I;H}K06;i23gKr{fPrd>(ei+La^sdrC}eHn=%{0mi7S9e>kxFz z$Elx3+?rk{9*}}SYh)Ed8}lbot%Dh}bX0WuT+%2Y+i$w?faYAdNg&eqaj6`xgO{cK zNxr8qiiy^^I!{jaWEPy&`d_x%1@BJP3N394MOz z0DUM5xd?+bqZkq(YgI_QO47pNs5}r-G2Gqw;P#5hpgJ5KUJy@V8 zr?CJOYYR6?6+3p3Y9zUMw=JD7&G1ONNz5 z#l`lBh1?X0`7YO~m~ZJ8Nst*NsClrePo&A&3dsxp;pHEuKT6~kC&s7G=8?fsy2DH) zNbJUV9*7;dG>?pq;`{fhOIN58U!M0@%W$OIC_!1#e7z--%Z>mDHDaSYjf;DLyzGZ4K} z%QFRx>`{nRB8>zPiEBCQW1{G4MQchO_sqpqAu8o8%R)Cnbm3gGAvYyew=Ns7c? zxTxS0LCZ1iIHAj>wl&vrK3YabicNzZa~xWP=7@c%WmaoOCC9|t#mb}L!OQ(et4%vB za4b#+c)RY2nfqbdF`(~ z1Vs^|qyW?i&hWP8a-l=;NZeQqfX1*g1ygC@C1l9Wz~|fB8 z^83;lfDeT=}Zl_Q|RoH*5#VG0^nxZ7z%13u(I#R|ze zlAJH&<+w(+?{$r}%zDH*^R877PD(ebO|ols8|S1!MoE+g#BM2EF~(nF8ZdGUV(~7? zZYA9KnK&BIxYgi?QQD@4` zm@2c%N$qRLpoR=c;U@!;PMuVJEJp5X(ja=Grc`HZ%}jYXYy1rFsWmoTj)pr%vVmHg zIVSDI0W3jj0E-JokdP+pF}~4eULlR^FjVg1llchWL6I1tG$)#w*;asYw5CoD88Qf@ z7fP`{B4$>Dp$Z{$q{&?Ss%v8406|z1xj0DX78y*yQOJZ*d>_uum_-a$_`xnr#`}kk z*tv+!%Wd<9RHY3dXXUaoQO8}~IjF*rYbI&ACqWbm7XI{kL01^+VWOc1sRc5*80s?P zaXI}6Tq!-^^Tnb9&?W*AM!#LHB=w)?$OaKSo6RE=zc#um<#l?byve|%vq;+y$ zn?Me5S&>FnkFq zekU-c#|fWn==RhkR~|jh+GEi~^c+$A+KdhkP?;?$mGR zA5GQg474%Rhhirklqd{Kc)${yXj^8%0>%^GK^7}AD%>dzIU%zNhm9x#+L3q58<>EJ zN+#U=VAF&&%+Q3ri~)5RZMN1yM2$!HK7Ly5Q8XHt_ZCsyVd$!6z?$8C0LQaoio?Tc z#}Wh;h{h8=ghV`{-rq(`6uxKi=;3Ly3mVlo^7v4^N?C;XtpkE_%ZO`BefHh)cYBFj z3GvIrU*ehxZ~inQNCOB^&VTaP`8U4)=P!w8(Fl@CI!QwsGc%Tg2T$xH4AKArM(Led z9ZOl2t;Zb;K?07Z6l<8RYcHubrppXy`cSfemcrp9H&io}QW+xwFjK>TmMdBBQV%N2 zeJm?TMjmbLa5UI-nNbw31xSgkBKqF_aWdZVLs3zwiFu1FSBkbD_=ZO*bQ|NeRE{I1 zf+GhhAR;j9_PD9x{rcO7w1JU?3w4RfOy<(2cgOL)zJ_zW$zSGo-ZsGs3_}ODJqLa> z!1i@50wq94jfNGDmz!soCLq80gxLoRFCtc4#qP*i0jO*16!L1j_KHuN`Q5;v5!zvp zs}m_`r_AF{2gHd`3CnmANy{Mg=eAc=YN*NvDq}69Q;!Zk_G7Q99sP)WpGOQ2>^LSG z&tx=A$Z3L>7CFTjN1S6S*s*9ZCJ?4>4I<^BF$B_dBNIoShUL*K=LjxhFn2e+tb5}n z7hxf9t@`cWKY?U-z_owA`t9MlM}N=xHjD~7tSj*?xqGF2h}zUdMaR50oa5^|4ng}f z8$MZsHpX6psTg=AsNffR!QT$|yZ`6^n_vI)|MNL+dB4bbBq6Y7>oVQj!9m`9{_@U^ z-`=?O|A=_|q+a&(&qzsK00F(#VOiTQOFS3`fIz_@JQrjh=$O5W#X_o|!9LJT(Sx83 zxDFHfHlE`XZE~mpA|nL6Px4HJ;cN5u1u8s^<^0TeCwx-!2Xg%Ak?X-bqpd&yhe3Z4 zBhJaLZe3x4s%G2vNnwxbJvI`~4jC%pPz3q%jYD>|=|kDp=(q(Z0kfxLhtoaj{^`Es z37t+3bt0OX9pgF#1kguL3__B_1po^qPk>BF_0Ue5=JZUQteguyGNI3dWDo0wf2MBx z+F%2H9rUeUiA@m&H$hTPzCzyvt^+S&m3k~ot`#QKc$<}hB@T1(r&mC6FqI*0%zT4QwN(tB| zKuLkJZ1FG>h{w~ja@HcJ9qPJ_*c4r6Ou@$R;7^b(jmHeh0cYXEx%s3E-? zEEkc*v9;)@O0bJ^5S!*H$T%DnX=7{_XPmSj+Mr9--a!0U8BpD->*nG<5oY;wO34O3**W8%woBVnC zIzRIHNf}?I5;0gYr)h6oV(o=tvuQ^fE{-wi+nE)^rYoyFcm*W5z=PRHM^Bwm*h{xO zZs|v&<{}W^|Mve*he(4;+aw7?ga%!qu`l0l7Ttbaas1K6f3H|9hAhQXvpfk=y}KxVkeYB;e6Zn;PuOpoWV@)lq#5VJu-|Kstv=aEKoHsj`6sRf$8jO#IpdfE()|d>YVknJ9igB zpUbCvy{bfx4bX5zuqwidZYC?SVCBZK_0UAx=kPKC9fC(ICVIHTR#8~DIV3_6!0v{mh5}HIx3aq@uK;_X65qMuSBhFZ`tuH^^o%P*E6 zrdNO1EZ>s!ts^^#??0LL{rD>)Wq@4cSdrA+l?H+UNC==?h-G>xjCceEV^JeO=TY}i z3mMOam+=p*{f`_?zRQjw34kzql-+LB&g)1N){0ld9isE<*d9ZkEuKPz3=p^+`;Ssx zupw)K7ayPjpt=}BKeM$pnb5KXA!1{W8)2g|#Zc^N(`AyPVWm>FAC}|GC?n{j7@VCQ zvCD&fq=PsJ1*UZ}q){WEFu{ZUEC2a_ZZem|BcF4=mzXPsZWV;?6Z52QAYi@rqLEKN zADO3+*Baygo7Ox@c@$* z>)3__V)rti8lPeFRv@r-#P|kgYu8^5#l!Hej3%$#O_tc1lB=X;yq4N-N>`%*zGiG4 z8^H(^q9!u#M7c*7f}+xM@(U3stBO^|$33%lPOwkDMKZLGr480*fks7AM~A4Tya>Az zT(Am|_#HhkCRAz(KSP|#ajSL6H`I)j+O$MsJY2V(utWA|j#$dh(khxf`i)YFvUa0v6=+-~ZqA zw*VzJ=bAH;JRaW}8N)g)pn6S#Uop)?W^B{UnuY*QH`<(rYpwFi?5~3yUYKcO!iW;3 z=4@)^)BxjN+ls78q~X*AWX9PJIaX`#X6A}A9Uz~rWz68(EUoL$AO3n$>u-aJ%=_WY z*9`FX-f~R8nzf{h@%1XS0-K3+1b`rBNnm#15itg_0GTiBX@s$k?c$2!bi4EsXNw8K z4z%a83lI$!29-K>00LEw$U1v211PNX7y_P3PT^B;s(Z3{HP;|2lIvWx4`TWHNT{X9 z9kyA0I*w)36?wG|o(v*BA*u~qktIJAqGhy^+z`b|PKjJxSl zs%+f@d^tXJ`{9efh)Fc#Yo!+B2QEVw&H9d*4vMms*hT${F=a**upm_sSA3*py z_Q5|HCBNAE7N?R53uy5jhpa_IJ7mPz86yq2gV|6Prv%( zr_<>of`^ER5#ySFf8Ys0l0bTcs*?#S59M$FsYsFeben}T%xYAyVokYnS%`0sAznGr zPvV!-jJ`@2dIx>fn`sN~xbL6WHLj@H?kM{RKnEhL40q!8>VVT&r&+~opPq<2UX9^n zr@7{;9T^ek<9lh&GA6lE9pob8){1z#;VDd)N{%rv?&c`AvpWU83W=v8q~6EVcXNp0d-kK?Y` zQ_Omg8QW4KWsMwAuK*`IeoomIKx`-T4qLJ$oUq}pmg09ou*_u$J- zN`ff11AX&t$e-P!ldXKTeft*-ypYqMXc^3I`;)lE1u9n+Nb-;pZfJuWwoILC-Ec-qRNO2>=@j@UTyCRM$gORyzi04yq-absUAVoRp2{$ zWkiki*lTPhm?PCAmq88K-GD*DQ&8&_txJRxcCR0Iqx7xyz19xkWg_V&22i?=%!Edp zWhNhv$MGs-d)=zrSrCA#QxYii3g+E!-%M3Xyj8qfS126}K?I>az8X(&TwX8vL zC}b+t(4aM1Y%`7Q+L93`6ftKQ=Z*v*gN%+=ETz%dJt>X}M#cD4cpf#iU?oScpw+SP zp*xCJOo~jdw{ErELX4(uhwcU9#sy($1>+|r&Bv> zqZstQA%^=S!-0m-LIdOyKBS#EL$&sMzX}2KkbxOe=j=?jd!27zrT6;lpCc}sR>D$* zkA}=bM#r}O3H zQu4U0_w9Pon%9{C1ONdz10F;d&HzwnYqSBF0)z|b;P*HZAY(tGT&Wk^IKeyMRVbuAxK6(Of*(>8|9GV`d$ z^Ks%ab8PozwqZ;juk?hz<*;8p-VT%dn0Utbn&JD+uqzh_Am&M}hXG@Z0U;Suz^k@F zU|+rQf?aKE0I7h@ZxFFU9H40cLtzJ|oAuQCyZP=Ua4`=ntpnORra+NljlqPd1+5;8 zDZP?YK-nN{WJ}JYnY&7`V?r^+6FTww`Jl44QHo3mKGjt|%sU@D<(SY(ZDfjN4GJ$& zyy%LZilmOTdff6!iLC-<)TkvWAvMWW;%Z_m4GT@CR02$_Sx4vDlv?GFBg-|e-op!i z8XiNi#oAQew5um^1Rp`BX0-s|DJh@hbb z2H6Y>VD`t}biLGJGLDjvI94A|9~b)MY}uNQkUbC}y;#q0i{Rr*1?BHLvDqLb(Wt(qP zahLo1WJ(?$yC+h25nFajpKjE`N{6zsN5wEU5&|r3SZq0A*izBn}lDopbdEm+7X`?!@hi_uJ+0)Pg@0gW#3w%Eg_kNvyNt?2vdMu6Y? z+7v>O;o*LX9(TcAL4YMfrEnQYgppUZJOp5(e=d?xPZUIoPM|TIr?VD$&39mqJU8Bu zV1t$L*)>ve9q-`_{It1hcb$KDe+KX-M3Ca4H%B7!XlvtMskj#tr-I;0#t7}%=%5Z+ z*WkBbmn^neRyjuLS|48C5x<{jf|~I;BaB!$_T-SsJt^)E|WmJxXROR9bm2o7smN>DZKDtC@B|grHAy!($ zQsO!Bh1X4F!&?$uxA@=`kCT)wr+EUKH2`KiZIfrKkib!4l4p`q zt#Rc|IAFa-Hmf=)gkY`*5$U*)!_dH1p~NAomlALuTUho>`;zj>ljZjQLxkNLAd;el zx&R?0#X4bL*4FL3*foom#G%RrM7kiUZQ;fQTPMOWYzL?=_ZE0Ogjz?zNoic+j8rNR z$?d4l^8C@d7gZe2HoY}^-OTIb{hc|X5tdgN+!T+t^!ljpwzb<>DqApB2Qea>(~dG- z9~(o@=bscQDVB4YOgbiPM{!oR{8}9P@OSP)Tm9B1e_3W&R!31Kv<{8+(jig2HEC3P~n9xE2QZpbycK*>CQ%zhqtVH^65 zrDA(>wnk-YCE;4=U=p>NrT$%Su)P`h@F1u-ARr+YTMe56Y@o=NSYdI!U{HlY>+U{N znBXC0GUmqaxZWLCizQnzrIwy_Awi6EL`5R6nhL?nNTU6v+wFm$`^ZpLk!9`Ud?Z&_ zoj@V<4z$LPI-ZX~z|d0-Yb}ZaDVD14>b4KKj~u{boOn1mUwbBoD%g`_T8VK8>D?ic z;i(QvN=A=N*o#&^GR-kaaqLB~f*M>K7}GFBXqQ3uYR?To!^o`3fH)H9>cOTZ7}hwO z&d*AfCE}vNCkBPf-K}vkl)*9(s28(K7<4oi^MJs;acZpaR>~Rqw6VlP5aM8^g{5dn z%=R=deagN4@y4ykqY;|NL%?W7ooa3FCDtvjC_CZ-fM6f(Gb0BOy|YHF62fwRa9ET4 z4SYdB;ATk!K)@Tgith(Mz~P+(qz9FNMeqA9@lGiVx{=DVAx811!!6_Qy}y4THgCN` zsZ{;LIPBZ_)=H7Wngd&rl!;$aQjCT=mlXFp%Z0S1zsd%@-}8DMCo~Z~*8s zF&rS&w$qNOGA|X@E_^9$__Olb?@zD$Z@jX%7x zp)uSV+aTJrw)fqh-Q)Xc2BL1YN%{ioCR1yDuI=@u&eu+4?RyK2$beS)xxdbJB+?Xg zxTTJx!J%yf=2@c%{tS#3*exn@g(R4EGDk|iq&HUtBj|qepiG@Fny8p$f z)t2i3*h)jk3RIzbda6sIWS?Q^SR(bh&*#VM13OJgHINK~z~fz|^ZETtDUJmWO4KBV zk%M@k?Lo}NbB%vYE+s6w(JA(DGsP}kaY>u~(%qRXZ)!UxF>oB$O{U}qw=}u2+AJ_R z*Sz1aw|MxAJDzP1VVbKT>)OnzG4BtP>@ z-)qdt*6;R6n`jU7(T63MDY++O_xJ)s;OoA?!S~+kv>{621OOT~fYI1iZUGw222Qr6 zsRjVc+B~~_`gDW>7$(Go1(hSL4p@sW!xPwgic@4FwE(K4k1~~UP%U6crM6O4*o+Wr zt2BiY>>LzTJ1RtR4eMw#qDJx5WkSPXCqBo5cWa%+q1binoyIjrX)l1f@Aad^j3*_8 z!6D*jqH5Z-5T}V#pR|gHk@=X_1_rgELEMfa5hN&$6|7Yi*7o>~N;mJnFyL}YU1VtR z3=$0jGZIuTn^6+JCk7q8%fc2XsuG)VB!Fzfno8yZ zt{clthj3}6rh&wx(&8Yw3mU49X~dl?ymjl?y>|@R_RaRAY~ZvtNTHz(LNIR{5Hv9+ zFo8?LF*p6q^@=5b+`nfIAjoY~Wu1 z__<(gJK4SZXwq~%9ixxols{^DCudU~J*jAY;^2*fL zu}Ex2NI})sS%K7@u2^F^10ZX)B6s}DH`IIdpI~`9UK)ESaRVj^7ZL*=to1aXl;+yN zL_b}unAd(t!;8k)3@^q{(Ar3; zn|+phiK$RUbwC6x#0mvpB@Cn?d<_$60Sf>?tYw9Gr$kPIu~=$cp4kPj==UGof7$wP z>z}^;Ee0#Vp1k&#L4D;1r~&r){^!_%B%_Swi7*JTQEr%>{n^fZ{*J%X4=F$amOiHG z7>Ip3J{SVudm%Cgq12SK(hAhdZFAJ1FiLKl&iNmMGMO8?1Z6f;lKN`z_G4|Vy<&z* zOnG$VThO%0?XnpiF4$Eh!PT2NI$SjLv71t6@raEL)P;aT3m6EE|;aYT4Q!2WI zSlig|2Qm4{jL*Jvc8+sXH(M(2Hl8OjxeHtaG8aOYgDzM_`{;>wFvt6Qp$s7d z0Fi^SvH=pOx1o%2<5~w^zz8`ICTdb`Es(t#E;tq$i!}xgDy*4u4#J+x&+Y5x6`)Q_ zXtiPy*5WAeWGWa78WjO?VljoFPHG)Tu6G^Vq|z{1Q&4B=JEbRt#b_*6$N zfddPW>wv%QSN<`Nc=Pn>eef0d5NI&VvIBsJQ@{HkfB*00zR2^Q5hVL)BgZ(p3p3Dh zOtje?6%slzE`q&8Dck}I^D3kx8ZU~QSpbUk5N1U2RRm+|k^@Xwik7u#4--b`Z@p{0 zfAgF4zoi%-*bgIh%j5Y6fI86m#ejewDVAbb8eOvn(TTy=+6{8cjYVuphtR;_0!5g+ zJf4Qkq-usB(wK!ZQ-XSL_wy``7>R-JhQhu!`mBz+H?(_$Zeuh_XuG zv?R$Eryu|~P6;TX9AIP?{04Vgr;)0XZbvW?*dM25zpT%TYo-k`b!|$f$gS*sp@U(% zgs7PKg8Q+fz;fDS$%pao)NUzTGX|o9MH;D*_IgHAb+tNz9)&?0O5yz|V9g9gYVBWIfI-0nR;WMZO3{d2V;kW21uhDN6BCQdOjVqqFm_=XaFG-e2z1Ce z`6|}hgEH6?lNeb*PDCCq)@#vZHJoeUaTKM-8mMd_7?4`JZ_zh(Wj-Ih8(ogMZ#(@x zxn(w_K*&=bbqqVN@Ama!bxOQ=l^z7^8h1XU1JAi$ZKXdzN8e5HkojQgO{32I{CZ6| zl;PzrT2)o@r~KtVn2LkZa%+hW!I+w?*4QZ}xhbDqT=M?I9$!{dSx@h$0_x4FHAuSz z(5=HV5V1#xzvzrU881O7>lXqDKseZCI-*A*$@QS2rgrj;<+>gw82_x<)*ArT&;bDj zLGa!F`1a3d`Q1H-*3>mWuE9D%hv!AW890RI0bB7RfF^VsbHZcUI#}?OIS@-xfB|JF zJKp~EZ~gB1`}g1fzlI)D`|%Az-i?d9qN~6c@5|u}1PK9dHUMWQ(KW&i8yc!QnVu4! zi*s4_pa@CsXj8)-%-rKODK)Osh|6AUw;yYz2|}ue+Vmm-Cxxh7i?JV;mibV%ZtUe* zFUP!R3b0+wt8hZ0=r~sESaZUu-*%wo_k)We2vVglk3cF64?$pS5iivWVC2oop=~FoTV*%tqrj%0{I4~PaF!gvrDesyK{6tl5ah~fkYk|LxX`Gd^P{N4Kt$2 zmXAiDQcT44dFYQkbnNHNS@Y-$)ZMSOi^y}-8?BZ<$hjqTDBg?j`QfNDct6hcO~j&s zB*M{hg8?RPAKJ&GJvu15Y&+?oczac!e|s_k002O69)18J5!OJ=G(eyo|Ze zO>7ys3C+L~aDmHnz<>`LDWAc28v8j2CS~(TVK3uT&;X2^ZxrxZxbr{NzyA8|<>CxL z%wu=cyBqH2ivcYP8cxl8;Vura>1X=C;pdq+|>bO1Km7K@BfU#Ig?4|0h6({dYI#GaAk+-__r;|=e zozRS9QlpHI?x0Bd%(3PkZxiM<){cbGA(2B^Zr%C~TN<0TewmQFShom!5oz*k;dO8Y zYJqoKTq(@}n$+1z1Yl+P*NZ;6*YSQU&|VoR7>U5{5zJU0nr4u+4VX)je2S&)x(zz6 zLuwJ36g)9bIVDC?gFRXD^Za4@$WQwQ_4w{)2#NCrs#fxK#tdt!~2mV${(jF=Yu1ln1xJO^_Q9ICa)nF(^D;YaljfJ0B zwok7EN8ZxM>@+p4t96AvB}aK=4sBC z$}q*__SD`S$MWX4aXb2mK05VyeNIu`5VkdXTR^49Dea@J*z6{{fTZ1Q2BSgRFj9@d z3VmOJsKOx1WMVHsl8_yHz-SpIOdK}1z9CU5mcO={( zctB4h2oW>&{@4HE`#<=f_0u9-B6X{$wVCocTW}`{=y{bEO_E0Fm0KlK@QqFw`P3p>~{M zVP6Z;sNfm^YHpYf0NJ|Fm5(zF1h61tMLh1WBT-^P0O>=za?~Ssux`1*Y?Xk362X?Z ztGmz+D^JEcR$CeqUhbfdbeWG!8Y@nSU;re3D@y!I>=a$0bxyekL$1ogGgEZDmluVZ zAH68CDo-buH6|eCM#4o}1dS&aB4i>;88U#>PKXw4Nn()BK9M@Ow${@4S?s=YQE_QC zpmIjN*5ae71L7^5js;%WuRra6+rWgSV`RXEZ1Bh?D1KW(V-;<9trlqtrbKnk4@EM6hd##S2mmQoBLa70~}gwc`wI+kY_OA->n zZg`?|cgU|BGsuQGt#RIby~GOwy5RhMmf^eaN*8d0Ukbu#izh&!Nh@1|lXC-DeVP&m zejK3V$99Y#p%Db#P(f||7muI!)e!}&TF%f3SiV`ih1qPsbrz4I3JGBKy)h!O1}?fmTnxoBN21 z5rFTeKo-+D!>|*-P+9=X6yqLXksmkQ>}6e60Kf4)_iz30{`)`w_j~_~_x!JxpaI%_ z8?O6?kulY+I^m{0WJ4fXh@-09aBh++c-~$T;D8VYMC_;6@RLq!UY*6Ua$HlAMGbTX|d$2 z$Y-Vr8Z*-)EDCNKrlGTk%tNHU8B+o8VVGGuts0j5Mq1A3-J3OPXEX@z0DSZ{#l(7H{ zKJ~H;Qw92fj2v;EC2Yq$_qY(spWTCU8(^%0ARyOi)2ceOXRgmb=??Fs5(M9l`seG% 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

M2rvU^D%I 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�z~Z|rE*{;&c4gMGwfj>Yl?1x9 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 Date: Mon, 12 May 2025 03:08:25 +0200 Subject: [PATCH 042/110] Add top albums to fm command --- commands/misc/fm.js | 5 +++++ util/lastfm/getTopAlbums.js | 39 +++++++++++++++++-------------------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/commands/misc/fm.js b/commands/misc/fm.js index 8d07401..5c771da 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -35,6 +35,11 @@ module.exports = { args.shift(); sendText = await getTopTracks(message.author.id, args, message.guild); break; + case "topalbums": + case "topalbum": + case "abl": + sendText = await getTopAlbums(message.author.id, args, message.guild) + break; case "cover": sendText = await getCurrentCover(message.author.id, message.guild); break; diff --git a/util/lastfm/getTopAlbums.js b/util/lastfm/getTopAlbums.js index 049393d..b87a403 100644 --- a/util/lastfm/getTopAlbums.js +++ b/util/lastfm/getTopAlbums.js @@ -93,27 +93,24 @@ module.exports = async function (userID, option, guild, compatibility=false) { }); }); } - // const embed = new EmbedBuilder() - // .setAuthor({name: `Top ${duration} albums for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) - // .setThumbnail(albums[0].cover) - // .setColor(15780145) - // let tracksInfo = ""; - // for(let i = 0; i < albums.length; i++){ - // let pluralCharacter = albums[i].playcount > 1 ? 's' : ''; - // let track = `${i}. **${albums[i].artist}** - ${albums[i].song} - *${albums[i].playcount} play${pluralCharacter}*`; - // if(i < albums.length - 1){ - // tracksInfo += `${track}\n`; - // }else{ - // tracksInfo += `${track}`; - // } - // } - // embed.addFields({ - // name: ` `, value: `${tracksInfo}` - // },) - // sendText.embed = embed; - // if(compatibility) + const embed = new EmbedBuilder() + .setAuthor({name: `Top ${duration} albums for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) + .setColor(15780145) + let albumInfo = ""; + for(let i = 0; i < albums.length; i++){ + let pluralCharacter = albums[i].playcount > 1 ? 's' : ''; + let album = `${i}. **${albums[i].artist}** - ${albums[i].name} - *${albums[i].playcount} play${pluralCharacter}*`; + if(i < albums.length - 1){ + albumInfo += `${album}\n`; + }else{ + albumInfo += `${album}`; + } + } + embed.setDescription(albumInfo); + sendText.embed = embed; + if(compatibility) return albums; - // else - // return sendText; + else + return sendText; } \ No newline at end of file From 4f57499cca0c79896bf9b37d9da7dd2107b72bfc Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 12 May 2025 17:52:03 +0200 Subject: [PATCH 043/110] Add top artists to fm command --- commands/misc/fm.js | 6 ++++++ util/lastfm/getTopArtists.js | 39 +++++++++++++++++------------------- 2 files changed, 24 insertions(+), 21 deletions(-) diff --git a/commands/misc/fm.js b/commands/misc/fm.js index 5c771da..cda2f45 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -40,6 +40,12 @@ module.exports = { case "abl": sendText = await getTopAlbums(message.author.id, args, message.guild) break; + case "topartists": + case "topartist": + case "ta": + case "as": + sendText = await getTopArtists(message.author.id, args, message.guild); + break; case "cover": sendText = await getCurrentCover(message.author.id, message.guild); break; diff --git a/util/lastfm/getTopArtists.js b/util/lastfm/getTopArtists.js index 2318180..40cbe3f 100644 --- a/util/lastfm/getTopArtists.js +++ b/util/lastfm/getTopArtists.js @@ -92,27 +92,24 @@ module.exports = async function (userID, option, guild, compatibility=false) { }); }); } - // const embed = new EmbedBuilder() - // .setAuthor({name: `Top ${duration} tracks for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) - // .setThumbnail(tracks[0].cover) - // .setColor(15780145) - // let tracksInfo = ""; - // for(let i = 0; i < tracks.length; i++){ - // let pluralCharacter = tracks[i].playcount > 1 ? 's' : ''; - // let track = `${i}. **${tracks[i].artist}** - ${tracks[i].song} - *${tracks[i].playcount} play${pluralCharacter}*`; - // if(i < tracks.length - 1){ - // tracksInfo += `${track}\n`; - // }else{ - // tracksInfo += `${track}`; - // } - // } - // embed.addFields({ - // name: ` `, value: `${tracksInfo}` - // },) - // sendText.embed = embed; - // if(compatibility) + const embed = new EmbedBuilder() + .setAuthor({name: `Top ${duration} artists for ${nickname}`, iconURL: user.user.avatarURL({ dynamic: true, size: 4096 })}) + .setColor(15780145) + let artistsInfo = ""; + for(let i = 0; i < artists.length; i++){ + let pluralCharacter = artists[i].playcount > 1 ? 's' : ''; + let track = `${i}. **${artists[i].name}** - *${artists[i].playcount} play${pluralCharacter}*`; + if(i < artists.length - 1){ + artistsInfo += `${track}\n`; + }else{ + artistsInfo += `${track}`; + } + } + embed.setDescription(artistsInfo); + sendText.embed = embed; + if(compatibility) return artists; - // else - // return sendText; + else + return sendText; } \ No newline at end of file From 6592f258829d8bd5afd1afea174ad4578210fd42 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 12 May 2025 17:55:45 +0200 Subject: [PATCH 044/110] Shift arguments so time option works --- commands/misc/fm.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/commands/misc/fm.js b/commands/misc/fm.js index cda2f45..3efd216 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -38,12 +38,14 @@ module.exports = { case "topalbums": case "topalbum": case "abl": + args.shift(); sendText = await getTopAlbums(message.author.id, args, message.guild) break; case "topartists": case "topartist": case "ta": case "as": + args.shift(); sendText = await getTopArtists(message.author.id, args, message.guild); break; case "cover": From 9ac900bc4d435a36c8e7c7ff217c943a26a8eb0c Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 12 May 2025 18:00:23 +0200 Subject: [PATCH 045/110] fm: Add top artists and albums to moreHelp --- commands/misc/fm.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/commands/misc/fm.js b/commands/misc/fm.js index 3efd216..5aa6035 100644 --- a/commands/misc/fm.js +++ b/commands/misc/fm.js @@ -17,6 +17,8 @@ module.exports = { "They behave the same (for example: `fmtt` and `fm tt`)", "Set username: `fmset `", "Get current scrobble: `fm`", + "Get top artists `fmas`", + "Get top albums: `fmabl`", "Get top tracks: `fmtt`", "Get album cover for current scrobble: `fmcover`", "Get a roast from an LLM using your top artists and albums: `fmroast`" From be8d9660ba7d2a75f375f88765983d7f7ff5c5a7 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Mon, 12 May 2025 20:11:34 +0200 Subject: [PATCH 046/110] Fix permissions checking not working if false --- commands/misc/prefix.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/commands/misc/prefix.js b/commands/misc/prefix.js index 19ec7d1..954c834 100644 --- a/commands/misc/prefix.js +++ b/commands/misc/prefix.js @@ -1,10 +1,11 @@ const setServerPrefix = require("../../util/setServerPrefix"); +const { PermissionsBitField } = require('discord.js'); module.exports = { name: 'prefix', description: 'Change the prefix of the bot in this server.', execute({ message, client, args, prefix }) { - if (!message.member.permissions.has('MANAGE_GUILD')) { + if (!message.member.permissions.has(PermissionsBitField.Flags.ManageGuild)) { message.channel.send("You do not have sufficient permissions(MANAGE_GUILD) to change the prefix of this server.") return; } From c74f323c1b4d1e89ec17d088e13cdfd9a1efb903 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Tue, 13 May 2025 00:19:35 +0200 Subject: [PATCH 047/110] Log command executed before executing Sometimes I use shift() on the args to handle them which causes the logging to not log everything 100% accurately --- server/message.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/message.js b/server/message.js index 08d860d..fb15f3b 100644 --- a/server/message.js +++ b/server/message.js @@ -27,8 +27,8 @@ module.exports = function(client, owners, message, globalPrefix){ } if (command.admin && owners.indexOf(message.author.id.toString()) == -1) return; try { - command.execute({ message: message, args: args, client: client, prefix: prefix, owners: owners, globalPrefix: globalPrefix}) console.log(`${message.author.username}(id: ${message.author.id}) executed ${command.name} with '${args}' as arguments`) + command.execute({ message: message, args: args, client: client, prefix: prefix, owners: owners, globalPrefix: globalPrefix}) } catch (error) { let divider = "------------------------" console.log(divider) From ed77c2aaf1ceb376ab276026671bd05e81f06ac0 Mon Sep 17 00:00:00 2001 From: SileNce5k Date: Sat, 17 May 2025 11:15:05 +0200 Subject: [PATCH 048/110] Allow dates to be used in timer command And some general cleanup of a couple of functions. --- commands/misc/timer.js | 11 ++++++----- server.js | 1 + util/timer/createTimer.js | 23 ++++++++++++++++------- util/timer/parseTime.js | 20 +++++--------------- util/timer/timeUntil.js | 20 ++++++++++++++++++++ 5 files changed, 48 insertions(+), 27 deletions(-) create mode 100644 util/timer/timeUntil.js diff --git a/commands/misc/timer.js b/commands/misc/timer.js index 746689b..472af1b 100644 --- a/commands/misc/timer.js +++ b/commands/misc/timer.js @@ -4,11 +4,11 @@ const parseTime = require('../../util/timer/parseTime'); const showTimer = require('../../util/timer/showTimer'); module.exports = { name: "timer", - description: "Set a timer for a time in minutes.", + description: "Set a timer for a date or time duration.", moreHelp: ["Usage:" ,"`timer [add|create] `" ,"`timer