From 7220990f6dd5b8041944f5cb47a2d6a95e1f1019 Mon Sep 17 00:00:00 2001 From: benjaminramey Date: Tue, 23 Feb 2021 20:29:53 -0600 Subject: [PATCH] Remove node.js app --- .editorconfig | 22 ----- .gitignore | 28 ------- README.md | 112 ------------------------- api/.eslintrc.json | 12 --- api/.prettierignore | 2 - api/app.js | 105 ----------------------- api/config/passport.js | 31 ------- api/controllers/base/index.js | 61 -------------- api/controllers/index.js | 5 -- api/controllers/users/index.js | 77 ----------------- api/controllers/users/schemas.js | 36 -------- api/controllers/users/utils.js | 59 ------------- api/db/index.js | 61 -------------- api/package.json | 33 -------- api/serverless.yml | 18 ---- api/validation/commonSchemas.js | 10 --- api/validation/index.js | 29 ------- database/serverless.yml | 30 ------- permissions/serverless.yml | 28 ------- serverless.yml | 2 - site/.eslintrc.json | 11 --- site/.gitignore | 69 --------------- site/.prettierignore | 4 - site/LICENSE | 14 ---- site/README.md | 99 ---------------------- site/config.js | 18 ---- site/gatsby-config.js | 10 --- site/package.json | 37 -------- site/public/android-chrome-192x192.png | Bin 13072 -> 0 bytes site/public/android-chrome-512x512.png | Bin 47064 -> 0 bytes site/public/apple-touch-icon.png | Bin 11722 -> 0 bytes site/public/favicon-16x16.png | Bin 568 -> 0 bytes site/public/favicon-32x32.png | Bin 1296 -> 0 bytes site/public/favicon.ico | Bin 2813 -> 0 bytes site/public/index.html | 1 - site/public/manifest.json | 25 ------ site/public/robots.txt | 3 - site/serverless.yml | 11 --- site/src/pages/index.js | 14 ---- site/src/utils/api.js | 70 ---------------- site/src/utils/helpers.js | 81 ------------------ site/src/utils/index.js | 2 - site/static/android-chrome-192x192.png | Bin 13072 -> 0 bytes site/static/android-chrome-512x512.png | Bin 47064 -> 0 bytes site/static/apple-touch-icon.png | Bin 11722 -> 0 bytes site/static/favicon-16x16.png | Bin 568 -> 0 bytes site/static/favicon-32x32.png | Bin 1296 -> 0 bytes site/static/favicon.ico | Bin 2813 -> 0 bytes site/static/manifest.json | 25 ------ site/static/robots.txt | 3 - 50 files changed, 1258 deletions(-) delete mode 100644 .editorconfig delete mode 100644 .gitignore delete mode 100644 README.md delete mode 100644 api/.eslintrc.json delete mode 100644 api/.prettierignore delete mode 100644 api/app.js delete mode 100644 api/config/passport.js delete mode 100644 api/controllers/base/index.js delete mode 100644 api/controllers/index.js delete mode 100644 api/controllers/users/index.js delete mode 100644 api/controllers/users/schemas.js delete mode 100644 api/controllers/users/utils.js delete mode 100644 api/db/index.js delete mode 100644 api/package.json delete mode 100644 api/serverless.yml delete mode 100644 api/validation/commonSchemas.js delete mode 100644 api/validation/index.js delete mode 100644 database/serverless.yml delete mode 100644 permissions/serverless.yml delete mode 100644 serverless.yml delete mode 100644 site/.eslintrc.json delete mode 100644 site/.gitignore delete mode 100644 site/.prettierignore delete mode 100644 site/LICENSE delete mode 100644 site/README.md delete mode 100644 site/config.js delete mode 100644 site/gatsby-config.js delete mode 100644 site/package.json delete mode 100644 site/public/android-chrome-192x192.png delete mode 100644 site/public/android-chrome-512x512.png delete mode 100644 site/public/apple-touch-icon.png delete mode 100644 site/public/favicon-16x16.png delete mode 100644 site/public/favicon-32x32.png delete mode 100644 site/public/favicon.ico delete mode 100644 site/public/index.html delete mode 100644 site/public/manifest.json delete mode 100644 site/public/robots.txt delete mode 100644 site/serverless.yml delete mode 100644 site/src/pages/index.js delete mode 100644 site/src/utils/api.js delete mode 100644 site/src/utils/helpers.js delete mode 100644 site/src/utils/index.js delete mode 100644 site/static/android-chrome-192x192.png delete mode 100644 site/static/android-chrome-512x512.png delete mode 100644 site/static/apple-touch-icon.png delete mode 100644 site/static/favicon-16x16.png delete mode 100644 site/static/favicon-32x32.png delete mode 100644 site/static/favicon.ico delete mode 100644 site/static/manifest.json delete mode 100644 site/static/robots.txt diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 4c92222..0000000 --- a/.editorconfig +++ /dev/null @@ -1,22 +0,0 @@ -# top-most EditorConfig file -root = true - -# Unix-style newlines with a newline ending every file -[*] -end_of_line = lf -insert_final_newline = true - -# Matches multiple files with brace expansion notation -# Set default charset -[*.{js}] -charset = utf-8 - -# 4 space indentation -[*.js] -indent_style = tab -indent_size = 4 - -# Matches the exact files either package.json or .travis.yml -[{package.json,serverless.yml}] -indent_style = tab -indent_size = 4 diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 7e67d39..0000000 --- a/.gitignore +++ /dev/null @@ -1,28 +0,0 @@ -.DS_Store -*.sublime-project -*.sublime-workspace -*.log -.serverless -v8-compile-cache-* -jest/* -coverage -testProjects/*/package-lock.json -testProjects/*/yarn.lock -.serverlessUnzipped -node_modules -.vscode/ -.eslintcache -dist -.idea -build/ -.env* -.cache* -.serverless -.serverless_nextjs -.serverless_plugins -env.js -tmp -package-lock.json -yarn.lock -test -logs/ diff --git a/README.md b/README.md deleted file mode 100644 index 0298f14..0000000 --- a/README.md +++ /dev/null @@ -1,112 +0,0 @@ -[![Serverless Fullstack Application Express React DynamoDB AWS Lambda AWS HTTP API](https://s3.amazonaws.com/assets.github.serverless/components/readme-serverless-framework-fullstack-application.png -)](https://www.serverless-fullstack-app.com) - -A complete, serverless, full-stack application built on AWS Lambda, AWS HTTP API, Express.js, React and DynamoDB. - -#### Live Demo: [https://www.serverless-fullstack-app.com](https://www.serverless-fullstack-app.com) - -## Quick Start - -Install the latest version of the Serverless Framework: - - -``` -npm i -g serverless -``` - -Then, initialize the `fullstack-app` template: - -``` -serverless init fullstack-app -cd fullstack-app -``` - -Then, add your AWS credentials in the `.env` file in the root directory, like this: - -```text -AWS_ACCESS_KEY_ID=JAFJ89109JASFKLJASF -AWS_SECRET_ACCESS_KEY=AJ91J9A0SFA0S9FSKAFLASJFLJ - -# This signs you JWT tokens used for auth. Enter a random string in here that's ~40 characters in length. -tokenSecret=yourSecretKey - -# Only add this if you want a custom domain. Purchase it on AWS Route53 in your target AWS account first. -domain=serverless-fullstack-app.com -``` - -In the root folder of the project, run `serverless deploy` - -Lastly, you will need to add your API domain manually to your React application in `./site/src/config.js`, so that you interact with your serverless Express.js back-end. You can find the your API url by going into `./api` and running `serverless info` and copying the `url:` value. It should look something like this `https://9jfalnal19.execute-api.us-east-1.amazonaws.com` or it will look like the custom domain you have set. - -**Note:** Upon the first deployment of your website, it will take a 2-3 minutes for the Cloudfront (CDN) URL to work. Until then, you can access it via the `bucketUrl`. - -After initial deployment, we recommend deploying only the parts you are changing, not the entire thing together (why risk deploying your database with a code change?). To do this, `cd` into a part of the application and run `serverless deploy`. - -When working on the `./api` we highly recommend using `serverless dev`. This command watches your code, auto-deploys it, and streams `console.log()` statements and errors directly to your CLI in real-time! - -If you want to add custom domains to your landing pages and API, either hardcode them in your `serverless.yml` or reference them as environment variables in `serverless.yml`, like this: - -```yaml -inputs: - domain: ${env:domain} -``` - -```text -domain=serverless-fullstack-app.com -``` - -Support for stages is built in. - -You can deploy everything or individual components to different stages via the `--stage` flag, like this: - -`serverless deploy --stage prod` - -Or, you can hardcode the stage in `serverless.yml` (not recommended): - -```yaml -app: fullstack -component: express@0.0.20 -name: fullstack-api -stage: prod # Put the stage in here -``` - -Lastly, you can add separate environment variables for each stage using `.env` files with the stage name in them: - -```bash -.env # Any stage -.env.dev # "dev" stage only -.env.prod # "prod" stage only -``` - -Then simply reference those environment variables using Serverless Variables in your YAML: - -```yaml -app: fullstack -component: express@0.0.20 -name: fullstack-api - -inputs: - domain: api.${env:domain} -``` - -And deploy! - -`serverless deploy --stage prod` - -Enjoy! This is a work in progress and we will continue to add funcitonality to this. - -## Other Resources - -For more details on each part of this fullstack application, check out these resources: - -* [Serverless Components](https://github.com/serverless/components) -* [Serverless Express](https://github.com/serverless-components/express) -* [Serverless Website](https://github.com/serverless-components/website) -* [Serverless AWS DynamoDB](https://github.com/serverless-components/aws-dynamodb) -* [Serverless AWS IAM Role](https://github.com/serverless-components/aws-iam-role) - -## Guides - -### How To Debug CORS Errors - -If you are running into CORS errors, see our guide on debugging them [within the Express Component's repo](https://github.com/serverless-components/express/blob/master/README.md#how-to-debug-cors-errors) diff --git a/api/.eslintrc.json b/api/.eslintrc.json deleted file mode 100644 index 611096a..0000000 --- a/api/.eslintrc.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "extends": ["eslint:recommended", "prettier"], - "env": { - "node": true, - "browser": false, - "es6": true, - "mocha": true - }, - "parserOptions": { - "ecmaVersion": 2018 - } -} diff --git a/api/.prettierignore b/api/.prettierignore deleted file mode 100644 index cce0279..0000000 --- a/api/.prettierignore +++ /dev/null @@ -1,2 +0,0 @@ -package.json -package-lock.json diff --git a/api/app.js b/api/app.js deleted file mode 100644 index 626ee77..0000000 --- a/api/app.js +++ /dev/null @@ -1,105 +0,0 @@ -const express = require(`express`); -const pino = require(`pino`); -const pinoHttp = require("pino-http"); -const app = express(); -const passport = require(`passport`); -const { users } = require(`./controllers`); - -/** - * logging - */ -let logger = pino(); -if (process.env.name === `test`) { - logger = pino(pino.destination({ dest: `../logs/api.json`, sync: false })); -} -app.use( - pinoHttp({ - logger: logger, - }) -); - -/** - * Configure Passport - */ - -try { - require(`./config/passport`)(passport); -} catch (error) { - console.log(error); -} - -/** - * Configure Express.js Middleware - */ - -// Enable CORS -app.use(function (req, res, next) { - res.header(`Access-Control-Allow-Origin`, `*`); - res.header(`Access-Control-Allow-Methods`, `*`); - res.header(`Access-Control-Allow-Headers`, `*`); - res.header(`x-powered-by`, `serverless-express`); - next(); -}); - -// Initialize Passport and restore authentication state, if any, from the session -app.use(passport.initialize()); -app.use(passport.session()); - -// Enable JSON use -app.use(express.json()); - -// Since Express doesn't support error handling of promises out of the box, -// this handler enables that -const asyncHandler = (fn) => (req, res, next) => { - return Promise.resolve(fn(req, res, next)).catch(next); -}; - -/** - * Routes - Public - */ - -app.options(`*`, (req, res) => { - res.status(200).send(); -}); - -app.post(`/users/register`, asyncHandler(users.register)); - -app.post(`/users/login`, asyncHandler(users.login)); - -app.get(`/test/`, (req, res) => { - res.status(200).send(`Request received`); -}); - -/** - * Routes - Protected - */ - -app.post( - `/user`, - passport.authenticate(`jwt`, { session: false }), - asyncHandler(users.get) -); - -/** - * Routes - Catch-All - */ - -app.get(`/*`, (req, res) => { - res.status(404).send(`Route not found`); -}); - -/** - * Error Handler - */ -app.use(function (err, req, res, next) { - if (res.headersSent) { - return next(err); - } - req.log.error(err); - res.status(err.code || 500); - res.json({ - error: err.message || `Internal Server Error - "${err.message}"`, - }); -}); - -module.exports = app; diff --git a/api/config/passport.js b/api/config/passport.js deleted file mode 100644 index a68a18e..0000000 --- a/api/config/passport.js +++ /dev/null @@ -1,31 +0,0 @@ -/** - * Config: Passport.js - */ - -const StrategyJWT = require(`passport-jwt`).Strategy; -const ExtractJWT = require(`passport-jwt`).ExtractJwt; -const userUtils = require(`../controllers/users/utils`); -const db = require(`../db`); - -module.exports = (passport) => { - const options = {}; - options.jwtFromRequest = ExtractJWT.fromAuthHeaderAsBearerToken(); - options.secretOrKey = process.env.tokenSecret; - - passport.use( - new StrategyJWT(options, async (jwtPayload, done) => { - let user; - try { - user = await db.getById(`user`, jwtPayload.id); - } catch (error) { - console.log(error); - return done(error, null); - } - - if (!user) { - return done(null, false); - } - return done(null, userUtils.convertToPublicFormat(user)); - }) - ); -}; diff --git a/api/controllers/base/index.js b/api/controllers/base/index.js deleted file mode 100644 index a8235f6..0000000 --- a/api/controllers/base/index.js +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Controller base actions - * - * This module contains base actions that follow - * a template for CRUD operations on a DB and (optionally) - * do custom things afterward to return a response. - */ - -const validation = require(`../../validation`); -const db = require(`../../db`); - -const createAction = async (req, res, config) => { - validation.validateOrThrow(config.validationSchema, req.body); - - const key = config.getObjectKey(); - let existingObject = await db.getByKey(key); - if (existingObject) { - throw customError( - `An object with key "${key}" already exists in the database.`, - 400 - ); - } - - const dbObject = config.buildDbObject(req.body); - await db.put(config.dbKind, dbObject); - const createdObject = await db.getByKey(key); - - const responseBody = config.buildResponseBody(createdObject); - res.json(responseBody); -}; - -const getByKeyAction = async (req, res, config) => { - validation.validateOrThrow(config.validationSchema, req.body); - const key = config.getObjectKey(); - let existingObject = await db.getByKey(key); - - if (!existingObject) { - return res - .status(404) - .send({ error: config.notFoundMessage }); - } - - const responseBody = config.buildResponseBody(existingObject); - res.json(responseBody); -}; - -/** - * Build a custom error - * @param {string} message Error message - * @param {number} code Error code, should be HTTP status code - */ -const customError = (message = "An error occurred.", code = 500) => { - const error = new Error(message); - error.code = code; - return error; -}; - -module.exports = { - createAction, - getByKeyAction, -}; diff --git a/api/controllers/index.js b/api/controllers/index.js deleted file mode 100644 index ce3f1b6..0000000 --- a/api/controllers/index.js +++ /dev/null @@ -1,5 +0,0 @@ -const users = require(`./users`); - -module.exports = { - users, -}; diff --git a/api/controllers/users/index.js b/api/controllers/users/index.js deleted file mode 100644 index fadd5c1..0000000 --- a/api/controllers/users/index.js +++ /dev/null @@ -1,77 +0,0 @@ -/** - * Controllers: Users - */ - -const schemas = require(`./schemas`); -const base = require(`../base`); -const userUtils = require(`./utils`); - -/** - * Save - * @param {*} req - * @param {*} res - */ -const register = async (req, res) => { - const config = { - validationSchema: schemas.create, - getObjectKey: () => req.body.email, - buildDbObject: () => { - return { - hk: req.body.email, - password: userUtils.hashPassword(req.body.password) - }; - }, - dbKind: `user`, - buildResponseBody: createdUser => { - return { - message: `Authentication successful`, - token: userUtils.getToken(createdUser), - }; - } - }; - await base.createAction(req, res, config); -}; - -/** - * Sign a user in - * @param {*} req - * @param {*} res - */ -const login = async (req, res) => { - const config = { - validationSchema: schemas.login, - getObjectKey: () => req.body.email, - notFoundMessage: `Authentication failed. User not found.`, - buildResponseBody: user => { - const isCorrect = userUtils.comparePassword(req.body.password, user.password); - if (!isCorrect) { - return res - .status(401) - .send({ error: `Authentication failed. Wrong password.` }); - } - - return { - message: `Authentication successful`, - token: userUtils.getToken(user), - }; - } - }; - - await base.getByKeyAction(req, res, config); -}; - -/** - * Get a user - * @param {*} req - * @param {*} res - */ -const get = async (req, res) => { - const user = userUtils.convertToPublicFormat(req.user); - res.json({ user }); -}; - -module.exports = { - register, - login, - get, -}; diff --git a/api/controllers/users/schemas.js b/api/controllers/users/schemas.js deleted file mode 100644 index 8900cf2..0000000 --- a/api/controllers/users/schemas.js +++ /dev/null @@ -1,36 +0,0 @@ -const commonSchemas = require(`../../validation/commonSchemas`); - -const login = { - $schema: "http://json-schema.org/draft-07/schema#", - title: "Login User", - description: "An object to log-in a new user", - type: "object", - properties: { - email: commonSchemas.email, - password: { - type: "string", - }, - }, - required: ["email", "password"], -}; - -const create = { - $schema: "http://json-schema.org/draft-07/schema#", - title: "Create User", - description: "An object to create a new user", - type: "object", - properties: { - email: commonSchemas.email, - password: { - type: "string", - minLength: 10, - maxLength: 50, - }, - }, - required: ["email", "password"], -}; - -module.exports = { - login, - create -}; diff --git a/api/controllers/users/utils.js b/api/controllers/users/utils.js deleted file mode 100644 index 11b29bc..0000000 --- a/api/controllers/users/utils.js +++ /dev/null @@ -1,59 +0,0 @@ -/* - * User utilities - */ - -const bcrypt = require(`bcryptjs`); -const jwt = require(`jsonwebtoken`); - -const getToken = (user) => { - return jwt.sign( - convertToPublicFormat(user), - process.env.tokenSecret, - { - expiresIn: 604800, // 1 week - } - ); -}; - -const convertToPublicFormat = (user = {}) => { - user.email = user.email || user.hk || null; - user.id = user.id || user.sk2 || null; - if (user.hk) { - delete user.hk; - } - if (user.sk) { - delete user.sk; - } - if (user.sk2) { - delete user.sk2; - } - if (user.password) { - delete user.password; - } - return user; -}; - -/** - * Hash password - * @param {string} password Password to hash - */ -const hashPassword = (password) => { - const salt = bcrypt.genSaltSync(10); - return bcrypt.hashSync(password, salt); -}; - -/** - * Compare password - * @param {string} candidatePassword Hashed password supplied by user - * @param {string} trustedPassword Hashed password on record for user - */ -const comparePassword = (candidatePassword, trustedPassword) => { - return bcrypt.compareSync(candidatePassword, trustedPassword); -}; - -module.exports = { - getToken, - convertToPublicFormat, - hashPassword, - comparePassword, -} diff --git a/api/db/index.js b/api/db/index.js deleted file mode 100644 index f639496..0000000 --- a/api/db/index.js +++ /dev/null @@ -1,61 +0,0 @@ -const AWS = require(`aws-sdk`); -const shortid = require(`shortid`); -const commonSchemas = require(`../validation/commonSchemas`); -const validation = require(`../validation`); - -const dynamodb = new AWS.DynamoDB.DocumentClient({ - region: process.env.AWS_REGION, -}); - -const defaultParams = { - TableName: process.env.db, -}; - -const put = async (kind, item) => { - const params = { - ...defaultParams, - Item: { - ...item, - sk: kind, - sk2: shortid.generate(), - createdAt: Date.now(), - updatedAt: Date.now(), - }, - }; - - await dynamodb.put(params).promise(); -}; - -const getByKey = async (key) => { - const params = { - ...defaultParams, - KeyConditionExpression: `hk = :hk`, - ExpressionAttributeValues: { ":hk": key }, - }; - - const obj = await dynamodb.query(params).promise(); - return obj.Items && obj.Items[0] ? obj.Items[0] : null; -}; - -const getById = async (kind, id) => { - validation.validateOrThrow(commonSchemas.id, id); - - const params = { - ...defaultParams, - IndexName: process.env.dbIndex1, - KeyConditionExpression: `sk2 = :sk2 and sk = :sk`, - ExpressionAttributeValues: { - ":sk2": id, - ":sk": kind, - }, - }; - - const obj = await dynamodb.query(params).promise(); - return obj.Items && obj.Items[0] ? obj.Items[0] : null; -}; - -module.exports = { - put, - getByKey, - getById, -}; diff --git a/api/package.json b/api/package.json deleted file mode 100644 index dd9cfa4..0000000 --- a/api/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "forgetmenot-api", - "version": "1.0.0", - "description": "", - "main": "app.js", - "dependencies": { - "ajv": "^6.12.6", - "aws-sdk": "^2.792.0", - "bcryptjs": "^2.4.3", - "express": "^4.17.1", - "jsonwebtoken": "^8.5.1", - "passport": "^0.4.1", - "passport-jwt": "^4.0.0", - "pino-http": "^5.3.0", - "shortid": "^2.2.15" - }, - "devDependencies": { - "chai": "^4.2.0", - "chai-http": "^4.3.0", - "eslint": "^7.12.1", - "eslint-config-prettier": "^6.15.0", - "faker": "^5.1.0", - "mocha": "^8.2.1", - "prettier": "^2.1.2" - }, - "scripts": { - "pretest": "eslint --ignore-path ../.gitignore .", - "test": "mocha", - "format": "prettier --write \"**/*.{js,json,md,yml}\"" - }, - "author": "", - "license": "ISC" -} diff --git a/api/serverless.yml b/api/serverless.yml deleted file mode 100644 index 18e9d56..0000000 --- a/api/serverless.yml +++ /dev/null @@ -1,18 +0,0 @@ -component: express -name: api - -inputs: - # Express application source code. - src: ./ - # Permissions required for the AWS Lambda function to interact with other resources - roleName: ${output:permissions.name} - # Enable this when you want to set a custom domain. - # domain: api.${env:domain} - # Environment variables - env: - # AWS DynamoDB Table name. Needed for the code to access it. - db: ${output:database.name} - # AWS DynamoDB Table Index name. Needed for the code to access it. - dbIndex1: ${output:database.indexes.gsi1.name} - # A secret token to sign the JWT tokens with. - tokenSecret: ${env:tokenSecret} # Change to secret via environment variable: ${env:tokenSecret} diff --git a/api/validation/commonSchemas.js b/api/validation/commonSchemas.js deleted file mode 100644 index a4230cc..0000000 --- a/api/validation/commonSchemas.js +++ /dev/null @@ -1,10 +0,0 @@ -module.exports = { - "email": { - "type": "string", - "format": "email" - }, - "id": { - "type": "string", - "minLength": 1 - } -} diff --git a/api/validation/index.js b/api/validation/index.js deleted file mode 100644 index 37eeddc..0000000 --- a/api/validation/index.js +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Validation - */ - -const Ajv = require(`ajv`); - -const validateOrThrow = (schema, data) => { - const ajv = new Ajv(); - const valid = ajv.validate(schema, data); - - if (!valid) { - throw validationError(ajv.errors); - } -}; - -/** - * Build a custom validation error - * @param {array[string]} validationErrors Validation errors - */ -const validationError = (validationErrors = []) => { - let error = new Error("Validation error(s)"); - error.validationErrors = validationErrors; - error.code = 400; - return error; -}; - -module.exports = { - validateOrThrow, -}; diff --git a/database/serverless.yml b/database/serverless.yml deleted file mode 100644 index 1313f81..0000000 --- a/database/serverless.yml +++ /dev/null @@ -1,30 +0,0 @@ -component: aws-dynamodb -name: database - -inputs: - name: ${name}-${stage} - region: us-east-1 - # Don't delete the Database Table if "serverless remove" is run - deletionPolicy: retain - # Simple, single-table design - attributeDefinitions: - - AttributeName: hk - AttributeType: S - - AttributeName: sk - AttributeType: S - - AttributeName: sk2 - AttributeType: S - keySchema: - - AttributeName: hk - KeyType: HASH - - AttributeName: sk - KeyType: RANGE - globalSecondaryIndexes: - - IndexName: gsi1 - KeySchema: - - AttributeName: sk2 - KeyType: HASH - - AttributeName: sk - KeyType: RANGE - Projection: - ProjectionType: ALL diff --git a/permissions/serverless.yml b/permissions/serverless.yml deleted file mode 100644 index 19f7b75..0000000 --- a/permissions/serverless.yml +++ /dev/null @@ -1,28 +0,0 @@ -component: aws-iam-role -name: permissions - -inputs: - name: ${name}-${stage} - region: us-east-1 - service: lambda.amazonaws.com - policy: - # AWS Lambda function containing Express Logs and Assume Role access - - Effect: Allow - Action: - - sts:AssumeRole - - logs:CreateLogGroup - - logs:CreateLogStream - - logs:PutLogEvents - Resource: "*" - # AWS DynamoDB Table access - - Effect: Allow - Action: - - dynamodb:DescribeTable - - dynamodb:Query - - dynamodb:GetItem - - dynamodb:PutItem - - dynamodb:UpdateItem - - dynamodb:DeleteItem - Resource: - - ${output:database.arn} - - ${output:database.arn}/index/* diff --git a/serverless.yml b/serverless.yml deleted file mode 100644 index 867daae..0000000 --- a/serverless.yml +++ /dev/null @@ -1,2 +0,0 @@ -app: forget-me-not -org: benjaminramey diff --git a/site/.eslintrc.json b/site/.eslintrc.json deleted file mode 100644 index a134b11..0000000 --- a/site/.eslintrc.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "extends": ["eslint:recommended", "prettier"], - "env": { - "node": false, - "browser": true, - "es6": true - }, - "parserOptions": { - "ecmaVersion": 2018 - } -} diff --git a/site/.gitignore b/site/.gitignore deleted file mode 100644 index f813275..0000000 --- a/site/.gitignore +++ /dev/null @@ -1,69 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# Bower dependency directory (https://bower.io/) -bower_components - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (http://nodejs.org/api/addons.html) -build/Release - -# Dependency directories -node_modules/ -jspm_packages/ - -# Typescript v1 declaration files -typings/ - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# dotenv environment variable files -.env* - -# gatsby files -.cache/ -public - -# Mac files -.DS_Store - -# Yarn -yarn-error.log -.pnp/ -.pnp.js -# Yarn Integrity file -.yarn-integrity diff --git a/site/.prettierignore b/site/.prettierignore deleted file mode 100644 index 58d06c3..0000000 --- a/site/.prettierignore +++ /dev/null @@ -1,4 +0,0 @@ -.cache -package.json -package-lock.json -public diff --git a/site/LICENSE b/site/LICENSE deleted file mode 100644 index 7e964c1..0000000 --- a/site/LICENSE +++ /dev/null @@ -1,14 +0,0 @@ -The BSD Zero Clause License (0BSD) - -Copyright (c) 2020 Gatsby Inc. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. diff --git a/site/README.md b/site/README.md deleted file mode 100644 index b40d274..0000000 --- a/site/README.md +++ /dev/null @@ -1,99 +0,0 @@ - -

