From d7d2e5a72485d9721e8634b503c6ba8bc317c7d2 Mon Sep 17 00:00:00 2001 From: Gagan Singh Date: Thu, 2 Sep 2021 13:56:19 +0530 Subject: [PATCH] chore(major): first version --- .eslintrc.json | 230 + .gitattributes | 21 + .github/pull_request_template.md | 1 + .github/workflows/build.yml | 51 + .github/workflows/release.yml | 101 + .github/workflows/stale.yml | 32 + .github/workflows/upgrade.yml | 102 + .gitignore | 52 + .mergify.yml | 15 + .npmignore | 24 + .projen/deps.json | 189 + .projen/tasks.json | 304 ++ .projenrc.js | 44 + API.md | 958 ++++ LICENSE | 202 + README.md | 142 + package.json | 147 + src/constructs/autoScalingGroup.ts | 283 ++ src/constructs/deployment.ts | 47 + src/constructs/microservice.ts | 217 + src/constructs/network.ts | 75 + src/index.ts | 4 + static/microservice.png | Bin 0 -> 418940 bytes test/hello.test.ts | 55 + tsconfig.eslint.json | 35 + tsconfig.jest.json | 35 + yarn.lock | 6865 ++++++++++++++++++++++++++++ 27 files changed, 10231 insertions(+) create mode 100644 .eslintrc.json create mode 100644 .gitattributes create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/release.yml create mode 100644 .github/workflows/stale.yml create mode 100644 .github/workflows/upgrade.yml create mode 100644 .gitignore create mode 100644 .mergify.yml create mode 100644 .npmignore create mode 100644 .projen/deps.json create mode 100644 .projen/tasks.json create mode 100644 .projenrc.js create mode 100644 API.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 package.json create mode 100644 src/constructs/autoScalingGroup.ts create mode 100644 src/constructs/deployment.ts create mode 100644 src/constructs/microservice.ts create mode 100644 src/constructs/network.ts create mode 100644 src/index.ts create mode 100644 static/microservice.png create mode 100644 test/hello.test.ts create mode 100644 tsconfig.eslint.json create mode 100644 tsconfig.jest.json create mode 100644 yarn.lock diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..af1765b --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,230 @@ +{ + "env": { + "jest": true, + "node": true + }, + "root": true, + "plugins": [ + "@typescript-eslint", + "import" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 2018, + "sourceType": "module", + "project": "./tsconfig.eslint.json" + }, + "extends": [ + "plugin:import/typescript" + ], + "settings": { + "import/parsers": { + "@typescript-eslint/parser": [ + ".ts", + ".tsx" + ] + }, + "import/resolver": { + "node": {}, + "typescript": { + "project": "./tsconfig.eslint.json" + } + } + }, + "ignorePatterns": [ + "*.js", + "!.projenrc.js", + "*.d.ts", + "node_modules/", + "*.generated.ts", + "coverage" + ], + "rules": { + "indent": [ + "off" + ], + "@typescript-eslint/indent": [ + "error", + 2 + ], + "quotes": [ + "error", + "single", + { + "avoidEscape": true + } + ], + "comma-dangle": [ + "error", + "always-multiline" + ], + "comma-spacing": [ + "error", + { + "before": false, + "after": true + } + ], + "no-multi-spaces": [ + "error", + { + "ignoreEOLComments": false + } + ], + "array-bracket-spacing": [ + "error", + "never" + ], + "array-bracket-newline": [ + "error", + "consistent" + ], + "object-curly-spacing": [ + "error", + "always" + ], + "object-curly-newline": [ + "error", + { + "multiline": true, + "consistent": true + } + ], + "object-property-newline": [ + "error", + { + "allowAllPropertiesOnSameLine": true + } + ], + "keyword-spacing": [ + "error" + ], + "brace-style": [ + "error", + "1tbs", + { + "allowSingleLine": true + } + ], + "space-before-blocks": [ + "error" + ], + "curly": [ + "error", + "multi-line", + "consistent" + ], + "@typescript-eslint/member-delimiter-style": [ + "error" + ], + "semi": [ + "error", + "always" + ], + "max-len": [ + "error", + { + "code": 150, + "ignoreUrls": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreComments": true, + "ignoreRegExpLiterals": true + } + ], + "quote-props": [ + "error", + "consistent-as-needed" + ], + "@typescript-eslint/no-require-imports": [ + "error" + ], + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": [ + "**/test/**", + "**/build-tools/**" + ], + "optionalDependencies": false, + "peerDependencies": true + } + ], + "import/no-unresolved": [ + "error" + ], + "import/order": [ + "warn", + { + "groups": [ + "builtin", + "external" + ], + "alphabetize": { + "order": "asc", + "caseInsensitive": true + } + } + ], + "no-duplicate-imports": [ + "error" + ], + "no-shadow": [ + "off" + ], + "@typescript-eslint/no-shadow": [ + "error" + ], + "key-spacing": [ + "error" + ], + "no-multiple-empty-lines": [ + "error" + ], + "@typescript-eslint/no-floating-promises": [ + "error" + ], + "no-return-await": [ + "off" + ], + "@typescript-eslint/return-await": [ + "error" + ], + "no-trailing-spaces": [ + "error" + ], + "dot-notation": [ + "error" + ], + "no-bitwise": [ + "error" + ], + "@typescript-eslint/member-ordering": [ + "error", + { + "default": [ + "public-static-field", + "public-static-method", + "protected-static-field", + "protected-static-method", + "private-static-field", + "private-static-method", + "field", + "constructor", + "method" + ] + } + ] + }, + "overrides": [ + { + "files": [ + ".projenrc.js" + ], + "rules": { + "@typescript-eslint/no-require-imports": "off", + "import/no-extraneous-dependencies": "off" + } + } + ] +} diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..592c858 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,21 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +*.snap linguist-generated +/.eslintrc.json linguist-generated +/.gitattributes linguist-generated +/.github/pull_request_template.md linguist-generated +/.github/workflows/build.yml linguist-generated +/.github/workflows/release.yml linguist-generated +/.github/workflows/stale.yml linguist-generated +/.github/workflows/upgrade.yml linguist-generated +/.gitignore linguist-generated +/.mergify.yml linguist-generated +/.npmignore linguist-generated +/.projen/** linguist-generated +/.projen/deps.json linguist-generated +/.projen/tasks.json linguist-generated +/LICENSE linguist-generated +/package.json linguist-generated +/tsconfig.eslint.json linguist-generated +/tsconfig.jest.json linguist-generated +/yarn.lock linguist-generated \ No newline at end of file diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..11d479b --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1 @@ +Fixes # \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..152dc8f --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,51 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +name: build +on: + pull_request: {} + workflow_dispatch: {} +jobs: + build: + runs-on: ubuntu-latest + permissions: + checks: write + contents: write + actions: write + env: + CI: "true" + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + ref: ${{ github.event.pull_request.head.ref }} + repository: ${{ github.event.pull_request.head.repo.full_name }} + - name: Set git identity + run: |- + git config user.name "Automation" + git config user.email "github-actions@github.com" + - name: Install dependencies + run: yarn install --check-files --frozen-lockfile + - name: build + run: npx projen build + - name: Check for changes + id: git_diff + run: git diff --exit-code || echo "::set-output name=has_changes::true" + - if: steps.git_diff.outputs.has_changes + name: Commit and push changes (if changed) + run: 'git add . && git commit -m "chore: self mutation" && git push origin + HEAD:${{ github.event.pull_request.head.ref }}' + - if: steps.git_diff.outputs.has_changes + name: Update status check (if changed) + run: gh api -X POST /repos/${{ github.event.pull_request.head.repo.full_name + }}/check-runs -F name="build" -F head_sha="$(git rev-parse HEAD)" -F + status="completed" -F conclusion="success" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - if: steps.git_diff.outputs.has_changes + name: Cancel workflow (if changed) + run: gh api -X POST /repos/${{ github.event.pull_request.head.repo.full_name + }}/actions/runs/${{ github.run_id }}/cancel + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + container: + image: jsii/superchain diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..790b463 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,101 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +name: release +on: + push: + branches: + - master + workflow_dispatch: {} +jobs: + release: + runs-on: ubuntu-latest + permissions: + contents: write + outputs: + latest_commit: ${{ steps.git_remote.outputs.latest_commit }} + env: + CI: "true" + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Set git identity + run: |- + git config user.name "Automation" + git config user.email "github-actions@github.com" + - name: Install dependencies + run: yarn install --check-files --frozen-lockfile + - name: release + run: npx projen release + - name: Check for new commits + id: git_remote + run: echo ::set-output name=latest_commit::"$(git ls-remote origin -h ${{ + github.ref }} | cut -f1)" + - name: Upload artifact + if: ${{ steps.git_remote.outputs.latest_commit == github.sha }} + uses: actions/upload-artifact@v2.1.1 + with: + name: dist + path: dist + container: + image: jsii/superchain + release_github: + name: Publish to GitHub Releases + needs: release + runs-on: ubuntu-latest + permissions: + contents: write + if: needs.release.outputs.latest_commit == github.sha + steps: + - name: Download build artifacts + uses: actions/download-artifact@v2 + with: + name: dist + path: dist + - name: Release + run: gh release create v$(cat dist/version.txt) -R ${{ github.repository }} -F + dist/changelog.md -t v$(cat dist/version.txt) + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + release_npm: + name: Publish to npm + needs: release + runs-on: ubuntu-latest + permissions: + contents: read + if: needs.release.outputs.latest_commit == github.sha + steps: + - name: Download build artifacts + uses: actions/download-artifact@v2 + with: + name: dist + path: dist + - name: Release + run: npx -p jsii-release@latest jsii-release-npm + env: + NPM_DIST_TAG: latest + NPM_REGISTRY: registry.npmjs.org + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + container: + image: jsii/superchain + release_pypi: + name: Publish to PyPI + needs: release + runs-on: ubuntu-latest + permissions: + contents: read + if: needs.release.outputs.latest_commit == github.sha + steps: + - name: Download build artifacts + uses: actions/download-artifact@v2 + with: + name: dist + path: dist + - name: Release + run: npx -p jsii-release@latest jsii-release-pypi + env: + TWINE_USERNAME: ${{ secrets.TWINE_USERNAME }} + TWINE_PASSWORD: ${{ secrets.TWINE_PASSWORD }} + container: + image: jsii/superchain diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000..de088fd --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,32 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +name: stale +on: + schedule: + - cron: 0 1 * * * + workflow_dispatch: {} +jobs: + stale: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + - uses: actions/stale@v4 + with: + days-before-stale: -1 + days-before-close: -1 + days-before-pr-stale: 14 + days-before-pr-close: 2 + stale-pr-message: This pull request is now marked as stale because it hasn't + seen activity for a while. Add a comment or it will be closed soon. + close-pr-message: Closing this pull request as it hasn't seen activity for a + while. Please add a comment @mentioning a maintainer to reopen. + stale-pr-label: stale + days-before-issue-stale: 60 + days-before-issue-close: 7 + stale-issue-message: This issue is now marked as stale because it hasn't seen + activity for a while. Add a comment or it will be closed soon. + close-issue-message: Closing this issue as it hasn't seen activity for a while. + Please add a comment @mentioning a maintainer to reopen. + stale-issue-label: stale diff --git a/.github/workflows/upgrade.yml b/.github/workflows/upgrade.yml new file mode 100644 index 0000000..b46757c --- /dev/null +++ b/.github/workflows/upgrade.yml @@ -0,0 +1,102 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +name: upgrade +on: + workflow_dispatch: {} + schedule: + - cron: 0 0 * * * +jobs: + upgrade: + name: Upgrade + runs-on: ubuntu-latest + permissions: + contents: read + outputs: + conclusion: ${{ steps.build.outputs.conclusion }} + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Install dependencies + run: yarn install --check-files --frozen-lockfile + - name: Upgrade dependencies + run: npx projen upgrade + - name: Build + id: build + run: npx projen build && echo "::set-output name=conclusion::success" || echo + "::set-output name=conclusion::failure" + - name: Create Patch + run: |- + git add . + git diff --patch --staged > .upgrade.tmp.patch + - name: Upload patch + uses: actions/upload-artifact@v2 + with: + name: .upgrade.tmp.patch + path: .upgrade.tmp.patch + container: + image: jsii/superchain + pr: + name: Create Pull Request + needs: upgrade + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + checks: write + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Download patch + uses: actions/download-artifact@v2 + with: + name: .upgrade.tmp.patch + path: ${{ runner.temp }} + - name: Apply patch + run: '[ -s ${{ runner.temp }}/.upgrade.tmp.patch ] && git apply ${{ runner.temp + }}/.upgrade.tmp.patch || echo "Empty patch. Skipping."' + - name: Create Pull Request + id: create-pr + uses: peter-evans/create-pull-request@v3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + commit-message: >- + chore(deps): upgrade dependencies + + + Upgrades project dependencies. See details in [workflow run]. + + + [Workflow Run]: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} + + + ------ + + + *Automatically created by projen via the "upgrade" workflow* + branch: github-actions/upgrade + title: "chore(deps): upgrade dependencies" + body: >- + Upgrades project dependencies. See details in [workflow run]. + + + [Workflow Run]: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} + + + ------ + + + *Automatically created by projen via the "upgrade" workflow* + author: Automation + committer: Automation + - name: Update status check + if: steps.create-pr.outputs.pull-request-url != '' + run: "curl -i --fail -X POST -H \"Accept: application/vnd.github.v3+json\" -H + \"Authorization: token ${GITHUB_TOKEN}\" + https://api.github.com/repos/${{ github.repository }}/check-runs -d + '{\"name\":\"build\",\"head_sha\":\"github-actions/upgrade\",\"status\ + \":\"completed\",\"conclusion\":\"${{ needs.upgrade.outputs.conclusion + }}\",\"output\":{\"title\":\"Created via the upgrade + workflow.\",\"summary\":\"Action run URL: https://github.com/${{ + github.repository }}/actions/runs/${{ github.run_id }}\"}}'" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a74e0cb --- /dev/null +++ b/.gitignore @@ -0,0 +1,52 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +!/.gitattributes +!/.projen/tasks.json +!/.projen/deps.json +!/.github/workflows/stale.yml +!/package.json +!/LICENSE +!/.npmignore +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json +pids +*.pid +*.seed +*.pid.lock +lib-cov +coverage +*.lcov +.nyc_output +build/Release +node_modules/ +jspm_packages/ +*.tsbuildinfo +.eslintcache +*.tgz +.yarn-integrity +.cache +!/.projenrc.js +/test-reports/ +junit.xml +/coverage/ +!/.github/workflows/build.yml +/dist/changelog.md +/dist/version.txt +!/.mergify.yml +!/.github/workflows/upgrade.yml +!/.github/pull_request_template.md +!/test/ +/lib +!/src/ +/dist/ +!/tsconfig.jest.json +!/.eslintrc.json +!/tsconfig.eslint.json +.jsii +tsconfig.json +!/API.md +!/.github/workflows/release.yml diff --git a/.mergify.yml b/.mergify.yml new file mode 100644 index 0000000..ebf847d --- /dev/null +++ b/.mergify.yml @@ -0,0 +1,15 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +pull_request_rules: + - name: Automatic merge on approval and successful build + actions: + merge: + method: squash + commit_message: title+body + strict: smart + strict_method: merge + delete_head_branch: {} + conditions: + - "#approved-reviews-by>=1" + - -label~=(do-not-merge) + - status-success=build diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..62c236b --- /dev/null +++ b/.npmignore @@ -0,0 +1,24 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +/.projen/ +/test-reports/ +junit.xml +/coverage/ +/dist/changelog.md +/dist/version.txt +/.mergify.yml +/test/ +!/lib/ +/src/ +!/lib/**/*.js +!/lib/**/*.d.ts +dist +/tsconfig.json +/.github/ +/.vscode/ +/.idea/ +/.projenrc.js +tsconfig.tsbuildinfo +/tsconfig.jest.json +/.eslintrc.json +/tsconfig.eslint.json +!.jsii diff --git a/.projen/deps.json b/.projen/deps.json new file mode 100644 index 0000000..440a40c --- /dev/null +++ b/.projen/deps.json @@ -0,0 +1,189 @@ +{ + "dependencies": [ + { + "name": "@aws-cdk/assert", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@aws-cdk/aws-autoscaling", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@aws-cdk/aws-codedeploy", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@aws-cdk/aws-ec2", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@aws-cdk/aws-elasticloadbalancingv2", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@aws-cdk/aws-iam", + "version": "1.113.0", + "type": "build" + }, + { + "name": "@types/jest", + "type": "build" + }, + { + "name": "@types/node", + "version": "^10.17.0", + "type": "build" + }, + { + "name": "@typescript-eslint/eslint-plugin", + "type": "build" + }, + { + "name": "@typescript-eslint/parser", + "type": "build" + }, + { + "name": "constructs", + "version": "3.3.138", + "type": "build" + }, + { + "name": "eslint", + "type": "build" + }, + { + "name": "eslint-import-resolver-node", + "type": "build" + }, + { + "name": "eslint-import-resolver-typescript", + "type": "build" + }, + { + "name": "eslint-plugin-import", + "type": "build" + }, + { + "name": "jest", + "type": "build" + }, + { + "name": "jest-junit", + "version": "^12", + "type": "build" + }, + { + "name": "jsii", + "type": "build" + }, + { + "name": "jsii-diff", + "type": "build" + }, + { + "name": "jsii-docgen", + "type": "build" + }, + { + "name": "jsii-pacmak", + "type": "build" + }, + { + "name": "json-schema", + "type": "build" + }, + { + "name": "npm-check-updates", + "version": "^11", + "type": "build" + }, + { + "name": "projen", + "type": "build" + }, + { + "name": "standard-version", + "version": "^9", + "type": "build" + }, + { + "name": "ts-jest", + "type": "build" + }, + { + "name": "typescript", + "type": "build" + }, + { + "name": "@aws-cdk/aws-autoscaling", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "@aws-cdk/aws-codedeploy", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "@aws-cdk/aws-ec2", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "@aws-cdk/aws-elasticloadbalancingv2", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "@aws-cdk/aws-iam", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "@aws-cdk/core", + "version": "1.113.0", + "type": "peer" + }, + { + "name": "constructs", + "version": "^3.3.138", + "type": "peer" + }, + { + "name": "@aws-cdk/aws-autoscaling", + "version": "1.113.0", + "type": "runtime" + }, + { + "name": "@aws-cdk/aws-codedeploy", + "version": "1.113.0", + "type": "runtime" + }, + { + "name": "@aws-cdk/aws-ec2", + "version": "1.113.0", + "type": "runtime" + }, + { + "name": "@aws-cdk/aws-elasticloadbalancingv2", + "version": "1.113.0", + "type": "runtime" + }, + { + "name": "@aws-cdk/aws-iam", + "version": "1.113.0", + "type": "runtime" + }, + { + "name": "@aws-cdk/core", + "version": "1.113.0", + "type": "runtime" + } + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/.projen/tasks.json b/.projen/tasks.json new file mode 100644 index 0000000..e1b55cb --- /dev/null +++ b/.projen/tasks.json @@ -0,0 +1,304 @@ +{ + "tasks": { + "clobber": { + "name": "clobber", + "description": "hard resets to HEAD of origin and cleans the local repo", + "env": { + "BRANCH": "$(git branch --show-current)" + }, + "steps": [ + { + "exec": "git checkout -b scratch", + "name": "save current HEAD in \"scratch\" branch" + }, + { + "exec": "git checkout $BRANCH" + }, + { + "exec": "git fetch origin", + "name": "fetch latest changes from origin" + }, + { + "exec": "git reset --hard origin/$BRANCH", + "name": "hard reset to origin commit" + }, + { + "exec": "git clean -fdx", + "name": "clean all untracked files" + }, + { + "say": "ready to rock! (unpushed commits are under the \"scratch\" branch)" + } + ], + "condition": "git diff --exit-code > /dev/null" + }, + "compile": { + "name": "compile", + "description": "Only compile", + "steps": [ + { + "exec": "jsii --silence-warnings=reserved-word --no-fix-peer-dependencies" + }, + { + "spawn": "docgen" + } + ] + }, + "test:compile": { + "name": "test:compile", + "description": "compiles the test code", + "steps": [ + { + "exec": "tsc --noEmit --project tsconfig.jest.json" + } + ] + }, + "test": { + "name": "test", + "description": "Run tests", + "steps": [ + { + "exec": "rm -fr lib/" + }, + { + "spawn": "test:compile" + }, + { + "exec": "jest --passWithNoTests --all --updateSnapshot" + }, + { + "spawn": "eslint" + } + ] + }, + "build": { + "name": "build", + "description": "Full release build (test+compile)", + "steps": [ + { + "exec": "npx projen" + }, + { + "spawn": "test" + }, + { + "spawn": "compile" + }, + { + "spawn": "package" + } + ] + }, + "test:watch": { + "name": "test:watch", + "description": "Run jest in watch mode", + "steps": [ + { + "exec": "jest --watch" + } + ] + }, + "test:update": { + "name": "test:update", + "description": "Update jest snapshots", + "steps": [ + { + "exec": "jest --updateSnapshot" + } + ] + }, + "bump": { + "name": "bump", + "description": "Bumps version based on latest git tag and generates a changelog entry", + "env": { + "OUTFILE": "package.json", + "CHANGELOG": "dist/changelog.md", + "BUMPFILE": "dist/version.txt" + }, + "steps": [ + { + "builtin": "release/bump-version" + } + ], + "condition": "! git log --oneline -1 | grep -q \"chore(release):\"" + }, + "unbump": { + "name": "unbump", + "description": "Restores version to 0.0.0", + "env": { + "OUTFILE": "package.json", + "CHANGELOG": "dist/changelog.md", + "BUMPFILE": "dist/version.txt" + }, + "steps": [ + { + "builtin": "release/reset-version" + } + ] + }, + "publish:github": { + "name": "publish:github", + "description": "Publish this package to GitHub Releases", + "requiredEnv": [ + "GITHUB_TOKEN" + ], + "steps": [ + { + "exec": "gh release create v$(cat dist/version.txt) -R ${{ github.repository }} -F dist/changelog.md -t v$(cat dist/version.txt)" + } + ] + }, + "upgrade": { + "name": "upgrade", + "description": "upgrade dependencies", + "env": { + "CI": "0" + }, + "steps": [ + { + "exec": "npm-check-updates --upgrade --target=minor --reject='projen'" + }, + { + "exec": "yarn install --check-files" + }, + { + "exec": "yarn upgrade @aws-cdk/assert @aws-cdk/aws-autoscaling @aws-cdk/aws-codedeploy @aws-cdk/aws-ec2 @aws-cdk/aws-elasticloadbalancingv2 @aws-cdk/aws-iam @types/jest @types/node @typescript-eslint/eslint-plugin @typescript-eslint/parser constructs eslint eslint-import-resolver-node eslint-import-resolver-typescript eslint-plugin-import jest jest-junit jsii jsii-diff jsii-docgen jsii-pacmak json-schema npm-check-updates standard-version ts-jest typescript @aws-cdk/aws-autoscaling @aws-cdk/aws-codedeploy @aws-cdk/aws-ec2 @aws-cdk/aws-elasticloadbalancingv2 @aws-cdk/aws-iam @aws-cdk/core constructs @aws-cdk/aws-autoscaling @aws-cdk/aws-codedeploy @aws-cdk/aws-ec2 @aws-cdk/aws-elasticloadbalancingv2 @aws-cdk/aws-iam @aws-cdk/core" + }, + { + "exec": "npx projen" + } + ] + }, + "upgrade-projen": { + "name": "upgrade-projen", + "description": "upgrade projen", + "env": { + "CI": "0" + }, + "steps": [ + { + "exec": "npm-check-updates --upgrade --target=minor --filter='projen'" + }, + { + "exec": "yarn install --check-files" + }, + { + "exec": "yarn upgrade projen" + }, + { + "exec": "npx projen" + } + ] + }, + "default": { + "name": "default", + "steps": [ + { + "exec": "node .projenrc.js" + } + ] + }, + "watch": { + "name": "watch", + "description": "Watch & compile in the background", + "steps": [ + { + "exec": "jsii -w --silence-warnings=reserved-word --no-fix-peer-dependencies" + } + ] + }, + "package": { + "name": "package", + "description": "Create an npm tarball", + "steps": [ + { + "exec": "jsii-pacmak" + } + ] + }, + "eslint": { + "name": "eslint", + "description": "Runs eslint against the codebase", + "steps": [ + { + "exec": "eslint --ext .ts,.tsx --fix --no-error-on-unmatched-pattern src test build-tools .projenrc.js" + } + ] + }, + "compat": { + "name": "compat", + "description": "Perform API compatibility check against latest version", + "steps": [ + { + "exec": "jsii-diff npm:$(node -p \"require('./package.json').name\") -k --ignore-file .compatignore || (echo \"\nUNEXPECTED BREAKING CHANGES: add keys such as 'removed:constructs.Node.of' to .compatignore to skip.\n\" && exit 1)" + } + ] + }, + "publish:npm": { + "name": "publish:npm", + "description": "Publish this package to npm", + "env": { + "NPM_DIST_TAG": "latest", + "NPM_REGISTRY": "registry.npmjs.org" + }, + "requiredEnv": [ + "NPM_TOKEN" + ], + "steps": [ + { + "exec": "npx -p jsii-release@latest jsii-release-npm" + } + ] + }, + "publish:pypi": { + "name": "publish:pypi", + "description": "Publish this package to PyPI", + "requiredEnv": [ + "TWINE_USERNAME", + "TWINE_PASSWORD" + ], + "steps": [ + { + "exec": "npx -p jsii-release@latest jsii-release-pypi" + } + ] + }, + "docgen": { + "name": "docgen", + "description": "Generate API.md from .jsii manifest", + "steps": [ + { + "exec": "jsii-docgen" + } + ] + }, + "release": { + "name": "release", + "description": "Prepare a release from \"master\" branch", + "env": { + "RELEASE": "true" + }, + "steps": [ + { + "exec": "rm -fr dist" + }, + { + "spawn": "bump" + }, + { + "spawn": "build" + }, + { + "spawn": "unbump" + }, + { + "exec": "git diff --ignore-space-at-eol --exit-code" + } + ] + } + }, + "env": { + "PATH": "$(npx -c \"node -e \\\"console.log(process.env.PATH)\\\"\")" + }, + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/.projenrc.js b/.projenrc.js new file mode 100644 index 0000000..c8f5949 --- /dev/null +++ b/.projenrc.js @@ -0,0 +1,44 @@ +const { AwsCdkConstructLibrary, NpmAccess } = require('projen'); +const CDK_VERSION = '1.113.0'; +const project = new AwsCdkConstructLibrary({ + author: 'Gagan Singh', + authorAddress: 'gaganpreet.singh@smallcase.com', + cdkVersion: `${CDK_VERSION}`, + cdkVersionPinning: true, + constructsVersion: '3.3.138', + constructsVersionPinning: true, + defaultReleaseBranch: 'master', + name: '@smallcase/aws-cdk-microservice', + repositoryUrl: 'https://github.com/smallcase/aws-cdk-microservice.git', + npmAccess: NpmAccess.PUBLIC, + python: { + distName: 'aws-cdk-microservice', + module: 'aws_cdk_microservice', + }, + cdkDependencies: [ + '@aws-cdk/aws-iam', + '@aws-cdk/core', + '@aws-cdk/aws-ec2', + '@aws-cdk/aws-elasticloadbalancingv2', + '@aws-cdk/aws-autoscaling', + '@aws-cdk/aws-codedeploy', + ], + context: { + '@aws-cdk/core:newStyleStackSynthesis': true, + }, + devDeps: [ + `@aws-cdk/aws-iam@${CDK_VERSION}`, + `@aws-cdk/aws-ec2@${CDK_VERSION}`, + `@aws-cdk/aws-elasticloadbalancingv2@${CDK_VERSION}`, + `@aws-cdk/aws-autoscaling@${CDK_VERSION}`, + `@aws-cdk/aws-codedeploy@${CDK_VERSION}`, + ], + peerDeps: [ + `@aws-cdk/aws-iam@${CDK_VERSION}`, + `@aws-cdk/aws-ec2@${CDK_VERSION}`, + `@aws-cdk/aws-elasticloadbalancingv2@${CDK_VERSION}`, + `@aws-cdk/aws-autoscaling@${CDK_VERSION}`, + `@aws-cdk/aws-codedeploy@${CDK_VERSION}`, + ], +}); +project.synth(); \ No newline at end of file diff --git a/API.md b/API.md new file mode 100644 index 0000000..99cf6f2 --- /dev/null +++ b/API.md @@ -0,0 +1,958 @@ +# API Reference + +## Constructs + +### AutoScaler + +#### Initializer + +```typescript +import { AutoScaler } from '@smallcase/aws-cdk-microservice' + +new AutoScaler(scope: Construct, id: string, props: AutoScalerProps) +``` + +##### `scope`Required + +- *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct) + +--- + +##### `id`Required + +- *Type:* `string` + +--- + +##### `props`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.AutoScalerProps`](#@smallcase/aws-cdk-microservice.AutoScalerProps) + +--- + + + +#### Properties + +##### `targetGroupArn`Required + +- *Type:* `string` + +--- + + +### BalancerEntry + +#### Initializer + +```typescript +import { BalancerEntry } from '@smallcase/aws-cdk-microservice' + +new BalancerEntry(scope: Construct, id: string, props: LoadBalancerProps) +``` + +##### `scope`Required + +- *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct) + +--- + +##### `id`Required + +- *Type:* `string` + +--- + +##### `props`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.LoadBalancerProps`](#@smallcase/aws-cdk-microservice.LoadBalancerProps) + +--- + + + + + +### Deployment + +#### Initializer + +```typescript +import { Deployment } from '@smallcase/aws-cdk-microservice' + +new Deployment(scope: Construct, id: string, props: DeploymentProps) +``` + +##### `scope`Required + +- *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct) + +--- + +##### `id`Required + +- *Type:* `string` + +--- + +##### `props`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.DeploymentProps`](#@smallcase/aws-cdk-microservice.DeploymentProps) + +--- + + + + + +### MicroService + +#### Initializer + +```typescript +import { MicroService } from '@smallcase/aws-cdk-microservice' + +new MicroService(scope: Construct, id: string, props: MicroServiceProps) +``` + +##### `scope`Required + +- *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct) + +--- + +##### `id`Required + +- *Type:* `string` + +--- + +##### `props`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.MicroServiceProps`](#@smallcase/aws-cdk-microservice.MicroServiceProps) + +--- + + + +#### Properties + +##### `appName`Required + +- *Type:* `string` + +--- + +##### `role`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalRole`](#@smallcase/aws-cdk-microservice.InternalRole) + +--- + +##### `sshKey`Required + +- *Type:* `string` + +--- + +##### `subnets`Required + +- *Type:* `string`[] + +--- + +##### `vpc`Required + +- *Type:* `string` + +--- + +##### `applicationType`Optional + +- *Type:* `string` + +--- + +##### `asgMaxSize`Optional + +- *Type:* `string` + +--- + +##### `asgMinSize`Optional + +- *Type:* `string` + +--- + +##### `createCodedeployApplication`Optional + +- *Type:* `boolean` + +--- + +##### `deploymentPolicies`Optional + +- *Type:* `string`[] + +--- + +##### `diskSize`Optional + +- *Type:* `number` + +--- + +##### `diskType`Optional + +- *Type:* `string` + +--- + +##### `env`Optional + +- *Type:* `string` + +--- + +##### `healthCheckPath`Optional + +- *Type:* `string` + +--- + +##### `host`Optional + +- *Type:* `string` + +--- + +##### `instanceLabels`Optional + +- *Type:* [`@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty`](#@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty)[] + +--- + +##### `instanceType`Optional + +- *Type:* `string` + +--- + +##### `lbArn`Optional + +- *Type:* `string` + +--- + +##### `port`Optional + +- *Type:* `number` + +--- + +##### `protocol`Optional + +- *Type:* `string` + +--- + +##### `sslEnabled`Optional + +- *Type:* `boolean` + +--- + +##### `tcpRules`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.IngressRule`](#@smallcase/aws-cdk-microservice.IngressRule)[] + +--- + + +## Structs + +### ApplicationProps + +#### Initializer + +```typescript +import { ApplicationProps } from '@smallcase/aws-cdk-microservice' + +const applicationProps: ApplicationProps = { ... } +``` + +##### `applicationName`Required + +- *Type:* `string` + +--- + +##### `resourceType`Required + +- *Type:* `string` + +--- + +##### `type`Required + +- *Type:* `string` + +--- + +### AutoScalerProps + +#### Initializer + +```typescript +import { AutoScalerProps } from '@smallcase/aws-cdk-microservice' + +const autoScalerProps: AutoScalerProps = { ... } +``` + +##### `asgName`Required + +- *Type:* `string` + +--- + +##### `maxSize`Required + +- *Type:* `string` + +--- + +##### `minSize`Required + +- *Type:* `string` + +--- + +##### `subnets`Required + +- *Type:* `string`[] + +--- + +##### `templateProps`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalLaunchTemplateProps`](#@smallcase/aws-cdk-microservice.InternalLaunchTemplateProps) + +--- + +##### `tags`Optional + +- *Type:* [`@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty`](#@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty)[] + +--- + +##### `tgProps`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.TargetGroupProps`](#@smallcase/aws-cdk-microservice.TargetGroupProps) + +--- + +### DeploymentProps + +#### Initializer + +```typescript +import { DeploymentProps } from '@smallcase/aws-cdk-microservice' + +const deploymentProps: DeploymentProps = { ... } +``` + +##### `applicationProps`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.ApplicationProps`](#@smallcase/aws-cdk-microservice.ApplicationProps) + +--- + +##### `asgNames`Required + +- *Type:* `string`[] + +--- + +##### `deploymentConfigName`Required + +- *Type:* `string` + +--- + +##### `deploymentGroupName`Required + +- *Type:* `string` + +--- + +##### `roleArn`Required + +- *Type:* `string` + +--- + +##### `tgName`Required + +- *Type:* `string` + +--- + +### IngressRule + +#### Initializer + +```typescript +import { IngressRule } from '@smallcase/aws-cdk-microservice' + +const ingressRule: IngressRule = { ... } +``` + +##### `port`Required + +- *Type:* `number` + +--- + +##### `sourceSG`Required + +- *Type:* `string` + +--- + +##### `description`Optional + +- *Type:* `string` + +--- + +### InstanceStackProps + +#### Initializer + +```typescript +import { InstanceStackProps } from '@smallcase/aws-cdk-microservice' + +const instanceStackProps: InstanceStackProps = { ... } +``` + +##### `asgName`Required + +- *Type:* `string` + +--- + +##### `instanceProps`Required + +- *Type:* [`@aws-cdk/aws-ec2.InstanceProps`](#@aws-cdk/aws-ec2.InstanceProps) + +--- + +##### `instanceVolumeSize`Optional + +- *Type:* [`@aws-cdk/aws-ec2.BlockDevice`](#@aws-cdk/aws-ec2.BlockDevice) + +--- + +##### `role`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalRole`](#@smallcase/aws-cdk-microservice.InternalRole) + +--- + +##### `securityGroup`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalSG`](#@smallcase/aws-cdk-microservice.InternalSG) + +--- + +##### `tags`Optional + +- *Type:* {[ key: string ]: `string`} + +--- + +##### `targetGroupProps`Optional + +- *Type:* [`@aws-cdk/aws-elasticloadbalancingv2.NetworkTargetGroupProps`](#@aws-cdk/aws-elasticloadbalancingv2.NetworkTargetGroupProps) + +--- + +##### `vpc`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalVPC`](#@smallcase/aws-cdk-microservice.InternalVPC) + +--- + +### InternalBD + +#### Initializer + +```typescript +import { InternalBD } from '@smallcase/aws-cdk-microservice' + +const internalBD: InternalBD = { ... } +``` + +##### `name`Required + +- *Type:* `string` + +--- + +##### `size`Required + +- *Type:* `number` + +--- + +##### `type`Required + +- *Type:* [`@aws-cdk/aws-ec2.EbsDeviceVolumeType`](#@aws-cdk/aws-ec2.EbsDeviceVolumeType) + +--- + +### InternalLaunchTemplateProps + +#### Initializer + +```typescript +import { InternalLaunchTemplateProps } from '@smallcase/aws-cdk-microservice' + +const internalLaunchTemplateProps: InternalLaunchTemplateProps = { ... } +``` + +##### `amiImageId`Required + +- *Type:* `string` + +--- + +##### `blockDevice`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalBD`](#@smallcase/aws-cdk-microservice.InternalBD) + +--- + +##### `detailedMonitoring`Required + +- *Type:* `boolean` + +--- + +##### `instanceType`Required + +- *Type:* `string` + +--- + +##### `role`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalRole`](#@smallcase/aws-cdk-microservice.InternalRole) + +--- + +##### `securityGroup`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalSG`](#@smallcase/aws-cdk-microservice.InternalSG) + +--- + +##### `sshKey`Required + +- *Type:* `string` + +--- + +##### `templateName`Required + +- *Type:* `string` + +--- + +##### `type`Required + +- *Type:* `string` + +--- + +##### `vpc`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalVPC`](#@smallcase/aws-cdk-microservice.InternalVPC) + +--- + +##### `existingAttributes`Optional + +- *Type:* [`@aws-cdk/aws-ec2.LaunchTemplateAttributes`](#@aws-cdk/aws-ec2.LaunchTemplateAttributes) + +--- + +##### `instanceVolumeSize`Optional + +- *Type:* [`@aws-cdk/aws-ec2.BlockDevice`](#@aws-cdk/aws-ec2.BlockDevice) + +--- + +### InternalRole + +#### Initializer + +```typescript +import { InternalRole } from '@smallcase/aws-cdk-microservice' + +const internalRole: InternalRole = { ... } +``` + +##### `type`Required + +- *Type:* `string` + +--- + +##### `additionalPolicies`Optional + +- *Type:* `any`[] + +--- + +##### `roleArn`Optional + +- *Type:* `string` + +--- + +##### `roleName`Optional + +- *Type:* `string` + +--- + +### InternalSG + +#### Initializer + +```typescript +import { InternalSG } from '@smallcase/aws-cdk-microservice' + +const internalSG: InternalSG = { ... } +``` + +##### `type`Required + +- *Type:* `string` + +--- + +##### `allowAllOutbound`Optional + +- *Type:* `boolean` + +--- + +##### `description`Optional + +- *Type:* `string` + +--- + +##### `disableInlineRules`Optional + +- *Type:* `boolean` + +--- + +##### `ingressRules`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.IngressRule`](#@smallcase/aws-cdk-microservice.IngressRule)[] + +--- + +##### `securityGroupName`Optional + +- *Type:* `string` + +--- + +##### `sgGroupId`Optional + +- *Type:* `string` + +--- + +### InternalVPC + +#### Initializer + +```typescript +import { InternalVPC } from '@smallcase/aws-cdk-microservice' + +const internalVPC: InternalVPC = { ... } +``` + +##### `type`Required + +- *Type:* `string` + +--- + +##### `vpcName`Required + +- *Type:* `string` + +--- + +##### `vpcProps`Optional + +- *Type:* [`@aws-cdk/aws-ec2.VpcProps`](#@aws-cdk/aws-ec2.VpcProps) + +--- + +### LoadBalancerProps + +#### Initializer + +```typescript +import { LoadBalancerProps } from '@smallcase/aws-cdk-microservice' + +const loadBalancerProps: LoadBalancerProps = { ... } +``` + +##### `appName`Required + +- *Type:* `string` + +--- + +##### `hostHeader`Required + +- *Type:* `string` + +--- + +##### `lbArn`Required + +- *Type:* `string` + +--- + +##### `sslEnabled`Required + +- *Type:* `boolean` + +--- + +##### `targetGroupArn`Required + +- *Type:* `string` + +--- + +### MicroServiceProps + +#### Initializer + +```typescript +import { MicroServiceProps } from '@smallcase/aws-cdk-microservice' + +const microServiceProps: MicroServiceProps = { ... } +``` + +##### `appName`Required + +- *Type:* `string` + +--- + +##### `env`Required + +- *Type:* `string` + +--- + +##### `role`Required + +- *Type:* [`@smallcase/aws-cdk-microservice.InternalRole`](#@smallcase/aws-cdk-microservice.InternalRole) + +--- + +##### `sshKey`Required + +- *Type:* `string` + +--- + +##### `subnets`Required + +- *Type:* `string`[] + +--- + +##### `vpc`Required + +- *Type:* `string` + +--- + +##### `ami`Optional + +- *Type:* `string` + +--- + +##### `applicationType`Optional + +- *Type:* `string` + +--- + +##### `asgMaxSize`Optional + +- *Type:* `string` + +--- + +##### `asgMinSize`Optional + +- *Type:* `string` + +--- + +##### `createCodedeployApplication`Optional + +- *Type:* `boolean` + +--- + +##### `deploymentPolicies`Optional + +- *Type:* `string`[] + +--- + +##### `diskSize`Optional + +- *Type:* `number` + +--- + +##### `diskType`Optional + +- *Type:* `string` + +--- + +##### `healthCheckPath`Optional + +- *Type:* `string` + +--- + +##### `host`Optional + +- *Type:* `string` + +--- + +##### `instanceLabels`Optional + +- *Type:* [`@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty`](#@aws-cdk/aws-autoscaling.CfnAutoScalingGroup.TagPropertyProperty)[] + +--- + +##### `instanceType`Optional + +- *Type:* `string` + +--- + +##### `lbArn`Optional + +- *Type:* `string` + +--- + +##### `port`Optional + +- *Type:* `number` + +--- + +##### `protocol`Optional + +- *Type:* `string` + +--- + +##### `sslEnabled`Optional + +- *Type:* `boolean` + +--- + +##### `tcpRules`Optional + +- *Type:* [`@smallcase/aws-cdk-microservice.IngressRule`](#@smallcase/aws-cdk-microservice.IngressRule)[] + +--- + +### TargetGroupProps + +#### Initializer + +```typescript +import { TargetGroupProps } from '@smallcase/aws-cdk-microservice' + +const targetGroupProps: TargetGroupProps = { ... } +``` + +##### `type`Required + +- *Type:* `string` + +--- + +##### `healthPath`Optional + +- *Type:* `string` + +--- + +##### `name`Optional + +- *Type:* `string` + +--- + +##### `port`Optional + +- *Type:* `number` + +--- + +##### `protocol`Optional + +- *Type:* `string` + +--- + +##### `tgArn`Optional + +- *Type:* `string` + +--- + +##### `thresholdCount`Optional + +- *Type:* `number` + +--- + +##### `timeout`Optional + +- *Type:* `number` + +--- + + + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 0000000..8c4d645 --- /dev/null +++ b/README.md @@ -0,0 +1,142 @@ +# aws-cdk-microservice +aws-cdk-microservice construct library is an open-source extension of the AWS Cloud Development Kit (AWS CDK) to deploy configurable microservice infra and its individual components in less than 50 lines of code and human readable configuration which can be managed by pull requests! + +## A typical microservice architecture on AWS looks like: +![Architecture diagram](static/microservice.png) + + Using cdk a microservice can be deployed using the following sample code snippet: + ```typescript +import { Stack, StackProps } from '@aws-cdk/core'; +import { Construct } from 'constructs'; +import { InfraEnv, MicroService, ProductName } from '@smallcase/aws-cdk-microservice'; +import { App } from '@aws-cdk/core'; + +export class UnknownAPIStackDev extends Stack { + constructor(scope: Construct, id: string, props?: StackProps) { + super(scope, id, props); + new MicroService(stack, 'UnknownAPI', { + appName: 'UnknownAPI', + env: 'development', + asgMaxSize: '1', + asgMinSize: '1', + diskSize: 20, + instanceLabels: [ + { + key: 'NODE-VERSION', + propagateAtLaunch: true, + value: '12', + }, + { + key: 'TYPE', + propagateAtLaunch: true, + value: 'application', + }, + ], + instanceType: 't3.micro', + vpc: 'vpc-1234567', + port: 8000, + protocol: 'HTTP', + healthCheckPath: '/health', + subnets: ['subnet-987654321', 'subnet-12345678'], + tcpRules: [ + { + sourceSG: 'sg-12345678', + description: 'ssh rule', + port: 22, + }, + ], + host: 'abc-test-123.smallcase.com', + lbArn: 'arn:aws:elasticloadbalancing:ap-south-1:12345678910:loadbalancer/app/API-DEV-External', + sslEnabled: false, + sshKey: 'master-dev', + createCodedeployApplication: true, + role: { + type: 'new', + }, + }); + } +} + +new UnknownAPIStackDev(app, 'UnknownAPIStackDev', { + env: { account: '12345678910', region: 'ap-south-1' }, +}); + +app.synth() +``` +Please refer [here](/API.md) to check how to use individual resource constructs. + +Configuration helper +| **Property** | **Type** | **Default** | **Description** | +|------------------------------|-------------------------------------------|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| appName | string | | Name of the application to be deployed | +| applicationType? | string | new | Type of application, new or existing, if existing, codedeploy will skip it's application creation and create a deployment group in existing application. | +| asgMaxSize? | number | 2 | Max ASG scale size | +| asgMinSize? | number | 1 | Min ASG scale size | +| env? | string | development | Application environment name | +| instanceLabels? | CfnAutoScalingGroup.TagPropertyProperty[] | [] | Tags to apply to the stack | +| healthCheckPath? | string | /health | Health check path for target group | +| port? | number | undefined | Port on which application is running. If not passed, target group will not be created | +| protocol? | string (HTTP/HTTPS/GRPC) | HTTP | Service protocol | +| diskSize? | number | 8GB | Size of root volume for launch template | +| vpc | string | | VPC in which application infra is to be deployed | +| role? | string | | Role ARN which is to be used with launch template | +| tcpRules | IngressRule[] | [] | TCP Rules which are to be applied to the security group | +| subnets | string[] | | Subnets in which subnets are to be deployed | +| sslEnabled? | boolean | false | Whether to use HTTPS ALB listener, or HTTP ALB listener | +| host? | string | | DNS name, for example abc.xyz.com. Won't be created if TG is not created, | +| lbArn? | string | | Load balancer arn for application load balancing | +| sshKey | string | | The ssh key pair name which is to be used | +| diskType? | string (GP2/GP3/IO1/IO2) | GP3 | Type of disk to be used | +| createCodedeployApplication? | boolean | false | Whether to create a codedeploy application and a deployment group for current ENV passed, if applicationType is new, this will not create an application but will create a new deployment group in the same application name, will throw an error if not found. | +| deploymentPolicies? | string[] | [] | Deployment group policies which are to be passed, there are major policies already attached which will allow usage of S3 and triggering codedeploy agents on instances. | + + +Bootstrap the environment +``` +cdk bootstrap +``` + +Check the changed which are to be deployed +``` +~ -> cdk diff +Stack my-stack-dev +... +IAM Policy Changes +┌───┬──────────────────────────────────────────────────────────────────────────────┬────────────────────────────────────────────────────────────────────┐ +│ │ Resource │ Managed Policy ARN │ +├───┼──────────────────────────────────────────────────────────────────────────────┼────────────────────────────────────────────────────────────────────┤ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole} │ arn:aws:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole │ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole} │ arn:aws:iam::aws:policy/ReadOnlyAccess │ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole} │ arn:aws:iam::aws:policy/service-role/AmazonEC2RoleforSSM │ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole} │ arn:aws:iam::aws:policy/AmazonEC2FullAccess │ +└───┴──────────────────────────────────────────────────────────────────────────────┴────────────────────────────────────────────────────────────────────┘ +Security Group Changes +┌───┬─────────────────────────────────────────────────────────────────────────────────────┬─────┬────────────┬─────────────────┐ +│ │ Group │ Dir │ Protocol │ Peer │ +├───┼─────────────────────────────────────────────────────────────────────────────────────┼─────┼────────────┼─────────────────┤ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stack-sg.GroupId} │ In │ TCP 22 │ sg-12346578 │ +│ + │ ${UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stack-sg.GroupId} │ Out │ Everything │ Everyone (IPv4) │ +└───┴─────────────────────────────────────────────────────────────────────────────────────┴─────┴────────────┴─────────────────┘ +(NOTE: There may be security-related changes not in this list. See https://github.com/aws/aws-cdk/issues/1299) + +Resources +[+] AWS::EC2::SecurityGroup UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stack-sg UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPIASGstacksg858F9DBC +[+] AWS::EC2::SecurityGroupIngress UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stack-sg/from mystackdevUnknownAPIdevelopmentUnknownAPIassgf9c56492221D098D02:22 UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPIASGstacksgfrommystackdevUnknownAPIdevelopmentUnknownAPIassgf9c56492221D098D0222498F0E3E +[+] AWS::IAM::Role UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPIASGstackRole3CEFE0B7 +[+] AWS::IAM::Policy UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG-stackRole/DefaultPolicy UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPIASGstackRoleDefaultPolicy8F61E954 +[+] AWS::IAM::InstanceProfile UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-LT/Profile UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPILTProfileC84DF85A +[+] AWS::EC2::LaunchTemplate UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-LT UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPILT3B54AB26 +[+] AWS::ElasticLoadBalancingV2::TargetGroup UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-TG UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPITG141FD907 +[+] AWS::AutoScaling::AutoScalingGroup UnknownAPI/development-UnknownAPI-as/development-UnknownAPI-ASG UnknownAPIdevelopmentUnknownAPIasdevelopmentUnknownAPIASGEC1B4F9C +[+] AWS::IAM::Role UnknownAPI/UnknownAPI-deployment-group-role UnknownAPIUnknownAPIdeploymentgrouprole6E048442 +[+] AWS::IAM::Policy UnknownAPI/UnknownAPI-deployment-group-role/DefaultPolicy UnknownAPIUnknownAPIdeploymentgrouproleDefaultPolicy176FEC37 +[+] AWS::CodeDeploy::Application UnknownAPI/development-UnknownAPI-cd/UnknownAPI-development UnknownAPIdevelopmentUnknownAPIcdUnknownAPIdevelopment72A04EEC +[+] AWS::CodeDeploy::DeploymentGroup UnknownAPI/development-UnknownAPI-cd/development UnknownAPIdevelopmentUnknownAPIcddevelopmentC502CFAD +``` +this is a trimmed output. + + +Deploy using +``` +~ -> cdk deploy +``` diff --git a/package.json b/package.json new file mode 100644 index 0000000..08fe90a --- /dev/null +++ b/package.json @@ -0,0 +1,147 @@ +{ + "name": "@smallcase/aws-cdk-microservice", + "repository": { + "type": "git", + "url": "https://github.com/smallcase/aws-cdk-microservice.git" + }, + "scripts": { + "clobber": "npx projen clobber", + "compile": "npx projen compile", + "test:compile": "npx projen test:compile", + "test": "npx projen test", + "build": "npx projen build", + "test:watch": "npx projen test:watch", + "test:update": "npx projen test:update", + "bump": "npx projen bump", + "unbump": "npx projen unbump", + "publish:github": "npx projen publish:github", + "upgrade": "npx projen upgrade", + "upgrade-projen": "npx projen upgrade-projen", + "default": "npx projen default", + "watch": "npx projen watch", + "package": "npx projen package", + "eslint": "npx projen eslint", + "compat": "npx projen compat", + "publish:npm": "npx projen publish:npm", + "publish:pypi": "npx projen publish:pypi", + "docgen": "npx projen docgen", + "release": "npx projen release", + "projen": "npx projen" + }, + "author": { + "name": "Gagan Singh", + "email": "gaganpreet.singh@smallcase.com", + "organization": false + }, + "devDependencies": { + "@aws-cdk/assert": "1.113.0", + "@aws-cdk/aws-autoscaling": "1.113.0", + "@aws-cdk/aws-codedeploy": "1.113.0", + "@aws-cdk/aws-ec2": "1.113.0", + "@aws-cdk/aws-elasticloadbalancingv2": "1.113.0", + "@aws-cdk/aws-iam": "1.113.0", + "@types/jest": "^27.0.1", + "@types/node": "^10.17.0", + "@typescript-eslint/eslint-plugin": "^4.30.0", + "@typescript-eslint/parser": "^4.30.0", + "constructs": "3.3.138", + "eslint": "^7.32.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^2.4.0", + "eslint-plugin-import": "^2.24.2", + "jest": "^27.1.0", + "jest-junit": "^12", + "jsii": "^1.34.0", + "jsii-diff": "^1.34.0", + "jsii-docgen": "^3.3.9", + "jsii-pacmak": "^1.34.0", + "json-schema": "^0.3.0", + "npm-check-updates": "^11", + "projen": "^0.27.39", + "standard-version": "^9", + "ts-jest": "^27.0.5", + "typescript": "^4.4.2" + }, + "peerDependencies": { + "@aws-cdk/aws-autoscaling": "1.113.0", + "@aws-cdk/aws-codedeploy": "1.113.0", + "@aws-cdk/aws-ec2": "1.113.0", + "@aws-cdk/aws-elasticloadbalancingv2": "1.113.0", + "@aws-cdk/aws-iam": "1.113.0", + "@aws-cdk/core": "1.113.0", + "constructs": "^3.3.138" + }, + "dependencies": { + "@aws-cdk/aws-autoscaling": "1.113.0", + "@aws-cdk/aws-codedeploy": "1.113.0", + "@aws-cdk/aws-ec2": "1.113.0", + "@aws-cdk/aws-elasticloadbalancingv2": "1.113.0", + "@aws-cdk/aws-iam": "1.113.0", + "@aws-cdk/core": "1.113.0" + }, + "bundledDependencies": [], + "keywords": [ + "cdk" + ], + "main": "lib/index.js", + "license": "Apache-2.0", + "publishConfig": { + "access": "public" + }, + "version": "0.0.0", + "jest": { + "testMatch": [ + "**/__tests__/**/*.ts?(x)", + "**/?(*.)+(spec|test).ts?(x)" + ], + "clearMocks": true, + "collectCoverage": true, + "coverageReporters": [ + "json", + "lcov", + "clover", + "text" + ], + "coverageDirectory": "coverage", + "coveragePathIgnorePatterns": [ + "/node_modules/" + ], + "testPathIgnorePatterns": [ + "/node_modules/" + ], + "watchPathIgnorePatterns": [ + "/node_modules/" + ], + "reporters": [ + "default", + [ + "jest-junit", + { + "outputDirectory": "test-reports" + } + ] + ], + "preset": "ts-jest", + "globals": { + "ts-jest": { + "tsconfig": "tsconfig.jest.json" + } + } + }, + "types": "lib/index.d.ts", + "stability": "stable", + "jsii": { + "outdir": "dist", + "targets": { + "python": { + "distName": "aws-cdk-microservice", + "module": "aws_cdk_microservice" + } + }, + "tsc": { + "outDir": "lib", + "rootDir": "src" + } + }, + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} \ No newline at end of file diff --git a/src/constructs/autoScalingGroup.ts b/src/constructs/autoScalingGroup.ts new file mode 100644 index 0000000..1dcc1a9 --- /dev/null +++ b/src/constructs/autoScalingGroup.ts @@ -0,0 +1,283 @@ +import { CfnAutoScalingGroup } from '@aws-cdk/aws-autoscaling'; +import { Vpc, BlockDeviceVolume, BlockDevice, InstanceType, LaunchTemplate, SecurityGroup, MachineImage, SecurityGroupProps, IVpc, EbsDeviceVolumeType, InstanceProps, LaunchTemplateAttributes, VpcProps, Port, Subnet } from '@aws-cdk/aws-ec2'; +import { CfnTargetGroup, NetworkTargetGroupProps } from '@aws-cdk/aws-elasticloadbalancingv2'; +import * as iam from '@aws-cdk/aws-iam'; +import { Effect, PolicyStatement, ServicePrincipal } from '@aws-cdk/aws-iam'; +import * as cdk from '@aws-cdk/core'; + +export interface InternalVPC { + readonly type: string; + readonly vpcName: string; + readonly vpcProps?: VpcProps; +} + +export interface IngressRule { + readonly sourceSG: string; + readonly description?: string; + readonly port: number; +} + +export interface InternalRole { + readonly roleName?: string; + readonly type: string; + readonly roleArn?: string; + readonly additionalPolicies?: any[]; +} + +export interface InternalSG { + readonly type: string; + readonly sgGroupId?: string; + readonly ingressRules?: IngressRule[]; + readonly securityGroupName?: string; + readonly description?: string; + readonly allowAllOutbound?: boolean; + readonly disableInlineRules?: boolean; +} + +export interface InstanceStackProps { + readonly asgName: string; + readonly securityGroup?: InternalSG; + readonly vpc?: InternalVPC; + readonly role?: InternalRole; + readonly instanceProps: InstanceProps; + readonly tags?: Record; + readonly instanceVolumeSize?: BlockDevice; + readonly targetGroupProps?: NetworkTargetGroupProps; +} + +export interface InternalBD { + readonly name: string; + readonly size: number; + readonly type: EbsDeviceVolumeType; +} + +export interface InternalLaunchTemplateProps { + readonly type: string; + readonly templateName: string; + readonly existingAttributes?: LaunchTemplateAttributes; + readonly vpc: InternalVPC; + readonly role: InternalRole; + readonly instanceType: string; + readonly amiImageId: string; + readonly detailedMonitoring: boolean; + readonly instanceVolumeSize?: BlockDevice; + readonly securityGroup: InternalSG; + readonly blockDevice: InternalBD; + readonly sshKey: string; +} +export interface TargetGroupProps { + readonly type: string; + readonly port?: number; + readonly name?: string; + readonly protocol?: string; + readonly timeout?: number; + readonly healthPath?: string; + readonly thresholdCount?: number; + readonly tgArn?: string; +} +export interface AutoScalerProps { + readonly asgName: string; + readonly templateProps: InternalLaunchTemplateProps; + readonly maxSize: string; + readonly minSize: string; + readonly tags?: CfnAutoScalingGroup.TagPropertyProperty[]; + readonly tgProps?: TargetGroupProps; + readonly subnets: string[]; +} + +export class AutoScaler extends cdk.Resource { + public readonly targetGroupArn: string; + constructor(scope: cdk.Construct, id: string, props: AutoScalerProps) { + super(scope, id); + + const launchTemplate = this.getLT(props.templateProps, props.asgName); + const tgArn = this.getTG(props.tgProps, props.templateProps.vpc.vpcName); + + new CfnAutoScalingGroup(this, props.asgName, { + maxSize: props.maxSize, + minSize: props.minSize, + autoScalingGroupName: props.asgName, + launchTemplate: { + version: launchTemplate.versionNumber, + launchTemplateId: launchTemplate.launchTemplateId, + launchTemplateName: launchTemplate.launchTemplateName, + }, + targetGroupArns: tgArn, + tags: props.tags, + availabilityZones: this.getZones(props.subnets), + vpcZoneIdentifier: props.subnets, + healthCheckGracePeriod: 300, + }); + if (tgArn.length) { + this.targetGroupArn = tgArn[0]; + } + this.targetGroupArn = ''; + } + + private getVPC(props: InternalVPC) { + const stackVPC = Vpc.fromLookup(this, props.vpcName, { + isDefault: false, + vpcId: props.vpcName, + }); + return stackVPC; + } + + private getRole(props: InternalRole, asgName: string) { + if (props.type == 'existing') { + const role = iam.Role.fromRoleArn(this, asgName + '-stackRole', props.roleArn!); + return role; + } else { + const role = new iam.Role(this, asgName + '-stackRole', { + assumedBy: new ServicePrincipal('ec2.amazonaws.com'), + roleName: asgName + '-role', + }); + + role.addManagedPolicy({ + managedPolicyArn: 'arn:aws:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole', + }); + + + role.addManagedPolicy({ + managedPolicyArn: 'arn:aws:iam::aws:policy/ReadOnlyAccess', + }); + + role.addManagedPolicy({ + managedPolicyArn: 'arn:aws:iam::aws:policy/service-role/AmazonEC2RoleforSSM', + }); + + role.addManagedPolicy({ + managedPolicyArn: 'arn:aws:iam::aws:policy/AmazonEC2FullAccess', + }); + + role.addToPolicy( + new PolicyStatement({ + effect: Effect.ALLOW, + resources: ['*'], + actions: [ + 'iam:ListUsers', + 'iam:GetGroup', + ], + }), + ); + + role.addToPolicy( + new PolicyStatement({ + effect: Effect.ALLOW, + resources: ['*'], + actions: [ + 'ec2:DescribeTags', + ], + }), + ); + + role.addToPolicy( + new PolicyStatement({ + effect: Effect.ALLOW, + resources: ['*'], + actions: [ + 'iam:ListUsers', + 'iam:GetGroup', + ], + sid: 'VisualEditor0', + }), + ); + + props.additionalPolicies?.forEach(policyDoc => { + role.addToPolicy( + PolicyStatement.fromJson( + policyDoc, + ), + ); + }); + + return role; + } + } + + private getSG(props: InternalSG, vpc: IVpc, asgName: string) { + if (props.type == 'existing') { + const securityGroup = SecurityGroup.fromSecurityGroupId(this, 'stack-sg', props.sgGroupId!); + return securityGroup; + } else { + const sgProps: SecurityGroupProps = { + securityGroupName: props.securityGroupName ?? 'stack-sg-group', + vpc: vpc!, + allowAllOutbound: props.allowAllOutbound ?? true, + disableInlineRules: props.disableInlineRules ?? false, + }; + const securityGroup = new SecurityGroup(this, asgName + '-stack-sg', sgProps); + props.ingressRules!.forEach(ingress => { + const ingressSG = SecurityGroup.fromSecurityGroupId(this, ingress.sourceSG + ingress.port.toString(), ingress.sourceSG); + securityGroup.connections.allowFrom(ingressSG, Port.tcp(ingress.port), ingress.description ?? 'Application port'); + }); + return securityGroup; + } + } + + private getBD(props: InternalBD) { + const bd: BlockDevice = { + deviceName: props.name, + volume: BlockDeviceVolume.ebs(props.size, { + volumeType: props.type, + deleteOnTermination: true, + }), + }; + return bd; + } + + private getLT(props: InternalLaunchTemplateProps, asgName: string) { + if (props.type == 'existing') { + const launchTemplate = LaunchTemplate.fromLaunchTemplateAttributes(this, props.templateName, props.existingAttributes!); + return launchTemplate; + + } else { + + const launchTemplate = new LaunchTemplate(this, props.templateName, { + launchTemplateName: props.templateName, + instanceType: new InstanceType(props.instanceType), + machineImage: MachineImage.lookup({ + name: props.amiImageId, + }), + securityGroup: this.getSG(props.securityGroup, this.getVPC(props.vpc), asgName), + role: this.getRole(props.role, asgName), + detailedMonitoring: false, + blockDevices: [this.getBD(props.blockDevice)], + keyName: props.sshKey, + }); + + return launchTemplate; + + } + } + + private getTG(props: TargetGroupProps | undefined, vpcId: string) { + if (props != undefined) { + const tg = new CfnTargetGroup(this, props.name!, { + name: props.name, + healthCheckEnabled: true, + healthCheckPath: props.healthPath!, + ...((props.protocol == 'GRPC') ? { protocol: 'HTTP' } : { protocol: props.protocol }), + ...((props.protocol == 'GRPC') ? { protocolVersion: 'GRPC' } : {}), + healthCheckTimeoutSeconds: props.timeout!, + healthCheckPort: String(props.port!), + port: props.port!, + vpcId: vpcId, + }); + return [tg.ref]; + } else { + return []; + } + } + + private getZones(subnets: string[]) { + var availabilityZones: string[] = []; + subnets.forEach(subnet => { + const net = Subnet.fromSubnetAttributes(this, subnet, { + availabilityZone: 'dummy', + subnetId: subnet, + }); + availabilityZones.push(net.availabilityZone); + }); + return availabilityZones; + } +} \ No newline at end of file diff --git a/src/constructs/deployment.ts b/src/constructs/deployment.ts new file mode 100644 index 0000000..972b405 --- /dev/null +++ b/src/constructs/deployment.ts @@ -0,0 +1,47 @@ +// import { AutoScalingGroup, IAutoScalingGroup } from '@aws-cdk/aws-autoscaling'; +import { CfnDeploymentGroup, ServerApplication } from '@aws-cdk/aws-codedeploy'; +// import { Role } from '@aws-cdk/aws-iam'; +import * as cdk from '@aws-cdk/core'; + +export interface ApplicationProps { + readonly applicationName: string; + readonly resourceType: string; + readonly type: string; +} +export interface DeploymentProps { + readonly applicationProps: ApplicationProps; + readonly deploymentGroupName: string; + readonly asgNames: string[]; + readonly roleArn: string; + readonly deploymentConfigName: string; + readonly tgName: string; +} + +export class Deployment extends cdk.Construct { + constructor(scope: cdk.Construct, id: string, props: DeploymentProps) { + super(scope, id); + + const app = this.getApp(props.applicationProps); + + const dg = new CfnDeploymentGroup(this, props.deploymentGroupName, { + deploymentGroupName: props.deploymentGroupName, + applicationName: props.applicationProps.applicationName, + serviceRoleArn: props.roleArn, + autoScalingGroups: props.asgNames, + deploymentConfigName: props.deploymentConfigName, + }); + dg.node.addDependency(app); + } + + private getApp(props: ApplicationProps) { + if (props.type == 'existing') { + const app = ServerApplication.fromServerApplicationName(this, props.applicationName, props.applicationName); + return app; + } else { + const app = new ServerApplication(this, props.applicationName, { + applicationName: props.applicationName, + }); + return app; + } + } +} \ No newline at end of file diff --git a/src/constructs/microservice.ts b/src/constructs/microservice.ts new file mode 100644 index 0000000..b6f0f7e --- /dev/null +++ b/src/constructs/microservice.ts @@ -0,0 +1,217 @@ +import { CfnAutoScalingGroup } from '@aws-cdk/aws-autoscaling'; +import { EbsDeviceVolumeType } from '@aws-cdk/aws-ec2'; +import { Effect, PolicyStatement, Role, ServicePrincipal } from '@aws-cdk/aws-iam'; +import { Construct } from '@aws-cdk/core'; +import { AutoScaler, IngressRule, InternalRole } from './autoScalingGroup'; +import { Deployment } from './deployment'; +import { BalancerEntry } from './network'; + + +export interface MicroServiceProps { + readonly env: string; + readonly instanceType?: string; + readonly appName: string; + readonly asgMaxSize?: string; + readonly asgMinSize?: string; + readonly instanceLabels?: CfnAutoScalingGroup.TagPropertyProperty[]; + readonly healthCheckPath?: string; + readonly port?: number; + readonly vpc: string; + readonly subnets: string[]; + readonly protocol?: string; + readonly diskSize?: number; + readonly role: InternalRole; + readonly tcpRules?: IngressRule[]; + readonly sslEnabled?: boolean; + readonly host?: string; + readonly lbArn?: string; + readonly ami?: string; + readonly sshKey: string; + readonly diskType?: string; + readonly createCodedeployApplication?: boolean; + readonly deploymentPolicies?: string[]; + readonly applicationType?: string; +} +export class MicroService extends Construct { + + public readonly instanceType?: string; + public readonly appName: string; + public readonly asgMaxSize?: string; + public readonly asgMinSize?: string; + public readonly env?: string; + public readonly instanceLabels?: CfnAutoScalingGroup.TagPropertyProperty[]; + public readonly healthCheckPath?: string; + public readonly port?: number; + public readonly protocol?: string; + public readonly diskSize?: number; + public readonly vpc: string; + public readonly role: InternalRole; + public readonly tcpRules?: IngressRule[]; + public readonly subnets: string[]; + public readonly sslEnabled?: boolean; + public readonly host?: string; + public readonly lbArn?: string; + public readonly sshKey: string; + public readonly diskType?: string; + public readonly createCodedeployApplication?: boolean; + public readonly deploymentPolicies?: string[]; + public readonly applicationType?: string; + + constructor(scope: Construct, id: string, props: MicroServiceProps) { + super(scope, id); + + this.instanceType = props?.instanceType ?? 't3a.micro'; + this.appName = props.appName; + this.asgMaxSize = props?.asgMaxSize ?? '2'; + this.asgMinSize = props?.asgMinSize ?? '1'; + this.env = props?.env ?? 'development'; + this.instanceLabels = props?.instanceLabels; + this.healthCheckPath = props?.healthCheckPath ?? '/v1/healthCheck'; + this.port = props.port ?? undefined; + this.protocol = props.protocol ?? 'HTTP'; + this.diskSize = props.diskSize ?? 8; + this.vpc = props.vpc; + this.role = props.role; + this.tcpRules = props.tcpRules ?? []; + this.subnets = props.subnets; + this.sslEnabled = props.sslEnabled; + this.host = props.host; + this.lbArn = props.lbArn; + this.sshKey = props.sshKey; + this.diskType = props.diskType; + this.createCodedeployApplication = props.createCodedeployApplication ?? false; + this.deploymentPolicies = props.deploymentPolicies ?? []; + this.applicationType = props.applicationType ?? 'new'; + + const resourceNamePrefix = this.env + '-' + this.appName; + const asg = new AutoScaler(this, resourceNamePrefix + '-as', { + asgName: resourceNamePrefix + '-ASG', + maxSize: this.asgMaxSize, + minSize: this.asgMinSize, + tgProps: this.port ? { + type: 'new', + healthPath: this.healthCheckPath, + protocol: this.protocol, + port: this.port, + name: ((resourceNamePrefix + '-TG').length >= 32)? this.env + '-' + this.appName + '-TG':resourceNamePrefix + '-TG', + timeout: 10, + thresholdCount: 2, + }: undefined, + templateProps: { + instanceType: this.instanceType, + detailedMonitoring: false, + templateName: resourceNamePrefix + '-LT', + amiImageId: props.ami ?? 'Ubuntu Server 20.04 LTS (HVM), SSD Volume Type', + type: 'new', + blockDevice: { + size: this.diskSize, + name: '/dev/sda1', + type: this.getDiskType(this.diskType ?? 'GP3'), + }, + vpc: { + type: 'existing', + vpcName: this.vpc, + }, + securityGroup: { + type: 'new', + allowAllOutbound: true, + securityGroupName: resourceNamePrefix + '-SG', + ingressRules: this.tcpRules, + }, + role: this.role, + sshKey: this.sshKey, + }, + tags: props.instanceLabels, + subnets: this.subnets, + }); + + if (this.createCodedeployApplication) { + const depRole = this.getDeploymentGroupRole(); + const dep = new Deployment(this, resourceNamePrefix + '-cd', { + asgNames: [resourceNamePrefix + '-ASG'], + deploymentConfigName: 'CodeDeployDefault.OneAtATime', + roleArn: depRole.roleArn, + applicationProps: { + applicationName: this.appName + '-' + this.env, + type: this.applicationType, + resourceType: 'Server', + }, + deploymentGroupName: this.env, + tgName: resourceNamePrefix + '-TG', + }); + dep.node.addDependency(depRole); + } + + if (this.host && this.lbArn && asg.targetGroupArn != '') { + const lbEntry = new BalancerEntry(this, resourceNamePrefix + '-lb', { + appName: this.appName, + hostHeader: this.host, + targetGroupArn: asg.targetGroupArn, + lbArn: this.lbArn, + sslEnabled: this.sslEnabled ?? false, + }); + lbEntry.node.addDependency(asg); + } + } + + private getDeploymentGroupRole() { + var role = new Role(this, this.appName + '-deployment-group-role', { + assumedBy: new ServicePrincipal('codedeploy.amazonaws.com'), + roleName: this.appName + '-deployment-group-role', + }); + role.addToPolicy( + new PolicyStatement({ + effect: Effect.ALLOW, + resources: ['*'], + actions: [ + 'autoscaling:CompleteLifecycleAction', + 'autoscaling:DeleteLifecycleHook', + 'autoscaling:DescribeAutoScalingGroups', + 'autoscaling:DescribeLifecycleHooks', + 'autoscaling:PutLifecycleHook', + 'autoscaling:RecordLifecycleActionHeartbeat', + 'autoscaling:CreateAutoScalingGroup', + 'autoscaling:UpdateAutoScalingGroup', + 'autoscaling:EnableMetricsCollection', + 'autoscaling:DescribePolicies', + 'autoscaling:DescribeScheduledActions', + 'autoscaling:DescribeNotificationConfigurations', + 'autoscaling:SuspendProcesses', + 'autoscaling:ResumeProcesses', + 'autoscaling:AttachLoadBalancers', + 'autoscaling:AttachLoadBalancerTargetGroups', + 'autoscaling:PutScalingPolicy', + 'autoscaling:PutScheduledUpdateGroupAction', + 'autoscaling:PutNotificationConfiguration', + 'autoscaling:PutWarmPool', + 'autoscaling:DescribeScalingActivities', + 'autoscaling:DeleteAutoScalingGroup', + 'ec2:DescribeInstances', + 'ec2:DescribeInstanceStatus', + 'ec2:TerminateInstances', + 'tag:GetResources', + 'sns:Publish', + 'cloudwatch:DescribeAlarms', + 'cloudwatch:PutMetricAlarm', + 'elasticloadbalancing:DescribeLoadBalancers', + 'elasticloadbalancing:DescribeInstanceHealth', + 'elasticloadbalancing:RegisterInstancesWithLoadBalancer', + 'elasticloadbalancing:DeregisterInstancesFromLoadBalancer', + 'elasticloadbalancing:DescribeTargetGroups', + 'elasticloadbalancing:DescribeTargetHealth', + 'elasticloadbalancing:RegisterTargets', + 'elasticloadbalancing:DeregisterTargets', + 'ec2:CreateTags', + 'ec2:RunInstances', + 'iam:PassRole', + ... this.deploymentPolicies ?? [], + ], + }), + ); + return role; + } + + private getDiskType(type: string) { + return type as EbsDeviceVolumeType; + } +} diff --git a/src/constructs/network.ts b/src/constructs/network.ts new file mode 100644 index 0000000..98b4922 --- /dev/null +++ b/src/constructs/network.ts @@ -0,0 +1,75 @@ +import { ApplicationListener, ApplicationProtocol, CfnListenerRule } from '@aws-cdk/aws-elasticloadbalancingv2'; +import * as cdk from '@aws-cdk/core'; + +export interface LoadBalancerProps { + readonly appName: string; + readonly hostHeader: string; + readonly targetGroupArn: string; + readonly lbArn: string; + readonly sslEnabled: boolean; +} + +export class BalancerEntry extends cdk.Resource { + constructor(scope: cdk.Construct, id: string, props: LoadBalancerProps) { + super(scope, id); + const listeners = this.getLoadBalancerListener(props.lbArn, props.sslEnabled, props.appName); + if (props.sslEnabled) { + new CfnListenerRule(this, props.appName + '-https-rule', { + listenerArn: listeners[0], + actions: [ + { + type: 'forward', + targetGroupArn: props.targetGroupArn, + }, + ], + conditions: [ + { + field: 'host-header', + hostHeaderConfig: { + values: [props.hostHeader], + }, + }, + ], + priority: Math.floor(Math.random() * (1000 - 200 + 1)) + 200, // this line is a flipping leap of faith + }); + } else { + new CfnListenerRule(this, props.appName + '-http-rule', { + listenerArn: listeners[0], + actions: [ + { + type: 'forward', + targetGroupArn: props.targetGroupArn, + }, + ], + conditions: [ + { + field: 'host-header', + hostHeaderConfig: { + values: [props.hostHeader], + }, + }, + ], + priority: Math.floor(Math.random() * (1000 - 200 + 1)) + 200, // this line is a flipping leap of faith + }); + } + } + + private getLoadBalancerListener(loadBalancerArn: string, sslEnabled: boolean, appName: string) { + const listeners = []; + + if (!sslEnabled) { + listeners.push(ApplicationListener.fromLookup(this, appName + '-listener-http', { + loadBalancerArn: loadBalancerArn, + listenerProtocol: ApplicationProtocol.HTTP, + }).listenerArn); + } + + if (sslEnabled) { + listeners.push(ApplicationListener.fromLookup(this, appName + '-listener-https', { + loadBalancerArn: loadBalancerArn, + listenerProtocol: ApplicationProtocol.HTTPS, + }).listenerArn); + } + return listeners; + } +} diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..99bcdee --- /dev/null +++ b/src/index.ts @@ -0,0 +1,4 @@ +export * from './constructs/autoScalingGroup'; +export * from './constructs/deployment'; +export * from './constructs/microservice'; +export * from './constructs/network'; \ No newline at end of file diff --git a/static/microservice.png b/static/microservice.png new file mode 100644 index 0000000000000000000000000000000000000000..b48870adc2dfebbd7dcaaa3880519b33b35d76c4 GIT binary patch literal 418940 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≷{L}Z`&PXRD*(@Rl{X3+;$#!u#Q) ztv&xze{+2KM~=_wh1~8XkTlgsWd0-{_TH&@^BEh|2zpwBq*o>9qL^sjONKko{10p7 ztDh+hFc{>S_^Z~k;GfSk;6dVPC?#mk{c?gCc6?q|HYy^Texq%Ejx+}gpla>{i+aNW z(0~e2h0tu=7Z1rzF#Ot>`ncCDVqt5XF8?tDv&xpYN0Bc}qFoXj)3%gw3aAd@rw)js zJ5c!E|s06AK%gS<0az;^I%A9@@(EV>Rp5 zqR?LSg1UiQewFuet$4uqao29rxBbKwR`Zs0R`X@$yGOjaxO(^HVgp*XAGmBANRGW_ z*TNI($U^ff^kOt{!i-E)PmN}@@38u;&`kpsmoy^+VR%j=5Tm@VUDRSY1Ac)1RA&8V z?sV;*Gm)o1lA4MV{H6*u>lKl?qX0XT31#0?c3thbZSy(bB|JU6#Tc|ZChvzYG4a~lOdz&_A)T4G%z9s zg{c^raBPF+trE&VmoWuBO@^n10BRd~;Dps7@XNfe4x^ADoZQpPW#ELajQ!o+YU+@% z1GLKyWzRfRT>%z{RFW&l7e@-o2g7M3p(BdIV~G{*SLEql=W2O==89ADm$7OV3rTIV zG#;kZN0}w$O#DRm_8^w+eVsqpDzw8)AawMhMT3ol&DKMl3iO`)WvrEzMe2#EtY&8= zQH&)^GO{YLcWt=y*2ksB235_r#yV!JrN@(66KCY=j(xVusm~Z|-9topRMXe|A1&vX?Ff>KwF>MPe=v6%Ftp|p2c!cZ{V!J(B{~Ky z-y2ulE2d_sz7IS>U{Qhx$Y0QU)|EadvLG!F20U!Qq z$_I2j{@2L}5NHqrhd|RSM9~^2kEcDz^l5*h#wQ!@4MDkUUT7Qlgqh%y5=N!Q%{3#^ zFb<B9R zp6h6znel;IOt_t|0zE{6kKA5+JS38DKG8EFL{BU6ml%E%jB5e#K*6%wxS!z;EQfy|=l z3`8`sNFXiI`y%y-;x2r}JV#UjwSn9jDx7@r!~@#bD6<@71XmJl&r4^z#%<)ItqtjN z74B1n%4rH&K83hKxr+JDR(X=sm?RG=%@Cqhircw5&pYh7m%^fSqZ089Vg|Kke8qD7 zR5!!CH3bS9v_4*H5zi(GJQTIKs+isixUt3MXgT;(9$?_A*<`^^I+BrL8)oxyCu(7g zW6cPY)Bp@+<2;|it2pH%c_*1gTwEN1sfTMoy#*i^dC>bht}Sz%@$vKqHU$1PI@Osk z=*!#tL%Zp_z;Tw@%0=Qs^~?IL4Z%{6AZ18U zF8|f5Pb^(yh7dHj$RU4(wSgYQtkQb&B{Mt7T#Z9_kS?TtTJ07QJ^8bS)s^niXz8^D zr)O41r;#KXKjmdb|9_gX8KTgfpqCo6OBKcc=o*J&U;2{Xa++TjsdWY|(WHUo)MWbB zOQ9|NZ+-ttt_LHbGOGHSz@TWEJhasJ8ls9>t-(?*hi;o2)f!g;or*z%>zJ|}b7`xa zn*8xwm4?4sOQL{5lb2}2=f8jIK$z0efvC&tR-gzp3A~U^fjKEmu_@^$Rr-FC3?%$$ zv&O7&$KdaJz3(jO&W63gNysaViWJf`r7epb%899TTh%NUy~9{IqUubP_#%G`-M><) zVdhkzNQ@O#AJ;HJN_*<(M61{YCvw8=Dg^=r;*nSB3}VoXsM}V14||9|2e!?Smc=yA zQ`~~RVOyaiB}6gJ21jOLrSco2PmiX~;1s=Hk{XTx?lM8(r0b=CP9p2~5p3UwI#MK28R1V>%pQ4eI=etxvwy(8im;<+rZ zBT*@l%PmYIspxRjh0R=+k4$R5(-p4c>M7*A5%$xcUJyaXR>UF6id z6o~!iV*?Pw8oXUe#=PP7g(@-faD8kiZ_49VdP+2VfGF(T8I z30pOY&#Fa@u0|&S?5>8?Lt{Fa)nZMDcO?}fz7-Ib(2P`7AgGYy-Sx%1wmJ}mSgs%t zebLBGDI`25ETEO_%Rux!eI3-48?F1?Wg&mZUO?pB{F3f8uaU~*R_&J9H12)b?WHxp zL7bUJgLsy6Hk-zzf8fKo#ewk938ENxZ-*ewV$fa9@%U2)J@6TL+Z6k}ANa6$z!CC4 zed(xW9(=1Ne4LP3wZ#v#SVcM`V_E&U3*YGkDGZP13IG7D$DE7&Z zSsM>~Ah|V;|B&x5FSBkiulg8EBYr-rwC6S+{0I(JzTFMV z1{17q%g3Ff=xji9ZWL7}wIKcByFi5Bkf!~Iux71i0DbeLctNXIW zu*`Q?rJbB4sF-;>_)E*{(6MjRk-+y3_$YMjunVkDVbTHVbr-~H-xka4W>h^4qOM~6 z%46)N*mPdjs{DTz0Fm6=l6x7A8BnoCqC&2tg`XBZ-PO8kJ21D zmZ1{H(PTfX2Pgc4HH1u5{R0bZVe(}$FxT*tNPMQ?Fod(vFG8O z{E@+pgR;U@i*{&@GhJd=t#-=hSr>lO=vjo?caaj!W1^_Bh8fxx_UMf6ZH6sa-AVQq zR4u2y`Ht#Fnz#oXbaVnP%bC5uKJ7nHk#aoYJ~fctwwLDq$6-nX{Y;7dSL7P=09rk^ zn_68yFIqk}3tU*i7|osXXX7|N86170yhXMdQO0cB!@8wJG>|ie6M!{gdjzwWqQawL z9KYtTff*o{BBIqa&cXsyr1NP@L@*bU`?*T9y zqIL}2bH`8xxUAX-g?w|p8RNjQ^aoBbE%SWOcp(6tM8*$H{Qbx{FBc+30O3^N>>+{z z1v!g-UR21`6-`+uCR{2Wm{20WdZ=)^Fgqx`m2WT7B-SQmekxs86>7XM2oFiFn@M&- zjM_kEvr64f2IsId&e*ffPz6pp@3;6AgXog2ZYH?TD6Wt}!Qg8)q!LElv*C0d+4{xB zQ*p|MYS@cMq9l<#RTHjmXExP&%_7!4=LcL8t+MKg()IwXy-sMF0(&FZ4raW%S39?) zmcE?KnXDH4N!5B~8M~ygZl(LddD(m0{gnJ{?)5~}@jQ;r>|V!XQ^CWX<%G|oO8I`# z@T8gs9Q6q^1B=tWJzI#hv^KP@2=dQ0`_R{=v2jUf-R+$S+7S*C5a{7zSbnvAf2R^= z>b-%0)|~ttHd3?7lZrO63+{W@HLnd%^Xqw7#CMLf=lX}@nwfR?GCpblDN;21D6yK= z#>jG+Q;bN88zf|?_eG`T1lYwY)N9Zu!`-ax%m{7cD6Mxv+Mf?F_JcQL-^PBVF4s3H zmY-Bi_Z)c1k~F+2hAOpPG(H@bP521DT)glonP|h!N`Aja>O{8e5D`=@8bDOeYXY>x z9wVUL=|&VZvM2EHCwAkLl@y=d6&LH$VZr~}*e;-Nel>YJRdYE$#`!1;!l;nPVnLuLxQ?j3lfa~W~t7jkV+tx$J z0>Q_lc)HVm3Xs!P@WdHxDskV?x1kz078k~?itgZNPIA*qc7e&T*_|qoX6OG5PA&#>3%dbADG*MS!U8&JVF zEJlRnSo;;HTA^)Tp@hCr_SZJjxyj|fd%3vKoETYYU``LR|LEr7VBqo@>Y~sCq~qnp zFrqM_f~abqToFS3)M<-133tGe_u{@V44eRzE8F0xz!$Q3Rv$zdTC0|pm09bPAWOOv z(CO_#NBRgo@IwNcky&Ie@uk6jriU1x_(t4Z!v5+$>fy6HpwOuEukypZ58}kXvjD$i zOhckV91;3EU1b`-j9obmxiVB0?lcm1Cd1NxA!p~vl^ zvecYC>!=N3et{=`+}^;j_HQ0F+rYVu%2~t&LlE_C$(Urnl-6p8Z&JL|fMoAgj*EQk zMF^oBc{yQX1F}OLAt(dHhiq?oN||NYR|(g8xRV%es)OEzo^zUby?E;BAKtmyG0c+| z9R&$q2)vVt<4wEh5%YzVaM;K3F~}VSJmCpKi<_ayH?%1673Il0t)YGM7W!8x)RuG$ ze?!_y@bsLEX6FKJ{)Q?+r$XAv@o)8GOV1GQ?rc*kwIpZH#^0(a~!! zZP?y(B=LaKpzBiw(R5CiH$uhnjJc_&;7z7F`CS=>b!$LD+ZCl-noa)wAB0-w3QC6o ziO9-4-ZH7S9CCZ=IOY6|D_AHf2ozk-3VWh3Y0cQ3rv5RrKMB+X#h8L&Oe-vjRlShA zic}HGvT3RD@FOXX9r*39#7BUaT{ncY=VR+zep4UOG}#RyKRs1!wum{i;?o0kEa`}_9$Orr1;>2a+k&f8}4`_iND$#1yH@r{Dp zp?iPBOEB@3jd73L^azoT%GPVCHJ^_+a)!hbU>i9zMjLcAd-D zc2*_)t9yu|l+XD$@&Ho>PN`oZ=l>(?ETgJ=*M6;(QWDbL9n#$m(%sUrXrvnf=?>|V z?(R@v(IB~CQA#(`4QI07v-keL=ZyKmG5q9EALe}S`}+N^;LaZ-DB5)n$J?BL=VHZE z%CWgJ6;pr~0?IMs@6*Q3ozGzIX}=6kqP-`M<8J|noj=(K;eP*BajkkQ8ZHO^xt^6Y z)QDN33=~frYH#)Ou&)|cFhp@k9my8SFUIRD{RZkR2jHB>D7eB9J|DO3?5FCV#6OUf zS;4xIdVX*A9M9L=_W5J`cZW#T+M$Xq?*zo>In zR9#rC=b{j#28VSZ$`g)CPIxiXrZNmF=;yK-Pf-%pjq39YvyD^G#hBY19AP@G4!)bnl}u+Ey{@E`Pq*k zFRH(WGc-l%3@I65gst^sRdeHbF`dsO=H5sN-^>Qu%}qlH_5$u!`j|iT3vCLViwS(3 zn-h}8HTJFhS0hbaVDI`b3ADKvdhw;4lrP$ABGIl9b+Or5?Z|h~%{5Y%U=taF|kb41(LIa80*O_EvmnHHY#N)@ut23&Hhm(?EW!eX4K%k(8# zrt4&C!ftHb537H8-dVf^YXK&vy9m%nirFMu#|d3?9=x`%ef)zzj{+6Pa@J}1gTn|8pOxcvLG#MXqQHKO^^d1g;Vl-6D5PkL0jl?(qy7OX4wmOIg~fn< z6FLI)j(+s*eM92ei;llcNh;5bWkhEIy!E$`R>aDJ6X5|QrQeMjU&{2&uuQJXneM@d zW1#qXkXz(Y>U7O(Wwk|Tapz<4`dX>PD{3+v>>+0MmyUltNM7qm$JTbHTi+$*U}Wt9 zO!u>8*+pT-UjgZy$!J^uRU)$zlyd%leC)tQXfM%y`gs9QYt~^OXlt4e2w0!dyV+zY zvyvG1gdh?$tYPeX%?ayiW>#+5Na@;F*5?(sE^@Q!#0YNIRvsG(-`#qP`wBrA)4%yT zCo;GSNvwlyD)Tn!Y`Eq$=|^oiHS8}yl&o5Aduwy8&z9qDe@AVFyj!qXAUnc-1>KM1 zj@BJV9`S<4F(25>5Su#(`yUILeJ65`s4#KQa_!6V?x|;I+h#a;?IZ`bN3T4xK?K1r-QI1)^YoXHBRq~V$ zu=QB0gO?7asiw`k_qH?dxfgQYh7>;cxq`^0Ar6yC7p*fAc@Bm$ThKR)#OT`gL1$-U9?J*-{zK1laz z9Iw8;x_;%#K={r5NmxgymH5qA+7PA%^fHxQSHFyOly&{83$Pq<&M%BLQFTmsQ=UfZ z)*KDWp-YlJ{r!3gZ0(f%y1KSKkZ@vNzMNlVB>1>_$;y7{p<^pq68q!d*d%~MlNXW1 z>-gk*dcWg?Yh+zJ$V}H0W6j}nXDugJJ!R~(a+UoErTVMifHJXY?OHL%iAM4A1u|(^;G^~3n}Qj%aG<&kU+zOq zT@~g#$!4ylSB+OBY_gEZo4nJ8RO?MhqDB1|Xe~iXo0us+4m|F7_&QA-kP3y(Xg`&{ z+oV;RcMx!_k#BMsA~Gl$iQt+Q$&=dvkB$m*ArOLH#!+ig%-^~o4{CTZ{g@rtGGh=q zg=zPP_>{ZW%u& zp`x5V+DbrLxAQ7bQ)y4xSd{{Y`&_D{h|xG=Cc~btae^;u^HNy9YjC3Yn@p~uW(;J| zm!N@>#3FVr$MHX@^_Jy%9ixIt>sQ=1aylZYT(esONb4qwD*7voX+vJ?Y~xSckng3+ z)3xt}*2%K37L~0lm|Ikg*8=G|em2o=BBi><16#*mTip?E^!N_rNk6sJS9Dyt!!#>A z=&wL}bJ26|wzhoL4!J_cJj>kre$3i)&PiM!mJ@L`G-|ZR-*Aq>M(bm4InYP+Aa>z` zTjdp_Lv6-mG;1`Q`o_wj0XySOCN01|MJ2*BNlXrmT&B(Kig|2R_<{3)E51nD(}mHH zc0h{tf*NH~1XCbOoOgrZTWfxNSo}tiHYPZ*acUx{748`*lg-OD_AX0^Q7l%RIUOXe z0kQ?|mqf$fLnmsOJ>tv_A8bJMuqdqlGs!W4J}f62hhIBAB;LDsM}p zB!%Zq!)^8(4>%nJSlf3gW^$-vrIwsuM>gS|H$2jP@yguUYq6(<91?sQQNnx?R!qnF zUr;8+UHSg~LOP2`oAs#@VOZHzd1+5%W8B+x;{#NXW&`;~#%GuDX!Dz-4_}E=Wd{D6 z548(Rwss^}RA(MEK0W79Yk}gL=+G1{=pdWU^V4+?4;=F&frx+S3)D(r3gjEP7Dp1h zEU!Pw>p}c;p;x%~|NcmR`SsZV4hiP3h{s`6&VNs1B^OL9M1Gug(m5{$CcEdk&z-4Ex&`hPMTM(R z?tbgmD8l2;hHsq4oOKgLd6M+84 zg1B}(v}F}=75?N|cG-qa++5J>ITk7=d&fp7e4R7qoK+cMEkkmic^5;d*r`s_-$tm~ zTf!m<7zB7koVRp&swQ8dy1tF@>L+oXV1xVAf!*~9=2z%Dplp!>u*84jg0Hr++nlDG?HnY9P>XbFw5)h_Y^D}5yH9h!At@W-_OX@ns!uJ} z3^kI{#T<40?owtRuKn{CelD^AC5lA>)1nx4zN)J3lRfzCz$|)6wPur{AEpxJ6q6uo zQm(Ax)2E{L88J6hmMI|-K4b608p~*-4hR##XUjp&PP!TsJ%eK__$5z2Nz7qf$EYr= z{N^7Cw~5eOHv7Q{wlVuLYFeioU2J;%1Pa< z!zWt6jH#kF*i6`bwH=r(U36b}O+Fyxk;YrUFf@Q(6OA%pEXm#fAXyPAbEiEoEX#jq z8NmV$+#!SBth`Q;CHD3F479-Dxx{dN>+d9t)iGT2Js;->`eGCX&9<$l(E=_giJf|1 z7yC}oN44*gUQSt#6br|u6Ut^SxdrkAIGR{?z|(E}dL-l6LpR_#`qmoJU^&h{scLDp zICigtJ&k*>{{!m*=4r8c!QJ^?H;$P>zaD!O7cxj*fM%0iWH>hNcKi$mdg>x9F2a;r z2}w1uL?N%hPum(z%M>;(ii4-^(IkInLOA^KO7QS$>rh?QBS`cgPcO1m9@#5nI+p=g zc$j}b&p+Pg35vG`vxkPbz*CQA4EDdFVtI$e%)M;#5==C%l5L1AQYs>g{E)0x$fvuN zX#bpH--JZvll?Ts%I)N25YXf@zMapM{LyYwt9o4j(AWqLPZ_H?$6Xmz6Hb$#a2w#*op|JXVeF0P=@?c?463*0id>}(z4c5e z*p}Tt)eQZ%L<77%MYTmbbzC>vy}ytYUAEWvCS*2YwGgP`l9$M=wE32zX22^KswnAda zH>%m(%75;&n&x~+)lMK9KqAWu1ovAKvGw^Nlzx+t)pE9PaPqT96on?WmXXKRN9*Wx z3$CAAlsz!99epIv6V&z(<@L;u_yT#SkEAcr{%|&W8O7*d#L28MH>~%(iw0Vby|>8| zR8p*|&X+`Duy`-R?uO5}Y~p>^nYhdpH=K%4xA}?q%`Il8XJFXPC`=JjGh^+W@Ffc*WE<)62wK7UdBc(V60{ytuOxIz>3z+1q6SscEdM-wULmih z{V4H;0Ky?ne`=_xo6y;-ndk+co;ZaaP%Yq8&_I;8d>1$K@n|ebeQ)}GSHAz#66msj z#DrQYZ8KJNd+V4?-}(Dn1!aVJSIskLW&TpVqJj_odgGc^P-!q-cnZj6p`L%~_o^f9k3`vo1OE$QZY_u~h(A8Tbw~0BT zhEpQ@-x6^?$8CdS*UBtLmEPKEw~yy#0MGNDR*BO>9c`;V2=U0D8<}$^|9LW?Skuw>7eO^;*K;;DLqZeEE!`d(hbjR#5zw1RfHGh(k=9c`8a3k zqb}?Sj1m<|7;#p>zQzingOPJLNbsuoAZaticN-q(HO4k*y*FKy0i;iXrsE#GYZrl& z&W5^hDH^)b_Q#D*^;4*-z4HwP*>B#m@-5LIHn)+!3^9Y0dYzQUD*0sV{eBX~HP6Ji z*DduP>Fhk3snSS3+NIMRTDseeQO?hM=`LBVWsyncqYBs|K*TO=JzvZ%1;)!nLcIe7 z1=SdCqSX94qs85QdP4#blWj^umuyh;eGQ2xlP1lBeM~I}8idSzGcpUc4TouEYSJ|S zvY7F!LnJQ&5uusRexk7l*kLh>xa_{er?yWtYFU5EYemO=CAz05tnuC}D3vkHWn@$} zuT!yoAME`d|KvH|bk}cVweN@~Ts(F#6~aSQR23^Ew^!U@ZQ~Vrr|_ODxvkti4#V6e zQQCz#oJ|IQ-Z7^J6QqC{f$lahK0bcNb`jkpuZ%xGr*i}s#7?Wa7@;`{-FHB>c7e{{ z0CH}(L9UGR>>7qF*Ep=peF;)QJ(2rUkH$fghFM!4O%|XfS<<#8DJ$Nh+a2(Bm&%LI zksD;!O@!nrIOp$)sUgU(h*r&Nj#k+$&>wiT2$tpoyYnhLANf(UStT27%^1s4-dL2y zy|mG`Ia*#*{Qd7pf6+7h8NAZf%tywZd01r2Xk9nYF@gEqU|ox-c?}1ooxsn8hfK`g?z;Fc)mg z<$4gHKv3sSDKcg;=F@NJ1AJ=P#ghMcv0Xa?mQq{JOejEmX-#^JrEgkII=+t0Wv$E6 z)3vDH%4!GfAr}53DmWlUSNg%1%9!CvqWgR_zaey&Mp*4UpTo8iazr$~O>}kU$zQlR zC638x!*YJJW^42UC&0VY-8Js+@Pzd2(`&C~=fSdyjwK!VRUmBD{u{V*ZC=iE)WHr* zEK-f+3HvQc}}xV$X%qn z9@{rgNz?c{8XM=E3;LYcUGs0uFD79OFEwAXl8DQOKZCSO=S+u`iaRWx4NELXixYJSjuejl{ zpK~x?_uZR>Di|~}X~9ilB!BE|AB*RUjX-TJz%F0Wgk(n{e4aw}u+j8NM5s6@V`Uk2 z1=;c}mETq~*f6mYX^q>I?Q?3%6EMi2a;37U+?U-F=>7ecy8O8bi|ae*G{OuwgdreW z4>>n}xtM$LQ)jm)v;>ZP*}91Dwdva+LFvpr$?X^&tHp12Z6L7K;itiY3BHKYERnn2 zLR*v;qgrH@-R9*LE8(4u$oKVcpJI4|{E~}C;HLKXRu``iDt3Go7!f4Ow&Xb6e_fr3 zsKQ>#MRt-jJ!T}z$07WbbwJdPvWKUBJ1?7)q(65SNsUOE@)mhwZ1UhL8d*&*x#!ET zcnpy0_E69(JCq72$t=!F^+*MdtEUWOz$~anP9|{dokl@p$$i1bLYMKqGLrrGrp(Yjh?K{;z zO{R47@gicdOc;Npp6&Eq&B&YcUOv z17kQ8YzP|rDrgrAGML^jNE%VB<5fK8O#;tVvRdS@*EMrAw+@U&VDDQgn&lKa>eT5@ zhx&|J`Q8L>aUAoeBa`d!4l?teQ+s*ltf5^kzGHhTkqGENf5lT)?iaUTFeU7K*3>KUAUt1lOYhKJ-Tsm+)(=b6^ZsRm z^alCbU8K8_1i$wv)sap_W9;Ra6jXmfVYNEci2eXTTDJSBC@ zW+Kq|$LRykAJJPZxZkdU>dXH;t)7-}{KG<6KrqoxeCqOJB#y#6VW9r8eZRb-(Qc8w zP_mDC_r=z{{!52CiW$^+oU4pzp7JI8Xop~gmV4IOIg4Q6eLwm)Rm+5VVz@Eh*!a$D zBs(yM6z^FqrrWqj=uSA=%@%6_A8lWfB&o=$Brzal0aLHGf9Y*sR7-|92zWH$wv`ny zvGpU*+v;wY5+x@$5}qkopjwsvyn|y-Eb+-5`8<5tFb712E6v{~mP3*5)9Ck3G}qSQ z^}Hs>ryqJ0=WoD{6lpiTZvUkhHAgDDP;2eV?tx)Ne~(iC?_lS+G>KLEfV+1Y+W0j;&hY5nw%%B9=_O!VlwZxx z;SnTn+)^mvvk@fGwV?MAHDqsrkekCo>b|@hBi4>Zj}J?ijj2%P3gc8NqbWkQd4g?! z#ubUj5n)1QnUN+`ns1pD(C;|zs(2ua!_Z;X#%iLJfFp$DxNN4tNQ_;4o)i!9zNz;cTYzN0; za$xCHfC=ScS@6`%c&GMwr66s#hFCkn_&v7^U>o3ZYPra zko(%OosuwbwgxvHkR3ErKi6iMRW(2smM&is5Rd!ceELt9o||gsfNmT%3IEIt0b!c; zheb6asj%cPDt(FA;t5`oR&9e@0 zj(s@mJ!iGN(}sfX#kxKX@ruK-R}-&r4Juzh4cKi(8RM9V2HP2Ou*GT_@dxy*0)2RQ zfUV3NjE~!Nf6~*Fpd6J?e84rzID!0+!7CD+GzSd)Yu*f*5^Mec+%S6?u>hwjfDNWq zci-6-ew4s>?S1{m`g+BKXGhCR`kL8!sP2&<*DP7%yV6#Srm33|N4oT4kJ6)$;4P%b(SuX+pTDL+dgg?7aSh zRBmX?xm2E7;me#?yP^U4Ru?8(syQl+Q)!yX&9Oa}a+m<0m;&oF@njtFI$Ti9h|(wd zM@|gLQW&hq9I|Owp;1;g6`Sl;U7k{paF@DQukfthb2F|fKU1!ekryG8o2O`bR3ltc zOx{xcM=cG?QcV&;I}}h^iigiMPQ@A(5lF`x6@8#+Iydm{n581@Eh?Etoq3;|InBUW z=2oPdtcMgqW+P|yTtzi@9O#enQzf>xF}W9W8CU7dputvBBZUHt(e1?J^ z+(mmtV8Snm@jNwBQ^EUDgI;?MiPFMB*QTt%LSnk+*|&qlpw_^?rCg_5+?PjT`` zk#n7ZYSjyUY6(&u3`_kl4wOLNBWPmCyeCNHQG1Fb~bkpk4bMF{Q zyd0+WF+Cc?EQ|%aPIV#pd4K}^35?FS8mx=XtLkC?`M>k z2SCI@QuQ5d!uu!g;=M+Gdku*WeW(`FU&|@$nfx5%&Jl2a|Mlwn>WYBk@3^B^R0M9+ zW$Qq$P>)Y(raR#3wuaqleB*0Pn@P={Tecc-NnoLW7VS;W!kDt$0IQB%ognc3k-UnT zCEKDqYfuMP9A^Dpa<_6i`v9;Q0m1tfg_1aP+8TYLLHP{p^v6|HwQC3U#Er!{H3wB%4pAvC1n-v_t%W>I7caX;-rN?Gabn z(G6CxbEz6W3{CQm6^#S*!7J+G_m{ZcuuO-UOP`cA~X84wis0P>o~MHlpm^p?$u~HYR6^hmfOxw-+0P4m5|K+)DI|mT6&^G zt@^czTD;qe)@|(QH@Y;7N2I3gv2tiQ$ma4TnBV|w=oL8oRGMXhP>l)9ev%Hn6JP0% z|K($T$jI=bETus8o<+ExSQDdbvp)Fke5~%^K?G60G4UeB;J{PiU;JtQ?na zoX^A*_ai>h$vETp$n5ACo0h}2(f*J^UEr7g^I4_uE>#LgbYF^Rn_5gZ|8zrq`sVRf*#L9$Q#VmaudP zxsfksE>`*lx>{D6axYbT$?_JjCTqv%?fr*YC+Q$CAdP zHYMDdgTQ=lt?MbYx@PukruF*R zR1Q#=<8wEi)@^9&l_okQXMQbN1ycRUyVn)&HMoQ-mB4u%YA7HIj+l5cmUpu=H)% z&szX)|Ajzk_X&%RTLeDei9Fw2PyM$4a-x%FgYMBPMKaq@)GI6zt%&yVca|?*v%@uc%TUz|zsx6*|6=2-DV zi1K!f?^Ach#Kvx1C%|kLxO?dsAJ{gD3WhC4D73foXlS=qi3wTQ89F2TxmB2oAG==DzCguE7b+HPt(T7#}o0Aa7#Hj>lniauP<+GDj z4LMoYwcU3q4UJC2YDKy&oMvc>B8Sg(3wBnQw<`o;l%<+nS^YoPN8J=Co#DztYsl4# z_+~7_d6>5Hc9v11M3?=hNfbEo1lkS2qtr!5VGNO6^dOtV-=;P{B)ornh@@YZcQ`8|j%{IC8DUBFShFeSZ3B4~zv2Vi3YEO~!*`ZqvCc38X;bJYTWgpY&-cNB zST2o5;&3?S85g!|#5|BcZ;pzc4W}i}zow)f5C}-=eK5Xzz%Egu1i7ldM*9n^(K&Sc%$~P z7pH)N^9lR?o4xiZ$xuk05Oxr_>eKL zcxCkQ%G<+(rVL%m2=WIY07iKI$M>ToMV#UD0%eb&*&6b;>}E#0tmRYV!B#jnAiQ<3 zHpMb_8Ky24G+#?q@Q;PiOnHoKdc2dQvtQ>ycgTN<`4WJ7%QEc>TqpQsd=Bfr4lDQ% z9XvhxtBX7ad74f-B8+?@sZEUp%?LX+^zfCY#c*@r%<9%?jN;jT^CNlEQpe<6u4 zA;ylIwhuR_(3gQJ!tszLE#iU~3J%Cr!mCCy%gAQK=%Pe4@Bco(Q^El9uX|d$aaZ|2 zM-wP>eR*$3Hj|3<1MSWfxLLbnm5@2b(KPKuobrFzA61xsxJCS`=&a_%OBW zZ}>0bd91f0iz3%egql7_c$owLRAqhdEx=T#vuTG&huI&8F+Kcxe4Vd`k971W8%RU5s`FJ{D!W2+0gV>1UYi7Yw;^;le9Y^UK<1A)db#X%ml`<_#5#a~_Ux%R?(m zGhxId1WCt^dwy!#YK;u8H((uNE+cc=P^lK&VBl1AvSCQ+lwJCm{oT)Me72%xy$^RU zE}&hzWkpCoUwg(!kqYWBGEoawC(dp$+D9}=$t8V{E$KhZ-x>YX78dvm&C#yyZbe(`m z%Klkz>+ufKGynWB`Mi7D=8Byx|KbV1h;j6lh<6_1c7eU^ckY;*4h8s}%I(9>!4vq{ z1jvM>zW{ChPPXhfRv9o!!4Z&^X#(zkJV5b+g1%i{s8`&O%st(t@L-PjH!I+rDnSQ) zV+Y7R)ks0Y4z%PjFR?520TQ3%GGGvS09K?oCx^qbU&sGIrJ5=PmXAXVpQl-Tg1S$w zPE=JGaq$MmDPG~<)m78p*(M!Lj-)WgG%-jrxBjladeNOE$kkeP`xdX2B=`A^m}Eu% zKhqr-G8Obd);If7+5i05rAgKF@VMTu8C8wffgcgNUN-9v*&!-gd$FY#X2Eh-#M6jG z;$b2YVyS4Ea6$hx*&o@_`qhrm0ISQwF$uOIwnvEwtbsO)299SA`YJoV0sqhBy*ei8 zrh_<`=q<6GXz{FebbYEWNx0NE5wtnhLnz^Rn_olN3F@;zbY`k_`nX>UD+UWoxX=ar zKb!|+Fy?S3?U*yXp>86OIP-(VYmREMK+2zhhUjsxUA86!%E!yA`zGtDByZoTjl^7h zmv`!P%Wd3C%;~>%TKzs#_1*I3U`1=*x;a9$93M+bn3c6>&Wq4Z>9v@hUIs@_HagX% zbJpdUvX^;P)4!7R+y_bLJoeD2OXyqpN@tWG8&~hP`?hYX391BX@LdBnpT4lW1U|&K zwrqC>!v8+U2-Hd+KaVFK<1;8Us62(aZGTA9-VG-8*G4K=^D6*%T|Q>;9*ACQgXu5I z<-6+Z;XqrW7+StYa?XkLZbAdEHp%+x$S=dMzm6(H=vM0z`?jp|;1qT+K>W+W2=pN` z8D7Wy$%7EN0ZNf$fgFkgo5{LA%Kk=tf|3Bja08O{znWx$8r1Hug3S|9NU7Vk>@u#FQ zvu59p36-x^gR{uw!s|F#l{#PTU;?5tyPB(yf242`2;wnL1HFe;BG0#zmYq6|znuI=yqik@^4Gc}GcrEqIRkgsb^a09Q}|hE7ifp@3H`BD8+fqvt;R zg@Y&*6f64-z-P917kiUNL*WGj3{N>68+2VZ*gnl(T8Qw%bhJOD(SbRUbgr^KPB|1m$S93{QtX5Ownr(!gtX>U`a?A&p=^UTn_79(Vq#2RE*q!1&m zP<^s{Zv0fxecy!~U8D^~im}LxK>cQ#{eJYcj?<;+E)059Au>ng7f;(#=PzihOs+Wb$CiY&hFa!Kh^XZU7!(b0*Fi@# zCFI$;FPQC7t>stdt}^ZO`p}m3gt%<3i1x}sj#CAzsiq}%;rY?l;jP4WJjtQ?;CTgk z0$8ZynqTxNln)vAU>I8>(U_a6q0UI77`;L?B^lo0Hon4{iq^iAF@8i>LTRDo(S1p* zquZA867Cam`6iXijHFH05NVzGB+8G+#*ey--pyUvQT$uKs-3l(7bLvvWRAnTz;DoX z;H6Eh*Du6ix_5+5*y$yqjXxP6+gs#Bvh8te@#o@z6eNOE*-W2sTIX6-YImS zvAEXfkWz}Cs-!lowm15KXl9i%cJE7c*pE&xbMblgX5K9xcAkqL5HU{% z3F%M};=tb7TD-<@1$>?{AQdLw1bkCi2cW`nauI&yC>a9u@-8#|@69C!2Ho3UT#T`T z(tlEW0jRHsn6PBDbmz(%!%*rXapfsl$c+0of+KtZi9q)|U@I#T|C!-{F3LQG^I1>9 zXw^WgF3e?^Vc9OKRi+-YCm=6h+lNZLLziqvf~6qX$8{gwru#tX_V$AkU4ZIcBL7yd zPjqe<_?rY=4xr-75OK^=4SP>|&^V*SLG{k!_Z8{@_lZWnx$n~-C1(LX%$XQZ8y)Wa zUZdu6Z9^TCVm>}}+K9GQ>vxD|W|OYbQR^Ja&sjL^IR0`cLRTy8n+2qd@$vfn83jVyl zgiGJA5{@A>D)yWr61w|pEFZT@+vL-<;jX`1*)YMb^^sAl@&n7>VW+Je(&o?vW!}%* z9`RQcGU!-ieS(uD3g3a?<6!&Kc8}~F;`D5KhSyEUrah+wJ%zAv^*`u?Hu1+~ScejijZ~ zroCXF&nK(_-{&Q+75bl+tc4zL9vp32vOP4q4Ad5EGp_^Pb=2S}m=w*}QpKpzC7q0{ zNUVPSHiIUOxUrkCS-q8Oljm4=T`!&GfmBe_wlrtg=A^!BoKsV5dAejX^gHOX?Qkpd zPotn6s(P(G$TD^>sV$$A{sa4~J@ubFu(qMSh*|j+)J@->Z%#8n|L(`6!~7cVHRHv; zEmh7#UO7|bxWH;8WlFH9#oCO@iF{1iE&u-CXEkLqdmcj?hqV|UmTBT^q3;$F%&6uT z8L!Rv$p$&|_>7S?%_H-}~E>VqJ0LzluZ1|tgAC~TSdwVdgG z!o8&-UZKH>YN>1&>xKqPwn=hFpdn=5c@uT|78t}%y%ZXMCG{R!Uh@T`yZ~#EmYz#y ziSHjEr-y*0qu>jgu+GaCru)2jl*YYd&2H6|&GPNC0(uBr6LwhPuJDB<0>O@4OVYf9up?%ke!Mh60JOaYvXX zlAJBGSNBgnfyL=E*0^pSPsK2_nNF}DVbpzyvwEY2D-RG4@!!vD)i!PPY&*`BOmEW-9H+8L_IksnpzSoQW~7(Lq|dGKIHlX z9(OmIW8y=$X{Bl`sp}Y`n+JmQ$k6CTv0l!8Gcl45NI3;i^s%+UsG+K~d{ zlT+Us%e)JfFM~>Eum2kAc`k;knT2lhc|ZHa%{iY4Yo(~=eNftL3nH)B?K(gQl&hW= zI>kbFLuR&|8N@h&ZA}=*>_-ManZDSG1K#En2zAd*N_FQMkLO{s?FQ%RUk}?EzjyOz zl?q>e;88c#?SsP3i45s00e%EpqCZY81W3~T*A z3XfGV5J&V{ATfI*qwd|J0}YAoM&c5!Fq34UERNFn@m&&Op=httfpI0NVNXFSO3u z73b8uC?abWwI8BEKvR*$rX>ZQn{E9%TzXNxA2n%JJEj~BT$R?W3$D_es@#{L+J(#; zBj+hnPoC%Pk#b^zd=l@iVyK62XdF()KAUI)+9H!@uOaw&!Z558f>( zHI-kCicCW0T137-HJXAE@fjImY?`1E!Sb4N(Z~kMy347!X!LKtHXaop9Q3#^%In*+ zOK&l0;Jl-ATKWky}YDZ7EY*q=96w$+dMEQ;2}r&C8gs8>o?b>xa={_ ziwB=3A4dG`-@E-Xx}R{K=tK*W*0=7l=h!jmd2uGaY*f*MZ4!4&TY6Sn!@yFUe#Q3j zfxlb1BfJw>q0$BRcC#j6XLF@GvyN^5v&~_U`eUhQDw{Np9ncxZH>fqw8vtnYqV-i| zLC1eEU(|A(^^jYA$8mQ1#eweseQ1lMdj|6SEbuM zlZO^iX|-ttji`M4U7e)kr{i4&hKcLMO86c@{_9`h5iH#*F3bFES>|ry^P_Rswa|&` z@dmR8j1#ERBJaB60rcYDNS)@IwH5dsg5LWec%NrGFGU5!M!!{+BW7e>c z&eO+iw#5e5*Oao+mB?rD^sVCmWQu*?WTtK3qhMlRUrzWDg5Yyfwbh^QV+s_xcdJ7l z_pbNLQaN3>ujH{yiRFsaG-JOocBI0rsak?(=OVEyl0&NZ=N$N)T&fG{>1}B_42r*0%4F$I@qeMd*&~19QM=Dk=p<-GB^~=lsqehF5@c(83cxEgKt4cJLC$yIdGzeNW zkmMuRKZ=!=7uWrcm3ljJNgD%sv({0_owKsQP6eCMdrcb_rb9yuPh(b1PMPTla@jIA4<`IL*WEBb^QotzXjHo_ zf&Xl@)tVZofN||q@uOt;I%gDCM;Yd%_P+Kk57B{RKxT)K=?;@UaZO1IMQ9>$BjZGGi@F+U;d(CCXzjVi`tl z7DzJv!Cp?s3H#aQ)cdEJ3E>^0qs~zlr_=34t&XbW9FlVkxJjp#Aae;CY2nztEZjri zPdkX)rUI-S&umuEwf9&2_qZU3#>*vcXNQBmPB2?fRI7-^2$saFGkxo;u4`MMS_~{j zN3{=J9y>EczY}4GB>AP9z4g0F9wu=~zRfYalc(r8qPzt-XZF97D71Zg^SYBVlCv#2j@bQs+Y}}lQeu?NqM3z0%mF6Fqp^MzH%wSGOpj48h+H$WC&?j(O zO%RB6QzV^vPNc#vf(~j23sJwMA>I{0|M?xB_A2Nn%wOtPO?37D_<8c_2wn8` zTp3EkPI4p{R;m&J=WC(MW3AsG0zjcO;!HZE8D;=!n8En)(#?&OHr<(A_P$O$XaNrQ z&L%~ExdDm#ZoF>Ah@Q8yV&mHP$TF)kxXu+tb-IA5p8zf`nl{TR__%Z9o%%8ejaT$V zs;2L6p{*<{#_Fqkw2)oKZ%z*PvG<}_>sc@J z{Qs%YJj(YK0q`n-vX{ZfM1Ya)E|H$)#yja4B+=va2(sYq0GN?P48!DlQXX4ogR zqPM5u>Rogm;8u9IPe@;`G^a|UKo*R z2V`>M?48CDk)g6qH$e=oD)XHZJOP^J8=6?W#b$P#G?`$fOST6LGO;NLDE*3my~>(- zc$#r$da@+sj6_bYSSq?vjFt1HHMAcK1int#pl!@(L?a`NmLgNwYO*I`d7 zHEmQfbw0OVK;*iXdaHBHhDOtIovn1)Pr=|^@;cA2b)8W^i(w|ej?Z3{5rWRk2oLIH zNaxR1HEA3ywh_QC^@%j)wkk`C2UBlWZ@roE9XnK7bAvNX+PEQADSML!(gY#ECS|OmD%CFyI{LmdP636UMD9 zV3QA&|H-ZKJ^Q9GVpBp|5rx*nDaV%KxpffgTW~_gY{u+=hekI@tKgi7gp~Ms9D4s1 zKP?~`F>|npRwycA#`Ibt^M`yKicZOFstOpdH!gSWunZ)PXtSIv*K9u;K2@>DxhB)or7Wmq z*tM*_xvmDQ zg96g$1#}91`=%7t_@%mS-S;OTs&1^EWd z5S3Wh*p5HIz;LXUWRssa;JRaN4w!a1p7HkY$`cp$zdM&d^Ba--e2xkkJ{6R*DF$Np ztNjXnN9NFv8j&#eDsGJ@u``W-LP*B_HXZZ|$7*Da6l1m3mnSwYx*3c#NdoZMc7FR% z49F>@r_nR|$WPZ#pTS+GfkAz`_cn*oM@?rD)C2}+AuJu6Z}ggM^WC$XVth9yrq$&v zHY^*kzwRIDm;JGJ0Gcb;^{7%j^F%Yx7J}`GphzA zNX2c6$Mo8Y2CNS9eWR(R)hb3E+BHy@_g!0xH5jWZj@_WPZIQO+eo-cqy%DJO z-M1xy_5ImNHF#aSwMCssQ`U@3>)0FR z0fU)ucEM{6jykW{cSOZZhbO)TdU<#_{J8Faue?huavR}&uVn-HaAraf-z$1)8#uS& zPb%l!(Myn>Ik1zS37&90u0N#Y9JY4@S+@P5mM%qrvdir~g!J5{I45-j|6i>4XUq1F zjvn9eq<)%kq!q@4q5bfs)6{Hr2m>z(|x$K)%^U5Yu2RYmuAkqgU zUJYiy_2B$k?oJ8GO_y}TraPs(8>FPWTcumN zL%O^3y|~YL?#J_fRL9sK9P3)^A9MaD2LLVmqWJy0hG>as>*GnAGeBS=nEUPp?wtC< zXYu-ctM8q|pSRI??aK$EtswFDIHd*OIFP&2^*0Jh>z9z+&mrn`B_a+Mv%nRej-KDM*tlb4OwE$v$EimxEIET}D25Zy0|KlCo8JRBu zPO#p07e3X(*+R*Dld~n4L&jVo;c^_xEtbo5#T}9eAIjo)@g!ucbJn|yG zP`mi>$z8|J%Z8_Nv$9M&@5$Zf^68-KwNIe_ zjU>NV0fx^5s0=x&uW@#X*X0OXf9L7eEZUL~+M1rpP8}&_eb93hKh!`SKL)^lkMPfC z?V>BvnJ~}}Cn|B(XgvyFvzk$)X#rK>hHtw>f!MB-41ZzwAqL2OSypu=Z3ua&Ut9Iu zk6t=aJwR7y0hw+)3Qsd>Dm8(5PY~rpVT8$pcofE*WIYo6vG?m2>m6Q|CKX>(k*~sS8czw^7>Jzrei>Ga7bu(fHhn! zu{4u>YPmmZT@#2xlJ&h|yBtx|wyOZjOl@u3mcqf|yL`VO(#F$R@9|iqc+hHkg7Xzg z>K~L(x%!!o*4x=u)*~3PVm+$g?%K|NBgr4N0tR@DldBKBd!&I_+zBLwm1Ot~BI)i9 zS@FU6@`1Z7r#zCEyRW)UYu7kI$6uYDK}q#uNl)<`rXQ)3KUNi(cKqlZnep>tw0vwe z9YbHKF;`TeT9Ij`qE#}0Z)Er-Z_F^~xb;|>7#!X$E;C%3NN34~K4aOF-+f?})K{NU zYGxmoynF>$(fYSZxlLVnvkhQcYgb^Jes-$6>|j-IR{3SHc?ARzL-tQlDc{`)kkU@Fs>9)F0ee+VDcl z4ym$t!Jy*1H z6ax2KDjy#{UP{n^nHd?nCj5^Rjih6TcZg(prkWFAA1qgF)cEA=p$scn49?dAPD z&t>`0Blo3Q2Gn(-yHiwZmOMU%3g&%7Rbm@GO~(}uP2(D zE`px~)jfaVsb9Y_NyuvMb^G8f?cBNvA{pvlVq;B)pql=F{GayuH_cr{l(~}Le}z4O z9yTHXA{?XaeGQ@>5R+bJ?>``160z}(pMPp?t*Wf5Q_FF8jN|@p@nJm>Wwsf-899ky zlIZ;+VX-%?D9tPSv{1@O!eS`*mB|tLH&i5PM7cv^#yY5AA_hW6vTw*%O(Z#@sgeqFG5@2rfWRm7r-6 zfc2R{b*XUCMr1V+p_&_K=jShGJq|?&>FDc8Rx_t}DXV^I+o!nAL+AYypJg>D=r(pi(ApVU`Wx4~FLU^EGz>nzbD zIQeikVk{+jEJ>>)y=Enu_wj0K26s=L+<~1?qIGYBWPgmnE`B*4z%ZAN>N|d`-~Xb; z;=@*P(NA*$)jLu{jI9-xr>5NywmEId{@(w}VIY(YLcy(ry;;$9*}Vvlx-b1)+-JcJ zMFVbUB+aM~MLkR-Q6xF`sP#g0>6E)Ao)`*MlNH;Kyas}{PL;`Odq^*ei0c=s=U2YC z-IT4QA^cFnYraViUw74}wM#$zT>2*7F^${8SZ5iKqhUjc+P%!K%c>OHM2yI zC$<$0a}QN5vw}u1x0#Nk^98Mz=6TYXDM>pLh4>vDycd69f%I4X%B7R!FRu>@?6c;y z5lcgCC2Tw;_m08S^yJsms>?sK_6p+Z)WZvDPthO9XakLc(IQonI-(^vWjseM_Igr? z3ZY%?%tgwIN}DEhTuT?zVN5&Spc3{i&U~_G&L4iBzooHOwjR(CGF*~j zynZfDis~0b-I{v>{E3tl^*{gENC26rOe5J?Na#N=>Mtsa$5tFF0vR|7oAPxHfR&77 z;mY(r->$7~c;r$nfzUl>Av>%{Vp?5&1jenbgg-$ORMR!(eqRB7TEKc_p;@~^>1Eu) zI$4&c!Qlxm7xj;L%13=UQ12>5@mhzLLl?MS5ByJeNQvul zAyWgxYvt@3^8J2F!jEPXz|t_~G)S4Ep{G;Vaocg)fa{P*Nn(Y{%}YEDDv8aLJ2n+t zkr!x~Odf)=+7ca|K$E}XJ?L#IZC1AWqHUDHWm&MGMsI8B^(?6}X%--DZC6(_&aR)_U`SF=ofoh}AM#-y(_TbUXY)Ln90XvOR}zbSsvm!#r?r%D24y zCK;?{X<)~#jWK;t5Z!~-!oz4tc*whv3=Wkl;_Gl zJ=523Hc7r@L5*4p8yzcdI_S=N*7hKL5ZvqKbZ!uBRumeE=6CAR5?tEwa6j&AySZsJ zyc)Bzh{C!BNIa{(n1KW(4%ZW%Z9bZ{DFoqi2rJp2_)xQ&#_-DM4nNW_Qt;_5INvYr zJO#C0ua35!l`c7V>!O%HQ&f*nZ5hw?VaSk1u`(`r=jy$-0tbJkP}?qJ8Wu;dz;iZo z4y;ej$9v=YVUDGrxD@uX;8ef%^KSO5ELKHwUuz3#cnx-WsrV*Fg5`Kx(I`d+$Fz(U zRQ1r~CT+a?3?n}PK zob`y<>(3w`^4)d6<-jbXJ}IPf@Ec5PRDkBxFF*U$>y6Y?o0{e(y-ox*n+S$V;;@rK za3B%V=dxfXuo3@2>SxguL(nz&M8v+-7ufP8=N(J_n$L&q0jjX}$Qb}_UX)?mI(SCv zvk$Z^lH~Pxfx7#*`_=@*e^&qdZ5$23!$8@q6R-Sf`tRS3D8ncge`olZyC<3!0A-;a zj&+fzK{jr{qi($NhUdF!>ay8xQLrw4gB2xzRN?Z}?peF~5En8k#MJ*0H2^-yX$z+a z2XU7T3Q|4s1LwO1N-&B8;>W;q@vj2{m=PK+d5ThL2eV|&B;Cl%CMkNBo6(fhLeEn| z`#@lO9WN<_k|JvejhHv#_{|n>Koot>KE2EZ5U~eZ<3D6L+=$S>K<{{cKE*lt=#2~s z7b=8V+qvV1aIHF2P@t@2YFUz790|f|z*0_5p(ESO69v;x7_0TW{&uL0W1oq{a4f<@ zo2p8&SZ#;JU*o45%U6@d0IQTGpsmbW?LWQhRmh&|l)+v6D81n~LED^E4S-eWuo$PY z?_D^glOYHXmx(IQeIN0Q8$=#Ga}a3-b`4CH6a4;IC8*$<wM0s55~o)%tr| zU61`jNiR0eScI2KgOOMZ^-jmEyXfY35-Fh37T2* z%PuXw}+=JlUl}nxVIJM-o;Ott46II;LhL36(*Q#04F3rx)Un;+u z0h9^_;33m!c(9&Ua*<`!mdZI&H|GXYRBZt+_xh9?Hz1#GcYg%W#N- z-RP9lH0r6UM}Zq5fm8k!;9xES5FLh2DlnyYw$j)j#w^cle*4~nmXr=(-}Q;-Nli^~ z^GD{(#oeMRlUYCAD-!Q(j#ZOP$5lvM1f;P@=vsyH5tT1I62P*q>Tjg%AJ>jU-8T{2 zDB2eK``z&zyDk*3r$!vXYyoe*`#Tl0V_w$?de_AfIEKi=n9UnOPqReNV$Mk^eb0ez z9&f|<8ae!NyDyKYK%ah&tWDnhnz_p_RpmZvRX%ccJun>P{ojY=?Ugx}0A84-2pt-n z|9yCVMoJne?$_F`@IE4DGjEW|V>9bnpHyc9$hR-FVf&HvE;@Mo;pM+t`Ntzqp2*ox zUXoC(+4{f7f1o4{r+FBb+*nR>S}G^i$wYe-!UQX2w|O=rF*OS}L+RES2GQavar(UF zZl!oK?Is#6(?*Em!Se6Y%#g9gLWiAZUu(&WkCN-qKtQ zx1)T~!3aqt=n3J)N(#esjGa9F*Y}k-Lbr7bEyi`cZfb)!3JSRg zXGX2K8kC?cmf5+!e{RYrb9VY^i~RhzOz(RKcAuqc0#y-0k1J@HyH@sqPGz}iGXJ!k zZT+3vI!tyn$y`*=u%oW$af2zi?RBzHlJjfOJ2eSC3`#-Yg}QsUWRUG4E)3~ha+QV> z7sb;W6_i0wddLWQoxxzL*Rhp;MmS2d)4p<@o6qy1zFq1AF4^JMEntFfTWWADN5oUO zIFc@XAW^x)C5IlNKalc~?tFha6}Z1mD6s1@zGQG&;VYU|N7iC()EkM#>u3fHLZ*NW za2pn=U#UJU(VS8bBpmixHGk7@ozGsZ_dLyw{`n;MNc@E%PP|6CF`)lX5%yMgxn-gW z?+1ydY$0MqhjD#FzW{6&4TmAb9>p!NlvVU2iis`g;jA>K%^@4ZVeiV^uwTV+qRMy% z$kb7JH3L|~Mlocl)Y<(h!|5><$wsYVVl6hl|9!!p%wQ3VeiNH&kMNCMGE68pc1uo^KLhV?I&+1JFNYK>q%cdkBE~K>E7iaeENb~ z8IEaOrP;Fnh!-;nsS20w9rI)}8SRR6V?+4}Iz~TLyrqKTR7FpxY)zc#B67M6F}gOQ zL+MG&;sMep>6(d@p60;5EurJ9&TF>g>6Lsk2=6FEuQ&u_ytEx&aTn%cC%~GS)^MaG zMO0WM^t`V<$ayj9=_gPCQ~Rx*rKq_3Q6Hnd_AaJVa`9~G0RbHBH!V&|%5qbvygd=B zsmhsH#t_zpO-r1f|0Uj1SN&mOyXhdEz)rnME-9%*^Bg&bL6JH^Gn;ctbX4-#rLn+z zan?B5qPBS2a!d(O4SE$+JaIYzIvV%aU3U+c2;v0!LIJ znT}68AfT;s!D!s^mjM1JQM$?i<0eF>^?LNt1;M+N=A4J=BB$9jvvi3&mVQDb>^~ac zS%P1P4G1-m;(Ya~-D8?(wm)##WmFKL@`J6KY90 z+a6hB_{}Zx4Z`^MTQCz7gpy94A07p&l472?BPG@l`^Cu4)|Fl|)(;wSi*F8p9;IKo zT_`bzc+~Bu>`sE%9nlPy6%kvHShEQokqh||r5OI&M-B79;4*EzY$?3-Z25a>%;kPF zDPKwNuRutHRxr+!ze1p-v!R$U+o^3rPSa~~DC`v$ZwW{06Y?0=mRpFrCb^HbctGLI zZ*0T*A1y#Mma{;+SHE%+?tY+zIxMvL`5zf_H&XBUM*DBxRxOAZ<+BD-J!o5-0in2_ z93`d)%f(dhqAZA`K$>~nmL+sXCLKDL zJ2B?gUZPPhd0*a4n3Sjx32BKq_@5Uoe;}JE<=SS`s#ltNYM9_TYHI`mjp%fNcTilM z2DcP~O4CKX=K@9BO)jfZI?wGFn-Le!wO{dAI<=MdaauIF=MQLF2f$c} zWT7L;r9zmHD6>dwY|OtR-Q9s0m%SnSD)tLZ*BlLQe*rMV=N?I8;s6OIZKXa!r?BCj=^ju>KEU09N({w z5R)U70(MQsGjM?TW1an?u*rXq=F1+n4YsS>Ix6J&cuO3Xhv%$GB z>(V*yc5!El=RhSeBB(<){$^9DZ1om^qVDU#FcP}}Z!E8cWK$pgbC1Kr`w5dm1QPzY z!zLxImi_pt*f=k+@@@ln8}Sz0_038g(^TX242z#BmH(6!O`2!uu4Cc77BjgdHa3AX zbL+~;04AoFffz|g&ecMVxJ6LyVA5tC(2ukn3z|01lT(onIbt^JaKU=5{iiGZ#Pz*L z*{B^H_BavaqdM*}TNiotoe)uCE1*V-OxE3aD@?B5-=&5{N>?vV_CeaS>uH;LNo}ho z`J}7s1qdWnQt(`ylB1)7o=Gv%tRfLg8ZSx*Nh@KYs+omj!2P(w)AIWLv938dgye0zS+3cdFsshH zS(4ISfUdsg&aXTqky^-8S~rwt^2&q6=+e3!ZkOiTCeHtXsF&jb0&QSt*00?I-EGgJ zOP1J*Aba4c^W-kOu~~xDNNS`{|7ioK@e7Nq{ah4?)cYOv4%&RImsh(`;O&#vJly|G zkp6Ss!x+TAO_Tm-e&oUfqnOuRJCsDV`WaJ`#!>0}cmBUmT`z}Sa++ZdCU0v%dcAYR zV<4~0C5K-RM}I~vVC1If_LfFl39+BWSbrt|OOe?Y!ZQrgTJs?y-wj_WMCS3`=+zCI z-~i(muJ}6`oN$qypcvZS5$G}ByKa($X%z*ITYDNx-`88;H67DDw?ckr7JX6-fQ%pz zH^}(WoSxvgz;599jpXYM6u)fr{eZ++{cYrQ4e;}w!&AR^Q9NwPn8J&l`6)Ub5tsV* zh*@EVwfHlTem2}_MWc=}0BM&Oj&PWFp|{DbzVH-ew@j&a>xdd^nqjM96MRxB(`@s| z9B=@ARtZ<;z-LU7_%SNe@DXof^w1&8c_KccrS10KL375Qg0~MNS_62>zahvawU-3Fu0H770B zuPbZMSzm;nog9%m)+P%d-l#PgU$}quAuaSHCc`L6ED(LJ58VA=JH2}>Y5L^dTNlg7 z32!^hb!LB1ZS_KKy1ptWbOpw>E{d5-=dik}05BHIZkGht1LQH&uXiM`-98Zk2u6TL zwnqo1?pF(^h8g#V|DBxzryc$$DfEBlsQ>5WA6>wIhZm~}2=W0p280e>eS2!&;Zs1gM2?{bp(9dZelrOCjZjF`zoe{nU53<# z7XaaKd=Y*T3l`HHaQnDKXf*mwIR$L$)#BQRXSQeedSiFUqlEczXHm2dm{Id-qjcZ3 zXH(afRbEL@S>Qak0VLe36yN)l*5|n{PT6Dt`g#0N*7ZQ2QJ0s?-(gT(!w3XXMh#=tg6 zW&N9rKn;&)wiVFh(aTf&yKf#~`#|4x{$RUF{MxzxG5tR9H_@=BG)j!W#l>V(C*F}h zmb$440tC&II#FyAe^_=a{f_pOVYNSm$R%}@ zu`hsMFPQgvo(|#l|EcA#(BNSVP=o&83tq=vwEqXagpU9A5XMQq&V^Uk!%UUan~96{ zJuH>XC(K_Im}XN+>2+xB?WDn46<+zzUgG1Nd-v6I!%YrIGJ@)AEwwhBH_wBAOcVXA zzc}P7O1OB(u)6;J9b~HOr;N35TW>i-=Y3O`GvoWx@2g==W9W)Te;~o^F@Xu*a9B5S zxmiuh)*!AC(aHuwJ!d0kt@Mp8W`XTi6N#ThgWvi! z@(HSHGBm68lp{C9^H2J6Aj99qWL*D--poxMdiMlGBz~QcS@6b3c%j~*3*{)arO@Ut zD56xLfVH+_RXt4n!z*@v-`u_k<;_vFm6e3C4%;-Q7CRlQy!(U3U5j{B7py~&CDY{v zopO_00XOSp$iYTI?%-fp`gKS-t&F3*rpPfm!b=W7(^nkx#1!nDRrgU*GrS|lP63Ie1>`D$oIs`mg-YeKXR%a#Et9!u zloezZE1zn2xMO$@Ex z>%*LOq{ecAQJ7RV(dS6|@qF(ojJc8=PZi)&xZ1&Y;9y;DY@F1)NU-E7wYs#LI?OKF zW!ha8d{9{1XTA(UR==LpbmN(gftFW$s`l z{i+N+-%7n#zml((JTs);L;;->Ysv{l1D!SRkalzb^R9*^`%CZy0cJD}s?u4Wefz^f z*>&2uSKomB#vYO9GFY;n$mx%WHm!CJJVolT^;?<7IHs?Ox#-&U{3BH6;XuZAhtoZ+ zUjtm@if8hQnnR{tWT+C_R%%8dhlwfxAyI?No}whv=qBO;~4O@$e`j13iA8|w=O z&387!%c+LldC_cyO@(n7=5mKk@4JlB{ee%V0GT<+b>|~jWMwL{*u@ct?i}o}>_2I9 z?k#$9Su)_MafK!3Du%ep;Fspbr5}YOnPh<_#9||{OdVvjk;$F!&`DW#b7Ip~44qdxm z+wHs@urV8tB2wL6^Z2Y`esY0T#wT3DNKMA|qfPqA$gqcW)*sn9E&rL@CX1=&{v$F6 z`u0MB*5~rP5!IcfxcU`hafk9;U`OT5S~4-Y)1FIkqER$l*`aw``Q~i@JW+hjC+}fd zTx3S%;HT$tRafuCMH{#~+Q*StAcIsc*A|{0G)=Lib-Y^N23D?+)CMaxk!bc$)`eO@ z{rNod4ou4xv;S~dH3v`|tkA5Ssyc31mHT!v=M$cm&&}*~IL}cYVMvpG1tr%HO^TtB zoNrxON z7t(I5X3zMU`uqd;Tk+oa`3IjV6_v+BVUqxmy-l zwVw)gNdNXbB{l2K`|rF<Uj3Qtu-Dz+31#4+#f7vI{i^A5cPKE z6=9KvP)?Wj!%z{iX5 z2+dWvo{$yq7y-E-D?^C)(fjB|7-E$+WSzxXH`W#^HXsCPZTpXi6eV_`Me5SnsKva* zhlc{fO7XB?b7hJ3lJzYr`*W_#C0J$ZR+l@KY89Fl0#vP-;B3_a+_BUS9uV z^kCILXE8=L>xO#Lf7#ZT+X*XsxCPp^0Iv&bn0)s6&?#IB3@=HDXS<86gIM=vQ+L;OSap5wY54jed zt4Wz>zq*`K4nV=%6hr|ZB`Ve7HcLi^GytnD~(`sezri%nkW=RL2-ATnr zSB_co8M~ynUItIP-6JO;t%$(n~5ezLM z{co)O_f!yZU$?ONb$-MOG1ygh+-Q+QyxDaTQ$owb2D*j`w`0Ma%;N&o1JB-P_O+5e zLxQT|H3vsnmhX{iWhNKtK84SiBO|2L+_Y0De}gsFDMkCNX{QXDRVkZMjBhNOb~{5bAcSW_e|RINBVT2iCJ{jEMCJ<2xKV3#vYncs--R|D>zZ z^~=8Uuo}O3JT23m`k2&A)u5VCbfWB9Eh#+>bzAxzF_I$!_4w-;K|NMz6*6`e)%p#d zx(X!ZXv^`Q5CQxvZ06XQT+-ZB>Zf;x6}R_+45SzXSPtTOM@A_z75zr`)-8e77lb=B z;@=grY~uV(S{fcNE3C4K%*x5yWqpA#pj2npW)in`{|BHG)%{z$bPnq%baQR|u=v|u z`rjk>@Sh_`viYa`pCd<14n-rY7}+cuVbp2ek9Yu>jyNf?!z=S+1Q&I>bG<&c{O(QC zt@Qd!jL3R`*M5VW(V$X?LKpdtWaPRwT#hUvAjYR9Ak`-ym3l$}*oj^|98o-FOu&DN zjwC=_m(So#Q%*Vm2Jwq=Ptz>BM6!;yT;%1U>Q(E_mK4ReoymR%meNGH|CRj^n<6E{ zAMr%7gWVq+0f_TvY$I?o-1`BMh8+{$;PA3Ig8XlpB&#;dQe9ToTti9|!xJeh*=}W6 zmZc4yEPj<~;)%Yz3Xb#Y&gZi2)}z%Zt!#$ro8KC9%<8xHcqRlAA!ljEWWHo>1(#ht|(tjkQ~29 z65fisMpTXvVD0sYAruQ;b_DSByV;&siADUqtB|M^sHOw_7Yca#r!>z!e&w_!H#h8@koz+EPb3lDUl$nwc zLBDnT?H=Fw_q8`Jf%?yK*pXk}$wzz=JC_U(yN6+#1uGFjU!!QN>vi7y8yN#JIS2{o;B5v1Y{@tZ#hpz` zQ!YKsd4}i?G8w}JV->N%*4~FrU30_oxgpBqSh5Dc&kbr>y|-Dt;R642>5)+c#qbP? z^}X-?WF%`na@)Qu(CWFsI-13$&`;vqPU{bb+q)QD4TJGGxcJqc_Yxw@-;dR|wR>Nw z8tjyonfm9MUfq^s&5d|m_&pA)Cj(^{x~}MRyDqC$gX+jyu(g^ZEUGr7%L@cTt{U#*}Eh! zo;$!3iN;L%B{e&@BrmSb_zpDFTTfjmSH=NqE4FpTnTH|3B=-qV$Fa)$j+c(IY>;^Net zr0~*Om+1G%B@@z#*R6ClPgbJuin9~C9V?=~ET8jJ!@6N#Cb&%M?eKzMs_(Sx&EwES zQ`f*TQP-KZ^$CtQG0)G9gNLAmG*A02ywZ*}4E# zB}L=?e1)ZJV~`~}%)$ql@8r+x0vG#TzOm4=s^}Nv^B>prfiCI#Eg9Sx7RkCCdhO~5 zSK0`h6zNc$`zj>U>GWU&k$m7JE4TU+ZhY1*H`)NEVTOcI8!`6B9XzA;0%FG#0I65I zR*2cdnwC2AHeRDsgBa3QH-2CV zPu615Ob5Y$HL9b9OKRuzJT-xi1ICs9V4bHToXrio^1T}v^sE_WT8{LDbX z@U;IbYjoU9Og|^m#%besQc&fdStJ=Gu36$Q8vm}dAZGL9#fBd`Px`NizWWNVR|-)K z!sihtm_|_-#D!a}&W9rbp|vrIUSlnj@jPODH>N%kaie?(JG>dgnATWD{BRT9K(Dr^98>GnJCN+OR+(D?3H5c$usD~Yk>Ek6Oi%?23inUWeIA4Jk+MsI^v-l z|ZlE-LhS{Bj`!Q+c zeHA%0?q$-+Q-Y}ZxN_<BJzW=p*^7lUu{b8VZosEM=;gu%2`w4f|I@d84Dl`Du1oQPM4MoSZ`P)eBc!h!+ z=ka&q<><-inKJc^S{w=XaJ>sfq059#U7j>Pc|(0rVH^o3Nq%}kV5Ai#qe+4;a#8a` z`82&FmIY;0qmwW3{>^GNQ=3)3kIyq=R1>z9BfHe5k{Ik4p-q`@AlcI8P(f+z1BNg@ zoVnx-4TZ12c9{g>YJ#seiH*Ov!Sn`H6UPkE9%^2{RyPklb{r15z6Xrvr*@r%va>DKB=f2FV$JHOdIE9|h zXP?QLkC(6^HLz;{MUJkz8H~QkiC~4CJ{8$hDh89$0EvRVdk>|JygR>FS$4T=oKoME zNfL{xbsSn>rgNGr1na={Tf%Y9(-!shB@&Zj-OQww{-c&RP=nRu#u-TK4xlkf;LYt{ zJZXSkEOLpn$0av18(DFr>rp<&Hgaa5*g4z6nobDqRQQ?;*ZuOV`RW5?pl3-A1wd0U z+KPaukcpRM0`F`NeVVcV?}atF!E5zDS^%Jy`*|ew_JsPr7eo2yyt!qf3dijaF{^9k zj%?tXAR=O`2V?;jQzG{}xay&iBrw7BAxhlwx1EnCb@Pg- z8}QvV{X|6yUK!piu5jW zQB8z&1l}oUg-m zaGp$Cm~>exK@V(#+C0_wj*oHRC|;mAx+*Ro`}eDAeKWkq54U}Op;8E*pc0k zLW7YI&!Ncnb~N2t>kx#go8rg^KEz`nF_{hECs$~+e5|rYrFgTA`2Yz=saTjKfu#M* z`GmDYEaz-ZToY7@ul3Z&ZN-)QmFX~~V}@1Q+B6sMFC;(P#AV&;y0FS6-ntL4Bu6&0 zciit}L>apt>OP3;dowLQ=+2&tcy~^4psrDpX_AUuZgz zjm)fE@j-t@AKu8L`XSNY^+OX@6hc&s+IzT*P}HidC@5hc{?m_0>O(%(p3F0ilt{k0 zG=fNu-6Nm{(eVcKgc!iE{bJ0ub4u{tUoLcK;hwk{Prmqen=j^RavxCrnNmhLPQ~P* z(EIDC0$sQ66`V95dLL7K9`Pk|enETfvxUw30Z&~;g@DHTr6+(b$nL+4o9qAfAd2|E zTP1_Jw^FTbH8q$R_J4P*XWGJkRV7NLv5HQ)@I-Qz-|*UlaVdNgIEP2%?E(wFWP(WW>K^7k(yFiM0xgV z0qnu-ml5d7Iu;?)9qBLd4p|!FBoBW=-V$7rByxrBx`o)ez&%6aFS_7+`?EMW(ceZ@ z6T}GwpWosuW}yELJYAWokPHp~YDc+^T<}7{Vx+tJ$P@(uE^DLeAtWk8HvyIK%fq0c z_s1!N!tdQ6YgJ1))hB=S#d1b{IJ|h2eeRc-vve0MwKPV#E){o|lWUNs-0@T4{hLRn zdvj{=@T<`zw7{R7=!-4nQN4tZeovK&~<5!7kP>Nl~?d+ZP2 zBbn%`t~ZS>D)|FvL3Pc|Y{h9xzHx%Y&^n&`$A_JkE~K6rg?K8n{^S;pFvDLHwpexIlPNSxzXOUSaY zASn{C>Hudw3qBqh-KQEY-`=xmtdTd_-t79>cPEiQrmx4Q!#XM0_=jYOF=VmUxdfa^ zV}eRrt|MXM=uKd20N~1Qq@@JY^VW?s?{1%o*21b70f8e(wFFO{LrdNyfrvxf21~QD zxLll&Nk;^`L(XDZk?WAwmTG82)I{{DK@e@vW1Ce?nPOHA{^xPjuSPZDx&TMKDl$c_T%vO!yT!s2seYnlIEx6QLsD~N5Z0Ri)~NvrbLmEE&z%UX zKlxlH>P{+)ai;g_Des9t&q?Hc)K9zMUk~j*2RCL*-KKj&55FJ00ABIFwpositq9rg z8hBqIfX4PBj4*!u5rK)ROD9ATh7bLD2j5fw(zW1_yt|uIvSJpSN2>CUDQr|g`td%R z|1gZ^kafcf5x4HcTgIvi38w+F+tYc!0>^lbnF7xl75GRzca9H4^RMdZlNBnkEh)z< z{qyJFzJLHqUDr9O8U|du0oXaGko50FRXkcgBAJjPY-0~$t9u~dBpohGp=~18{d#0O zZdMbtQ##12?_-5vjomCD$rxEW4p&^8nu|4MhKdv-2tPsrCJPy*D_v@^0<7v0nav|@Q1Mnh5L=z&v=@poLQ^K@H+i@4j9e)>g)$=C z!bg7%>!@Z)U-LRM#NdA}dQ*#&B@>6`p$B=CaHp%XMHlGMc?6YGfH>JpL4&a;eE0lHb;(z8e zj8&u$cHb$EAqZ`mbO$4=%+X4DQ)GW$#ZNiT5mH;&d_r;WGt6w%a~$Q6d=g=w(%*pg z*&-)FW1<~|rn*A*$~1sNNf9&7d0Zcn%(i)!^kC2xMNE|);rP_gSX@MSJNWGQ-L<<} zu{>oJSVp4k7i-U-h zs85l|Ri}9`nxlB+KRkc8m1vkC=uR@ow)Duu9j!2H)Q4tLrAZ(WchU@SejfCE?zbgj zUQUqoi^qL#>VCLUkPtZhnkT=danog*cZ}j)_`tmm!RO10;nz^sy*NY7^r7Y?@Xt?O z>K=Uyim!!qecRNkUuo}}>&riP>!H!gRR8RCHq);eL!i(%k|xL}Td8g=tIGC`I+-G@ zuo_X}H;ZePC?saWUMfj6g5@sfj+kEI&UMMJ$TiJ7|Dvv>LbsWBnpe+WCNvr{8eeiSKE{D$?5rTT-&~%IKF0=WCQ`#SLH`g#4)B}enq|FwW`|mXoX?B1Jf{74sUP#NQp6+s-V7xGezvRvp=UoR zH3;?UTclE-Z~udHUpx!^|8vHI-p<&ZThQ#g|1H@*$)egrp_nA~8Vosl1C|4fnqkEr zVVKT~q$+mGa(Z{#I>zmAdZWDu;9(CAaLN0VUp0kQK)@B1mWQ&9?oAapj-|@hqMvIM z^8pgGF_Ldc3jM+lsrGH{t>v@k{X>%y8?7eK-jj=lx>BQv;X*`U1nEGd);Mf%CLsx; zyyD3ci7`~D=_GKcOgEr)o2Yr0;~wrFqUQf2>@0)o>b5S8CAhl;4-y=LySuw@_KfQDNySLxl)m8n6g2NxGSbOa`#~kw+u+X0`URFj%Mr8Pw zcx9*zWCkoH@yg}&kI-1=>I?E2wD$R~W-^RVCtxG_CZk>-bw34Bi_MBUPuJfmQqM4=^JazJqAQ z@Eb%>765t|I77K)qg~=a&!RIM2aWf9cL?I&6XKoV2k}a;m)A@Fd{sMBY+0)!uIZE= zx2*8JGcsf5@bz=q03W2=ACy>+$wPc=zY_%XPZ{xTlKrYd6-RCwTq4RoZ!Gq{nZ>hl zrfG^q?3dJ*4PqHwL1p5gE|=4MkJsN}YbJRSiy2_DLlE4S+h8?DfZd|DlP<6e7!aRs zVm&%~Cmx`-^McXXgF@J=9CzJ<`UeBpDA}qFu3X!B#39pKE3%yl+K*DJ&QXtmGND?U z>-Qu34B!(#0(r{zoxx6N$Xn99tOW1gabl$~Q?8l>N4rec{a!z9Z$vd4bNtANMU1+p zF8uN0&grhXMX>Y4<$81xE!OZgUX=Cv3oz3GOA9|H0AaGiTOe$Z?NoQ4&La;y8pS_4 z09O9L?t^2JmZ_tEzE62z==4=A>pb2QC=TGR-Tk@~e8S3kn*6$cbzOk}b12z(jkc4a zM5QC1$BGJKr+m%AZdS&Q3|$4MQ2yJ)bw7Rl)=wy7^(;~^9L3-#+W;N)!9;c?AXR|J zI40-l$sWRoyMb`X65*!?;aLE*;jaFX@~ZlyG+zAIk$O|a`pNaLneMm43Q#nf4t0f#w9ov#pewUd;RLgpgA z$>AMWe|q<4dzJf-^di&j$^yyv5A8P0Iz>haW!$MO zsic*)U1AA%-%_@3$K#hppeQTHpe^uqZ<|&>5#Z-xkaDkk77hzsm_~FC@*R35`0m4e zDhqZ?a?QmyT=V}>?-^k9wj_l&NHVECv*Rx?=b|6KGR>`N(&(%0=d$mXE9sOl&%Qh0 zYHX%eZoXCh5&8_Ky+3!&h+Xf!NB$iAskZPKcWg;OTIoG+t|Q07G@0hLo3`K7#u?k3`J!`wqXlu zo%<<~ShQhg?X@Gvu@IVVXkNa_`7#lu)iZJza~j_kX2FmR+I{fnN!LWkQ;}>7FTe<4 zkuw>^T|;yq8ZM`RLmj?DYP8WI!QKw zG(nIb{k>^MRx`Z`8_v{1b<-xq9&dv@c%i!3xsN<)s!&`6nu{DzyS|y?d6&7G8*`B#}|EpK5F1oLM z-?tC3A2O-te%qlg`*am>C?2J|B=;BZO5z(9%~xuDn?H7l!gIuRjd_%r>lWC_a%b0m z3637*<66yybXOtS_K9N#Jo#)%>-}7uoqv~^JR(-8Dg6~M^LqPb|LD+H+U;DX{HL_K z>kBV0TS>m9JR%#**LO{`5?*aPaCtS-vk^aj{4U<={5(zhSFC*mV#w`MA)8l!0j>z8 zfB)8fB-hSj`5QpuPz7uomSwW#JJ6QC%^l>hbP-F9r`pBHxZ7ZhpYeOwMuqpz zcaR;6yZOv_4rt>i@HLi^32=485GdWv4Uck&Xxv zdjpPUsOgwF7039sja$RIXhM?oHibFaS#r}Z0O~z9v32cluZzu^KkdKAl1t+GW9RJ- z%|GunV>{H@s}{97L?175pq!A&3Ms;~0P{esv=+qRayO>+~MwT+oYHBDWa4XXUR zHU9xQC+cg zl8>3RND2NdlM(tglapmN4?EYt70q~QO4PMzx}z`@)4wl0YA%C7yB#s2?u8nwl~*d7 z%>I)ducadFsPW5@w)ffBjmnMZeQqwlzXkHm-zg2=9nM%CRR0m6=s7O*-M5m%bOJTf zArR44>z#FMHr8^}v4M6Pr_2;=E3j1i8jS3MB6YoC(e}IfD+HKlSNPwD`A-P~p&Guo zzZadJc7$Ke8`KIzTEq8)G1uWcq}{J!^Bd0+Q<~#HQ)SYwNM(8%v&A_h^Q~g}x)Q!| z%-tBmig-oa-y%BjNxzLUe(pgKWxTCZ655RyFA>lf<029J`j4S$*KOr zPjD*rc_yL>AIqw~RXd5&OZ~b5FM{EP@4M#~7j=U3Ji9+cvhSLTCj_g70hcieyd%Sb zyZuOUhBL39zNBi#4DlypnFf65G-WbJ3xbdjuBNjkiX|F*L`YhU=EGq(-G4J~zXQVF z{y6YvCv`>r0qBSsGmCpUt}{vVfSVqj`x`YQG{sWZSeZGvzh|D7?SXMWmy&ApQb%f6 z6iP~SvH;!;nqWsJ@!pr04T|A?>mN{&yt@6VJ1+KF&CtBVfQ>})!X43yzz>x>{2BYo zV#t}*;^&vFhm|RU1xvHa_vIFKZ;Rg=$<%ReiND?N$ec}1Nc=@f0sZnW2xdbl zw(AG`KtY2FiRm;VD@J96)1BAe{9@S<`w7rN6OodtCG3qv<)j1#1gcQiB*Bh}V@+BW z`o<*}2&t%h>Ozm$zZkhB-gQ5e92^TLM5}%hEMU?pno+9ir5PA-n~|lZcVwFGHh#=c zom^Gc&DiPEN*UHHmeRE5IkWNf`JRfF<~_gl1ol8Dofqh#iFI7~jFpLMr>VHoL7##J zGrNz;B!X9}wjp`AAh_*tQqWGLVYcTBlhW3wH}H5HF)LJZ=6Bc5)%@4bYbAWg>w0xU zosVs15|ct>`@2H3^4QRSJA(EoSshrt8LoBx&ECc;02;7}{kJdhVIsiUE|Q&T86b{|09*E^5b-FS8DOuILK z%r>lM`KfHO=ewKk$3b%)1Ezjd%x#08NHg*-_e~$*brAJGyYrh|C=_L%Mhf-+=i40# zaQ^WygwlUx|3`Ceh!`jetQ;G*x}P*H9;J0Y7cW#B+9G8DW~Vkjpd}t7ve19=*sI+T z4~%BFZ>CLF^Z7F=MW*UkABcP4jJ2jRzRzY!qKYPdU7+)+Lp9bM_bLu@AJ;rBjNr5l zYlhn6JK&e=ds|n%!-eKG7>Q&C`s!dB#6F9gL&pj~*>)Q+ac{xrU$b)6&B zEpo`HU^L^LHT{%b9pkKJIWnrCI-@opg(F>8(5MlpKJ!66QDVQj@er7e_53QPvY>e> zC;y0jBK%9NA`EX%bS@1#w|%iu$0k&)`)uzaP&r&NXrTY2sUtpO63q&O5x zDnIh^t^lRQd)_u1XN;$5oNSAj_)MW?y^K{&+wGl8M<5*xk1YN^qffdwh1vxi`Sr2K z$H{CjP}5eybkb+V_U!#PeyeL|Yy1?kS6xO~y2kMI1kRw);!#8Yv&%mZM^amO&FnCG zFJ2pe+`+G3Tsgl*R8VWtp3zw^RI7x|mT-M1o{ezyOp3gHM zQWeofQlZ30N^`s4+lHCglNhR)lcYu&KQT!e;DBdyACq5iqWx797I#PJ$sY68Ul06C ziZCmuZEOnE+XtdYMiv+s7%Z^2&;J&(V{huw*K#2bxnOa!$M~4`PKeF{xjo=r;9tLS z(2Y@W8Xx!^iVga;{`5qmYuWpbxth*7$@^wrJJUxz+;0<>j5W%M7RQ%)%6Oe@4Au#b zxH@n$mfBys_Rfk;OQ3UEq4cxEsUnchDl~UR_UBbR=1Oe$3|Jk^UD-iJY9ZI8Tgz z8wopE>#vQxmBGi^7hu_^YeIp@y=sxDg^_S>cReKWkyy2{ynP!8Et93_xF1$>g=U0t zlnkUX({_5Ra}B!t=m&!jfTdC^JQzCoWdi+yCZ)(q{d~9 z7HvA~=49Nq$cZA|qpegm=L!V>!p1kqv;@hN`0ic~Dccq#G0~Mp8!Iwb4KaGI>x(Ih zRa3w}jyXjZAP;{sKrH|<%V~Pq8xl!Yy&DpxHMbw>O?4B0NsV zTvIitv82I`?8&3okgO!!NKvt(ZobQx94_1h zhx?m%dcqmjcY^r3RU3y42S*m~ zI3Ix!wuMt|T7E-Ar)f#=mx!9hetaW42l zz-?vGhfo7Ju!yAoF7m?tf&bIf4yjk8 z5LG4QW+iOv_X8`kxmuj&oaKWDfOl44MWYwSB;Q4mbYIowv^M0`>8xFXVSW=gN`2$r-Q}CcVq@wO#v+DUQ$*-m>A>{x>Djbx?xzh=3Z#aJt9sXcZUh1+*r*ES-Bu z{2~!J`Cua4cCfm6V+b8)_#J&nP)-bs{aA}hrzfvVYAYOh%{*363*X2yzaLQmz_^b~ zo-(zp+g!b6z}$s-$Rhz-O0xG%E<3JKw$y3(6Tv3^t{jnNQ1 z5nfp^MGkd4FX;dAvY51dxr0yjV2QNmP&bF2<}2>blpA6r$7v5*)qD|RU;Ot6#} z|K8kYMm=C!DQH2ht|}Qh^Y%9M!%lst=7*h?pyT6RiZoRgg#5{Sqh@SbzpB2!o7WDl<<2BVa|^v(J5F zK#bY;%hQ5K6DL`tlVbMm2ESCY**l#bPDz~G+;7;q^~)M)rtw8wMjc=-cbbm^d}dc3 zKCaT@7bFcc;M9}_JDtk2Y}b-VDS21_v+sJddMfR&jUI*??H$GIaz|fi8l76+tjwL1 z1wW7L=ILw4feTg_%lNJ8@J^@Ih?UxJ;&D>}7 z4Dh^rRI3Y<8!f-o`qpcvhp_qR3Mg}SCr;RCRJ&>lh^VbO^Lbi*oChisYvr%sVgzm9 zf!~9vfv&^3QDg}AzV*&kkou*k{uYF#j@*@psUG6T%eShczL~R0@NXJ zxw3DCTima!I-K+X3X8+OKG63U{uO_JX<%3S5+x@hgm&;Xme8l=+~9F{aY;RO*X`u< zs=Jie$`M|vkB|G3Y1p!34G?NPx?N}l&!RW8tn(N z`o|1bg$lzU;H~UGP<;SMAPG~1Z5t_}Te?uh`8^VnVX|W10EH3;l8Hf&DdJ6q_RkTV z-sJb_NO;K~I1Deimlmb@a;iTT#`&DY0sF+w-&Hb=_7ie2Pleh3Qj-8Q2A!R%0o7S` zhh%KqS!B$w1gWBmvAdGH^Hyp!K;%A=6&6tz0NZ&la7&>>Aq-Z!@M zN=3Zmppu! zt2FQHkCZdO5cZ=+CgT-(P0%?bm#pmy#1Qk#j9IZ~CW{n_k0)!BeqAP2eyH9ykThst z?|Wa_X2qmVrD&@_{`#nMGdOk9gj)B3t00XaiNJz=k&W8IcpxOf!y2bjk_;JPQ)A<~ zyX|oia)nDzoVNci&sXRP_BVIOWB{^um4tj0@9_FI3{6V?2W>v~A|Dq6dWS-OLncO= z#)DnCpEr`yM@yw2nS@Ln$8E-KTju1CVuZiV&k$MM9m!h=vHk2ckv}~MVv{|ZjF)gxuT->LWZck9*JRKZQ)1c zQpis}X3`hSXB}AI4nlc^X<*c&T$=6vEfui9|Kvw^>jP#4&w9Ik2pwtyFo?b zDmZC_g-%Bi*4&Og&-}2kCdOiFK zB)0cgIl?4A6&u6l{B`H;-Xz#sWvFcqg%%9pmKE$wFlNRi1K6n9w5lyECP_@<#EADO z2>dAtNm7PM zN=+RovvSGjCIn<-uKn7ifOv@rjbgp2)uI7M=9v-KPMVi}?{b3KU+pZwE{J<%EYGtp zjW~*9D(-$|{q*OIy_6d~hF|rS)S=|`A^mA>FyEIPW28@-5)bZDZeX?iXRjO#T?Qx9 zVTV|E-)brPO}qkZ$f*@hu-jpN*tanbtF8(2?g#JIo$pKTsCd|zHMwhC3g_@Y-U!Qd zAZ1Zi(NGvZA(#a&57rLJHHGb$%`$0VDA!?H*YoGQlUTPdtK@v5L0;VOEd2H5QP_4* zu(BxOckv6_>@V65$s}cADOv^tX+Za-!8d-jh@=hk=6D@0MzVrHtVk%d}+^JUhm2D;qvy z)`hVfccqZC)thN`WzDY^I@uS9sOU{ct=}|1f$^zTbtS(YyK!25spiX;?bpdj6m7(S9*Nd^3~Q(Z}Zu8A%Dn1`7hapE2xnKdFWfGCNDlMr)kM?jHot zt)iE+`rf18Ez=F|57#_ADE#K9KiSzjxpif{dSHzax-wk>$V!EOu~O=n2bZHO5`+Vv zF~Txd&ZesWQv@AX{0kuYZh5NaKcB(DSu(;@lK{O#ge_gQN@A^a-N*EfvA?JaL+5_n zlI!=(IHwybzf{m9mp2y=gZHei>KJl6&~=~+On|TqB#N&B=;8E{>PveuCAm-+G5v^TGv%Ois$aU!2gTC<1%Tn0Pw+FLlxj(bWWs z3QA770odNL*4XZYR6k5-XhM!5Vb*K6RvN^77z*gZ@buWa`g*mLfeNCC`l`xlOYx-4 z!A9#|sh3`WuW)H>NQGJJ=;?9d)sxw@foxRFDIV4MgSX=1OWDRFUn-gT8^ocd3%&6a z{Wa;>j5DuN+lR~;iW?fF@ppuYGz+#hpA}fv+l$l4en`MiDB{G#*seRtt8$f>wJh(x zF<@!mb$J=5Cz}T*=F;i1+4rH`hp<5B3lMp7`)P|hqq}$S)3N56WARz^irl~p^pW6; zWgcJ@Qos&g{=x0rLEb>_La59|tNIxNj3I3$Ho0G~gzbN?`a@pa01EaYuqL0N8wEs9 zqPm?cWerEXilDS*H3(6)*sY1*K0x&uesv+U>kj2f8xpLZZreXYt}Vz~Y^QoT@M?_N z{aRh8ySl@a8km#DB?=QHY<@6&_Vi%46#Sm&QLl&B_wu3uea-6R0a!q(_{&Va-2Qg+ zca_inxFa|C<<6sa5$yF}HnYLM$UC7|f-u^DlsEwN4g-cRap`S}B>D(-1`I)BUy6S9 z;o|`JFN!r2=XcspEMJ#L6?j7_otl#Z=wg;+f=4K;r;P`r35@CZ|1|8FA^rHp&}hFk z%&9FeJon=CasgcUVyYvgmy@`$t?E~7w}OjVk>s zJOAL;c!to&X21?1UW$2*)T**P{e1|`x>A}(hg%gwIJM>G8WGZ>3~_b*ny^w-3k2ln z>Gdi?53CF54ZW?3Ym7ZZxX!%dPje1st*aV;FIZ?*RH<<$HnXo$oArd;r0XWkOQ@l6 zggs3kL9EXByH3hR+&BKTXMJ;-38em*K!g!*r1_0*Pp|b=?m@NuRSx(0W@R&oJP#ii zvx@v((VO_oS@E;?800C*Nm=#a>!*&5W4C(VL~?41gD$;Ej<1%=hG4^us*D5QgQs6` z?grvk69Jkh!HXPZFUr5eLbMIhK<{^VJ}B{Q@f<_?VOd?a2^denlKK?r99$T8(%awF zP;GU2Ccp5iDsR!{2h3yCCBvnMv|fu~PDK(Pv54Bu6NxRt_nix(shbnL!3c%f^N)2U zL8kZ77~vfDmBPv?fIZ24Qu~g#lc$2cf4j~?G*IQKN#x<69sJkPmEZW$|Fin<<~+rRr0Jyh6*(pwSUv>KJu zbDMX_$G;=>M<#DIM;cYH?MgpNOOYNn&t*t~#Rr9Lg^o{oQ`8Y#)Xmx5i2CwI2>>(CmbfS7o0pO@GcWjk)y&yH9=%u(w)WF!uKai3V_Qc+11N zcn@Eas_4+K?Sjb8!xr}+aAFNCvo%#G8Rp-f)~xiIA7WbR+C}k+k*dN%GPPJXOv9P# z6#Ei=^Uh6(mxU%Yg`G1VWE_9|p&4!;@hw%%3*pzi&u|}M$XwyRA>xRM&VVEnK4c~NsKU)|zRa^-BemWv z==U>30$m6n?%(06XVeg)Fr~1aa8!?#Qv<1uhRZplSqRsc{ty90h*)9;@CzAKXc5)KJ`rf5G8bWuAv##8ehWl$DM9 zcyV9o*}vvCzQsVOmq=<^z5BwUwnF)H?Xb9YAH*eDkKXKtgpLxNPV@H1j~{(N=z!|s zKHHI>+GG-^x$AY`m-^aV%QXz^KRxAr!d(i7%StuFdpZ8c{DdAca5s6Ox0v>aU}L0F z_IOv9*4H2Yo2jd(J!@^qfd;g!mPqcrmz^pn--39RkVpEtG_VIAzCd5ReM5r887@M> zYP!J&MJFD)g0>w%VWJ4kBIiCp8$=+F_#VE<@;70yci3iiHC+v*w6nd}iLNVN<}qtg zto^eD!_0SQ_k6q92_uF~WA}V%g})7;t>3~h1ngayg9t+H$;-4ci>CtyEs6RmcZ(z5 zn?+a?us5?Mvk5NnD3$jJeS$dqY%fWy?*FiiQ@UkZbnYlrtTg~kZahGRC4pkjvkNS% z5|w7Tj07;1U7`24MZXJ{5Ek0W%)PRs9kgDl_lB50NyibrHy;JC?r<#I5^Jr(AvBn# zndgS{x0T*?6Io06j1@)(TB~!vj+KRG>4s*1HM}%9YSJO0xk0O#vfw&`I6e_KxIfzp z3C|0o3!Fop{=73^xXG8l5^KfiQ!K?>|Lw6nbpR+FX1+Ee5K3}|=r3~|bpZ$M5 z8Yc4?DsU{rbcqa;LQjmOUys=s^%`XmDu6dI_NraOcmQo4<(IiEZL*Fr*MwbFi;0T) z^Il#(Nf(U-jT8(SER_W3@e@_>J^e4r6P?+>n;090dT_6G$ghznNfAWPM&DaaWo2|F z{*#Yuz-9?0%$3hydMjvbhyAYfCxavXy0AbjB^9DqQx0|eC67<1+hgmoGSQL^D8M4K z{6b<*6@{Fw0i7^Cis=e!R3)DdoBOt$hg8mpA;(CkcgOYd;=HQ(a5zqiTQXG)+S;Zo zR@^zGP951at7rIYS;#d((NG`qdnXiRt~a~npeQ(|a`g6RuB=mTwyV(5fV5l~GqP3t z3)w9175XKoUV51-49+x z6<||8QK8WFwvijLzDqA*3d%LjOw_K?I}HTSFmQtonm6b1Ew`Ut{Q|iUSfHx}&WFF( zEeD46k_i%uuJT-GkXG0g9)!21Nx*GjJ=OO;of*Fov9Zu%j!Wl-V8L?vYV07Sno<@Y z)4Hn!C$P+T5xCnFG93;Ujrb^3jZ5=^G1qR}T?50#SkAL|lm`$8v%;sD%&K(n*%>0N~~%4lIJT~ms;;br_*FW^?+U1^6i#utI_8qZJxK6+$MMrHn}?=P}7O0 zM)%IIav=s{)arIy_e+dFR4jHI62NpM>MDib&wWU!GEe@%YT9v<_Wi(M=&m%~FyQuk z_H08cBtuy*iPepnzZWT0yCI*DL(n**^RcQ+mG;9QTaMk*`OM8|leK-7M0T+Tkm9#- zWk?nbJq$^F&bui?U4%noh#Hb(D(+No{CT$X!Bzi0&4KyR0eDbhE@y{7tbv>TKNr6a zB21*h7W3Gk80L9`G-(1AL1?6@=);@lOA?iy;Z1d}Txm?U;5)(!i0tNv*XYr)2T7L* z37laiEIH~NoNjsxE2@tc9D&6$JZAZ$Q&IsER8J9H>l+&^Da9VBA?HBsnS$7k3%~3I z+4G(M&Tf+OTk-zsX4#;I4cUnqDZ2YeiC zK3Yr=sXn_VYBUd8g3@{Kh}OSqB~o&s&Z(iBI)B82^|YpUdN5=$iTEAlQXQ_A+~aZ; zPPayIeapTX22B#G+o&kvrzp^FHybpMP?)8IXMkM0jpQ=#5Y7BE#$;bT{U&S!S{9X6 zoW!%si03gK(sh4fj=2auIFax}ihKw5>ifgz{LeU#th4FMC-DQA{?Jn1jZAQskvwu+ z0C?7FlZd%doRgG3(+3zTseYeZEP$dTeC>N0cU9!E3|hJ?&ME26ik~|`3OI@M%%sL- zT$PyMoZeWB5t|M%rPk^2LWE@+!~7qe3PN0{Cb@#AJ0lg3L&OBj7Tdvp2m1ELz}mG@`gS>rB+cN}uyaW`+*=;d4f~ z*uwnVCTXf+fdQV9bQEi1E3cz;?0EZ!ypSFI!FFJ@Am^zN8nQ=l*Y$EYN?)pw{XuLK z$ZKWXAsiIgrz~p8B6>;|bUrSOxiCkVpht0mG#TpPFC<`ttNIGJ$f4?gF;=x>K}Xbp zEh)lw!f!7p4#qa0eC&51XGX?1*mno)XUfePliRBf?TU60VD}AQ54-l0=KAcXdf^8L zDgB)*1HrU5BmDmknTEZ}TPzEpQM;tc)Jka+l803LsE+H^v!!%g**DxJG93QLe zz5<0AjZ#+lUjs=ZZF~`S6s7%K7TA*%uPN@Cut0eH#u67Ea=_OdW!4oj^;56(KpY<0TeH^x4|K0zVfY}4s?7^i%UaN1#}h2vahYnN)9tdAIWTul z_zGgme>cVDiEf&!B*sgB6K_T&&OXC1DQ8Y?2^xyTP^Hd4 z?=i_oLCshRSH~~e3u?QsT2Nw?3tTnM3d=OgiYxACW|TvgS#uxoO>v6NTg z@N7pM3Z}@T)#%bAIzKcV>IlVQq(5gJC`zKV$n1fuPS7ueA-C6yv9@8{=2OCf%7Bfh z5NV5XuY$wk)E=yA#n-k+zB-tW8qUY;O8`yds74uCl}A9)P!c3=pyQ165D9PuTJ<3W zA#ks`qcgWXJ0kePI`PLt#zfQW7x6K^DE9X(NgaBH(_ygwF;WoCF#1-#q$*J(%yCt= zvuEvra${YDvM4wI9^0;0P8OtJs)FGhb=PEET1wd)O!Im2AYLmqfA(zP{!%~P>kd`N z8zLBB+!HRlb1@2e;y7-)YTo`mgpSJYsEVH=hiX^3%LgYO$=>G#H<~XurjpI35IGw9 z-fhGtJu-aQshF{`UK10FzV_TaWMV>zu=g{p4}Q9kFP|U42HpP7y&++%PfUQgS(K#I zvpbx$XBcqX>#XjJ)9V~(nrO|k=b}5H+7zeph3U0cX=Fe1#G3~ppo$w@L-TsTPn64& z)!vvQrFxV-i zkx*>lXp<=YECyHn`~Lo0sOM35CRkYGfpPN10$S}~pC7~!egSYmu_F6l5Brn>@zIo~ zOFmV6p{@?Z4k0J@)n7TFCDkHw0Y@;WNRiqbXRO96!Q ztP^N#>_<|j7huop5&6Kh+&2XuN@723;|o7H+SQ$Kh1I(=;dlQ2a% zd*Yb$Ykk3(SA{W*yNn9^!3y<0{$me|7?35w4%a`XGSds!jQ7_B#a(AQbH^f`lX#Iy zzVd7fRi?uncV@3-lkh!4av1mB8CILZonDL|Qm_Wx+$gUZWX2n9UxiT>Wumo+!C7K>pdBr@-KBzKV|YLR6A>j_YqHOeoyY z@yQQD`aEv#ji`-^C)`;Fc2rT`9wg8H!-?-(Z&z&V03^V2+*tuI-Kt^a?hJPB-@H>> zmWBLn6#u83s2xH04DFOcF-QB48d`*^_7;PjUTP+;PnJV>z%47s`-pxGpt!@XD_tWk z0pAq&;K+GKQyShIXIq^#9R?d_@Rap%T?o@k%F(OJfVz07@aMUjSmF-qexTUH(cLBt z?Hk;%$x6GCIc0#jT0A^Fc0kxlU63`8+>axyiX;H(jt5-TuuDQc=|zGZm+$+TSjQPc zJN95DYcdv?J(j%gJ1QQGW|x;Nt}Hr2CWZH5&Z1QmD%QGNnNs39->iabRKmpb{OY@> zyKFSSQBD-CH`SQ3K(c~zPf+vBY=g$z5TSil>`8%rlfqOi+PRQEhVkf(JEjoKx92lN zNX~DvrQY1Maa@dWronRL1`%u5{l1+&|DB}N_eiXe>PN;~fc)~JIcz!@DSyk8WG+jW z6HrS`0VddR#uek?+G(iH)e`x!h2eYn`$bOcQ&M@5+h+(;mV~+(= zRqSBDY9lfFy2tr^!lJ#IL7O9q$gDyVRn77)u$oCY#@iWXL<%!OTcXRUrX*o6xu|F; zKi!5Z?3OhIpJ+RuP*?X*cO}*H*_nIAIO_)K>tJa>x@(_$94{5qEQlDke}!EkHm%_G z2t~jjtl2eYRld8`^>W*|p$e@gvBU>kDGM;u4760*jJEg3ti7_lY1 z-0X}4!NK^s5g=r&S5l55o-3V(^}T^L0@cO)swzpA1x*AB`Du{ntPl^{r8)fG_}~G_ zAgkZ~72u?V0dfSf0f;Bf_lDT;AfMM+2qHZl|f!UI@s~!T{ z1SqP?0x#FIVg+nP%fP0?Tfd0$o)_7n_#)N5Og{Ir3EZtdzM3)=2jpQoOqfbH>xQ@{ zX@h@z0kGm_dYrdkBRlk`d2b$@;sPjxmyIhXW!Nijj?G^WxIV1{Odo0`feVQaAoROx zfXjQ>2UvVheo01<;n&Gf{Qj~~^P6ZYiKT!}>LeteJOdJKN=U4yfVa+yj5tyo%@{qB zPBaD?^heC%L2l4f3=pfsHB|{SCk(e0Qd<@8KM_&x?#^!TF}UlC(%E;o%uA+V?j&n&mlNVXkNlcZ6VCYPiD)(h;Y=fdv+s=Y_A zmN74u>vx!nkc2Wq-g^qFpWe0auwVAr*L1@*KF*g;7desxYPH1P(FZi6hH;Nk0$1YNi({Hw`<$eqI{%? z>9dVD4l`gRnPe35>3*pd>z@UL%fP!XX+-OR|G%vR@?gh=2-+?l|W1uJ>4t~oTiMrOEp z$-a3Yk@-_i);RP%m3h);M<;8%i_b}R#0ObRX(+0YDRK0OY&HRIao1Uf+}nz%{}dA+ zVQk+*GeK1o8rd*-WD;Xq%g373b!r84#VQEHpp-Zzprfac-^U|`G_s&wmD z0i+tESRUm(Ai#8Osc1=wpbi8$qO~;SV*h()Q|6-?M%c)}|Dke1`b_?sZ zD*0V66uev4Xb>jo&G^H9bHFNX>lXjOB!4x~JO7<(k3bL#{WnX!iiMyW^>vZhjhK^e1hFYlX=VS)9IQ)V^NGotXM#%E%k-eX+@qg$3t*2S>`kG0+juSb-ngFjsE3%YS z@K8@r4`aYhLN;|L?uMP-hZ_!~*Ij~@Q5&YQv86XIFn}JCNKli@({dI%ojG~F zmT}ejYiT6k51v$@w<+lFT|FFC*1Ua65IY3IjbaSlmnB(M&MF!BYK&_BeQiU>bUjIn zAP1b0arlD%aqP*y!m*3W_IPsM$5}>7Yn9_(rxVbP8&Qpe8|bW1oM@^!VV|Nh$Ge0d zb84N0u~^Tfe$f?3j<@+=u|sBwj{xgjHxQ>u(?>I$cGA3xMkN)kv*oqdBYq!duL0VM ztSFaZ@J6naP^ILJPlt~Hk;FOTMQeQ_{poi?*(GF_oA6Q7SFS#xkNzZJlp42f%s1r# zdNE;*23q#4lcA;+CKf#6z5;Rde_Dk${dCgoL}#3xqpLe1jBHBPsS8?CAkNXg?izs; zd3+POnO5RNfW(X|2?u>O(1tV3s1l9-N4USEi28X4L5rj?el-7hu#E4!j^5DL4WASE zO8)#%KWf?*7lW6HHHM@Bv<{Sxqp4E~n1eDUs6~qeu6%l2RYUPADf4BG849z7u7>WT(BG4hnYDYK z9I)VAyBd+QvCJ`!x%dVqnuv#J4Z4u1?eN>{Oe|xFYe}Pt$bT3W@K(I>PK!?tF83vs zf{r)Jl?Yt_<~PFm)}|| z9Jx|O#DKZGo}Qe&uY{@`f-;ON3sS7jkrm4vR#RMfV2n}2!E#W_{PwaO{R3SGcD z6NodlOd=BK#NVmkU@+Mp+s=W44`0|^!qG)9d412Z%X8vC9fK%doB_tyYtCK=${ULc6|+S z+x`LQC|rx#qZMU$N$L46O!6yzR@k(!r5Hm~c?P5oA-+W`gFh;{oOOMxW{(NWZcW3z zyb8;%Jiv^iVzzBw0R1=(I-aYyiAFEWG4hRN0Aa_Z37yBagx0 zjcg?JL6mf$XMvT}D!+-WBKBERc~!2DEWqf^ODIy?Qqjy_rooeRVzbJiq@L&6?mA(# z$$p*|7Dt1=MSrpZ`j725;xK9{fK88d<6*)Bgi$K}_9>-V6rJ$3^Z@25XEbt3W1DSq z_{Cb8>?9EpGebqRn*lRWKE|A+RpQ(xTrOj&+mx|A?pup2X-jA=1s1#@95D>RSwlQ& zhy&WMy#gG<^xUQUVMUH9eS%=p4bbvRgj{;h*xu%%Eh}9;Yag8bM6X~&^VsgGzgY!CT(BBLOTk#|CzGl2N!^~G( zDxorEg!P8yQ|KfxvAz>~2KMxN#p49f$XUEzSMK;xh)*xP7+LkEVn~i}6Uy$PcYG~1 zZNFebEb#hO3Zm09yb4@NVw2$fa4c^v*rDI6$S}1wN9bX7(WasiC&+lTP)gZ0!JGGD zMK7~#4OcS5u6t|d^v-f^px{G}e5yLP;H*0nR%Ecn#Rlqgu`&Ya*i4t1eT1=Lz)eJY z$X@q;h|MWITz2;q!h_BxIC|4*P~1Ltk#`8}1ve`32&b;1LJmuYkRiXmsQ+INnD z&{Nkt9T$!}XBGaQW^Nnf1CNjWqo0bE5EB zQdOD&^jZDV(pzFXsC|I-X&HUZ@MMhp3I91hta+edp>AXTscgk~@*lO@5XKZtUNhW3 z#Ltf~XUNbqcGUO7paB0a;wrhWBBfeFEOoD}k*lB}W(vVjtq*mJo30?j z`K#I;<=Jmr$6 z5^U2XhW~-*yQIzyg4Fj&H1wf)e5!8{oQ{x&^T$tVQ2ENdDAHtp1hImz#AOQ%=a=8v z35Z20n?)`rYY&A}EqgiN@Lzl>D(lPVC${4Cwh$xk+hMrs`s(Pjbh>{L0@0p_jdwGP zmB4$y6+2zKL51ZDdE*s=mm^!>$KKCeoW>s+9+Yc%PJ5ibQEZ2=XITc% zDVq?|7|bRbB=`w}bk9xp1>sEJc`-;)e4totz@QpIzIgo2UFbe(A3$h!RD^i{I=s=J zALfI|*@+}iy85gW_JGn*C)gV-M%TWC$)YLW@eH-fig}OAV@bvM{)&_a&1|rjqak%` zLOQqic>RNoC27i#h|Q%rwDPZ)eD2B=EzAeOL!uP%%y*lkxyy)PH@AXKD8FJD{+I+; zMFLq$(l{x(np%|sT%=v!JuDIy^cEeE@%MoGFc|@Q$vuUR6y>_F(VV?%yc_e2!0d*z3x3{+i@t}s0$4rrIVz1ln@v@5|r;yV` z#DQ(~>c|nBMoS%PUj}L5^`RZ}GlJ;pmZ(t>QrNz4*ipT=^tQo`Fjx-y9EjWO&*F70 zas+5{`p19_!2asWe`lpinQP;EHE1(_R#M;aI{h!}!~Yfl{yukH|JQQ|3r*ol43{;( zxxDL?XrCAtPFQD0!4ndPEtNn@zh>KZ0NcjX>1-HQWM|GxWk!s~Na!CnHv-o+7H4te z1(oPSQ7#5^deX8nkfLow-$xSBipsr)0f=fWeEj_IGMrenRhhhBC~*@9%B%C-leu9dg+ONYz+X}Wt=}CzjPF8dXGx6F3-Z61ddKKUz@-Z} zPA2BW=ETN?6WdNEwr$(C?WAMdwv&l9v5nhv?>*-`tN!)hUe#}P)!zHL;ZJRwZsEC4 zhfIQpi>&OGk~(euTw7se7%SxG!0A@K*TFVtn_7y=(@Xk?cyNS^XWZRl-4oD^LZU0)GL(X^Vjb7qk_?I|GwE7ZQR8x zxOhhst?7#~WIzxe^z#sF>scJ+JL*wY0~I}`9jVSs7u?2VGe@eLj=OQP1BhgeD2r$9 zEV%4pVd0b3@%76gJfF7Y!l8{bOQepY@|8$pyMssmE@p3&)KXGUr(T9+VO(iA-!4k+y=n zn^S7CTZd^%%6JAcq+X`Kk(Qp#Di8-rAlb9+dTAym>D{|)=vHHf<4W1CynAx1tpWksgR=LBN!5H zWO+25O|zo-u;bh|X-VU6X6%eLz7Ym~<=q@;K+Vr+|L5G01sn0idh;1XqDg2s?-S{e zYlEZpQ+uS}g@yKnZAF{(f`H3`j1S0Ql!_5pqHyl~8FH*Rv$?zVR1xh_^Phiu{!7vS z7IYj1uU`MNpz|t1A$nPa0fFV-U&7h)P)L~^sTKHwvMDG_^-co7)P;=bWw-}j^U%KQ z@R1(ZE5*a=yVd$5y^i^^KORbl2g_7$t&oh7pi+?iQ3sw@ZqJKTb^3v(DXJ~`cQ9|D zylLd$wxWpeiF|EjU*fS2hM4EX(rJwm-e(o@dxC5r+(x-z0Cj=H#R@G5^`4CNzIL|j zHP^#eejrG=$~yfwvuO#tJD)tY9rM!ckPX|O-&VZvVCSt1vd=($0Id%8W@@l7X{tHy z{c>Kl9sZl{TK}y1#dT$Pf80|-`SgCF_7-47|D>^`c+qhR4{8u&o$B=y#I}tIDHJq&Ckobg{r}a0<8UBd1r!O?O z#~(yhdZqXrBY#WZF-xj?_^5pl!p+0N6adR)zWQ4?JB&uOA_zAX4dna;bEYwai<3NA zo2@7@_K<%HhLM`p=p5DPl|YJ~GGT}j@|B~vEw;QScchH;`C0l##i>9vqmSWvhZWPz zQ#e@k=tW0TJpGQRST@a@=!@RrSakc^FtcLYY^Ok_k*J*X?*@9nty=M4*D3R6aQ$_1 zXM}zl{Y;3A&!_y0ks2hLau%;|IE5S@G-?wx$8I$U#k)gFlp2acE`A289Z1aovRH_f z6&xlkIn$0_9Uj}fuGk7^y4QB+3!;n(VvZe3-~<8`*SwwJ@FVKv!>lmxroQd`uj{}B>^Rz1*2j%St>WPsTTpi9gN5%4wJ^T#yZ?JhMjkXRBvbtVdv8N)tN z|MB{kis05;M@TisgkGhu0Yj3PHbII|;kO;?LfIRWDbr`_x(Z>qfe%qkE`FE+)oFkm zu=tBNOt{SDhu?_*Jw~wNw``ht$a>@kt3Z%xn%hWXci){QY_F7!G*?DXr1BTgbxrPr z0mukDugitRmq9c+h=Bk{?R{^1pgMO4=*3H_i*FXMi`yr=@PD(*M%7+y9dWe(7>|&l z4G@?XvX7jQ1i|C5$V+&QmRC{PCSgWiewYXGv8}ip9RM_z{wf-&16oxnI_#sLNoRh&HOSXQSw+w~^ zyLF~slv|#({ddj6X9GO>T<}pqcO<}R2%HJ%a_anZUrs+) zTzevc+!#*-=<4cfX0?&pt7Mtk?@li}Fvuf)PjRm^`LVeKgXRHY`9G|Y4hMy26$gcE zgPteA8T4v4f{Rsg6SP4U2E7c~Pn($2o#Z+9I32B164Ew|W1v4wgrzq_C6KG34m@lUco6~@MUC41w1nmG-RzI>c=#OY334}pN%Qje4z=*O5|f*;_k2=29`L-l zL=xa>HKA0p@oDs^7CrV6S=Rk5r0P&Y6{0Ye-dJk}`YYBP1Enq6NEh@wWX?ekn(XZ9 zF_S}yao^EJ#M1*6wm_BL>|;2x%#^5CbSc2t;rukj<$Y>r19FVLcd(X$qNRQOZBVK~ zUf^x#c}&hHK#agWD3FvwEb3gJ(a!~+RhwpiPR5n}DUR)^%S)S^#x0A= z>RO-{ag_bC@Lawro&8pa*esNpz1`-&-KVbf?+7bHTsc$upLY|uAr(Ufh4l-621&4R z#A$oZ`1UpV7HdfbVZvvU4stTu@*Y%N=Q~d{j>84P!XQA992`;j<#+HZl|5-JPb_I; zi@`}it{U&AV1&PN!#{?JY6s+gFz7@94T^BK-7h7`3im(PfHs0dODhqG3hEp61P(Hn zMXsghU3OcFB6U|(1+o-zbyVDtFr@>u<4xUgzKAd!8|%;3B{h_|Miq}Md)Z7Aerm7; zVRBy3Se`wYG43I6GdSRGbh~zfz9Wo|>I%H(`15o%7B{D|p{p}=@k4lWiI?JuoHt|7 z%B#RtH|-i63e#Vum$^|-qp#oEmh5>%36PKLp65(9?i`}jsBms2RNMibSDKqChK?gn zN?3wFVB{u3yl(hyMFLRXsb4??y1uRBca!Yy_BZA3`Uvf5B9BkM3&HMwS8Uhs<1sj0 zG%SEx)Y*yTo|LSP4or!{jA@a4#OY{jA_qKOcXeC@b+3H=Pt-+42#Ct@UMOW94CExQ z>40Q<3uAD+s5l*AiZKxzt@6na^Y+%aoHx5qh8b|}SSITDZ67(S`k57Z0xk^O4$@su z{Ob>SK@3d^A~(k4+{42ibXb@`EPLd>YbvnY@-)dZRUM@qSIMLzXd-f*$6%Qmej<2_ zJ%ketM9l?=;BmpmM~2=kXdBTh{1uR0MXTn|cFx^aH2c}UP!jt{lFqit+?40qNolIe z5kBdOUm1*@W)wd2C95mwFb$vi@+Sq#2>M521*jWtl^ro11U|4V$Mm8cg&{6cVpzDN zq)Ev2q6y!U>@E8C+4iaX%Sg7*uO)2MA=OO?a*_jet4U%i^A>o9}jb7}kh-BgA3FBi&(w!ag7q&Sd?5oj}~XA7ZB*>(7-W^E^lSCF5K#>n>qX3Q7&MfGvpUqBB z1(zGN{g4>eKsAVpg#S!u73PJjJ#kI&?#Yce#Ma=j!&gAXUboyK{W{#-lC)?qkO>^a zgmop8Q&m2iOb`5*YwwU3ueWZLC{qiJ^$CXtmEb~Urk$Fg`MF}JAr~bs7%yK?HXxWK zp0a$3y(VEG8Sk{Io4V@{@|O59%2#;dpn(#fb;m!Zf;zi7{qYyWaV{7$;^~{CdNqeT zb4~ZF#h8K!?oJVmorn%15^IPKUHBm^q(Gv9XOerB27xhI5FQ}{oE^Nfe%_2jEeMzP z)1)>JV+XWUm2A-qN|~zED2C?FLS)3&>iq#5{sC4(`mSCyL`imUwA6|CnHd0hr+d;1 zO4ch<@NYX2q0M@r&hdJ6UNq^38uV5-y;aY8*eBF$m|_<~*I47kG1bRR?};&X4^fNY zD-TMYbZD-|^W2-|sk#2D1awDO6o2{)`Q7&QZ3Yd>Ect_(Jg!L!Wk@{h!(jB|5O@Pc zF+CGsQIJw^{+vi&2Ds9jPf}*vW|sG*T=zqW1zy}1A&?8rD9~(eu4#lT7_m(tOSMoN zO?n5+`7kDYmYjEA;ZN@lcxj2Vb=uF)9wbNPYKGcZVxedSe`pJx|7w-Zv|<8&KdBL& zg3sf0d+#xE0&^4Uwt~j4C!9H5WF4L`G$T*`YC!?ggs{X$G0eWIk^iFw&^pL@ltxPz z7xj;`o`w*(5r&ZeW_YkZQqTdh`EU}MaBQnj90tm z^BxA!FN|MpO?N`4f+9jMZ3|H`38#KfwpeO8f5w_}9AP-OKOwBmu&b0Q-B+_vV(>BN zr%_FmyS%gJr5jcrMkH-6=0zxP0DWu)4!4b;66rnhWElii9Nl0`o@GJNKWi8{H5_Ai1~R+brVqX-0zw6W5lk&pc zXA#$*_&UcVcbWr_I}5|lRT{V`L~E{IlLEL`sdWkC8hkZSc^b6NoYiz7!hNSj_F~_1 zGxXYp)5U@T9rq58_s~^3o_GA8Eh!mUmkCWH@&724@=)CPVT>Gf2D;=v##Vu}Rm&>F zGHhR9eJHU-DN+Wmx$qJn3auUqZhjOR6Zh{e6a+2AKbgLbQ z2%kM+(-qLjKuzGUJ#qo$fJ*rbr37V=;*!HF{CI+-9B!v($S_0@R@j-0g`bLrH$8F%g ztK+-1LA@U}Q_f`{#dC^~rHqJ2krd3L%|YLzfblZ9|0Q96f;DVeLx|j<(EGtdR`(6C8sR|am&ia;rmFw_R(t^FJ7iW;PO^rUA*qNJ zZu*M;CXC$JyYDT}e)5lTV=hOo(zKKY{DVXgNMCH=m_(cXKy|e3PIuj}B+!Mqaq({c zew47ScQ7h@ppDBlAfgVp!^PERdZDdz&&v-h(n{$gF`ngdPRQ3|E!u`ooRmPv%PzDa zXy)N|J*IXu6PhE$HC32#^zT5STN;{)FaapsVdkNdhfBkp2{c!SIb(9D37rMxrExIT zPYn*^%6_Na)>(`kJ@>P1g*m5PY{pn3=g2qwiJFmA(0IJ+rz=`{X!ulJq6e@pHBgS3 zlkwEgR7e3=;A2;GCu1RI^!y;onMXxQ|A9O|A-_Jxfgp-XH2+;hOm~>qKyWU|FuQ#O zqBI0#`D$8Y@ou{J-?d_B4Aqs_kvw^26uvsvLGT~pPO&(J)Rw!(Ub|BL6c`^{!- zWx^S_B_V7E!eCsp49i+{SLFWt{t>c+t%F|=h-&Np-)A`f`mrE?i-U6D`rG5}ENO=+ zkg@%&^K!t9aZe!S3taL1`0};J-m2uyhd9g>4Mw_YnVvGE=l-cpQrHFy!^jDU;_};CKfq6HF8Rb=|cq*C~yzd?-1|ZfW zxzGYu?luf^%?*u`WHiZA#V?07n0->}H%|}i@ZpyiYW_ydA|QWf4W9ca9Dz@$~vL7kk^@)o<#6C zieGPgFYdBO9{X8n7m=jxmc}_XlS?a@i+#s2)?_ET%@8fWJ?TC@9uNfb@oU%p{~+~; zba)dCk4mVgte3S`Usn%1!ipZrNZ9|d7q%-Dw!|W?T1) zWLTbCfJYG~jZ|VxDuEzDC~?0@WfUPGtP1g(kiouWh-BZd-OgmS;D?=ZJy!mk^IR%3 ze*u)hqXL>^%K^!t1p}jy$PLS0xKu^>+!bUh`2^vpDZC@q?LOoYF+6zR&s0ZpBWhlHjnuUK-_}U}NP|E-oC2~cjxG8XpWCdc z8BJ9vsvc*^AD~euLDwFU_W@6=GZ*`N(q1I>>B}(J*>GLlh~kMMN~Y}r{t;VibpFs1 zZ(hvqP1d5@sPPfR0oGej&tsG8CM8eG$}XSe=m9fu#BJ@f&T_M^+5a49V+EQ4^gC8% zBmA4Y3~uBGFO%34!_9e`vEdAc=R0kv_69xbVS+jvbe62=|L+>27fm9NK^6gymEuoD9)6s6 zDR$k7XMvC(+rJ$pqQY}~Tj}PrOnacIsQ^e)m^>U5GVoe4JE+3yu<6EjA=n@$AsQ0+ znW2t=7yw2T7;KVMW+aMQ5VtMFktkqUP#FC==Y=}=0H+J=am&+o z4289oZ;Ci~(S6B_akn6>z3&)H@+j3tFhfO(m zp3WXkZ?DH@S}{8ko1Ei3#Y-__HQ_FTyfhl3vcw^RkOr2Xy zaSko)Gq}-Hqbjt**~yaUJqK=V%B~Z_UI{$3_5iP&am`Q-jB>rTp{Si44&)PjD?sP zL2c}UH$mvO1B(U9G+@6aX~N9L6jL3Qkb(nl=0e1pqJzeSaH(V=AJI$ zz)yr+9L=q4=YGRA3Cpu3Zch6N^>$UyMiEQb3v*JJ@lD$tuMe#+PA8FV&^}F~zWGN^ z4Ltm5JJ(=%cpgdtYjSPn#6S@2vkd?ER#KYiMv*Ja*MijR?F0jGeV$Drrru1~KLO14 zi>Nak8Rr~!g;;O$P|L&2N7d&XMv=8Kd;vytQ|2eN@we1n^W}Y1)FqrzUE5g|AyArA z6T9-?gv*V-LEVAb0394yz|}3@$cH<p?|b<36}pSa=nf{8}bZxqs$KI=o@b<$XDSuAnG z|M9tg%KY=W+JY6kF8p6(0~Pvspb2VOC%$?_lG=+hdfz}yO4=@$+FFm7)Mhb<&2A!2 z!Vox%nb#LUWG#A~G;4bS1{$HkUUNfk6MgwwR)I57lZIepHBcO>8R2dq31p4sKg(gX z4w%s48aov$y(LhjX-GuGGkAcrtsBq*6Rez%+zi|>M$38f*OKx*CqLb%KUuThtZp0Nci=2FY`GFof z18s*f^7$(XJj3JPF7cZh_g1^zjhNHsNa$fe1Hj6H%_6TrKmu722`zsk6hZ^sH_NF^rwH zAAuY?{b+_(4h+9O@~A+jV?Wq`d>LoAKnlMn~6B5A+E$O>9g$q!i1Wc>vnxG#RKfpr8u&cElLoq#^; zfDw&o<|sw;kLNt+5~c?EAn5QR@kj5fL*@AH*=s*nMlyPSlJr_amskaVgC>MDoKLA0 ztqv8Lcm>_~l|Ljz2aBABDy-!2O>$NC8|k={2mI3*B`KjSI%LCjl8Hqa)sVLa?TAPh zfH2#-nkxA%uAK`=3aZr-y0hKos`r~4MwclX(1}-;1 z>!hzi9%A06v88i#g63MTJje=;XtjV6DsM0zSJIg6rxT_Cu_7MV0*~c`uW&NpUPR@Omof{`b%30C8G zpoV|~m{vQ35asWsw$r+9b%!qI9(%3b$p^>ZEdN$^lblmDsUWVOW}W-f`P8p=^y`#w z|5hx&%!M@;dob*5O)Tr#K8QLfMkZCF+G-Lb|1%UtDb_FKzhj(xJia4G-yp%(r3P#md-w5y1+rrbI6`&Vr9R zseR-8B5cXqTnd-OAQPbl#~*)$Mb%o%!W!%g=62 z82&L*6-nBX9-#0Jo1>j7A%|SylX7tL>j;a)H(2+#P_JAeqD-zVN1r?>ke-V0A}@n%P?FOKtLue^=UiZEPZuaDh6T?9p%M^>DM z4upMx{XAt2U~O%^wqWu(!*88gH13!Ey&-jf=~thFat(DhID>RR z9~|&&@2<~z<~jXU7z~ZpW0~eq7j;?*89x3B<~5^>d*MAN1NMRpyQ5_pV(}b1nIKH6 zDGXusmDux!;f#^+43n~{-2Q@&&K97jwnZC8lGH6_v5VFPZ@9^_sX9vUadl+{Dz-&k zb`xlOtP$RveDQ#wbNhKwF8?`}I$6JfbKAg=E>`8X@b^!NQC*x+Q8x()3&*sM^=Huc z)3G0n;DSi^jUgOl^rH+^;TAZRz_V05BdNhzbHgHo;@R-m0Qh+%81pfSgNg)Q0^d8*}OhRmrnd8cZ-j8W`> zrPiEeMx-1#(i`E7s6E(QeA2oylRXBGKar_NsR~SRCxyQoU5IYafWFJ?tU(${_@D&2 z8Gqw8#>5aT;}Y>IWgd`yGQadeJLG&lu&kD#5f0$5@62SL|==b?G8T9(q)9h#i= z>T{0dg>+{2i$suJ?`C{oQg7q44)QjUr!CU^L7))*yfM;_%!T9&naWuQ`Q0n*>ibf|O$Md9YaMdVE8*OkR9QVIA$Yepa1fRL( zHq20!nQRqnSgu*Y`c3wYeyA^cweJ4%)Za+{{i6d&G2<4{Dyn9@zrpNz7Lm?iH5Y)O zO_r?p5xH2J*~TC)T(SKBTy?#6|CH?mUC_=S|Dy*~=Z1*`MEF%e(l+|t5qQA0(B;G` zdV=Qb3Ywzt-6`?;1H2q~h6TVXh?A`(;89E>Qd(eo5gesjfqx2jOMhs3R6M`BZ0ui0 zix~!8YmljZOvVeM^GBF!AeJ^QoVelnERWeu}~=uV2$N2!DKODmcEm!TM)4R9j(=$xQD@o#C}d&$DU$0Bh7*=euYt zE*23)nXfU2`)6&6;d?a$D(0m7>28HFf%*QNCwYNENkzQ1ad|~_*Ezdw;Y{4=ayP?+x8Q-HlBY>r> z&j#Zf;o;P7-r#j01y}1f>~#P6!Q5NcSCxD{urSk`5ABN*VqKsKfZ>wE&BHGj+|yZu zX<^#{`&t0M?t&2TAYRBZ%Y=^~L1N~7tc6g3A^ht* zGHjI(*){U%U1TLICgG*kLM1dTM2+}kyLY(p88W~B1oDevxSE52()-Etc|5fTKC$0T zJ#at6?vB1cX{$j%)9~w154$rbJShO}?h1;nJhjiR#_7c9xPA+r{KYb)OqfDPH)D@O zZ8N5pli*Ji%*&(dvkyMOM*lI|hrnneVmdQ`W?p(tI#QqvG9>k71ycZ4I`#yHnzsKxWVzc% z)5^hDO~*w@?$`Se7|<0|kmt6fsn@&_Y38~ymrJGCz`-Na4*&+$Euclp=53J7EXS1 z^8JxJw`=9MEB<$&8uIK1 zEAY2>nt6+QLoaiQi6=&#bw6*q`uM*G+~+c)JjmWyNx4&(|Jht$=My8dL}l*6#?Kpq zanOO#dtP$!*bbc_O{673aM}QP?F6<2DE+iy56DLwxDLEkT5R&Ms* z-B&FFqifAAxgRg6^&rN?>>Y1{>xi926B2!^n#jP|(L~99N=*JRh&u=;iA{?=1Zsi@ z6UgBsV2Ka063h=q5Bh)d#xD z8wv}BUXz7sxtYmo>l#N$w0kfEk*gcPckJyFQJ$mr|K|)t$I?+*ZFd zl`u?wxFX#*;f0C2A{w;i(1F^C0CQt~0r#FMU(cL_Nv&Ev{~!?Wi{KST&uN~{o8`>C z>J%0P^=L*1p9B(CkkTFETkklzm=iZ;tl;IY?x1g;-WU_@>_WLq5v#F!nfKHc#NifZ zGzSU@Bta>mL4rc^VwQYEX{Q@zTK7;U+s?cxTO7YTVZ~gd2fsdUp6br%xg$77x=TwX z<>X>l!7c>CsTN(fAM`hFhv~=qg)=bC6?S-+(W*d5GIC5IA`sK@ z4VDY~&xgu=2|nl3lUhE~MeVv+p)wL#Q2A(zJp^e!Rc~{vxHR-+4Q8eW|DgV0Rp{tK zC4B`c{0R!|fdisLO?Y;Rbqu&G0jLRa$62>~>q8Fo4(3RH23BqV&-2!h>8#*v*JpGJ zX}rkLTo06)PIk=vbfIzr$sX+Z*xJj$oak`#Le#Zd1T-#|08>$z@jtbR)XnQg)Glj2 zj#V3neK4p8RS=?Shs{Qxf=4vc3-ZI5>xt$I+zt5-JrmxNOfl?2o`v41w(Ddo3w#rY z%s|=fVfrwWRCQ_BKZ|g9|WoCn9Peh-kzG`DIi3F)Fo8tUk@X}Jr{OUCSmN+U^QME; zIS^|{k`)(aK+Gg_8xw3aX-8y$Za(;vqeTs8?iu!X{Ij-LKtch^H^n`&8>ppe5599` zA|@Hd_-4tCVuZ?m=W|&QnjTd-$QABSC2?~e$*>d3|Mo4% z{neba2^~!=cIaKCVRw~4vW{WPoni=oCNQ^Mzy^<<_c->%Mhl789?{35Z*mST!u`UJ zEb2f#B;N^EgmETgUlV5h}phnMjVJ8vtnntekaVs8xS3HfSx zBGAiFHeUbw{Z}TN0@?%%Duj$H42&5fnTY1Z6igdq<@)0f#@**1wsYze9}_i^?<*?O z+o$crBGPc;I3bg9iSR6pEYdlbe=j*y-fOnYpPYJF7-_)Ja8B=4eyfyL$Ywj{9%tR@ z%>16Yvs$hFwNNU@K_=e9LyV?1(;*iOVifZ$hNvW5;TveJ!=a>Me3R9X#gCIj$wbz( z^A^iX6gW2R%<^9?B`A;)n+e2Wcryyd_cF zlu$%N5657sdzx1A_hJvGf0vR@SpMB|HasVhH zu?ddF2Zk@7@`8DEwk#cT9VC~)am81T_)6s*2j=)@lUCkp4~xc(+j)Veyejxx2E64g za}~N(!wgye2RoSx$(BvrGayVGFhyrxww0n)0s92_W@EJ=o~Q0oCl&QjAcUlf6I_zZ zju>5*ESayQdJZwX$MiQ&eK0oK&OD8X+=xxVB z=E+RvcII+nrI$`exoY#?_Mr@t7&}Z+a38PVg*Uf&&+&51LV3!1_W8e=aU7GqB4kaF zZ_CjcMEyq#pa)^|$mMCpOtH$pK4nX@Zfd;rS!0yleUxF@2n5Xv`H`rN5c+n;BfQ}z z9b3O$IHJJ^6tqKv{il3U{R2SW6Ol1E&|&_!oJjrZdu-6VB-Tr#a{#{GZ%iMjbH?lP zx5}_*?K_Q$4~pAMQOXtM%&L%B-o|uezs^D_*(jC50$PL~^>;%vLgp`8MpxzZ8uU1l z>I}`L`z)lvN9v8wd(286mu!sNnL=n8`A*%WVj!7#rS?T>0v;6CmCKypWda>qElGM!}q%AIK0x~oe z>%o4>8c8AdOyjEPYs&_ZB4iO_MxalY6Df2Hz^FXaQM(*ssD-buU8KxsKXp`t4-sr0 zF)mf?wTJP&+CaZL#z>>8wTxUnF*~JB~nUHN1xsUPocAlmOkN|RFVUm zP-R&MQabYt461hn8kH;3TuE`swq0dt+xWH>Zox`-xtGuiEz+$|LXTPHWu*AdO)1wIu)*-s<611UZ}OGm{4m|WiuX>phdbJi8Ifs zCqqp!vR_o3RZ>CMSjphJN!9vj8z&0Dd*lLzb~jPYKzs>ZT1&DM@2K_`aQ)bZE9T!K z77@y5dUNvLuhd=a2S!>qc5rRZHkKK#kCxbVw$17HCkhO(6#TQM3-O;+2o?Okd3wjyZ+l@ zaeVmMh(HjJW$vlW#-I|LJ06MSu&>bdn9Q)icUNj@0iZ!KRj32Y0=R?`?HzrT54I1jPvH&! zjFzrjGd$R=vAzct#rO0@I!-u8aNb{(Bar9-Y^|e*?z|#Y?w554z z2ODMw)5!7V^hT39k~-&kz4;uix{U0_@|^ZLvu{~n73Tma>$l7R&verZEH+Ha9sWor zmC`O3+q=Fcg8{bbwN_c5YE5=;$P_fTImGqFk4$^Z+vz<}(YX2l7hGxZ;NSz~df`M0 zFxD~)yNggGQ~m$tRzo6>>^HNNL$|I%B>&&4%|`Ysu*Aurm$JZl)c(zs_V;Y%cVWk- zy2jcP5C80ltY#T0`P5XA;%9tEy})p=I!z=xr@z8kh}YjMNzMtQ{f)=ZX_MHsQsSD1 z_Kcvd5o*KRa)@Cp&HzrfG%& zyhEhujB$P~n+}l*BnCHND6RjPbExwD>R@x3(TqYTNk}XtXb?56{k|YCD9> z{`^a}@WmsxJwHO0lyzWF2g%{eZ5s`dv!Qza?L!AtH!R7p+OzPS4nunpwIp-smfofig9e^|1Wo|o_D z>Bgf`-Fq1tL)n`yv_9zMuzc=HWT07AVPv!Q|LIRY;M`^JmbGe|pER#oHoWp~TGX-B zZqu>*y%fv9bz*yVg+3V2CT)Fy7@#dLOQLKi-}^tB5|ipvelz&c=*}u zX~Ma%ihy74k$kq>z0=f5ywAg1=)-p8Wt@kpnIRrkUql>R?;yZx%sAJ-j)vm_!uaoq z%tf76t}NFh5q`Z|?qXTx(V)ZrY80H&y+qxapYcj|^)Ys4>;s8mj4*-h*k6uO3*Z2d zo@F*M)^YW<)A2eB&2KhL_2m8OsJjUC7?{EE^TpLVk{PdY0hE#rTJVwms7iBBNcn#1 zH-vw>*KcEv23+`h0`VtT6yS6kVVEIrS3SBtFH^QrSu*L&LxZtAx1*#Z>n2y;%y{Qb zzuW$Z{DFn|Pc;V%`~tCoODE|O$orq#kwET+R4W9E1s!7ERlJ#ZWFPMD9AwKR|BB~6tr2qJZQ3QDFo28@u_O)u@)Q+%9OAf zRuj`S4pir@FJTbPVn&fe7auvWX;lp>=~Y_)P%tRV(%g@8Q;JUv$zq_uMhl41t&A#0 zKenR6tRw0z@Ec5hf3$o!2Ky$iHfT@K0V8dO#+mPCDD+~4<`yU4?GN{MdG^?C&~rwl z_Xg8es;eM+bdxGc;j{dY7$XE>5HD0!)#iANlj;_?M`hSX=pK4s7^R(_)3Mi3UwhW* zGO{vg5K)Xgh6)n}Hynm9^|a*)*aC`ia9Sb`zW!`~WN!gu0mf+{@hi_aCC!Fz#hiy} zbn}m{O;89BP#L9*2z9%}?{uC~>8vGswCW`yQ)*NyUEA4Ba^7=%nlcfLnXV>(w~1cJ z+Y~d~I4`Fs5xdB@v$UusHdB<+y=1Ccs4`cbbw3#YjpvrhTm75p>2$;I`wRNA1puVX zEDL-&4cVJ4CrWZLE*ngw@)sZoWwNAvK`-7rU`}$kKRudNEt2|rhBV&jd*2%pE&v@WRhXSSkfPJ^ z&PRd=*}MnHXCRJ5-jamO{Oepdf0yyWxPm`q&dS7|P3*5dA#hxLl=>n!?#1z~sG*49yR56lh zEZD?U9_uzN4MR&^lF-tPV_%3>X(}p}D=U^<4ob?Y$7(D7)_y*%m7djNN-xX#G$^ZW zdI2=MSlF;6{Nd&>CnoY3&0Q(!&c^l= zgQi{-5P5{H!^LbL!nq>)Ho+sDdc0>B7i@;iF+vSJ-ecA6@3#{V(Y9Vf_UPtA5hGKM zE;)_+$&N8=nC5T9aTHws6Y2#>@uthTuL+A6YkkZ8j}yXwGi|^CZycm4FYh^>z}UJb zqcK!c%hq&WVEXi=m(W|9ZWV0+0tXBdlylCbs?643;J?)?D*`f< zo^Q%LW?k$sQNzT!N@U(tv`zQBIQNfRCQc1t%R!~7tayMz?V(419IQ0$+fQ011VW?xv7df5@XWq$%Tr7ESgq@1TCv=Tg? z?dY*LbD?f5a4jMUuMjTC*pm_%g4VRDNyI;rLoBCNw%I(6XX$vX1Jg@)d3CVyyXAK1 z$oWd4ViOoC)qY+-5w-U%7~WpvJH2-6(8_T$9y)UhL>3in+2x~+x798=;USBp&AOPU zL}Oh?cH=g6F>PO+bNbLrO`zWe_v=E!cOWGgLsIoN4C(nFV)qru%CSk>`&C}lFvF)s z_%bTS3JeHfL6p}nC=z)QuP=fz=FLTW7ED6jMm(f#)y#S}(|b5wqIle6@V$XksZhyw zKT3an>-qAW%H)t6tiSs$HsvDa4X&hO+gQxHpddz&-&CnK=1O#0w37Sq)BANoS7qT! zffq}@ftI&Z=k>@I)6)1$x_V4jNWqG~4ZnL5! zd|ac72zCk6M%D6fwa0zxcCzXwX%qVyn`w6S-PRjHvZnskYL#&;Uxlit za^fq+m}@PJvvSR15?TCZ$1(fw=VS(psc|-o*N+4amAmbGo2j2SPQ0j+`fU}n0BTi{ z@C9qx?){=MWWOt3m0zCG#K8m}C&VmID7cQm;8!M$U(>{7X=r~f!vxTu?q66^z4;34 zFvQC7IL?x=%cHdxPzjG(EhZMs4$SAOpDgCApURUB9@c0mPdMg$2doyoAe8U4r_KrG z*&Lf}mMje2)1QsmJ~E(i>pUoBRJ@Jkmxz)w8)YW>al~PE+&iY`i9N5%fy70jfd^s) zc1??NIbQF?WOit_CcM9STx?wzS&6KiB;Kb|{L2(Aau<0PuZS(R$m6Z-i7S zp8bgry;f9ySeo}*pU|1+sE3789Oor6~E=KBeKpF09hYQ^E%0g zb~?^>&EU&ox6asl9&U)DnQgLM&h#nrIuc|*l6>QPBhXT<^L0TP^#zYf{kAn(=vCC; z+VI?PIZHWNjYj8;=Hl`pJZ)9*dm@!#h4Awl8i=Gc6eX}1^6dXcc~In{W_5ZQJJ&wZ zWQ_3!=Kr4x_w#!K`mt^k(eevK@c*xA|Gld&7!dN2zx>?k`(g~ZWD5u=l>pioY{j~i zc=frjuO?-D^%_e=3pZl;H6N66DFAhZmv%2Raox`gmG+i&iy%PlzIwyB|FqBF8;>>p zx4*04m}S0?V1K&o6WQDR2{u^ELRa`|_K#-N0E#cSQ*Vw2h>Ed2+Sq3FobmQ5Ax$I? zlLxp3NX5i6QI)^kY^0cH8WCvv5eH18q5Eqn{}Tjq#W=L|4BHizw>*iEPL@O_?l z*E`)C*sWIe3>r4Q?xu!MZGol^L-N8XLE@;}73z{Y_c!g?_|B- z5~L=vdZ{BktIij$k|a(E)Mju6I&ffpR8b~YL69P^)Ouc3vK=4SG@HHJ>Z&@Q_aYx+ zTssH!V11@Ue-F+ZUdF74^Qvcptc>~% z?F-j~NEO_)l4vBpg10Mo@$I+Ar=%2Ke8)xo+eJm`$vy{_z(66B-|1Z5C3pr^CFP=- z2p=1+J%zq6kL2r(ZPlxpMd>3wk__)(eAE}-Nd#ul<0g|z6M!;=8&ho~7m83~tAI9hZKT^+ultRe)wOh-830gW;$7%rSp#M^gkH%H1`6~ET3lA8|9qXr_IQ{$GCw_Nqvk4Sx5ZI(bW&eR z0Q_;y%vbBWRbQf>U*h1Yc}uO4M_){O@qcL?se0C+w{-Uss!B0H)8Y*ALmao*M_qit zXv*+7$bWM>k3>{#6NaB396f1%_0&46nlhalUwPid$^OjindFRXbh*&{$AZ#qa|kv8 z-m{k-htC*%UL5Z>JGQ;IR-cRUa!h>+y@r{dz5}1r-c9IbE4?YGPpc|5m#8(*Rk=l@ zjafRw=0B6%VtDpJ8fwJg#9-lCT$anUy9DSwadOKD%laKYa>}$39+?0C#)+o~g^Cs= zcl$%PvHO1qTyr82iDe7&3S}Olh(i=-ylByQNvhB4WFl4W?Awc$o0edNu4A=SOS4;e z;|p;XQQX%>DY+$kCH#Gtnmq|GT{)g!PcrZOL1D|X$(!u){0%t)QzKTE6iJrvMNda?e|l@7U*W^6f&QKsc3)}~RxCTTsvauQLI*_1;IXID?%0~@BAcXstZ0`y>lm*l#V;vz zRqFbQCufD6;u%&;)xY;}8oE?2>Q?I{L+8F%#-D=yu9d4P1n&A(Tkr}=G`={gwQYMv z_dZ@YSWWMpQ3OPJEAp#7=R8ry-c2tR&{{u#PMy#|;yRU;{lj%In3_u^Gy?UzJGpd( zmcg)FTdiD?!=5a2g*dL^(|+j~6{r=4JccAS40ZC~RD ziM`V}9fi{*YNujHmBPJv;ZC_Zslm-4U9&m&a)X-M>C(PiL?W}oqBX}SFO3`3r5AN8 zZt#GZPg?G>T`#gqmQAUYI9+E2QT>4+bx)y4%$94z;0*XB2;TW+Itdff?jl7JOh}<9NR6;!k@D_RtEGgM6aUj%U2zCsV!`` ziE^f^bshK%oc@5dorEcdDY}~KAz0HlV>=x%3Tg;uOl0#^`1F`f|9T_+{GU;;JUa{m zlw;Aow#v>w$L8N>ZX5)re3B^w#%>6V^-u?5C&UMbtjcet1{veuMSmotD~(()7nEEv zcF1AZu2w9G$f)INALY9TE2gufL=Vu%BXXZg(~-Y^J*i;q0YTb*f&`nq+{;m%ffY+V|Lhzb$u8EnxT+ zu&qa7*hV@_3#frgXL_v_9Z3uO@H3WcyCN|Wt@us?K1PpHzh9)NU@TJ_fqJ8^78DRQ zKqg3xK!Znwnq$d@m!WI6xqN_i)CCJgjje*2bjSf zl+P;;Civu*%=%rrjAS8!Y!gB?y{r&C3E!Z_m_O8)%B7!z-8Z@!d+t=lZhlGL4-&mK zkfimG$KgGN@KD)uA)zHp0{5Ss`HfPY<4M@TMwj@t+SeKOy$6yKXiic<9DJ3`de)RG z-D*qA+X~tPt1mOwy15#6+Vln;uHstn*G_g1KJ2HdDUW6pGu-3m(!v-#OI+fyM|`pa zX_%;8ONn8pr&swUvgnodEjr1PTGpz5sdXkby1LcCXhmK-0bPJt@ zB)RXyN;ZQ(%6w2NNM6me5}i=Klx0rzK!35~vo6V-5HK_Fn*`|k98Bi=5K`Oajv_FEKl`So zn)R)!q)>J)fwDs(_c=_ivg|SjPp#)L8dE3AH-^VeH&ROo%1-KpSZ9n~4rS*0C{b2$E9*0a#tp3szc|Eu;% zA2>d59V-3OIco3U`il$(4}26;@@P+W{xhRhCT@@;4wS9QZT{>T6xjv$%fgq(}qrc(gV?V-ReT zoxFCJoELB(P;_bd_DDyP?rL935AmWhm0t%NKV(R&g{0b-9B12mI;CxB-{8x8(r{ z3R>0~^Us^qgoz$_d!Ihgv4pjU1I8R?z_GM%l3bgPA(1rUEjU=fztV0Fz(|aRIpjTl zAi+z6@YAJ7Uo|3Qd;ibK$yPbW4)MP*8xNe)Zwtd9>gFLD*$YiND#i@SlX&(SgPzP@ zOODu$p#t5xvT3m_eluZ}MRh*gtat%TiW^nwc=^&i!CDkHB#mdcvvu{IKd;l)vl;dG zGCFo#ZS9h4mzf!Xz4P?S=cTgUosZmP5e6DLN&J0P%rOdmAPql_#@5XT$!YrGb=RF~ z-N)E^>5JH;jYS(pA%)2_fien|mpN_pDt?*dS?_dnf_rB>gtBT4Lgmv`^?1_CbDCl2 z#Fi>mjd|PKgD8F|#LE)XkNqA1$aYn^G)uo83<0S+ANF0L>OpjXA{fwl9+l9s2Ae$lytU=T;>i~~ zamt5$I(@&r4-j+#M!=A%4(B9g4zROJkLL4C%}Gi+epQdTlFCxDb#FPhJsYR3X_6wFq3{WbK0Z(rulMc5U zm6LxkPmpo`K@1}11iNd^{~$+PNLw@p;GaI{u&no8?axWuEA2a`>}8(P`9*7O4w*|$ z-xR}^W}JT0tVwQ+1`oHeW#6erJ?nmJs*0XHkm*0*Ne1;tOqieICzVBc|A41|pItCe z71BlYNk^WPk|}cX6g4uwW2{gwj#B0(#|Kfh{X@PJcK0PnNxkkM>({5cXUs*~o8nGI zK})6!KAX-QW!+A9<#)e#Ris^i`q)J+_+}5~IX)#`(NP#xA{f)r7HU)DEpZsB{1jAFghB9^$6|x$&4Gb&em@vIgx7tYh8WHbd5(Le1 zEmC+z!eXV6vGPg&UV0TfTlW!?AzAD85-e$fxb}sSJ=oMYsuBmSDJ@HQ&l9JSFRH23 zPO{KOb~!@cs7Z<44Ruz=23;+%Er*BIEvHiNl%;OHB?+uXK7A(ySx&2wy14QymUgXK zhWS}ev|N$uCp494OQqH{M)~+!g24A8aon^MJ{nx8-+uMV9X;#qew4`AE&>Q%BOkLb z*uYo8!EOKNi(q|H^K&pUC}lnJ)~Xp2ih0bjJf}jPrW&m^Hc5zD3v;BB|5sI0m1K|o z$9UO}5^^g#HS$p5llARaZ;xyUzZJ#|R@uM$XSc`oI>DbxBHceD<^CD?!27GhkE1lF zB1-}RPXS|;nL|;s4QYG%TSCvmA(_D0a_xcw*H#IK&9dbip%1Rdmb>AeU>u2a=4gW_ z!Iv-ddfPWxY?qn>Z|w}uwhR{A#aA*90syYhaD14Me6S~QayfJ9zS1hSn#~yH@#Qhl zHgxwENW^n-_8pCVVu?zZK#<$cNa)P_cnZ|LPmRmXktYr&VA4>Q}}oBS@yNOJKgZnHDhM8G*!aYc;USEwNc?zVF(2ukcx} zRq08iKBlS0lh{diP2u zsr&W1-fa7voI@WTOH21kTX)PiPzeM}{JNOjf37oh8zUUqI#%C%nY!`p*qv4Z%qs~>n!5~7?3ZQlbkDHlt!Cv=S;Fr0&vc6U7M(0{HA1;6} z9%(9I`Po5}C3FB`k~!soy3npsmUpH$xVmd=-(}lxD+lx4T?Z!NS5Oe7-FovlwE@uf z`B+NGIwfW7J2-Z*FyM71Uja3K-bedC|bn~nI=N!%N_Mf}=^|VS*lT!vW z_6QPU$G(^q{5kmYm{t)$`BOz`J)&E;F&wnoSef6Fu%Ek_{PdT5{Wl<{<@t~4$?*?B5Jhg2vU$%+*VgW)!nIe;$@U0-Z>qJhmnA||Ud z5xu^2s@?aS@V-I25j}2oUt&R#M&#XXcKTV|eIcP;2d%=IL9uZOedNJYo+wq~l{bP3 zjUBk7@>!G?9d2nPjgOZ>r?DP)6VNDDPJO5->#E#MoxJ<4up(1UIQLfXl^eW;GJon` z(7-AYsi&G&Ldj^5#6wA_A5oY;3I`3;DQ-YLdd3u!v_~ws$Z`1C56Yo!1I}x=lX|$v z74Ps!E+_CjC4uR9U}Mb|lVODEd?6z#BA1wPF>}wbA%U@^i-3LeGpGJnLZWk=X!%Yg zC?uOEe4Mi?4mkni4u_f(*5yCn2(hp{Y93J&SiaQ>6|@>H5KO|lJt}}KPfo*}mSp^< z9H8^x#^k3)22pr~sR*0OvCh-p^&>DU`v4Igl_Um!3$m{d>s_BeKu5h+6_IQH6nBo) z!8yEb!)p)rbBdtJC_~t5rTuJVHDI!%ZZw{Z9d|kg{je+-?-z6^pS){6shy&UNhj?* z*@<-l@?}%R36J4(g!bXQ>5m)A^9U**em2C)&Y zsSz@Y0s95O-c$01T#%NAsxKP{XbpV~tFsw1^`qB2czRldJiu{5i`kA=x4fQKx{KO# z)g8X8?uB-`5dmr&#O1)}^QQRBVjOI8K0`{`XLpL4=+1w5Mdvtwo6XUm`rW1fRjxmI zf+4Dq(K!Qp%B(79$(2SwCNlw_KeB^Mx8@ z>0DU`eKh?8Et$f0-w~;^hUWF_96_grqx9eqfjs_wy0x`9@RUMpDXMs4Ome!$VVTPC z^-E8|ii+60S-@t+d;6m%k3i3jWcGUb{_z$f%7S2znZoJCG}5CZKsGk^U8cB)J(X%@ zH45h}c(dwFyqcW|>9P_7f~eyrfz|Ld1=F)<}0;x(j7wVnbW!=h-$d9B`?RQ<}lGTvX`FkHdr?syXX-$+2hImBc!h$*T3v*t1^d}RrcH!|A0 zqMeRNyVJBBiBxsCT$u!u^m#stfY7>nlJcrwd4yYyhEE`y%jK%}63q@R#mXAkgf5NH3+)zb z4antP&an_l08~$4h^+3nY!X;L2@elicO&c4l5moHp&kg64Pn2 zvg&lHONu5Gb(pLu?KR@QB}p{WBy4kjf)|!~YdXLR25;v!*3vRoPLzmpuZ-Ajx z^P>KQe)q)N3^g`#Qp{0VfS9*&?8@%jHYAc{5Y|qUtd_n<`EE@K^=*oIToJj3L#@=s zoQMW{QCF8YG3eson#Vyo zz(0X8bm%vtrz#Jv+)PM@VeBmLh1~+fc=E!ZI z%v{ZZo&+E8%i=DMU}km*>Kx~7F6)wVeOVy;*?s^j6afLZ`dc>`$CTeBNr|RrAQ3?p zxcfncim&--36F9L$MQn~RWRFaJI_ofG{q0j*A7Qgk|uN>FGg8(E%rH@9f&4uuhIbE z385DY1RJHSX@BT_f4y2MI;&$taurYl16O&1cZDeME2e3vgGF#Wf&GB^bG9&IjrOn_ z$C*3}<$c!6)#BgePRKOfE~G>3MRM5VJ82=+gYKV_TU^Y zhde8~H1SQFE8xY?&9s)M<#W~4rq-ZS{eH*9Kw8oA;if|Q zUe!07QE6H)|4Wla7fjE(q8S{}q}RKbOc68klC#MpYHy`QO|ajJR?Oslpj()X0LQod z^g~85q(`ae+{FZgjR8xaL!r-53B93HEx=K3N)$6bQ;nWEW*dlCKX4FR=AXc+kQz8m zMo%o!9G9Dpl`#j>Qo;PiG1NYPtZ{|N(saEW;T*~v%)O%YmQKKB-fd$hO9egJ>x$cw zv+nP{C@`!#rM9a9-rMh=&j{!3JZhEMXeXJLQYhV8Hr$q;yq9dbKL0^Qu;W2qfi9Jq z9Lu=+GZNLLd8X2{rJAve+*&g=9m%JxT!Vi{t&8*Z2_O zZPUSF*@SV{i0LU?90tYJ7QDm1u34G$KGCooaGnWwt~-ch_QIx^&SX@V?a;ec!!{-6 z*V9wx;23~h#}7>ygZa#_U2bLHGl|266=>179RnJGa`cI7xKQJKwNgVra$#c~%rKpN z-q{8o5M~m)r2`KLy0&rM%s(}>CU9HuGh?sCI|_p3`Wc)GLk}0;5!f96u<=&6|F)A4 zlI_(0P3!r|6BgKVafTX5Fbtf7#yhay*1tXQuLB*Mx_%U%F)3!iGSxFLLi|4H6>PcZ zb4o7{J`?QH?wStbPvqLR%kNvPoVT(jvboNn%L$6r;7TfW>pjbiXb+!&%jhNy*7+`AV6a7QGh5dO( zhRZ3Y8zcko1{sP{L4Pw+c~44`r`X0ISRGQIV(=!6oA&WW)0p?(WRfXy=V91w3Fvvo z{1WIN-YkMMQl<2y_LHs^{A$l;!ExBq)Y{lghPL})03x7E@V-(B7hjos<2tZ=0r_EH zrHlZyQBxe7ZEim%!-@>tG7rm;a{7lbgnUpb_rTz5D5nW|QQ%%#FWoAm(WMTV5yzr$(3{dF_7S8^~ z7TSA00%Qa~S->4#B;e*)Z$ymm6Vgeb&+*@!+a`9AxI}THiYxJAcj;mXC##_wC^;z+NHu#cw%1)rVcCO_*?^eOn!a;^0C2`K$B){5eGL_ixwQASoJj!Dw2)~sb^!O0~0GZy#@GVMaszHru){pcbm z@W^X|?xQgDfy-fjZd>LaPWDvW7&0I_w&gn|ANH+0$oD1X&_ZuaaebrZVEi;H2M{}x zGvK|Ln|JjBCCr?C}B*84Vxt@$uP(ufT*k?_oMa<4uSpNS$D3^aG%V zxDG{{*H`RUDZI*~*3+#0JkwEYqR~ncNlPZ}>l_Uew{)?*X(FF??$ra-z)xbp3G>gj z)Q5?Pb!$LjqoSCXQ>{K;$uv~5*o>edYElvWqMR0ST(1;(66vB(DX;B2NdQ|PNA|8A5?(v+(1D=?|Hld=1^XsJvQHj!U*?_DWVre}BpZ!(n< z=T*4?|0pcsVyx-MB6pwcrODdI8(iE0CaT}gyR%al1UL0Is_Ymg(VwG}Cu9t~;2FsY z#7cB*cqhJ_BoGj3k`vg-j?!6iyDj~$maXc&G{iVv|9s|pKxV_iYUW}0U?cnc5htb8 zU2aLWJ}Xu|)p=MOzsyOE@D?a_K2W8)l6YnoH5RY!hQG(i$_hMD|WOs3vX2b#*09@Y`(=w#aeJFu#{pEUt}O(B#8cQFacUBEf|}*ehb6 zPWd_BDjqXcM%!CnvBYUg_$QDi5(sVn^{=DaS)R}39N25()8nW>^G5TMlYD@(;L)AJ zwiXX3en@}_#24*+wfAE!Gd+JtkpMF2Ws{Z71s%O};D?~c&TQ1?$FBL_uDG!_1D8xG z?R>%Kwb?A-*S(u{&coZluIU}SE>*mLTRQ%CRPbH&$S5D1f$=|+QfgFB*pE0xbz)HN zL~5q?R0-H``!K{<6zxffd~tiSqHNeynXIE4fjU7{p$JQ=1=G%V2b0(*D`%2Rr}^|2 zuIl+bM`pa;fZ^~nW%X;&=zM%#kAfWM@>13EKJBtSg;KrmcYj_#kiQt#jX|Fqn`}=d z(IOf7*Uxll8#wH%iggeY3V9YsQ5TmF0?;4x=ZmRHRN51i`?V1%QxdjTlso^2`UY0W zdFvfk(toxy}*$!NS?F_+9t%ukwdvy8VjbD6cx+ zcb`l$NNH1^&t7>^cTJeG#u+2{x}rFa^{Vq%7~T}lFYmTbEcTxDsio!7_-6CSAB85w zoa70Zz%ZlVb+pl9)F|P?=9UMS9WPi6BfmxB-JbrWOFD44#v6pqxZZE32QM1a9zd?o ze|W9S$0&rW6&L$6YX=|*I(E)H5rz1|%0Lw|^)lwBW+HgTS4p;WpCXZ<*t@B!Q(W7+ z|0n9{sf9I}Fs^j={YJ7D1ec;&PIE_R9qMEcf4L09b3j>xap#lM6|(PwB;P-uCVnoO zdSI3(Yxc2R+ITggs$~WZY z#WKI9#`6BAHBrf@97(|ppUCP=*~DVq7Adnn+f&PrqWV$1iL55N6DkXpRVP|*OVjbE zWqg-Q%4{mSml{dCmuyrM-Tf+jz z)3@666P>wg-LMA$2=F_Q4^eOLpue>d_;f(Tj%Jv}f$M^Rv&Q{AniuBl_UNM&jygo< zSA9`(7ux^}mK{CSi_AI#zN*48jx$DQ2aJoagpcbhy=7JlWheFTPxaFj>*gC~podHo zqyJ!l4b{Y8`9_zl66XCsijKd}4DOGvm}6m*dm)yXA%K?IJ=ue}FV{dTt0qNyG&nbV zTg-0i2WjmWw2e_}RGuNyAL)|lCn`oyr@IuLPSdclltE7+NrvnWX~^3aOtH--TQB`Y z_oGN;vW|NPk~erEys!O!cO%eP8QQ_gyyU+usg{YWru`4F0$1S+Xf4=gvX!NGk*8;; zzdGNb%r_>_clS~P=obuqA09My77ccn5pd;Tv{@m{rolSQSJLZ)WOMdWjY-wB=VWNJ)E!4(_}+s)axO!B<8M)ZXWmhcyWS^TzVjBlrCHydADMk@k6{(YBb2{R7r3F!kk6-% zc^;E7LS?9sH5Dg}b!3d*srUv5zg z?a|n}^DMbC@CoO9m|2`)R%W&eBT1iUPRcf=eXRLVmqf3bBSMN^yp($Mr)oltd!5y3 zFM(|BBg70Z5Rb(CPJjV!iS;qe6d^ccv~uJNeyKoO@mRzak24&UqyE53`I<6A~D<&D!UZukwf5>mwY8)OTqR4u!5QR6Zar|Wbr=r~QNPL-^- zQa!gw6TdolXvE9{^Drrt?RWodiKn>Y=KOyD(zy%=!DDa-?`0_BJ||w5I-QN9=Z`Vm zKZ{b~8t%Xw`P5QiB!SG7@Cqn~;wuhI7&KXaS)E>ocIclF;o&O(@4+9;kvJOXTQ0SI zCrecY9ZWk~iXLmMs!^b|9nN(T(X@vkHVX%ByLzXFLme%q3-d3$`?bvg@;7>jUdFY+ zK7n)pF3n3F#?3mG8i^?Z&+PtF!nVPhYCWpU%!rH4PJ&^t|GPW(yP$y41>ehitGS|o zv3aPVi^#xVUx^=nloWkp|Dtg_vMC$rsY3mg50pViJv9n1EQhsAi_FTPQXyaHdl~cy z*vn!<;$giMs3)j8D{Lv&?XXXV+F2pe5~!QL!F)6;cKkiiiJT`O;~;RUJbl$&OKG)M z(fp@S!`t;%a_fCnbtzcA=OPSiDzEhQ!7u0`Ur6g#zfuX^3G((T7breHPDv|mD=P99 zYk_;2tXZTcX<_Yz)085dxjx>y6?CtV$D3v8V~pp6*`@j2G&OR|Yb(CcQxr`?z8S2s zoTp~(@VMOU@V>Ays;*QkkJCwY6>6g+e5aw9UuG2k^&vJ~bhFznV$Hs-;Hy|>i6~DC z-NTV9ActI=u)ATF)^M+e93!_Sjj)f+ud#T20dGeE%W{S{ zNh~}+byAu&85^ws3}E+u-4-J>B~8Omu{bFAp|{uB6S|6d`0Y=RE%Z39bV?=k7-_YV zC`D+cA8-jyfji7ik=3)p_CddBb1QmF;7yUrRpH)K#VoyjPr31;rn=AADR_=i!Dkfw zE(k!LJ)#AmSkiwWpg{gcvO>Je3qwp^K=R28aD+RnK^B9#XdT8ZTck}ftM#RIdNY^8 z(WOrJhC}~iK`gO2f2UWrt;WGh0iC+~j(RsaW=f58w%sx1XzZG#--L&j&Zb%6oyV$- zUQvESPrHmK)5!(?(co|bvQvyI(~0DctT>&UDep2h;TrBrD7|6uBwby z;slQEMhz2ga+_~v zc2w+1uDU=c6Nzee@!(1e*?9%L>G!Y{fkQ7QwUz30U)wvV-npX&UqFGeJv@i8#Co{}rUB6?`A)h<#jf`cu=sI|_G1y0lwS zz3&^7Dl$LK%e`ZBQ5v1s7CjoV;fd%R;7p)Vt8;s!j%SG$s z7LKESNp3WRpJ_w_wO03rf3ap7u~;0~j@j4X?!KOmIu$dtFplRzd#~5_p+-mYJA4qV z@kmd*!q8LrwJ_Kb!zm2xnYatQHXen)Nhz^X zWYSh4p!GRSmR4r)DN_CI9;$U4DHn@U#X7woy<->4thgD+X+YzVYQr*eh8nUBu4?&C zMDVx~_uLsOpLa)hzj$sMvk}>$RwwALx*rl%@P9^!I%~f)Wog*A1htfVzkqA|+3&S)ZO#+^%liAWacngG!;wA=5R&5{d>pCTxJ36zU>8y_2>~&7Z0384*(CCnN?BPr z0pLH@Mj~}Ioo(@uru=&Qn@Fl(aP-g4zz5542>C{7IxP%fhIS_EJ?eGGhq6?r_>9yv zc@I?zMamj22FPPEaY4Xc>E=IN05&w>lCQ3hUfYZDuK1x80n16s_-dgYIko8siPs@@ zz8J5Epq9rN1Rfv~MUxon*HVK#)lS(Zplil)I&KfFyUV=jXmk6j#CmHJzB)L}e6~B4 z$rf75YbCWZ+ui&}>pz#$-xhy0#Q~IGhcEsG=Kp@;!+`wQ@0R56^v-MWd>q32GqC6G z$;*Ykc5fNO{&K}e_vx}I`@Y?1UixR{8sTz@u7cE6K!zbtpS1~;eXz7|bD=~V)7+G* z&ZvBLO?;nckh!U5?`b9O)k|w-F9xx)IyAj@IRmGKJ zV*lsw#fp46>Y2HS%=+p!b;kIfpE}&aP9ZlRhZlB-qus#70=y!q=-71d5QF!!eJ^Gn z)WL>0txq*Ug6$_Ub_ICQ6j3T2X|tIjB5KxIz|r1s3N&8az|G;I%m_L`yX?WD7u zG;si)^cvz{al;&wnP&PoX!<_j$O&f??-1WJw*Q0zCy$#Q;^z4co*C88`W~_!w!Xdj z10Z33h4Uv+BTmNtC9w_A#=C68W%di82IjE2Cs6IjK97sdtm?JJj^VQox}Ca%M?qhP zY3@bQUOHw23?2M$vysqb^g0igTlYFz9mM8gdil9Huyj$0R63*v{ri?X;_US){H{>i zDg>DIY&KMN>&9!<7r$)PSifV2-irqr4G1e6Z)&EAJ2#-Z@|S|!JS6ju10#z(0y3z~ zL=t7^gNOHT7vhu<3>~rjBu#&1*_`&96$?s225jat?9Nfo`upjR$c?D1IV>TcZt>yQ z4tdSAA1!J&%<;Pv4E3>=m>17v`8YwO)hv_mH`*Cbb5* zxF#AD?{8SFSIABWaEg&^wP{%1R=HsjIcr{FVPRco4M3+48xC9w8A1WQUSUU8L{2;% zpjo*+(>O5IXyju*{ft3i-o1BnTa_3D`tW=^4>OR4PqRHtc^Dnrgdu+L|AO9XTlD|Kr{3B@i zU%>lZ8;1DLa(LxSl1&Yi*R#4>=xTdPmz(<2(3Qht@lYEA{&a@=9N}jzI?dX};zZYp zfjzgU^F|U#5_F-rNjwf5@+|Vn>#TyK^7x&BHt4)q7?FHSDlC4GLTu~}jYJr5BA z9OW2Ns8sGUUuYd8NskZMiAa(iqYs4NhF4$UCGyFX%%;?TfC|pMie`T6z@Z=1X;>S& zOmlRCZFFPMqnPGMpnwP@h0+o-p^fRL(s6Mc^5DeVRsEd)cS|Zed|W%6Bv@Z%+ci#S zTVO$^=E*QnQ>(A*hl|1-cJ4c6Rfh{L}rz=inqgd3%H~_zx5THd6X$xm05BHv;foKCvJlMTga4R z2~R9MKArYm`e@tulv_$`d>~w5?qH-rB%>K8U(x!RdcgDN^Y9CkN{W*jCD&jn1*5Es zT*+n>f^+F$iK}qyvikCey@w%xDQyT+&{(}2d~^opnarvvZu@hf=b*n)z1!g6M~(TGXH4Wdzmbr*blSJxjvV zVBi>9nrw7&L0Q&cX4yH>o8_{yx)#qXMv9N<2bP?rCIGNu1OvsEg&Mv9W78N$@-!yHSCAYbDha(a(d^$X?+adRSb8Qb}JfPDEgUlBBk2b?(Y`DIZtofgi7vP2zjc`9A^0?N2R^L zHk2A|I@N2|7*ucN$W!IHCK2M>pPl+#YHq5{+t;QE`Yehvhmq9sqjl(=AwM}9Ddhm7D;A-b8>hOmFH zYep!&mtMQvkHaxe>Ixd4B zwym)mVH8o8e4t>xHj~To35FYYK`2ynRCnsL6Q($l))S$pEZ?UT0rEhN-nVlLp@kj) zW3jNQLD7%s-~Je--8IbWtv!M-_Z4lu_q8M5;3g%0<=|$4R78g#0FQa5n*suF;X8{| zZ`VXf*WuM7CP;a%^D%M`Zt*7h3F=E zBb8P562&?Nu}l87buv3$znr#ut(6Basv7ggzl7ag%OPwg`ECk@sp7YOnA?4#|KK~; zPdy7L;~9BkqJnfua+vhG?2v>Yy&XdXd}9fe_i&)otXl-fmRf!UcjVaC;GASh`wlqV z@Q7Bk-~8FRLOiYCek~*_SSHHC2dj*rZ`{iwB&#o}>R8REot4}W=$lC)=qYIUSVs-S z)T_pL`K6THg!C^aKCM5kbt)^#?QihUq|@t|n2;)hgPmQ>XE`qRyha4@Kn+-dYx(&j z=HQxDezT|NR{xd|j0^u(97|uZ-SkFEHki41zliN*Apw_q6?X7#gUf+&h zP|uZBeb2*u_Vyj6+S272U)SaE^S|r&|6{T6HC;TAX2mbMv~J`n3R(E#aIF96^x>L36od zM2F=3UJ_&XDdQH`rgHUqG0EmEjcWbXxQASpR^_ps6j2$#yYxg`sbDYCWV{WCT$!Tr z!mWB3Z!_>CN})@GWfFwIep486V>ejMG#P4)K$EI!2F8 zU}Nn3BckvKw6mh9|3yw{j5Gc)5SJ|>aO|NloY2~2h}37f69u<ngCQ%Bd&5dd0mZw0TysGs;10BE`|bU%#&Za1G~XF zhLhR?yH74)+>Y4}ftX z2C=^f1dH%DV#*0L>Me@xByj(^v&}CoLCpCaJk}3`u!s>J z5c#N#wKtqZ6*$i4h!M3!h@jWX92Ii_yH8XC=~jp@4Qmo-2X^KAYjhH;r!v8Pl;d(2 zgyP%ZPOy)QE{l07*gdD!e2XFhDRrqOf1jWzw zQWOEgvF%dXxx#o=^V2q^M1}$JoTk0#ZS-yH^&~gvZZ2?B9Y-Qs z_E{K#?NHNNF?Na6d#1xpNbhmP5Q#J&%_2BWaWg4N0ApXUT+<)`GkYPZrhoR6m6l_0 z*`@@xE+iEbeb8r{1d{h*OS>6m6h9b$KBD#rIO&Si5zC(L^irw~Xw+rNGo*`Z^xZ6% zsc6jCn^}Ka<;n7%!>aLi0?9ms@8&{cjXz*VDuJRG+DI-!;)1h|OnXzofqZK)TgkD`naR8#`iBQq^#NItl10#n;G+QZ~o1rzy}nMc-_t&+Q?#0M) zi~f^PwJ7mwcpQvfXOseFuxQ+=Gy`SN(n&*8Yx!479stPOURJm zwPn|DB4o_y4S3zA-OO2SDclZsG2FstzZ7km5-r;$V3Jq=6km%3dvYM{6WNPICQ1@A zqA3Zzx+-LIPE#v*#XU=RsIqx-cM^Uil)Pp6Hn{cH& zsezjMYD}~~yz#DIOXw#4tweTN~do{}`iwo=5La^@9giMU~xI$`D_)Oh7)n*VHD z6u|Hp&YA`c7R5pj1--n1`nb{>6JlE!2OvO^_ugA$SS3r~{oK#M@$GR$;kZVp>3;~S zs=2(XTHE73IO!$tqubemXBw#%gP^>flbG@G9AR`(Vqu&QRLayLy5CJinyssk%a>3t zuC$wLquduCY-%4ytt&MPi4Zhl;Yv0L zZ7i;uMq4iLYg%^BIzX@do6DRNM~TAwUU0U+ir#36!Cd9nQRY1TiU?T~Z7V2Kk{9Q| zDL0^%6wx|w8A%g@G%E_n#`iMJcC!Pl%}#4FPRbAL>*j@*Z6qa)36BRu;dy~oG%6}A za0MTR$bs|`1E&W+tKkv->X2>5m}7i&M?xS>x40!OyPBEoJiOnQZ;3~t;91bWl2272 zSa2Wzz3e#?%og{|yK}IRT*VnAV0MK_+4B{Nnp(8ip^Rz*h~+YqIYMoY&}UNbXBZG) zUqh(1cz=3A4tN_Z2DhflZD|W7o#@_=0X;!m9&){6hrjoIV(j+4^wsP>O92p^z^S7q z#y&h)kz1Fk*u7Jqmrr?Wc_5k=M@AHSl2GDHsA{xR;)}FfoPi6Nao?WERmuiJR2eFu z5h`3TgL-^gd=F;qhoxHlVo>pYCaO~*7Tv}5On&XuhTbB8Xz&W7bPgI0xc3J{@oZZL zciifipD(NJ;?NARXV8SeBml=LmQiWNt!0bGIKH-)`}Q@?k2o-&pkN_G`o&4Vf;$57 z9sUjCuc*xb`T3GmI3Ixk)LNaQ@A|O54|6gkCsMAHu~DJh&kNC~%NN6^S=aybtI&G5 z)bEGlxPBi+eJE9vsaq{G|9+95S>c+yGjDb{rrN!mp$65z?)K7m1)|G;GD8U9q8{RA zv{}H(^ndzuK6@ppPW^S{2dbd^L?pL|F0MhuNo&a9yAH*&7DnKd9l5RqEvs&>Wf$Ur zT)xr~6G6qgQ*nI(TR0*?*}B&Rz-Faxm}5ns%$nBlubarvmU=&iGNt@Frmd@7K3C81E}Cjk7I>fyuA6k>X!xk8(B4*`NStZ7i+GO@m&Q>5SJvu%8)9KQ0ku z;L5+M6Z7j7^(78Lbw`9D=I1)$%aDY57fx7wqBA@lY*2RIdaw`ICqS2msJg8bb(Qi= z*NrOb?$F^YE^i_|LiE1AkJUGj7F5E6RM&xSJd%K*<<4e3;ziQ4<(|F+_+V2P1Ve`3 z(WLN69w9r7@&}*Gd@3RKyVl(w?VZsiS(0LiEVv!{XC^cEUFg$-4_C)2gow}h`71=v z%aX!fpCb3#u%P7R zrC-D5NCadW)h5SDtMn?VZt~1!OkT2tDGa^BYc~v1;oMSbBbw z(O){e<`&hP;oZGHnECwSf5nf3f8|Sp`Ps5!7!B5|V)ea0_c3W$3V0YTk8l3Fu6;rR zNgzP50xq>8{r@iZASbE7xIJxWeiac>t_&vAFS#ml`za==1Nxy0q~BMl3I)_sP>V4> z@MQ1rU_kiyHb&_YdZB~kwf7f)q%Aw%G&6R;jtz6S7So>!AATsI46mz|WRpJzKy3R= zv#M`&{aCB`g=9zA>vW?!B|=b_kQj4RdJ{S~JJ#TWREXySL(Ocn)K0eYB+M%*BiZny zLoOU6cW4UH4V+t6(AK6Efe`jV;C@kU7*af3xtdIyFRXblN|AIsM9~84|55c7Y*BXY z+H`j#Lyv%fbT>nTl%#Zb58d6}ozmSPodbxZ3IfvIAzk0N-}ia;xBtR@tb48NI`gDu zE*|)+v)~Eho{UmDl&O8t))XgKm20~6u57t-;nCFRHpRi~(+{&gE16#R2Ts>t@7q^` zq5c@`TV`E4zlj{{;Lv3N_OXY-*P}lj>uau~FDGj+wV_vLC{h%r#uVQY0-m-yUV9%U z&F`QYG4O^jmlZRz}|X*6hJ1j!#>+$eT>*(twbX5SG|OBnQPDTV2cZra3+^h zmkm(!Tb#6q^!_xD{izB~D0O?j_UdY;U`1R%{cgPn=8q7)7{&)xT}a^I1r0~V;Dmom zp!q{mqTfE{S4(p0>qs38^kJ2w2@l=|p~cE99`OSpAV4J`3k%FAjmo$~Gx+79B8)m` z3rL2!AlLM|5kZ+Q^Ip5b=uc1ERrBrdHPiIsf&unE1-L|h7+yQgHhW!AD5pJJT9tZD z(@d{yqNRF+02Z7~Qp@lUXTEmD6=b-oSAtJjd+C3~dnnL$k40}3rjWR;L=wT3J z(_am&-oHoA>4V%E6u)UuH!;JP1MoAD@PZO z{=51t+pS!=O>R85S#YU&z3|;GU4pawXvci*KT}d{md{J4+m8Eij?Eh zhqojh^_2bg({?ha50SQ*e9p01U~jSF8Qko|Z5Y#Uu-{sQHx~im_sYKYvyBxoF3bX; zaAv&@9H{UP#i8d~)47U8w+$mf9AsWz@~M9>WLnv7o6+wV6J9CV`2! zp8P6gZzMa_lNVtpqxRKMnGmd_fl*1EhEx|cVm}wVe7ct>9B9N9usF{3Ft9NTaZ(dU zaW}aniqyqZ=|Cn;4lRUu_dH~)X1&=$d!AZ;eO?p+G8g1LY;1vS%*8!D`fQYrn~qw6 z2OdTKeTQov-aXZ}lOiF3|2?Q5kPt9n`AEG7z7PEGeG8pAzDiON(!{e!Vt=ofQ|CpE zNsGGD28?dHnGo;^OzsO$se)kri*r?ikiS>!Cegt&v=BFR_7axLZ z@x2J*FBbRB!la0p*Fi-Mr}~@{v5~j`$6Q-w7kN9|Y#fnTFYujO*%&_%wsYoQp`36W z>x9Il6&s-(r_nf{S74h9SC*c0xola!I}&~Y8I%JV*uFWSm0h(7&e=vdNqz7Cem?jQQ!HqKG7fxeo}O`(Hj0rDf%wGd?5~Vf-d)RkP8>t4pb(N5x(m4!-KZ zk<#Ndvy|UdA$QGGP`xZQM>$4$QDJ@hKHyV+@A-8(WAi~~Ve5ulxyaa!>LfQPF(1r0 z`lSme!Ywr#W2lNCA7igdR)<@QQw#X&@LnhD$Cop))w16o??3qXK|#(~sHJs%PxO@^ z>d8?V4bWpg|2YxJ7T&;zcFm>GaA_MgfpiE?`fiE4Ztba=*`1M3D0`+LQZ7;loTw zgUVfU1eC&=qol76Z3dMGFPfU3^y&J3&{gfGY<03q1@dGAd4@D1R6|#LMM$-t>~|kA z*!mp5PW74U1kCTR2|S$)*{A0vw7>K?+S;5t{4)awWh4Zm!aiI!a#+6k&LQ=RFA zP=T|-`{GJMw2!m9$(BokDyEBT_h)UcUKVafDN!eVCX9%6GVn8s9c%+qzs7Vu1T#V8 zt@wC1-{|HkOZV+CK3m_WNj4(t_wj}Tva0^tYOO6TWudU%OM=k&7|?3}AK-Atw6Ojq zf;-RA58v)kOhRJ0^kOT)VmkFG^aGeYZH9yH4UkMci|hWJSIO;clDs7wxZ-)6UNotp z@F^#L{c1|kG1YA2y2}OW;PEuU)?}bK3g`f)ObZ;M<+f&BUO7BoA}o6}UB0~)Xum+4_ooA`N=6N>~q#k8e1(l@hop}}TQBi@Oc~XztQ~p4Gn0i; z5{qI$G1N{@1rEIn-3ihz{Uk9M?ZY$FFgjKEDqB8Il1nH*fV>A5}V zvrNWKc!6&3jS*#xk*A1JZYH+ zic(E)`Tc2XhSwHMy&;C+94+f;{bo7cO12QI)x-zM;LCpb<{H^|2=Ws*DR4^o0)3KOIxBd4q$CGpg63xG(fTO%6}Ha~r$F zBvBGxu79ji)eVLoMI{<+b}jJh9V)7|7Ym4KNF|xp_6+1`Fnr~<{@UkH>K$Ue-!7=y z?5FKs2g0{_vKkIH7cBlB-wcog47qDy%{RW&!6nK@5t;$RxUiJKCALirdcY9lEv>X~ zj?;&s2tf_l?0yffjXsJl^P|^`%V`(5UEhskwQl^-BEawAb$2JJWah>|!m%?ye?;jB zr>fMd6N^0mVO;TBaAYg3hSw)22URua18kYqWf~h+ySxj=2mEf)js1Nxv z&tZBPgA%)`JTFqaV@5&_^G#{m&_;LG2;R>OGXY2!4GiJI^urst^AVr8w&p96&Bu_f zK!wJ_-E!i-ulbZa&2Hp63%>2Yq0(^>T)y)tX$d9l@qNl<8We%}&$UV-`gc_D*Uq6Q z{pURY-O)S|aSA!pW8%s(4#E(O(xD8#Z#pm)Z!`{Qd?gQL*TCX8(MH)o!R>(SuP@ji zdA40J)twVd{gKq=s&47DPTde~6kf6>dcgo#Q|q6!=$O$kj)oNIhFJ1C45X7kj}?;` zj0uj%V>GR_Y}}p7+JQ9)_yR4_&}T@_A0(X=Z##ideu|F0h5j4|AyI zg2}0>#1mUU_W?R_&b0N0|NRgUVCp^>rwC7p*1~DkFlK7 z!)aOuQD?q;f{QKIDT!3XhQ91m!nb;z=^IYg_}!G`ZNM07O5nSS3UBUZ6x5*ang~>K zRCocP^Q7&svLxC@pDjwMK2C^aM1R1O^rBPq-+zouK?oa`o&|5{@D!)=kI`gR+b;*} zGMdaAkt)yM@RFVNo=_)tKw2-r7UX>Z^f5tHwWUz+W-+n7EB34=_SE=6B`+;9V1 zp5x=OvX-r?0m`|rayDuQT6OBcr(MozA=*bJDCXH{A5RuvNu0A62GgQX9Y`K8F;xwE zc^A9$eC%BTLB&(mi|Ba15rmc~V*$84CVMTK)DHL&U?%+}q!J@NNEIe9cUjPz@Jv=A6e1-etWpJ*!#u4$Y8mhB!hX+$XQ?eYF0B}LTbxYUax10?kG#UL1bA?* z1`OLxBC0qrA{w?tJ)TpM^8*ER(DV3~k|g%9<2?WWxuo2_u zf#%B;@hzG2v}z@h&%VtaYTNYenJruR>5@Bt@n4~&&*Izs(`(bp!iP(&Mn?fl{-q%; zwe+_&nHh@8O&T4qC-iZSM@^;#;*#thCo8ZdHADzyp!H+>uEV?Nm)2s^($Xe_kLMIv z5s6oi&WEre&~Nx2;Cnt`<>;6J?kKq3;?#*6h?223v7tgpv}PLgLJe?f8)nyJ zou@~|^%{#Qb!*Y)^ulr`?U9|6qnj2?dilNlk7VA|vp})539o|Cf~h?SfBv%i13N1z z1bt5?9MSLLpuEv&0IvJgtsb8&pwTN4fvtIE7GbgeSUI`h+YZkfl{`zgA9fzBW7W-zs=ncD98TyM!76Tlcs}Kg^QiG`z z$>Xrw<4Ps*F+U|-KA1-i z;`9;+nurU+%TwTRjd#Wa_L~Bst&_zcQ6seEwb#2c^I>-^>Z;6h-rSAWpN&>|M<*?Y zYcSJb*#X*IQCA}phg*=E6(T2Z9Z?~mEGT!-vC+0tb@1UwJcWSo!4q{> zF*>=JPysqPkKBFHc>nl#_~H6U>b)D3oI*cf4|sV}wXErFa})lRC%FVW>fTiM)b#_` zLQs8#?Uhg?=t*D=zbVxoC|&k}89Minl2__!x1=NkDIYcP1DEo-55#qQ&j-;j9A9r7 z7km8#|B4Ispeen4_uDBWNPH|+t=WsBkkNNgsKTT7D$nz{5fX}WpK#`<>|#OT_FZ-V z^pt3%fI^`rqOCSc%4#!z3MYYsb&p7PD-j{t>jNklE*4IHQ0$wvqE`C|+my{lE8;GZ z0$6fVbhons-q59V$2vaOSSSU6F+TyG>wu+Xm-mWPst)=j{5zAoolJALXtfKfM2;9r zOa2uQ-U4v%lz9t*W;=E3m4IR0iZ-P(1`(uZamoV*A|< znH2EsWfCnX;zSW0QTgO}Y@nhMkAmKkP6$>-1=N)J_Ehfmo_Emjc%|7u7B%{MMjFMJ zf7-@lI;8yBS}eu{1Cnr#4-N*7e>I0;^g*#nbGr-L#5Il2GC7Ad{=p^+C^L=CmA!h6 zCU5=ShU!CSg#RQ;F=U`cmf+MK(j746bYAMPnUY_39hI)K9y8r|%zqhvQ7>SeBorx; z+2Kcd(6?sipE%A&i9$He}v0Q)+z^K?q}`MhoY(2>EFPKyuh3bWL> zTjJh3)9VSoP0t_EqPnkvxLfKQ9v)!@zshmewP`OPYnnSQs=M?qOHbd5zS$a@v{qjX z`PD4^?Fm0L^gjkk3Ej4{JT@8ZuKxRfE<#rU*bd(PEL+UK)XqOo%?A{?CH{p!C_H&y zE7f{>>Mz_s0$k&{d+5?j$5;fu0v1x9xBIeR#6Ha%(kpOAP|AsaH2RFIr?7M1MUV8d zvCuc*-3P}&| zHgOmLpO~DdlE1C$;W+Oh^QxZ@lO=D6LS)eP&N(N-H6wvUKrKTtu>X}24AYxvCg zH-R83}()h>@e>se~hX8|AEaLH+T0mhu_*Z`Z5jy728v$eEt^ zyDwk5qzK1kW^TMN7rq3@6($0{Pe`mLY)K|G3(FW?8ob*^+oPy7NvTc#lrx-D;xfc7 zfmj8Wn{Ybbx4lCRjf(|qr64rPMxrErmX*p0&E3Cq>A*l9DO#g`b4oz}YE-ln}@G(-AmiQeY&6!v=HT)g1zFlURG-p#wv za?pP(b^ooQXj=3Zkp5nmF8chmj-}DkM3!uUGB+_3>fUq5EuU;g^`fl*)P=S1`jo+8 zU^$f;RH;^mazwr7)7xD!AInoRCi*ki4H~8B`fRXR+$aou<&r<_slURGPYQUGqpAm9 z%D3Sp%Qqu^>X%8re9np9d~baBNhJJ=*FMc=6Bq`$A~7N9PpI#G3DHwH{v z;Nw|h+OlZc@zUU->8^cbRL1cV2#PfPV7S=N>>n4TCmORB89HE_I)*lcW#L^pfH&o@WR0j7qo{zT!;y8C* zO@G#e%(OcQ^VE7{eWmmU%$H4%`b|3w3@tyXR;8+voIk5t{h+A&UbMir;{It>zLI4gn!c zpQQJau=+a4G_q35tMr8P`GyyFHDwBI+7AOY%Uj()TgTFw58b55Cz;W9N=KOY7|7`A zE?2-MW~%8A_^FzVQE1b%WT!JUdT28}$8l6c%P{V(Lb|NBiv4X(Mz4jZr>86Pc|H)K zwda`L>CBz`M@^|kT_eBVw_e3;^FR4E^#Te73V1T=dhZ=!-12+(NU}=C_`=CFVhT#n zkKnB$;zBIjHYy}6i+a9Co#gPEbOgXi-GF=0+O;K5mq3>U3R0Kv#yHTOX@iG^?27At zUaM?n;gK`G%6jkfXJe{HbGAAtAkPNOzarWQo)@8uMz+a++U@D5yoB%xCR6MgtUuM@eWGa?Iy$QG+LgH-Q7{b>a)i^CBJb9LrDjxB-+)TKF0*$Tjo2G&q zX2nYNqyga!1is&^HT15xm;z0By{Ejf!&k6Amq?b;4F1Z9Iw^J_OhkAq)NIU|Uhj$J z&=`7ZJ&#jP$|#N+wgOs08G)0P{CQY}6CXd)-E(|fR`oMJaMuy(r$N|yOX4s!S}#-I zTM`g2*pDv^CS8J%Ql$ZoD;dMNF}T(pHvyxxV|V&C;YD?jnluB!KYJCI0B(TQr zt979hPcLlnhhOi^#_;IEuk)Mb6|cUdBkNy(HEFfC-DT$LYK9xz?f-6+`F|A~!ctRu zmj7VYf8Y9bjYu&RBXF|u{o#*_dyyKh;brW+5Gk1WtDyGx0w}-Tv3cx|Am3~k){Byi z@6xb3B$h9xN-Q>7vgX+l1Ci0WzYd}>WAGE%$m79(InRy7D%LZL=*$~z1axTD5fGF9 z@Nh+#&61QM>%-HU;yRsW#QT*t|LM3=>XK!aox$?NZQ8m?NzmU@BAE)BOi0*d3f186 z9~}+-#ropNc%#*{1%q4PND5BuADe9Sv~YUWGw}`Z8j&4*-_kK1ZbKc|Q;8}X{20%V zsPV{6gs=Df{BSXxc~hBJ2|TsR`I2~NYPjM$uXuL{5sg2p>r%R$@VjR+9N_J}z+{G& z4m>D+SA^y6C&Ba^vrmpV)}mP8S+U~U1_(H>-Hq~YKA#1Mw%M=6M^O5cXc_u(Ls1(n z)d?H8q~|GtOJ93% z=wl))E52I~%i3UeIN-LOQKvb5u1Ue<{kp!x{=^)VQQp9b#B-e()QLd8t&X~c`;lJi zkk3j1iQV&eKw&D@#vrz@m^-X&`0gj&IOtLlByiZA%3-anTIy$`y8|eH-R&s!QyZVi4Qx3>ru4;u zhldA6gD1~PhCEy_n$G#aRh_ z2V^zb)qO#LH{iu<8qxD)34vKeHDafXw^)c8?b4@oTmeNJFzj!O<*TY5}C;UWU2OC?w?cf zvbmf`E#7K>s2Aw7oRMqmhN?db;?!~dbDo* z#E2OKS76P?v+ZDzeVs1LGwjmJ8TV+T3u_t5$!xH<6TL`gaQ{~S)M+Sq=lXcPmQrv2 zC=(aSKID>oM_VN3Gw(OZE%C#^byn(b!O>rB40ZRs>#(XCI88ZSu9hB3@fb2(L`Q9P z)lHo6jz;2|{80;9vR-tUxbt*14XG^8XY7PM>pK&9+Q0m|vy`GFfQpeZ_PFmnB(m39 zL%C3P%!I&9{i^pBGy)sUER7Sfk0CUfZ!k=KRkrm@qdJkEdafZTn6lqZh|hs)f-W3B zO(+cG7yXl>n*L%9OB8^yOEO6&jf#HL;sul}ykmwl)YpsWWeT&G_sTMv$*udK_dv<> zrWNPJ{$z~v+8O!nCyYngrs(asJps^BqTV($>ukwR#YfuYmAPn%QH*U-FH$Zrn$4W8 z<4mdFoWr%yl+QtD+>Jsh6Dnpr?$m7#k3C*-!h}dX{pL8k=Sk~=e24Px*X@oix8b0e z$rMF%>H>(Rv*?1476IKM%eU7nI*T`5s!Jb=-X_@X`j{CC94lAmOi)kux{wo_sFmU! zUcX7^!gWb-D+_jYGD6XMoqnZa`quxw`Gq9JpgeSF8(D-=#FfR2eSD`wBzUUMLDGpG zpey?|PrIv>vRX?N`zvcvZ5Mo{)~Hi~un&?q2L|j($dSh<&W@GhJe{Zi&%BHtN`SVLU zCYX7-EfzZ-pGEMMXi0o7~8f)R#7RZTQR&3H1Jap_QUugw`AF?}W#fQJxtYx_)@aU$_WggZOWk$S^AT@Y1i(x0EQhCLk${jE$rv zD>64-FJDV$>`-@QNwOBA1?HUi$2ebrm+t`f}sds z@dAF(@1U0tN(D616U=u?uvw->+0xM4p8s5>U5IN1?$l5Xf_>%)t5GA0# zr~YiDuxKEh?+K-2WzM!Z|8RQr?RIar4>h|aB)0h4>XFBv1+W??`+E1}QVZtBZ zk)x$rx~R);>IaFZL|_$aF*utAaDJ@+;uqqT$Q_N$nvTCmd@r&bo|0swF4@WTK}00E zmaYwXS3V&o?98-@AYwBoe60^`Umn z2~hIz+&;}{>|poLh!`X++0OuTi^B)b`ajE`7A@SSghVVF-~%Qg*LM-Fa3$3n8tI@Zg zB0{`E!Fw_`=K{+rErA^Kh;so7$mSR`ePy5e*u@c)sh$@m@hg-ZRRd$MHLH(2?ascg z6_-@~7?*-z6B7x54iM%T-<{?_J;P9zYlR&;Kn_)DRG&|BP8W7{=@R8jM6i>axKdFv zC;=6>tsoSQMOQ1>1ml&c1Ded&ZGqM=%d`lQOmc`zxb0D|(7d9ctCw@^i~W)WlYzmo zyXC$|K|Po8w|I2w_&7oZMX0}&)v@RJ6@o#xlp6BPPr7RvdzX$kO!f2|1AV`4^*k|e zIf0wd)C{I;@4F-!r+MfPA0hgHOCld<4CXd2KI@Xfvm!=+}5JpN9&`g;k zh~Rv7)24mimvxz}N^Nw#08C~IkWUMBp^f3YDjrC?eMXBx01$S6!+!6w46;eFQpNHg z?;1^@0Uj24W9?Z_eG~uLpL>5bBglt6Th$Ho{l+Fkhs}$DlpBw zm`>pmLlrP|A@{@&YEaqC16EG_81)!r@RBOA^IxK_5>0zlKGyuM#YkWLzJ+?)HZ8Ib zXvWGXo9BrJC5N$Cf>EDJ!cvYeuU=EHJE=T`flS!{hPEnV=DsO`*IgzD_nMG zG!@~UbQ9ZiZlF@1(HzoKw7P*tEA`UosD7v1Yv$%Jw>nK@Jum-~R3qoI7#{;v+)yPv z{#C(Sb*Xft9}dRcK%}7XI%a>m&*%$ZTk*$MISudGmSpZ;FCoctMzC>!CA#BKPQ2J* zK?31HH#boc*$r0>Nv(*cn{IRYX-K>z7nJ{Li zNKA{I0*D}y+s5s#dtuiEARARrP$C^7n;7UA(1^SwX)#2!ne!mJBjvI~)CEw8`X z1M5J-U+jk)`<+!PQ_c1EFF=nLvp2sVZY53ny&IIioI8fQo}HaRn~c)r&0D5~A|P%# zf4D8||NRHYg9BAzl+yFruKyL<|9$2fD5?7Gc%zubV2Ho_U~uLV1qKm}&5_LeVZYrS zMyF+)o{}9Hc>}XhOFrC+EgbK^CX+dwnQg(>q1}(lS++G6vTLmS3gh5u#Geml=1Mg2 z*FvQ9yE<~JLjPkX)|y_Z?mY5Kx;<9H(mkK1>CSa$u@pSNv+$brF+Y*(L-qvH=|)p~ z7?zQM_x@t>d<52V9(oi`Rko~EB4Bn381CQo@^CZ~HEf&dc#;dA!j-`zH+$&LJ8Ktx z{>HOEcPO?c;+&7}-kB)knrw?)&Y{-`;A`D1y1Qzi_q)0M4%g6-AV5Abl5N@Dkf1laHo^`FSaB4G$cC4 zx8AF!#4nW^36#C7`MEcSxZ9_N0Xvn$0zPFApuH;c;t^WL)u61TzIl}WF1CwMvBMJn z+r8!ul7p{_@ab=k*jgn)>FD3d)7YQTWL9A+w>Rgv&cu4K^9eU57y2j)I`+3RMb3;;yS~h5kq2#co&%6ulc-al;TVXv z{!q0$PCeA{4hcqwDr)-nW=lw-%5JhwXBQNy?Cc(@-J)m-i&_^eEi*x|6IxH{^CcuC zIHqJtm<@XY&Z+V*Z28lT63Ka6rJB{K;>B`K!tvU2@!a{-gU>!Xp2&*Ps#5PdU-(#g z2?NlygkSMEpKI7#%Ox&Z6;xy1FlbIh&PyJbcj=AF22k4g^>iFRiuT8Oti`NU!jL!5 zfM1Yj-Hyp-4ReEF9p9KR1r8|(*Wh%1yX9T~3|q4zZb6uM-sm;SYO|gq6iGi3DY$VV*<;#60P~9^;r9w%`W$TfI7hTT(N4 zQT~TACbhzQPatGGJf`)XZ`uj!i2UcBOlddeM`sR08QmXkU%6j*`Ka#q9@X8diXpfO zM@`N4wmAzB2>9EV7LkHJHUIMv%CX0ovsqG3i!ni^0?18Eo4L@DO}_cR|6B$L%D=OQ zCG!8P?E4Qh!WIn!Z#P=p)Vv;EmyCa20Y9AlidrE@qU8UGr4GB&WDO(gwa+eelHTxs zYGY_Lm20FcgJpn{xx(m8o}~)fz#fe6ZaU#&Dv+VnZSrs}h-vN7eG<2w6vuM%{WjXh znA2woykstXjs|ib0hpGki7-a&(m#>e6!hau<-(3j=-f+98GS|M!h(YS`zU2sTKF_V zQ(;Qf218+xPZXZ(uq#eOm`&fF|3>#zAjky*tfaOI^Q_ff`HICpPWcM-$`P~*%wcn3 zjCKiEYt@eu_nsrJKm!^~LM9=%zoz|(kjY&W)x)MfEWNeYSk9$0@q)8Yel9)Hprjp# zK%=m(^iJ_X?~LP>lu`64Ec>n;S7ZD>jNnH(_y{8u-IGiC7B`OM5lP)M$#>HX^CB38P{8%#0en8jo`btfNi2M z6GB}dnrQ|QtxN3u9-ilg_i=VYBffP~Dd|^kY2^gcO6Y_*l^cFXoB{J6wZ)@+$*qgW z#=}EO*f?rFhj`_uvxJRqsNAEnhg=o(_y?-eNcBawCQwu3mZxc0Q}0);`>jfoIQ(-8 zSU3+v4Ewnhb6;Q@>^@n1lG~=#wVS!Y9uE7q^V>7Pa79_;WcOPRJ0BbKHtemlo^x&e z!q$hgEq{lr)s>%nXO%rozuHCzXq@F0D`;x&YzV?Cx^3mMt8zOPVGD(lqX$x{gPvhp z8A1(Fz5_PBD=;xP4=G;}L|?`=0(B9NY0C1QS$4bc0e{-2`;C^FV?FK1ILs+ci1`VJ z*mE(Qvh<+6eRKZ7Fz=XhEYFJt(7ZyE)A}(ZX7e>KdgtQ@-^~Z+znQ_s?EhLVi_T-i zFA?ocg{m*harc2e@G%rv z^*&1xk3((`&*EpMi}t~ z$*x}E(G>R{yxPBV7Bm*Dsccn)c)a4Z5I$qyB_9d_P;AE|%j*Xv9ziiAh1*`w=0Qu)g;<<>z+XAUusm z5_T5RTSY!ezEND~{2!NiNX+a0Fj}jxT$&C`DDA34kIF(sXL@X8oUnIZG+t9iKJx6D z@HAY70pT3|>}&HKw6)|4>ej!Z_+c_xbSMfK^f!fz?{bV*hTPayVD|p83ys`<>EJW! z*qYm^*)L_S0-{DMN+W_wHc!`VTYA2uYVu$`TbZ0yi)G#EjhmqLP}8n`E^-PABDlC` z5-CbH#n~~PNTx8?Drwu3;m_1O zZzhovdSMZ2WzihFM3rOcf>=LFmIE$;EO_BJEyos0oKxZ~NWzpJw{UBH&*F9$j1@#n zlHbyHp^= z+81%}=#9J*k}z1f5N1q}m~7RSBS}YX?ef+DbXhMavdd$_n1n7B`UA&dK$^e0MEH&5 z-no1CbBDzFL)b~?hQh4cU{wGI5?O`~ z+F9G*%vKfR3F(oahKcY}%;=&tb^+V$s{J~onVf3bxo4t4Tzl1J+7s>NCIj0phgR_= zcESMQYll0aN((Y&^$W1fAJwK406t(JKfJj8VV?ha z*>}`ZmCqz%fgPwqv9U_f0zal2mO5l|%*h(^6D zSCfi{=fd4!f2UrPf-vRseGp~G1u=eys^|;*w+63yqNjj@XF%QKJu7>zcYiQ#!`+~A z(Mc#L?l)mP!6ym~GjpJ(IEus#;iW7JR~6TQo?kMjGSkg_AgM(3&)H8GiP!Zq9!oI` zQw~GOhJ7e~9!`N-)`Y+BQF0$pYM4Pq`wH4Fy+?l2$R<+qJa15sO>zL|QjI0-3-@;!;_M(YYaIv>*RJz78Y;^&O$j^% zyr?cqe2~PPPc9$ETn99FMke0|Idg_q`TB5mzGIszXMP~BS!hwTFKE%QUtWQLwL20z z3cZ|6rp^CBFBctgaMmo!#<()3c*!)-7h%?kZDr2C{;+MRYNv!U zEy4=U6_}X-)`%J3qCIgvI&s}-)EH50DnSgK<`Xs5RH)fAuZog zLubeNUD&=gTys5+QrQUngjPKNCDak08Q9Vv zA5#jw`kK*dIAh!yPJL-m*}^AHeHIPcqT=P+at>40+{kZ_e9nBQpAQ@baOIL!52Rf( zN%q6+fv9Du4Z4m!goY1u8KFW-DF_A7t?!~z*-xIJR2`v-4VjX?lw6TZEmncmYgK^j1plI$N8za(O%wcq zkGUaFO)Ryt1fK!TL`P&O3&0bvOpRLEXRHYUu`9@>1+%%<_^G}7D9J%7!aYQu@uyz+RG|LGXRIsT?#8%`S--fJFGCtLQgh4{hrk0W8 zl<+SA@_>z+?6bBFw)y5myKFADUksP)S^_(<U8>4&o4@b$`yG5_b)J61!u zEDP*!%35Fv-$B?%KHu^w7`|2(jlk4bV@v+Dj{z-bzcamPlUP!PJ;w-iT=S%D8)hjE z4+Di1N!qKUQ*2U+r7kh-_0Q_7o%iy-M`%uKogIKPGKarAxFqznx^k~c0H?|${^8>{ z;H*Zb6m&>R3{^V_|LmwsM40^*di#xBnu~(5*g1Zqq%-h0Mc6{!xP=*VmJ(efXCyU>FTYB}8@CpbPs+|8mVQGwP~oYP>OQJ9paxRu@# zcMqb2bU)(r;UZA!{t#G|h52c_fq)+v)vcy6C0RPC)}!PjEB+u92kOX=)1eL4wL{jU zY>n(Z^<8=SYPj|Kbi@lg4I9kC=qQ94k>|zY-Gw#E(~ho@P_RJ|Docl~0E$~wb7cI? zT3lwI1Y<_I3z|y~{|uMFkHq8SSphT=U3pxCPi$kvdsODA@c+GX7D zpvex=BqBH+!y%EOvW<*fQ9E5rRA2Pp;MmUbd`DM%D_W$Ie}I!1e!f1m0T@@=mP25j zp538i(Bj=v4mcy}ZbfFe#V*{}mbJD8h65$*Xkg^_8~rAE_c;XMLV#S57&O=_6p#4k z=b)#p+{w<=7?!1Q{soTDtb6)X%|aRSZoLVA&anORdM);R_WN!lxYybr@&?=dk960P zv0GlCxx;!(wQHY-gHL`0oMGE@x^ey2RIWt~7Y^g=cHM6Mf3pyJWCH!E(X9$$GtjWY zf3(EN+EIGc{tEhf+JhexuM^yyz=wehzweOjNejb6J%FiPGpLs1VPtQ}8lFtzuOhA0 z7+hj8HC(AcWb7|v#kS@1( zxtY8+_o%lv#@TT$w4f#%s86uhuR%l4BtqlDx9?3WrfK8(Ky1Yl=?hjLI_S!P(=A_& zJ&yj!=PPT_=2a~INtbfIcp!LGW&xKP43>s(APkN1!*6_16s6hl67= z!&a=mK|mnO11A~01FVOLU}W`a09MF|b;U!N2XNsD=#9r@?b7lJk0@3d7ABa zoU;ROeUd{fI{0&!a3-!rTrnI+L$rL6JrBjH91DF`g`R$|`4cK&3nGZ1GBE{(5Fm>7 z%eEqYH7}G#3euDZN-^2OCAz8jWXJusWLlzzcu;vFLkZ#CxqlR0>>hkb2yKBUoIEF;E7e zJ?W#O%{z`LWA0z=@ut*Msi1gAFI7t&>J=fP;zUY>9dX<^8_F_58_($@tPyLqz>uvs zxxM6>ADOBCA5~u!6-U&q**L-73D&r~yE_C3?(XjH?!jGyyE`=QBsc_@1ef48ojdpb zGxxFTvDVtP&-pZ#eKkLpr54oW0^JwckW3n@|Cq<#CXEX<(;*T>PwQjQr- zo@Sfzi65==riI!dErhA%c$CAt#n+RsFTp9kO#e0rCbaDa1CRZ!$hY^hL^T zVE5XN+>2b~V>UFmsikPhB%j*nwDfA|-un0Vq2BY}l*TY{Q;60VhMA|eAKN|1?bn(l zqeSX_eSMvmG&G}sM#ohAYrMIE5h7LW~Gp$0K6uPe}oUii09H}X?~2!sQ{!fcyi)Z z{8c=H6DR}-Fu(SrqWH&hxXww@9MkR-Qpfv(F@vuIp+_lB2(21xZh4d)V%9lnbe7{R z4ABu>OR^>HK!Yznc5rU7{U?&V2;^@!c(*b5KNzdg>J5W6xb+bQZlRNwofmBlL;L#= zm|2>;k-uVupc7fcC5KrZ^bE#%Ec#V9ge#>!PIg3!oRx^>l-ZxQ<|lSo1g!ALQ7b^u zxEbbiI#V6Wl~Ef;Oxu6Q3epy9Z3w4PG=ihFTNMJ6PnZ2ytAYq59cq#pm7`8=*3E`ww%K}W_DiM6Tg)fuBV7C|})kyWnw||uv(_bMlY~%rcV|eJE75eTUNfS(!Jtkp;;6eV=*!AB%Gk zJRaoyYViL*OJL{G1z8gP@z=~!r(am!I@p@|=Pf0oDKiVR4OkH3ew9F;sEPh-3SYny zQ53#Z^~6YW&;C0ZpnZk>^=fu|=cx;Mim^mJmURqfE8x{HH{eQvHxX+z2Hwl+&c_bV zVJCX&G-*x9;$A`WyX9`FB;0-}KFlWyx*}1`0SDj}f|~$+|NRB$a~gm5(x*{-CVu{S znE)4ASF<&<*ca=|C4 zLm1?&f-gPi07)k}Dn88ol-X3ZDOdcV3XhjTXG}JFi(P z#g7(F3F?7c5r_;UM{K8VYEWdT0mDm}9_v}tT=Rp|Z*EOZ$SuK3)td4&^Z$w!WoA74 zUw(l>8*o+8C#4pM^M<_fd&PT8aAe^`!6LbAdG2OSJ0k>tj#<*)N)EfL>rI;r5NSoO zZKhE&c*Oa)SKq--a}0Kv2fBZHBJ~S~p8K4smbPmn=sb+moyn#Z{#&LtFpBL6PQi$i z_)p#GpbOp*r!~NO| z7$?^l^gPb8SxAZ?(stDTNyOYU20*mUEb^B~3dRVF3R3|AT} zRGBmkgxKvEXRkW6E8}Wa=h^=zVLZ!{Z)4!{R89J6*Ov<+DjE5qh@y7y%oGJ=9r>tb z1T|tKJlRLd3#^Wg_bG!?MuF-NaG`hbx4=BJhAV2%Co^G^Tah*`MW|K}yTnFYdE7+G z$_dgd&1NSuGX^jdh-!A>9}@{7lW48e7D<1Hw)I|2`!o6edz!#w1Kv%)KvTK@ zA*lbajyMs3tySVDKf6gyXJ?26$94N>zFi(7D2J@1iqv!Pw~jz;6-NCZEhXZJ;Hh1$ zbhKdGDq5!QbBj%FVi7}K>J#rzBa4Gsx2T}*#1kn?HL?zrfwXppG1Fdt7CT>=b4a^( zngopq{982g#7Naf^4zXRm7b4GN-=00@&QcaD33l)?BHklfb%N{zH2vWHSr-fA1#vA zpYF>&skP(6=OXeLW$-|c;f#bUaGZX@b=I7p)Od>b?a>6+lG?vpQ3x@=N8v&gIOy+T+Bj~i%JOK+f37WX=bosMls8+q%0 zm;6=%W=TfU%hoFgKL7lONhA-m&IYb@UxBND(bdWo&`lJ^Gs@+HB}k&#G3B%XF-Xh!9+lHX5owB)ZpDs?$(CI0)j{kmr!*&_rNwOn8jFiv!`)=LX^~r$rlhgbRU!$zAAHyqJT8b# z;-WN5$!-r{Ery&iVd7Idh_U)Hyps9F)-FM_prj=ms&Y6(v&G()f6><9E#?3~hq;u{%~V?taEHYX0#+~juQo4UsO{c?-EV`QAN#@(^~B?`zj>bAa=q3!<~M{e zt2a=GjOIVlE22FL4cWj?xv1FKg2u1lwaGf_kXMwF4{eB!aS9Hjd^V`8zgafaYW*#L zRgh`<5QBz{s;+nyzVCxNODMK`+3GvaZ7)wvLh%bKB!!2-5~Ba0)(}Y|AA$Yxjf$K+ zr0`2wL^0_IJY;c5P(@)OMyZ4i28Im$pEvvC-18U1hi1!^RKFmc3F9y zmL61KzulXFImw+*6c#v1EF=dO4^MMps~yeo>458TM}^SClxK7`xm!j= z@z}YK9ua!vS_~E$?E0CX(tt1#`w@oP@DgDnsT<-<+41 z(_bqjv(8E;KCjnftll>V8W-)J>(_rQ0`?tUVB`5sKzl^rU-Id<;LhsOYX7gAXcFFQ=$JidCLN_qt}OAYM4x;B1Cf-trz z&!x)&xEuTm`LrTQvwCQRMxqx=HV;-c^xJg<1NiDJjweehi>Z|!tDu(*5%_kxExF5S zzaBe&3%&h##O=IyJr+GB-WMt{5sv!?jY(}lA7_wnp6N9sLF9d~d*!bgBkCT{rnK-Q zXJID)r&*63mIpS8tkAc*>8%O~jl<;|^Ry(dn)*0gcjN_4FiZSjOAO-HqCuXQsxY8wg)TBm&2dP-)#6c}ZH z04`^X-#PTBk#t8=LS8iRMrjTV6ukOj=H(Hz3$^b2eyC}3i)t6%fHTzor~sRYFj9ds z<^rY-35RHTWh%wyFvFao=a^%wCrv(^)*|WwrHU5{g~}3a_sX1feCOVW`$oaZJ>U{d zj4J=T4?T$0sEzT?DArdtl;uv^sxGm?u}6=HBrj{M*yjYfn?4)t1jCf)rDC+Y;U5&d z(#m;~0<$y~CR?wX*Kf^pLtikw8xif^(e0ksK&k{E#tbv`6)*M`YbY2Aj@8c-gu6u+ z3gHU7KCPs5-gO;JtoUWjID#`6)60J8?yk*v0R+X2=TJ8OJZJOvB7Kju+cP49>`7@G z^TdZTn_tA2x;#2pw_`5_kB5L`n9OC~I598U)J-hp2Epv_zQDG>FD%3CyHu=kETN_; zrAkR=L?qeRizEC5`i3$`obt16v?q==suM7V2# z9m$L5%F(V2n5UrO=Ss&f@z*_ILRNQo(ARP%I~;7@P}x+zeFYy8qyBB2kVv!gkN=w5 ze-m0*Kvwu^AYj?3tApU*vj|1ue+}?6CnQINvwZM3JuGB)Rb(zxufb7Bv){qd8Must zv!IA5uApm(KRs8SSdSOXmt#Ysghkx(3tvx%qJ0BlN$w!Jp3E3Tx7slV`T;~A^V_P* z>~_C$_8&j-n-ri6P3p}!W?_tdU-~-&n{^Prr-bAVn{-r!r$n1ZKRv)fnk7@oGd>df ztDh1eD?^JLSzQ`hQ;il3>q3`iN2rQ5%f>Y2E}9+P5cJ zaDA;;vp3}=yhC`gU7$I=HZ&hE*-ePeayrdb6g#Lp#Tz11SqxW`iB~Vwjo_74CB9xENFZxm zL<%kY?a*NnS_}*X&4pyMiL<1|DtzThiM-Obw5H&2tRQQ^gBuem~gL1BEyr;kP3b zJ!dKR+T)HX{q61+U!Dy?GWjbi6d43B?s5oP-DUJ-gH=?>&QXt2E46-N3ILcqat&${ z7}n$2gUnAZq)1@tYJ=Ppw;|bc z+cb{;2LC-a9FV8palP z+G7io@U{v~#L)y*8_yG}2bw#sNTVl5$Br;C<7Hs8A5yFHcu7Z$)x;b6CO^+@^H~yj z#fKa}86>rjE*r@~b!{OY#)QlYVQT7sXKOeL4!sNpMqgbk2S8Hidy!KqWCjTs)+%5? z(iaaQH4qmX)WNu;(tBFtznM~EL{^3k4YlI7g*c&Nr&0c@N08CA7JaP+(WE7<*jicJr%IyS z`2aTVD3^`$aiAIXgJJdct*#XwsZ>sDjg2NG=!78!pZ#vbtl)RL7G_J^)84F;qzqPRiWmx>+jzn3!efJ#uAT5_2?;JMgUQ z3k;{x4}!h>EldS?(jj|V3JRoh#PB>-9~#^ZVC1nV599eSavPjjFiX9PAi_P2zz_|Ljh{8)W;G_%4?RqC@#j( zvMuF*?#_E}1p~5yq^ARXO#wu=PdUEJ$;V5215asx-d`@qZs&xVW24tMHbz?ca8o#h zZ$E2__bdHpaxU?})8sc+xQK84@0|JnHdGHKw3%c8lZ~J_QPu*bWrP5$QC1z^<#3)} zo=`>5CJYW#hvO55p70axw43g()IfN5AQC?xIaQc4h$aXIa1mf3^v>gt)1@PT=Zw6O zuAkfWGK-f6)dw*R>2&-SIF?WH20z;BeU)6SxQ9D=im*?`=qILvV~!bmOlMKE2DAE6 z*T`00nf6z%agg6yp*SU+%z}XqpKT{azHXphNf^6s-{>kyDc5f@dKFwkAc=3a!8AmQ z{a~+tmW<>^glbJdF=g7p^-BkPl8u0eTCoc`T{LH}wr!J4w)HnBvUMJCs^*@R{RYeE;xfPWZ!T6>=92>8f_d%YoHHc>sIplzjS zlb3PDyo*}cX3(mGVs{)in8H*U%=ixLw<2b-oZJZTK-^;q#jY9NG2`Vjcw#FTdZhoW z5CAVi917RE-~BIe*Y5_iI6__!)j55Lq7s+d=}&nEE8ANWniw!#{Vhx<)rZx?gw?5h zGzT-t#!mZ1_s|<7$QZ4k5mMz_6vk8|4Yhs{TS5VO*=qk=N-RghaBJnc7e@O6Fgcs5 zA}Uk?Dlp*8S?~5%x3Tm)ZUyDQ(T4FDRDYP?Uk@)%j|Iz&JE^0LKZ*B;& z4_%jy7j9#++>Ltq;wJq#i{W7Qd45X=JN*yG^Wn(|*%zg@g5<${@?096l?Gl}8z?*@ zH`7Ei^u87l9#XX=&6tLk6n1AG1-a-qe3~&TyL-t{|K<;>5&dT2s=mpmsD0Y8zP7e> zPP(z8l!v>F5z(qEhURR~CB5o8&T8oI3R&a`F0&-L^1lU*yU*KF`M8D0!X<&y?mzzL zCMFUnA%Yq7*0|)B#rgkF(O+9=giz-c?7Ck>bQe~t`xZP=l7oPbO==OF!{5zFZV(;! zhHB0mQ;2AqeDm3qtH!C$kMk8|q?FwL_ZR|v?gZ&+Q!;3#4d_PlbHl0|0ciZlc%(M{ zhXAFwDF%h}KjG+eW7MN4AnvvomWbiXjz_vRs+tHO3;kJum{QDr;z&7qvWKL(q;HZ`W8oU27Y9rVcc7;!8Zi;-w)YsZ2naXH9>8KWoqi&S2 zRxiyYAJ>|;C|NyKx9#OEi}RU*DQ>J^)B1iQUhM`*S$^ z_DFmw0Qs+gMJH4Lt4p;0*o$=H=YQe42pe|I@px_8I9tl*6t{b$mfja{xmJIvQHDc1 z8tt>NwubM95ShO{2F1m9UXKqkUPKE0C1Z7=N7`6lZvaP1SW^&qXx8aPLqNffdtL>M zK5Q@LiIYUyRMj9rHh`O$gFFm|1rD{WRT|~6)Az~QktJmH{svCrw0~jCWCY6^XPUVf#w!6WKtuJHV%e17jCkdg?JV?q*h{5lCm78T4KaN zUoW?*Vj=TmH1h;2mX-$v4`(C1<@}V|U?vnV%|&|@ zg^a5iPdwE7ao3W2>_`d~)(j<=BgB3wnU}W;M;{t0Z6G977aW>OGH}{&{3a}qTlo65 zgEjfFgkHhnZvbg**w)Smx1)!>f2H^Bhbhmp>z3vAP6#R8*pt6YT_&q3?B{?-W9M!q zBs}4CSLmg{SC1#8hn|eF+^MAi|H^8n$p2iMw&?!tt7@4)FaK*>SwU~1L*Fn2i(-U+ zJ!qLIz{A!nkM>b0!P4gt-ORc!J2UXN(5xhX)i$M-MT*+7*`pEV_iK;4I zgF)B z-bA)WCLn;3&|i;ZKI)eRndBPm^H&Ct<3%q?`|I-qn#U4@@fmKy(3SrEu%9L1$kM#f zv|$*|Y)!E)2tpQB*Ux36a4*+pR$XRcRCoJUUoNdqek41R2ZgeY!r4MVc$7D83ph%z zJENqS6&uPDlm@%Hs@wpscWe9@{WO~89wW7Tz{`+&VWReT9Y~xq1b{o7jAy>8b3du#bZHvzFVBTXbroVAuu zf0m|Ge4iXDt!zYFr?jTI_O$znUe{m)5QJ5Mxf*^onAYxrpX%xY*6A856PH9FkA0<( zGHFJ~SqE~F4#3;eLn!Fv?>+|#1WPt7*jPM@tcSbaKOu2RMFq2%M72Usb;pqrwH=D8sUwe3C9ohf4DY3<1I*EXf zPB$KC6Q>fFMW7~YZE!ge3os&)p!_d9>`%`%g9CAy|Bm<%eJNDVhcTQX8aC-Bl zc<4Hdnd8`Q@?%SH~2YnOJ{azzqx|KQg~O^-Fhc-XX32Wq#PO<+vt@#6xE zkLGeBzjQKO(EcfJYHiinOjJ!CeWsx#n36Y-An#Gn+n%_&Z|{j>yf)eZ|0?%FBlNof z2ds@$M?e6+;WfCsgJPCvA8FeAP6OXFf%gb6*JYB{CD7Be-DvLB3f?mRQmWv$BVNC@ z_n-09XaSNXe>dR?vlP62p$Sq6(*0@9ZyapjbVNd+?|?!3zD`JRcRui-8#IvA@7BU8 zkE`JxK>zbtb7o$;5ejjnWG}>y7fowhai1M!Px{xeC4&LQopgV* zwuTp$O@EiGYP~?>IG5t-S0xO4u6XBssHuSI@cYwTVER+mvC#WH4 zUjkz1qCwt@?|>Vr*kAgZe4Hoh86-Y~Z|Ic?5(i7<<9g zbwUuuqqM`rO4N>6u;ov9);*Wb5|5RDO*RLqQi2xlu1-f;%4$kkCg$gV%)dQy-ruEf zg2*QHPb3oU|FA|Vn?2BGH>}z+c~^?%ljhv{*xL767Mv)x)r#E9@m%YFaW~oHHPNI2 zRBjG_zq@!-o^ABwz;mgeZ~|A~o2QkpQ;{3WKyQ z^C*{ySWTe+Nz}ldB|;(01!`K{n3HcXsSj1TL`8^@2;&3@)=cYY*hZlMH{SFx;3C_f zDQl^wbWs^adamfg;mKiL=b3E~PD6D~-D z^{qv}BGg#E&6bKy!C{J<&~W{2rz zo`ar73mtQabDewV@>q4CH&Z3f-zQg=p>xJM^lSD(4;$XHr5V{q*g8|T@!MtP#t2&K zdk$0pAPmx##sv=-?j=Gq{7U=coHbZ{^NGk4u)(+={k;IBO!baMpMD1^3TfAgEadm7 zsY)n7Fr^|kQw1=f9|}XiBg$-xjOx?G|Gqd09WJnkG!@RvDE540q1Qp?Pfyx|_`rfw zcZfBN{i2W{=3L*Wt9tqK+>RoBpTIY>LBUY3 zUpit|_9_yj^^lTlsqe#5-~oDJs<(dVI!0_}PA9sV3vNd=Duf2>Zp*BWxQ20?5=o23cWq&*WpP&C-yhqgf(+B6ZAx##lcq9N=O3 zbQ|z*Iwa4-?y-~MeEhfvi;Fk$w&3Ib9>KTM9`CmaZ+TW<1LpjkC%V0+#4kifiOwZg z;lx~nPDhoS=|5Pc!0L2Jj=mq1#JyPvPm3z3oL*nZ8~#TNfF#K=Ap~}_@w`9ov)+y1 z8gG2QU-M-4`|!0izA6-DLDqyX_R+$Gq-YPe;Vc4ibr=xl`*RIY;(kCT@DmxIQ6w<3 zo-}#Ls$*izyV^vR!0;R{g072DpQDC^Iy?YVF(Y_NA*IWj(i8QhF;G2xmP|^#=jsA) ze}9TSp7R((g0q9E;s`k9z6C++4-!X&)5S#81Buj5X|b32`<%Gb4Qz3WJW42`&tu}*jX9>VxSk+KVuLfX+d8sM;!tb zpYTwvqq_PDkZOa(<`2gop>ZXX(34&{vmQv%oNwJRXYhGd9dHfqv$94y@-tC0Rk2OPXjhnjvWuq>b--M~uFP8UkYS64p5NKL2`9xL6LC9)tY zX|E>KH1J3M?EQ*AfDed!L2G;5OlBFgi>5sEP`5`d?_lLjCUC>Bp}=NSq~al)WAHh~ z(GL(mrv(M>!fFsW5WgAMh*NPY*Xko-v{o_K^;+t)PlcvQ{vP*XE%v3VdmDmAs%8#0 zY(m$lc2bmItg$%4Mwo})?XgwtmH)Ve{RlKIPs>t_(#O3Zr^r-6XN#%0H59ejCkdRcAPSQwN&#lK=(tCQEQ!X46X) zWr~!U90aD$!N{9lCjNLHjs!;^H$IGY!gs<2gRb}7rO*unug}bDB5SwTcZm*>#`r9r zqk7X>+=#KEbm=SNJQpHno%AO`*Lk(89!8(KD0n*Q?E&fdPQvM z#4In1YBc~l_9nX- z$Itc{5C%L8wjSPFXO9VqP>qxF#Y7c)B%Kxh@B@!3P72Q`xCATgrxHJMC>&~fM@;xa zgNin^C^VS8P)!Qzk)p_AYeI)3Sjo(un~1)9;=`N}xsNn_-NO~TX9PEa5jys;{`R@4C`k}gRz?K_#*~2= zu)z4tDEfj!gYO?i5ci60;Wmj!_iFy0%Qf1?u&+}f)Y$36Byp6%e<@)S9WLFILW6A< zgg<*LCY90sP6$=}^B>p(?_PxK2cKVnk;WK79CNphyRa>!klHqq9ambN2-r7sG@BtY zLW(ApH*4fvq{!FibK)yEBUX-;QS`HYHpo(C$nvT~ekE~htXDr@3I=bcrHRH6b5z7#l74 zKo~vi!ZnbjuVM_HH+_`(Lzg|Alw>}Vn-m2p92pKD5oaDTjSYk~cjLy?ZWQ0UsvQ>b zYxlV(L=SS~*DW<+`qH2MK)X~`9{QDC>bNP3$M&-J`p+`7(u%-v0@ReV@i6PzVgy=H zu^&=$^9-SbBfhP(KJ`84JsjszL%~&UcK_oCDp(jOEeS^Xc3cv^etg$iN%KOyw0z6d z(xlQ*zIe)O3?M34f+X4k-4b=9t~c<1VNz;ND7-IXr?b2V%r z`$uIXS8}@R|7XGeBeVa)L1)8@WP8eZ(rggV2;fw}8`FKY`Wc=9BnUW&ewDuA=&F@U8=)pY+2jh&){&zy z+Y^%CJ$@HO{xhVvB?SNpt&_|H{1T!ce*h*tZ@taq^bD_0P!COX(WP5yLz(BAYaesY zM;?Q~HrfZ4(=^Sn3d@=SOeG#s867%~%Dqz7JSp=w{D+%b?mO>%({5JfHnQ!;BC6%M zebxz_6n`Kl5M}TY+SWob3unTv@V^vL`Cl? zJ$BPk($j+Cib#OhAN{k}W4%|vNwb&tB<8@`N)QJ$TYxmHQ7MKn4iGQ2LW{=4qEP+^ zjc3sP?&G}VifLanI(aox^Hya18P@V^#?>UnL(%(+Z%_{^1#IhXDQ3dR*30Lht-dZA zZ2t|I;_QlE%qh`t!#C&6y=!AK5=lHq?b886rK6&Eg08~g-kmVf*K+7W0^7%)lQ9A6 zrxY2=j6Z4fOKOs9jDr(Mc(P%Ef=@hk{ny7{-qyHZO5&E4FJfmrK8U`yAdk6p$JLY( z`x_&SRmgzM<6(=x$NVigx%si(S$0wyU=f6v+MMZl=MDbT8I*Qk7< z?)p^E41xgJ6ZPIYA^p~l^Wc}neMz=1`L@=;E(y4Sss1GLUN7?Ic`&ne>tNv9yin%d zv(GbvSGkF`vUGNG`-@?JW2U?Fv+ePSW5RZhoXzW@H`VA<$uUg+G51sFoWIhyEut~a zH$y4GO;YS9SMks7IaSrD|2>yG{xLyRfbH+d_0_fizckE9pF%{OK(WlGe$q6?BM|{( zbgyV?W)!<_h}*=>81m=spq1wwlYR_8cwegFG7NVV5t@EKZ<8KrR#n89);AatwwM9! zPiX=eiLX+LP>^SxkyfG_M>69ZmZFMQU1X@aID^@OxB%j^f}<&1DDLG*JF*6Re<2c`U@}+XM^i*K!YZY_F zHqa%j{u$QGUtIC^Rg-aiXLSbCy9k;Aez5pL;H&J&?7m~{?xM*6r+#U9@HhNSSfVbv zx`)9w#xT)>q~nk0mHw;W+f@610tF*AEoW%cJvsuCKSlSK!j5^O!J*rYNfJn5bkExG z1h)~x{oTtl=Taevt7Yzhz2%oGoFk0dv`v1Yw+@4_jxyFpJ^5KM?CQA%&5(omw{GB` zKLGmJ?@}QSj|;0Ui{euih9;*1yM!#OM@8Rgo8~Zdzw6i@s=Eth!Dt6LwL_s z;mk2&!%hb4H z6+9yz*;1z4n=D5A_(th-)~SkF8lowJ1zIZ+wc%2_df%Z1D|NjZj-8_32Q&C=c$AW1 zEHfvN`!G@4kftV0Epry}dxHF%9Cqd%mc_}yG%uXx_)NpKaN1t)Y0F72MK%t1gJDHL z`4Mf3sb1z#I8_y56`AZ?I!bH)yXrpYOYg~xEw09!aHuQiCnc&XTN2+hR($?P-=VNi zkJFYy6#Gp&g||LW*ZvCio{CJrh5tjDuL98Kp?6^Cqq-3O^X{Kg^BEJ;7BgVRoH;js zBz%VTVL1u*#~r~PIS^K|AOq@FZ0AHee*jY+*R;%(tnv{)B@_L5N0;*No%(LaXB|dF zkRYP2BL@<{9Un@GZm=k_ImwLAbTZ+e%#f6#qBMtX8NiVwuL7cK?f_d%hcd?~8#smp z6I{c=T;9u}ALk55?A6fmlZe9&&q|pw&XLM)3cFLxq*TU*#9MDjUJX;vZ2|c0b@%rl zcH=e1AY+Ot#>cd#q=2|z(io^;shnS}!rXr~b@Sxyh}#ry>B69c1un;w7a-pRJD8(h|P z)K_mYeu~@U)OT1=d9xVp+S|Q5z9dZ3#D`3iS0O<5RzkW|yjVtRcDj`&k7j-MLXGYN zgNz0;fKj!cf6Vz5Q#ZWo)I+ieIqN{rqwb-+`j#^E58nmE?2Yy{p1O6-Ryh5RCc%nt zyPak788N!^+wVu*6)i1BQ;hAyBe;eP*AUiD7J-G%c@Hk8TYmX}-XwP3nI96XzgltN zxJI!hNf?P{a$rWd@%}la#nY^p@|blouW8mt^*!r_OJ_0+3r9R6pHl<6S+9{2O_f7Y zbE6&LLq4+DLBaaOHl_`y?UK#?F2-zV#>>y5m?qD3fD!#7bv*Vk7FF*@$b4vS77@xJ zXOtnh3LMx2z(cu_kEl?LP99U4&faA}dULDj#)zY=lTd@}M%Q6g%7}-W5SudWXPp!M zMUw+<=K4l$H*fhcUl2bH_%QmZ!4!67JluNsMfy4bS5hMDKlGY9MjX(()jtl$ zc`ga?n_zv-EZiXI+Urw=#rU|<7h(YF;i~3p50$r@FWT5?Cw@dt=XhXo6tQUyUlUM7 zuKl}1V zOL&3%6TfM#K4@deVdJRXG?X}e4tP^3q@i+bBlw_TKo1t4(Spim63I<(rB-t6!<9cy z{2Fgf+^9|R09mtQCdZ?t`VhWRZdE;4#N2T^YZz_pHI_#uqu2YfZim=W$4rNQkwpvo z0wW6FzL>zmzMu(L*SV+cb^T=S^ef&t^SlBE-);_jpId)=p+Op?Y3WNC(hvhg-r-@$ zWQ-9=LDzfhYpNzJw+6N8cYNJVY5L-Vw%iRcg<0Pa^V?I?-Ea1Fgxxl+s21X}D3UNe zqjC6qlRknT(m>VdI?I2l$B@~s0-p%>!Xkjz3sVFN{wAqd>@28hp`kp5Eueb)^fVvV z-5k#hf23iyZpDnqOyBB^8ovUbPlzHy0;}%xlkbmG*^Zk@`s={H_Ap#&afChioa23kPt`_yYavu+e>epD6uIqdEWsRw!^EQ{ zn4ju~-XwF<=VON^7EVz#jLPuMM^*07P&>aI;|h!<3`{i}NM(;`fisGlSOy-!99K2F zVY(!Kc&G|ggRZKgO+%d4P@{KWtWFv*o_W7Lm5s^)B1kq-IOi3UE7|r@AenF^ZYTY2-c$N z&94xoQo4FphXzBHWT2^pxW;h6;IMB;GN48yl$#QeM!#_6_iYLUlt(Y8y$HNQef+bu z0tnzwdb$#R*0yV0F|I%*h}A~lLHV4}XTxl?aYaNZs}d=`hskRq)ohM=L{$?<82IJx z`(mzSH!XSmjb|0iAE8u0s*|p}qRqqByXtU09cUeT=QK@<_6z?W_9`$xmi^(^r<@To z*h6$58^H#_6wC680sjr##d;O7qc}pE4@4R#>#r?+TisiCuJJ-64-LxB)4O`0_p!zb zYq^N7R%;vImDmTRzM%b@XOHaLL(dV%_&OnK<$Q*_qmW!Ml!pzLVa!xHCe5*-CTt8# z9e!`HomC^T{U61ck+>9?M~v zDIG~*eHA!1PE>TWvoDgR2A5O^N#Bet3e(J5ltDvI=m$^)%MHY3+S1$*z_<@-5Y-YRM~Vix;==n0y91oI9;R0se4P@@G`f-~2y2WLb2@AR zBG^cUj$%`MfZ2d3t_Hm;m5rKBP!#VCn zIwcBLJ0+51C)JAFLxDr&hWpld&(|B3n=1VKGb8m~!3R6!aDi4;TWMoQR#Z`uUNS>f z-l_x8ca3XO#Sd(AkR_Ze5H`Fq@tbB2e3}wdYHe?y;=M;*>O0Y1>iakjd5DFRiNM;H zXAQuGE=*!kkLEm4N#dY0&}ke8jUykZe{*(Y7K+x`#$q+|m~#_SW7w@2Jx6rE0H*-lP6+!AiJzgWAMllL)AhDT#~yjW*9w(_DfwFUO+TC#1RQW zXXv}&a}jVM<>lqwAg97xe3D;um920eEl2Y8><&P*`Q2QGGIS*Y@(d>hdO~yj{mL$LR4IMMPor41T9^>U-$&%9XE1$Hhwtl@P zJe*`277%Q#a`Sk28&D`Yg7mpxOxV#^xAlUm93$`S-UE0HnrCwZW#65Nj@!WP(EH5= zZ#6qZFT6~*LglUf(ww*zwwD^+e;)qhIxx~F2SYXP(R~5!|B=psF`M8Ae8?H-LY}#j zYDP)Gk0$eEfP!eua7cSL;D9qFG)fX=6nZisMmEmiMLG8;Kh+tEuu9D5Tu#g^KRPO6 zZWD%hjCDj73FLf`k!69Q8-1y8gVi=j^Myfkfd`1Ii11O2mMF}HKStskf>&OtApq_o z413%?ait<4_;b?ydBN*+=$2olS~bde=P*mZV`op-*hv1bh9J*p{aSNy{kzV(O06^t z1BMtE5`{F@@-XQ|HqH;8&}3~VB7#;tFo5fs)fNv-M6+a-LHN-@3EQBfFQYJLuE@4n z&FQAjmoyyPuy(|n!1KzE$B`5v4lWBKSlM|guK;MHR#__GeNpa$=)L=zzA>D+V0tyR z;RtHmaG;lxCg^z*O4p1_5x_BZ4*r!Ln6~>ENNBavbJ_b;h7>%xTCr6X_b{{KJ&hNL zh|4sb$lL+n-}UC9)fNxVA^ZgP0FwQ)BMhS>Cn^B5tOhK}nSg0t@uU8GBd#Hu;`pU9 z6b9526+bt`MOw)kExtV7w3AzV<)4f7tbOIcyX7^|v|&mK!K79iHWz;Sq&Ei&f`9@F z9pUKO1-G?vS*so5s2>h`{BrtviWwy7ueqX&9^{e_#esY+21v=Ak_gD7Ze$Rnfxi_Q z)gP_c*BWb!DwY^`AFYeM!E)<;ITjX-a_zgbXV7g?!7D^{cp(#DJv0>aC}rL0L@8#G zy5I@gg&^6)&&hW}IpPNycTlLD$L_Mk6`GUAv6B%V^3N#(jfoxB#M8fz4;i%R(ypg` zcKez^n#GRI{JOg`&_XLhu$Nl!gw^+cNO5hL6Q2PC%tgeb)=2i0{80Obt}zOm0!~6< z?t?db%Ao`Nj6hhOMt1VEGyq5J#&=&n5x>8FkNh)*zv@QsXLT96Yu|-zAWrYo;~`-{ zj{!pGEHUSAV1oi1jk-3#P{UShPO;x28eoOmyf z!Xf9~d6{vqBV>J!I;jy|)os5pb~1eunS5TI`Xq_o7pJ+$rJb{{JECouVUQm$u;vCe9?8WMWJ_v2EM7&5mtNY}>YNV`AI3_4j=5 z+Rxt4`qzEZtIztNx~i_aFc^XSc#0kNgKeoDvE=!ACynysQ>1;b%?2?5hNt77!$x<| zU#NyzHpzB~ zO&7#4iMRW44y^XvL?RGLuzZ4eMcfmvwOeeKPL-m2G>}Gw)fji{GuZH3*T2CK2Wi&d z<;}a^ANoc}v)~5P!c@eHA-m|cL6%WMk~A1S{~`*gX09lg2KtsB}iz?*#IWYLfAW% z5w6ELF8lL2E_f#ab(~+oqF6C1@Y27O6(DN?BJ1aZhVA6S=vAo=@R>=3n1<}?6CmVn zt!oa`2Q=ojFX&+Q@rF+3iBtf1-YiDzYxS4g*C#F>#=`p40_F^z_(f=F%H}^24B|Br zN{sMBO0PzF+0=jgYK7Szd~j^_IfaAhH6hLf3M*~bwqg!^Vz^{(K!<)*o^)a+%|CwX zM6#0D8pzv&4uLikXF!~gSqMv`VpKuW^F|9tiTU>#k5 zk!;%9A7!s9G$}<=)C}^fy~3yvtrr{ClCAs9*xqlytKrbF;PE0Ysya|tt-7dUi9qK; zB^mW&UPi?_jc|AJ!`*bZPAqV{>oGcP*SCx3ISny$>_uiZ2+^^A@KFw+Fx_91%51#Da+dhX!rVBs7c%(SXYqQx{1L`lW!8 zoDu>Cn|Pdq>5!v1Do1??3sgQW^Ce0=@ zz=A|OOhw0CDLnS@^9u6mWLl@!XY$+cl;l4CMB{2I%)63$d}uN#{76vNoo{i%olNka zpgZn&MJY?W6vw?$hEn$C%1F^qY@ctpbQTMg(N7%5dkTPlB$1Fd6>fq1p3ol@yiL&# zT1)9k^lP;h%OcG+T8`@8NV-_puL|cv@}XA3Uys&W>;ZFfB6=HZEi*|NVDW<41h1y) z2X!7nLzd35eQONgh{SjwDu80Yvw?vyG=rzDK0ePS;QOK{3+wrp(HN{w#JR!+vfWk zwCY+;I9LUQVmLun*zG4`IXMMf6ATi`K_4kGLG)T~{BZ(w{*8iRf5aa{A`;epn#^ds zHE=XscNUcIyX(Aj5!Y!};Rca!1P^QWHh1@-YZ^Nj_)#$=F?W!qpY(l0z=YiC#Rkwm zW=zmA2g7aXSLmb)+Dcs;8x{|s6Buk)$0gsI=Vw;6>BaYMi=L1uPizCHRb&Q^K|)M+ zOtIJ;T)}Ej9aJSjZ0D8`J}H|B>B1vkABmY9DE`RRkR7y^_-k6URXavK zU{N)J+;{SorxQFF*NN7guL*tEvh1sxFrjh)&|K$AEf3k%ayN66rnlqq16fW!NQ2s7 zx|Z1V6#WbOx1HgDKz=g$2ONh-%HYF<=>70}!NKrQHUa&&0lAO`pdG3eVR`V?nV+g{ zKdW)BG)qoqAZ<=hc>ocUUWykV<1+LNB`>;?9wxPiGh*~=?n&8Vu}?ODoe%XfTl1m^ zdUFj-!*UuFS;^2$YL2bGm;qHUlbANVm(<)wCgeAARZjs=i)eUKnpI;;KQAYc$0LX% z21cyq7rPd|168S@ZPcEJZ|^A@x|OFv7fUZW0US6~4UO!8# zyVb3vbaZ@-{1shH2oq0@$0&S{VO#`@Sfyv4=36|B5Jq|$?1a4{q;x7HG@6bF9V(S( z$h5)W7SM-xU^^I(TAbQwiR4;DKlu@sZdSJL>gAO!#@1ww{sK6a9yTqmth9>bk6hjY zm6d_bI-XXO*x?u)sKDSfxX7m&xe$0TF_gUZ>zIY3)}^7Vn7(N=$bnW+SafD%hPT_2 zlA}>d%0{1H?UNpxEKiWJ3F)~rB-&9cs95g&a9j(GYHUa|DnAW#KJ6&Oc6uBQl=Zj9 zUPdsuQ_}&NsxDMQ5gYmbxCkKMo!YNj7SMVoDmqa zasf3(JmsSn%nly_rrpZ}jf1zbI3fpvHSFNVLF46xVYQuq1KSHoLk&^r+%6lF^VRCs z4rr|206+MCzlY=Uyh|_VtAISLZR+W;UDE&(6!w2F-V* zXa=w6+?4x;SPFvz`LON1TVz*Ev^q^~#=VimX3XM~Kr|R?qV1wpB0MY@+YSndY;wY3 zF_+5{qZ64JG>5aG4%|@QX1j@D(5P+ZP6pB?Et-uN#3YeJW-Qo%o2DDTk~u=JCZw73 zU}h|DD1zy@4*aObf#f)=_76t}8r(KSs}UtVbFvt%DGOiTw>?~1ABRA8f$WUr+a9nC z1091OvHyBLQ344)a_Bqp3Nl}ZwqgiHax(=(D7))$@+mCP*H(NpFRasDMp>>-U%kS{ zCt`xhK7g6<=yTjC$^~E)+qvowv@~CFU7WZx(=&9v*1xcG24KfMbIF5XOZadkrx3%K zmR`ZNMbj1mK#6MVz4hrqt->EniG>ZJ^XWg9M|pGHyV?S{Lc8c1*JyET%leqr|OTju>EK1j9uJZTUY0hZU}`W5`Hb&B@>)v z#A@=Md=ihw-WNC!d_<;BRb391eyp*?xrCuo^#V0!Sb#REue3w68O|FR0>R(3gzf;A z#B}1}$?g_!S^reT!jHc?Zu|KWIW3#Nd!Q$558E$UL2H| zHQAbxpc#nZX~QM6lUxFTQa5jbdgz{31SE&WqSIQf0Q6eE!G)E=qeU)9?o0S)Y4d!Y zEusoKZOm!H%$eE17t}*1G6iaKbUM%?E%2cPq9qN(xq`01cBP5QdcPFcyA1ycBsvYe zlv_r`4|m(*pvG>4=aUs^(a)(`0b8~7JxrLMT@Pkun%-cB(pwKWb^19)B?n2*oSj6~txuQm0hpDFWc_9>6X5Mrv#0xN#Wh*~Ux;IXS6J+YK=gH@9m`QU` z!8MSea^4Wr+MR)Z!-3DdM&U@bUM3B+MsZ#P1S5I_-OHd=v|WjV5b&rs;Z})87>Lv; z`_sX&0Em6eR+MVB=&LqORJEKvWSg8IMV_aMs*z#iv~p8a0YMRKRC=ywx(DK0g*;r5 zY}#1Ljd0!KeaOATK#XukBhae#r<$P{_y)WYo(BPP5UMg;veC|k zbir_`K($?mE|o7cMi!Ysy1q*G?`?d&adirPAFO7&Lq+7dq;K>DmYNyAM~ddZ{wX5qhT0#k4p;9;!T-S3~;`G50Q_bUv@3g7WX z9N;|J+!Nor>_7fOEAm#38TN-ro$ZBRah8B zc5!neKfYh65slEQ8V48C9gQ%An-`0|(X=*&Za*oaLk!K{z%O3=dE@a(yi0t*-y&yUxyJvkz5;5&ouy-j~@MUDa=XZsDPa2ED;Na8t}z zOPe2|zYHun(E#Es!))026Fzg)Ig8dk;+s7JRm9Ev(?y8iF#L^T0)H~;wGlr@meA(Q zvrE9vGh{F`43?R-6q7>3jrk;z4&TaZQZ}(;K$tM0-_$^e%|oC7K~5Oi*ci%vY@^H#LhRpIO^dUUNI zLVvILqAeJtx&}~=NuTDUB+cU9PNS7@f8!C>hKHxx9wZ;4tLPqM&iQea*d%aWb2?Pr zZxjS(5>hFAb>-L3rk-;RG}?i4Uv|O3R`qPrs zR^AdCIpvlJcStniMzGs_Cm+ zsggsZkmxRXZ8G)fsHh)1=c3&FIWh;qi$CoPK033Ys8>wKO?4I zriwo9A}HL8EYAnEblYBNmy?pBd_ki3&d>MDyt+Dt@OVbqnQm$N5TIYpQ_RtBXY)fB zG|u-jRvc6ce`vxw#tvP1vB&W#6cFyA=Z4r z3zZH`O1cR~P!zf^(8)q)m~ulR;rMl3b;5>s+vT$3aWvPrrK$sBw)SfM(o04Eovb{p z*(7jGR$qGGPVrKppy4YWrJ}&#vV~AbQ4ov@nW1L)Ru1MpKJ$#9DgYZD0K?M|ZAfCC z>0f%>ZCR#!GK%7z(g6C{!HPyP+9&J0f>`Kd_2&Js0lrpQ%KiCyc6`RLjt`xZ-22n_ zr~gkFQMs_6s=WP3Wfk-6O6o#i2eRr2o`z+9{cH?XxL-W3g8BtY5a$EO{{^Hk8vHvw z@4=e;6xZR|^JlxoW`ZWc{EDBLL)9Uh^OSqleI?m*=jppwLwnDa7*U`B%617u&mEdP zcqn3IIM!D82z<#Q8%9L?7%zQq{6*Z_qfAzC;3F^nWLC#jpvT*;PBxxNctlhz5#8qV z153;P1!T5q??!O-YS~Au?IYOH6Igx({tkgI=hz4*WYe~S3!RxW_F|ch-6I*Llt%oc z{3*X(Z$bV&N=wR@dTQSD1gl2akHqkO6l(}O=hR@~5mM*umJ{BMpBdOiw#A2JLN;Kp z>;@kDOpvt(O#(>H#f!{wFJ1eDQ^&*;sHH5#4fgX{gJ=!+GZjW^JWi>}#nSd&lL^<3 zW0Wh8@gl2JI#i{xqtk=W$SpLK2jeMyX&ZMW3=g4DO0~BQILHABTt%nsRYa6$nikTE z-sIr_ea!f>NIq%V#ZLeI>i<4{EFndg6ld!m*BT8f?N{M>{6V+hd^=!CYqps!Oz4lY z9fpk>zaF-Ws-D(&uuK;=2q_rbw$FNJ2RK8~Bui`0jpPgR);xjMQqr2kVLZgvi{xEI z8+*c(Y`vv3t_*)bUW~|zTnyAPErzK+_hYsiF!7tv+_XzcX7NKz zN?zwf91nETp@{!Jbft@^_GuT1c?7IeyI-(HbUd#AM(c9XIheE>A(>ov?w+drU_#)o z1}80!ArF;b_-R>>frUpmD6(jSIOOR;!%RNFNd<+dr$#!(Qhhsl<;{If&aZ?#<{}i7*Mw>0KLq3pPrhz?V?J&;X94Wp{`5fJHrQzP-aclCh!t3^CpH>SU<$mA ztY<@|_#<#9+j#6^oi%NG$&4k7{zT%XXC3|XYd6mf3t7|W!N_|~CP*E_loZR-y<_-S zQogzDOxq2#e*v4^`|<&zELYO`5}hM;UTrK>3sn)P*m7$XFipm>%ORN$l1(|Xr z>kbt6=kpYU%?77IJ~P7G?+>KN$93ndo?YNpMf8{x)?P@a zg5;brA+0A2*%z$=^sk%n!?{aqi|0|uj3@;*{5bK4bNL&m#4f&5&1uok)BySD1qcj0 zOTc2B?d*)4wN`y>eFIn?v|(UWr(B4O;%27q4Ckm*PWYjjxNNhqFB;*#gYed!+2caB zeQoO7wR_8FRwo<)@&%*H^&HDZf1m!MX4n9E(f%Dp>?=XYG1L!JEV= z3r~55Lj@J8`J1n^p|{S!eDYL)yx|s*>e>yAxi^L4ExS^9wp=Dbc7JF;FeZ*b7I&&- zhMdoW@%`^B`dc6}{(0=hi2r^|+KAC|!6}hd;VCrf_ZSbW-a5ZDcXMYRFcKA9_!NW@;x>CD zA#hbE524!l7&5Cd>#ju_3x#6wr;Z(KglPhxaFCY~k^*=yrb2Or=pqlD_VZ&q4$sGL z4=#GcbQ};FjGM<(zeaI_Zoa%kaK2m#&$y6iTZR0>$&03+f{(cFpsk#f*TmR@fn=!? zyY$-?beR;E=G@keWHUB_fatk*>z51erh@8VH~YTb96F{@>IfW+(LBx!vJ9^cqI{FC zoiE+-vN&&%$1}NBw^&?>KMe^t_imM`bXWKHEaFaAGqc`sU&Fab8y0|ULd$qzb3*sC z8pywKIg)G4?oplx-gOOwY8?Wv1i^xa#gtx%sg1=JqyCkvPNj_oQRj6J+!EqsSxPHT zNU~fdROW5EJ)pa&cat0!-2knRkITK=T z)4BBYZP1W47gX9_Y`DyE*M$2VRyRas_?pFy6;iuyH!~QMP}$ z`VCOjLA#f6j3}1E4Nxy0`j*jxg-D7`cRZS~vFz7{*ph|Dfn3Y@mn=7hZvmLDZmc^Qk z-cRgY7H#U8t5aM6y|l*aG*Zx7GKO@p(BfyvHANTXE|$1?C0oR{N>?CP6no4MF(3+@ zDln_cvoZjSiDH~0D0Y=yKpZ)$`W+__HaJRUcuxx5I5~Ixq?j{)LFSsdn>8P%V+lr*5|ZB5 zRe^n!;bf)lDHX!?F2#lMeCoHh3;bM~-RIkH+eY5Z!RyZc8rFUkRqaV4cv@142!vn` z7efWx^tZO5;p(ci+?|oa>wN%*hc!hOwuDe99cYc9TpqA`smUK3Q9G7yhV3~g zeG@w9!n<%3nO#GjWMcV>t0w050VTy_~&AV&~|ah&El!7%ZnHi zyPlB2MD%@*&=%&VTtr(CMNL2alm4i!a_X`3k&F8#hGG1bb7WHSZvXDD*1 z^_7GN69ANKt+d`zT?r#+aobguIk^7tpdh7})71@6@=;UiVRD_dl(~ zE^rgxum#S{#+7VFu+flVrNOg%voK>3HCw_M*Tv>krB5CJoJpMa#MpTkE-sxiQ`f2) zkmVWjhbO^<&m(>X<>5H(4~)5r*0EeC6Vb^41s>~zS*$R81k+$D546En96#Xl@Cur^uAG$8`wy!c1~0it))+^1ZovAqM# zBmu=6egk_kKqA^_KU6p6#Wst2z7V{Ai)%sn^C6m{s~};(wqw-wfXdl~L=X}!R@cAZ5TUDoSRoN!R@zR6Z`l2~`kge{ARIXQN2T8(6;#lH*qL4xM zOU*k=YUJOs9_ZuQgw8TT{)r!qtv}2&0H!q4ob#bm@ZUBD<7I&1><^iw1lBkciTboHD0WpzPpEJsf4Z@bTEwmr`} zblGBGpU!Q((|{c7g=j1Ska$DN_#DOil5_7NQS+>tsWPdh!#(RO&rA0#I^I&PVycj* zG-9zmRJtGsPYHvKDyP5xeq+lC_niw3tyVkU=TQmgTYoeH*TCoe3DkIKaJ^1D2K$ zs;R~6xwjHG$AS1fDO&#ux!8Px#e<3@YtNiZK2bro{O>GK7ZL~+s*P@V$@0aydvqCv z!9LWeM}|so7cv$~%|1787`RDegY>OAm|9j}PNL$5aZpIoiEHEu0o)Wc+KsSlNb@<* zkcEnzi^BRekoW6v`6+5X(QUY%WXo?5TKi0KnsVa>P_hFp$U&(Jqt}aLOoz>T(&mbm zg|vmdQ<6}hg*Q{?U|G)}QkSbi&Vpw_IR_`;EyYea2#fs&6C-u$w5JMDnR^p7ODWD1 zR^Nk|*Z;!>pv!9;jUOE0G_O3+Ylz$PF8EUa*(l3VYj9&YJePUSbg!|V$6WC&Wz{ZM zm2zstk^Z*#P*X*3hMg+8aGZ{Vtf3F)3a;a&E-+qlkD#?a|H(m<*8U4R)j2^9ll z-3x)|mrBVY{Um#6cRkz4)0sp?Qqo?+DVqa_LH!E+GZ~=?8_&}t%MSb10*jV-{Fx8( zaI|L8qF8ZoC}DGEi#x(~q%)57oL|=Goc=|J4fI?-)bHXpjG@jOC~238Z;}}x2$Vi; z7hWM*+MX1wVEuBUm`qUqW`izgthj)+0Q(t{O3_=H86f*0~ot8hB{fw($wXNXW#;>2d&8qZttACzE z(K$8?Rjtxd-=;c76>kzBlLFoKIcx3!$d{);y$cgW4`CE%?4{RZTM%MRz8{=_BXz^P zj4*$OO03@WLPz9%dZn5`?ux(W_t2-;sLv+^16%LwFr9HBG_C#(;0z*`l5Jw-GxzF^ zcCE|(=Ke9=W>xDto5DB&e@y6K)LBt~{L;_xpq7#KR`AhLJJ@-)%v?X-|zrS2j}XOP*_;cQ=MrD493# z?DM(GWhr#k^k>|Zdz7|gI`iD+AOMEWo3H}c%XHq&cP|vKJMY@htH|>N=2b7NgUU9C{F>1ZrzdmLE`dTJE54T9OSXYx7KKStH1IiMn!>lWOQ$sq z$1KYriMrbk5@ERt8_Lp`x!f9KXFcdQpUc+MBzrmCd@QvufnB~N=xMGb8@*|jG4vj5%TwppKOed-T7 z$)-NwSJNsBh^cQ^o#XxGG@1CToZ_>_zRj}ICIVgGOaf_g5iQyETlt>U1XJX?;LZD5Ijl#pbig#Uhb{oIfzeO2U9*=o*!OXEPv> z-Ts;9qPN5U)hi^=#V1mvu-Q}nhYoDS(*Cdbv771e1kZc({n*ZxL1G=UyH!oTDijj8KY9i;Yy>K7I^xr~^yFZBdc+kEH$PqsunzeA zt|Iyoy8B?84ksdPudqOWAU|OdXN1VixqC4O&?wi&0rcI&9^GS|G1w@ZDNYU9;vm^G zg%asDbNN&HI<*Y|wI-Ozk0K|W17I&eU8Hq9s0cP7Ku#K(M#869S_t(hofzIyOM@ls zq5VSc{qI0>(2oq1&keEJA6)&-`0xPMAY&;H7lr%)w?RbYN-56qTV29g+dX$%mXW+@ z^V})^y<1=UqH}^XvFGN;UHIgwNtSoxjdI6f3m>mz!HdFb{XMxn?_t9a{Om^8rR`vQ zApViY{4!zV(WklUyy*$A_LE-nk*owyGK+h?-Xdexz0p|yQx4Zs+kvuHOCtsZ)1IdN ziXZt@_9Tl9Xgg~5mXInpC9RC`oAZxLrNzoe<44g~RCx`Hy@XvEh65P5h_(|7CrM$z zrzYnBE!7RQcXrBeASl7I_tgs(5rv6A&vF4)AwPc5`N)y|={+2T(-<7Y-h?H2!@3$U zq0n!}o9^loI+kR@*q8VlC+#(Kuym_DbZBLW>bvGZ+AX%fQe1jIhcJqWac56STz)Dc zih+`+rhSY=&X+26O#*@%+iUxXZt}c2ZzHv_l%Yx9#<_>)HEU}^w-tSb3#-n?jB}~E zt~GH98r(;BLoewLxxTR1dXcQX4w~iQ4uN1jnnH|Ul~tN25FxA%*fBi>pC5;wrZ>su zjipXJuIrxTcATXa6v$vp|7fdL#m!f^Wd$~+fl1W6yGxKDdU-uxX63xN3*rq^sTH=F_1EBH4llD4^GCNQ#_X(|*d z9!6}W5vxOCP}ssFo=;&=lK55H{)*?#V3X$=kfAW+JS$1P&5Xt2C?;$kgJ+&M8g)^} z!)1}xbea5iVeY-k&wKudWWHpjVI{$;Z-x9fFEY|Q&~i1{`=!WRe;HY(`ZS%b@V)cG zv5Mh*KGxDLYNgog!SywQ=T7-uG?b);Md?$C<3~(r^RIF1!L9 z?VdSlBjACCAYU1a>M?YhK)McMM4%nJg3tmSc9IEB6r6=pU-lXxGOY2|P$PtSjZw`7 zn>%;VNk|fNLUZ3_sPpu(F~9EG_}sM3S?>D<#gf#6Z(X__uyEH(rOU2E&k~507?Fu# z$}xhyagv~G4c)$Tqjhe7NiAEXGZ1~Z7{4RjEJJDzEx_0n>*Suc{wNBp-L0|uWLNH* zQ$Czqm={sp)F_-F{7h77%rf9eA|G=4m|MF)%8Rm_U|LLWk#sTTo08CZk!MI+eb(F! z7?7DdRed}$Iov*n{7qi;-`=+h3Hk%1*>g_ezr*K$hEOpm)x0<^$NPB|tiIjsTSQmzKeP3!Uwl%PAWUzcZUo+ulSij{S=W zn(gL$sKT7_Nj%6)ULLreRT5WE4~?Jwq${CVzN&h)6IZ!9UXA5GCazX}stB(3M6OU? z{AJnEDTv42op*uSYM`}E!27q9 zQME(tp188DxkryQg7pjnJaAHq`R{@8q_NtfTyldSv3d&0!$*ftk${ZDU#RG0dt8`$ zlGqhHby+W1##4UV_z5{nb6QVEOj zc)8hy^TMbP1gA5WcphS_bC!BXxM_TTJA#K@aExC@*~5r2TyDWP1{Ybs$~KImJ|UM& zai78PvulLK_7WeMz7=PgQtU{a%O0LHH3&&~WO;A69xS8bxfKJD-Tv@FVk{>6`}-G4 z9dX4$5Aw*yWIkY|>9jC5cnVj32(DCVcdXRQ-FHQKo*5Kol~9%GlpvITk}o$_-1Y(k z;n1=hH#yJqkRcP-;zB8AqYd>xr24g~u#vqL`%{S31l!OmPXu6qVrc>piJ2K0*ig+y zyS+HIOXQZ~KrFNP#J%iv>ag-VV2k8*Gap@3~ZQz>gc{ykp~2l*Q!Xk?HuT{tY4 zW?#)880kBCh2<-kawxP(8z=O`TZ%w;=!TlQ%CoDz)Y~&;)V7`{U3Xldw%WEz5bs6$pl7IrH-w z!^_gwwt0za&kffy%K@VxZ>#pM3!vXkztAM}$F`tY^PR+ByzG6ptkzOjxcM`V zgy*>0(-}omMQF6joG_D}mh%f+qj6e_JO}cNi!NQ{T26H=*F?o}ykvscASMv1IRk8axzrRmOXGE~|qEM-I#N?Cm=~E*~;~m(Q}z9~*w% zO4LCTDQP6PQ!t8;QL|D78b0nGCtj9BHsONO>uc0X-lCoR(W^G4N0dEG*qofm4q@uY8*%1P|j$d+n=vA7{7JA-Hb_Xd}G@~{A)7i zwBc%^z?~prq*VLPXQeKf{gO7CclxsY6|<{Cl^8@-Ke;u!L?;GzTK*d9`EIc}>bHDKD>` z9C*9XIIS$kun7;Mue!32DT!8l!`lJg zE(5sZE73C-QDSL9c&+{F@dWI)^?mU#;_O{fIr+A<~Itd8g9 z*EgXMS-Ond))c&zHWS*;|Dr6wET})>MxmF_xo90w1FH>>OQ0vJtY(t3wTn!dPy!t? zudPM@-T|qBeemgQN3EmcU-yG-{w+0LUSa*y8@V8SVu=;gE{27}SPAOwzYfKY*iOK# zIO_Hz0s{~FQbddr4Jm{CZ{|z}nxQiRjAn6$_=_J7IGdk6Omlu_hOTkH042d-;g8=r zyNneH8qtm5$ZFK-4G)`RLnYBwU{$V*IcM4#1+Ws-$OHWpUC87|1m7zGU)9U@QJ&Gw zYD0}Vwu^VQE!X%y&P;Acc0k(o*@ZTYs$98EGVbkiGf{k4u7~?hZP!tEJHp-aq%xn0 z%z_Wk>%gi!`(W9gWSegvxY4|y*<&|ozyE}9g#1+-LgXI1*zTpX@$k^0+KR|+_hQr^ zI46iNbb^)e-8CzDsCnn4>CbVWPS=I}jbRdfZ{qIGSC9@O5o?7yA`&P9e}A|}J5BQt zJ`chnKt8IZd};(HfKeQs=xGB=tTuG9>-q=w>!_BkM~mz_FV~%|s8~P?VJ&?(*=TF$ z@!%=z?f9%(=MJ?0{vo$J>g8v5uvydTpv&s1V?L3sNl`%}ZD#P}h zH8Wk=<%|^_kV{)*H9uoO!WG6;$i(HLt(dMJCO+=OF}>eVeBK=rGn zyOOrQ!lM|=5@{~QW1ZmwR)%1~U`nQE;51uW5;oQ$58@jc=yw)rP#zc3wG*vV z=8)g#=#!q{w*5#aP?ty-A|@v+u$UfUP1>xxP;2U+CdZi2l8&^{YLKSPo%YDY^eb_A zrWDE>wrilEN{8YKiA`p_F@ZXMZ|!{ecRx;H=jN*L802M2|VSp;^4YivO= zC-9jg@1Q(d_DgTeUKj0qR4R*B@%nGgpZNT}@{?`3BPp5^xqrWTr5aB3t|Yz=da7%; zme?63Pt3^w$VGIOPa9S}aB-22NZo-e#4uwILK9@2gfeT*Wa+q`2hufBAcFQ%zsJIT zoa-dnpU*e#LbB<=LG}l!Y3S1_2g&q% ztA9#ype(aSys%z=Zk44p$zV+ZV;#S_ZWQ1?q13=db7$^i?4A$CFll-XAh6wze-cVi za-27(;p3b{_%KX9(Mlvz(m^cIcpgin?Yxz&l+!5$iCdJX7ypqe1#@qwvaaZvKad(! zEvXO$PxV4fv_^5%dR*ZqAgu5rFe$BnC&*?lb4!$a*VueP&HA`28mSxahg9So0}5=6 z%1|$W`l4M}ohMM>Wt<xYtsldZA{9zN8s%Oe8sNk^D$6-a2RX63 zbqIN<(0rXFW4GG-!@;62K*8C_fMuYH2_5S)Ioa2)E4@x_nG%;2O^nRWI*we6T3A9U z2eqa-5Vg+qhc7YbSOow_z19x}nZBzi#s@j!Wd9=oc4kJXM0yp&-mb$&?8`|4a#dEo z>Nrcs7&iqdZ4!q{iO576=?x2?{0}pJU>Td?@!%K*>%-eDd5dhcDuiXk%F&Zj>kt>@ zqa>vqO~m)tfmbVuuF!CMmOW6^PE)tawl#{mipSMPSky$Jk{xf7uUOlN*#~sik$ATttTod>e|f%74_62L^Mz)y`l#kx3QwB$jsjv5KQs!~WY2Bt;MR}1Q2BFG zokaSAQCV`Pz&SH%=`E>#lQ9d!!Q2$&x$b-VoqU@M`&u7HXef^>U>1))@$1>@PCY_q z_gzV~A(F=_mUHT3=eZV*;Z%q2J^NGFp;y%W7_jd|dv!_6)nC1ld>1n$8dTEyE`hZD zy%}1rJyRI{8o~QhJ(3%<^W*+`&358_@arb&6nl`b9x%yN*=~8iDb@sx5mP~YF@P_l zS>q4X>fnG`I`tl57F%rJx3peTnXatYODzd1?Cz>ShZj4-RCGzHhGO%8-@i+U*~HZ` z9U}OaNq;LCpis%j1b*H78VT1LFz4@QY6%UA%Np19v6>`j^N>O(VGYXi=Q4cS96nl@ z80nW$0bJZzBF+Aq{nY*po~H2?6?}b-oG97kZn;_=+%`quuAx9dNxK*f1dhgTVMimC zwa^in6!YjPI>mkxT&*WEn1%f$>1NZjWkXX3LH3KHMk1_U%K*ys1JKw$^X~#)D7tK4 zUj3@oEEe+%Ez!nfHtngOl-qahW0|?E^I1fSmxC?zy0qDT?u1B4@5L~0d9Z>>l`gTi zc-QXq2FcnZw@+c?r-8Iq9GG4kA7d*B>694)9NmIM_ORIxq`JBY>^gdPL81b z4nSyXFpKKp;uvfvVE&wPJXkcy_e*}?rZ-c3r1D94!QIr|yjQc3tatJ6X=5OK;=C(6Rw7{bq@Ze@K zqvqodWb(_KANw2=oq4Pg=wDkxq#DTX!R~|Sihl`p{&>n9?m`)wNYM_bb-(ZPxTp}R zZQ3Nn))Cq=vwjrYA5^kd5Q95TY1wajlLS97mbc0MmB!pibsF&To^xrjQGM8_UXq@K zwMI2!ysvhjY^wsrx&phkWUQf!blgv<5frRaSPxZa3OR@9BmM%G4&Bbu%XQ^C8~MrGy?WxOHDM z49;bQyv5x0DOk93>zt-3i$^P=1?!$r9qVbjfAizU{F?ocLHjLNaLv>2_*s0ojW2`Fco;%PFELvA;X)efbQHaSEvj~q3Wb4E zLFn(JfI;1K8T267CL-|&B$wW5bwlU~H{P|=T{h|n;j~H7aFKpqPn1oau_B(=Z-r7x zYOYL~i$>Y=v~+k20sGiVPLCcoGU(#mea#fIyH0MzKMH#N&|{h92o=S4Bd}=+vb! z?>%Wl5sGlBMwyp#dc|Mb$lUFv*O)l9#!3(s(3053aZM8rF{7dqk|of-<= zFXu@Etfhubzzyuf*8Z%XN>lea_rMl!_ltILM2!He)wfg6W+RNZRrtq0@T->NT(Q+c zXH36gk+it2==a&>`sgdu%>du1;Qz({;p@l{HVLnpF2{5Z8$s4Z=uIN|jspw`bFU}O%-RD5hmRilk7 z42{E@H9e5T(i$Yy`Tw~3s;D@-ZCTtQxH|+08Z5ZGYl6GGySux)I|K{v?lcf2xYM}1 z-p<}<@AIF_OAo$&>e0Q{oK>@CRr{wf`4I7jz-Am38h1mb#gNZn?0IzWMROPAU}w0M zzU5a7u><78w-@mNu1Dv;6OBB}&KoVRJ-lqSR#v!_JsM0_9j8(I%DSr?Xr_TgZfgcR zuScB+Ds2=$I&}<68dm-CY-IMUua*D7_}BgI3fH2=n$-UB@UQ5k4w;NpBnfG2F`ufa z6_Z(P+y0Jy$?>Fy;|634p6&5+&R1{Ax9(gUPK&`*5s$7ww@hGMF%c-Sc)gGKGgx1O zyNKlgB@@?IDitHNL_7pJlk#H1S4t*7_2k4 zPV;oS{i~bZtWppk&vpv-XY6ih5-Q~jrRYQOLVrl*O`Io2lNj$bg%4f+SeS8s6k^nG zJox(F7-_o>vCsD((Q9)Gmn{u5xROQiiGab_3Qk%5KDv!IBzMEU+V}Hi_c}Yeu3#nJ zpM~w9{Brx7u?eQNTZRw|(-Cka-lP(?a1Hx`MT@s)O^QE1pCHH4ZF1_WQ~o?sv_%0S7Rae7YNPZD5QqP@T!I*vpByC z9JNo@7;xq9#@=cKKi+6#%ZG*0x|?HLOvPd}8Rd`b)bDy4 z$J%LA5`1^wPB4LP!$J3uTZFmXg(hfo?Axujybv6LhignO=$uG?*Nk1aQ;79?mo5Eb zYc*e%8;v%{!I)3c7I5u4aUwydR7`d zD&{16{24>KSGnuljGeVC15ZxWNGZ`{n5bOiw(tjg#3?H?l*@EG#sV&rSiU4r8+wxi zB=u-V|1ze;%r5|gs;jsQF!`tC-I+4G`MP9Oa<=(`qXGR6pg?;~P(E`QAw?ZM%@%nx z!r?`s!K*ViDpnwSeNO3k3gzux9G@*8ZmeP(8>Jib5CbY-NemyS0%OxNbZYNgO>;Gu zC{)Y)S%DwLAL|u~mZdha-KcTP2zf0O92IUc@%KxuCKBJZVAAa#qGb)H*w5j5+T>HNr;OiI#sZpZu;#YQlep{po?)y$KvD*v*KYoNM zirsmYsvpytg<2UJ22A36@+C-Fc#FZK)U6K%&MEptcivUnQ_ z=dG&VKO^||=v?!V;)lUB@p(DW0vd#*Da#-I$Oo0vJg0_SSQ3BL*6uv>-LKl2ylKC8J!6#_C7TCLBi2`&Smee&j-RVs0WnU72v~K*Rs+Nql%+*K-<7 z;D2NEe*WEZb=XgBF>m&j1%1{Ui9ncnYH_>0=(G!9J^ebG$LxY1{h)uQiF+Y@XtaYQ zpMelX97ghC9?fId6G#8$@Bu+`6=sP>V`3}$&ig??!O$7={kr&LaLmmlpD#w2Hx@^H zP)az{eO^mW`RS02xp-V%#j%BIweE9snzU;CR%1OA%@PP88KF1yQK5@JCE|s zh#bq2R)@PqC0kPSs+rF7u zx-u6yoikBCLOgMM^gD0SjULSaIdd`n4!yO2he;=X#|mIVuPn z4~})cGix=t(XUJt?Zb==wDATyXF@N{a&}V?6*Un^XxnA3UmBEOxT!gs{N|X8+w;j+_SBRp+S06wvLGlT$u(|!qbIfrzxjD*<_ zaF;G>dpkm~tkEPEM-#^J!r@J^T1G|?xQxM?)&Fs8vq4__Wt`oSrwxE(DF0-2%q**& zF4ih9drnz$Vm?C61hGcmJGPImvinQt5BZ#Ul?K&luN+kVD8Cp=wmKYZ{hy+0EgtGr ziOjeZD!N`|nNqV;{LJe`7VLseQq*_Psc9SQt$oLblKnOwVI&&cdQuOHYDEMLdqO4yd0 zl96OtIL9D3KDu9UiOz86%mzY1wxoVcclox4bK!7_S&HkK`w2=a#TI#-M`*uF=VD6Z zvB@+baIznau=(f6?9CDf~TNiHECif16o_Ep(Ec~LOrec zI;JhI)%e*f8n=3d8}=)PQ?S7vnRil+0_- zPLFAJARW1FprmZYpmAq5yA=#*aRZTa@9UxS);Qgdnd z>3VT+orzHIz&e_7$sfkekm%WId)*Hk2?v$TCn1ZN*XVYo>b+m1w09|i-0j?UhvoO< zcg~P&eQK_B(}v+ex(<$>=Y?AJF3%<<>dxB|CU)DgYE6;vrt8#}dLX%JUIRh_c(1T0rmy3aRb=d0$OR}um z-m^(x2VvzmIDYcQ^w$ys&#nd$sW3P9XIbB{ggx^P6iQo?!lwK+p=h9^)W{wol z8AmK$r)#H>MI`Dxhv}~#NN$%HkXp7lCheHc?t6DCotxH|U^0?VK&8rLRpIu?qo0S! zz3zzgIRq9G=sb7Z`+rrqjDEh#aMVTDAa7duU`rc4Yn8*d!t!$i869Z}+^O-%+j#(* z9j$LFUS+Ay*wn`N??Jg^76+Zo7I*v(n9@&+x* z|DHE2h-ZQJHxknj@&6BS35N833-)JMwW!MbkwYh*HyWq6=3Ax&dG7^p@TcF!`v<+& zaG_Wni_7uX5n?wsP)W&3+OLTCy=1+J7f1QqJYkO<%!jwO?-=WHEY1%WkRgY;&{sv! zl1lzw>|civHg}hy-OB|f6h!_dg?JCG=^1XM%aZuwwF7TB^$DQYk#GW99i!w?E^fSf zHE8cbp4U>iD)IAX@H&OhJ8;j(2JiBtGo{p z3D-?69-;q*b^}OAdHb!fbpqIZ`OVj1$%kI^SMX5OV&bit;@&{0WKsdkr8j6BuImTt zP?g1}So=k;3;nqD?X0xwt@bLM_+lN`+|}Jvrd-2dQair=4r8e&;x^7H#BCi^lSnCS z)Cs0?Esg`7UE%43j<#Y|SKOBJw!m|=MdgN_FZ>@NEnlr9B%_FRXQ=Hlco(GRI4m(m zsGOhK2!ceF#sPNiISW;bU#%8nf338j%OG`WthJggDN!@AvuYwy115@$F zbyF+kpYh<-c{S}X8W;sS{Lm(p@Wot&9iANoz#eOG>x$Q z_~_TTtHN9*QR3!JZCB!-%uZmYD8h?D8Y-kGf~*P_V$3z<12RUUwJEzo)cWyq|T=$I(qA#dx-dS4^Geei(NgB#aH_4X;S`pU4@f`^fsZYEi#8PoC^O zi5lnaypHXcOeS96c769z9t5)}K3(fx}-SdU@S4Hy4!CJbw zD;!n-e}n}Mv3R*R+Jz78Hq{eG{t!bak7s}tCqpTg9c0F9PhA? z7YbS`5F+CW#7RoX0G`|#437|rstp_B+7ibO5Y$0&aW?FyVuX@^o{Rqr) zy#fiO{DyZ%@_OM7?=yMAK<+hJkoTKO9so#&a=iv9Y^J~{#%H%z(mg;NcVdsni! zv){*skgw+g(^w?7*tt?Gvc5k(Vl@7clNF`~UeZ??ZYUubmY*;uk8=XuxqJ`)to+`e zqlmR8aR4u19p^A0BMurhZC}vZH#y7I`|)sB&YDxHMjEMXM2wIZ!kgszAKvRRnpUg@X%tj9IvYs*e2By_;R2$I$Ud*b)~Ur?m|`b9TD3>M*Fw} z`^MJ*e8#gMa%XX4;S~*%DP%=IpJSqbeYQ|XKO+Ctf@5@tJs{|!PFD9F4Yk%}-Y7)o zAo;u;S%``{KUSL}jWYMv4mu#it2h#S`SYBVvwF3|)SaC7JY|e10lv$x3lMqcg1Q(z z#|i-abFGFq>1B|PmdVXp8)FUHB4fFc9-&`OS%TI}KQR|=H;N3H zrCBia69#HKz+ic`ICp5+V!<{_)JU3BX?jCMsIcyt^1&l_7a2$&h|lMww{IkI4?|mS zR?wm6S5Pwu*Bcd%TAfAR(na)~xg~@j8(a&6FT^D#duWR4kN8aaJV(qY5!`{2w`M2t zGI{=T>hio-qD3=#)rY^e3yn7oP$~ufS%_Al|Ei{RR8>;O{?qdP`&GaOiXPk?DHdgo z{X;iWTU15Y9vqtw2KFqSyG>;z0-Oz@s#Ug%?HB%T;8g2k|v{6E$h3 zdAv*=B=>mZ0XAWYeQ~>=7gp8VjoBTL&YCB(b$CGwt75WvnSI27p!NG;_7nYGnl;ap zAl}=m5PH4t>@*S=8e@^yozOB|B0BSC*5RUk?^`1~P?#8Rt~QL`%L*j#uPukjLiy~+ z`79R%i9v->rOVGKLQ`})KKtNe^?|#3d`Ue#cYxOI=dwRW0FB8twD-Hs)axP=`ut5h z0#=tIcEQ9i-}0jSSqN#V7I1yH&>tXRV8f20YsjjFa_>jylvbvK)$-hNsdHNqEtF?K zKEUgq-gr7)!W=to;8Lf`k_m}s^t!Kb4{w&;N?Lz6SExdbqz)G)Z{Xc5f9}{0eFk@* zyK;|>!}PbrU~wG}ub}L=0y)8Idmfbx>lChGo_Abyhr+2MQLI}b7b??@4XvgQZW=4w zd!0MbhPfcpQv77-sFR+Xd$d8`YPLI47vR(S*Y?w zmy&R-3F(YJEke4%Y`fx8b>AG7%ff2K=rn{GaL@?i+g(_2cJI06b{*xj!*8hfE0g_P z8K0&yH@m0*FzYxKj+Z#-IOQ};lRK!@XbzdA=?tqV@R^JXCFGT5J4R~oQV^c<=5wh4 zEUkcmGsGC$mVX{2EO7Ovf9y;D`v}<(gImq8NDF8m$bfThyVB*@i+#uEVy?e1?xi&{ zh34(l2k+8N!;pVO49uMORYv1%m6y!)2)_Fg?P5q+8+rm7|EV`o?RtGUVojueVU&+y zv%-a79*cx`^H%;G9O`Vz&I{24S{K1s$9KvNtLyg~C%J3EX&XyY z8cki5&SM8tmg9=qaf-z8j@j)wyTH~@gnL$PxB(s%eV1#vJB+ffE0j2IuY(6(GK_1| z(#JK2KUbD{^=7@V0%=7{o)g@0PqUwW+vhXBZ+rccJ8F zDc6oby~BB(FCXY!yd%PBZtEX=J}kang2E-&8%}oqZ1`g*rDOA_aGcS44X|DX5WnKd!KC z*%y{ziPt||zK*4$7G<;s#&k0&jJU5_DUiS&$}-7<@a2W~QxA6h{V;nvMliV4Jjdso z6Ecfh*gI6}D2GBuIqIT>5w=9)AbDxrxW>(&jmu8Ms-?litT4i+auvVl>ypMp%!UO; zpejUEBj{$hw-=gz(-pC^WopEXMHWP zUi^G%h#8~z*C$Mty*6d~)y{% zd=cGS5Vie0-w*E1l+P4Ys<#D&l4EPSbI*5sf`XIt0eS6B>#@OI~?OBLtTm1QC*fb-0DzgEhAUBMex^c?!& znEtNz8dwgzY3CpulA<2Cbe3cZS5faK%myR&!TiCf)kmk-i~(3B693kZGu@p!LNbAS zv2fK1e!WI5&1zY&Rx##cCcYImEJ({9a5B!WP1!|MBi{Fn9Ov{LwmBXEi-P*CnD9t2 zQ}M=xEmoFLc!vmKm8(iv&)SR-_CzZf^lkU!@%HpzM(<wd5Saz5kN^kh9yvE04LZsLcd#^%KYXS6DD4TlMJ#xRn6RTF@)Tg zP^m{CateFySX0mXPO9r)BnJLd)fZPx&(Ax$cful6+1qY#3Q{DQYW{7oOJ?oH-D67+z?lNKQ!Zr&3b)Q!Ys}GPZ*NtLV|Xp&>51pypg={65U%tv>>R+564{hn{AO!BbadU zX6iZr87`;C8r%1loHr#dwot3;7O31<_AuJ%O=ONW{b9cp6~?(Z-fKx1SXhn}N0~&0 zy#g1KN;m6^M{8R1CYAp}olENAzrqOk@2=nH|8MVhh6Qdl-!M##=C53imu5maOjF`z zOqfjmRR$|d!Qnx;&=!DOXWZ$zmmr~jdq|G4Yr68w;-C|lQVEtIFO{48^EYoBqzx;# z^484Wa~{La9LZ}SCvk6;!pI#A-YPD}B7u9iw(*d=uQ*|vc#CJz@aQPaae+)x%I`Ri zOSiJzNxIljlQ@vC#|P{L30-)SL8NoIX3=zgEpK`nA$$O=0fy-XoESph#~#JnNAEx} z@7RrAE34m&8}(N+lr?uE?P~>rLdoM>ai`1}3(>daz5uGXVv)?auWp;`S0d@(tY~Az zM~OR-o&E&afB4vMw0*?xB5%XWq3;s^5{iwZ=E!rfHWUj^>?w4gZ?(g!sPg;_oil?(p_cs%%IT_{C7zR6cLvB zFiv!+wQ-HDS(B>7`o~Q@B%3|cw$^9pz>5WjyX>6|dQ`p4>R9bXx_`y6q$c-Y>qEVE zP{nlPi1x;ne+n33$b56cBB_nmSiN3}wmub} zF%+@!AJI-*&5dq7-Y~JISt+(n8ofEhj$|lTFXs;!2F`PgWF#edM7pV=$CzG4jn+-F z)7mEC+?iA~m)v4lq}_knL5VSi(~aQ_Qf0m!C)*xfz3yE8o$+lx|3G*EmIGE`!hB-gxkY5^3tVJ$?{`L)$YO5T`S@XjmzVqgh}CpSO5uR{-_Y6vPHT! zO)t$mOY$_Xt7m7m3omzDz@nO%v%#)o8?6o-yzKZHBye;=DF`xyZ^G%Uq{ih}NM7xL zkM+ABt|;Frg+FtZ9qRxZtu7kFnwFkxx)y%|-!2|>D%{(=eb0S1d6vh2ZYWxd@XjUaEH-2q5z8&x-Ma5+I=~)r@dYb# zF=Qb2dvySrO+xYU@$JA*KZW8jXa<9DeS>PWKaqkWQx5lNCaQ997=-$I*29`-#qXj4R?$JA?{E_UBm&_iUo5TyvyuOeb#}tV+mcdLrIz&_;tEK z`6LO|{%MYK-V#&Af-Ppd<8v^Qg4%uY>jDDsm7o_Ihd8bgz#Xo%rFg*W2gwH)B;=gB zs#K+>NdH*A#P!L5+<;xr_X%t5wrVJy%>n^5coVpK&i{JiWinssGG7EXl=x|hqD3g9 zecS|>2frbQaB5$fI25#m7fwTra+Yz1Yt3^9ri#X7g{0Hv$qoWh{8vcE%YVh{f1{9; z#dFgDz{cg6D4S-AqJLed37^Ga+?PG2wxdQ||j%JJzCQs@1{?zw9YJgxKVzoQ-V4UyGS6$ihLpphp zg)dUA@=v`(QqY2%V*{YX(d1AfWZqCDlMRtTpVKj)zNRz@`U1hDXYBB@Y?)6Fb&(B# zx~bUcF2V=t5*9Oh(f&BK!z-et*`v?tevf_WzjFrmAifr1m^=Abc;t66iIz>oSwlSK zlU{fc7NE^@s_D}|&|*H$iidkP(UKhPIa+W^dpd`qi*ozuIe8bt?smdt{6`BQuz5z< z(U$taJtQ!D7J4k+XJ^hYI0%gfr(-5K_+7wM(Nb?v86lKwe*1a?kDF8ZkF(@|%t7j!B0yoN8tJYa9dyx;l9Z(cx8spG!1p$T&FyC9@?TgESPidN0ypDj# zkY_Ta2eVBA4TUFcQA4qBe~$_1WPB}vPY2^H$l9c}`|s(&4Ok@2hhYc>Ga0Rg{S0MJ zPK?NmT+i6`IM;43$6Tgc6W%HkP^U>G+NO>k005*7+Aj;tgke2wMuD~=KAGjcx!&I2 z`s)T1aDuZ`;zSCn8xad;1*-p%n_3z>oTz4~od=YCa-raCdoqoXVU`+e{FtvrNj zHxN-_VBgP~t<0#u=c639Wy3XY@(8%k1#1v~e}Cj|;zTljRskkqWEF_Yl~-^8;VzG2 zzZNoI$q}3Y_B9kB#ej zo!md9on0!XHCU}o0Z*3kxN?>{$Vh>T~frvM=Z~|4F!*!$sX7&UW?n7OzU~9bgf9$pb&kUO~;z-EBH-Y z`MiQ7U)RbCbj>wmXFXpxqr944_YZY?Vi z2@u4pW&HgfuYCTb<^^(Y#*EsD@P#MXGj?VN(Zu#$XgM+p1YauEE^NKzh8tmmiM`4g zYV4DftnIt=2U3dj0Y_n3^be=%VqL*<;@v=&+#_OC8cYr}%j2 z`!sd6C`U6XwzEER^QH1y2akGe23Hio>$zd3G9K$Ss-v!qTQZ)8iOS7?Y&$*_Rdtz! z+V)3egRXxfEy0Sem#&yNp@4Z3Ckpv6x zwCfg+bJ&CEz)RCrI!j~IzpDr6Sj@aa$%0wGe``R;|DWmssw?{a7>c_XA!L-Y}Lj?>)S@8!UMbS35U=zzqZHTzB$V zfqN);0!_SXGGL2TxOA>c9IZW`EpJ#)aNQ(nfpvxEXywm72`Shnl zh^T2EtTbJI=zaOE=abw%WC4wU=6-rn1NiJu6~uQGX-tN7I|cKL0hWs3U8qH^C~?~x zJKT=CC=Lr^({$459Qck2wMKQCB3d4nw3bxg-T4PfLXOydqiM>Ewy=~gDdvw)KnAxT z%&}aHVtlxQ8#PkabA@>bm0X)*sPjWK6PGq@V4H56c6A2{VGg4OVUcL*xj2}nbSdD! zQXI?GD$T7f#GBAb;mDm`nDe<;LtGoK_p}OGfPat*j&+^n)rkXr5w5Y;Vt)2lJv2-BO-d z;Q>6#?}a|K`_aq#C_AF>)mSuzt*0<8pLj9;5rr_cV$TgL0TD1YaK$xZ;U7+m&-an2 z-mi~ch+FbioYC};oCI$L1xNft0M6nT^mkb+I)e|XBxbW=)ya(9fnToq>(HgG-k&LH ze!Pg1%2xW&d^M&yIhq~dOSty()#b;vCkmZJ+V;SN(V;Xr7MqM?=e&n z225OK2PjrZP}v`)rirrPkkr;rta(?YIcCd$Z+(+;LT^0^_9y4$j)v;BpTE5%$Tec7 zhS2YQ>A0Olig)vGP!p}6L1`JqEeTXC<=qQo(|EeL8=g3Ww#cb5nMfTY9D6Mfy5RC` z*K?i~V*%v7*A_Qz+fg+`Vr+i${y2tZH69pz5Wa7Ht@~S<|J_mvPN04TuQSOUN3i@y z?TC;OjB&;cHFwu(IxbM18H4k;tX>H~XJ{Pw!tUz8&+RFtgj={CwGqgc%q+XuzR4E? z+Ni;SCA0_Q1(4**P`jctJI{el#AoHIiKFh%Y{IV9@3}oLOid(A07Mn?g6{8aGt8!v z;u9-KOSZpQc+$6esKR(D(*K?+{Nx05-5sY>=mU2OKqd$hvq$k zgQB}3qFxm=l2i_}RM9WS6#0Zd&Go_wVu#7dQ9aMW5-E|-zJ%&czwEtS>PQ@X+PQCc zQHZDm`Hpq}G0XFzyv2`+MlzA0qmNm#l*O#F#s@Og%qnWt6J_`jmKf-LPd0>82?cX8 z4Aqc3Y2jlkX|S@oOI&SrD4LAD(`O)s8r9Vm+f19N4DYY!dB?j_iyG?=qloRW^82UUB@Rgt@r zj^Bd3x%!+C!!2F*5N}bU2cf3{Z95BL`GKy%EE0OmxL|2xy3t&$)JEsGW9cioBmDai zrEdGPeK?Q=y_$%=5Sh-UG&-MkRL4??}=uEZXQG2rR z`wvpU4S*N!h3bW$oB1L4ZZ(_yYOs9Bhb=IIl-+o5MT77A zD_VloU$Cg)GQaim0jb_84Db_S`8>159Odn;Emj=cMv*S!tP-Pef*h0=aqA=PMTylnQz+9!MN+1~^4r6sDeMe0o1>T$yJmfu^usW{9!28q(OEP%9KT$%w=66~@vUA!9fC0+Ry(m(e!tqd@{}wwb z0W2`CcS_06wOizYaLSbzAMpVg=sax08v= zBqnN^{a*eTszx(GP=UqP-v3(p4^I8tX=tM>7NxVoK#+o0IK;z<9@LP-E@66t{w_gQ z=HWQ2ZNOZ*;cxisD+nGLJ>j`QLbwB0*M~&a1zk?u&#*+i&wr{OTRxl!JiS)q0cT

*R;{q|r(5Ft|tf%$VMva!@C~&AKP-%dMhNYS+4HW;i z3;HkvpdSzYuo}MpSekZ9?e#`Vn96F%mjte=2tG zb08joM#T1aqCR?}#lPlmHgKJCyneE{FZPMp-}|Q0?DK0~6>3j&HQ1$80@d$i&fVtT zt+BE08ZST~87$8(Ho!w5%oDwUshnJIyy(yi_w-04OG|h!rH=Vt>4^QR(35Bj7Ow;%+meI|NHLgAuuxHulXU$Z)_(Av)qc-c zrQXhrhsv#~AUS9f`9#bgCxoUINuCJ&4&U38GIGQaB6Ru|?=ca=u%F8!i{}Wp&M)X~}hD&SX=;Gx!4U9N6)FQ;2sMbrGaYYw09uv00@e zsmXR6|8fnE!WEy_%`+C!lM;7e^A`pD`*PEN#rO(t|JqW&F!NsyWazg@OE9eH0@0(AkR)`U_IoB zjYP?C8#K|{bye9_m0pc-eH~L_xDz~!bVitT4Mgo>5q|LHc0rB0xJ@0^{ugXVxWG(z z+#j?-^x)TGFxfIdppiS^tK(KdGQR!iJ+t6Hc5?v$n_X4h+G-0%bKI`8JoIVi4no$pBiM@idpKrj^M{c zAz6ktK_b93_oI?DQKV9dU7n3A6nMl5D~s@bcKS~fmHYd5nJvbP#eVn`qt~qU{Gfco zRpY^LC2*tNWMfi%TzBoxz){0OVi0t|C4th0QlftoFod(1X40}1vGXITY(h;cofg!? zI=s@Zt^sf1uZN%DuobD@jOZ&yRw5jTf{DMu3rwn~4?8GAB!_30LNqn|m$ z3FBHT3EK*ZD9Ly-W?-8+EfBZs7niNoP8;{PD{rESTlcDJF8M}cZ#9#XULU5OSC*eW z@1F3>ll4!apo>8)HEl9-8o+`ZF(;)@bSs>$9$6hF=`FMly$(HQTr(4Cc_d$O^Gn_t9Z15k~vwO~XhZtyg1*Yx?-o65^hFh*g2C()~EBuJ^C zMvSQNHiNgS*0<>nN;?EUBr<6VO0i$}_pTPyx<%q6)qM%8#vh&$BNn}TcXJ0ur{JSr zR?Dq9cjcq!e)r2}4ktA&k@YDXpD`hr+7HQPGg!nT^N`^ySC>!pYGbEdWmiR)8@<;S zn<*%ANa8ojmy3aHx=DN^%`v@?q+9(i2yi=K^(5qxmiEUkkGcefuawrV(&_}@GP&m? zL<-&h#4SX=6^M{%)UtPq_9y0X%>|hE5DN(HG9H91M);-*$Gy?Y#31Bts_>=o6!Hld zj+Pzsx_dHe#C~GG8KSclVKYVyOg548PF|iIo}ltg4S2ch?Rl=)YDy&YgeJvWcG^1N zcM$|v*Abe`qz?#|$7u0*}jG^TUlu*7%S zB+cOC?IBGinP^G-kze`3WolsYzfhrfkU}3~YtYK6s{X$iTOUd@)*rulSQtzdQh!l$ z*d|h5yH#$NKk4xqPHMM z-3_?cy%CwK({_GU%g>a)1eOJ1!rjOQU^7LGv3QBB)K*K7mJ47{-UQdVOu7MFdCSA) zD2rR%w_vK^@xsIdk;5!FSOnjq(f1soTO;Bq9Z(mK=V_Ga_s~?m!a60I4bO$n9`_ca zX1F4@WnbcNAZI2}>mfIyn23mW*z!b+_K2Bf%(Q;{g!4Fs$>MdB( zJuSqZ-);hKWAQ=>1#_wm%XFdn-b_-_YqX##+>KmPU4&Wgk&%FNP2=IJUM+gCI&5K* zz@BM|yAjOngKpn^RoIn6gzG!}$ZUfYk_aTfNi;GwnqE50+0{)z0!dr;bXlh7K2`Wu zM{KkaW}GOdld_%3P^1P+qZb4+FSK+pVpTq zPlm4>Y`t4%R&%$TGyZggq7LgPzgM|z|CzLUVw~vSbkFW-Q)Fv0{x5u#S|rGC2QKaA2GnB% z>kS5AoE0*Hp%LXleukbBS1ZD^NgnT&cL<$?zrI;#7K#uq@v;2*{M9@*hz& zpeS*xSmESdN;sp?V&?=v3Mv$Qe{aH9+vrKjxK1dSR-}s|uA)ICLJ>Z&?_kA~2Z3aq z7S7WJx-|tghbl>;b^yA=<8X&d@XxOg0y^Pe)&;fj;EuHtCd9%AD&cHGw22`hu`-zA zqbr-hKJmBWTlsaM=%`Q`<@uD7>WxbIEK_05NS7pDl8IcalxhT3cw5{s zV}oTdO{B?LYgzO_K%SKl=d-0Y(9=Ug>rXd{0ub@l+b;eF6oFC&IA14?k>{2>vs|=J z7S+4O`Cq4sCt>I;I2D_DGLEi>y-!=vaP6QDmC_UrBXUIm`r-N7!-8J$GI{R!Ej7A9 zk-G)T$PSZe5{5q>oSpZ0om-j=OvB>N$x&6G0>u55wNMP25IABf^BaMKG^E%GGcn|Q zh`!vpRPdeNCCZ^peN7R0DN$f~Q08iLGvwJc|g)|Q9O?9pKIJ^1ZA9q_Xx?k!nep7h> zh(Q^&I}tzc_8(Ut&$pd=pRYe~Syq>MS~4`$m;V>caVUVm90y>=@n0zJKOOa-DX4kU zZ`j2CZ0Qva$)OF~ongUL#6`2wPI*dDg=n$EY`G(Qy;w#kp=rAPD@|4od)pHJPEZFo zTu=tkxp}10aD#Ng6ZI1~}b=h#Vtl%3KCl6cODYKun`+Jnf$^~Io{u`I_;x_ge`{rRx_ zu3H0Yx}ip~*C2R8Sc^c3)hbV9;DbtZc7{IA8bMkh4qJuA`#Nf*UcUn_o5c_La^}_> zU%)I{Gp$%~w5DvFjGs$pWg??%8NSC)^~N9|{xoo6erv*0vHhcEWE?WSWzp4SIbGl) zW4#P8WZ%Jqf*W`iN??l$p6(%=!;J;ZaU%xVoKgUwhWbnumY>Zv+TsxLI&~ARN|?Y> zq+K{w8K0P&5)-rchZ zT-MDcdUaKHp2Fwt`R?(q){nsn^`^`Dk3rZr$bo(c6xD08HsyJvbVxz%L!3->(r?4B zG8y!-q|Wl+riO|b)YMSxW@*L5{Ll38FaPTZH6PB74Y8F~GLTiGYBe4u?k|z`^>c3uRhfCD;^{y z@%WjF(kBS0@~AK!hH5D#t}+t7Pq5Ec6=?JDqS^EDBXl0KMho9sM}^&A5oEkLXt2VF>nMWIDu{4 z39G}Qsk%vT4#jc;{ML-L$t`IIs}6IZH3{+7H6)r;{p3*PQsq|~vVzZPx4hHPRe4p1 zT$0+wjSEy>vQYEB(}h->2iz|OLc6WK%t<3$vG%^p$`zwaikdI#-APh@Y*%`V5k^_Q zNCSn}U45QcxNY{G^AAuDSDXN#cHBfNLsER+ngED$$p*QO=L7S6C4UcoZz;t4Z<&#k z1YI3e)|hmO|L9Pndt;&I%@>g%^0Q>RV3KAey3qBNfyVGy&zG6s$)mNMXQA`WfipDP zwG?WjeN3(8^Do;@#NDK@lsSTlBbi~IS3U1bweg}ViZyB52P;B$DER3?tq?teLG@96 z(*BMX2$c)mg!4-DSYKxZ!j&tKJ`o=`De@v&Y$2ccm@`p>!kBi#DN1(-{JOz(a-0E$ z22BvHSj=D&LP(ncib|*R9^4^s`RKToHAf!rTK{H8obeo@QD#CN-f&Vp%z+XT6|gm* zTqtWReChAEMfIvJSwdiYNfm*_K$GVoCSS5p?bL+O70|%Y$NgP&F$g#}GqJ0!xsDiw z2DLz{fQ<=$6ab>(z3}TS%6}NKBX6(xHR-gO&b`sTTkuQ>y%<4dMhl*XN@`<)`Lx!< zGLD2p(I?o&wodsX+Lg}LS7g6V8kU1JsUT!(Q$|}d1huZ$QVp^A{lkK9z0@Ha? z408$A;?puKIAbf1k^Opo*x@v%-Xfb{k4=dyM)o9mwRs`KNZiuH>zf&gsu zGv3}7QL~T8=2jU^UA8k1P`ylzf>#HX(nI>BUFGD@LUUp}8mz0;>N0HeKLx-K0iJGv zM%(=%i7B2>7TwMNnSFwQa_>)c5Jpy$TK4#FtNQm6@QUfJQ~V0!1lHXq9qf-23DoYxyfVO1(!^m_wUB> zMR?qxhd%X`17lN1R5)@EGQ@*ALVj610(7R5_8e z`&`3OHD<%unX3Jr(^?4X$DV_{KZz-&ZF;D#{Ixwgf`7OBVVg)hzF7aC7}U1xBKA-b zrPvL(2uLPyM>H=%{O*iEGC+YlwTF|l+nht75f4Uf87wJu?`W|#0}xIWPdVH4!xr`}?l^9ryB*;RsE4gn*3V@dmv=m$c5id@k? z5eyRl%a-u|WlMNlelAS?1KjQggCUz3vaOv!=p!vD#H0u@ghG-8LAr2C1%6Q})z{C5 z&HcpNXv>i6evS4oG6u`fPC>x24gHO2i<1!o?b6bJpe|p~>!rK=hkxz+Z)M&aSti5e zSq{aZT_BqA>L1hpXaNSoE?USUqso_#-q6VN9=5pz)oUY^xMC|0>496Ee4KW(vz)tU zjdcKiLDaiGC)jN-c*`L0mDN?W&+srXFN35~MkgYlc*FN6)C`AjeH?n%Ji;k7bB_|@ zJ)LK5WkslfWW`}=z*GJU0sfz$`#{FxbP_+ZZ5?#Ah2B}S4co4@{>^=b&Gmcts1R{; z<6vytL$|LX_Sc}WH(E0Gm92G?-({bA&LR_ng@GA#udx|zkj`p9x*2diD2xDVut3Pk z^-6U$s=xzq6!yNl2ff&;?+3J54Lr(*oHAJK+{B_$Oj^~nz$IwuhPF(JYP zeoBT2M25YNieLb}r%KNxngJKong#jh z*l&m6jPv?+#(EreHV~?K=ulvE#nt?y=6}TpH3AY8Mlb((rVo`F>W>fk;0ZS~DAbi2 z$)=lIKuSkm`IH;RkmY5ZHFLZGe)UVM&5`T434faZgwWXy;4gC(o$Jqbx*wUZdDzPM z3{y#yN>$MF=}-GqpWDwj=x;yc(1wywMQtSGMHs>r&uJiRu^@fkXxz_`c*C*@dYxMI zH{Zx#pCp+2d|8QFH%Kj0_>*PCZtw02{vTg&6;NfjeGdboAR!Jgmzk4; zQ4~YM7J^HW-ZpIDm_;1`iV=}VkDiE(J}zYp(Cf;?hc&O%zvbviR*XGd?;O_lqwd4- zx0vfk)2=Eq-7-kz9%U3n1%mtASUz0lG!BzG%LL-3Upm#(q*hoJvZ~d`RZ<#cIjzbe zNoAcTJ|hlMog-A8zbByU=BiHDVq;yU>2M zS|`4Sz-}OoYKu$_cQQppv9)EpoSKlz1_$sn5W|>8o&RW*5pCTU6Tn_lT&2fv5Uprg z;zhH!GEBWo@?+kQoSDmRJi%gvH2adDAF{`w|IIyZgiSu1+C|MF$q-ytHqByv@t4G5FCmnhW{^yT=5GgR}b^$K)G; zo43QfwTMJ0FV@1+J5zWux&=H1XU^rAs@k#;U!6?%AxCdBRc=3`GyC9^eu&?Gq%rIM z5O?Nh;%(u$2yEQ4)x-lyk;s;Fu*6caV48i<9oUwKl;l zK~_=^bRH`3)0K#owPdTf%Yu<8G3w9dP>4F@4jp!Qlt6sfk^5Iff)TiX!S9wwKs{K!w$paiT6&WyDZ zQOv1)iTb^nsYqv}lVlIT%1bqbu$3CZ2(dwIIXq_Ft<9|zzZN9=m6W=ZCd%&$sfr6&N0$D>gMgq2ZeTpPc=~%DExexXL)dsd52yy-FXw> zO1Q*^O8v2%95_d!l^f9nnapvrtK41ujkR2>k_V^P&7@*Aq2-d0}@G9TkvlN#- z|L4e@L%4i~-D2m_k=;_qd`U@HNh%*B?Pe_TIZu;TQcC9KXFrVJkhQ)ybWxutobTUP zEROOOfps&N7rHYyC<)$k%z@KbrEMc-$2|r)Ql%iU&wFC~vN0!~RGZFe4Ad*pb2(i} z_5%@Ar!qsOVP*jVjh81g`>oh)-3SN3cdJww6P(OBE-d}bo1ocz`zr$bP(D12dSyV( zlO_Idl|H0#t<@%ns?ogmtEk)lYjv zM(K(3BC>i9Y(Tp(J;@N$m14Nr%euPp5_Ef??@X!H=FSHs8uw8A<0Q_DIw8 zBqq4>+3+G&j$!{z6nGcwd;Mw?0H|gwk2F73#dEk`B`%M_Xz_%UU*mHKs1jSU25i0+ zm%C+8L7u!a=}qW-Wa78tlt+pYP@}MNkf1{~C?3{e%A=IU4i+!C5k$VxRU9|cJ#7`N zc_s2}x0u?iz7i5RJ4kNpJTJx8fbMeZJ^nYFQ^4p%*3uabraX~`YyWcGEOhw(&h%KW z)#p9_>e*JExjF-~N*_HbUYHrB%~4_eTRsY&3=O@@l%ykUTWB zbGyqrP@zVOgkd}KhM8!(eYQBWDr_&-dZwnf6t5(_!>{o4ei5FOkJ&woAtsFM=Iq76n!-Szyq7^1h1jwQ2P{?(`&E#{Vp1| zCRIx;cOtmcvjwUtxa3LOeZgYY4b$KMLOW`{UU$6;f5|9G{w?F0F{O>sOck?K7GYS| z=+PocuI#eL=qkBVU7){2=yL$0_!#m_zG6Me&N4A5bH*gU2McqeY`!Guq zJ@OR}4dx!EQCnfOuNPzhM*k0d)Mwy-dexn;CA!&{lazBenQW!N7Teb9_xgEnei~7sC zVoDyP?8o#aaLo0?_+UFerRS?g8z1ATb4qd+B&@Dt^-#qljXLCEx^^zJT@VSRYzsj5ukOB@5 zsto?(zt_;qH*{lTg(zAH$^tMy7oJY>K-AdUT)OTd7q@0PqsIts?>P<*PDXXL@)|}8 zmr1l=z_+NV<8P;J76DgZOQS-lvr41vesIuOD!ef@X0G#|8+Xm&{M7cZ-eGe@p1P_2kc(g}Oc{oue>s{k_|xte zU(DTjW533EbNh+|Qty39FTL<^{;gz<1RfaOduCwSFj9ej8FGCH<|r3@^1N0{~<4Q0Wh?|c?vljfBvV7rM_lYs6{MZ z{tIgXOw=h0T@f=AMHqE2b1a`gGN@Mt$C5en&&2r@f(uJVZx=P8VP>#el_c0EH8r(O zcNS#S5XN-3`(2cFIM=(OIFg2~Yb<775Wt!CINToL{vh&YI*>>2$I?$??D#&GuN*Sz z2#~hV&95OYg~3w%Y=3rm^^|9PkBwASwTkSDe6azW$|J*!^@p?6Rq|}j_Iv5+G0%wj z;BV!ob7EkmwIJbIU0of5>DG*jffMMbm;4^xP}jZuEE?)0p+g!%E5ng&uRr(c*Uxff zbf?iH8?9 zvulX6kGn1;>+aBYyQ5ne0~7x;QeFg;b0BZb&iOs_ym2K-y_Fe!81li4oTOlyS4`rzw>? z#xr`9ve{{wUf&DVm&A9*A}>Hh)Y)I|ST5|TO5rrR$J%spkQwQm2g8|(>N-*zDE~0= ziToi=0QzXVI}wV>8<<^D{bX@ZSX1r7p%x3XG4=KR(1zdFZZhy(ZEatW{u#0R1j}ox zaUilux)2{Nc9)vU==kdH-H+tmI%u@h2mM>UPZMa ziYkQsfypBSXH|?~er6{*6gOb01-e;;_+&{>3?m-)!vcDL4oz8x`taAwWd?mi6BCRR zLouN~G=zt%XGD=)q2I_Y#a1fn;JXD>Dr~kowW=O(OjNjcnogHP)E}bfmKi0gMs&8H zj9i}gLqOM8^E*!c+aOU36IwcO{AmktSZlE>?=;?75llF7sFS2~Si-9_b|4o*X2)fO zyC2$Jip7lU%A0U5o4DMG0O7F?t;@|cH%0g>o zZ4cFyZuTLMultbu4E#MeKnGE6tNR(Zr7Ku`!&II^k3|a zT1Uhuwg%lzDfJU;hY}>cWnq7^#1?=TWI(MQY#Go&v35*BL*3on&<2nL_dw;WH(&4E z>ibp4)3b?`YD`;V<>?_T=__IJT(XJsw6}qg>RTqe;j`~5mH`UbzDc7I_NJo0LJXkf zVXB?xydQ!L&YW3iqCO*@T+Df1U8>aDejiQM(S`D?;3U#pSG>@JNKd(jI#`x(8~s{Q zL7aqt$Mz9_BaG$kc27m9>^Z8nn9NBZ=9UQ>W%W^ND;~gi0ubgzCzYXv8CN#-ODb7< zKN^!O?`a4fk18B24RAsQZn<1+16T8!ve(d^>~NLq zjgR0W(xEY*$f@*@NY)&Wt8*Ci5)sHTrR1u-@%^}*?bA!~^A~kZQ0H56)DP`h>|GY) zVZU=0UqwaOXOngh>820&wpS9s?)Mc-YshERi*gZ>0TpJpmyMYc1dIn9VH|m=PmY8aw5@i=FwE4kw370k$0#DTuf=5Z#~pTsR?D%wVVo4d&5TS#On!fMSd&LKv%B-{y2Fa0T=Xv4@jINeO}3h6Z1M>&cg+c|W*3KG~0=qNF6E zW5*O3=)Dg9-~fwOaPE5kUXp7}Sz%+@E0r}9vf7%MT5zpduXE!MZ{WMPi9vNVuU8{G zIMIvu{Pa~XaJLEuZ|j76mrfIEld$sqP=`86t2_c)htnhTuR2C8092#TMiiCg{vIZ% zMg`DJ-Sh^Ypj{ifv?XyzG#|QiG=6mc{bl*C_)>`7k`47&xzLC_o;MmFXMVT3VA@)6*HdHS!AhIw~{D3DE7i9oXRlFE> z__}xPF)yhi{haqam)_6U<+*7?a$&etg@76jWLHhh#hX>N?9ChDV883V3V!~N>5sXV zE|1h~S2k3Upl51;Dz`Z@GZO-mN{I1W zE35$a?{sl!w1g1~r|0L~6B#PZI>X;2PPdGNLh>Q|92|oioUd5>6($OY8%>^xA^UzB z3y!KsqE!##br0EU02iGgFnq1{Tz+5HPM_K>z>IYoblVE2oK6}wiCb)M{~39a?Q zzI-J<+e=)m_W}%D8))(v3r?SEShw6x;Lr;odVO02IbY02lpPvQMs(|szcea4zp@d_2>GAXs7ogwAKETL z7Y(7a)tKjv)*elO?OD0*csb&aCpbhGCJOu8doBOA7@=0+(8705DyMJcjf}^4bK$7C zksE)$6U*PyOhJ(q*nfmvqCuj*oOjA{It6eUin5k_Wj|i7k5@cfkke~<|JUN>*tDi{ ziXu-Z)C{q_qzj*-yzkacE_L+G+$>mK>wGwVZ#jgmw-mSy&7F36UWjdhWirC| zaiPgMP#*{dQA4+Jy|ZJUj#|S+w>V(~J&nscosQ^kEPXf+TF8TE_jSI&IHR};)9Fqq zE}!wMAK}^C@XfAk=#CySfBE5tDI6gTxitl8ci}AE(J;T)^1#B0W`>e5^#XfYA zH02#73(w%59tD48Sprgn)o``zjgKJX0)!k^hH?59()Q_>c0BPbr+Whk z$GJ+P^z+f2y~(VIUW47s6`@Ws$N|B=W(Ln2wt&egNU{8jUBj7do2b{faf8D;-(YzO z%=e~HTpV0CYw5a z%0E-T^a^VX)s4dXw=fDgH+wvqVZQy;&Z`9bYD={^@?EvhzeEL8_mS7BN4?ccq)0t8 ztrV^q3aQ}OCsVj}SzWpO+bfo-H1(s*^GV(gPG#5)M8L`@9K&l7(5hZ>pC?EHAul zJbQQXCms2u_czz9+5H@9pMs`fRokVZ^r*C`t$n2#LsuhzOXPS-+G-s4>->b?v-_SW z<>?YCa?iiQ2TgKP0|;dWYyvm(>0AR-pIzwXnr&tLk;ep?!k=;~zC!5pFVAk4GXH#w zw=dDG5>UDn!s#^HLffuBQ7f`y({5bO#IwQOQE_)$P8SMQUu>@9Slr`^ONjJQ#G3g zc12e>H#4D)MNcrJ8RKy&UM&9HEQ;B)chj6dh^zL}u>qhOuiMA`vLV}-0d)PrUbERn zEq3d7#UmtayR%i;x_2rp=-FRkIu)_#d55=AzFglI+h>cgP5-FK(p{-w=OOh#Rx?!su(doL&S}fDXGRxK&h$j zo^k&l%F5w03hpV_BuAciSSK&}fg=8DDHG>QQu-u8_^e&cR#{(rvsnHbnNiwjS&xI5 z1VM!GTDzA~5LNScxb_B4snqYOImSGcZWp7stjKJXZui1RDAC0SYv&y#6DwUpNXLt{ zmrVq>HZudMgRjNYJnI>wE3a>-na3E{jfnRdy?WcURbE;*V<5W*JwMHG^{#!(*;9ae3d^ZU#itvr!_s6iVLa{dvJ|fu+}W1ITz=$ z|5)*FG*iUaPs*w#C2hP@!K_BB`c|RA*i1Cna=CjqI z`e6NC<%dQr>SmUE6yj4I*`|pB`4#$+>R8goVRvJ)JEVNZ;e ziOJK>e(WOP_^!z8^>7Q0ggbW7QoNxwH7S8(v$fn=OvF`4WiEr2d?_p_b*CJ|#jEWrqDk7e*h z0WwyKQxuUxe)qj>2;`Ba_b)?AT96UH5Z7# z$$D~IxCq;0z&$kC|d{n zi4kOBt9q+^dwZKHUh4ThqrRj87DRy&)TGK{JPLcW`*HFoA$Td$4Fj~5((}KGaKVx+ zrn~T-ZP8-8viCY1$vHPmoQyAE9l~U9p^?GMe?5;j!<<4B#;s74#4@T;_Q4mr z>Up`Jrpv)&|t!-0uy12{20{w&t6%u&<^q_XsqX_Zj zemE(u!P|Ut>BJOjbK;&te3a(2e0N^}=G1LQx^{Tb$3{XIdzoqvs}vaI@CyAOG)CaM zHWaA(F?JKlB1}OMbYpS?jRsfn4|p_|tkzkt@?I^}T?WU?D@0bqo|v`a=so)zQh#Ah zg}jO8vk_yiZ!L0R#dU->S&JD>@F0u~CG*%?6e^O3e(xvg2^nSDM+%ynlySL=lT9FcCbf?qpQ@bC@JExHa zAIB=l5OA=Y$xYOiH?gx>2+b{oZWag+sX(Z)>0J^n;p9IiM4Z!j4I@LwIcA`>g;EaE zCjAQ@6yAao!v5^@3hA;%XQ2m|V*3$v3EXepP8xo}oPJkM2^{|fop}mn%#r(G>1S-u zkr9AF7iu+8Ul<4O5)E?Z(?yiquOg%nt`2om8)m;b{=H$%$#ej~PtG)&_=mgx&r9Z_ zLM4V*Xm1b;x6#CqpN-*nA0rm7JTyGpWIKYyZ>=vNw-=UuuvzclVirXGLzO|TkQA}j z#6Qk_YI3cQKyT)efSuEe?SJ*6H{WS+Bm*v2#q?MrM8=;Q*3l9jIaoI2^)uz;KHCph z{c?FxmAX@XOe5+=d6qIvE7QhP{h^-0@wc?>0RL`1Ayg2aLb(72n%h+%&IkHn6sGHt zo1<8Xpqac6q7m3nl%~eb_cre(?L=?rL4EcV>o@2V1f!6O zPL1q49nwApJ+51KY!S_W7ci&{?z%`D*OU*Q%P_ThBQ! z8yIg32OLp8iOO@4vUhOM9s7Z?2QnYcW}1hZ42)7r=&VO}Z@ikCxk)u5Hu)-P%PCYB zyMe9j^^%!P1y!B2mxV~2zSK$$R?(DES{Ku&y!b5H zb)OP-yF-Ea#Y$qzmeS2w4b zoFy*A3aGr?S#jv4b%%wn{+X3Lt}eTA^R$&g6s*brwk2=_up#x1qs`Dd9^sL^m6^S@ zEBea!PV1;TR?X&4oel8#4#5{+S=#SP4`TD!56Ms_3JZ`Y!ZD~7wAx8vLd!V#E_V=S z<#vljX_hSok8hn;!*#oo=P>kkE2CM;_=_R4atpexfN9By&9f>GJ@iqQ0A-^@!3yRq5a8>uv#kmNoK*R6p9PN`@r-{SX8Jr4CX2}~_!`SM>R71TJ!hG-R2 zT{dVFcI-SV9T-BVudW?Ib&bDgMm1fnM*e!in05Gvh3qwp##t1vVzjhcXWUH;d?0-Jp% zt<&Ma%WGrAHn3I1iyd=s=jvo(uVL3+b}jiml;~M`p?VC;Z5;@G3eBDnaz!X0-Oj}c zcq!H{3V6Hi*f&0fY?}7NIECKp3dy1BeOno*k==YF@8g4xxI1x7d!OL-TM{f^fp~XC zgbC+(SMMk}`YBFcP0BW>+u*8uH2iG>OpJoOHJ*FLzA&<)c&ng*@7})K34gdmfe`FW zuUj_QiwM}Otl(TXO#FR=;WywH?bhqO+xnv6!|V;XUR0Y4&D86AH7cRt*P{9ZN%Pqn z`Bt%_*i#$?X z1yaj5q?tBxFk5-UwlAe&arDiw*B$jhD*a|U3CcR-2$qZLelqHA>GWt_neA%dq5^I))=cx-%l!@FUiFzYhYigF-FIEh zc}~6@s)(?odL$iumIAh+(p+YzL!+y;4EhvxsLt7Sx+e=f<-lF|n3L}D6VsFERiYC_ z)yCpxfg-BS4=|eQ@{(saBONL|ZRcBV=KEsfm}g_f9v@nLY=y!icb%cGdyJk33mop} zpMGiwp+={9)n`Arqg(Opf#k!lzg)e~L~UvmdYPHlKcBlkMHeQIHqke5HkQl&72AaE zA%ouh=<_#A-i59{wx-bQ2@I7g^TZTR*AsKMUDqoLSc=`?y#Td1g~O5OGe5cS<`R6I zIKSXrod?x+Uc7Qv8Bni(q~dQ!3%Wr}A~gv#OzA$D1U)md|PRsjCi=?y2Q|Ke*uUGL0k z*>ve}0q`f{2%+arF#d%nY2DMiPSl%)msa2E&C_qhHwI>KV2q}H>J9&cIfyPFmE6KVdJIffaKirfUH-zUk;{g$;SY z<{irVH9)zjCnUgBY9$0E9k3N{GA^#JzZ0)D-V>j{ZvybO2;X@$pM5-ZU)A|5E6TY5jCOmKZs?TeE5lY2qNG_Ly2o za7xweGm@$1E>==0pPkm4j9@A{)Jp`b3;Hy^%}&hCJ+r&GCOY0f9#5Yrfr2iX9kC?C zGCI?1d?Q&1UZW0zucmf%{{0BlE(hpLe&Umr=)g1`3b~?e1P)!xpvY?^{b;o9iBi;f zZkpn}rh4F-p%%prLuN%q-;va80(80wtx~4X%u^EFqL14K1ZcZ8EB7t{$lnz=ko`xoiO$3SK@7jj@QhOx( zoh>yCQ|rCdnbW63;!s#2@olWa#vmeoOzzJ|1XyeO<4it%XD+4SJu;z}x%;ee zbSXBnoMzr3fzGhrd+$D&CL|g6tTg%3-(KG4BX)z^nQbC0VxKm|A>$g zeB6{l-33bBj%U@g56#A-=yLw(%mTPV^UrE)towwu`B&{;{f8Oa|HA=IdIQ#xf3bw- z28_y%Mwse_^}tjmv<-77(p%nNIN0+i+biq>3oQ}fo;>AILu zaMNjsY)A{433|Iui|pHGW2P;gWplg;o?q#y`|mwZP$7(5t@+-XVLLw!KRQ!4SR*%^ zkl1DuMZ_(x8>4wVzhf01Y0%&vPNyGT7?QA+{WeHc)iR)KIx~uWleq@meW-To>Ib6< zCdp8@^)xs~zx$o{^IZNpc1xMfymXUsZq)3vBTxU>P&75sbalDgu@bTS^4JCNYUPFl z)0rOA=_;_T7n=hM%;+y%-3#4r9M5FTweTmVVq5dZ$N$@m5m6vMekw`l_jM^y=tAdW zFHqi0KxnRBE4*!hbZ4{V^V6EGF-VgY* zH*_2nnz1u($fS>yvtt2gDcUu^BtyBtQVeyh!l zy<(p2DQADAA%C>7wH3?pv(~KA?0esdMZ;?{>j8gvAK08beC}G_;U+FD8n5NSdk?tS zI$!;nY!wjgRXD8rcSGLw@YFguN6OSNsvDi`_4E||{S4F?iLjru*(7Kr!8AbQQ{czy z3fixZ$e!9?5O^(A2YC_0p^}$b80MqNgoY~8AkVI?N%U$|xYvzKc1LfrLyX2<@#J0d zi+4M1i0844xZh2m7AlzmK{NhR#OsHL2AZ>jzuksVF8A8<_lvL2i?5NWj*@e4JU0|A z;JM3gG)UPK*r`hV%qb#jqwg|~fdLgF<(8dL7T^rY0t;jw0aGO{(Ei~G3JUT7-mnxX z6rE+xp4yU8QpVy3)PvvZysxHL{Z(fe#eRq9g{%4GUi2&sOoO#@PiXjp1v@y{e9`i2 zP~+qN6y0RPAe3|rNHP!!Z!zr2B7`j|2;!)o)H_?7lA3)}0$K){2<1YN7&C-TTxjW+$LtY5{HoEPDQp zyX2cP9=&Dz34qGG@uo>r!8vA?m(t((27nc9MKsl{HF3r~x>(U6v*HFNpu$1rlAzQ$ z?#bT=kiYAsYec|1?xY_}33p^!>qT$Ja4D+!`QGEhl(-*~n{h{ft;Nh)3(J%1MZOVT zN8m0{GS(n=_?P(Z-V@jpCSV}ji8-@dvX@r7S2!}bkq4V{Stc;%>NWBg9?rmb2S~~y z(5}Q9#pv9Ff^jfPyMB%Xw}YwW!|aErPITQaQSX#y^|kZ`S;l^rEb>mnYYc}QUug13 zAGvTkTRKVl$ZfUpwf(n$zgV-VC6d3f4$Jdvr1YrUAldpeo}c}#cz z!>24UEj}@AX3SyC-pDkrpaaT)cX~;Jt|uiq_<{`Y_gQfXCHL8mairh+U*kqvO>5+* zwJ92h$7YQIaL@yTUBb~$in;LtSaF2e-UVN+g1pF&oH^3TAX#An&crd!q0omS-t%sU z1Iw3fjqHv)8Y%YUs>?k|&)&S)-9jo&8)_Mt>VLJ*9TVCA^sPGU#O%akJk_0p#ciFt z%909=FT9NEtl;pa(BNWCzdzdI8}VLmnsoM0+z25->L-5CbRn%)_h{cnMzKSr0c1;R zoQNqmwxDcl zIKWA?+5>PYR_B#9Y;Gd~VS5*&Kkc#ZtwRauK#x6F{{eN9C?We%O(7!#D);2e@igdt z!j5|oehnkS+eO#%+n~#h{Nmp7PW*}#&@CaIB(@Hx8b!e3W8VX9qQ}b(eI8Ply|J)$ zp68lQ(iJWx+f!-N*+)Z4`%w7Db)1Ol!6~Ef`%@-w9i|+yM6@_(VW2a4>aGh`0bKV0 zyhmwLW?k@yn}umxQ+#$pB-{MGT(03a;c`I!L%?ZirAJV4-+XxNX#9_b>Ay2zQ4y`x z$cELawi);+;-8*4HikubZV_4=A4TZZ!y9(H0wG6q1ftnsGnnLehSwiizeGvIbdM&8wB^7o@1z`u_vg5PRBlv{ex%DmY)V%D)K zwCF_jqdw{2%WjxjY_?Y613ii#!2kom$Et`=%Bfbxl_a9~EU0=xq!9|Om~M18s{_p2jL^m9LiLI23$ix#t50! zO2lG^-njrdzOg`ivySUTl}SqY=g=rDeSuFphCJu#88rjG^Y`E1n@lwSFd^ody|MPP zi<}1@t{GV@eUxYmh`ky09p9?KVh*XkK#pqR4TZ9N%8@jY>Au6x9(H&;0pJ}W(dcYi~ z6OGcQ#tUb1ET+o7Z`Z=6m(I`jIWr}S?7Qg#afAZaT=JE+As1drdRDc+vrn#&ThQrg z>B^G}&TZMNBiR|NtMmoSnJO!@dAJLGDc!YtJ zb#K~KJ3ANp12kBaqUTDv?k%@TDuD3MA+SyAN@;DOk=zDyOmq9kgOw(|AN~CQIYV%8 z&H04*D2;rKVg&y^MNE7r1@x+hn#%3QnbxBq^=bA==34ff+{WS zB+&CzY&(cPTm@(CpzWXuRLE;a%MN=j7S_2jZ{p_;(R+(!w>AJ5GDjE4;#-oBTu>p>5IV5vqm}o>U)P`(*RjnP?R0QOnct*CGtH4q7Lw{+N+yRVzhZ-?URt{P zmsmN|$L(XZ*UXk{!WDamg}|SoHmilh%h0v<<(DPdued)Dv&42 zOng#wW)!!RTBDh1!HFu8nGlQWr5?Gu>inX{AD3%a$cw#;Mp&AAqx;qhja3t(u4(4^ zJ6%ztHL-DvnW}1lZG9r;J_d`=tFO<~a>8TV>@$3tgW_e?6++B&2x32;6984KISDC* zNTIAVxYgaxZuJYbYyd_&0VQ;=q|$Jmz%ox>>{hnyACl(Z7GuZ0nbiCc+k3U3WfvWCQXr*C}(&g>E#nPE6 z@TX&p&K`4`0P}W=V5Q`zEL*AZKeq8~s&GV(+b%q-auh?XL`^tJaDY~+g)D@Bub;|m?In!g zTip>C&Z48OWqan|3a)z6FC-8R3kYAGb_tKr%dmyhu#60ApD5|NSGk2mj< zGn@Comw+zDta{#MGyDnBM1_J3?{}~O(}sVHUEvM`KFtD*SKC2xScY+6N_0BS;DutI zDZ^6 zIpryr?R=i=byKN!HG*m3?#JV`|u#mjpOV=X3P zGriUtF9HXY9$&}2>-SnljE}-PQ#8i@-w!C>XGD{Y`f~fTc5FC83==`0tvnI@+i=e- z_zVfKOke7nfP)sZjdS?m)|S@gm=^B4zTBAftFv^g>t;K-J`bspk=IZf@vAciYV?X8=W%qBf(F?hsF2~ds4#5?G zO0SR(I|cpx<~E4DWTGjnll9>O2i+$mp8F)*p`3#%IJgIT=4f656zscaEtRjmLzPPL z6JC1H<`AQY-|}%|d%nyK_sk~gKamIPfCdE)`R6v3uS#ptP%xXQ>wiOCxjpR1| zJT|L6%$&k*wOtG)9Uk1;JiXXAIz@HJIO>{t8cE9n|HFfm>&gkY*_py3xG#KhEd{MR z8kPz~c}mv@q&zRBUncB|`?E^zquUCVM_P&_ zR^$+UE8Oliz9hGoRRZ?IoU81F?v1$b)Ee$l!=;WzdTl-8rkk9WWR%`tjS9k*MR~Kg zLC0hY)T_sP>2k~0KwLH0xSex7UJ_+`uQ`r>Bv6IxQXC>UA6N$}F7&oL*Z)>K|dykguL(;<+1Rl6Nk| zOqul~95x`D!}DqzLMV!n(e#`jts57J(Z(GGVEvl;MJtzMcSCoxYB~ksM%m}HdJ)_f zaH@}-Gi*{*5s3XU_j5PO4_8X<%lTTD8|?RAZeBNNGa#NWghS5PQyYuVsEvA>gjAuf z&xpefUCq@I4gY`Ff9nxDlHgN)qdTHiG3a>3Oy&oT?4gKfYyET)+#las=V#@p$L1o!TMrG<0g>C9*CiNoVL+e0^#Kb`=#Y2BHE$r zhvDMP6fAR7SGyfkk$#7aKHh!SWja>_PiZ_y(MYbs!g_kxBGt)9h9?& z&uCFnc9HV@|J>LARA;1jL&fS0V~3l7$g@H^!WE31-5c?twjY%jaf(ss>{1$1Zc#pA z#Ls(7rujS?qR0p&S#f6E%3{~^6%i5Wb66}yl&d;kjr2@WMBo* zzgIVaDTXIMJ2Ko#o3Z{@kh9pBD6qy5#mN6F%>SFnA4Xa~Y?01x=y&x=>Z0+i|7g=e zybTZ!3bZCr)6E;~Cl8lvr`9EJeEcN?rippv#VZxlMSd1MD^g%>Csd2EBY+rT6Jv><*@+7&T^R&iUou-=ij=gLS?i6eKEF&3jveBg=(3P~U zH%7Q`>9t`_qi5c|bNDg$(Dcz#eWkMd-%dzVRT$;87jkm{Z&7t!IZ)nx6e=DmuOsG9 znWx*@0-BB-_p?4NYP5(@4Zi($LiN@#zks`3opjowy#}KSn)VI6rWs1&(d~cEKpkFtg>|n8Q(pr*g%>oxeYsPZ#x)g#mF-DBm zZKOdynmVs%22KM=e2Us_uO;(}Fcw_7sqIByJk5Fx-8k2*A`VThjilbczx|qmFbYrl zw9f`LD4_+?&Ta;sI6o|l)R=3!HWZV#KvJTKo+yED~zanLsdgzAD7_FxQd+sI?hD8Sn7 z!d={2;3U_pA^rqvw~$Nm&wWw`Z^E&%2Kv8oY2ulj_dB#OKlQt4hrQ9;p=q^}=Hh7;Iu++p?lPf?f#=ky zQK);|4`kK01tuEdc{?MWa%-yJ+m$`zJUdsG{2^Ajc=ow;bDhgrD<^*bGka+ZSOZ!! zb3Sch73|WTa`_rS5ZQ~T6}WT*^V*fNp64Ua=xMv8ctdB>a8GPojol^g$GdsiM0<@)x=G|D(9IZ7z&uT*v^N`yF#vZRtN zF;qj0EU7_b8(Gfjh&oxu&T))n8QFIeMP(Uf-xVU7tb+`C@5k?$n)CMQ|M&fjzn;&7 z=Xvh?zV7S#Uf*lEl>&c5R)EGgp*XJ(jyAMPr-qB$kx_s=xkGj+kyp3F zNuvCxNICq(v_ZZV%rkUAwK8@mDLDHW6%QlcCRq(9=TB%btQW7Twyk=BpkX1vK5hpo z8Xy_J7a*YGab>(nFLR?dm}$XEycwnqtYU*ot|^0@1zLxtiwNp8l*v!KBer6rZ=Ppc z8*JZ#XVC;Kl9~+I1zRem*Eb|*FWJvVPO%7#cW+1 z15IYT&K&#jH#mMlU*rhB>N<0_M`grem#Ta+G0cHL7rB92@JLx?sS=+emCJknwQk7$ zy(y7E zL|fr38r;|Ne1Q5a0%S^MC8K{zvc^m?ERtu1h& z4^bHs`FjO-g=izs@onC>w;QUm=9Q#w$x4H#b66r4uXp*?$V4A`kvzXaK979e?Vc5@ljJo=!+U4_$7dgF5stqtu0KP!& zQ^^%UiKS+bs(hc3Jz_$r)%Jq}Oef5=$RFm4S*-40B2`G2oJ3x|X-WDmOR_iS;z8Rt zQF4|&peRWxl=SLC(iSmqSGD2LL%|#+hS+xC%>SR+6=;vlwU(XGdPx-|^`)UZI=n=O6Nj>|CjR6JVxFJoy(yQ{o12!8if2tyd+|X& z$cK){Z)LeUsCes@zx(sS!|uh)czjZ3v^|XE$G42xYaevcK|kQh46cwI;wv<`e^}$x z{b;?1P_!r`n`x8lUH8<+AhE9kv(RQ$R{2(BQb4C?BD1Y>#du0K!=v3N+H~4*DYws_ zU$%3(cAKWUdipHnR42an1QpYTNsQ7YOYdg1hRSu&X=>c_aWD6d;kL||ag+(Ze`b`x zF9kN=gZ`Y?EK@wK2j>qMwZJ0bfPjsXxb*V3EQ4ZCkVv_;^-5Se+>ketB6&hT=qPz! zsFK!ORJoP9rSU?B@;iBgamV(*NKFoSVZNj7GBn{3BPnv8w2=j;wW{V?A;h0b+_b86 zEFO4)d+gG0EM~P>GWr9sW0ylSNMg1a8O;iB15h~jG&|q8ag5;7u<4v=y+Y1?e?VJj}iS{+y`tk5% zDxIh9o2P>0Xv;!J+lklxjOH)FJHw}*6ez2d+E1+gjzL*!Oj9=1j<-T9nX3lMmM>Zh z`NXrT3VN~)&ZY>Ws ziP1L}oFSF3S#RdAy!(yp>gm;pPcOa%bK4g+87Rk?!7~H#{Jy0Ae0__(T#YjNuO_-m zOn!?z7v)ulwpQc0UV3$k!v;*TCN_d5wlcJZme(MU1-ZO0Y;HpiJ$fk!ZT_=GgPiqn z+Q&Lf$Bz|F)e9yMp_Gt%q@*y-<=UZ#9QOq&F8&~Fug!CNQ4I@>AHB|xDITJI2=JZpO zS9O{a_M&G9{ZW<#fW9+*w&7g-SC?d+B5=dztW(+q|HENW6UFVSbo>fD4zi|1xI5_oOaqNCoHSQk zHIIjK2`7~ccc3+LTqJ%r=;h;vnu+U(M^3vt2{y>m6Mc|5(iN{>JgorT#cIQbgNvhA zUjt)}8x!3X9uaC%GXj{p%Yv%0u)|cMI{4QReD#?tW={xVyL0Hm#}ePqfoQK&riT7oG!50677|@5y&~cA@GeODuRenw((7 z76tt#RLtw!F+7LCPJC2Pl$`&=k~1BdGZ8r(>eMj)!hoSF`a%W7tK4^LI9sd;#X-bI zt+O2}26FOfv<8lb>q~lN0|`9T1;{vAo+xiXvskq3tK+z-zI}PLs-Z!9!-j+MigHu)?gSu((51jz36av= zPF%;BAij1@ZK3OmfKEkO^_#}DM3I=e8{zG%F~bvU+YvZl_eUE4NWqXHK+jb#ljWHf zaNUf^n2B>3!eb1Ayg*W7F=)MOL-Fh^A83c16&%1P^1(+`aViBbOOXV=2#jBpaDLm9 zxyR}`9utCp1X@@)mQk~)qDO=k>-{c>h3b@bi+c(;-ix~dTDKSNb}mW5ly!mDd1Mig zOhAKrR4uEH{XLl8EP}58s-XyG0Hk>ro)2SjsW{+d@w0o191AQ-rH$?bIb{=%7eMr6 z8wd4mh}b~0>R9~S7#Cy&-#q5!ZFn*_LE7ndQ23;sSx{_-tHI-Y{fBLIPu5ercZc}v z2YD#>kAZFp#}H2;)inKc^>DamRRUDzIbMCK2z(9shyY!3!>kgGfT8tX_~YW&z!?O( zLg1QfGvU1h_^IP<>U#!fevR_m6W1LTsB|MKi za5j+^3XfkL%BsogY`yL>($_iXMP7`b*IkzJImqK+{G}(l>Xnb{Xrvh+OW!YnLf!)O z+9+Bypjv&4;v%Z~W!X2%$5H~!lgtIHhpb{2Pif5espQ3FwcrGq@LOw?AhI{wEL30i3a|YdU5_l)CbM&pCqR`J zCroR~Ws$e|_$0-5h0it=B!fQS`sLs}k&r8cfN?B@2&Yk1!teu(>XEl+jZ&Z4-KpSa z*ty(wJ8%@={PD?Lp4FZ;r7{JdxYr58qX6q;0c7sxohPZMpi#H&VmptiTyGk$?$*f0 zhLi1?_S>Jb8#q^0zZ@T9p+{f@5jYaZ=hW`LdS0EUm~R||j)cM;G%?UgA$V+)-QgkI z5Rnd0q#N*jY}3A@jpvQ^!*udR#8f?894w={%c?qNOR-&HV~0uB!@j3^OB`BB3n2fx z5b8Ok)8YZ?hdpZB)Tb#DLxxLctxv;xO;%&4U4(hV!=Eq%idsW-ZY~&_9RD?}z3xg; zLbZbMQaKcbNs~3OLyB)rcF+!EMvhd?+_N3&0>Qpk6_#R*X*)@e z$Jt)&^UkhUNL*6M{#z_>FT%jzW0l@n3=F0-*P8FU{l0%CxYi({Fr5&*aw31`W{y+? zR(;gIf47VALvPs)>p)S0;!dq$?XnwQ)B10^3c;i)&B~Fv{U$0&oK2_5AjHVv+XwZC zshtDyS^N3~kO4#6Blh`}0QF1UpJ#UGw>>KDre(~%FRak+C;P2V0)~;V%kIM1dN2j- z*ylFnM5Os!>z)KNPCqFs?%ql!{<3v%wlxzVt|GZ$jLAdF-(p-C0V6#PNF|=sSE8On z1lyh$+kB_*(7-`{&Raxow!Aw~gU}t;%I>J&i;OsLZR{3C6%s3c(@}rIGN3~+5>4A} zIZEWFU8aNjsA>?xL^}$-jIrlf8!=kD%1A>mrxoF7Jtrq4?H*S$KVuFc*LbS$IT@BI zF(<(JkM`qwugj%2ih@=p5=-m6RK|(zsL_}k!}q0A-<-GJvkklB^3sh;*25xwmOXYbj|(&#=zpI!|juLh3(E8ZzFsLVUA{W z(xYEC7HNIQXPqSk8Y)Z6*|rsSTB{i-mx3Kt3|#K~1mNsk2ar~c6F=;*4|~|MCNsjm z9L14y_RVvOcZSGC+uGI=*_wP5HL#(QYy3 z93b9n0i(7hA({K@El6UMQIAZB7YHV#*v5i~i-0#%{Bz2G6VEjPYfoE}Ot zom1ucX|k^@%41_DIN&bDfUcr_;z%-L(J}}-g!GEOTTNQvc?gsH%^mS;1y!NH+d6_~ z+Mhu2;kC(*?A`DxlT6dCQ%G{1vG4nf7LGTE8g;Wvn%uaE^w5Gn;1%rDc>^jy{7Zdt?1ShK(c9y^yGWYn6FZ%LD|x4=Ox)17HqM*~fA?NxX%x%1$eb2``UZ3< zR0}*ejO!e)R1cAF^?(1_-%FC$0Co%VY);r1TE@7$XIGq8krzXIq~+}AHJmnU^{Yz> zr~pZAC94cj`^TGXcXbprGMKS_)h=wjde#{ePs`fRTfp=Hd5HqRGF8k6-u`+EqJQu1 zd_Ih_S3lxsl~FB1=xpyg86o}j{JkN4^T;7b+>Rb7(6m4W?*O{v&|MlhF4Ad#ysI{Y zvPC2J=zk2g3g_-!h?0WNoC*=A_YSTt@NTv{j3F@$k}o>*H@;s&1OgX!(ecWPVLXEg32o z2V{XHfFdBrIM1+tz&iA;17-;2P89H;^M#lP0Qak*Xq8Y;oR%wnqP=$cBNyf1i!WC- zG&;Tkm0l3fs&Dj&CGG>#QuyJU>rAS?2_JyD|)$Q8c( zpTN!twE|U8PaU(h}$> z?jkRw5H^&yUlD@m$CWL{GY|9X>f~;59KgQ%KSsm2crMDrpxlRa#e*;NIIdDVS ztp6q|pW=C8&`C|E>vq}|JE}!SFaL5oBQu6OVp6ZtvS7pEXd(NXwXHnE(eEAcqOU%e~;(uoqb^LwkzIc${5QN{yV_=1LClcPdeLT zSf-ct4=I6QW5ZDg|Mis{Gqb)WM1ci3z7Tti#Yz3wGl{&surrhcKN@*UDp;_3Yh(K# zP2qMpoPrd5{&k$Jp9{V9Hc-L~UD$~qO`(l85LS*(qzEz|fQo`0eY_s*h%^GxvZMN8$XG2S{04z4<`4QS< z17 { + test.only('my only true test', () => { + expect(1 + 1).toEqual(2); + }); +}); + +// import { SynthUtils } from '@aws-cdk/assert'; +// import { Stack } from '@aws-cdk/core'; +// import { MicroService } from '../src/constructs/microservice'; + +// test('dlq creates an alarm', () => { +// const stack = new Stack(); +// new MicroService(stack, 'UnknownAPI', { +// appName: 'UnknownAPI', +// env: 'development', +// asgMaxSize: '1', +// asgMinSize: '1', +// diskSize: 20, +// instanceLabels: [ +// { +// key: 'NODE-VERSION', +// propagateAtLaunch: true, +// value: '12', +// }, +// { +// key: 'TYPE', +// propagateAtLaunch: true, +// value: 'application', +// }, +// ], +// instanceType: 't3.micro', +// vpc: 'vpc-1234567', +// port: 8000, +// protocol: 'HTTP', +// healthCheckPath: '/health', +// subnets: ['subnet-987654321', 'subnet-12345678'], +// tcpRules: [ +// { +// sourceSG: 'sg-12345678', +// description: 'ssh rule', +// port: 22, +// }, +// ], +// host: 'abc-test-123.smallcase.com', +// lbArn: 'arn:aws:elasticloadbalancing:ap-south-1:12345678910:loadbalancer/app/API-DEV-External', +// sslEnabled: false, +// sshKey: 'master-dev', +// createCodedeployApplication: true, +// role: { +// type: 'new', +// }, +// applicationType: 'new', +// }); +// expect(SynthUtils.toCloudFormation(stack)).toMatchSnapshot(); +// }); \ No newline at end of file diff --git a/tsconfig.eslint.json b/tsconfig.eslint.json new file mode 100644 index 0000000..06833d1 --- /dev/null +++ b/tsconfig.eslint.json @@ -0,0 +1,35 @@ +{ + "compilerOptions": { + "alwaysStrict": true, + "declaration": true, + "experimentalDecorators": true, + "inlineSourceMap": true, + "inlineSources": true, + "lib": [ + "es2018" + ], + "module": "CommonJS", + "noEmitOnError": false, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noImplicitThis": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "resolveJsonModule": true, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": true, + "stripInternal": true, + "target": "ES2018" + }, + "include": [ + ".projenrc.js", + "src/**/*.ts", + "test/**/*.ts" + ], + "exclude": [ + "node_modules" + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/tsconfig.jest.json b/tsconfig.jest.json new file mode 100644 index 0000000..06833d1 --- /dev/null +++ b/tsconfig.jest.json @@ -0,0 +1,35 @@ +{ + "compilerOptions": { + "alwaysStrict": true, + "declaration": true, + "experimentalDecorators": true, + "inlineSourceMap": true, + "inlineSources": true, + "lib": [ + "es2018" + ], + "module": "CommonJS", + "noEmitOnError": false, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noImplicitThis": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "resolveJsonModule": true, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": true, + "stripInternal": true, + "target": "ES2018" + }, + "include": [ + ".projenrc.js", + "src/**/*.ts", + "test/**/*.ts" + ], + "exclude": [ + "node_modules" + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..b18431a --- /dev/null +++ b/yarn.lock @@ -0,0 +1,6865 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@aws-cdk/assert@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/assert/-/assert-1.113.0.tgz#ce0162ebba3217b283cced941fcd97c21d8821ab" + integrity sha512-NO9v/8zfHlNgjGzVWAihhh+gb5+TCIVpIhSP1zTzoiyrIuQdh0ohZyHK9fW2Ygz+DDEZ4b+fTCFg9KSXnozOAA== + dependencies: + "@aws-cdk/cloudformation-diff" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/assets@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/assets/-/assets-1.113.0.tgz#00832e4b2c1eb7beeaeb1f84cc2a313cfbee3556" + integrity sha512-om3OzHwLPFvncZhLrS+1eJNu5+YzMcIap6vS52hc4ILB5R62UDqyZSYdGWiL2v7V738cg88Yb2VNkh8UubRSwg== + dependencies: + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-applicationautoscaling@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-applicationautoscaling/-/aws-applicationautoscaling-1.113.0.tgz#2a1aecb9d56c4f16eb4ff6e310f22a9b198f56e0" + integrity sha512-Y+TWlEqhy+UIbaOcTg+NgRrCrc7DDGxFqRz56Kzu8gMVbDVUQ5OGrZdZf2GErKCbV/v79EWcWWJ1wVBWCgsoXA== + dependencies: + "@aws-cdk/aws-autoscaling-common" "1.113.0" + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-autoscaling-common@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-autoscaling-common/-/aws-autoscaling-common-1.113.0.tgz#fc206db9a9cd820996ee8d57a0143b71b21b3c0e" + integrity sha512-CYoGstkp4HTAe97j8Lxf4PE9CAUvX1GTdvhcVvXczCvVanFRYCToW/O1go8VaVog4xtUq8YlwBih58nk3CcABg== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-autoscaling@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-autoscaling/-/aws-autoscaling-1.113.0.tgz#f3f19670987bf6cb31b7a5b2b79cacfe5d186479" + integrity sha512-H98aaqKeNJ2bSUq8I4rWXO6FE+pot9B/HYeDAcEPenT6m0w9gi1MubFGFTbqXZl9tG0fu7w6p47j7aTqkYj5Ow== + dependencies: + "@aws-cdk/aws-autoscaling-common" "1.113.0" + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-elasticloadbalancing" "1.113.0" + "@aws-cdk/aws-elasticloadbalancingv2" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-sns" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-certificatemanager@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-certificatemanager/-/aws-certificatemanager-1.113.0.tgz#482137a5d0c42986b504378849b196c6fdf1e3e1" + integrity sha512-9b5uR4IYZHggNPdS8L1abPyPyHh036eaV9NZ0OUcCRUF2WHBoXDS1frO/zsWZCyiDkiQuOhLPLEVpqCsKcYNww== + dependencies: + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-lambda" "1.113.0" + "@aws-cdk/aws-route53" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-cloudformation@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-cloudformation/-/aws-cloudformation-1.113.0.tgz#6a25810f44c91940156a2b2dc8e39a9bbb329682" + integrity sha512-x6AgCcGMrUPT9Z4L0lpj/6ofODo4IK6SejNxGQUM6OPbsg7qxdsn4J6o99PDOaivROykYUPm3Vgio8fTw5psHw== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-lambda" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/aws-sns" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-cloudwatch@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-cloudwatch/-/aws-cloudwatch-1.113.0.tgz#0289e3f20148e5f7873d77915a7be6dd08fd9eda" + integrity sha512-FGldrYsWcsFjeswtjGwmpjh2/2pEOBXFwTUuRVNr+1Vwx94MMSQYSxXFtoVHj9c8xlNwKdnhU5/9LxHjYmfj/A== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-codedeploy@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-codedeploy/-/aws-codedeploy-1.113.0.tgz#1d0cb6d9645eedccc0c72d9c490dcd98fd9fd2db" + integrity sha512-72r2ALXRSS1abWq1kIWT+GJxn64MYGdxYNK8oYXCbWVXX7GkR/g+11iNny8LlAcAS5zCPKMMSGepxu7Cnllqpg== + dependencies: + "@aws-cdk/aws-autoscaling" "1.113.0" + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-elasticloadbalancing" "1.113.0" + "@aws-cdk/aws-elasticloadbalancingv2" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-lambda" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/custom-resources" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-codeguruprofiler@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-codeguruprofiler/-/aws-codeguruprofiler-1.113.0.tgz#fa37d42a65efd127bd387d974083340513fade3b" + integrity sha512-sSB8CJjiiW/AtJZmctAG6dKywJEAmKkp6FtqUUuzVuQ4F91cR1FBIf0hQDxecoypUAgPqJmEMeVA3YO/MwU5JQ== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-codestarnotifications@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-codestarnotifications/-/aws-codestarnotifications-1.113.0.tgz#2230d99ef8cd8f6f84604eb86f8259b41c232f8d" + integrity sha512-AHfihc7jnMotGqRGZFWSWQ2Q8IWTkhjFOP+fomCbV7HptVD7SLnqv9cR0bV4YqJnk3C3F7vS+CSLzd/UCeuhZg== + dependencies: + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-ec2@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-ec2/-/aws-ec2-1.113.0.tgz#419a01934bf5a411689f70ea4b61f8a9a3cddc46" + integrity sha512-01iEYwi3YlnbiwSehnjpCpO1VJYfi4mCf32XJoY8S2i3vuxCj0GKYQlIzXOpcEnj3kS8n0NxA8q4HXKptWBxxg== + dependencies: + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/aws-logs" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/aws-s3-assets" "1.113.0" + "@aws-cdk/aws-ssm" "1.113.0" + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + "@aws-cdk/region-info" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-ecr-assets@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-ecr-assets/-/aws-ecr-assets-1.113.0.tgz#9b30a46be3f4374ae9b6a054c8c9b64f5adcf75d" + integrity sha512-W+pWNNvW/eHhAl6HDQnW0XYH8r09hZHH49AyzxLeCCSvefH5GN+ZQvlECIzqK+Wq8FtvOJXslDlOBZwnC1gEmg== + dependencies: + "@aws-cdk/assets" "1.113.0" + "@aws-cdk/aws-ecr" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + minimatch "^3.0.4" + +"@aws-cdk/aws-ecr@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-ecr/-/aws-ecr-1.113.0.tgz#79f018b57af96a964bec97ccdd5d7aa1e089e8a9" + integrity sha512-PiJiRuXdCPiNPKG5xABN4dQ+AqebNoOlxWbEQiHkJF5pQI5WnbO79Q8F5Q8w8Dx2N8KrW6I+ZEq2fPLymR2O+w== + dependencies: + "@aws-cdk/aws-events" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-efs@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-efs/-/aws-efs-1.113.0.tgz#b9a78b4b65f3c78e11f11ea198b546fc6a1b374e" + integrity sha512-G7T06JCUzyepCD0tcBsshPLvHb1rKrbwJySgkXB3k7ZPpLIS5Ztd9UpS9k8eGCsT03SnyL82C+qR03x0+Tplrg== + dependencies: + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-elasticloadbalancing@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-elasticloadbalancing/-/aws-elasticloadbalancing-1.113.0.tgz#95330b91eed5f6ba9e16d809f4a6793916daab40" + integrity sha512-TvSx1PfwFJWfyBOuiB7dFZ3nvy6pzojJxU1EhwEDCtl+0V82v/mAWf3kPNLl52/cD0kLMNPJzDV/Y6wFeid66A== + dependencies: + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-elasticloadbalancingv2@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-elasticloadbalancingv2/-/aws-elasticloadbalancingv2-1.113.0.tgz#d8f37de197b1f6b2824600e30d5902ae2458723b" + integrity sha512-1ZMq9cKaBmsrdnVTgKdds4X9EBIdcpk9830zNPnYQGCLuafxGzz/ZMv9i5JVOedmpiAjLv0Gr5QQStvKLIkfew== + dependencies: + "@aws-cdk/aws-certificatemanager" "1.113.0" + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-lambda" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + "@aws-cdk/region-info" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-events@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-events/-/aws-events-1.113.0.tgz#4bf5e7c62e37cf1232bc7ce1bb0df242b2882fd6" + integrity sha512-IQjNf+4i+L1k7Ji9Dh+p3D/KrdlYe5FfwHzc9qwi+e7L6M16tsQINMS34dxEFbfPf+IjzJP8mH+w/pb0vW7Whg== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-iam@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-iam/-/aws-iam-1.113.0.tgz#d9d07646e0b27ceb94fe9199877e0e4054f2be9e" + integrity sha512-YgUmZDxARuBIH28lR+hXpAAxCX/+UeX546n9qMqA5kAdCOxUmlNSUd9Cy4WI5Vr5iZ/liwSnag+20tQLIw1iJQ== + dependencies: + "@aws-cdk/core" "1.113.0" + "@aws-cdk/region-info" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-kms@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-kms/-/aws-kms-1.113.0.tgz#0b953b37efa7b0360b90adf55384cf37d65c9792" + integrity sha512-6NkU09Ip8vah//ay1WS+ZUqnqGwJwglfDAy4OxbS89eDcTl16PRzZSlYVL0VDnM6fDMl5PLmI0/LDX3Hyz0TTQ== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-lambda@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-lambda/-/aws-lambda-1.113.0.tgz#3d0aece987b71fb7c3109836d94e93ce61796eac" + integrity sha512-5YD719Z/tE0isEiaNdcVz2dc2Cl35CkmxHurE4CQ90RNsqBgxdKXWVy19PC0+It1r3yFQrq/7JKEHYsmlMZKmw== + dependencies: + "@aws-cdk/aws-applicationautoscaling" "1.113.0" + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-codeguruprofiler" "1.113.0" + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-ecr" "1.113.0" + "@aws-cdk/aws-ecr-assets" "1.113.0" + "@aws-cdk/aws-efs" "1.113.0" + "@aws-cdk/aws-events" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/aws-logs" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/aws-s3-assets" "1.113.0" + "@aws-cdk/aws-signer" "1.113.0" + "@aws-cdk/aws-sqs" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-logs@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-logs/-/aws-logs-1.113.0.tgz#ea899df31875c3f5644e995fa4e41707a7924cef" + integrity sha512-cfcF5FPjT62IBn6U+D8QUdzYZrWoZNT+6Mp0BfKtX7zOPBCKFMoyBC/bN0nsGDFPM82bJaMSnipzr20txcUPbg== + dependencies: + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/aws-s3-assets" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-route53@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-route53/-/aws-route53-1.113.0.tgz#f83a3ebf3fa3f7f50799ebe9eef9b78ffbd34618" + integrity sha512-uNZnI53rqbocA3sozHYQfugXpdiX6Aa0DksMmxEDeZOwY2N6rxKHrWvZh5JbUuuiTnr3SxyNk8DGSwjmU+W3PA== + dependencies: + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-logs" "1.113.0" + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/custom-resources" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-s3-assets@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-s3-assets/-/aws-s3-assets-1.113.0.tgz#b3cc0a4464013d4eb7c858ee39c6f53f82f22e9a" + integrity sha512-10shy3O5jAlnkugEYRD26b9cB0C0cYccBLBIy/r22uO4DSbdsStiWOhbfcVdKvdI7VJ2Gc4GObt97WuDWBppLg== + dependencies: + "@aws-cdk/assets" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/aws-s3" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-s3@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-s3/-/aws-s3-1.113.0.tgz#cd6cfdb76d92db188121abe69e9c9333767be83d" + integrity sha512-Jiw4hVO/o6tuwLMLZxdy8hcKu20RjIcD3p6SAvGTi+GKUY5XcdtuxrCCBGu9y2f82kHzTG2V1L4/XLBpVMLWyQ== + dependencies: + "@aws-cdk/aws-events" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/core" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-signer@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-signer/-/aws-signer-1.113.0.tgz#cf0eaff9a9accfb101e2c15a997ef3aacf708e31" + integrity sha512-HazRWCw24yEJ3eexLUNuxcZ6Tgq1brSmHNxwki2aZAwxmbJAc3zXKGTbr190qIGQD30LISmUXhSgSFUe4J30nw== + dependencies: + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-sns@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-sns/-/aws-sns-1.113.0.tgz#02ee91bbf97d7d745d720a397b964d4c971413c5" + integrity sha512-fX7FZylc5LSfBB8Y5RityqEGwVNbs0dKR6GWaoDj+NHw1Bb4bv4Q6gzJO146vgiEmCaVXQtpW8kXSDR8ISIIUw== + dependencies: + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-codestarnotifications" "1.113.0" + "@aws-cdk/aws-events" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/aws-sqs" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-sqs@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-sqs/-/aws-sqs-1.113.0.tgz#aa1302d091934827b6ca0293182b7ad97cbce35a" + integrity sha512-wfupfydmdKfcFzCKHyrNFnc0QtvNRKllMxRPAKBbfvQGCIvGB6XFOWgUwsg67KJO59NnxywQUE0DnCOtno7p0g== + dependencies: + "@aws-cdk/aws-cloudwatch" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/aws-ssm@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/aws-ssm/-/aws-ssm-1.113.0.tgz#807931d36eb1e693a98fa3750777d76a84a16a5a" + integrity sha512-gs9pqbFYo65F2XVsav7j/BV0Q/AUIrIqU8DHiFnyVV45G+rAScBDmnMbn7s2bs5FjLwM8K5aJqGri0jU738r3Q== + dependencies: + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-kms" "1.113.0" + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/cfnspec@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/cfnspec/-/cfnspec-1.113.0.tgz#d4e24a8b7de52765ca327a04f80c21976826e8f6" + integrity sha512-ty3Ow1UjTZrVRrdj1E6caXOoTw/pSm6sP4kBSUeFqYdPzREMYbwEWnObQtjttQrynizwjWtMkppS/quCvolTrA== + dependencies: + md5 "^2.3.0" + +"@aws-cdk/cloud-assembly-schema@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/cloud-assembly-schema/-/cloud-assembly-schema-1.113.0.tgz#724cf193d5b780da1e5cbe2f9fba8f05750c8ccd" + integrity sha512-BE6YplMVhIc/M23pvGZpu8p97Rrn98TYVg5/qYBauglJYD5Y3EtxEgKsLOEgth1UOgw8TsgVV0VpalesUCq3Fg== + dependencies: + jsonschema "^1.4.0" + semver "^7.3.5" + +"@aws-cdk/cloudformation-diff@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/cloudformation-diff/-/cloudformation-diff-1.113.0.tgz#52aa7102e0f5d6bb378887f6d05f166311c56e4a" + integrity sha512-v0/c5/akXgTAvd5Ilca5xlGZz6qr6Z7zoStJI/gBhVfkTmWrg/b2S4eTTm83HF2w4VCaLSAV4CTA8YyIsGqV0A== + dependencies: + "@aws-cdk/cfnspec" "1.113.0" + "@types/node" "^10.17.60" + colors "^1.4.0" + diff "^5.0.0" + fast-deep-equal "^3.1.3" + string-width "^4.2.2" + table "^6.7.1" + +"@aws-cdk/core@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/core/-/core-1.113.0.tgz#094a3ec139b70bd6f58c481adfa105f11a75c5fe" + integrity sha512-k4W4L8+Y1v1HOxXjcwsPZartfO20jos9wB+KGogVVw1ZKFOTaVe/imCjHI02nbaujp2elsGXYFIYoC3OLJIVzw== + dependencies: + "@aws-cdk/cloud-assembly-schema" "1.113.0" + "@aws-cdk/cx-api" "1.113.0" + "@aws-cdk/region-info" "1.113.0" + "@balena/dockerignore" "^1.0.2" + constructs "^3.3.69" + fs-extra "^9.1.0" + ignore "^5.1.8" + minimatch "^3.0.4" + +"@aws-cdk/custom-resources@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/custom-resources/-/custom-resources-1.113.0.tgz#e320811f43cb441f3cdc70b6f500acad79a245ca" + integrity sha512-Bf1/vGhOcZgDiAhbyPIffzFsYWPIXIA6acjaUjcRVL04eKLL0GAkr7NEXfZHkt8IHm+GRWqhaVVdmp0/QFqtTg== + dependencies: + "@aws-cdk/aws-cloudformation" "1.113.0" + "@aws-cdk/aws-ec2" "1.113.0" + "@aws-cdk/aws-iam" "1.113.0" + "@aws-cdk/aws-lambda" "1.113.0" + "@aws-cdk/aws-logs" "1.113.0" + "@aws-cdk/aws-sns" "1.113.0" + "@aws-cdk/core" "1.113.0" + constructs "^3.3.69" + +"@aws-cdk/cx-api@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/cx-api/-/cx-api-1.113.0.tgz#542b9aaa1c18e1dff877c6b9aea39d3080271576" + integrity sha512-WghmcwPR5I6Vy9RVhKQU8W3irg12YAWpgKrtiCb6Jq5W3WAf0rDWQ9bypyIAp0He+NLgTDdugoRqz7ok1pWfbA== + dependencies: + "@aws-cdk/cloud-assembly-schema" "1.113.0" + semver "^7.3.5" + +"@aws-cdk/region-info@1.113.0": + version "1.113.0" + resolved "https://registry.npmjs.org/@aws-cdk/region-info/-/region-info-1.113.0.tgz#38fe4dc31004b734c2ba7ba73605fea513a87c90" + integrity sha512-Mlmp6DbbKHteBsIRSlfmH2o0uzPG6LWWhqAQNQlDRdsXGlFtisdsKlloxP1HiKRfXiVp/eDatpPGc0BKZyPgcg== + +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" + integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== + dependencies: + "@babel/highlight" "^7.14.5" + +"@babel/compat-data@^7.15.0": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz#2dbaf8b85334796cafbb0f5793a90a2fc010b176" + integrity sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA== + +"@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz#749e57c68778b73ad8082775561f67f5196aafa8" + integrity sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/generator" "^7.15.0" + "@babel/helper-compilation-targets" "^7.15.0" + "@babel/helper-module-transforms" "^7.15.0" + "@babel/helpers" "^7.14.8" + "@babel/parser" "^7.15.0" + "@babel/template" "^7.14.5" + "@babel/traverse" "^7.15.0" + "@babel/types" "^7.15.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + semver "^6.3.0" + source-map "^0.5.0" + +"@babel/generator@^7.15.0", "@babel/generator@^7.7.2": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz#a7d0c172e0d814974bad5aa77ace543b97917f15" + integrity sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ== + dependencies: + "@babel/types" "^7.15.0" + jsesc "^2.5.1" + source-map "^0.5.0" + +"@babel/helper-compilation-targets@^7.15.0": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz#973df8cbd025515f3ff25db0c05efc704fa79818" + integrity sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A== + dependencies: + "@babel/compat-data" "^7.15.0" + "@babel/helper-validator-option" "^7.14.5" + browserslist "^4.16.6" + semver "^6.3.0" + +"@babel/helper-function-name@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz#89e2c474972f15d8e233b52ee8c480e2cfcd50c4" + integrity sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ== + dependencies: + "@babel/helper-get-function-arity" "^7.14.5" + "@babel/template" "^7.14.5" + "@babel/types" "^7.14.5" + +"@babel/helper-get-function-arity@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz#25fbfa579b0937eee1f3b805ece4ce398c431815" + integrity sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg== + dependencies: + "@babel/types" "^7.14.5" + +"@babel/helper-hoist-variables@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz#e0dd27c33a78e577d7c8884916a3e7ef1f7c7f8d" + integrity sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ== + dependencies: + "@babel/types" "^7.14.5" + +"@babel/helper-member-expression-to-functions@^7.15.0": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz#0ddaf5299c8179f27f37327936553e9bba60990b" + integrity sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg== + dependencies: + "@babel/types" "^7.15.0" + +"@babel/helper-module-imports@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz#6d1a44df6a38c957aa7c312da076429f11b422f3" + integrity sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ== + dependencies: + "@babel/types" "^7.14.5" + +"@babel/helper-module-transforms@^7.15.0": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz#679275581ea056373eddbe360e1419ef23783b08" + integrity sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg== + dependencies: + "@babel/helper-module-imports" "^7.14.5" + "@babel/helper-replace-supers" "^7.15.0" + "@babel/helper-simple-access" "^7.14.8" + "@babel/helper-split-export-declaration" "^7.14.5" + "@babel/helper-validator-identifier" "^7.14.9" + "@babel/template" "^7.14.5" + "@babel/traverse" "^7.15.0" + "@babel/types" "^7.15.0" + +"@babel/helper-optimise-call-expression@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz#f27395a8619e0665b3f0364cddb41c25d71b499c" + integrity sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA== + dependencies: + "@babel/types" "^7.14.5" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" + integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== + +"@babel/helper-replace-supers@^7.15.0": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz#ace07708f5bf746bf2e6ba99572cce79b5d4e7f4" + integrity sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.15.0" + "@babel/helper-optimise-call-expression" "^7.14.5" + "@babel/traverse" "^7.15.0" + "@babel/types" "^7.15.0" + +"@babel/helper-simple-access@^7.14.8": + version "7.14.8" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz#82e1fec0644a7e775c74d305f212c39f8fe73924" + integrity sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg== + dependencies: + "@babel/types" "^7.14.8" + +"@babel/helper-split-export-declaration@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz#22b23a54ef51c2b7605d851930c1976dd0bc693a" + integrity sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA== + dependencies: + "@babel/types" "^7.14.5" + +"@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9": + version "7.14.9" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz#6654d171b2024f6d8ee151bf2509699919131d48" + integrity sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g== + +"@babel/helper-validator-option@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" + integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== + +"@babel/helpers@^7.14.8": + version "7.15.3" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz#c96838b752b95dcd525b4e741ed40bb1dc2a1357" + integrity sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g== + dependencies: + "@babel/template" "^7.14.5" + "@babel/traverse" "^7.15.0" + "@babel/types" "^7.15.0" + +"@babel/highlight@^7.10.4", "@babel/highlight@^7.14.5": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== + dependencies: + "@babel/helper-validator-identifier" "^7.14.5" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.14.5", "@babel/parser@^7.15.0", "@babel/parser@^7.7.2": + version "7.15.3" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz#3416d9bea748052cfcb63dbcc27368105b1ed862" + integrity sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA== + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/plugin-syntax-typescript@^7.7.2": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716" + integrity sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/template@^7.14.5", "@babel/template@^7.3.3": + version "7.14.5" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz#a9bc9d8b33354ff6e55a9c60d1109200a68974f4" + integrity sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/parser" "^7.14.5" + "@babel/types" "^7.14.5" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.15.0", "@babel/traverse@^7.7.2": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz#4cca838fd1b2a03283c1f38e141f639d60b3fc98" + integrity sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/generator" "^7.15.0" + "@babel/helper-function-name" "^7.14.5" + "@babel/helper-hoist-variables" "^7.14.5" + "@babel/helper-split-export-declaration" "^7.14.5" + "@babel/parser" "^7.15.0" + "@babel/types" "^7.15.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.14.5", "@babel/types@^7.14.8", "@babel/types@^7.15.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.15.0" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz#61af11f2286c4e9c69ca8deb5f4375a73c72dcbd" + integrity sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ== + dependencies: + "@babel/helper-validator-identifier" "^7.14.9" + to-fast-properties "^2.0.0" + +"@balena/dockerignore@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" + integrity sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q== + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@gar/promisify@^1.0.1": + version "1.1.2" + resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" + integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== + +"@humanwhocodes/config-array@^0.5.0": + version "0.5.0" + resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + version "1.2.0" + resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" + integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== + +"@hutson/parse-repository-url@^3.0.0": + version "3.0.2" + resolved "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" + integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== + +"@iarna/toml@^2.2.5": + version "2.2.5" + resolved "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c" + integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg== + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/console/-/console-27.1.0.tgz#de13b603cb1d389b50c0dc6296e86e112381e43c" + integrity sha512-+Vl+xmLwAXLNlqT61gmHEixeRbS4L8MUzAjtpBCOPWH+izNI/dR16IeXjkXJdRtIVWVSf9DO1gdp67B1XorZhQ== + dependencies: + "@jest/types" "^27.1.0" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^27.1.0" + jest-util "^27.1.0" + slash "^3.0.0" + +"@jest/core@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/core/-/core-27.1.0.tgz#622220f18032f5869e579cecbe744527238648bf" + integrity sha512-3l9qmoknrlCFKfGdrmiQiPne+pUR4ALhKwFTYyOeKw6egfDwJkO21RJ1xf41rN8ZNFLg5W+w6+P4fUqq4EMRWA== + dependencies: + "@jest/console" "^27.1.0" + "@jest/reporters" "^27.1.0" + "@jest/test-result" "^27.1.0" + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + emittery "^0.8.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^27.1.0" + jest-config "^27.1.0" + jest-haste-map "^27.1.0" + jest-message-util "^27.1.0" + jest-regex-util "^27.0.6" + jest-resolve "^27.1.0" + jest-resolve-dependencies "^27.1.0" + jest-runner "^27.1.0" + jest-runtime "^27.1.0" + jest-snapshot "^27.1.0" + jest-util "^27.1.0" + jest-validate "^27.1.0" + jest-watcher "^27.1.0" + micromatch "^4.0.4" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.1.0.tgz#c7224a67004759ec203d8fa44e8bc0db93f66c44" + integrity sha512-wRp50aAMY2w1U2jP1G32d6FUVBNYqmk8WaGkiIEisU48qyDV0WPtw3IBLnl7orBeggveommAkuijY+RzVnNDOQ== + dependencies: + "@jest/fake-timers" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + jest-mock "^27.1.0" + +"@jest/fake-timers@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.1.0.tgz#c0b343d8a16af17eab2cb6862e319947c0ea2abe" + integrity sha512-22Zyn8il8DzpS+30jJNVbTlm7vAtnfy1aYvNeOEHloMlGy1PCYLHa4PWlSws0hvNsMM5bON6GISjkLoQUV3oMA== + dependencies: + "@jest/types" "^27.1.0" + "@sinonjs/fake-timers" "^7.0.2" + "@types/node" "*" + jest-message-util "^27.1.0" + jest-mock "^27.1.0" + jest-util "^27.1.0" + +"@jest/globals@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.1.0.tgz#e093a49c718dd678a782c197757775534c88d3f2" + integrity sha512-73vLV4aNHAlAgjk0/QcSIzzCZSqVIPbmFROJJv9D3QUR7BI4f517gVdJpSrCHxuRH3VZFhe0yGG/tmttlMll9g== + dependencies: + "@jest/environment" "^27.1.0" + "@jest/types" "^27.1.0" + expect "^27.1.0" + +"@jest/reporters@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.1.0.tgz#02ed1e6601552c2f6447378533f77aad002781d4" + integrity sha512-5T/zlPkN2HnK3Sboeg64L5eC8iiaZueLpttdktWTJsvALEtP2YMkC5BQxwjRWQACG9SwDmz+XjjkoxXUDMDgdw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^27.1.0" + "@jest/test-result" "^27.1.0" + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^27.1.0" + jest-resolve "^27.1.0" + jest-util "^27.1.0" + jest-worker "^27.1.0" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^8.0.0" + +"@jest/source-map@^27.0.6": + version "27.0.6" + resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.0.6.tgz#be9e9b93565d49b0548b86e232092491fb60551f" + integrity sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.1.0.tgz#9345ae5f97f6a5287af9ebd54716cd84331d42e8" + integrity sha512-Aoz00gpDL528ODLghat3QSy6UBTD5EmmpjrhZZMK/v1Q2/rRRqTGnFxHuEkrD4z/Py96ZdOHxIWkkCKRpmnE1A== + dependencies: + "@jest/console" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.1.0.tgz#04e8b3bd735570d3d48865e74977a14dc99bff2d" + integrity sha512-lnCWawDr6Z1DAAK9l25o3AjmKGgcutq1iIbp+hC10s/HxnB8ZkUsYq1FzjOoxxZ5hW+1+AthBtvS4x9yno3V1A== + dependencies: + "@jest/test-result" "^27.1.0" + graceful-fs "^4.2.4" + jest-haste-map "^27.1.0" + jest-runtime "^27.1.0" + +"@jest/transform@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.1.0.tgz#962e385517e3d1f62827fa39c305edcc3ca8544b" + integrity sha512-ZRGCA2ZEVJ00ubrhkTG87kyLbN6n55g1Ilq0X9nJb5bX3MhMp3O6M7KG+LvYu+nZRqG5cXsQnJEdZbdpTAV8pQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^27.1.0" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^27.1.0" + jest-regex-util "^27.0.6" + jest-util "^27.1.0" + micromatch "^4.0.4" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^27.1.0": + version "27.1.0" + resolved "https://registry.npmjs.org/@jest/types/-/types-27.1.0.tgz#674a40325eab23c857ebc0689e7e191a3c5b10cc" + integrity sha512-pRP5cLIzN7I7Vp6mHKRSaZD7YpBTK7hawx5si8trMKqk4+WOdK8NEKOTO2G8PKWD1HbKMVckVB6/XHh/olhf2g== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + +"@jsii/check-node@1.34.0": + version "1.34.0" + resolved "https://registry.npmjs.org/@jsii/check-node/-/check-node-1.34.0.tgz#24da38da36e18639c84787dabd464b8474ddee22" + integrity sha512-Z+eGyIoV6B6RNFCR+Z/p0ANnZA++bmCXhoU1RIwGh9RG39PAT38KkZZNr9ZHNTTQbVoTJMSatoX/9WQ33pQxAw== + dependencies: + chalk "^4.1.2" + semver "^7.3.5" + +"@jsii/spec@^1.34.0": + version "1.34.0" + resolved "https://registry.npmjs.org/@jsii/spec/-/spec-1.34.0.tgz#8b78adf07518f567d2c44bf6c98c426e5c18e0cf" + integrity sha512-yAK8FrTRrZ3lQ+DmdyAFZuHmsTJ1ej0719+sVgjr5ahE9i64huStaraX/jJM+PniuUQwE7N+B49ue6X9qj7vJA== + dependencies: + jsonschema "^1.4.0" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@npmcli/fs@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" + integrity sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ== + dependencies: + "@gar/promisify" "^1.0.1" + semver "^7.3.5" + +"@npmcli/git@^2.1.0": + version "2.1.0" + resolved "https://registry.npmjs.org/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" + integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== + dependencies: + "@npmcli/promise-spawn" "^1.3.2" + lru-cache "^6.0.0" + mkdirp "^1.0.4" + npm-pick-manifest "^6.1.1" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^2.0.2" + +"@npmcli/installed-package-contents@^1.0.6": + version "1.0.7" + resolved "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== + dependencies: + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +"@npmcli/move-file@^1.0.1": + version "1.1.2" + resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@npmcli/node-gyp@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-1.0.2.tgz#3cdc1f30e9736dbc417373ed803b42b1a0a29ede" + integrity sha512-yrJUe6reVMpktcvagumoqD9r08fH1iRo01gn1u0zoCApa9lnZGEigVKUd2hzsCId4gdtkZZIVscLhNxMECKgRg== + +"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": + version "1.3.2" + resolved "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" + integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== + dependencies: + infer-owner "^1.0.4" + +"@npmcli/run-script@^1.8.2": + version "1.8.6" + resolved "https://registry.npmjs.org/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" + integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== + dependencies: + "@npmcli/node-gyp" "^1.0.2" + "@npmcli/promise-spawn" "^1.3.2" + node-gyp "^7.1.0" + read-package-json-fast "^2.0.1" + +"@oozcitak/dom@1.15.8": + version "1.15.8" + resolved "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.8.tgz#0c0c7bb54cfdaadc07fd637913e706101721d15d" + integrity sha512-MoOnLBNsF+ok0HjpAvxYxR4piUhRDCEWK0ot3upwOOHYudJd30j6M+LNcE8RKpwfnclAX9T66nXXzkytd29XSw== + dependencies: + "@oozcitak/infra" "1.0.8" + "@oozcitak/url" "1.0.4" + "@oozcitak/util" "8.3.8" + +"@oozcitak/infra@1.0.8": + version "1.0.8" + resolved "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz#b0b089421f7d0f6878687608301fbaba837a7d17" + integrity sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg== + dependencies: + "@oozcitak/util" "8.3.8" + +"@oozcitak/url@1.0.4": + version "1.0.4" + resolved "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz#ca8b1c876319cf5a648dfa1123600a6aa5cda6ba" + integrity sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw== + dependencies: + "@oozcitak/infra" "1.0.8" + "@oozcitak/util" "8.3.8" + +"@oozcitak/util@8.3.8": + version "8.3.8" + resolved "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz#10f65fe1891fd8cde4957360835e78fd1936bfdd" + integrity sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ== + +"@sindresorhus/is@^0.14.0": + version "0.14.0" + resolved "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" + integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== + +"@sinonjs/commons@^1.7.0": + version "1.8.3" + resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" + integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^7.0.2": + version "7.1.2" + resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5" + integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg== + dependencies: + "@sinonjs/commons" "^1.7.0" + +"@szmarczak/http-timer@^1.1.2": + version "1.1.2" + resolved "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" + integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== + dependencies: + defer-to-connect "^1.0.1" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": + version "7.1.15" + resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz#2ccfb1ad55a02c83f8e0ad327cbc332f55eb1024" + integrity sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.3" + resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz#f456b4b2ce79137f768aa130d2423d2f0ccfaba5" + integrity sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.1" + resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.14.2" + resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" + integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== + dependencies: + "@babel/types" "^7.3.0" + +"@types/glob@*": + version "7.1.4" + resolved "https://registry.npmjs.org/@types/glob/-/glob-7.1.4.tgz#ea59e21d2ee5c517914cb4bc8e4153b99e566672" + integrity sha512-w+LsMxKyYQm347Otw+IfBXOv9UWVjpHpCDdbBMt8Kz/xbvCYNjP+0qPh91Km3iKfSRLBB0P7fAMf0KHrPu+MyA== + dependencies: + "@types/minimatch" "*" + "@types/node" "*" + +"@types/graceful-fs@^4.1.2": + version "4.1.5" + resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.3" + resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.1" + resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@^27.0.1": + version "27.0.1" + resolved "https://registry.npmjs.org/@types/jest/-/jest-27.0.1.tgz#fafcc997da0135865311bb1215ba16dba6bdf4ca" + integrity sha512-HTLpVXHrY69556ozYkcq47TtQJXpcWAWfkoqz+ZGz2JnmZhzlRjprCIyFnetSy8gpDWwTTGBcRVv1J1I1vBrHw== + dependencies: + jest-diff "^27.0.0" + pretty-format "^27.0.0" + +"@types/json-schema@^7.0.7": + version "7.0.9" + resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" + integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== + +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= + +"@types/minimatch@*": + version "3.0.5" + resolved "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== + +"@types/minimist@^1.2.0": + version "1.2.2" + resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== + +"@types/node@*": + version "16.7.8" + resolved "https://registry.npmjs.org/@types/node/-/node-16.7.8.tgz#2448be5f24fe6b77114632b6350fcd219334651e" + integrity sha512-8upnoQU0OPzbIkm+ZMM0zCeFCkw2s3mS0IWdx0+AAaWqm4fkBb0UJp8Edl7FVKRamYbpJC/aVsHpKWBIbiC7Zg== + +"@types/node@^10.17.0", "@types/node@^10.17.60": + version "10.17.60" + resolved "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" + integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== + +"@types/normalize-package-data@^2.4.0": + version "2.4.1" + resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== + +"@types/prettier@^2.1.5": + version "2.3.2" + resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.3.2.tgz#fc8c2825e4ed2142473b4a81064e6e081463d1b3" + integrity sha512-eI5Yrz3Qv4KPUa/nSIAi0h+qX0XyewOliug5F2QAtuRg6Kjg6jfmxe1GIwoIRhZspD1A0RP8ANrPwvEXXtRFog== + +"@types/stack-utils@^2.0.0": + version "2.0.1" + resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + +"@types/yargs-parser@*": + version "20.2.1" + resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" + integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== + +"@types/yargs@^16.0.0": + version "16.0.4" + resolved "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" + integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== + dependencies: + "@types/yargs-parser" "*" + +"@typescript-eslint/eslint-plugin@^4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.30.0.tgz#4a0c1ae96b953f4e67435e20248d812bfa55e4fb" + integrity sha512-NgAnqk55RQ/SD+tZFD9aPwNSeHmDHHe5rtUyhIq0ZeCWZEvo4DK9rYz7v9HDuQZFvn320Ot+AikaCKMFKLlD0g== + dependencies: + "@typescript-eslint/experimental-utils" "4.30.0" + "@typescript-eslint/scope-manager" "4.30.0" + debug "^4.3.1" + functional-red-black-tree "^1.0.1" + regexpp "^3.1.0" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.30.0.tgz#9e49704fef568432ae16fc0d6685c13d67db0fd5" + integrity sha512-K8RNIX9GnBsv5v4TjtwkKtqMSzYpjqAQg/oSphtxf3xxdt6T0owqnpojztjjTcatSteH3hLj3t/kklKx87NPqw== + dependencies: + "@types/json-schema" "^7.0.7" + "@typescript-eslint/scope-manager" "4.30.0" + "@typescript-eslint/types" "4.30.0" + "@typescript-eslint/typescript-estree" "4.30.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/parser@^4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.30.0.tgz#6abd720f66bd790f3e0e80c3be77180c8fcb192d" + integrity sha512-HJ0XuluSZSxeboLU7Q2VQ6eLlCwXPBOGnA7CqgBnz2Db3JRQYyBDJgQnop6TZ+rsbSx5gEdWhw4rE4mDa1FnZg== + dependencies: + "@typescript-eslint/scope-manager" "4.30.0" + "@typescript-eslint/types" "4.30.0" + "@typescript-eslint/typescript-estree" "4.30.0" + debug "^4.3.1" + +"@typescript-eslint/scope-manager@4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.30.0.tgz#1a3ffbb385b1a06be85cd5165a22324f069a85ee" + integrity sha512-VJ/jAXovxNh7rIXCQbYhkyV2Y3Ac/0cVHP/FruTJSAUUm4Oacmn/nkN5zfWmWFEanN4ggP0vJSHOeajtHq3f8A== + dependencies: + "@typescript-eslint/types" "4.30.0" + "@typescript-eslint/visitor-keys" "4.30.0" + +"@typescript-eslint/types@4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.30.0.tgz#fb9d9b0358426f18687fba82eb0b0f869780204f" + integrity sha512-YKldqbNU9K4WpTNwBqtAerQKLLW/X2A/j4yw92e3ZJYLx+BpKLeheyzoPfzIXHfM8BXfoleTdiYwpsvVPvHrDw== + +"@typescript-eslint/typescript-estree@4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.30.0.tgz#ae57833da72a753f4846cd3053758c771670c2ac" + integrity sha512-6WN7UFYvykr/U0Qgy4kz48iGPWILvYL34xXJxvDQeiRE018B7POspNRVtAZscWntEPZpFCx4hcz/XBT+erenfg== + dependencies: + "@typescript-eslint/types" "4.30.0" + "@typescript-eslint/visitor-keys" "4.30.0" + debug "^4.3.1" + globby "^11.0.3" + is-glob "^4.0.1" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/visitor-keys@4.30.0": + version "4.30.0" + resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.30.0.tgz#a47c6272fc71b0c627d1691f68eaecf4ad71445e" + integrity sha512-pNaaxDt/Ol/+JZwzP7MqWc8PJQTUhZwoee/PVlQ+iYoYhagccvoHnC9e4l+C/krQYYkENxznhVSDwClIbZVxRw== + dependencies: + "@typescript-eslint/types" "4.30.0" + eslint-visitor-keys "^2.0.0" + +"@xmldom/xmldom@^0.7.0": + version "0.7.3" + resolved "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.3.tgz#55de695f77afd3cc0e5bee0aa900040bc63c0f63" + integrity sha512-8XmJdPut2XGtfFcsNsqEsvMUmAwk7xLq7m+E/GcsU9b5qyFFIsiX4Fvnb5UoQ4wo12Wlm07YFJERoyWUYdbIpw== + +JSONStream@^1.0.4: + version "1.3.5" + resolved "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +abab@^2.0.3, abab@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + +abbrev@1: + version "1.1.1" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +acorn-globals@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== + dependencies: + acorn "^7.1.1" + acorn-walk "^7.1.1" + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^7.1.1: + version "7.2.0" + resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn@^7.1.1, acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.2.4: + version "8.4.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz#56c36251fc7cabc7096adc18f05afe814321a28c" + integrity sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA== + +add-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" + integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= + +agent-base@6, agent-base@^6.0.2: + version "6.0.2" + resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +agentkeepalive@^4.1.3: + version "4.1.4" + resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.4.tgz#d928028a4862cb11718e55227872e842a44c945b" + integrity sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ== + dependencies: + debug "^4.1.0" + depd "^1.1.2" + humanize-ms "^1.2.1" + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ajv@^8.0.1: + version "8.6.2" + resolved "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz#2fb45e0e5fcbc0813326c1c3da535d1881bb0571" + integrity sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-align@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" + integrity sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw== + dependencies: + string-width "^3.0.0" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + +anymatch@^3.0.3: + version "3.1.2" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +aproba@^1.0.3: + version "1.2.0" + resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz#4b35c2944f062a8bfcda66410760350fe9ddfc21" + integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-ify@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" + integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= + +array-includes@^3.1.3: + version "3.1.3" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" + integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.2" + get-intrinsic "^1.1.1" + is-string "^1.0.5" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array.prototype.flat@^1.2.4: + version "1.2.4" + resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" + integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + +asn1@~0.2.3: + version "0.2.4" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +available-typed-arrays@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.11.0" + resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== + +babel-jest@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.1.0.tgz#e96ca04554fd32274439869e2b6d24de9d91bc4e" + integrity sha512-6NrdqzaYemALGCuR97QkC/FkFIEBWP5pw5TMJoUHZTVXyOgocujp6A0JE2V6gE0HtqAAv6VKU/nI+OCR1Z4gHA== + dependencies: + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/babel__core" "^7.1.14" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^27.0.6" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-plugin-istanbul@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" + integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^4.0.0" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz#f7c6b3d764af21cb4a2a1ab6870117dbde15b456" + integrity sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz#909ef08e9f24a4679768be2f60a3df0856843f9d" + integrity sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw== + dependencies: + babel-plugin-jest-hoist "^27.0.6" + babel-preset-current-node-syntax "^1.0.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +boxen@^5.0.0: + version "5.0.1" + resolved "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz#657528bdd3f59a772b8279b831f27ec2c744664b" + integrity sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA== + dependencies: + ansi-align "^3.0.0" + camelcase "^6.2.0" + chalk "^4.1.0" + cli-boxes "^2.2.1" + string-width "^4.2.0" + type-fest "^0.20.2" + widest-line "^3.1.0" + wrap-ansi "^7.0.0" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +browser-process-hrtime@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + +browserslist@^4.16.6: + version "4.16.8" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.16.8.tgz#cb868b0b554f137ba6e33de0ecff2eda403c4fb0" + integrity sha512-sc2m9ohR/49sWEbPj14ZSSZqp+kbi16aLao42Hmn3Z8FpjuMaq2xCA2l4zl9ITfyzvnvyE0hcg62YkIGKxgaNQ== + dependencies: + caniuse-lite "^1.0.30001251" + colorette "^1.3.0" + electron-to-chromium "^1.3.811" + escalade "^3.1.1" + node-releases "^1.1.75" + +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= + +cacache@^15.0.5, cacache@^15.2.0: + version "15.3.0" + resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== + dependencies: + "@npmcli/fs" "^1.0.0" + "@npmcli/move-file" "^1.0.1" + chownr "^2.0.0" + fs-minipass "^2.0.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^6.0.0" + minipass "^3.1.1" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.2" + mkdirp "^1.0.3" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.0.2" + unique-filename "^1.1.1" + +cacheable-request@^6.0.0: + version "6.1.0" + resolved "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" + integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== + dependencies: + clone-response "^1.0.2" + get-stream "^5.1.0" + http-cache-semantics "^4.0.0" + keyv "^3.0.0" + lowercase-keys "^2.0.0" + normalize-url "^4.1.0" + responselike "^1.0.2" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase-keys@^6.2.2: + version "6.2.2" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== + dependencies: + camelcase "^5.3.1" + map-obj "^4.0.0" + quick-lru "^4.0.1" + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.2.0: + version "6.2.0" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" + integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== + +caniuse-lite@^1.0.30001251: + version "1.0.30001252" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001252.tgz#cb16e4e3dafe948fc4a9bb3307aea054b912019a" + integrity sha512-I56jhWDGMtdILQORdusxBOH+Nl/KgQSdDmpJezYddnAkVOmnoU8zwjTV9xAjMIYxr0iPreEAVylCGcmHCjfaOw== + +case@^1.6.3: + version "1.6.3" + resolved "https://registry.npmjs.org/case/-/case-1.6.3.tgz#0a4386e3e9825351ca2e6216c60467ff5f1ea1c9" + integrity sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ== + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +chalk@^2.0.0, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +charenc@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc= + +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +ci-info@^3.1.1: + version "3.2.0" + resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6" + integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== + +cint@^8.2.1: + version "8.2.1" + resolved "https://registry.npmjs.org/cint/-/cint-8.2.1.tgz#70386b1b48e2773d0d63166a55aff94ef4456a12" + integrity sha1-cDhrG0jidz0NYxZqVa/5TvRFahI= + +cjs-module-lexer@^1.0.0: + version "1.2.2" + resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-boxes@^2.2.1: + version "2.2.1" + resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== + +cli-table@^0.3.6: + version "0.3.6" + resolved "https://registry.npmjs.org/cli-table/-/cli-table-0.3.6.tgz#e9d6aa859c7fe636981fd3787378c2a20bce92fc" + integrity sha512-ZkNZbnZjKERTY5NwC2SeMeLeifSPq/pubeRoTpdr3WchLlnZg6hEgvHkK5zL7KNFdd9PmHN8lxrENUwI3cE8vQ== + dependencies: + colors "1.0.3" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +clone-response@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + dependencies: + mimic-response "^1.0.0" + +clone@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + +codemaker@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/codemaker/-/codemaker-1.34.0.tgz#dba5dbd9ca6d1d9d9af64d64f17bde45882b0aa0" + integrity sha512-NHwy6TxMh21ygch7+K/OwtdN3BjxhAMoP5QXqzkkR0TDP2kEdKCNc31EChz3Xcmxk1qkdJN5CpXMnLjo7f07sQ== + dependencies: + camelcase "^6.2.0" + decamelize "^5.0.0" + fs-extra "^9.1.0" + +collect-v8-coverage@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colorette@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz#ff45d2f0edb244069d3b772adeb04fed38d0a0af" + integrity sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w== + +colors@1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" + integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= + +colors@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +commander@^6.2.1: + version "6.2.1" + resolved "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + +commonmark@^0.30.0: + version "0.30.0" + resolved "https://registry.npmjs.org/commonmark/-/commonmark-0.30.0.tgz#38811dc7bbf0f59d277ae09054d4d73a332f2e45" + integrity sha512-j1yoUo4gxPND1JWV9xj5ELih0yMv1iCWDG6eEQIPLSWLxzCXiFoyS7kvB+WwU+tZMf4snwJMMtaubV0laFpiBA== + dependencies: + entities "~2.0" + mdurl "~1.0.1" + minimist ">=1.2.2" + string.prototype.repeat "^0.2.0" + +compare-func@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" + integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== + dependencies: + array-ify "^1.0.0" + dot-prop "^5.1.0" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + +configstore@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" + integrity sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA== + dependencies: + dot-prop "^5.2.0" + graceful-fs "^4.1.2" + make-dir "^3.0.0" + unique-string "^2.0.0" + write-file-atomic "^3.0.0" + xdg-basedir "^4.0.0" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +constructs@3.3.138, constructs@^3.3.69: + version "3.3.138" + resolved "https://registry.npmjs.org/constructs/-/constructs-3.3.138.tgz#04e61fc3af11f008ccb2c7d88af408ac7f88cff8" + integrity sha512-Q353/8IuHuQ7syq4MJQVFSnrWSY139QkpMz2dpGMwf4ins26b7DPXsVknP0KuVK+iwsTxnv1wDVxXOmyxAVuIA== + +conventional-changelog-angular@^5.0.12: + version "5.0.12" + resolved "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz#c979b8b921cbfe26402eb3da5bbfda02d865a2b9" + integrity sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== + dependencies: + compare-func "^2.0.0" + q "^1.5.1" + +conventional-changelog-atom@^2.0.8: + version "2.0.8" + resolved "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-2.0.8.tgz#a759ec61c22d1c1196925fca88fe3ae89fd7d8de" + integrity sha512-xo6v46icsFTK3bb7dY/8m2qvc8sZemRgdqLb/bjpBsH2UyOS8rKNTgcb5025Hri6IpANPApbXMg15QLb1LJpBw== + dependencies: + q "^1.5.1" + +conventional-changelog-codemirror@^2.0.8: + version "2.0.8" + resolved "https://registry.npmjs.org/conventional-changelog-codemirror/-/conventional-changelog-codemirror-2.0.8.tgz#398e9530f08ce34ec4640af98eeaf3022eb1f7dc" + integrity sha512-z5DAsn3uj1Vfp7po3gpt2Boc+Bdwmw2++ZHa5Ak9k0UKsYAO5mH1UBTN0qSCuJZREIhX6WU4E1p3IW2oRCNzQw== + dependencies: + q "^1.5.1" + +conventional-changelog-config-spec@2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/conventional-changelog-config-spec/-/conventional-changelog-config-spec-2.1.0.tgz#874a635287ef8b581fd8558532bf655d4fb59f2d" + integrity sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ== + +conventional-changelog-conventionalcommits@4.5.0: + version "4.5.0" + resolved "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.5.0.tgz#a02e0b06d11d342fdc0f00c91d78265ed0bc0a62" + integrity sha512-buge9xDvjjOxJlyxUnar/+6i/aVEVGA7EEh4OafBCXPlLUQPGbRUBhBUveWRxzvR8TEjhKEP4BdepnpG2FSZXw== + dependencies: + compare-func "^2.0.0" + lodash "^4.17.15" + q "^1.5.1" + +conventional-changelog-conventionalcommits@^4.5.0: + version "4.6.0" + resolved "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.0.tgz#7fc17211dbca160acf24687bd2fdd5fd767750eb" + integrity sha512-sj9tj3z5cnHaSJCYObA9nISf7eq/YjscLPoq6nmew4SiOjxqL2KRpK20fjnjVbpNDjJ2HR3MoVcWKXwbVvzS0A== + dependencies: + compare-func "^2.0.0" + lodash "^4.17.15" + q "^1.5.1" + +conventional-changelog-core@^4.2.1: + version "4.2.3" + resolved "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-4.2.3.tgz#ce44d4bbba4032e3dc14c00fcd5b53fc00b66433" + integrity sha512-MwnZjIoMRL3jtPH5GywVNqetGILC7g6RQFvdb8LRU/fA/338JbeWAku3PZ8yQ+mtVRViiISqJlb0sOz0htBZig== + dependencies: + add-stream "^1.0.0" + conventional-changelog-writer "^5.0.0" + conventional-commits-parser "^3.2.0" + dateformat "^3.0.0" + get-pkg-repo "^4.0.0" + git-raw-commits "^2.0.8" + git-remote-origin-url "^2.0.0" + git-semver-tags "^4.1.1" + lodash "^4.17.15" + normalize-package-data "^3.0.0" + q "^1.5.1" + read-pkg "^3.0.0" + read-pkg-up "^3.0.0" + through2 "^4.0.0" + +conventional-changelog-ember@^2.0.9: + version "2.0.9" + resolved "https://registry.npmjs.org/conventional-changelog-ember/-/conventional-changelog-ember-2.0.9.tgz#619b37ec708be9e74a220f4dcf79212ae1c92962" + integrity sha512-ulzIReoZEvZCBDhcNYfDIsLTHzYHc7awh+eI44ZtV5cx6LVxLlVtEmcO+2/kGIHGtw+qVabJYjdI5cJOQgXh1A== + dependencies: + q "^1.5.1" + +conventional-changelog-eslint@^3.0.9: + version "3.0.9" + resolved "https://registry.npmjs.org/conventional-changelog-eslint/-/conventional-changelog-eslint-3.0.9.tgz#689bd0a470e02f7baafe21a495880deea18b7cdb" + integrity sha512-6NpUCMgU8qmWmyAMSZO5NrRd7rTgErjrm4VASam2u5jrZS0n38V7Y9CzTtLT2qwz5xEChDR4BduoWIr8TfwvXA== + dependencies: + q "^1.5.1" + +conventional-changelog-express@^2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/conventional-changelog-express/-/conventional-changelog-express-2.0.6.tgz#420c9d92a347b72a91544750bffa9387665a6ee8" + integrity sha512-SDez2f3iVJw6V563O3pRtNwXtQaSmEfTCaTBPCqn0oG0mfkq0rX4hHBq5P7De2MncoRixrALj3u3oQsNK+Q0pQ== + dependencies: + q "^1.5.1" + +conventional-changelog-jquery@^3.0.11: + version "3.0.11" + resolved "https://registry.npmjs.org/conventional-changelog-jquery/-/conventional-changelog-jquery-3.0.11.tgz#d142207400f51c9e5bb588596598e24bba8994bf" + integrity sha512-x8AWz5/Td55F7+o/9LQ6cQIPwrCjfJQ5Zmfqi8thwUEKHstEn4kTIofXub7plf1xvFA2TqhZlq7fy5OmV6BOMw== + dependencies: + q "^1.5.1" + +conventional-changelog-jshint@^2.0.9: + version "2.0.9" + resolved "https://registry.npmjs.org/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.9.tgz#f2d7f23e6acd4927a238555d92c09b50fe3852ff" + integrity sha512-wMLdaIzq6TNnMHMy31hql02OEQ8nCQfExw1SE0hYL5KvU+JCTuPaDO+7JiogGT2gJAxiUGATdtYYfh+nT+6riA== + dependencies: + compare-func "^2.0.0" + q "^1.5.1" + +conventional-changelog-preset-loader@^2.3.4: + version "2.3.4" + resolved "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" + integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== + +conventional-changelog-writer@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-5.0.0.tgz#c4042f3f1542f2f41d7d2e0d6cad23aba8df8eec" + integrity sha512-HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g== + dependencies: + conventional-commits-filter "^2.0.7" + dateformat "^3.0.0" + handlebars "^4.7.6" + json-stringify-safe "^5.0.1" + lodash "^4.17.15" + meow "^8.0.0" + semver "^6.0.0" + split "^1.0.0" + through2 "^4.0.0" + +conventional-changelog@3.1.24: + version "3.1.24" + resolved "https://registry.npmjs.org/conventional-changelog/-/conventional-changelog-3.1.24.tgz#ebd180b0fd1b2e1f0095c4b04fd088698348a464" + integrity sha512-ed6k8PO00UVvhExYohroVPXcOJ/K1N0/drJHx/faTH37OIZthlecuLIRX/T6uOp682CAoVoFpu+sSEaeuH6Asg== + dependencies: + conventional-changelog-angular "^5.0.12" + conventional-changelog-atom "^2.0.8" + conventional-changelog-codemirror "^2.0.8" + conventional-changelog-conventionalcommits "^4.5.0" + conventional-changelog-core "^4.2.1" + conventional-changelog-ember "^2.0.9" + conventional-changelog-eslint "^3.0.9" + conventional-changelog-express "^2.0.6" + conventional-changelog-jquery "^3.0.11" + conventional-changelog-jshint "^2.0.9" + conventional-changelog-preset-loader "^2.3.4" + +conventional-commits-filter@^2.0.7: + version "2.0.7" + resolved "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" + integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== + dependencies: + lodash.ismatch "^4.4.0" + modify-values "^1.0.0" + +conventional-commits-parser@^3.2.0: + version "3.2.1" + resolved "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-3.2.1.tgz#ba44f0b3b6588da2ee9fd8da508ebff50d116ce2" + integrity sha512-OG9kQtmMZBJD/32NEw5IhN5+HnBqVjy03eC+I71I0oQRFA5rOgA4OtPOYG7mz1GkCfCNxn3gKIX8EiHJYuf1cA== + dependencies: + JSONStream "^1.0.4" + is-text-path "^1.0.1" + lodash "^4.17.15" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" + trim-off-newlines "^1.0.0" + +conventional-recommended-bump@6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" + integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== + dependencies: + concat-stream "^2.0.0" + conventional-changelog-preset-loader "^2.3.4" + conventional-commits-filter "^2.0.7" + conventional-commits-parser "^3.2.0" + git-raw-commits "^2.0.8" + git-semver-tags "^4.1.1" + meow "^8.0.0" + q "^1.5.1" + +convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: + version "1.8.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== + dependencies: + safe-buffer "~5.1.1" + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypt@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs= + +crypto-random-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" + integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== + +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + +dargs@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" + integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +data-urls@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + +date-format@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz#31d5b5ea211cf5fd764cd38baf9d033df7e125cf" + integrity sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA== + +date-format@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz#eb8780365c7d2b1511078fb491e6479780f3ad95" + integrity sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w== + +dateformat@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== + +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: + version "4.3.2" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + +debug@^2.6.9: + version "2.6.9" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +decamelize-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" + integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0, decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== + +decamelize@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-5.0.0.tgz#88358157b010ef133febfd27c18994bd80c6215b" + integrity sha512-U75DcT5hrio3KNtvdULAWnLiAPbFUC4191ldxMmj4FA/mRuBnmDwU0boNfPyFRhnan+Jm+haLeSn3P0afcBn4w== + +decimal.js@^10.2.1: + version "10.3.1" + resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" + integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== + +decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + dependencies: + mimic-response "^1.0.0" + +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + +deep-equal@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.5.tgz#55cd2fe326d83f9cbf7261ef0e060b3f724c5cb9" + integrity sha512-nPiRgmbAtm1a3JsnLCf6/SLfXcjyN5v8L1TXzdCmHrXJ4hx+gW/w1YCcn7z8gJtSiDArZCgYtbao3QqLm/N1Sw== + dependencies: + call-bind "^1.0.0" + es-get-iterator "^1.1.1" + get-intrinsic "^1.0.1" + is-arguments "^1.0.4" + is-date-object "^1.0.2" + is-regex "^1.1.1" + isarray "^2.0.5" + object-is "^1.1.4" + object-keys "^1.1.1" + object.assign "^4.1.2" + regexp.prototype.flags "^1.3.0" + side-channel "^1.0.3" + which-boxed-primitive "^1.0.1" + which-collection "^1.0.1" + which-typed-array "^1.1.2" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deep-is@^0.1.3, deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +deepmerge@^4.2.2: + version "4.2.2" + resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== + +defer-to-connect@^1.0.1: + version "1.1.3" + resolved "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" + integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== + +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +detect-indent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= + +detect-indent@^6.0.0: + version "6.1.0" + resolved "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== + +detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= + +detect-newline@^3.0.0, detect-newline@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +diff-sequences@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz#3305cb2e55a033924054695cc66019fd7f8e5723" + integrity sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ== + +diff@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" + integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + +dot-prop@^5.1.0, dot-prop@^5.2.0: + version "5.3.0" + resolved "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== + dependencies: + is-obj "^2.0.0" + +dotgitignore@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/dotgitignore/-/dotgitignore-2.1.0.tgz#a4b15a4e4ef3cf383598aaf1dfa4a04bcc089b7b" + integrity sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA== + dependencies: + find-up "^3.0.0" + minimatch "^3.0.4" + +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +electron-to-chromium@^1.3.811: + version "1.3.824" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.824.tgz#9f85cc826c70b12180009d461e3b19c8121a56d2" + integrity sha512-Fk+5aD0HDi9i9ZKt9n2VPOZO1dQy7PV++hz2wJ/KIn+CvVfu4fny39squHtyVDPuHNuoJGAZIbuReEklqYIqfA== + +emittery@^0.8.1: + version "0.8.1" + resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" + integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encoding@^0.1.12: + version "0.1.13" + resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +entities@~2.0: + version "2.0.3" + resolved "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" + integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== + +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.18.0-next.1, es-abstract@^1.18.0-next.2, es-abstract@^1.18.2, es-abstract@^1.18.5: + version "1.18.5" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.5.tgz#9b10de7d4c206a3581fd5b2124233e04db49ae19" + integrity sha512-DDggyJLoS91CkJjgauM5c0yZMjiD1uK3KcaCeAmffGwZ+ODWzOkPN4QwRbsK5DOFf06fywmyLci3ZD8jLGhVYA== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + is-callable "^1.2.3" + is-negative-zero "^2.0.1" + is-regex "^1.1.3" + is-string "^1.0.6" + object-inspect "^1.11.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" + +es-get-iterator@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz#9234c54aba713486d7ebde0220864af5e2b283f7" + integrity sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.0" + has-symbols "^1.0.1" + is-arguments "^1.1.0" + is-map "^2.0.2" + is-set "^2.0.2" + is-string "^1.0.5" + isarray "^2.0.5" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-goat@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" + integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + dependencies: + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +eslint-import-resolver-node@^0.3.6: + version "0.3.6" + resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz#4048b958395da89668252001dbd9eca6b83bacbd" + integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw== + dependencies: + debug "^3.2.7" + resolve "^1.20.0" + +eslint-import-resolver-typescript@^2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.4.0.tgz#ec1e7063ebe807f0362a7320543aaed6fe1100e1" + integrity sha512-useJKURidCcldRLCNKWemr1fFQL1SzB3G4a0li6lFGvlc5xGe1hY343bvG07cbpCzPuM/lK19FIJB3XGFSkplA== + dependencies: + debug "^4.1.1" + glob "^7.1.6" + is-glob "^4.0.1" + resolve "^1.17.0" + tsconfig-paths "^3.9.0" + +eslint-module-utils@^2.6.2: + version "2.6.2" + resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.2.tgz#94e5540dd15fe1522e8ffa3ec8db3b7fa7e7a534" + integrity sha512-QG8pcgThYOuqxupd06oYTZoNOGaUdTY1PqK+oS6ElF6vs4pBdk/aYxFVQQXzcrAqp9m7cl7lb2ubazX+g16k2Q== + dependencies: + debug "^3.2.7" + pkg-dir "^2.0.0" + +eslint-plugin-import@^2.24.2: + version "2.24.2" + resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.24.2.tgz#2c8cd2e341f3885918ee27d18479910ade7bb4da" + integrity sha512-hNVtyhiEtZmpsabL4neEj+6M5DCLgpYyG9nzJY8lZQeQXEn5UPW1DpUdsMHMXsq98dbNm7nt1w9ZMSVpfJdi8Q== + dependencies: + array-includes "^3.1.3" + array.prototype.flat "^1.2.4" + debug "^2.6.9" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.6" + eslint-module-utils "^2.6.2" + find-up "^2.0.0" + has "^1.0.3" + is-core-module "^2.6.0" + minimatch "^3.0.4" + object.values "^1.1.4" + pkg-up "^2.0.0" + read-pkg-up "^3.0.0" + resolve "^1.20.0" + tsconfig-paths "^3.11.0" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0, esprima@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" + strip-final-newline "^2.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + +expect@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/expect/-/expect-27.1.0.tgz#380de0abb3a8f2299c4c6c66bbe930483b5dba9b" + integrity sha512-9kJngV5hOJgkFil4F/uXm3hVBubUK2nERVfvqNNwxxuW8ZOUwSTTSysgfzckYtv/LBzj/LJXbiAF7okHCXgdug== + dependencies: + "@jest/types" "^27.1.0" + ansi-styles "^5.0.0" + jest-get-type "^27.0.6" + jest-matcher-utils "^27.1.0" + jest-message-util "^27.1.0" + jest-regex-util "^27.0.6" + +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-glob@^3.1.1: + version "3.2.7" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.npmjs.org/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + +fastq@^1.6.0: + version "1.12.0" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.12.0.tgz#ed7b6ab5d62393fb2cc591c853652a5c318bf794" + integrity sha512-VNX0QkHK3RsXVKr9KrlUv/FoTa0NdbYoHHl7uXHv2rzyHSlxjdNAKug2twd9luJxpcyNeAgf5iPPMutJO67Dfg== + dependencies: + reusify "^1.0.4" + +fb-watchman@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" + integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + dependencies: + bser "2.1.1" + +figgy-pudding@^3.5.1: + version "3.5.2" + resolved "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" + integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== + +figures@^3.1.0: + version "3.2.0" + resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== + dependencies: + escape-string-regexp "^1.0.5" + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +find-up@5.0.0, find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== + +flatted@^3.1.0: + version "3.2.2" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz#64bfed5cb68fe3ca78b3eb214ad97b63bedce561" + integrity sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA== + +foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + integrity sha1-C+4AUBiusmDQo6865ljdATbsG5k= + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +fp-and-or@^0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/fp-and-or/-/fp-and-or-0.1.3.tgz#e6fba83872a5853a56b3ebdf8d3167f5dfca1882" + integrity sha512-wJaE62fLaB3jCYvY2ZHjZvmKK2iiLiiehX38rz5QZxtdN8fVPJDeZUiVvJrHStdTc+23LHlyZuSEKgFc0pxi2g== + +fs-access@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + integrity sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o= + dependencies: + null-check "^1.0.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-extra@^9.1.0: + version "9.1.0" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs-minipass@^2.0.0, fs-minipass@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@^2.3.2: + version "2.3.2" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-pkg-repo@^4.0.0: + version "4.1.2" + resolved "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.1.2.tgz#c4ffd60015cf091be666a0212753fc158f01a4c0" + integrity sha512-/FjamZL9cBYllEbReZkxF2IMh80d8TJoC4e3bmLNif8ibHw95aj0N/tzqK0kZz9eU/3w3dL6lF4fnnX/sDdW3A== + dependencies: + "@hutson/parse-repository-url" "^3.0.0" + hosted-git-info "^4.0.0" + meow "^7.0.0" + through2 "^2.0.0" + +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + +get-stream@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +git-raw-commits@^2.0.8: + version "2.0.10" + resolved "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" + integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== + dependencies: + dargs "^7.0.0" + lodash "^4.17.15" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" + +git-remote-origin-url@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + integrity sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= + dependencies: + gitconfiglocal "^1.0.0" + pify "^2.3.0" + +git-semver-tags@^4.0.0, git-semver-tags@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" + integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== + dependencies: + meow "^8.0.0" + semver "^6.0.0" + +gitconfiglocal@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + integrity sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= + dependencies: + ini "^1.3.2" + +glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-promise@^3.4.0: + version "3.4.0" + resolved "https://registry.npmjs.org/glob-promise/-/glob-promise-3.4.0.tgz#b6b8f084504216f702dc2ce8c9bc9ac8866fdb20" + integrity sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw== + dependencies: + "@types/glob" "*" + +glob@^7, glob@^7.0.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7: + version "7.1.7" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +global-dirs@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" + integrity sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA== + dependencies: + ini "2.0.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +globals@^13.6.0, globals@^13.9.0: + version "13.11.0" + resolved "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" + integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== + dependencies: + type-fest "^0.20.2" + +globby@^11.0.3, globby@^11.0.4: + version "11.0.4" + resolved "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" + integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + +got@^9.6.0: + version "9.6.0" + resolved "https://registry.npmjs.org/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" + integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== + dependencies: + "@sindresorhus/is" "^0.14.0" + "@szmarczak/http-timer" "^1.1.2" + cacheable-request "^6.0.0" + decompress-response "^3.3.0" + duplexer3 "^0.1.4" + get-stream "^4.1.0" + lowercase-keys "^1.0.1" + mimic-response "^1.0.1" + p-cancelable "^1.0.0" + to-readable-stream "^1.0.0" + url-parse-lax "^3.0.0" + +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.3, graceful-fs@^4.2.4: + version "4.2.8" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + +handlebars@^4.7.6: + version "4.7.7" + resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" + integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== + dependencies: + minimist "^1.2.5" + neo-async "^2.6.0" + source-map "^0.6.1" + wordwrap "^1.0.0" + optionalDependencies: + uglify-js "^3.1.4" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== + +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + +has-yarn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" + integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +hosted-git-info@^4.0.0, hosted-git-info@^4.0.1, hosted-git-info@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" + integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== + dependencies: + lru-cache "^6.0.0" + +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + dependencies: + ms "^2.0.0" + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +iconv-lite@^0.6.2: + version "0.6.3" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +ignore-walk@^3.0.3: + version "3.0.4" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" + integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== + dependencies: + minimatch "^3.0.4" + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.4, ignore@^5.1.8: + version "5.1.8" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-lazy@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" + integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + +import-local@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" + integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.3, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +ini@2.0.0, ini@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" + integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== + +ini@^1.3.2, ini@^1.3.5, ini@~1.3.0: + version "1.3.8" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + +internal-slot@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + +interpret@^1.0.0: + version "1.4.0" + resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== + +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +is-arguments@^1.0.4, is-arguments@^1.1.0: + version "1.1.1" + resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-buffer@~1.1.6: + version "1.1.6" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-callable@^1.1.4, is-callable@^1.2.3: + version "1.2.4" + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-ci@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz#c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994" + integrity sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ== + dependencies: + ci-info "^3.1.1" + +is-core-module@^2.2.0, is-core-module@^2.5.0, is-core-module@^2.6.0: + version "2.6.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.6.0.tgz#d7553b2526fe59b92ba3e40c8df757ec8a709e19" + integrity sha512-wShG8vs60jKfPWpF2KZRaAtvt3a20OAn7+IJ6hLPECpSABLcKtFKTTI4ZtH5QcBruBHlq+WsdHWyz0BCZW7svQ== + dependencies: + has "^1.0.3" + +is-date-object@^1.0.1, is-date-object@^1.0.2: + version "1.0.5" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-installed-globally@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" + integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== + dependencies: + global-dirs "^3.0.0" + is-path-inside "^3.0.2" + +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= + +is-map@^2.0.1, is-map@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz#00922db8c9bf73e81b7a335827bc2a43f2b91127" + integrity sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg== + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-npm@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8" + integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== + +is-number-object@^1.0.4: + version "1.0.6" + resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + dependencies: + has-tostringtag "^1.0.0" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== + +is-path-inside@^3.0.2: + version "3.0.3" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" + integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + +is-regex@^1.1.1, is-regex@^1.1.3: + version "1.1.4" + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-set@^2.0.1, is-set@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz#90755fa4c2562dc1c5d4024760d6119b94ca18ec" + integrity sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-string@^1.0.5, is-string@^1.0.6: + version "1.0.7" + resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +is-text-path@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" + integrity sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= + dependencies: + text-extensions "^1.0.0" + +is-typed-array@^1.1.7: + version "1.1.8" + resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz#cbaa6585dc7db43318bc5b89523ea384a6f65e79" + integrity sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + es-abstract "^1.18.5" + foreach "^2.0.5" + has-tostringtag "^1.0.0" + +is-typedarray@^1.0.0, is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-weakmap@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz#5008b59bdc43b698201d18f62b37b2ca243e8cf2" + integrity sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA== + +is-weakset@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz#e9a0af88dbd751589f5e50d80f4c98b780884f83" + integrity sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw== + +is-yarn-global@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" + integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +istanbul-lib-coverage@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" + integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" + integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" + integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.1.0.tgz#42da6ea00f06274172745729d55f42b60a9dffe0" + integrity sha512-eRcb13TfQw0xiV2E98EmiEgs9a5uaBIqJChyl0G7jR9fCIvGjXovnDS6Zbku3joij4tXYcSK4SE1AXqOlUxjWg== + dependencies: + "@jest/types" "^27.1.0" + execa "^5.0.0" + throat "^6.0.1" + +jest-circus@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-27.1.0.tgz#24c280c90a625ea57da20ee231d25b1621979a57" + integrity sha512-6FWtHs3nZyZlMBhRf1wvAC5CirnflbGJAY1xssSAnERLiiXQRH+wY2ptBVtXjX4gz4AA2EwRV57b038LmifRbA== + dependencies: + "@jest/environment" "^27.1.0" + "@jest/test-result" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + dedent "^0.7.0" + expect "^27.1.0" + is-generator-fn "^2.0.0" + jest-each "^27.1.0" + jest-matcher-utils "^27.1.0" + jest-message-util "^27.1.0" + jest-runtime "^27.1.0" + jest-snapshot "^27.1.0" + jest-util "^27.1.0" + pretty-format "^27.1.0" + slash "^3.0.0" + stack-utils "^2.0.3" + throat "^6.0.1" + +jest-cli@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.1.0.tgz#118438e4d11cf6fb66cb2b2eb5778817eab3daeb" + integrity sha512-h6zPUOUu+6oLDrXz0yOWY2YXvBLk8gQinx4HbZ7SF4V3HzasQf+ncoIbKENUMwXyf54/6dBkYXvXJos+gOHYZw== + dependencies: + "@jest/core" "^27.1.0" + "@jest/test-result" "^27.1.0" + "@jest/types" "^27.1.0" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + jest-config "^27.1.0" + jest-util "^27.1.0" + jest-validate "^27.1.0" + prompts "^2.0.1" + yargs "^16.0.3" + +jest-config@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.1.0.tgz#e6826e2baaa34c07c3839af86466870e339d9ada" + integrity sha512-GMo7f76vMYUA3b3xOdlcKeKQhKcBIgurjERO2hojo0eLkKPGcw7fyIoanH+m6KOP2bLad+fGnF8aWOJYxzNPeg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^27.1.0" + "@jest/types" "^27.1.0" + babel-jest "^27.1.0" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + is-ci "^3.0.0" + jest-circus "^27.1.0" + jest-environment-jsdom "^27.1.0" + jest-environment-node "^27.1.0" + jest-get-type "^27.0.6" + jest-jasmine2 "^27.1.0" + jest-regex-util "^27.0.6" + jest-resolve "^27.1.0" + jest-runner "^27.1.0" + jest-util "^27.1.0" + jest-validate "^27.1.0" + micromatch "^4.0.4" + pretty-format "^27.1.0" + +jest-diff@^27.0.0, jest-diff@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-27.1.0.tgz#c7033f25add95e2218f3c7f4c3d7b634ab6b3cd2" + integrity sha512-rjfopEYl58g/SZTsQFmspBODvMSytL16I+cirnScWTLkQVXYVZfxm78DFfdIIXc05RCYuGjxJqrdyG4PIFzcJg== + dependencies: + chalk "^4.0.0" + diff-sequences "^27.0.6" + jest-get-type "^27.0.6" + pretty-format "^27.1.0" + +jest-docblock@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.0.6.tgz#cc78266acf7fe693ca462cbbda0ea4e639e4e5f3" + integrity sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA== + dependencies: + detect-newline "^3.0.0" + +jest-each@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.1.0.tgz#36ac75f7aeecb3b8da2a8e617ccb30a446df408c" + integrity sha512-K/cNvQlmDqQMRHF8CaQ0XPzCfjP5HMJc2bIJglrIqI9fjwpNqITle63IWE+wq4p+3v+iBgh7Wq0IdGpLx5xjDg== + dependencies: + "@jest/types" "^27.1.0" + chalk "^4.0.0" + jest-get-type "^27.0.6" + jest-util "^27.1.0" + pretty-format "^27.1.0" + +jest-environment-jsdom@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.1.0.tgz#5fb3eb8a67e02e6cc623640388d5f90e33075f18" + integrity sha512-JbwOcOxh/HOtsj56ljeXQCUJr3ivnaIlM45F5NBezFLVYdT91N5UofB1ux2B1CATsQiudcHdgTaeuqGXJqjJYQ== + dependencies: + "@jest/environment" "^27.1.0" + "@jest/fake-timers" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + jest-mock "^27.1.0" + jest-util "^27.1.0" + jsdom "^16.6.0" + +jest-environment-node@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.1.0.tgz#feea6b765f1fd4582284d4f1007df2b0a8d15b7f" + integrity sha512-JIyJ8H3wVyM4YCXp7njbjs0dIT87yhGlrXCXhDKNIg1OjurXr6X38yocnnbXvvNyqVTqSI4M9l+YfPKueqL1lw== + dependencies: + "@jest/environment" "^27.1.0" + "@jest/fake-timers" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + jest-mock "^27.1.0" + jest-util "^27.1.0" + +jest-get-type@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.0.6.tgz#0eb5c7f755854279ce9b68a9f1a4122f69047cfe" + integrity sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg== + +jest-haste-map@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.1.0.tgz#a39f456823bd6a74e3c86ad25f6fa870428326bf" + integrity sha512-7mz6LopSe+eA6cTFMf10OfLLqRoIPvmMyz5/OnSXnHO7hB0aDP1iIeLWCXzAcYU5eIJVpHr12Bk9yyq2fTW9vg== + dependencies: + "@jest/types" "^27.1.0" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^27.0.6" + jest-serializer "^27.0.6" + jest-util "^27.1.0" + jest-worker "^27.1.0" + micromatch "^4.0.4" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.3.2" + +jest-jasmine2@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.1.0.tgz#324a3de0b2ee20d238b2b5b844acc4571331a206" + integrity sha512-Z/NIt0wBDg3przOW2FCWtYjMn3Ip68t0SL60agD/e67jlhTyV3PIF8IzT9ecwqFbeuUSO2OT8WeJgHcalDGFzQ== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^27.1.0" + "@jest/source-map" "^27.0.6" + "@jest/test-result" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^27.1.0" + is-generator-fn "^2.0.0" + jest-each "^27.1.0" + jest-matcher-utils "^27.1.0" + jest-message-util "^27.1.0" + jest-runtime "^27.1.0" + jest-snapshot "^27.1.0" + jest-util "^27.1.0" + pretty-format "^27.1.0" + throat "^6.0.1" + +jest-junit@^12: + version "12.2.0" + resolved "https://registry.npmjs.org/jest-junit/-/jest-junit-12.2.0.tgz#cff7f9516e84f8e30f6bdea04cd84db6b095a376" + integrity sha512-ecGzF3KEQwLbMP5xMO7wqmgmyZlY/5yWDvgE/vFa+/uIT0KsU5nluf0D2fjIlOKB+tb6DiuSSpZuGpsmwbf7Fw== + dependencies: + mkdirp "^1.0.4" + strip-ansi "^5.2.0" + uuid "^8.3.2" + xml "^1.0.1" + +jest-leak-detector@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.1.0.tgz#fe7eb633c851e06280ec4dd248067fe232c00a79" + integrity sha512-oHvSkz1E80VyeTKBvZNnw576qU+cVqRXUD3/wKXh1zpaki47Qty2xeHg2HKie9Hqcd2l4XwircgNOWb/NiGqdA== + dependencies: + jest-get-type "^27.0.6" + pretty-format "^27.1.0" + +jest-matcher-utils@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.1.0.tgz#68afda0885db1f0b9472ce98dc4c535080785301" + integrity sha512-VmAudus2P6Yt/JVBRdTPFhUzlIN8DYJd+et5Rd9QDsO/Z82Z4iwGjo43U8Z+PTiz8CBvKvlb6Fh3oKy39hykkQ== + dependencies: + chalk "^4.0.0" + jest-diff "^27.1.0" + jest-get-type "^27.0.6" + pretty-format "^27.1.0" + +jest-message-util@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.1.0.tgz#e77692c84945d1d10ef00afdfd3d2c20bd8fb468" + integrity sha512-Eck8NFnJ5Sg36R9XguD65cf2D5+McC+NF5GIdEninoabcuoOfWrID5qJhufq5FB0DRKoiyxB61hS7MKoMD0trQ== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^27.1.0" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.4" + pretty-format "^27.1.0" + slash "^3.0.0" + stack-utils "^2.0.3" + +jest-mock@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.1.0.tgz#7ca6e4d09375c071661642d1c14c4711f3ab4b4f" + integrity sha512-iT3/Yhu7DwAg/0HvvLCqLvrTKTRMyJlrrfJYWzuLSf9RCAxBoIXN3HoymZxMnYsC3eD8ewGbUa9jUknwBenx2w== + dependencies: + "@jest/types" "^27.1.0" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + +jest-regex-util@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5" + integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== + +jest-resolve-dependencies@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.1.0.tgz#d32ea4a2c82f76410f6157d0ec6cde24fbff2317" + integrity sha512-Kq5XuDAELuBnrERrjFYEzu/A+i2W7l9HnPWqZEeKGEQ7m1R+6ndMbdXCVCx29Se1qwLZLgvoXwinB3SPIaitMQ== + dependencies: + "@jest/types" "^27.1.0" + jest-regex-util "^27.0.6" + jest-snapshot "^27.1.0" + +jest-resolve@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.1.0.tgz#bb22303c9e240cccdda28562e3c6fbcc6a23ac86" + integrity sha512-TXvzrLyPg0vLOwcWX38ZGYeEztSEmW+cQQKqc4HKDUwun31wsBXwotRlUz4/AYU/Fq4GhbMd/ileIWZEtcdmIA== + dependencies: + "@jest/types" "^27.1.0" + chalk "^4.0.0" + escalade "^3.1.1" + graceful-fs "^4.2.4" + jest-haste-map "^27.1.0" + jest-pnp-resolver "^1.2.2" + jest-util "^27.1.0" + jest-validate "^27.1.0" + resolve "^1.20.0" + slash "^3.0.0" + +jest-runner@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.1.0.tgz#1b28d114fb3b67407b8354c9385d47395e8ff83f" + integrity sha512-ZWPKr9M5w5gDplz1KsJ6iRmQaDT/yyAFLf18fKbb/+BLWsR1sCNC2wMT0H7pP3gDcBz0qZ6aJraSYUNAGSJGaw== + dependencies: + "@jest/console" "^27.1.0" + "@jest/environment" "^27.1.0" + "@jest/test-result" "^27.1.0" + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.8.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-docblock "^27.0.6" + jest-environment-jsdom "^27.1.0" + jest-environment-node "^27.1.0" + jest-haste-map "^27.1.0" + jest-leak-detector "^27.1.0" + jest-message-util "^27.1.0" + jest-resolve "^27.1.0" + jest-runtime "^27.1.0" + jest-util "^27.1.0" + jest-worker "^27.1.0" + source-map-support "^0.5.6" + throat "^6.0.1" + +jest-runtime@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.1.0.tgz#1a98d984ffebc16a0b4f9eaad8ab47c00a750cf5" + integrity sha512-okiR2cpGjY0RkWmUGGado6ETpFOi9oG3yV0CioYdoktkVxy5Hv0WRLWnJFuArSYS8cHMCNcceUUMGiIfgxCO9A== + dependencies: + "@jest/console" "^27.1.0" + "@jest/environment" "^27.1.0" + "@jest/fake-timers" "^27.1.0" + "@jest/globals" "^27.1.0" + "@jest/source-map" "^27.0.6" + "@jest/test-result" "^27.1.0" + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + cjs-module-lexer "^1.0.0" + collect-v8-coverage "^1.0.0" + execa "^5.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-haste-map "^27.1.0" + jest-message-util "^27.1.0" + jest-mock "^27.1.0" + jest-regex-util "^27.0.6" + jest-resolve "^27.1.0" + jest-snapshot "^27.1.0" + jest-util "^27.1.0" + jest-validate "^27.1.0" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^16.0.3" + +jest-serializer@^27.0.6: + version "27.0.6" + resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz#93a6c74e0132b81a2d54623251c46c498bb5bec1" + integrity sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.1.0.tgz#2a063ab90064017a7e9302528be7eaea6da12d17" + integrity sha512-eaeUBoEjuuRwmiRI51oTldUsKOohB1F6fPqWKKILuDi/CStxzp2IWekVUXbuHHoz5ik33ioJhshiHpgPFbYgcA== + dependencies: + "@babel/core" "^7.7.2" + "@babel/generator" "^7.7.2" + "@babel/parser" "^7.7.2" + "@babel/plugin-syntax-typescript" "^7.7.2" + "@babel/traverse" "^7.7.2" + "@babel/types" "^7.0.0" + "@jest/transform" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.1.5" + babel-preset-current-node-syntax "^1.0.0" + chalk "^4.0.0" + expect "^27.1.0" + graceful-fs "^4.2.4" + jest-diff "^27.1.0" + jest-get-type "^27.0.6" + jest-haste-map "^27.1.0" + jest-matcher-utils "^27.1.0" + jest-message-util "^27.1.0" + jest-resolve "^27.1.0" + jest-util "^27.1.0" + natural-compare "^1.4.0" + pretty-format "^27.1.0" + semver "^7.3.2" + +jest-util@^27.0.0, jest-util@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.1.0.tgz#06a53777a8cb7e4940ca8e20bf9c67dd65d9bd68" + integrity sha512-edSLD2OneYDKC6gZM1yc+wY/877s/fuJNoM1k3sOEpzFyeptSmke3SLnk1dDHk9CgTA+58mnfx3ew3J11Kes/w== + dependencies: + "@jest/types" "^27.1.0" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^3.0.0" + picomatch "^2.2.3" + +jest-validate@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.1.0.tgz#d9e82024c5e3f5cef52a600cfc456793a84c0998" + integrity sha512-QiJ+4XuSuMsfPi9zvdO//IrSRSlG6ybJhOpuqYSsuuaABaNT84h0IoD6vvQhThBOKT+DIKvl5sTM0l6is9+SRA== + dependencies: + "@jest/types" "^27.1.0" + camelcase "^6.2.0" + chalk "^4.0.0" + jest-get-type "^27.0.6" + leven "^3.1.0" + pretty-format "^27.1.0" + +jest-watcher@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.1.0.tgz#2511fcddb0e969a400f3d1daa74265f93f13ce93" + integrity sha512-ivaWTrA46aHWdgPDgPypSHiNQjyKnLBpUIHeBaGg11U+pDzZpkffGlcB1l1a014phmG0mHgkOHtOgiqJQM6yKQ== + dependencies: + "@jest/test-result" "^27.1.0" + "@jest/types" "^27.1.0" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^27.1.0" + string-length "^4.0.1" + +jest-worker@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.1.0.tgz#65f4a88e37148ed984ba8ca8492d6b376938c0aa" + integrity sha512-mO4PHb2QWLn9yRXGp7rkvXLAYuxwhq1ZYUo0LoDhg8wqvv4QizP1ZWEJOeolgbEgAWZLIEU0wsku8J+lGWfBhg== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +jest@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/jest/-/jest-27.1.0.tgz#eaab62dfdc02d8b7c814cd27b8d2d92bc46d3d69" + integrity sha512-pSQDVwRSwb109Ss13lcMtdfS9r8/w2Zz8+mTUA9VORD66GflCdl8nUFCqM96geOD2EBwWCNURrNAfQsLIDNBdg== + dependencies: + "@jest/core" "^27.1.0" + import-local "^3.0.2" + jest-cli "^27.1.0" + +jju@^1.1.0: + version "1.4.0" + resolved "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" + integrity sha1-o6vicYryQaKykE+EpiWXDzia4yo= + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@3.14.0: + version "3.14.0" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" + integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +jsdom@^16.6.0: + version "16.7.0" + resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.0" + parse5 "6.0.1" + saxes "^5.0.1" + symbol-tree "^3.2.4" + tough-cookie "^4.0.0" + w3c-hr-time "^1.0.2" + w3c-xmlserializer "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +jsii-diff@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/jsii-diff/-/jsii-diff-1.34.0.tgz#86742f21f5ab809df2ce8b6902f390c6379a9a39" + integrity sha512-fPVBoixNjo3kQs8WgjNeE7M5HxcK3jqfgM/IC6fpzrsGDjjqnH7emtVH3gvS18uQxUfYKKkXEKbkHsywQe6EkA== + dependencies: + "@jsii/check-node" "1.34.0" + "@jsii/spec" "^1.34.0" + fs-extra "^9.1.0" + jsii-reflect "^1.34.0" + log4js "^6.3.0" + typescript "~3.9.10" + yargs "^16.2.0" + +jsii-docgen@^3.3.9: + version "3.3.9" + resolved "https://registry.npmjs.org/jsii-docgen/-/jsii-docgen-3.3.9.tgz#ed701552672e92477261a4150d26075f3aac9647" + integrity sha512-/wPpGQDG99Mk9hvkFd3PhyzPnqAtFhafohcDGKuGGTlMGR6kFCArn3jFX/tti1wXYgDdeXTB9VaSGHsOCEO3Rg== + dependencies: + "@jsii/spec" "^1.34.0" + case "^1.6.3" + fs-extra "^9.1.0" + glob "^7.1.7" + glob-promise "^3.4.0" + jsii-reflect "^1.34.0" + jsii-rosetta "^1.34.0" + yargs "^16.2.0" + +jsii-pacmak@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/jsii-pacmak/-/jsii-pacmak-1.34.0.tgz#7fc6a79fb72bd791a0cac5877339253fd26e14e3" + integrity sha512-OngbNHieb5g7B1VkRSZkZq1vgoflhjX4heTJnQJZYbG59j2qVgD7E/o/Dl2OTBLrGRms8e2oCsYc7XROt2htSA== + dependencies: + "@jsii/check-node" "1.34.0" + "@jsii/spec" "^1.34.0" + clone "^2.1.2" + codemaker "^1.34.0" + commonmark "^0.30.0" + escape-string-regexp "^4.0.0" + fs-extra "^9.1.0" + jsii-reflect "^1.34.0" + jsii-rosetta "^1.34.0" + semver "^7.3.5" + spdx-license-list "^6.4.0" + xmlbuilder "^15.1.1" + yargs "^16.2.0" + +jsii-reflect@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/jsii-reflect/-/jsii-reflect-1.34.0.tgz#3d5c8f7c2e8310df2c8dea3aad5bef487fe1d0d9" + integrity sha512-IOEdwgeDCOq821PM3OfRro1Pgu0QzHFW7zQy3aN7/w5Fcb/tSYGxI9+Ykr6JCdg681LFzcMEgwJpCUHnfi/shw== + dependencies: + "@jsii/check-node" "1.34.0" + "@jsii/spec" "^1.34.0" + colors "^1.4.0" + fs-extra "^9.1.0" + oo-ascii-tree "^1.34.0" + yargs "^16.2.0" + +jsii-rosetta@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/jsii-rosetta/-/jsii-rosetta-1.34.0.tgz#64b1233726a98a992be5cffd1d0f4b824346dbef" + integrity sha512-GOGAy5b+zCGeyYziBoNVXgamL2CEZKMj5moeemkyN4AUHUqugNk3fSul2Zdbxs2S13Suk0D9iYAgChDxew0bOw== + dependencies: + "@jsii/check-node" "1.34.0" + "@jsii/spec" "^1.34.0" + "@xmldom/xmldom" "^0.7.0" + commonmark "^0.30.0" + fs-extra "^9.1.0" + typescript "~3.9.10" + yargs "^16.2.0" + +jsii@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/jsii/-/jsii-1.34.0.tgz#d009d7ae36f069819f97dcade4203722a5ec524f" + integrity sha512-z/p8cuWdRntQzdZ1Fq/hvXHPjq/HjZhQzTF/GmYrH3s7Wsb14LphHGAENTZwICBaSovoqSRIboOb2FbPLsCjoA== + dependencies: + "@jsii/check-node" "1.34.0" + "@jsii/spec" "^1.34.0" + case "^1.6.3" + colors "^1.4.0" + deep-equal "^2.0.5" + fs-extra "^9.1.0" + log4js "^6.3.0" + semver "^7.3.5" + semver-intersect "^1.4.0" + sort-json "^2.0.0" + spdx-license-list "^6.4.0" + typescript "~3.9.10" + yargs "^16.2.0" + +json-buffer@3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + +json-parse-better-errors@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-parse-helpfulerror@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/json-parse-helpfulerror/-/json-parse-helpfulerror-1.0.3.tgz#13f14ce02eed4e981297b64eb9e3b932e2dd13dc" + integrity sha1-E/FM4C7tTpgSl7ZOueO5MuLdE9w= + dependencies: + jju "^1.1.0" + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-schema@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.3.0.tgz#90a9c5054bd065422c00241851ce8d59475b701b" + integrity sha512-TYfxx36xfl52Rf1LU9HyWSLGPdYLL+SQ8/E/0yVyKG8wCCDaSrhPap0vEdlsZWRaS6tnKKLPGiEJGiREVC8kxQ== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json5@2.x, json5@^2.1.2: + version "2.2.0" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + dependencies: + minimist "^1.2.0" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonlines@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/jsonlines/-/jsonlines-0.1.1.tgz#4fcd246dc5d0e38691907c44ab002f782d1d94cc" + integrity sha1-T80kbcXQ44aRkHxEqwAveC0dlMw= + +jsonparse@^1.2.0, jsonparse@^1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + +jsonschema@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +keyv@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" + integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== + dependencies: + json-buffer "3.0.0" + +kind-of@^6.0.3: + version "6.0.3" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +latest-version@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" + integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== + dependencies: + package-json "^6.3.0" + +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +libnpmconfig@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/libnpmconfig/-/libnpmconfig-1.2.1.tgz#c0c2f793a74e67d4825e5039e7a02a0044dfcbc0" + integrity sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA== + dependencies: + figgy-pudding "^3.5.1" + find-up "^3.0.0" + ini "^1.3.5" + +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + +lodash.ismatch@^4.4.0: + version "4.4.0" + resolved "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +lodash@4.x, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.7.0: + version "4.17.21" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +log4js@^6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/log4js/-/log4js-6.3.0.tgz#10dfafbb434351a3e30277a00b9879446f715bcb" + integrity sha512-Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw== + dependencies: + date-format "^3.0.0" + debug "^4.1.1" + flatted "^2.0.1" + rfdc "^1.1.4" + streamroller "^2.2.4" + +lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" + integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== + +lowercase-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" + integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +make-error@1.x: + version "1.3.6" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +make-fetch-happen@^9.0.1: + version "9.1.0" + resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== + dependencies: + agentkeepalive "^4.1.3" + cacache "^15.2.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^6.0.0" + minipass "^3.1.3" + minipass-collect "^1.0.2" + minipass-fetch "^1.3.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.2" + promise-retry "^2.0.1" + socks-proxy-agent "^6.0.0" + ssri "^8.0.0" + +makeerror@1.0.x: + version "1.0.11" + resolved "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" + integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= + dependencies: + tmpl "1.0.x" + +map-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + +map-obj@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz#e4ea399dbc979ae735c83c863dd31bdf364277b7" + integrity sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ== + +md5@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" + integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== + dependencies: + charenc "0.0.2" + crypt "0.0.2" + is-buffer "~1.1.6" + +mdurl@~1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz#fe85b2ec75a59037f2adfec100fd6c601761152e" + integrity sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= + +meow@^7.0.0: + version "7.1.1" + resolved "https://registry.npmjs.org/meow/-/meow-7.1.1.tgz#7c01595e3d337fcb0ec4e8eed1666ea95903d306" + integrity sha512-GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA== + dependencies: + "@types/minimist" "^1.2.0" + camelcase-keys "^6.2.2" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^2.5.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.13.1" + yargs-parser "^18.1.3" + +meow@^8.0.0: + version "8.1.2" + resolved "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" + integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== + dependencies: + "@types/minimist" "^1.2.0" + camelcase-keys "^6.2.2" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^3.0.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.18.0" + yargs-parser "^20.2.3" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +micromatch@^4.0.4: + version "4.0.4" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" + integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + dependencies: + braces "^3.0.1" + picomatch "^2.2.3" + +mime-db@1.49.0: + version "1.49.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.49.0.tgz#f3dfde60c99e9cf3bc9701d687778f537001cbed" + integrity sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA== + +mime-types@^2.1.12, mime-types@~2.1.19: + version "2.1.32" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.32.tgz#1d00e89e7de7fe02008db61001d9e02852670fd5" + integrity sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A== + dependencies: + mime-db "1.49.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-response@^1.0.0, mimic-response@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +min-indent@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist-options@4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + kind-of "^6.0.3" + +minimist@>=1.2.2, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: + version "1.3.4" + resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.3.4.tgz#63f5af868a38746ca7b33b03393ddf8c291244fe" + integrity sha512-TielGogIzbUEtd1LsjZFs47RWuHHfhl6TiCx1InVxApBAmQ8bL0dL5ilkLGcRvuyW/A9nE+Lvn855Ewz8S0PnQ== + dependencies: + minipass "^3.1.0" + minipass-sized "^1.0.3" + minizlib "^2.0.0" + optionalDependencies: + encoding "^0.1.12" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-json-stream@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" + integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== + dependencies: + jsonparse "^1.3.1" + minipass "^3.0.0" + +minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: + version "1.2.4" + resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: + version "3.1.3" + resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" + integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg== + dependencies: + yallist "^4.0.0" + +minizlib@^2.0.0, minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + +mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +modify-values@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.0.0, ms@^2.1.1: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +negotiator@^0.6.2: + version "0.6.2" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +neo-async@^2.6.0: + version "2.6.2" + resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +node-gyp@^7.1.0: + version "7.1.2" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" + integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== + dependencies: + env-paths "^2.2.0" + glob "^7.1.4" + graceful-fs "^4.2.3" + nopt "^5.0.0" + npmlog "^4.1.2" + request "^2.88.2" + rimraf "^3.0.2" + semver "^7.3.2" + tar "^6.0.2" + which "^2.0.2" + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-releases@^1.1.75: + version "1.1.75" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.75.tgz#6dd8c876b9897a1b8e5a02de26afa79bb54ebbfe" + integrity sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw== + +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + +normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-package-data@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== + dependencies: + hosted-git-info "^4.0.1" + is-core-module "^2.5.0" + semver "^7.3.4" + validate-npm-package-license "^3.0.1" + +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-url@^4.1.0: + version "4.5.1" + resolved "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== + +npm-bundled@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-check-updates@^11: + version "11.8.3" + resolved "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-11.8.3.tgz#3c3541ad855bbc42b0d60e8eb293d3f6125c80e5" + integrity sha512-NslIB6Af7GagVrN+bvBkObLyawIZfOnDnl8n9MHE+dFt0aChRYtvR6T2BLJKzOPIepCLmmh0NRR/qha0ExAELQ== + dependencies: + chalk "^4.1.1" + cint "^8.2.1" + cli-table "^0.3.6" + commander "^6.2.1" + fast-memoize "^2.5.2" + find-up "5.0.0" + fp-and-or "^0.1.3" + get-stdin "^8.0.0" + globby "^11.0.4" + hosted-git-info "^4.0.2" + json-parse-helpfulerror "^1.0.3" + jsonlines "^0.1.1" + libnpmconfig "^1.2.1" + lodash "^4.17.21" + minimatch "^3.0.4" + p-map "^4.0.0" + pacote "^11.3.4" + parse-github-url "^1.0.2" + progress "^2.0.3" + prompts "^2.4.1" + rc-config-loader "^4.0.0" + remote-git-tags "^3.0.0" + rimraf "^3.0.2" + semver "^7.3.5" + semver-utils "^1.1.4" + spawn-please "^1.0.0" + update-notifier "^5.1.0" + +npm-install-checks@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" + integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== + dependencies: + semver "^7.1.1" + +npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== + +npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.2: + version "8.1.5" + resolved "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" + integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== + dependencies: + hosted-git-info "^4.0.1" + semver "^7.3.4" + validate-npm-package-name "^3.0.0" + +npm-packlist@^2.1.4: + version "2.2.2" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" + integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== + dependencies: + glob "^7.1.6" + ignore-walk "^3.0.3" + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: + version "6.1.1" + resolved "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" + integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== + dependencies: + npm-install-checks "^4.0.0" + npm-normalize-package-bin "^1.0.1" + npm-package-arg "^8.1.2" + semver "^7.3.4" + +npm-registry-fetch@^11.0.0: + version "11.0.0" + resolved "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" + integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== + dependencies: + make-fetch-happen "^9.0.1" + minipass "^3.1.3" + minipass-fetch "^1.3.0" + minipass-json-stream "^1.0.1" + minizlib "^2.0.0" + npm-package-arg "^8.0.0" + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +npmlog@^4.1.2: + version "4.1.2" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + integrity sha1-l33/1xdgErnsMNKjnbXPcqBDnt0= + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + +nwsapi@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" + integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4.1.0: + version "4.1.1" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-inspect@^1.11.0, object-inspect@^1.9.0: + version "1.11.0" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + +object-is@^1.1.4: + version "1.1.5" + resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" + integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.values@^1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.4.tgz#0d273762833e816b693a637d30073e7051535b30" + integrity sha512-TnGo7j4XSnKQoK3MfvkzqKCi0nVe/D9I9IjwTNYdb/fxYHpjrluHVOgw0AF6jrRFGMPHdfuidR09tIDiIvnaSg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.18.2" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +oo-ascii-tree@^1.34.0: + version "1.34.0" + resolved "https://registry.npmjs.org/oo-ascii-tree/-/oo-ascii-tree-1.34.0.tgz#5528a52d92ef18b3860d0e784383007e476c18b3" + integrity sha512-gAY+yfKCskAk7mkfI8nOhkP12iTGE7b8UxnQuscN80vghrozt/E/2rLeKKMJFagJlm/NnnUmBA0tBQZ3oPHEKg== + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +p-cancelable@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" + integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== + +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-limit@^2.0.0, p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +package-json@^6.3.0: + version "6.5.0" + resolved "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" + integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== + dependencies: + got "^9.6.0" + registry-auth-token "^4.0.0" + registry-url "^5.0.0" + semver "^6.2.0" + +pacote@^11.3.4: + version "11.3.5" + resolved "https://registry.npmjs.org/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" + integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== + dependencies: + "@npmcli/git" "^2.1.0" + "@npmcli/installed-package-contents" "^1.0.6" + "@npmcli/promise-spawn" "^1.2.0" + "@npmcli/run-script" "^1.8.2" + cacache "^15.0.5" + chownr "^2.0.0" + fs-minipass "^2.1.0" + infer-owner "^1.0.4" + minipass "^3.1.3" + mkdirp "^1.0.3" + npm-package-arg "^8.0.1" + npm-packlist "^2.1.4" + npm-pick-manifest "^6.0.0" + npm-registry-fetch "^11.0.0" + promise-retry "^2.0.1" + read-package-json-fast "^2.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.1.0" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-github-url@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/parse-github-url/-/parse-github-url-1.0.2.tgz#242d3b65cbcdda14bb50439e3242acf6971db395" + integrity sha512-kgBf6avCbO3Cn6+RnzRGLkUsv4ZVqv/VfAYkRsyBcgkshNvVBkRn1FEZcW0Jb+npXQWm2vHPnnOqFteZxRRGNw== + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parse5@6.0.1: + version "6.0.1" + resolved "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picomatch@^2.0.4, picomatch@^2.2.3: + version "2.3.0" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== + +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pirates@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== + dependencies: + node-modules-regexp "^1.0.0" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= + dependencies: + find-up "^2.1.0" + +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" + integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= + dependencies: + find-up "^2.1.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + +prepend-http@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + +pretty-format@^27.0.0, pretty-format@^27.1.0: + version "27.1.0" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.1.0.tgz#022f3fdb19121e0a2612f3cff8d724431461b9ca" + integrity sha512-4aGaud3w3rxAO6OXmK3fwBFQ0bctIOG3/if+jYEFGNGIs0EvuidQm3bZ9mlP2/t9epLNC/12czabfy7TZNSwVA== + dependencies: + "@jest/types" "^27.1.0" + ansi-regex "^5.0.0" + ansi-styles "^5.0.0" + react-is "^17.0.1" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +progress@^2.0.0, progress@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +projen@^0.27.39: + version "0.27.39" + resolved "https://registry.npmjs.org/projen/-/projen-0.27.39.tgz#ad2682ae3a2bf73e196eeab77a1f8495229d4793" + integrity sha512-KX3mQ0+5G8I7BLol+9baZw8hWt54l4mgS5KRSerAE7joOP4w9kNr1CSMbKXV/KbexkuN+ZRAnGN1wBeRlN6ZFQ== + dependencies: + "@iarna/toml" "^2.2.5" + chalk "^4.1.2" + decamelize "^4.0.0" + fs-extra "^9.1.0" + glob "^7" + ini "^2.0.0" + semver "^7.3.5" + shx "^0.3.3" + xmlbuilder2 "^2.4.1" + yaml "^1.10.2" + yargs "^16.2.0" + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + +prompts@^2.0.1, prompts@^2.4.1: + version "2.4.1" + resolved "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz#befd3b1195ba052f9fd2fde8a486c4e82ee77f61" + integrity sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +psl@^1.1.28, psl@^1.1.33: + version "1.8.0" + resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" + integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +pupa@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" + integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== + dependencies: + escape-goat "^2.0.0" + +q@^1.5.1: + version "1.5.1" + resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-lru@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== + +rc-config-loader@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-4.0.0.tgz#144cf31961c9f8ebcf252bd9c263fd40d62bd387" + integrity sha512-//LRTblJEcqbmmro1GCmZ39qZXD+JqzuD8Y5/IZU3Dhp3A1Yr0Xn68ks8MQ6qKfKvYCWDveUmRDKDA40c+sCXw== + dependencies: + debug "^4.1.1" + js-yaml "^4.0.0" + json5 "^2.1.2" + require-from-string "^2.0.2" + +rc@^1.2.8: + version "1.2.8" + resolved "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +read-package-json-fast@^2.0.1: + version "2.0.3" + resolved "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== + dependencies: + json-parse-even-better-errors "^2.3.0" + npm-normalize-package-bin "^1.0.1" + +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2: + version "3.6.0" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readable-stream@^2.0.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + 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" + +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= + dependencies: + resolve "^1.1.6" + +redent@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== + dependencies: + indent-string "^4.0.0" + strip-indent "^3.0.0" + +regexp.prototype.flags@^1.3.0: + version "1.3.1" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" + integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +registry-auth-token@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" + integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + dependencies: + rc "^1.2.8" + +registry-url@^5.0.0: + version "5.1.0" + resolved "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" + integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== + dependencies: + rc "^1.2.8" + +remote-git-tags@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/remote-git-tags/-/remote-git-tags-3.0.0.tgz#424f8ec2cdea00bb5af1784a49190f25e16983c3" + integrity sha512-C9hAO4eoEsX+OXA4rla66pXZQ+TLQ8T9dttgQj18yuKlPMTVkIkdYXvlMC55IuUsIkV6DpmQYi10JKFLaU+l7w== + +request@^2.88.2: + version "2.88.2" + resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.17.0, resolve@^1.20.0: + version "1.20.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +responselike@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + dependencies: + lowercase-keys "^1.0.0" + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rfdc@^1.1.4: + version "1.3.0" + resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== + +rimraf@^3.0.0, rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +saxes@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== + dependencies: + xmlchars "^2.2.0" + +semver-diff@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" + integrity sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg== + dependencies: + semver "^6.3.0" + +semver-intersect@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz#bdd9c06bedcdd2fedb8cd352c3c43ee8c61321f3" + integrity sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ== + dependencies: + semver "^5.0.0" + +semver-utils@^1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/semver-utils/-/semver-utils-1.1.4.tgz#cf0405e669a57488913909fc1c3f29bf2a4871e2" + integrity sha512-EjnoLE5OGmDAVV/8YDoN5KiajNadjzIp9BAHOhYeQHt7j0UWxjmgsx4YD48wp4Ue1Qogq38F1GNUJNqF1kKKxA== + +"semver@2 || 3 || 4 || 5", semver@^5.0.0: + version "5.7.1" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@7.x, semver@^7.1.1, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: + version "7.3.5" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: + version "6.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shelljs@^0.8.4: + version "0.8.4" + resolved "https://registry.npmjs.org/shelljs/-/shelljs-0.8.4.tgz#de7684feeb767f8716b326078a8a00875890e3c2" + integrity sha512-7gk3UZ9kOfPLIAbslLzyWeGiEqx9e3rxwZM0KE6EL8GlGwjym9Mrlx5/p33bWTu9YG6vcS4MBxYZDHYr5lr8BQ== + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + +shx@^0.3.3: + version "0.3.3" + resolved "https://registry.npmjs.org/shx/-/shx-0.3.3.tgz#681a88c7c10db15abe18525349ed474f0f1e7b9f" + integrity sha512-nZJ3HFWVoTSyyB+evEKjJ1STiixGztlqwKLTUNV5KqMWtGey9fTd4KU1gdZ1X9BV6215pswQ/Jew9NsuS/fNDA== + dependencies: + minimist "^1.2.3" + shelljs "^0.8.4" + +side-channel@^1.0.3, side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +smart-buffer@^4.1.0: + version "4.2.0" + resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== + +socks-proxy-agent@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.0.0.tgz#9f8749cdc05976505fa9f9a958b1818d0e60573b" + integrity sha512-FIgZbQWlnjVEQvMkylz64/rUggGtrKstPnx8OZyYFG0tAFR8CSBtpXxSwbFLHyeXFn/cunFL7MpuSOvDSOPo9g== + dependencies: + agent-base "^6.0.2" + debug "^4.3.1" + socks "^2.6.1" + +socks@^2.6.1: + version "2.6.1" + resolved "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" + integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== + dependencies: + ip "^1.1.5" + smart-buffer "^4.1.0" + +sort-json@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/sort-json/-/sort-json-2.0.0.tgz#a7030d8875adbd4a5ea39a000567ed94c1aa3c50" + integrity sha512-OgXPErPJM/rBK5OhzIJ+etib/BmLQ1JY55Nb/ElhoWUec62pXNF/X6DrecHq3NW5OAGX0KxYD7m0HtgB9dvGeA== + dependencies: + detect-indent "^5.0.0" + detect-newline "^2.1.0" + minimist "^1.2.0" + +source-map-support@^0.5.6: + version "0.5.19" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.5.0: + version "0.5.7" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +spawn-please@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/spawn-please/-/spawn-please-1.0.0.tgz#51cf5831ba2bf418aa3ec2102d40b75cfd48b6f2" + integrity sha512-Kz33ip6NRNKuyTRo3aDWyWxeGeM0ORDO552Fs6E1nj4pLWPkl37SrRtTnq+MEopVaqgmaO6bAvVS+v64BJ5M/A== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.10" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== + +spdx-license-list@^6.4.0: + version "6.4.0" + resolved "https://registry.npmjs.org/spdx-license-list/-/spdx-license-list-6.4.0.tgz#9850c3699c1d35745285607d064d2a5145049d12" + integrity sha512-4BxgJ1IZxTJuX1YxMGu2cRYK46Bk9zJNTK2/R0wNZR0cm+6SVl26/uG7FQmQtxoJQX1uZ0EpTi2L7zvMLboaBA== + +split2@^3.0.0: + version "3.2.2" + resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== + dependencies: + readable-stream "^3.0.0" + +split@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== + dependencies: + through "2" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +ssri@^8.0.0, ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + +stack-utils@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277" + integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== + dependencies: + escape-string-regexp "^2.0.0" + +standard-version@^9: + version "9.3.1" + resolved "https://registry.npmjs.org/standard-version/-/standard-version-9.3.1.tgz#786c16c318847f58a31a2434f97e8db33a635853" + integrity sha512-5qMxXw/FxLouC5nANyx/5RY1kiorJx9BppUso8gN07MG64q2uLRmrPb4KfXp3Ql4s/gxjZwZ89e0FwxeLubGww== + dependencies: + chalk "^2.4.2" + conventional-changelog "3.1.24" + conventional-changelog-config-spec "2.1.0" + conventional-changelog-conventionalcommits "4.5.0" + conventional-recommended-bump "6.1.0" + detect-indent "^6.0.0" + detect-newline "^3.1.0" + dotgitignore "^2.1.0" + figures "^3.1.0" + find-up "^5.0.0" + fs-access "^1.0.1" + git-semver-tags "^4.0.0" + semver "^7.1.1" + stringify-package "^1.0.1" + yargs "^16.0.0" + +streamroller@^2.2.4: + version "2.2.4" + resolved "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz#c198ced42db94086a6193608187ce80a5f2b0e53" + integrity sha512-OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ== + dependencies: + date-format "^2.1.0" + debug "^4.1.1" + fs-extra "^8.1.0" + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2": + version "2.1.1" + resolved "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2: + version "4.2.2" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz#dafd4f9559a7585cfba529c6a0a4f73488ebd4c5" + integrity sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.repeat@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz#aba36de08dcee6a5a337d49b2ea1da1b28fc0ecf" + integrity sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8= + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +stringify-package@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/stringify-package/-/stringify-package-1.0.1.tgz#e5aa3643e7f74d0f28628b72f3dad5cecfc3ba85" + integrity sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg== + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +supports-hyperlinks@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + +table@^6.0.9, table@^6.7.1: + version "6.7.1" + resolved "https://registry.npmjs.org/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" + integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== + dependencies: + ajv "^8.0.1" + lodash.clonedeep "^4.5.0" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.0" + strip-ansi "^6.0.0" + +tar@^6.0.2, tar@^6.1.0: + version "6.1.11" + resolved "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" + integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^3.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + +text-extensions@^1.0.0: + version "1.9.0" + resolved "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" + integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +throat@^6.0.1: + version "6.0.1" + resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" + integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== + +through2@^2.0.0: + version "2.0.5" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through2@^4.0.0: + version "4.0.2" + resolved "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== + dependencies: + readable-stream "3" + +through@2, "through@>=2.2.7 <3": + version "2.3.8" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +tmpl@1.0.x: + version "1.0.4" + resolved "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" + integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +to-readable-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" + integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +tough-cookie@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.1.2" + +tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + +trim-newlines@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" + integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== + +trim-off-newlines@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" + integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= + +ts-jest@^27.0.5: + version "27.0.5" + resolved "https://registry.npmjs.org/ts-jest/-/ts-jest-27.0.5.tgz#0b0604e2271167ec43c12a69770f0bb65ad1b750" + integrity sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w== + dependencies: + bs-logger "0.x" + fast-json-stable-stringify "2.x" + jest-util "^27.0.0" + json5 "2.x" + lodash "4.x" + make-error "1.x" + semver "7.x" + yargs-parser "20.x" + +tsconfig-paths@^3.11.0, tsconfig-paths@^3.9.0: + version "3.11.0" + resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz#954c1fe973da6339c78e06b03ce2e48810b65f36" + integrity sha512-7ecdYDnIdmv639mmDwslG6KQg1Z9STTz1j7Gcz0xa+nshh/gKDAHcPxRbWOsA3SPp0tXP2leTcY9Kw+NAkfZzA== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.1" + minimist "^1.2.0" + strip-bom "^3.0.0" + +tslib@^1.8.1: + version "1.14.1" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.13.1: + version "0.13.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934" + integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg== + +type-fest@^0.18.0: + version "0.18.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" + integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + +typescript@^4.4.2: + version "4.4.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.4.2.tgz#6d618640d430e3569a1dfb44f7d7e600ced3ee86" + integrity sha512-gzP+t5W4hdy4c+68bfcv0t400HVJMMd2+H9B7gae1nQlBzCqvrXX+6GL/b3GAgyTH966pzrZ70/fRjwAtZksSQ== + +typescript@~3.9.10: + version "3.9.10" + resolved "https://registry.npmjs.org/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8" + integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== + +uglify-js@^3.1.4: + version "3.14.1" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.1.tgz#e2cb9fe34db9cb4cf7e35d1d26dfea28e09a7d06" + integrity sha512-JhS3hmcVaXlp/xSo3PKY5R0JqKs5M3IV+exdLHW99qKvKivPO4Z8qbej6mte17SOPqAOVMjt/XGgWacnFSzM3g== + +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" + which-boxed-primitive "^1.0.2" + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== + dependencies: + imurmurhash "^0.1.4" + +unique-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== + dependencies: + crypto-random-string "^2.0.0" + +universalify@^0.1.0, universalify@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +update-notifier@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9" + integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw== + dependencies: + boxen "^5.0.0" + chalk "^4.1.0" + configstore "^5.0.1" + has-yarn "^2.1.0" + import-lazy "^2.1.0" + is-ci "^2.0.0" + is-installed-globally "^0.4.0" + is-npm "^5.0.0" + is-yarn-global "^0.3.0" + latest-version "^5.1.0" + pupa "^2.1.1" + semver "^7.3.4" + semver-diff "^3.1.1" + xdg-basedir "^4.0.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +url-parse-lax@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + dependencies: + prepend-http "^2.0.0" + +util-deprecate@^1.0.1, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +v8-to-istanbul@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" + integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= + dependencies: + builtins "^1.0.3" + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +w3c-hr-time@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== + dependencies: + browser-process-hrtime "^1.0.0" + +w3c-xmlserializer@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7: + version "1.0.7" + resolved "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" + integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + dependencies: + makeerror "1.0.x" + +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^8.0.0, whatwg-url@^8.5.0: + version "8.7.0" + resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + +which-boxed-primitive@^1.0.1, which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which-collection@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz#70eab71ebbbd2aefaf32f917082fc62cdcb70906" + integrity sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A== + dependencies: + is-map "^2.0.1" + is-set "^2.0.1" + is-weakmap "^2.0.1" + is-weakset "^2.0.1" + +which-typed-array@^1.1.2: + version "1.1.7" + resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz#2761799b9a22d4b8660b3c1b40abaa7739691793" + integrity sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + es-abstract "^1.18.5" + foreach "^2.0.5" + has-tostringtag "^1.0.0" + is-typed-array "^1.1.7" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +widest-line@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== + dependencies: + string-width "^4.0.0" + +word-wrap@^1.2.3, word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wordwrap@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +ws@^7.4.6: + version "7.5.4" + resolved "https://registry.npmjs.org/ws/-/ws-7.5.4.tgz#56bfa20b167427e138a7795de68d134fe92e21f9" + integrity sha512-zP9z6GXm6zC27YtspwH99T3qTG7bBFv2VIkeHstMLrLlDJuzA7tQ5ls3OJ1hOGGCzTQPniNJoHXIAOS0Jljohg== + +xdg-basedir@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +xml@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" + integrity sha1-eLpyAgApxbyHuKgaPPzXS0ovweU= + +xmlbuilder2@^2.4.1: + version "2.4.1" + resolved "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-2.4.1.tgz#899c783a833188c5a5aa6f3c5428a3963f3e479d" + integrity sha512-vliUplZsk5vJnhxXN/mRcij/AE24NObTUm/Zo4vkLusgayO6s3Et5zLEA14XZnY1c3hX5o1ToR0m0BJOPy0UvQ== + dependencies: + "@oozcitak/dom" "1.15.8" + "@oozcitak/infra" "1.0.8" + "@oozcitak/util" "8.3.8" + "@types/node" "*" + js-yaml "3.14.0" + +xmlbuilder@^15.1.1: + version "15.1.1" + resolved "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5" + integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + +xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3: + version "20.2.9" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-parser@^18.1.3: + version "18.1.3" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@^16.0.0, yargs@^16.0.3, yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==