- - Gatsby - -

-

- Gatsby's hello-world starter -

- -Kick off your project with this hello-world boilerplate. This starter ships with the main Gatsby configuration files you might need to get up and running blazing fast with the blazing fast app generator for React. - -_Have another more specific idea? You may want to check out our vibrant collection of [official and community-created starters](https://www.gatsbyjs.com/docs/gatsby-starters/)._ - -## πŸš€ Quick start - -1. **Create a Gatsby site.** - - Use the Gatsby CLI to create a new site, specifying the hello-world starter. - - ```shell - # create a new Gatsby site using the hello-world starter - gatsby new my-hello-world-starter https://github.com/gatsbyjs/gatsby-starter-hello-world - ``` - -1. **Start developing.** - - Navigate into your new site’s directory and start it up. - - ```shell - cd my-hello-world-starter/ - gatsby develop - ``` - -1. **Open the source code and start editing!** - - Your site is now running at `http://localhost:8000`! - - _Note: You'll also see a second link: _`http://localhost:8000/___graphql`_. This is a tool you can use to experiment with querying your data. Learn more about using this tool in the [Gatsby tutorial](https://www.gatsbyjs.com/tutorial/part-five/#introducing-graphiql)._ - - Open the `my-hello-world-starter` directory in your code editor of choice and edit `src/pages/index.js`. Save your changes and the browser will update in real time! - -## 🧐 What's inside? - -A quick look at the top-level files and directories you'll see in a Gatsby project. - - . - β”œβ”€β”€ node_modules - β”œβ”€β”€ src - β”œβ”€β”€ .gitignore - β”œβ”€β”€ .prettierrc - β”œβ”€β”€ gatsby-browser.js - β”œβ”€β”€ gatsby-config.js - β”œβ”€β”€ gatsby-node.js - β”œβ”€β”€ gatsby-ssr.js - β”œβ”€β”€ LICENSE - β”œβ”€β”€ package-lock.json - β”œβ”€β”€ package.json - └── README.md - -1. **`/node_modules`**: This directory contains all of the modules of code that your project depends on (npm packages) are automatically installed. - -2. **`/src`**: This directory will contain all of the code related to what you will see on the front-end of your site (what you see in the browser) such as your site header or a page template. `src` is a convention for β€œsource code”. - -3. **`.gitignore`**: This file tells git which files it should not track / not maintain a version history for. - -4. **`.prettierrc`**: This is a configuration file for [Prettier](https://prettier.io/). Prettier is a tool to help keep the formatting of your code consistent. - -5. **`gatsby-browser.js`**: This file is where Gatsby expects to find any usage of the [Gatsby browser APIs](https://www.gatsbyjs.com/docs/browser-apis/) (if any). These allow customization/extension of default Gatsby settings affecting the browser. - -6. **`gatsby-config.js`**: This is the main configuration file for a Gatsby site. This is where you can specify information about your site (metadata) like the site title and description, which Gatsby plugins you’d like to include, etc. (Check out the [config docs](https://www.gatsbyjs.com/docs/gatsby-config/) for more detail). - -7. **`gatsby-node.js`**: This file is where Gatsby expects to find any usage of the [Gatsby Node APIs](https://www.gatsbyjs.com/docs/node-apis/) (if any). These allow customization/extension of default Gatsby settings affecting pieces of the site build process. - -8. **`gatsby-ssr.js`**: This file is where Gatsby expects to find any usage of the [Gatsby server-side rendering APIs](https://www.gatsbyjs.com/docs/ssr-apis/) (if any). These allow customization of default Gatsby settings affecting server-side rendering. - -9. **`LICENSE`**: This Gatsby starter is licensed under the 0BSD license. This means that you can see this file as a placeholder and replace it with your own license. - -10. **`package-lock.json`** (See `package.json` below, first). This is an automatically generated file based on the exact versions of your npm dependencies that were installed for your project. **(You won’t change this file directly).** - -11. **`package.json`**: A manifest file for Node.js projects, which includes things like metadata (the project’s name, author, etc). This manifest is how npm knows which packages to install for your project. - -12. **`README.md`**: A text file containing useful reference information about your project. - -## πŸŽ“ Learning Gatsby - -Looking for more guidance? Full documentation for Gatsby lives [on the website](https://www.gatsbyjs.com/). Here are some places to start: - -- **For most developers, we recommend starting with our [in-depth tutorial for creating a site with Gatsby](https://www.gatsbyjs.com/tutorial/).** It starts with zero assumptions about your level of ability and walks through every step of the process. - -- **To dive straight into code samples, head [to our documentation](https://www.gatsbyjs.com/docs/).** In particular, check out the _Guides_, _API Reference_, and _Advanced Tutorials_ sections in the sidebar. - -## πŸ’« Deploy - -[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/gatsbyjs/gatsby-starter-hello-world) - -[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/import/project?template=https://github.com/gatsbyjs/gatsby-starter-hello-world) - - diff --git a/site/config.js b/site/config.js deleted file mode 100644 index c3e57d6..0000000 --- a/site/config.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * Global Config - */ - -const config = {}; - -// Domains -config.domains = {}; - -/** - * API Domain - * Add the domain from your serverless express.js back-end here. - * This will enable your front-end to communicate with your back-end. - * (e.g. 'https://api.mydomain.com' or 'https://091jafsl10.execute-api.us-east-1.amazonaws.com') - */ -config.domains.api = "https://13gtp0hrak.execute-api.us-east-1.amazonaws.com"; - -export default config; diff --git a/site/gatsby-config.js b/site/gatsby-config.js deleted file mode 100644 index e24936b..0000000 --- a/site/gatsby-config.js +++ /dev/null @@ -1,10 +0,0 @@ -/** - * Configure your Gatsby site with this file. - * - * See: https://www.gatsbyjs.com/docs/gatsby-config/ - */ - -module.exports = { - /* Your site config here */ - plugins: [], -}; diff --git a/site/package.json b/site/package.json deleted file mode 100644 index 27371bc..0000000 --- a/site/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "forget-me-not-site", - "private": true, - "description": "Forget Me Not site for saving bookmarks", - "version": "0.1.0", - "license": "0BSD", - "scripts": { - "build": "gatsby build", - "develop": "gatsby develop", - "format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,md,yml}\"", - "start": "npm run develop", - "serve": "gatsby serve", - "clean": "gatsby clean", - "test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\" && exit 1" - }, - "dependencies": { - "gatsby": "^2.25.3", - "js-cookie": "^2.2.1", - "moment": "^2.24.0", - "react": "^16.12.0", - "react-bootstrap": "^1.4.0", - "react-dom": "^16.12.0", - "react-router-dom": "^5.1.2" - }, - "devDependencies": { - "eslint": "^7.12.1", - "eslint-config-prettier": "^6.15.0", - "prettier": "^2.1.2" - }, - "repository": { - "type": "git", - "url": "https://github.com/gatsbyjs/gatsby-starter-hello-world" - }, - "bugs": { - "url": "https://github.com/gatsbyjs/gatsby/issues" - } -} diff --git a/site/public/android-chrome-192x192.png b/site/public/android-chrome-192x192.png deleted file mode 100644 index 050fdbf8cff72ee8d5b79bc48bc536a66c49632e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13072 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

AU}76m=?ViZaypt4q2joQ-z<3P*k#| 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 Hb>RO2Z#eg2 diff --git a/site/public/apple-touch-icon.png b/site/public/apple-touch-icon.png deleted file mode 100644 index eadddf25f499327316ac5eeab13ef3a79ed5ede1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11722 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

}uA3 zJBZ51Gh-{LePn)666(D9~}hFkGgt_C%~*Ee_( zDUfKEOKU|MTSzV78qq#Xmn8DYRpK2OEK&-wH9;QdKh4^XnBZF7Io5r;E)KR-OrsQI z9TdyjBSlSLls5hI?Cq+jD`JQU+C(ZBn@SR>?52OAgnOtv%a52wmZ%MoM>46aKhs*& zf$I!if5vXeCC$O;JPyMJJ&B3gM1X_W{(CdwUQ>9dfh5sJ*(HLM?dPTQfoI@+0Qq>r zW+F=s+jHQ+bf!=b7hHS50mFt}tS#Kf<0Jc!yruHFL!64|q$r9wvRi5NM`v%S z^5537F~eXjooD2=*I6MWfP}g`{f?NlIyr^NlXAQ?BdSMC>=htpc#pE88g_Tm@0SDh z#9ZBiG~TJklU#R4AE(F86SYhv{JfrQ8l8vAXa=qjo$q%}W*f7<7Mpm)8@z2w8uG!l zfsi>AFP`|pORDVg8ntJ`QFZjqW_AA5H69&td772zec~N7$#7pY!5h6M%G!ulUqH52 z@eub02b z+Kr!~dt$IYwGsRVm=!zr2hx5YP0yZ1f8NteQ7b2=%TZUS$Ka^R`2#7m8H8)Z^>jb1 z61kXDY`Mx&fw}eI|7zf=k&`s7$8Z7td9-7&sfe52je5pzBBsq<`(8}Ajc+x_dypPT zgtfiRfNC@N$$cpBw*zhpKSc;Ocu}%K|A`~a{hHJrwXjCILg(|&ab%VFCqSxyt=M)s zti%7`2_85H|86s$Hp-*(b~?BCC6FjW=(?58)u^QCdZLM@iD~@Ep>q9yx$uEL-Yj-E P00000NkvXXu0mjfF#vB* diff --git a/site/public/index.html b/site/public/index.html deleted file mode 100644 index 48b0944..0000000 --- a/site/public/index.html +++ /dev/null @@ -1 +0,0 @@ -

\ No newline at end of file diff --git a/site/public/manifest.json b/site/public/manifest.json deleted file mode 100644 index 2ffa886..0000000 --- a/site/public/manifest.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "short_name": "Forget Me Not", - "name": "Forget Me Not", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - }, - { - "src": "android-chrome-192x192.png", - "type": "image/png", - "sizes": "192x192" - }, - { - "src": "android-chrome-512x512.png", - "type": "image/png", - "sizes": "512x512" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/site/public/robots.txt b/site/public/robots.txt deleted file mode 100644 index e9e57dc..0000000 --- a/site/public/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# https://www.robotstxt.org/robotstxt.html -User-agent: * -Disallow: diff --git a/site/serverless.yml b/site/serverless.yml deleted file mode 100644 index 106ae28..0000000 --- a/site/serverless.yml +++ /dev/null @@ -1,11 +0,0 @@ -component: website -name: site - -inputs: - # React application. "hook" runs before deployment to build the source code. "dist" is the built artifact directory which is uploaded. - src: - src: ./ - hook: npm run build - dist: public - # Enable this when you want to set a custom domain. - # domain: ${env:domain} diff --git a/site/src/pages/index.js b/site/src/pages/index.js deleted file mode 100644 index 23f2a29..0000000 --- a/site/src/pages/index.js +++ /dev/null @@ -1,14 +0,0 @@ -import React from "react"; -import { Container, Row, Col } from "react-bootstrap"; - -export default function Home() { - return ( - - - -

Hello world!

- -
-
- ); -} diff --git a/site/src/utils/api.js b/site/src/utils/api.js deleted file mode 100644 index 6edee91..0000000 --- a/site/src/utils/api.js +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Utils: Back-end - */ - -import config from "../../config"; - -/** - * Register a new user - */ -export const userRegister = async (email, password) => { - return await requestApi("/users/register", "POST", { email, password }); -}; - -/** - * Login a new user - */ -export const userLogin = async (email, password) => { - return await requestApi("/users/login", "POST", { email, password }); -}; - -/** - * userGet - */ -export const userGet = async (token) => { - return await requestApi("/user", "POST", null, { - Authorization: `Bearer ${token}`, - }); -}; - -/** - * API request to call the backend - */ -export const requestApi = async ( - path = "", - method = "GET", - data = null, - headers = {} -) => { - // Check if API URL has been set - if (!config?.domains?.api) { - throw new Error( - `Error: Missing API Domain – Please add the API domain from your serverless Express.js back-end to this front-end application. You can do this in the "site" folder, in the "./config.js" file. Instructions are listed there and in the documentation.` - ); - } - - // Prepare URL - if (!path.startsWith("/")) { - path = `/${path}`; - } - const url = `${config.domains.api}${path}`; - - // Set headers - headers = Object.assign({ "Content-Type": "application/json" }, headers); - - // Default options are marked with * - const response = await fetch(url, { - method: method.toUpperCase(), - mode: "cors", - cache: "no-cache", - headers, - body: data ? JSON.stringify(data) : null, - }); - - if (response.status < 200 || response.status >= 300) { - const error = await response.json(); - throw new Error(error.error); - } - - return await response.json(); -}; diff --git a/site/src/utils/helpers.js b/site/src/utils/helpers.js deleted file mode 100644 index df3875e..0000000 --- a/site/src/utils/helpers.js +++ /dev/null @@ -1,81 +0,0 @@ -import Cookies from "js-cookie"; - -/** - * Format Org and Username correctly for the Serverless Platform backend - */ -export const formatOrgAndUsername = (name = "") => { - name = name - .toString() - .toLowerCase() - .replace(/[^a-z\d-]+/gi, "-"); - // Remove multiple instances of hyphens - name = name.replace(/-{2,}/g, "-"); - if (name.length > 40) { - name = name.substring(0, 40); - } - return name; -}; - -/** - * Parse query parameters in a URL - * @param {*} searchString - */ -export const parseQueryParams = (searchString = null) => { - if (!searchString) { - return null; - } - - // Clone string - let clonedParams = (" " + searchString).slice(1); - - return clonedParams - .substr(1) - .split("&") - .filter((el) => el.length) - .map((el) => el.split("=")) - .reduce( - (accumulator, currentValue) => - Object.assign(accumulator, { - [decodeURIComponent( - currentValue.shift() - )]: decodeURIComponent(currentValue.pop()), - }), - {} - ); -}; - -/** - * Parse hash fragment parameters in a URL - */ -export const parseHashFragment = (hashString) => { - const hashData = {}; - let hash = decodeURI(hashString); - hash = hash.split("&"); - hash.forEach((val) => { - val = val.replace("#", ""); - hashData[val.split("=")[0]] = val.split("=")[1]; - }); - return hashData; -}; - -/** - * Save session in browser cookie - */ -export const saveSession = (userId, userEmail, userToken) => { - Cookies.set("serverless", { userId, userEmail, userToken }); -}; - -/** - * Get session in browser cookie - */ -export const getSession = () => { - const data = Cookies.get("serverless"); - return data ? JSON.parse(data) : null; -}; - -/** - * Delete session in browser cookie - */ -export const deleteSession = () => { - Cookies.remove("serverless"); -}; diff --git a/site/src/utils/index.js b/site/src/utils/index.js deleted file mode 100644 index 189da4d..0000000 --- a/site/src/utils/index.js +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./helpers"; -export * from "./api"; diff --git a/site/static/android-chrome-192x192.png b/site/static/android-chrome-192x192.png deleted file mode 100644 index 050fdbf8cff72ee8d5b79bc48bc536a66c49632e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13072 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

}uA3 zJBZ51Gh-{LePn)666(D9~}hFkGgt_C%~*Ee_( zDUfKEOKU|MTSzV78qq#Xmn8DYRpK2OEK&-wH9;QdKh4^XnBZF7Io5r;E)KR-OrsQI z9TdyjBSlSLls5hI?Cq+jD`JQU+C(ZBn@SR>?52OAgnOtv%a52wmZ%MoM>46aKhs*& zf$I!if5vXeCC$O;JPyMJJ&B3gM1X_W{(CdwUQ>9dfh5sJ*(HLM?dPTQfoI@+0Qq>r zW+F=s+jHQ+bf!=b7hHS50mFt}tS#Kf<0Jc!yruHFL!64|q$r9wvRi5NM`v%S z^5537F~eXjooD2=*I6MWfP}g`{f?NlIyr^NlXAQ?BdSMC>=htpc#pE88g_Tm@0SDh z#9ZBiG~TJklU#R4AE(F86SYhv{JfrQ8l8vAXa=qjo$q%}W*f7<7Mpm)8@z2w8uG!l zfsi>AFP`|pORDVg8ntJ`QFZjqW_AA5H69&td772zec~N7$#7pY!5h6M%G!ulUqH52 z@eub02b z+Kr!~dt$IYwGsRVm=!zr2hx5YP0yZ1f8NteQ7b2=%TZUS$Ka^R`2#7m8H8)Z^>jb1 z61kXDY`Mx&fw}eI|7zf=k&`s7$8Z7td9-7&sfe52je5pzBBsq<`(8}Ajc+x_dypPT zgtfiRfNC@N$$cpBw*zhpKSc;Ocu}%K|A`~a{hHJrwXjCILg(|&ab%VFCqSxyt=M)s zti%7`2_85H|86s$Hp-*(b~?BCC6FjW=(?58)u^QCdZLM@iD~@Ep>q9yx$uEL-Yj-E P00000NkvXXu0mjfF#vB* diff --git a/site/static/manifest.json b/site/static/manifest.json deleted file mode 100644 index 2ffa886..0000000 --- a/site/static/manifest.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "short_name": "Forget Me Not", - "name": "Forget Me Not", - "icons": [ - { - "src": "favicon.ico", - "sizes": "64x64 32x32 24x24 16x16", - "type": "image/x-icon" - }, - { - "src": "android-chrome-192x192.png", - "type": "image/png", - "sizes": "192x192" - }, - { - "src": "android-chrome-512x512.png", - "type": "image/png", - "sizes": "512x512" - } - ], - "start_url": ".", - "display": "standalone", - "theme_color": "#000000", - "background_color": "#ffffff" -} diff --git a/site/static/robots.txt b/site/static/robots.txt deleted file mode 100644 index e9e57dc..0000000 --- a/site/static/robots.txt +++ /dev/null @@ -1,3 +0,0 @@ -# https://www.robotstxt.org/robotstxt.html -User-agent: * -Disallow:

AU}76m=?ViZaypt4q2joQ-z<3P*k#| z0OFtZ*H7Oo0jap4RY$w-c@E-uPflt$Y01rJ_p?)R$fm-L${20pv2Sl*euUA;N!X7$uQC698b3m*oqmM9{zToXL*iP#J6Z7j zlLhyRRv&g?*zv_kEg``Mqpb3( zA+-9}HE(QpdVDSW-9;q>4V@gGLjiV($eXZ4EOpzOoj(X_mBS+2z1y#0rh7$tzYkFyO~6dzr&YQ2`)Kri_JjmIi)9=rvg*0p_uD9GZoatlI z8l#uF;SQ`)b0piRF^PWS;@^l~3m!?UZ`2hET!3iFGZYvYoC53TS~~0h`c5YuX_P-q zX)nv-lU^ExmPrj=DGlhh)`lp1r*NEP7HJJ88>X-lBYufp+DP!1{Qk~-_4xbKY;M1I z8Nzlvg|uLZIdU-W3b*}WwrBBJaAK{)gqj>b^y-9uk_3HXd%R;C)#^lF*u;v>bdb9J?l4eTn+@;A8K$I znm(6Z9S-b}Jfe6-Rn}iu(u+D|@K!yk9F|(xbumCX?I3ixT3;9aoko}5?RNJ8@x+1L z=8l71b>=8krsgWUMn9#sPDoywV0t>aYt5Ty;((CBgBMbyF!v&e;ciU-o+9Dy z?|&QFX#>z@$PX@Lgm(Ni->%Ixq**mC$V4OP-u3XoZiSLRc0 za5$+x8^S8l>%3#Z^8>O9lc3gXG{ra!|JVx62^_CtNltSAnVk6Atqb=in+{)_E_7w zpFUn-b!1Agpyczd*tPmbRTXbtx?0&V=tS9JqwIt!IaoGR1jmEa8g_%(?sGQtfHK1R z$Di)>6=WZ1J2%MU7FNn~j=8+|+^A~p`$p&SoSr^NJ;JEOF$Ku?GOa$JM8%ob7;*J` zqjyUj%ThdLLG)-5;wrjxrTV|#72PD8*-)`42Ip@*Wl|!qa8_<&by!Us@n)iG8p!}g z?NUpN001YP!Q7d2O8`iDg{#CZiIYqn5wzz?Q0STby*2jN0R*T^!K%wo6Y7)ilIfUS%V zLKpY`SB*6%3#c%s^9NsB86t8*Gh`OHaE9F&tby1Vbf&y8y1(VS@I*O- zzIJyQaq0X9ARm2u@W3io85GI^KWT>g-4+Ig5sNJfu%F5Jz?-+fB%`Y;ko`UsN#O9S zo3O9ke(kN>qu#Ik=DWg43Tz?fq`ahGz@aO=i3c%+oRoq#8!HT^cfv*3*}uR zl^CNkl~;WX4D?OTlbszH7n+RGl#gZLr4t=|pu50|2N#3(>l}HGC+B88NmUoO<8|$HfR^eIT0>%-RfC7Aj3rc}I&HONJDR>t$nOAk{ z>R^cHkKJ-qGgC7$`z7|La(D%ZQFCXlR^_~4DQricmg|N`7ulrD^(b!eZr^Jlv zSdK*NrINz+^w$?HVM$N36Yb++lZAPA)WV()5rQ>nTf|kfn<_zGT)GUgSfd1VTAs&- zfR_FEy!bEw__E`3xCrHl&aNX1x&$mRmYQV|d#Ao2HHlv#DkV9#2KQmC?#TQZTCH8~ zyCpDnbS#I5dInd4Y%_@eT6MQ^l8g6QCmN*uzug-CSo`|%*rUai$hdt!()#=|j#2h5 z?zar3+lse+pl;!muF$@FP!0+p$*(~3a-=CmM zINV={^6k4A4rDN%$J8YrMxAVrYlWWV$PQOq({^cg^OfG|>blCD;4_nLXfmGI z@9qfVd#-erfSd(G4JY=~G(fy=lJiNaPc3cVJbC&6KoOBbUj++DCJxHFd0Jo5Z)a+X zImmneDqZ#~ZUN`~wt{|(fyb+#lKO8l&P3Ag{!M)`$o|fetLgu00YcbPTe8tFh)#-Y{132M=3$ang$|9y;%$m$3k4yrHYc>hf*^?lO3B7a_mS+rvO$4>At5-!6i(&~=Uiwf70}AJ>8tkVUBG|)<_eu==ZaV64bmUID;7P$9_CHfDsmcC z_63A4B5dV^oln~OXLa%=j@9;87z)3JXV>lH-jKET;@DwE(rZh&EprVRduVsFX-`l9 zdaFd#H`(d>&k~!bFQ|VVOgJ7)(#hO@<3p1R06l>c6jlxK(OHg)z7QDNBmUd(UDFiq zN5?@%fpJiJq{S#s>X8V%EIOJG*CqVYd#+@+eI%yklm#$?O9k&Wo_<>o4>xnenlVL6 zypZBwVW1l@t+^`t9-fy^vPJ_|WBd`1QfpUOCZwR&LZVAcYEeL;v8C@TXx)F7D#aAzM;-Zj&qe`Lo_%WWCQ{_**b_)N zsR_;yO#o5s&7-jfeUIZMZL;mJ7^eHhW;&;QL@Hnh_)Fio<~F=4Cp=23xKBwG!hqGk zlWCR88H5)RHl3CG;4H*s*T*4Swd_9M{kIJ8RhTHofwt-uhtD1h^7tL=rLAgO?Ztyd zXfLAJmmR*!zq{}#0Ch+RJffo<;7+S(cr6(v9(|;;N-uu z^6E&|Xu%|07>#kuWr{FF9786`tgAAw8hCb|n|}BB*zde5XYVO#^iC=co$-q$9-OKG zOeMdW{a?Rag8}k(rA+zV{fPtPU**`e5)a?y1jS7e?N>M^aHu6ck!5s*utLftuZjwC zd0>9s4R{P{&57K^1swS&(uIye3#f;tos=_E!?fr?htzvN^^c5udw+(oc&l4>5NYLp zPpP?@sNPxbSP+#mEBTDjY8Z+afXp%tDVnhMq8=;|4bg~xku}ZW)_QCdg0Dvucg6rw zogKLpbQkN*hYc)Wy_i>2w0OM?oS#DN)kpe$J^fZusrKMKp;tpDMH|{L2>%aHZ^0H< z(?pBT4DRmkZo%CG1eajJEkJM$&fx9|?j8a`gS!(TxZ4a)aCbTLe&?S12YUC@yLNTe zsk7KK^86j(Y*5ph~@yLq0lU-t+4i&6V?B(MFbtVUG4M;$B`__Yu zT#z0ye8r+e{Zm3JzRX_gw}17k*zJaoS61STZgk`Y#B!1W<63i!`WB~wmyAS0VAlzuv4a3f@L!y$uE*{4?x0=H^fwlR3tM#dTWcGVcN*7ch!fAY9}8~}JW$+lPfB6oZm>n^# ztXhND`EAMBIb@G-QfNU)n``R1&owxEdIkD%^>4*J)ZaKzLC^O*l0X+=N=_ktwWp6s z*xp*DxG{uUbqY4_Qf!X-Jgn0=dhm`EecDBM%U4gRnsZZ3}ut zLv(ln*^D!Ln#k-{qYo!O&_turqbn()fs~2i-$I6HCbiKbCzfF3IveJjBKr;FG1FoM z%tnLPPFw7Ziq2H2>(8dN4^btno!c0#M%xrQ;(oIH!0Caybl=1Z#XRH>PCs6@=hfY~={41K(q3#>m)}!0H#@H=C1>%&c|=n&ixyMtnte1Q&^`I6nZ zxg5hM+m~k?5X0Qb>&&pU{m2_+Z+Ho8paF;?$OPB524!5lh21-cmv@3dV}>I~_=I&k z1Q2|6*@zvY{;h>l^RRhP$}gwebGMQSqW*^(+x@}W$Cp@SR^ii^>itVDlIe$NU---5 zAkiH|l&bPgu+&!!=g#eTe-9({0NaJQe<6FySy?p?*xt#Af}zX#S9|SQ|96{cQZu+8 z%$}QDo;kXJKAdmx@1c>`$n?=ta6Nu;Ey$=Q(w3HNi)qz=-qxk;Zm(mjwt=-ipW)U3 zt`!x1k{5zw8!B4f59F(CfQR=DBTq4{&mV7zM@$ZXe*SaFH|737)VlP1Ee3j!DIgmd z!`34WebS&1k1SSOHFUae%JLi}Vy8_b2iq46w z&zB&Qez)dPZIYOWMtUsDQv)6EJ`-581mY(KDHL=gGh3h9(_eI;>yp7&x^DeBYH>0D zgZLPL4WGq(GArOF2DsM+7y3f>qbaBtiQhx^IoL=q7o7Vjd=RM3f#|pAJh{%E-XHL@ zX1|;`$b4j&!?Y;dz zFA8)7HK2?4vSkR>6|bqhp2-`yTa!~<0g%zIn8O7^COtk2H(URk`Q>vgI9&}}lleJR zuw`$Y1jSP=OoMCFK{{^?d=9-8_k)kY2xi3PN@0XsfzV|KHm*6pKEW3}K29U|*;iew z`{2h^g6@@?F}Nxx)>;`7Ul>*v{HuXKL#sj@`S1bDxpc9l-o~wD_w6S$L zc`8n6eydE&72=XmVmFojg2sU*nWsPvgwOc{=Iw!yWwo3CJng?2Zcg|64mNdJs3Q5u z@RSHjK+u>@hxp&~u6zMqQ7}Imx4Hnm5up90CLZb?gS+_{2~9Nn(<@_u9O%o7922V~ zO=6E3H54?}25>+cKVd|6>P5lJze56J+T8`jnFQ|P$~JJC~HTJ3c1 zfC{#*O)V{HsD=9@ zf)WVXKNP?Gy+|q>J;asHhttm;_WGPy_&`#!>b+X8hxl&M;^CJbAVvmUu2yL#lR5$o^>O|exMdE< z7NHgeYS3>c95Pz&Gpl;q{jfLw>dr|*V$CLDttFH{^W9`&)*nojjqzZQ{Pt%xO`Zy`F2j5-;}=*NoNLZX*(8oc~~_|YXzTy>U8?-3j*eo zYGiKtiRs?&eGGZ^bGB*#dr6XSyLtER-ZdMZGo-Mo>bQvC7A0rKt%}Na32*TldCt37 ziArJ=XKERNya%WUWgA2EapmsiqqVVhR-6O$v-*p!KQD=SO48+pGIAc{* zAMKfH*FiNY;}q9%0z;bXI4ieW;{C)o)P~;%&z*|sJPS*@@jOy$wwAEID?d$VtVQme z0C>4|?34dCJ@!j7&E21O->%sGKFPyVrTRCxzBF6%rl)OTR_H?R)i8+guKb>F*H#BQ*o)%@srKTOsB z=Np@=?MYosy=3b77izV;>tFsj*wT7^cZ5>P*yw&M4UZ?~o@fr4et&2hm5dXj8WjD@ z79pl1yzKN#QkU%=p8rzZmSV!;Ysk+@zw_Hp#1+##Ap~)PZ#;r60Xi6?W?i#gw9qJ> zEEETXR@Etis8#ejx}sZnGd%VzoLZ9Q0uns3yS;`TySvm`NlkNZ1wIDd4#eX?0K$|Bo$^joOaZ-?}{B4fD?rItLEoB=YHsA_^hy;S?g?bd)VNLt^AB z*1c!tPKHgtr?#<%yiI__=-N+HHqK699f4eN9txV_U914b5YhWiqsJigJj&?VDyiQe zY#FDm)+K`lrHOu|i#~@+8A>-$i1%_@Jvz^vO&ak#KN4H<528Xm@h2a)-)Tgl!oEpFt8a&pb~zJ~8mOtX=3C z{D>WS%^R=75^pV0RM$wVpuXtYCsx)7ngdd2zhnOo9|7d)J=zg7NfYSK?hd|(!4_13 zSj*X7SVE8u5&f!2o+Iq6U*lE=s2Ca@f-1KlG!u*g;lEv}OrVMUj>svzl2%NL&9fE@ zIYS@L#<$8CI5RA&K;#Swo#dCYF!$bpHM0qsE7pQ1^vYKZPtVm+ImIhfskghmAaG&L zJQZnUrS&pGS}QINPmW&bfc6x(e3WKDAnsg zw0U7@%~n4ZaXj^7u-Oqq9P7tV=>I+s^3d#v1dsJmKRU{(4-%^6ENLFR=#I;11iWY> z_g%pUD95lp&SP2xzCFn#$3iv((u~Npk=T+bm;Gy9#RsFB^#G{MsV1Cnc#bjYGnf9- z@(5({l$j920oOt>@sHq?Zo0&d~p=5evX+;?WB9ml>&^5we>ckLW&9{763w z7d}O@@2g49;@HGLyPFj3i@qb$yP!L#rbw4;A+&50IJfCanw0os>lzTmF#T!aKt^U? z@&3JYjH&eG&z4)nT)&~JxS)Aye6c?&*2-I=%#(P`%s+hc{Qh__1-JM<+J@c3vrjY+ z41Sl`V}q&b!cHwofgaa6f4^t3LtEOinOpn83iOU>amz9IO|(BZqO+asI3q$|r79Cz z#~op=dHPF!_lp?F6mQ!WvIU~LN*Gk-$8PVZ`^VQleMK7W4WZ0_P9znkMgMD~g5P?% zXNu^u)q5-01MviS{{?i1Zd!y@5M}&1CNayGdvLD-pcmI0$9c`?E6zvK$_UZ%=0m#*R za=pdRH2Yc7OgQED8|GRan5(zP?E7}Hu&-}Gk9)yRVKJdmB_Mof&V=%g)EQPo9KeeJ zk3A&(6n<|%m%E+@v~78MtaP48sXHdPH6z8xe}dsasZMY5Y|pc8c0-%BITa%!)!@6$ zD;97#QGY=^^MPxOvdYR@glwYifI4{PV^!J@X}C=|k%gSG#OA`Xl-tUui+uVEOphf0 z0hp;x-*u?1!6k`(?2NBFJgQ7am2~7N#}R413(?j*;ImC3oH+_vK(+qTbMWPT zDn{w6q;oFz-TfzEEdix9UkyIbGp5x`j&J(H=UQjN)K&~ z6FO`VJ-=_7{t(K!T8c-k*PAyBvgB-t^-R7~w_8db$YmERfI_q1b|QCc!?vnR+F z5s;qOBk)Vy3p!Uz35cR{(3+;gL6FG4(} zhV6wm8#rV)({?06D5UR}Na4Yp|J)de&gT>qABP`XfeCJ}BtQOk+Sk|zDi_C92YD0XpPrbp=aW~X-vO!23!oWV+Srs#^U zF2dAl6yy`HUoMCRbU@56BBoyVp$@=n10#B-TL{vTbOVmSQaH04)flCRmyN4O6H;Vu z9tCP-_o`c#xSuxuO^$io3qZ&sW>kLF<#`JUWP{)93nCQA>1*jBkd>^~7_33!tGq?URvES1nx z`VPxDU5V&)Z(C{e6t^y3c;fjN;S#609^fSU>WspxYpj!Mc|Io5zs>#!`Ry5DQLHcK zDrq;i{&Q;qn!m$`3Wuw^Or|d^LF(qpAC-j_9>Lf>CP1N)6Qb+}Sc5fziKT{GHBsnY7{qnGu`^1b zH=KROtYV1JII_FmF2ywUaOTy%=C=*Hi(8Huagt^DTEIJhEE#sTW|d|5=1TV2M*7)Z zDgl`_I%+?3?cvqti6)8emd2F67I7dK`J*}p1Jz~ZNyNRVu+5NW)U~j((fb1}lt_l! z{oE=MMWIjPfJ;ghb@A~`l6_R-`d>y^Kcxw5xjx%FF1#N`916tH{RUJco|8s{wEFQF zv8)sh#Sni*MCJp3DlcuT%= zXH^by3by>_VE#VNP3q(HLEHqpDkuPRq07X~FPO+KQA}s4J30Yn|be=9j5x z=Iro_BWZQ@CVcm^s}6?8x%IB!OekQEO_1qjt9mWLt}Hw$Ktc^sQeMQDWLV(jkB#s_ zk&%ZaBf)H5c`==%Rk!K@Qup?i`q0kVPe0O)Nh!(5_`LpvroBSDOK>xCCuk~P^<<{$ z@F!D9%li~I?F&Ufzp{|m>JWlkPj1?h^l#X_$#w; zVHrl6)$abi*N5zcy%W$B#kmx zdfM-SbseSL?><*t-QgIEt+3aO?eI>6E^ZlUu5b!XY$`6dU}6+#dL;WRT@(p3R$f?hXZSmf$Z?`M$Su)s-@4 zkNv|rB=={ag)dg0Dyp&}PPa_K#`K(X^scMf1b83h{OP#HK!~NMt*xIH(UebDPgw}5 zr2`ah53x(&e@ZvLdTJt@ZX$VeGB524PF~{ zt66u`l9KF(lm3n2n!meybybb?2EtULc!5bgVR9F%?a!cXpe`J%NSkiT#M=BG=-TW) zi*7j@%g=(2{cBH|fhK`9&W%;_uRled;;}0$Q&g`nOV~&cKdg;kNk&XQ7b2kSiBs(y zzf1xgT%`jMdp)D#=wdGz-(J=YZ*G7fznIcojDKz)sDKAE1!w`i9_iG>ecovJR#|>U zOqjwqa|?x8PHX9c%~PPmv7DGKlE2v!h~kfY=;g{nA9eA1!b0?K8|rV~#q*~up%hB* zsKK?uII1KaBpMuMQ!}%8jk*Pk&M?Q?VGa7$559DR)x|epVqo^GdvF82s*0~#;PWdr z^x)^;k9;kcUZ$IAMxGZfsf0{`yS*IqYj3kfy%5p>&#=a#XDnDDVr4*YV9nwC%Hm#HwqnJ%FL%>GF>o=k zv(1g*>m9lIM9o8UHI@L`8}Wm&hMns5-X_}_6z@Jyek*cTytj~{8rlMucvx>~J(K2; zWF{;PXCOh*9y(-wIg3k0DJV?7xTaaz1PRIZErq@BFx*l0c&}1n#?w|e=+1MkifaNq z7-Z2K*e_Lr@6{hW{q#G7=Aa=U)Kw$Tt;;{%ro*_pC?n*_>>u$EY3FjF#`%POxhtu5 zBS}qO9yr7$qF~yGqQ^^s7`df3AA81$Sj-k=l(=xfQ*HDQWE-%0_bW%T8#R{$51@*B zP6SF+V=kT7F>+wKM-E1pkL$wdz7H?9yd}(%IMuBI9Iwu~?=JvzsnX}~tZqJqY{N5* z?AAC^Q@z^(Q$ywFtPH2L=TETSBuE{LT3c`qHnC}TVQkzT-t6~^;) z#?N{M^G?@{Z+Asy%d?ZUy1a@eEPv`Ag)zU&R@lp#6J`>|>Ipl9lxv))OUcBgp(ey@k%tFzM3P`bJkJpS2LQ8vUL_{)a{C+?N)D3I09= z+)3Q;N>bULvet@xK;M{ZPERW;tG$HuSOhM~#4Z}>txn5ntD=0C!X~TNm3q|cZ)ZG8 z*d%C1r;?shaLZ2HqOr#GVnUV1=JL#m4C}z*lV54jM_@~cO}G=MKyi4_EJ!aiXe^+0 zH#pkt11rGw)97^ZQN8r!MeulI(1dD6=C4)F*qMxS*@NK-||^3>Hh znvpoRldq2CH(0`me2^F%AdEzbe9BlyjGT79z>r9|t^FxiS|0#uJ4KP6MfD{Ta{BA9JVP0e?+f zxZeIrgEKWd32^!DIPdWhhfd{IDcF=|2N{gJ_R;5)max~1v>6@T6=;*=_BBGi$v{M zgK4plvcT&HQQdC%r~r#uOST{+VJoV?MAB!dUweW0LFLEDVo@!G z5~ly>3&4+)9B6x^ORgxr4@Ej61JQ3J-AC~lApYZtJ6+!WVgZTH-J7Qhceqsslq-|%d(@%-x>iqLV6Q#)2>rcbg_2n9nIfFcY+&y7QoW4*5O9_tXF^KQ@kMu^l zUd8h4%)UvPFo2lN{p}fv zj(Z0mfE2l>Cb}r!g4(BoJZ~1PrSBG~;C1f|B5%)lAh5$)J^u8l^u#}(BTPrP>VptW zB}KZg`Zma@ZXm@e`HT@FNQ0cV)f{Vj!D8t=#-eK>C}9wvXRe^%(^|`km(ofte94O& zPn{Rv16HhiB-!wH|5$hO(=B6iN*e&H-J&B(Cwb~2gy-R)w4WY))(L9BO{W+Bd--lo@F9 z>y*yHSSIC}pmZ&&zzciPkKS*O=o>?v?kf6diLp4Eh71l#AbRbQ>@PZoH^mF*> z3CXz<(-@(r)IsNcoUZjT$j32UA8^13C3)BAap8FV zQ@Vhhny;5TsD^qEk{`xDPMoFI+#-(f50$)9d~oi$J#jQ@Um&=@_=S#r(CRj{4|gyL zP(|SGdwPkL`Qa+=9o$U99O@(%;nDUt`x(MQ_BYok@`rCq0fK8Uuep^>Dy#A6)osR- zLL1xCNy$RUTRLYrZPV7NbMRdUnO zd*ecg$(+qo&BlQqc^nFIbwerHVN=o;ycp>KeYh~Li?q~sWhaVIA#)D>B>9iC$;dK# zS61&zCXp{TP48uN2D0Jv=~{`Q{jhP)P9-O1(K)2tz6Q|pyC-w@b!ZPisN(`Oh4YO4 zhUOO_Jl*Gf^c+w8q*Sg_F+@{g@ZS18;q(ag)^b?R@|@;}r!;O5{nt-pL|^WMG<{L3 z0{XL)A)ZGyHB>;nT(i%UbixEM-z+;+4iTa$Ca7nNnWUvI(lV42;Mb8_HkC3GzfS@kX)l6d4-?IF!Ofk=+w6(|Qjs4wXass?&7aR$P$1cBn&d{=nsHfMD_jIkqt83OR z(nv@lMzDoGP4Hu@Fa`B*;9=R;NI(`cd-$fsn#YsDI>pRuxzBR+h9zS|IN|UA4!li!NosJNz~X2Y$p9LA;6)r7e!Bc)>7D|$A)(TdR^;& zN+SoQ4LAjN^DO9uqva37hSe{dZ%tBL{co$^*ouZmGv$Ar?TV4)Mg5_2-DFT0xW*%{ zmbNvy(#_g2$qS(KLjXt#*$;_HU9kiRo6_Q(4+j~A73>LYczoM_zT=RF_Z^eeqos%k z@*oxtg^=10x&{rk8RAsnU>^bIQHZ52TEaw9D&U<|P>OWcWbtg>*WakhrF`7kHnCo}|v3;jvH@6#U4>PA}M>3y!k`Y2^d#&T7TE6j>+IxOj-BLTx z1l&yDJ(vha0ofr1JxRZOhvmdZ)hW86bIw}pMyx0aW@e-l1rs35A%iO)bV!Qk=R=ts zNHV~|sPrbvn^0)Wpr^UHqFz4bp@K?q@~&!6FS3NnRb2gJ_7 zDEN#35v3^Sr|{bVOdp?J6o8G46aGyt4LE#rlg{XOJ)L?$x}0ELs{Pn(|5V;%T&ZUx zOZB1nJzCqoAKVN1yc^s|JH`bWI@ODU=~c;nQ>Gpu2gGeNacTq|GH*w)7hASD8)jY02;>m+f2PFXX8Cc_UCM6KK*A0iob}!fz;f(^{ zluJILmpb=HCH(4&f%xtIXmvlr{;J|`%7>PNS-=^swa;@S4ApveIuS53_@vpqj$}i) z@3&77B!qlk&!vA(iflSooFUK)Rl_U$?^uS!Zbj+aVtj5Z`!^4MTlShcz>6jXlh{L_ zZ%O}>`zTUGiQGJ%09yd%=8FE;5n&prT^|fUr)h6NY!G{NszVIQt8o9@Z*tX)a^AQy zCba)#H1TN2bzNM6X$5HBUFkdP-2MZ4qN-A;FT^u!09PLmHU$~>k z0lv&d@A^gt0WEz}K40LyVthy5|2up4Z8)7%;ZjQlO=!xW>M-lZKV>#aDch-p7Gm_KRTQ*0_v@04PeItAYs@0fc;97 zIMR&kA0xn@m>E~8Xwt+Xuxlz_gE+mR*;(bYU3Dy!ZjEG9A1RMZ4*auz;0~@klek@O zhl8B;*RN9qnCQQE!HRB|UWdzKa_M8q4#0@_T7S-6ep8?HCwxaFU;7OuFOIy_xe!95 zFfd0Cb?U9cM5i2vF&Zw%0|PeBP3S!k z{ztL7$<~%^C4W)`E?|)*6j*yFo{*T=OH+I~g8i(3&F=?L!O%8m#FbN@>vkE<(pPzx z(M?nll}pk|5<3d*;hZ0sNX!Z+KlvadaVBz4q2swS_{SsH?pK+V2v(5jGoI}s?YOmO zBJrg_!6C_pTP#<{_aJ&ikrF+?7I9FkXKn7HzCBn(LkjXLo=f5&?s#Zn{m$@m@eF#4 zPj!t(STZ$-zrR#m%!-k2nO~nO<*QG;T&#sU)IKK)#6#z!?3?E47TWpeilisDJKqj< zP{@Tj+vuCKYIXP3#jmzbrT^V9ovQ18E2hJe6A=0o)5SJYde5+VMpWPg^9(ZjQgXy? zF;18dF>R|U{V&r%XKX`Yhr~Ww%q-`IH(PP#VrlKpazC)u4}N`Cy8ayq?}pUQsINzx z>0u?J0Cyi1rqq#ZnU9zua|-o(_3h5TYzdB#(xU)TVU8T(AYhqWY&)?V9icwoTSz>i znBLqde8MwUIv@*4_^0Zr+EY}1u#+5blU2( zaG2g1{_ZjaEqbwH^pDWL5)7l3sbouhxmW^9GkC49==kw)abv#{g)ibaZBZhHz?}$( z2d^7@12q>p_i{9SDS7b0$UXAOcYjveLt~&M=Qy_7(V?LYgw1#AJtM%2(a;grDS%H&+Zwk1K8 zq`ZU}b1niA4o0=kqr;!?b#%s~vE)6?u!-7&$7u*j5r!kFuC_#DjD};+ye}<5IFlKA znAvSh3$>Fw>K#(&Ky0rfw*lVpK*1P{G_T3>W|w*55}Ez8?l2dYKrzllNNJZ0l%0pB zR}WbnA6OX@v)O&M`}Yae^g>Luh<}eB89)L4XE%6VjL;m*u6YncLeJ@T;Bbq(;$Xl`_-KbtpwHZ zvcS;QG$)SnsZw60XNkov4G($KlxrPDQ_wc^n~dOa-x7+2XtZgco3OKCQ`gkD^KA@H z&@13zP_MySCH=S?S*(7sJQr)HnGAYV`;Q5+n0m^PD%Ob{Vfi8{-seJ5CFmRn(Ap!$ zqiWGD=7)%~#&{WAepYOS169LKoH=LG*d1G{D_+h{f_%R8itI)^<=tFl=cDLT1pMsn zV>^V;0!pY`zLFIBkkTofUiJnuJY9C44RnIe(-5HbED?KPRJRh+2?YtLyaf`8KN-u@ zQ}7h<=)dl@c#r!B)9tL`(vmaPVjYvb7V+lg;oW?_m(T5}>y{p-H%=E^VowjYOSpd? zA2Wqsuo~-7o-$TXE-6fWL7D4B#5jHP7i8 z)f`yMh|9vbS;oveLA7THIpQz0if9ahxJhWg|0vjV1K$vr=isR15%H1sN@x3ns+UZu zZZmLP6FPfcxP``1EsdN4=;L`iJ&%EH+6DeY>^qi!yRZ_2WT|Z~nerJt1@YG+4b#Mq zqAfPsg~@S991dsG+Jb(kx851BIw(1EP9?6FnBd$8h3l3d4n0pOJfz=^9TNlvp!QU; zO%N1yr+Uacd>xaetBZv~`dtW|O&%W&g>OZ_mT2mw%SH zK~b2IJE2r0P$2l3p`_h=^)em-#*&Q+!+{Z)RtbZ+{%qC2=gwx^WMfSq3k*He^_^p~ zcUjVPU8X99`6Y(M57G5`D-$J^qre+ayc`%I_H~ioj?6dMkSCwHA79a6Koq3^dqMQ; zpFu`Qn0^@I;(ncf-g2kxdqX_*KF)3uNPBbaVg}|c9W}8<#obbcg%xv{qHT(3Llw0X zoi1NrLt<%?fv|9CLV&8EJyDF9q;NsVg1-XpX3dHbeu?ft_6BS?8Mua{&n{0Yzn33} zzWp+aLSm&yU-nYY4Z7ui9aXB_(9uv#NHv9V>4Er`Qp zjbjScyT_1zcO}xw^blOSGSuYbxTZ&I-C1r8EQ-}lwqw2;p+M@mH#5^(!uke7wwz@^ z^&ZWydY@ft>N?=)BB|a2dgfCut=7LeKUW{(?fG z;Ny%Ig~&HA&NOjcFBH3x%))syx4naP9LI*9h40d2J=+BTP*L_nTmu^+PjD+t4)o`7 z3~BJm0q{ST22{%2rHs>-6OBzMs&lpC7p{F^i1rkHOI4oOMcg$KXNqx96CNX;!CL<4 zp%15FQ>A3Uz0DXF@C|3J95AOYjw#LkSLuyFSi}qx0|3q-s29oBo&XFHeuvodo5dCo zM#T@+0&6h_548tq@{$4#08KKJw z7w7?QSpW@X@koCM7goYi=2tjJF|-O4g}X~c4~%O|u9j{7y|P$Kd%&%*Ks^E3@x1$F zcSH{Ic1yZzF0yw|nK_UxW7`eS@PbOYHV-xkCMJ-nm@=dtG-UVQrD z`^&IVsu%<{O6r3fRtX2KDesK6*AiX$U#Uk=;@`#g&R9R$8lvp#Z5=USgr#LHOBVOm z1zWJYn8P(3%ItUYMmu03c}^j+N04_sv|GlTc%H85o;46@$iTfU027Ckh{v#x7@0uv z{DH11%{5cgh4*Ja6VL0MF8Cg6;z{#or!Rt8K8V}zP=5&;OL$w}YUk6nO9Hf^J*CZU zHNn6pg%==pV~R3Pp3kEe_?N9)Qmo5tD<@#vKa%W7^>vEMHqTXY-t$P_aP`Kxt&g<_ zMdIbsjA7KVfHJK`thPdd$6<*ReBX^Xmebwc#c4NY^1=LFI4_Vq8@pK{tw)(w*WjQ_ zJKQG|HWk_HRf4=#`~Q~@B@ha_UZ1L~pMu+NP2s?=~|L?~$a3_hVt61WDgdxsW~3yfJoU zBlet1>=vL)mZDcIZVyx|nA^bKY7G+_Rj8<|U-@B@JE*tpt5i)j>|JpxU zn2!SOyCa@yq5perYptGUcV7g^UI(gcPV?Tt+-IJJQf6sSPyT8#>lsNaz-IiU^m6I%yW-G_ZYaI zU`2Af1=}M^(keKbvvt(4;!qf9>pu;`Qv+bs!U2+HoQd}cn zo^4@!()J$Z;jioohy1Y$XYAj+HeCv#!CymdF^vuKiWYufEv{;_{rtI-!iO^~@e2E- zdrl8){){GzffYO0>4Sjf_RC~cqviv zo5E^BgQ|y+uaRb|B5FyiU;750+h%biR?BpA zUQuTd6m|627*!s5h{}&0`36X_y{J{h$5e(08ZI3nf)=JIkZC%#T0~Q7?`VL+={NYg z@9w>@zlzBBz^LMPS7o9m=Y5y3jsExABGX`yqJeH@sgP}z!~GUYm|M)QOJ!7z{K<$b|rHDd_yQZr&~IdJWn(H%EU(`>3~89 z3+fkwpik)mb8-`?_bnwqanp_hKbA94Fm-KU*Zv7=mCZZN-@|w>?pWYEMG*Gm-)K>} zKx}eN`2FC=1nWf#OonNX`MCb%`E>ScNkAYUio1g%;ATQG#>z|OSoX64v4mKkdq0&% z+|QbtzlgV%!N+&NfV`efrLv4fUR5WYabw2XSdGtuMZfC%+rKECpRk3n_#v2q5zJ2G z=m`E1qLhQ&tUGbP{0>`@ZutSpz!ltYn0#pmW=o}8Ive5?V*D#0IB=3X!8t+tW@+kB zFz~ywowb|2PxB=&75m7buJ_XX>L2|BVlV?Wr4*6L_1Za7#JHxSg86OikXxJRb80cF zI`vGxF~|gYWEa_m$~S~4`H#oLmNHe-{L33y5>_vqW1{uUB_j9M00VSc+hT%F1x|ms zuKviW=}P}s$-g%cxeT{t+$tjk>w)cpP`+9?)S}TbekG!P;jCCxaWBiYqcf6&PSR^L z4YZ}rT|S9(;tYT7P_c_g`QFRj-uit_{Ke#4`jtB2vZhi5aUh*R2>d1-1S@Dl0tMZJ z1D6mEgn^YRE7e1;<&MnzUXRprd*B6ic+|G!C*kH0$)Eh8;4u-8qFB7zj-SvVj ze009nE6(JTG|lEupFy1y6C!e*>ajXl6PP>sieZ#xw>Ms>lf;m4p8u|NWuc@?*0wrG zot~xvmy~z3)aB3>jT2?2-&ysYeX+i4?A?5a55LA@GIB!${DSPGw+smbPOo@aAksOa z_HjUx;6{71e%;j-D+lbPYP%84Zs+O6q1L#jWwOH~#P2T_Pg=hDECW5r)+<3K{O0j{afCX>j17xeRvKtoC^4 z#FM71F@1xcAh}KyAq=pB1(Q6hm|>5g)vl2eO6Kz>e$zTV7$M{Hhvv=@%d?Xm8KKx9 zXUbsU{}^5`@n7FQcX!aWzEUu4o?r3A;U^P>O%c7yF$Swm%P+1Cxn zjWERn2fvzmp1UluH=xJG)FnM03xNR}X0q_v+XFUp0K*2f+5WOZ>rqMKoOW2UVC3*a z`Sn`Kw((tKIyE%Ymj=A;Hh72qOoyRIGrkd>yxQzG{jqwd-ua2@^5_bMf{&MRF$Afx~+g|0SX~92k+)yh#C~z&U&uCQ)z#x}puD zDRek)KKo_a&BY2S-5AWdKm6O^MgHJ9%}M1kkK_T_PtJ*6FkzPiGi`2vV5T^N>S-jI z-u65se95N|kvl*J4->GhpuTfM!Kj~vj|MTQe%XFY@LDN?!>!qQqBfTzR6>%X5i4g7>+#3 z+fGA1iDx4A4~34447wR8n=&9zkQT!FRBJE!*$`&mvsl^nFXE;I!Ht8^7hLQC4bmB~ z&|NcNJpXId$(A0qF&y+;C(Pie#SvI5${9q*KXS1t+R#~xR9{g@Oj9BL!)l+>FFhb10Dpc?oEL%fjx&%TxDaK z3ue7B6OXm~wG+%IWC!G1fB=4?q9!$f!^;=$0kL6Q!zW{gJ|Xcw4tc^hb~Jfl}wcPcOJh z1K1QWg!zdL0JAa40T|G@blm$=Y-g{wy8J>ryyBpNw`l4XCm3ekQfKfd?V&+YExnH* zXp?q;yUzfEcm56|5o(U_ce`5h*XQQL7mxiK^p~Q;J-=&5xdqt4kHZZ?ed9zfU0;uF zHncwaJL`R#9QohVCYXeL+z{;SXMg;}{d$J!`uOh?yV1cKfT2IuG(l8XPfZd9@uvQs zmj-j@-EPZ7=qEhOD;{S-f{JV$^wsc-Z9g&PHNWIJn6eAIDVJ-S;@L*I4mb0COnznW zIc_-mOhxu|yyHfSH@7I{&AQ;fN}&Mx5rQQGYJ+_anu%rbeRu3GMNH2=m6-l)Jx}bl zthLj{Ql(=AUKQZ3lbR*2obP=RI84-hL?~J8TlmPF-QBeiNonf7p){5M#|1FLh)OyJ>`)F!tC+2!;_A|z1r(uzxWeFj{ zG>X9QMcj-WYQqxIX9)ELGVwEVzn{sC7`5yJKWAPeOeExOwP|z737-X1Sd~=cUcnow z_LP2M*sS58ZT%6u!%KLtlZ1IDt9PSj^{(3Nd!o8e`gd3rj>#zYan1{vGk0{RPTLK6 zAjwPVJ&}LpkiR?bQ`fukRyw2g{S|Sp-2vhb3pX8CPW;%YwfU$1K2k^_TUPK;QUdyi z1AaliFQ$O@MuB{_W!f*K%$7^3Bw*|z> z^MKtWw$@;);+LB2*eCpLW_&E+&q5<>c!_7fWWidvHoA>2zJ9^OSP1FBYb>VREs~=M z4}$AD$7q@ND(kMeZ+|Tw;O8e0=Du=T-SJdn<0vr z$ZlCrtZ17mj6nR1dq z<`~~paja*?gVe(`>RyUuLZHZ2@vSG8_LM)k6)7Dd(Y=i6)@QQ!4B6j$QUd+(8Ga=8 zmkSTQ0=CW+^V`NT+WyaF>Pz!a>+30$O?y)?eZW;FiR`}aI+mz-0aG~K5-gr-l{q%xnH>!$#=#+9qU&Xi8`9V)Ic01AeF5Dl}Ps{BPCVU<%D#t}TIYF^raff8VTe&wWOCht4S2~xL9_U&ON`sC%iAqs( z6`FcmN6Mn89Lw=vuDvDyQGMmFj0yfr62sw&`hM!+aKW0VPcbOY*pxV6))%V7HO&TT=!U9DNTulr>ELTG*Ab^Z; zVrJd2OOSylr}a85TR|sZqYu>U->|)1sEZmI53C>lRt|jS%udDoVZ}&7YccnEo?5sv>2TY1LMj#hDsWZnz&l-D-212XFu7`_*DZkNL zt|@7!-Vk5h7_}~!Z-z?>`Fr+jYrXx+%w|e4^Hu;xrK^W}=P50|D5a2KNiv3uErBs8 zR`3tr)On0xu(yLZl&*%pdZBbUeSzD7DCxTsTY#AOz~X{-AU&=k;xc5%XBST5c*4=H zx|zSg2*JJyJbx$uko{BcUrD`r4M&s6FT%Nx%0xp?sD=RrhF?E`iP!#p={3W+X*3RH z&zCjck?T{I&ch@{`4p8M3NRz6fZ}B<#`XL&(BofDFS>5w$4{0T-rP!EY{LE!Fkt~S z*MPoZzE|7@+BHTKpE*{xn}HiZZJK$lMVCK-5dJ;sFQ_Tzz4KEkiz6_z8aOJa zQ=@mhB+3eO_1qBl2w!532E2wdeB z$&(M-gm>g6OB)i~N1v#&Z191vu1CXid>M1laK<#}OO+$L@#uUhRJyuEQa}ojjBG9e zcS06smfaekkh;rIqe>2mZY3TjpK5%Tk3$=d=-QGPyI&<6(GKz2o@#`Lj;7jPOns47 zZjVW(1EAhZ=sgX04HDIk4bgL|_fFbTJ*qO1tDCCxHAybz{H`q$ zJ;!2fyh^bvhVayQhNP?br7z+E(KE~HqV{C0ayHMb8OHV5_xiVl)6g(W8lypf>w8>; z3oB_TQir*2rbyYc)S$yyb;CVBB<;48TRxdBkDRK1rUGuxB#}ze{b}v#vR?j_JY}Kl zqcgD$2j909%ieg1X^5ze{Y}1&Bdn9^`H?HovZPMi;}78_?XwNQX9-Z0y%u>0{t&pQ zct`P~bj>mOkm*x$w|WO{EI!KHzfx+LA`<%;)GH2ti~)+i5bA2|^1ye|(q8mZKA^Q;U-oSY1zZ~Z9nxvIF`$6?HgdG-^p)jg`m`V= zr6u<4z9|@PrTzpBsB%g#qpi$5U_Y!5R|;N07hbMiavDe4A3sO7(>%*%Z5ZzeM&C0N z-Qu(maODtIB&HH>X-YpnDo)9Y$ zfG>;FB|&h7HRd~Wdz%m&L{&M16qE|(f}lU7R1cG@G~4ZXkUE*yDp;xr$$UeM-q0VT zkHPygGov>QQ>E@g2sN(b_Yx3bPsL+f+vtkz2l4hwh%b@GD=2l`42^Sj_BC2jj{D5Q z!r|u{I=a>0tRIm2z7J*2zAkL>hp2qWXe&nZV-Dvoy@p3f(!I{jt|y%^p#*0Z3mqn+ z9|?$aHhkebr;Q7ldBD7ubP4cjk#+QyPq-`Tbh5jG4IgK#-&eVd3|Vq9bam$u0? z37Pr^^zghEQ49Y@rR5X~+mX8$Nsw4Q=`y3f0-==3HXIr(Imzgu#FE^{I{U+Jzpk4f z(1nrWxabV?F*UWCK|GAM=>t8US{(igXDnOq2o~>a-S&vfd>s$O3e<{c{g(SPXPHC5 zhvP!!H{OcR9@<(&|LUQcT5Hus2(T?0GCc3w<9;I^dUL~^vadjG%Bj_Gd)IYRSw_GSykJKKqbpH0k@sZ+ z*Q6&0mlmJ7k!tyNhq!&gWKQoae{1hCulkr=-iNELFuyAmmB)6T0zcbbxh&E+R&Not z9)JF7z0zwz++P$npz<((I)#5CSSOpe$&n(&(6Pc{XHsHBZxnf7`{lvSjpkg!i#^HkO=qD2T;AY%W+I02SJn z8%CAw=qXAC_|+%4=7}(&Y^G(};5l6esS~VtJ*~mGJbKpNj=LsBmsX=5*o{(Pyi9NF zmA%rxH+=C?YdQ8#5X?w#t8tsC@an!s_Q|^CG2ui5qab}_i{JBxp~Ww}RZl-aes`X} zQCx;PIY~2$N(UN&#nvdT&`{OWKmL*zNt$*4o)g7u1#AZCdQ?>$Hr_?xHxkK1cSp8S zp~Y?8BGU17#Sk1}64m&4@bIzG$+AE<(@1~oLxDA)a4L0A){Y%HJW7iQj z*=E`zZnq7NwhS(mM&vpxp6o@)h0d+Wyw5#7ydUfAN2D6ep5$0dk`2D_v0&!` zivGyv=eG)pbQD{Pw2rU0=Q3gD*=`jHL-^Q(zDoWCGq}IEmg-0*$?Cgl zCh?77LBoUZ8x~|JO2#4Xt?ccuuOKn`{1-3z#0Cm4k63>WeIhC=cr@lNvsXcTl}4(d zbt4?)kD`>hiB~1RNJ?`_hq@H~tR%+yq{D<5Ybuf-<*gDhUYXlnMd(Z3Ug*Rd*L&)X zb4m^qU^*(r!Ci{#Xg>@!T*P&)$!#!Nk8|aLf&aNM`1Ld+CQ*zXxCXDK)BUA1cNOM}bsI?D(mq4zmjLl_KNW66=b*BrFv zK({O8-bn9nenc+9IvE&c$VCW@0=3GTWM;R$LLp5%lDX#zp#3blSzGgyz8rmpC$M!n z?<1PvhjDa%_R5Ci%)2#&iQ@8?W4fRQYN8P6!y~w&+h04hintYR$X18BQ2wC7qHg9q z;4Lw$GJ!oZ2i8-Y86&YY)z{+gTNtJSHkU21TJ9kH5}hq9djcm%H#Jed(ycS~Uk8La3N-SW-7l{NmcmS2>WQrpejb@(uTgc&E&9%mEc}nFc(grTh zu3hn^e?=|ZESRmI;=Y$S*p%?b-)P0QNr8{kpD~|n4l#|Yuc%4)E3(V3B(K+%6pz#m zFyDS&r%IjG`Ha+drP^OS1?Pn9yZ(~;2x8I`N5~_!ob~zqsG!%lBZdU(!hgjl-e7&v zGTQe=WNIbI8vD5mYBSt6~QKx?49t-bs8^N#R1sE`*$7klPUTMMSmei+!v zp&%K-uVeE7orG~Dvj{IESSj=Qw_Go$+?QdL-&Mk)y*Z?jCYjV4Ge-*J!O${PxA>qX zEWXos^j9S9y_j{Fw?~E_Gua*ZT4#Z|e7*SP#Bj^H@rXWlEZ0*pCs^SRh;z1-2UnU0*YXm;(qV7*q@y7ghG+>gNn2AGB#z;B89j|@Az zKeV*|fME{Q6)^%TKiOF4hZ=eD>2zHoeM__y#ceQyqq}PhE1=-f{_XQ;9upKBb{TK@ z8?*g#_k=xI5@zupNo=LJ26b#oXJ^1vQ6QpWwIIfUqbZMOr`G|GKugtf>&sEq zz(F19+rt8pQ+~*6$vH?V$UvaSkJCte<@r;_R88=G7?|1T2WVoO)$b#$?LL}j{3#Qf zou?=dtl55R5+^UsVJW^r8?0`_!yorru@V>+&|vnh2twCd{I(K<@x`MBH{xIxSzoYZ z3|-P44hw(RyxXA_Ts_Nb-6!qmkJ*O>U`#U;6`(eWF&xlp+0Kx2S%D19I(fWwEOUhH zV-#tkhO1T6ttvXi-T?%>{7K+;f5rKEvRY997444jf&Vq5fI!vl-sq?pdYwT5mf6~( ztH77yi@ztsmNzs#>HFeVqSk=vjVTGZ?GgHUj&df zYyC1;R4!Wc$PbJ+pKp$Y=c2=tE`e>+_M}%kf)5j<2i?o`Fg5!TV%e+-2_oX4?|Ug< zs06%uH_E=d?PQ!jC=N!LKr+tQ>v(z^70S&!74)t0%r9?FVlHmYV15!;--{uUP^aCD z`-k}3XrQYnzsboucCB+}qN+Wfw{hqwG^)x4EAj4kj*I52%*|lewHL6+%LjC=&Z@>0 z^&O5eZEvF$8TKNam^)WYJBjl6mRtRkRxa(B%T8@kUgMEzObQI5Pq&FT*kF4UuS`Oc zZ2oh)Df_E7U3;Yi^l@v5FtEcH9_?Iwm5<&3yKn-$Bw(hx!Yswe$XQSj?1+<{j3o;B z9o&xH zXB1$!-4X%2O-Zk}IxIK&a1x+~lh`V^;*3QXC1(~h8jomnJN(eYu@UKYq$@a;lS*}N zB{?3_g1Jb#;iog^ah$>KFE@VuA}}{crC5^P-F#Q~?4WU|h>Kwref%9nSOK{B(BI;j z{7KF`3JwpkEE>sdN_)jElzkE3pG!P`6>whjF0eE(HFPw_7!;XoXmL>M>}HQQen5YDoK4`ZqV`)bxoGjD9;S z-uga)*Z%CV2Z3CAm27rWuICaHC`N+)b7U3FH!$hlG;jkk{s2nu<1nz zd^19^eSx0wvm^S`!6IrfJ!0XHxXnAUai2&y+4b%W^k#3p=mWl|_J#|F1fjcc_r)#Y zNl+ml3Ktaczw#-Y>`K#kh24J|2onLFs-uv6A8sFgaa&91`*ETK{_JPjZ@&bNw4nkl zJlU{udV~i^oFhv;-1ppvPqu2IjEUxyFTgcj{hp!?-KgY6HKR%<0TV9Z%|3Nj?|&m{ zd06(peqHsam2u^{qC%qW6QQ{y(rY-agN*n&l;3{FN}*ev9#qH7gMWR8DPu=qEs2ZfE9Wh6GUow-oVg=5*7+zOgM86atoZzG4E)`|E zAV(C#mEOEU&U*^<$8!$-54Xk_M8-VD-z+YYo@col!+m$X z9+97AUzg0l*cp~F6O$yvVfsoUg5xz`;iVMrDVJpON3D5_w>@%4IO=a`gY+=j2hj`@ zhw{wK`JbXeKKKQ~(ec!>VMia^C!Q>Yc49q3ce13xDzDPZ{>IV1JhDn7tN6uTEMqhA z#Z-4$l|Scu`7An!(mkqnyi{tu1U?f{jN+C;`?@WM-0g#0E2aZ|HOdBWorCLjznKF| z!x*;C@hvOj&mcxfNj*-wXUWPi)9CI1W4N5c^#>H+(C7py*0n03Vix@3RC{35?o$9F zkH~9$_B2}E#5+4>N5C*GA;itbtO2pnt?=ex`V)P5=tF`6kS$oKw5_LG$mzp`NOZRwyGGjRA zi^SQyy#dzPF6l(qPhwnI;6Fb8Jl?TR8FXMSZRz`5>b#B%`l5c?M&|9Sc&xy9wuyIF z%8ptNs`e%k8J}mHEpypQGH?J61~jrJzNq|`_nnQvK4!FD*pZ?jMpr;L1xoIB&Nf%K zJ8^vkMZW61v5MbkW+SNcc}i}F?_mT{4s&F();2A*VabbGxiMv1EuCbr@$OFYcQwI- z7l0V1;;6(Cyi7wb6KtgRN2M!&J5Ua;-Z^`VeUE@naQL&q=(sqxQ{jhdkVUJx3`FJ_ z`~Iah_l`;R>cgURWTLM;Gu1EkgyB&|-vmw1j`LpWGomDC`rbpT5U8Mu(s?VvvIQ<@H0nS>qn} ziht+?jCP}6H#vKQofFs=zzRSp4HAd2>9B=5^JKx{Vvqp2MnyuOw1Ntn5b^jQQE6^r zC9CP*m`n*fq12-D%5f4yXd@EY$uPU@Z)NK!7_0$%7ZlMVL-D-tYsdrGkwj&7X(GqS zFSl)#A-LHSiS!>fm4f>UtMpzl>Ptcn~vqz&wAeZY;n0MoKK9U>D;x zVXq#9-F;{or?_8ZpcNgoH6q}Bq!($P3S<_lfVMWQ9H@HzN43g@VAp$w-r}K9^Ye{c* zi|J-aIF0ZOa^_ART< zSNVDKakr3v*N%ACv{Yp9NNrF5!00q0fyi+&(YD1AVa8sg1k>!@v>~>d9BOaoC$si}k4gI3vwGyJ$ zW?GcA<6OWfE!vVK>2NAsGIhxrXdYMgvl72r9T*p6nZ6{B$1 z&F+$#TIJiGRIprG1ZWDhzRJ0+&C+wAVdPkN_21cXq@JN%mO3kpbN-q|6X$oieg1HM z#k$|xu3C#{qKC%iou&`OT)_h`X=5<~mOQvJdc8x1Y|OIJ!dLMc~xt**X? ziXsu@dMfn(;_2V0oD;f(cU4tXfeUY+0iDYRSk=c-D|`gL0bQbPVnHL#?LXe$=q>%= zj);iP)G=LkTGPkK_DFIo04FAIdo zN0K-BbSHZ8FVtT{G;x*(sWWNH$wpAlydBvX%LeFQM*uN|d{zfizszyxlk3TOd<(Yy zskiH{E;CbU&miqatJ)E%gNFrB`vdY{8Qu@>l6w^y6l%Zi=qU{o;d_;A{Zcb3zw@!w zEOEPh8gJO`)E?>TQK#*8@WBwQ_2%i#Kpq(RL^Y)KkDiA=E$Br3Mows zGhFjDWm@d~NJ@ZhBORy4W2mpsyPBlRp)2E z<&m@dUq8!D{6J2(PeYPbZD~7*txSgD3IrmxP?VL@u_g0Q!a&4#yaYE3)9kLtIG_nF z3N5z3JJtO~SNXh)sOYBoTvyD{g93c~^qF{3g_FJXuiEFkji6Gxzld1%W=n$yWSmVN z!2BH0h|hwR?)wGfsJnZyr6?mJ-_6|@L9g$wT6zRBne!c$g&#{wfUpwJ*gQ|%V^7nZ z7`?Y(5i&zIhecjwT!VIm7JyrX_A1La3qp85Y$$?C&qmxOvq>elILt+Q>Z1>Jhf2HW1 zN`goOm_{8bd#$BIy}(yY-vRN!Xjft>4H@TxtGp+jHT#bCeu) zai`E*#YyaHb-h^#UB}mt=ElCgcl@ypo}xT({Q|MUY|AAq=ljH$lZ*(B_630tB^#!d z>^2hqMT^@g0NV?ojC*~Wp~Nl5g-1AoOc~}C25qMS#2Q#NY=~oP4P*t*+zM+l73n59m3+92yVI}5?FH@Ochi$kLS%bY% z#Lpe{*lUf|PP+hjJNeI9{r$n6dcWdg?X`jn3hm-z4HUw+d*S<)XKN^2#;U$&Bn-$U zKK|_!6TyT_czj*Q!c^n@L$i3vLrRpG_!7(3lM2XOqzuZJ_#JQ~cPkM^0qQ9yV`SLg zXX#D-Sz=OooQ8rV;Uac}Byf2xQi#VQKD8i4`c-Rj$k{;cRQjK^Qffg{4L94I2^h|3 zgoJ`i?zj3OXOjG3KVD72?+ZYH%q|B6Yu+Z<4lgi@k-0XDnBf-#gQQNfDh;_>Z6z63 zR<^&I3b}e!R8&?sVcOqu_c|)#he2UK?|hh3=@BG>#aQ=bE5LVs>h^{yZ)iu}B5fUg zX$<$Qk*VML40#nRv6GH(XAY^S$;d6d5$Fl(u1RI%J#oJ7Y?hHXHKWC!R28HaS9_l< zyCwryA2sK1`yGcfHR}(Xzn)D8-rOYvczsX7q+p^bAUKt#LIY{`&XEz$2JV?$E_wVN z5@GpC3YU*wpsIe5g`0imly8gU;#aYaIdX;jX~H0I$GA{&*=`_(-*nm`4ul^VlM@AawA6D4i`V<)5&_v zmaUeyAYbEmEhpllOI3=|r)-DVUdx~r9BLnixt7^ zj&rr<&2NDG2Peucl9DK!E&>WYxrRoPZI2TAgte-Q`pig!6$LwV{JrBE3pCt{C6pK`3 zMHajWE!Zc8F3{P;70`q0P$o@D7xPetR9#a|Ap)FqR#Szd^C4zF2P2q(iKA%?Ir8=Z~g1?!708teJON_ z&@sIApmVAmX9Ju5hxdQ11<1j)vB)j)&>*T>TU8*5RU*>Du)-j<)lHwdQu+K4+iIYh zo;{T^PP%CTecgmyGuh#Udm{~}mciHZQZjGw4e$y44i0fa zfB1gUSF*WaZ~9{3;W{0+--gH!^b77k1Gp0@ zDTGAZ6wPB&UlV&LvW6aOl%6l=NfS5evqPy~*0H1r9Z|g@n31Pxu z!^{>Jwpo@Za9*lOjULu+deS2iYI-lALUnPUwp>Fptr=ft7V3h^S9qKrN~K>g+^Oydm0zc>ZjwvqFad1 zwHRC>TJ=25Tl7I8*uk{^g*nXk+N-1fFhaND|BF!u&x}KSB@@r!Kd3TRV6CP-hj_i%d`b4+e(ylJG@Fs)1FAoHSIPw{OoFt+ale z`XaDy`@S(h13}|-?JDa01Wprs1A3WLv`j)!jI!bnaR84so316k&`dRJ{AVU#{WENC zb~Btgacz9i=udW@jUo%#1nx#=D~WH@{kd#=Vhztqh43-ip}d-72B0zL*?C+cO|A70 z@x#6K2EGfF$xKz_;4`NPv!%j%p~ zONSzVIvK83C#(HEUZ;tA?omoYzXJ>O0Uqo8 z*t>Y|36Rh6Vgr;$GJTB6o_|IQ;3c?r{^5SuLPrE_uyS#f!g#xxo!03vw~$w2aRqz|0Cw3zf(t%u%EZ87i+3+GcKa4snBOv1k2SUo8*4>QFMZ6(|)NAKnd1-DIO^WFTq zV&gQRjJD5#?CGj4ir$dL=+$U4Gb;p?TDMPk%)Dbo^T@%Rzj3E>mxhO%xuo;r7^S>G*EBu(jwjT(k)ug9pFS~@$VWwHd@k?G)5aMI^jIsh z7}2HO7yoza{~I^Oue=T$vrFsblGE;56Thj<*0+x)KBWKA_<)SeM3UW>sH3QynWc@_ z1D*%3wzMfIZ2sL{v?5B#CbmMi=mjecuiuJZOf)qAl zq$4lE)=I*>0VFM&du{kD+TW5S9bR~Enf`i@^YzD1GkczP2-2j{{|h4&{C&y#ETfOv zsWw4(%8{M(^2Y`@6R!rWrsZ8=(;c<$dm#aQ(ObQwYLsa#1qzYg^UTbx)~zu5JhWr) zl-cXDs&n&3pwt97-ASYb1wWh4w7$7E2?ni5tdl=$XVBmvB=3H5y3AsEU1n?$>ad7= zF(B6F! z#KCInZ8I5o=c>Ec$Kum|L=HKgU%KT1%f7m|eKRrrO!KJCS!!uLnmp5+R5D@m)Dcho zpCFbZwUGI&f&8hq=Rr3U#>xfR)BUiv#vhyX$JuzU?e)=Q75Nd%{^6E4sH)F(wTxHB zd@&16%U<^-CW*HZ0eFF>)dn70OseFBkRRCvR; zFPh!wWhi8{dB+aN83Q9TpA}K^ZodbXeCcYBL?Vsq09N8nXybshPK=i=nYiu>OmQ2B zI_#ZgBSc(n8v;`3qN@~pljG7t(;fq99YDJhs<~wpna`*bL!Uu9ctEL;y$98vCxq)g zF_c1mQUa)=IvSz}AJ779<|?N%l|UvL8yJuyIL;q)pHpU5;~7ik2Q1GH9RR;*{6#X{ zll0IJbj{TnDtv;#CQEtkVruV(<#006PiNggT}@GX2rP1I;NeGO==sOfZX{3haHp?U zN&8QI;?+>~^;SELWmeuDEyRPWaVi`Z<=Kr$(r;@4^oj&?!bn=<2C`iKM&?lPUm}=R zl|c=k8=HM9)FHXacO(Qj>4B*!aei>iM2y$SW&z+?Zt+N<3ehi(*&+|geA>3iv?C2t z)cLc=`h_B(+U>B_#T4(m$L4amW$V!M>aBnB0iy;8@p&j@sv@_AOz@swItnsc`7@+f zmCj%FwVE;+ds&Iy16%$Q5V3#Wl&zcsXvdAr#ifcAwkdFshrTv8L36g7cT>fQuS76b^8ELvqJW-|+x&z*)y8?yFVRmkA&%>(y zu9FLE2awpQ=o3;oHisl0$v^JI!w8IM0t%7Nudg3#4+2ACe5Kpc+VV3j`5RmA_IV@z zd7??A|J^-f;dNM$$~HvTzTwI$c;)!S#1_4deB;D7<;MB(F>d8-L07p6@)>}%JV$0i zG2IF$nSes}JA@onh^F$2j8X|={0z&J+o?y|pQK|hCU#KX`k|yvT}Y_+Ur}op>6`M{ zr=~;C2L$rfaGDT#L7nkb47nsNMzUqiT*FG?cP+{+CuVl zNkS8Q>qY8Rb1S3r&nIKM9oPO$5#*&CfEm_(;r%oTDKA;ikupi(VA~o81TS@WAUrlS zC!JgRu9F~84ao4ICm7#B;mH3;KMBTauNwC6U$g- z(&Pv{yf7|0e`vUonKD1wD45GUxJ+Jp@_iIZgJT7x#;joxP@*LY>WySU3{hGc*SOjS z2ZcmUJnp_%+gFjayb@isw*hFTLk56v<^l5qF1^%&Y)qF+OhFUrvJ27qb{{!zyd8IN zfBL%gH*e8jh1w;+WSoFGi+}R+2HB>hZ`m(-I22+YI?=z#u(l6PM2-G=_f_f#EhpNe zKQ1@>$^D>@sQ?y7;zl2&1t3<(dCPtfqce!tJbev{FnMJ2v^TkVdNANb9rb)Kb+AU4 z%k=4&e^1Xra%A-I)@_~7d?P?S6qf7e%oT$Y?`zbNJ5*mUc{sg23rhf!wST*QW+VLq zG4j#a0*8M1vRAIf*Z*W%VgCd8S(36}pop&Kdh6fFVkljT1#VA(A#qczDeSl5CC-YOOV3 zUz`n@A=hWNjS`Mqw;~D?8T?2yM2FN7x*bx3S_Wj#-S;xARn@?uy)0pZ8SolC!KsPK z4XL2Zh&(_44Q^lM?|wcKMt+YD?__<;%~#M~fqg15a%c#8-&}+5t2#lemWGw-9WlEfT_bLP z3Gfjax?LkN)1BXhInJb@VDRKU-c;!yDlD=^bg9vn2erWA@RWm&2@^72o5q97+JLmh zH%Ph_a3XPVO6QzKDfv@M-I86(5Y<|!txad;JQ^!7LKCA;EO>o*!IlHTuTg3Aj|#*{ ztB>twXrxLa$;Q4Ni;YjX#XpupDPaUqh>9AyVZjj{_^?rV-H29mIiRj0GHatG4Eh@13mX%!`(9=;7?IbO}13} Hb>RO2Z#eg2 diff --git a/site/static/apple-touch-icon.png b/site/static/apple-touch-icon.png deleted file mode 100644 index eadddf25f499327316ac5eeab13ef3a79ed5ede1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11722 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